/* to-translation.com | Translation Agency | Coeur d'Alene, Idaho
   BONE WHITE #FAFAF7 + Near-Black #131310 + SAGE/OLIVE #4F7942
   Syne + Source Sans 3 -- NEVER used in 50+ site series!
   TWO-TIER HEADER | EDITORIAL TYPOGRAPHIC HERO | SCROLLING MARQUEE
   VERTICAL SERVICE LIST | LEFT TIMELINE BUILDER | E-COMMERCE CHECKOUT
   ROTATING TESTIMONIAL CAROUSEL | 2X2 PROCESS GRID
   tt- prefix | Publishing-themed: masthead, manifest, roster, forge, colophon */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');

:root {
  --tt-bone:#FAFAF7; --tt-bone2:#F3F1EB; --tt-bone3:#E8E4DC;
  --tt-black:#131310; --tt-black2:#1C1C1A; --tt-black3:#292926;
  --tt-sage:#4F7942; --tt-sage2:#3D6133; --tt-sage-l:#7DAE72;
  --tt-sage-bg:rgba(79,121,66,.07); --tt-sage-bg2:rgba(79,121,66,.14);
  --tt-muted:#6A6865; --tt-muted2:#A8A4A0;
  --tt-border:rgba(19,19,16,.09); --tt-border2:rgba(19,19,16,.18);
  --tt-max:1160px;
  --tt-fh:'Syne',system-ui,sans-serif;
  --tt-fb:'Source Sans 3',system-ui,sans-serif;
  --tt-r:5px; --tt-r2:10px; --tt-r3:100px;
  --tt-sh:0 2px 12px rgba(19,19,16,.07);
  --tt-sh2:0 10px 40px rgba(19,19,16,.12);
  --tt-tr:all .18s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--tt-bone);color:var(--tt-black);font-family:var(--tt-fb);font-size:1rem;line-height:1.72;overflow-x:hidden;min-width:320px;}
img{display:block;max-width:100%;height:auto;}a{color:inherit;text-decoration:none;}ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
input,textarea,select{font-family:inherit;}address{font-style:normal;}
p{font-size:clamp(0.82rem,1.4vw,0.96rem);line-height:1.78;color:var(--tt-muted);}

/* ── SHELL: max-width container ── */
.tt-shell{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;}

/* ── MASTHEAD: TWO-TIER HEADER (UNIQUE in entire series!) ── */
/* Tier 1: Dark utility strip with contact + social */
.tt-util-strip{background:var(--tt-black2);padding:.4rem 0;display:block;}
.tt-util-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;}
.tt-util-group{display:flex;align-items:center;gap:1.5rem;}
.tt-util-ct{display:flex;align-items:center;gap:.3rem;font-size:0.69rem;color:rgba(255,255,255,.45);text-decoration:none;transition:color .14s;}
.tt-util-ct:hover{color:rgba(255,255,255,.7);}
.tt-util-ct svg{color:rgba(255,255,255,.3);}
.tt-util-divider{width:1px;height:14px;background:rgba(255,255,255,.12);}
.tt-util-socials{display:flex;gap:.5rem;}
.tt-util-soc{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4);transition:color .14s;text-decoration:none;}
.tt-util-soc:hover{color:var(--tt-sage-l);}
/* Tier 2: Main nav (sticky) */
.tt-nav-bar{position:sticky;top:0;z-index:400;background:var(--tt-bone);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s;}
.tt-nav-bar.tt-nav-stuck{border-bottom-color:var(--tt-border);box-shadow:var(--tt-sh);}
.tt-nav-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:68px;}
.tt-brand{font-family:var(--tt-fh);font-size:clamp(1.2rem,2.2vw,1.75rem);font-weight:800;color:var(--tt-black);text-decoration:none;letter-spacing:-.03em;display:flex;align-items:center;}
.tt-brand-to{color:var(--tt-black);}
.tt-brand-dash{color:var(--tt-muted2);margin:0 .05em;}
.tt-brand-word{color:var(--tt-sage);}
.tt-manifest{display:flex;align-items:center;gap:.1rem;}
.tt-nav-link{font-family:var(--tt-fb);font-size:clamp(0.88rem,1.4vw,0.97rem);font-weight:600;color:var(--tt-muted);padding:.38rem .75rem;border-radius:var(--tt-r);transition:var(--tt-tr);text-decoration:none;white-space:nowrap;}
.tt-nav-link:hover{color:var(--tt-black);background:var(--tt-bone2);}
.tt-nav-link.tt-active{color:var(--tt-sage);}
.tt-verse-btn{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--tt-fb);font-size:clamp(0.85rem,1.3vw,0.92rem);font-weight:700;color:#fff;background:var(--tt-sage);padding:.42rem 1.2rem;border-radius:var(--tt-r3);border:none;cursor:pointer;transition:background .14s;text-decoration:none;white-space:nowrap;margin-left:.5rem;}
.tt-verse-btn:hover{background:var(--tt-sage2);}
.tt-draft-btn{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--tt-fb);font-size:clamp(0.85rem,1.3vw,0.92rem);font-weight:700;color:var(--tt-black);background:transparent;padding:.40rem 1.2rem;border-radius:var(--tt-r3);border:2px solid var(--tt-border2);transition:var(--tt-tr);text-decoration:none;white-space:nowrap;}
.tt-draft-btn:hover{border-color:var(--tt-sage);color:var(--tt-sage);}
.tt-ham{display:none;color:var(--tt-black);cursor:pointer;}
/* Mobile overlay */
.tt-mob-veil{position:fixed;inset:0;background:var(--tt-black);z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;opacity:0;pointer-events:none;transition:opacity .25s;}
.tt-mob-veil.tt-veil-show{opacity:1;pointer-events:auto;}
.tt-mob-close{position:absolute;top:1.2rem;right:1.5rem;color:rgba(255,255,255,.6);background:none;border:none;cursor:pointer;}
.tt-mob-veil .tt-nav-link{font-size:1.3rem;color:rgba(255,255,255,.7);display:block;padding:.6rem 2rem;}
.tt-mob-veil .tt-nav-link:hover{color:var(--tt-sage-l);}
.tt-mob-veil .tt-verse-btn{margin:1rem 0 0;}

