/* Shared stylesheets own typography, navigation, buttons, FAQ, and footer. */
.pricing-page{background:var(--paper)}
.pricing-hero{grid-template-columns:minmax(0,1.1fr) minmax(370px,.9fr);gap:clamp(36px,6vw,90px)}
.pricing-intro .eyebrow{color:#8ae4df}
.pricing-intro h1{max-width:700px}
.pricing-lede{font-size:clamp(1.06rem,1.5vw,1.28rem);line-height:1.6;color:#b8cad3}
.included-summary{display:flex;gap:30px;border-top:1px solid rgba(255,255,255,.18);padding-top:25px;margin-top:32px}
.included-summary>span{font-size:2rem;line-height:1.2;font-weight:500;color:var(--signal)}
.included-summary strong{display:block;font-size:.875rem;font-weight:500;color:#fff;margin-top:10px}
.intro-note{font-size:.9375rem;color:#b8cad3;max-width:440px;margin:23px 0 0}
.plan-card{background:white;color:var(--midnight);border-radius:6px;padding:28px 32px;box-shadow:0 30px 70px rgba(0,0,0,.25)}.plan-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:.875rem;font-weight:800;letter-spacing:.035em}.value-tag{padding:5px 9px;background:var(--signal-soft);color:#126350;letter-spacing:0;font-size:.875rem}.billing-options{margin:24px 0 22px;border:0;background:#edf2f5;border-radius:9px;padding:5px;display:flex;gap:4px}.billing-options legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.billing-options label{flex:1;position:relative;cursor:pointer}.billing-options input{position:absolute;opacity:0}.billing-options label>span{display:flex;justify-content:center;align-items:center;gap:8px;padding:11px 8px;border-radius:6px;font-size:.9375rem;font-weight:750}.billing-options input:checked+span{background:#fff;box-shadow:0 2px 6px #031b3515}.billing-options input:focus-visible+span{outline:3px solid #087b89;outline-offset:2px}.billing-options b{font-size:.875rem;color:#176953}.price{margin:0;display:flex;align-items:baseline;gap:9px}.price strong{font-size:4.9rem;line-height:1.15;letter-spacing:-.075em}.price>span{font-size:1.125rem;color:#475968}.plan-total>p:not(.price){margin:5px 0;font-size:.9375rem}.plan-total .value-line{color:#136d62;font-weight:700;min-height:24px}.plan-inclusions{list-style:none;padding:20px 0 0;margin:20px 0 25px;border-top:1px solid #d9e3e8;display:grid;gap:10px}.plan-inclusions li{padding-left:25px;position:relative}.plan-inclusions li:before{content:'✓';position:absolute;left:0;color:#107261;font-weight:bold}.plan-cta{display:flex;justify-content:space-between;border-radius:8px;padding:14px 20px;line-height:1.35;gap:12px;box-shadow:none}.checkout-note{text-align:center;color:#475968;font-size:.875rem;margin:12px 0 20px}.savings-note{text-align:center;background:var(--paper);padding:12px 8px;font-size:.9375rem;border-radius:6px}.price-footnote{font-size:.875rem;color:#475968;line-height:1.5;margin:13px 0 0}
.coverage-section{align-items:center}
.coverage-section .inline-link{color:#087788;font-weight:850;text-underline-offset:5px}
.coverage-receipt{background:#fff;padding:32px;border-radius:4px;box-shadow:0 10px 35px rgba(3,27,53,.07)}
.coverage-receipt .receipt-heading{color:#075d70;font-size:.875rem;font-weight:900;letter-spacing:.12em;margin:0 0 16px}
.coverage-receipt>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--hairline)}
.coverage-receipt>div>strong{color:#075d70;font-size:.9375rem}
.coverage-receipt .receipt-total{border-bottom:0;margin-top:12px;padding-top:20px;align-items:center;font-weight:750}
.coverage-receipt .receipt-total strong{font-size:2.1rem;color:var(--midnight)}
.coverage-receipt>p:last-child{font-size:.875rem;color:#475968;margin-bottom:0}
.value-section{background:#e4e0d7}
.value-title{display:grid;grid-template-columns:1fr 1fr;gap:0 8vw;align-items:center}
.value-title .eyebrow{grid-column:1/-1}
.value-title>p:not(.eyebrow){max-width:490px;color:#475968;font-size:1.08rem}
.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:36px}
.value-grid article{border-top:1px solid var(--hairline);padding-top:25px}
.value-grid article>span{font-size:.875rem;letter-spacing:.1em;color:#075d70;font-weight:900}
.value-grid h3{margin:18px 0 12px;font-size:1.5rem}
.value-grid p{color:#475968}
.pricing-faq{background:var(--paper)}
.pricing-faq a{text-underline-offset:4px}
.pricing-page footer{margin-top:0}
.pricing-page a:focus-visible,.pricing-page summary:focus-visible{outline:3px solid #087b89;outline-offset:5px}
.pricing-page .site-header a:focus-visible{outline-color:var(--signal)}
@media(max-width:960px){.pricing-hero{grid-template-columns:1fr;padding-top:145px;gap:40px}.pricing-intro{max-width:720px}.plan-card{width:100%;max-width:620px}.value-title{display:block}.value-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:680px){.pricing-hero{padding:135px 24px 70px}.included-summary{gap:20px;justify-content:space-between}.plan-card{padding:25px 22px}.coverage-section{padding:70px 24px}.coverage-receipt{padding:22px}.value-section,.pricing-faq{padding:70px 24px}.value-grid article{padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Platform availability follows the shared editorial card treatment. */
.platform-note{display:flex;flex-wrap:wrap;gap:8px 18px;margin:24px 0 0;font-size:.9375rem}
.platform-note a{color:var(--signal-soft);text-underline-offset:4px}
.platform-note span{color:#b8cad3}
.availability-section{background:var(--midnight);color:#fff}
.availability-section .eyebrow{color:#8ae4df}
.availability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18)}
.availability-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:34px;background:var(--midnight)}
.platform-status{font-size:.875rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--signal-soft)}
.availability-grid h3{font-size:1.6rem;margin:28px 0 12px}
.availability-grid p{color:#b8cad3;margin:0 0 28px;line-height:1.65}
.availability-grid .button,.platform-label{margin-top:auto;font-size:.9375rem}
.platform-label{padding:13px 0;color:var(--signal-soft)}
.platform-upcoming .platform-status,.platform-upcoming .platform-label{color:#c2cbd0}
@media(max-width:960px){.availability-grid{grid-template-columns:1fr}.availability-grid article{padding:30px}.availability-grid h3{margin-top:18px}}
@media(max-width:680px){.availability-section{padding:70px 24px}}
