/* ============================================================
   Салон-магазин «Флора» — стили сайта
   ============================================================ */

:root{
  --pink:#e01f7c;
  --pink-dark:#c2185b;
  --ink:#3a2230;
  --muted:#6b4657;
  --muted-2:#8a6577;
  --muted-3:#b07d95;
  --page:#fffafc;
  --soft:#fdeef4;
  --soft-2:#fde4ef;
  --border:#f6dce7;
  --border-2:#f4b8d2;
  --border-input:#f0cddc;
  --ok:#4caf50;
  --shadow-card:0 8px 22px rgba(192,24,91,.08);
  --shadow-btn:0 10px 24px rgba(224,31,124,.35);
  --font-head:'Comfortaa',cursive;
  --font-body:'Nunito',system-ui,sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;overflow-x:hidden}
body{
  background:var(--page);
  font-family:var(--font-body);
  color:var(--ink);
}
a{color:var(--pink);text-decoration:none}
a:hover{color:var(--pink-dark)}
img{max-width:100%}
button{font-family:inherit}
::selection{background:#f8a5c8}

h1,h2,h3{font-family:var(--font-head);font-weight:700;margin:0}

/* ---- Утилиты ---- */
.head-font{font-family:var(--font-head)}
.pink{color:var(--pink)}
.hidden{display:none !important}

.fl-scroll::-webkit-scrollbar{width:8px;height:8px}
.fl-scroll::-webkit-scrollbar-thumb{background:#f2b9d0;border-radius:8px}

@keyframes fl-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* ---- Каркас страницы ---- */
.page{
  width:100%;
  background:var(--page);min-height:100vh;
  overflow:hidden;
}

/* ============================================================
   HEADER
   ============================================================ */
.header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;gap:32px;
  padding:14px 48px;
  background:rgba(255,250,252,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.brand{display:flex;align-items:center;gap:13px;cursor:pointer;flex:none}
.brand__logo{width:52px;height:52px;border-radius:14px;object-fit:cover;box-shadow:0 4px 14px rgba(224,31,124,.25)}
.brand__name{font-family:var(--font-head);font-weight:700;font-size:23px;color:var(--pink);letter-spacing:.5px;line-height:1}
.brand__sub{font-size:10px;letter-spacing:3px;color:#c88ba6;font-weight:700;margin-top:2px}

.nav{display:flex;gap:6px;margin-left:8px}
.nav__link{
  cursor:pointer;padding:9px 15px;border-radius:10px;
  font-weight:700;font-size:15px;color:var(--muted);
  transition:background .15s,color .15s;
}
.nav__link:hover{background:var(--soft);color:var(--pink)}
.nav__link.is-active{background:var(--pink);color:#fff}

.header__right{margin-left:auto;display:flex;align-items:center;gap:20px;flex:none}
.header__phone{font-weight:800;font-size:16px;color:var(--ink);white-space:nowrap}
.cart-btn{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:46px;height:46px;border:0;border-radius:13px;background:var(--pink);
  cursor:pointer;box-shadow:0 6px 16px rgba(224,31,124,.35);
}
.cart-btn__count{
  position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;
  border-radius:10px;background:#fff;color:var(--pink);font-size:12px;font-weight:800;
  display:flex;align-items:center;justify-content:center;border:2px solid var(--pink);
}

/* ---- Мобильное меню-бургер ---- */
.burger{display:none;margin-left:auto;width:46px;height:46px;border:0;border-radius:13px;
  background:var(--soft);color:var(--pink);cursor:pointer;font-size:22px}

/* ============================================================
   Общие элементы
   ============================================================ */
.btn{
  display:inline-block;cursor:pointer;border:0;
  padding:16px 34px;border-radius:14px;
  background:var(--pink);color:#fff;font-weight:800;font-size:16px;
  box-shadow:var(--shadow-btn);text-align:center;
  transition:transform .12s,box-shadow .12s;
}
.btn:hover{transform:translateY(-2px);color:#fff}
.btn--sm{padding:9px 16px;border-radius:11px;font-size:14px;box-shadow:none}
.btn--block{display:block;width:100%}

.breadcrumb{font-size:14px;color:var(--muted-3);font-weight:700;margin-bottom:6px}
.breadcrumb span{cursor:pointer}
.breadcrumb span:hover{color:var(--pink)}

.section{padding:60px 48px}
.section-eyebrow{font-weight:800;letter-spacing:2px;color:var(--pink);font-size:13px}
.section-title{font-family:var(--font-head);font-size:38px;color:var(--ink);margin:8px 0 0}
.section-head--center{text-align:center;margin-bottom:44px}

.link-more{cursor:pointer;font-weight:800;color:var(--pink);font-size:16px}

/* ---- Карточка товара ---- */
.card{
  cursor:pointer;background:#fff;border-radius:22px;overflow:hidden;
  border:1px solid var(--border);box-shadow:var(--shadow-card);
  transition:transform .15s,box-shadow .15s;
}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(192,24,91,.16)}
.card__media{position:relative;overflow:hidden}
.card__media--sq{aspect-ratio:1/1}
.card__media--43{aspect-ratio:4/3}
.card__img{width:100%;height:100%;object-fit:cover;display:block}
.card__tag{
  position:absolute;top:12px;left:12px;padding:5px 11px;border-radius:20px;
  background:rgba(224,31,124,.92);color:#fff;font-size:11px;font-weight:800;
}
.card__body{padding:18px 18px 20px}
.card__cat{font-size:12px;color:var(--muted-3);font-weight:700}
.card__name{font-family:var(--font-head);font-size:18px;color:var(--ink);margin:5px 0 12px}
.card__row{display:flex;align-items:center;justify-content:space-between}
.card__price{font-weight:800;font-size:20px;color:var(--pink)}
.card__plus{
  width:40px;height:40px;border-radius:12px;background:var(--soft);
  display:flex;align-items:center;justify-content:center;color:var(--pink);
  font-size:20px;font-weight:800;
}

.grid{display:grid;gap:24px}
.grid--2{grid-template-columns:1fr 1fr}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}

/* Плейсхолдер для фото, которое ещё не загружено */
.ph{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  width:100%;height:100%;
  background:linear-gradient(135deg,#fde4ef,#fbeef4 55%,#f8d3e4);
  color:var(--muted-3);text-align:center;padding:12px;
}
.ph__ico{font-size:34px;opacity:.7}
.ph__txt{font-size:12px;font-weight:700;color:var(--muted-2)}

/* ============================================================
   HOME — hero
   ============================================================ */
.hero{
  position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px;
  padding:56px 48px 64px;
  background:radial-gradient(120% 120% at 15% 0%,#fde4ef 0%,#fbeef4 45%,#fffafc 100%);
  overflow:hidden;
}
.hero__blob{position:absolute;border-radius:50%;filter:blur(10px)}
.hero__blob--1{top:-60px;left:-40px;width:220px;height:220px;background:#f8a5c8;opacity:.3}
.hero__blob--2{bottom:-80px;right:38%;width:160px;height:160px;background:#f6c6da;opacity:.4;filter:blur(8px)}
.hero__content{align-self:center;position:relative;z-index:2;max-width:520px}
.badge{
  display:inline-flex;align-items:center;gap:8px;padding:7px 15px;border-radius:30px;
  background:#fff;border:1px solid #f6c6da;font-weight:800;font-size:13px;color:var(--pink);
  box-shadow:0 4px 14px rgba(224,31,124,.1);
}
.hero__title{font-size:58px;line-height:1.08;margin:22px 0 0;color:var(--ink);letter-spacing:-.5px}
.hero__text{font-size:19px;line-height:1.6;color:var(--muted);margin:22px 0 0;max-width:460px}
.hero__cta{display:flex;gap:14px;margin-top:34px}
.hero__stats{display:flex;gap:32px;margin-top:40px}
.stat__num{font-family:var(--font-head);font-weight:700;font-size:28px;color:var(--pink)}
.stat__label{font-size:13px;color:var(--muted-2);font-weight:600}
.hero__media{position:relative;z-index:2;display:flex;justify-content:center;align-items:center}
.hero__ring{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#fbdcea 70%)}
.hero__img{
  position:relative;width:430px;height:500px;object-fit:cover;
  border-radius:200px 200px 32px 32px;box-shadow:0 30px 60px rgba(192,24,91,.28);
  animation:fl-float 6s ease-in-out infinite;
}
.hero__badge{
  position:absolute;bottom:34px;right:20px;background:#fff;border-radius:18px;
  padding:14px 18px;box-shadow:0 14px 30px rgba(192,24,91,.2);z-index:3;
}
.hero__badge-cap{font-size:12px;color:var(--muted-2);font-weight:700}
.hero__badge-name{font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--ink);margin-top:2px}
.hero__badge-price{font-weight:800;color:var(--pink);font-size:17px;margin-top:2px}

/* ---- Преимущества ---- */
.feature{background:var(--soft);border-radius:22px;padding:30px 26px;border:1px solid var(--border)}
.feature__ico{
  width:56px;height:56px;border-radius:16px;background:var(--pink);
  display:flex;align-items:center;justify-content:center;font-size:26px;
  box-shadow:0 8px 18px rgba(224,31,124,.28);
}
.feature__title{font-family:var(--font-head);font-size:19px;margin:18px 0 8px;color:var(--ink)}
.feature__text{font-size:15px;line-height:1.55;color:var(--muted);margin:0}

.bestsellers-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}

/* ============================================================
   CATALOG
   ============================================================ */
.catalog{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start}
.filters{
  position:sticky;top:92px;background:var(--soft);border:1px solid var(--border);
  border-radius:22px;padding:26px 24px;
}
.filters__title{font-family:var(--font-head);font-size:18px;color:var(--ink);margin-bottom:18px}
.filters__group-title{font-weight:800;font-size:13px;color:var(--pink);letter-spacing:1px;margin:0 0 12px}
.filters__col{display:flex;flex-direction:column;gap:8px;margin-bottom:26px}
.filters__wrap{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.chip{
  cursor:pointer;padding:10px 14px;border-radius:12px;font-weight:700;font-size:15px;
  background:#fff;color:var(--muted);border:1px solid var(--border-2);transition:.15s;
}
.chip--pill{padding:7px 13px;border-radius:20px;font-size:13px}
.chip:hover{border-color:var(--pink)}
.chip.is-active{background:var(--pink);color:#fff;border-color:var(--pink)}
.catalog__count{color:var(--muted);font-weight:700;font-size:15px;margin-bottom:20px}
.catalog__empty{padding:60px 20px;text-align:center;color:var(--muted)}

/* ============================================================
   PRODUCT
   ============================================================ */
.product{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
.product__media{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 20px 50px rgba(192,24,91,.18)}
.product__img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.product__tag{position:absolute;top:16px;left:16px;padding:7px 14px;border-radius:22px;background:rgba(224,31,124,.92);color:#fff;font-size:13px;font-weight:800}
.thumbs{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}
.thumb{
  position:relative;width:84px;height:84px;border-radius:14px;overflow:hidden;
  cursor:pointer;border:2px solid var(--border);background:var(--soft);flex:none;transition:border-color .15s}
.thumb:hover{border-color:var(--border-2)}
.thumb.is-active{border-color:var(--pink)}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb--ph::after{content:'🌸';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:26px;opacity:.6}
.product__cat{font-size:13px;color:var(--muted-3);font-weight:800;letter-spacing:1px}
.product__title{font-size:42px;color:var(--ink);margin:8px 0 14px;line-height:1.1}
.product__price{font-weight:800;font-size:34px;color:var(--pink);margin-bottom:22px}
.product__desc{font-size:17px;line-height:1.65;color:var(--muted);margin:0 0 24px}
.checklist{display:flex;flex-direction:column;gap:11px;margin-bottom:30px}
.checklist__item{display:flex;align-items:center;gap:11px;font-size:15px;color:var(--ink);font-weight:600}
.checklist__item b{color:var(--pink);font-weight:800}
.product__buy{display:flex;gap:14px;align-items:center}
.qty{display:flex;align-items:center;gap:16px;background:var(--soft);border:1px solid var(--border-2);border-radius:14px;padding:12px 18px}
.qty__btn{cursor:pointer;font-size:22px;font-weight:800;color:var(--pink);width:20px;text-align:center;user-select:none}
.qty__val{font-weight:800;font-size:18px;min-width:20px;text-align:center}
.product__note{margin-top:22px;padding:16px 20px;background:var(--soft);border-radius:14px;font-size:14px;color:var(--muted);line-height:1.5}
.product__note b{color:var(--ink)}

/* ============================================================
   DELIVERY / ABOUT
   ============================================================ */
.page-hero{
  position:relative;padding:56px 48px;overflow:hidden;
  background:radial-gradient(120% 120% at 80% 0%,#fde4ef 0%,#fbeef4 50%,#fffafc 100%);
}
.page-hero--left{background:radial-gradient(120% 120% at 15% 0%,#fde4ef 0%,#fbeef4 45%,#fffafc 100%)}
.page-hero__title{font-size:46px;color:var(--ink);margin:0;max-width:640px;line-height:1.08}
.page-hero__text{font-size:19px;line-height:1.6;color:var(--muted);margin:18px 0 0;max-width:560px}

.step{background:var(--soft);border:1px solid var(--border);border-radius:22px;padding:30px 26px}
.step__n{
  width:48px;height:48px;border-radius:14px;background:var(--pink);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-weight:700;font-size:20px;box-shadow:0 8px 18px rgba(224,31,124,.28);
}
.step__title{font-family:var(--font-head);font-size:20px;margin:18px 0 8px;color:var(--ink)}
.step__text{font-size:15px;line-height:1.55;color:var(--muted);margin:0}

.info-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:32px 30px;box-shadow:var(--shadow-card)}
.info-card__title{font-family:var(--font-head);font-size:24px;color:var(--ink);margin:0 0 18px}
.info-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--border)}
.info-row:last-child{border-bottom:0;padding-bottom:0}
.info-row__val{font-weight:800;color:var(--pink)}
.info-row__val--ok{color:var(--ok)}
.info-row__val--ink{color:var(--ink);font-weight:700}

.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.about-hero__img{width:100%;max-width:440px;aspect-ratio:4/5;object-fit:cover;border-radius:200px 200px 30px 30px;box-shadow:0 26px 54px rgba(192,24,91,.26)}
.stat-card{text-align:center;background:var(--soft);border:1px solid var(--border);border-radius:22px;padding:30px 20px}
.stat-card__num{font-family:var(--font-head);font-size:40px;color:var(--pink)}
.stat-card__label{font-size:15px;color:var(--muted);font-weight:600;margin-top:6px}
.about-what{background:#fff;border:1px solid var(--border);border-radius:24px;padding:40px;box-shadow:var(--shadow-card)}
.about-what__items{display:flex;flex-wrap:wrap;justify-content:center;gap:20px 48px}
.about-what__item{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:var(--ink)}
.about-what__item span{font-size:24px}

/* ============================================================
   CONTACTS
   ============================================================ */
.contacts{display:grid;grid-template-columns:1fr 1.1fr;gap:34px;align-items:start}
.contacts__col{display:flex;flex-direction:column;gap:18px}
.contact-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:26px 28px;box-shadow:var(--shadow-card)}
.contact-card__label{font-weight:800;font-size:13px;color:var(--pink);letter-spacing:1px;margin-bottom:8px}
.contact-card__phone{font-family:var(--font-head);font-weight:700;font-size:28px;color:var(--ink)}
.contact-card__big{font-size:18px;color:var(--ink);font-weight:700}
.contact-card__small{font-size:15px;color:var(--muted);margin-top:4px}
.social{display:flex;gap:10px;margin-top:16px}
.social__btn{display:inline-block;padding:10px 18px;border-radius:12px;background:var(--pink);color:#fff;font-weight:800;cursor:pointer;text-decoration:none;transition:opacity .15s}
.social__btn:hover{opacity:.88}
.social__btn--ghost{background:var(--soft);color:var(--pink);border:1px solid var(--border-2)}
.map{border-radius:24px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-card);min-height:520px;background:#eef2f4;position:relative}
.map iframe{width:100%;height:100%;border:0;position:absolute;inset:0}

/* ============================================================
   CHECKOUT
   ============================================================ */
.checkout{max-width:820px;margin:0 auto}
.checkout__head{display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,#fde4ef,#fbeef4);border:1px solid var(--border);border-radius:22px;padding:20px 24px;margin-bottom:26px}
.checkout__head-img{width:72px;height:72px;border-radius:16px;object-fit:cover;flex:none;box-shadow:0 8px 18px rgba(224,31,124,.22)}
.checkout__head-eyebrow{font-weight:800;letter-spacing:2px;color:var(--pink);font-size:12px}
.checkout__head-title{font-family:var(--font-head);font-size:32px;color:var(--ink);margin:4px 0 0;line-height:1.1}
.form{display:flex;flex-direction:column;gap:20px}
.fieldset{background:#fff;border:1px solid var(--border);border-radius:22px;padding:26px 26px 28px;box-shadow:0 8px 22px rgba(192,24,91,.07)}
.fieldset__head{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.fieldset__n{width:30px;height:30px;border-radius:9px;background:var(--pink);color:#fff;font-family:var(--font-head);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
.fieldset__title{font-family:var(--font-head);font-size:20px;color:var(--ink);margin:0}
.field{display:flex;flex-direction:column;gap:7px}
.field__label{font-size:13px;font-weight:700;color:var(--muted)}
.field__req{color:var(--pink)}
.field__hint{font-weight:600;color:var(--muted-3)}
.input,.select,.textarea{
  font-family:inherit;font-size:15px;padding:13px 15px;
  border:1.5px solid var(--border-input);border-radius:12px;
  background:var(--page);color:var(--ink);outline:none;transition:border-color .15s,background .15s;width:100%;
}
.textarea{resize:vertical}
.input:focus,.select:focus,.textarea:focus{border-color:var(--pink);background:#fff}
.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cols-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:16px}
.mt-16{margin-top:16px}
.mb-16{margin-bottom:16px}
.check{display:flex;align-items:center;gap:11px;cursor:pointer;font-size:15px;color:var(--ink);font-weight:600}
.check--top{align-items:flex-start;line-height:1.5;font-size:14px}
.check input{width:19px;height:19px;accent-color:var(--pink);cursor:pointer;flex:none}
.check--top input{margin-top:1px}
.check-col{display:flex;flex-direction:column;gap:11px}
.summary{background:linear-gradient(120deg,#fde4ef,#fbeef4);border:1px solid var(--border);border-radius:22px;padding:26px 26px 28px}
.summary__row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.summary__cap{font-size:13px;color:var(--muted-2);font-weight:700}
.summary__total{font-family:var(--font-head);font-weight:700;font-size:30px;color:var(--pink)}

/* ============================================================
   CART DRAWER
   ============================================================ */
.overlay{position:fixed;inset:0;z-index:90;background:rgba(58,34,48,.42);backdrop-filter:blur(2px)}
.drawer{
  position:fixed;top:0;right:0;bottom:0;z-index:100;width:420px;max-width:92vw;
  background:var(--page);box-shadow:-14px 0 50px rgba(192,24,91,.2);
  display:flex;flex-direction:column;
  transform:translateX(100%);transition:transform .28s ease;
}
.drawer.is-open{transform:translateX(0)}
.drawer__head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--border)}
.drawer__title{font-family:var(--font-head);font-size:22px;color:var(--ink)}
.drawer__close{cursor:pointer;width:38px;height:38px;border:0;border-radius:11px;background:var(--soft);color:var(--pink);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800}
.drawer__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;text-align:center}
.drawer__empty-ico{font-size:54px}
.drawer__body{flex:1;overflow-y:auto;padding:18px 22px;display:flex;flex-direction:column;gap:14px}
.drawer__foot{border-top:1px solid var(--border);padding:20px 24px 24px}
.drawer__sumrow{display:flex;justify-content:space-between;font-size:15px;color:var(--muted);margin-bottom:6px}
.drawer__total{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-head);font-weight:700;font-size:22px;color:var(--ink);padding-top:12px;border-top:1px dashed var(--border-2)}
.cart-item{display:flex;gap:14px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:12px}
.cart-item__media{width:78px;height:78px;border-radius:13px;overflow:hidden;flex:none}
.cart-item__img{width:100%;height:100%;object-fit:cover}
.cart-item__name{font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--ink)}
.cart-item__price{font-weight:800;color:var(--pink);font-size:16px;margin-top:2px}
.cart-item__ctrl{display:flex;align-items:center;gap:12px;margin-top:8px}
.cart-item__qty{display:flex;align-items:center;gap:12px;background:var(--soft);border:1px solid var(--border-2);border-radius:10px;padding:5px 12px}
.cart-item__qbtn{cursor:pointer;font-size:18px;font-weight:800;color:var(--pink);user-select:none}
.cart-item__remove{cursor:pointer;font-size:13px;color:var(--muted-3);font-weight:700}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{background:var(--ink);color:#f4dce7;padding:52px 48px 34px}
.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
.footer__brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer__logo{width:48px;height:48px;border-radius:13px;object-fit:cover}
.footer__name{font-family:var(--font-head);font-weight:700;font-size:22px;color:#fff}
.footer__sub{font-size:10px;letter-spacing:3px;color:#e08bb0;font-weight:700}
.footer__text{font-size:14px;line-height:1.6;color:#c9a8ba;margin:0;max-width:280px}
.footer__col-title{font-weight:800;font-size:15px;color:#fff;margin-bottom:14px}
.footer__links{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#c9a8ba}
.footer__links span{cursor:pointer}
.footer__links span:hover{color:#fff}
.footer__hours{font-size:14px;color:#c9a8ba;line-height:1.7}
.footer__hours b{color:#e08bb0;font-weight:700}
.footer__phone{font-family:var(--font-head);font-weight:700;font-size:22px;color:#fff;display:block;margin-bottom:6px}
.footer__contact{font-size:14px;color:#c9a8ba;margin-bottom:14px}
.footer__social{display:flex;gap:10px}
.footer__social span{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;cursor:pointer}
.footer__social span:first-child{background:var(--pink)}
.footer__social span:last-child{background:#4b3240}
.footer__copy{border-top:1px solid #4b3240;margin-top:36px;padding-top:20px;font-size:13px;color:#9a7688}

/* ---- toast (уведомление) ---- */
.toast{
  position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);
  background:var(--ink);color:#fff;padding:14px 24px;border-radius:14px;font-weight:700;
  box-shadow:0 14px 30px rgba(58,34,48,.35);opacity:0;pointer-events:none;
  transition:opacity .25s,transform .25s;z-index:200;
}
.toast.is-show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ============================================================
   АДАПТИВ
   ============================================================ */
@media (max-width:1080px){
  .hero__img{width:100%;height:auto;aspect-ratio:4/5}
  .hero__ring{display:none}
}
@media (max-width:900px){
  .nav{display:none}
  .burger{display:flex;align-items:center;justify-content:center}
  .header__right{display:none}
  .header{gap:12px;padding:12px 20px}
  .grid--4{grid-template-columns:1fr 1fr}
  .grid--3{grid-template-columns:1fr 1fr}
  .hero{grid-template-columns:1fr}
  /* grid-элементы по умолчанию min-width:auto — из-за этого картинка распирала
     колонку шире экрана и обрезалась. min-width:0 позволяет колонке сжаться. */
  .hero__content,.hero__media{min-width:0;max-width:100%}
  .hero__media .card__img,.hero__img{width:100%;max-width:100%;min-width:0;height:auto;aspect-ratio:4/5}
  .hero__badge{right:12px;bottom:16px;padding:11px 14px}
  .about-hero{grid-template-columns:1fr}
  .contacts{grid-template-columns:1fr}
  .product{grid-template-columns:1fr}
  .catalog{grid-template-columns:1fr}
  .filters{position:static}
  .footer__grid{grid-template-columns:1fr 1fr}
  .section,.hero,.page-hero{padding-left:20px;padding-right:20px}
  .hero__title{font-size:42px}
  .section-title,.page-hero__title,.product__title{font-size:32px}
}
@media (max-width:560px){
  .grid--4,.grid--3,.grid--2,.cols-2,.cols-4{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .hero__stats{flex-wrap:wrap;gap:20px}
  .bestsellers-head{flex-direction:column;align-items:flex-start;gap:12px}
  .hero__title{font-size:34px}
}

/* Мобильная навигация (выпадающая) */
.mnav{display:none;flex-direction:column;gap:4px;padding:10px 20px 16px;border-bottom:1px solid var(--border);background:var(--page)}
.mnav.is-open{display:flex}
.mnav__link{padding:12px 14px;border-radius:10px;font-weight:700;color:var(--muted);cursor:pointer}
.mnav__link.is-active{background:var(--pink);color:#fff}
@media (min-width:901px){.mnav{display:none !important}}

/* ============================================================
   ПОСАДОЧНЫЕ СТРАНИЦЫ (monobukety-bor.html, dostavka-cvetov-bor.html)
   Статичный HTML для поисковиков; общий скрипт — js/landing.js
   ============================================================ */
.header a.nav__link:not(.is-active),.mnav a.mnav__link{color:var(--muted)}
.header a.nav__link:not(.is-active):hover{color:var(--pink)}
.brand{text-decoration:none;color:inherit}
.breadcrumb a{color:inherit}
.breadcrumb a:hover{color:var(--pink)}
.footer__links a{color:inherit}
.footer__links a:hover{color:#fff}
a.card{display:block;color:inherit}
.lp-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.btn--ghost{background:#fff;color:var(--pink);border:2px solid var(--border-2);box-shadow:none}
.btn--ghost:hover{color:var(--pink-dark)}
.lp-text{max-width:820px;font-size:17px;line-height:1.7;color:var(--muted)}
.lp-text p{margin:0 0 14px}
.lp-text h2,.lp-h2{font-size:30px;color:var(--ink);margin:0 0 16px}
.lp-group{margin-bottom:52px}
.lp-group__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:20px}
.lp-group__head p{margin:6px 0 0;color:var(--muted);font-size:16px;max-width:640px;line-height:1.55}
.lp-zones{width:100%;border-collapse:collapse;font-size:16px}
.lp-zones th,.lp-zones td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--border)}
.lp-zones th{color:var(--muted-3);font-size:13px;letter-spacing:1px;text-transform:uppercase}
.lp-zones td:last-child,.lp-zones th:last-child{text-align:right;font-weight:800;color:var(--pink);white-space:nowrap}
.lp-zones tr:first-child td{font-weight:800;color:var(--ink)}
.lp-zones-wrap{columns:2;column-gap:32px}
.lp-faq details{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px 20px;margin-bottom:12px}
.lp-faq summary{cursor:pointer;font-weight:800;color:var(--ink);font-size:17px}
.lp-faq details p{margin:12px 0 0;color:var(--muted);line-height:1.6}
@media (max-width:900px){
  .page-hero__title{font-size:34px}
  .lp-zones-wrap{columns:1}
}
@media (max-width:560px){
  .lp-text h2,.lp-h2{font-size:24px}
  .lp-zones th,.lp-zones td{padding:10px 6px}
}