/* ── BANNER: EDITORIAL TYPOGRAPHIC HERO (UNIQUE!) ── */
.tt-banner{padding:7rem 0 5rem;background:var(--tt-bone);}
.tt-banner-eyebrow{font-family:var(--tt-fb);font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:var(--tt-sage);display:block;margin-bottom:1.2rem;}
.tt-banner-h1{font-family:var(--tt-fh);font-size:clamp(3.2rem,7.5vw,10rem);font-weight:800;line-height:.94;letter-spacing:-.03em;color:var(--tt-black);margin-bottom:1.8rem;max-width:14ch;}
.tt-banner-sub{font-size:clamp(0.95rem,1.8vw,1.1rem);color:var(--tt-muted);max-width:56ch;line-height:1.72;margin-bottom:2.2rem;}
.tt-banner-ctas{display:flex;gap:.75rem;flex-wrap:wrap;}
.tt-banner-strip{margin-top:5rem;padding:1.5rem 0;border-top:1px solid var(--tt-border);}
.tt-banner-strip-in{display:flex;align-items:center;gap:2.5rem;flex-wrap:wrap;}
.tt-bsi{font-size:0.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--tt-muted2);display:flex;align-items:center;gap:.5rem;}
.tt-bsi-sep{width:3px;height:3px;border-radius:50%;background:var(--tt-muted2);}

/* ── MARQUEE: Scrolling language strip (CSS animation, UNIQUE!) ── */
.tt-marquee-zone{overflow:hidden;border-top:1px solid var(--tt-border);border-bottom:1px solid var(--tt-border);padding:1rem 0;background:var(--tt-bone2);}
.tt-marquee-track{display:flex;width:max-content;animation:ttSlide 32s linear infinite;}
@keyframes ttSlide{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.tt-marquee-item{padding:0 1.5rem;font-family:var(--tt-fh);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--tt-muted2);white-space:nowrap;display:flex;align-items:center;gap:.8rem;}
.tt-mi-dot{width:3px;height:3px;border-radius:50%;background:var(--tt-sage);display:inline-block;}

/* ── ROSTER: VERTICAL EDITORIAL SERVICE LIST (NOT cards! UNIQUE!) ── */
.tt-roster-zone{padding:5.5rem 0;background:var(--tt-bone);}
.tt-roster-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--tt-black);}
.tt-section-ey{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:var(--tt-sage);display:block;}
.tt-roster-h2{font-family:var(--tt-fh);font-size:clamp(1.8rem,3.5vw,3rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;}
.tt-roster-more{font-size:0.78rem;font-weight:700;color:var(--tt-sage);text-decoration:none;display:flex;align-items:center;gap:.3rem;transition:gap .15s;}
.tt-roster-more:hover{gap:.5rem;}
.tt-roster-list{display:flex;flex-direction:column;}
.tt-roster-item{display:grid;grid-template-columns:52px 1fr auto 32px;gap:1.5rem;align-items:center;padding:1.8rem 0;border-bottom:1px solid var(--tt-border);text-decoration:none;transition:var(--tt-tr);}
.tt-roster-item:hover{background:transparent;}
.tt-roster-item:hover .tt-ri-num{color:var(--tt-sage);}
.tt-roster-item:hover .tt-ri-arr{transform:translateX(5px);color:var(--tt-sage);}
.tt-ri-num{font-family:var(--tt-fh);font-size:0.78rem;font-weight:700;color:var(--tt-muted2);transition:color .15s;}
.tt-ri-main{}
.tt-ri-nm{font-family:var(--tt-fh);font-size:clamp(1.05rem,1.9vw,1.35rem);font-weight:700;color:var(--tt-black);display:block;margin-bottom:.15rem;}
.tt-ri-brief{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);line-height:1.65;display:block;max-width:72ch;}
.tt-ri-price{font-size:clamp(0.78rem,1.2vw,0.88rem);font-weight:700;color:var(--tt-sage);white-space:nowrap;}
.tt-ri-arr{color:var(--tt-muted2);transition:transform .15s,color .15s;font-size:1.1rem;}

/* ── PREAMBLE: About mini (2-col inline) ── */
.tt-preamble{padding:5.5rem 0;background:var(--tt-bone2);}
.tt-pre-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.tt-pre-h{font-family:var(--tt-fh);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;line-height:1.05;margin-bottom:.8rem;}
.tt-pre-p{font-size:clamp(0.82rem,1.4vw,0.95rem);color:var(--tt-muted);line-height:1.82;margin-bottom:.8rem;}
.tt-pre-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;}
.tt-pst-item{background:var(--tt-bone);border:1px solid var(--tt-border);border-radius:var(--tt-r2);padding:1.2rem;}
.tt-pst-n{font-family:var(--tt-fh);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;color:var(--tt-sage);display:block;line-height:1;}
.tt-pst-l{font-size:0.69rem;color:var(--tt-muted2);text-transform:uppercase;letter-spacing:.18em;display:block;margin-top:.1rem;}

/* ── CHRONICLE: Cases (alternating 2-col rows) ── */
.tt-chronicle{padding:5.5rem 0;background:var(--tt-bone);}
.tt-chronicle-rows{display:flex;flex-direction:column;}
.tt-chronicle-row{display:grid;grid-template-columns:55% 1fr;gap:5rem;padding:4rem 0;border-top:1px solid var(--tt-border);align-items:center;}
.tt-chronicle-row:nth-child(even){grid-template-columns:1fr 55%;direction:rtl;}
.tt-chronicle-row:nth-child(even)>*{direction:ltr;}
.tt-cr-visual{background:var(--tt-bone2);border-radius:var(--tt-r2);min-height:260px;display:flex;align-items:center;justify-content:center;border:1px solid var(--tt-border);}
.tt-cr-details{}
.tt-cr-cat{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.25em;color:var(--tt-sage);display:block;margin-bottom:.4rem;}
.tt-cr-nm{font-family:var(--tt-fh);font-size:clamp(1.3rem,2.2vw,1.9rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;margin-bottom:.25rem;}
.tt-cr-loc{font-size:0.72rem;color:var(--tt-muted2);display:block;margin-bottom:.6rem;}
.tt-cr-svc{font-size:clamp(0.82rem,1.3vw,0.95rem);color:var(--tt-muted);margin-bottom:.5rem;}
.tt-cr-pair{font-family:var(--tt-fh);font-size:0.82rem;font-weight:700;color:var(--tt-black);display:block;margin-bottom:.5rem;}
.tt-cr-result{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted2);line-height:1.65;padding:.6rem .8rem;background:var(--tt-sage-bg);border-left:2px solid var(--tt-sage);border-radius:0 var(--tt-r) var(--tt-r) 0;}

