:root{--ink:#0B2A2E;--ink-2:#1C3F44;--text:#122A2E;--muted:#4E6568;--teal:#007C87;--teal-deep:#006770;--honey:#F0A93A;--honey-deep:#C47E12;--coral:#E8573F;--green:#2FA37A;--page:#F6F8F7;--panel:#fff;--line:#D7E2E0;--max:1140px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--text);font-family:Figtree,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.55;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal-deep)}
:focus-visible{outline:3px solid var(--honey);outline-offset:3px;border-radius:4px}
h1,h2,h3{margin:0 0 .4em;line-height:1.08;font-weight:500;letter-spacing:-.012em}
h1,h2{font-family:Newsreader,Georgia,serif}
h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:.98}
h2{font-size:clamp(2rem,4vw,3rem)}
h3{font-family:Figtree,sans-serif;font-weight:700;font-size:1.2rem;letter-spacing:0}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px;min-width:0}
.btn{display:inline-flex;align-items:center;gap:8px;padding:.95rem 1.5rem;border-radius:999px;font-weight:700;text-decoration:none;font-size:1.02rem;line-height:1.1;border:2px solid transparent;white-space:nowrap}
.btn-honey{background:var(--honey);color:var(--ink);border-color:var(--honey)}
.btn-honey:hover{background:#F7B955;border-color:#F7B955;color:var(--ink)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.1);color:#fff}
.btn-teal{background:var(--teal-deep);color:#fff;border-color:var(--teal-deep)}
.btn-teal:hover{background:#004F56;border-color:#004F56;color:#fff}
.btn-line{background:transparent;color:var(--teal-deep);border-color:var(--teal-deep)}
.btn-line:hover{background:#E6F0EF}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.small{font-size:.92rem;color:var(--muted)}
/* nav */
.nav{background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--text);font-family:Newsreader,Georgia,serif;font-size:1.6rem;font-weight:500}
.brand svg{width:32px;height:32px;flex:none}
.brand .word{display:inline-flex;align-items:baseline;line-height:1}.brand .tld{color:var(--teal-deep);font-family:Figtree,sans-serif;font-weight:700;font-size:.95rem;margin-left:1px}
.links{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.links a{text-decoration:none;color:var(--text);font-weight:600}
.links a:hover{color:var(--teal-deep)}
.links .btn{padding:.7rem 1.2rem}
/* hero */
.hero{background:var(--ink);color:#fff;padding:72px 0 64px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-180px;top:-180px;width:560px;height:560px;border-radius:50%;border:90px solid rgba(240,169,58,.08);pointer-events:none}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start;position:relative}
.hero h1{color:#fff;margin-bottom:.45em}
.hero h1 em{font-style:italic;color:var(--honey);font-weight:400}
.hero .lede{font-size:1.25rem;color:#C8D8D6;max-width:56ch;margin-bottom:1.5em}
.hero .lede strong{color:#fff;font-weight:600}
.hero .small{color:#9DB7B4;margin-top:1.1em}
/* the machine card */
.machine{background:var(--panel);color:var(--text);border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.machine .bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);font-weight:700;font-size:.95rem}
.machine .bar span{font-weight:500;color:var(--muted)}
.machine .cols{display:grid;grid-template-columns:1fr 1fr}
.machine .col{padding:16px 18px 6px}
.machine .col + .col{border-left:1px solid var(--line);background:#F3FBF7}
.machine .col h4{margin:0 0 12px;font-size:.8rem;letter-spacing:.02em;text-transform:none;display:flex;align-items:center;gap:8px;color:var(--muted)}
.machine .col h4 i{width:10px;height:10px;border-radius:50%;display:inline-block}
.row{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:start;padding:9px 0;border-top:1px dashed var(--line);font-size:.9rem}
.row:first-of-type{border-top:0}
.row b{font-weight:700;color:var(--text);font-size:.85rem}
.row .pill{display:inline-block;font-size:.72rem;font-weight:700;border-radius:999px;padding:2px 8px;margin-bottom:4px;color:#fff}
.pill.bad{background:var(--coral)}.pill.meh{background:var(--honey);color:var(--ink)}.pill.ok{background:var(--green)}
.row q{quotes:none;color:var(--muted);display:block;line-height:1.4}
/* proof strip */
.proof{background:var(--panel);border-bottom:1px solid var(--line)}
.proof .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.proof div{padding:28px 24px 26px;border-left:1px solid var(--line)}
.proof div:first-child{border-left:0;padding-left:0}
.proof .num{font-family:Newsreader,Georgia,serif;font-size:3rem;line-height:1;color:var(--teal-deep);font-weight:500}
.proof p{margin:.4em 0 0;color:var(--muted);font-size:.98rem;max-width:30ch}
/* sections */
.sec{padding:84px 0}
.sec-head{max-width:64ch;margin-bottom:44px}
.sec-head p{font-size:1.15rem;color:var(--muted)}
.benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.benefit{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:30px 30px 28px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px}
.benefit .ico{width:52px;height:52px;border-radius:14px;background:#FFF1D6;display:grid;place-items:center;color:var(--honey-deep)}
.benefit .ico svg{width:26px;height:26px}
.benefit h3{margin-bottom:.35em;font-size:1.3rem}
.benefit p{margin:0;color:var(--muted)}
/* fomo */
.fomo{background:var(--ink-2);color:#fff;padding:84px 0}
.fomo h2{color:#fff}
.fomo .sec-head p{color:#C8D8D6}
.fomo .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.fomo .btn-row{margin-top:8px}
.serps{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.serp{background:var(--panel);color:var(--text);border-radius:14px;padding:16px;min-width:0}
.serp .q{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:.85rem;color:var(--muted);margin-bottom:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.serp .q i{width:14px;height:14px;border:2px solid var(--muted);border-radius:50%;flex:none;position:relative}
.serp .q i::after{content:"";position:absolute;width:6px;height:2px;background:var(--muted);right:-5px;bottom:-2px;transform:rotate(45deg)}
.serp .tag{font-size:.75rem;font-weight:700;margin-bottom:8px}
.serp.them .tag{color:var(--green)}.serp.you .tag{color:var(--coral)}
.panel{border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px}
.panel .face{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#B8CBC9,#7FA3A0)}
.panel b{display:block;font-size:1rem}
.panel small{display:block;color:var(--muted);font-size:.78rem;margin-bottom:6px}
.panel .facts{font-size:.78rem;color:var(--text);line-height:1.45}
.panel .links{gap:6px;margin-top:8px}
.panel .links span{font-size:.7rem;border:1px solid var(--line);border-radius:999px;padding:1px 7px;color:var(--muted)}
.link{padding:9px 0;border-top:1px dashed var(--line)}
.link:first-of-type{border-top:0}
.link b{display:block;font-size:.88rem;color:#1A4FB5;font-weight:600}
.link span{font-size:.75rem;color:var(--muted)}
.link.ghost b{color:#8A9A9C}
/* graph */
.graph-top{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:48px;align-items:center;margin-bottom:36px}.graph figure{margin:0;width:100%}.graph-lede{color:var(--muted);font-size:1.08rem}.graph-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-bottom:28px}.graph .checks{margin-bottom:1.4em}
.graph figure{background:var(--ink);border-radius:18px;padding:0;overflow:hidden}.graph figure svg{display:block;width:100%;height:auto}.graph figcaption{padding:14px 18px 16px;color:#C8D8D6;font-size:.88rem;line-height:1.45}
.graph svg{width:100%;height:auto;display:block}
.graph figcaption{font-size:.88rem;color:var(--muted);padding:12px 6px 2px}
.checks{list-style:none;margin:0;padding:0}
.checks li{padding:10px 0 10px 34px;position:relative;border-top:1px solid var(--line)}
.checks li::before{content:"";position:absolute;left:0;top:14px;width:20px;height:20px;border-radius:50%;background:var(--green);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='black'/><path d='M7 12.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='black'/><path d='M7 12.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none'/></svg>") center/contain no-repeat}
/* steps */
.timeline{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:10px}.sec.how{background:#E9F1F0}.after-live{margin:34px 0 0;font-size:1.12rem;font-weight:600}.after-live a{color:var(--teal-deep)}
.timeline::before{content:"";position:absolute;left:0;right:0;top:19px;height:3px;background:var(--line)}
.tstep{position:relative;padding-top:52px}
.tstep::before{content:"";position:absolute;left:0;top:8px;width:26px;height:26px;border-radius:50%;background:var(--honey);border:4px solid #E9F1F0;box-shadow:0 0 0 3px var(--honey)}
.tstep .day{font-weight:800;color:var(--teal-deep);font-size:.9rem;margin-bottom:6px}
.tstep p{color:var(--muted);margin:0;font-size:.98rem}
/* records */
.records{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.rec{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.rec .shot-img{aspect-ratio:1200/750;object-fit:cover;width:100%;display:block;border-bottom:1px solid var(--line)}
.rec .rec-body{padding:14px 16px 16px}
.rec b{display:block;font-size:1rem}
.rec a{font-size:.9rem}
.rec p{margin:.5em 0 0;color:var(--muted);font-size:.9rem}
.badge{display:inline-block;font-size:.7rem;font-weight:800;color:var(--honey-deep);background:#FFF1D6;border-radius:999px;padding:2px 9px;margin-left:8px;vertical-align:middle}
/* pricing */
.pricing{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.price-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:36px}
.bigprice{font-family:Newsreader,Georgia,serif;font-size:clamp(3.4rem,7vw,5.4rem);line-height:1;color:var(--ink);margin:.1em 0 .15em}
.bigprice small{font-family:Figtree,sans-serif;font-size:1.1rem;color:var(--muted);font-weight:600;margin-left:.3em}
.incl{columns:2;column-gap:28px;margin:0 0 1.4em;padding-left:1.1em;color:var(--muted);font-size:.98rem}
.incl li{margin-bottom:.35em;break-inside:avoid}
.promise{background:#FFF7E8;border:1px solid #F3DCAE;border-radius:16px;padding:24px 26px}
.promise h3{margin-bottom:.3em}
.promise p{margin:0 0 .8em;color:var(--text);font-size:1.12rem}.promise .small{font-size:.92rem;color:var(--muted)}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.plans.four{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.plans.four .plan{padding:20px 18px 18px}.plans.four .plan h3{font-size:1.3rem}.plans.four .pp{font-size:1.9rem}.plans.four .plan ul{font-size:.9rem}.then{border-top:2px solid var(--line);margin:40px 0 18px;padding-top:28px}.then p{color:var(--muted);margin:0}.kicker-dark{color:var(--honey-deep)}
.plan{border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;display:flex;flex-direction:column;background:var(--page)}
.plan.hot{background:var(--ink);color:#fff;border-color:var(--ink)}
.plan.hot h3,.plan.hot .pp{color:#fff}
.plan.hot ul,.plan.hot .who{color:#C8D8D6}
.plan h3{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:1.5rem}
.plan .pp{font-family:Newsreader,Georgia,serif;font-size:2.2rem;line-height:1;margin-bottom:.5em;color:var(--ink)}
.plan .pp small{font-family:Figtree,sans-serif;font-size:.9rem;color:inherit;opacity:.75;margin-left:.3em}
.plan ul{margin:0 0 1.2em;padding-left:1.1em;font-size:.95rem;color:var(--muted)}
.plan li{margin-bottom:.3em}
.plan .who{margin-top:auto;font-size:.9rem;color:var(--muted)}
/* faq */
.faq{max-width:74ch}
.faq details{border-top:1px solid var(--line);padding:18px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:700;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--honey-deep);font-size:1.5rem;line-height:1;flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:12px 0 0;color:var(--muted);max-width:66ch}
/* footer */
.foot{background:var(--ink);color:#D5E3E1;margin-top:0}
.foot .pitch{padding:72px 0 56px;border-bottom:1px solid rgba(255,255,255,.14)}
.foot .pitch .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:center}
.foot h2{color:#fff}
.foot .pitch p{font-size:1.12rem;max-width:56ch;color:#C8D8D6}
.foot .brandrow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center;padding:36px 24px 8px}.foot .brandrow .about{margin:0;color:#C8D8D6;font-size:.95rem;max-width:62ch}.foot .cols{padding:28px 24px 30px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}.foot .cols h3 a{color:#fff;text-decoration:none}.foot .cols h3 a:hover{text-decoration:underline}
.foot .cols h3{color:#fff;font-size:.95rem}
.foot .cols ul{list-style:none;margin:0;padding:0}
.foot .cols li{margin-bottom:.5em;font-size:.95rem}
.foot .cols a{color:#D5E3E1;text-decoration:none}
.foot .cols a:hover{color:#fff;text-decoration:underline}
.foot .brand{color:#fff}.foot .brand .tld{color:var(--honey)}
.foot .legal{border-top:1px solid rgba(255,255,255,.14);padding:18px 0 28px;font-size:.85rem;color:#A9C0BD}
.foot .legal .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
@media (max-width:980px){
  .hero .wrap,.fomo .wrap,.graph .wrap,.price-hero,.foot .pitch .wrap{grid-template-columns:1fr}
  .benefits{grid-template-columns:1fr}
  .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline::before{display:none}
  .records,.plans,.plans.four{grid-template-columns:1fr}
  .graph-cols{grid-template-columns:1fr}
  .foot .brandrow{grid-template-columns:1fr}
  .foot .cols{grid-template-columns:1fr 1fr}
  .proof .wrap{grid-template-columns:1fr}
  .proof div{border-left:0;padding-left:0;border-top:1px solid var(--line)}
  .proof div:first-child{border-top:0}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .hero{padding:52px 0 48px}
  .sec,.fomo{padding:60px 0}
  .machine .cols{grid-template-columns:1fr}
  .machine .col + .col{border-left:0;border-top:1px solid var(--line)}
  .serps{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr;gap:18px}
  .incl{columns:1}
  .foot .cols{grid-template-columns:1fr}
  .links{gap:14px}
  .btn{white-space:normal}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- blog: shared */
.band{background:var(--ink);color:#fff;padding:64px 0 48px}
.band h1{color:#fff;font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:22ch}
.band .lede{color:#C8D8D6;font-size:1.2rem;max-width:60ch}
.band .kicker a{color:#C8D8D6;text-decoration:none}
.band .kicker a:hover{color:#fff;text-decoration:underline}
.band .btn-row{margin-top:8px}
.post-band{border-bottom:6px solid var(--c,var(--honey))}
.post-band .meta{color:#9DB7B4;font-size:.9rem;display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}
.kicker{font-size:.85rem;font-weight:800;letter-spacing:.01em;color:var(--honey);margin:0 0 10px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.chips a{text-decoration:none;border:1.5px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600;display:inline-flex;align-items:center;gap:8px}
.chips a::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c,#fff)}
.chips a:hover,.chips a.on{background:#fff;color:var(--ink);border-color:#fff}
.chips a:hover::before,.chips a.on::before{background:var(--c,var(--ink))}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 26px 22px;display:flex;flex-direction:column;gap:10px;min-width:0}
.card.big{grid-column:1/-1;padding:34px 36px 28px}
.card.big h3{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.01em;max-width:28ch}
.card h3{font-size:1.25rem;margin:0}
.card h3 a{text-decoration:none;color:var(--text)}
.card h3 a:hover{color:var(--teal-deep)}
.card p{margin:0;color:var(--muted);font-size:.98rem}
.card .meta{color:var(--muted);font-size:.85rem;display:flex;gap:14px;margin-top:auto;padding-top:6px}
.cat{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:.8rem;font-weight:800;color:var(--c,var(--ink));width:fit-content}
.cat::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--c,var(--ink))}
/* ---------- post page */
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;padding:48px 24px 40px;align-items:start}
.article{max-width:70ch;min-width:0}
.article>p:first-of-type{font-size:1.18rem}
.article h2{font-size:clamp(1.6rem,2.6vw,2rem);margin:1.6em 0 .5em}
.article h3{margin:1.4em 0 .4em;font-size:1.15rem}
.article p,.article li{font-size:1.06rem;line-height:1.65}
.article ul,.article ol{padding-left:1.3em}
.article li{margin-bottom:.45em}
.article a{text-decoration-thickness:1.5px;text-underline-offset:3px}
.article pre{background:var(--ink);color:#E6F0EF;border-radius:12px;padding:18px 20px;overflow-x:auto;font-size:.88rem;line-height:1.5}
.article code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}
.article p code,.article li code{background:#E6F0EF;padding:1px 6px;border-radius:5px;color:var(--ink)}
.article pre code{background:none;padding:0;color:inherit}
.article table{border-collapse:collapse;width:100%;margin:1.4em 0;font-size:.95rem;display:block;overflow-x:auto}
.article th,.article td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}
.article th{background:#E6F0EF;font-weight:700}
.article blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:4px solid var(--honey);color:var(--muted);font-family:Newsreader,Georgia,serif;font-size:1.25rem;line-height:1.4}
figure.diagram{margin:1.8em 0;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 16px 10px}
figure.diagram svg{width:100%;height:auto;display:block}
figure.diagram figcaption{font-size:.88rem;color:var(--muted);padding:10px 6px 2px;line-height:1.45}
.steps{margin:1.6em 0;border-top:1px solid var(--line)}
.steps ol{list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding:18px 0 18px 60px;border-bottom:1px solid var(--line);margin:0}
.steps li::before{content:counter(s);position:absolute;left:0;top:16px;width:38px;height:38px;border-radius:50%;background:var(--honey);color:var(--ink);font-weight:800;display:grid;place-items:center;font-size:1rem}
.steps li strong{display:block;font-size:1.08rem;margin-bottom:4px;color:var(--text)}
.steps li p{margin:0}
.callout{margin:1.6em 0;padding:18px 22px;background:#E6F0EF;border-left:5px solid var(--teal);border-radius:0 12px 12px 0}
.callout p{margin:0}
.callout p+p{margin-top:.6em}
.example{margin:1.6em 0;padding:18px 22px;background:#FFF7E8;border:1px solid #F3DCAE;border-radius:12px}
.example p{margin:0}.example p+p{margin-top:.6em}
.takeaway{margin:2em 0 1em;padding:24px 26px;background:var(--ink);color:#fff;border-radius:16px}
.takeaway p{margin:0;color:#fff}
.takeaway p+p{margin-top:.6em}
.takeaway strong{color:var(--honey)}
.takeaway a{color:#fff}
.takeaway ul{margin:.6em 0 0;color:#E6F0EF}
.tags{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.tags>span{font-weight:700;font-size:.9rem}
.tags .chips{margin:0}
.tags .chips a{border-color:var(--line);color:var(--text);background:var(--panel)}
.tags .chips a::before{display:none}
.tags .chips a:hover{border-color:var(--teal-deep);color:var(--teal-deep);background:var(--panel)}
.aside{position:sticky;top:92px;min-width:0;display:flex;flex-direction:column;gap:20px}
.cta-panel{background:var(--ink);color:#fff;border-radius:16px;padding:24px}
.cta-panel h3{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:1.5rem;color:#fff;margin-bottom:.4em}
.cta-panel p{color:#C8D8D6;font-size:.95rem}
.cta-panel .btn{display:flex;justify-content:center;margin-bottom:10px;white-space:normal;text-align:center}
.cta-panel .btn-line{color:#fff;border-color:rgba(255,255,255,.55)}
.cta-panel .btn-line:hover{background:rgba(255,255,255,.1);color:#fff}
.cta-panel .small{color:#9DB7B4;margin:12px 0 0}
.series{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.series .kicker{color:var(--ink);font-size:1.05rem;margin-bottom:6px}
.series ul{list-style:none;margin:0;padding:0}
.series li{padding:8px 0;border-top:1px solid var(--line);font-size:.88rem}
.series li:first-child{border-top:0}
.series a{text-decoration:none;color:var(--muted);font-weight:500}
.series a:hover{color:var(--teal-deep)}
.related{padding:16px 24px 64px}
.related h2{font-size:1.6rem;margin-bottom:.6em}
@media (max-width:980px){.post-grid{grid-template-columns:1fr;gap:36px}.aside{position:static}.cards,.cards.three{grid-template-columns:1fr}}
@media (max-width:640px){.band{padding:44px 0 36px}.steps li{padding-left:52px}.steps li::before{width:34px;height:34px}}

/* ---------- covers, bylines, author */
.card{padding:0;overflow:hidden}
.card .art{display:block;background:var(--ink)}
.card .art svg{display:block;width:100%;height:auto;aspect-ratio:600/300}
.card .card-body{padding:22px 24px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.card.big{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding:0}
.card.big .art{height:100%}
.card.big .art svg{height:100%;aspect-ratio:auto;object-fit:cover}
.card.big .card-body{padding:34px 36px 28px}
.band-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:40px;align-items:center}
.band-art{border-radius:16px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.band-art svg{display:block;width:100%;height:auto}
.byline{display:flex;align-items:center;gap:12px;margin-top:18px}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--honey)}
.byline div{display:flex;flex-direction:column;line-height:1.3}
.byline a{color:#fff;font-weight:700;text-decoration:none}
.byline a:hover{text-decoration:underline}
.byline span{color:#9DB7B4;font-size:.88rem}
.author-band .wrap{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;align-items:start}
.avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--honey)}
.rec .outcome{margin-top:10px;padding:8px 12px;border-radius:10px;background:#E3F5EE;color:#1E7A5A;font-weight:700;font-size:.9rem}
@media (max-width:980px){.band-grid{grid-template-columns:1fr;gap:24px}.band-art{max-width:420px}.card.big{grid-template-columns:1fr}.card.big .art svg{height:auto;aspect-ratio:600/300}}
@media (max-width:640px){.author-band .wrap{grid-template-columns:1fr}.band-art{display:none}}

/* ---------- hero chat card */
.chat{background:var(--panel);color:var(--text);border-radius:18px;padding:22px 22px 16px;box-shadow:0 30px 60px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:14px}
.chat-q{display:flex;justify-content:flex-end}
.chat-q span{background:var(--ink);color:#fff;border-radius:16px 16px 4px 16px;padding:10px 16px;font-weight:600}
.chat-a{border-radius:16px 16px 16px 4px;padding:14px 16px;font-size:.97rem;line-height:1.5}
.chat-a p{margin:0}.chat-a.before p{color:#6B2E24}
.chat-a .tag{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800;margin-bottom:6px}
.chat-a .tag i{width:9px;height:9px;border-radius:50%}
.chat-a.before{background:#FBEDEA;color:#6B2E24}.chat-a.before .tag{color:var(--coral)}.chat-a.before .tag i{background:var(--coral)}
.chat-a.after{background:#E6F5EE;color:var(--text)}.chat-a.after .tag{color:var(--green)}.chat-a.after .tag i{background:var(--green)}
.chat .srcs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chat .srcs span{font-size:.74rem;font-weight:700;border:1px solid #BFE0D1;background:#fff;border-radius:999px;padding:2px 9px;color:#1E7A5A}
.chat-foot{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px}
/* ---------- audience strip */
.audience{background:var(--panel);border-bottom:1px solid var(--line)}
.audience .wrap{display:flex;align-items:center;gap:18px;flex-wrap:nowrap;padding-top:14px;padding-bottom:14px;overflow:hidden}
.audience .lbl{font-size:.85rem;font-weight:800;color:var(--muted)}
.audience ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;gap:8px 16px;white-space:nowrap}
.audience li{font-weight:600;color:var(--text);font-size:.92rem}
.audience li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--honey);margin-right:8px;vertical-align:middle;position:relative;top:-1px}
/* ---------- compare table (fomo) */
.compare{background:var(--panel);color:var(--text);border-radius:16px;overflow:hidden;font-size:.95rem}
.compare .row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;padding:12px 18px;border-top:1px solid var(--line);align-items:center}
.compare .row.head{border-top:0;background:var(--page);font-weight:800;font-size:.8rem;color:var(--muted)}
.compare .row>span:first-child{font-weight:600}
.compare .ok{color:#1E7A5A}.compare .bad{color:#A63A26}
.compare .ok::before{content:"\2713";margin-right:6px;font-weight:800}.compare .bad::before{content:"\2715";margin-right:6px;font-weight:800}
/* ---------- series links */
.series a{color:var(--teal-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:500}
.series a:hover{color:var(--ink)}
.series-more{margin:10px 0 0;font-size:.85rem;font-weight:700}
.brand .word{font-size:1.65rem}
@media (max-width:980px){.graph-top,.graph-cols{grid-template-columns:1fr}.graph figure{justify-self:start}.audience .wrap,.audience ul{flex-wrap:wrap;white-space:normal}.compare .row{grid-template-columns:1fr}.compare .row.head{display:none}.compare .row>span:first-child{color:var(--muted);font-size:.85rem}}

/* ---------- mobile first refinements */
@media (max-width:760px){
  .nav .wrap{min-height:60px}
  .brand .word{font-size:1.4rem}
  .hero{padding:40px 0 36px}
  .hero h1{font-size:clamp(2.2rem,11vw,3rem)}
  .hero .lede{font-size:1.08rem}
  .chat{padding:16px 16px 12px}
  .chat-a{font-size:.93rem}
  .sec,.fomo{padding:48px 0}
  .sec-head{margin-bottom:28px}
  .benefit{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:22px 20px}
  .benefit .ico{width:44px;height:44px}
  .bigprice{font-size:3rem}
  .plan{padding:22px 20px}
  .foot .pitch{padding:48px 0 36px}
  .band{padding:36px 0 30px}
  .band h1{font-size:clamp(1.9rem,8vw,2.4rem)}
  .band .lede{font-size:1.05rem}
  .post-grid{padding:28px 18px 24px;gap:28px}
  .article p,.article li{font-size:1rem}
  figure.diagram{padding:10px 10px 6px;margin:1.3em -6px}
  .steps li{padding:14px 0 14px 46px}
  .steps li::before{width:30px;height:30px;font-size:.9rem;top:14px}
  .takeaway{padding:18px 18px}
  .card.big .card-body{padding:22px 20px}
  .related{padding:10px 18px 48px}
  .compare .row{padding:10px 14px}
  .after-live{font-size:1rem}
}
@media (max-width:420px){
  .btn-row .btn{width:100%;justify-content:center}
}

/* ---------- hero: what the machine knows */
.knows{background:var(--panel);color:var(--text);border-radius:18px;box-shadow:0 30px 60px rgba(0,0,0,.35);overflow:hidden}
.knows-head{padding:16px 22px;border-bottom:1px solid var(--line);font-weight:800;font-size:.95rem}
.knows-group{padding:16px 22px 14px}
.knows-group+.knows-group{border-top:1px solid var(--line)}
.knows-group .tag{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:800;margin-bottom:10px}
.knows-group .tag i{width:9px;height:9px;border-radius:50%}
.knows-group.yes{background:#F1FAF5}.knows-group.yes .tag{color:#1E7A5A}.knows-group.yes .tag i{background:var(--green)}
.knows-group.no{background:#FDF3F1}.knows-group.no .tag{color:var(--coral)}.knows-group.no .tag i{background:var(--coral)}
.knows ul{list-style:none;margin:0;padding:0}
.knows li{position:relative;padding:5px 0 5px 26px;font-size:.95rem;line-height:1.4}
.knows li::before{position:absolute;left:0;top:5px;font-weight:800}
.knows-group.yes li::before{content:"\2713";color:#1E7A5A}
.knows-group.no li::before{content:"\2715";color:#A63A26}
.knows-group.no li{color:#6B2E24}
.fomo .chat{box-shadow:0 30px 60px rgba(0,0,0,.25)}
.fomo .chat .srcs span{border-color:#BFE0D1}

/* ---------- where it can lead */
.leads-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.lead{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 26px 22px;display:flex;flex-direction:column}
.lead h3{font-size:1.2rem;margin-bottom:.5em}
.lead p{color:var(--muted);font-size:.98rem;margin:0 0 .8em}
.sec.leads{background:#FFF7E8;border-top:1px solid #F3DCAE;border-bottom:1px solid #F3DCAE}
.mark-badge{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 20px;border-radius:12px;font-weight:800;font-size:1.25rem;letter-spacing:-.01em;margin-bottom:18px;width:fit-content}
.mark-badge.google{background:#F6F8F7;color:#1A1A1A;font-family:Figtree,Arial,sans-serif;border:1px solid var(--line)}
.mark-badge.google span{color:#1A73E8;margin-right:1px}
.mark-badge.wikidata{background:#F6F8F7;color:#1A1A1A;font-family:Figtree,Arial,sans-serif;border:1px solid var(--line);border-left:6px solid #006699}
.mark-badge.wikipedia{background:#F6F8F7;color:#1A1A1A;font-family:Newsreader,Georgia,serif;font-weight:600;font-size:1.45rem;border:1px solid var(--line)}
@media (max-width:980px){.leads-grid{grid-template-columns:1fr}}

/* ---------- built and hosted */
.sec.built{background:var(--ink);color:#fff}
.sec.built h2{color:#fff}
.sec.built .sec-head p{color:#C8D8D6}
.built-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.built-list{list-style:none;margin:0;padding:0}
.built-list li{padding:14px 0 14px 30px;border-top:1px solid rgba(255,255,255,.14);color:#C8D8D6;position:relative;font-size:1rem}
.built-list li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.built-list li::before{content:"";position:absolute;left:0;top:21px;width:12px;height:12px;border-radius:50%;background:var(--honey)}
.built-list strong{color:#fff;display:block;margin-bottom:2px}
.sec.built .btn-teal{background:var(--honey);border-color:var(--honey);color:var(--ink)}
.sec.built .btn-teal:hover{background:#F7B955;border-color:#F7B955}
@media (max-width:980px){.built-grid{grid-template-columns:1fr;gap:28px}}

.built-list a{color:var(--honey)}

.stars{color:var(--honey);font-size:.95rem;letter-spacing:1px;line-height:1;margin:4px 0 6px}
.stars span{display:inline-block}
@media (max-width:1180px){.records{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:980px){.records{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.records{grid-template-columns:1fr}}

.rec>a{display:block}
.rec .name{display:block;font-weight:700;font-size:1rem;color:var(--text);text-decoration:none}
.rec .name:hover{color:var(--teal-deep);text-decoration:underline}
.rec .title{display:block;color:var(--muted);font-size:.88rem;margin-top:2px}
.rec .stars{font-size:1.25rem;letter-spacing:2px;margin:8px 0 0;padding:0;text-align:left}

.rec.soon .name{color:var(--muted)}
.rec.soon .shot-img{opacity:.85}

/* ---------- pricing v3 */
.plan .tag{font-weight:600;color:var(--text);margin:0 0 .9em;font-size:.98rem}
.plan.hot .tag{color:#fff}
.plan .pp .pre{margin:0 .4em 0 0;font-size:1rem}
.course{margin:28px 0 0;background:#FFF7E8;border:1px solid #F3DCAE;border-radius:16px;padding:24px 28px}
.course .badge{display:inline-block;margin:0 0 8px}
.course h3{margin:0 0 .3em;font-size:1.25rem}
.course p{margin:0;color:var(--text);max-width:80ch}
.addons{margin:22px 0 0;color:var(--muted);font-size:1rem}
.addons strong{color:var(--text)}
.addons a{color:var(--teal-deep);font-weight:700}
.never{margin:8px 0 0;font-size:.92rem;color:var(--muted)}
.plan-compare{margin-top:28px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.plan-compare summary{cursor:pointer;font-weight:800;padding:16px 20px;list-style:none;display:flex;justify-content:space-between;align-items:center}
.plan-compare summary::-webkit-details-marker{display:none}
.plan-compare summary::after{content:"+";color:var(--honey-deep);font-size:1.4rem;line-height:1}
.plan-compare[open] summary::after{content:"\2212"}
.table-wrap{overflow-x:auto;padding:0 8px 8px}
.plan-compare table{border-collapse:collapse;width:100%;min-width:780px;font-size:.92rem}
.plan-compare th,.plan-compare td{border-top:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.plan-compare thead th{border-top:0;font-weight:800;background:var(--page)}
.plan-compare thead th span{display:block;font-weight:500;color:var(--muted);font-size:.82rem}
.plan-compare tbody th{font-weight:600;width:24%}
.plan-compare td.yes::before{content:"\2713";color:#1E7A5A;font-weight:800}
.plan-compare td.no::before{content:"";display:inline-block;width:12px;height:2px;background:#C3D0CE;vertical-align:middle}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:640px){.bigprice small{display:block;margin:.25em 0 0}}

/* ---------- profile cards: review style */
.rec .who-row{display:flex;gap:12px;align-items:flex-start}
.rec .who-text{min-width:0}
.rec .avatar-link{display:block;flex:none}
.rec .avatar{display:block;width:48px;height:48px;border:0;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--line);flex:none}
.rec .avatar.ph{background:#D7E2E0}
.rec .name{overflow-wrap:anywhere}
.table-key{margin:0;padding:0 20px 12px;font-size:.88rem;color:var(--muted);display:flex;gap:20px;align-items:center}
.table-key .k-yes::before{content:"\2713";color:#1E7A5A;font-weight:800;margin-right:6px}
.table-key .k-no::before{content:"";display:inline-block;width:12px;height:2px;background:#C3D0CE;vertical-align:middle;margin-right:8px}

/* ---------- profile carousel: slow, seamless, pauses on hover */
.carousel{overflow:hidden;margin-top:8px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)}
.carousel-track{display:flex;gap:24px;width:max-content;padding:6px 0 10px;animation:carousel-scroll 90s linear infinite;will-change:transform}
.carousel-track:hover,.carousel-track:focus-within{animation-play-state:paused}
@keyframes carousel-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 12px))}}
.carousel .rec{flex:0 0 320px;width:320px}
.carousel .rec .rec-body{padding:18px 20px 20px}
.carousel .rec .avatar{width:56px;height:56px}
.carousel .rec .name{font-size:1.1rem}
.carousel .rec .title{font-size:.95rem}
.carousel .rec .stars{font-size:1.5rem;margin-top:8px}
@media (max-width:640px){.carousel .rec{flex-basis:76vw;width:76vw}}
@media (prefers-reduced-motion:reduce){
  .carousel{overflow-x:auto;-webkit-mask-image:none;mask-image:none}
  .carousel-track{animation:none}
  .carousel-track .rec[aria-hidden="true"]{display:none}
}

.carousel-track{margin-left:max(24px,calc((100vw - 1140px)/2 + 24px))}

/* ---------- learn.memyself.fyi */
.brand .sub{font-family:Figtree,sans-serif;font-weight:700;font-size:.95rem;color:var(--muted);margin-left:10px;padding-left:10px;border-left:2px solid var(--line);align-self:center}
.foot .brand .sub{color:#C8D8D6;border-color:rgba(255,255,255,.25)}
.course-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:var(--panel);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.course-card .cc-body{padding:40px 40px 34px}
.course-card h2{margin-bottom:.3em}
.course-card .cc-body>p{color:var(--muted);font-size:1.1rem;max-width:52ch}
.course-card .facts{display:flex;flex-wrap:wrap;gap:10px 22px;margin:4px 0 24px;padding:0;list-style:none;font-weight:700;font-size:.95rem}
.course-card .facts li{display:flex;align-items:center;gap:8px}
.course-card .facts li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--honey)}
.course-card .cc-side{background:var(--ink);color:#fff;padding:34px 32px}
.course-card .cc-side h3{color:#fff;font-size:1rem;margin-bottom:12px}
.modlist{list-style:none;margin:0;padding:0;counter-reset:m}
.modlist li{counter-increment:m;position:relative;padding:9px 0 9px 40px;border-top:1px solid rgba(255,255,255,.14);font-size:.95rem;color:#D5E3E1}
.modlist li:first-child{border-top:0}
.modlist li::before{content:counter(m);position:absolute;left:0;top:8px;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--honey);color:var(--honey);font-weight:800;font-size:.8rem;display:grid;place-items:center}
.modlist.zero li::before{content:counter(m)}
.modlist a{color:#fff;text-decoration:none}.modlist a:hover{text-decoration:underline}
.foundation{background:#FFF7E8;border:1px solid #F3DCAE;border-radius:16px;padding:24px 26px}
.foundation h3{margin-bottom:.35em}
.foundation p{margin:0 0 .7em;font-size:1rem}
.foundation p:last-child{margin-bottom:0}
.foundation .btn-row{margin-top:12px}
.syllabus{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);counter-reset:s -1}
.syllabus li{counter-increment:s;display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line)}
.syllabus li::before{content:counter(s);width:40px;height:40px;border-radius:50%;background:var(--honey);color:var(--ink);font-weight:800;display:grid;place-items:center}
.syllabus h3{margin:0 0 .25em;font-size:1.15rem}
.syllabus h3 a{text-decoration:none;color:var(--text)}.syllabus h3 a:hover{color:var(--teal-deep)}
.syllabus p{margin:0;color:var(--muted);font-size:.98rem}
.syllabus .mins{font-size:.85rem;color:var(--muted);font-weight:600;white-space:nowrap;padding-top:4px}
.syllabus .soon{color:var(--honey-deep)}
.todo{margin:2em 0;padding:24px 26px 18px;background:var(--panel);border:2px solid var(--ink);border-radius:16px}
.todo h2{font-size:1.5rem!important;margin:0 0 .4em!important}
.todo ul{list-style:none;padding:0!important;margin:0}
.todo li{position:relative;padding:10px 0 10px 36px;border-top:1px solid var(--line);margin:0!important}
.todo li:first-child{border-top:0}
.todo li::before{content:"";position:absolute;left:0;top:13px;width:20px;height:20px;border:2px solid var(--teal-deep);border-radius:5px}
.modnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:40px 0 0}
.modnav a{display:block;border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:16px 18px;text-decoration:none;color:var(--text)}
.modnav a:hover{border-color:var(--teal-deep)}
.modnav span{display:block;font-size:.82rem;font-weight:700;color:var(--muted);margin-bottom:4px}
.modnav b{font-weight:700}
.modnav .next{text-align:right;grid-column:2}
.progress li.on a{color:var(--ink);font-weight:800}
.progress li a{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px}
.progress li a i{font-style:normal;font-weight:800;color:var(--honey-deep)}
.article .faq{margin-top:.6em}
.article .faq details p{font-size:1rem}
@media (max-width:980px){.course-card{grid-template-columns:1fr}}
@media (max-width:640px){.course-card .cc-body{padding:28px 24px}.course-card .cc-side{padding:26px 24px}.syllabus li{grid-template-columns:48px minmax(0,1fr)}.syllabus .mins{grid-column:2;padding-top:0}.modnav{grid-template-columns:1fr}.modnav .next{grid-column:1}.brand .sub{font-size:.85rem;margin-left:8px;padding-left:8px}}
.course-card .cc-body>p.kicker{color:var(--honey-deep);font-size:.85rem;margin-bottom:10px}
/* scorecard */
.scorecard{margin:2em 0;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:24px 26px}
.sc-intro{color:var(--muted);font-size:1rem!important}
.sc-group{border:0;margin:0 0 18px;padding:0}
.sc-group legend{font-family:Newsreader,Georgia,serif;font-size:1.35rem;padding:0;margin:8px 0 6px}
.sc-q{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.sc-q p{margin:0;font-size:1rem!important;line-height:1.5}
.sc-opts{display:flex;gap:8px}
.sc-opts label{display:inline-flex;align-items:center;cursor:pointer;border:1.5px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:700;font-size:.92rem;user-select:none}
.sc-opts input{position:absolute;opacity:0;width:1px;height:1px}
.sc-opts label:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.sc-opts label:has(input:focus-visible){outline:3px solid var(--honey);outline-offset:2px}
.sc-results{margin-top:10px;padding-top:18px;border-top:2px solid var(--ink)}
.sc-results h3{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:1.6rem;margin:0 0 .2em}
.sc-left{color:var(--muted);font-size:.95rem!important}
.sc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px}
.sc-card{border-radius:14px;padding:16px 16px 10px;border:1px solid var(--line);border-top:6px solid var(--line);background:var(--page)}
.sc-card.no{border-top-color:var(--coral)}.sc-card.mid{border-top-color:var(--honey)}.sc-card.ok{border-top-color:var(--green)}
.sc-label{display:block;font-size:.82rem;font-weight:800;color:var(--muted)}
.sc-verdict{display:block;font-family:Newsreader,Georgia,serif;font-weight:500;font-size:1.5rem;margin:2px 0 6px;line-height:1.1}
.sc-why{font-size:.92rem!important;color:var(--text);margin:0 0 8px!important}
.sc-next{padding-left:1.1em!important;margin:0}
.sc-next li{font-size:.9rem!important;margin-bottom:.4em!important}
@media (max-width:980px){.sc-cards{grid-template-columns:1fr}}
@media (max-width:640px){.scorecard{padding:18px 16px}.sc-q{grid-template-columns:1fr;gap:8px}}
/* learn sales page */
.sec-alt{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-lede{font-size:1.15rem;color:var(--muted);max-width:64ch;margin-bottom:28px}
.sales-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.sales-grid .article{max-width:68ch}
.syllabus .mins.open{color:var(--green);font-weight:800}
.outcomes{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px}
.outcomes li{position:relative;padding-left:30px;font-size:1.05rem;line-height:1.55}
.outcomes li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border-radius:50%;background:var(--honey)}
.outcomes b{display:block;margin-bottom:2px}
.sc-demo{display:grid;gap:12px}
.sc-demo .sc-card{background:var(--page)}
.access{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.acc-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:28px 28px 24px}
.acc-card p{color:var(--muted)}
.acc-card.dark{background:var(--ink);border-color:var(--ink);color:#fff}
.acc-card.dark h3{color:#fff}.acc-card.dark p{color:#C8D8D6}
.cta-panel.sample{background:#FFF7E8;border-color:#F3DCAE}
.cta-panel.sample .btn{margin-top:8px}
@media (max-width:980px){.sales-grid{grid-template-columns:1fr;gap:28px}.outcomes{grid-template-columns:1fr}.access{grid-template-columns:1fr}}
.cta-panel.sample h3{color:var(--ink)}.cta-panel.sample p{color:var(--text)}
.cta-panel.sample .btn-line{color:var(--teal-deep);border-color:var(--teal-deep);background:transparent}
.cta-panel.sample .btn-line:hover{background:#E6F0EF}

/* ---------- nav: login link and mobile menu */
.links .login{color:var(--teal-deep)}
.menu-btn{display:none;align-items:center;gap:8px;background:transparent;border:2px solid var(--line);border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;color:var(--text);cursor:pointer}
.menu-btn .bars,.menu-btn .bars::before,.menu-btn .bars::after{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .2s}
.menu-btn .bars::before,.menu-btn .bars::after{content:"";position:absolute;left:0}
.menu-btn .bars::before{top:-6px}.menu-btn .bars::after{top:6px}
.nav.open .menu-btn .bars{background:transparent}
.nav.open .menu-btn .bars::before{transform:translateY(6px) rotate(45deg)}
.nav.open .menu-btn .bars::after{transform:translateY(-6px) rotate(-45deg)}
.menu-btn:focus-visible{outline:3px solid var(--honey);outline-offset:2px}
@media (max-width:900px){
  .menu-btn{display:inline-flex}
  .nav .links{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:6px 0 14px;border-top:1px solid var(--line);margin-top:4px}
  .nav.open .links{display:flex}
  .nav .links a{padding:13px 4px;font-size:1.05rem}
  .nav .links a:not(.btn){border-bottom:1px solid var(--line)}
  .nav .links .btn{margin-top:12px;justify-content:center;text-align:center;padding:.85rem 1rem}
  .nav .links .btn + .btn{margin-top:10px}
  .nav .links .btn:last-child{margin-bottom:6px}
  .nav.open{box-shadow:0 0 0 100vmax rgba(11,42,46,.55)}
}

/* ---------- pricing: step headings, Authority price, Own it */
.step-h{font-size:2rem;font-size:clamp(1.8rem,3.4vw,2.4rem);margin:0 0 .35em}
.then p{font-size:1.1rem}
.kicker-dark{color:#9A6208;font-size:1.05rem;font-weight:800}
.plan .pp .apply{color:inherit;text-decoration:none}
.plan .pp .apply:hover{color:var(--teal-deep)}
.promise a{color:var(--teal-deep);font-weight:600}
.hero .small a{color:#C8D8D6;text-decoration:underline}

/* ---------- legal pages */
.legal-meta{margin:14px 0 0;color:#9DB7B4;font-size:.9rem}
.legal-wrap{padding:36px 24px 72px;max-width:900px}
.legal-toc{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 22px 14px;margin-bottom:32px}
.legal-toc .kicker{color:var(--ink);margin-bottom:8px}
.legal-toc ul{list-style:none;margin:0;padding:0;columns:2;column-gap:32px}
.legal-toc li{break-inside:avoid;padding:4px 0;font-size:.95rem}
.legal-toc a{text-decoration:none;color:var(--teal-deep)}
.legal-toc a:hover{text-decoration:underline}
.article.legal{max-width:none}
.article.legal>p:first-of-type{font-size:1.06rem}
.article.legal h2{font-size:1.45rem;margin:2.1em 0 .5em;scroll-margin-top:90px}
.article.legal p,.article.legal li{font-size:1rem;line-height:1.65}
.article.legal table{display:table;font-size:.92rem}
.article.legal td,.article.legal th{vertical-align:top}
.foot .legal-links{display:flex;gap:18px}
.foot .legal-links a{color:#C8D8D6;text-decoration:none}
.foot .legal-links a:hover{color:#fff;text-decoration:underline}
@media (max-width:640px){.legal-toc ul{columns:1}.legal-wrap{padding:24px 18px 56px}.article.legal table{display:block;overflow-x:auto}}

/* Homepage copy update, Oct 25, 2026. build.py appends this file to site.css at build time. */

/* case study card */
.case-h{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.1;margin:0 0 2px;color:var(--ink)}
.chat-a ul{margin:0;padding-left:1.15em}
.chat-a li{margin:0 0 .4em;line-height:1.45}
.chat-a li:last-child{margin-bottom:0}
.chat .srcs{align-items:center}
.chat .srcs .srcs-label{border:0;background:none;padding:0 2px 0 0;color:var(--muted);font-weight:800}
/* Oct 28, 2026: third block (Result) and an unstyled link inside the card */
.chat-a.result{background:#FFF7E8;color:var(--text)}.chat-a.result .tag{color:#9A6208}.chat-a.result .tag i{background:var(--honey)}
.chat-a a.plain{color:inherit;text-decoration:none}.chat-a a.plain:hover{text-decoration:underline}

/* blog post link under the hidden layer section. Oct 29, 2026: button replaced by a centred plain link (.read-more); .read-cta kept for other pages. */
.read-cta{margin-top:6px}
.read-label{margin:0 0 8px;font-size:.92rem;font-weight:700;color:var(--muted)}
.btn svg{width:18px;height:18px;flex:none}
.read-more{text-align:center;margin:36px 0 0;font-size:1.05rem}
.read-more a{color:var(--teal-deep);font-weight:600}

/* foundation section with the panel screenshot beside it */
.leads-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center;margin-bottom:40px}
.leads-top .sec-head{margin-bottom:0;max-width:none}
.panel-shot{margin:0;background:var(--panel);border:1px solid #F3DCAE;border-radius:16px;overflow:hidden;box-shadow:0 18px 40px rgba(11,42,46,.14)}
.panel-shot img{width:100%;height:auto}
.panel-shot figcaption{padding:10px 14px 12px;font-size:.85rem;color:var(--muted);border-top:1px solid var(--line)}

/* after the timeline */
.after-live{max-width:72ch;font-weight:500;font-size:1.1rem;line-height:1.6}
.after-live a{font-weight:700;white-space:nowrap}
.then{scroll-margin-top:90px}

/* plans */
.plan .badge{margin:0 0 10px;align-self:flex-start}
.plan .pp.pp-text{font-size:1.7rem;line-height:1.15}
.plan-sub{font-family:Figtree,sans-serif;font-size:.8rem;font-weight:800;letter-spacing:.02em;margin:1em 0 .35em;color:var(--teal-deep)}
.plan.hot .plan-sub{color:var(--honey)}
.plan .plan-sub+ul{margin-bottom:.4em}
.plan .who{margin-bottom:0}
.plan-cta{margin:14px 0 4px}

@media (max-width:980px){.leads-top{grid-template-columns:1fr;gap:28px}.panel-shot{max-width:420px}}

/* hero image, replaces the what-Google-and-AI-know list, Oct 25, 2026 */
.hero-art{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35);aspect-ratio:4/5;background:var(--ink-2);min-width:0;position:relative;z-index:1}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:72% 38%}
@media (max-width:980px){.hero .wrap{gap:36px}.hero-art{aspect-ratio:1/1;max-width:560px;width:100%}}
@media (max-width:640px){.hero-art{border-radius:14px}}

/* Oct 25, 2026 homepage tweaks */
.nav .brand .tld{color:var(--honey)}
.win-strip{list-style:none;margin:40px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 44px}
.win-strip li{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:1.08rem;color:var(--text)}
.win-strip li::after{content:"";flex:none;width:22px;height:22px;border-radius:50%;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='%232FA37A'/><path d='M7 12.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.built-art{margin:0 0 68px;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35);aspect-ratio:3/1;background:var(--ink-2)}
.built-art img{width:100%;height:100%;object-fit:cover;object-position:60% 40%}
@media (max-width:980px){.built-art{margin-bottom:48px}}
@media (max-width:760px){.built-art{aspect-ratio:16/10;border-radius:14px;margin-bottom:36px}.win-strip{flex-direction:column;align-items:flex-start;gap:12px;margin-top:28px}}
.lead .lead-label{margin:0 0 10px;font-size:.9rem;font-weight:800;letter-spacing:.02em;color:#9A6208}

/* Oct 28, 2026: stamp over a profile card screenshot (used for Josh Thurmond, "Seen on Shark Tank"). Text only, no show logo. */
.rec .shot{position:relative}
.rec .stamp{position:absolute;top:14px;right:14px;transform:rotate(-7deg);background:var(--ink);color:var(--honey);border:2px solid var(--honey);box-shadow:0 0 0 3px var(--ink),0 10px 24px rgba(11,42,46,.35);border-radius:6px;padding:7px 12px 8px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.1;text-align:center;pointer-events:none}
.rec .stamp b{display:block;font-size:1.1rem;letter-spacing:.04em;margin-top:2px;color:#fff}

/* Oct 28, 2026: example profiles as a static row (three cards, same 320px size as the old carousel, no animation).
   The carousel CSS stays in site.css for when there are enough profiles to bring it back. */
.profiles{display:flex;flex-wrap:wrap;gap:24px;margin-top:8px}
.profiles .rec{flex:0 0 320px;width:320px}
.profiles .rec .rec-body{padding:18px 20px 20px}
.profiles .rec .avatar{width:56px;height:56px}
.profiles .rec .name{font-size:1.1rem}
.profiles .rec .title{font-size:.95rem}
@media (max-width:640px){.profiles .rec{flex-basis:100%;width:100%;max-width:360px}}

/* Oct 28, 2026: two plan cards (Evolve and Authority), the Own it card is gone. Landing pages use it for Foundation and Evolve. */
.plans.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:980px){.plans.two{grid-template-columns:1fr}}

/* Oct 29, 2026: honey .fyi inside section headings (reuses the nav .tld idea). The solution section (.sec.deliver) that
   sat between the secret graph and the competition section was folded into the shared process block on Nov 1, 2026;
   its ink closing line (.deliver-line) lives on inside that block. */
.deliver-line{margin-top:48px;background:var(--ink);color:#fff;border-radius:16px;padding:38px 28px;text-align:center}
.deliver-line p{margin:0 auto;max-width:36ch;font-family:Newsreader,Georgia,serif;font-weight:500;font-size:clamp(1.4rem,2.8vw,2rem);line-height:1.45}
.deliver-line strong{color:var(--honey);font-weight:600}
@media (max-width:640px){.deliver-line{padding:28px 20px;border-radius:14px}}
.sec-head h2 .tld{color:var(--honey)}

/* Oct 29, 2026: the knowledge panel mockup is a transparent PNG with its own rounded outline, so the card frame (tint, border,
   clipping) is removed and a soft shadow follows the outline of the image itself. */
.panel-shot{background:none;border:0;border-radius:0;overflow:visible;box-shadow:none}
.panel-shot img{filter:drop-shadow(0 16px 28px rgba(11,42,46,.18))}

/* Oct 31, 2026: Foundation checklist rebuilt. The interview moved out of the list into the intro line above it (it already
   has its own step in the Day 1/10/30 timeline), and the Wikidata and Wikipedia items merged into one honest readiness
   item, since listing them twice read as padding rather than two different things. Two newspaper-style columns (not a
   CSS grid, so it flows top of column one to bottom, then top of column two, like the old two-column price list), each
   item a checkmark plus a bold title and a one-line description. Revised same day: first pass used an auto-fit grid,
   which needs more horizontal room than the price card gives it to read as two columns, and came out as one cramped
   column with default bullets on a narrow viewport. Nov 1, 2026: the check mark is drawn as a background image
   (green disc, white tick) rather than a CSS mask, because the masked version rendered as a plain green disc. */
.price-hero{align-items:start}
.price-intro{min-width:0}
.incl-lede{color:var(--muted);font-size:1.08rem;margin:0}
.incl-rich{list-style:none;margin:32px 0 0;padding:0;column-count:2;column-gap:44px}
.incl-rich li{break-inside:avoid;position:relative;padding:0 0 22px 34px;margin:0}
.incl-rich li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='%232FA37A'/><path d='M7 12.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.incl-rich li b{display:block;font-size:1rem;color:var(--text);margin-bottom:2px}
.incl-rich li span{display:block;color:var(--muted);font-size:.92rem;line-height:1.4}
.price-cta{margin:36px 0 40px}
@media (max-width:760px){.incl-rich{column-count:1}}

/* Nov 1, 2026: the shared process block (build.py process_block). Under the Day 1/4/7 timeline sits a white card,
   "What you walk away with", holding the nine deliverable groups as a three by three checklist (same check mark as the
   Foundation card's list), then the "Then, ongoing" note (the .promise tint, no label or button) and the ink closing
   line carried over from the retired solution section. */
.walk{margin-top:56px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:36px 40px 30px}
.walk-head{margin-bottom:26px}
.walk-head h3{font-family:Newsreader,Georgia,serif;font-weight:500;font-size:clamp(1.5rem,2.6vw,1.95rem);line-height:1.15;margin:0 0 6px;color:var(--ink)}
.walk-head p{margin:0;color:var(--muted);font-size:1.02rem}
.walk-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 32px}
.walk-grid li{position:relative;padding:0 0 0 36px;margin:0}
.walk-grid li::before{content:"";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='%232FA37A'/><path d='M7 12.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.walk-grid li b{display:block;font-size:1.05rem;color:var(--text);margin-bottom:3px}
.walk-grid li span{display:block;color:var(--muted);font-size:.95rem;line-height:1.45}
.promise.ongoing{margin-top:32px}
.sec.how .deliver-line{margin-top:32px}
@media (max-width:980px){.walk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.walk{padding:26px 22px 22px;border-radius:14px}.walk-grid{grid-template-columns:1fr;gap:18px}}

/* Nov 1, 2026: the Foundation card's included list is collapsed by default behind a native <details> toggle, since the
   shared process block above it already lists the same deliverables in grouped form. The summary is styled as a text
   button; the full list is the same .incl-rich markup as before, so nothing about the items changed. */
.incl-fold{margin:28px 0 0}
.incl-fold>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--teal-deep);font-size:1.02rem;padding:6px 0;min-height:44px}
.incl-fold>summary::-webkit-details-marker{display:none}
.incl-fold>summary::after{content:"";width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.incl-fold[open]>summary::after{transform:rotate(-135deg) translateY(-2px)}
.incl-fold>summary .when-open{display:none}
.incl-fold[open]>summary .when-open{display:inline}
.incl-fold[open]>summary .when-closed{display:none}
.incl-fold .incl-rich{margin-top:18px}

/* Podcasters and podcast guest landing pages (Oct 27, 2026). Appended to the design system by build.py. */
.xlink{margin-top:20px;font-size:15px}
.hero .xlink a{color:#F0A93A;text-decoration:underline;text-underline-offset:3px}
.hero .xlink a:hover{color:#FFFFFF}

/* Footer: four equal columns, one point smaller type (Oct 27, 2026). Appended to the design system by build.py. */
.foot .cols{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.foot .cols>div{min-width:0}
.foot .cols h3{font-size:.89rem;line-height:1.25;overflow-wrap:break-word}
.foot .cols li{font-size:.89rem;line-height:1.35;overflow-wrap:break-word}
@media (max-width:980px){.foot .cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.foot .cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media (max-width:420px){.foot .cols{grid-template-columns:1fr}}

/* Nov 1, 2026: section backgrounds are set by position, after the order is agreed, never the other way round. The light
   tint (.sec-tint) and the honey tint (.sec-honey) carry more contrast than the old page grey so neighbouring sections
   read as separate rooms. The competition and case study band now sits between pricing (white) and the Cloudflare
   section (ink), so it moves from ink-2 to deep teal to keep two dark bands from merging. */
.sec-tint{background:#E3EEEC;border-top:1px solid #D2E1DE;border-bottom:1px solid #D2E1DE}
.sec-honey{background:#FFF7E8;border-top:1px solid #F3DCAE;border-bottom:1px solid #F3DCAE}
.fomo{background:var(--teal-deep)}
.fomo .sec-head p{color:#D6ECEA}
.fomo .chat{box-shadow:0 30px 60px rgba(0,40,44,.35)}

/* Nov 1, 2026: benefits cards redone so the outcome is what you see first. Icons gave way to a numbered honey tile and a
   small category label (a scan path across the four), outcome titles set large with the payoff half in teal, bodies
   cut to about 30 words each so the cards match. Reuses the .benefits grid; the old .benefit icon cards stay in
   site.css for any page still using them. */
.outcome{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px 32px 28px;display:flex;flex-direction:column;gap:12px}
.outcome-top{display:flex;align-items:center;gap:12px}
.outcome .num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--honey);color:var(--ink);font-weight:800;font-size:.9rem}
.outcome .olabel{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#9A6208}
.outcome h3{margin:0;font-size:clamp(1.45rem,2.3vw,1.8rem);line-height:1.15;font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.outcome h3 em{font-style:normal;color:var(--teal-deep)}
.outcome p{margin:0;color:var(--muted);font-size:1.02rem;line-height:1.55}
@media (max-width:640px){.outcome{padding:24px 20px 22px}}

/* Nov 1, 2026: the collapsed Foundation list inside a persona page's plan card runs as one column; the card is too narrow for two. */
.plan .incl-fold{margin-top:12px}
.plan .incl-fold>summary{font-size:.95rem;min-height:40px}
.plan .incl-fold .incl-rich{column-count:1;margin-top:10px}
.plan .incl-fold .incl-rich li{padding-bottom:14px}
.plan .plan-brief{margin:0 0 4px;color:var(--muted);font-size:.95rem;line-height:1.5}

/* Podcasters and podcast guest landing pages (Oct 27, 2026). Appended to the design system by build.py. */
.xlink{margin-top:20px;font-size:15px}
.hero .xlink a{color:#F0A93A;text-decoration:underline;text-underline-offset:3px}
.hero .xlink a:hover{color:#FFFFFF}
/* Oct 31, 2026: .promise a (one class, one element) outranks .btn-teal (one class), so a button inside a
   promise panel came out teal on teal with no visible label. Restore each button's own colour. */
.promise .btn-teal{color:#fff}
.promise .btn-teal:hover{color:#fff}
.promise .btn-honey{color:var(--ink)}
.promise .btn-line{color:var(--teal-deep)}
/* Oct 31, 2026: four item variants for /for-agencies/. The base .deliver-grid auto fits three across and the base
   .timeline is three columns, so a fourth item dropped onto a row of its own. Both go two by two instead, and the
   timeline's connecting line is dropped because it only reads correctly across a single row. */
.deliver-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px}
.timeline.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px}
.timeline.four::before{display:none}
@media (max-width:760px){.deliver-grid.two,.timeline.four{grid-template-columns:1fr}}
/* Oct 31, 2026, the proof strip on /real-estate-agents/, found with Playwright at 390px. `.proof div` matches every
   div inside the section, which is two elements too many: the .num inside each block was picking up the block's own
   padding (54px of dead space around every figure), and the strip's own .wrap was picking up the same rule, which
   cancelled the side padding that insets every other section and left the text and the dividers flush to the screen
   edge on a phone. The .wrap override needs a type selector in it to outrank `.proof div:first-child`. */
.proof .num{padding:0;border:0}
section.proof > div.wrap{padding:0 24px;border:0}
@media (max-width:640px){section.proof > div.wrap{padding:0 18px}}

/* Footer: four equal columns, one point smaller type (Oct 27, 2026). Appended to the design system by build.py. */
.foot .cols{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.foot .cols>div{min-width:0}
.foot .cols h3{font-size:.89rem;line-height:1.25;overflow-wrap:break-word}
.foot .cols li{font-size:.89rem;line-height:1.35;overflow-wrap:break-word}
@media (max-width:980px){.foot .cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.foot .cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media (max-width:420px){.foot .cols{grid-template-columns:1fr}}
