:root {
  /* Базовые */
  --c-bg-cream-1: #fffaf1;
  --c-bg-cream-2: #fffaf2;
  --c-text-dark:  #030e12;
  --c-white:      #ffffff;
  --c-black:      #000000;

  /* Акценты */
  --c-accent-cyan:   #8fe6ff;
  --c-accent-teal-1: #0b1b20;
  --c-accent-teal-2: #13262c;

  /* Красные (индикаторы/ошибки) */
  --c-red:         #ff5b5b;
  --c-red-dark:    #b10000;
  --c-error:       #d93025;

  /* Серые (UI/текст) */
  --c-grey-900: #101010;
  --c-grey-800: #0f0f0f;
  --c-grey-750: #2c2c2c;
  --c-grey-700: #333333;
  --c-grey-600: #484848;
  --c-grey-500: #5d686f;
  --c-grey-450: #485055;
  --c-grey-400: #8a8a8a;
  --c-grey-350: #9ea0a1;
  --c-grey-325: #c4c4c4;
  --c-grey-300: #b8b8b8;
  --c-grey-250: #cfd2d3;
  --c-grey-225: #dfe2e3;
  --c-grey-200: #eaeaea;
  --c-grey-150: #eef0f1;
  --c-grey-100: #f4f6f7;

  /* Тёмные фоны (градиенты/карточки) */
  --c-deep-1: #0d171b;
  --c-deep-2: #101f24;

  /* Анимация */
  --reveal-dur: .75s;
  --reveal-ease: cubic-bezier(.22,1,.24,1);
  --reveal-stagger: 140ms;       
}

*{box-sizing:border-box}
html { scroll-behavior: smooth; }
html,body{height:100%}
body{margin:0;font-family:Manrope,Helvetica,Arial,sans-serif;background:var(--c-bg-cream-1);color:var(--c-text-dark)}
.container{max-width:1600px;margin:0 auto;padding:24px clamp(16px,4vw,40px)}

.brand{
  margin:12px auto 18px;
  font-weight:500;
  color:var(--c-text-dark);
  font-size:clamp(40px,8vw,120px);
  line-height:1;
  white-space:nowrap;
  text-align:center;
}

.nav{
  display:flex;
  align-items:center;
  justify-content:space-around;
  margin:116px auto 0;
  flex-wrap:nowrap;
}
.nav_group{display:flex;align-items:center;gap:14px;flex-wrap:nowrap}
.nav_link{
  position:relative;
  line-height:1;
  padding:6px 14px;
  margin:-6px -14px;
  border-radius:8px;
  font-weight:500;
  color:var(--c-grey-600);
  font-size:1.56rem;
  text-decoration:none;
  transform:translateY(0);
  will-change:transform;
  cursor:pointer;
  display:inline-block;
  transition:color .25s ease, transform .2s ease;
}

.nav_link:hover,
.nav_link:focus-visible{
  color:var(--c-text-dark);
  transform:translateY(-3px);
}

.nav_link:active{ transform: translateY(-1px); }

.nav_link::before{
  content:"";
  position:absolute;
  inset:-6px -10px;
  border-radius:8px;
}

@media (prefers-reduced-motion: reduce){
  .nav_link{ transition: color .2s ease; }
  .nav_link:hover,
  .nav_link:focus-visible{ transform:none; }
}
.dot{
  position:relative;
  width:.5rem; height:.5rem;
  background:var(--c-grey-600);
  border-radius:50%;
  display:inline-block;
  flex:0 0 .5rem;
  pointer-events:auto;
}
.dot::before{
  content:"";
  position:absolute;
  inset:-8px -12px;
  border-radius:999px;
}
.dot:hover + .nav_link{
  color:var(--c-text-dark);
  transform:translateY(-3px);
}
.nav_link:has(+ .dot:hover){
  color:var(--c-text-dark);
  transform:translateY(-3px);
}

.site_header{position:relative;z-index:20}
.hero-section{position:relative;background:var(--c-bg-cream-1)}
.hero-section .container{position:relative;overflow:visible}
.hero-section .content-wrapper{position:relative}
.hero-section .main-content{
  position:relative;
  height:381px;
  z-index:0;
}

.hero-section .main-image{
  position:absolute;
  top:-223px;
  left:38%;
  transform:translateX(-35%);
  width:1268px;
  height:auto;
  object-fit:contain;
  pointer-events:none;
  z-index:25;
}

.hero-section .second-image {
  position: absolute;
  bottom: 78px;
  left: 84px;
  object-fit: contain;
  pointer-events: none;
  z-index: 10;
}

.hero-lang-toggle{
  position:absolute;
  bottom:78px;
  right:84px;
  width:200px;
  z-index:30;
  display:inline-block;
  line-height:0;
  cursor:pointer;
}
.hero-lang-toggle img{
  display:block;
  width:100%;
  height:auto;
  transform-origin:center;
  transform:scale(1);
  transition:transform .3s ease;
  will-change:transform;
}

@media (hover:hover){
  .hero-lang-toggle:hover img{ transform:scale(1.06); }
  .hero-lang-toggle:active img{ transform:scale(1.02); }
}

.hero-lang-toggle:focus-visible img{
  transform:scale(1.06);
  outline:none;
}

@media (max-width: 1435px) {
  .hero-section .main-image {
    width: 1148px;
  }

  .hero-section .main-content {
    height: 321px;
  }
}

@media (max-width: 1360px) {
  .hero-section .main-image {
    top: -263px;
    width: 1070px;
  }

  .hero-section .main-content {
    height: 243px;
  }

  .hero-section .second-image {
    width: 260px;
  }

  .nav_group {
    flex-direction: column;
    align-items: center;
  }

  .dot {
    display: none;
  }
  .hero-lang-toggle{ width:140px; }
}

@media (max-width: 1230px) {
  .hero-section .main-image {
    width: 970px;
  }

  .hero-section .main-content {
    height: 193px;
  }
}

@media (max-width: 1100px) {
  .nav {
    margin-top: 82px;
  }

  .hero-section .main-image {
    width: 874px;
    top: -218px;
  }

  .hero-section .main-content {
    height: 191px;
  }

  .hero-section .second-image {
    width: 179px;
    bottom: 28px;
  }

  .nav_link {
    font-size: 1.26rem;
  }
  .hero-lang-toggle{
    width:122px;
    bottom:28px;
  }
}

@media (max-width: 990px) {
  .hero-section .main-image {
    width: 788px;
  }

  .hero-section .main-content {
    height: 148px;
  }
}

@media (max-width: 900px) {
  .hero-section .main-image {
    width: 724px;
    top: -215px;
  }

  .hero-section .main-content {
    height: 119px;
  }
}
@media (max-width: 820px) {
  .hero-section .main-image {
    width: 637px;
    top: -196px;
  }

  .hero-section .main-content {
    height: 95px;
  }

  .nav {
    margin-top: 76px;
  }

  .nav_link {
    font-size: 1.06rem;
  }

  .hero-section .second-image {
    width: 148px;
    bottom: 10px;
  }
}

