*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--font-body,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:var(--body-size,16px);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}button,input{font:inherit}.shell{width:min(var(--shell-max,1180px),calc(100% - 36px));margin-inline:auto}.skip-link{position:fixed;left:12px;top:-60px;z-index:1000;background:#fff;color:#111;padding:10px 14px;border-radius:10px}.skip-link:focus{top:12px}.top-strip{background:var(--ink);color:var(--bg);font-size:.86rem}.top-strip-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px}.top-strip a{opacity:.8}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.brand img{flex:none}.brand span{display:grid;line-height:1.2}.brand strong{font-family:var(--font-display,var(--font-body));font-size:1.08rem;letter-spacing:var(--heading-spacing,-.02em)}.brand small{font-size:.75rem;opacity:.66;margin-top:4px;white-space:nowrap;max-width:290px;overflow:hidden;text-overflow:ellipsis}.main-nav{display:flex;align-items:center;gap:4px}.main-nav a{padding:10px 12px;border-radius:999px;text-decoration:none;font-size:.93rem;font-weight:650}.main-nav a:hover,.main-nav a.is-active{background:var(--surface)}.main-nav .nav-cta{background:var(--accent);color:var(--accent-ink);margin-left:6px}.menu-button{display:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:9px 13px}.hero{position:relative;overflow:hidden;padding:clamp(58px,8vw,112px) 0;background:var(--hero-bg)}.hero:before{content:"";position:absolute;inset:auto -12% -55% auto;width:520px;height:520px;border-radius:50%;background:var(--accent-soft);filter:blur(4px);opacity:.65}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:center;gap:clamp(36px,7vw,92px)}.hero-copy h1,.page-header h1,.article-header h1{font-family:var(--font-display,var(--font-body));letter-spacing:var(--heading-spacing,-.045em);line-height:1.04;margin:.2em 0 .45em}.hero-copy h1{font-size:clamp(2.75rem,6vw,5.7rem);max-width:13ch}.hero-intro{font-size:clamp(1.06rem,1.8vw,1.28rem);max-width:66ch;color:var(--muted)}.eyebrow{margin:0 0 12px;color:var(--accent-strong);font-weight:800;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;border-radius:var(--button-radius,14px);border:1px solid transparent;text-decoration:none;font-weight:800;cursor:pointer}.button.primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 12px 26px color-mix(in srgb,var(--accent) 22%,transparent)}.button.secondary{border-color:var(--line);background:var(--surface);color:var(--ink)}.button.ghost{border-color:transparent;background:transparent;color:var(--muted)}.trust-list{list-style:none;padding:0;margin:25px 0 0;display:flex;flex-wrap:wrap;gap:9px}.trust-list li{background:var(--surface);border:1px solid var(--line);padding:7px 11px;border-radius:999px;font-size:.85rem}.hero-visual{position:relative}.hero-visual img{display:block;width:100%;filter:drop-shadow(0 30px 50px rgba(25,31,45,.12))}.section{padding:var(--section-space,clamp(64px,8vw,110px)) 0}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:40px;align-items:end;margin-bottom:34px}.section-heading h2,.feature-band h2{font-family:var(--font-display,var(--font-body));font-size:clamp(2rem,4vw,3.6rem);line-height:1.1;letter-spacing:var(--heading-spacing,-.035em);margin:.1em 0}.section-heading>p{color:var(--muted);margin:0}.card-grid,.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tool-card,.guide-card{position:relative;min-height:245px;padding:26px;border:1px solid var(--line);border-radius:var(--card-radius,22px);background:var(--surface);box-shadow:var(--card-shadow,0 18px 45px rgba(25,31,45,.06));overflow:hidden}.tool-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:.9}.tool-card h2,.tool-card h3,.guide-card h2,.guide-card h3{font-family:var(--font-display,var(--font-body));font-size:1.35rem;line-height:1.25;margin:42px 0 12px}.tool-card h2 a,.tool-card h3 a,.guide-card h2 a,.guide-card h3 a{text-decoration:none}.tool-card p,.guide-card p{color:var(--muted)}.card-number{position:absolute;top:22px;right:24px;font-size:.78rem;font-weight:900;color:var(--accent-strong);letter-spacing:.14em}.text-link{font-weight:800;color:var(--accent-strong)}.section-action{text-align:center;margin:34px 0 0}.feature-band{background:var(--band-bg);border-block:1px solid var(--line)}.feature-band-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.why-grid article{padding:22px;border-left:3px solid var(--accent);background:var(--surface)}.why-grid h3{margin:0 0 8px;font-size:1rem}.why-grid p{margin:0;color:var(--muted)}.guide-kicker{font-size:.76rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong)!important}.faq-section{background:var(--faq-bg)}.faq-list{display:grid;gap:12px;max-width:900px}.faq-list details{background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius,18px);padding:0 20px}.faq-list summary{cursor:pointer;font-weight:800;padding:18px 0}.faq-list p{color:var(--muted);margin:0 0 20px}.page-main{padding:38px 0 90px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.84rem;margin:0 0 30px}.breadcrumbs a{color:var(--accent-strong)}.page-header{max-width:850px;margin:42px 0 46px}.page-header.compact{margin-top:0}.page-header h1{font-size:clamp(2.5rem,5vw,5rem)}.page-header>p:last-child{font-size:1.12rem;color:var(--muted);max-width:70ch}.filter-row{display:grid;grid-template-columns:auto minmax(180px,390px);align-items:center;justify-content:end;gap:14px;margin-bottom:24px}.filter-row label{font-weight:750;font-size:.9rem}.filter-row input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:12px 14px}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:44px;align-items:start}.calculator{border:1px solid var(--line);border-radius:var(--card-radius,24px);background:var(--surface);padding:clamp(22px,4vw,38px);box-shadow:var(--card-shadow)}.calculator-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.calculator-fields label{display:grid;gap:7px;font-weight:750}.calculator-fields label>span{font-size:.91rem}.calculator-fields small{color:var(--muted);font-weight:500}.calculator-fields input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--field-bg,var(--bg));color:var(--ink);padding:13px 14px}.calculator-actions{display:flex;gap:10px;margin:24px 0}.calculator-results{padding:22px;border-radius:18px;background:var(--result-bg);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line))}.result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-item{padding:15px;background:var(--surface);border-radius:13px}.result-item span{display:block;color:var(--muted);font-size:.82rem}.result-item strong{display:block;font-size:1.45rem;margin-top:4px}.prose-section{margin-top:42px}.prose-section h2,.static-page h2,.article h2{font-family:var(--font-display,var(--font-body));font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.22;letter-spacing:var(--heading-spacing,-.025em)}.prose-section p,.prose-section li,.static-page p,.static-page li,.article p,.article li{color:var(--prose-color,var(--ink));max-width:76ch}.formula-box,.example-box,.contact-panel{padding:26px;border-radius:var(--card-radius,20px);background:var(--band-bg);border:1px solid var(--line)}.example-box{background:var(--result-bg)}.tool-aside{position:sticky;top:128px;display:grid;gap:16px}.aside-card{padding:22px;border:1px solid var(--line);border-radius:var(--card-radius,20px);background:var(--surface)}.aside-card h2{font-size:1.02rem;margin-top:0}.aside-card p{color:var(--muted)}.aside-card a{display:block;padding:10px 0;border-top:1px solid var(--line);font-weight:700;color:var(--accent-strong)}.article-shell{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:60px;align-items:start}.article-shell>.breadcrumbs{grid-column:1/-1}.article-header{margin-bottom:40px}.article-header h1{font-size:clamp(2.6rem,5vw,4.9rem)}.article-lead{font-size:1.18rem;color:var(--muted)}.article-meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:.82rem;margin-top:20px}.article>p:first-of-type{font-size:1.12rem}.article section{margin-top:46px}.article ul,.static-page ul,.prose-section ul{padding-left:1.25rem}.article-callout{margin:24px 0;padding:20px 22px;border-left:4px solid var(--accent);background:var(--result-bg);border-radius:0 16px 16px 0}.article-callout p{margin-bottom:0}.article-related{position:sticky;top:128px;display:grid;gap:20px}.article-related section{border-top:3px solid var(--accent);padding-top:16px}.article-related h2{font-size:1rem}.article-related a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:.9rem;font-weight:700;color:var(--accent-strong)}.static-shell{max-width:940px}.static-page section{margin:42px 0}.static-page .faq-section{margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%)}.not-found{padding:80px 0;text-align:center}.site-footer{padding:70px 0 20px;background:var(--footer-bg);color:var(--footer-ink);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}.footer-grid section{display:grid;align-content:start;gap:8px}.footer-grid h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 10px}.footer-grid p{color:color-mix(in srgb,var(--footer-ink) 68%,transparent);max-width:38ch}.footer-grid a{color:color-mix(in srgb,var(--footer-ink) 78%,transparent);text-decoration:none}.footer-brand{display:flex;align-items:center;gap:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid color-mix(in srgb,var(--footer-ink) 16%,transparent);margin-top:46px;padding-top:20px;font-size:.8rem;color:color-mix(in srgb,var(--footer-ink) 62%,transparent)}.is-hidden{display:none!important}
/* Deterministic layout variants */
.hero-stacked .hero-grid{grid-template-columns:1fr;text-align:center}.hero-stacked .hero-copy{max-width:930px;margin-inline:auto}.hero-stacked .hero-copy h1,.hero-stacked .hero-intro{margin-inline:auto}.hero-stacked .hero-actions,.hero-stacked .trust-list{justify-content:center}.hero-stacked .hero-visual{max-width:760px;margin:28px auto 0}
.hero-offset .hero-grid{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr)}.hero-offset .hero-copy{transform:translateY(42px)}.hero-offset .hero-visual{transform:translateY(-28px)}
.hero-compact .hero{padding:42px 0}.hero-compact .hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.65fr);gap:40px}.hero-compact .hero-copy h1{font-size:clamp(2.4rem,4.8vw,4.7rem)}
.hero-wide .hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.hero-wide .hero-copy h1{max-width:16ch}.hero-wide .hero-visual img{transform:scale(1.08)}
.header-solid .site-header{background:var(--surface);backdrop-filter:none}.header-bordered .site-header{position:relative;background:var(--bg);backdrop-filter:none;border-block:4px double var(--line)}.header-bordered .top-strip{display:none}.header-compact .top-strip{display:none}.header-compact .nav-wrap{min-height:64px}.header-compact .brand img{width:38px;height:38px}.header-compact .brand small{display:none}
.cards-outline .tool-card,.cards-outline .guide-card,.cards-outline .calculator,.cards-outline .aside-card{box-shadow:none;border-width:2px;background:transparent}.cards-flat .tool-card,.cards-flat .guide-card,.cards-flat .calculator,.cards-flat .aside-card{box-shadow:none;border-color:transparent}.cards-flat .tool-card,.cards-flat .guide-card{background:var(--band-bg)}.cards-accented .tool-card:nth-child(3n+1),.cards-accented .guide-card:nth-child(3n+1){background:var(--accent-soft)}.cards-accented .tool-card:nth-child(3n+2),.cards-accented .guide-card:nth-child(3n+2){border-top:6px solid var(--accent-2)}
.footer-boxed .site-footer{margin:36px;border-radius:calc(var(--card-radius) + 10px);padding-inline:24px}.footer-boxed .footer-grid>section{padding:20px;border:1px solid color-mix(in srgb,var(--footer-ink) 16%,transparent);border-radius:var(--card-radius)}.footer-compact .site-footer{padding-top:38px}.footer-compact .footer-grid{grid-template-columns:1.5fr repeat(3,auto);gap:24px}.footer-compact .footer-grid p{font-size:.88rem}
.density-dense .tool-card,.density-dense .guide-card{min-height:210px;padding:20px}.density-dense .page-main{padding-top:24px}.density-airy .tool-card,.density-airy .guide-card{min-height:280px;padding:32px}
/* Layout families */
.theme-editorial .hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.theme-editorial .hero-copy h1{font-weight:500}.theme-editorial .tool-card,.theme-editorial .guide-card{box-shadow:none}.theme-editorial .tool-card:before{height:1px}.theme-editorial .card-grid{gap:1px;background:var(--line);border:1px solid var(--line)}.theme-editorial .tool-card{border:0;border-radius:0}.theme-mosaic .tool-grid .tool-card:nth-child(2),.theme-mosaic .tool-grid .tool-card:nth-child(5){transform:translateY(22px)}.theme-mosaic .hero-visual{transform:rotate(2deg)}.theme-workshop .tool-card,.theme-workshop .calculator{border-width:2px;box-shadow:7px 7px 0 color-mix(in srgb,var(--ink) 17%,transparent)}.theme-workshop .button{border-radius:4px}.theme-workshop .hero-copy h1{text-transform:uppercase;line-height:.94}.theme-coastal .hero{border-radius:0 0 8vw 8vw}.theme-coastal .hero-visual img{border-radius:46% 54% 48% 52%}.theme-note .hero-grid{grid-template-columns:1fr}.theme-note .hero-copy{max-width:900px}.theme-note .hero-visual{position:absolute;right:0;bottom:-22%;width:min(44vw,560px);opacity:.25}.theme-note .tool-card{border-left:5px solid var(--accent)}.theme-grid .hero{background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:38px 38px}.theme-grid .tool-card{border-radius:3px}.theme-grid .card-number{font-size:1.1rem}.theme-studio .hero-grid{grid-template-columns:.85fr 1.15fr}.theme-studio .hero-copy{order:2}.theme-studio .hero-visual{order:1}.theme-studio .guide-card{min-height:300px;display:flex;flex-direction:column;justify-content:flex-end}.theme-field .hero{background:var(--accent-soft)}.theme-field .tool-card{box-shadow:none;border-style:dashed}.theme-field .feature-band{background:var(--surface)}.theme-minimal .top-strip{display:none}.theme-minimal .site-header{position:relative}.theme-minimal .hero{padding-top:40px}.theme-minimal .hero-visual{filter:grayscale(1)}
@media(max-width:980px){.hero-offset .hero-copy,.hero-offset .hero-visual{transform:none}.hero-stacked .hero-grid,.hero-offset .hero-grid,.hero-compact .hero-grid,.hero-wide .hero-grid{grid-template-columns:1fr}.footer-boxed .site-footer{margin:16px}.footer-compact .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{position:absolute;left:18px;right:18px;top:76px;display:none;flex-direction:column;align-items:stretch;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px rgba(0,0,0,.12)}.main-nav.is-open{display:flex}.menu-button{display:block}.hero-grid,.theme-editorial .hero-grid,.theme-studio .hero-grid{grid-template-columns:1fr}.theme-studio .hero-copy,.theme-studio .hero-visual{order:initial}.hero-visual{max-width:620px;margin:auto}.card-grid,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-band-grid,.article-shell,.tool-layout{grid-template-columns:1fr}.article-related,.tool-aside{position:static}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-note .hero-visual{position:relative;right:auto;bottom:auto;width:auto;opacity:1}.theme-mosaic .tool-grid .tool-card:nth-child(2),.theme-mosaic .tool-grid .tool-card:nth-child(5){transform:none}}
@media(max-width:680px){.shell{width:min(100% - 24px,1180px)}.top-strip-inner{justify-content:center;text-align:center}.top-strip-inner a{display:none}.brand small{max-width:190px}.hero{padding:50px 0}.hero-copy h1{font-size:clamp(2.45rem,13vw,4rem)}.section{padding:60px 0}.section-heading{grid-template-columns:1fr;gap:12px}.card-grid,.guide-grid,.why-grid,.calculator-fields,.result-list{grid-template-columns:1fr}.feature-band-grid{gap:30px}.filter-row{grid-template-columns:1fr;justify-content:stretch}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid section:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.tool-card,.guide-card{min-height:0}}

