/* ============================================================
   INEDITO — Alpha landing page
   Brand: emerald accent · Fraunces / Newsreader / Inter
   Gesture: noise → signal. Restraint is the product.
   ============================================================ */

:root{
  --display:"Fraunces","Iowan Old Style",Georgia,serif;
  --read:"Newsreader",Georgia,"Times New Roman",serif;
  --ui:"Inter",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;

  /* emerald (selected) */
  --g:#10B981; --g-deep:#047857; --g-ondark:#34D399;
  --g-700:#065F46; --g-200:#A7F0CE; --g-tint:#E6F7EF; --g-tint-dark:#0C2A20;

  /* grounds */
  --ink:#15171C; --ink-rise:#1C1F26; --ink-card:#232730; --ink-sunken:#101216;
  --cream:#F5F1E9; --paper:#FFFFFF; --card:#FFFDF8; --sunken:#ECE6DA;

  /* text on light */
  --t0:#15171C; --t1:#43464E; --t2:#6F6A60; --t3:#BDB6A9;
  /* text on ink */
  --d0:#F1ECE3; --d1:#C3C6CD; --d2:#878C96; --d3:#5A606B;

  --noise:#5A606B;
  --line:#E4DED2; --line-strong:#D2CABA;
  --line-ink:#2A2E37; --line-ink-strong:#3A3F49;

  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-plate:16px; --r-pill:999px;
  --shadow:0 1px 2px rgba(21,23,28,.05),0 30px 70px -38px rgba(21,23,28,.34);
  --shadow-ink:0 1px 2px rgba(0,0,0,.5),0 50px 100px -44px rgba(0,0,0,.75);

  --t-fast:160ms; --t:300ms; --t-slow:620ms;
  --settle:cubic-bezier(.16,1,.3,1);
  --curtain:cubic-bezier(.2,0,0,1);

  --page:1180px; --measure:60ch;
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
html{scroll-behavior:smooth;}
body{font-family:var(--ui);font-weight:450;background:var(--cream);color:var(--t0);line-height:1.6;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{color:inherit;}
::selection{background:var(--g-tint);color:var(--g-deep);}

.wrap{max-width:var(--page);margin:0 auto;padding:0 40px;}
@media(max-width:760px){.wrap{padding:0 22px;}}

/* ---- shared type helpers ---- */
.display{font-family:var(--display);font-weight:400;letter-spacing:-0.02em;}
.read{font-family:var(--read);font-weight:400;}
.eyebrow{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--g-deep);}
.eyebrow.on-ink{color:var(--g-ondark);}
.label{font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.num{font-variant-numeric:tabular-nums lining-nums;}

/* ============ the gesture: noise → signal ============ */
.gesture{display:inline-flex;align-items:center;gap:8px;height:15px;}
.gesture i{display:block;height:11px;border-radius:var(--r-pill);background:var(--noise);transform:scaleX(.001);transform-origin:left center;}
.gesture.on-ink i{background:var(--d3);}
.gesture.go i{animation:grow .5s var(--settle) forwards;}
.gesture i:nth-child(1){width:9px;opacity:.30;animation-delay:.04s;}
.gesture i:nth-child(2){width:13px;opacity:.42;animation-delay:.11s;}
.gesture i:nth-child(3){width:18px;opacity:.54;animation-delay:.18s;}
.gesture i:nth-child(4){width:26px;opacity:.66;animation-delay:.25s;}
.gesture i:nth-child(5){width:34px;opacity:.78;animation-delay:.32s;}
.gesture i.sig{width:120px;opacity:1;background:var(--g);animation-delay:.42s;}
.gesture.on-ink i.sig{background:var(--g-ondark);}
@keyframes grow{to{transform:scaleX(1);}}
@media(prefers-reduced-motion:reduce){.gesture i{transform:none!important;animation:none!important;}}

/* ---- buttons ---- */
.btn{font-family:var(--ui);font-size:15px;font-weight:600;letter-spacing:-0.005em;border-radius:var(--r-pill);
  padding:14px 26px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:10px;
  text-decoration:none;transition:transform var(--t-fast) var(--settle),background var(--t-fast),color var(--t-fast),border-color var(--t-fast);white-space:nowrap;}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--g);color:#06281c;}
.btn-primary:hover{background:#0ea372;}
.btn-ghost{background:transparent;color:var(--t0);border-color:var(--line-strong);}
.btn-ghost:hover{border-color:var(--t0);}
.btn-ghost.on-ink{color:var(--d0);border-color:var(--line-ink-strong);}
.btn-ghost.on-ink:hover{border-color:var(--d0);}
.btn .arrow{transition:transform var(--t-fast) var(--settle);}
.btn:hover .arrow{transform:translateX(3px);}

/* ============ NAV ============ */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--cream) 84%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px;}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.brand img{width:26px;height:26px;border-radius:6px;}
.brand .wm{font-family:var(--display);font-weight:500;font-size:23px;letter-spacing:-0.01em;line-height:1;color:var(--t0);}
.brand .wm .ed{color:var(--g-deep);}
.nav .links{display:flex;align-items:center;gap:28px;}
.nav .links a.txt{font-size:14px;font-weight:500;color:var(--t1);text-decoration:none;transition:color var(--t-fast);}
.nav .links a.txt:hover{color:var(--g-deep);}
.nav .btn{padding:10px 18px;font-size:14px;}
@media(max-width:680px){.nav .links a.txt{display:none;}}

