.product-title,.section-title{font-family:'Space Grotesk',sans-serif}.section-title,body{color:var(--text-dark)}.btn,.hero{align-items:center}.btn-outline:hover,.btn-primary:hover{transform:translateY(-2px)}.hero-title,.logo,.price-value{line-height:1.2}#contact .contact-info a,.btn,.footer-contacts a,.gallery-link,.nav-links a{text-decoration:none}:root{--bg-light:#fefcf8;--card-bg:#ffffff;--accent:#b87c4f;--accent-dark:#8b5a34;--accent-glow:rgba(184, 124, 79, 0.15);--text-dark:#1e1b18;--text-muted:#6b625c;--border-light:#ede6df;--transition:all 0.3s cubic-bezier(0.2, 0.9, 0.4, 1.1)}*{margin:0;padding:0;box-sizing:border-box;border-radius:0!important}body{background-color:var(--bg-light);font-family:Inter,sans-serif;line-height:1.5;font-display:swap;overflow-x:hidden;width:100%}html{scroll-behavior:smooth}section{padding:60px 0}.container{margin:0 auto;padding:0 20px}.section-title{font-size:2.8rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem}.btn,.calc-tab{font-weight:600;cursor:pointer}#contact .contact-info a:hover,.logo-line:last-child,.product-title span,.section-title span{color:var(--accent)}.section-sub{font-size:1.1rem;color:var(--text-muted);max-width:700px;margin-bottom:2.5rem;border-left:4px solid var(--accent);padding-left:1.5rem}.btn,.hero-title i{color:var(--accent)}.btn{display:inline-flex;gap:10px;background:0 0;border:1.5px solid var(--accent);padding:10px 15px;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;transition:var(--transition)}.btn-outline:hover,.calc-tab.active{color:#fff;background:var(--accent)}.btn-primary{background:var(--accent);color:#fff;border:none;box-shadow:0 6px 14px rgba(184,124,79,.25)}.calc-tab,.hero-desc{color:var(--text-muted)}.btn-primary:hover{background:var(--accent-dark);box-shadow:0 10px 20px rgba(184,124,79,.3)}.btn-small{padding:6px 14px;font-size:.8rem}.hero{min-height:90vh;display:flex;background:linear-gradient(120deg,#fff6ef 0,#fef8f2 100%);margin-top:70px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:100%}.hero-title{font-size:3.5rem;margin-bottom:1.5rem}.hero-title i{font-style:normal;border-bottom:3px solid var(--accent)}.hero-desc{margin-bottom:2rem;font-size:1.1rem}.hero-image img{width:100%;height:auto}.calculator-section{background:#f5efe9;margin:30px 0}.calc-wrapper{background:#fff;box-shadow:0 20px 35px -10px rgba(0,0,0,.05)}.calc-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--border-light)}.calc-tab{font-size:1.3rem;background:0 0;border:none;padding:.5rem 1.5rem}.service-card,input,select,textarea{border:1px solid var(--border-light)}.gallery-link,.price-number,.service-icon,.slider-btn{color:var(--accent)}.calc-pane{display:none}.calc-pane.active-pane{display:block}.form-row{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem}#popupModal .form-group{margin-bottom:15px}.form-group{flex:1;min-width:180px}input,select,textarea{width:100%;padding:12px 16px;background:#fff}.calc-result{background:var(--bg-light);padding:1.5rem;margin-top:1.5rem}.price-number{font-size:2.5rem;font-weight:800}.calc-wrapper{padding:1rem}.calc-result{font-size:2rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}.service-card{background:#fff;padding:2rem 1.5rem}.slider-btn,.slider-dot{border:none;cursor:pointer}.service-icon{font-size:2.5rem;margin-bottom:1rem}.card-slider{position:relative;margin:1.2rem 0;overflow:hidden}#contact .contact-form .form-group,.review-header{margin-bottom:1rem}.slider-wrapper{display:flex;transition:transform .3s}.slider-wrapper img{width:100%;max-width:100%;aspect-ratio:4/3;object-fit:cover;cursor:pointer}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.8);width:32px;height:32px;display:flex;align-items:center;justify-content:center}.slider-btn.prev{left:8px}.slider-btn.next{right:8px}.slider-dots{display:flex;justify-content:center;gap:6px;margin-top:8px}.slider-dot{width:8px;height:8px;background:#ccc;padding:0}.slider-dot.active{background:var(--accent);width:20px}.gallery-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;margin-top:8px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.gallery-item{position:relative;overflow:hidden;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-caption{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.7);color:#fff;padding:12px;transform:translateY(100%);transition:.3s;text-align:left}.gallery-item:hover .gallery-caption{transform:translateY(0)}.gallery-caption p{margin:2px 0;font-size:.8rem}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.review-card{background:#fff;padding:2rem;border:1px solid var(--border-light)}.review-header{display:flex;align-items:center;gap:1rem}.review-avatar{width:50px;height:50px;background:var(--accent-glow);display:flex;align-items:center;justify-content:center;color:var(--accent);font-weight:700;font-size:1.2rem;border:2px solid var(--accent)}.certificate-card,.contact-flex{background:#fff;border:1px solid var(--border-light)}.review-stars{color:#ffb800}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem}.certificate-card{padding:1.5rem;cursor:pointer}.contact-flex{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2rem}.contact-form .form-group{margin-bottom:.8rem}footer{background:#1e1b18;color:#cbc3bc;padding:2rem 0}footer .container{text-align:left}.footer-contacts{display:flex;flex-direction:column;gap:.5rem}.modal,.modal-nav{align-items:center}.modal{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.9);justify-content:center}.modal-close,.modal-counter,.modal-nav{position:absolute;color:#fff}.modal-content{max-width:90%;max-height:85vh}.modal-close{top:20px;right:30px;font-size:42px;cursor:pointer}.modal-nav,.popup-close{font-size:2rem;cursor:pointer}.modal-nav{top:50%;transform:translateY(-50%);background:rgba(255,255,255,.2);border:none;width:50px;height:50px;display:flex;justify-content:center}.modal-prev{left:20px}.modal-next{right:20px}.modal-counter{bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.5);padding:6px 16px}.popup-modal,header{position:fixed;top:0;left:0}@media (max-width:1000px){.contact-flex,.hero-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}}.popup-modal{display:none;z-index:2500;width:100%;height:100%;background-color:rgba(0,0,0,.5);align-items:center;justify-content:center}.popup-content{background:#fff;padding:2.5rem;max-width:450px;width:90%;position:relative;box-shadow:0 25px 40px -10px rgba(0,0,0,.2);border:1px solid var(--border-light)}.popup-close{position:absolute;top:20px;right:25px;color:var(--text-muted)}.popup-content h3{font-family:'Space Grotesk';font-size:1.8rem;margin-bottom:1.5rem}@media (max-width:780px){.container{padding:0 16px;max-width:100%;overflow-x:hidden}.gallery,.services-grid{grid-template-columns:1fr}.gallery-item:nth-child(2){transform:none}.hero{margin-top:60px}.hero-grid{gap:1.5rem}.hero-title{font-size:2.2rem}}@media (max-width:480px){.hero-title,.section-title{font-size:2rem}.calc-tab{font-size:1rem}}.product-spotlight{padding:40px 0;background:var(--bg-light)}#contact .contact-flex,.product-card{background:var(--card-bg);display:grid;grid-template-columns:1fr 1fr;gap:2rem;border:1px solid var(--border-light)}.product-card{box-shadow:0 10px 25px rgba(0,0,0,.03);padding:2rem;align-items:center}.product-image img{width:100%;max-width:100%;height:auto;object-fit:cover;border:1px solid var(--border-light)}.product-title{font-size:2rem;font-weight:700;margin-bottom:1.2rem;color:var(--text-dark)}.cell-logo-text .logo,.logo-line,.price-value{font-weight:800;font-family:'Space Grotesk',sans-serif}.product-features{list-style:none;margin:1.5rem 0}.product-features li{display:flex;align-items:center;gap:10px;margin-bottom:.8rem;font-size:1rem;color:var(--text-dark)}.product-features li i{color:var(--accent);font-size:1.2rem;width:20px}.product-price{margin:1.8rem 0 2rem}.price-value{font-size:2.4rem;color:var(--accent);display:block}.price-note{font-size:.8rem;color:var(--text-muted)}.product-actions{display:flex;flex-wrap:wrap;gap:15px}.icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;font-size:inherit;overflow:hidden}.footer-max,.header-max{font-size:1.6rem;color:#5b4a9e;display:inline-flex;align-items:center;transition:color .2s}.cell-burger .burger,.header-phone,.header-telegram{transition:background .2s}.footer-max:hover,.header-max:hover{color:#3f2e7a}.logo{display:flex;flex-direction:column;align-items:flex-start}.logo-line{color:var(--text-dark)}#contact .contact-flex{padding:2.5rem;box-shadow:0 8px 20px rgba(0,0,0,.03);transition:box-shadow .3s}#contact .contact-flex:hover{box-shadow:0 12px 28px rgba(0,0,0,.06)}#contact .contact-form input,#contact .contact-form textarea{border:1px solid var(--border-light);background:var(--bg-light);padding:14px 18px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}#contact .contact-form input:focus,#contact .contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(184,124,79,.1);outline:0}#contact .contact-form button{width:100%;justify-content:center;padding:14px;font-size:1rem;letter-spacing:.5px;transition:.25s}#contact .contact-form button:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 8px 16px rgba(0,0,0,.1)}#contact .contact-info{display:flex;flex-direction:column;gap:1.2rem;justify-content:center}#contact .contact-info p{display:flex;align-items:flex-start;gap:12px;margin:0;font-size:.95rem;line-height:1.5;color:var(--text-dark)}#contact .contact-info svg{flex-shrink:0;margin-top:2px;color:var(--accent);font-size:1.2rem}#contact .contact-info a{color:var(--text-dark);font-weight:500;transition:color .2s}.footer-contacts{display:flex;flex-wrap:wrap;gap:20px;margin:1.2rem 0 1rem}.footer-contacts a{color:#ddcec4;display:inline-flex;align-items:center;gap:8px;transition:color .2s,transform .2s;font-size:.95rem;padding:6px 12px;border-radius:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.footer-contacts a:hover{color:var(--accent);transform:translateY(-1px);background:rgba(255,255,255,.08);border-color:var(--accent)}.footer-contacts svg{font-size:1.1rem;opacity:.8}header{width:100%;z-index:1000;background:#fff;border-bottom:1px solid var(--border-light)}.navbar{display:flex;flex-direction:column;padding:.6rem 15px}.header-grid{display:flex;align-items:flex-start;justify-content:space-between;width:100%;gap:10px}.cell-logo-img{display:flex;align-items:center;flex-shrink:0}.cell-logo-img .logo-image{width:50px;height:50px;object-fit:contain}.cell-logo-text{display:flex;align-items:center;margin-left:10px;flex-shrink:1}.cell-logo-text .logo{font-size:1.2rem;line-height:1.2;white-space:nowrap}.cell-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;flex-shrink:0}.cell-phone .header-phone{font-size:.9rem;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;text-decoration:none;color:var(--text-dark);font-weight:600}.cell-actions,.cell-burger{align-items:center;display:flex}.cell-actions{gap:8px;margin-top:10px}.cell-burger{justify-content:center;flex-shrink:0}.cell-burger .burger{display:flex;align-items:center;justify-content:center;width:100%;height:100%;cursor:pointer;color:var(--text-dark);margin:0}.cell-burger .burger svg{display:block;width:1em;height:1em}.nav-links{display:none;flex-direction:column;gap:.8rem;padding:1rem 0 0;list-style:none;margin:0}.nav-links.active{display:flex}.nav-links a{color:var(--text-dark);font-weight:500;font-size:1rem}@media (min-width:768px){.header-grid{height:60px;align-items:stretch}.cell-logo-img,.cell-logo-text{align-self:flex-start}.cell-logo-img .logo-image{width:60px;height:60px}.cell-burger,.cell-right{align-self:flex-end}.cell-burger{display:flex;align-items:flex-end;align-self:flex-end}.cell-actions,.cell-burger .burger,.cell-phone{margin:0;padding:0}.cell-actions .btn,.cell-actions .header-telegram{margin:0}}@media (max-width:780px){.product-card{grid-template-columns:1fr;gap:1.5rem}.product-title{font-size:1.8rem}.price-value{font-size:2rem}a,p,span,table,td,th{word-break:break-word;overflow-wrap:break-word;overflow-wrap:break-word}table{width:100%!important;max-width:100vw;border-collapse:collapse}td,th{white-space:normal}.container,.product-card,.product-details,section{max-width:100vw;overflow-x:hidden;word-wrap:break-word;overflow-wrap:break-word}#contact .contact-flex{grid-template-columns:1fr;padding:1.5rem;gap:1.5rem}.cell-logo-img .logo-image{width:48px;height:48px}.cell-logo-text .logo{font-size:1rem;white-space:normal}.cell-phone .header-phone{font-size:.8rem}.btn-small{padding:5px 10px;font-size:.7rem}.cell-burger .burger{font-size:1.6rem}.gallery-caption{transform:translateY(0);background:rgba(0,0,0,.6);font-size:.7rem;padding:8px}}.header-phone{font-weight:600}.header-phone:hover{background:rgba(184,124,79,.15)}.header-telegram{display:inline-flex;align-items:center;justify-content:center;background:0 0!important;padding:0!important;color:#26a5e4!important;font-size:1.6rem}.header-telegram:hover{background:rgba(38,165,228,.2)}.btn-small{box-shadow:0 4px 8px rgba(0,0,0,.1);transition:box-shadow .2s,transform .2s}.btn-small:hover{box-shadow:0 6px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.cell-burger .burger{font-size:2rem;line-height:1}.cell-burger .burger:hover{background:rgba(0,0,0,.08)}.cell-burger .burger,.header-phone{background:0 0!important;padding:0!important}.logo{font-weight:800;font-family:'Space Grotesk',sans-serif;color:#1e1b18}.logo span{color:#b87c4f}.cell-burger{width:28px;height:28px;display:flex;align-items:center;justify-content:center;margin-left:10px;flex-shrink:0}.service-card{transition:box-shadow .3s,transform .3s;box-shadow:0 4px 12px rgba(0,0,0,.04)}.service-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.08);transform:translateY(-4px)}.btn-outline,.btn-primary{transition:transform .2s,box-shadow .2s,background .2s}.btn-outline:active,.btn-primary:active{transform:scale(.96)}.review-card{position:relative;overflow:hidden}.review-card::before{content:"“";position:absolute;top:-20px;left:10px;font-size:6rem;color:rgba(184,124,79,.1);font-family:serif;line-height:1}.review-card .review-text{position:relative;z-index:1}.review-date{font-weight:700}.contact-info p{align-items:center}.contact-info svg{width:1.4em;height:1.4em;background:var(--accent-glow);padding:8px;box-sizing:content-box;color:var(--accent)}.fade-up{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}.fade-up.appear{opacity:1;transform:translateY(0)}.container,.navbar{padding-left:15px;padding-right:15px;max-width:1300px;margin-left:auto;margin-right:auto;width:100%}.footer-requisites{margin-top:1rem;font-size:.85rem;line-height:1.6}.footer-requisites p{margin:2px 0}/* ===============================
   ОКНА ТАВР — ПОЛНЫЙ ОБНОВЛЁННЫЙ CSS
   Версия 2.0 — с улучшенным дизайном
   =============================== */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #fefcf8;
  font-family: 'Inter', sans-serif;
  color: #1e1b18;
  line-height: 1.6;
  overflow-x: hidden;
}

