/* =========================================================
   ELEKTRO TEXNIK KOMPLEKS — brand overrides on Industro base
   Fonts: Russo One (display / headings)  +  Golos Text (body)
   Accent: #1670C9 (electric blue) · Dark: #16202E (graphite)
   ========================================================= */

:root{
  --et-accent:#1670C9;
  --et-accent-deep:#0F5AA8;
  --et-ink:#16202E;      /* graphite */
  --et-ink-2:#0F1720;    /* darker graphite */
  --et-body:#5a6472;
}

/* ---------- BASE / BODY ---------- */
body,
p, li, a, span, input, textarea, select, button,
.site-button, .site-button-secondry, .site-button-link,
.header-nav .nav > li > a,
.wt-post-info, .testimonial-text, blockquote,
.description-list li, .form-control{
  font-family:'Golos Text', -apple-system, "Segoe UI", Arial, sans-serif;
}
body{ color:var(--et-body); letter-spacing:.1px; }

/* ---------- HEADINGS = RUSSO ONE ---------- */
h1,h2,h3,h4,h5,h6,
.wt-title,
.section-head h2,
.service-title-large,
.post-title,
.counter,
.widget-title,
.logo-header .et-logo b{
  font-family:'Russo One', 'Golos Text', sans-serif !important;
  font-weight:400 !important;
  letter-spacing:.2px;
}

/* Russo One runs wider/taller than Teko — relax sizing so nothing clips */
.section-head h2, .section-head .wt-title{
  line-height:1.18;
  letter-spacing:.1px;
}
h1{ line-height:1.14; }
h2{ line-height:1.16; }
h3,h4{ line-height:1.22; }

/* Big section titles: trim a touch for the wider face */
.section-head.center h2, .section-head.left h2{ font-size:2.35rem; }
@media (max-width:768px){
  .section-head.center h2, .section-head.left h2{ font-size:1.7rem; }
}

/* Card / service / project titles a size down so wide glyphs fit */
.service-title-large{ font-size:1.35rem; }
.project-new-content2 .wt-title{ font-size:1.25rem; }
.service-icon-box-three .wt-title{ font-size:1.15rem; }

/* small kicker label above titles */
.wt-small-separator div{
  font-family:'Golos Text',sans-serif;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

/* ---------- NAV ---------- */
.header-style-11 .header-nav .nav > li > a{
  font-weight:600;
  letter-spacing:.2px;
  text-transform:uppercase;
  font-size:13px !important;
  padding-left:11px;
  padding-right:11px;
  white-space:nowrap;
}

/* ---------- HEADER INFO (top bar values) ---------- */
.header-info ul li .icon-content .wt-tilte{
  font-family:'Golos Text',sans-serif !important;
  font-weight:700; font-size:15px; white-space:nowrap; letter-spacing:0;
}
.header-info ul li .icon-content p{ font-size:12px; margin-bottom:2px; }

/* ---------- BUTTONS ---------- */
.site-button, .site-button-secondry{
  font-family:'Golos Text',sans-serif;
  font-weight:600;
  letter-spacing:.4px;
  text-transform:uppercase;
}

/* ---------- WORDMARK LOGO (placeholder until client logo) ---------- */
.logo-header .et-logo{
  display:flex; align-items:center; gap:10px; text-decoration:none;
}
.logo-header .et-logo .et-mark{
  width:44px;height:44px;border-radius:9px;flex:0 0 44px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--et-accent),var(--et-accent-deep));
  color:#fff;box-shadow:0 6px 16px rgba(22,112,201,.35);
}
.logo-header .et-logo .et-mark i{ font-size:22px; }
.logo-header .et-logo .et-txt{ line-height:1; }
.logo-header .et-logo b{
  display:block;font-family:'Russo One',sans-serif;font-weight:400;
  font-size:20px;color:var(--et-ink);letter-spacing:.5px;
}
.logo-header .et-logo small{
  display:block;font-family:'Golos Text',sans-serif;font-weight:600;
  font-size:9.5px;letter-spacing:3px;color:var(--et-accent);
  text-transform:uppercase;margin-top:3px;
}

/* ---------- HEADER REQUEST BUTTON ---------- */
.header-request-btn{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--et-accent);color:#fff;
  font-family:'Golos Text',sans-serif;font-weight:600;
  text-transform:uppercase;letter-spacing:.4px;font-size:13px;
  padding:12px 22px;border-radius:6px;white-space:nowrap;
  transition:.25s;
}
.header-request-btn:hover{ background:var(--et-accent-deep);color:#fff; }
.header-request-btn i{ font-size:15px; }
@media (max-width:991px){ .header-request-btn .lbl{ display:none; } .header-request-btn{ padding:11px 14px; } }

/* ---------- COUNTERS STRIP (replaces client-logo band) ---------- */
.et-stats{ background:var(--et-ink); position:relative; overflow:hidden; }
.et-stats::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(22,112,201,.14),transparent 55%);
}
.et-stat{ text-align:center; padding:22px 10px; position:relative; }
.et-stat .num{
  font-family:'Russo One',sans-serif;color:#fff;font-size:3.1rem;line-height:1;
  display:flex;align-items:baseline;justify-content:center;gap:2px;
}
.et-stat .num .suf{ color:var(--et-accent);font-size:2.2rem; }
.et-stat .lbl{
  margin-top:12px;color:#aeb8c6;font-size:14px;font-weight:500;
  text-transform:uppercase;letter-spacing:1px;
}
.et-stat + .et-stat::before{
  content:"";position:absolute;left:0;top:26%;height:48%;width:1px;
  background:rgba(255,255,255,.12);
}
@media (max-width:767px){ .et-stat .num{ font-size:2.4rem; } .et-stat + .et-stat::before{ display:none; } }

