.seo-page{--cal:#1b4332;--art-shadow:rgba(27,67,50,.08)}
.seo-page h2{max-width:760px}
.seo-hero{padding:72px 0 80px;background:var(--surface-tint);border-bottom:1px solid var(--line)}
.seo-hero h1{font-size:clamp(3.6rem,10.5vw,9rem);line-height:.9;letter-spacing:-.05em;margin-top:22px;max-width:1000px}
.seo-hero h1 em{display:block;font-style:italic;color:var(--forest)}
.seo-saying{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:56px;align-items:center;margin-top:48px}
.saying-quote{border-left:3px solid var(--accent-dark);padding:6px 0 6px 26px;font:500 clamp(1.7rem,3.4vw,2.7rem)/1.15 var(--display);color:var(--forest);letter-spacing:-.03em}
.saying-quote small{display:block;margin-top:14px;font:11px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.seo-hero .intro{max-width:620px;margin-top:30px;color:var(--muted);font-size:17px}
.seo-hero .hero-actions{margin-top:28px}
.art{margin:0;max-width:400px;width:100%}
.art a{display:block;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:10px 10px 0 var(--art-shadow);transition:transform .25s ease,box-shadow .25s ease}
.art a:hover{transform:translate(-2px,-2px);box-shadow:13px 13px 0 var(--art-shadow)}
.art img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:72px;align-items:start}
.split.flip{grid-template-columns:minmax(0,400px) minmax(0,1fr)}
.split.flip .art{order:-1}
.lede{margin-top:16px;color:var(--muted);max-width:600px}
.plain{list-style:none;margin:30px 0 0;padding:0;border-top:1px solid var(--line)}
.plain li{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);transition:padding-left .2s ease}
.plain li:hover{padding-left:8px}
.plain strong{font:500 20px/1.2 var(--display);color:var(--forest);letter-spacing:-.02em}
.plain span{color:var(--muted);font-size:14px}
.block-title{margin-top:72px}
.block-title:first-of-type{margin-top:0}
.local-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.local-wrap .button{margin-top:26px}
.dots{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
.dots li{padding:13px 0 13px 28px;border-bottom:1px solid var(--line);position:relative;color:var(--muted);font-size:14px}
.dots li:before{content:'';position:absolute;left:4px;top:21px;width:8px;height:8px;background:var(--accent);border-radius:50%}
.dots strong{color:var(--ink)}
.multi{margin-top:24px;padding:20px 22px;background:var(--forest);color:#e8efe8;font-size:14px}
.multi strong{display:block;font:500 21px var(--display);color:#f3d18c;margin-bottom:4px}
.road{list-style:none;margin:34px 0 0;padding:0;display:grid;gap:28px}
.road li{position:relative;padding-left:40px}
.road li:before{content:'';position:absolute;z-index:1;left:0;top:4px;width:18px;height:18px;box-sizing:border-box;background:var(--accent);border:4px solid var(--forest-soft);border-radius:50%;box-shadow:0 0 0 1px var(--line)}
.road li:not(:last-child):after{content:'';position:absolute;left:8px;top:22px;bottom:-32px;width:2px;background:var(--line);border-radius:2px}
.road b{font:500 11px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dark)}
.road h3{font:500 24px/1.2 var(--display);margin:3px 0 4px}
.road p{color:var(--muted);font-size:14px;max-width:560px}
.note{margin-top:28px;padding:16px 20px;border-left:3px solid var(--accent-dark);background:var(--surface);color:var(--muted);font-size:14px;max-width:640px}
#seo-roadmap .art{align-self:center}
#report-previews .split{align-items:center}
.report-prose{margin-top:24px;color:var(--muted);font-size:16px;line-height:1.8;max-width:640px}
.seo-page .needs-list{max-width:760px}
.rise{animation:seo-rise .7s ease-out both}
.rise.d2{animation-delay:.15s}
@keyframes seo-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:900px){.split,.split.flip,.local-wrap,.seo-saying{grid-template-columns:1fr;gap:36px}.split.flip .art{order:0}.art{max-width:380px}}
@media(max-width:700px){.seo-hero{padding:48px 0 56px}.plain li{grid-template-columns:1fr;gap:4px}.art a{box-shadow:6px 6px 0 var(--art-shadow)}}
@media(prefers-reduced-motion:reduce){.rise,.art a,.plain li{animation:none!important;transition:none!important}.art a:hover{transform:none}}