:root {
  --bg-light: #fefcf8;
  --card-bg: #ffffff;
  --accent: #b87c4f;
  --accent-dark: #8b5a34;
  --accent-glow: rgba(184, 124, 79, 0.15);
  --text-dark: #1e1b18;
  --text-muted: #6b625c;
  --border-light: #ede6df;
  --transition: all 0.3s cubic-bezier(0.2, 0.9, 0.4, 1.1);
}

html {
  scroll-behavior: smooth;
}

::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #e9e2da; }
::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 0; }

.container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 20px;
}

section {
  padding: 70px 0;
}

.section-title {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin-bottom: 1rem;
  color: var(--text-dark);
}
.section-title span { color: var(--accent); }

.section-sub {
  font-size: 1.1rem;
  color: var(--text-muted);
  max-width: 700px;
  margin-bottom: 2.5rem;
  border-left: 4px solid var(--accent);
  padding-left: 1.5rem;
}

/* icons */
.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.125em;
  font-size: inherit;
  overflow: hidden;
}

/* Кнопки */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: transparent;
  border: 1.5px solid var(--accent);
  color: var(--accent);
  padding: 12px 28px;
  font-weight: 600;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: var(--transition);
  cursor: pointer;
  text-decoration: none;
  border-radius: 0;
}

