*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --black:#0a0a0a;--ink:#111;--charcoal:#1e1e1e;
  --mid:#555;--light:#8c8c8c;--border:#e0e0e0;
  --white:#fff;--off:#f8f8f8;
}
html{scroll-behavior:smooth;overflow-x:clip}
body{background:var(--white);color:var(--black);font-family:'Inter',sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button{font-family:inherit;cursor:pointer}

/* ── Топ-бар ── */
.topbar{background:var(--black);color:rgba(255,255,255,.92);text-align:center;
  padding:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:300;
  display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.tb-timer{color:#fff;font-weight:600;letter-spacing:.12em;font-variant-numeric:tabular-nums}

/* ── Хедер ── */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.hdr{max-width:1380px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;height:68px}
.nav-l,.nav-r{display:flex;gap:28px;align-items:center}
.nav-r{justify-content:flex-end}
nav a,nav button.nav-link{background:none;border:none;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:500;
  color:var(--ink);padding:4px 0;position:relative}
nav a::after,nav button.nav-link::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;
  background:var(--black);transform:scaleX(0);transition:transform .25s}
nav a:hover::after,nav button.nav-link:hover::after{transform:scaleX(1)}
.logo{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:300;
  letter-spacing:.18em;text-transform:uppercase;text-align:center;color:var(--black);white-space:nowrap}
.logo em{font-style:normal;font-weight:600}
.icon-btn{background:none;border:none;width:36px;height:36px;display:flex;
  align-items:center;justify-content:center;color:var(--ink)}
.icon-btn svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none}
.cart-badge{position:relative;display:inline-flex}
.badge{position:absolute;top:-6px;right:-8px;background:var(--black);color:var(--white);
  font-size:10px;width:17px;height:17px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-weight:600}
@media(max-width:760px){.nav-l{display:none}}

/* ── Герой ── */
.hero{position:relative;height:88vh;min-height:540px;overflow:hidden;
  background:var(--black);display:flex;align-items:flex-end}
.hero-bg{position:absolute;inset:0;
  background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 60%,#0f0f0f 100%)}
.hero-bg::before{content:'';position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 79px,rgba(255,255,255,.025) 80px),
  repeating-linear-gradient(90deg,transparent,transparent 79px,rgba(255,255,255,.025) 80px)}
.hero-ov{position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.25) 60%,transparent 100%)}
.hero-strip{position:absolute;inset:0;display:flex;gap:2px;opacity:.35;filter:grayscale(60%)}
.hero-strip img{flex:1;height:100%;object-fit:cover;min-width:0}
.hero-cnt{position:relative;z-index:2;padding:0 8% 72px;max-width:660px}
.hero-eye{font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.68);margin-bottom:18px;font-weight:300}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(40px,7vw,82px);
  font-weight:300;line-height:1;color:var(--white);margin-bottom:20px}
.hero-title em{font-style:italic}
.hero-sub{font-size:11px;letter-spacing:.12em;color:rgba(255,255,255,.75);
  margin-bottom:34px;font-weight:300;line-height:1.9}
.btn-pri{display:inline-flex;align-items:center;gap:10px;background:var(--white);
  color:var(--black);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;padding:14px 32px;border:none;transition:opacity .2s}
.btn-pri:hover{opacity:.87}
.btn-ghost{display:inline-flex;align-items:center;gap:10px;background:transparent;
  color:var(--white);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:500;padding:14px 32px;border:1px solid rgba(255,255,255,.55);
  transition:border-color .2s;margin-left:12px;cursor:pointer}
.btn-ghost:hover{border-color:var(--white)}

/* ── Бегущая строка ── */
.mq-wrap{border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  overflow:hidden;padding:14px 0;background:var(--black)}
.mq-track{display:flex;gap:48px;white-space:nowrap;
  animation:mq 30s linear infinite;width:max-content}
.mq-track span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.62);font-weight:300}
.mq-dot{font-size:8px;opacity:.3;align-self:center}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ── Секция заголовок ── */
.sec-head{text-align:center;padding:60px 20px 40px}
.sec-eye{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mid);
  font-weight:400;display:block;margin-bottom:14px}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,42px);
  font-weight:300;letter-spacing:.05em}
.sec-title em{font-style:italic}
.sec-line{width:40px;height:1px;background:var(--black);margin:18px auto 0}

/* ── Сторис ── */
.stories{border-bottom:1px solid var(--border);background:var(--white);padding:26px 0 4px}
.st-title{text-align:center;font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--mid);margin-bottom:20px;font-weight:500}
.st-row{max-width:1380px;margin:0 auto;padding:4px 20px 24px;display:flex;gap:34px;
  overflow-x:auto;scrollbar-width:none;justify-content:safe center}
.st-row::-webkit-scrollbar{display:none}
.st-circ{background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:11px;flex:0 0 auto;cursor:pointer}
.st-ring{width:118px;height:118px;border-radius:50%;border:3px solid var(--black);padding:5px;display:block;
  transition:transform .25s,border-color .3s;box-shadow:0 4px 18px rgba(0,0,0,.1)}
.st-circ:hover .st-ring{transform:scale(1.06)}
.st-circ.seen .st-ring{border-color:var(--border);box-shadow:none}
.st-circ.new .st-ring{border-width:4px;position:relative}
.st-circ.new .st-ring::after{content:'NEW';position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);
  background:var(--black);color:#fff;font-size:11px;letter-spacing:.14em;padding:3px 11px;font-weight:600}
.st-circ.new.seen .st-ring::after{background:var(--light)}
.st-ring img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.st-name{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500}
@media(max-width:600px){.st-ring{width:88px;height:88px}.st-row{gap:22px}}
.story-ov{position:fixed;inset:0;z-index:960;background:rgba(0,0,0,.97);display:flex;align-items:center;justify-content:center}
.st-box{width:min(430px,100vw);height:min(92vh,900px);display:flex;flex-direction:column;position:relative;padding:14px 12px}
.st-prog{display:flex;gap:4px;margin-bottom:10px}
.st-seg{flex:1;height:2px;background:rgba(255,255,255,.25);overflow:hidden}
.st-seg i{display:block;height:100%;width:0;background:#fff}
.st-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.st-head span{color:#fff;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.st-hint{color:rgba(255,255,255,.68);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.st-hint b{color:#fff;font-weight:600}
.st-media{position:relative;flex:1;overflow:hidden;background:#111}
.st-media img{width:100%;height:100%;object-fit:cover}
.st-tap{position:absolute;top:0;bottom:0;background:none;border:none;cursor:pointer}
.st-tap.l{left:0;width:35%}
.st-tap.r{right:0;width:65%}
.st-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:14px}
.st-foot p{color:#fff;font-size:12px;line-height:1.4;max-width:210px;margin-bottom:4px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.st-foot .st-price{color:rgba(255,255,255,.92);font-size:14px;font-weight:600}
.st-btns{display:flex;gap:8px;flex:none}
.st-btns button{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:11px 16px;cursor:pointer}
#st-buy{background:#fff;color:#000;border:none}
.st-btns .st-wl{background:none;border:1px solid rgba(255,255,255,.62);padding:0 12px;
  display:flex;align-items:center;justify-content:center;transition:border-color .2s}
.st-btns .st-wl svg{width:15px;height:15px;fill:none;stroke:#fff;stroke-width:1.6;transition:fill .2s,stroke .2s}
.st-btns .st-wl.on{border-color:#e74c3c}
.st-btns .st-wl.on svg{fill:#e74c3c;stroke:#e74c3c}
#st-more{background:none;color:#fff;border:1px solid rgba(255,255,255,.62)}

/* ── Категорийная мозаика ── */
.cats{max-width:1380px;margin:0 auto;padding:0 20px 70px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border)}
@media(max-width:980px){.cats{grid-template-columns:repeat(2,1fr)}}
.cat-tile{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--black);cursor:pointer;border:none;padding:0}
.cat-tile img{position:absolute;inset:0;height:100%;opacity:.55;filter:grayscale(35%);
  transition:transform .7s ease,opacity .4s,filter .4s}
.cat-tile:hover img{transform:scale(1.06);opacity:.75;filter:grayscale(0)}
.cat-tile::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.75),transparent 55%)}
.ct-txt{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:20px;text-align:left}
.ct-name{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:300;color:var(--white)}
.ct-n{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75);
  display:block;margin-top:5px}

