:root{
  --brand:#1f6f5c;
  --brand-2:#2f9e7f;
  --accent:#c98a3a;
  --bg:#fbfbf9;
  --surface:#ffffff;
  --surface-2:#f4f3ee;
  --text:#20241f;
  --muted:#6a6f66;
  --border:#e7e5dc;
  --grad:linear-gradient(120deg,#1f6f5c 0%,#2f9e7f 100%);
  --container:1200px;
  --font-sans:"Segoe UI",system-ui,-apple-system,"Inter",Roboto,"Helvetica Neue",Arial,sans-serif;
  --radius-1:6px;
  --radius-2:12px;
  --radius-3:20px;
  --shadow-1:0 1px 2px rgba(30,40,30,.04);
  --shadow-2:0 8px 30px rgba(30,50,40,.08);
  --shadow-3:0 20px 60px rgba(30,50,40,.12);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
html.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.js .reveal{opacity:1;transform:none;transition:none}
}

body{
  margin:0;
  font-family:var(--font-sans);
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(60% 45% at 82% 8%, rgba(47,158,127,.10), transparent 60%),
    radial-gradient(50% 40% at 8% 80%, rgba(201,138,58,.08), transparent 60%);
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}

.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px}

.skip{position:absolute;left:-999px;top:0;background:var(--brand);color:#fff;padding:10px 16px;z-index:200}
.skip:focus{left:12px;top:12px}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--grad);color:#fff;
  padding:13px 26px;border-radius:var(--radius-2);
  font-weight:600;font-size:15px;border:none;cursor:pointer;
  transition:transform .18s var(--ease),box-shadow .18s var(--ease),filter .18s var(--ease);
  box-shadow:var(--shadow-2);
}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-3);filter:saturate(1.08)}
.btn:active{transform:translateY(0)}
.btn--lg{padding:16px 34px;font-size:16px}
.btn--sm{padding:9px 18px;font-size:14px}
.btn--full{width:100%}
.btn--ghost{background:var(--surface);color:var(--brand);border:1.5px solid var(--border);box-shadow:none}
.btn--ghost:hover{border-color:var(--brand);box-shadow:var(--shadow-1);background:var(--surface)}

.eyebrow{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--brand);margin-bottom:16px;
}

/* ---------- Topbar ---------- */
.topbar{background:var(--surface-2);border-bottom:1px solid var(--border);font-size:13px}
.topbar__in{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:8px;padding-bottom:8px}
.topbar__addr{display:inline-flex;align-items:center;gap:7px;color:var(--muted)}
.topbar__phones{display:flex;gap:18px}
.topbar__phones a{font-weight:600;color:var(--text)}
.topbar__phones a:hover{color:var(--brand)}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
}
.site-header__in{display:flex;align-items:center;gap:32px;padding-top:14px;padding-bottom:14px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:800;letter-spacing:-.02em}
.brand__mark{color:var(--brand);display:inline-flex}
.brand__txt b{color:var(--brand)}
.mainnav{display:flex;gap:6px;margin-left:auto}
.mainnav a{
  padding:9px 15px;border-radius:var(--radius-2);font-weight:500;font-size:15px;color:var(--muted);
  transition:color .15s,background .15s;
}
.mainnav a:hover{color:var(--text);background:var(--surface-2)}
.mainnav a.is-active{color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,transparent)}
.header-cta{margin-left:8px}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.burger span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:.25s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:78vh;display:flex;align-items:center;overflow:hidden}
.hero__bg{position:absolute;inset:0;z-index:0}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center right;opacity:.9}
.hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(251,251,249,.97) 0%,rgba(251,251,249,.88) 40%,rgba(251,251,249,.45) 68%,rgba(251,251,249,.05) 100%);
}
.hero__in{position:relative;z-index:2;padding:80px 24px}
.hero__content{max-width:640px}
.hero h1{
  font-size:clamp(2.3rem,5vw,4rem);line-height:1.05;font-weight:800;letter-spacing:-.03em;margin:0 0 22px;
}
.hero h1 i{font-style:normal;color:var(--brand)}
.hero__lead{font-size:clamp(1.05rem,1.6vw,1.28rem);color:var(--muted);max-width:560px;margin:0 0 34px}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- Sections ---------- */
.section{padding:clamp(56px,8vw,104px) 0}
.section__title{
  font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:800;letter-spacing:-.02em;
  text-align:center;margin:0 0 48px;line-height:1.1;
}
.section__title i{font-style:normal;color:var(--brand)}
.section__cta{text-align:center;margin-top:44px}