@media (max-width: 780px) {
  .hero-section .main-image {
    width: 576px;
  }

  .hero-section .main-content {
    height: 65px;
  }

  .hero-section .second-image {
    width: 125px;
    bottom: 10px;
  }
  .hero-lang-toggle{ width:84px; }
}

@media (max-width: 690px) {
  .hero-section .main-image {
    width: 526px;
    top: -175px;
  }

  .hero-section .main-content {
    height: 61px;
  }

  .nav {
    margin-top: 64px;
  }

  .nav_link {
    font-size: .86rem;
  }

  .hero-section .second-image {
    width: 129px;
    bottom: 0px;
  }
  .hero-lang-toggle{
    width:86px;
    bottom:0;
  }
}

@media (max-width: 618px) {
  .hero-section .main-image {
    width: 464px;
  }

  .hero-section .main-content {
    height: 30px;
  }

  .hero-section .second-image {
    width: 129px;
    left: auto;
    right: 0;
  }
  .hero-lang-toggle{
    width:86px;
    left:0;
    right:auto;
  }
}

@media (max-width: 549px) {
  .nav_link {
    font-size: .66rem;
  }
}

@media (max-width: 535px) {
  .hero-section .main-image {
    width: 400px;
    top: -143px;
  }

  .nav {
    margin-top: 33px;
  }
}

@media (max-width: 468px) {
  .hero-section .second-image {
    width: 98px;
  }
  .hero-lang-toggle{ width:66px; }
}

@media (max-width: 463px) {
  .hero-section .main-image {
    width: 340px;
    top: -140px;
}

    .hero-section .main-content {
        height: 4px;
    }

    .nav_link {
    font-size: .46rem;
  }

      .hero-section .second-image {
        width: 72px;
    }
    .hero-lang-toggle{ width:54px; }
}

@media (max-width: 383px) {
      .hero-section .main-image {
        width: 320px;
        top: -130px;
    }

}

@media (max-width: 350px) {
      .hero-section .main-image {
        width: 282px;
        top: -115px;
    }


    .nav {
        margin-top: 26px;
    }

    .nav_group {
      gap: 5px;
    }

    .hero-section .main-content {
        height: 0px;
    }
    .hero-lang-toggle{
    width:48px;         /* компактнее на самых узких */
  }
}

/* ===== ABOUT ===== */
.about_section{background:var(--c-text-dark)}
.about_container{padding-top:40px;padding-bottom:60px}
.about_title{margin:0 0 30px 20px;font:700 clamp(24px,5vw,56px)/1.1 Manrope,Helvetica,Arial,sans-serif;color:var(--c-bg-cream-2);letter-spacing:.02em}
.about_layout{display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,56px);max-width:1120px;margin:0 auto;padding-inline:0}

.about_carousel{
  --w:clamp(260px,36vw,520px);
  position:relative;
  width:var(--w);
  aspect-ratio:3/4;
  display:grid;place-items:center;
  perspective:1400px;
  user-select:none;touch-action:pan-y;
}
@media (max-width:960px){
  .about_carousel{
    width:100%;
    --w:min(420px,84vw);
    aspect-ratio:10/13;
    max-height:56vh;
    margin-inline:auto;
  }
}
@media (max-width:720px){
  .about_carousel{
    --w:min(340px,82vw);
    aspect-ratio:4/5;
    max-height:52vh;
  }
  .about_title{font-size:clamp(24px,7vw,40px)}
}
@media (max-width:560px){
  .about_carousel{
    --w:min(300px,80vw);
    aspect-ratio:5/6;
    max-height:48vh;
  }
}
@media (max-width:380px){
  .about_carousel{
    --w:86vw;
    aspect-ratio:4/5;
    max-height:46vh;
  }
}

.about_carousel .ac_track{position:relative;width:100%;height:100%;transform-style:preserve-3d}

.about_carousel .ac_slide{
  position:absolute;inset:0;border-radius:16px;overflow:hidden;
  background:linear-gradient(120deg,var(--c-deep-1) 0%,var(--c-deep-2) 100%);
  box-shadow:0 20px 38px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,255,255,.06);
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease;
  will-change:transform;backface-visibility:hidden;
}
.about_carousel .ac_slide img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:50% 18%;
  transform:translateZ(0);
}

.about_carousel .ac_slide[data-pos="0"]{z-index:5;transform:translate3d(0,0,0) scale(1)}
.about_carousel .ac_slide[data-pos="1"]{z-index:4;transform:translate3d(12%,2%,-140px) rotateY(-18deg) scale(.95);filter:brightness(.96) saturate(.94)}
.about_carousel .ac_slide[data-pos="-1"]{z-index:4;transform:translate3d(-12%,2%,-140px) rotateY(18deg) scale(.95);filter:brightness(.96) saturate(.94)}
.about_carousel .ac_slide[data-pos="2"]{z-index:3;transform:translate3d(24%,4%,-260px) rotateY(-26deg) scale(.9);filter:brightness(.92) saturate(.9)}
.about_carousel .ac_slide[data-pos="-2"]{z-index:3;transform:translate3d(-24%,4%,-260px) rotateY(26deg) scale(.9);filter:brightness(.92) saturate(.9)}

.about_carousel .ac_nav{display:none !important}

.about_carousel .ac_dots{position:absolute;bottom:-18px;left:50%;translate:-50% 0;display:flex;gap:8px}
.about_carousel .ac_dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.26);transition:transform .2s,background .2s}
.about_carousel .ac_dot.is-active{background:var(--c-white);transform:scale(1.2)}

.about_carousel.is-dragging .ac_slide{transition-duration:.2s}

@media (prefers-reduced-motion:reduce){
  .about_carousel .ac_slide{transition:none!important}
}

.about_carousel:hover .ac_slide[data-pos="0"]{
  transform: translate3d(0,-2px,0) scale(1.02);
  box-shadow:
    0 24px 46px rgba(0,0,0,.55),
    inset 0 0 0 1px rgba(255,255,255,.10),
    0 0 0 2px rgba(143,230,255,.12);
  pointer-events: none;
}
.about_carousel:hover .ac_slide[data-pos="0"] img{
  transform: scale(1.04) translateY(-2px);
  filter: saturate(1.04) contrast(1.02);
}
.about_carousel .ac_slide[data-pos="0"]::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(120% 100% at 50% 10%, rgba(255,255,255,.05), transparent 60%),
    radial-gradient(90% 100% at 50% 120%, rgba(0,0,0,.22), transparent 55%);
  opacity:0; transition:opacity .35s ease;
}
.about_carousel:hover .ac_slide[data-pos="0"]::before{ opacity:1; }