/* ── Товар дня ── */
.potd{max-width:1180px;margin:0 auto 80px;display:grid;grid-template-columns:minmax(300px,440px) 1fr;
  background:var(--black);color:#fff}
@media(max-width:820px){.potd{grid-template-columns:1fr;margin:0 20px 60px}}
.potd-img{overflow:hidden;max-height:600px}
.potd-img img{height:100%;object-fit:cover}
.potd-info{padding:48px 44px;display:flex;flex-direction:column;gap:16px;justify-content:center}
.potd-eye{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.potd-info h3{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,3vw,38px);font-weight:300;line-height:1.15}
.potd-info .qv-rate{color:rgba(255,255,255,.6)}
.potd-info .stars{color:#fff}
.potd-pr{font-size:26px;font-weight:500;display:flex;gap:14px;align-items:baseline}
.potd-pr .card-old{font-size:15px;color:rgba(255,255,255,.62)}
.potd-timer-box{border:1px solid rgba(255,255,255,.18);padding:14px 18px;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.potd-timer-box span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.potd-timer-box b{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.1em}
.potd-btns{display:flex;flex-wrap:wrap;gap:12px}
.potd-btns .btn-ghost{margin-left:0}

/* ── Врезки в каталоге ── */
.inline-banner{grid-column:1/-1;background:var(--black);color:#fff;display:flex;align-items:center;
  gap:26px;padding:22px 26px;cursor:pointer;flex-wrap:wrap}
.ib-imgs{display:flex;gap:8px}
.ib-imgs img{width:74px;aspect-ratio:5/8;object-fit:cover;opacity:.85}
.ib-txt span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.68);display:block;margin-bottom:6px}
.ib-txt h4{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:300;margin-bottom:10px}
.ib-txt button{background:none;border:none;color:#fff;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;border-bottom:1px solid rgba(255,255,255,.62);padding:0 0 2px}

/* ── Тулбар каталога ── */
.toolbar{max-width:1380px;margin:0 auto;padding:0 20px 24px;display:flex;
  gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.filters{display:flex;gap:0;flex-wrap:wrap}
.flt-btn{background:none;border:1px solid var(--border);font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;padding:9px 18px;font-weight:500;
  color:var(--mid);margin:-1px;transition:all .2s}
.flt-btn.active,.flt-btn:hover{background:var(--black);color:var(--white);
  border-color:var(--black);z-index:1;position:relative}
.tb-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.search-box{display:flex;align-items:center;border:1px solid var(--border);padding:0 12px;height:36px}
.search-box svg{width:14px;height:14px;stroke:var(--light);stroke-width:1.5;fill:none;flex:none}
.search-box input{border:none;outline:none;font-family:inherit;font-size:11px;
  padding:0 10px;width:150px;letter-spacing:.05em;background:none}
.sort-sel{border:1px solid var(--border);height:36px;font-family:inherit;font-size:11px;
  letter-spacing:.1em;padding:0 10px;background:var(--white);color:var(--ink);outline:none}
.result-line{max-width:1380px;margin:0 auto;padding:0 20px 18px;font-size:11px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--light);display:flex;gap:16px;align-items:center}
.reset-quiz{background:none;border:none;font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--mid);text-decoration:underline}

/* ── Сетка товаров ── */
.products{max-width:1380px;margin:0 auto;padding:0 20px 30px}
.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border)}
@media(max-width:1200px){.grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.grid{grid-template-columns:repeat(2,1fr)}}
.card{background:var(--white);display:flex;flex-direction:column;cursor:pointer}
.card-img{position:relative;overflow:hidden;aspect-ratio:5/8;background:var(--off)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.card:hover .card-img img{transform:scale(1.07)}
.cbadge{position:absolute;top:12px;left:12px;background:var(--black);color:var(--white);
  font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px;font-weight:600;z-index:2}
.cbadge.sale{background:#c0392b}
.cbadge.new{background:var(--charcoal)}
.cbadge.luxury{background:#2c2c2c}
.wl-btn{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.85);border:none;
  width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .25s;backdrop-filter:blur(4px);z-index:2}
.card:hover .wl-btn{opacity:1}
.wl-btn svg{width:14px;height:14px;stroke:var(--ink);stroke-width:1.5;fill:none}
.wl-btn.on{opacity:1}
.wl-btn.on svg{fill:var(--ink)}
.card-info{padding:14px 12px 18px;display:flex;flex-direction:column;gap:5px}
.card-brand{font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--light);font-weight:400}
.card-name{font-size:12px;font-weight:400;line-height:1.45;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:31px}
.card-rate{font-size:11px;color:var(--mid);letter-spacing:.05em}
.card-rate .stars{color:var(--black);letter-spacing:1px}
.card-pr-row{display:flex;align-items:center;gap:8px;margin-top:2px}
.card-pr{font-size:13px;font-weight:500;color:var(--black);letter-spacing:.02em}
.card-old{font-size:11px;color:var(--light);text-decoration:line-through}
.card-disc{font-size:11px;color:#c0392b;font-weight:600}
.card-buy{margin-top:8px;width:100%;background:var(--black);color:var(--white);
  border:none;padding:10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;opacity:0;transition:opacity .25s}
.card:hover .card-buy{opacity:1}
@media(hover:none){.card-buy,.wl-btn{opacity:1}}
.more-wrap{text-align:center;padding:34px 0 80px}
.more-btn{background:none;border:1px solid var(--black);padding:14px 44px;font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;font-weight:600;transition:all .2s}
.more-btn:hover{background:var(--black);color:var(--white)}
.more-note{margin-top:12px;font-size:11px;letter-spacing:.12em;color:var(--light);text-transform:uppercase}

/* ── Сплит-баннер ── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
@media(max-width:700px){.split{grid-template-columns:1fr}}
.banner{position:relative;height:420px;overflow:hidden;background:var(--black);
  display:flex;align-items:flex-end;cursor:pointer}
.banner .bg-mosaic{position:absolute;inset:0;display:flex;gap:2px;opacity:.45;filter:grayscale(50%);transition:opacity .4s}
.banner:hover .bg-mosaic{opacity:.6}
.banner .bg-mosaic img{flex:1;height:100%;object-fit:cover;min-width:0}
.banner::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.82) 0%,transparent 60%)}
.banner-txt{position:relative;z-index:2;padding:28px}
.banner-lbl{font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.7);margin-bottom:10px;font-weight:300;display:block}
.banner-ttl{font-family:'Cormorant Garamond',serif;font-size:clamp(22px,3.5vw,36px);
  font-weight:300;color:var(--white);margin-bottom:18px;line-height:1.1}
.banner-ttl em{font-style:italic}
.banner-cta{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--white);
  font-weight:600;border:none;border-bottom:1px solid rgba(255,255,255,.62);padding:0 0 2px;background:none}

/* ── Недавно просмотренные ── */
.recent{border-top:1px solid var(--border)}
.recent-row{max-width:1380px;margin:0 auto;padding:0 20px 70px;display:flex;gap:14px;
  overflow-x:auto;scrollbar-width:thin}
.rc-item{flex:0 0 130px;cursor:pointer}
.rc-item .rc-img{aspect-ratio:5/8;overflow:hidden;background:var(--off)}
.rc-item img{height:100%}
.rc-item p{font-size:11px;margin-top:8px;line-height:1.4;color:var(--mid);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rc-item span{font-size:11px;font-weight:600}

/* ── Фичи ── */
.features{display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
@media(max-width:760px){.features{grid-template-columns:repeat(2,1fr)}}
.feat{padding:32px 24px;text-align:center;border-right:1px solid var(--border)}
.feat:last-child{border-right:none}
.feat-ico{width:28px;height:28px;margin:0 auto 14px;
  stroke:var(--ink);stroke-width:1.3;fill:none}
.feat-ttl{font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;margin-bottom:8px}
.feat-txt{font-size:11px;color:var(--mid);line-height:1.7;font-weight:300}

/* ── Футер ── */
footer{background:var(--black);color:rgba(255,255,255,.78);padding:60px 40px 36px}
.ftr-grid{max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
@media(max-width:800px){.ftr-grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.ftr-grid{grid-template-columns:1fr}}
.ftr-brand{font-family:'Cormorant Garamond',serif;font-size:20px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--white);margin-bottom:14px;font-weight:300}
.ftr-tag{font-size:11px;line-height:1.8;font-weight:300;margin-bottom:24px}
.ftr-col h4{font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--white);font-weight:600;margin-bottom:16px}
.ftr-col a{display:block;font-size:11px;font-weight:300;color:rgba(255,255,255,.62);
  margin-bottom:10px;transition:color .2s}
.ftr-col a:hover{color:var(--white)}
.ftr-bot{max-width:1200px;margin:40px auto 0;padding-top:28px;
  border-top:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.ftr-copy{font-size:11px;color:rgba(255,255,255,.5);letter-spacing:.15em}
.ftr-pay{display:flex;gap:10px}
.pay-badge{background:rgba(255,255,255,.07);padding:4px 10px;font-size:11px;
  color:rgba(255,255,255,.5);letter-spacing:.1em;border:1px solid rgba(255,255,255,.08)}

/* ── Модалки общие ── */
.modal-ov{position:fixed;inset:0;z-index:800;background:rgba(0,0,0,.72);
  backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:16px;
  opacity:0;pointer-events:none;transition:opacity .3s}
.modal-ov.open{opacity:1;pointer-events:auto}
.modal-x{position:absolute;top:12px;right:12px;background:none;border:none;width:30px;height:30px;
  display:flex;align-items:center;justify-content:center;z-index:5}
.modal-x svg{width:16px;height:16px;stroke:var(--ink);stroke-width:1.5;fill:none}

/* ── Квик-вью ── */
.qv-box{position:relative;width:min(860px,96vw);max-height:92vh;overflow-y:auto;background:var(--white);
  display:grid;grid-template-columns:340px 1fr;align-items:start;transform:translateY(14px);transition:transform .3s}
.modal-ov.open .qv-box{transform:translateY(0)}
@media(max-width:700px){.qv-box{grid-template-columns:1fr}}
.qv-img{background:var(--off);aspect-ratio:5/8;overflow:hidden}
@media(max-width:700px){.qv-img{aspect-ratio:4/5}}
.qv-img img{height:100%}
.qv-info{padding:34px 30px;display:flex;flex-direction:column;gap:12px}
.qv-brand{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--light)}
.qv-name{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;line-height:1.2}
.qv-rate{font-size:11px;color:var(--mid)}
.qv-rate .stars{color:var(--black);letter-spacing:2px}
.qv-pr{font-size:20px;font-weight:500;display:flex;gap:12px;align-items:baseline}
.qv-pr .card-old{font-size:14px}
.qv-desc{font-size:11px;line-height:1.9;color:var(--mid);font-weight:300}
.qv-lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mid);font-weight:600;margin-top:6px}
.sizes{display:flex;gap:8px;flex-wrap:wrap}
.size-btn{border:1px solid var(--border);background:var(--white);color:var(--black);
  -webkit-text-fill-color:var(--black);width:42px;height:36px;font-size:11px;
  letter-spacing:.1em;transition:all .15s;cursor:pointer}
.size-btn.on{background:var(--black);color:var(--white);-webkit-text-fill-color:var(--white);
  border-color:var(--black)}
.qv-qty{display:flex;align-items:center;gap:12px;margin-top:4px}
.qv-qty button{border:1px solid var(--border);background:var(--white);color:var(--black);
  -webkit-text-fill-color:var(--black);width:36px;height:36px;font-size:18px;line-height:1;
  cursor:pointer;padding:0}
.qv-qty span{min-width:24px;text-align:center;font-size:14px;font-weight:500;color:var(--black)}
.qv-add{background:var(--black);color:var(--white);border:none;padding:15px;font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-top:8px;transition:opacity .2s}
.qv-add:hover{opacity:.85}
.qv-meta{font-size:11px;letter-spacing:.15em;color:var(--light);line-height:2}
.cross{grid-column:1/-1;border-top:1px solid var(--border);padding:22px 30px 30px}
.cross h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:16px}
.cross-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:700px){.cross-row{grid-template-columns:repeat(2,1fr)}}
.cx-item{cursor:pointer}
.cx-item .cx-img{aspect-ratio:5/8;overflow:hidden;background:var(--off)}
.cx-item img{height:100%;transition:transform .5s}
.cx-item:hover img{transform:scale(1.05)}
.cx-item p{font-size:11px;margin-top:7px;line-height:1.4;color:var(--mid);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cx-item span{font-size:11px;font-weight:600}

/* ── Чекаут ── */
#co-ov{z-index:890}
.co-box{position:relative;width:min(620px,96vw);max-height:92vh;overflow-y:auto;background:var(--white);
  padding:40px 38px 34px;transform:translateY(14px);transition:transform .3s}
.modal-ov.open .co-box{transform:translateY(0)}
.co-eye{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--light);margin-bottom:12px}
.co-title{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:300;margin-bottom:18px}
.cod-note{display:flex;gap:12px;align-items:center;border:1px solid var(--border);background:var(--off);
  padding:14px 16px;margin-bottom:22px}
