:root{--paper:#f4f6f8;--ink:#1e2328;--line:#d5dade;--white:#fff;--max:1328px}


*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{margin:0;background:var(--paper);color:var(--ink);font-family:"Golos Text","Golos",Arial,sans-serif;font-size:16px;line-height:1.55}



img{display:block;width:100%;height:auto}

a{color:inherit;text-decoration:none}

button,a{touch-action:manipulation}

/* Каноническая ширина: поле 12 колонок до 1920 px, контент — центральные 10 (83.33%, максимум 1600 px). Других правил ширины для .wrap вне медиа-запросов быть не должно. */
.wrap{width:83.333%;max-width:1600px;margin:auto}

.header{height:60px;background:var(--ink);color:#fff;display:flex;align-items:center;position:relative;z-index:20}

.header .wrap{display:flex;align-items:center;gap:44px}

.logo{width:184px}

.nav{margin-left:auto;display:flex;gap:30px;font-size:15px;font-weight:400;letter-spacing:.01em;white-space:nowrap}

.nav a{color:rgba(255,255,255,.78);white-space:nowrap;padding:5px 9px;margin:-5px -9px;transition:background .18s ease,color .18s ease}
.nav a:hover{background:rgba(255,255,255,.92);color:var(--ink)}
.header--light .nav a:hover,.home-page .header.home-header-float .nav a:hover,.internal-page .header.internal-header-float .nav a:hover,.product-page .header.product-header-float .nav a:hover,.product-page.product-scrolled .header .nav a:hover{background:var(--ink);color:#fff}

.header--light .nav a{color:rgba(30,35,40,.75)}

.nav a:focus-visible{color:var(--orange)}

.nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:9px}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;background:var(--orange);color:#fff;font-size:15px;font-weight:500;border:0;cursor:pointer;transition:background .18s ease}
.btn:hover{background:#9d3e09}
.btn-outline:hover{background:rgba(255,255,255,.14);border-color:#fff}

.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.78)}

.menu{display:none;margin-left:auto;border:0;background:none;color:inherit;font-size:28px}

.hero{min-height:820px;color:#fff;position:relative;overflow:hidden}

.hero>img{position:absolute;inset:0;height:100%;object-fit:cover}

.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,18,20,.84),rgba(15,18,20,.16) 68%),linear-gradient(0deg,rgba(15,18,20,.55),transparent 55%)}

.hero-content{position:relative;z-index:1;min-height:820px;padding:62px 0;display:flex;flex-direction:column;justify-content:space-between}

.hero-kicker{font-size:15px;font-weight:400;letter-spacing:.05em}

.hero-grid{display:grid;grid-template-columns:2fr 1fr;gap:64px;align-items:end}

.display{font-size:clamp(64px,7.5vw,108px);line-height:.9;letter-spacing:-.055em;margin:0 0 32px;font-weight:700}

.hero-aside{border-left:1px solid rgba(255,255,255,.45);padding-left:32px}

.hero-aside h2{font-size:28px;line-height:1.2;margin:0 0 18px}

.hero-aside p{font-size:17px;margin:0;font-weight:400;opacity:.82}

.section{padding:108px 0}

.section.white{background:#fff}

.section.dark{background:var(--ink);color:#fff}

.section-head{display:grid;grid-template-columns:2fr 1fr;gap:64px;align-items:end;margin-bottom:54px}

.section-head h2::before{content:"";display:block;width:56px;height:12px;margin-bottom:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='12' viewBox='0 0 56 12'%3E%3Cpath d='M1 6h54M1 1v10M55 1v10' stroke='%23f26a21' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat left center}

.section h2{font-size:clamp(48px,5vw,72px);line-height:.95;letter-spacing:-.04em;margin:0;font-weight:700}

.section-head p{font-size:20px;margin:0}

.muted{color:var(--muted)}

/* «Готовые объёмы»: девятиколоночная шахматная разбивка 5/4 */
.product-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:32px 28px}

.product-grid .product{grid-column:span 4}

.product-grid .product:nth-child(4n+1),.product-grid .product:nth-child(4n+4){grid-column:span 5}

.product img{height:420px;object-fit:cover}

.product-meta{border-top:1px solid var(--ink);margin-top:22px;padding-top:22px}

.product-title{display:flex;justify-content:space-between;gap:24px;align-items:start}

.product h3{font-size:44px;line-height:1;margin:0;font-weight:700}

.product-spec{font-size:15px;font-weight:400;text-align:left;margin:12px 0 0;transition:font-weight .2s ease}

.product p{font-size:18px;max-width:590px;color:var(--muted)}
.product-title>p{max-width:50%;margin:0;font-size:15px;font-weight:400;text-align:right}

.story-hero{height:650px;object-fit:cover}

.caption-row{display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--line);padding-top:22px;margin-top:20px}

.caption-row h3,.interior h3{font-size:28px;line-height:1.2;margin:0}

.caption-row p,.interior p{font-size:18px;color:var(--muted);margin:0}

.interior-grid{display:grid;grid-template-columns:7fr 5fr;gap:24px;margin-top:52px}

.interior-main img{height:610px;object-fit:cover}

.interior-main h3{margin-top:18px}

.interior-side{display:grid;grid-template-rows:1fr 1fr;gap:24px}

.interior-shot{position:relative;min-height:292px;overflow:hidden}

.interior-shot img{height:100%;object-fit:cover}

.interior-shot span{position:absolute;left:0;bottom:0;background:rgba(20,24,28,.3);backdrop-filter:blur(3px);padding:10px 16px;font-size:15px;font-weight:400;color:#fff}

.interior-support{margin:48px 0 0;width:100%;margin-left:0}
.interior-support img{height:480px;object-fit:cover}
.interior-support figcaption{padding-top:14px;color:var(--muted);font-size:16px}

.quality-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px}

.quality-copy{display:flex;flex-direction:column;justify-content:space-between}

.quality-copy h2{font-size:68px}

.quality-copy>p{font-size:20px;color:var(--paper)}

.quality-list{border-top:1px solid rgba(255,255,255,.22)}

.quality-item{display:grid;grid-template-columns:190px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.22)}

.quality-item strong{font-size:20px}

