:root{--ac:#8e1b3f;--dk:#241519;--gr:#1f4d3a;--bg:#fbf3f5;--ln:#ecd6dc;--out:#c9a9b2;--gold:#e8b84a}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--out);transition:background .5s;font-family:Manrope,Arial,sans-serif;color:var(--dk);line-height:1.5}
.col{max-width:480px;margin:0 auto;background:#fff;overflow:hidden;position:relative}
.blk{padding:30px 18px;border-bottom:8px solid var(--bg);position:relative;transition:background .5s}.blk:nth-of-type(even){background:linear-gradient(var(--bg),#fff 60%)}
h1,h2{font-family:'Playfair Display',Georgia,serif;line-height:1.15}
h2{font-size:27px;text-align:center;margin-bottom:16px}
p{font-size:16px;margin-bottom:10px}
img{display:block;width:100%;height:auto;border-radius:14px}
/* таймер */
.tm{text-align:center}.tm b{display:block;font-size:15px;margin-bottom:8px}
.tm .cells{display:flex;gap:10px;justify-content:center}
.cell{background:var(--gr);transition:background .5s;color:#fff;border-radius:12px;width:84px;padding:10px 0}
.cell span{display:block;font-size:34px;font-weight:800;line-height:1}.cell i{font-style:normal;font-size:12px;opacity:.75}
.ban{background:var(--ac);color:#fff;text-align:center;font-weight:800;font-size:15px;padding:12px;border-radius:12px;margin:14px 0}
/* бейджі */
.bd{display:flex;gap:8px;margin:14px 0}.bd div{flex:1;background:var(--bg);border:1px solid var(--ln);border-radius:12px;text-align:center;font-size:12px;font-weight:600;padding:10px 4px}.bd em{display:block;font-style:normal;font-size:24px}
/* ціна */
.pr{text-align:center;margin:12px 0}.old{color:#999;text-decoration:line-through;font-size:18px}
.disc{display:inline-block;background:#ffd23f;color:#000;font-weight:800;border-radius:30px;padding:4px 14px;margin:6px 0;font-size:16px}
.new{font-size:52px;font-weight:800;color:var(--ac);line-height:1.1}
.btn{display:block;width:100%;background:var(--ac);color:#fff;border:0;border-radius:16px;padding:18px;font:800 19px Manrope,sans-serif;text-align:center;text-decoration:none;cursor:pointer;animation:pl 1.8s infinite}
@keyframes pl{0%,100%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--ac) 55%,transparent)}50%{transform:scale(1.03);box-shadow:0 0 0 12px color-mix(in srgb,var(--ac) 0%,transparent)}}
@media(prefers-reduced-motion:reduce){.btn{animation:none}}
.chk{list-style:none;margin:18px 0}.chk li{padding:6px 0 6px 32px;position:relative;font-weight:600}.chk li:before{content:"✓";position:absolute;left:0;top:5px;width:22px;height:22px;border-radius:50%;background:var(--gr);color:#fff;text-align:center;font-size:14px;line-height:22px}
.left{text-align:center;margin-top:14px;font-size:17px}.left b{color:var(--ac);font-size:22px}
.sub{text-align:center;color:var(--gr);font-weight:800;margin:6px 0 14px}
/* переваги */
.adv{margin-bottom:26px}.adv .n{font-family:'Playfair Display',serif;font-size:64px;color:var(--ln);font-weight:800;line-height:1}.adv h3{font-size:21px;margin:8px 0 4px}
/* кольори */
.sw{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sw button{border:2px solid var(--ln);background:#fff;border-radius:12px;padding:4px;font:700 11.5px Manrope,sans-serif;cursor:pointer;color:var(--dk)}.sw button.on{border-color:var(--ac);background:var(--bg)}.sw img{border-radius:8px;margin-bottom:4px;aspect-ratio:1;object-fit:cover}
/* характеристики */
.sp{list-style:none;margin:16px 0}.sp li{padding:10px 0;border-bottom:1px solid var(--ln)}
/* відгуки */
.rt{text-align:center;margin-bottom:16px}.rt .big{font-size:56px;font-weight:800;color:var(--ac);line-height:1}.rt .st{color:#f5a623;font-size:24px}
.rv{border:1px solid var(--ln);border-radius:14px;padding:14px;margin-bottom:12px}.rv .hd{display:flex;gap:12px;align-items:center;margin-bottom:8px}
.av{width:44px;height:44px;border-radius:50%;background:var(--ac);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:20px}
.rv small{color:#777;display:block;font-size:12px}.rv .ok{color:var(--gr);font-weight:700}
/* кроки */
.stp{display:flex;gap:14px;margin-bottom:16px}.stp .c{flex:none;width:42px;height:42px;border-radius:50%;background:var(--gr);color:#fff;font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center}.stp h3{font-size:18px}.stp p{margin:0}
/* форма */
form{background:var(--bg);border:1px solid var(--ln);border-radius:16px;padding:18px;margin:18px 0}
form h3{font-family:'Playfair Display',serif;font-size:23px;text-align:center;margin-bottom:12px}
input,select{width:100%;padding:15px;border:2px solid var(--ln);border-radius:12px;font:600 16px Manrope,sans-serif;margin-bottom:12px;background:#fff}
input.err{border-color:#d11}.msg{display:none;text-align:center;font-weight:800;color:var(--gr);font-size:18px;padding:20px}
footer{padding:22px;text-align:center;font-size:13px;color:#777}footer a{color:#777}

.bar{background:var(--gr);color:#fff;text-align:center;font-weight:800;font-size:13px;padding:8px;transition:background .5s;letter-spacing:.3px}
.gl{display:flex;justify-content:space-around;height:30px;background:linear-gradient(var(--gr),var(--gr)) 0 0/100% 3px no-repeat;margin:0;position:relative;top:-1px}
.gl i{width:14px;height:20px;border-radius:50% 50% 50% 50%/40% 40% 60% 60%;margin-top:3px;animation:bl 1.6s infinite;box-shadow:0 0 12px 2px currentColor}
.gl i:nth-child(4n+1){background:var(--ac);color:var(--ac)}.gl i:nth-child(4n+2){background:var(--gold);color:var(--gold);animation-delay:.4s}.gl i:nth-child(4n+3){background:#fff;color:#fff;animation-delay:.8s}.gl i:nth-child(4n){background:var(--gr);color:var(--gr);animation-delay:1.2s}
@keyframes bl{0%,100%{opacity:1}50%{opacity:.35}}
h2:before{content:"❄ ";color:var(--ac)}h2:after{content:" ❄";color:var(--ac)}
img[data-k]{aspect-ratio:1/1;object-fit:cover;transition:opacity .25s;background:var(--bg)}.hero{border:3px solid var(--gold);box-shadow:0 10px 28px color-mix(in srgb,var(--ac) 30%,transparent)}
.ban{background:linear-gradient(90deg,var(--ac),var(--gr),var(--ac));background-size:200% 100%;animation:sh 6s linear infinite}
@keyframes sh{to{background-position:200% 0}}
.sw button.on{border-color:var(--ac);background:var(--bg);transform:scale(1.04);box-shadow:0 4px 12px color-mix(in srgb,var(--ac) 35%,transparent)}
.snow{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:50}
.snow span{position:absolute;top:-30px;color:#fff;text-shadow:0 0 3px rgba(0,0,0,.18);animation:fall linear infinite}
@keyframes fall{to{transform:translateY(105vh) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.snow,.gl i,.ban{animation:none}}
