*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#2b2330;background:#fdf9f8;line-height:1.65;font-size:17px}
a{color:#a8325e}
a:hover{color:#7d1f44}
h1,h2,h3{line-height:1.25;margin:0 0 .6em;color:#3a1f33}
h1{font-size:clamp(1.7rem,5vw,2.8rem)}
h2{font-size:clamp(1.4rem,3.5vw,2rem)}
h3{font-size:1.15rem}
p{margin:0 0 1em}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.site-header{background:#fff;border-bottom:1px solid #f0dfe4;position:sticky;top:0;z-index:10}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding-top:12px;padding-bottom:12px}
.logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.3rem;color:#a8325e;text-decoration:none}
.nav{display:flex;flex-wrap:wrap;gap:4px 16px}
.nav a{color:#3a1f33;text-decoration:none;font-size:.95rem;padding:4px 0;border-bottom:2px solid transparent}
.nav a:hover{border-color:#a8325e}
.hero{background:linear-gradient(135deg,#fbe3ea,#f3d5f0 60%,#e8dcf8);padding:56px 0}
.hero.small{padding:36px 0}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#a8325e;font-weight:700;margin-bottom:.8em}
.lead{font-size:1.15rem;max-width:760px}
.btn{display:inline-block;background:#a8325e;color:#fff;padding:13px 26px;border-radius:999px;text-decoration:none;font-weight:700;letter-spacing:.03em;margin-top:8px}
.btn:hover{background:#7d1f44;color:#fff}
.block{padding-top:40px;padding-bottom:12px}
.grid{display:grid;gap:20px;grid-template-columns:1fr;margin-bottom:20px}
.card,.offer,.post,.quote,.panel{background:#fff;border:1px solid #f0dfe4;border-radius:16px;padding:22px}
.card svg{color:#a8325e;margin-bottom:8px}
.num{display:inline-flex;width:38px;height:38px;border-radius:50%;background:#a8325e;color:#fff;align-items:center;justify-content:center;font-weight:700;margin-bottom:10px}
.steps{padding-left:22px}
.steps li{margin-bottom:.7em}
.ba{height:220px;border-radius:16px;background:linear-gradient(135deg,#d9c3b8,#bfa397);position:relative}
.ba.after{background:linear-gradient(135deg,#f6d9cf,#e9b9a9)}
.ba span{position:absolute;left:14px;bottom:12px;background:#fff;border-radius:999px;padding:3px 14px;font-size:.85rem;font-weight:700}
.note{font-size:.9rem;color:#6b5b66}
.quote{margin:0}
.quote footer span{display:block;font-size:.85rem;color:#6b5b66}
details{background:#fff;border:1px solid #f0dfe4;border-radius:12px;padding:14px 18px;margin-bottom:10px}
summary{cursor:pointer;font-weight:700}
details p{margin:.6em 0 0}
.panel{text-align:center;background:linear-gradient(135deg,#fff,#fbe9ee)}
.panel.soft{background:#f6effa}
.center{text-align:center}
.thumb{height:130px;border-radius:12px;margin-bottom:14px;background:linear-gradient(135deg,#f5c9d6,#d9c0f0)}
.t2{background:linear-gradient(135deg,#f9dcc4,#f2b8c6)}
.t3{background:linear-gradient(135deg,#cfe3f0,#e4cdf0)}
.t4{background:linear-gradient(135deg,#e8d5c4,#f4b9b0)}
.t5{background:linear-gradient(135deg,#d6ecd9,#f2d3e0)}
.t6{background:linear-gradient(135deg,#f3e2b8,#f0bfd0)}
.post h2{font-size:1.1rem}
.offer h3{color:#a8325e;font-size:1.3rem;margin-bottom:.2em}
.offer .sub{font-weight:700}
.offer ul{padding-left:18px;font-size:.95rem}
.offer .old{text-decoration:line-through;color:#8a7b85;margin-bottom:.2em}
.offer .price{font-size:1.3rem;margin-bottom:.2em}
.offer .price strong{color:#a8325e;font-size:1.8rem}
.offer .save{color:#2b7a4b;font-weight:700}
.checks{list-style:none;padding:0}
.checks li{padding:10px 0 10px 34px;position:relative;border-bottom:1px solid #f0dfe4}
.checks li::before{content:"";position:absolute;left:4px;top:15px;width:14px;height:8px;border-left:3px solid #a8325e;border-bottom:3px solid #a8325e;transform:rotate(-45deg)}
.site-footer{margin-top:50px;background:#3a1f33;color:#e9d9e2;padding:40px 0 24px}
.site-footer a{color:#fff}
.foot-grid{display:grid;gap:24px;grid-template-columns:1fr}
.foot-grid p{margin:.3em 0}
.partners{margin-top:24px;padding-top:16px;border-top:1px solid #5a3a52}
.copy{font-size:.85rem;opacity:.8;margin:0}
@media(min-width:700px){
.grid.two{grid-template-columns:repeat(2,1fr)}
.grid.three{grid-template-columns:repeat(2,1fr)}
.grid.four{grid-template-columns:repeat(2,1fr)}
.foot-grid{grid-template-columns:2fr 1fr 1fr}
}
@media(min-width:1000px){
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.four{grid-template-columns:repeat(4,1fr)}
}