.btn-primary {
  background: var(--accent);
  color: white;
  border: none;
  box-shadow: 0 6px 14px rgba(184, 124, 79, 0.25);
  animation: pulse 2s infinite;
}

.btn-primary:hover {
  background: var(--accent-dark);
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(184, 124, 79, 0.3);
  animation: none;
}

.btn-outline:hover {
  background: var(--accent);
  color: white;
  transform: translateY(-2px);
}

.btn-small {
  padding: 8px 16px;
  font-size: 0.8rem;
  animation: none;
}

/* Анимация для главной кнопки */
@keyframes pulse {
  0% { box-shadow: 0 0 0 0 rgba(184, 124, 79, 0.4); }
  70% { box-shadow: 0 0 0 15px rgba(184, 124, 79, 0); }
  100% { box-shadow: 0 0 0 0 rgba(184, 124, 79, 0); }
}

/* ===== ШАПКА ===== */
header {
  position: fixed;
  top: 0; left: 0; width: 100%; z-index: 1000;
  background: #ffffff;
  border-bottom: 1px solid var(--border-light);
  box-shadow: 0 2px 10px rgba(0,0,0,0.02);
}

.navbar {
  display: flex;
  flex-direction: column;
  padding: 0.6rem 15px;
  max-width: 100%;
}