/* ── SCRIBE: Process (2x2 editorial grid, UNIQUE style!) ── */
.tt-scribe{padding:5.5rem 0;background:var(--tt-bone2);}
.tt-scribe-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem;margin-top:3rem;}
.tt-scribe-item{position:relative;}
.tt-scribe-n{font-family:var(--tt-fh);font-size:clamp(3.5rem,7vw,6rem);font-weight:800;color:rgba(79,121,66,.08);line-height:1;display:block;margin-bottom:-.4rem;}
.tt-scribe-ico{color:var(--tt-sage);margin-bottom:.6rem;}
.tt-scribe-nm{font-family:var(--tt-fh);font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:700;color:var(--tt-black);margin-bottom:.4rem;}
.tt-scribe-body{font-size:clamp(0.78rem,1.3vw,0.9rem);color:var(--tt-muted);line-height:1.78;}

/* ── BYLINE: Single rotating testimonial (UNIQUE carousel!) ── */
.tt-byline{padding:5.5rem 0;background:var(--tt-black);overflow:hidden;}
.tt-byline-inner{max-width:820px;margin:0 auto;padding:0 2rem;text-align:center;}
.tt-byline-eye{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:rgba(255,255,255,.3);display:block;margin-bottom:1.5rem;}
.tt-quote-stage{}
.tt-quote-mark{font-family:var(--tt-fh);font-size:4rem;font-weight:800;color:var(--tt-sage);line-height:.5;display:block;margin-bottom:1rem;}
.tt-quote-text{font-family:var(--tt-fh);font-size:clamp(1.05rem,2.2vw,1.5rem);font-weight:600;color:#fff;line-height:1.5;margin-bottom:1.5rem;font-style:normal;transition:opacity .3s;}
.tt-quote-attr{display:flex;flex-direction:column;gap:.1rem;}
.tt-qa-who{font-size:0.88rem;font-weight:700;color:var(--tt-sage-l);}
.tt-qa-role{font-size:0.72rem;color:rgba(255,255,255,.4);}
.tt-quote-nav{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:2rem;}
.tt-qn-btn{width:32px;height:32px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);transition:var(--tt-tr);cursor:pointer;background:none;}
.tt-qn-btn:hover{border-color:var(--tt-sage);color:var(--tt-sage-l);}
.tt-qn-dots{display:flex;gap:.4rem;}
.tt-qn-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.2);transition:background .2s,width .2s;cursor:pointer;}
.tt-qn-dot.tt-qd-active{background:var(--tt-sage);width:18px;border-radius:3px;}