.about_facts{display:flex;flex-direction:column;gap:clamp(18px,3vw,32px)}
.experience{display:grid;grid-template-columns:minmax(86px,110px) 1fr;column-gap:48px;row-gap:10px;align-items:start}
.experience_number{display:flex;align-items:flex-start;gap:6px}
.experience_number .number{font-weight:500;color:var(--c-white);font-size:72px;line-height:.9}
.experience_number .unit{font-weight:500;color:var(--c-white);font-size:18px;line-height:1;letter-spacing:.01em;white-space:nowrap;margin-top:43px}
.experience_details{align-self:flex-start;display:flex;flex-direction:column}
.experience_details .subtitle{margin:43px 0 10px;font-weight:700;color:var(--c-bg-cream-2);font-size:16px;text-transform:uppercase;letter-spacing:.06em;line-height:1.15}
.experience_details .description{font-weight:500;color:var(--c-grey-300);font-size:16px;line-height:20.8px}

.download_button,.download_button:link,.download_button:visited{display:inline-block;margin-top:clamp(10px,2vw,24px);text-align:center;padding:14px 18px;background:var(--c-bg-cream-2);color:var(--c-text-dark);border:0;border-radius:8px;font:600 14px/1 Manrope,Helvetica,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .25s,opacity .25s,box-shadow .25s,background-color .25s,color .25s;box-shadow:0 4px 14px rgba(0,0,0,.25);width:auto;max-width:100%;white-space:nowrap}
.download_button:hover{transform:translateY(-1px);background:var(--c-accent-teal-1);color:var(--c-bg-cream-2);box-shadow:0 8px 22px rgba(0,0,0,.35)}
.download_button:active{transform:translateY(0);opacity:.92;background:var(--c-accent-teal-2)}
.download_button:focus-visible{outline:2px solid var(--c-accent-cyan);outline-offset:2px}

@media (max-width:960px){
  .about_layout{flex-direction:column;align-items:center;gap:28px;max-width:720px}
  .download_button{width:100%}
  .about_carousel .ac_slide[data-pos="1"]{transform:translate3d(9%,1.2%,-120px) rotateY(-15deg) scale(.95)}
  .about_carousel .ac_slide[data-pos="-1"]{transform:translate3d(-9%,1.2%,-120px) rotateY(15deg) scale(.95)}
  .about_carousel .ac_slide[data-pos="2"]{transform:translate3d(18%,3%,-210px) rotateY(-20deg) scale(.9)}
  .about_carousel .ac_slide[data-pos="-2"]{transform:translate3d(-18%,3%,-210px) rotateY(20deg) scale(.9)}
}
@media (max-width:560px){
  .about_layout{flex-direction:column;align-items:center;gap:24px;max-width:100%;padding-inline:16px}
  .about_facts{width:100%}
  .experience{grid-template-columns:1fr;grid-template-areas:"num" "details";column-gap:0;row-gap:8px;align-items:start}
  .experience_number{grid-area:num;display:flex;align-items:baseline;gap:14px}
  .experience_number .number{font-size:44px;line-height:1}
  .experience_number .unit{margin:0;font-size:14px;white-space:nowrap}
  .experience_details{grid-area:details}
  .experience_details .subtitle{margin:4px 0 6px;font-size:15px;line-height:1.25;word-break:break-word}
  .experience_details .description{font-size:14px;line-height:1.5;word-break:break-words}
  .download_button{width:100%;margin-left:0}

  /* ещё компактнее боковые */
  .about_carousel .ac_slide[data-pos="1"]{transform:translate3d(7%,1%,-105px) rotateY(-13deg) scale(.94)}
  .about_carousel .ac_slide[data-pos="-1"]{transform:translate3d(-7%,1%,-105px) rotateY(13deg) scale(.94)}
  .about_carousel .ac_slide[data-pos="2"]{transform:translate3d(14%,2.5%,-190px) rotateY(-18deg) scale(.88)}
  .about_carousel .ac_slide[data-pos="-2"]{transform:translate3d(-14%,2.5%,-190px) rotateY(18deg) scale(.88)}
}
@media (max-width:380px){
  .experience_number .number{font-size:38px}
  .experience_details .subtitle{font-size:14px}
}

/* ===== TV HERO ===== */
.tvHero{background:var(--c-bg-cream-1); position:relative;}
.tvHero__container{ padding-top:clamp(20px,4vw,20px); padding-bottom:clamp(12px,4vw,20px); }

.tvHero__title{
  text-align:center; color:var(--c-text-dark); font-weight:700; text-transform:uppercase;
  letter-spacing:.005em; line-height:1.2; font-size:clamp(18px,2.6vw,42px);
  text-wrap:balance;
}
.tvHero__title>span{display:block}
.tvHero__title>span+span{margin-top:.02em}

.tvHero__wrap{
  position:relative; width:clamp(286px,42vw,820px); margin:clamp(16px,4vw,12px) auto 0;
}

.tvHero__tv{
  display:block; width:100%; height:auto; object-fit:contain;
  filter:drop-shadow(0 10px 28px rgba(0,0,0,.16));
  pointer-events:none; position:relative; z-index:2;
}

/* Экран */
.tvHero__screen{
  --screen-left:   4.6%;
  --screen-top:   10.8%;
  --screen-width: 72.2%;
  --screen-height:71.6%;
  --load-dx: 0px; --load-dy: 0px;

  position:absolute; z-index:1;
  left:var(--screen-left); top:var(--screen-top);
  width:var(--screen-width); height:var(--screen-height);
  border-radius:min(24px,2.6vw); overflow:hidden; background:var(--c-black);
}
.tvHero__video{ width:100%; height:100%; display:block; object-fit:cover; }
.tvFx{ position:absolute; inset:0; pointer-events:none; }
.tvFx--scan{
  opacity:0; transition:opacity .25s ease;
  background:repeating-linear-gradient(to bottom,
    rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 1px, transparent 2px);
  mix-blend-mode:screen;
}
.tvHero__wrap.is-playing .tvFx--scan{ opacity:.28; }

.tvFx--loading, .tvFx--nosignal{ display:none; align-items:center; justify-content:center; }
.tvHero__wrap.is-loading .tvFx--loading{ display:flex; background:rgba(0,0,0,.55); }
.tvHero__wrap.is-nosignal .tvFx--nosignal{
  display:flex;
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.03) 0 2px, transparent 2px 4px),
    #111;
}
.tvLoad{ display:flex; align-items:baseline; gap:.6ch; transform:translate(var(--load-dx),var(--load-dy)); }
.tvLoad__text{
  font:700 clamp(16px,2.2vw,24px)/1.1 Manrope,system-ui,sans-serif;
  letter-spacing:.28em; color:var(--c-grey-200); text-shadow:0 0 18px rgba(255,255,255,.18);
}
.tvDots{ display:inline-flex; gap:.4ch; }
.tvDots i{
  width:.5ch; height:.5ch; border-radius:50%;
  background:var(--c-grey-200); opacity:.2; transform:translateY(0);
  animation:tvDot 1.2s infinite ease-in-out;
}
.tvDots i:nth-child(2){ animation-delay:.2s; }
.tvDots i:nth-child(3){ animation-delay:.4s; }
@keyframes tvDot{
  0%,20%{ opacity:.2; transform:translateY(0) }
  50%   { opacity:1;  transform:translateY(-1px) }
  100%  { opacity:.2; transform:translateY(0) }
}

