/* ============================================================
   МастерPIN — главная страница
   ============================================================ */

:root{
  --green:#6cb043;
  --green-dark:#188542;
  --green-btn:#449c42;
  --green-light:#a0c888;
  --green-pale:#b7e09f;
  --green-border:#d1e9c3;
  --green-bg:#eff7ea;
  --gray:#5c5c5c;
  --muted:#8e8e8e;
  --muted2:#9c9c9c;
  --bg:#efefef;
  --text:#1a1a1a;
  --shadow-sm:0 4px 4px rgba(0,0,0,.08);
  --f-title:'Inter',-apple-system,Segoe UI,Roboto,sans-serif;
  --f-body:'Commissioner','Inter',-apple-system,Segoe UI,Roboto,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;overflow-x:hidden;}
body{
  font-family:var(--f-body);
  color:var(--text);
  background:#fff;
  font-size:15px;
  line-height:1.4;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}

.container{max-width:1460px;margin:0 auto;padding:0 20px;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--f-body);font-weight:700;
  border-radius:8px;white-space:nowrap;transition:.2s;text-align:center;
}
.btn--green{background:var(--green);color:#fff;padding:13px 20px;font-size:14px;}
.btn--green:hover{background:#5c9c39;}
.btn--lg{padding:14px 26px;font-size:14px;letter-spacing:.3px;}
.btn--track{padding:14px 22px;font-size:14px;}
.btn--ghost-white{border:1.6px solid rgba(255,255,255,.85);color:#fff;padding:12px 24px;font-size:14px;background:rgba(255,255,255,.06);}
.btn--ghost-white:hover{background:rgba(255,255,255,.16);}
.btn--ghost{border:1.5px solid var(--green-pale);color:var(--green);padding:11px 20px;font-size:14px;font-weight:600;}
.btn--ghost:hover{background:var(--green-bg);}
.btn--block{width:100%;}
.btn--go{
  background:#fff;border:1px solid var(--green-pale);color:var(--green);
  font-family:var(--f-body);font-weight:600;font-size:14px;
  border-radius:6px;padding:6px 22px;box-shadow:var(--shadow-sm);
}
.btn--go:hover{background:var(--green-bg);}
.btn--go-white{background:rgba(255,255,255,.19);border-color:#fff;color:#fff;}
.btn--go-white:hover{background:rgba(255,255,255,.3);}

/* ---------- Section title ---------- */
.section-title{
  font-family:var(--f-title);font-weight:800;text-transform:uppercase;
  font-size:19px;line-height:1.15;color:var(--text);margin:0 0 22px;
}

/* ============================================================
   HEADER
   ============================================================ */
.header__topline{height:3px;background:var(--green);}
.topbar{background:#fff;}
.topbar__inner{display:flex;align-items:center;gap:24px;padding:14px 20px;}
.logo img{height:56px;width:auto;}
.topbar__info{display:flex;align-items:center;gap:16px;margin-left:auto;}
.info-item{display:flex;align-items:center;gap:10px;flex:none;}
.info-item__icon{flex:none;display:flex;}
.info-item__icon--badge{width:34px;height:34px;border-radius:8px;background:var(--green);align-items:center;justify-content:center;}
.tb-sep{width:1px;height:38px;background:#e4e4e4;flex:none;}
.info-item__text{font-weight:700;font-size:14px;line-height:1.2;white-space:nowrap;}
.info-item__text--gray{color:var(--gray);}
.info-item__text--green{color:var(--green);}
.phones{display:flex;flex-direction:column;gap:2px;}
.phones__num{font-weight:700;font-size:17px;color:var(--gray);line-height:1.15;}
.phones__num b{color:var(--green);font-weight:700;}

.socials{display:flex;align-items:center;gap:9px;}
.socials--dark a{
  width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#9c9c9c;background:transparent;transition:.2s;
}
.socials--dark a:hover{color:var(--green);}

.burger{display:none;flex-direction:column;gap:5px;padding:6px;}
.burger span{width:26px;height:3px;background:var(--green-dark);border-radius:2px;}

/* nav */
.nav{background:var(--green-dark);}
.nav__inner{display:flex;align-items:center;height:54px;padding:0 20px;gap:8px;}
.nav__catalog{position:relative;}
.nav__catalog-btn{
  display:flex;align-items:center;gap:16px;height:48px;width:298px;
  background:var(--green-btn);color:#fff;font-family:var(--f-title);font-weight:700;font-size:15px;
  padding:0 24px;border:1px solid var(--green);border-top-left-radius:5px;border-top-right-radius:5px;
  margin-bottom:-6px;cursor:pointer;
}
/* выпадающий список услуг (на главной закреплён открытым) */
.nav__dropdown{
  position:absolute;top:100%;left:0;z-index:45;width:298px;
  background:#fff;border:1px solid var(--green-border);border-radius:0 0 8px 8px;overflow:hidden;
  box-shadow:0 16px 32px rgba(0,0,0,.16);display:none;
}
.nav__catalog:hover .nav__dropdown,
.nav__catalog.is-open .nav__dropdown{display:block;}
.nav__menu{display:flex;align-items:center;gap:6px;margin-left:26px;flex-wrap:wrap;}
.nav__menu a{
  display:inline-flex;align-items:center;gap:6px;color:#fff;text-transform:uppercase;
  font-weight:700;font-size:14px;padding:8px 14px;border-radius:5px;transition:.2s;
}
.nav__menu a:hover{background:rgba(255,255,255,.12);}
.nav__menu a.has-caret::after{content:"";width:7px;height:7px;border-right:2px solid var(--green-light);border-bottom:2px solid var(--green-light);transform:rotate(45deg);margin-top:-3px;}
.nav__search{display:flex;align-items:center;gap:10px;margin-left:auto;color:var(--green-light);
  text-transform:uppercase;font-weight:700;font-size:15px;padding-left:22px;border-left:1px solid rgba(255,255,255,.25);height:26px;}
.nav__search svg{color:#fff;}

/* ============================================================
   HERO
   ============================================================ */
main{padding:28px 0 60px;}
.intro{display:flex;gap:22px;align-items:flex-start;margin-bottom:50px;}
.intro__left{width:298px;flex:none;display:flex;flex-direction:column;gap:22px;}
.intro__right{flex:1;min-width:0;display:flex;flex-direction:column;gap:22px;}

/* пункты списка услуг */
.services__item{
  display:flex;align-items:center;gap:12px;padding:6px 14px;
  border-bottom:1px solid #e8f2df;color:var(--green);font-weight:700;font-size:14px;
  transition:.15s;cursor:pointer;
}
.services__item:last-child{border-bottom:none;}
.services__ic{
  width:23px;height:23px;flex:none;border-radius:5px;border:1px solid #cfe6bd;
  background:#f3faee;display:flex;align-items:center;justify-content:center;
}
.services__ic::after{
  content:"";width:0;height:0;margin-left:2px;
  border-left:8px solid var(--green);border-top:5px solid transparent;border-bottom:5px solid transparent;
}
.services__item:hover{background:var(--green-bg);}
.services__item.is-active{background:#e3f1d6;}
.services__item.is-active .services__ic{background:var(--green);border-color:var(--green);}
.services__item.is-active .services__ic::after{border-left-color:#fff;}

/* banner (фон hero-bg с устройствами) */
.banner-wrap{position:relative;}
.banner{position:relative;background:#fff;border:2px solid var(--green-pale);border-radius:12px;overflow:hidden;min-height:262px;}
.banner__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:0;}
.banner__content{position:relative;z-index:2;padding:28px 40px 28px 52px;max-width:56%;}
.banner__title{font-family:var(--f-title);font-weight:800;font-size:22px;line-height:1.12;margin:0 0 14px;color:#000;}
.banner__list{display:flex;flex-direction:column;gap:3px;margin:0 0 20px;}
.banner__list li{position:relative;padding-left:28px;color:var(--green);font-weight:600;font-size:15.5px;}
.banner__list li::before{
  content:"";position:absolute;left:2px;top:4px;width:13px;height:8px;
  border-left:2.4px solid var(--green);border-bottom:2.4px solid var(--green);transform:rotate(-45deg);
}
.banner__cta{display:flex;align-items:center;gap:24px;}
/* стрелки: готовые SVG-кнопки на кромке баннера */
.banner-wrap .slider__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:6;
  width:40px;height:40px;background:none;padding:0;display:flex;align-items:center;justify-content:center;transition:transform .2s;}
.banner-wrap .slider__arrow img{width:100%;height:100%;display:block;}
.banner-wrap .slider__arrow:hover{transform:translateY(-50%) scale(1.07);}
.banner-wrap .slider__arrow--prev{left:0;}
.banner-wrap .slider__arrow--next{right:0;}

/* slider arrows / dots */
.slider__arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:32px;height:60px;background:var(--green);color:#fff;font-size:26px;line-height:1;
  display:flex;align-items:center;justify-content:center;border-radius:4px;opacity:.9;transition:.2s;
}
.slider__arrow:hover{opacity:1;background:var(--green-dark);}
.slider__arrow--prev{left:0;border-top-left-radius:0;border-bottom-left-radius:0;}
.slider__arrow--next{right:0;}
.dots{display:flex;gap:8px;justify-content:center;}
.dot{width:9px;height:9px;border-radius:50%;background:#cfcfcf;transition:.2s;cursor:pointer;}
.dot.is-active{background:var(--green);}
.banner__cta .dots{margin-left:4px;}

/* ============================================================
   REPAIR CATEGORIES
   ============================================================ */
.section-title--repair{margin:0;}

.rules{
  flex:1;border-radius:10px;padding:26px 20px;
  background:url(../assets/img/rules-bg.png) center/cover no-repeat;border:1px solid var(--green-pale);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;text-align:center;
  position:relative;overflow:hidden;min-height:250px;
}
.rules__emblem{width:120px;height:120px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 16px rgba(255,255,255,.45));}
.rules__emblem img{width:100%;height:100%;}
.rules__title{color:#fff;font-family:var(--f-title);font-weight:800;font-size:20px;line-height:1.32;text-transform:uppercase;}

.repair__grid{flex:1;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.cat-card{
  position:relative;height:153px;border-radius:5px;border:1px solid var(--green-border);
  background:linear-gradient(91deg,#efefef 25%,#fff 120%);overflow:hidden;padding:22px;transition:.25s;
}
.cat-card:hover{
  border-color:var(--green-pale);
  background:linear-gradient(246deg,var(--green-dark) 20%,var(--green) 80%);
}
.cat-card__body{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;justify-content:space-between;align-items:flex-start;max-width:60%;}
.cat-card__title{font-family:var(--f-title);font-weight:800;font-size:18px;line-height:1.05;margin:0;color:#000;transition:.25s;}
.cat-card:hover .cat-card__title{color:#fff;}
.cat-card:hover .btn--go{background:rgba(255,255,255,.19);border-color:#fff;color:#fff;}
.cat-card__img{position:absolute;right:18px;top:50%;transform:translateY(-50%);height:72%;width:auto;object-fit:contain;z-index:1;
  filter:drop-shadow(0 6px 8px rgba(0,0,0,.20));}
.cat-card__img--tv{height:72%;right:-14px;}
.cat-card__img--wide{height:64%;right:18px;}
.cat-card__img--tall{height:86%;right:18px;}
.cat-card__stack{position:absolute;right:-50px;left:auto;top:50%;transform:translateY(-50%);height:84%;display:flex;flex-direction:row-reverse;align-items:flex-end;z-index:1;}
.cat-card__stack .cat-card__img{position:static;top:auto;right:auto;transform:none;width:auto;filter:drop-shadow(0 5px 7px rgba(0,0,0,.20));}
.cat-card__stack .cat-card__img--pc{height:74%;margin-left:-36px;}
.cat-card__stack .cat-card__img--case{height:98%;}

/* ============================================================
   BRANDS
   ============================================================ */
.brands{margin-bottom:46px;}
.brands__head{display:flex;gap:40px;align-items:flex-start;margin-bottom:24px;}
.brands__head .section-title{flex:none;width:260px;margin:0;}
.brands__text{margin:0;color:var(--gray);font-size:13.5px;line-height:1.5;}

.carousel{position:relative;padding:0 44px;}
.carousel__track{display:flex;gap:36px;overflow:hidden;scroll-behavior:smooth;}
.brand-card{
  flex:0 0 187px;height:160px;background:#f0f0f0;border-radius:8px;position:relative;overflow:hidden;padding:16px;
  box-shadow:0 5px 16px rgba(0,0,0,.07);
}
.brand-card__logo{max-height:30px;width:auto;max-width:108px;object-fit:contain;object-position:left top;margin-top:26px;}
.brand-card__logo--square{max-height:46px;max-width:58px;margin-top:16px;}
.brand-logo-yandex{display:inline-block;font-family:var(--f-title);font-weight:800;font-size:22px;line-height:1;color:#000;letter-spacing:-.5px;}
.brand-logo-yandex::first-letter{color:#fc3f1d;}
.brand-card__name{position:absolute;left:16px;bottom:14px;color:var(--muted2);font-family:var(--f-title);font-weight:700;font-size:14px;line-height:1.1;}
.brand-card__phone{position:absolute;right:-50px;top:50%;transform:translateY(-50%);height:80%;width:auto;object-fit:contain;object-position:right center;opacity:.95;}
.brand-card__phone--yandex{height:90%;right:0;}
.carousel .slider__arrow{width:38px;height:150px;border-radius:8px;background:var(--green-pale);opacity:1;transition:.2s;display:flex;align-items:center;justify-content:center;}
.carousel .slider__arrow:hover{background:var(--green);}
.carousel .slider__arrow::before{content:"";border-style:solid;}
.carousel .slider__arrow--prev::before{border-width:8px 11px 8px 0;border-color:transparent #fff transparent transparent;}
.carousel .slider__arrow--next::before{border-width:8px 0 8px 11px;border-color:transparent transparent transparent #fff;}

/* ============================================================
   GREEN CTA BANNER
   ============================================================ */
.promo-banner{
  margin-bottom:50px;border-radius:8px;padding:28px 46px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:url("../assets/img/center-bg.png") center/cover no-repeat;position:relative;overflow:hidden;
}
.promo-banner__title{position:relative;z-index:1;color:#fff;font-family:var(--f-title);font-weight:800;font-size:24px;text-transform:uppercase;margin:0;line-height:1.2;}
.promo-banner .btn{position:relative;z-index:1;flex:none;}

/* ============================================================
   ADVANTAGES
   ============================================================ */
.advantages{margin-bottom:50px;}
.advantages__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.adv{
  background:linear-gradient(180deg,#f4faf0,#fff);border:1px solid #e4f0da;border-radius:10px;
  padding:24px 16px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;min-height:150px;
  box-shadow:0 7px 20px rgba(108,176,67,.2);
}
.adv__ic{height:54px;display:flex;align-items:center;justify-content:center;}
.adv__ic img{height:54px;width:auto;display:block;}
.adv__sep{display:block;width:100%;max-width:160px;height:auto;margin:2px 0;}
.adv__text{margin:0;font-weight:600;font-size:12.5px;line-height:1.25;color:#2b2b2b;width:100%;}

/* ============================================================
   NEWS & PROMOS
   ============================================================ */
.news{margin-bottom:0;}
.news__head{display:flex;align-items:center;gap:24px;margin-bottom:20px;}
.news__head .section-title{margin:0;}
.news__band{
  background:var(--bg);
  margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);
  padding-top:40px;padding-bottom:34px;margin-bottom:0;
}
.news__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.news-card{background:#fff;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 3px 10px rgba(0,0,0,.06);}
.news-card__img{width:100%;height:170px;object-fit:cover;background:#d9d9d9;}
.news-card__body{padding:20px 22px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;flex:1;}
.news-card__title{font-family:var(--f-title);font-weight:700;font-size:18px;line-height:1.05;margin:0;color:#000;}
.news-card__text{margin:0;font-family:var(--f-title);font-weight:600;font-size:14px;line-height:1.1;color:var(--muted);}
.news-card.is-active .news-card__text{color:#000;}
.news-card .btn{margin-top:auto;}
.slider__nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:26px;}
.slider__nav .slider__arrow{position:static;transform:none;width:26px;height:26px;border-radius:4px;background:var(--green);display:flex;align-items:center;justify-content:center;transition:.2s;}
.slider__nav .slider__arrow:hover{background:var(--green-dark);}
.slider__nav .slider__arrow::before{content:"";border-style:solid;}
.slider__nav .slider__arrow--prev::before{border-width:6px 8px 6px 0;border-color:transparent #fff transparent transparent;}
.slider__nav .slider__arrow--next::before{border-width:6px 0 6px 8px;border-color:transparent transparent transparent #fff;}

/* ============================================================
   CONTACTS
   ============================================================ */
.contacts{padding-top:46px;margin-bottom:50px;}
.contacts__head{display:flex;align-items:center;gap:30px;margin-bottom:22px;}
.contacts__head .section-title{margin:0;flex:none;white-space:nowrap;}
.contacts__head .city-tabs{flex:1;margin-bottom:0;}
.city-tabs{display:flex;gap:14px;margin-bottom:22px;}
.city-tab{
  flex:1;min-width:0;text-align:center;
  border:1px solid var(--green-pale);border-radius:6px;padding:11px 20px;color:var(--green);
  font-weight:700;font-size:14px;background:#fff;transition:.2s;
}
.city-tab:hover{background:var(--green-bg);}
.city-tab.is-active{background:var(--green);border-color:var(--green);color:#fff;}

.contacts__panel{background:var(--green-pale);border-radius:8px;padding:6px;display:flex;gap:6px;}
.contact-card{background:#fff;border-radius:8px;width:331px;flex:none;padding:26px 24px;display:flex;flex-direction:column;gap:20px;}
.contact-row{display:flex;gap:14px;align-items:flex-start;}
.contact-row__ic{width:31px;height:31px;flex:none;border:1.6px solid var(--green);border-radius:8px;display:flex;align-items:center;justify-content:center;}
.contact-row__text{font-weight:600;font-size:15px;line-height:1.35;}
.contact-row__text--green{color:var(--green);font-weight:700;font-size:16px;}
.contact-row .green{color:var(--green);}
.contact-phones{display:flex;flex-direction:column;gap:3px;}
.contact-phones a{font-family:var(--f-body);font-weight:700;font-size:17px;color:#000;}
.contact-phones a b{color:var(--green);}
.socials--pill{background:rgba(160,206,132,.17);border:1px solid var(--green-pale);border-radius:8px;padding:12px 20px;justify-content:space-between;}
.socials--pill a{display:flex;align-items:center;justify-content:center;background:transparent;color:var(--green-light);transition:.2s;}
.socials--pill a svg{width:21px;height:21px;}
.socials--pill a:hover{background:transparent;color:var(--green-dark);}
.contacts__map{flex:1;min-width:0;border-radius:6px;overflow:hidden;position:relative;}
.contacts__map img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ============================================================
   GALLERY
   ============================================================ */
.gallery__band{
  background:var(--green-bg);
  margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);
  padding-top:42px;padding-bottom:40px;
}
.gallery__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.gallery__item{margin:0;background:#fff;padding:7px;border-radius:8px;box-shadow:0 6px 16px rgba(0,0,0,.09);}
.gallery__item img{width:100%;height:206px;object-fit:cover;border-radius:4px;}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{background:#419245;color:#fff;padding:32px 0 26px;margin-top:10px;}
.footer__inner{display:flex;gap:40px;align-items:stretch;}
.footer__col{flex:0.68;min-width:0;}
.footer__col--brand{flex:3.3;}
.footer__col--contacts{flex:1.2;min-width:0;display:flex;flex-direction:column;justify-content:space-between;}
.footer__col--clients{background:#4f9f53;margin:-32px 0 -26px;padding:32px 24px 26px;flex:0.92;}
.footer__brand-head{display:flex;align-items:center;gap:30px;margin-bottom:20px;}
.footer__logo{flex:none;}
.footer__logo img{height:104px;width:auto;filter:brightness(0) invert(1);margin-bottom:0;}
.socials--footer{gap:11px;margin-bottom:revert-layer;flex:none;align-self:end;transform:translateY(12px);}
.socials--footer a{width:34px;height:34px;}
.socials--footer a{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--green-pale);background:transparent;border:1.5px solid rgba(183,224,159,.6);transition:.2s;}
.socials--footer a:hover{color:#fff;border-color:#fff;}
.footer__copy{font-size:11px;line-height:1.5;color:rgba(255,255,255,.7);margin:0;max-width:560px;}
.footer__title{font-family:var(--f-title);font-weight:700;font-size:15px;text-transform:uppercase;margin:0 0 12px;color:#fff;}
.footer__list{display:flex;flex-direction:column;gap:4px;}
.footer__list a{font-size:15px;font-weight:600;color:rgba(255,255,255,.92);transition:.2s;}
.footer__list a:hover{color:#fff;text-decoration:underline;}
.footer__contact{display:flex;gap:14px;align-items:center;margin-bottom:0;}
.footer__contact-ic{flex:none;width:42px;height:42px;border:1.5px solid rgba(255,255,255,.5);border-radius:9px;display:flex;align-items:center;justify-content:center;}
.footer__phones{display:flex;flex-direction:column;gap:3px;}
.footer__phones a{font-weight:700;font-size:16px;color:#fff;white-space:nowrap;}
.footer__phones a b{color:#cfe9bd;}
.footer__addr{font-weight:600;font-size:14px;line-height:1.3;}
.footer__col--contacts .btn{margin-top:0;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
/* десктоп: на главной список услуг закреплён открытым, слева резервируем под него место */
@media (min-width:993px){
  .page-home .nav__catalog.is-pinned .nav__dropdown{display:block;box-shadow:none;}
  .page-home .intro__left{padding-top:299px;}
}

@media (max-width:1200px){
  .topbar__info{gap:18px;}
  .info-item--phones .phones__num{font-size:15px;}
  .advantages__grid{grid-template-columns:repeat(3,1fr);}
  .news__grid{grid-template-columns:repeat(2,1fr);}
  .gallery__grid{grid-template-columns:repeat(2,1fr);}
  .nav__menu{gap:2px;margin-left:14px;}
  .nav__menu a{padding:8px 9px;font-size:13px;}
}

@media (max-width:992px){
  .nav__inner{flex-wrap:wrap;}
  .intro{flex-direction:column;}
  .intro__left{width:100%;order:2;padding-top:0;}
  .intro__right{order:1;}
  .rules{flex-direction:row;align-items:center;gap:22px;min-height:auto;text-align:left;padding:20px 26px;}
  .rules__emblem{width:78px;height:78px;flex:none;}
  .rules__title{text-align:left;flex:1;font-size:16px;}
  .rules .btn{flex:none;}
  .repair__grid{grid-template-columns:repeat(2,1fr);}
  .brands__head{flex-direction:column;gap:14px;}
  .brands__head .section-title{width:auto;}
  .banner__content{max-width:62%;}
  .contact-card{width:290px;}
  .footer__inner{flex-wrap:wrap;}
  .footer__col--brand{flex:1 1 100%;}
  .footer__col{flex:1 1 40%;}
}

@media (max-width:768px){
  .topbar__info{display:none;}
  .burger{display:flex;}
  .topbar__inner{gap:12px;}
  .nav{display:none;}
  .nav.is-open{display:block;}
  .nav__inner{flex-direction:column;align-items:stretch;height:auto;padding:12px 20px;gap:6px;}
  .nav__catalog{width:100%;}
  .nav__catalog-btn{margin-bottom:0;border-radius:6px;justify-content:center;width:100%;}
  .nav__dropdown{position:static;width:100%;border:none;border-radius:0;box-shadow:none;padding-top:6px;}
  .nav__menu{flex-direction:column;margin-left:0;gap:2px;}
  .nav__menu a{padding:10px 12px;font-size:14px;}
  .nav__search{margin-left:0;border-left:none;padding-left:0;justify-content:center;}
  .banner__content{max-width:100%;background:linear-gradient(90deg,rgba(255,255,255,.9) 55%,rgba(255,255,255,0));border-radius:10px;}
  .repair__grid{grid-template-columns:1fr;}
  .rules{padding:18px 20px;gap:16px;}
  .rules__emblem{width:62px;height:62px;}
  .rules__title{font-size:14px;}
  .advantages__grid{grid-template-columns:repeat(2,1fr);}
  .news__grid{grid-template-columns:1fr;}
  .gallery__grid{grid-template-columns:1fr;}
  .contacts__panel{flex-direction:column;}
  .contact-card{width:100%;}
  .contacts__map{height:240px;}
  .promo-banner{flex-direction:column;text-align:center;}
  .promo-banner__title{font-size:20px;}
  .footer__col{flex:1 1 100%;}
}

@media (max-width:480px){
  .logo img{height:44px;}
  .advantages__grid{grid-template-columns:1fr;}
  .rules{padding:14px 14px;gap:10px;}
  .rules__emblem{width:50px;height:50px;}
  .rules__title{font-size:12px;}
  .rules .btn{padding:9px 11px;font-size:11px;white-space:normal;line-height:1.1;}
  .section-title{font-size:17px;}
  .banner__title{font-size:18px;}
}