/* ── LEDGER: Pricing (3 clean cards) ── */
.tt-ledger{padding:5.5rem 0;background:var(--tt-bone);}
.tt-ledger-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
.tt-ledger-tier{background:var(--tt-bone);border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);padding:2.5rem 2rem;display:flex;flex-direction:column;transition:border-color .2s;}
.tt-ledger-tier:hover:not(.tt-lt-feat){border-color:var(--tt-sage);}
.tt-ledger-tier.tt-lt-feat{background:var(--tt-sage);border-color:var(--tt-sage);}
.tt-lt-badge{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--tt-sage);display:block;margin-bottom:.35rem;}
.tt-ledger-tier.tt-lt-feat .tt-lt-badge{color:rgba(255,255,255,.6);}
.tt-lt-nm{font-family:var(--tt-fh);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;color:var(--tt-black);margin-bottom:.2rem;}
.tt-ledger-tier.tt-lt-feat .tt-lt-nm{color:#fff;}
.tt-lt-tag{font-size:0.72rem;color:var(--tt-muted);display:block;margin-bottom:1.5rem;}
.tt-ledger-tier.tt-lt-feat .tt-lt-tag{color:rgba(255,255,255,.55);}
.tt-lt-pr{font-family:var(--tt-fh);font-size:clamp(2.5rem,4vw,3.2rem);font-weight:800;color:var(--tt-black);display:block;line-height:1;}
.tt-ledger-tier.tt-lt-feat .tt-lt-pr{color:#fff;}
.tt-lt-pp{font-size:0.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--tt-muted2);display:block;margin-bottom:1.5rem;}
.tt-ledger-tier.tt-lt-feat .tt-lt-pp{color:rgba(255,255,255,.5);}
.tt-lt-feats{flex:1;display:flex;flex-direction:column;gap:.28rem;}
.tt-lt-fi{display:flex;align-items:flex-start;gap:.3rem;font-size:clamp(0.69rem,1.1vw,0.78rem);color:var(--tt-muted);}
.tt-lt-fi svg{color:var(--tt-sage);flex-shrink:0;margin-top:.1rem;}
.tt-ledger-tier.tt-lt-feat .tt-lt-fi{color:rgba(255,255,255,.65);}
.tt-ledger-tier.tt-lt-feat .tt-lt-fi svg{color:rgba(255,255,255,.7);}

/* ── QUERY: FAQ accordion (+ indicator style, UNIQUE!) ── */
.tt-query-zone{padding:5.5rem 0;background:var(--tt-bone2);}
.tt-query-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 4rem;}
.tt-query-col{display:flex;flex-direction:column;}
.tt-qi{border-top:1px solid var(--tt-border);}
.tt-qi:last-child{border-bottom:1px solid var(--tt-border);}
.tt-qi-trig{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;background:none;border:none;cursor:pointer;text-align:left;gap:1rem;}
.tt-qi-q{font-family:var(--tt-fh);font-size:clamp(0.88rem,1.4vw,1rem);font-weight:700;color:var(--tt-black);}
.tt-qi.tt-qi-open .tt-qi-q{color:var(--tt-sage);}
.tt-qi-ind{font-size:1.1rem;font-weight:300;color:var(--tt-sage);flex-shrink:0;transition:transform .2s;}
.tt-qi.tt-qi-open .tt-qi-ind{transform:rotate(45deg);}
.tt-qi-body{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.tt-qi-body p{font-size:clamp(0.75rem,1.2vw,0.85rem);color:var(--tt-muted);line-height:1.82;padding-bottom:1rem;}
.tt-qi.tt-qi-open .tt-qi-body{max-height:500px;}

/* ── CTA PREAMBLE at bottom ── */
.tt-shore{padding:5.5rem 0;background:var(--tt-bone);}
.tt-shore-in{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;}
.tt-shore-h{font-family:var(--tt-fh);font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;margin-bottom:.5rem;}
.tt-shore-p{font-size:clamp(0.85rem,1.4vw,0.98rem);color:var(--tt-muted);margin-bottom:1.2rem;}
.tt-shore-cts{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;}
.tt-shore-ct{display:flex;align-items:center;gap:.45rem;font-size:clamp(0.78rem,1.2vw,0.9rem);color:var(--tt-muted);text-decoration:none;transition:color .14s;}
.tt-shore-ct:hover{color:var(--tt-sage);}
.tt-shore-ct svg{color:var(--tt-sage);flex-shrink:0;}

/* ── PAGE BANNER ── */
.tt-pgbnr{background:var(--tt-black2);padding:6rem 2rem 3.5rem;text-align:center;margin-top:0;}
.tt-pgbnr-eye{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:var(--tt-sage);opacity:.65;display:block;margin-bottom:.4rem;}
.tt-pgbnr-h1{font-family:var(--tt-fh);font-size:clamp(2rem,5vw,4.5rem);font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.02;}
.tt-pgbnr-sub{font-size:clamp(0.85rem,1.4vw,0.98rem);color:rgba(255,255,255,.55);margin:.5rem auto 0;max-width:60ch;line-height:1.78;}

/* ── SERVICE PAGE ── */
.tt-svc-shell{max-width:var(--tt-max);margin:0 auto;padding:3.5rem 2rem 6rem;display:grid;grid-template-columns:3fr 2fr;gap:3rem;align-items:start;}
.tt-svc-main h2{font-family:var(--tt-fh);font-size:clamp(0.95rem,1.5vw,1.1rem);font-weight:700;color:var(--tt-black);margin:2.5rem 0 .4rem;text-transform:uppercase;letter-spacing:.05em;}
.tt-svc-main p{font-size:clamp(0.78rem,1.3vw,0.92rem);color:var(--tt-muted);line-height:1.82;margin-bottom:.85rem;}
.tt-svc-li{display:flex;align-items:flex-start;gap:.4rem;font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);margin-bottom:.25rem;}
.tt-svc-li svg{color:var(--tt-sage);flex-shrink:0;margin-top:.1rem;}
.tt-svc-aside{background:var(--tt-bone2);border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);overflow:hidden;position:sticky;top:5rem;}
.tt-sa-top{background:var(--tt-sage);padding:2rem;}
.tt-sa-from{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.55);display:block;}
.tt-sa-pr{font-family:var(--tt-fh);font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800;color:#fff;display:block;line-height:1;}
.tt-sa-body{padding:1.5rem 2rem;}
.tt-sa-fi{display:flex;align-items:flex-start;gap:.3rem;font-size:0.72rem;color:var(--tt-muted);margin-bottom:.3rem;}
.tt-sa-fi svg{color:var(--tt-sage);flex-shrink:0;}
.tt-sa-cta{display:block;width:100%;text-align:center;background:var(--tt-sage);color:#fff;font-family:var(--tt-fb);font-size:clamp(0.82rem,1.3vw,0.9rem);font-weight:700;padding:.55rem;border:none;border-radius:var(--tt-r);cursor:pointer;transition:background .14s;text-decoration:none;margin-top:.8rem;}
.tt-sa-cta:hover{background:var(--tt-sage2);}

/* ── FORMS ── */
.tt-fin{background:var(--tt-bone);border:1.5px solid var(--tt-border2);border-radius:var(--tt-r);padding:.5rem .85rem;color:var(--tt-black);font-size:clamp(0.82rem,1.3vw,0.92rem);outline:none;transition:border-color .14s;width:100%;}
.tt-fin:focus{border-color:var(--tt-sage);}
.tt-fin::placeholder{color:var(--tt-muted2);}
textarea.tt-fin{min-height:100px;resize:vertical;}
select.tt-fin{cursor:pointer;}
.tt-fl{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--tt-muted);display:block;margin-bottom:.2rem;}
.tt-frow{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;}
.tt-fld{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.6rem;}
.tt-agree{display:flex;align-items:flex-start;gap:.45rem;margin:.7rem 0;font-size:clamp(0.69rem,1.1vw,0.78rem);color:var(--tt-muted);}
.tt-agree input{margin-top:2px;flex-shrink:0;accent-color:var(--tt-sage);}
.tt-agree a{color:var(--tt-sage);font-weight:600;}
.tt-err{background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.2);border-radius:var(--tt-r);padding:.42rem .75rem;font-size:clamp(0.69rem,1.1vw,0.78rem);color:#DC2626;margin:.4rem 0;}

/* ── FORGE: LEFT TIMELINE BUILDER (UNIQUE!) ── */
.tt-forge-zone{padding:3rem 0 6rem;background:var(--tt-bone);}
.tt-forge{display:grid;grid-template-columns:220px 1fr;min-height:520px;border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);overflow:hidden;}
.tt-forge-track{background:var(--tt-bone2);border-right:1.5px solid var(--tt-border);padding:2rem 1.2rem;display:flex;flex-direction:column;gap:.3rem;}
.tt-fstep{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border-radius:var(--tt-r);cursor:pointer;transition:var(--tt-tr);}
.tt-fstep:hover{background:var(--tt-bone3);}
.tt-fst-num{font-family:var(--tt-fh);font-size:0.75rem;font-weight:700;color:var(--tt-muted2);width:22px;text-align:center;transition:color .15s;flex-shrink:0;}
.tt-fst-nm{font-size:clamp(0.78rem,1.2vw,0.88rem);font-weight:500;color:var(--tt-muted);transition:color .15s;}
.tt-fstep.tt-fs-active{background:var(--tt-sage-bg);}
.tt-fstep.tt-fs-active .tt-fst-num{color:var(--tt-sage);}
.tt-fstep.tt-fs-active .tt-fst-nm{color:var(--tt-black);font-weight:700;}
.tt-fstep.tt-fs-done .tt-fst-nm{color:var(--tt-sage);}
.tt-fstep.tt-fs-done .tt-fst-num{color:var(--tt-sage);}
.tt-forge-content{padding:2.5rem;background:var(--tt-bone);}
.tt-forge-pane-h{font-family:var(--tt-fh);font-size:clamp(1rem,1.7vw,1.25rem);font-weight:700;color:var(--tt-black);margin-bottom:.3rem;}
.tt-forge-pane-sub{font-size:0.78rem;color:var(--tt-muted);margin-bottom:1.5rem;}
.tt-svc-tile-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;}
.tt-svc-tile{border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);padding:.9rem;cursor:pointer;transition:var(--tt-tr);display:flex;flex-direction:column;gap:.15rem;}
.tt-svc-tile:hover{border-color:rgba(79,121,66,.3);}
.tt-svc-tile.tt-st-sel{border-color:var(--tt-sage);background:var(--tt-sage-bg);}
.tt-st-ico{color:var(--tt-sage);margin-bottom:.1rem;}
.tt-st-nm{font-family:var(--tt-fh);font-size:clamp(0.78rem,1.2vw,0.9rem);font-weight:700;color:var(--tt-black);}
.tt-st-rt{font-size:0.62rem;color:var(--tt-muted);}
.tt-forge-nav{display:flex;justify-content:space-between;margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--tt-border);}
.tt-fn-prev{font-size:clamp(0.78rem,1.2vw,0.88rem);font-weight:700;color:var(--tt-muted);background:none;border:none;cursor:pointer;padding:.4rem 0;display:flex;align-items:center;gap:.3rem;transition:color .14s;}
.tt-fn-prev:hover{color:var(--tt-black);}
.tt-fn-next{background:var(--tt-sage);color:#fff;font-family:var(--tt-fb);font-size:clamp(0.82rem,1.3vw,0.9rem);font-weight:700;padding:.45rem 1.4rem;border-radius:var(--tt-r3);cursor:pointer;border:none;transition:background .14s;}
.tt-fn-next:hover{background:var(--tt-sage2);}
/* Builder quick buttons */
.tt-wq-btn{background:var(--tt-bone2);border:1px solid var(--tt-border);border-radius:var(--tt-r3);padding:.2rem .6rem;font-size:0.72rem;font-weight:700;color:var(--tt-muted);cursor:pointer;transition:var(--tt-tr);}
.tt-wq-btn:hover,.tt-wq-btn.tt-wq-sel{background:var(--tt-sage);border-color:var(--tt-sage);color:#fff;}
.tt-wc-inp{width:100px;background:var(--tt-bone2);border:1.5px solid var(--tt-border2);border-radius:var(--tt-r);padding:.38rem .7rem;font-size:clamp(0.82rem,1.3vw,0.9rem);font-weight:600;color:var(--tt-black);outline:none;transition:border-color .14s;}
.tt-wc-inp:focus{border-color:var(--tt-sage);}
/* Urgency */
.tt-urg-row{display:flex;gap:.5rem;flex-wrap:wrap;}
.tt-urg-inp{display:none;}
.tt-urg-lbl{border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);padding:.5rem .9rem;cursor:pointer;transition:var(--tt-tr);display:flex;flex-direction:column;}
.tt-urg-lbl:hover{border-color:rgba(79,121,66,.3);}
.tt-urg-inp:checked+.tt-urg-lbl{border-color:var(--tt-sage);background:var(--tt-sage-bg);}
.tt-ul-nm{font-size:clamp(0.78rem,1.2vw,0.88rem);font-weight:700;color:var(--tt-black);}
.tt-ul-days{font-size:0.62rem;color:var(--tt-muted);}
.tt-ul-pct{font-size:0.62rem;font-weight:700;color:var(--tt-sage);}
/* Addons */
.tt-addon-inp{display:none;}
.tt-addon-lbl{display:flex;align-items:center;justify-content:space-between;border:1.5px solid var(--tt-border);border-radius:var(--tt-r);padding:.48rem .85rem;cursor:pointer;transition:var(--tt-tr);margin-bottom:.35rem;}
.tt-addon-lbl:hover{border-color:rgba(79,121,66,.25);}
.tt-addon-inp:checked+.tt-addon-lbl{border-color:var(--tt-sage);background:var(--tt-sage-bg);}
.tt-al-nm{font-size:clamp(0.75rem,1.2vw,0.85rem);font-weight:500;color:var(--tt-black);}
.tt-al-pr{font-size:0.75rem;font-weight:700;color:var(--tt-sage);}
/* Forge tally bar */
.tt-forge-tally{background:var(--tt-black2);border-radius:0 0 var(--tt-r2) var(--tt-r2);padding:.9rem 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.tt-tally-lbl{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.4);}
.tt-tally-val{font-family:var(--tt-fh);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;color:#fff;}
.tt-tally-err{font-size:0.75rem;color:#FCA5A5;display:none;}
.tt-tally-err.tt-te-vis{display:block;}

/* ── GATEWAY: E-commerce checkout (UNIQUE!) ── */
.tt-gateway-page{background:var(--tt-bone2);min-height:70vh;padding:4rem 0 6rem;}
.tt-gw-shell{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:3fr 2fr;gap:3rem;align-items:start;}
.tt-gate-h{font-family:var(--tt-fh);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700;margin-bottom:1.2rem;color:var(--tt-black);}
.tt-gate-form{background:var(--tt-bone);border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);padding:2.5rem;}
.tt-gate-recap{background:var(--tt-bone);border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);overflow:hidden;position:sticky;top:6rem;}
.tt-gr-top{background:var(--tt-sage);padding:1.2rem 1.5rem;}
.tt-gr-label{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.55);}
.tt-gr-title{font-family:var(--tt-fh);font-size:1rem;font-weight:700;color:#fff;}
.tt-gr-rows{padding:1.2rem 1.5rem;border-bottom:1px solid var(--tt-border);}
.tt-gr-row{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;border-bottom:1px solid var(--tt-border);}
.tt-gr-row:last-child{border-bottom:none;}
.tt-gr-lbl{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--tt-muted);}
.tt-gr-val{font-size:clamp(0.72rem,1.1vw,0.8rem);font-weight:600;color:var(--tt-black);}
.tt-gr-total{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;}
.tt-gr-tl{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--tt-muted2);}
.tt-gr-tv{font-family:var(--tt-fh);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;color:var(--tt-black);}
.tt-co-btn{width:100%;background:var(--tt-sage);color:#fff;font-family:var(--tt-fh);font-size:clamp(0.95rem,1.5vw,1.1rem);font-weight:800;padding:.7rem;border:none;border-radius:var(--tt-r2);cursor:pointer;transition:background .14s;margin-top:.8rem;}
.tt-co-btn:hover{background:var(--tt-sage2);}

/* ── LEGAL ── */
.tt-statute{max-width:820px;margin:3.5rem auto;padding:0 2rem 6rem;}
.tt-statute-eff{display:inline-block;font-size:0.72rem;color:var(--tt-muted);background:var(--tt-bone2);padding:.15rem .6rem;border-radius:var(--tt-r3);margin-bottom:1.5rem;}
.tt-statute h2{font-family:var(--tt-fh);font-size:clamp(0.95rem,1.5vw,1.1rem);font-weight:700;color:var(--tt-black);margin:2.5rem 0 .4rem;text-transform:uppercase;letter-spacing:.05em;}
.tt-statute p,.tt-statute li{font-size:clamp(0.78rem,1.2vw,0.9rem);color:var(--tt-muted);line-height:1.82;margin-bottom:.9rem;}
.tt-statute ul{padding-left:1.4rem;margin:.5rem 0;}
.tt-statute li{list-style:disc;}
.tt-statute a{color:var(--tt-sage);}

/* ── COOKIE + CHAT ── */
.tt-consent-bar{position:fixed;bottom:0;left:0;right:0;z-index:800;background:var(--tt-black2);padding:.75rem 2rem;display:none;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;border-top:3px solid var(--tt-sage);}
.tt-consent-bar p{font-size:0.72rem;color:rgba(255,255,255,.6);margin:0;}
.tt-consent-bar a{color:var(--tt-sage-l);}
.tt-ck-btns{display:flex;gap:.5rem;flex-shrink:0;}
.tt-ck-yes{background:var(--tt-sage);color:#fff;font-size:0.72rem;font-weight:700;padding:.28rem .85rem;border-radius:var(--tt-r3);cursor:pointer;border:none;}
.tt-ck-no{background:transparent;color:rgba(255,255,255,.4);font-size:0.72rem;border:1px solid rgba(255,255,255,.18);padding:.26rem .85rem;border-radius:var(--tt-r3);cursor:pointer;}

/* ── FOOTER (colophon) ── */
.tt-colophon{background:var(--tt-black2);}
.tt-col-top{max-width:var(--tt-max);margin:0 auto;padding:4rem 2rem 3rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;}
.tt-col-brand{font-family:var(--tt-fh);font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:800;color:#fff;text-decoration:none;display:flex;align-items:center;gap:0;letter-spacing:-.02em;margin-bottom:.4rem;}
.tt-col-brand-to{color:rgba(255,255,255,.85);}
.tt-col-brand-dash{color:rgba(255,255,255,.25);margin:0 .03em;}
.tt-col-brand-word{color:var(--tt-sage-l);}
.tt-col-tag{font-size:0.72rem;color:rgba(255,255,255,.4);max-width:28ch;margin-bottom:.8rem;line-height:1.65;}
.tt-col-socs{display:flex;gap:.35rem;}
.tt-col-soc{width:28px;height:28px;border:1px solid rgba(255,255,255,.15);border-radius:var(--tt-r);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4);transition:var(--tt-tr);text-decoration:none;}
.tt-col-soc:hover{border-color:var(--tt-sage);color:var(--tt-sage-l);}
.tt-col-h{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.3);display:block;margin-bottom:.65rem;}
.tt-col-nav{display:flex;flex-direction:column;gap:.18rem;}
.tt-col-nav a{font-size:0.75rem;color:rgba(255,255,255,.5);text-decoration:none;transition:color .14s;}
.tt-col-nav a:hover{color:var(--tt-sage-l);}
.tt-col-ct a{display:flex;align-items:flex-start;gap:.3rem;font-size:0.72rem;color:rgba(255,255,255,.5);text-decoration:none;transition:color .14s;margin-bottom:.22rem;}
.tt-col-ct a:hover{color:var(--tt-sage-l);}
.tt-col-base{max-width:var(--tt-max);margin:0 auto;padding:.65rem 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem;border-top:1px solid rgba(255,255,255,.07);}
.tt-col-copy{font-size:0.69rem;color:rgba(255,255,255,.3);}
.tt-col-legal{display:flex;gap:1rem;flex-wrap:wrap;}
.tt-col-legal a{font-size:0.69rem;color:rgba(255,255,255,.3);text-decoration:none;transition:color .14s;}
.tt-col-legal a:hover{color:var(--tt-sage-l);}
/* Utilities */
.tt-reveal{opacity:0;transform:translateY(12px);transition:opacity .4s,transform .4s;}
.tt-revealed{opacity:1;transform:none;}
.tt-result-pg{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:7rem 2rem;gap:1.5rem;background:var(--tt-bone2);}
.tt-result-pg h1{font-family:var(--tt-fh);font-size:clamp(2.2rem,4vw,3.8rem);font-weight:800;color:var(--tt-black);}
/* Responsive */
@media(max-width:1024px){
  .tt-manifest{display:none;} .tt-ham{display:flex;}
  .tt-util-strip{display:none;}
  .tt-ledger-row,.tt-pre-grid,.tt-shore-in,.tt-gw-shell,.tt-svc-shell{grid-template-columns:1fr;}
  .tt-chronicle-row,.tt-chronicle-row:nth-child(even){grid-template-columns:1fr;direction:ltr;}
  .tt-col-top{grid-template-columns:1fr 1fr;}
  .tt-forge{grid-template-columns:1fr;}
  .tt-forge-track{flex-direction:row;border-right:none;border-bottom:1.5px solid var(--tt-border);padding:1rem 1.2rem;overflow-x:auto;}
  .tt-fstep{flex-direction:column;gap:.15rem;text-align:center;min-width:56px;}
  .tt-gate-recap{position:static;}
  .tt-scribe-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .tt-svc-tile-row,.tt-urg-row,.tt-frow,.tt-pre-stats,.tt-query-grid,.tt-ledger-row{grid-template-columns:1fr;}
  .tt-col-top{grid-template-columns:1fr;}
  .tt-banner-h1{font-size:clamp(2.5rem,10vw,4rem);}
}

/* ════════════════════════════════════════════
   HOMEPAGE FULL REBUILD — new sections
   ════════════════════════════════════════════ */

/* ── FORGE: new full-viewport dark hero ── */
.tt-forge{background:var(--tt-black);min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:0;position:relative;overflow:hidden;}
.tt-forge::before{content:'';position:absolute;right:-8%;top:15%;width:520px;height:520px;border-radius:50%;border:1px solid rgba(79,121,66,.12);pointer-events:none;}
.tt-forge::after{content:'';position:absolute;right:3%;top:25%;width:300px;height:300px;border-radius:50%;border:1px solid rgba(79,121,66,.07);pointer-events:none;}
.tt-fg-upper{flex:1;display:flex;align-items:flex-end;padding:9rem 0 3rem;}
.tt-fg-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;width:100%;}
.tt-fg-eye{font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.35em;color:var(--tt-sage-l);display:block;margin-bottom:1.5rem;opacity:.8;}
.tt-fg-h1{font-family:var(--tt-fh);font-size:clamp(4rem,10vw,11rem);font-weight:800;color:var(--tt-bone);line-height:.9;letter-spacing:-.03em;margin-bottom:2rem;max-width:14ch;}
.tt-fg-h1 em{color:var(--tt-sage-l);font-style:normal;}
.tt-fg-sub{font-size:clamp(0.92rem,1.6vw,1.08rem);color:rgba(250,250,247,.35);max-width:58ch;line-height:1.78;margin-bottom:2.5rem;}
.tt-fg-ctas{display:flex;gap:.7rem;flex-wrap:wrap;}
.tt-fg-btn{display:inline-flex;align-items:center;gap:.35rem;background:var(--tt-sage);color:#fff;font-family:var(--tt-fb);font-size:clamp(0.85rem,1.3vw,0.95rem);font-weight:700;padding:.55rem 1.6rem;border-radius:var(--tt-r3);text-decoration:none;transition:background .15s;white-space:nowrap;}
.tt-fg-btn:hover{background:var(--tt-sage2);}
.tt-fg-ghost{display:inline-flex;align-items:center;gap:.35rem;color:rgba(250,250,247,.35);font-size:clamp(0.85rem,1.3vw,0.95rem);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(250,250,247,.1);padding-bottom:2px;transition:color .15s;white-space:nowrap;}
.tt-fg-ghost:hover{color:rgba(250,250,247,.65);}
/* Stats strip inside hero */
.tt-fg-stats{border-top:1px solid rgba(250,250,247,.07);padding:2rem 0;}
.tt-fg-stats-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:flex;gap:0;}
.tt-fg-si{flex:1;padding:0 2rem;border-right:1px solid rgba(250,250,247,.06);}
.tt-fg-si:first-child{padding-left:0;}
.tt-fg-si:last-child{border-right:none;}
.tt-fg-sn{font-family:var(--tt-fh);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;color:var(--tt-sage-l);display:block;line-height:1;}
.tt-fg-sl{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:rgba(250,250,247,.2);display:block;margin-top:.2rem;}

