/* Ренессанс Мебель — публичная дизайн-система по утверждённому PNG */
:root{
  --bg:#f8f3ec;
  --paper:#fffdfa;
  --cream:#f3eadf;
  --cream-deep:#ece0d1;
  --sand:#e9dbcb;
  --ink:#2c1b12;
  --ink-soft:#4b382b;
  --muted:#736459;
  --brown:#7b4124;
  --brown-dark:#5c2e17;
  --brown-deep:#2b1910;
  --gold:#b9875b;
  --line:#e4d5c6;
  --line-dark:#cdb8a5;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Manrope','Segoe UI',Arial,sans-serif;
  --max:1360px;
  --radius:9px;
  --shadow:0 18px 48px rgba(72,44,27,.10);
  --shadow-soft:0 8px 26px rgba(72,44,27,.07);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{
  margin:0;color:var(--ink);background:var(--bg);
  font:15px/1.62 var(--sans);-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body.modal-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:700;color:var(--ink);line-height:1.08;letter-spacing:-.035em}
h1{font-size:clamp(52px,5.5vw,82px)}
h2{font-size:clamp(38px,3.7vw,56px)}
h3{font-size:24px}
p{margin-top:0}
.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.section{padding:58px 0}
.section--cream{background:var(--cream)}
.section--paper{background:var(--paper)}
.section--tight{padding:36px 0}
.section--no-top{padding-top:0}
.section--no-bottom{padding-bottom:0}
.icon{width:20px;height:20px;flex:0 0 auto}
.skip-link{position:fixed;left:18px;top:-80px;z-index:300;background:var(--brown-deep);color:#fff;padding:12px 18px;border-radius:6px;transition:top .2s}
.skip-link:focus{top:18px;color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b8794d;outline-offset:3px}
[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:13px;
  min-height:52px;padding:0 27px;border:1.5px solid transparent;border-radius:999px;
  font:600 14px/1.2 var(--sans);letter-spacing:.005em;white-space:nowrap;
  transition:transform .18s,background .18s,color .18s,border-color .18s,box-shadow .18s;
}
.btn .icon{width:18px;height:18px}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:linear-gradient(135deg,#824526,#633017);color:#fff;box-shadow:0 9px 24px rgba(99,48,23,.18)}
.btn--primary:hover{background:linear-gradient(135deg,#713a1e,#502511)}
.btn--outline{background:rgba(255,253,249,.25);border-color:#5c3a28;color:var(--ink)}
.btn--outline:hover{background:#5c3a28;color:#fff}
.btn--light{background:#fff7ed;color:var(--brown-dark)}
.btn--light:hover{background:#fff}
.btn--ghost{background:transparent;border-color:var(--line-dark);color:var(--ink)}
.btn--ghost:hover{background:#fff;border-color:var(--brown)}
.btn--small{min-height:42px;padding:0 19px;font-size:12px}
.btn--wide{width:100%}
.text-link{display:inline-flex;align-items:center;gap:11px;font-size:12px;font-weight:700;color:var(--brown);border-bottom:1px solid rgba(123,65,36,.45);padding-bottom:5px}
.text-link .icon{width:17px;height:17px}
.text-link:hover{border-bottom-color:var(--brown)}
.round-link{width:34px;height:34px;border:1.4px solid #b7977f;border-radius:50%;display:inline-grid;place-items:center;color:var(--brown);flex:0 0 auto;transition:background .2s,color .2s}
.round-link .icon{width:16px;height:16px}
.round-link:hover{background:var(--brown);color:#fff;border-color:var(--brown)}

/* Header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,253,249,.98);box-shadow:0 1px 0 rgba(87,55,35,.08);backdrop-filter:blur(10px)}
.header-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:26px;min-height:88px;padding:12px 0}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}
.brand__mark{width:60px;color:var(--brown);display:block;flex:0 0 auto}
.brand__mark svg{width:100%;height:auto}
.brand__name{display:block;min-width:0}
.brand__name b{display:block;font:700 26px/.98 var(--serif);letter-spacing:-.04em;color:var(--ink);white-space:nowrap}
.brand__name small{display:block;font:500 10px/1.2 var(--sans);color:#735e4d;margin-top:5px;white-space:nowrap}
.header-meta{display:flex;justify-content:center;align-items:center;gap:44px;min-width:0}
.meta-item{display:flex;align-items:center;gap:9px;min-width:0}
.meta-item>.icon{width:27px;height:27px;color:var(--brown);stroke-width:1.6}
.meta-item span{display:block;min-width:0}
.meta-item b{display:block;font-size:13px;line-height:1.25;color:var(--ink)}
.meta-item small{display:block;font-size:11px;line-height:1.25;color:var(--muted);margin-top:2px}
.header-actions{display:flex;align-items:center;gap:11px}
.header-call{min-height:46px;padding:0 22px;font-size:12px}
.menu-toggle{display:none;width:42px;height:42px;border:0;border-radius:0;background:transparent;color:var(--ink);place-items:center;padding:0}
.menu-toggle .icon{width:22px;height:22px}
.header-nav-wrap{background:#f5ede3;border-top:1px solid #e9dccd;border-bottom:1px solid #e4d4c3;position:relative}
.main-nav{display:flex;align-items:center;justify-content:center;gap:38px;height:47px}
.main-nav a{position:relative;font-size:13px;font-weight:600;color:#4b382b;white-space:nowrap;padding:14px 0}
.main-nav a:hover,.main-nav a.active{color:var(--brown)}
.meta-copy{display:block;min-width:0}
.city-switcher{margin:0}
.city-switcher__control{position:relative;display:flex;align-items:center;min-width:0}
.city-switcher select{appearance:none;-webkit-appearance:none;background:transparent;border:0;border-bottom:1px dashed #b9a18e;border-radius:0;color:var(--ink);font:600 13px/1.2 var(--sans);padding:0 17px 2px 0;max-width:205px;cursor:pointer;text-overflow:ellipsis}
.city-switcher select:focus-visible{outline:2px solid var(--brown);outline-offset:3px}
.city-switcher__arrow{position:absolute;right:0;display:flex;pointer-events:none;color:var(--brown)}
.city-switcher__arrow .icon{width:13px;height:13px;stroke-width:1.8}
.city-switcher__go{border:0;background:var(--brown);color:#fff;border-radius:4px;font:700 10px var(--sans);padding:5px 8px;margin-left:6px;cursor:pointer}
.main-nav__city{display:none}
.main-nav a.active:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:1.5px;background:var(--brown)}
.mobile-actionbar{display:none}

/* Hero */
.hero{background:linear-gradient(180deg,#f8f1e8 0%,#f2e7da 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);align-items:stretch;min-height:640px}
.hero-copy{padding:58px 52px 20px 0;align-self:end;position:relative;z-index:2;grid-column:1;grid-row:1;min-width:0}
.hero-eyebrow{display:inline-flex;align-items:center;background:#ebddcb;border-radius:6px;padding:9px 14px;font-size:12px;font-weight:600;line-height:1.25;color:#5b402b;margin-bottom:28px}
.hero h1{font-size:clamp(54px,5.7vw,84px);line-height:1.02;margin-bottom:24px;max-width:680px}
.hero-lead{font-size:16px;line-height:1.68;color:#5f4b3c;max-width:535px;margin-bottom:30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-trust{display:flex;align-items:flex-start;gap:30px;margin-top:24px;padding:0 0 38px;flex-wrap:wrap;grid-column:1;grid-row:2;align-self:start}
.trust-item{display:flex;align-items:center;gap:9px;min-width:0}
.trust-icon{width:34px;height:34px;border:1.3px solid #af8d72;border-radius:50%;display:grid;place-items:center;color:var(--brown);flex:0 0 auto}
.trust-icon .icon{width:18px;height:18px}
.trust-text{display:block}
.trust-text b{display:block;font-size:11px;line-height:1.2;font-weight:700;color:var(--ink)}
.trust-text small{display:block;font-size:10px;line-height:1.2;color:#77604d;margin-top:3px}
.hero-media{min-height:640px;height:100%;position:relative;margin-right:calc((min(var(--max),100vw - 64px) - 100vw)/2);overflow:hidden;background:#e9ddd0;grid-column:2;grid-row:1/3;min-width:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82) sepia(.07) contrast(1.02)}
.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f2e7da 0%,transparent 20%)}

/* Section headings */
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.section-head h2{margin:0 0 7px;font-size:clamp(36px,3.4vw,52px)}
.section-head p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.section-head--center{text-align:center;display:block}
.section-head--center p{margin-top:7px}
.section-head .head-action{margin-left:auto;flex:0 0 auto;padding-bottom:3px}
.section-kicker{display:flex;align-items:center;gap:9px;margin-bottom:13px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brown)}
.section-kicker:before{content:'';width:24px;height:1px;background:var(--gold)}

/* Services */
.services{padding-top:32px}
.service-carousel{position:relative}
.service-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.service-card{background:#fbf7f1;border:1px solid #e9dccd;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .22s,box-shadow .22s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft)}
.service-card__media{height:188px;overflow:hidden;background:#eee4d8;display:block}
.service-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.service-card:hover .service-card__media img{transform:scale(1.04)}
.service-card__body{padding:17px 17px 16px;display:flex;flex-direction:column;flex:1;gap:5px}
.service-card h3{font-size:20px;line-height:1.18;margin:0}
.service-card h3 a:hover{color:var(--brown)}
.service-card__sub{font-size:11px;line-height:1.4;color:var(--muted);margin:0;min-height:30px}
.service-card__bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:14px}
.service-card__price{font-size:15px;font-weight:700;color:var(--ink);white-space:nowrap}
.service-card__price small{font-size:10px;font-weight:500;color:var(--muted)}
.service-note{font-size:11px;color:var(--muted);margin:16px 0 0}
.carousel-dots{display:none;justify-content:center;align-items:center;gap:7px;margin-top:20px}
.carousel-dots button{width:7px;height:7px;border-radius:50%;border:0;background:#cbb9a8;padding:0}
.carousel-dots button.active{background:var(--brown);width:8px;height:8px}

/* Before / after */
.ba-section{background:var(--cream)}
.ba-grid{display:grid;grid-template-columns:minmax(0,25fr) minmax(0,47fr) minmax(0,28fr);gap:26px;align-items:center}
.ba-copy h2{margin-bottom:12px;font-size:clamp(35px,3.1vw,48px)}
.ba-copy,.ba-view,.ba-list{min-width:0}
.ba-copy>p{font-size:12px;color:var(--muted);margin-bottom:24px}
.ba-arrows{display:flex;align-items:center;gap:10px}
.circle-nav{width:37px;height:37px;border-radius:50%;border:1.3px solid #b59479;background:transparent;color:var(--brown);display:grid;place-items:center;padding:0}
.circle-nav .icon{width:17px;height:17px}
.circle-nav:hover{background:var(--brown);color:#fff;border-color:var(--brown)}
.ba-counter{font-size:12px;color:#8b7562;margin-left:3px;letter-spacing:.05em}
.ba-counter b{color:var(--ink)}
.ba-caption{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fffdfa;padding:12px 17px;font-size:11px}
.ba-caption strong{font-family:var(--serif);font-size:15px;font-weight:600}
.ba-caption span{color:var(--muted);font-size:10px;white-space:nowrap}
.ba-view{background:#fff;border-radius:9px;overflow:hidden;box-shadow:var(--shadow-soft)}
.ba-list{margin:0;padding:0;list-style:none;display:grid;gap:15px}
.ba-list li{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.35;color:#4c3b2e;min-width:0}
.ba-check{width:23px;height:23px;border:1.3px solid #b3947a;border-radius:50%;display:grid;place-items:center;color:var(--brown);flex:0 0 auto}
.ba-check .icon{width:13px;height:13px}
.comparison{position:relative;overflow:hidden;height:356px;background:#e5d7c8;user-select:none}
.comparison__before,.comparison__after{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.comparison__before{z-index:0}
.comparison__afterclip{position:absolute;inset:0;z-index:1;overflow:hidden;clip-path:inset(0 0 0 var(--pos,50%));will-change:clip-path}
.comparison__after{width:100%!important;height:100%!important;max-width:none!important}
.comparison__divider{position:absolute;top:0;bottom:0;width:2px;background:#fff;z-index:2;pointer-events:none}
.comparison__handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border:3px solid #fff;border-radius:50%;background:var(--brown);color:#fff;display:grid;place-items:center;font-size:18px;box-shadow:0 3px 12px rgba(0,0,0,.2)}
.comparison__label{position:absolute;bottom:12px;z-index:3;padding:6px 14px;border-radius:4px;font-size:11px;font-weight:700}
.comparison__label--left{left:13px;background:#5d3b27;color:#fff}
.comparison__label--right{right:13px;background:#f5e9d9;color:#3d2a1c}
.comparison__range{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:4;cursor:ew-resize;margin:0}
.comparison:focus-within .comparison__handle{box-shadow:0 0 0 5px rgba(255,255,255,.35)}
.comparison--small{height:230px}

/* Benefits */
.benefits-section{padding-top:34px;padding-bottom:44px}
.benefits-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:26px}
.benefit{text-align:center;padding:4px 22px;border-right:1px solid var(--line)}
.benefit:last-child{border-right:0}
.benefit-icon{height:45px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;color:#995a32}
.benefit-icon .icon{width:38px;height:38px;stroke-width:1.45}
.benefit h3{font-size:19px;line-height:1.2;margin-bottom:8px}
.benefit p{font-size:11px;line-height:1.5;color:var(--muted);margin:0 auto;max-width:190px}

/* Estimate CTA */
.estimate-cta{background:#efe4d7;border-radius:10px;overflow:hidden;display:grid;grid-template-columns:minmax(0,37fr) minmax(0,39fr) minmax(0,24fr);min-height:300px}
.estimate-cta__media{min-height:300px;overflow:hidden;background:#e8ddd0}
.estimate-cta__media img{width:100%;height:100%;object-fit:cover}
.estimate-cta__body{padding:30px 28px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.estimate-cta__body h2{font-size:clamp(29px,2.7vw,38px);margin-bottom:12px}
.estimate-cta__body p{font-size:12px;line-height:1.55;color:#5f4b3d;margin-bottom:19px;max-width:390px}
.estimate-cta__list{display:flex;flex-direction:column;justify-content:center;gap:19px;padding:26px 25px;border-left:1px solid rgba(193,170,150,.45)}
.estimate-benefit{display:flex;align-items:center;gap:10px}
.estimate-benefit .icon{width:25px;height:25px;color:var(--brown);stroke-width:1.5}
.estimate-benefit b{display:block;font-size:11px;line-height:1.25}
.estimate-benefit small{display:block;font-size:10px;line-height:1.3;color:var(--muted);margin-top:1px}

/* Steps */
.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:26px}
.step{display:flex;align-items:flex-start;gap:14px;padding:0 27px;position:relative}
.step:first-child{padding-left:0}
.step:last-child{padding-right:0}
.step-num{width:39px;height:39px;border-radius:50%;background:#eee0d1;color:#67432d;display:grid;place-items:center;font:600 17px var(--serif);flex:0 0 auto}
.step h3{font-size:16px;line-height:1.25;margin:0 0 5px;letter-spacing:-.02em}
.step p{font-size:10px;line-height:1.45;color:var(--muted);margin:0;max-width:185px}
.step-arrow{position:absolute;right:7px;top:10px;color:#a07c60}
.step-arrow .icon{width:18px;height:18px}
.step:last-child .step-arrow{display:none}

/* Materials */
.materials-section{padding-top:62px;padding-bottom:58px}
.materials-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;margin-top:23px}
.material{min-width:0}
.material__swatch{height:86px;border-radius:7px;background-color:var(--sample,#b7a28d);background-image:repeating-linear-gradient(calc(var(--r,0deg) + 20deg),transparent 0 2px,rgba(255,255,255,.18) 2px 3px,transparent 3px 6px),repeating-linear-gradient(-20deg,rgba(0,0,0,.07) 0 1px,transparent 1px 5px);box-shadow:inset 0 0 0 1px rgba(60,35,20,.08)}
.material b{display:block;text-align:center;font-size:10px;line-height:1.3;font-weight:600;margin-top:8px}

/* Works */
.works-section{padding-top:54px;padding-bottom:64px}
.works-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}
.work-tile{position:relative;border:0;border-radius:8px;overflow:hidden;background:#eadfd2;aspect-ratio:1.35;padding:0;display:block;width:100%}
.work-tile img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.work-tile:hover img{transform:scale(1.04)}
.work-tile span{position:absolute;right:10px;bottom:10px;width:28px;height:28px;border-radius:50%;background:#fffdf9;color:var(--brown);display:grid;place-items:center;opacity:0;transition:opacity .2s}
.work-tile:hover span{opacity:1}
.work-tile .icon{width:14px;height:14px}

/* Reviews */
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.review-card{display:grid;grid-template-columns:91px 1fr;gap:14px;background:#fffdfa;border:1px solid var(--line);border-radius:8px;padding:15px;min-width:0}
.review-photo{width:91px;height:91px;border-radius:5px;overflow:hidden;background:#eadfd3}
.review-photo img{width:100%;height:100%;object-fit:cover}
.review-content{min-width:0;display:flex;flex-direction:column}
.review-name{font-size:13px;font-weight:700;margin:0 0 1px}
.review-label{font-size:9px;color:#b07a48;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}
.review-content p{font-size:11px;line-height:1.48;color:#59483c;margin:0 0 7px}
.review-source{font-size:9px;color:var(--muted);margin-top:auto}
.reviews-head .head-arrows{display:flex;gap:8px;align-items:center}
.review-arrow{width:31px;height:31px;border:1px solid #c8b19d;background:transparent;color:var(--brown);border-radius:50%;display:grid;place-items:center;padding:0}
.review-arrow .icon{width:15px;height:15px}
.review-arrow:hover{background:var(--brown);color:#fff}

/* About */
.about-section{padding-top:50px;padding-bottom:50px}
.about-grid{display:grid;grid-template-columns:minmax(0,32fr) minmax(0,38fr) minmax(0,30fr);gap:28px;align-items:center}
.about-copy h2{font-size:clamp(31px,3.2vw,44px);margin-bottom:14px}
.about-copy p{font-size:12px;line-height:1.65;color:var(--muted);margin-bottom:14px}
.about-copy .btn{margin-top:7px}
.about-media{height:310px;border-radius:8px;overflow:hidden;background:#eadfd3}
.about-media img{width:100%;height:100%;object-fit:cover}
.about-list{margin:0;padding:0;list-style:none;display:grid;gap:13px}
.about-list li{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.35}
.about-list .icon{width:19px;height:19px;color:#97623d}

/* FAQ */
.faq-section{padding-top:48px;padding-bottom:50px}
.faq-grid{display:grid;grid-template-columns:minmax(0,35fr) minmax(0,65fr);gap:46px;align-items:start}
.faq-intro h2{font-size:clamp(36px,3.2vw,47px);margin-bottom:12px}
.faq-intro p{font-size:12px;line-height:1.55;color:var(--muted);max-width:300px}
.faq-list details{border-bottom:1px solid var(--line);padding:15px 0}
.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;font:600 15px/1.35 var(--serif)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{width:25px;height:25px;border:1px solid #c8b29d;border-radius:50%;display:grid;place-items:center;color:var(--brown);font:16px/1 var(--sans);flex:0 0 auto;transition:transform .2s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list p{font-size:11px;line-height:1.55;color:var(--muted);margin:10px 30px 0 0}

/* Contacts strip */
.contacts-section{padding:40px 0;background:#f3e9de;border-top:1px solid #e7d8ca}
.contacts-grid{display:grid;grid-template-columns:minmax(0,29fr) minmax(0,23fr) minmax(0,27fr) minmax(0,21fr);gap:22px;align-items:center}
.contacts-intro h2{font-size:35px;margin:0 0 4px}
.contacts-intro p{font-size:11px;color:var(--muted);margin:0}
.contact-block{display:flex;align-items:center;gap:9px;min-width:0}
.contact-block span{min-width:0}
.contact-block b,.contact-block small{overflow-wrap:anywhere}
.contact-block .icon{width:27px;height:27px;color:var(--brown);flex:0 0 auto}
.contact-block b{display:block;font-size:12px;line-height:1.3}
.contact-block small{display:block;font-size:10px;line-height:1.35;color:var(--muted);margin-top:2px}
.contact-block a:hover{color:var(--brown)}
.contacts-actions{display:flex;justify-content:flex-end;min-width:0}

/* Dark CTA */
.cta-dark{position:relative;overflow:hidden;background:#372117;color:#fff;padding:36px 0;margin-top:0}
.cta-dark:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,24,15,.97) 0%,rgba(42,24,15,.9) 38%,rgba(42,24,15,.58) 72%,rgba(42,24,15,.35) 100%),url('/assets/media/work3.jpg') center/cover}
.cta-dark .container{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,38fr) minmax(0,40fr) minmax(0,22fr);align-items:center;gap:30px}
.cta-dark h2{color:#fff;font-size:clamp(30px,3vw,42px);margin:0}
.cta-dark p{font-size:12px;line-height:1.55;color:#e2d1c3;margin:0;max-width:420px}
.cta-dark .cta-actions{display:flex;justify-content:flex-end}

/* Footer */
.site-footer{background:#28170e;color:#f6e9dc;padding:52px 0 18px}
.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1.15fr 1.25fr;gap:38px;align-items:start}
.footer-brand .brand__mark{color:#c6946b;width:52px}
.footer-brand .brand__name b{color:#fff5e9;font-size:23px}
.footer-brand .brand__name small{color:#bda797}
.footer-brand p{font-size:11px;line-height:1.55;color:#bca796;margin:17px 0 0;max-width:250px}
.site-footer h4{font:600 12px var(--sans);color:#f1ddc9;margin:5px 0 15px;letter-spacing:.01em}
.footer-links{display:grid;gap:8px}
.footer-links a{font-size:11px;color:#c4b09f}
.footer-links a:hover{color:#fff}
.footer-contact{display:grid;gap:8px}
.footer-contact a,.footer-contact span{font-size:11px;color:#c4b09f}
.footer-contact a:hover{color:#fff}
.footer-contact .footer-phone{font-size:13px;font-weight:700;color:#fff0e0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:14px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;color:#9e8a7b;font-size:9px;line-height:1.45}
.footer-bottom a{color:#bfae9e;text-decoration:underline;text-underline-offset:2px}
.footer-legal{display:flex;gap:14px;flex-wrap:wrap}

/* Mobile contact bar */
.mobile-contact-bar{display:none}

/* Modals */
.modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}
.modal__shade{position:absolute;inset:0;background:rgba(31,18,10,.62);backdrop-filter:blur(4px)}
.modal__panel{position:relative;z-index:1;width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fffaf3;border-radius:13px;padding:32px 34px;box-shadow:0 35px 120px rgba(0,0,0,.32)}
.modal__close{position:absolute;right:13px;top:10px;width:35px;height:35px;border:0;background:transparent;color:var(--brown);display:grid;place-items:center;padding:0}
.modal__close .icon{width:22px;height:22px}
.modal__panel h2{font-size:40px;line-height:1.04;margin:0 0 10px}
.modal__panel .modal-kicker{display:inline-flex;background:#f0e2d1;border-radius:5px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#745038;margin-bottom:16px}
.modal__panel>p{font-size:12px;line-height:1.55;color:var(--muted);margin-bottom:17px}
.modal__panel .btn{width:100%;margin-top:12px}
.modal__panel small,.modal-note{display:block;font-size:9px;line-height:1.45;color:#8a7869;margin-top:12px}

/* Forms */
.form label{display:block;font-size:11px;font-weight:700;color:#5d493b;margin:12px 0 0}
.form input[type=text],.form input[type=tel],.form input[type=email],.form textarea,.form select{
  display:block;width:100%;margin-top:6px;border:1px solid #d9c9b9;border-radius:6px;background:#fffdf9;
  padding:12px 13px;min-height:44px;font:12px/1.4 var(--sans);color:var(--ink);outline:none
}
.form textarea{resize:vertical}
.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--brown);box-shadow:0 0 0 3px rgba(123,65,36,.1)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form .consent{display:flex;align-items:flex-start;gap:7px;font-size:9px;line-height:1.35;color:#7c6b5e;font-weight:400;margin-top:14px;max-width:none}
.form .consent input{margin:1px 0 0;accent-color:var(--brown);flex:0 0 auto}
.form .consent a{text-decoration:underline;text-underline-offset:2px}
.form-feedback{min-height:15px;margin:10px 0 0;font-size:10px;line-height:1.4;color:var(--muted)}
.form-feedback.is-error{color:#a03a28;font-weight:700}
.form-feedback.is-success{color:#3c704a;font-weight:700}
.upload-box{display:flex!important;align-items:center;gap:11px;border:1px dashed #b99e87;border-radius:6px;background:#fffdf8;padding:14px;margin-top:14px!important;cursor:pointer;position:relative;text-align:left}
.upload-box .icon{width:23px;height:23px;color:var(--brown);flex:0 0 auto}
.upload-box b{display:block;font-size:11px;line-height:1.25;color:var(--brown)}
.upload-box small{display:block;font-size:9px;line-height:1.3;color:var(--muted);margin-top:2px}
.upload-box input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.file-summary{font-size:9px;color:var(--muted);margin:6px 0 0!important}
.trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.optional{color:var(--muted);font-weight:400;font-size:9px}
.contact-form .btn{margin-top:16px;width:100%}

/* Flash / toast */
.flash-stack{width:min(var(--max),calc(100% - 64px));margin:14px auto 0;display:grid;gap:8px}
.flash{padding:11px 14px;border-radius:6px;font-size:11px;border:1px solid transparent}
.flash--success{background:#e9f1e7;border-color:#bfd4b9;color:#376141}
.flash--error{background:#f6e5df;border-color:#e4bdb1;color:#8f3927}
.flash--info{background:#f1eadf;border-color:#dccbb9;color:#5f4a38}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:200;background:#2b1910;color:#fff;padding:13px 18px;border-radius:7px;max-width:460px;font-size:11px;box-shadow:var(--shadow);line-height:1.45}
.toast--error{background:#7e2f20}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:140;background:rgba(24,13,8,.94);display:grid;place-items:center;padding:30px}
.lightbox-figure{margin:0;display:grid;place-items:center;max-width:94vw;max-height:90vh}
.lightbox-figure img{max-width:90vw;max-height:82vh;object-fit:contain;border-radius:5px}
.lightbox-figure figcaption{color:#e9dbce;font-size:11px;margin-top:10px;text-align:center}
.lightbox-close{position:absolute;right:18px;top:12px;background:transparent;border:0;color:#fff;z-index:2;display:grid;place-items:center;padding:4px}
.lightbox-close .icon{width:28px;height:28px}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:43px;height:43px;border:0;border-radius:50%;background:#fff4e7;color:#4b2d1b;display:grid;place-items:center;padding:0}
.lightbox-nav .icon{width:20px;height:20px}
.lightbox-nav--prev{left:18px}
.lightbox-nav--next{right:18px}

/* Inner pages */
.page-hero{background:linear-gradient(180deg,#f7efe5,#f1e5d7);padding:34px 0 56px;position:relative;overflow:hidden}
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;color:#8a7462;margin-bottom:18px}
.breadcrumbs a:hover{color:var(--brown)}
.page-hero .section-kicker{margin-bottom:12px}
.page-hero h1{font-size:clamp(46px,5vw,70px);line-height:1.02;margin-bottom:14px;max-width:900px}
.page-hero p{font-size:14px;line-height:1.6;color:#685446;max-width:650px;margin:0}
.page-section{padding:56px 0}
.page-section--cream{background:var(--cream)}
.service-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.service-page-card{background:#fffdfa;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.service-page-card__media{height:210px;overflow:hidden;background:#eadfd2}
.service-page-card__media img{width:100%;height:100%;object-fit:cover}
.service-page-card__body{padding:19px}
.service-page-card h3{font-size:23px;margin:0 0 6px}
.service-page-card p{font-size:11px;line-height:1.55;color:var(--muted);margin:0 0 12px}
.service-page-card .service-page-card__bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.service-page-card__bottom b{font-size:14px}
.price-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.price-card{background:#fffdfa;border:1px solid var(--line);border-radius:9px;padding:22px}
.price-card h3{font-size:27px;margin:0 0 3px}
.price-card>p{font-size:10px;color:var(--muted);margin-bottom:15px}
.price-row{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #eee5dc;padding:10px 0;font-size:11px}
.price-row b{white-space:nowrap}
.price-card .btn{width:100%;margin-top:17px}
.price-note{font-size:10px;line-height:1.5;color:var(--muted);margin-top:16px;max-width:820px}
.trust-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.trust-card{border:1px solid var(--line);border-radius:8px;padding:21px;background:#fffdfa}
.trust-card .icon{width:29px;height:29px;color:var(--brown);margin-bottom:12px}
.trust-card h3{font-size:20px;margin-bottom:6px}
.trust-card p{font-size:11px;color:var(--muted);line-height:1.55;margin:0}
.work-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.work-gallery__item{position:relative;border:0;padding:0;border-radius:8px;overflow:hidden;background:#eadfd2;aspect-ratio:1.2}
.work-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.work-gallery__item:hover img{transform:scale(1.04)}
.work-gallery__item span{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(20,11,6,.7));color:#fff;text-align:left;padding:26px 12px 10px;font-size:10px}
.pair-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pair-card{background:#fffdfa;border:1px solid var(--line);border-radius:9px;padding:9px 9px 15px}
.pair-card h3{font-size:19px;margin:12px 7px 3px}
.pair-card p{font-size:10px;color:var(--muted);margin:0 7px}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}
.contact-info h2{font-size:39px;margin-bottom:18px}
.contact-detail{display:flex;gap:12px;border-bottom:1px solid var(--line);padding:13px 0}
.contact-detail>.icon{width:21px;height:21px;color:var(--brown);margin-top:2px}
.contact-detail b{display:block;font-size:13px;line-height:1.35}
.contact-detail p{font-size:10px;line-height:1.45;color:var(--muted);margin:3px 0 0}
.contact-visual{margin-top:18px;border-radius:8px;overflow:hidden;height:235px;background:#eadfd2}
.contact-visual img{width:100%;height:100%;object-fit:cover}
.contact-form-panel{background:#f1e6d9;border-radius:9px;padding:30px}
.contact-form-panel h2{font-size:34px;margin-bottom:10px}
.contact-form-panel>p{font-size:11px;line-height:1.55;color:var(--muted);margin-bottom:15px}
.map-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center}
.map-layout h2{font-size:38px;margin-bottom:10px}
.map-layout p{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:15px}
.map-frame{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#e8ddd0;height:330px}
.map-frame iframe{position:relative;z-index:1;width:100%;height:100%;border:0;display:block;background:#e8ddd0}
.map-fallback{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;gap:7px;color:#5d4737}
.map-fallback .icon{width:28px;height:28px;color:var(--brown)}
.map-fallback b{font:600 16px/1.35 var(--serif);max-width:320px}
.map-fallback a{font-size:10px;font-weight:700;color:var(--brown);text-decoration:underline;text-underline-offset:2px}
.requisites{display:grid;grid-template-columns:.7fr 1.3fr;gap:35px;align-items:start}
.requisites h2{font-size:36px;margin-bottom:8px}
.requisites p{font-size:11px;color:var(--muted);line-height:1.5}
.requisites dl{margin:0;border-top:1px solid var(--line)}
.requisites dl>div{display:grid;grid-template-columns:160px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:10px 0}
.requisites dt{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.requisites dd{margin:0;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:34px;align-items:start}
.legal-doc{background:#fffdfa;border:1px solid var(--line);border-radius:8px;padding:34px 38px;font-size:12px;line-height:1.75;color:#4e3e32;overflow-wrap:anywhere}
.legal-doc h2{font-size:25px;margin-top:1.5em;border-top:1px solid var(--line);padding-top:18px}
.legal-doc h3{font-size:19px;margin-top:1.2em}
.legal-doc h1{font-size:31px}
.legal-doc p{margin-bottom:11px}
.legal-doc ul,.legal-doc ol{padding-left:19px;margin-bottom:13px}
.legal-doc li{margin:4px 0}
.legal-doc a{color:var(--brown);text-decoration:underline;text-underline-offset:2px}
.legal-side{position:sticky;top:148px;background:#f3e9de;border:1px solid var(--line);border-radius:8px;padding:19px;display:flex;flex-direction:column;gap:4px}
.legal-side a{font-size:10px;padding:8px 9px;border-radius:4px;color:#6f5746}
.legal-side a.active,.legal-side a:hover{background:#fffdfa;color:var(--brown);font-weight:700}
.legal-side .btn{margin-top:10px;font-size:11px;min-height:42px}
.legal-updated{font-size:9px;color:var(--muted);margin:8px 0 0}
.error-hero{min-height:52vh}

/* Inner CTA reuse */
.inner-cta{padding:38px 0;background:#f2e7da}
.inner-cta .container{display:flex;justify-content:space-between;align-items:center;gap:20px}
.inner-cta h2{font-size:34px;margin:0 0 3px}
.inner-cta p{font-size:11px;color:var(--muted);margin:0}
.inner-cta .btn{flex:0 0 auto}

/* Responsive */
@media(max-width:1180px){
  .container{width:min(var(--max),calc(100% - 48px))}
  .header-meta{gap:22px}
  .main-nav{gap:23px}
  .hero-copy{padding-right:30px}
  .hero-trust{gap:18px}
  .service-track{gap:12px}
  .service-card__media{height:160px}
  .service-card__body{padding:14px}
  .service-card h3{font-size:18px}
  .hero-media{margin-right:calc((min(var(--max),100vw - 48px) - 100vw)/2)}
  .ba-grid{grid-template-columns:minmax(0,24fr) minmax(0,48fr) minmax(0,28fr);gap:20px}
  .benefit{padding:0 14px}
  .contacts-grid{grid-template-columns:minmax(0,27fr) minmax(0,25fr) minmax(0,28fr) minmax(0,20fr);gap:14px}
}
@media(max-width:960px){
  .header-main{min-height:78px}
  .header-meta{display:none}
  .header-call{display:none}
  .menu-toggle{display:grid}
  .header-actions{margin-left:auto}
  .header-nav-wrap{display:block;position:static;background:transparent;border:0}
  .main-nav{position:absolute;top:100%;left:0;right:0;height:auto;display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;background:#fffaf3;border-bottom:1px solid var(--line);padding:12px 24px 18px;box-shadow:var(--shadow);z-index:65;width:100%;max-width:none;margin:0}
  .main-nav__city{display:block;width:100%;padding:0 0 11px;margin-bottom:5px;border-bottom:1px solid var(--line)}
  .city-switcher--mobile .city-switcher__control{background:#f5ebdf;border:1px solid #e3d2c1;border-radius:5px;padding:9px 12px}
  .city-switcher--mobile select{max-width:none;width:100%;font-size:13px;border-bottom:0;padding:0 18px 0 0}
  .city-switcher--mobile .city-switcher__arrow{right:12px}
  .main-nav.is-open{display:flex}
  .main-nav a{font-size:13px;padding:11px 0;border-bottom:1px solid #f0e6dc}
  .main-nav a.active:after{display:none}
  .mobile-actionbar{display:flex;align-items:center;gap:14px;padding:0 24px 12px;background:#fffdf9}
  .mobile-phone{width:42px;height:42px;border:1px solid #d9c5b3;border-radius:50%;display:grid;place-items:center;color:var(--brown);flex:0 0 auto}
  .mobile-phone .icon{width:19px;height:19px}
  .mobile-actionbar .btn{flex:1;min-height:43px}
  .hero-grid{display:flex;flex-direction:column;min-height:0}
  .hero-copy{padding:44px 0 34px;order:1}
  .hero h1{font-size:clamp(48px,7vw,64px)}
  .hero-media{height:410px;min-height:0;margin:0 -24px;order:2}
  .hero-media:after{display:none}
  .hero-trust{order:3;margin-top:0;padding:26px 0 4px}
  .service-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
  .service-track::-webkit-scrollbar{display:none}
  .service-card{flex:0 0 260px;scroll-snap-align:start}
  .service-card__media{height:175px}
  .carousel-dots{display:flex}
  .ba-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);gap:22px}
  .ba-list{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:10px 18px;margin-top:2px}
  .benefits-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}
  .benefit:nth-child(3n){border-right:0}
  .benefit:nth-child(n+4){padding-top:16px;border-top:1px solid var(--line)}
  .estimate-cta{grid-template-columns:44% 56%}
  .reviews-grid{grid-template-columns:1fr 1fr}
  .estimate-cta__list{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;border-left:0;border-top:1px solid rgba(193,170,150,.45);padding:14px 24px;gap:22px}
  .estimate-benefit{flex:1 1 200px}
  .steps-grid{grid-template-columns:1fr 1fr;gap:26px 0}
  .step:nth-child(2){padding-right:0}
  .step:nth-child(2) .step-arrow{display:none}
  .step:nth-child(3){padding-left:0}
  .about-grid{grid-template-columns:1fr 1fr;gap:24px}
  .about-media{grid-column:1/-1;grid-row:2;height:360px}
  .about-copy{grid-row:1}
  .about-list{grid-row:1}
  .contacts-grid{grid-template-columns:1fr 1fr;gap:17px}
  .contacts-actions{justify-content:flex-start}
  .contact-block:nth-child(3){grid-column:1/-1}
  .cta-dark .container{grid-template-columns:1fr 1fr;gap:20px}
  .cta-dark .cta-actions{justify-content:flex-start;grid-column:1/-1}
  .footer-grid{grid-template-columns:1.5fr 1fr 1fr}
  .footer-grid>div:last-child{grid-column:1/-1}
  .footer-links{grid-template-columns:1fr 1fr;gap:7px 20px}
  .page-section{padding:44px 0}
  .service-page-grid,.price-layout,.pair-showcase,.trust-cards{grid-template-columns:1fr 1fr}
  .work-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
  .contact-layout,.map-layout,.requisites{grid-template-columns:1fr;gap:26px}
  .legal-layout{grid-template-columns:1fr;gap:22px}
  .legal-side{position:static;order:-1;display:grid;grid-template-columns:1fr 1fr;gap:4px}
  .legal-side .btn,.legal-side .legal-updated{grid-column:1/-1}
  .legal-doc{padding:26px}
  .inner-cta .container{display:block}
  .inner-cta .btn{margin-top:15px}
}
@media(max-width:680px){
  body{font-size:14px;padding-bottom:64px}
  .container{width:calc(100% - 32px)}
  .section{padding:38px 0}
  .section-head{display:block;margin-bottom:22px}
  .section-head .head-action{margin-top:12px;display:inline-flex}
  .header-main{min-height:70px;padding:8px 0}
  .brand__mark{width:46px}
  .brand__name b{font-size:20px}
  .brand__name small{font-size:8px;margin-top:3px}
  .menu-toggle{width:38px;height:38px}
  .mobile-actionbar{padding:0 16px 10px}
  .main-nav{padding:8px 16px 14px}
  .hero-copy{padding:30px 0 28px}
  .hero-eyebrow{font-size:10px;padding:7px 10px;margin-bottom:19px;max-width:250px}
  .hero h1{font-size:clamp(42px,11.5vw,54px);margin-bottom:18px}
  .hero-lead{font-size:13px;line-height:1.6;margin-bottom:22px}
  .hero-actions{flex-direction:column;gap:8px}
  .hero-actions .btn{width:100%}
  .hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:25px;padding:15px 0 0;border-top:1px solid #ddcab6}
  .trust-item{display:block;text-align:center}
  .trust-icon{margin:0 auto 6px;width:30px;height:30px}
  .trust-icon .icon{width:16px;height:16px}
  .trust-text b{font-size:9px}
  .trust-text small{font-size:8px}
  .hero-media{height:270px;margin:0 -16px}
  .services{padding-top:28px}
  .section-head h2{font-size:34px}
  .section-head p{font-size:12px}
  .service-track{margin-right:-16px;padding-right:16px}
  .service-card{flex-basis:78vw}
  .service-card__media{height:190px}
  .service-card__body{padding:16px}
  .service-card h3{font-size:20px}
  .ba-grid{grid-template-columns:1fr;gap:18px}
  .ba-copy h2{font-size:36px}
  .ba-view,.ba-list{width:100%}
  .comparison{height:260px}
  .ba-list{grid-template-columns:1fr 1fr;gap:9px}
  .ba-list li{font-size:10px}
  .ba-check{width:20px;height:20px}
  .benefits-grid{grid-template-columns:1fr 1fr}
  .benefit{padding:0 9px}
  .benefit:nth-child(2n){border-right:0}
  .benefit:nth-child(3n){border-right:1px solid var(--line)}
  .benefit:nth-child(n+3){padding-top:15px;border-top:1px solid var(--line)}
  .benefit:last-child{grid-column:1/-1;border-right:0;border-top:1px solid var(--line)}
  .benefit h3{font-size:17px}
  .benefit p{font-size:10px}
  .benefit-icon .icon{width:30px;height:30px}
  .estimate-cta{grid-template-columns:1fr}
  .estimate-cta__media{min-height:190px;height:190px}
  .estimate-cta__body{padding:23px 20px}
  .estimate-cta__body h2{font-size:33px}
  .estimate-cta__body p{font-size:11px}
  .estimate-cta__body .btn{width:100%}
  .estimate-cta__list{display:grid;grid-template-columns:1fr 1fr;padding:16px 20px;gap:12px}
  .estimate-benefit b{font-size:10px}
  .estimate-benefit small{font-size:9px}
  .steps-grid{grid-template-columns:1fr;gap:20px}
  .step{padding:0!important;border-bottom:1px solid var(--line);padding-bottom:17px!important}
  .step:last-child{border-bottom:0;padding-bottom:0!important}
  .step-arrow{right:0;top:3px;transform:rotate(90deg)}
  .step:nth-child(2) .step-arrow{display:block}
  .materials-grid{display:flex;overflow-x:auto;gap:10px;margin-right:-16px;padding-right:16px;scrollbar-width:none}
  .materials-grid::-webkit-scrollbar{display:none}
  .material{flex:0 0 108px}
  .material__swatch{height:82px}
  .works-grid{display:flex;overflow-x:auto;gap:11px;margin-right:-16px;padding-right:16px;scrollbar-width:none}
  .works-grid::-webkit-scrollbar{display:none}
  .work-tile{flex:0 0 76vw;aspect-ratio:1.15}
  .reviews-grid{grid-template-columns:1fr}
  .review-card{grid-template-columns:75px 1fr;padding:12px}
  .review-photo{width:75px;height:75px}
  .about-grid{grid-template-columns:1fr}
  .about-copy{grid-row:auto}
  .about-media{grid-row:auto;order:2;height:235px}
  .about-list{grid-row:auto;order:3}
  .about-copy h2{font-size:35px}
  .faq-grid{grid-template-columns:1fr;gap:20px}
  .faq-intro h2{font-size:35px}
  .contacts-grid{grid-template-columns:1fr 1fr;gap:16px}
  .contacts-intro{grid-column:1/-1}
  .contacts-intro h2{font-size:32px}
  .contact-block:nth-child(3){grid-column:1/-1}
  .contacts-actions{grid-column:1/-1}
  .contacts-actions .btn{width:100%}
  .cta-dark{padding:30px 0}
  .cta-dark .container{grid-template-columns:1fr;gap:15px}
  .cta-dark h2{font-size:34px}
  .cta-dark .cta-actions .btn{width:100%}
  .site-footer{padding:38px 0 16px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px}
  .footer-brand{grid-column:1/-1}
  .footer-grid>div:last-child{grid-column:1/-1}
  .footer-links{grid-template-columns:1fr}
  .footer-bottom{display:block;font-size:8px;line-height:1.7}
  .footer-legal{margin-top:7px;gap:10px}
  .mobile-contact-bar{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fffdf9;border-top:1px solid #e0d0c0;box-shadow:0 -8px 25px rgba(45,25,14,.08)}
  .mobile-contact-bar a,.mobile-contact-bar button{height:58px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:var(--brown);font-size:10px;font-weight:700;text-decoration:none}
  .mobile-contact-bar .icon{width:21px;height:21px}
  .mobile-contact-bar .mobile-bar-call{background:var(--brown);color:#fff;border-radius:0;margin:7px 10px;height:44px;align-self:center}
  .modal__panel{padding:26px 20px;border-radius:10px}
  .modal__panel h2{font-size:34px}
  .form-row{grid-template-columns:1fr;gap:0}
  .lightbox{padding:12px}
  .lightbox-nav{width:37px;height:37px}
  .lightbox-nav--prev{left:5px}
  .lightbox-nav--next{right:5px}
  .page-hero{padding:24px 0 40px}
  .page-hero h1{font-size:42px}
  .page-hero p{font-size:12px}
  .page-section{padding:34px 0}
  .service-page-grid,.price-layout,.pair-showcase,.trust-cards,.work-gallery{grid-template-columns:1fr}
  .work-gallery{grid-template-columns:1fr 1fr;gap:9px}
  .work-gallery__item{aspect-ratio:1.1}
  .price-card{padding:18px}
  .contact-form-panel{padding:21px}
  .contact-form-panel h2{font-size:31px}
  .map-frame{height:280px}
  .requisites dl>div{grid-template-columns:1fr;gap:2px}
  .legal-doc{padding:20px 16px;font-size:11px}
  .legal-doc h2{font-size:22px}
  .legal-side{padding:13px}
  .page-hero .btn{margin-top:15px}
}
@media(max-width:380px){
  .brand__mark{width:40px}
  .brand__name b{font-size:18px}
  .brand__name small{font-size:7px}
  .hero h1{font-size:40px}
  .mobile-actionbar .btn{font-size:11px}
  .review-card{grid-template-columns:64px 1fr}
  .review-photo{width:64px;height:64px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