.tvFx--off{ display:none; background:var(--c-black); }
.tvHero__wrap.is-off .tvFx--off{ display:block; }
.tvHero__wrap.is-off .tvFx--off::before{
  content:""; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:80%; height:8%;
  background:rgba(255,255,255,.9);
  box-shadow:0 0 18px rgba(255,255,255,.6), 0 0 64px rgba(255,255,255,.25);
  border-radius:50%; animation:crtOff .7s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes crtOff{ 0%{width:80%;height:8%;opacity:1} 55%{width:8%;height:8%;opacity:1} 100%{width:0;height:0;opacity:0} }

.tvLed{
  position:absolute; z-index:4;
  top:9.9%; right:6.1%;
  width:12px; height:12px; border-radius:50%;
  background:radial-gradient(50% 50% at 50% 50%, var(--c-red) 0 45%, var(--c-red-dark) 60% 100%);
  box-shadow:0 0 0 0 rgba(255,48,48,.0);
  opacity:0; transition:opacity .2s ease;
}
.tvHero__wrap.is-playing .tvLed{ opacity:1; animation:ledPulse 1.1s ease-in-out infinite; }
@keyframes ledPulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(255,48,48,.55) } 50%{ box-shadow:0 0 14px 4px rgba(255,48,48,.55) } }

.tvBtns{
  position:absolute; z-index:4;
  right:4.2%; bottom:17.8%;
  width:133px;
  display:flex; justify-content:space-between; align-items:center;
}

.tvBtn{
  position:relative;
  width: 38px;
  height: 29px;
  border-radius:6px; display:grid; place-items:center;
  cursor:pointer; outline:none;
  background:linear-gradient(var(--c-grey-750),var(--c-grey-900));
  border:1px solid rgba(0,0,0,.65);
  box-shadow:0 2px 6px rgba(0,0,0,.45),
             inset 0 1px 1px rgba(255,255,255,.12),
             inset 0 -2px 3px rgba(0,0,0,.6);
  transition:transform .08s ease, background .12s ease, box-shadow .12s ease;
}
.tvBtn:hover{ transform:translateY(-1px); background:linear-gradient(var(--c-grey-700),var(--c-grey-800)); }
.tvBtn:active{ transform:translateY(0); }
.tvBtn svg{ width:60%; height:60%; fill:var(--c-white); opacity:.95; }

.tvBtn__label{
  position:absolute; right:calc(100% + 10px); top:50%; transform:translateY(-50%);
  white-space:nowrap; padding:.38em .6em; border-radius:10px;
  background:rgba(24,26,28,.92); color:var(--c-white); font-weight:700; font-size:.86rem;
  box-shadow:0 6px 16px rgba(0,0,0,.25);
  opacity:0; pointer-events:none; transition:opacity .15s ease, transform .15s ease;
  transform-origin:right center;
}
.tvBtn--next:hover .tvBtn__label,
.tvBtn--next:focus-visible .tvBtn__label,
.tvHero__wrap.show-hint .tvBtn--next .tvBtn__label{
  opacity:1; transform:translate(-2px,-50%);
}

@media (max-width:1797px){
  .tvBtns {
    width: 122px;
  }

  .tvBtn {
    width: 33px;
    height: 22px;
  }
}

@media (max-width:1660px){
  .tvBtns {
    width: 113px;
  }
}

@media (max-width:1473px){
  .tvBtns {
    width: 99px;
  }
}

@media (max-width:1326px){
  .tvBtns {
    width: 86px;
  }

  .tvBtn {
    width: 25px;
    height: 19px;
  }

  .tvLed {
    width: 8px;
    height: 8px;
    right: 5.9%;
  }
}

@media (max-width:1186px){
  .tvBtns {
    width: 83px;
  }
}

@media (max-width:1105px){
  .tvBtns {
    width: 76px;
  }

  .tvBtn {
    width: 23px;
    height: 18px;
  }

  .tvLed {
    width: 8px;
    height: 8px;
    right: 5.9%;
  }
}

@media (max-width:1012px){
  .tvBtns {
    width: 72px;
  }

  .tvBtn {
    width: 23px;
    height: 16px;
  }

  .tvLed {
    width: 8px;
    height: 8px;
    right: 5.9%;
  }
}

@media (max-width:925px){
  .tvBtns {
    width: 64px;
  }

  .tvBtn {
    width: 18px;
    height: 14px;
  }
}

@media (max-width:845px){
  .tvBtns {
    width: 61px;
  }
}

@media (max-width:793px){
  .tvBtns {
    width: 57px;
  }

  .tvLed {
        width: 4px;
        height: 4px;
        right: 5.9%;
    }
}

@media (max-width:589px){
  .tvBtns {
    width: 55px;
    right: 3.2%;
  }

  .tvBtn {
    height: 12px;
  }

}


/* ===== CLIENTS (stable) ===== */
.clients_section{background:var(--c-text-dark);margin:0;padding:0;position:relative;overflow:hidden;margin-top:-1px}
.clients_container{padding-top:50px;padding-bottom:20px}

.clients_header{
  display:flex;align-items:flex-start;flex-wrap:nowrap;gap:94px;margin:0
}
.clients__title{
  max-width:800px;margin:0 0 0 20px;
  color:var(--c-bg-cream-2);font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;
  font-weight:500;font-size:clamp(28px,4.8vw,56px);line-height:1.2;letter-spacing:-.02em;text-transform:uppercase
}
.clients__subtitle{
  width:380px;margin:6px 0 0;flex-shrink:0;
  color:var(--c-bg-cream-2);font:500 18px/1.3 Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;opacity:.92
}

.clients_fullbleed{
  position:relative;background:var(--c-text-dark);
  width:calc(100dvw + 1px);
  margin-left:calc(50% - 50dvw - .5px);
  margin-right:calc(50% - 50dvw - .5px)
}
@supports not (width:100dvw){
  .clients_fullbleed{
    width:calc(100vw + 1px);
    margin-left:calc(50% - 50vw - .5px);
    margin-right:calc(50% - 50vw - .5px)
  }
}

.clients_marquee{
  position:relative;overflow:hidden;isolation:isolate;padding:52px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,var(--c-black) 6%,var(--c-black) 94%,transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,var(--c-black) 6%,var(--c-black) 94%,transparent 100%)
}
.clients_track{display:flex;align-items:center;gap:clamp(36px,7vw,120px);will-change:transform}

.clients__logo{
  background:transparent;border:0;padding:0;cursor:pointer;
  display:inline-flex;align-items:center;
  color:var(--c-grey-325);opacity:.85;white-space:nowrap;
  font:400 clamp(16px,2.5vw,32px)/1 Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;
  transition:opacity .25s ease,transform .25s ease,color .25s ease
}
.clients__logo:hover,
.clients__logo:focus-visible{color:var(--c-bg-cream-2);opacity:1;transform:translateY(-1px)}
.clients__logo:focus-visible{outline:2px solid var(--c-bg-cream-2);outline-offset:2px}

@media (max-width:900px){
  .clients_header{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    gap:16px;
  }
  .clients__title{
    margin:20px;
  }
  .clients__subtitle{
    flex-basis:100%;
    width:auto;
    white-space:normal;
  }
}