/* ── SLAB: 3x2 service cards ── */
.tt-slab{padding:5.5rem 0;background:var(--tt-bone);}
.tt-slab-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;}
.tt-slab-hd{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:2px solid var(--tt-black);}
.tt-slab-hd h2{font-family:var(--tt-fh);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;}
.tt-slab-hd a{font-size:0.82rem;font-weight:700;color:var(--tt-sage);text-decoration:none;display:flex;align-items:center;gap:.3rem;transition:gap .15s;}
.tt-slab-hd a:hover{gap:.5rem;}
.tt-slab-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--tt-border);}
.tt-slab-cell{background:var(--tt-bone);padding:2.2rem 2rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:background .15s;position:relative;overflow:hidden;}
.tt-slab-cell:hover{background:white;}
.tt-slab-cell:hover .tt-sc2-arr{opacity:1;transform:translate(3px,-3px);}
.tt-sc2-n{font-size:0.6rem;font-weight:700;letter-spacing:.2em;color:var(--tt-muted2);display:block;margin-bottom:.4rem;}
.tt-sc2-ico{color:var(--tt-sage);margin-bottom:.5rem;}
.tt-sc2-nm{font-family:var(--tt-fh);font-size:clamp(1rem,1.7vw,1.2rem);font-weight:700;color:var(--tt-black);margin-bottom:.4rem;line-height:1.2;}
.tt-sc2-brief{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);line-height:1.7;flex:1;}
.tt-sc2-pr{font-size:0.72rem;font-weight:700;color:var(--tt-sage);margin-top:.7rem;padding-top:.6rem;border-top:1px solid var(--tt-border);}
.tt-sc2-arr{color:var(--tt-muted2);margin-top:.3rem;opacity:.4;transition:opacity .15s,transform .15s;}