.quality-item span{font-size:17px;color:#d7dadd}

.cutaway{min-height:740px;background:#fff;position:relative;overflow:hidden}

.cutaway img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}
.cutaway img.is-active{opacity:1}
#technology .reveal{transition-duration:1.4s}

.split{display:grid;grid-template-columns:3fr 2fr;gap:0;margin-bottom:56px;background:#fff}

.split.reverse{grid-template-columns:2fr 3fr}

.split img{height:520px;object-fit:cover}

.split-copy{padding:62px;display:flex;flex-direction:column;justify-content:center}

.split-copy h2{font-size:54px}

.split-copy p{font-size:18px;color:var(--muted)}

.process{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}

.step{padding:34px 30px;border-right:1px solid var(--line)}

.step:last-child{border:0}

.step b{color:var(--orange)}

.step h3{font-size:24px;margin:44px 0 10px}

.cta{display:grid;grid-template-columns:2fr 1fr;gap:64px;align-items:center}

.cta h2{font-size:64px}

.cta p{font-size:18px;color:#d7dadd}

.footer{background:#171b1f;border-top:1px solid rgba(255,255,255,.12);color:#fff;padding:56px 0 34px}

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

.footer .logo{width:210px}

.footer :is(h2,h4){margin:0 0 16px}

.footer a,.footer p{display:block;color:#d7dadd;margin:7px 0}

.legal{border-top:1px solid rgba(255,255,255,.18);margin-top:44px;padding-top:22px;color:#aeb5ba;font-size:14px;display:flex;justify-content:center;gap:30px;text-align:center;flex-wrap:wrap}

.product-hero{background:#fff;padding:54px 0 64px}

.breadcrumbs{font-size:15px;color:var(--muted);margin-bottom:30px}

.product-intro{display:grid;grid-template-columns:2fr 1fr;gap:64px;align-items:end}

.product-intro h1{font-size:84px;line-height:.9;letter-spacing:-.045em;margin:0 0 18px}

.product-intro h2{font-size:27px;margin:0}

.product-intro p{font-size:18px;color:var(--muted)}

.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin:38px 0}

.fact{padding:20px 24px;border-right:1px solid var(--line)}

.fact:last-child{border:0}

.fact strong{display:block;font-size:24px}

.fact span{color:var(--muted)}

.product-hero>div>img{height:680px;object-fit:cover}

.local-nav{background:#fff;border-block:1px solid var(--line)}

.local-nav .wrap{display:flex;gap:28px;padding-block:18px;font-weight:400}

.local-nav a.is-active{color:var(--orange)}

.local-nav a:last-child{margin-left:auto}

.price{border-left:4px solid var(--orange);background:#fff;padding:38px 44px;display:grid;grid-template-columns:1fr 1.75fr;gap:56px;align-items:center}

.price strong{font-size:52px;line-height:1}

.price .price-request{font-size:clamp(30px,3vw,44px);line-height:1.05;letter-spacing:-.035em}

.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 64px}

.spec :is(h2,h3){font-size:25px;margin:0 0 14px}

.spec dl{margin:0;border-top:1px solid rgba(255,255,255,.22)}

.spec div{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.22)}

.spec dt{color:#aeb6bc}

.spec dd{margin:0}

.plan{background:#fff;padding:38px}

.plan img{height:650px;object-fit:contain}

.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}

.gallery-pair img{height:500px;object-fit:cover}

.gallery-wide{height:620px;object-fit:cover;margin-bottom:24px}


@media(max-width:900px){.wrap{width:calc(100% - 40px);max-width:none}

.nav,.header>.wrap>.btn{display:none}

.menu{display:block}

.header.open .nav{display:flex;position:absolute;left:0;right:0;top:60px;background:var(--ink);padding:24px;flex-direction:column}

.hero,.hero-content{min-height:720px}

.hero-grid,.section-head,.quality-grid,.cta,.product-intro{grid-template-columns:1fr}

.hero-aside{border-left:0;padding-left:0;max-width:520px}

.section{padding:76px 0}

.product-grid,.interior-grid,.spec-grid,.footer-grid{grid-template-columns:1fr}
.product-grid .product,.product-grid .product:nth-child(4n+1),.product-grid .product:nth-child(4n+4){grid-column:auto}

.product img,.story-hero{height:340px}

.interior-main img{height:420px}

.interior-support{width:100%}
.interior-support img{height:300px}

.quality-copy{gap:46px}

.cutaway{min-height:0;height:520px}

.split,.split.reverse{grid-template-columns:1fr}

.split-copy{padding:36px}

.process{grid-template-columns:1fr}

.step{border-right:0;border-bottom:1px solid var(--line)}

.cta h2,.quality-copy h2{font-size:48px}

.footer-grid{gap:30px}

.legal{flex-direction:column}

.product-intro h1{font-size:64px}

.facts{grid-template-columns:1fr 1fr}

.fact:nth-child(2){border-right:0}

.product-hero>div>img{height:430px}

.price{grid-template-columns:1fr;gap:18px}

.price strong{font-size:42px}

.plan img{height:auto}

.gallery-pair{grid-template-columns:1fr}

.gallery-pair img,.gallery-wide{height:360px}

.local-nav .wrap{overflow-x:auto;white-space:nowrap}

.local-nav a:last-child{margin-left:0}

}


@media(max-width:560px){.logo{width:180px}

.hero-content{padding:42px 0}

.display{font-size:54px}

.section h2{font-size:44px}

.product-grid{gap:48px}

.product img{height:260px}

.product-title{display:block}

.product-spec{text-align:left;margin-top:10px}

.product-title>p{max-width:none;text-align:left;margin-top:12px}

.caption-row{grid-template-columns:1fr;gap:12px}

.interior-side{grid-template-rows:repeat(2,260px)}

.quality-item{grid-template-columns:1fr;gap:8px}

.split img{height:330px}

.footer-grid{grid-template-columns:1fr 1fr}

.footer-grid>div:first-child{grid-column:1/-1}

.facts{grid-template-columns:1fr}

.fact{border-right:0;border-bottom:1px solid var(--line)}

.fact:last-child{border-bottom:0}

.spec div{grid-template-columns:1fr;gap:5px}

.price{padding:28px}

.gallery-pair img,.gallery-wide{height:280px}

}



/* Composition pass: compact the catalogue, then present interiors as two balanced rows. */
#models{padding-top:78px;padding-bottom:88px}

#models .section-head{margin-bottom:42px}

/* интерьеры: та же шахматная разбивка 5/4 */
.interior-editorial-grid{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(2,420px);gap:12px}

.interior-frame{grid-column:span 4}

.interior-frame:nth-child(4n+1),.interior-frame:nth-child(4n+4){grid-column:span 5}

.interior-frame{position:relative;overflow:hidden;margin:0;background:#e9edef}

.interior-frame img{height:100%;object-fit:cover}

.interior-frame figcaption{position:absolute;left:0;bottom:0;margin:0;background:rgba(20,24,28,.3);backdrop-filter:blur(3px);padding:10px 16px;color:#fff;font-size:15px;font-weight:400;line-height:1.2}

.interior-living img{object-position:center}

.interior-kitchen img{object-position:center}

.interior-bedroom img{object-position:center 48%}

.interior-bathroom img{object-position:center 52%}

@media(max-width:1150px) and (min-width:901px){.wrap{width:min(958px,calc(100% - 40px))}

.header .wrap{gap:20px}

.logo{width:190px}

.nav{gap:16px;font-size:14px}

.btn{min-height:50px;padding:0 20px;font-size:15px}

.hero-grid{gap:40px}

.hero-aside{padding-left:24px}

.section-head{gap:42px}

}

@media(max-width:900px){#models{padding-top:70px;padding-bottom:74px}

.interior-editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,360px)}

}

@media(max-width:560px){#models{padding-top:60px;padding-bottom:62px}

.interior-editorial-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,300px);gap:16px}

.interior-frame figcaption{padding:9px 12px;font-size:14px}

}


/* Ширина .wrap задана один раз в начале файла — здесь правил быть не должно. */

.hero-v2{min-height:0;padding:36px 0 82px;color:var(--ink);background:var(--paper);overflow:visible}

.hero-v2:after{content:none}

.hero-v2-grid{display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:stretch}

.hero-v2-media{min-height:690px;overflow:hidden;background:#d9dee1}

.hero-v2-media img{height:100%;object-fit:cover}

.hero-v2-copy{padding:34px 8px 34px 16px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}

.hero-v2 .hero-kicker{font-size:15px;color:var(--muted);margin-bottom:34px}

.hero-v2 .display{font-size:clamp(54px,5.3vw,94px);line-height:.92;color:var(--ink);margin:0 0 34px}

.hero-v2-promise{max-width:30ch;margin:0 0 38px;font-size:20px;line-height:1.42;color:var(--muted)}

.hero-v2 .btn{margin-top:auto}

/* .interior-editorial-grid задаётся один раз выше — дубль удалён при ревизии каскада. */

@media(max-width:900px){
.hero-v2{padding:20px 0 56px}
.hero-v2-grid{grid-template-columns:1fr;gap:28px}
.hero-v2-media{min-height:460px}
.hero-v2-copy{padding:0}
.hero-v2 .hero-kicker{margin-bottom:20px}
.hero-v2 .display{margin-bottom:24px}
.hero-v2-promise{max-width:48ch;margin-bottom:28px}
.hero-v2 .btn{margin-top:0}
}

@media(max-width:560px){
.hero-v2{padding:0 0 48px}
.hero-v2-media{min-height:390px;margin-inline:calc((100vw - 100%)/-2)}
.hero-v2-copy{padding-top:28px}
.hero-v2 .display{font-size:52px}
.hero-v2-promise{font-size:18px}
.interior-editorial-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,300px)}
}


/* V2 hero revision: a centred 9/12 image card with text over the image. */
.hero-v2-card{padding:36px 0 82px;background:var(--paper)}
.hero-v2-card .hero-v2-card-inner{position:relative;min-height:720px;margin:0;overflow:hidden;color:#fff;background:#1e2328}
.hero-v2-card .hero-v2-card-inner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-v2-card .hero-v2-card-inner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,18,20,.78),rgba(15,18,20,.14) 70%),linear-gradient(0deg,rgba(15,18,20,.46),transparent 55%)}
.hero-v2-card .hero-content{position:relative;z-index:1;min-height:720px;padding:52px;display:flex;flex-direction:column;justify-content:space-between}
.hero-v2-card .hero-kicker{font-size:15px;color:#fff;margin:0}
.hero-v2-card .display{font-size:clamp(58px,5.7vw,98px);color:#fff;margin:0 0 28px}
.hero-v2-card .hero-grid{grid-template-columns:2fr 1fr;gap:38px}
.hero-v2-card .hero-aside{padding-left:24px}
.hero-v2-card .hero-aside h2{font-size:26px}
.hero-v2-card .hero-aside p{font-size:16px}
.hero-v2-card .hero-v2-grid,.hero-v2-card .hero-v2-media,.hero-v2-card .hero-v2-copy{display:unset}
@media(max-width:900px){.hero-v2-card{padding:20px 0 56px}
.hero-v2-card .hero-v2-card-inner{width:100%;min-height:620px}
.hero-v2-card .hero-content{min-height:620px;padding:38px}
.hero-v2-card .hero-grid{grid-template-columns:1fr;gap:28px}
.hero-v2-card .hero-aside{padding-left:0;border-left:0}
}
@media(max-width:560px){.hero-v2-card{padding:0 0 48px}
.hero-v2-card .hero-v2-card-inner{min-height:620px}
.hero-v2-card .hero-content{min-height:620px;padding:28px 20px}
.hero-v2-card .display{font-size:52px}
.hero-v2-card .hero-aside h2{font-size:25px}
.hero-v2-card .hero-aside p{font-size:16px}
}


/* Product-card navigation: global exit at top-right, local sections bottom-left. */
.product-page .header.product-header-float{position:fixed!important;z-index:31;top:24px;right:max(8.333vw,calc((100vw - 1600px)/2));left:auto;width:max-content;height:45px;border:0;border-bottom:1px solid var(--ink);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(30,35,40,.12);animation:header-float-in .3s cubic-bezier(.22,.8,.32,1) both}
.product-page .header.product-header-float .wrap{width:auto;height:100%;margin:0;padding:0 16px;gap:0}
.product-page .header.product-header-float .wrap>a:first-child,.product-page .header.product-header-float .btn{display:none!important}
.product-page .header.product-header-float .nav{margin:0;gap:0;font-size:13.5px;height:100%;align-items:stretch}
@media(max-width:1150px) and (min-width:901px){.product-page .header.product-header-float{right:max(20px,calc((100vw - 958px)/2))}}
@media(max-width:900px){.product-page .header.product-header-float{top:12px;right:20px}
.product-page .header.product-header-float .nav{display:none}
}

.product-page .local-nav{position:fixed;z-index:30;left:max(8.333vw,calc((100vw - 1600px)/2));bottom:24px;width:max-content;max-width:calc(100vw - 112px);border:1px solid var(--line);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(30,35,40,.12);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease}
.product-page .local-nav .wrap{width:auto;margin:0;display:flex;gap:18px;padding:0 16px;height:45px;align-items:center;overflow-x:auto;white-space:nowrap;font-size:14px}
.product-page .local-nav a{height:100%;display:flex;align-items:center;position:relative}
.product-page .local-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.product-page .local-nav a.is-active{color:var(--ink)}
.product-page .local-nav a.is-active::after{transform:scaleX(1)}
.product-page .local-nav a:last-child{margin-left:0}
.product-page .product-float-mark{position:fixed;z-index:30;right:max(8.333vw,calc((100vw - 1600px)/2));bottom:24px;width:45px;height:45px;border:1px solid var(--line);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(30,35,40,.12);display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease}
.product-page .product-float-mark img{width:24px;height:24px}
.product-page.product-scrolled .local-nav,.product-page.product-scrolled .product-float-mark{opacity:1;pointer-events:auto;transform:translateY(0)}
.product-page.product-scrolled .header{position:fixed;z-index:31;top:24px;right:max(8.333vw,calc((100vw - 1600px)/2));width:max-content;height:45px;border:0;border-bottom:1px solid var(--ink);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(30,35,40,.12);animation:header-float-in .3s cubic-bezier(.22,.8,.32,1) both}
.product-page.product-scrolled .header .wrap{width:auto;height:100%;margin:0;padding:0 13px;gap:0}
.product-page.product-scrolled .header .wrap>a:first-child,.product-page.product-scrolled .header .btn{display:none}
.product-page.product-scrolled .header .nav{margin:0;gap:0;font-size:13.5px;height:100%;align-items:stretch}
@media(max-width:900px){.product-page .local-nav{left:20px;bottom:20px;max-width:calc(100vw - 96px)}
.product-page .product-float-mark{right:20px;bottom:20px}
.product-page.product-scrolled .header{top:12px;right:12px}
.product-page.product-scrolled .header .nav{display:none}
}

/* Home page uses the same navigation language as product pages after the first screen. */
.home-page .header.home-header-float,.internal-page .header.internal-header-float{position:fixed!important;z-index:31;top:24px;right:max(8.333vw,calc((100vw - 1600px)/2));left:auto;width:max-content;height:45px;border:0;border-bottom:1px solid var(--ink);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(30,35,40,.12);animation:header-float-in .3s cubic-bezier(.22,.8,.32,1) both}
.home-page .header.home-header-float .wrap,.internal-page .header.internal-header-float .wrap{width:auto;height:100%;margin:0;padding:0 16px;gap:0}
.home-page .header.home-header-float .wrap>a:first-child,.home-page .header.home-header-float .btn,.internal-page .header.internal-header-float .wrap>a:first-child,.internal-page .header.internal-header-float .btn{display:none!important}
.home-page .header.home-header-float .nav,.internal-page .header.internal-header-float .nav{margin:0;gap:0;font-size:13.5px;height:100%;align-items:stretch}
.float-actions{position:fixed;z-index:30;left:max(8.333vw,calc((100vw - 1600px)/2));bottom:24px;display:flex;align-items:center;border-top:1px solid var(--ink);background:rgba(255,255,255,.4);backdrop-filter:blur(14px);box-shadow:0 10px 24px rgba(30,35,40,.1);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease}
.site-float-mark{width:42px;height:42px;flex:none;display:grid;place-items:center;transition:background .18s ease}
.site-float-mark img{transition:filter .18s ease}
.site-float-mark:hover{background:var(--ink)}
.site-float-mark:hover img{filter:invert(1)}
.float-order{height:42px;min-width:118px;padding:0 14px;border:0;border-left:1px solid rgba(30,35,40,.08);background:transparent;font:inherit;font-size:13.5px;font-weight:500;letter-spacing:.02em;text-align:center;color:var(--ink);cursor:pointer;transition:background .18s ease,color .18s ease}
.float-order:hover{background:var(--ink);color:#fff}
.float-order--primary{background:rgba(242,106,33,.82);color:#fff;border-left:0}
.float-order--primary:hover{background:rgba(255,255,255,.92);color:var(--orange)}
.site-float-mark img{width:24px;height:24px}
.home-page.home-scrolled .float-actions,.internal-page.internal-scrolled .float-actions{opacity:1;pointer-events:auto;transform:translateY(0)}
.text-action{display:inline-flex;align-items:center;margin-top:18px;padding-bottom:4px;border-bottom:2px solid var(--orange);font-size:17px;font-weight:700;color:var(--ink)}
@media(max-width:1150px) and (min-width:901px){.home-page .header.home-header-float,.internal-page .header.internal-header-float,.product-page.product-scrolled .header{right:max(20px,calc((100vw - 958px)/2))}.float-actions,.product-page .local-nav{left:max(20px,calc((100vw - 958px)/2))}.product-page .product-float-mark{right:max(20px,calc((100vw - 958px)/2))}}
@media(max-width:900px){.home-page .header.home-header-float,.internal-page .header.internal-header-float{top:12px;right:20px}.home-page .header.home-header-float .nav,.internal-page .header.internal-header-float .nav{display:none}.home-page .header.home-header-float .menu,.internal-page .header.internal-header-float .menu{display:block}.float-actions{left:20px;bottom:16px}.float-order{height:38px;min-width:104px;padding:0 10px;font-size:13px}.float-actions .site-float-mark{width:38px;height:38px}}

.home-page .header.home-header-float .nav a,.internal-page .header.internal-header-float .nav a,.product-page .header.product-header-float .nav a,.product-page.product-scrolled .header .nav a{display:flex;align-items:center;height:100%;padding:0 15px;margin:0;border-left:1px solid rgba(30,35,40,.09)}
.home-page .header.home-header-float .nav a:first-child,.internal-page .header.internal-header-float .nav a:first-child,.product-page .header.product-header-float .nav a:first-child,.product-page.product-scrolled .header .nav a:first-child{border-left:0}

/* Плавающая шапка: плавное появление и компенсация 64px, чтобы контент не прыгал. */
@keyframes header-float-in{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
body.home-scrolled,body.internal-scrolled,body.product-scrolled{padding-top:60px}
@media(prefers-reduced-motion:reduce){.header{animation:none!important}}

/* Живой hero: сменяемые строки в кикере и подписи */
.hero-rotator{display:inline-block;transition:opacity .45s ease,transform .45s ease}
.hero-rotator.is-out{opacity:0;transform:translateY(12px)}
@keyframes hero-load{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.hero-v2-card .hero-grid>div:first-child>h1,.hero-v2-card .hero-actions{animation:hero-load .9s cubic-bezier(.22,.68,.26,1) both}
.hero-v2-card .hero-actions{display:flex;gap:14px;flex-wrap:wrap;animation-delay:.45s}
.hero-actions .btn{min-width:230px;justify-content:center}
.hero-actions .btn:hover{background:#fff;color:var(--ink)}
.hero-actions .btn-outline:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.kw{display:inline-block;opacity:0;transform:translateY(10px);transition:opacity .4s ease,transform .4s cubic-bezier(.22,.68,.26,1)}
.kw.in{opacity:1;transform:none}
.aline{display:block;opacity:0;transform:translateX(-18px);transition:opacity .5s ease,transform .55s cubic-bezier(.22,.68,.26,1)}
.aline.in{opacity:1;transform:none}
.sw{display:inline-block;opacity:0;transform:translateY(9px);transition:opacity .35s ease,transform .35s ease}
.sw.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.hero-rotator{transition:none}.hero-v2-card .hero-grid>div:first-child>h1,.hero-v2-card .hero-actions{animation:none}.kw,.aline,.sw{opacity:1!important;transform:none!important;transition:none}}

/* Editorial and catalogue pages: the same grid, but without borrowing the home-page hero treatment. */
.internal-page .header{position:relative}.editorial-hero{padding:56px 0 96px;background:#fff}.editorial-hero__grid{display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:end}.editorial-hero h1,.catalog-hero h1{font-size:clamp(56px,6vw,96px);line-height:.91;letter-spacing:-.05em;margin:0}.editorial-hero p:not(.breadcrumbs),.catalog-hero>div>p:not(.breadcrumbs){max-width:48ch;font-size:20px;color:var(--muted);margin:30px 0 0}.editorial-hero img{height:520px;object-fit:cover}.editorial-copy .copy-columns{display:grid;grid-template-columns:1fr 1fr;gap:52px;font-size:20px;line-height:1.6}.editorial-copy .copy-columns p{margin:0}.company-split{margin-bottom:0}.principles{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.22)}.principles article{padding:34px 34px 34px 0;border-right:1px solid rgba(255,255,255,.22)}.principles article+article{padding-left:34px;border-right:0}.principles span{color:var(--orange);font-size:18px;font-weight:700}.principles h3{font-size:28px;line-height:1.1;margin:46px 0 14px}.principles p{max-width:36ch;color:#d7dadd;margin:0}.production-process article{padding:34px 30px;border-right:1px solid var(--line)}.production-process article:last-child{border-right:0}.production-photo-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:end}.production-photo-grid figure{margin:0}.production-photo-grid img{height:640px;object-fit:cover}.production-photo-grid figcaption{padding-top:13px;color:var(--muted);font-size:14px;line-height:1.45}.catalog-hero{padding:56px 0 56px;background:#fff}.catalog-hero .btn{margin-top:34px}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}.catalog-grid .product:first-child:last-child{max-width:calc(50% - 16px)}
@media(max-width:900px){.editorial-hero__grid,.production-photo-grid{grid-template-columns:1fr;gap:34px}.editorial-hero{padding:48px 0 64px}.editorial-hero img{height:360px}.editorial-copy .copy-columns,.principles,.catalog-grid{grid-template-columns:1fr}.principles article,.principles article+article{padding:28px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.22)}.production-process article{border-right:0;border-bottom:1px solid var(--line)}.production-photo-grid img{height:400px}.catalog-grid .product:first-child:last-child{max-width:none}}

/* Technology article: one continuous journey from frame to finished interior. */
.technology-page{--tech-warm:#e6b372;--tech-wool:#d5bc82;--tech-blue:#a8c7cf}
.technology-page .header{border-bottom:1px solid var(--line)}
.tech-hero{padding:64px 0 72px;background:#fff}
.tech-hero__grid{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.tech-hero__copy{position:relative;z-index:1}
.tech-hero h1{font-size:clamp(58px,6.1vw,94px);line-height:.9;letter-spacing:-.052em;margin:0;max-width:8ch}
.tech-lead{max-width:42ch;margin:36px 0 0;font-size:21px;line-height:1.55;color:var(--muted)}
.tech-hero__media{margin:0;background:var(--paper)}
.tech-hero__media img{height:610px;object-fit:cover;object-position:center}
.tech-hero__media figcaption,.tech-finish-grid figcaption{padding:14px 0 0;font-size:15px;line-height:1.45;color:var(--muted)}
.tech-index{position:sticky;top:0;z-index:12;background:rgba(244,246,248,.96);border-block:1px solid var(--line);backdrop-filter:blur(12px)}
.tech-index .wrap{display:grid;grid-template-columns:repeat(5,1fr)}
.tech-index a{min-height:72px;padding:0 20px;display:flex;align-items:center;gap:12px;border-right:1px solid var(--line);font-size:15px;font-weight:650}
.tech-index a:first-child{border-left:1px solid var(--line)}
.tech-index span,.tech-chapter__number{color:var(--orange);font-weight:750}
.tech-index a:hover,.tech-index a:focus-visible{background:#fff}
.tech-chapter{padding:112px 0;scroll-margin-top:72px;background:#fff}
.tech-chapter:nth-child(even){background:var(--paper)}
.tech-chapter__heading{display:grid;grid-template-columns:1fr 6fr 5fr;gap:32px;align-items:start;margin-bottom:56px}
.tech-chapter__heading h2,.tech-roof-copy h2{font-size:clamp(48px,5.1vw,76px);line-height:.94;letter-spacing:-.045em;margin:0;font-weight:700}
.tech-chapter__heading p,.tech-reading-copy>p,.tech-roof-copy>p{max-width:43ch;margin:0;font-size:19px;line-height:1.62;color:var(--muted)}
.tech-wide-figure{margin:0}
.tech-wide-figure img{height:min(68vw,760px);object-fit:cover}
.tech-wide-figure figcaption{display:grid;grid-template-columns:1fr 2fr;gap:32px;max-width:760px;margin-left:auto;padding:14px 0 0;font-size:16px;line-height:1.45;color:var(--muted)}
.tech-reading-grid{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:stretch}
.tech-reading-copy{padding:24px 0}
.tech-reading-copy h2{font-size:clamp(48px,5.1vw,76px);line-height:.94;letter-spacing:-.045em;margin:34px 0 38px;font-weight:700}
.tech-reading-copy>p+p,.tech-roof-copy>p+p{margin-top:22px}
.tech-insulation-diagram{position:relative;min-height:640px;display:grid;grid-template-columns:92px 1fr 92px;align-items:stretch;padding:54px;background:#d8c49a;overflow:hidden}
.tech-stud{background:linear-gradient(90deg,#b47b3c,#e4b873 32%,#c28a49 70%,#9e662e);box-shadow:inset -7px 0 rgba(85,48,16,.12),inset 7px 0 rgba(255,255,255,.22)}
.tech-wool{display:grid;place-items:center;background:repeating-linear-gradient(105deg,#d9c48b 0 8px,#c7ad70 8px 11px,#e5d39e 11px 17px);border-block:18px solid #c69a5c;color:#3e382e;text-align:center}
.tech-wool span{padding:18px 22px;background:rgba(255,255,255,.82);font-size:23px;font-weight:750;line-height:1.15}
.tech-insulation-diagram>p{position:absolute;left:54px;right:54px;bottom:22px;margin:0;padding-top:14px;border-top:1px solid rgba(30,35,40,.28);font-size:15px;color:#3e382e}
.tech-chapter--membranes{background:var(--ink)!important;color:#fff}
.tech-chapter__heading--light p{color:#d4dade}
.tech-wall-sequence{display:grid;grid-template-columns:1fr 1fr 2.25fr 1.2fr .8fr 1fr;min-height:390px;border:1px solid rgba(255,255,255,.24)}
.tech-layer{display:flex;flex-direction:column;justify-content:space-between;padding:26px 20px;border-right:1px solid rgba(255,255,255,.25);overflow:hidden}
.tech-layer:last-child{border-right:0}
.tech-layer strong{font-size:19px;line-height:1.12}
.tech-layer small,.tech-layer span{font-size:14px;line-height:1.35;color:rgba(255,255,255,.7)}
.tech-layer--inside{background:#5b493a}.tech-layer--vapor{background:#644c73}.tech-layer--warm{color:var(--ink);background:repeating-linear-gradient(105deg,#d9c48b 0 8px,#c7ad70 8px 11px,#e5d39e 11px 17px)}.tech-layer--warm small{color:#564a36}.tech-layer--wind{background:#5b7980}.tech-layer--gap{background:repeating-linear-gradient(90deg,#242b30 0 8px,#151a1e 8px 23px)}.tech-layer--outside{background:linear-gradient(90deg,#9f7043 0 24%,#bd8a55 24% 27%,#93663e 27% 51%,#bd8a55 51% 54%,#a77749 54% 78%,#bd8a55 78% 81%,#8e613b 81%)}
.tech-note{max-width:74ch;margin:24px 0 0 auto;font-size:15px;line-height:1.5;color:#aeb7bd}
.tech-roof-grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:center}
.tech-roof-visual{margin:0;overflow:hidden;background:#fff}
.tech-roof-visual img{height:720px;object-fit:cover;object-position:65% center}
.tech-roof-copy .tech-chapter__number{display:block;margin-bottom:34px}
.tech-roof-copy h2{margin-bottom:34px}
.tech-facts{margin:38px 0 0;border-top:1px solid var(--line)}
.tech-facts div{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}
.tech-facts dt{color:var(--muted)}
.tech-facts dd{margin:0;font-weight:650}
.tech-finish-grid{display:grid;grid-template-columns:8fr 4fr;gap:32px;align-items:stretch}
.tech-finish-grid__main{margin:0}
.tech-finish-grid__main img{height:660px;object-fit:cover}
.tech-finish-summary{padding:46px;background:var(--paper);display:flex;flex-direction:column;align-items:flex-start}
.tech-finish-summary h3{font-size:32px;line-height:1.08;margin:0 0 30px}
.tech-finish-summary ul{list-style:none;margin:0;padding:0;width:100%;border-top:1px solid var(--line)}
.tech-finish-summary li{padding:15px 0;border-bottom:1px solid var(--line);font-size:17px}
.tech-finish-summary li::before{content:"";display:inline-block;width:8px;height:8px;margin-right:12px;background:var(--orange)}
.tech-finish-summary p{margin:28px 0 34px;color:var(--muted)}
.tech-finish-summary .btn{margin-top:auto}
@media(max-width:980px){
  .tech-hero__grid,.tech-reading-grid,.tech-roof-grid{grid-template-columns:1fr;gap:44px}
  .tech-hero__media img{height:520px}
  .tech-chapter__heading{grid-template-columns:60px 1fr}
  .tech-chapter__heading p{grid-column:2}
  .tech-wall-sequence{grid-template-columns:repeat(3,1fr);min-height:520px}
  .tech-layer:nth-child(3){border-right:0}.tech-layer:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.25)}
  .tech-roof-visual img{height:560px}
  .tech-finish-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .tech-hero{padding:42px 0 56px}
  .tech-hero h1{font-size:53px}
  .tech-lead{font-size:18px}
  .tech-hero__media img{height:390px}
  .tech-index{overflow-x:auto}
  .tech-index .wrap{width:max-content;min-width:100%;grid-template-columns:repeat(5,170px)}
  .tech-index a{min-height:62px;padding:0 14px}
  .tech-chapter{padding:76px 0}
  .tech-chapter__heading{grid-template-columns:1fr;gap:18px;margin-bottom:38px}
  .tech-chapter__heading p{grid-column:auto}
  .tech-chapter__heading h2,.tech-reading-copy h2,.tech-roof-copy h2{font-size:45px}
  .tech-wide-figure img{height:360px}
  .tech-wide-figure figcaption{grid-template-columns:1fr;gap:5px}
  .tech-reading-grid{gap:36px}
  .tech-insulation-diagram{min-height:450px;grid-template-columns:54px 1fr 54px;padding:30px}
  .tech-insulation-diagram>p{left:30px;right:30px}
  .tech-wool span{font-size:19px}
  .tech-wall-sequence{grid-template-columns:1fr 1fr;min-height:640px}
  .tech-layer:nth-child(2n){border-right:0}.tech-layer:nth-child(3){border-right:1px solid rgba(255,255,255,.25)}.tech-layer:nth-child(4){border-bottom:1px solid rgba(255,255,255,.25)}
  .tech-roof-visual img{height:420px}
  .tech-finish-grid__main img{height:390px}
  .tech-finish-summary{padding:32px 26px}
}

/* Технологическая статья в визуальной системе МАКСМОДУЛЬ. */
.technology-master-page{--tm-graphite:#1e2328;--tm-paper:#f4f6f8;--tm-white:#fff;--tm-muted:#555e65;--tm-line:#d5dade}
.technology-master-page .header{border-bottom:1px solid var(--tm-line)}
.tm-section-mark{margin:0 0 26px;color:var(--tm-orange);font-size:16px;font-weight:700}
.tm-hero{padding:56px 0 78px;background:var(--tm-white)}
.tm-hero__stage{position:relative;min-height:760px;display:grid;grid-template-columns:5fr 7fr;align-items:center}
.tm-hero__copy{position:relative;z-index:2;padding:56px 0;max-width:680px}
.tm-hero__copy h1{margin:0;font-size:clamp(56px,6vw,96px);line-height:.91;letter-spacing:-.05em}
.tm-hero__copy>p:not(.breadcrumbs){max-width:42ch;margin:34px 0;font-size:20px;line-height:1.55;color:var(--tm-muted)}
.tm-hero__visual{position:absolute;top:64px;right:0;width:56%;height:600px;margin:0;background:var(--tm-paper);overflow:hidden}
.tm-hero__visual img{height:100%;object-fit:cover;object-position:62% center}
.tm-hero__visual figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 20px;background:rgba(20,24,28,.5);backdrop-filter:blur(8px);color:#fff;font-size:14px;font-weight:400;letter-spacing:.02em;line-height:1.45}
.tm-hero__claim{position:absolute;left:0;bottom:0;margin:0;padding-left:22px;border-left:4px solid var(--tm-orange);font-size:18px;font-weight:650;line-height:1.4}
.tm-intro{padding:118px 0;background:var(--tm-graphite);color:#fff}
.tm-intro__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:baseline}
.tm-intro h2{margin:0;font-size:clamp(56px,5.4vw,80px);line-height:.92;letter-spacing:-.048em}
.tm-intro p{max-width:43ch;margin:0 0 24px;font-size:20px;line-height:1.65;color:#d6dade}
.tm-editorial{padding:118px 0;background:#fff}
.tm-editorial__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:start}
.tm-editorial figure{position:relative;margin:0}.tm-editorial figure img{height:650px;object-fit:cover}.tm-editorial figcaption{position:absolute;left:0;bottom:0;max-width:340px;padding:10px 16px;background:rgba(20,24,28,.34);backdrop-filter:blur(3px);color:#fff;font-size:15px;font-weight:400;line-height:1.35}
.tm-editorial h2{margin:0 0 30px;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-editorial__grid>div>p:last-child{max-width:43ch;margin:0;font-size:18px;line-height:1.65;color:var(--tm-muted)}
.tm-wall{padding:118px 0;background:var(--tm-white)}
.tm-wall__layout{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:start}
.tm-wall__visual{height:calc(9 * 290px + 420px)}
.tm-wall__sticky{--layer-progress:0;position:sticky;top:92px;height:calc(100vh - 132px);min-height:620px;display:flex;align-items:center;background:var(--tm-paper);overflow:hidden}
.tm-wall__sticky img{width:112%;height:auto;max-width:none;transform:translateX(calc(var(--layer-progress) * -0.6%)) scale(calc(1 + var(--layer-progress) * .006));transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.tm-wall__counter{position:absolute;left:24px;top:22px;font-size:15px;font-weight:700;color:var(--tm-muted)}
.tm-wall__counter span{color:var(--tm-orange);font-size:22px}
.tm-wall__sticky>p{position:absolute;left:24px;right:24px;bottom:22px;margin:0;padding-top:15px;border-top:1px solid var(--tm-line);font-size:18px;font-weight:700}
.tm-wall__story header{min-height:520px;padding:18px 0 72px}
.tm-wall__story h2{margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-wall__story header>p:last-child{max-width:42ch;margin:34px 0 0;font-size:18px;line-height:1.6;color:var(--tm-muted)}
.tm-layer-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--tm-line)}
.tm-layer-list li{min-height:290px;padding:50px 0 42px 76px;border-bottom:1px solid var(--tm-line);transition:opacity .25s ease;position:relative}
.tm-layer-list li::before{content:attr(data-layer);position:absolute;left:0;top:52px;color:var(--tm-orange);font-weight:750}
.tm-layer-list li.is-active{opacity:1}
.tm-layer-list strong{display:block;margin-bottom:16px;font-size:32px;line-height:1.05}
.tm-layer-list span{display:block;max-width:35ch;font-size:18px;line-height:1.55;color:var(--tm-muted)}
.tm-physics{padding:118px 0;background:var(--tm-paper)}
.tm-physics__headline{display:grid;grid-template-columns:3fr 9fr;gap:32px;align-items:start;margin-bottom:72px}
.tm-physics__headline h2{max-width:1000px;margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-physics__photo{position:relative;margin:0 0 68px}.tm-physics__photo img{height:690px;object-fit:cover}.tm-physics__photo figcaption{position:absolute;left:0;bottom:0;max-width:340px;padding:10px 16px;background:rgba(20,24,28,.34);backdrop-filter:blur(3px);color:#fff;font-size:15px;font-weight:400;line-height:1.35}
.tm-physics__grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--tm-line)}
.tm-physics article{padding:44px 48px 0 0}
.tm-physics article+article{padding-left:48px;border-left:1px solid var(--tm-line)}
.tm-physics article>span{color:var(--tm-orange);font-weight:700}
.tm-physics h3{max-width:18ch;margin:62px 0 20px;font-size:36px;line-height:1.04}
.tm-physics article>p{max-width:44ch;font-size:18px;line-height:1.6;color:var(--tm-muted)}
.tm-physics blockquote{margin:42px 0 0;padding:22px 0 0;border-top:3px solid var(--tm-orange);font-size:24px;font-weight:700;line-height:1.3}
.tm-moisture-line{display:flex;align-items:center;gap:9px;margin-top:46px;padding-top:20px;border-top:1px solid var(--tm-line);overflow:hidden}
.tm-moisture-line b{font-size:12px;white-space:nowrap}.tm-moisture-line i{display:block;min-width:20px;height:1px;background:var(--tm-orange);position:relative}.tm-moisture-line i::after{content:"";position:absolute;right:0;top:-3px;border-left:5px solid var(--tm-orange);border-block:3px solid transparent}
.tm-junctions{padding:118px 0;background:#fff}
.tm-junctions__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:center}
.tm-junctions figure{position:relative;margin:0}.tm-junctions figure img{height:760px;object-fit:cover;object-position:62% center}.tm-junctions figcaption{position:absolute;left:0;bottom:0;max-width:340px;padding:10px 16px;background:rgba(20,24,28,.34);backdrop-filter:blur(3px);color:#fff;font-size:15px;font-weight:400;line-height:1.35}
.tm-junctions h2{margin:0 0 34px;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-junctions__copy>p:not(.tm-section-mark){font-size:18px;line-height:1.6;color:var(--tm-muted)}
.tm-junctions dl{margin:42px 0 0;border-top:1px solid var(--tm-line)}
.tm-junctions dl div{padding:18px 0;border-bottom:1px solid var(--tm-line)}
.tm-junctions dt{font-size:18px;font-weight:750}.tm-junctions dd{margin:5px 0 0;color:var(--tm-muted)}
.tm-details{padding:118px 0;background:var(--tm-graphite);color:#fff}
.tm-details__heading{display:grid;grid-template-columns:8fr 4fr;gap:64px;align-items:end;margin-bottom:68px}
.tm-details__heading h2{margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-details__heading p{margin:0;font-size:18px;line-height:1.6;color:#cbd1d5}
.tm-details__photo{display:grid;grid-template-columns:8fr 4fr;gap:32px;align-items:end;margin:0 0 68px}.tm-details__photo img{height:650px;object-fit:cover}.tm-details__photo figcaption{padding:0 0 20px;font-size:16px;line-height:1.55;color:#cbd1d5}.tm-details__photo figcaption strong{display:block;margin-bottom:10px;color:#fff;font-size:21px}
.tm-detail-rows{border-top:1px solid rgba(255,255,255,.22)}
.tm-detail-rows article{display:grid;grid-template-columns:1fr 3fr 5fr;gap:32px;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.22);align-items:baseline}
.tm-detail-rows span{color:var(--tm-orange);font-weight:700}.tm-detail-rows h3{margin:0;font-size:25px}.tm-detail-rows p{margin:0;color:#cbd1d5}
.tm-certificate-note{max-width:74ch;margin:28px 0 0 auto;color:#98a2a9;font-size:14px}
.tm-factory{padding:118px 0;background:#fff}
.tm-factory__heading{display:grid;grid-template-columns:2fr 7fr 3fr;gap:32px;align-items:start;margin-bottom:56px}
.tm-factory__heading h2{margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-factory__heading>p:last-child{margin:0;font-size:18px;line-height:1.6;color:var(--tm-muted)}
.tm-factory__photo{margin:0}.tm-factory__photo img{height:720px;object-fit:cover}
.tm-quality{display:grid;grid-template-columns:repeat(5,1fr);border-block:1px solid var(--tm-line)}
.tm-quality article{min-height:158px;padding:26px 22px;border-right:1px solid var(--tm-line)}.tm-quality article:last-child{border-right:0}
.tm-quality strong{display:block;margin-bottom:44px;font-size:20px}.tm-quality span{display:block;color:inherit;font-size:15px;line-height:1.4}
.tm-site-work{padding:118px 0;background:var(--tm-paper)}
.tm-site-work__grid{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.tm-site-work h2{margin:0 0 32px;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-site-work__grid>div>p:last-child{font-size:19px;line-height:1.65;color:var(--tm-muted)}
.tm-site-work ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--tm-line)}
.tm-site-work li{display:grid;grid-template-columns:64px 1fr;padding:20px 0;border-bottom:1px solid var(--tm-line);font-size:20px;font-weight:650}.tm-site-work li span{color:var(--tm-orange);font-size:15px}
.tm-myths{padding:118px 0;background:#fff}
.tm-myths__grid{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.tm-myths__title{position:sticky;top:110px}.tm-myths h2{margin:0;font-size:clamp(48px,4.6vw,68px);line-height:.94;letter-spacing:-.04em}
.tm-faq{border-top:1px solid var(--tm-line)}
.tm-faq details{border-bottom:1px solid var(--tm-line)}.tm-faq summary{cursor:pointer;list-style:none;padding:26px 52px 26px 0;font-size:23px;font-weight:750;position:relative}.tm-faq summary::-webkit-details-marker{display:none}.tm-faq summary::after{content:"+";position:absolute;right:4px;top:20px;font-size:32px;font-weight:400}.tm-faq details[open] summary::after{content:"−"}.tm-faq p{max-width:60ch;margin:0;padding:0 52px 28px 0;color:var(--tm-muted);font-size:17px;line-height:1.6}
.tm-system{padding:118px 0;background:var(--tm-paper)}
.tm-system__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:start}.tm-system h2{margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em}
.tm-system__list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--tm-line)}.tm-system__list span{padding:17px 0;border-bottom:1px solid var(--tm-line);font-size:18px;font-weight:650}.tm-system__list span:nth-child(odd){border-right:1px solid var(--tm-line)}.tm-system__list span:nth-child(even){padding-left:24px}
.tm-materials-note{display:grid;grid-template-columns:3fr 9fr;gap:32px;margin-top:72px;padding-top:24px;border-top:3px solid var(--tm-orange)}.tm-materials-note p{max-width:72ch;margin:0;color:var(--tm-muted)}
.tm-final{padding:128px 0;background:var(--tm-graphite);color:#fff}.tm-final__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:start}.tm-final h2{margin:0;font-size:clamp(54px,5.3vw,80px);line-height:.92;letter-spacing:-.045em}.tm-final p{margin:0;font-size:18px;line-height:1.65;color:#cbd1d5}.tm-final blockquote{margin:42px 0;padding-top:24px;border-top:3px solid var(--tm-orange);font-size:28px;line-height:1.25;font-weight:750}.tm-final .btn{margin-top:30px}
@media(max-width:1000px){
  .tm-hero__stage{display:block;min-height:0}.tm-hero__copy{max-width:760px;padding-bottom:42px}.tm-hero__visual{position:relative;top:0;width:100%;height:560px}.tm-hero__claim{position:relative;margin-top:30px}
  .tm-intro__grid,.tm-editorial__grid,.tm-wall__layout,.tm-junctions__grid,.tm-site-work__grid,.tm-myths__grid,.tm-system__grid,.tm-final__grid{grid-template-columns:1fr;gap:48px}
  .tm-wall__visual{height:700px}.tm-wall__sticky{height:650px;min-height:0}.tm-wall__story header{min-height:0}
  .tm-physics__headline,.tm-details__heading,.tm-factory__heading{grid-template-columns:1fr;gap:26px}
  .tm-junctions figure img{height:600px}.tm-myths__title{position:static}.tm-quality{grid-template-columns:repeat(3,1fr)}.tm-quality article:nth-child(3){border-right:0}.tm-quality article:nth-child(-n+3){border-bottom:1px solid var(--tm-line)}
}
@media(max-width:700px){
  .tm-hero{padding:24px 0 58px}.tm-hero__copy{padding:20px 0 34px}.tm-hero__copy h1{font-size:48px}.tm-hero__copy>p:not(.breadcrumbs){font-size:18px}.tm-hero__visual{height:370px}.tm-hero__visual figcaption{left:0;right:0;bottom:0;padding:12px 16px}.tm-hero__claim{font-size:16px}
  .tm-intro,.tm-editorial,.tm-wall,.tm-physics,.tm-junctions,.tm-details,.tm-factory,.tm-site-work,.tm-myths,.tm-system,.tm-final{padding:76px 0}
  .tm-intro h2,.tm-editorial h2,.tm-wall__story h2,.tm-physics__headline h2,.tm-junctions h2,.tm-details__heading h2,.tm-factory__heading h2,.tm-site-work h2,.tm-myths h2,.tm-system h2,.tm-final h2{font-size:43px}
  .tm-editorial figure img,.tm-physics__photo img{height:390px}.tm-details__photo{grid-template-columns:1fr;gap:18px}.tm-details__photo img{height:390px}.tm-details__photo figcaption{padding:0}
  .tm-intro p{font-size:18px}.tm-wall__visual{height:430px}.tm-wall__sticky{top:72px;height:400px}.tm-wall__sticky img{width:128%;margin-left:-10%}.tm-wall__story header{padding-top:48px}.tm-layer-list li{min-height:220px;padding:38px 0 34px 54px}.tm-layer-list li::before{top:40px}.tm-layer-list strong{font-size:27px}
  .tm-physics__grid{grid-template-columns:1fr}.tm-physics article,.tm-physics article+article{padding:36px 0;border-left:0;border-bottom:1px solid var(--tm-line)}.tm-physics h3{margin-top:36px;font-size:31px}.tm-moisture-line{overflow-x:auto;padding-bottom:10px}
  .tm-junctions figure img{height:390px}.tm-detail-rows article{grid-template-columns:45px 1fr;gap:16px}.tm-detail-rows p{grid-column:2}.tm-factory__photo img{height:390px}.tm-quality{grid-template-columns:1fr}.tm-quality article,.tm-quality article:nth-child(3){min-height:0;border-right:0;border-bottom:1px solid var(--tm-line)}.tm-quality strong{margin-bottom:10px}.tm-site-work li{font-size:17px}.tm-system__list{grid-template-columns:1fr}.tm-system__list span:nth-child(odd){border-right:0}.tm-system__list span:nth-child(even){padding-left:0}.tm-materials-note{grid-template-columns:1fr;gap:16px;margin-top:52px}.tm-final blockquote{font-size:23px}
}
@media(prefers-reduced-motion:reduce){.tm-wall__sticky img{transition:none}}

/* Garage 01 — fifth product, treated as a real architectural volume, not a category placeholder. */
.product--garage{grid-column:1/-1}
.product--garage>img{height:620px}
.product--garage .product-meta{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.product--garage .product-meta>p{margin:0 0 0 auto;max-width:560px;font-size:18px}
.garage-concept-note{margin:14px 0 0;color:var(--muted);font-size:14px}
.garage-architecture{background:var(--paper)}
.garage-architecture__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:start}
.garage-architecture h2{font-size:clamp(48px,5vw,72px)}
.garage-architecture__grid>div:last-child{padding-top:50px}
.garage-architecture__grid>div:last-child p{max-width:44ch;margin:0 0 24px;font-size:19px;line-height:1.65;color:var(--muted)}
.garage-tech-visual img{height:740px;object-fit:cover}
.garage-cta{color:var(--ink)}
.garage-cta p{color:var(--muted)}
/* .garage-cta .btn — justify-self задан один раз ниже (start), дубль удалён при ревизии каскада. */
@media(max-width:900px){.product--garage .product-meta,.garage-architecture__grid{grid-template-columns:1fr}.product--garage .product-meta>p{margin:0}.product--garage>img,.garage-tech-visual img{height:430px}.garage-architecture__grid>div:last-child{padding-top:0}.garage-cta .btn{justify-self:start}}
@media(max-width:560px){.product--garage>img,.garage-tech-visual img{height:300px}}

/* Проекты — не каталог карточек, а спокойный документальный журнал объектов. */
.projects-page{background:#fff}
.projects-hero{padding:54px 0 0}
.projects-hero__heading{display:grid;grid-template-columns:8fr 4fr;gap:64px;align-items:end;margin-bottom:58px}
.projects-hero__heading h1{max-width:none;font-size:clamp(60px,6.4vw,96px);line-height:.89;letter-spacing:-.052em;text-wrap:balance}
.projects-hero__heading>p{max-width:34ch;margin:0 0 6px;font-size:20px;line-height:1.6;color:var(--muted)}
.projects-hero__media{margin:0}
.projects-hero__media img{height:min(58vw,760px);object-fit:cover}
.projects-hero__media figcaption{display:grid;grid-template-columns:2fr 3fr 4fr;gap:30px;padding:18px 0;border-bottom:1px solid var(--line);font-size:15px}
.projects-hero__media figcaption strong{font-size:18px}
.projects-hero__media figcaption span:last-child{color:var(--muted)}
.projects-note{padding:112px 0;background:var(--ink);color:#fff}
.projects-note__grid{display:grid;grid-template-columns:1fr 7fr 4fr;gap:32px;align-items:start}
.projects-note__number{margin:0;color:var(--orange);font-size:18px;font-weight:750}
.projects-note h2{margin:0;font-size:clamp(48px,5vw,72px);line-height:.93;letter-spacing:-.045em;text-wrap:balance}
.projects-note__grid>p:last-child{max-width:36ch;margin:8px 0 0;font-size:19px;line-height:1.62;color:#cbd1d5}
.project-journal{padding:126px 0 132px;background:#fff}
.project-story{margin:0}
.project-story figure{margin:0;overflow:hidden;background:var(--paper)}
.project-story figure img{height:540px;object-fit:cover}
.project-story__caption{display:grid;grid-template-columns:1fr 5fr;gap:26px;padding:20px 0 0;border-top:1px solid var(--ink);margin-top:18px}
.project-story__caption>span{color:var(--orange);font-size:14px;font-weight:750}
.project-story__type{margin:0 0 10px;font-size:14px;font-weight:750;letter-spacing:.04em}
.project-story h2{margin:0;font-size:clamp(34px,3vw,48px);line-height:1;letter-spacing:-.035em;text-wrap:balance}
.project-story__caption div>p:last-child{max-width:42ch;margin:14px 0 0;font-size:17px;line-height:1.55;color:var(--muted)}
.project-story--wide{width:83.333%;margin-bottom:132px}
.project-story--wide figure img{height:680px}
.project-story--right{margin-left:auto;margin-top:132px}
.project-pair{display:grid;grid-template-columns:7fr 5fr;gap:112px 32px;align-items:start;margin:0 0 132px}
.project-pair--reverse{grid-template-columns:5fr 7fr}
.project-pair--final{margin-top:132px;margin-bottom:0}
.project-story--lower{margin-top:150px}
.project-story--cinema{position:relative;width:100%;margin:0 0 132px;color:#fff}
.project-story--cinema figure img{height:760px}
.project-story__caption--overlay{position:absolute;left:0;right:0;bottom:0;margin:0;padding:92px 34px 30px;border:0;background:linear-gradient(0deg,rgba(20,23,25,.88),transparent);grid-template-columns:1fr 5fr}
.project-story__caption--overlay div>p:last-child{color:#e1e4e6}
.projects-final{padding:124px 0;background:var(--paper)}
.projects-final__grid{display:grid;grid-template-columns:8fr 4fr;gap:64px;align-items:end}
.projects-final h2{margin:0;font-size:clamp(58px,6vw,90px);line-height:.9;letter-spacing:-.05em;text-wrap:balance}
.projects-final p{max-width:34ch;margin:0 0 30px;font-size:19px;line-height:1.6;color:var(--muted)}

/* Типографическая страховка: заголовки не сталкиваются и не вываливаются из сетки. */
.display,.section h2,.product-intro h1,.editorial-hero h1,.catalog-hero h1,.technology-master-page h1,.technology-master-page h2,.projects-page h1,.projects-page h2{overflow-wrap:anywhere;word-break:normal}

@media(max-width:980px){
  .projects-hero__heading,.projects-note__grid,.projects-final__grid{grid-template-columns:1fr;gap:30px}
  .projects-hero__heading>p,.projects-note__grid>p:last-child{max-width:48ch}
  .projects-hero__media img{height:620px}
  .projects-note__number{margin-bottom:8px}
  .project-story--wide{width:100%}
  .project-pair,.project-pair--reverse{gap:72px 24px}
  .project-story--lower{margin-top:90px}
}
@media(max-width:700px){
  .projects-hero{padding-top:28px}
  .projects-hero__heading{margin-bottom:36px}
  .projects-hero__heading h1{font-size:50px;line-height:.91}
  .projects-hero__heading>p{font-size:18px}
  .projects-hero__media img{height:400px}
  .projects-hero__media figcaption{grid-template-columns:1fr;gap:4px}
  .projects-note,.projects-final{padding:76px 0}
  .projects-note h2,.projects-final h2{font-size:44px}
  .project-journal{padding:78px 0 82px}
  .project-story--wide,.project-pair,.project-story--cinema,.project-story--right,.project-pair--final{margin:0 0 82px}
  .project-pair,.project-pair--reverse{grid-template-columns:1fr;gap:82px}
  .project-story--lower{margin-top:0}
  .project-story figure img,.project-story--wide figure img,.project-story--cinema figure img{height:360px}
  .project-story__caption{grid-template-columns:55px 1fr;gap:14px}
  .project-story h2{font-size:36px}
  .project-story__caption--overlay{padding:74px 20px 20px}
  .project-story__caption--overlay div>p:last-child{font-size:15px}
}
@media(max-width:430px){
  .tm-hero__copy h1{font-size:clamp(40px,11vw,47px)}
  .tm-intro h2,.tm-editorial h2,.tm-wall__story h2,.tm-physics__headline h2,.tm-junctions h2,.tm-details__heading h2,.tm-factory__heading h2,.tm-site-work h2,.tm-myths h2,.tm-system h2,.tm-final h2{font-size:clamp(36px,10.5vw,43px)}
  .project-story figure img,.project-story--wide figure img,.project-story--cinema figure img{height:300px}
  .project-story__caption--overlay{position:relative;background:var(--ink)}
}

/* Основная навигация — графитовая полоса; лёгкая версия появляется только после прокрутки. */
.header.header--light{color:var(--ink)}
.header.header--light .btn-outline{color:var(--ink);border-color:var(--ink)}
.product-page.product-scrolled .header,.home-page .header.home-header-float,.internal-page .header.internal-header-float{color:var(--ink)}

/* Цена на витрине — ориентир, не декоративная цифра: состав и исключения идут рядом. */
.pricing-principles__grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.pricing-principles__grid article{min-height:210px;padding:30px 30px 28px 0;border-right:1px solid var(--line)}.pricing-principles__grid article+article{padding-left:30px}.pricing-principles__grid article:last-child{border-right:0}.pricing-principles__grid h3{margin:0 0 40px;font-size:23px;line-height:1.05}.pricing-principles__grid p{max-width:31ch;margin:0;color:var(--muted);font-size:17px;line-height:1.55}

.price-icon{width:48px;height:48px;margin:0 0 26px;padding:12px;border:1px solid var(--line);color:var(--orange)}

.reviews-grid .review-place{display:block;margin:0 0 40px;color:var(--orange);font-size:14px;font-weight:500;letter-spacing:.04em}

.reviews-grid p{color:var(--ink)}

.reviews-grid+.text-action{margin-top:34px}

/* Штаб — самостоятельный продукт: рабочая среда, а не украшенная версия гаража. */
.office-scenarios,.office-composition{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.office-scenarios article,.office-composition article{min-height:270px;padding:28px 28px 28px 0;border-right:1px solid var(--line)}.office-scenarios article+article,.office-composition article+article{padding-left:28px}.office-scenarios article:last-child,.office-composition article:last-child{border-right:0}.office-scenarios span{color:var(--orange);font-weight:750}.office-scenarios h3{margin:62px 0 12px;font-size:25px;line-height:1.04}.office-scenarios p,.office-composition p{max-width:30ch;margin:0;color:var(--muted);line-height:1.55}.office-composition h3{margin:0 0 40px;font-size:24px;line-height:1.05}.office-interior{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:end}.office-interior h2{margin:10px 0 24px;font-size:clamp(48px,5vw,72px);line-height:.92;letter-spacing:-.045em}.office-interior>div>p:last-child{max-width:34ch;margin:0;color:#d5dade;font-size:19px;line-height:1.58}.office-interior figure{margin:0}.office-interior img{height:560px;object-fit:cover}.office-interior figcaption{padding-top:14px;color:#d5dade;font-size:14px}.garage-layout-copy--full{max-width:100%}.garage-layout-copy--full h3{max-width:26ch}.garage-layout-copy--full .garage-layout-list{display:grid;grid-template-columns:1fr 1fr}.garage-layout-copy--full .garage-layout-list div:nth-child(odd){margin-right:36px}.garage-layout-copy--full .garage-layout-list div:nth-child(even){margin-left:36px}
@media(max-width:900px){.pricing-principles__grid,.office-scenarios,.office-composition{grid-template-columns:1fr}.pricing-principles__grid article,.office-scenarios article,.office-composition article{min-height:0;padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.pricing-principles__grid article+article,.office-scenarios article+article,.office-composition article+article{padding-left:0}.pricing-principles__grid h3,.office-composition h3{margin-bottom:14px}.office-scenarios h3{margin:30px 0 12px}.office-interior{grid-template-columns:1fr;gap:36px}.office-interior img{height:420px}.garage-layout-copy--full .garage-layout-list{grid-template-columns:1fr}.garage-layout-copy--full .garage-layout-list div:nth-child(odd),.garage-layout-copy--full .garage-layout-list div:nth-child(even){margin:0}}

/* Гараж 01 — та же глубина подачи, что у дома: сначала сценарий, затем схема и состав. */
.garage-hero .product-intro h2{max-width:18ch}.garage-facts{margin-top:48px}.garage-plan-grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:center}.garage-plan{margin:0}.garage-plan svg{display:block;width:100%;background:var(--paper)}.garage-plan text{font:600 15px 'Golos Text',Arial,sans-serif;letter-spacing:.025em}.garage-plan .plan-dim{font-size:20px;font-weight:750;fill:var(--ink)}.garage-plan figcaption{padding-top:14px;color:var(--muted);font-size:14px}.garage-layout-copy h3{margin:10px 0 28px;font-size:clamp(30px,3vw,45px);line-height:.98;letter-spacing:-.035em}.garage-layout-list{margin:0;border-top:1px solid var(--line)}.garage-layout-list div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.garage-layout-list dt{font-weight:750}.garage-layout-list dd{margin:0;color:var(--muted);line-height:1.5}.garage-specification{padding-bottom:112px}.garage-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.3)}.garage-spec-grid article{min-height:240px;padding:28px;border-right:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3)}.garage-spec-grid article:nth-child(3n){border-right:0}.garage-spec-grid span{color:var(--orange);font-weight:750}.garage-spec-grid h3{margin:58px 0 12px;font-size:20px}.garage-spec-grid p{margin:0;color:#d5dade;line-height:1.55}.garage-variant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.garage-variant-grid article{background:#fff}.garage-variant-grid img{display:block;width:100%;height:280px;object-fit:cover}.garage-variant-grid article>div{padding:22px}.garage-variant-grid span{color:var(--orange);font-size:13px;font-weight:750;letter-spacing:.08em}.garage-variant-grid h3{margin:12px 0;font-size:26px;line-height:1.02}.garage-variant-grid p{margin:0;color:var(--muted);line-height:1.5}.garage-cta{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:end}.garage-cta .btn{justify-self:start}

/* Проекты — контактный лист с рабочих участков, не витрина рендеров. */
.projects-page--field{background:var(--paper)}.projects-field-hero{padding:56px 0 96px}.projects-field-hero__grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:end}.projects-field-hero h1{margin:0;font-size:clamp(56px,6vw,96px);line-height:.91;letter-spacing:-.05em}.projects-field-hero__grid>div>p{max-width:38ch;margin:0;font-size:20px;line-height:1.58;color:var(--muted)}.projects-field-hero figure{margin:0;padding:12px 12px 26px;background:#fff;box-shadow:0 18px 38px rgba(30,35,40,.16);transform:rotate(1.1deg)}.projects-field-hero img{display:block;width:100%;height:360px;object-fit:cover}.projects-field-hero figcaption{padding:14px 2px 0;font-size:14px;font-weight:650}.projects-sheet{padding:110px 0 132px;background:#e9edef}.projects-sheet__head{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:end;margin-bottom:58px}.projects-sheet__head h2{margin:0;font-size:clamp(54px,5.5vw,82px);line-height:.9;letter-spacing:-.055em}.projects-sheet__head p{max-width:38ch;margin:0;color:var(--muted);font-size:18px;line-height:1.58}.projects-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:58px 30px;align-items:start}.project-note{padding:10px 10px 16px;background:#fff;box-shadow:0 8px 20px rgba(30,35,40,.1)}.project-note figure{margin:0}.project-note img{display:block;width:100%;height:235px;object-fit:cover;filter:saturate(.9) contrast(.97)}.project-note>div{padding:14px 8px 0}.project-note__place{margin:0;color:var(--muted);font-size:12.5px;font-weight:650;letter-spacing:.025em}.project-note :is(h2,h3){margin:8px 0 10px;font-size:21px;line-height:1.05;letter-spacing:-.02em}.project-note blockquote{margin:0;padding-top:11px;border-top:1px solid var(--line);font-size:13.5px;line-height:1.45;color:var(--muted)}.projects-field-cta{padding:108px 0;background:var(--ink);color:#fff}.projects-field-cta .wrap{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:end}.projects-field-cta h2{margin:0;font-size:clamp(54px,5.5vw,84px);line-height:.88;letter-spacing:-.055em}.projects-field-cta p{max-width:34ch;margin:0 0 28px;color:#d5dade;font-size:19px;line-height:1.6}
@media(max-width:900px){.garage-plan-grid,.garage-cta,.projects-field-hero__grid,.projects-sheet__head,.projects-field-cta .wrap{grid-template-columns:1fr;gap:38px}.garage-spec-grid{grid-template-columns:1fr 1fr}.garage-spec-grid article:nth-child(3n){border-right:1px solid rgba(255,255,255,.3)}.garage-spec-grid article:nth-child(2n){border-right:0}.garage-variant-grid{grid-template-columns:1fr}.garage-variant-grid img{height:420px}.projects-contact{grid-template-columns:repeat(2,1fr)}.projects-field-hero figure{max-width:600px}.projects-field-cta h2{margin-bottom:18px}}
@media(max-width:600px){.garage-layout-list div{grid-template-columns:1fr;gap:6px}.garage-spec-grid{grid-template-columns:1fr}.garage-spec-grid article,.garage-spec-grid article:nth-child(3n){min-height:0;border-right:0}.garage-variant-grid img{height:280px}.projects-field-hero{padding:32px 0 72px}.projects-field-hero h1{font-size:52px}.projects-field-hero img{height:300px}.projects-sheet{padding:76px 0}.projects-sheet__head{margin-bottom:42px}.projects-contact{grid-template-columns:1fr;gap:38px}.project-note:nth-child(3n+2),.project-note:nth-child(3n){transform:none}.project-note img{height:260px}.projects-field-cta{padding:76px 0}}
 

/* --- Пересборка: сетка и ритм карточек --- */

/* отбивка между смысловыми секциями */
.section+.section{border-top:1px solid var(--line)}
.section.dark+.section,.section+.section.dark{border-top-color:rgba(0,0,0,.12)}

/* состав предложения — единая карточка, как блок цены */
.scope-card{background:#fff;border-left:4px solid var(--orange);padding:44px 48px}
.scope-card h2{font-size:clamp(32px,3.2vw,46px);line-height:.95;letter-spacing:-.04em;margin:0 0 18px;font-weight:700}
.scope-card .scope-lead{font-size:19px;color:var(--muted);max-width:64ch;margin:0 0 34px}
.scope-cols{display:grid;grid-template-columns:1fr 1fr;gap:56px;border-top:1px solid var(--line)}
.scope-col h3{font-size:22px;margin:26px 0 0}
.scope-list{list-style:none;margin:0;padding:0}
.scope-list li{padding:13px 0;border-bottom:1px solid var(--line);color:var(--muted);line-height:1.5}

/* спецификация: группы не прыгают по высоте */
.spec-grid{align-items:start}

/* маркетинговая полоса на главной — «визуальный сахар» между hero и каталогом */
.statement{background:#fff;border-bottom:1px solid var(--line);padding:88px 0 96px}
.statement-inner{display:grid;grid-template-columns:64px 1fr;gap:40px;align-items:start}
.statement-tick{width:56px;height:4px;background:var(--orange);margin-top:20px}
.statement-text{font-size:clamp(30px,3.2vw,52px);line-height:1.14;letter-spacing:-.03em;font-weight:500;margin:0;max-width:24ch}
.statement-note{margin:26px 0 0;color:var(--muted);font-size:17px;font-weight:400;max-width:56ch}

/* каталог: секция витрины плотнее к hero */
.catalog-section{padding-top:56px}

/* шахматная витрина /katalog-v2/: кадр 2/3 + маркетинговая колонка 1/3 */
.v2-list{display:grid;gap:40px}
.v2-card{display:grid;grid-template-columns:2fr 1fr;background:#fff;color:var(--ink);border-top:1px solid var(--line)}
.v2-card:nth-child(even){grid-template-columns:1fr 2fr}
.v2-card:nth-child(even) img{order:2}
.v2-card img{height:520px;object-fit:cover}
.v2-copy{display:flex;flex-direction:column;padding:44px 40px}
.v2-num{font-size:14px;font-weight:400;letter-spacing:.14em;color:var(--muted)}
.v2-copy h3{font-size:52px;line-height:1;margin:26px 0 0;font-weight:700;letter-spacing:-.03em}
.v2-spec{margin-top:14px;font-size:16px;font-weight:400;color:var(--muted)}
.v2-copy>p{margin:22px 0 0;font-size:17px;font-weight:400;color:var(--muted);line-height:1.55;max-width:34ch}
.v2-price{margin-top:auto;padding-top:30px;font-size:22px;font-weight:500}
.v2-price span{color:var(--muted);font-size:15px;font-weight:400}

/* .spec и .principles по умолчанию заточены под тёмный фон;
   на светлых секциях линейки и текст переводим в светлую тему */
.section:not(.dark) .spec dl{border-top-color:var(--line)}
.section:not(.dark) .spec div{border-bottom-color:var(--line)}
.section:not(.dark) .spec dt{color:var(--muted)}
.section:not(.dark) .principles{border-top-color:var(--line)}
.section:not(.dark) .principles article{border-right-color:var(--line)}
.section:not(.dark) .principles p{color:var(--muted)}

@media(max-width:900px){
  .scope-card{padding:28px 24px}
  .scope-cols{grid-template-columns:1fr;gap:24px}
  .statement{padding:64px 0}
  .statement-inner{grid-template-columns:1fr;gap:20px}
  .statement-tick{margin-top:0}
  .v2-card,.v2-card:nth-child(even){grid-template-columns:1fr}
  .v2-card:nth-child(even) img{order:0}
  .v2-card img{height:380px}
  .v2-copy h3{font-size:40px}
  .product-grid .product,.interior-frame{grid-column:auto}
}

/* цитата: тихая прослойка с маркетинговым смыслом */
.quote{padding:96px 0;background:var(--paper)}

.quote-text{font-size:clamp(32px,3.4vw,56px);line-height:1.12;letter-spacing:-.03em;font-weight:500;margin:0;max-width:22ch}

.quote-author{margin:28px 0 0;font-size:16px;font-weight:400;color:var(--muted)}

/* курсивные цитаты архитекторов в правых колонках заголовков секций */
.section-lead p{font-size:18px;margin:0;color:var(--muted);font-weight:400}

.section-lead .section-quote{margin-top:22px;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:19px;line-height:1.5;color:var(--ink)}

.section-lead .section-quote cite{display:block;margin-top:8px;font-family:"Golos Text","Golos",Arial,sans-serif;font-style:normal;font-size:14px;font-weight:400;letter-spacing:.04em;color:var(--muted)}

@media(max-width:900px){
  .quote{padding:64px 0}
}

/* Появление блоков при скролле: класс ставит только JS, без него контент виден всегда. */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.68,.26,1)}

.reveal.is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
}

/* «О компании»: бренды и иконки принципов */
.brands-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.brands-grid article{padding:30px 32px 36px 0;border-bottom:1px solid var(--line)}
.brands-grid article:nth-child(3n-1),.brands-grid article:nth-child(3n){padding-left:32px}
.brands-grid span{display:block;color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.brands-grid h3{font-size:30px;font-weight:700;letter-spacing:-.02em;margin:16px 0 10px}
.brands-grid p{font-size:16px;color:var(--muted);margin:0;max-width:30ch}
.brands-note{margin:22px 0 0;color:var(--muted);font-size:14px}
.icon-principles{display:grid;grid-template-columns:repeat(5,1fr);gap:34px 28px;border-top:1px solid rgba(255,255,255,.22);padding-top:38px}
.icon-principles svg{width:30px;height:30px;color:var(--orange)}
.icon-principles h3{font-size:21px;line-height:1.15;margin:20px 0 10px}
.icon-principles p{font-size:15px;line-height:1.55;color:#d7dadd;margin:0}
@media(max-width:1150px){.icon-principles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.brands-grid{grid-template-columns:1fr}.brands-grid article,.brands-grid article:nth-child(3n-1),.brands-grid article:nth-child(3n){padding:24px 0}.icon-principles{grid-template-columns:1fr 1fr;gap:30px 24px}}
@media(max-width:560px){.icon-principles{grid-template-columns:1fr}}

/* Попап заявки */
.order-modal{position:fixed;inset:0;z-index:40;display:grid;place-items:center}
.order-modal[hidden]{display:none}
.order-modal__backdrop{position:absolute;inset:0;background:rgba(15,18,20,.55);backdrop-filter:blur(4px);opacity:0;transition:opacity .22s ease}
.order-modal__card{position:relative;width:min(460px,calc(100vw - 40px));background:#fff;padding:40px 38px 34px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 30px 70px rgba(15,18,20,.28);opacity:0;transform:translateY(16px);transition:opacity .25s ease,transform .28s cubic-bezier(.22,.68,.26,1)}
.order-modal.is-open .order-modal__backdrop{opacity:1}
.order-modal.is-open .order-modal__card{opacity:1;transform:none}
.order-modal__close{position:absolute;top:10px;right:12px;border:0;background:transparent;font-size:26px;line-height:1;color:var(--muted);cursor:pointer}
.order-modal__close:hover{color:var(--ink)}
.order-modal__kicker{margin:0 0 6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.order-modal__title{margin:0 0 10px;font-size:30px;line-height:1.1;letter-spacing:-.02em}
.order-modal__type{margin:0 0 18px;font-size:15px;color:var(--ink);font-weight:600}
.order-modal__type:empty{display:none}
.order-modal__stub{margin:0;color:var(--muted);font-size:16px}

/* Маркетинговый блок «Продукция»: три доказательства */
.models-proof{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-bottom:56px}
.models-proof>div{padding:26px 28px 26px 0;border-right:1px solid var(--line)}
.models-proof>div+div{padding-left:28px}
.models-proof>div:last-child{border-right:0}
.models-proof b{display:block;font-size:32px;font-weight:700;letter-spacing:-.02em;color:var(--orange);margin-bottom:8px}
.models-proof span{font-size:15px;line-height:1.5;color:var(--muted)}
@media(max-width:900px){.models-proof{grid-template-columns:1fr;margin-bottom:44px}.models-proof>div,.models-proof>div+div{padding:18px 0;border-right:0;border-bottom:1px solid var(--line)}}

/* Карточки продуктов: hover — имя инвертируется в плашку фирменного цвета */
.product-title :is(h2,h3){display:inline-block;padding:0;margin:0 0 0 20px;transition:background .22s ease,color .22s ease,padding .22s ease,margin .22s ease}
.product:hover .product-title :is(h2,h3){background:var(--ink);color:#fff;padding:6px 14px;margin:-6px -14px -6px 6px}

.product{overflow:hidden}
.product img{transition:transform .6s cubic-bezier(.22,.68,.26,1)}
.product:hover img{transform:scale(1.05)}
.product:hover .product-spec{font-weight:800;color:var(--ink)}

/* Режим отбора кадров на /proekty/?pick */
body.pick-mode .project-note{cursor:pointer}
body.pick-mode .project-note.pick-on{outline:4px solid var(--orange);outline-offset:-4px}
.pick-panel{position:fixed;right:20px;bottom:20px;z-index:60;max-width:280px;padding:14px 16px;background:var(--ink);color:#fff;font-size:13px;line-height:1.5;box-shadow:0 12px 30px rgba(30,35,40,.3)}
.pick-panel b{display:block;font-size:15px;margin-bottom:8px}
.pick-panel button{margin-right:8px;margin-bottom:6px;padding:5px 10px;border:0;background:var(--orange);color:#fff;font-size:12px;cursor:pointer}
.pick-panel button.pick-clear{background:rgba(255,255,255,.18)}
.pick-panel .pick-names{max-height:200px;overflow:auto;opacity:.75}

/* Цитаты проектов: 3 строки, при наведении раскрываются */
.project-note blockquote{display:block;max-height:5.8em;overflow:hidden;transition:max-height .35s ease}
.project-note:hover blockquote{max-height:14em}
@media(max-width:1150px) and (min-width:901px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-grid .product,.product-grid .product:nth-child(4n+1),.product-grid .product:nth-child(4n+4){grid-column:auto}}
@media(max-width:1150px) and (min-width:901px){.hero-v2-card .hero-grid{grid-template-columns:1fr;gap:30px}.hero-v2-card .hero-aside{padding-left:0;border-left:0}}

/* JOH-246/247: content must reflow rather than being clipped. */
:root{--orange:#b9470b;--muted:#505960}
:where(main,footer) *{min-width:0}
:where(h1,h2,h3,p,dd,dt,a,span,strong){overflow-wrap:anywhere}
:where(main h1,main h2){max-width:100%}
:where(a,button):focus-visible{outline:3px solid #1362a5;outline-offset:5px}
.skip-link{position:absolute;left:16px;top:-100px;padding:12px 18px;background:#fff;color:#1e2328;z-index:100}
.skip-link:focus{top:12px}
.footer-heading{font-size:15px;line-height:1.3;margin:0 0 18px}
.media-caption,.media-disclosure,.contact-note{font-size:14px;line-height:1.6}
.media-caption{color:var(--muted);margin:12px 0}
.media-disclosure{color:#d5dade;max-width:70ch;margin-top:32px}
.legal-links{display:flex;gap:16px 32px;flex-wrap:wrap;margin:24px 0;color:#d5dade;font-size:14px}
.legal-links a{text-decoration:underline;text-underline-offset:4px}
.concept-badge{display:inline-block;font-size:13px;font-weight:600;line-height:1.5;padding:3px 8px;border:1px solid currentColor;margin:8px 0}
.contact-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:24px 0}
.order-modal__card{max-height:calc(100dvh - 32px);overflow-y:auto}
.order-modal__close{width:44px;height:44px}
.order-modal__kicker{color:#9d3e09}
.product-spec{color:#505960;white-space:normal}
.project-note h2{font-size:21px;line-height:1.15;margin:8px 0 10px}
.project-note>div>p:last-child{font-size:14px;color:var(--muted)}
.product-hero .media-caption{color:#505960}
.tm-quality strong,.tm-detail-rows article>span{color:inherit}
@media(max-width:1000px){
  .tm-physics__grid,.tm-system__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-moisture-line{flex-wrap:wrap;white-space:normal}
}
@media(max-width:700px){
  .catalog-hero h1{font-size:clamp(34px,10vw,56px);line-height:1.06}
  .spec-grid,.scope-cols,.tm-physics__grid,.tm-system__list{grid-template-columns:minmax(0,1fr)}
  .spec dl>div{grid-template-columns:minmax(0,1fr);gap:6px}
  .spec dd{margin:0}
  .editorial-hero__grid{grid-template-columns:minmax(0,1fr)}
  .hero-actions .btn{white-space:normal;text-align:center}
  .cta h2,.projects-field-cta h2{font-size:clamp(32px,9vw,50px);line-height:1.08}
  .order-modal__card{padding:48px 24px 28px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

.technology-master-page{--tm-orange:#b9470b}
.tm-final{--tm-orange:#f58c54}

.product-title>p{color:#505960}
.dark .garage-spec-grid span,.dark .office-scenarios span{color:#f58c54}
.tm-layer-list li{opacity:1}
.section:not(.dark) .cta p{color:var(--muted)}
.price h2{font-size:28px;line-height:1.2;margin:0 0 16px}

.company-page .editorial-hero h1{font-size:clamp(34px,5.3vw,76px)}

.feedback-section{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.feedback-form{min-width:0;color:var(--ink);text-align:left}
.feedback-form__fields{display:grid;gap:8px}
.feedback-form label{font-size:15px;line-height:1.4}
.feedback-form label span{font-weight:400}
.feedback-form input:not([type=checkbox]),.feedback-form textarea{width:100%;min-width:0;border:1px solid #73797c;background:#fff;color:var(--ink);border-radius:0;padding:11px 12px;font:inherit;font-size:16px;margin:0 0 10px}
.feedback-form textarea{resize:vertical;min-height:100px}
.feedback-form__consent{display:flex;gap:12px;align-items:flex-start;margin:12px 0 20px}
.feedback-form__consent input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--orange)}
.feedback-form a{text-decoration:underline;text-underline-offset:3px}
.feedback-form .btn{max-width:100%;white-space:normal}
.feedback-form button:disabled{opacity:.6;cursor:wait}
.feedback-form__status{font-size:15px;line-height:1.5;overflow-wrap:anywhere;margin:14px 0 0}
.feedback-form__status:empty{margin:0}
.feedback-form__status[data-state=error]{color:#9c2424}
.feedback-form__status[data-state=success]{color:#1d6036}
.feedback-form__trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:900px){.feedback-section{grid-template-columns:minmax(0,1fr);gap:28px}}
