/* ti-base-v12.css — shared base extracted verbatim from the v8/v11.6 page
   inline <style> block (pricing.html) so every new service page inherits the
   identical cascade. Load order on new pages:
     ti-base-v12.css  ->  ti-v9-polish.css  ->  ti-v12.css
   Extracted 2026-08-10. Do not edit tokens here without updating the older pages. */
*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#f3f0e8;--bg2:#ebe7db;--card:#fbf9f3;--ink:#16202e;--ink-dim:#4c5665;--muted:#8b8578;
--green:#1d5f4a;--green-bright:#2e7a5f;--green-deep:#153f32;--gold:#b0893c;--gold-bright:#c9a25c;--navy:#101828;--navy2:#18223a;
--line:rgba(22,32,46,.12);--line-soft:rgba(22,32,46,.08);--line-green:rgba(29,95,74,.3);
--serif:"Bricolage Grotesque",Inter,sans-serif;--sans:Inter,sans-serif;--mono:"IBM Plex Mono",monospace}
body{background:var(--bg);color:var(--ink-dim);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{font-family:var(--serif);font-weight:700;color:var(--ink);line-height:1.08;letter-spacing:-.02em}
h1 em,h2 em{font-style:normal;color:var(--green)}
a{color:inherit;text-decoration:none}
.wrap{width:min(1140px,92vw);margin:0 auto}
.site-head{position:sticky;top:0;z-index:100;padding:.85rem 0;background:rgba(243,240,232,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line-soft)}
.site-head .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.2rem}
.brand{display:flex;align-items:center;gap:.55rem;justify-self:start}
.brand svg{width:26px;height:26px;border-radius:6px}
.brand .word{font-family:var(--serif);font-weight:600;font-size:1.08rem;color:var(--ink)}
.brand .word em{font-style:normal;color:var(--green)}
.tabs{display:flex;gap:1.9rem;font-size:.88rem}
.tabs a{padding:.35rem 0;border-bottom:2px solid transparent;transition:color .25s,background-color .25s,border-color .25s,opacity .25s,transform .25s,box-shadow .25s}
.tabs a:hover{color:var(--ink)}
.tabs a.active{color:var(--ink);border-bottom-color:var(--green)}
.cta{justify-self:end;background:var(--green);color:#06121b;padding:.68rem 1.25rem;border-radius:8px;font-size:.86rem;font-weight:500;box-shadow:0 8px 20px rgba(29,95,74,.22);transition:background .3s}
.cta:hover{background:var(--green-deep)}
@media (max-width:900px){.site-head .wrap{grid-template-columns:auto 1fr}.brand{grid-column:1}.cta{grid-column:2;justify-self:end}.tabs{grid-column:1/-1;grid-row:2;overflow-x:auto;gap:1.5rem;font-size:.84rem;padding-top:.4rem}}
.hero{padding:5rem 0 1rem;text-align:center;position:relative;background:radial-gradient(46% 50% at 50% 0%, rgba(29,95,74,.08), transparent 70%), var(--bg)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(22,32,46,.1) 1px, transparent 1.4px);background-size:26px 26px;-webkit-mask-image:radial-gradient(55% 75% at 50% 20%, #000 0%, transparent 80%);mask-image:radial-gradient(55% 75% at 50% 20%, #000 0%, transparent 80%)}
.hero > *{position:relative;z-index:1}
.hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:22ch;margin:0 auto}
.hero .lede{max-width:52ch;margin:1.5rem auto 0;font-size:1.03rem}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
/* ===== plans ===== */
.plans{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:1.2rem;align-items:stretch;margin-top:2.2rem}
.plan{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:2rem 1.8rem;display:flex;flex-direction:column;box-shadow:0 20px 50px rgba(22,32,46,.09);transition:transform .35s, box-shadow .35s;position:relative}
.plan:hover{transform:translateY(-5px);box-shadow:0 30px 66px rgba(22,32,46,.14)}
.plan .p-name{font-size:.88rem;font-weight:700;color:var(--green)}
.plan h3{font-size:1.45rem;margin-top:.3rem}
.plan .price{display:flex;align-items:baseline;gap:.45rem;margin:1.2rem 0 .3rem;font-family:var(--serif);font-weight:700;color:var(--ink)}
.plan .price b{font-size:2.7rem;letter-spacing:-.02em}
.plan .price small{font-size:.85rem;font-family:var(--sans);font-weight:500;color:var(--muted)}
.plan .was{font-size:.8rem;color:var(--muted)}
.plan .was s{color:#a8543f}
.plan p.blurb{margin-top:1rem;font-size:.92rem}
.plan ul{margin-top:1.1rem;list-style:none;display:flex;flex-direction:column;gap:.5rem}
.plan li{padding-left:1.35rem;position:relative;font-size:.89rem}
.plan li::before{content:"";position:absolute;left:0;top:.62em;width:.55rem;height:2px;background:var(--green);border-radius:2px}
.plan .foot{margin-top:auto;padding-top:1.3rem;font-size:.8rem;color:var(--muted);border-top:1px solid var(--line-soft)}
.plan.feat{background:linear-gradient(160deg,#141d30,#101828);border-color:rgba(95,174,131,.35);box-shadow:0 34px 80px rgba(16,24,40,.4);color:#9daabd}
.plan.feat h3,.plan.feat .price{color:#f0ede4}
.plan.feat .p-name{color:#8fd0ac}
.plan.feat li{color:#c5cedb}
.plan.feat li::before{background:#5fae83}
.plan.feat .foot{color:#7787a0;border-top-color:rgba(240,237,228,.1)}
.plan.feat .was{color:#7787a0}
.plan.feat .was s{color:#d08770}
.plan .ribbon{position:absolute;top:-0.9rem;left:50%;transform:translateX(-50%);background:linear-gradient(120deg,var(--gold),var(--gold-bright));color:#101828;font-size:.72rem;font-weight:700;letter-spacing:.03em;border-radius:999px;padding:.4rem 1rem;box-shadow:0 10px 24px rgba(176,137,60,.35);white-space:nowrap}
.plan .go{margin-top:1.4rem;text-align:center;border-radius:9px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;border:1px solid var(--line);color:var(--ink);transition:color .3s,background-color .3s,border-color .3s,opacity .3s,transform .3s,box-shadow .3s}
.plan .go:hover{border-color:var(--green);color:var(--green)}
.plan.feat .go{background:var(--green);border-color:var(--green);color:#06121b;box-shadow:0 10px 26px rgba(29,95,74,.35)}
.plan.feat .go:hover{background:var(--green-deep);color:#f3f0e8}
@media (max-width:960px){.plans{grid-template-columns:1fr}.plan.feat{order:-1}}
/* flow strip */
.flow{margin-top:2.6rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}
.fstep{display:flex;gap:.9rem;align-items:flex-start;background:var(--bg2);border:1px solid var(--line-soft);border-radius:14px;padding:1.2rem 1.3rem}
.fstep i{font-style:normal;font-family:var(--serif);font-weight:700;color:#06121b;background:var(--green);width:1.8rem;height:1.8rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}
.fstep b{display:block;font-size:.9rem;font-weight:700;color:var(--ink)}
.fstep span{display:block;font-size:.82rem;margin-top:.15rem}
@media (max-width:860px){.flow{grid-template-columns:1fr}}
/* anchor band */
.anchor{margin-top:3.6rem;background:radial-gradient(60% 90% at 50% 0%, rgba(95,174,131,.12), transparent 70%), var(--navy);border-radius:20px;padding:clamp(2rem,4vw,3rem);display:grid;grid-template-columns:auto 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;box-shadow:0 34px 80px rgba(16,24,40,.35)}
.anchor .big{font-family:var(--serif);font-weight:800;font-size:clamp(2.4rem,5vw,4rem);color:#8fd0ac;line-height:1}
.anchor p{color:#c5cedb;max-width:56ch;font-size:.98rem}
.anchor p b{color:#f0ede4}
@media (max-width:760px){.anchor{grid-template-columns:1fr}}
/* faq */
.faq{margin-top:3.6rem;max-width:820px}
.faq h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:1rem}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.25rem 0;font-family:var(--serif);font-weight:600;font-size:1.05rem;color:var(--ink);transition:color .3s}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--green);font-size:1.1rem;transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--green)}
.faq .a{padding:0 0 1.4rem;max-width:62ch;font-size:.93rem}
/* cta + footer */
.cta-band{background:radial-gradient(60% 90% at 50% 0%, rgba(95,174,131,.12), transparent 70%), var(--navy);text-align:center;padding:5rem 0;margin-top:4.5rem;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(240,237,228,.08) 1px, transparent 1.4px);background-size:28px 28px;-webkit-mask-image:radial-gradient(50% 60% at 50% 50%, #000 0%, transparent 80%);mask-image:radial-gradient(50% 60% at 50% 50%, #000 0%, transparent 80%)}
.cta-band > *{position:relative}
.cta-band h2{color:#f0ede4;font-size:clamp(1.9rem,3.6vw,2.8rem)}
.cta-band p{color:#9daabd;margin:1rem auto 0;max-width:46ch}
.cta-band .cta{display:inline-block;margin-top:1.9rem}
footer{border-top:1px solid var(--line);padding:3.2rem 0 2.8rem;background:var(--bg2)}
footer .f-top{display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:2.5rem;align-items:start}
@media (max-width:820px){footer .f-top{grid-template-columns:1fr}}
footer .fb{display:flex;align-items:center;gap:.55rem;font-family:var(--serif);font-weight:600;color:var(--ink)}
footer .fb em{font-style:normal;color:var(--green)}
footer .fb svg{width:22px;height:22px;border-radius:5px}
footer .f-brand .tag{display:block;margin-top:.9rem;max-width:34ch;font-size:.88rem;color:var(--muted);line-height:1.6}
footer .f-nav{display:flex;flex-direction:column;gap:.55rem;font-size:.9rem}
footer .f-nav b{font-family:var(--serif);font-weight:600;color:var(--ink);font-size:.95rem;margin-bottom:.35rem}
footer .f-nav a{color:var(--ink-dim);transition:color .25s;width:fit-content}
footer .f-nav a:hover{color:var(--green)}
footer .legal{display:block;margin-top:2.2rem;font-size:.78rem;color:#a49e8f}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