/* ── DATUM: stats strip ── */
.tt-datum{background:var(--tt-black2);padding:3.5rem 0;border-top:1px solid rgba(250,250,247,.04);}
.tt-datum-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:0;}
.tt-datum-item{text-align:center;padding:0 2rem;border-right:1px solid rgba(250,250,247,.06);}
.tt-datum-item:last-child{border-right:none;}
.tt-datum-n{font-family:var(--tt-fh);font-size:clamp(2.2rem,4vw,3.5rem);font-weight:800;color:var(--tt-sage-l);display:block;line-height:1;}
.tt-datum-l{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:rgba(250,250,247,.2);display:block;margin-top:.25rem;}

/* ── NARRATE: about mini ── */
.tt-narrate{padding:5.5rem 0;background:var(--tt-bone2);}
.tt-narrate-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.tt-narrate-h{font-family:var(--tt-fh);font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;margin-bottom:1rem;line-height:1.05;}
.tt-narrate-p{font-size:clamp(0.85rem,1.4vw,0.98rem);color:var(--tt-muted);line-height:1.82;margin-bottom:.8rem;}
.tt-narrate-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--tt-border);}
.tt-ns-item{background:var(--tt-bone2);padding:2rem 1.5rem;}
.tt-ns-n{font-family:var(--tt-fh);font-size:clamp(2rem,3.5vw,3rem);font-weight:800;color:var(--tt-black);display:block;line-height:1;}
.tt-ns-l{font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--tt-muted2);display:block;margin-top:.15rem;}