.article-feature{margin:30px 0;padding:clamp(22px,4vw,34px);border:1px solid var(--line);border-radius:var(--card-radius,20px);background:var(--band-bg)}
.article-feature h2{margin-top:0}.article-feature-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}.article-feature-list li{display:grid;gap:4px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--card-radius,20px) * .7)}.article-feature-list strong{color:var(--accent-strong)}.article-feature-list span{color:var(--muted)}
.article-feature--comparison .article-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}.article-feature--checklist_first .article-feature-list li{grid-template-columns:auto 1fr}.article-feature--checklist_first .article-feature-list li:before{content:"✓";font-weight:900;color:var(--accent-strong);grid-row:1/3}.article-feature--scenario_led{border-left:5px solid var(--accent)}.article-feature--troubleshooting .article-feature-list li{border-left:4px solid var(--accent)}
.article-section--numbered{position:relative;padding-left:52px}.article-section--numbered:before{content:attr(data-step);position:absolute;left:0;top:2px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:900}.article-format-comparison .article-conclusion{border-top:2px solid var(--line);padding-top:28px}.article-format-troubleshooting .faq-section{margin-inline:calc((100vw - min(var(--shell-max,1180px),calc(100vw - 36px)))/-2);padding-inline:calc((100vw - min(var(--shell-max,1180px),calc(100vw - 36px)))/2)}
.privacy-settings-link{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer;padding:0;font:inherit}.privacy-settings-link[hidden]{display:none}
@media(max-width:720px){.article-feature--comparison .article-feature-list{grid-template-columns:1fr}.article-section--numbered{padding-left:0;padding-top:46px}.article-section--numbered:before{top:0}}