@media (max-width:600px){
  .clients__subtitle{
    margin:0 auto;
  }
  .clients__title{
    font-size:clamp(24px,7vw,40px);
  }
}

.features_section {
  padding-bottom: 30px;
}
.features__title{
  font-family:Manrope,sans-serif;font-weight:500;
  font-size:clamp(28px,4.8vw,56px);line-height:1.37;
  letter-spacing:-.025em;text-transform:uppercase;
  color:var(--c-text-dark);margin:0 0 30px 20px;
}
.features_grid{
  list-style:none;margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(260px,1fr));
  gap:clamp(24px,5vw,72px);
  align-items:start;
  justify-items:center;
}
.feature_item{
  display:flex;flex-direction:column;
  align-items:center;text-align:center;
}
.features__text{
  font-family:Manrope,sans-serif;font-weight:500;
  font-size:clamp(16px,2vw,24px);
  line-height:1.35;text-transform:uppercase;color:var(--c-black);
  margin:0 0 18px;
  min-height:clamp(3.6em,3.2em + 0.6vw,4.8em);
  text-wrap:balance;
  hyphens:auto;
}
.feature_media{
  display:flex;align-items:center;justify-content:center;
  width:clamp(180px,14vw,260px);
  height:clamp(180px,14vw,260px);
  padding:6%;box-sizing:border-box;overflow:hidden;
  background:none;border:0;border-radius:0;opacity:1;
}
.feature_media>img,.feature_media>svg{
  display:block;max-width:100%;max-height:100%;
  width:auto;height:auto;object-fit:contain;
  transform-origin:center;transform:scale(1);
  transition:transform .3s ease;
  cursor: pointer;
}
.feature_media>svg *{vector-effect:non-scaling-stroke}
.feature_item:hover .feature_media>img,
.feature_item:hover .feature_media>svg{transform:scale(1.06)}
@media (max-width:1220px){
  .features_grid{grid-template-columns:repeat(2,minmax(260px,1fr))}
  .features_grid>li:nth-child(3){grid-column:1/-1;justify-self:center;max-width:min(560px,92%)}
  .features__text{min-height:clamp(4.2em,3.6em + 1vw,5.2em)}
}
@media (max-width:900px){
  .features_grid{gap:clamp(20px,4.5vw,56px)}
}
@media (max-width:700px){
  .features_grid{grid-template-columns:1fr;gap:clamp(24px,7vw,72px)}
  .features_grid>li:nth-child(3){grid-column:auto;max-width:100%}
  .features__text{
    min-height:0;
    font-size: clamp(18px, 4.2vw, 28px);
    line-height:1.28;
    max-width:26ch;
    margin:0 0 12px;
  }
  .feature_media{
    width: clamp(140px, 50vw, 200px);
    height: clamp(140px, 50vw, 200px);
  }
  .features__title{font-size:clamp(24px,7vw,40px)}
}
@media (max-width:420px){
  .features__text{
    font-size: clamp(18px, 2vw, 26px);
    max-width:24ch;
  }
}

/* ===== TESTIMONIALS ===== */
.testimonials_section{background:var(--c-text-dark)}
.testimonials_container{padding-top:72px;padding-bottom:88px}
.section_header{text-align:center;position:relative;margin:0 0 36px}
.section_title{font-family:Manrope,sans-serif;font-weight:500;font-size:clamp(26px,5vw,80px);letter-spacing:-.02em;line-height:1.2;color:var(--c-bg-cream-2);margin:0 0 24px;position:relative}
.section_title::after{content:"";position:absolute;bottom:-16px;left:50%;margin-bottom: 10px;transform:translateX(-50%);width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--c-bg-cream-2),transparent)}
.section_subtitle{font-size:1.125rem;color:var(--c-grey-350);font-weight:300;max-width:600px;margin:24px auto 0;line-height:1.8}
.testimonials_grid{list-style:none;margin:40px 0 0;padding:0;display:grid;gap:32px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.testimonials_grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media (max-width:560px){.testimonials_grid{grid-template-columns:1fr;gap:16px}}
.testimonial_card{position:relative;display:flex;flex-direction:column;gap:12px;padding:32px;background:rgba(255,255,255,.015);border:1px solid rgba(158,160,161,.25);border-radius:6px;transition:transform .25s ease;box-shadow:none}
.testimonial_card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(45deg,var(--c-bg-cream-2)1a,#9ea0a11a,var(--c-bg-cream-2)1a);z-index:-1;opacity:0;transition:opacity .35s ease}
.testimonial_card:hover{transform:translateY(-2px)}
.testimonial_card:hover::after{opacity:.6}
.quote_mark{font-size:2rem;color:var(--c-grey-600);line-height:1;margin-bottom:20px;font-family:Georgia,serif;opacity:.6}
.testimonial_text{font-size:.9375rem;line-height:1.65;margin:0 0 18px;color:var(--c-bg-cream-2);opacity:.9;font-style:italic;font-weight:300;flex-grow:1}
.testimonial_author{display:flex;align-items:center;gap:14px;padding-top:16px;border-top:1px solid rgba(158,160,161,.24);margin-top:auto}
.author_avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(45deg,var(--c-grey-350),var(--c-bg-cream-2));display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--c-text-dark);font-weight:500}
.author_info h4{font-size:1rem;font-weight:500;color:var(--c-bg-cream-2);margin:0 0 2px}
.author_info p{font-size:.8125rem;color:var(--c-grey-350);font-weight:300;margin:0}
@media (max-width:810px){
  .testimonials_grid{
    grid-template-columns: 1fr;
  }
  .section_subtitle {
    font-size: 1rem;
  }
}
@media (max-width:450px) {
  .author_info h4 {
    font-size: 0.7rem;
  }
}
@media (max-width:560px){.testimonial_card{padding:16px}.section_subtitle{padding:0 16px}}

/* ===== MEDIA HUB ===== */
.mediaHub{background:var(--c-bg-cream-1)}
.mediaHub__container{
  margin:40px auto;
  display:grid;
  grid-template-columns:max-content 1fr;
  gap:clamp(24px,5vw,56px);
  align-items:start;
}
.mediaHub__aside{position:sticky; top:24px; align-self:start}

/* === TABS: перенос включён всегда === */
.mediaHub__tabs{
  display:flex;
  flex-direction:column;        /* как в сайдбаре */
  flex-wrap:wrap;               /* разрешаем перенос на новые колонки/строки */
  gap:10px;
  align-items:flex-start;
  align-content:flex-start;     /* новые колонки “прилипают” к началу */
  max-width:100%;
  overflow:visible;             /* без горизонтального скролла */
}
.mediaHub__tab{
  appearance:none; border:0; background:transparent; cursor:pointer; padding:0; margin:0;
  font-weight:700; text-transform:uppercase; letter-spacing:-.02em; line-height:.92; white-space:nowrap;
  color:var(--c-grey-400); transition:color .25s ease, font-size .25s ease, opacity .25s ease;
  flex:0 0 auto;               /* не растягивать кнопки */
}
.mediaHub__aside > .mediaHub__tabs{
  max-height:72vh;             /* при избытке высоты начнётся перенос во 2+ колонку */
}
.mediaHub__aside > .mediaHub__tabs .mediaHub__tab{
  font-size:clamp(28px,5vw,64px);
}
.mediaHub__tab:hover,
.mediaHub__tab:focus-visible{color:var(--c-text-dark); outline:none}
.mediaHub__tab.is-active{color:var(--c-text-dark); font-size:clamp(36px,6.5vw,96px)}