.cod-note svg{width:26px;height:26px;stroke:var(--ink);stroke-width:1.4;fill:none;flex:none}
.cod-note p{font-size:11px;line-height:1.7;color:var(--mid)}
.cod-note b{color:var(--black);text-transform:uppercase;letter-spacing:.15em;font-size:11px}
.co-sum{border:1px solid var(--border);padding:12px 16px;margin-bottom:12px;font-size:11px}
/* промокод */
.co-promo{display:flex;gap:8px;margin-bottom:22px}
.co-promo input{flex:1;border:1px solid var(--border);padding:11px 12px;
  font-family:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  outline:none;background:var(--white)}
.co-promo input:focus{border-color:var(--black)}
.co-promo input.err{border-color:#c0392b}
.co-promo input:disabled{background:var(--off);color:#8a6f4d;font-weight:600}
.co-promo button{padding:11px 18px;background:var(--black);color:var(--white);border:none;
  font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;cursor:pointer}
.co-promo button:disabled{background:#8a6f4d;cursor:default}
.co-sum-row{display:flex;justify-content:space-between;padding:5px 0;color:var(--mid)}
.co-sum-row.total{border-top:1px solid var(--border);margin-top:6px;padding-top:10px;
  color:var(--black);font-weight:600;font-size:13px}
.co-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.co-field{display:flex;flex-direction:column;gap:6px}
.co-field.full{grid-column:1/-1}
.co-field label{font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--mid);font-weight:600}
.co-field input,.co-field textarea,.co-field select{border:1px solid var(--border);padding:11px 12px;
  font-family:inherit;font-size:12px;outline:none;background:var(--white);resize:vertical}
.co-field input:focus,.co-field textarea:focus{border-color:var(--black)}
.co-field input.err{border-color:#c0392b}
.co-ship{display:flex;gap:0;grid-column:1/-1;flex-wrap:wrap}
.co-ship label{flex:1;border:1px solid var(--border);margin:-1px 0 0 -1px;padding:12px 10px;text-align:center;
  font-size:11px;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;font-weight:500;color:var(--mid);min-width:110px}
.co-ship input{display:none}
.co-ship label:has(input:checked),.co-ship label.on{background:var(--black);color:var(--white);border-color:var(--black)}
.co-submit{grid-column:1/-1;background:var(--black);color:var(--white);border:none;padding:16px;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-top:6px}
.co-submit:hover{opacity:.87}
.co-legal{grid-column:1/-1;font-size:11px;color:var(--light);line-height:1.7;text-align:center}
/* успех */
.co-ok{text-align:center;padding:30px 10px 10px}
.co-ok-ico{width:56px;height:56px;margin:0 auto 20px;border:1px solid var(--black);border-radius:50%;
  display:flex;align-items:center;justify-content:center}
.co-ok-ico svg{width:24px;height:24px;stroke:var(--black);stroke-width:1.5;fill:none}
.co-ok h3{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:300;margin-bottom:12px}
.co-ok p{font-size:11px;line-height:1.9;color:var(--mid);margin-bottom:8px}
.co-ok .co-num{font-size:13px;letter-spacing:.14em;font-weight:600;color:var(--black);margin:10px 0 18px}
.co-gift-code{margin-top:22px;padding:18px 14px;border:1px solid var(--border);text-align:center}
.co-gift-lbl{font-size:10px!important;letter-spacing:.16em;text-transform:uppercase;color:var(--mid)!important;margin:0 0 8px!important}
.co-gift-val{font-size:20px!important;letter-spacing:.12em;font-weight:600;color:var(--black)!important;margin:0 0 8px!important}
.co-gift-hint{font-size:11px!important;line-height:1.6;color:var(--mid)!important;margin:0 0 12px!important}
.co-gift-copy{background:var(--black);color:var(--white);border:none;padding:12px 18px;font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;font-weight:600;cursor:pointer;width:100%}
.co-demo{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--light);margin-top:16px}

/* ── Корзина-дравер ── */
.drawer{position:fixed;top:0;right:0;bottom:0;width:380px;max-width:100vw;
  background:var(--white);z-index:850;box-shadow:-4px 0 40px rgba(0,0,0,.12);
  transform:translateX(100%);transition:transform .35s ease;display:flex;flex-direction:column}
.drawer.open{transform:translateX(0)}
.drw-head{padding:20px 24px;border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between}
.drw-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:300;letter-spacing:.1em}
.drw-close{background:none;border:none;width:32px;height:32px;
  display:flex;align-items:center;justify-content:center}
.drw-close svg{width:16px;height:16px;stroke:var(--ink);stroke-width:1.5;fill:none}
.ship-wrap{padding:14px 24px;border-bottom:1px solid var(--border)}
.ship-txt{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--mid);margin-bottom:8px}
.ship-txt b{color:var(--black)}
.ship-bar{height:3px;background:var(--border)}
.ship-bar div{height:100%;background:var(--black);transition:width .4s}
.drw-body{flex:1;overflow-y:auto;padding:14px 24px}
.drw-empty{text-align:center;padding:50px 0 30px;font-size:11px;color:var(--light);letter-spacing:.15em}
.drw-empty-cta{display:block;margin:0 auto;background:var(--black);color:#fff;border:none;
  padding:12px 26px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.cart-item{display:grid;grid-template-columns:64px 1fr;gap:14px;
  padding:14px 0;border-bottom:1px solid var(--border)}
.ci-img{aspect-ratio:5/8;background:var(--off);overflow:hidden}
.ci-img img{height:100%}
.ci-info{display:flex;flex-direction:column;gap:4px}
.ci-name{font-size:11px;font-weight:400;line-height:1.4}
.ci-pr{font-size:12px;font-weight:500}
.ci-qty{display:flex;align-items:center;gap:10px;margin-top:2px}
.ci-qty button{border:1px solid var(--border);background:var(--white);color:var(--black);
  -webkit-text-fill-color:var(--black);width:22px;height:22px;font-size:14px;line-height:1;
  cursor:pointer;padding:0;font-weight:600}
.ci-rm{background:none;border:none;font-size:11px;color:var(--light);
  text-decoration:underline;cursor:pointer;text-transform:uppercase;
  letter-spacing:.15em;margin-top:4px;text-align:left}
.drw-cross{padding:12px 24px;border-top:1px solid var(--border)}
.drw-cross h5{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mid);margin-bottom:10px}
.drw-cross-row{display:flex;gap:10px}
.dc-item{flex:1;cursor:pointer}
.dc-item .dc-img{aspect-ratio:5/8;background:var(--off);overflow:hidden}
.dc-item img{height:100%}
.dc-item p{font-size:10px;margin-top:5px;color:var(--mid);line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.drw-foot{padding:18px 24px;border-top:1px solid var(--border)}
.drw-total{display:flex;justify-content:space-between;font-size:13px;
  font-weight:500;margin-bottom:14px}
.checkout-btn{width:100%;background:var(--black);color:var(--white);border:none;
  padding:16px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;cursor:pointer;transition:opacity .2s}
.checkout-btn:hover{opacity:.85}

/* ── Тост ── */
/* opacity:0 в скрытом состоянии — гарантия, что тост невидим ДО показа
   независимо от его высоты (сдвиг translateY один и тот же для 1 и 3 строк текста,
   поэтому прятать только сдвигом за экран недостаточно — нужна ещё прозрачность) */
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(80px);opacity:0;
  background:var(--black);color:var(--white);padding:12px 24px;font-size:11px;
  letter-spacing:.12em;text-transform:uppercase;font-weight:600;z-index:10000;
  border:1px solid rgba(255,255,255,.25);
  transition:transform .3s ease,opacity .3s ease;pointer-events:none;white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}