/* ---------- PROCESS STEPS (replaces blog) ---------- */
.et-steps .et-step{
  background:#fff;border:1px solid #e9edf2;border-radius:12px;
  padding:34px 26px 30px;height:100%;position:relative;
  transition:.3s;overflow:hidden;
}
.et-steps .et-step:hover{ box-shadow:0 22px 45px rgba(16,32,46,.12); transform:translateY(-4px); border-color:transparent; }
.et-steps .et-step .st-num{
  font-family:'Russo One',sans-serif;font-size:52px;line-height:1;
  color:#eef2f7;position:absolute;top:16px;right:20px;transition:.3s;
}
.et-steps .et-step:hover .st-num{ color:rgba(22,112,201,.15); }
.et-steps .et-step .st-ico{
  width:64px;height:64px;border-radius:12px;margin-bottom:20px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(22,112,201,.10);color:var(--et-accent);font-size:28px;transition:.3s;
}
.et-steps .et-step:hover .st-ico{ background:var(--et-accent);color:#fff; }
.et-steps .et-step h3{ font-size:1.15rem;margin:0 0 10px; }
.et-steps .et-step p{ margin:0;font-size:14.5px;line-height:1.6; }

/* ---------- FAQ ACCORDION (replaces testimonials) ---------- */
.et-faq .et-acc{ background:#fff;border:1px solid #e9edf2;border-radius:10px;margin-bottom:14px;overflow:hidden; }
.et-faq .et-acc.open{ border-color:var(--et-accent); box-shadow:0 14px 30px rgba(16,32,46,.08); }
.et-faq .et-q{
  cursor:pointer;list-style:none;display:flex;align-items:center;gap:16px;
  padding:20px 24px;font-family:'Golos Text',sans-serif;font-weight:600;
  color:var(--et-ink);font-size:16.5px;
}
.et-faq .et-q .qi{
  flex:0 0 34px;width:34px;height:34px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(22,112,201,.10);color:var(--et-accent);transition:.3s;
}
.et-faq .et-acc.open .et-q .qi{ background:var(--et-accent);color:#fff;transform:rotate(45deg); }
.et-faq .et-a{ max-height:0;overflow:hidden;transition:max-height .35s ease; }
.et-faq .et-a > div{ padding:0 24px 22px 74px;color:var(--et-body);line-height:1.7;font-size:15px; }

/* ---------- PRODUCTION GALLERY captions (team → capabilities) ---------- */
.et-cap .wt-info .team-detail p{ color:var(--et-accent); font-weight:600; text-transform:uppercase; letter-spacing:.6px; font-size:12.5px; }

/* ---------- LEAD FORM SECTION ---------- */
.et-lead{ background:var(--et-ink); position:relative; overflow:hidden; }
.et-lead::before{ content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(22,112,201,.28),transparent 70%); }
.et-lead .form-control{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:#fff;height:54px;border-radius:8px;
}
.et-lead textarea.form-control{ height:auto; }
.et-lead .form-control::placeholder{ color:#8ea0b5; }
.et-lead .form-control:focus{ border-color:var(--et-accent);background:rgba(255,255,255,.09); }
.et-lead .et-ci{ display:flex;gap:16px;align-items:flex-start;margin-bottom:26px; }
.et-lead .et-ci .ic{
  flex:0 0 52px;width:52px;height:52px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(22,112,201,.16);color:var(--et-accent);font-size:20px;
}
.et-lead .et-ci h4{ color:#fff;margin:0 0 4px;font-size:16px; }
.et-lead .et-ci p, .et-lead .et-ci a{ color:#aeb8c6;margin:0;font-size:15px; }
.et-lead .et-ci a:hover{ color:var(--et-accent); }

/* ---------- generic polish ---------- */
.section-head .wt-small-separator{ margin-bottom:14px; }
.footer-dark .widget_about p{ color:#aeb8c6; }
a{ transition:color .2s; }

/* messenger float chips in footer contact */
.et-msg a{ display:inline-flex;width:40px;height:40px;border-radius:8px;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);color:#fff;margin-right:8px;font-size:17px;transition:.25s; }
.et-msg a:hover{ background:var(--et-accent);color:#fff; }

/* ---------- STATIC HERO (replaces Revolution slider) ---------- */
.et-hero{ position:relative; min-height:660px; display:flex; align-items:center; overflow:hidden; background:#16202E; }
.et-hero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; }
.et-hero-bg1{ background-image:url(../img/hero-2.jpg); }
.et-hero-bg2{ background-image:url(../img/hero-1.jpg); opacity:0; }
@keyframes etHeroFade{ 0%,44%{opacity:0} 52%,94%{opacity:1} 100%{opacity:0} }
.et-hero-bg2{ animation:etHeroFade 18s ease-in-out infinite; }
.et-hero-overlay{ position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(14,20,28,.94) 0%, rgba(14,20,28,.78) 42%, rgba(14,20,28,.42) 100%); }
.et-hero .container{ position:relative; z-index:2; }
.et-hero-inner{ max-width:680px; padding:70px 0; }
.et-hero-kicker{ display:inline-flex; align-items:center; gap:12px; color:#fff;
  font-family:'Golos Text',sans-serif; font-weight:600; letter-spacing:2px; text-transform:uppercase; font-size:14px; margin-bottom:22px; }
.et-hero-kicker::before{ content:""; width:34px; height:3px; background:var(--et-accent); display:inline-block; }
.et-hero-title{ font-family:'Russo One',sans-serif; color:#fff; text-transform:uppercase;
  font-size:3.15rem; line-height:1.12; margin:0 0 22px; letter-spacing:.3px; }
.et-hero-sub{ color:#d6dce4; font-size:1.06rem; line-height:1.7; margin:0 0 34px; max-width:600px; }
.et-hero-cta{ display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.et-hero-contact{ display:flex; align-items:center; gap:22px; margin-top:34px; flex-wrap:wrap; }
.et-hero-contact > a{ color:#fff; font-weight:600; font-size:1.15rem; display:inline-flex; align-items:center; gap:10px; }
.et-hero-contact > a i{ color:var(--et-accent); }
.et-hero-contact .et-hero-msg a{ display:inline-flex; width:42px; height:42px; border-radius:9px; align-items:center; justify-content:center;
  background:rgba(255,255,255,.10); color:#fff; margin-left:8px; font-size:18px; transition:.25s; }
.et-hero-contact .et-hero-msg a:hover{ background:var(--et-accent); }
@media (max-width:991px){ .et-hero-title{ font-size:2.3rem; } .et-hero{ min-height:560px; } }
@media (max-width:575px){ .et-hero-title{ font-size:1.8rem; } .et-hero-inner{ padding:52px 0; } .et-hero-overlay{ background:linear-gradient(90deg,rgba(14,20,28,.9),rgba(14,20,28,.7)); } }
@media (prefers-reduced-motion: reduce){ .et-hero-bg2{ animation:none; opacity:0; } }

/* ---------- anchors under sticky header ---------- */
html{ scroll-behavior:smooth; }
#about,#products,#why,#production,#projects,#process,#faq,#zayavka,#contacts{ scroll-margin-top:96px; }

/* ---------- flaticon service icons (advantages) ---------- */
.service-icon-box-three .icon-cell i{ font-size:56px;color:var(--et-accent);line-height:1;display:inline-block;transition:.3s; }
.service-icon-box-three:hover .icon-cell i{ color:#fff; }
.service-icon-box-three:hover .wt-title a,
.service-icon-box-three:hover .service-icon-box-content p{ color:#fff; }
.service-icon-box-three:hover .wt-icon-box-wraper.circle-bg{ background:rgba(255,255,255,.14); }

/* ---------- get-in-touch image ---------- */
.get-in-touch-pic img{ border-radius:16px; }

/* ---------- hero: Russo One tracking ---------- */
.rev_slider .tp-caption{ letter-spacing:.3px; }

/* ---------- production capability card tidy ---------- */
.et-cap .wt-media img{ width:100%; }
.et-cap .wt-info{ padding:18px 6px 4px; }
.et-cap .wt-info h3{ margin:0 0 4px;font-size:1.12rem; }

/* ---------- section head paragraph readability ---------- */
.section-head p{ color:var(--et-body);line-height:1.72; }
.text-white .section-head p, .services-gallery-block-outer .section-head p{ color:#c6ccd6; }

/* =================================================================
   FEEDBACK FIXES (round 2) — sizing recalibration + polish
   Template sizes were tuned for condensed Teko; recalibrate for
   Russo One (wide) + Golos Text.
   ================================================================= */

/* eyebrow labels: template had 34px (looks small in condensed Teko) → tiny in Golos */
.wt-small-separator, .wt-small-separator div{ font-size:13px !important; line-height:1.3 !important; letter-spacing:2.4px; font-weight:700; }
.section-head .wt-small-separator{ margin-bottom:10px; }

/* section titles: calmer scale for the wider Russo One face */
.section-head.center h2, .section-head.left h2, .section-head h2.wt-title, .section-head h2{ font-size:2rem !important; line-height:1.22 !important; letter-spacing:.2px; }
@media (max-width:768px){ .section-head.center h2, .section-head.left h2, .section-head h2.wt-title, .section-head h2{ font-size:1.5rem !important; } }

/* footer headings were oversized */
.footer-large .widget-title, .site-footer .widget-title{ font-size:16px !important; letter-spacing:.4px; margin-bottom:20px; text-transform:uppercase; }

/* card / block titles a touch smaller & consistent */
.service-title-large{ font-size:1.25rem !important; }
.project-new-content2 .wt-title{ font-size:1.15rem !important; }
.et-cap .wt-info h3{ font-size:1.05rem !important; }
.et-steps .et-step h3{ font-size:1.08rem !important; }

/* LOGO = plain company name (no invented mark) */
.logo-header .et-logo .et-mark, .logo-footer .et-logo .et-mark{ display:none !important; }
.logo-header .et-logo, .logo-footer .et-logo{ gap:0; }
.logo-header .et-logo .et-txt b{ font-size:23px; letter-spacing:.6px; }
.logo-header .et-logo .et-txt small{ letter-spacing:5px; font-size:10px; margin-top:3px; }

/* PROCESS steps: remove hover shadow/lift, keep subtle border cue */
.et-steps .et-step:hover{ box-shadow:none !important; transform:none !important; border-color:var(--et-accent) !important; }

/* HERO kicker: thin vertical dividers instead of the "·" middot */
.et-hero-kicker{ display:inline-flex; align-items:center; color:#fff; font-family:'Golos Text',sans-serif; font-weight:600; letter-spacing:2px; text-transform:uppercase; font-size:13.5px; margin-bottom:22px; gap:0; }
.et-hero-kicker::before{ content:''; width:34px; height:3px; background:var(--et-accent); margin-right:18px; display:inline-block; }
.et-hero-kicker span{ padding:0 15px; position:relative; }
.et-hero-kicker span:first-of-type{ padding-left:0; }
.et-hero-kicker span:not(:first-of-type)::before{ content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:1px; height:12px; background:rgba(255,255,255,.42); }

/* NEW CTA band with background photo (replaces the "iish" ripple block) */
.et-cta2{ position:relative; background-color:#16202E; background-size:cover; background-position:center; background-attachment:fixed; padding:118px 0; }
.et-cta2-ov{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(11,16,23,.97) 0%, rgba(11,16,23,.9) 55%, rgba(11,16,23,.74) 100%); }
.et-cta2 .container{ position:relative; z-index:2; }
.et-cta2-inner{ max-width:700px; }
.et-cta2-kick{ display:inline-flex; align-items:center; color:#fff; font-family:'Golos Text',sans-serif; font-weight:600; letter-spacing:2.4px; text-transform:uppercase; font-size:13px; margin-bottom:16px; }
.et-cta2-kick::before{ content:''; width:34px; height:3px; background:var(--et-accent); margin-right:16px; }
.et-cta2 h2{ color:#fff !important; font-family:'Russo One',sans-serif !important; font-weight:400 !important; font-size:2.2rem; line-height:1.2; margin:0 0 18px; }
.et-cta2 p{ color:#cdd5df; font-size:1.05rem; line-height:1.7; margin:0; max-width:600px; }
.et-cta2-act{ display:flex; gap:26px; align-items:center; flex-wrap:wrap; margin-top:32px; }
.et-cta2-tel{ color:#fff; font-weight:600; font-size:1.2rem; display:inline-flex; gap:10px; align-items:center; white-space:nowrap; }
.et-cta2-tel i{ color:var(--et-accent); }
.et-cta2-tel:hover{ color:var(--et-accent); }
@media (max-width:768px){ .et-cta2{ padding:72px 0; background-attachment:scroll; } .et-cta2 h2{ font-size:1.55rem; } }

/* logo wordmark: stack name + subtitle consistently (header & footer) */
.et-logo .et-txt b{ display:block; }
.et-logo .et-txt small{ display:block; }

/* hero kicker must fit narrow screens (no clipping of "Монтаж") */
@media (max-width:575px){
  .et-hero-kicker{ font-size:11px; letter-spacing:.6px; flex-wrap:wrap; }
  .et-hero-kicker::before{ width:24px; height:2px; margin-right:12px; }
  .et-hero-kicker span{ padding:0 9px; }
}

/* =================================================================
   FEEDBACK FIXES (round 3)
   ================================================================= */

/* 1 · rounded buttons everywhere */
.site-button, .site-button-secondry, button.site-button, button.site-button-secondry,
.header-request-btn, .nl-search-btn, .et-cta2 .site-button{
  border-radius:8px !important;
}

/* 4 · 8 · heading link anchors keep the heading font (Russo One), not body Golos */
.wt-title a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .service-title-large a, .post-title a{
  font-family:'Russo One','Golos Text',sans-serif !important;
}
.service-icon-box-three .wt-title, .service-icon-box-three .wt-title a{ font-family:'Russo One',sans-serif !important; letter-spacing:.2px; }

/* 2 · advantage cards equal height */
#why .s-section .row{ display:flex; flex-wrap:wrap; }
#why .s-section .row > [class*="col-"]{ display:flex; }
.service-icon-box-three{ height:100%; width:100%; display:flex; flex-direction:column; }
.service-icon-box-three .service-icon-box-content{ flex:1 1 auto; }

/* 15 · product cards equal height + "Подробнее" aligned */
.services-gallery-two .owl-stage{ display:flex; }
.services-gallery-two .owl-item{ display:flex; height:auto; }
.services-gallery-two .item{ display:flex; width:100%; }
.service-box-style2{ display:flex; flex-direction:column; width:100%; }
.service-box-style2 .service-content{ display:flex; flex-direction:column; flex:1 1 auto; }
.service-box-style2 .service-content .site-button{ margin-top:auto; align-self:flex-start; }

/* 8 · project cards equal height + "Подробнее" aligned */
.project-carousel .owl-stage{ display:flex; }
.project-carousel .owl-item{ display:flex; height:auto; }
.project-carousel .item{ display:flex; width:100%; }
.project-new-2{ display:flex; flex-direction:column; width:100%; }
.project-new-2 .project-new-content2{ display:flex; flex-direction:column; flex:1 1 auto; }
.project-new-2 .project-new-content2 .site-button-link{ margin-top:auto; align-self:flex-start; }

/* 5 · counters band — more top/bottom breathing room */
.et-stats{ padding:48px 0; }
.et-stat{ padding:14px 10px; }

/* 6 · clean owl nav buttons (fixes crooked arrows in Производство & others) */
.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next{
  width:46px !important; height:46px !important; min-width:46px !important; border-radius:8px !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important; padding:0 !important; margin:0 6px 0 0 !important;
}
.owl-carousel .owl-nav button i{ line-height:1 !important; font-size:18px !important; }
.team-carousel.owl-carousel .owl-nav, .team-carousel .owl-nav{ margin-top:18px !important; }

/* 10 · lead form: remove glow "bulb", add bg photo + dark overlay, tighten & center */
.et-lead{ background:#0f1720 url(../img/lead-bg.jpg) center/cover no-repeat; position:relative; }
.et-lead::before{ content:''; position:absolute; top:0; right:0; bottom:0; left:0; width:auto; height:auto; border-radius:0;
  background:linear-gradient(90deg, rgba(10,15,21,.80) 0%, rgba(10,15,21,.68) 52%, rgba(10,15,21,.58) 100%); }
.et-lead .container{ position:relative; z-index:2; }
.et-lead .row{ align-items:center; }
.et-lead .section-head{ margin-bottom:14px; }
.et-lead .section-head h2{ margin-bottom:0; }
.et-lead .section-head + p{ margin-top:0; }

/* 11 · footer "Kompleks" readable */
.logo-footer .et-logo .et-txt small{ color:#9fb0c4 !important; letter-spacing:3px !important; font-size:11px !important; }

/* 12 · social / messenger icons stay readable on hover */
.et-msg a:hover, .et-msg a:hover i, .et-hero-msg a:hover, .et-hero-msg a:hover i,
.footer-dark .et-msg a:hover i{ color:#fff !important; }

/* 13 · remove scroll-to-top button */
.scroltop{ display:none !important; }

/* 14 · lighten hero banner overlay (round 5: lighter still) */
.et-hero-overlay{ background:linear-gradient(90deg, rgba(14,20,28,.70) 0%, rgba(14,20,28,.42) 48%, rgba(14,20,28,.14) 100%) !important; }

/* 3 · about checklist check icons in blue circles */
.description-list li i{ font-size:12px; }
@media (max-width:768px){ .et-lead .row{ align-items:stretch; } }

/* =================================================================
   FEEDBACK FIXES (round 5)
   ================================================================= */

/* header CTA was flush to the bar edges ("впаяна") — give it breathing room */
.header-bottom .main-bar{ padding-top:10px !important; padding-bottom:10px !important; }
.header-request-btn{ padding:12px 28px !important; margin-left:16px; }

/* ===== MOBILE HEADER — one clean row (fix "кривая" two-tier layout) =====
   The content wrapper (full width) becomes a flex row: logo left, controls
   right. All sticky-header wrappers are flattened to normal flow so the
   controls sit inline and contribute their width. */
@media (max-width:991px){
  .header-style-11 .header-style-11-content{ display:flex !important; align-items:center; justify-content:space-between; min-height:64px; padding:0 14px; }
  .header-style-11 .header-info-wraper{ display:none !important; }
  .header-style-11 .header-middle-wraper{ flex:0 1 auto; min-width:0; }
  .header-style-11 .header-middle-wraper .container{ padding:0; }
  .header-style-11 .header-middle{ min-height:0; justify-content:flex-start !important; }
  .header-style-11 .logo-header{ margin:0 !important; }
  .header-style-11 .logo-header .et-logo{ justify-content:flex-start; }
  .header-style-11 .logo-header .et-logo .et-txt b{ font-size:20px; }
  .header-style-11 .logo-header .et-logo .et-txt small{ font-size:9px; letter-spacing:4px; }
  .header-style-11 .header-bottom{ flex:0 0 auto; position:static !important; margin:0 !important; background:transparent !important; box-shadow:none !important; }
  .header-style-11 .header-bottom .main-bar-wraper,
  .header-style-11 .header-bottom .main-bar,
  .header-style-11 .header-bottom .container-block,
  .header-style-11 .navigation-bar{ position:static !important; width:auto !important; height:auto !important; min-height:0 !important; padding:0 !important; margin:0 !important; background:transparent !important; box-shadow:none !important; float:none !important; }
  /* the template applies a translateX to .container-block which re-anchors the
     fixed drawer onto screen — kill it so the closed drawer stays off-canvas */
  .header-style-11 .container-block{ transform:none !important; }
  .header-style-11 .navigation-bar{ display:flex; align-items:center; }
  .header-style-11 .extra-nav{ order:1; margin:0; }
  .header-style-11 #mobile-side-drawer{ order:2; margin:0 0 0 14px; }
  .header-style-11 .header-request-btn{ padding:11px 16px !important; margin-left:0 !important; }
}

/* ===== PRODUCT CARDS (.service-box-style2) — round 8 =====
   Template gave the card bg:#000 and content padding:20px 0 0 0 (flush on
   desktop). The black bg leaked a stray sub-pixel edge at some widths (1600)
   but not others (1440). Fix: white card, real internal padding, and a clean,
   consistent border + shadow so cards are defined the same at every width. */
.service-box-style2{ background-color:#fff !important; border:1px solid #e9edf2; border-radius:12px; overflow:hidden; box-shadow:0 8px 26px rgba(16,32,46,.07); }
.service-box-style2 .service-content{ padding:24px 26px 28px !important; }
.service-box-style2 .service-media{ line-height:0; }
.service-box-style2 .service-media img{ display:block; }
/* small gutter so card shadows aren't clipped by the section's overflow:hidden
   (which must stay, to clip the 4000px .half-wide-bg block) */
.services-gallery-style2 .owl-stage-outer{ padding:6px 4px; margin:-6px -4px; }

/* =================================================================
   LEAD MODAL — clean, responsive request popup (replaces the old
   slide-in "contact-slide-hide" panel). Opened by every lead CTA.
   ================================================================= */
/* always in layout; visibility/pointer-events gate it so the fade+rise can actually animate in AND out */
.et-modal{ position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; padding:24px 16px;
  visibility:hidden; pointer-events:none; transition:visibility 0s linear .42s; }
.et-modal.is-open{ visibility:visible; pointer-events:auto; transition:visibility 0s; }
.et-modal__overlay{ position:fixed; inset:0; background:rgba(9,14,20,.74); opacity:0; transition:opacity .34s ease; cursor:pointer; }
.et-modal.is-open .et-modal__overlay{ opacity:1; }
.et-modal__dialog{ position:relative; z-index:1; width:min(100%,540px); background:#fff; border-radius:16px;
  padding:42px 44px 34px; box-shadow:0 40px 90px rgba(9,14,20,.45); max-height:calc(100vh - 48px); overflow:auto;
  transform:translateY(26px) scale(.96); opacity:0; will-change:transform,opacity;
  transition:transform .42s cubic-bezier(.16,1,.3,1), opacity .3s ease; }
.et-modal.is-open .et-modal__dialog{ transform:none; opacity:1; }
@media (prefers-reduced-motion: reduce){
  .et-modal{ transition:visibility 0s; }
  .et-modal__overlay, .et-modal__dialog{ transition:opacity .12s linear; }
  .et-modal__dialog{ transform:none; }
}
.et-modal__close{ position:absolute; top:15px; right:16px; width:40px; height:40px; border:0; border-radius:10px;
  background:#eef2f7; color:#16202E; font-size:26px; line-height:1; cursor:pointer; transition:.2s; display:flex; align-items:center; justify-content:center; }
.et-modal__close:hover{ background:var(--et-accent); color:#fff; transform:rotate(90deg); }
.et-modal__kicker{ display:inline-flex; align-items:center; color:var(--et-accent); font-family:'Golos Text',sans-serif;
  font-weight:700; letter-spacing:2px; text-transform:uppercase; font-size:12px; margin-bottom:10px; }
.et-modal__kicker::before{ content:''; width:26px; height:3px; background:var(--et-accent); margin-right:12px; }
.et-modal__title{ font-family:'Russo One',sans-serif; font-weight:400; color:var(--et-ink); font-size:1.5rem; line-height:1.22; margin:0 0 10px; }
.et-modal__sub{ color:var(--et-body); font-size:15px; line-height:1.6; margin:0 0 24px; }
.et-modal__grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.et-modal__form input, .et-modal__form textarea{ width:100%; border:1px solid #dfe4ea; border-radius:10px; background:#f7f9fb;
  color:var(--et-ink); font-family:'Golos Text',sans-serif; font-size:15px; transition:.2s; }
.et-modal__form input{ height:52px; padding:0 16px; }
.et-modal__form textarea{ padding:14px 16px; resize:vertical; min-height:96px; display:block; margin-bottom:18px; }
.et-modal__form input:focus, .et-modal__form textarea:focus{ outline:0; border-color:var(--et-accent); background:#fff; box-shadow:0 0 0 3px rgba(22,112,201,.12); }
.et-modal__form input::placeholder, .et-modal__form textarea::placeholder{ color:#9aa6b4; }
.et-modal__submit{ width:100%; border:0; cursor:pointer; background:var(--et-accent); color:#fff; font-family:'Golos Text',sans-serif;
  font-weight:600; text-transform:uppercase; letter-spacing:.4px; font-size:14px; height:54px; border-radius:9px;
  display:inline-flex; align-items:center; justify-content:center; gap:9px; transition:.25s; }
.et-modal__submit:hover{ background:var(--et-accent-deep); }
.et-modal__note{ color:#9aa6b4; font-size:12px; line-height:1.5; margin:14px 0 0; text-align:center; }
.et-modal__success{ text-align:center; padding:18px 0 10px; }
.et-modal__success-ic{ width:74px; height:74px; margin:0 auto 18px; border-radius:50%; background:rgba(22,112,201,.12);
  color:var(--et-accent); display:flex; align-items:center; justify-content:center; font-size:32px; }
.et-modal__success h3{ font-family:'Russo One',sans-serif; font-weight:400; color:var(--et-ink); font-size:1.35rem; margin:0 0 10px; }
.et-modal__success p{ color:var(--et-body); margin:0 0 24px; }
.et-modal__success .et-modal__submit{ max-width:220px; margin:0 auto; }
body.et-modal-open{ overflow:hidden; }
@media (max-width:560px){
  .et-modal__dialog{ padding:34px 22px 26px; border-radius:14px; }
  .et-modal__grid{ grid-template-columns:1fr; gap:12px; }
  .et-modal__title{ font-size:1.25rem; }
}

/* Products carousel dots — on mobile/tablet the section bg is the blue
   half-wide block, where the accent-blue active dot was invisible. Use white. */
@media (max-width:991px){
  .services-gallery-two .owl-dots .owl-dot span{ background:rgba(255,255,255,.5) !important; }
  .services-gallery-two .owl-dots .owl-dot.active span{ background:#fff !important; transform:scale(1.15); }
}

/* ===== FLOATING TELEGRAM (left) ===== */
.et-float-tg{ position:fixed; left:24px; bottom:26px; z-index:9990; width:70px; height:70px; border-radius:50%;
  background:#29a9eb; color:#fff; display:flex; align-items:center; justify-content:center; text-decoration:none;
  box-shadow:0 12px 28px rgba(41,169,235,.5); transition:transform .2s ease, background .2s; }
.et-float-tg:hover{ transform:scale(1.07); color:#fff; background:#1e97d4; }
.et-float-tg__ic{ position:relative; z-index:2; width:34px; height:34px; color:#fff; margin-right:2px; }
.et-float-tg__pulse{ position:absolute; left:0; top:0; width:100%; height:100%; border-radius:50%; background:#29a9eb;
  z-index:1; animation:etTgPulse 2.4s cubic-bezier(.25,.6,.4,1) infinite; }
.et-float-tg__pulse--2{ animation-delay:1.2s; }
@keyframes etTgPulse{ 0%{ transform:scale(1); opacity:.55; } 80%{ opacity:0; } 100%{ transform:scale(2); opacity:0; } }
@media (prefers-reduced-motion:reduce){ .et-float-tg__pulse{ animation:none; display:none; } }

/* ===== SCROLL-TO-TOP with scroll-progress ring (right) ===== */
.et-scrolltop{ position:fixed; right:24px; bottom:26px; z-index:9990; width:52px; height:52px; padding:0; border:0;
  border-radius:50%; background:#16202E; color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 22px rgba(16,32,46,.4); opacity:0; visibility:hidden; transform:translateY(14px);
  transition:opacity .3s, transform .3s, background .2s; }
.et-scrolltop.is-visible{ opacity:1; visibility:visible; transform:none; }
.et-scrolltop:hover{ background:var(--et-accent); }
.et-scrolltop i{ position:relative; z-index:2; font-size:22px; line-height:1; }
.et-scrolltop__arw{ position:relative; z-index:2; width:21px; height:21px; display:block; }
.et-scrolltop__ring{ position:absolute; left:0; top:0; width:52px; height:52px; transform:rotate(-90deg); }
.et-scrolltop__track{ fill:none; stroke:rgba(255,255,255,.16); stroke-width:3; }
.et-scrolltop__prog{ fill:none; stroke:#fff; stroke-width:3; stroke-linecap:round; transition:stroke-dashoffset .08s linear; }

@media (max-width:575px){
  .et-float-tg{ width:60px; height:60px; left:16px; bottom:18px; }
  .et-float-tg__ic{ width:30px; height:30px; }
  .et-scrolltop{ width:50px; height:50px; right:16px; bottom:18px; }
  .et-scrolltop__ring{ width:50px; height:50px; }
}

/* ===== REAL LOGO (image) ===== */
.et-logo{ display:inline-flex; align-items:center; }
.et-logo-img{ height:50px; width:auto; display:block; }
.et-logo-img--footer{ box-sizing:content-box; height:54px; background:#fff; padding:11px 18px; border-radius:10px; box-shadow:0 6px 18px rgba(0,0,0,.15); }
@media (max-width:575px){ .et-logo-img{ height:40px; } .et-logo-img--footer{ height:48px; padding:10px 16px; } }

/* ===== FOOTER BOTTOM (copyright bar) — divider + breathing room ===== */
.site-footer .footer-bottom{ padding:24px 0 30px; border-top:1px solid rgba(255,255,255,.09); }
.site-footer .footer-bottom .copyrights-text{ line-height:1.6; }
@media (max-width:767px){
  /* +запас снизу: копирайт не должен уходить под плавающие кнопки */
  .site-footer .footer-bottom{ padding:22px 0 96px; }
  .site-footer .footer-bottom .wt-footer-bot-left{ flex-direction:column; align-items:center; gap:12px; text-align:center; }
  .site-footer .footer-bottom .copyrights-nav{ margin:0; padding:0; }
}

/* ===== WP: антиспам-ловушка + статус отправки формы ===== */
.etk-hp{ position:absolute!important; left:-9999px!important; width:1px; height:1px; overflow:hidden; }
.etk-form__status{ margin:14px 0 0; padding:12px 16px; border-radius:9px; font-size:14.5px; line-height:1.5; }
.etk-form__status.is-ok{ background:rgba(22,112,201,.14); color:#fff; border:1px solid rgba(22,112,201,.5); }
.etk-form__status.is-err{ background:rgba(214,69,65,.14); color:#ffd9d7; border:1px solid rgba(214,69,65,.45); }

/* ===================================================================
   СТРАНИЦА 404 — фирменный стиль: фото объекта + графитовый оверлей,
   Russo One, синий акцент. Конверсионная: ведёт на главную и в заявку.
   =================================================================== */
.et-404{ position:relative; display:flex; align-items:center; overflow:hidden;
  min-height:clamp(560px,78vh,820px); padding:92px 0 84px;
  background-size:cover; background-position:center; background-repeat:no-repeat; }
.et-404__ov{ position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(11,16,23,.97) 0%, rgba(11,16,23,.92) 48%, rgba(11,16,23,.80) 100%); }
.et-404__inner{ position:relative; z-index:2; }

.et-404__kicker{ display:inline-flex; align-items:center; margin:0 0 20px; color:var(--et-accent);
  font-family:'Golos Text',sans-serif; font-weight:700; font-size:12px; letter-spacing:3px; text-transform:uppercase; }
.et-404__kicker::before{ content:''; width:34px; height:3px; background:var(--et-accent); margin-right:16px; }

.et-404__code{ margin:0; color:#fff; font-family:'Russo One',sans-serif;
  font-size:clamp(88px,15vw,188px); line-height:.86; letter-spacing:-.045em; }
.et-404__code::after{ content:''; display:block; width:96px; height:5px; background:var(--et-accent); margin-top:24px; }

.et-404__title{ margin:28px 0 14px; color:#fff; font-family:'Russo One',sans-serif; font-weight:400;
  font-size:clamp(1.5rem,3.4vw,2.5rem); line-height:1.12; letter-spacing:-.01em; }
.et-404__text{ margin:0 0 32px; max-width:62ch; color:#c7d0dc; font-size:16px; line-height:1.7; }

.et-404__actions{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:40px; }
.et-404__ghost{ display:inline-flex; align-items:center; justify-content:center; height:54px; padding:0 26px;
  border:1px solid rgba(255,255,255,.28); border-radius:8px; color:#fff;
  font-family:'Golos Text',sans-serif; font-weight:600; font-size:14px; letter-spacing:.4px; text-transform:uppercase;
  transition:background .25s, border-color .25s, color .25s; }
.et-404__ghost:hover, .et-404__ghost:focus{ background:var(--et-accent); border-color:var(--et-accent); color:#fff; }

.et-404__nav{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 24px;
  padding-top:28px; border-top:1px solid rgba(255,255,255,.12); }
.et-404__nav-label{ color:#8d99a8; font-family:'Golos Text',sans-serif; font-weight:600;
  font-size:12.5px; letter-spacing:2px; text-transform:uppercase; }
.et-404__nav a{ color:#dfe6ee; font-size:15px; border-bottom:2px solid transparent; padding-bottom:2px; transition:color .2s, border-color .2s; }
.et-404__nav a:hover{ color:#fff; border-bottom-color:var(--et-accent); }

.et-404__contact{ display:flex; flex-wrap:wrap; gap:10px 28px; margin-top:24px; }
.et-404__contact a{ display:inline-flex; align-items:center; gap:9px; color:#fff; font-weight:600; font-size:15.5px; transition:color .2s; }
.et-404__contact a i{ color:var(--et-accent); }
.et-404__contact a:hover{ color:var(--et-accent); }

@media (max-width:767px){
  /* нижний запас, чтобы контент не уходил под плавающие кнопки */
  .et-404{ min-height:auto; padding:62px 0 118px; }
  .et-404__ov{ background:linear-gradient(180deg, rgba(11,16,23,.90) 0%, rgba(11,16,23,.95) 100%); }
  .et-404__code{ font-size:clamp(76px,25vw,124px); }
  .et-404__code::after{ width:72px; height:4px; margin-top:18px; }
  .et-404__text{ font-size:15px; margin-bottom:26px; }
  .et-404__actions{ gap:12px; margin-bottom:32px; }
  .et-404__actions .site-button, .et-404__ghost{ width:100%; }
}

/* ===================================================================
   ФОТОГАЛЕРЕЯ ОБЪЕКТОВ — бейдж на обложке + оформление просмотрщика
   =================================================================== */
.project-new-2 .wt-img-effect{ position:relative; }
.etk-gal-badge{ position:absolute; left:14px; top:14px; z-index:4;
  display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:8px;
  background:rgba(11,16,23,.86); color:#fff; cursor:pointer;
  font-family:'Golos Text',sans-serif; font-weight:600; font-size:13px; letter-spacing:.2px;
  transition:background .22s ease, color .22s ease; }
.etk-gal-badge i{ font-size:14px; color:var(--et-accent); transition:color .22s ease; }
.wt-img-effect[data-etk-gallery]:hover .etk-gal-badge{ background:var(--et-accent); }
.wt-img-effect[data-etk-gallery]:hover .etk-gal-badge i{ color:#fff; }
/* затемнение обложки при наведении — сигнал, что фото раскрывается */
.project-new-2 .wt-img-effect[data-etk-gallery]::after{ content:''; position:absolute; inset:0; z-index:2;
  background:rgba(11,16,23,.42); opacity:0; transition:opacity .28s ease; pointer-events:none; }
.project-new-2 .wt-img-effect[data-etk-gallery]:hover::after{ opacity:1; }

/* вся обложка карточки открывает галерею — на мобильном лупа не показывается (нет hover) */
.project-new-2 .wt-img-effect[data-etk-gallery]{ cursor:pointer; }
.project-new-2 .wt-img-effect[data-etk-gallery]:focus-visible{ outline:3px solid var(--et-accent); outline-offset:2px; }

/* ===================================================================
   СТРЕЛКИ КАРУСЕЛЕЙ НА МОБИЛЬНЫХ
   Шаблон показывает их только по наведению (opacity:0), а на тач-экранах
   наведения нет — стрелки были невидимы/схлопнуты. Показываем всегда.
   =================================================================== */
@media (max-width:991px){
  .owl-carousel .owl-nav{ opacity:1 !important; }
  #projects .owl-carousel .owl-nav{ display:block !important; }

  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next{
    display:inline-flex !important; align-items:center; justify-content:center;
    width:38px !important; height:38px !important;
    min-width:38px !important; min-height:38px !important;
    padding:0 !important; margin:0 4px !important;
    border-radius:50% !important;
    background:var(--et-ink) !important; color:#fff !important;
    border:2px solid rgba(0,0,0,.9) !important;
    box-shadow:0 3px 10px rgba(11,16,23,.28) !important;
    opacity:1 !important; visibility:visible !important; z-index:5;
  }
  .owl-carousel .owl-nav button.owl-prev i,
  .owl-carousel .owl-nav button.owl-next i{ font-size:15px !important; line-height:1; margin:0; }
  /* прижимаем к краям и поднимаем на область фото — иначе накрывают заголовок карточки */
  .owl-btn-vertical-center .owl-nav button.owl-prev,
  .owl-btn-vertical-center .owl-nav button.owl-next{ top:26% !important; }
  .owl-btn-vertical-center .owl-nav button.owl-prev{ left:2px !important; right:auto !important; }
  .owl-btn-vertical-center .owl-nav button.owl-next{ right:2px !important; left:auto !important; }
}

}

/* ===================================================================
   ПРОСМОТРЩИК ФОТО (лайтбокс)
   - фон непрозрачный: иначе сквозь него просвечивают кнопки карточек
   - magnific рисует ВТОРОЙ крестик внутри картинки — прячем его
   - стрелки/крестик: тёмный круг + светлая обводка, читаются на любом фото
   =================================================================== */
/* класс оформления вешается только на обёртку, поэтому фон правим напрямую.
   Плагин на сайте используется только этой галереей — задеть нечего. */
.mfp-bg{ z-index:100000 !important; background:#0b1017 !important; }
.mfp-bg.mfp-ready{ opacity:1 !important; }   /* было .8 — сквозь фон просвечивали кнопки карточек */
.mfp-wrap.etk-mfp{ z-index:100001; }

/* убираем дубль крестика, который magnific кладёт поверх фотографии */
.etk-mfp .mfp-figure .mfp-close,
.etk-mfp .mfp-content .mfp-figure > .mfp-close{ display:none !important; }
.etk-mfp .mfp-figure:after{ box-shadow:none; background:transparent; }

/* стрелки */
.etk-mfp .mfp-arrow{
  width:54px !important; height:54px !important; margin:0 !important; padding:0 !important;
  top:50% !important; transform:translateY(-50%); opacity:1 !important;
  display:flex !important; align-items:center; justify-content:center;
  background:rgba(11,16,23,.72); border:2px solid rgba(255,255,255,.6); border-radius:50%;
  transition:background .2s, border-color .2s; }
.etk-mfp .mfp-arrow:hover, .etk-mfp .mfp-arrow:active,
.etk-mfp .mfp-arrow:focus{ background:var(--et-accent); border-color:#fff; }
.etk-mfp .mfp-arrow:before{ display:none !important; }
.etk-mfp .mfp-arrow:after{
  content:'\f104'; font-family:'FontAwesome'; font-size:26px; color:#fff; line-height:1;
  position:static !important; width:auto !important; height:auto !important;
  margin:0 !important; border:0 !important; opacity:1 !important; }
.etk-mfp .mfp-arrow-right:after{ content:'\f105'; }
.etk-mfp .mfp-arrow-left{ left:16px !important; }
.etk-mfp .mfp-arrow-right{ right:16px !important; }

/* крестик — один, поверх окна */
.etk-mfp button.mfp-close{
  width:50px !important; height:50px !important; line-height:46px !important;
  right:12px !important; top:12px !important; font-size:30px !important;
  color:#fff !important; opacity:1 !important;
  background:rgba(11,16,23,.72); border:2px solid rgba(255,255,255,.6); border-radius:50%;
  transition:background .2s, border-color .2s; }
.etk-mfp button.mfp-close:hover{ background:var(--et-accent); border-color:#fff; }

/* счётчик — отдельной плашкой сверху слева, чтобы не налезал на подпись */
.etk-mfp .mfp-counter{ position:fixed !important; top:18px !important; left:16px !important;
  right:auto !important; bottom:auto !important; line-height:1.2;
  font-family:'Golos Text',sans-serif; font-size:13px; color:#fff;
  background:rgba(11,16,23,.72); border:1px solid rgba(255,255,255,.35);
  padding:6px 13px; border-radius:20px; }

/* подпись */
.etk-mfp .mfp-title{ font-family:'Golos Text',sans-serif; font-size:15px; line-height:1.5;
  color:#e6ecf3; text-align:center; padding:12px 16px 4px; }
.etk-mfp .mfp-bottom-bar{ margin-top:-4px; }

@media (max-width:767px){
  .etk-mfp .mfp-arrow{ width:46px !important; height:46px !important; }
  .etk-mfp .mfp-arrow:after{ font-size:22px; }
  .etk-mfp .mfp-arrow-left{ left:8px !important; }
  .etk-mfp .mfp-arrow-right{ right:8px !important; }
  .etk-mfp button.mfp-close{ width:46px !important; height:46px !important; line-height:42px !important;
    right:8px !important; top:8px !important; font-size:28px !important; }
  .etk-mfp .mfp-counter{ top:14px !important; left:12px !important; font-size:12.5px; padding:5px 11px; }
  .etk-mfp .mfp-title{ font-size:13.5px; padding:10px 14px 4px; }
}