.mediaHub__tabs--tags{
  margin-top:6px;
  flex-wrap:wrap;              /* перенос для тегов */
  align-content:flex-start;
}
.mediaHub__tabs--tags .mediaHub__tab{
  font-size:clamp(24px,4.5vw,54px);
  opacity:.8;
}
.mediaHub__tabs--tags .mediaHub__tab.is-active{
  font-size:clamp(28px,5.6vw,72px);
  opacity:1;
}
.mediaHub__aside > .mediaHub__tabs .mediaHub__tab.is-active{
  font-size: clamp(36px, 6.5vw, 96px);
}
.mediaHub__aside > .mediaHub__tabs--tags .mediaHub__tab.is-active{
  font-size: clamp(28px, 5.6vw, 72px);
}

@media (max-width:1050px){
  .mediaHub__container{grid-template-columns:1fr}
  .mediaHub__aside{position:static; order:-1; margin-bottom:8px}

  /* на узких — в строку, с переносом и центрированием */
  .mediaHub__tabs{
    flex-direction:row;
    flex-wrap:wrap;
    gap:clamp(12px,3vw,24px);
    row-gap:clamp(10px,2.5vw,18px);
    justify-content:center;
    align-items:center;
    overflow:visible;
  }

  /* размеры на мобильных остаются как у тебя */
  .mediaHub__aside > .mediaHub__tabs .mediaHub__tab{ 
    font-size:clamp(22px,2vw,42px);
  }
  .mediaHub__aside > .mediaHub__tabs .mediaHub__tab.is-active{ 
    font-size:clamp(28px,7.2vw,56px);
  }

  .mediaHub__tabs--tags .mediaHub__tab{ 
    font-size:clamp(20px,5vw,36px);
  }
  .mediaHub__tabs--tags .mediaHub__tab.is-active{ 
    font-size:clamp(22px,6vw,44px);
  }
}

.mhSection{display:block}
.mhSection[hidden]{display:none!important}
.mhSection__head{display:flex; align-items:center; justify-content:flex-end; gap:16px; margin-bottom:14px}
.mhSection__all{
  display:inline-flex; align-items:center; gap:10px; min-height:42px; padding:10px 14px;
  border-radius:10px; background:var(--c-accent-teal-1); color:var(--c-bg-cream-2); text-decoration:none;
  font:700 13px/1 Manrope,system-ui,sans-serif; text-transform:uppercase; letter-spacing:.04em;
  box-shadow:0 6px 14px rgba(0,0,0,.22); transition:transform .2s ease, background-color .2s ease, box-shadow .2s ease, opacity .2s ease;
  margin-top: 10px;
}
.mhSection__all:hover{transform:translateY(-2px); background:var(--c-accent-teal-2); box-shadow:0 10px 22px rgba(0,0,0,.28)}
.mhSection__all .mhArrow{transition:transform .2s ease}
.mhSection__all:hover .mhArrow{transform:translateY(-2px)}

.mhGrid{margin:0; padding:0; display:grid; gap:clamp(14px,2vw,20px)}
.mhGrid--photos{
  display:block; column-count:2; column-gap:clamp(14px,2vw,20px);
}
.mhGrid--photos .mhCard{
  display:block; width:100%; margin:0 0 clamp(14px,2vw,20px); break-inside:avoid;
}
.mhGrid--videos{
  display:block; column-count:2; column-gap:clamp(14px,2vw,20px);
}
.mhGrid--videos .mhCard{
  display:block; width:100%; margin:0 0 clamp(14px,2vw,20px); break-inside:avoid;
}

.mhCard{
  position:relative; overflow:hidden; border-radius:14px;
  box-shadow:0 10px 24px rgba(0,0,0,.14); background:var(--c-text-dark);
}
.mhGrid--photos .mhCard{aspect-ratio:var(--ar, 4/3)}
.mhGrid--photos .mhCard.is-landscape{ --ar:16/10 }
.mhGrid--photos .mhCard.is-portrait { --ar:3/4 }
.mhGrid--photos .mhCard.is-square   { --ar:1/1 }

.mhCard img{
  display:block; width:100%; height:100%; object-fit:cover;
  filter:grayscale(1) contrast(.96) brightness(.96);
  transition:transform .35s ease, filter .35s ease, opacity .35s ease;
}
.mhCard:hover img, .mhCard:focus-within img{transform:scale(1.03); filter:none}

.mhCard--video{cursor:pointer; aspect-ratio:16/9}
.mhCard--video.is-portrait{aspect-ratio:9/16; width:86%; margin-left:7%}
.mhCard--video .mhVideo{
  width:100%; height:100%; object-fit:cover; display:block;
  filter:grayscale(1) contrast(.96) brightness(.96); transition:filter .25s ease;
}
.mhCard--video.is-playing .mhVideo{filter:none}
.mhPlayBtn{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:58px; height:58px; border-radius:50%; border:0; cursor:pointer;
  background:var(--c-white); box-shadow:0 10px 24px rgba(0,0,0,.24);
  transition:opacity .2s ease, transform .2s ease; outline:none;
}
.mhPlayBtn::after{
  content:""; position:absolute; left:50%; top:50%; transform:translate(-40%,-50%);
  width:0; height:0; border-left:16px solid var(--c-accent-teal-1); border-top:10px solid transparent; border-bottom:10px solid transparent;
}
.mhCard--video.is-playing .mhPlayBtn{opacity:0; transform:translate(-50%,-50%) scale(.9); pointer-events:none}

@media (max-width:680px){
  .mhGrid--photos{ column-count:1; }
  .mhGrid--videos{
    column-count:initial; display:grid; grid-template-columns:1fr; justify-items:center; gap:clamp(14px,5vw,20px)
  }
  .mhGrid--videos .mhCard{width:min(100%,560px); margin:0}
  .mhGrid--videos .mhCard.is-portrait{width:min(92%,420px)}
  .mhSection__all{width:100%; justify-content:center}
}


