/* Вариант B — тёплая пастель, бутиковый вид */

:root{
  --ink:#3a3230;
  --muted:#867a75;
  --line:#ece2d9;
  --bg:#faf6f1;
  --bg-card:#ffffff;
  --accent:#c07f8e;
  --accent-soft:#f6e7e9;
  --green:#7e9377;
  --radius:18px;
  --wrap:1140px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font:400 17px/1.7 var(--font);
  -webkit-font-smoothing:antialiased;
}

img{display:block;max-width:100%;height:auto}
a{color:inherit}

h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;line-height:1.14}
h1{font-size:clamp(2.15rem,5.4vw,3.8rem)}
h2{font-size:clamp(1.75rem,3.6vw,2.65rem)}
h3{font-size:1.2rem}
p{margin:0}

.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}
.wrap-narrow{max-width:780px}

/* ---------- Кнопки ---------- */

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:1rem 1.8rem;
  border:1px solid transparent;border-radius:99px;
  font-size:.95rem;font-weight:500;line-height:1;
  text-decoration:none;white-space:nowrap;
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.btn-sm{padding:.72rem 1.25rem;font-size:.875rem}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 8px 20px -10px rgba(192,127,142,.9)}
.btn-primary:hover{background:#ad6c7c;transform:translateY(-1px)}
.btn-outline{border-color:var(--line);background:var(--bg-card);color:var(--ink)}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.btn-ghost{
  display:inline-block;margin-top:1.2rem;
  color:var(--muted);text-decoration:none;font-size:.95rem;
}
.btn-ghost:hover{color:var(--accent)}

/* ---------- Кнопки мессенджеров ---------- */

.messenger-row{
  display:flex;flex-wrap:wrap;align-items:stretch;gap:.9rem;
  margin-top:2rem;
}
.messenger-row-center{justify-content:center;margin-bottom:2rem}

.btn-max,.btn-tg{
  display:inline-flex;align-items:center;justify-content:center;gap:.7rem;
  border:none;border-radius:16px;
  font-weight:700;line-height:1.15;letter-spacing:.01em;
  text-decoration:none;white-space:nowrap;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.btn-max{
  background:#3d9cf0;color:#fff;
  box-shadow:0 12px 28px -12px rgba(61,156,240,.85);
}
.btn-max:hover{filter:brightness(1.06);transform:translateY(-2px)}
.btn-tg{
  background:#229ed9;color:#fff;
  box-shadow:0 12px 28px -12px rgba(34,158,217,.85);
}
.btn-tg:hover{filter:brightness(1.06);transform:translateY(-2px)}

.btn-max-lg,.btn-tg-lg{
  padding:1.15rem 1.7rem;
  font-size:1.15rem;min-height:64px;
}
.btn-max-sm{
  padding:.7rem 1.1rem;font-size:.88rem;border-radius:12px;min-height:44px;
  box-shadow:0 8px 18px -10px rgba(61,156,240,.9);
}
.btn-max:not(.btn-max-lg):not(.btn-max-sm),
.btn-tg:not(.btn-tg-lg){
  padding:.95rem 1.35rem;font-size:1rem;min-height:52px;
}

.icon-max,.icon-tg{width:1.55em;height:1.55em;flex:none}
.btn-max-sm .icon-max{width:1.25em;height:1.25em}

.cta-band{
  margin-top:2.8rem;padding:2rem 1.8rem;
  background:linear-gradient(135deg,#e8f4fd,#f6e7e9);
  border-radius:var(--radius);text-align:center;
}
.cta-band-title{
  font-family:var(--serif);font-size:clamp(1.25rem,2.5vw,1.7rem);
  margin-bottom:.2rem;color:var(--ink);
}
.cta-band .messenger-row{justify-content:center;margin-top:1.4rem}

/* ---------- Шапка ---------- */

.site-header{
  position:sticky;top:0;z-index:20;
  background:rgba(250,246,241,.92);
  backdrop-filter:saturate(150%) blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;gap:1.5rem;min-height:74px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}
.brand-mark{
  width:26px;height:26px;flex:none;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#f7dfe4,var(--accent));
}
.brand-text{display:flex;flex-direction:column;font-family:var(--serif);font-size:1.18rem;line-height:1.1}
.brand-text small{
  font-family:var(--font);font-size:.7rem;color:var(--muted);
  letter-spacing:.12em;text-transform:uppercase;margin-top:.15rem;
}
.site-nav{display:flex;gap:1.7rem}
.site-nav a{font-size:.94rem;color:var(--muted);text-decoration:none}
.site-nav a:hover{color:var(--accent)}

/* ---------- Первый экран ---------- */

.hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(2rem,4vw,3.5rem)}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.eyebrow{
  display:inline-block;margin-bottom:1.2rem;padding:.4rem 1rem;
  background:var(--accent-soft);border-radius:99px;
  font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);
}
.hero-text h1{margin-bottom:1.4rem}
.lead{font-size:1.12rem;color:var(--muted);max-width:52ch}
.hero-note{margin-top:1.2rem;font-size:.9rem;color:var(--muted)}
.hero-media{margin:0;position:relative}
.hero-media img{
  width:100%;aspect-ratio:4/5;object-fit:cover;
  border-radius:220px 220px var(--radius) var(--radius);
  box-shadow:0 30px 60px -30px rgba(58,50,48,.4);
}

/* ---------- Полоса городов ---------- */

.strip{background:var(--accent-soft)}
.strip-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.8rem;padding-block:1.25rem}
.strip-label{font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.strip-list{display:flex;flex-wrap:wrap;gap:.5rem .7rem;margin:0;padding:0;list-style:none}
.strip-list li{
  background:rgba(255,255,255,.75);border-radius:99px;
  padding:.34rem .95rem;font-size:.92rem;
}

/* ---------- Секции ---------- */

.section{padding:clamp(3.5rem,7vw,6rem) 0}
.section-alt{background:var(--bg-card)}
.section-head{max-width:64ch;margin-bottom:clamp(2rem,4vw,3rem)}
.section-head h2+p{margin-top:1rem;color:var(--muted)}

/* ---------- Каталог ---------- */

.cards{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));
  gap:clamp(1.5rem,2.6vw,2.2rem);
  margin:0;padding:0;list-style:none;
}
.card{
  display:flex;flex-direction:column;overflow:hidden;
  background:var(--bg-card);border-radius:var(--radius);
  box-shadow:0 18px 36px -28px rgba(58,50,48,.55);
  transition:transform .22s ease,box-shadow .22s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:0 26px 46px -26px rgba(58,50,48,.55)}