/* ============ HERO (ink signature field) ============ */
.hero{background:var(--ink);color:var(--d0);position:relative;overflow:hidden;}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 80% at 80% -10%,rgba(16,185,129,.10),transparent 60%);}
.hero .wrap{position:relative;padding:104px 40px 96px;}
@media(max-width:760px){.hero .wrap{padding:72px 22px 64px;}}
.hero .eyebrow{margin-bottom:30px;display:flex;align-items:center;gap:12px;}
.hero .eyebrow .dotline{width:34px;height:1px;background:var(--g-ondark);opacity:.5;}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(46px,8.2vw,108px);line-height:.98;letter-spacing:-0.03em;max-width:16ch;}
.hero h1 .em{font-style:italic;color:var(--g-ondark);}
.hero .sub{margin-top:34px;font-family:var(--read);font-weight:400;font-size:clamp(19px,2.2vw,26px);line-height:1.45;color:var(--d1);max-width:40ch;}
.hero .sub b{color:var(--d0);font-weight:500;}
.hero .cta{margin-top:44px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.hero .cta .note{font-size:13px;color:var(--d2);max-width:22ch;line-height:1.4;}
.hero .gline{margin-top:54px;}

/* ============ generic section ============ */
section{position:relative;}
.band{padding:104px 0;}
.band.paper{background:var(--paper);}
.band.cream{background:var(--cream);}
.band.ink{background:var(--ink);color:var(--d0);}
@media(max-width:760px){.band{padding:72px 0;}}
.band+.band{border-top:1px solid var(--line);}
.band.ink, .band.ink+.band{border-color:var(--line-ink);}

.sec-no{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--t3);}
.band.ink .sec-no{color:var(--d3);}

/* ---- problem ---- */
.problem .grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
@media(max-width:860px){.problem .grid{grid-template-columns:1fr;gap:36px;}}
.problem .lead{font-family:var(--display);font-weight:400;font-size:clamp(30px,4.2vw,52px);line-height:1.08;letter-spacing:-0.02em;}
.problem .lead .q{color:var(--t3);}
.problem .body{font-family:var(--read);font-size:19px;line-height:1.62;color:var(--t1);}
.problem .body p+p{margin-top:18px;}
.problem .body .pull{font-family:var(--display);font-style:italic;font-size:24px;color:var(--g-deep);line-height:1.3;margin:26px 0;}

/* ---- how it works ---- */
.how .head{max-width:30ch;margin-bottom:64px;}
.how .head h2{font-family:var(--display);font-weight:500;font-size:clamp(32px,4.6vw,54px);line-height:1.04;letter-spacing:-0.02em;margin-top:18px;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;}
@media(max-width:860px){.steps{grid-template-columns:1fr;}}
.step{background:var(--paper);padding:38px 34px 40px;display:flex;flex-direction:column;gap:14px;min-height:280px;}
.step .n{font-family:var(--display);font-weight:500;font-size:17px;color:var(--g-deep);}
.step .n sup{font-size:.62em;vertical-align:.5em;}
.step h3{font-family:var(--display);font-weight:500;font-size:25px;line-height:1.12;letter-spacing:-0.01em;}
.step p{font-family:var(--read);font-size:16.5px;line-height:1.55;color:var(--t1);}
.step .tag{margin-top:auto;font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--t3);}