.header-grid {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  gap: 10px;
}

.cell-logo-img { display: flex; align-items: center; flex-shrink: 0; }
.cell-logo-img .logo-image { width: 50px; height: 50px; object-fit: contain; }

.cell-logo-text {
  display: flex; align-items: center; margin-left: 10px; flex-shrink: 1;
}
.cell-logo-text .logo {
  font-size: 1.2rem; font-weight: 800; font-family: 'Space Grotesk', sans-serif;
  line-height: 1.2; white-space: nowrap;
}

.cell-right {
  display: flex; flex-direction: column; align-items: flex-end;
  gap: 4px; margin-left: auto; flex-shrink: 0;
}
.cell-phone .header-phone {
  font-size: 0.9rem; white-space: nowrap; display: inline-flex;
  align-items: center; gap: 5px; text-decoration: none;
  color: var(--text-dark); font-weight: 600;
}
.cell-actions { display: flex; align-items: center; gap: 8px; }

.cell-burger {
  display: flex; align-items: center; justify-content: center;
  margin-left: 10px; flex-shrink: 0; width: 44px; height: 44px;
}
.cell-burger .burger {
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: 100%; font-size: 1.8rem; line-height: 1;
  cursor: pointer; color: var(--text-dark); margin: 0; padding: 0;
}
.cell-burger .burger svg { display: block; width: 1em; height: 1em; }

