:root{--cream:#faf6ef;--paper:#fff;--ink:#1f2421;--muted:#5b625d;--line:#e6dfd3;--cedar:#8a4b2a;--cedar-dark:#6b3820;--forest:#2f4a3a;--forest-soft:#e7eee8;--sun:#e3a33b;--sun-soft:#fbf0dc;--radius:12px;--max:1120px;--prose:720px;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--cream);color:var(--ink);font:17px/1.65 var(--sans);margin:0}img{max-width:100%;height:auto}a{color:var(--cedar);text-underline-offset:3px}a:hover{color:var(--cedar-dark)}h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);line-height:1.2}h1{margin:0 0 .5em;font-size:clamp(2rem,4vw,2.8rem)}h2{margin:2em 0 .6em;font-size:1.6rem}h3{margin:1.6em 0 .5em;font-size:1.25rem}.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}.prose{max-width:var(--prose)}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--forest);font-size:.78rem;font-weight:700}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;min-height:68px;display:flex}.logo{color:var(--ink);font-family:var(--serif);align-items:center;gap:10px;font-size:1.4rem;font-weight:700;text-decoration:none;display:flex}.logo:hover{color:var(--ink)}.nav{flex-wrap:wrap;gap:18px;display:flex}.nav a{color:var(--ink);font-size:.95rem;font-weight:600;text-decoration:none}.nav a:hover,.nav a[aria-current]{color:var(--cedar)}.hero{padding:64px 0 48px}.hero p{color:var(--muted);max-width:640px;font-size:1.2rem}.btn{background:var(--forest);color:#fff;border-radius:999px;padding:12px 20px;font-weight:700;text-decoration:none;display:inline-block}.btn:hover{color:#fff;background:#233a2d}.btn.alt{color:var(--forest);border:2px solid var(--forest);background:0 0;margin-left:10px}.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:grid}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:22px;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.card:hover{border-color:var(--cedar);color:var(--ink);transform:translateY(-2px)}.card h3{margin:.2em 0 .4em;font-size:1.15rem}.card p{color:var(--muted);margin:0;font-size:.95rem}section{margin:48px 0}.article-head{padding:40px 0 8px}.breadcrumb{color:var(--muted);font-size:.88rem}.breadcrumb a{color:var(--muted)}.meta{color:var(--muted);font-size:.9rem}.disclosure{background:var(--sun-soft);border-left:4px solid var(--sun);border-radius:6px;margin:18px 0 8px;padding:10px 14px;font-size:.9rem}.content{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);margin:16px 0 40px;padding:clamp(20px,4vw,44px)}.content>:first-child,.content>section:first-child>:first-child{margin-top:0}.content table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.95rem}.content th,.content td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 10px}.content th{background:var(--forest-soft);font-weight:700}.content blockquote{background:var(--forest-soft);border-left:4px solid var(--forest);border-radius:6px;margin:1.4em 0;padding:12px 18px}.content blockquote p{margin:.3em 0}.content code{background:#f3efe7;border-radius:4px;padding:1px 6px;font-size:.92em}.cta-box{background:var(--forest);color:#fff;border-radius:var(--radius);margin:28px 0;padding:20px 24px}.cta-box h3,.cta-box p{color:#fff;margin:.2em 0 .5em}.cta-box a.btn{background:var(--sun);color:var(--ink)}.faq dt{font-weight:700;font-family:var(--serif);margin-top:1em;font-size:1.08rem}.faq dd{margin:.3em 0 0}.calc{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,3vw,30px)}.calc table{border-collapse:collapse;width:100%}.calc th{text-align:left;color:var(--muted);padding:6px 4px;font-size:.85rem;font-weight:600}.calc td{padding:4px}.calc input,.calc select{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.calc .row-actions button,.calc .add{color:var(--cedar);cursor:pointer;font:inherit;background:0 0;border:none;font-weight:600}.calc .settings{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:18px 0;display:grid}.calc label{margin-bottom:4px;font-size:.88rem;font-weight:600;display:block}.results{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:18px;display:grid}.result{background:var(--forest-soft);border-radius:10px;padding:14px 16px}.result .num{font-family:var(--serif);color:var(--forest);font-size:1.7rem;font-weight:700}.result .lbl{color:var(--muted);font-size:.85rem}.site-footer{background:var(--forest);color:#dfe7e1;margin-top:60px;padding:40px 0;font-size:.92rem}.site-footer a{color:#fff}.site-footer .cols{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;display:grid}.site-footer h4{color:#fff;font-family:var(--sans);margin:0 0 .6em;font-size:.95rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:.3em 0}.small{opacity:.85;margin-top:24px;font-size:.82rem}.content p.cta{flex-wrap:wrap;gap:10px;margin:18px 0 28px;display:flex}.content p.cta a.btn{background:var(--sun);color:var(--ink);text-decoration:none}.content p.cta a.btn:hover{filter:brightness(.95);color:var(--ink)}.content .cta-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:18px 0 28px;display:grid}.content .cta-card{border-radius:var(--radius);text-align:center;background:#fff;border:1px solid #e7e1d4;flex-direction:column;align-items:center;gap:14px;padding:18px;display:flex}.content .cta-card img{object-fit:contain;width:100%;max-width:240px;height:180px;box-shadow:none;background:0 0;border:0;margin:0}.content .cta-card a.btn{background:var(--sun);color:var(--ink);text-decoration:none}.calc .calc-verdict{background:var(--cream,#f6f1e7);border-radius:10px;margin:16px 0 0;padding:12px 16px;font-weight:600}#cpap-calc .settings{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