/* ---------- Benefits ---------- */
.benefits{background:var(--surface)}
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.benefit-card{
  padding:32px 26px;border:1px solid var(--border);border-radius:var(--radius-3);
  background:var(--surface);transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s;
}
.benefit-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--brand) 30%,var(--border))}
.benefit-card__icon{
  width:60px;height:60px;border-radius:16px;display:grid;place-items:center;margin-bottom:20px;
  background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand);
}
.benefit-card h3{font-size:1.15rem;margin:0 0 10px;font-weight:700}
.benefit-card p{margin:0;color:var(--muted);font-size:.96rem}

/* ---------- Categories ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cat-grid > :first-child{grid-column:span 2}
.cat-card{
  position:relative;border-radius:var(--radius-3);overflow:hidden;border:1px solid var(--border);
  aspect-ratio:16/11;transition:transform .25s var(--ease),box-shadow .25s var(--ease);
  background:var(--surface-2);
}
.cat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.cat-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.cat-card:hover img{transform:scale(1.05)}
.cat-card__info{
  position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 24px;color:#fff;
  background:linear-gradient(to top,rgba(20,30,25,.85),transparent);
}
.cat-card__info h3{margin:0 0 4px;font-size:1.3rem;font-weight:700}
.cat-card__info p{margin:0;font-size:.92rem;opacity:.92}

/* ---------- About home ---------- */
.about-home{background:var(--surface)}
.about-home__in{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.about-home__media img{width:100%;border-radius:var(--radius-3);box-shadow:var(--shadow-2);aspect-ratio:4/5;object-fit:cover}
.about-home__text h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;letter-spacing:-.02em;margin:0 0 20px;line-height:1.12}
.about-home__text h2 i{font-style:normal;color:var(--brand)}
.about-home__text p{color:var(--muted);margin:0 0 16px}
.about-home__facts{display:flex;gap:44px;margin:30px 0 30px}
.fact__num{display:block;font-size:2.1rem;font-weight:800;color:var(--brand);line-height:1}
.fact__txt{font-size:.9rem;color:var(--muted);display:block;margin-top:6px}

/* ---------- CTA zamer ---------- */
.cta-zamor{background:var(--surface-2)}
.cta-zamor__in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cta-zamor__text h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;letter-spacing:-.02em;margin:0 0 16px}
.cta-zamor__text h2 i{font-style:normal;color:var(--brand)}
.cta-zamor__text p{color:var(--muted);margin:0 0 24px}
.cta-zamor__list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.cta-zamor__list li{display:flex;align-items:center;gap:12px;font-weight:500}
.cta-zamor__list svg{color:var(--brand);flex-shrink:0}

/* ---------- Lead form ---------- */
.leadform{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-3);
  padding:32px;box-shadow:var(--shadow-2);
}
.leadform__title{margin:0 0 6px;font-size:1.35rem;font-weight:700}
.leadform__note{margin:0 0 22px;color:var(--muted);font-size:.92rem}
.leadform__row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.leadform input,.leadform textarea{
  width:100%;padding:13px 15px;border:1.5px solid var(--border);border-radius:var(--radius-2);
  font:inherit;font-size:15px;background:var(--surface);color:var(--text);margin-bottom:12px;
  transition:border-color .15s,box-shadow .15s;
}
.leadform__row input{margin-bottom:0}
.leadform input:focus,.leadform textarea:focus{
  outline:none;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent);
}
.leadform textarea{resize:vertical}
.leadform__agree{display:flex;align-items:flex-start;gap:9px;font-size:.85rem;color:var(--muted);margin:4px 0 18px}
.leadform__agree input{width:auto;margin:3px 0 0}