.card-media{display:block;position:relative}
.card-media img{width:100%;aspect-ratio:4/5;object-fit:cover}
.card-body{display:flex;flex-direction:column;flex:1;padding:1.3rem 1.4rem 1.5rem;position:relative}
.card-title{margin-bottom:.55rem}
.card-text{font-size:.93rem;color:var(--muted);margin-bottom:1.3rem}
.card-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto}
.price{
  padding:.4rem 1rem;border-radius:99px;
  background:var(--accent-soft);color:var(--accent);
  font-size:1rem;font-weight:600;white-space:nowrap;
}
.catalog-note{
  margin-top:2.5rem;padding:1.1rem 1.4rem;
  background:var(--bg-card);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;
  font-size:.94rem;color:var(--muted);
}

/* ---------- Преимущества ---------- */

.features{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));
  gap:clamp(1.2rem,2.4vw,1.8rem);margin:0;padding:0;list-style:none;
}
.features li{background:var(--bg);border-radius:var(--radius);padding:1.6rem}
.features h3{margin-bottom:.6rem;color:var(--green)}
.features p{font-size:.93rem;color:var(--muted)}

/* ---------- Шаги ---------- */

.steps{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:clamp(1.5rem,3vw,2.4rem);margin:0;padding:0;list-style:none;
}
.step-num{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;margin-bottom:1.1rem;border-radius:50%;
  background:var(--accent-soft);color:var(--accent);
  font-family:var(--serif);font-size:1.25rem;
}
.steps h3{margin-bottom:.5rem}
.steps p{font-size:.93rem;color:var(--muted)}

/* ---------- Доставка ---------- */

.delivery-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.delivery-grid h2{margin-bottom:1.2rem}
.delivery-grid p+p{margin-top:1rem;color:var(--muted);font-size:.96rem}
.delivery-grid .lead{color:var(--ink);font-size:1.06rem}
.zones{margin:0;padding:0;list-style:none;display:grid;gap:.7rem}
.zones li{
  display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  background:var(--bg);border-radius:99px;padding:.85rem 1.4rem;
}
.section-alt .zones li{background:var(--bg)}
.zones strong{font-weight:500}
.zones span{font-size:.84rem;color:var(--green)}

/* ---------- Заказ ---------- */

.channel{
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.6rem 1rem;
  margin-top:1.4rem;padding:1.4rem 1.9rem;
  background:var(--accent-soft);border-radius:var(--radius);text-decoration:none;
}
.channel:hover{background:#f2dade}
.channel-title{font-weight:500}
.channel-handle{color:var(--accent);font-size:.92rem}

/* ---------- Вопросы ---------- */

.faq{display:grid;gap:.7rem}
.faq details{background:var(--bg);border-radius:var(--radius);padding:0 1.4rem}
.section-alt .faq details{background:var(--bg)}
.faq summary{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.15rem 0;cursor:pointer;list-style:none;font-weight:500;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--accent);font-size:1.35rem;line-height:1;flex:none}
.faq details[open] summary::after{content:"–"}
.faq details p{padding-bottom:1.3rem;color:var(--muted);font-size:.96rem;max-width:62ch}

/* ---------- Подвал ---------- */

.site-footer{background:var(--bg-card);padding:clamp(2.5rem,5vw,3.5rem) 0}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.8rem}
.site-footer p{font-size:.9rem;color:var(--muted)}
.footer-brand{
  font-family:var(--serif);font-size:1.25rem!important;color:var(--ink)!important;margin-bottom:.5rem;
}
.site-footer a{color:var(--muted);text-decoration:none}
.site-footer a:hover{color:var(--accent)}

/* ---------- Адаптив ---------- */

@media (max-width:900px){
  .hero-inner{grid-template-columns:1fr;gap:2.4rem}
  .hero-media{order:-1;max-width:460px;margin-inline:auto}
  .delivery-grid{grid-template-columns:1fr}
  .site-nav{display:none}
  .header-inner .btn-max-sm{font-size:.8rem;padding:.6rem .9rem}
}

@media (max-width:560px){
  body{font-size:16px}
  .wrap{padding-inline:18px}
  .cards{grid-template-columns:1fr 1fr;gap:1rem}
  .card-body{padding:1rem}
  .card-text{display:none}
  .card-foot{flex-direction:column;align-items:stretch;gap:.6rem}
  .card-foot .btn{width:100%}
  .price{text-align:center}
  .hero-media img{border-radius:150px 150px var(--radius) var(--radius)}
  .messenger-row .btn-max,
  .messenger-row .btn-tg{width:100%;justify-content:center}
  .btn-max-lg,.btn-tg-lg{font-size:1.05rem;padding:1.05rem 1.2rem;min-height:58px}
  .cta-band{padding:1.5rem 1.1rem}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}
