/* teplo-dom.kz - дополнения к фирменному стилю (base.css) для многостраничного сайта */
.company-grid{-webkit-user-select:text!important;user-select:text!important}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* Выпадающее меню «Услуги» */
.nav-drop{position:relative}
.nav-drop-btn:after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 0 3px 7px}
.nav-drop-menu{position:absolute;top:100%;left:-18px;min-width:260px;padding:12px 0;background:var(--dark);border:1px solid rgba(255,255,255,.12);box-shadow:0 22px 50px rgba(0,0,0,.28);display:grid;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}
.nav-drop:before{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.nav-drop:hover .nav-drop-menu,.nav-drop:focus-within .nav-drop-menu{opacity:1;visibility:visible;transform:translateY(12px)}
.nav-drop-menu a{padding:10px 20px;font-size:14px;opacity:.9;white-space:nowrap}
.nav-drop-menu a:hover{background:rgba(255,255,255,.07);opacity:1}

/* Внутренний первый экран */
.page-hero{position:relative;color:#fff;background:#17110f;padding:150px 0 72px;overflow:hidden}
.page-hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(18,11,8,.92) 0%,rgba(18,11,8,.78) 48%,rgba(18,11,8,.45) 100%),var(--hero-img,none);background-size:cover;background-position:center}
.page-hero-in{position:relative}
.page-hero h1{font-size:clamp(38px,5vw,66px);max-width:1000px}
.page-lead{max-width:780px;color:#e8dfd8;font-size:19px;line-height:1.55}
.page-hero .hero-trust{margin:26px 0 30px}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:#cdbfb6;margin-bottom:26px}
.crumbs a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.3)}
.crumbs a:hover{color:#fff}
.crumbs i{font-style:normal;opacity:.5}
.btn-wa svg,.btn-wa-solid svg{width:18px;height:18px}
.btn-wa-solid{background:#1f9d55;color:#fff}
.btn-wa-solid:hover{background:#178246}

/* Карточки услуг */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.svc-card{display:flex;flex-direction:column;padding:30px 28px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:260px;transition:background .25s}
.svc-card:hover{background:#fff}
.svc-n{color:var(--brand);font-weight:800}
.svc-card h3{font-size:26px;margin:30px 0 12px}
.svc-card p{font-size:15px;color:var(--muted);margin:0 0 22px}
.svc-more{margin-top:auto;color:var(--brand);font-weight:800;font-size:14px}

.benefits-3{grid-template-columns:repeat(3,1fr)}
.section-soft{background:var(--bg2)}
.local-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.local-card{background:#fff;border:1px solid var(--line);padding:30px 28px}
.local-card h3{font-size:22px;margin-bottom:10px}
.local-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}

.prose p{font-size:17px;line-height:1.7;color:#4f4944}
.prose h2{font-size:clamp(28px,3vw,40px);margin:38px 0 16px}
.prose h2:first-child{margin-top:0}
.intro-img{aspect-ratio:1/1;object-fit:cover}

.factors{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.factors h2{font-size:clamp(32px,3.6vw,48px)}
.factor-list,.check-list{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
.factor-list li,.check-list li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line);position:relative;font-size:16px;line-height:1.5}
.factor-list li:before,.check-list li:before{content:"";position:absolute;left:4px;top:22px;width:12px;height:7px;border-left:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(-45deg)}

.projects-3{grid-template-columns:repeat(3,1fr);gap:36px 22px}
.projects-3 .project-media{height:330px}
.center-link{display:flex;justify-content:center;margin-top:44px}
.note{margin-top:32px;font-size:14px}
.note a{text-decoration:underline}

.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.reviews-all{grid-template-columns:repeat(3,1fr)}
.review b{display:block;margin-top:10px}
.review-src{font-size:12px;color:var(--muted)}
.review p{font-size:15px;line-height:1.6}

/* Страница проекта */
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gal-item{position:relative;display:block;overflow:hidden;background:#ddd;aspect-ratio:1/1;cursor:zoom-in}
.gal-item:first-child{grid-column:span 2;grid-row:span 2}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal-item:hover img{transform:scale(1.04)}
.gal-item span{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;font-size:12px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.7));opacity:0;transition:.25s}
.gal-item:hover span{opacity:1}
.project-layout{display:grid;grid-template-columns:1fr 340px;gap:60px;align-items:start}
.project-aside{position:sticky;top:110px;background:#fff;border:1px solid var(--line);padding:28px;display:grid;gap:12px}
.project-aside h3{font-size:20px;margin:0 0 4px}
.aside-links{display:grid;gap:8px;margin-bottom:10px}
.aside-links a{color:var(--brand);font-weight:700;font-size:15px}
.video-cta{margin-top:28px}

/* Лайтбокс */
.lb{position:fixed;inset:0;z-index:300;background:rgba(14,9,7,.95);display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb img{max-width:min(92vw,1300px);max-height:84vh;width:auto;object-fit:contain}
.lb button{position:absolute;border:0;background:rgba(255,255,255,.1);color:#fff;width:52px;height:52px;font-size:32px;cursor:pointer;display:grid;place-items:center}
.lb button:hover{background:var(--brand)}
.lb-close{top:18px;right:18px}.lb-prev{left:18px;top:50%;transform:translateY(-50%)}.lb-next{right:18px;top:50%;transform:translateY(-50%)}
.lb-cap{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#ddd;font-size:14px;text-align:center;width:90%}

/* Контакты */
.contacts-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:stretch}
.contacts-card{background:#fff;border:1px solid var(--line);padding:10px 30px}
.c-row{display:grid;gap:4px;padding:18px 0;border-bottom:1px solid var(--line)}
.c-row:last-child{border-bottom:0}
.c-row span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.c-row b{font-size:19px}
.c-row a b{color:var(--brand)}
.c-row small{color:var(--muted);font-size:14px}
.map-wrap{min-height:460px;border:1px solid var(--line);background:#e9e2db}
.map-wrap iframe{width:100%;height:100%;min-height:460px;border:0;display:block}

.faq-page{max-width:980px}
.faq-group{font-size:clamp(26px,3vw,36px);margin:46px 0 18px}
.faq-group:first-child{margin-top:0}
.faq-group a{color:var(--brand)}
.legal-text{max-width:880px}
.legal-text h2{font-size:24px;margin:30px 0 10px}
.form-alt{margin-top:18px;font-size:14px;color:var(--muted)}
.form-alt a{color:var(--brand);font-weight:800}

/* Плавающая кнопка WhatsApp */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:150;width:60px;height:60px;border-radius:50%;background:#1f9d55;color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .2s}
.wa-float:hover{transform:scale(1.07)}
.wa-float svg{width:32px;height:32px}

.cookie-note{position:fixed;left:20px;bottom:20px;z-index:160;max-width:440px;background:var(--dark);color:#e8dfd8;padding:18px 20px;display:flex;gap:16px;align-items:center;box-shadow:0 14px 40px rgba(0,0,0,.3)}
.cookie-note[hidden]{display:none}
.cookie-note p{margin:0;font-size:13px;line-height:1.5}
.cookie-note a{text-decoration:underline}
.cookie-note .btn{min-height:42px;flex:0 0 auto}

@media(max-width:1050px){
  .nav{display:none}
  .svc-grid,.benefits-3,.projects-3,.reviews-all{grid-template-columns:repeat(2,1fr)}
  .project-layout{grid-template-columns:1fr}
  .project-aside{position:static}
  .gal-grid{grid-template-columns:repeat(3,1fr)}
  .factors{grid-template-columns:1fr;gap:30px}
  .contacts-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .page-hero{padding:120px 0 52px}
  .page-lead{font-size:16px}
  .svc-grid,.benefits-3,.projects-3,.reviews-all,.reviews-grid,.local-grid{grid-template-columns:1fr}
  .gal-grid{grid-template-columns:repeat(2,1fr)}
  .svc-card{min-height:0}
  .svc-card h3{margin-top:18px}
  .projects-3 .project-media{height:260px}
  .contacts-card{padding:6px 20px}
  .wa-float{width:54px;height:54px;right:14px;bottom:14px}
  .cookie-note{left:12px;right:74px;bottom:12px;flex-direction:column;align-items:flex-start;max-width:none}
}

/* Главный экран (только главная): фото в фирменной тёплой гамме, затемнение фирменным тёмно-коричневым #2b1d18 */
.hero{background:#2b1d18}
.hero-bg{background-color:#2b1d18!important;background-image:linear-gradient(90deg,rgba(43,29,24,.72) 0%,rgba(43,29,24,.55) 35%,rgba(43,29,24,.2) 60%,rgba(43,29,24,.06) 80%),linear-gradient(rgba(43,29,24,.25),rgba(43,29,24,.25)),url("../img/site/kotelnaya-dva-napolnyh-kotla-buderus.webp")!important;background-size:auto,auto,cover!important;background-repeat:no-repeat!important;background-position:0 0,0 0,right center!important}
.hero-content h1,.hero-content p,.hero-trust{text-shadow:0 2px 16px rgba(20,12,9,.5)}
@media(max-width:720px){
  .hero-bg{background-image:linear-gradient(180deg,rgba(43,29,24,.66) 0%,rgba(43,29,24,.55) 50%,rgba(43,29,24,.8) 100%),url("../img/site/kotelnaya-dva-napolnyh-kotla-buderus.webp")!important;background-size:auto,cover!important;background-position:0 0,72% center!important}
}


/* Блок «О компании»: фото в нормальных пропорциях, ровные отзывы */
.reviews-grid{grid-template-columns:repeat(3,1fr)!important;align-items:stretch}
.review{display:flex;flex-direction:column}
.review p{flex:1}
@media(max-width:1050px){.reviews-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:720px){.reviews-grid{grid-template-columns:1fr!important}}
/* Фото у формы заявки: растягивается на высоту формы внутри своей колонки (правила base.css) */
#consult .form-media{max-width:100%}
/* Фото в блоке «О компании» - без вытягивания */
.company-grid img{height:auto!important;min-height:0!important;aspect-ratio:1/1;object-fit:cover!important}
/* Фото основателя: чуть теплее, в одном стиле с фото котельной выше */
.founder-photo img{filter:brightness(.88) saturate(.82) contrast(1.03) sepia(.16)!important}
/* Карта в фирменной гамме: тёплый монохром + своя карточка адреса */
.map-wrap{position:relative;overflow:hidden}
.map-wrap iframe{filter:grayscale(1) sepia(.35) contrast(.95) brightness(1.02)}
.map-card{position:absolute;left:18px;top:18px;background:var(--dark);color:#f3e6da;padding:16px 20px;display:grid;gap:4px;box-shadow:0 12px 30px rgba(0,0,0,.25);max-width:280px}
.map-card b{font-size:16px;color:#fff}
.map-card span{font-size:14px}
.map-card small{font-size:12px;color:#cbbdb4}
/* SEO-тексты страниц услуг */
.seo-text{max-width:900px}
.seo-text h2{margin-top:44px}
.seo-text .check-list{margin:6px 0 10px}
.seo-text .check-list li{font-size:16px;color:#4f4944}
/* SEO-текст на всю ширину контейнера */
.seo-text{max-width:none!important}
.seo-text p{max-width:none}