.nav-links {
  display: none; flex-direction: column; gap: 0.8rem;
  padding: 1rem 0 0; list-style: none; margin: 0;
}
.nav-links.active { display: flex; }
.nav-links a { text-decoration: none; color: var(--text-dark); font-weight: 500; font-size: 1rem; }

/* Десктопная шапка */
@media (min-width: 768px) {
  .header-grid {
    height: 60px; align-items: stretch;
  }
  .cell-logo-img, .cell-logo-text { align-self: flex-start; }
  .cell-logo-img .logo-image { width: 60px; height: 60px; }
  .cell-right, .cell-burger { align-self: flex-end; }
  .cell-burger { display: flex; align-items: flex-end; }
}

/* Мобильная адаптация */
@media (max-width: 780px) {
  .cell-logo-img .logo-image { width: 48px; height: 48px; }
  .cell-logo-text .logo { font-size: 1rem; white-space: normal; }
  .cell-phone .header-phone { font-size: 0.8rem; }
  .btn-small { padding: 5px 10px; font-size: 0.7rem; }
  .cell-burger .burger { font-size: 1.6rem; }
}

/* ===== HERO ===== */
.hero {
  min-height: 90vh; display: flex; align-items: center;
  background: linear-gradient(120deg, #fff6ef 0%, #fef8f2 100%);
  margin-top: 70px;
}
.hero-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 3rem; align-items: center; max-width: 100%;
}
.hero-title { font-size: 3.5rem; line-height: 1.2; margin-bottom: 1.5rem; }
.hero-title i {
  color: var(--accent); font-style: normal;
  border-bottom: 3px solid var(--accent);
}
.hero-desc { color: var(--text-muted); margin-bottom: 2rem; font-size: 1.1rem; }
.hero-image img { width: 100%; height: auto; }