/* ── ANNALS: case study cards ── */
.tt-annals{padding:5.5rem 0;background:var(--tt-bone);}
.tt-annals-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;}
.tt-annals-hd{margin-bottom:2.5rem;}
.tt-annals-hd h2{font-family:var(--tt-fh);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;}
.tt-annals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
.tt-annals-card{background:white;border:1.5px solid var(--tt-border);border-radius:var(--tt-r2);overflow:hidden;transition:var(--tt-tr);}
.tt-annals-card:hover{transform:translateY(-3px);box-shadow:var(--tt-sh2);border-color:var(--tt-sage);}
.tt-ac-img{width:100%;height:200px;object-fit:cover;display:block;background:var(--tt-bone3);}
.tt-ac-body{padding:1.5rem;}
.tt-ac-cat{font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--tt-sage);display:block;margin-bottom:.3rem;}
.tt-ac-nm{font-family:var(--tt-fh);font-size:clamp(1rem,1.7vw,1.2rem);font-weight:700;color:var(--tt-black);margin-bottom:.1rem;line-height:1.2;}
.tt-ac-loc{font-size:0.72rem;color:var(--tt-muted2);display:block;margin-bottom:.5rem;}
.tt-ac-svc{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);margin-bottom:.3rem;}
.tt-ac-pair{font-size:0.72rem;font-weight:700;color:var(--tt-black);display:block;padding:.3rem 0;border-top:1px solid var(--tt-border);border-bottom:1px solid var(--tt-border);margin:.4rem 0;}
.tt-ac-res{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);line-height:1.65;margin:0;}