/* ---- ledger strip ---- */
.ledger-band{background:var(--ink);color:var(--d0);}
.ledger-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;}
.ledger-wrap .intro{max-width:30ch;}
.ledger-wrap .intro .eyebrow{margin-bottom:14px;}
.ledger-wrap .intro p{font-family:var(--read);font-size:18px;line-height:1.5;color:var(--d1);}
.ledger{display:flex;align-items:stretch;border:1px solid var(--line-ink);border-radius:var(--r-md);overflow:hidden;}
.ledger .cell{padding:26px 34px;text-align:center;border-right:1px solid var(--line-ink);min-width:118px;}
.ledger .cell:last-child{border-right:none;}
.ledger .cell .n{font-family:var(--display);font-weight:500;font-size:52px;line-height:1;}
.ledger .cell .k{font-family:var(--ui);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-top:10px;color:var(--d2);}
.ledger .cell.considered .n{color:var(--d2);}
.ledger .cell.kept .n{color:var(--d0);}
.ledger .cell.paid{background:var(--g-tint-dark);}
.ledger .cell.paid .n,.ledger .cell.paid .k{color:var(--g-ondark);}

/* ---- trust / seal ---- */
.trust .grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center;}
@media(max-width:860px){.trust .grid{grid-template-columns:1fr;gap:40px;}}
.seal-stage{display:flex;justify-content:center;}
.seal{width:230px;height:230px;border-radius:50%;background:var(--ink);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow);}
.seal::before{content:"";position:absolute;inset:13px;border:1px solid var(--g-ondark);border-radius:50%;opacity:.45;}
.seal::after{content:"";position:absolute;inset:20px;border:1px solid var(--line-ink-strong);border-radius:50%;}
.seal .z{font-family:var(--display);font-weight:500;font-size:74px;color:var(--g-ondark);line-height:1;}
.seal .cap{font-family:var(--ui);font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--d2);}
.trust h2{font-family:var(--display);font-weight:500;font-size:clamp(30px,4.4vw,50px);line-height:1.06;letter-spacing:-0.02em;}
.trust h2 .em{font-style:italic;color:var(--g-deep);}
.trust .body{font-family:var(--read);font-size:19px;line-height:1.6;color:var(--t1);margin-top:22px;max-width:46ch;}
.trust .body p+p{margin-top:16px;}
.trust .facts{margin-top:28px;display:flex;flex-direction:column;gap:14px;}
.trust .facts .f{display:flex;align-items:flex-start;gap:13px;font-size:15.5px;color:var(--t1);}
.trust .facts .f .dot{width:7px;height:7px;border-radius:50%;background:var(--g);margin-top:8px;flex-shrink:0;}

/* ---- sample recommendation ---- */
.sample .head{text-align:center;max-width:34ch;margin:0 auto 56px;}
.sample .head h2{font-family:var(--display);font-weight:500;font-size:clamp(30px,4.4vw,50px);line-height:1.05;letter-spacing:-0.02em;margin-top:16px;}
.sample .head p{font-family:var(--read);font-size:18px;color:var(--t2);margin-top:14px;line-height:1.5;}
.reco{max-width:430px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px;}
.reco image-slot{width:100%;aspect-ratio:4/5;border-radius:var(--r-plate);overflow:hidden;display:block;}
.reco .plate-fallback{width:100%;aspect-ratio:4/5;border-radius:var(--r-plate);background:repeating-linear-gradient(135deg,rgba(21,23,28,.05) 0 1px,transparent 1px 11px),var(--sunken);border:1px solid var(--line);}
.reco .top{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px;}
.reco .why{font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--g-deep);}
.reco .no{font-family:var(--display);font-weight:500;font-size:16px;color:var(--t3);}
.reco .no sup{font-size:.6em;vertical-align:.5em;}
.reco h3{font-family:var(--display);font-weight:500;font-size:30px;line-height:1.08;letter-spacing:-0.01em;}
.reco .desc{font-family:var(--read);font-size:16.5px;color:var(--t1);margin-top:12px;line-height:1.5;}
.reco .foot{display:flex;align-items:center;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);}
.reco .foot .seal-mini{width:42px;height:42px;border-radius:50%;background:var(--ink);position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.reco .foot .seal-mini::before{content:"";position:absolute;inset:4px;border:1px solid var(--g-ondark);border-radius:50%;opacity:.5;}
.reco .foot .seal-mini span{font-family:var(--display);font-weight:500;font-size:18px;color:var(--g-ondark);}
.reco .foot .seal-cap{font-family:var(--ui);font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--g-deep);line-height:1.45;}