/* ── Социальное доказательство ── */
.sp-toast{position:fixed;bottom:28px;left:28px;z-index:700;background:var(--white);
  border:1px solid var(--border);box-shadow:0 24px 70px rgba(0,0,0,.32);
  display:grid;grid-template-columns:104px 1fr;gap:18px;padding:16px;width:420px;max-width:calc(100vw - 40px);
  transform:translateY(160%);transition:transform .5s cubic-bezier(.2,.9,.3,1.08);cursor:pointer}
.sp-toast.show{transform:translateY(0)}
.sp-img{aspect-ratio:5/8;overflow:hidden;background:var(--off)}
.sp-img img{height:100%}
.sp-txt{font-size:12px;line-height:1.6;color:var(--mid);align-self:center}
.sp-txt b{display:block;color:var(--ink);font-size:14px;font-weight:500;margin-bottom:4px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sp-txt i{font-style:normal;color:var(--light);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:600px){
  .sp-toast{left:10px;right:10px;bottom:12px;width:auto;max-width:none;
    grid-template-columns:80px 1fr;gap:14px;padding:14px;
    box-shadow:0 16px 46px rgba(0,0,0,.32)}
  .sp-txt{font-size:13px;line-height:1.5}
  .sp-txt b{font-size:15px;margin-bottom:4px}
  .sp-txt i{font-size:11px}
}

/* ── Колесо фортуны ── */
.wh-box{position:relative;width:min(720px,96vw);background:var(--white);border:1px solid var(--border);
  display:grid;grid-template-columns:1fr 1fr;box-shadow:0 32px 80px rgba(0,0,0,.4);overflow:hidden;
  transform:translateY(14px);transition:transform .3s}
.modal-ov.open .wh-box{transform:translateY(0)}
@media(max-width:560px){.wh-box{grid-template-columns:1fr}}
.wh-left{padding:40px 32px;background:var(--black);color:var(--white);display:flex;flex-direction:column;justify-content:center}
.wh-right{position:relative;background:var(--off);display:flex;flex-direction:column;align-items:center;
  justify-content:center;padding:34px 24px;gap:18px}
#wh-x{position:absolute;top:14px;right:14px;background:none;border:none;width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s;z-index:10}
#wh-x.show{opacity:1;pointer-events:auto}
#wh-x svg{width:16px;height:16px;stroke:var(--ink);stroke-width:1.5;fill:none}
.wh-wheel{position:relative;width:min(280px,78vw)}
.wh-wheel svg{display:block;width:100%;height:auto}
#wh-g{transform-origin:140px 140px}
.wh-pointer{position:absolute;top:-6px;left:50%;transform:translateX(-50%);z-index:5;
  width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;
  border-top:16px solid var(--black)}
.wh-spin{background:var(--black);color:var(--white);border:none;padding:14px 44px;font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;font-weight:600;transition:opacity .2s}
.wh-spin:disabled{opacity:.4;cursor:default}
.wh-note{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--light)}
.wh-skip{background:none;border:none;font-size:11px;letter-spacing:.15em;color:var(--light);
  text-decoration:underline;text-transform:uppercase}
.wh-skip:hover{color:var(--mid)}

/* ── СКРЕТЧ ПОПАП ── */
.popup-ov{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.78);
  backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}
.popup-box{position:relative;width:min(980px,96vw);min-height:580px;background:var(--black);
  border:1px solid var(--border);display:grid;grid-template-columns:1fr 1.3fr;
  box-shadow:0 32px 80px rgba(0,0,0,.4);overflow:hidden}
@media(max-width:720px){.popup-box{grid-template-columns:1fr;min-height:0}}
.pp-left{padding:48px 40px;background:var(--black);color:var(--white);
  display:flex;flex-direction:column;justify-content:center}
.pp-eye{font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:16px}
.pp-title{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,3.5vw,36px);
  font-weight:300;line-height:1.1;margin-bottom:14px}
.pp-title em{font-style:italic}
.pp-desc{font-size:11px;line-height:1.9;color:rgba(255,255,255,.65);
  font-weight:300;margin-bottom:28px}
.reward-box{border:1px solid rgba(255,255,255,.14);padding:20px 20px 18px;width:min(460px,100%);
  text-align:center;opacity:0;transform:translateY(8px);
  transition:opacity .5s,transform .5s;pointer-events:none}
.reward-box.show{opacity:1;transform:translateY(0);pointer-events:auto}
.rw-pct{font-family:'Cormorant Garamond',serif;font-size:54px;font-weight:600;
  color:var(--white);line-height:1}
.rw-sub{font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.6);margin:6px 0 10px}
.rw-code{display:inline-block;border:1px solid rgba(255,255,255,.2);
  padding:5px 16px;font-size:11px;letter-spacing:.16em;font-weight:600;color:var(--white)}
.use-btn{margin-top:14px;width:100%;background:var(--white);color:var(--black);border:none;
  padding:11px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;cursor:pointer;transition:opacity .2s}
.use-btn:hover{opacity:.85}
.pp-photo-col{position:relative;overflow:hidden;background:#111;min-height:580px}
@media(max-width:720px){.pp-photo-col{min-height:320px}}
.pp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:.96}
.pp-photo-col::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to right,transparent 55%,rgba(10,10,10,.65) 100%)}
.pp-main{position:relative;background:var(--black);color:var(--white);padding:46px 44px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center}
#pp-close{position:absolute;top:14px;right:14px;background:rgba(255,255,255,.92);border:none;
  border-radius:50%;width:34px;height:34px;display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .4s;z-index:10}
#pp-close.show{opacity:1;pointer-events:auto}
#pp-close svg{width:16px;height:16px;stroke:var(--ink);stroke-width:1.5;fill:none}
.sc-lbl{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#fff;font-weight:600;
  position:relative;z-index:2;text-shadow:0 1px 10px rgba(0,0,0,.7)}
.card-outer{position:relative;width:min(460px,100%);aspect-ratio:3/2;z-index:2;
  box-shadow:0 22px 60px rgba(0,0,0,.55)}
.card-under{position:absolute;inset:0;background:var(--black);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;overflow:hidden}
.card-under .cu-pct,.card-under .cu-lbl,.card-under .cu-code{position:relative;z-index:2;
  text-shadow:0 1px 10px rgba(0,0,0,.8)}
.card-under .cu-code{background:rgba(0,0,0,.45)}
.cu-pct{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:600;
  color:var(--white);line-height:1}
.cu-lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62)}
.cu-code{font-size:11px;letter-spacing:.14em;font-weight:600;
  color:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.15);
  padding:3px 10px;margin-top:4px}
#scratch{position:absolute;top:0;left:0;width:100%;height:100%;display:block;cursor:crosshair;z-index:3;touch-action:none}
.sc-hint{font-size:11px;letter-spacing:.12em;text-transform:uppercase;position:relative;z-index:2;
  color:rgba(255,255,255,.8);font-weight:400;transition:opacity .4s;text-align:center;
  text-shadow:0 1px 8px rgba(0,0,0,.7)}
.sc-hint.gone{opacity:0}
.scratch-progress{width:min(460px,100%);height:3px;background:rgba(255,255,255,.5);
  border-radius:2px;overflow:hidden;position:relative;z-index:2}