/* ── RIFFLE: 4-step process ── */
.tt-riffle{padding:5.5rem 0;background:var(--tt-bone2);border-top:1px solid var(--tt-border);}
.tt-riffle-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;}
.tt-riffle-hd{margin-bottom:3rem;}
.tt-riffle-hd h2{font-family:var(--tt-fh);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:var(--tt-black);letter-spacing:-.02em;}
.tt-riffle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.tt-riffle-grid::before{content:'';position:absolute;top:24px;left:6%;right:6%;height:1px;background:linear-gradient(90deg,var(--tt-sage),var(--tt-sage-l));opacity:.15;}
.tt-riffle-step{padding-right:2rem;position:relative;}
.tt-riffle-step:last-child{padding-right:0;}
.tt-rs-circle{width:48px;height:48px;border-radius:50%;background:var(--tt-sage-bg);border:1.5px solid var(--tt-sage-bg2);display:flex;align-items:center;justify-content:center;color:var(--tt-sage);margin-bottom:1.2rem;position:relative;z-index:1;}
.tt-rs-n{font-size:0.6rem;font-weight:800;letter-spacing:.2em;color:var(--tt-sage);display:block;margin-bottom:.25rem;text-transform:uppercase;}
.tt-rs-nm{font-family:var(--tt-fh);font-size:clamp(1rem,1.6vw,1.15rem);font-weight:700;color:var(--tt-black);margin-bottom:.4rem;}
.tt-rs-body{font-size:clamp(0.72rem,1.1vw,0.82rem);color:var(--tt-muted);line-height:1.75;}

/* ── VOICE: testimonials 3-col on dark ── */
.tt-voice{padding:5.5rem 0;background:var(--tt-black);}
.tt-voice-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;}
.tt-voice-hd{margin-bottom:2.5rem;}
.tt-voice-hd h2{font-family:var(--tt-fh);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:var(--tt-bone);letter-spacing:-.02em;}
.tt-voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
.tt-voice-card{background:var(--tt-bone);border-radius:var(--tt-r2);padding:2.5rem;display:flex;flex-direction:column;gap:1.2rem;}
.tt-vc-q{font-family:var(--tt-fh);font-size:clamp(0.88rem,1.4vw,1rem);font-weight:400;color:var(--tt-black);line-height:1.6;flex:1;font-style:italic;}
.tt-vc-who{font-family:var(--tt-fh);font-size:clamp(0.88rem,1.4vw,1rem);font-weight:700;color:var(--tt-black);display:block;}
.tt-vc-role{font-size:0.69rem;font-weight:600;color:var(--tt-muted2);display:block;margin-top:.1rem;}
.tt-vc-sage{width:32px;height:3px;background:var(--tt-sage);border-radius:2px;}

/* ── PLAN BUTTON (clean, no inline style) ── */
.tt-lt-cta{margin-top:1.4rem;width:100%;font-family:var(--tt-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;padding:.52rem;border-radius:var(--tt-r2);cursor:pointer;border:1.5px solid var(--tt-border2);background:transparent;color:var(--tt-black);transition:var(--tt-tr);}
.tt-lt-cta:hover{background:var(--tt-sage);color:#fff;border-color:var(--tt-sage);}
.tt-ledger-tier.tt-lt-feat .tt-lt-cta{background:#fff;color:var(--tt-sage);border-color:#fff;}
.tt-ledger-tier.tt-lt-feat .tt-lt-cta:hover{background:rgba(255,255,255,.88);}

/* ── INK CTA: final dark band ── */
.tt-ink-cta{background:var(--tt-black2);padding:5.5rem 0;border-top:1px solid rgba(250,250,247,.04);}
.tt-ink-in{max-width:var(--tt-max);margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;}
.tt-ink-h{font-family:var(--tt-fh);font-size:clamp(2.5rem,6vw,6rem);font-weight:800;color:var(--tt-bone);letter-spacing:-.03em;line-height:.9;margin-bottom:.6rem;}
.tt-ink-h em{color:var(--tt-sage-l);font-style:normal;}
.tt-ink-sub{font-size:clamp(0.88rem,1.4vw,1rem);color:rgba(250,250,247,.3);max-width:52ch;line-height:1.8;}
.tt-ink-acts{display:flex;flex-direction:column;gap:.7rem;flex-shrink:0;align-items:flex-start;}
.tt-ink-ghost{font-size:0.78rem;color:rgba(250,250,247,.2);text-decoration:none;border-bottom:1px solid rgba(250,250,247,.07);padding-bottom:1px;transition:color .15s;}
.tt-ink-ghost:hover{color:rgba(250,250,247,.5);}

/* ── Responsive ── */
@media(max-width:1024px){
  .tt-slab-grid{grid-template-columns:repeat(2,1fr);}
  .tt-riffle-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem;} .tt-riffle-grid::before{display:none;}
  .tt-voice-grid{grid-template-columns:1fr 1fr;}
  .tt-annals-grid{grid-template-columns:1fr 1fr;}
  .tt-ink-in{grid-template-columns:1fr;gap:2rem;} .tt-ink-acts{flex-direction:row;}
  .tt-narrate-in{grid-template-columns:1fr;gap:3rem;}
  .tt-datum-in{grid-template-columns:1fr 1fr;gap:1.5rem;} .tt-datum-item:nth-child(2){border-right:none;} .tt-datum-item:nth-child(3){border-right:1px solid rgba(250,250,247,.06);border-top:1px solid rgba(250,250,247,.06);}
}
@media(max-width:768px){
  .tt-fg-si{padding:0 1rem;} .tt-fg-stats-in{flex-wrap:wrap;gap:1rem;} .tt-fg-si{flex:1 1 40%;}
  .tt-slab-grid{grid-template-columns:1fr;}
  .tt-annals-grid{grid-template-columns:1fr;}
  .tt-riffle-grid{grid-template-columns:1fr;}
  .tt-voice-grid{grid-template-columns:1fr;}
  .tt-datum-in{grid-template-columns:1fr 1fr;}
  .tt-ledger-row{grid-template-columns:1fr;}
}
