:root {
    --paper:#f6fdff;
    --white:#ffffff;
    --mist:#dbf3f5;
    --sky:#b6e8ed;
    --pink:#b43870;
    --pink-light:#fae5ee;
    --pink-deep:#92345f;
    --ink:#426478;
    --soft:#567d8b;
    --line:#bed9dd;
    --gold:#ffd17f;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif; color:var(--ink); }
.wrap { width:min(1272px,calc(100% - 70px)); margin-inline:auto; }
h1,h2,h3,p,ul,dl { margin-top:0; }
h1 { font-size:40px; line-height:1.14; letter-spacing:-.035em; font-weight:820; overflow-wrap:anywhere; margin-bottom:19px; }
h2 { font-size:28px; line-height:1.26; letter-spacing:-.025em; font-weight:790; overflow-wrap:anywhere; margin-bottom:18px; }
h3 { font-size:20px; line-height:1.25; font-weight:780; margin-bottom:10px; }
p { font-size:16px; line-height:1.66; margin-bottom:15px; }
p:last-child { margin-bottom:0; }
a { color:inherit; }
a:focus-visible { outline:3px solid #d17b39; outline-offset:3px; }
a:hover { color:var(--pink); }
.masthead { background:var(--white); border-bottom:1px solid var(--line); }
.masthead-top { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 0 14px; }
.brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; font-size:24px; font-weight:850; letter-spacing:-.045em; white-space:nowrap; color:var(--pink); }
.brand-sign { width:34px; height:36px; background:var(--pink); border:4px solid var(--pink); display:block; position:relative; border-radius:4px; }
.brand-sign::before { content:""; width:18px; height:17px; position:absolute; left:4px; bottom:3px; border:4px solid var(--white); border-radius:50%; }
.brand-sign::after { content:""; position:absolute; left:4px; top:3px; width:18px; border-top:3px solid var(--gold); }
.top-availability { font-size:13px; color:var(--soft); line-height:1.5; text-align:right; }
.top-availability strong { display:block; color:var(--pink); font-size:13px; }
.navigation { background:var(--pink-light); border-top:1px solid var(--line); }
.nav-inner { display:flex; align-items:center; gap:1px; }
.nav-inner a { text-decoration:none; font-size:15px; font-weight:750; padding:13px 20px; border-left:1px solid rgba(180,56,112,.2); }
.nav-inner a:last-child { border-right:1px solid rgba(180,56,112,.2); }
.nav-inner a:hover,.nav-inner a[aria-current="page"] { color:var(--white); background:var(--pink); }
.dossier { background:var(--white); border-bottom:4px solid var(--pink); }
.dossier-grid { display:grid; grid-template-columns:minmax(0,1.95fr) minmax(250px,.92fr); align-items:stretch; }
.dossier-body { padding:32px clamp(22px,4.8vw,75px) 31px 0; }
.eyebrow { color:var(--pink); text-transform:uppercase; letter-spacing:.15em; font-size:12px; font-weight:850; margin:0 0 17px; }
.dossier-body p { max-width:750px; }
.cta-pair { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.btn { text-decoration:none; display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:11px 17px; border:2px solid var(--pink); background:var(--pink); color:var(--white); font-size:15px; font-weight:800; }
.btn--alt { background:var(--white); color:var(--pink-deep); }
.btn:hover,.btn:focus-visible { background:var(--ink); border-color:var(--ink); color:var(--white); }
.btn:active { transform:translateY(1px); }
.diagram { background:var(--mist); border-left:1px solid var(--line); padding:20px 26px 23px; display:flex; flex-direction:column; justify-content:flex-start; }
.diagram-label { font-size:12px; font-weight:820; letter-spacing:.11em; text-transform:uppercase; border-bottom:1px solid #a8d3d7; padding-bottom:9px; color:var(--pink); }
.machine-art { width:min(100%,265px); height:178px; margin:16px auto 10px; position:relative; }
.machine-shell { position:absolute; left:calc(50% - 71px); top:2px; width:142px; height:164px; background:var(--white); border:7px solid var(--pink); border-radius:5px 5px 3px 3px; box-shadow:10px 7px 0 #a1d4d9; }
.machine-shell::before { content:""; position:absolute; top:24px; width:100%; left:0; border-top:5px solid var(--pink); }
.machine-shell::after { content:""; position:absolute; width:84px; height:84px; border:7px solid var(--pink); background:var(--sky); border-radius:50%; bottom:9px; left:calc(50% - 42px); box-shadow:inset 0 0 0 11px var(--white); }
.machine-button { position:absolute; z-index:1; top:15px; left:calc(50% - 48px); background:var(--gold); border-radius:50%; width:9px; height:9px; box-shadow:22px 0 0 var(--pink); }
.machine-art::before { content:""; position:absolute; top:54px; left:4px; width:43px; border-top:2px dashed var(--pink); }
.machine-art::after { content:""; position:absolute; bottom:32px; right:0; width:39px; border-top:2px dashed var(--pink); }
.machine-art--cold .machine-shell { width:111px; height:168px; left:calc(50% - 56px); }
.machine-art--cold .machine-shell::before { top:66px; }
.machine-art--cold .machine-shell::after { width:5px; height:26px; left:auto; right:10px; top:30px; bottom:auto; border:0; border-radius:0; background:var(--pink); box-shadow:0 56px 0 var(--pink); }
.machine-art--cold .machine-button { display:none; }
.machine-art--heat .machine-shell { width:155px; height:155px; left:calc(50% - 77px); top:6px; }
.machine-art--heat .machine-shell::before { top:32px; }
.machine-art--heat .machine-shell::after { width:107px; height:83px; left:calc(50% - 53px); bottom:9px; background:var(--sky); border-radius:3px; border:6px solid var(--pink); box-shadow:inset 0 0 0 8px var(--white); }
.diagram-caption { border-top:1px solid #a8d3d7; padding-top:9px; }
.diagram-caption p { font-size:16px; margin:0; line-height:1.5; }
.factline { border-bottom:1px solid var(--line); background:var(--sky); }
.factline-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.factline-list li { padding:16px 20px; border-right:1px solid #9bd5d9; font-size:14px; font-weight:720; }
.factline-list li:first-child { padding-left:0; }
.factline-list li:last-child { border-right:0; }
.factline-list b { color:var(--pink); }
.section { padding:38px 0 40px; border-bottom:1px solid var(--line); }
.section--white { background:var(--white); }
.section--tinted { background:var(--pink-light); }
.section--plain { background:var(--paper); }
.editorial { display:grid; grid-template-columns:minmax(0,2fr) minmax(235px,1fr); gap:clamp(25px,4vw,63px); align-items:start; }
.editorial--inverse { grid-template-columns:minmax(235px,1fr) minmax(0,2fr); }
.prose p:last-child { margin-bottom:0; }
.side-note { border-top:4px solid var(--pink); border-bottom:1px solid var(--line); padding:17px 18px 17px; background:var(--white); }
.side-note h3 { font-size:18px; margin-bottom:11px; }
.side-note p { font-size:16px; margin-bottom:9px; line-height:1.56; }
.side-note li { font-size:14px; line-height:1.55; padding:5px 0; }
.side-note ul { padding-left:19px; margin:0; }
.side-note--blue { background:var(--mist); border-top-color:var(--pink); }
.side-note--pink { background:var(--pink); border:0; color:var(--white); }
.side-note--pink h3 { color:var(--white); }
.side-note--pink p { color:var(--white); }
.note-caption { display:block; font-size:12px; font-weight:850; color:var(--pink); letter-spacing:.1em; text-transform:uppercase; margin-bottom:12px; }
.side-note--pink .note-caption { color:var(--gold); }
.rowledger { margin-top:22px; border-top:2px solid var(--pink); }
.ledger-item { display:grid; grid-template-columns:175px minmax(0,1fr); gap:18px; padding:18px 0 16px; border-bottom:1px solid var(--line); }
.ledger-item h3 { font-size:19px; margin:0; color:var(--pink-deep); }
.ledger-item p { margin:0; }
.ledger-item:last-child { border-bottom:0; }
.diagnostic { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:2px solid var(--pink); margin-top:20px; }
.diagnostic article { padding:16px 24px 9px 0; border-right:1px solid var(--line); }
.diagnostic article + article { padding-left:24px; }
.diagnostic article:last-child { border-right:0; }
.diagnostic b { display:block; font-size:12px; letter-spacing:.11em; color:var(--pink); padding-bottom:10px; }
.diagnostic h3 { font-size:18px; }
.diagnostic p { font-size:16px; }
.action-band { padding:24px 0; background:var(--mist); border-block:1px solid var(--line); }
.action-band-inner { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.action-band h2 { margin:0 0 6px; }
.action-band p { margin:0; font-size:16px; }
.action-band .cta-pair { margin:0; flex:0 0 auto; }
.terms { width:100%; border-collapse:collapse; margin-top:12px; }
.terms th,.terms td { text-align:left; vertical-align:top; font-size:15px; padding:12px 13px; border-bottom:1px solid var(--line); }
.terms th { width:31%; font-weight:780; color:var(--pink-deep); }
.terms tr:first-child { border-top:3px solid var(--pink); }
.extra-copy { padding:17px 0 19px; }
.extra-copy p { font-size:14px; color:var(--soft); margin:0; }
.footer { background:var(--pink); color:var(--white); padding:22px 0; }
.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.footer strong { font-size:19px; letter-spacing:-.02em; }
.footer nav { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.footer a { text-decoration:none; font-weight:700; font-size:14px; }
.footer a:hover { color:var(--gold); }
.footer .quiet { font-size:12px; font-weight:500; opacity:.85; }
@media(max-width:1050px) {
    .wrap { width:calc(100% - 52px); }
    .dossier-grid { grid-template-columns:minmax(0,1.7fr) minmax(230px,.85fr); }
    .dossier-body { padding-right:32px; }
    .editorial,.editorial--inverse { gap:27px; grid-template-columns:minmax(0,1.8fr) minmax(225px,1fr); }
    .editorial--inverse { grid-template-columns:minmax(225px,1fr) minmax(0,1.8fr); }
    .factline-list li { padding-inline:13px; }
}
@media(max-width:820px) {
    .dossier-grid { grid-template-columns:minmax(0,1fr); }
    .dossier-body { padding-right:0; }
    .diagram { border-left:0; border-top:1px solid var(--line); display:grid; grid-template-columns:minmax(0,1fr) 165px; align-items:center; gap:10px 22px; }
    .diagram-label { grid-column:1; align-self:end; }
    .diagram .machine-art { grid-column:2; grid-row:1 / span 2; transform:scale(.82); transform-origin:center; width:185px; margin:-5px auto; }
    .diagram-caption { grid-column:1; border-top:0; }
    .editorial,.editorial--inverse { grid-template-columns:minmax(0,1fr); }
    .editorial--inverse .side-note { order:2; }
    .editorial--inverse .prose { order:1; }
    .side-note { padding:14px 18px; }
    .action-band-inner { align-items:flex-start; flex-direction:column; }
    .action-band .cta-pair { margin-top:1px; }
}
@media(max-width:580px) {
    .wrap { width:calc(100% - 32px); }
    .masthead-top { padding:15px 0; align-items:flex-start; flex-direction:column; gap:9px; }
    .top-availability { text-align:left; }
    .top-availability strong { display:inline; margin-right:8px; }
    .nav-inner { flex-wrap:wrap; }
    .nav-inner a { flex:1 1 auto; text-align:center; padding:11px 9px; font-size:14px; }
    .dossier-body { padding:24px 0 27px; }
    .diagram { padding:12px 15px; grid-template-columns:minmax(0,1fr) 115px; gap:5px; }
    .diagram .machine-art { transform:scale(.62); transform-origin:35% center; width:140px; margin-left:-18px; }
    .factline-list { grid-template-columns:minmax(0,1fr); }
    .factline-list li,.factline-list li:first-child { padding:10px 0; border-right:0; border-bottom:1px solid #9bd5d9; }
    .section { padding:29px 0 30px; }
    .ledger-item { grid-template-columns:minmax(0,1fr); gap:6px; padding:14px 0; }
    .diagnostic { grid-template-columns:minmax(0,1fr); }
    .diagnostic article,.diagnostic article + article { border-right:0; border-bottom:1px solid var(--line); padding:13px 0; }
    .diagnostic article:last-child { border-bottom:0; }
    .cta-pair { flex-direction:column; align-items:stretch; }
    .footer-inner { align-items:flex-start; flex-direction:column; }
    .terms th,.terms td { font-size:14px; padding:11px 7px; }
    .terms th { width:39%; }
}
.sitehead { display:flex; align-items:center; justify-content:space-between; gap:26px; padding-block:19px; }
.site-nav { display:flex; align-items:center; gap:0; margin-left:auto; }
.site-nav a { text-decoration:none; font-size:14px; font-weight:800; padding:10px 15px; border-bottom:3px solid transparent; white-space:nowrap; }
.site-nav a:hover,.site-nav a[aria-current="page"] { border-bottom-color:var(--pink); color:var(--pink); }
.top-availability { font-size:12px; text-align:left; border-left:2px solid var(--line); padding-left:16px; white-space:nowrap; }
.masthead { border-bottom:4px solid var(--gold); }
.dossier { background:var(--pink); color:var(--white); border-bottom:0; }
.dossier-body { padding-block:36px 38px; }
.dossier-body h1,.dossier-body p { color:var(--white); }
.eyebrow { color:var(--gold); }
.dossier .btn { background:var(--gold); border-color:var(--gold); color:var(--pink-deep); }
.dossier .btn--alt { background:transparent; border-color:var(--white); color:var(--white); }
.dossier .btn:hover { background:var(--white); border-color:var(--white); color:var(--pink-deep); }
.dossier .diagram { background:var(--sky); color:var(--ink); border-left:0; border-top:0; padding-top:24px; }
.factline { background:var(--white); }
.factline-list { display:flex; flex-wrap:wrap; gap:12px 25px; padding:15px 0; }
.factline-list li,.factline-list li:first-child { padding:0; border:0; font-size:13px; }
.factline-list b { color:var(--pink); }
.diagnostic { display:block; border-top:0; margin-top:21px; }
.diagnostic article,.diagnostic article + article,.diagnostic article:last-child { display:grid; grid-template-columns:125px 250px minmax(0,1fr); gap:19px; align-items:start; border-right:0; border-bottom:1px solid var(--line); padding:16px 0 17px; }
.diagnostic article:first-child { border-top:3px solid var(--pink); }
.diagnostic b { padding:4px 0 0; }
.diagnostic h3 { margin:0; }
.diagnostic p { margin:0; }
.action-band { background:var(--pink-deep); color:var(--white); border-bottom:0; }
.action-band h2,.action-band p { color:var(--white); }
.action-band .btn { background:var(--gold); border-color:var(--gold); color:var(--pink-deep); }
.action-band .btn--alt { background:transparent; border-color:var(--white); color:var(--white); }
.action-band .btn:hover { background:var(--white); border-color:var(--white); color:var(--pink-deep); }
@media(max-width:1180px) {
    .sitehead { gap:12px; }
    .site-nav a { padding:9px 10px; }
    .top-availability { font-size:11px; padding-left:10px; }
}
@media(max-width:920px) {
    .sitehead { flex-wrap:wrap; gap:12px 22px; }
    .site-nav { order:3; width:100%; margin:0; border-top:1px solid var(--line); padding-top:3px; }
    .site-nav a { flex:1 1 auto; text-align:center; }
    .top-availability { margin-left:auto; }
    .diagnostic article,.diagnostic article + article,.diagnostic article:last-child { grid-template-columns:100px minmax(160px,.75fr) minmax(0,1fr); gap:12px; }
}
@media(max-width:580px) {
    .sitehead { padding-block:11px; }
    .top-availability { white-space:normal; border-left:0; padding:0; margin-left:0; text-align:left; }
    .site-nav { flex-wrap:wrap; }
    .site-nav a { flex:1 1 40%; }
    .dossier-body { padding:25px 0; }
    .factline-list { gap:9px; }
    .factline-list li,.factline-list li:first-child { flex:1 1 100%; }
    .diagnostic article,.diagnostic article + article,.diagnostic article:last-child { display:block; padding:15px 0; }
    .diagnostic b { margin-bottom:7px; }
    .diagnostic h3 { margin:0 0 8px; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