/* ============ ALPHA FORM (ink bookend) ============ */
.join{background:var(--ink);color:var(--d0);position:relative;overflow:hidden;}
.join::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(100% 70% at 20% 110%,rgba(16,185,129,.12),transparent 60%);}
.join .wrap{position:relative;padding:104px 40px;}
@media(max-width:760px){.join .wrap{padding:72px 22px;}}
.join .inner{max-width:620px;margin:0 auto;text-align:center;}
.join h2{font-family:var(--display);font-weight:400;font-size:clamp(36px,5.6vw,68px);line-height:1.0;letter-spacing:-0.025em;margin-top:24px;}
.join h2 .em{font-style:italic;color:var(--g-ondark);}
.join .sub{font-family:var(--read);font-size:clamp(17px,2vw,21px);line-height:1.5;color:var(--d1);margin-top:22px;max-width:46ch;margin-left:auto;margin-right:auto;}
.join .gline{margin:30px auto 0;width:max-content;}

.form{margin-top:42px;text-align:left;background:var(--ink-rise);border:1px solid var(--line-ink);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow-ink);}
.form .row{display:flex;gap:12px;align-items:flex-end;}
@media(max-width:560px){.form .row{flex-direction:column;}}
.form .field{flex:1;display:flex;flex-direction:column;gap:8px;}
.form label{font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--d2);}
.form .inputwrap{display:flex;align-items:center;gap:10px;background:var(--ink);border:1px solid var(--line-ink-strong);border-radius:var(--r-md);padding:0 16px;height:56px;transition:border-color var(--t-fast),box-shadow var(--t-fast);}
.form .inputwrap:focus-within{border-color:var(--g-ondark);box-shadow:0 0 0 3px rgba(16,185,129,.18);}
.form .inputwrap .cc{font-family:var(--ui);font-size:16px;color:var(--d2);font-weight:500;padding-right:10px;border-right:1px solid var(--line-ink-strong);}
.form input[type=tel],.form input[type=email]{flex:1;background:none;border:none;outline:none;color:var(--d0);font-family:var(--ui);font-size:17px;font-weight:500;letter-spacing:.01em;}
.form input[type=tel]::placeholder,.form input[type=email]::placeholder{color:var(--d3);}
.form .btn-primary{height:56px;padding:0 28px;flex-shrink:0;}
@media(max-width:560px){.form .btn-primary{width:100%;justify-content:center;}}