/* ---------- Product cards ---------- */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.product-grid--catalog{grid-template-columns:repeat(3,1fr)}
.product-card{
  display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius-3);overflow:hidden;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s;
}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--brand) 25%,var(--border))}
.product-card__img{position:relative;aspect-ratio:4/5;background:var(--surface-2);overflow:hidden}
.product-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}
.product-card:hover .product-card__img img{transform:scale(1.04)}
.product-card__tag,.product-card__badge{
  position:absolute;top:12px;left:12px;background:rgba(255,255,255,.92);color:var(--brand);
  font-size:12px;font-weight:700;padding:5px 11px;border-radius:100px;backdrop-filter:blur(6px);
}
.product-card__badge--out{background:var(--accent);color:#fff}
.product-card__info{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1}
.product-card__info h3{margin:0 0 8px;font-size:1.08rem;font-weight:700;line-height:1.25}
.product-card__desc{margin:0 0 14px;color:var(--muted);font-size:.9rem;flex:1}
.product-card__meta{display:flex;align-items:center;gap:10px;font-size:.83rem;color:var(--muted);margin-bottom:14px}
.product-card__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--border)}
.product-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.product-card__price{font-size:1.25rem;font-weight:800;color:var(--text)}
.product-card__link{font-size:.9rem;font-weight:600;color:var(--brand)}

/* ---------- Page head ---------- */
.pagehead{padding:56px 0 40px;background:var(--surface);border-bottom:1px solid var(--border)}
.pagehead--sm{padding:26px 0}
.pagehead h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;letter-spacing:-.025em;margin:0 0 14px;line-height:1.08}
.pagehead__lead{color:var(--muted);max-width:680px;font-size:1.08rem;margin:0}
.crumbs{font-size:.88rem;color:var(--muted);margin-bottom:16px}
.crumbs a:hover{color:var(--brand)}
.crumbs span{margin:0 6px;opacity:.5}

/* ---------- Catalog ---------- */
.catalog-section{padding-top:44px}
.catalog-layout{display:grid;grid-template-columns:270px 1fr;gap:36px;align-items:start}
.filters{position:sticky;top:120px}
.filters__form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-3);padding:24px}
.filters__block{margin-bottom:20px}
.filters__block h4{margin:0 0 9px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.filters select,.filters input{
  width:100%;padding:11px 13px;border:1.5px solid var(--border);border-radius:var(--radius-1);
  font:inherit;font-size:14px;background:var(--surface);color:var(--text);
}
.filters select:focus,.filters input:focus{outline:none;border-color:var(--brand)}
.filters__price{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.filters__reset{display:block;text-align:center;margin-top:14px;font-size:.86rem;color:var(--muted)}
.filters__reset:hover{color:var(--brand)}
.catalog-main__head{margin-bottom:22px}
.catalog-count{font-weight:600;color:var(--muted)}
.empty{padding:60px 24px;text-align:center;color:var(--muted);background:var(--surface);border-radius:var(--radius-3);border:1px solid var(--border)}
.empty a{color:var(--brand);font-weight:600}

/* ---------- Product detail ---------- */
.product-detail__layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.product-detail__img{width:100%;border-radius:var(--radius-3);border:1px solid var(--border);aspect-ratio:4/5;object-fit:cover;box-shadow:var(--shadow-2)}
.product-tag{display:inline-block;background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand);font-size:13px;font-weight:700;padding:6px 13px;border-radius:100px;margin-bottom:16px}
.product-detail__info h1{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;letter-spacing:-.02em;margin:0 0 14px;line-height:1.1}
.product-detail__desc{color:var(--muted);font-size:1.05rem;margin:0 0 24px}
.product-detail__price-block{display:flex;align-items:center;gap:18px;margin-bottom:24px}
.product-detail__price{font-size:2.1rem;font-weight:800;color:var(--brand)}
.product-detail__stock{font-size:.9rem;font-weight:600;color:var(--brand-2);background:color-mix(in srgb,var(--brand-2) 12%,transparent);padding:6px 12px;border-radius:100px}
.product-detail__cta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:32px}
.product-specs{border-top:1px solid var(--border);padding-top:24px}
.product-specs h3{margin:0 0 16px;font-size:1.15rem;font-weight:700}
.product-specs__list{margin:0}
.product-specs__row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px dashed var(--border)}
.product-specs__row dt{color:var(--muted);margin:0}
.product-specs__row dd{margin:0;font-weight:600;text-align:right}
.product-form-section{background:var(--surface-2)}
.product-form-section__in{max-width:640px;margin:0 auto}