/* ===== КАЛЬКУЛЯТОР ===== */
.calculator-section {
  background: #f5efe9; margin: 30px 0;
}
.calc-wrapper {
  background: white; padding: 2.5rem;
  box-shadow: 0 20px 35px -10px rgba(0, 0, 0, 0.05);
  border-top: 4px solid var(--accent);
}
.calc-tabs { display: flex; gap: 1rem; margin-bottom: 2rem; border-bottom: 1px solid var(--border-light); }
.calc-tab {
  font-size: 1.3rem; font-weight: 600; background: none;
  border: none; padding: 0.5rem 1.5rem; cursor: pointer; color: var(--text-muted);
}
.calc-tab.active { background: var(--accent); color: white; }
.calc-pane { display: none; }
.calc-pane.active-pane { display: block; }
.form-row { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-bottom: 1.5rem; }
.form-group { flex: 1; min-width: 180px; }
input, select, textarea {
  width: 100%; padding: 14px 18px; border: 1px solid var(--border-light);
  background: white; transition: 0.2s;
}
input:focus, select:focus, textarea:focus {
  outline: none; border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(184, 124, 79, 0.1);
}
.calc-result { background: var(--bg-light); padding: 1.5rem; margin-top: 1.5rem; font-size: 1.8rem; }
.price-number { font-size: 2.5rem; color: var(--accent); font-weight: 800; }

/* ===== КАРТОЧКИ УСЛУГ ===== */
.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 2rem;
}
.service-card {
  background: white; padding: 2.5rem 2rem;
  border: 1px solid var(--border-light);
  transition: var(--transition);
}
.service-card:hover {
  box-shadow: 0 12px 24px -8px rgba(0,0,0,0.1);
  transform: translateY(-5px);
  border-color: var(--accent);
}
.service-icon {
  font-size: 2.5rem; color: var(--accent); margin-bottom: 1.5rem;
  background: rgba(184, 124, 79, 0.08); padding: 15px;
  display: inline-flex;
  transition: var(--transition);
}
.service-card:hover .service-icon {
  background: var(--accent); color: white;
}

.card-slider { position: relative; margin: 1.2rem 0; overflow: hidden; }
.slider-wrapper { display: flex; transition: transform 0.3s; }
.slider-wrapper img { width: 100%; aspect-ratio: 4/3; object-fit: cover; cursor: pointer; }
.slider-btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.8); border: none;
  width: 32px; height: 32px; display: flex; align-items: center;
  justify-content: center; cursor: pointer; color: var(--accent);
}
.slider-btn.prev { left: 8px; } .slider-btn.next { right: 8px; }
.slider-dots { display: flex; justify-content: center; gap: 6px; margin-top: 8px; }
.slider-dot {
  width: 8px; height: 8px; background: #ccc;
  border: none; padding: 0; cursor: pointer;
}
.slider-dot.active { background: var(--accent); width: 20px; }

.gallery-link {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--accent); font-weight: 600; text-decoration: none; margin-top: 8px;
}

/* ===== ГАЛЕРЕЯ ПРОЕКТОВ ===== */
.gallery {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem;
}
.gallery-item {
  position: relative; overflow: hidden; background: #ddd;
  transition: transform 0.3s ease;
}
.gallery-item:hover { transform: scale(1.02); }
.gallery-item img { width: 100%; height: 100%; object-fit: cover; }
.gallery-caption {
  position: absolute; bottom: 0; left: 0; right: 0;
  background: rgba(0, 0, 0, 0.7); color: white; padding: 12px;
  transform: translateY(100%); transition: 0.3s; text-align: left;
}
.gallery-item:hover .gallery-caption { transform: translateY(0); }
.gallery-caption p { margin: 2px 0; font-size: 0.8rem; }

/* ===== ОТЗЫВЫ ===== */
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
}
.review-card {
  background: white; padding: 2rem;
  border: 1px solid var(--border-light);
  transition: var(--transition);
}
.review-card:hover {
  box-shadow: 0 8px 20px rgba(0,0,0,0.05);
}
.review-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.review-avatar {
  width: 50px; height: 50px; background: var(--accent-glow);
  display: flex; align-items: center; justify-content: center;
  color: var(--accent); font-weight: 700; font-size: 1.2rem;
  border: 2px solid var(--accent);
}
.review-stars { color: #ffb800; }

/* ===== СЕРТИФИКАТЫ ===== */
.certificates-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.5rem;
}
.certificate-card {
  background: white; padding: 1.5rem;
  border: 1px solid var(--border-light); cursor: pointer;
  transition: var(--transition); text-align: center;
}
.certificate-card:hover {
  box-shadow: 0 8px 20px rgba(0,0,0,0.05);
  transform: translateY(-3px);
  border-color: var(--accent);
}