.consent{margin-top:18px;display:flex;align-items:flex-start;gap:11px;cursor:pointer;}
.consent input{appearance:none;-webkit-appearance:none;width:19px;height:19px;border:1px solid var(--line-ink-strong);border-radius:5px;background:var(--ink);flex-shrink:0;margin-top:2px;cursor:pointer;position:relative;transition:background var(--t-fast),border-color var(--t-fast);}
.consent input:checked{background:var(--g);border-color:var(--g);}
.consent input:checked::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #06281c;border-width:0 2px 2px 0;transform:rotate(45deg);}
.consent .txt{font-size:12.5px;line-height:1.5;color:var(--d2);}
.consent .txt b{color:var(--d1);font-weight:600;}
.form .err{margin-top:14px;font-size:13px;color:#F2A6A6;min-height:0;display:none;}
.form .err.show{display:block;}
.form .micro{margin-top:16px;font-size:11.5px;color:var(--d3);line-height:1.5;}

/* success state */
.form-success{display:none;text-align:center;padding:18px 8px 8px;}
.form-success.show{display:block;}
.form-success .check{width:64px;height:64px;border-radius:50%;background:var(--g-tint-dark);border:1px solid var(--g-700);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;}
.form-success .check svg{width:28px;height:28px;}
.form-success h3{font-family:var(--display);font-weight:500;font-size:28px;letter-spacing:-0.01em;}
.form-success p{font-family:var(--read);font-size:17px;color:var(--d1);margin-top:12px;line-height:1.5;max-width:38ch;margin-left:auto;margin-right:auto;}
.form.is-done .form-body{display:none;}

.talk{margin-top:30px;font-size:14.5px;color:var(--d2);text-align:center;}
.talk a{color:var(--g-ondark);text-decoration:none;border-bottom:1px solid rgba(52,211,153,.4);padding-bottom:1px;font-weight:500;}
.talk a:hover{border-color:var(--g-ondark);}

/* ============ FOOTER ============ */
.footer{background:var(--ink);color:var(--d0);border-top:1px solid var(--line-ink);}
.footer .wrap{padding:56px 40px 64px;}
@media(max-width:760px){.footer .wrap{padding:48px 22px 56px;}}
.footer .top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;flex-wrap:wrap;}
.footer .brand .wm{color:var(--d0);}
.footer .brand .wm .ed{color:var(--g-ondark);}
.footer .slogans{display:flex;flex-direction:column;gap:6px;text-align:right;}
.footer .slogans .display{font-size:21px;color:var(--d1);}
.footer .slogans .display em{color:var(--g-ondark);}
@media(max-width:560px){.footer .slogans{text-align:left;}}
.footer .rule{height:1px;background:var(--line-ink);margin:38px 0 26px;}
.footer .bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer .bottom .fine{font-size:12.5px;color:var(--d3);line-height:1.6;}
.footer .bottom .fine a{color:var(--d2);text-decoration:none;}
.footer .bottom .fine a:hover{color:var(--g-ondark);}
.footer .bottom .right{display:flex;gap:22px;}
.footer .bottom .right a{font-size:12.5px;color:var(--d2);text-decoration:none;}
.footer .bottom .right a:hover{color:var(--g-ondark);}

/* ============ HERO — third-mode staging ============ */
.hero .pre{font-family:var(--read);font-weight:400;font-size:clamp(18px,2.4vw,27px);line-height:1.3;color:var(--d2);margin-bottom:14px;max-width:24ch;}
.hero .pre .strike{position:relative;color:var(--d1);}
.hero h1 .lead2{display:block;}
.hero .hero-foot{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px;}
.hero .descriptor{display:inline-flex;align-items:center;gap:11px;font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--g-ondark);}
.hero .descriptor .pipe{width:24px;height:1px;background:var(--g-ondark);opacity:.5;}
.hero .hero-foot .gline{margin-top:0;}

/* ============ MODES — the third way ============ */
.modes .head{max-width:36ch;margin-bottom:52px;}
.modes .head h2{font-family:var(--display);font-weight:500;font-size:clamp(30px,4.4vw,52px);line-height:1.05;letter-spacing:-0.02em;margin-top:18px;}
.modes .head h2 .em{font-style:italic;color:var(--g-deep);}
.modes .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;}
@media(max-width:860px){.modes .grid3{grid-template-columns:1fr;}}
.mode{border:1px solid var(--line);border-radius:var(--r-lg);padding:34px 30px 32px;background:var(--paper);display:flex;flex-direction:column;gap:14px;min-height:320px;position:relative;overflow:hidden;}
.mode .kind{font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--t3);}
.mode h3{font-family:var(--display);font-weight:500;font-size:30px;line-height:1.04;letter-spacing:-0.015em;}
.mode .verdict{font-family:var(--read);font-size:16.5px;line-height:1.5;color:var(--t1);}
.mode .stamp{margin-top:auto;font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--t3);display:flex;align-items:center;gap:9px;}
.mode .stamp .x{width:15px;height:15px;border-radius:50%;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--t3);font-size:9px;}
.mode.broken h3{color:var(--t2);}
.mode.inedito{background:var(--ink);border-color:var(--g-deep);color:var(--d0);box-shadow:0 0 0 1px var(--g-deep),0 40px 80px -44px rgba(16,185,129,.5);}
.mode.inedito::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 90% -10%,rgba(16,185,129,.16),transparent 62%);}
.mode.inedito .kind{color:var(--g-ondark);}
.mode.inedito h3{color:var(--d0);}
.mode.inedito h3 .ed{color:var(--g-ondark);font-style:normal;}  /* canonical wordmark: upright; bright emerald to match the footer (both on dark) */
.mode.inedito .verdict{color:var(--d1);position:relative;}
.mode.inedito .stamp{color:var(--g-ondark);}
.mode.inedito .stamp .x{border-color:var(--g-700);color:var(--g-ondark);}
.modes .frame-break{margin-top:44px;text-align:center;font-family:var(--display);font-weight:400;font-size:clamp(22px,3vw,34px);line-height:1.2;letter-spacing:-0.015em;color:var(--t0);}
.modes .frame-break .em{font-style:italic;color:var(--g-deep);}

