*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#F7F6F2;--surface:#fff;--surface2:#F0EFE9;--text:#1A1916;--muted:#6B6860;--accent:#BE185D;--border:#E5E3DC}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column}
header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 2rem;height:60px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.logo{font-family:'Playfair Display',serif;font-size:22px;color:var(--accent);text-decoration:none}.logo em{font-style:italic}
.nav-links{display:flex;gap:1.25rem;align-items:center}.nav-links a{font-size:13px;text-decoration:none;color:var(--muted);font-weight:500}.nav-links a:hover{color:var(--accent)}
@media(max-width:520px){.nav-links a:not(.nav-home):not(.nav-shop){display:none}}
.hero{background:linear-gradient(135deg,#9D174D,#BE185D);padding:2.5rem 2rem;text-align:center;color:white}
.hero-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.7);margin-bottom:.75rem}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,5vw,2.75rem);font-weight:700;line-height:1.15;margin-bottom:.5rem}.hero h1 em{font-style:italic}
.hero p{font-size:14px;color:rgba(255,255,255,.82);font-weight:300;max-width:480px;margin:0 auto}
main{flex:1;max-width:580px;margin:0 auto;width:100%;padding:2rem 1.5rem}
.calc-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.75rem;margin-bottom:1.5rem}
.field{margin-bottom:1.1rem}.field label{display:block;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}
.input-wrap{position:relative}.prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:15px;pointer-events:none}
.suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:15px;pointer-events:none}
input[type="number"]{width:100%;padding:.75rem 1rem;border:1.5px solid var(--border);border-radius:10px;font-size:18px;font-family:'Inter',sans-serif;color:var(--text);background:var(--bg);outline:none;transition:border-color .2s}
input[type="number"]:focus{border-color:var(--accent);background:white}
input.has-prefix{padding-left:28px}input.has-suffix{padding-right:40px}
.tip-btns{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}
.tip-btn{padding:.5rem 1rem;border:1.5px solid var(--border);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;background:var(--surface2);color:var(--text);transition:all .15s}
.tip-btn:hover{border-color:var(--accent);color:var(--accent)}
.tip-btn.active{border-color:var(--accent);background:var(--accent);color:white}
.results-card{background:linear-gradient(135deg,#9D174D,#BE185D);border-radius:20px;padding:1.75rem;margin-bottom:1.5rem;color:white}
.r-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.r-item{background:rgba(255,255,255,.15);border-radius:14px;padding:1rem;text-align:center}
.r-item .lbl{font-size:10px;opacity:.75;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem}
.r-item .val{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,5vw,2rem);font-weight:700}
.r-total{text-align:center;margin-bottom:.5rem}
.r-total .lbl{font-size:11px;opacity:.7;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem}
.r-total .val{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,8vw,3.5rem);font-weight:700;line-height:1}
.tip-table{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:1.5rem}
.tip-table .t-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;padding:.6rem 1.25rem;background:var(--surface2);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
td{padding:.65rem 1.25rem;border-bottom:1px solid var(--border)}.table-wrap tr:last-child td{border-bottom:none}
.ad-block{background:#f9f9f9;border:1px dashed #ddd;border-radius:12px;text-align:center;font-size:11px;color:var(--muted);margin-bottom:1.5rem;min-height:260px;display:flex;align-items:center;justify-content:center}
.content h2{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:400;margin:1.75rem 0 .75rem}
.content p{font-size:14px;color:#2C2B28;margin-bottom:1rem;line-height:1.7}
.faq{margin:2rem 0}.faq h2{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:400;margin-bottom:1rem}
.faq-item{border-bottom:1px solid var(--border);padding:1rem 0}
.faq-item h3{font-size:14px;font-weight:600;margin-bottom:.4rem}
.faq-item p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}
footer{background:var(--surface);border-top:1px solid var(--border);padding:1.5rem 2rem;text-align:center;font-size:12px;color:var(--muted)}
footer a{color:var(--accent);text-decoration:underline}
.pc-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.4rem 1.5rem;margin-bottom:1rem}
.pc-card h2{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem}
.pc-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:16px;color:var(--text)}
.pc-row input[type="number"]{width:110px;padding:.55rem .7rem;font-size:17px}
.pc-out{margin-top:1rem;background:linear-gradient(135deg,#9D174D,#BE185D);color:white;border-radius:14px;padding:.9rem 1.1rem;display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.pc-out .val{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,6vw,2.1rem);font-weight:700;line-height:1.1}
.pc-out .how{font-size:12px;opacity:.85}
.pc-out.neg{background:linear-gradient(135deg,#9F1239,#BE123C)}
.pc-out.pos{background:linear-gradient(135deg,#047857,#059669)}
.pc-copy{background:rgba(255,255,255,.18);border:0;color:white;border-radius:8px;padding:.35rem .7rem;font-size:12px;font-weight:600;cursor:pointer}
.pc-copy:hover{background:rgba(255,255,255,.3)}
.related-links{padding:1rem 1.25rem 1.25rem;font-size:13px;line-height:1.8}
.related-links a{color:var(--accent)}
.dd-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.dd-grid label{display:block;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem}
.dd-grid input,.dd-grid select{width:100%;padding:.65rem .7rem;border:1.5px solid var(--border);border-radius:10px;font-size:16px;font-family:inherit;color:var(--text);background:var(--bg);outline:none}
.dd-grid input:focus,.dd-grid select:focus{border-color:var(--accent);background:white}
.dd-full{grid-column:1/-1}
.dd-big{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,6.5vw,2.3rem);font-weight:700;line-height:1.1}
.dd-out{margin-top:1rem;background:linear-gradient(135deg,#9D174D,#BE185D);color:white;border-radius:16px;padding:1.1rem 1.25rem}
.dd-out .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.85;font-weight:600}
.dd-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.9rem}
.dd-stats div{background:rgba(255,255,255,.14);border-radius:10px;padding:.55rem .6rem}
.dd-stats b{display:block;font-size:16px}
.dd-stats span{font-size:11px;opacity:.85}
.dd-bar{height:10px;background:rgba(255,255,255,.22);border-radius:6px;overflow:hidden;margin-top:.9rem}
.dd-bar i{display:block;height:100%;background:white;border-radius:6px}
.dd-tl{list-style:none;margin-top:.4rem}
.dd-tl li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--border);font-size:14px}
.dd-tl li:last-child{border-bottom:0}
.dd-tl li.past{color:var(--muted);text-decoration:line-through}
.dd-tl li.next{font-weight:600;color:var(--accent)}
.dd-tl .d{white-space:nowrap;color:var(--muted);font-size:13px}
.dd-note{font-size:12px;color:var(--muted);margin-top:.7rem;line-height:1.5}
@media(max-width:420px){.dd-stats b{font-size:14px}}