/* ---------- Services ---------- */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-3);padding:34px 30px;transition:transform .22s var(--ease),box-shadow .22s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.service-card__icon{width:66px;height:66px;border-radius:18px;display:grid;place-items:center;margin-bottom:22px;background:var(--grad);color:#fff}
.service-card h2{font-size:1.3rem;font-weight:700;margin:0 0 12px}
.service-card p{color:var(--muted);margin:0}
.warranty{background:var(--surface)}
.warranty__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.warranty-block h2{font-size:1.5rem;font-weight:800;margin:0 0 16px}
.check-list{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:12px}
.check-list li{position:relative;padding-left:32px;color:var(--text)}
.check-list li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--brand) 15%,transparent)}
.check-list li::after{content:"";position:absolute;left:7px;top:7px;width:6px;height:9px;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(42deg)}

/* ---------- CTA strip ---------- */
.cta-strip{background:var(--surface-2)}
.cta-strip__in{
  display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
  background:var(--grad);border-radius:var(--radius-3);padding:44px 48px;color:#fff;box-shadow:var(--shadow-2);
}
.cta-strip__in h2{margin:0 0 6px;font-size:1.6rem;font-weight:800}
.cta-strip__in p{margin:0;opacity:.92}
.cta-strip__in .btn{background:#fff;color:var(--brand)}
.cta-strip__in .btn:hover{background:#fff}

/* ---------- About full ---------- */
.about-full__layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.about-full__media img{width:100%;border-radius:var(--radius-3);box-shadow:var(--shadow-2);position:sticky;top:120px;aspect-ratio:3/4;object-fit:cover}
.about-full__text h2{font-size:1.6rem;font-weight:800;margin:0 0 14px;margin-top:28px}
.about-full__text h2:first-child{margin-top:0}
.about-full__text p{color:var(--muted);margin:0 0 16px}
.about-signature{font-style:italic;color:var(--text)!important;font-weight:600}

.stats-band{background:var(--brand);color:#fff}
.stats-band__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
.stat__num{display:block;font-size:2.2rem;font-weight:800;margin-bottom:8px}
.stat__label{font-size:.92rem;opacity:.88}

.construction{background:var(--surface)}
.construction__layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.construction__media img{width:100%;border-radius:var(--radius-3)}
.construction__text p{color:var(--muted);margin:0 0 18px}
.construction__text h3{font-size:1.2rem;font-weight:700;margin:0 0 14px}
.construction__list{margin:0 0 18px;padding-left:22px;columns:2;color:var(--text)}
.construction__list li{margin-bottom:7px}
.construction__note{font-size:.9rem;color:var(--muted)}

.geo__lead{text-align:center;color:var(--muted);max-width:640px;margin:0 auto 32px}
.geo__cities{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.geo__city{background:var(--surface);border:1px solid var(--border);padding:10px 20px;border-radius:100px;font-weight:600;font-size:.95rem}

/* ---------- Reviews ---------- */
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-3);padding:30px;transition:transform .22s var(--ease),box-shadow .22s}
.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.review-card__stars{display:flex;gap:3px;color:var(--accent);margin-bottom:16px}
.review-card__text{margin:0 0 22px;color:var(--text);font-size:1rem}
.review-card__author{display:flex;align-items:center;gap:13px}
.review-card__avatar{width:46px;height:46px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.15rem}
.review-card__author b{display:block;font-size:.98rem}
.review-card__author small{color:var(--muted);font-size:.85rem}

/* ---------- Contacts ---------- */
.contacts-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.contact-block{margin-bottom:26px}
.contact-block h3{font-size:1.05rem;font-weight:700;margin:0 0 8px}
.contact-block p{margin:0;color:var(--muted)}
.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.contact-list a{font-weight:600}
.contact-list a:hover{color:var(--brand)}
.form-success{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-3);padding:48px 36px;text-align:center;box-shadow:var(--shadow-2)}
.form-success svg{color:var(--brand);margin-bottom:16px}
.form-success h3{margin:0 0 8px;font-size:1.4rem}
.form-success p{color:var(--muted);margin:0 0 22px}
.map-embed{border-radius:var(--radius-3);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-1)}
.map-embed iframe{display:block}