/* ===== КОНТАКТЫ ===== */
.contact-flex {
  display: grid; grid-template-columns: 1fr 1fr; gap: 2rem;
  background: white; padding: 2.5rem;
  border: 1px solid var(--border-light);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.03);
}
.contact-form .form-group { margin-bottom: 1rem; }

/* ===== ПОДВАЛ ===== */
footer {
  background: #1e1b18; color: #cbc3bc; padding: 2rem 0;
}
footer .container { text-align: left; }
.footer-contacts {
  display: flex; flex-wrap: wrap; gap: 20px; margin: 1.2rem 0 1rem;
}
.footer-contacts a {
  color: #ddcec4; text-decoration: none; display: inline-flex;
  align-items: center; gap: 8px; transition: color 0.2s ease, transform 0.2s ease;
  font-size: 0.95rem; padding: 6px 12px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.footer-contacts a:hover {
  color: var(--accent); transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.08); border-color: var(--accent);
}

/* ===== ПЛАВАЮЩИЙ СТИКЕР АКЦИИ (добавьте HTML) ===== */
.online-discount-badge {
  position: fixed; bottom: 20px; left: 20px;
  background: var(--accent); color: white;
  padding: 12px 24px; font-weight: bold; z-index: 999;
  box-shadow: 0 6px 14px rgba(0,0,0,0.2);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1rem;
  animation: pulse 2s infinite;
}

/* ===== МОДАЛЬНОЕ ОКНО ===== */
.modal {
  display: none; position: fixed; z-index: 2000; left: 0; top: 0;
  width: 100%; height: 100%; background: rgba(0, 0, 0, 0.95);
  align-items: center; justify-content: center;
}
.modal-content { max-width: 90%; max-height: 85vh; }
.modal-close { position: absolute; top: 20px; right: 30px; color: white; font-size: 42px; cursor: pointer; }
.modal-nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.2); border: none;
  width: 50px; height: 50px; display: flex; align-items: center;
  justify-content: center; color: white; font-size: 2rem; cursor: pointer;
}
.modal-prev { left: 20px; } .modal-next { right: 20px; }
.modal-counter {
  position: absolute; bottom: 20px; left: 50%;
  transform: translateX(-50%); color: white;
  background: rgba(0, 0, 0, 0.5); padding: 6px 16px;
}

/* Попап форма */
.popup-modal {
  display: none; position: fixed; z-index: 2500; left: 0; top: 0;
  width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5);
  align-items: center; justify-content: center;
}
.popup-content {
  background: white; padding: 2.5rem; max-width: 450px;
  width: 90%; position: relative; border: 1px solid var(--border-light);
  box-shadow: 0 25px 40px -10px rgba(0, 0, 0, 0.2);
}
.popup-close { position: absolute; top: 20px; right: 25px; font-size: 2rem; cursor: pointer; color: var(--text-muted); }
.popup-content h3 { font-family: 'Space Grotesk'; font-size: 1.8rem; margin-bottom: 1.5rem; }

/* ===== АДАПТИВНОСТЬ ===== */
@media (max-width: 1000px) {
  .hero-grid { grid-template-columns: 1fr; }
  .gallery { grid-template-columns: repeat(2, 1fr); }
  .contact-flex { grid-template-columns: 1fr; }
  .section-title { font-size: 2.4rem; }
  #calculator .section-title { font-size: 2rem;}
}

@media (max-width: 780px) {
  .container { padding: 0 15px; }
  .services-grid { grid-template-columns: 1fr; }
  .gallery { grid-template-columns: 1fr; }
  .gallery-item:nth-child(2) { transform: none; }
  .hero-title { font-size: 2.2rem; }
  .calc-wrapper { padding: 1.5rem; }
  .product-card { grid-template-columns: 1fr; }
}

/* Прочие улучшения */
table { width: 100% !important; word-break: break-word; }
a, span, p { word-break: break-word; }
img { max-width: 100%; height: auto; }

/* Стили для чебокса согласия */
.privacy-check-label {
  font-size: 0.8rem; display: flex; align-items: center;
  gap: 6px; margin-bottom: 1rem; white-space: nowrap;
}
.privacy-check-label input[type="checkbox"] {
  flex-shrink: 0; width: auto;
}