
:root{
 --ink:#12343b;--deep:#062f35;--deep2:#0b4a50;--teal:#007f7d;--teal2:#00a6a1;
 --aqua:#53d3ca;--mint:#dff7f1;--sea:#edf9f6;--sand:#f5f1e8;--gold:#d6a84d;
 --coral:#d9664f;--muted:#526d72;--line:#cfe2df;--white:#fff;--shadow:0 22px 60px rgba(6,47,53,.12);
 --radius:20px;--max:1220px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.67;background:#fff}
img{max-width:100%;height:auto}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit}
.wrap{width:min(calc(100% - 44px),var(--max));margin-inline:auto}
.content-wrap{width:min(calc(100% - 44px),1080px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-10000px;top:auto;z-index:1000;background:#fff;color:var(--deep);padding:10px 16px}
.skip-link:focus{left:12px;top:12px}
.publisher-bar{background:var(--deep);color:#d9f5ef;font-size:.82rem}
.publisher-bar .wrap{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.publisher-bar a{color:#fff;font-weight:800}
header{position:sticky;top:0;z-index:500;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-wrap{height:84px;display:flex;align-items:center;gap:24px}
.logo{display:flex;align-items:center;flex:0 0 auto}
.logo img{width:286px}
nav{margin-left:auto}
nav ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.nav-group{position:relative}
.nav-trigger{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:#254b51;padding:12px 9px;font-weight:800;font-size:.82rem;cursor:pointer}
.nav-trigger:hover,.nav-trigger:focus{color:var(--teal)}
.nav-trigger span{font-size:.9rem}
.nav-dropdown{display:none;position:absolute;left:0;top:100%;min-width:265px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:10px}
.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown,.nav-group.open .nav-dropdown{display:grid}
.nav-dropdown a{color:#294d53;padding:9px 11px;border-radius:8px;font-size:.86rem;font-weight:690;line-height:1.3}
.nav-dropdown a:hover{background:var(--sea);text-decoration:none;color:var(--teal)}
.header-cta{white-space:nowrap;font-size:.83rem;padding:11px 13px}
.menu-button{display:none;margin-left:auto;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 12px;color:var(--deep);font-weight:900}
.button,.button-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--teal);border-radius:10px;padding:12px 17px;font-weight:850;line-height:1.15;cursor:pointer;transition:.18s ease}
.button{background:var(--teal);color:#fff}
.button:hover{background:#006b69;text-decoration:none;transform:translateY(-1px)}
.button-outline{background:#fff;color:var(--teal)}
.button-outline:hover{background:var(--sea);text-decoration:none}
.button.light{background:#fff;color:var(--deep);border-color:#fff}
.button-outline.light{background:transparent;color:#fff;border-color:#9fe5db}
.hero{
 overflow:hidden;color:#fff;background:
 radial-gradient(circle at 84% 17%,rgba(83,211,202,.31),transparent 24%),
 radial-gradient(circle at 62% 84%,rgba(214,168,77,.18),transparent 27%),
 linear-gradient(135deg,#052c32,#07555a 58%,#093f48)
}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:56px;align-items:center;padding:88px 0}
.eyebrow,.section-kicker{font-size:.76rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase;color:var(--teal2)}
.hero .eyebrow{color:#8ff3e5}
h1,h2,h3{font-family:"Aptos Display",Inter,ui-sans-serif,system-ui,sans-serif;line-height:1.1;letter-spacing:-.027em}
h1{font-size:clamp(2.85rem,5.5vw,5.35rem);margin:.58rem 0 1.2rem}
h2{font-size:clamp(2rem,3.8vw,3.2rem)}
h3{font-size:1.25rem}
.hero p{font-size:1.18rem;color:#d9f4ef;max-width:760px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-proof{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px;color:#c6ece6;font-size:.83rem;font-weight:750}
.hero-proof span{border-left:2px solid var(--aqua);padding-left:10px}
.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:27px;padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.21)}
.diagram-note{font-size:.85rem!important;color:#cdece7!important;margin:8px 5px 0}
.trust-row{background:#fff;border-bottom:1px solid var(--line)}
.trust-row .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.trust-item{background:#fff;padding:25px 22px;color:var(--muted);font-size:.91rem}
.trust-item strong{display:block;color:var(--deep);font-size:1rem;margin-bottom:5px}
.page-hero{background:
 radial-gradient(circle at 88% 24%,rgba(83,211,202,.21),transparent 24%),
 linear-gradient(180deg,#f3fcf9,#eaf6f4);border-bottom:1px solid var(--line)}
.page-hero .wrap{padding:62px 0 54px}
.page-hero h1{font-size:clamp(2.4rem,4.7vw,4.45rem);color:var(--deep);max-width:1050px}
.page-hero p{font-size:1.18rem;color:#416269;max-width:900px}
.breadcrumb{font-size:.83rem;color:#688087;margin-bottom:20px}
.breadcrumb span{padding:0 7px}
.article-meta{display:flex;flex-wrap:wrap;gap:16px;color:#667f84;font-size:.82rem;margin-top:20px}
.content-section{margin:72px 0}
.content-section h2{margin:.48rem 0 1rem;color:var(--deep)}
.content-section h3{color:var(--deep)}
.content-section p,.content-section li{font-size:1.02rem}
.lead{font-size:1.24rem!important;color:#3f6066}
.small{font-size:.88rem!important;color:#647b80}
.intro-grid,.brand-section,.decision-tree{display:grid;grid-template-columns:1.17fr .83fr;gap:42px;align-items:start}
.decision-panel,.selector-preview{border:1px solid var(--line);background:linear-gradient(180deg,#f7fffd,#ebf8f5);border-radius:24px;padding:28px;box-shadow:var(--shadow)}
.selector-preview img{display:block;margin:auto}
.grid-2,.grid-3,.grid-4{display:grid;gap:20px;margin:26px 0}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:#fff;box-shadow:0 9px 28px rgba(6,47,53,.055)}
.card h3{margin-top:0}
.card p:last-child{margin-bottom:0}
.card.teal{background:linear-gradient(180deg,#f4fffc,#e6f8f4);border-color:#a9dfd6}
.card.sand{background:var(--sand)}
.card.gold{background:#fff9ea;border-color:#eddaa9}
.text-link{font-weight:850}
.callout{border-left:5px solid var(--teal);border-radius:0 14px 14px 0;background:var(--sea);padding:20px 22px;margin:26px 0}
.callout.warning{border-color:var(--gold);background:#fff8e7}
.callout.danger{border-color:var(--coral);background:#fff1ed}
.callout.success{border-color:#2a9b75;background:#ebfaf4}
.check-list{list-style:none;padding:0}
.check-list li{position:relative;padding-left:30px;margin:10px 0}
.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--teal);font-weight:950}
.numbered{counter-reset:steps;list-style:none;padding:0}
.numbered li{counter-increment:steps;position:relative;padding-left:54px;margin:18px 0;min-height:40px}
.numbered li::before{content:counter(steps);position:absolute;left:0;top:-2px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-weight:950}
.table-scroll{overflow-x:auto;margin:28px 0;border:1px solid var(--line);border-radius:15px}
table{width:100%;border-collapse:collapse;background:#fff;min-width:720px}
caption{text-align:left;padding:14px 16px;font-weight:850;background:var(--sea)}
th,td{text-align:left;vertical-align:top;padding:14px 16px;border-bottom:1px solid var(--line)}
th{background:var(--deep);color:#fff;font-size:.88rem;letter-spacing:.02em}
tr:last-child td{border-bottom:0}
code,.formula{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.formula{display:block;background:#052f35;color:#d9faf4;padding:18px 20px;border-radius:12px;margin:20px 0;overflow:auto}
.source-list li{margin-bottom:15px}
.source-box{border-top:1px solid var(--line);padding-top:48px}
.cta-band{display:grid;grid-template-columns:1.35fr .65fr;gap:35px;align-items:center;background:linear-gradient(135deg,#06363d,#08706e);color:#fff;border-radius:25px;padding:42px;margin:66px 0}
.cta-band h2{margin:.3rem 0;color:#fff;font-size:2rem}
.cta-band p{color:#d7f4ef}
.cta-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.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:850;font-size:1.05rem;color:var(--deep)}
.faq-answer{padding:12px 0;color:#47666c}
.selector-card,.calculator-card,.brief-card{border:1px solid var(--line);border-radius:22px;padding:29px;background:linear-gradient(180deg,#f8fffd,#eaf7f4);box-shadow:var(--shadow);margin:28px 0}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.form-grid label,.full-field{display:grid;gap:7px;font-weight:780}
.form-grid select,.form-grid input,.form-grid textarea,.full-field input,.full-field textarea,.full-field select{
 width:100%;padding:12px 13px;border:1px solid #9dbab6;border-radius:9px;background:#fff;color:var(--ink)
}
.form-grid textarea,.full-field textarea{min-height:115px;resize:vertical}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.result-box{margin-top:24px;border-left:5px solid var(--gold);background:#fff9e9;border-radius:0 14px 14px 0;padding:22px}
.result-box h3{margin-top:0}
.result-box[hidden]{display:none}
.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.result-tag{display:inline-block;border-radius:999px;background:#d8f4ee;color:#0b6e69;padding:5px 10px;font-size:.77rem;font-weight:900;letter-spacing:.06em}
pre{white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid var(--line);padding:18px;border-radius:12px;color:var(--ink)}
.split-band{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;background:linear-gradient(135deg,var(--sand),#f2fbf8);border:1px solid var(--line);border-radius:28px;padding:38px}
.family-stack{display:grid;gap:10px}
.family-stack a{display:grid;background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;color:var(--ink)}
.family-stack a:hover{text-decoration:none;border-color:var(--teal);transform:translateX(2px)}
.family-stack span{color:var(--muted);font-size:.86rem}
.brand-section{align-items:center;background:linear-gradient(180deg,#f7fffd,#eef9f6);border-radius:28px;padding:38px;border:1px solid var(--line)}
.tool-showcase{background:var(--sand);border-radius:28px;padding:42px}
.scale-graphic{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:28px 0}
.scale-graphic.compact{grid-template-columns:repeat(4,1fr)}
.scale-graphic div{background:#fff;padding:20px;text-align:center}
.scale-graphic span{display:block;color:var(--teal);font-weight:950}
.scale-graphic strong{display:block;color:var(--deep)}
.trace-chain,.optical-path{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:28px 0}
.trace-chain span,.optical-path span{background:var(--sea);border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-weight:800}
.trace-chain i,.optical-path i{font-style:normal;color:var(--teal);font-weight:950}
.reference-catalog{padding-left:1.4rem}
.reference-catalog li{margin:0 0 22px}
.reference-catalog p{margin:.3rem 0;color:var(--muted)}
.social-links{display:flex;flex-wrap:wrap;gap:11px}
footer{background:#052b31;color:#d5eee9;margin-top:78px}
footer .wrap{padding:58px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.35fr .75fr .85fr;gap:50px}
.footer-logo{filter:brightness(0) invert(1);max-width:330px}
footer h3{color:#fff}
footer a{color:#e3f7f3}
.footer-links{list-style:none;padding:0}
.footer-links li{margin:8px 0}
.ap-seal{display:inline-block;border:1px solid #4d7c7e;border-radius:999px;padding:6px 11px;color:#dff5f1;font-size:.82rem}
.fineprint{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #31565a;margin-top:38px;padding-top:20px;font-size:.8rem;color:#9dc0bd}
@media(max-width:1160px){
 .header-cta{display:none}.logo img{width:255px}.nav-trigger{padding:12px 7px;font-size:.78rem}
}
@media(max-width:980px){
 .hero-grid,.footer-grid,.grid-3,.grid-4,.grid-2,.form-grid,.result-grid,.intro-grid,.brand-section,.decision-tree,.split-band{grid-template-columns:1fr}
 .trust-row .wrap{grid-template-columns:1fr 1fr}
 nav{position:absolute;top:84px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);display:none}
 nav.open{display:block}
 nav ul{display:block;padding:16px 22px;max-height:75vh;overflow:auto}
 .nav-trigger{width:100%;justify-content:space-between;font-size:.92rem;padding:11px 4px}
 .nav-dropdown{position:static;box-shadow:none;border:0;border-left:3px solid var(--line);border-radius:0;margin:0 0 8px 8px;padding:2px 9px}
 .nav-group:hover .nav-dropdown{display:none}
 .nav-group.open .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:grid}
 .menu-button{display:block}.header-cta{display:none}.hero-grid{padding:66px 0}.hero-card{max-width:680px}
 .cta-band{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}
}
@media(max-width:620px){
 .wrap,.content-wrap{width:min(calc(100% - 28px),var(--max))}
 .publisher-bar .wrap{display:block;text-align:center;padding:7px 0}
 .publisher-bar span{display:block}
 .nav-wrap{height:74px}.logo img{width:220px}nav{top:74px}
 .trust-row .wrap{grid-template-columns:1fr}
 h1{font-size:2.5rem}.page-hero .wrap{padding-top:44px}
 .content-section{margin:56px 0}.cta-band,.tool-showcase,.brand-section,.split-band{padding:27px}
 .selector-card,.calculator-card,.brief-card{padding:20px}
 .scale-graphic,.scale-graphic.compact{grid-template-columns:1fr 1fr}
 .fineprint{display:block}.fineprint span{display:block;margin-top:8px}
}
@media print{
 .publisher-bar,header,footer,.cta-band,.no-print{display:none!important}
 .page-hero{background:#fff;border:0}.page-hero .wrap{padding:0}
 .content-wrap{width:100%}.content-section{margin:28px 0}
 .card,.selector-card,.calculator-card,.brief-card{box-shadow:none}
}