/* ===== CTA + FORM ===== */
.cta_section{background:var(--c-text-dark);margin-top:-2px;}
.cta_container{position:relative;padding-top:calc(clamp(48px,10vw,100px)* .8 + clamp(24px,6vw,64px));padding-left:clamp(16px,4vw,40px);padding-right:clamp(16px,4vw,40px)}
.cta__title{position:absolute;top:-9px;left:clamp(16px,4vw,40px);right:clamp(16px,4vw,40px);margin:0;padding:0;font-family:Manrope,sans-serif;font-size:clamp(10px,8vw,100px);font-weight:500;line-height:.8;color:var(--c-bg-cream-2);text-align:left;}
.contact-form{width:100%;max-width:720px;margin:0 0 0 auto;display:grid;grid-template-columns:1fr;row-gap:24px}
.contact-form .form_row>label{display:block;margin:0 0 6px;font:500 16px/1.35 Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--c-grey-150);opacity:.92}
.form__input{font-family:Manrope,sans-serif;font-size:20px;font-weight:500;line-height:1.366;color:var(--c-bg-cream-2);background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.28);width:100%;padding:0 0 10px;outline:none;transition:border-color .25s ease,color .25s ease,background-color .25s ease}
.form__input::placeholder{color:var(--c-grey-350);opacity:.9}
.form__input:focus{border-bottom-color:var(--c-bg-cream-2)}
.form__input.field_error{border-bottom-color:var(--c-error)!important}
textarea.form__input{min-height:110px;resize:vertical}
select.form__input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23fffaf2' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 6px center;padding-right:32px;cursor:pointer}
select.form__input:invalid{color:var(--c-grey-350)}
select.form__input option{color:var(--c-text-dark);background:var(--c-bg-cream-1);font-weight:500}
@-moz-document url-prefix(){select.form__input:focus{outline:none}}
.form_row.has-error .form__input{outline:2px solid var(--c-error);outline-offset:2px}
.form_err{margin-top:6px;font-size:12px;color:var(--c-error);min-height:1em}
.btn_submit{width:327px;height:58px;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;background:var(--c-bg-cream-2);color:var(--c-text-dark);text-transform:uppercase;border:none;border-radius:8px;padding:16px 28px;font:700 14px/1 Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;letter-spacing:.04em;box-shadow:0 4px 14px rgba(0,0,0,.25);cursor:pointer;transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease}
.btn_submit:not([disabled]):not([aria-disabled="true"]):hover{transform:translateY(-1px);background:var(--c-accent-teal-1);color:var(--c-bg-cream-2);box-shadow:0 8px 22px rgba(0,0,0,.35)}
.btn_submit:not([disabled]):not([aria-disabled="true"]):active{transform:translateY(0);opacity:.92;background:var(--c-accent-teal-2)}
.btn_submit:focus-visible{outline:2px solid var(--c-accent-cyan);outline-offset:2px}
.btn_submit[disabled],.btn_submit[aria-disabled="true"]{opacity:.6;cursor:default;transform:none;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.btn_submit.is-loading{position:relative;pointer-events:none}
.btn_submit.is-loading::after{content:"";position:absolute;right:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;border:2px solid rgba(0,0,0,.18);border-top-color:currentColor;animation:spin .8s linear infinite}
@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}
.form_notice{margin-bottom:8px;padding:12px 14px;border-radius:10px;font:700 14px/1.2 Manrope,system-ui,sans-serif;background:rgba(255,255,255,.12);color:var(--c-bg-cream-2);border:1px solid rgba(255,255,255,.2);transform:translateY(-8px);opacity:0}
.form_notice.is-success{background:rgba(40,167,69,.18);border-color:rgba(40,167,69,.5)}
.form_notice.is-error{background:rgba(217,48,37,.18);border-color:rgba(217,48,37,.55)}
.form_notice.is-visible{animation:notice-in .32s cubic-bezier(.2,.8,.2,1) forwards}
.form_notice.leaving{animation:notice-out .22s ease forwards}
@keyframes notice-in{from{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes notice-out{from{transform:translateY(0);opacity:1}to{transform:translateY(-8px);opacity:0}}
.form_notice.is-error.is-visible{animation:notice-in .32s cubic-bezier(.2,.8,.2,1),shake .36s ease .08s 1}
@keyframes shake{10%{transform:translateY(0) translateX(-2px)}30%{transform:translateY(0) translateX(2px)}50%{transform:translateY(0) translateX(-2px)}70%{transform:translateY(0) translateX(2px)}100%{transform:translateY(0) translateX(0)}}
@media (max-width:900px){.contact-form{max-width:none;margin:0}.cta__title{text-align:center;top:-4px}.btn_submit{width:100%}}

.select{position:relative}
.select[data-enhanced="1"]>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.select__button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:0 0 10px;border:none;border-bottom:1px solid rgba(255,255,255,.28);background:transparent;color:var(--c-bg-cream-2);font:500 20px/1.366 Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;cursor:pointer}
.select__button:focus-visible{outline:none;border-bottom-color:var(--c-bg-cream-2)}
.select__arrow{width:18px;height:18px;flex:0 0 18px;opacity:.9}
.select__panel{position:absolute;left:0;right:0;top:calc(100% + 8px);background:var(--c-bg-cream-1);color:var(--c-text-dark);border-radius:6px;box-shadow:0 12px 28px rgba(0,0,0,.28);max-height:260px;overflow:auto;padding:6px;z-index:30;display:none}
.select__panel.open{display:block}
.select__option{display:block;width:100%;padding:10px 12px;background:transparent;border:none;text-align:left;font:600 16px/1.4 Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--c-text-dark);cursor:pointer;border-radius:4px}
.select__option:hover,.select__option[aria-selected="true"]{background:rgba(3,14,18,.06)}

.form__input:-webkit-autofill,
.form__input:-webkit-autofill:hover,
.form__input:-webkit-autofill:focus,
.form__input:-webkit-autofill:active{
  -webkit-box-shadow:0 0 0 1000px var(--c-text-dark) inset;
  box-shadow:0 0 0 1000px var(--c-text-dark) inset;
  -webkit-text-fill-color:var(--c-bg-cream-2);
  caret-color:var(--c-bg-cream-2);
  border-bottom-color:rgba(255,255,255,.28)
}

/* ===== FOOTER ===== */
.site_footer{background:var(--c-text-dark);}

.footer_container{
  display:grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap:clamp(24px,6vw,120px);
  align-items:start;
  padding-top:clamp(32px,6vw,72px);
  padding-bottom:clamp(32px,6vw,72px);
}

.footer_left{min-width:0}

.footer_contact,.footer_contact:link,.footer_contact:visited{color:var(--c-bg-cream-2);text-decoration:none}

.footer__email,
.footer__phone{
  overflow-wrap:anywhere;
  word-break:break-word;
}

.footer__email{
  display:inline-block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:clamp(22px, 3.8vw, 72px);
  line-height:1;
  letter-spacing:.02em;
  background-image:linear-gradient(currentColor,currentColor);
  background-repeat:no-repeat;
  background-position:left 100%;
  background-size:0 2px;
  transition:background-size .25s ease,opacity .25s ease,transform .25s ease,color .25s ease;
}
.footer__email:hover{background-size:100% 2px}

.footer_phone_row{margin-top:clamp(12px,2.5vw,24px);max-width:720px}
.footer__phone{
  display:inline-block;font-family:Manrope,sans-serif;font-weight:400;text-transform:uppercase;
  font-size:clamp(24px,3.5vw,44px);line-height:1.05;
  background-image:linear-gradient(currentColor,currentColor);
  background-repeat:no-repeat;background-position:left 100%;background-size:0 2px;
  transition:background-size .25s ease,opacity .25s ease,transform .25s ease;
}
.footer__phone:hover{background-size:100% 2px}