/* ---------- Legal ---------- */
.legal__in{max-width:820px;margin:0 auto}
.legal__in h2{font-size:1.25rem;font-weight:700;margin:28px 0 12px}
.legal__in p{color:var(--muted);margin:0 0 14px}

/* ---------- Footer ---------- */
.site-footer{background:#181c18;color:#c9cdc6;padding:64px 0 28px;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:40px}
.brand--foot{color:#fff;font-size:20px;margin-bottom:14px}
.brand--foot b{color:var(--brand-2)}
.footer-about{color:#8f958c;font-size:.92rem;margin:0}
.footer-col h4{color:#fff;font-size:1rem;font-weight:700;margin:0 0 16px}
.footer-links,.footer-contacts{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.footer-links a{color:#a9afa4;font-size:.93rem;transition:color .15s}
.footer-links a:hover{color:#fff}
.footer-contacts li{display:flex;gap:10px;align-items:flex-start;color:#a9afa4;font-size:.92rem}
.footer-contacts svg{color:var(--brand-2);flex-shrink:0;margin-top:3px}
.footer-contacts a{color:#a9afa4}
.footer-contacts a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:44px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem;color:#7c827a}
.footer-bottom__links{display:flex;gap:20px}
.footer-bottom__links a:hover{color:#fff}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .benefits-grid{grid-template-columns:repeat(2,1fr)}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .cat-grid > :first-child{grid-column:span 2}
  .product-grid,.product-grid--catalog{grid-template-columns:repeat(2,1fr)}
  .services-grid,.reviews-grid{grid-template-columns:repeat(2,1fr)}
  .about-home__in,.cta-zamor__in,.product-detail__layout,.about-full__layout,.construction__layout,.warranty__grid,.contacts-layout{grid-template-columns:1fr;gap:36px}
  .about-full__media img,.filters{position:static}
  .stats-band__grid{grid-template-columns:repeat(2,1fr)}
  .catalog-layout{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .topbar{display:none}
  .mainnav{
    position:fixed;inset:64px 0 auto 0;flex-direction:column;gap:0;background:var(--surface);
    border-bottom:1px solid var(--border);padding:12px 24px 24px;box-shadow:var(--shadow-2);
    transform:translateY(-120%);transition:transform .3s var(--ease);margin:0;
  }
  .mainnav.open{transform:translateY(0)}
  .mainnav a{padding:13px 8px;border-radius:8px;font-size:1rem}
  .header-cta{margin-left:auto}
  .burger{display:flex}
  .hero::after{background:linear-gradient(180deg,rgba(251,251,249,.95) 0%,rgba(251,251,249,.86) 55%,rgba(251,251,249,.7) 100%)}
  .hero__bg img{object-position:center}
}
@media (max-width:560px){
  .benefits-grid,.cat-grid,.product-grid,.product-grid--catalog,.services-grid,.reviews-grid,.stats-band__grid,.footer-grid{grid-template-columns:1fr}
  .cat-grid > :first-child{grid-column:span 1}
  .leadform__row,.product-detail__cta,.filters__price{grid-template-columns:1fr}
  .about-home__facts{gap:24px}
  .construction__list{columns:1}
  .cta-strip__in{padding:32px 26px}
  .leadform{padding:24px}
  .header-cta .btn{padding:8px 14px;font-size:13px}
}

/* --- Стили для блоков, оставшихся без оформления --- */
:root{
  --brand:#6b7c3a;
  --brand-2:#8a9b4c;
  --accent:#c08a3e;
}

.categories{
  background:linear-gradient(180deg, var(--surface, #f7f6f1) 0%, transparent 100%);
}

.categories .cat-grid,
.cat-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
  gap:var(--space-5, 24px);
  margin-top:var(--space-6, 32px);
}

.cta-zamor__form{
  display:grid;
  gap:var(--space-4, 16px);
  max-width:520px;
  padding:var(--space-6, 32px);
  background:var(--surface, #fff);
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
  box-shadow:var(--shadow-1, 0 1px 2px rgba(0,0,0,.05));
}

.fact{
  display:flex;
  flex-direction:column;
  gap:var(--space-2, 8px);
  padding:var(--space-5, 24px);
  background:var(--surface, #fff);
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
}

.product-showcase{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  gap:var(--space-5, 24px);
  margin-top:var(--space-6, 32px);
}

.catalog-main{
  min-width:0;
}

.catalog-main__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--space-3, 12px);
  padding-bottom:var(--space-4, 16px);
  margin-bottom:var(--space-5, 24px);
  border-bottom:1px solid var(--border, #e2e0d6);
}

.product-detail{
  padding-top:var(--space-6, 32px);
}

.product-detail__layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  gap:var(--space-7, 40px);
  align-items:start;
}

.product-detail__gallery{
  position:sticky;
  top:var(--space-6, 32px);
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
  overflow:hidden;
  background:var(--surface-2, #f0efe8);
}

.product-detail__gallery img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
}

.related-products{
  border-top:1px solid var(--border, #e2e0d6);
}

.services-list .services-grid,
.services-list{
  display:block;
}

.services-list .services-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:var(--space-5, 24px);
}

.about-full{
  padding-top:var(--space-7, 40px);
}

.about-full__layout{
  display:grid;
  grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap:var(--space-7, 40px);
  align-items:start;
}

.about-full__media img{
  display:block;
  width:100%;
  height:auto;
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
}

.geo{
  background:var(--surface-2, #f0efe8);
}

.geo__cities{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3, 12px);
  margin-top:var(--space-5, 24px);
}

.stat{
  display:flex;
  flex-direction:column;
  gap:var(--space-2, 8px);
  padding:var(--space-5, 24px);
  border-left:3px solid var(--brand, #6b7c3a);
  background:var(--surface, #fff);
}

.reviews-section .reviews-grid,
.reviews-section{
  display:block;
}

.reviews-section .reviews-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
  gap:var(--space-5, 24px);
}

.contacts-section{
  padding-top:var(--space-6, 32px);
}

.contacts-info{
  display:grid;
  gap:var(--space-5, 24px);
  align-content:start;
}

.contacts-form-wrap{
  padding:var(--space-6, 32px);
  background:var(--surface, #fff);
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
  box-shadow:var(--shadow-1, 0 1px 2px rgba(0,0,0,.05));
}

.map-section{
  background:var(--surface-2, #f0efe8);
}

.map-section .map-embed{
  margin-top:var(--space-5, 24px);
  border:1px solid var(--border, #e2e0d6);
  border-radius:var(--radius-2, 4px);
  overflow:hidden;
  line-height:0;
}

.legal{
  padding-top:var(--space-6, 32px);
}

.legal__in{
  max-width:820px;
  font-size:var(--step-0, 1rem);
  line-height:1.7;
  color:var(--text, #2b2a24);
}

.legal__in h2{
  margin-top:var(--space-6, 32px);
  margin-bottom:var(--space-3, 12px);
  font-size:var(--step-2, 1.5rem);
  color:var(--brand, #6b7c3a);
}

.legal__in p{
  margin-bottom:var(--space-4, 16px);
}

@media (max-width:860px){
  .product-detail__layout{
    grid-template-columns:1fr;
    gap:var(--space-5, 24px);
  }
  .product-detail__gallery{
    position:static;
  }
  .about-full__layout{
    grid-template-columns:1fr;
    gap:var(--space-5, 24px);
  }
}