.scratch-bar{height:100%;width:0%;background:#fff;transition:width .2s}

.pn::after{content:attr(data-n)}
.hidden{display:none!important}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.vis{opacity:1;transform:none}

/* ═════════ СЕЛЕКТОР СТРАНЫ (кастомный, с флагами) ═════════ */
.country-sel{position:relative}
.cs-btn{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:7px 12px;
  cursor:pointer;color:inherit;font:inherit;font-size:13px;font-weight:600;
  letter-spacing:1.5px;transition:border-color .2s}
.cs-btn:hover{border-color:rgba(255,255,255,.68)}
.cs-flag{width:22px;height:15px;border-radius:2px;display:block;flex:0 0 auto;
  box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.cs-chev{width:10px;height:6px;stroke:#999;fill:none;stroke-width:1.5;transition:transform .2s}
.country-sel.open .cs-chev{transform:rotate(180deg)}
.cs-list{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;
  background:#141414;border:1px solid rgba(255,255,255,.12);border-radius:14px;
  padding:6px;display:none;z-index:300;box-shadow:0 18px 44px rgba(0,0,0,.55)}
.country-sel.open .cs-list{display:block}
.cs-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;
  color:#ddd;font:inherit;font-size:12px;font-weight:600;letter-spacing:1.5px;
  padding:10px;border-radius:9px;cursor:pointer;text-align:left}
.cs-item:hover{background:rgba(255,255,255,.07)}
.cs-item.on{background:rgba(255,255,255,.10)}
.cs-cur{margin-left:auto;color:#888;font-weight:400;letter-spacing:.5px}
@media(max-width:760px){
  .cs-btn{padding:6px 9px;font-size:11px;gap:6px}
  .cs-list{right:-40px;min-width:210px}
}

/* ═════════ СЕЛЕКТОР В ШАПКЕ: светлая тема ═════════ */
header .cs-btn{background:none;border:1px solid var(--border);border-radius:0;
  color:var(--ink);font-size:11px;font-weight:600;letter-spacing:.12em;padding:8px 10px;gap:7px}
header .cs-btn:hover{border-color:var(--black)}
header .cs-chev{stroke:var(--mid)}
header .cs-list{left:0;right:auto;top:calc(100% + 12px);bottom:auto;min-width:250px;
  background:var(--white);border:1px solid var(--border);border-radius:0;padding:6px;
  box-shadow:0 18px 44px rgba(0,0,0,.16)}
header .cs-item{color:var(--ink);border-radius:0;font-size:11px;letter-spacing:.12em}
header .cs-item:hover,header .cs-item.on{background:var(--off)}
header .cs-cur{color:var(--light)}
.nav-l .country-sel{order:9;margin-left:6px}

/* ═════════ ОСТАТКИ ТОВАРА ═════════ */
.card.soldout .card-img img{filter:grayscale(1);opacity:.5}
.so-ov{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  background:rgba(8,8,8,.85);color:#fff;font-size:11px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;padding:9px 16px;
  border:1px solid rgba(255,255,255,.5);white-space:nowrap;z-index:2}
.low-badge{position:absolute;left:10px;bottom:10px;background:#c0392b;color:#fff;
  font-size:11px;font-weight:600;letter-spacing:.8px;padding:4px 9px;border-radius:3px;z-index:2}
.card-buy:disabled,.qv-add:disabled{opacity:.4;cursor:not-allowed}
.qv-stock{margin:8px 0 0;font-size:12px}
.qv-stock.so{color:#c0392b;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}
.qv-stock.low{color:#c0392b;font-weight:500}

/* ═════════ КРЕСТИК В СТОРИС ═════════ */
.st-x{position:absolute;top:18px;right:22px;z-index:20;width:42px;height:42px;
  background:rgba(255,255,255,.08);border:none;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.st-x:hover{background:rgba(255,255,255,.2)}
.st-x svg{width:20px;height:20px;stroke:#fff;stroke-width:2;fill:none}
@media(max-width:520px){.st-x{top:12px;right:12px;width:36px;height:36px;background:rgba(0,0,0,.45)}}

/* ═════════ AGE GATE ═════════ */
.age-done .age-gate{display:none!important} /* возраст уже подтверждён — без мигания */
.age-gate{
  position:fixed;inset:0;z-index:9999;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,6,4,.97);
  backdrop-filter:blur(12px);
  animation:ag-in .35s ease both;
}
.age-gate.ag-out{animation:ag-out .38s ease both}
@keyframes ag-in{from{opacity:0}to{opacity:1}}
@keyframes ag-out{from{opacity:1}to{opacity:0}}
.age-box{
  max-width:480px;width:calc(100% - 40px);
  padding:52px 44px 44px;
  background:linear-gradient(160deg,#181410 0%,#100d0a 100%);
  border:1px solid rgba(180,140,100,.25);
  border-radius:4px;
  text-align:center;
  box-shadow:0 40px 100px rgba(0,0,0,.7);
  position:relative;
}
.age-logo{
  font-family:'Cormorant Garamond',serif;
  font-size:17px;letter-spacing:6px;text-transform:uppercase;
  color:rgba(200,160,110,.7);margin-bottom:28px;
}
.age-logo em{font-style:italic;color:#c8a06e}
.age-icon{
  width:70px;height:70px;margin:0 auto 26px;
  color:rgba(200,160,110,.55);
}
.age-icon svg{width:100%;height:100%}
.age-title{
  font-family:'Cormorant Garamond',serif;font-weight:400;
  font-size:clamp(22px,4vw,30px);letter-spacing:1px;
  color:#f0e8df;margin-bottom:16px;
}
.age-text{
  font-family:'Inter',sans-serif;font-size:14px;font-weight:300;
  color:#b3a897;line-height:1.7;margin-bottom:34px;max-width:34ch;margin-left:auto;margin-right:auto;
}
.age-btns{display:flex;flex-direction:column;gap:12px;margin-bottom:22px}
.age-yes{
  padding:15px 28px;
  background:linear-gradient(135deg,#c8a06e,#a07848);
  border:none;border-radius:2px;
  color:#fff;font-family:'Inter',sans-serif;font-size:13px;
  font-weight:600;letter-spacing:2px;text-transform:uppercase;
  cursor:pointer;transition:opacity .2s,transform .15s;
}
.age-yes:hover{opacity:.88;transform:translateY(-1px)}
.age-yes:active{transform:none;opacity:1}
.age-no{
  padding:13px 28px;
  background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:2px;
  color:#666;font-family:'Inter',sans-serif;font-size:12px;
  font-weight:400;letter-spacing:1.5px;text-transform:uppercase;
  cursor:pointer;transition:border-color .2s,color .2s;
}
.age-no:hover{border-color:rgba(255,255,255,.5);color:#999}
.age-note{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:300;
  color:#8a8178;line-height:1.6;letter-spacing:.3px;
}
@media(max-width:520px){
  .age-box{padding:36px 24px 30px}
  .age-logo{font-size:14px;letter-spacing:4px}
  .age-icon{width:54px;height:54px;margin-bottom:20px}
}

/* ═════════ ПОДАРОК ЗА 2 МИНУТЫ НА САЙТЕ ═════════ */
.g2-ov{
  position:fixed;inset:0;z-index:1200;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,6,4,.82);
  backdrop-filter:blur(8px);
  animation:ag-in .35s ease both;
}
.g2-ov.ag-out{animation:ag-out .38s ease both}
.g2-box{
  max-width:440px;width:calc(100% - 40px);
  padding:42px 38px 34px;
  background:linear-gradient(160deg,#181410 0%,#100d0a 100%);
  border:1px solid rgba(180,140,100,.25);
  border-radius:4px;text-align:center;
  box-shadow:0 40px 100px rgba(0,0,0,.7);
}
.g2-box .age-logo{margin-bottom:16px}
.g2-title{
  font-family:'Cormorant Garamond',serif;font-weight:400;
  font-size:clamp(22px,4vw,29px);letter-spacing:.5px;
  color:#f0e8df;margin-bottom:14px;
}
.g2-title em{font-style:italic;color:#c8a06e}
.g2-ico{font-size:44px;line-height:1;margin-bottom:16px}
.g2-text{
  font-family:'Inter',sans-serif;font-size:13px;font-weight:300;
  color:#b3a897;line-height:1.8;margin-bottom:26px;
}
.g2-text b{color:#c8a06e;font-weight:500}
.g2-plbl{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;color:#6a5f50;margin-bottom:6px;
}
.g2-progress{
  font-family:'Cormorant Garamond',serif;font-size:30px;letter-spacing:2px;
  color:#c8a06e;margin-bottom:22px;
}
.g2-ok{width:100%;margin-bottom:12px}
.g2-later{
  width:100%;padding:12px 28px;
  background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:2px;
  color:#666;font-family:'Inter',sans-serif;font-size:11px;
  font-weight:400;letter-spacing:1.5px;text-transform:uppercase;
  cursor:pointer;transition:border-color .2s,color .2s;
}
.g2-later:hover{border-color:rgba(255,255,255,.5);color:#999}
@media(max-width:520px){.g2-box{padding:32px 22px 26px}}

/* ═════════ ПОДАРОК ЗА ПРОСМОТР СТОРИС ═════════ */
.st-goal{max-width:520px;margin:0 auto 30px;padding:0 20px;text-align:center}
.st-goal-txt{font-family:'Inter',sans-serif;font-size:12px;font-weight:400;
  letter-spacing:.06em;color:#555;margin-bottom:11px;line-height:1.6}
.st-goal-bar{height:4px;background:#ececec;border-radius:2px;overflow:hidden;margin-bottom:8px}
.st-goal-bar i{display:block;height:100%;width:0;
  background:linear-gradient(90deg,#c8a06e,#a07848);border-radius:2px;transition:width .4s ease}
.st-goal-count{font-family:'Inter',sans-serif;font-size:11.5px;
  letter-spacing:.14em;color:#9a9a9a}
.st-goal-done{font-family:'Inter',sans-serif;font-size:15px;font-weight:500;
  letter-spacing:.05em;color:#8a6f4d;line-height:1.55}
@media(max-width:600px){
  .st-goal{margin-bottom:24px}
  .st-goal-txt{font-size:11px}
  .st-goal-done{font-size:14px}
}

/* ═════════ ГЕОГРАФИЯ ПОСТАВОК ═════════ */
.geo{padding:10px 20px 90px;text-align:center}
.geo-sub{font-family:'Inter',sans-serif;font-size:13px;font-weight:300;color:#777;
  max-width:540px;margin:-14px auto 30px;line-height:1.7}
.geo-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:780px;margin:0 auto 24px}
.geo-chip{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;
  border:1px solid var(--border);border-radius:2px;background:var(--white);
  font-family:'Inter',sans-serif;font-size:11.5px;font-weight:400;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
  transition:border-color .2s,transform .2s}
.geo-chip:hover{border-color:#bbb;transform:translateY(-1px)}
.geo-chip svg{width:21px;height:14px;display:block;flex:none;border-radius:1px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.geo-note{font-family:'Inter',sans-serif;font-size:11px;color:#999;letter-spacing:.04em}
@media(max-width:600px){.geo{padding-bottom:70px}.geo-chip{padding:9px 13px;font-size:11.5px;gap:7px}}

/* ═════════ INFO GATE: буклет про компанію ═════════ */
.info-gate{
  position:fixed;inset:0;z-index:9998;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,6,4,.97);
  backdrop-filter:blur(12px);
  animation:ag-in .35s ease both;
}
.info-gate.ag-out{animation:ag-out .38s ease both}
.info-box{
  max-width:580px;width:calc(100% - 40px);
  max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);
  display:flex;flex-direction:column;
  padding:38px 40px 30px;
  background:linear-gradient(160deg,#181410 0%,#100d0a 100%);
  border:1px solid rgba(180,140,100,.25);
  border-radius:4px;
  text-align:center;
  box-shadow:0 40px 100px rgba(0,0,0,.7);
  position:relative;
}
.info-box .age-logo{margin-bottom:18px}
.info-eye{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:500;
  letter-spacing:.2em;text-transform:uppercase;
  color:rgba(200,160,110,.55);margin-bottom:10px;
}
.info-title{
  font-family:'Cormorant Garamond',serif;font-weight:400;
  font-size:clamp(20px,3.5vw,27px);letter-spacing:.5px;
  color:#f0e8df;margin-bottom:16px;
}
.info-title em{font-style:italic;color:#c8a06e}
.info-scroll{
  flex:1;min-height:120px;max-height:300px;overflow-y:auto;
  text-align:left;
  padding:20px 22px;margin-bottom:12px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.08);border-radius:3px;
  scrollbar-width:thin;scrollbar-color:rgba(200,160,110,.45) rgba(255,255,255,.04);
  overscroll-behavior:contain;
}
.info-scroll::-webkit-scrollbar{width:6px}
.info-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
.info-scroll::-webkit-scrollbar-thumb{background:rgba(200,160,110,.45);border-radius:3px}
.info-scroll h4{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;
  color:#c8a06e;margin:20px 0 8px;
}
.info-scroll h4:first-child{margin-top:0}
.info-scroll p{
  font-family:'Inter',sans-serif;font-size:12.5px;font-weight:300;
  color:#b3a897;line-height:1.75;
}
.info-scroll .ig-thanks{
  margin-top:22px;padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#c4b8a6;font-style:italic;
}
.info-hint{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;
  color:#c8a06e;margin-bottom:12px;
  animation:ig-pulse 1.6s ease-in-out infinite;
}
@keyframes ig-pulse{0%,100%{opacity:.9}50%{opacity:.35}}
.info-hint.gone{visibility:hidden;animation:none}
.info-check{
  display:flex;align-items:flex-start;gap:11px;
  text-align:left;margin:0 auto 16px;
  font-family:'Inter',sans-serif;font-size:12px;font-weight:400;
  color:#b7ab99;line-height:1.5;cursor:pointer;
  opacity:.32;transition:opacity .25s;user-select:none;
}
.info-check.ready{opacity:1}
.info-check input{
  flex:none;width:17px;height:17px;margin-top:1px;
  accent-color:#c8a06e;cursor:pointer;
}
.info-check input:disabled{cursor:not-allowed}
.ig-continue{width:100%}
.ig-continue:disabled{
  opacity:.3;cursor:not-allowed;transform:none;
  filter:grayscale(.6);
}
.ig-continue:disabled:hover{opacity:.3;transform:none}
@media(max-width:520px){
  .info-box{padding:26px 20px 20px;width:calc(100% - 24px)}
  .info-scroll{max-height:none;padding:16px 16px}
  .info-title{margin-bottom:12px}
}

/* ═════════ МОБИЛЬНАЯ АДАПТАЦИЯ ═════════ */

/* — Бургер — */
.burger{display:none;background:none;border:none;width:42px;height:42px;
  flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding:10px}
.burger span{display:block;height:1.5px;width:100%;background:var(--ink);transition:.25s}

/* — Мобильное меню — */
.mmenu{position:fixed;inset:0;z-index:950;background:rgba(255,255,255,.98);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  display:flex;flex-direction:column;padding:22px 26px 30px;
  opacity:0;pointer-events:none;transition:opacity .25s}
.mmenu.open{opacity:1;pointer-events:auto}
.mmenu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7vh}
.mmenu-logo{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:300;
  letter-spacing:.18em;text-transform:uppercase}
.mmenu-logo em{font-style:normal;font-weight:600}
.mmenu-x{background:none;border:none;width:42px;height:42px;margin-right:-10px;
  display:flex;align-items:center;justify-content:center}
.mmenu-x svg{width:20px;height:20px;stroke:var(--ink);stroke-width:1.5;fill:none}
.mmenu-nav{display:flex;flex-direction:column}
.mmenu-nav a,.mmenu-nav button{background:none;border:none;text-align:left;cursor:pointer;
  font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:300;letter-spacing:.04em;
  text-transform:none;color:var(--ink);padding:16px 0;border-bottom:1px solid var(--border)}
.mmenu-nav a::after{display:none}
.mmenu-nav .mm-sale{color:#c0392b}
.mmenu-foot{margin-top:auto;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--light)}

@media(min-width:761px){.mmenu{display:none}}

@media(max-width:760px){

  /* Топбар: одна понятная строка вместо трёх */
  .topbar{gap:8px;padding:9px 12px;font-size:11px;letter-spacing:.11em}
  .tb-extra,.tb-sep{display:none}

  /* Хедер: бургер слева, лого по центру, язык и иконки справа */
  .hdr{padding:0 12px;height:58px}
  .nav-l{display:flex!important;gap:0}
  .nav-l a,.nav-l button.nav-link{display:none}
  .burger{display:flex;margin-left:-10px}
  .logo{font-size:16px;letter-spacing:.12em}
  .nav-r{gap:6px}
  .icon-btn{width:38px;height:38px}
  .icon-btn svg{width:19px;height:19px}
  .badge{top:0;right:0;width:17px;height:17px;font-size:11px}
  header .cs-btn{padding:6px 7px;gap:5px}
  header .cs-btn .cs-code{display:none}
  header .cs-flag{width:20px;height:14px}
  .nav-l .country-sel{order:0;margin-left:2px}

  /* Герой: 3 модели вместо 8 узких полосок */
  .hero-strip img:nth-child(n+4){display:none}
  .hero-strip{opacity:.45;filter:grayscale(40%)}
  .hero{height:86svh;min-height:480px}
  .hero-cnt{padding:0 22px 52px;max-width:100%}
  .hero-eye{font-size:10px;letter-spacing:.18em;margin-bottom:14px}
  .hero-title{font-size:clamp(42px,12vw,54px);margin-bottom:16px}
  .hero-sub{font-size:12px;letter-spacing:.12em;line-height:1.8;margin-bottom:26px}
  .hero-cnt>div{display:flex;flex-direction:column;gap:12px}
  .btn-pri,.btn-ghost{width:100%;justify-content:center;padding:16px 20px;font-size:11px}
  .btn-ghost{margin-left:0}

  /* Заголовки секций */
  .sec-head{padding:44px 18px 28px}
  .sec-title{font-size:clamp(26px,7.5vw,34px)}

  /* Категорийная мозаика */
  .cats{padding:0 12px 48px;gap:2px}
  .ct-txt{padding:14px}
  .ct-name{font-size:19px}

  /* Товар дня */
  .potd{margin:0 12px 48px}
  .potd-info{padding:28px 20px;gap:14px}
  .potd-pr{font-size:22px}
  .potd-btns{flex-direction:column}
  .potd-btns .btn-pri,.potd-btns .btn-ghost{width:100%}

  /* Тулбар каталога: фильтры одной прокручиваемой строкой */
  .toolbar{padding:0 0 16px;gap:12px;flex-direction:column;flex-wrap:nowrap;align-items:stretch}
  .filters,.tb-right{width:100%;max-width:100%;min-width:0}
  .filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding:1px 14px;gap:8px}
  .filters::-webkit-scrollbar{display:none}
  .flt-btn{flex:0 0 auto;margin:0;padding:11px 16px;font-size:11px;letter-spacing:.11em;white-space:nowrap}
  .tb-right{padding:0 14px;flex-wrap:nowrap}
  .search-box{flex:1;height:44px}
  .search-box input{width:100%;font-size:16px}
  .sort-sel{height:44px;flex:0 0 auto;max-width:46vw;font-size:16px}
  .result-line{padding:0 14px 14px}

  /* Сетка товаров: читабельные карточки */
  .products{padding:0 8px 24px}
  .grid{gap:2px}
  .card-info{padding:12px 10px 14px}
  .card-name{font-size:12px;min-height:34px}
  .card-rate{font-size:11px}
  .card-pr{font-size:15px}
  .card-old{font-size:12px}
  .card-disc{font-size:11px}
  .card-buy{padding:13px;font-size:11px;opacity:1}
  .wl-btn{opacity:1;width:38px;height:38px}
  .wl-btn svg{width:16px;height:16px}
  .more-wrap{padding:26px 0 56px}
  .more-btn{width:calc(100% - 36px);padding:16px}

  /* Врезка в каталоге */
  .inline-banner{flex-direction:column;text-align:center;gap:16px;padding:26px 18px}
  .ib-imgs{justify-content:center}
  .ib-txt h4{font-size:23px}

  /* Сплит-баннеры */
  .banner{height:330px}
  .banner-txt{padding:22px 18px}

  /* Фичи */
  .feat{padding:24px 14px}
  .feat:nth-child(2n){border-right:none}
  .feat:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .feat-txt{font-size:11px}

  /* Футер */
  footer{padding:44px 24px 28px}
  .ftr-col a{font-size:12px;margin-bottom:12px}
  .ftr-tag{font-size:11px}
  .ftr-bot{justify-content:center;text-align:center}

  /* Модалки: крестик заметен на фото */
  .modal-ov{padding:0}
  .modal-x{top:10px;right:10px;width:40px;height:40px;background:rgba(255,255,255,.92);
    border-radius:50%;box-shadow:0 2px 12px rgba(0,0,0,.18)}

  /* Квик-вью на весь экран */
  .qv-box{width:100vw;max-height:100%}
  .qv-img{aspect-ratio:4/5}
  .qv-img img{object-position:top center}
  .potd-img img{object-position:top center}
  .qv-info{padding:22px 18px}
  .qv-name{font-size:23px}
  .qv-desc{font-size:12px;line-height:1.8}
  .size-btn{width:48px;height:44px;font-size:12px}
  .qv-add{padding:17px;font-size:11px}
  .cross{padding:18px 18px 28px}

  /* Чекаут */
  .co-box{width:100vw;height:100%;max-height:100%;padding:26px 18px 30px}
  .co-title{font-size:26px}
  .co-form{grid-template-columns:1fr}
  .co-field{grid-column:1/-1}
  .co-field input,.co-field textarea,.co-field select{font-size:16px;padding:13px 12px}
  .co-ship label{padding:14px 8px;font-size:11px}
  .co-submit{padding:17px;font-size:11px}

  /* Корзина на весь экран */
  .drawer{width:100vw}
  .ci-name{font-size:12px}
  .ci-qty button{width:32px;height:32px;font-size:14px}
  .checkout-btn{padding:17px;font-size:11px}

  /* Скретч-попап: видео на весь фон, карта поверх */
  .popup-ov{padding:0}
  .popup-box{width:100vw;height:100%;max-height:100%;overflow-y:auto;
    grid-template-columns:1fr;min-height:0;position:relative}
  .pp-photo-col{position:absolute;inset:0;min-height:0;z-index:0}
  .pp-photo-col::after{background:linear-gradient(to top,
    rgba(10,8,8,.9) 0%,rgba(10,8,8,.5) 45%,rgba(10,8,8,.22) 100%)}
  .pp-main{position:relative;z-index:2;background:transparent;
    padding:52px 20px 36px;min-height:100%;justify-content:center}
  .pp-eye{color:rgba(255,255,255,.6);text-shadow:0 1px 8px rgba(0,0,0,.7)}
  .pp-title{font-size:26px;text-shadow:0 2px 14px rgba(0,0,0,.65)}
  #pp-close{opacity:1;pointer-events:auto;background:rgba(255,255,255,.92)}

  /* Сторис-вьювер */
  .st-box{padding:12px 10px}
  .st-foot p{font-size:12px}
  .st-btns button{padding:12px 14px;font-size:11px}

  /* Тосты: длинные сообщения (про подарунок/заборону перемотки) должны
     переноситься на 2-3 рядки, а не обрізатись «…» в один рядок */
  .toast{bottom:18px;font-size:11px;padding:13px 20px;max-width:90vw;
    white-space:normal;text-overflow:clip;overflow:visible;text-align:center;line-height:1.5}
}

/* Совсем узкие экраны */
@media(max-width:380px){
  .logo{font-size:16px;letter-spacing:.12em}
  .hero-title{font-size:40px}
  .st-ring{width:78px;height:78px}
}


/* ═════════ КОЛЕСО: результат + мобилка ═════════ */
.wh-result{margin-top:20px;border:1px solid rgba(255,255,255,.16);padding:18px 16px;text-align:center}
#wh-ov{z-index:890}
#wh-g{transition:transform 4.2s cubic-bezier(.12,.62,.06,1)}
@media(max-width:760px){
  .wh-box{width:100vw;max-height:100%;overflow-y:auto;grid-template-columns:1fr}
  .wh-left{padding:30px 22px 20px}
  .wh-right{padding:24px 18px 30px}
  #wh-ov.modal-ov{padding:0}
}

/* ═════════ ЗУМ ФОТО ═════════ */
.qv-img{position:relative;cursor:zoom-in}
/* лупа: приближение при наведении (только устройства с курсором) */
.qv-img.loupe img{width:100%;height:100%;object-fit:cover;transition:transform .18s ease;will-change:transform}
@media(hover:hover) and (pointer:fine){.qv-img .qv-zoom{display:none}}
.qv-zoom{position:absolute;bottom:12px;right:12px;z-index:3;width:42px;height:42px;border:none;border-radius:50%;
  background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 14px rgba(0,0,0,.22);cursor:zoom-in}
.qv-zoom svg{width:19px;height:19px;stroke:var(--ink);stroke-width:1.6;fill:none}
.zoom-ov{position:fixed;inset:0;z-index:1300;background:rgba(0,0,0,.97);overflow:hidden;touch-action:none;
  display:flex;align-items:center;justify-content:center}
.zoom-ov img{max-width:100vw;max-height:100vh;transform-origin:0 0;user-select:none;-webkit-user-drag:none}

/* ── Анти-FOUC: плавное появление после загрузки шрифтов ── */
body{transition:opacity .28s ease}
html.fonts-wait body{opacity:0}

/* ── Карточка вибору розміру зі сторіс ── */
.stqv-ov{position:fixed;inset:0;z-index:980;background:rgba(0,0,0,.55);
  display:flex;align-items:center;justify-content:center;padding:20px}
.stqv-box{position:relative;background:var(--white);width:min(420px,100%);
  display:flex;gap:16px;padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.5);animation:stqv-in .22s ease both}
@keyframes stqv-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.stqv-img{width:124px;flex:none}
.stqv-img img{width:100%;aspect-ratio:3/4;object-fit:cover}
.stqv-info{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0;padding:4px 26px 0 0}
.stqv-name{font-size:12px;line-height:1.45}
.stqv-pr{font-size:14px;font-weight:600}
.stqv-info .qv-add{width:100%;margin-top:auto}
@media(max-width:520px){
  /* на вузькому екрані картинка+текст впритул один до одного виглядали
     затиснуто (назва в 4 рядки, розміри розповзались на 2 нерівні рядки) —
     переходимо на вертикальну картку: фото на всю ширину зверху, інфо знизу */
  .stqv-box{flex-direction:column;padding:0;gap:0;width:min(360px,92vw);
    max-height:86vh;overflow-y:auto}
  .stqv-img{width:100%;flex:none}
  .stqv-img img{aspect-ratio:4/5;object-position:top center}
  .stqv-info{padding:16px 18px 18px;gap:12px}
  .stqv-name{padding-right:0;font-size:13px}
  #stqv-sizes{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
  #stqv-sizes .size-btn{width:100%}
}

/* ── Підтвердження виходу зі сторіс ── */
.stx-ov{position:fixed;inset:0;z-index:990;background:rgba(0,0,0,.6);
  display:flex;align-items:center;justify-content:center;padding:20px}
.stx-box{position:relative;background:var(--white);width:min(340px,100%);
  padding:28px 26px 24px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.5);
  animation:stqv-in .22s ease both}
.stx-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;margin-bottom:10px}
.stx-text{font-size:12.5px;color:var(--mid);line-height:1.6;margin-bottom:22px}
.stx-btns{display:flex;flex-direction:column;gap:10px}
.stx-yes{background:var(--black);color:var(--white);border:none;padding:14px;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;
  cursor:pointer;transition:opacity .2s}
.stx-yes:hover{opacity:.85}
.stx-no{background:none;border:1px solid var(--border);padding:13px;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mid);
  cursor:pointer;transition:border-color .2s,color .2s}
.stx-no:hover{border-color:var(--black);color:var(--black)}

/* ── Розмір у кошику ── */
.ci-size{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--mid)}

/* ── Текстовый редизайн: добивка контраста ── */
.geo-note{color:#757575}
.geo-sub{color:#5f5f5f}
.st-goal-count{color:#767676}
.age-no,.g2-later{color:#9a9a9a}
.age-no:hover,.g2-later:hover{color:#c4c4c4}
.info-eye{color:rgba(200,160,110,.8)}
.g2-plbl{color:#8d8070}

/* ── Подарунок за 200 сторіс: вибір пари панчіх ── */
.gift-ov{position:fixed;inset:0;z-index:1210;display:flex;align-items:center;justify-content:center;
  background:rgba(8,6,4,.85);backdrop-filter:blur(8px);animation:ag-in .35s ease both;padding:16px}
.gift-ov.ag-out{animation:ag-out .38s ease both}
.gift-box{max-width:640px;width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  overflow-y:auto;padding:36px 34px 28px;text-align:center;
  background:linear-gradient(160deg,#181410 0%,#100d0a 100%);
  border:1px solid rgba(180,140,100,.25);border-radius:4px;box-shadow:0 40px 100px rgba(0,0,0,.7)}
.gift-box .age-logo{margin-bottom:14px}
.gift-sub{font-family:'Inter',sans-serif;font-size:13px;color:#b3a897;line-height:1.75;margin-bottom:22px}
.gift-sub b{color:#c8a06e;font-weight:600}
.gift-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
@media(max-width:560px){.gift-row{grid-template-columns:1fr}}
.gift-card{border:1px solid rgba(255,255,255,.12);border-radius:3px;padding:14px;
  background:rgba(0,0,0,.25);display:flex;flex-direction:column;gap:10px;align-items:center}
.gift-img{width:100%;aspect-ratio:5/7;overflow:hidden;border-radius:2px;background:#111}
.gift-img img{width:100%;height:100%;object-fit:cover}
.gift-name{font-family:'Inter',sans-serif;font-size:12px;color:#e7ddcf;line-height:1.5;min-height:36px}
.gift-pr{font-family:'Inter',sans-serif;font-size:13px;color:#8d8070}
.gift-pr s{opacity:.75}
.gift-pr b{color:#c8a06e;margin-left:8px;text-transform:uppercase;letter-spacing:.1em;font-size:11px}
.gift-sizes{justify-content:center}
.gift-sizes .size-btn{border-color:rgba(255,255,255,.25);color:#e7ddcf;background:none}
.gift-sizes .size-btn.on{background:#c8a06e;border-color:#c8a06e;color:#1a1408}
.gift-take{width:100%;font-size:11px;padding:12px 10px;margin-top:2px}
.gift-note{font-family:'Inter',sans-serif;font-size:11px;color:#8d8070}
.ci-gift{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#8a6f4d;font-weight:600;margin-top:2px}
@media(max-width:560px){
  .gift-box{padding:24px 16px 20px}
  .gift-row{gap:10px}
  .gift-card{display:grid;grid-template-columns:104px 1fr;gap:6px 14px;align-items:center;text-align:left;padding:12px}
  .gift-img{width:104px;aspect-ratio:5/7;grid-row:1/4}
  .gift-name{min-height:0;font-size:11.5px}
  .gift-sizes{justify-content:flex-start}
  .gift-sizes .size-btn{width:40px;height:36px}
  .gift-take{grid-column:1/-1;margin-top:6px}
}

/* ── Упрощённый футер: только бренд ── */
.ftr-solo{max-width:1200px;margin:0 auto;text-align:center}
.ftr-solo .ftr-tag{margin-bottom:0}
.ftr-solo .ftr-brand{margin-bottom:10px}

/* ── Мобильное меню: список категорий ── */
.mmenu-nav{overflow-y:auto;flex:1;min-height:0}
.mmenu-nav a,.mmenu-nav button{font-size:24px;padding:13px 0}

/* ── Телефон: статичный код страны + только цифры ── */
.phone-wrap{display:flex;align-items:center;border:1px solid var(--border);background:var(--white)}
.phone-wrap:focus-within{border-color:var(--black)}
.phone-wrap.err{border-color:#c0392b}
.phone-cc{padding:11px 0 11px 12px;font-size:12px;font-weight:400;color:var(--ink);letter-spacing:.03em;flex:none}
.phone-wrap input{border:none;flex:1;min-width:0;outline:none;background:none;
  font-family:inherit;font-size:12px;padding:11px 12px 11px 7px}
.phone-wrap input.err{border:none}
@media(max-width:760px){
  .phone-cc{font-size:16px;padding:13px 0 13px 12px}
  .phone-wrap input{font-size:16px;padding:13px 12px 13px 7px}
}

/* ── Telegram login (Kikimora flow · Velvet Noir skin) ── */
.tg-gate{
  position:fixed;inset:0;z-index:2000;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,6,4,.97);
  backdrop-filter:blur(12px);
  padding:24px;
  animation:ag-in .35s ease both;
}
.tg-gate.hidden{display:none}
.tg-box{width:min(480px,calc(100% - 40px));text-align:center}
.tg-box .age-logo{margin-bottom:20px;color:rgba(200,160,110,.7)}
.tg-icon-wrap{
  width:72px;height:72px;margin:0 auto 18px;border-radius:50%;
  background:linear-gradient(145deg,rgba(200,160,110,.18),rgba(200,160,110,.04));
  border:1px solid rgba(200,160,110,.28);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 32px rgba(0,0,0,.35);
}
.tg-logo{display:block;width:64px;height:64px;border-radius:50%}
.tg-eye{
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(200,160,110,.55);margin-bottom:8px;
}
.tg-box .tg-title{margin-bottom:10px}
.tg-box .tg-lead{margin-bottom:22px}
.tg-progress{
  display:flex;align-items:center;justify-content:center;gap:0;
  margin:0 auto 24px;max-width:180px;
}
.tg-progress.hidden{display:none}
.tg-progress-dot{
  width:8px;height:8px;border-radius:50%;
  background:rgba(200,160,110,.22);
  border:1px solid rgba(200,160,110,.35);
  transition:background .25s,transform .25s;
}
.tg-progress-dot.active{background:#c8a06e;transform:scale(1.15);box-shadow:0 0 12px rgba(200,160,110,.45)}
.tg-progress-dot.done{background:rgba(200,160,110,.65)}
.tg-progress-line{flex:1;height:1px;background:rgba(200,160,110,.18);min-width:28px}
.tg-form{text-align:left}
.tg-pane.hidden{display:none}
.tg-field{display:block;margin-bottom:16px}
.tg-field span{
  display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:#8a8178;margin-bottom:8px;
}
.tg-field input,.tg-phone-wrap{
  width:100%;background:rgba(0,0,0,.28);
  border:1px solid rgba(180,140,100,.22);
  color:#f0e8df;font-family:'Inter',sans-serif;font-size:16px;
  border-radius:2px;outline:none;transition:border-color .2s,box-shadow .2s;
}
.tg-field input{padding:14px 15px}
.tg-field input:focus,.tg-phone-wrap:focus-within{
  border-color:rgba(200,160,110,.55);
  box-shadow:0 0 0 3px rgba(200,160,110,.12);
}
.tg-phone-wrap{display:flex;padding:0;overflow:hidden}
.tg-phone-wrap input{border:none;background:transparent;flex:1;min-width:0}
.tg-btn{width:100%;margin-top:4px}
.tg-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
.tg-btn-ghost{
  margin-top:12px;width:100%;padding:13px 20px;
  background:transparent;border:1px solid rgba(255,255,255,.12);
  border-radius:2px;color:#b3a897;font-family:'Inter',sans-serif;
  font-size:11px;letter-spacing:1.5px;text-transform:uppercase;
  cursor:pointer;transition:border-color .2s,color .2s;
}
.tg-btn-ghost:hover:not(:disabled){border-color:rgba(200,160,110,.45);color:#e8dfd3}
.tg-btn-ghost:disabled{opacity:.45;cursor:not-allowed}
.tg-delivery{
  text-align:left;background:rgba(200,160,110,.08);
  border:1px solid rgba(200,160,110,.22);
  border-radius:2px;padding:13px 14px;margin-bottom:16px;
  font-size:13px;line-height:1.6;color:#d4c8b8;
}
.tg-delivery b{color:#e8d5b8;font-weight:600}
.tg-delivery-soft{border-color:rgba(180,140,100,.16);background:rgba(0,0,0,.18)}
.tg-muted{color:#8a8178;font-size:12px;line-height:1.5}
.tg-blocked{border-color:rgba(192,57,43,.35);background:rgba(192,57,43,.1);color:#e8c4bc}
.tg-error{
  color:#e08a7a;font-size:13px;margin-top:14px;min-height:18px;text-align:center;
}
.tg-done-ring{
  width:56px;height:56px;margin:8px auto 14px;border-radius:50%;
  border:1px solid rgba(200,160,110,.35);
  display:flex;align-items:center;justify-content:center;color:#c8a06e;
}
.tg-done-ring svg{width:28px;height:28px}
.tg-ok{
  font-family:'Cormorant Garamond',serif;font-size:22px;color:#f0e8df;
  text-align:center;margin-bottom:6px;
}
.tg-done-sub{text-align:center;margin-bottom:4px}
.tg-foot{margin-top:22px;margin-bottom:0}
.tg-lead.hidden,.age-text.hidden{display:none}
@media(max-width:520px){
  .tg-box .age-box{padding:36px 24px 30px}
  .tg-icon-wrap{width:64px;height:64px}
  .tg-logo{width:56px;height:56px}
}
#app-main.hidden{display:none}

/* ── Telegram Mini App ── */
html.tg-miniapp body{
  padding-top:var(--tg-safe-top,0px);
  padding-bottom:var(--tg-safe-bottom,0px);
}
html.tg-miniapp header{top:var(--tg-safe-top,0px)}
html.tg-miniapp .drawer{padding-bottom:calc(16px + var(--tg-safe-bottom,0px))}
html.tg-miniapp .tg-gate{padding-top:calc(24px + var(--tg-safe-top,0px));padding-bottom:calc(24px + var(--tg-safe-bottom,0px))}
html.tg-miniapp .stories{padding-top:4px}
html.tg-miniapp{-webkit-tap-highlight-color:transparent}
/* Telegram dark color-scheme иначе красит button-текст в белый на белом */
html.tg-miniapp .size-btn,
html.tg-miniapp .ci-qty button,
html.tg-miniapp .qv-qty button{color:var(--black);-webkit-text-fill-color:var(--black)}
html.tg-miniapp .size-btn.on{color:var(--white);-webkit-text-fill-color:var(--white)}