.footer_social{list-style:none;margin:clamp(18px,3vw,28px) 0 0;padding:0;display:flex;gap:clamp(18px,4vw,36px);align-items:center;flex-wrap:wrap}
.footer_social_link{display:inline-flex;align-items:center;gap:12px;color:var(--c-grey-225);text-decoration:none;font:500 22px/1.2 Manrope,sans-serif;transition:opacity .2s ease,transform .2s ease,color .2s ease}
.footer_social_link:hover{opacity:.95;transform:translateY(-1px);color:var(--c-bg-cream-2)}
.social_ico{width:28px;height:28px;flex:0 0 28px;color:var(--c-bg-cream-2)}
.social_ico--fill *{ fill:currentColor; stroke:none; }

.footer_credit{margin-top:clamp(18px,3vw,30px);display:flex;align-items:center;gap:12px;color:var(--c-grey-250);font:500 16px/1.35 Manrope,sans-serif;transition:color .25s ease,transform .25s ease}
.footer_credit:hover{color:var(--c-grey-150);transform:translateY(-1px)}
.credit_logo{height:36px;width:auto;flex:0 0 auto;display:inline-block;vertical-align:middle;filter:brightness(0) invert(1);opacity:.95;transition:transform .25s ease,filter .25s ease,opacity .25s ease}
@media (max-width:600px){.credit_logo{height:28px}}
.credit_link,.credit_link:link,.credit_link:visited{color:var(--c-bg-cream-2);text-decoration:none;font-weight:700;position:relative;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:left 100%;background-size:0 2px;transition:color .25s ease,background-size .25s ease}
.credit_link:hover,.footer_credit:hover .credit_link{background-size:100% 2px;color:var(--c-bg-cream-2)}

.footer_btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:16px 28px;
  min-height:58px;
  width:clamp(220px, 26vw, 327px);
  text-decoration:none;text-align:center;white-space:nowrap;
}

.footer_right{align-self:end;justify-self:end}

@media (max-width:1040px){
  .footer_btn{width:100%}
  .footer_right{justify-self:stretch}
}
@media (max-width:900px){
  .footer_container{grid-template-columns:1fr}
  .footer_right{
    order: 2;
    justify-self:stretch;
    margin-top: clamp(16px, 4vw, 24px);
  }
}

@media (max-width:520px){
  .footer__email{ font-size:clamp(18px, 6vw, 28px); }
}


/* ===== CLIENT MODAL ===== */
.cmodal[hidden]{display:none}

.cmodal{
  position:fixed; inset:0; z-index:1000;
}

.cmodal__backdrop{
  position:absolute; inset:0;
  background:rgba(3,14,18,.62);
  backdrop-filter:blur(6px);
}

.cmodal__dialog{
  position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(720px, calc(100vw - 32px));
  max-height:calc(100vh - 32px);
  overflow:auto;
  background:var(--c-bg-cream-1); color:var(--c-text-dark);
  border:1px solid rgba(3,14,18,.08);
  border-radius:14px;
  box-shadow:0 24px 64px rgba(0,0,0,.35);
  padding:24px clamp(18px,4vw,32px) 22px;
}

.cmodal__header{margin-bottom:8px}
.cmodal__title{
  margin:0; font:700 clamp(18px,3.4vw,28px)/1.1 Manrope,system-ui,sans-serif;
}
.cmodal__subtitle{
  margin:6px 0 0; color:var(--c-grey-450); font:600 13px/1.3 Manrope,system-ui,sans-serif;
  text-transform:uppercase; letter-spacing:.08em; opacity:.9;
}

.cmodal__body{margin-top:8px}
.cmodal__quote{margin:0 0 18px; font:500 16px/1.6 Manrope,system-ui,sans-serif; font-style:italic}

.cmodal__avatar{
  width:44px; height:44px; flex:0 0 44px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,var(--c-accent-teal-1) 0%, var(--c-accent-teal-2) 100%);
  color:var(--c-bg-cream-1); font:700 14px/1 Manrope,system-ui,sans-serif;
  border:1px solid rgba(255,255,255,.12);
}
.cmodal__author{display:flex;align-items:center;gap:14px;margin-top:12px}
.cmodal__author-info{display:flex;flex-direction:column}
.cmodal__author-name{margin:0 0 3px;font:700 16px/1.15 Manrope,system-ui,sans-serif;color:var(--c-text-dark)}
.cmodal__author-role{font:600 12px/1.2 Manrope,system-ui,sans-serif;color:var(--c-grey-500)}


.cmodal__footer{margin-top:18px; display:flex; justify-content:flex-end}
.cmodal__btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px; padding:12px 18px; border-radius:8px; border:0;
  background:var(--c-accent-teal-1); color:var(--c-bg-cream-1); cursor:pointer;
  font:700 13px/1 Manrope,system-ui,sans-serif; letter-spacing:.06em; text-transform:uppercase;
  transition:transform .2s ease, opacity .2s ease, background-color .2s ease, box-shadow .2s ease;
  box-shadow:0 6px 16px rgba(0,0,0,.28);
}
.cmodal__btn:hover{transform:translateY(-1px); background:var(--c-accent-teal-2)}
.cmodal__btn:active{transform:none; opacity:.92}
.cmodal__btn:focus-visible{outline:2px solid var(--c-accent-cyan); outline-offset:2px}

@media (prefers-reduced-motion:reduce){
  .cmodal__backdrop{backdrop-filter:none}
}

/* ===== REVEAL CORE ===== */
.reveal{
  opacity: 0;
  will-change: transform, opacity;
  transition:
    transform var(--reveal-dur) var(--reveal-ease),
    opacity   var(--reveal-dur) var(--reveal-ease);
}
.reveal.is-inview{
  opacity: 1;
}
.reveal.is-inview[data-delay="1"]{ transition-delay: calc(var(--reveal-stagger) * 1); }
.reveal.is-inview[data-delay="2"]{ transition-delay: calc(var(--reveal-stagger) * 2); }
.reveal.is-inview[data-delay="3"]{ transition-delay: calc(var(--reveal-stagger) * 3); }
.reveal.is-inview[data-delay="4"]{ transition-delay: calc(var(--reveal-stagger) * 4); }

@media (prefers-reduced-motion:no-preference){
  .reveal{ transform: translateY(10px); }
  .reveal[data-appear="fade-up"]{ transform: translateY(14px); }
  .reveal[data-appear="fade-down"]{ transform: translateY(-14px); }
  .reveal[data-appear="fade-left"]{ transform: translateX(14px); }
  .reveal[data-appear="fade-right"]{ transform: translateX(-14px); }
  .reveal[data-appear="scale"]{ transform: scale(.97); }

  .reveal.is-inview[data-speed="slow"]  { transition-duration: calc(var(--reveal-dur) * 1.5); }
  .reveal.is-inview[data-speed="xslow"] { transition-duration: calc(var(--reveal-dur) * 2); }
}
