:root{--r-lg:8px;--r-sm:5px}
.page-intro{padding-block:56px 20px}
.page-intro h1{font-size:clamp(2.8rem,5vw,4rem);max-width:18ch}
.page-intro>p:not(.breadcrumbs){color:var(--muted);max-width:60ch;margin-top:24px}
.page-intro>.text-link{margin-top:20px}
.breadcrumbs{font:500 .85rem var(--sans);color:var(--muted);margin-bottom:28px}
.pricing-intro{max-width:70ch;margin-bottom:28px}
.pricing-intro p{margin-top:20px;color:var(--muted)}
.platform-note{font-size:1rem;color:var(--muted)}
.plan-for{margin-top:12px}
.plan li{margin-block:12px}
/* Estimator */
.estimator{margin-top:2rem;display:grid;grid-template-columns:1.3fr .7fr;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line)}
@media (max-width:900px){.estimator{grid-template-columns:1fr}}
.estimate-disclosure{margin-top:2rem}
.estimate-disclosure > summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 0;border-block:1px solid var(--line);cursor:pointer;list-style:none;font:700 1.05rem var(--sans)}
.estimate-disclosure > summary::-webkit-details-marker{display:none}
.estimate-disclosure .estimator{margin-top:1rem}
.est-form{background:var(--surface);padding:2rem;display:grid;gap:1.75rem}
.est-form h3{margin-bottom:.25rem}
.est-form > p{color:var(--muted);font-size:1rem;margin-top:-1.25rem}
fieldset{border:0;padding:0;margin:0}
legend{font-family:var(--sans);font-weight:600;font-size:.95rem;margin-bottom:.7rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip-note{color:var(--muted);font-size:.9rem;margin:.6rem 0 0}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:block;font-family:var(--sans);font-size:.92rem;font-weight:500;padding:.55rem 1rem;border:1px solid var(--line);border-radius:999px;transition:background .2s,border-color .2s,color .2s}
.chip span em{font-style:normal;color:var(--muted);margin-left:.35rem}
.chip input:checked + span{background:var(--estuary);border-color:var(--estuary);color:var(--on-btn)}
.chip input:checked + span em{color:inherit;opacity:.8}
.chip input:focus-visible + span{outline:3px solid var(--gorse);outline-offset:2px}
.chip.is-included{opacity:.72}
.chip.is-included span{border-style:dashed}
.chip.is-included span em{color:var(--estuary);font-weight:600}
.est-total{background:var(--slate);color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:center;gap:1.25rem;font-family:var(--sans)}
.est-total dl{margin:0;display:grid;gap:1.25rem}
.est-total dt{font-size:.9rem;color:#B9CCC8}
.est-total dd{margin:0;font-size:2.6rem;font-weight:800;letter-spacing:-0.03em;line-height:1.1}
.est-total dd small{font-size:1rem;font-weight:500;color:#B9CCC8}
.est-total .bump{animation:bump .35s var(--ease)}
@keyframes bump{40%{transform:scale(1.06);color:var(--gorse)}}
.est-total p{font-size:.85rem;color:#B9CCC8;font-family:var(--serif)}
.est-total .btn{background:var(--gorse);border-color:var(--gorse);color:#17232B}



/* Care and pay monthly */
.care{margin-top:1.25rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
@media (max-width:900px){.care{grid-template-columns:1fr}}
.care-card{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.75rem;display:flex;flex-direction:column;gap:.5rem;background:var(--estuary-soft)}
.care-card p{color:var(--muted);font-size:1rem;flex:1}
.care-card .care-price{font-family:var(--sans);font-weight:800;font-size:1.9rem;letter-spacing:-0.03em;color:var(--ink);flex:none}
.care-price small{font-size:.9rem;font-weight:500;color:var(--muted);letter-spacing:0}
.care-card.monthly{background:transparent;border:2px dashed var(--estuary)}
.est-note{font-size:.85rem;color:var(--gorse)!important;font-family:var(--sans)!important;min-height:1.2em}
fieldset:disabled{opacity:.4}


.chip input{width:auto}
.chip span{border-color:var(--control);min-height:44px}
.chip input:focus-visible+span{outline-color:var(--focus)}
.chip input:checked+span{background:var(--btn);border-color:var(--btn)}
fieldset:disabled{opacity:.7}
.est-total{background:#17313A}
.est-total a:focus-visible{outline-color:#E8BE55}
.care-card{border-radius:8px}
.est-form,.est-total{padding:28px}
@media(max-width:760px){.page-intro{padding-top:32px}.est-form,.est-total{padding:22px}.estimator{grid-template-columns:1fr}}