/* ============ ANCHOR — full-bleed pull quote ============ */
.anchor{background:var(--ink);color:var(--d0);position:relative;overflow:hidden;}
.anchor::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(90% 120% at 12% 0%,rgba(16,185,129,.12),transparent 55%);}
.anchor .wrap{position:relative;padding:120px 40px;text-align:center;}
@media(max-width:760px){.anchor .wrap{padding:84px 22px;}}
.anchor .mark{font-family:var(--display);font-weight:400;font-style:italic;font-size:90px;line-height:.6;color:var(--g-ondark);opacity:.6;height:46px;}
.anchor blockquote{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.7vw,46px);line-height:1.18;letter-spacing:-0.02em;max-width:20ch;margin:18px auto 0;}
.anchor blockquote .em{font-style:italic;color:var(--g-ondark);}
.anchor .src{margin-top:30px;font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--d2);}

/* ============ TRIPTYCH — mall / magazine / brand story ============ */
.triptych .head{max-width:38ch;margin-bottom:56px;}
.triptych .head h2{font-family:var(--display);font-weight:500;font-size:clamp(32px,4.6vw,54px);line-height:1.04;letter-spacing:-0.02em;margin-top:18px;}
.triptych .head p{font-family:var(--read);font-size:18px;color:var(--t2);margin-top:14px;line-height:1.55;max-width:52ch;}
.panels{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:860px){.panels{grid-template-columns:1fr;gap:34px;}}
.panel-x{display:flex;flex-direction:column;}
.panel-x .frame{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);}
.panel-x image-slot{display:block;width:100%;aspect-ratio:3/4;}
.panel-x .frame img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;}
.panel-x .rn{position:absolute;top:16px;left:18px;z-index:2;font-family:var(--display);font-weight:500;font-style:italic;font-size:34px;line-height:1;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5);mix-blend-mode:normal;}
.panel-x .meta{padding:24px 6px 0;}
.panel-x .kicker{margin-bottom:9px;}
.panel-x h3{font-family:var(--display);font-weight:500;font-size:27px;line-height:1.06;letter-spacing:-0.015em;}
.panel-x .feels{font-family:var(--read);font-style:italic;font-size:17px;color:var(--g-deep);margin-top:8px;line-height:1.4;}
.panel-x .move{margin-top:14px;font-family:var(--ui);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--t3);display:flex;align-items:center;gap:8px;}
.panel-x .move .d{width:6px;height:6px;border-radius:50%;background:var(--g);}
.panel-x .desc{font-family:var(--read);font-size:16px;line-height:1.5;color:var(--t1);margin-top:12px;}

/* end-mark — the finite gesture */
.endmark{display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 0 2px;}
.endmark .ln{height:1px;width:46px;background:var(--line-ink-strong);}
.endmark .sq{width:9px;height:9px;background:var(--g-ondark);border-radius:2px;}

/* ---- scroll reveal (gated on .js so content is visible without JS) ---- */
.reveal{transition:opacity var(--t-slow) var(--settle),transform var(--t-slow) var(--settle);}
.js .reveal{opacity:0;transform:translateY(14px);}
.js .reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.08s;}.reveal.d2{transition-delay:.16s;}.reveal.d3{transition-delay:.24s;}
@media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none;}}
