/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(247,249,248,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,229,228,.88)}.header-inner{min-height:72px;display:flex;align-items:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--brand-900);font-size:1.05rem;font-weight:850;text-decoration:none;white-space:nowrap}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--brand-900);color:#fff}.brand-mark svg{width:21px;height:21px}.primary-nav{margin-left:auto}.nav-list{display:flex;align-items:center;gap:24px;list-style:none;padding:0;margin:0}.nav-list a{text-decoration:none;color:var(--text);font-size:.95rem;font-weight:650}.nav-list a:hover{color:var(--brand-700)}.header-official{margin-left:4px}.nav-toggle{display:none;border:1px solid var(--border);background:#fff;border-radius:10px;padding:9px 11px;color:var(--brand-900)}
/* Buttons */
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:var(--radius-button);padding:10px 17px;font-weight:760;line-height:1.2;text-decoration:none;transition:.18s ease}.btn .icon{width:18px}.btn-primary{background:var(--brand-700);color:#fff}.btn-primary:hover{background:var(--brand-900);color:#fff;transform:translateY(-1px)}.btn-secondary{background:#fff;border-color:var(--border);color:var(--brand-900)}.btn-secondary:hover{border-color:#b7cbca;background:#fbfdfc;color:var(--brand-900)}.btn-official{background:var(--brand-900);color:#fff}.btn-official:hover{background:#0d3038;color:#fff}.text-link{display:inline-flex;align-items:center;gap:7px;font-weight:750;text-decoration:none}.text-link .icon{width:18px}
/* Hero */
.hero{padding:70px 0 48px;background:linear-gradient(180deg,#f0f7f7 0%,var(--page-bg) 100%)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:58px;align-items:center}.hero h1{max-width:700px;margin-bottom:18px}.hero-copy{max-width:650px;font-size:1.15rem;color:var(--muted);margin-bottom:26px}.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:590px}.action-chip{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:13px;padding:14px;text-decoration:none;color:var(--brand-900);font-weight:760;box-shadow:0 4px 18px rgba(18,60,70,.035)}.action-chip:hover{border-color:#aac6c8;box-shadow:var(--shadow-soft);color:var(--brand-900);transform:translateY(-1px)}.action-chip .icon{width:22px;color:var(--brand-500)}.hero-trust{margin-top:18px;display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:.9rem}.hero-trust .icon{width:18px;color:var(--success)}
.navigator-card{padding:28px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.navigator-card:before{content:"";position:absolute;inset:auto -90px -100px auto;width:230px;height:230px;border-radius:50%;background:var(--brand-100)}.navigator-card>*{position:relative}.navigator-eyebrow{font-size:.78rem;color:var(--brand-700);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.navigator-card h2{font-size:1.6rem;margin:7px 0 8px}.navigator-card>p{color:var(--muted);font-size:.95rem}.mini-route-list{display:grid;gap:9px;margin-top:20px}.mini-route{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.92);color:var(--text);font-weight:670}.mini-route .icon{width:18px;color:var(--brand-500)}
/* Route finder */
.route-shell{padding:34px}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:25px}.route-choice{min-height:108px;text-align:left;padding:17px;border:1px solid var(--border);background:#fff;border-radius:14px;color:var(--text);transition:.16s ease}.route-choice:hover,.route-choice[aria-pressed="true"]{border-color:#9fc2c5;background:#f3fafa;box-shadow:0 8px 20px rgba(18,60,70,.05)}.route-choice .icon{width:23px;color:var(--brand-500);margin-bottom:10px}.route-choice strong{display:block;color:var(--brand-900);font-size:1rem}.route-choice span{display:block;margin-top:3px;color:var(--muted);font-size:.85rem}.route-result{margin-top:20px;padding:22px;background:var(--brand-100);border-radius:14px}.route-result[hidden]{display:none}.route-result h3{margin-bottom:8px}.route-result p{color:#3e5559}.route-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
/* split cards */
.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.journey-card{padding:28px}.journey-card .icon-wrap{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--brand-100);color:var(--brand-700);margin-bottom:17px}.journey-card .icon{width:23px}.journey-card p{color:var(--muted)}
/* clarification */
.clarify{background:var(--brand-900);color:#fff;border-radius:22px;padding:38px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.clarify h2{color:#fff;margin-bottom:10px}.clarify p{color:#d9e9eb;max-width:760px;margin:0}.clarify .btn-secondary{border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.08);color:#fff}.clarify .btn-secondary:hover{background:rgba(255,255,255,.15)}
/* Schedule finder */
.schedule-shell{padding:32px}.search-control{position:relative;margin-top:22px}.search-control .icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:20px;color:var(--muted)}.search-control input{width:100%;min-height:52px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:11px 15px 11px 46px;color:var(--text)}.search-control input:focus{border-color:var(--brand-500);outline:3px solid rgba(39,132,151,.14)}.schedule-results{margin-top:14px}.schedule-empty{padding:18px;border:1px dashed #bfd0cf;border-radius:12px;color:var(--muted);background:#fbfdfd}.schedule-item{display:grid;grid-template-columns:1.1fr .75fr .8fr auto;gap:16px;align-items:center;padding:17px 0;border-top:1px solid var(--border)}.schedule-item:first-child{border-top:0}.schedule-item strong{color:var(--brand-900)}.schedule-meta{font-size:.86rem;color:var(--muted)}
/* Service cards */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.service-card{padding:23px;display:flex;flex-direction:column;min-height:220px}.service-card .icon-wrap{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--brand-100);color:var(--brand-700);margin-bottom:16px}.service-card .icon{width:22px}.service-card h3{font-size:1.14rem;margin-bottom:7px}.service-card p{color:var(--muted);font-size:.93rem}.service-card .text-link{margin-top:auto}
/* Checklist */
.check-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-top:24px}.check-card{padding:17px;border:1px solid var(--border);border-radius:13px;background:#fff}.check-card .icon{width:20px;color:var(--success);margin-bottom:8px}.check-card strong{display:block;color:var(--brand-900);font-size:.92rem}.check-card span{display:block;color:var(--muted);font-size:.81rem;margin-top:3px}
/* Official handoff */
.official-card{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:24px}.official-seal{width:48px;height:48px;border-radius:14px;background:var(--brand-100);color:var(--brand-700);display:grid;place-items:center}.official-seal .icon{width:25px}.official-card h3{margin:0 0 4px;font-size:1.08rem}.official-card p{margin:0;color:var(--muted);font-size:.9rem}.domain-label{display:block;margin-top:4px;color:var(--brand-700);font-weight:740;font-size:.84rem}
/* verification */
.verify-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:24px}.verify-card{padding:18px}.verify-status{display:flex;align-items:center;gap:7px;color:var(--success);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.verify-status .icon{width:17px}.verify-card h3{font-size:1rem;margin:10px 0 5px}.verify-card time,.verify-card span{color:var(--muted);font-size:.84rem}
/* trust */
.trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.trust-item{padding:22px}.trust-item .icon{width:24px;color:var(--brand-500);margin-bottom:12px}.trust-item h3{font-size:1.06rem;margin-bottom:7px}.trust-item p{font-size:.9rem;color:var(--muted);margin:0}
/* Footer */
.site-footer{background:#0f333b;color:#d6e2e4;margin-top:40px;padding:56px 0 24px}.footer-top{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:34px}.footer-brand .brand{color:#fff}.footer-brand p{max-width:300px;color:#b9cccf;font-size:.9rem;margin-top:14px}.footer-col h2{color:#fff;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:13px}.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.footer-col a{color:#ccdcde;text-decoration:none;font-size:.9rem}.footer-col a:hover{color:#fff}.footer-bottom{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:20px;justify-content:space-between;color:#a9c0c4;font-size:.82rem}
/* Content */
.page-shell{padding:54px 0 80px}.article-header{margin-bottom:26px}.article-header .eyebrow{font-size:.78rem;font-weight:800;color:var(--brand-700);text-transform:uppercase;letter-spacing:.07em}.article-header h1{margin-top:8px}.article-subtitle{color:var(--muted);font-size:1.1rem}.article-body{background:#fff;border:1px solid var(--border);border-radius:18px;padding:clamp(24px,4vw,44px)}.article-body h2{margin-top:1.55em}.article-body h3{margin-top:1.4em}.article-body ul,.article-body ol{padding-left:1.25em}.verification-panel{padding:15px 17px;background:var(--success-bg);border:1px solid #cce7d9;border-radius:12px;display:flex;gap:10px;align-items:flex-start;margin:20px 0}.verification-panel .icon{width:20px;color:var(--success)}.verification-panel strong{display:block;color:#1d5d44;font-size:.88rem}.verification-panel span{display:block;color:#496b5e;font-size:.82rem}.breadcrumbs{margin-bottom:18px;color:var(--muted);font-size:.86rem}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs span{margin:0 7px}
/* 404/search */
.utility-state{text-align:center;padding:90px 0}.utility-state .icon-wrap{width:58px;height:58px;border-radius:16px;background:var(--brand-100);display:grid;place-items:center;margin:0 auto 20px;color:var(--brand-700)}.utility-state .icon{width:30px}.utility-state p{max-width:560px;margin:0 auto 24px;color:var(--muted)}
@media(max-width:980px){.primary-nav,.header-official{display:none}.nav-toggle{display:inline-flex;margin-left:auto}.site-header.menu-open .primary-nav{display:block;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:16px 20px 22px;box-shadow:var(--shadow-soft)}.site-header.menu-open .nav-list{display:grid;gap:4px}.site-header.menu-open .nav-list a{display:block;padding:11px 8px;border-radius:8px}.hero-grid{grid-template-columns:1fr;gap:28px}.navigator-card{max-width:680px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.verify-list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:1.4fr repeat(2,1fr)}.footer-brand{grid-row:span 2}}
@media(max-width:680px){.header-inner{min-height:62px}.site-header.menu-open .primary-nav{top:62px}.hero{padding:48px 0 34px}.hero-actions{grid-template-columns:1fr}.navigator-card,.route-shell,.schedule-shell{padding:22px}.choice-grid,.split-grid,.service-grid,.trust-grid{grid-template-columns:1fr}.route-choice{min-height:88px}.clarify{grid-template-columns:1fr;padding:26px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.verify-list{grid-template-columns:1fr}.official-card{grid-template-columns:auto 1fr}.official-card .btn{grid-column:1/-1;width:100%}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-bottom{flex-direction:column}.schedule-item{grid-template-columns:1fr}.schedule-item .btn{justify-self:start}}
/* v0.2 researched content components */
.quick-answer{margin:0 0 28px;padding:20px 22px;border:1px solid #c9e2e4;border-left:4px solid var(--brand-500);border-radius:13px;background:#f2f9f9}.quick-answer>strong{display:block;margin-bottom:6px;color:var(--brand-900);font-size:.88rem;text-transform:uppercase;letter-spacing:.055em}.quick-answer p:last-child{margin-bottom:0}.content-note{margin:25px 0;padding:18px 20px;border:1px solid #efd9aa;border-radius:13px;background:var(--warning-bg)}.content-note>strong{display:block;color:#724a12;margin-bottom:5px}.content-note p:last-child{margin-bottom:0}.step-list{counter-reset:pgi-step;list-style:none!important;padding:0!important;display:grid;gap:13px}.step-list li{counter-increment:pgi-step;position:relative;padding:17px 18px 17px 58px;border:1px solid var(--border);border-radius:13px;background:#fbfdfc}.step-list li:before{content:counter(pgi-step);position:absolute;left:16px;top:17px;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--brand-100);color:var(--brand-700);font-weight:800}.step-list strong{display:block;color:var(--brand-900)}.step-list span{display:block;margin-top:3px;color:var(--muted)}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 28px}.content-card{padding:20px;border:1px solid var(--border);border-radius:14px;background:#fbfdfc}.content-card h3{font-size:1.08rem}.content-card p:last-child{margin-bottom:0}.official-source-card{margin:30px 0 6px;padding:22px;border:1px solid #b9d2d4;border-radius:15px;background:var(--brand-100);display:grid;grid-template-columns:1fr auto;gap:5px 20px;align-items:center}.official-source-card strong{display:block;color:var(--brand-900);font-size:1.02rem}.official-source-card span{display:block;color:var(--muted);font-size:.88rem}.official-source-card .btn{grid-column:2;grid-row:1/3}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0 30px}.contact-card{padding:18px;border:1px solid var(--border);border-radius:13px;background:#fbfdfc}.contact-card strong,.contact-card a,.contact-card span{display:block}.contact-card strong{color:var(--brand-900)}.contact-card a{font-size:1.08rem;font-weight:800;text-decoration:none;margin:4px 0}.contact-card span{color:var(--muted);font-size:.86rem}.verification-source{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:.8rem;font-weight:750;text-decoration:none}.verification-source .icon{width:14px}.route-privacy{display:block;margin-top:10px;color:var(--muted);font-size:.79rem}.schedule-actions{display:grid;gap:5px;justify-items:start}.source-mini{font-size:.77rem;font-weight:740;text-decoration:none}.article-body code{padding:.1em .35em;border-radius:5px;background:#eef3f2;font-size:.9em}.article-body a.btn{text-decoration:none}.article-body .btn{margin-top:4px}
@media(max-width:680px){.comparison-grid,.contact-grid{grid-template-columns:1fr}.official-source-card{grid-template-columns:1fr}.official-source-card .btn{grid-column:1;grid-row:auto;width:100%;margin-top:10px}}
.embedded-directory{margin:22px 0 30px;padding:20px;border:1px solid var(--border);border-radius:15px;background:#fbfdfc}.directory-record{padding:18px 0;border-top:1px solid var(--border)}.directory-record:first-of-type{border-top:0}.directory-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.directory-head h3{margin:0 0 4px;font-size:1.05rem}.directory-head span{color:var(--muted);font-size:.86rem}.directory-verified{display:inline-block;color:var(--success)!important;font-size:.76rem!important;font-weight:780;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}.directory-record>p{margin:9px 0;color:var(--muted);font-size:.9rem}.directory-record details{margin:10px 0}.directory-record summary{cursor:pointer;color:var(--brand-700);font-weight:760}.schedule-row-list{display:grid;gap:7px;margin-top:10px}.schedule-row{display:grid;grid-template-columns:1fr .65fr 1.35fr;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:#fff;font-size:.84rem}.schedule-row span{color:var(--muted)}.contact-directory,.service-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0 30px}.service-directory .content-card{display:flex;flex-direction:column}.service-directory .content-card .btn{margin-top:auto;align-self:flex-start}
@media(max-width:680px){.directory-head{display:grid;gap:4px}.schedule-row{grid-template-columns:1fr}.contact-directory,.service-directory{grid-template-columns:1fr}}
/* Long-form usefulness & navigation */
.article-toc{margin:0 0 30px;padding:20px 22px;border:1px solid var(--border);border-radius:14px;background:#fbfdfc}.article-toc>strong{display:block;color:var(--brand-900);margin-bottom:9px}.article-toc ol{columns:2;column-gap:34px;margin:0;padding-left:1.25em}.article-toc li{break-inside:avoid;margin:5px 0}.article-toc a{text-decoration:none;font-size:.9rem;font-weight:650}.faq-list{display:grid;gap:9px;margin:18px 0 30px}.faq-list details{border:1px solid var(--border);border-radius:12px;background:#fbfdfc;padding:0 16px}.faq-list summary{cursor:pointer;padding:14px 28px 14px 0;color:var(--brand-900);font-weight:760;position:relative}.faq-list summary::marker{color:var(--brand-500)}.faq-list details p{padding:0 0 14px;margin:0;color:var(--muted)}.publisher-card,.privacy-runtime{margin:18px 0;padding:18px 20px;border:1px solid var(--border);border-radius:13px;background:#fbfdfc}.publisher-card strong,.publisher-card a,.publisher-card span{display:block}.publisher-card a{font-weight:760;margin:4px 0}.publisher-card span{color:var(--muted);font-size:.9rem}.privacy-runtime p:last-child{margin-bottom:0}.related-routes{width:min(calc(100% - 0px),900px);margin:34px auto 0;padding-top:28px;border-top:1px solid var(--border)}.related-routes h2{font-size:1.35rem;margin-bottom:14px}.related-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.related-route-card{position:relative;display:block;padding:18px 42px 18px 18px;border:1px solid var(--border);border-radius:13px;background:#fff;text-decoration:none;color:var(--text)}.related-route-card:hover{border-color:#acc9cb;box-shadow:var(--shadow-soft);color:var(--text)}.related-route-card strong{display:block;color:var(--brand-900);margin-bottom:4px}.related-route-card span{display:block;color:var(--muted);font-size:.86rem;line-height:1.5}.related-route-card>.icon{position:absolute;right:15px;top:18px;width:18px;color:var(--brand-500)}
@media(max-width:720px){.article-toc ol{columns:1}.related-route-grid{grid-template-columns:1fr}}
