:root {
    --c-black: #000;
    --c-text: #161920;
    --c-hover: #c3c3c3;
    --c-btn: #3be49e;
    --c-btn-hover: #30d890;
    --ff-base: "Onest", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    --ff-title: "Montserrat", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}


html.is-locked,
body.is-locked {
    overflow: hidden;
}


html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body {
    font-family: var(--ff-base);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--ff-title);
}

.container {
    max-width: 1360px;
    padding: 0 16px;
    margin: 0 auto;
}


.nav a,
.menu a {
  font-family: Geologica, sans-serif;
}


.hero {
    position: relative;
    color: #fff;
    overflow: hidden;

    background-image: url("./img/heroback.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    padding: 120px 0 80px;
    min-height: 400px;
}


.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(80% 120% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.55) 100%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.15) 55%, rgba(0, 0, 0, 0.55) 100%);
    pointer-events: none;
}

.hero__container {
    position: relative;
    z-index: 1;

    max-width: 1392px;
    padding: 0 16px;
    margin: 0 auto;
}

.hero__inner {
    display: flex;
    align-items: stretch;
    gap: 60px;
}


.hero__brand {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
}

.hero__brand-img {
    width: 471px;
    max-width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}


.hero__content {
    flex: 1 1 auto;

    display: flex;
    flex-direction: column;

    min-height: 320px;
}


.hero__mark {
    display: flex;
    justify-content: flex-start;
}

.hero__mark-img {
    width: 210px;
    height: auto;
    display: block;
    object-fit: contain;
}

.hero__brand .hero__mark-img {
    display: none;
}


.hero__title {
    margin-top: auto;
    margin-bottom: 32px;

    font-family: var(--ff-title);
    font-weight: 600;
    font-size: 48px;
    line-height: 1.1;
    letter-spacing: -0.02em;

    max-width: 850px;
}


.hero__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: fit-content;

    border-radius: 12px;

    background: #fff;
    color: #161920;
    text-decoration: none;
    height: 70px;
    width: 325px;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: -0.02em;


    transition: all 0.2s;
}

.hero__btn:hover {
    background: var(--c-btn-hover);
}


@media (max-width: 1024px) {
    .hero__brand-img {
        width: 320px;
    }

    .hero__title {
        font-size: 38px;
    }
}

@media (max-width: 767px) {
    .hero {
        padding: 32px 0 48px;
        min-height: 350px;
        background-image: url("./img/heroback-mob.png");
        background-position: center;
    }

    .hero__inner {
        flex-direction: column;
        gap: 19px;
        align-items: start;
    }

    .hero__mark-img {
        display: none;
    }

    .hero__brand {
        display: flex;
        align-items: flex-start;
        gap: 23px;
    }

    .hero__brand .hero__mark-img {
        display: block;
    }

    .hero__brand-img {
        width: 182px;
    }

    .hero__mark-img {
        width: 81px;
    }

    .hero__title {
        font-size: 28px;
        line-height: 1.1;
        margin: 0 0 24px;
    }

    .hero__content {
        min-height: 0;
    }

    .hero__btn {
        width: 183px;
        height: 60px;
        border-radius: 10px;
        font-size: 15px;
    }
}

.about {
    background: #161920;
    color: #fff;
    padding: 56px 0 0;
}


.about__head {
    max-width: 1015px;
    margin-bottom: 98px;
}

.about__title {
    margin: 0 0 12px;
    font-family: var(--ff-title);
    font-weight: 600;
    font-size: 48px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #fff;
}

.about__subtitle {
    margin: 0;
    color: rgba(255, 255, 255, 0.4);
    font-size: 24px;
    line-height: 1.6;
    letter-spacing: -0.02em;
}

.about__frame {

    background-image: url("./img/bim.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    aspect-ratio: 1920 / 450;

}

.about__note-container {
    max-width: 1920px;
    margin: 0 auto;
    width: 100%;
}

.about__note {
    margin-left: 32.55%;
    background: #55CE9C;
    color: #000;
    padding: 40px 0 40px 115px;

}

.about__note-text {
    max-width: 670px;
    margin: 0;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.8;
}


@media (max-width: 1024px) {
    .about__frame {
        max-width: 100%;
        margin: 0;
        background-image: url('./img/bim-mob.png');
        aspect-ratio: 1024 / 327;
    }

    .about__note {
        margin-left: 0;
        padding: 24px 20px 26px;
    }

    .about__note-container {
        padding: 0px;
    }

}


@media (max-width: 767px) {
    .about {
        padding-top: 24px;
    }

    .about__head {
        margin-bottom: 32px;
    }

    .about__title {
        font-size: 24px;
        margin-bottom: 12px;
    }

    .about__subtitle {
        font-size: 14px;
    }



    .about__note {
        padding: 20px 16px 30px;
    }

    .about__note-text {
        font-size: 14px;
    }
}

.services {
    position: relative;
    background: #000;
    color: #fff;
    overflow: hidden;
    padding: 80px 0 112px;
}

.services::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("./img/serv-back.png") top center / contain no-repeat;
    pointer-events: none;
    z-index: 0;
}

.services::after {
    display: none;

}


.services__container {
    position: relative;
    z-index: 1;
}

.services__grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 20px 20px;
    align-items: stretch;
}


.services__intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    grid-column: 1 / span 8;
}

.services__title {
    font-weight: 600;
    font-size: 48px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    margin: 0 0 12px;
}

.services__subtitle {
    margin: 0 0 36px;
    color: rgba(255, 255, 255, 0.45);
    font-size: 24px;
    font-weight: 400;
    letter-spacing: -0.02em;
    line-height: 1.6;
}

.services__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 70px;
    width: 325px;
    border-radius: 12px;
    background: #fff;
    color: #161920;
    text-decoration: none;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: -0.02em;
    transition: all 0.2s;
}

.services__btn:hover {
    background: var(--c-btn-hover);
}


.services__card {

    border-radius: 10px;
    padding: 28px 28px 32px;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    background-color: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.09);

}

.services__card-title {
    margin: 0 0 16px;
    font-family: var(--ff-title);
    font-weight: 700;
    font-size: 28px;
    line-height: 1.2;
    letter-spacing: 0;
    color: #3BE49E;
}

.services__card-text {
    margin: 0;
    color: rgba(255, 255, 255, .8);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: -0.02em;
}

.services__card--1 {
    grid-column: 9 / span 4;
    grid-row: 1;
}

.services__card--2 {
    grid-column: 1 / span 4;
    grid-row: 2;
}

.services__card--3 {
    grid-column: 5 / span 4;
    grid-row: 2;
}

.services__card--4 {
    grid-column: 9 / span 4;
    grid-row: 2;
}

@media(max-width:1024px) {
    .services__intro {
        grid-column: 1 / span 12;
        grid-row: 1;
    }

    .services__card--1 {
        grid-column: 1 / span 6;
        grid-row: 2;
    }

    .services__card--2 {
        grid-column: 7 / span 6;
        grid-row: 2;
    }

    .services__card--3 {
        grid-column: 1 / span 6;
        grid-row: 3;
    }

    .services__card--4 {
        grid-column: 7 / span 6;
        grid-row: 3;
    }

}


.services__brand {
    position: absolute;
    right: -231px;
    bottom: -72px;
    width: 172px;
    height: auto;
    z-index: 1;
}


@media (max-width: 767px) {
    .services {
        padding: 32px 0 42px;
    }

    .services::before {
        display: none;
    }

    .services::after {
        content: "";
        position: absolute;
        display: block;
        pointer-events: none;
        z-index: 0;

        inset: 0 auto auto 0;
        width: 100%;
        height: 715px;
        background: url("./img/serv-back.png") top center / cover no-repeat;
    }

    .services__grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .services__intro,
    .services__card--1,
    .services__card--2,
    .services__card--3,
    .services__card--4 {
        grid-column: auto;
        grid-row: auto;
    }

    .services__title {
        font-size: 24px;
        margin-bottom: 12px;
    }

    .services__subtitle {
        font-size: 14px;
        margin-bottom: 24px;
    }

    .services__btn {
        height: 60px;
        width: 183px;
        border-radius: 10px;
        margin-bottom: 16px;
        font-size: 15px;
    }

    .services__card {
        padding: 12px 16px 12px 12px;
    }

    .services__brand {
        display: none;
    }

    .services__card-title {
        margin: 0 0 8px;
        font-weight: 700;
        font-size:18px;
    }

    .services__card-text {
        font-size: 14px;
        line-height: 1.6;
    }

}



.benefits {
    position: relative;
    color: #fff;
    overflow: hidden;
  
    padding: 64px 0 33px;

    background-image: url("img/benefits/back.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .benefits__top {
    display: flex;
    gap: 32px;
    align-items: center;
    justify-content: center;
  }
  @media (max-width:1300px){
      .benefits__top {
        flex-direction: column;
        gap: 15px;
        align-items: center;
        justify-content: center;
      }
      .benefits__top-text--up{
        margin-right: 220px;
      }
       .benefits__top-text--down{
        margin-left: 200px;
      }
  }
  
  .benefits__top-text {
    font-family: var(--ff-title); 
    font-weight: 600;
    font-size: 48px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    text-transform: none;
    white-space: nowrap;
  }
  
  .benefits__top-text--up {
    margin-bottom: auto; 
  }
  
  .benefits__top-text--down {
    margin-top: auto; 
  }
  
  .benefits__bim {
    flex: 0 0 auto;
    max-width: 384px;
  }
  
  .benefits__bim img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain; 
    
  }
  
  .benefits__cards {
    margin-top: 82px;
  
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
  }

  .benefits__card {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    color: #000000;
    height: 100%;
  }
  
.benefits__card-media {
  position: relative;
  height: 195px;
  width: 100%;
  overflow: hidden;
}

.benefits__card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(22, 25, 32, 0.4);
  z-index: 1;
}

.benefits__card-img {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
  
  .benefits__card-body {
    padding: 12px 20px 32px;
  }
  
  .benefits__card-title {
    margin: 0;
    font-family: var(--ff-base);
    font-weight: 500;
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -0.02em;
  }
.benefits__card-check {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;

  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.benefits__card-check-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}
  @media (max-width: 1024px) {
  
    .benefits__cards {
      grid-template-columns: repeat(2, 1fr);
      margin-top: 48px;
    }
  }
  
  @media (max-width: 767px) {
    .benefits {
      padding: 20px 0 49px;
      background-image: url("img/benefits/back-mob.jpg");
      background-position: top center;
    }

  
    .benefits__top-text--up,
    .benefits__top-text--down {
      font-size: 24px;
    }
     .benefits__top-text--up{
        margin-right: 69px;
      }
       .benefits__top-text--down{
        margin-left: 50px;
      }
  
    .benefits__bim {
      max-width: 192px;
    }
  
    .benefits__cards {
      margin-top: 24px;
      grid-template-columns: 1fr;
      gap: 8px;
    }
    .benefits__card{
      display: flex;
    }
    
      .benefits__card-media {
        position: relative;
        height: 96px;
      
        flex: 0 0 45.3%;
        
      }
      .benefits__card-body{
        padding: 12px 9px 12px 14px;
      }
      .benefits__card-title{
        font-size: 15px;
      }
      .benefits__card-check {
        top: 8px;
        left: 8px;
        width: 24px;
        height: 24px;
      }
  }


.footer {
  background: #0C0F16;
  color: #fff;
  
}

.footer__container {
  padding: 32px 0 35px;
  display: grid;
  grid-template-columns: 2fr 1fr 2fr;
  gap: 64px;
}

@media(max-width:1024px){
  
.footer__container {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }

  .footer__info {
    grid-column: 1 / -1;
  }
}
/* Контакты */
.footer__label {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(255,255,255,0.4);
  margin-bottom: 2px;
  display: block;
}

.footer__value {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  transition: 0.2s;
}
.footer__value:hover {
  color: var(--c-btn-hover);
}

.footer__value--email {
  font-size: 24px;
}

.footer__item:not(:last-child) {
  margin-bottom: 16px;
}


.footer__text {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: rgba(255,255,255,0.8);
}

/* Соцсети */
.footer__socials {
  justify-content: flex-end;
  display: flex;
  gap: 12px;
  margin-bottom: 24px;
}

.footer__social {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);

  display: flex;
  align-items: center;
  justify-content: center;

  transition: background .2s;
}

.footer__social:hover {
  background: rgba(255,255,255,0.2);
}

.footer__social img {
  width: 20px;
  height: 20px;
}

/* Меню */
.footer__menu li:not(:last-child) {
  margin-bottom: 32px;
}

.footer__menu a {
  font-family: var(--ff-title);
  color: #fff;
  opacity: 0.8;
  text-decoration: none;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  transition: opacity .2s;
}

.footer__menu a:hover {
  opacity: 1;
}

/* Реквизиты */
.footer__requisites {
  text-align: right;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: rgba(255,255,255,0.4);
}

.footer__logo {
  margin-top: 0px;
  margin-bottom: 8px;
}

.footer__logo img {
  max-width: 243px;
  height: auto;
}

/* Низ */
.footer__bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  
  padding: 0px 0px 24px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(255,255,255,0.4);
}
@media (max-width: 767px) {
  .footer__container {
    grid-template-columns: 1fr;
    gap: 0px;
    padding: 20px 0 37px;
  }
  .footer__socials{
    justify-content: flex-start;
  }
  .footer__requisites{
    font-size: 12px;
    text-align: left;
  }
  .footer__menu {
    display: none; /* как в макете */
  }

  .footer__logo {
    margin-bottom: 2px;
  }

  .footer__socials {
    margin: 24px 0 16px;
  }

  .footer__logo img{
    max-width: 140px;
  }

  .footer__label {
    font-size: 12px;
    margin-bottom: 0px;
  }

  .footer__value {
    font-size: 24px;
  }

  .footer__value--email {
    font-size: 24px;
  }

  .footer__item:not(:last-child) {
    margin-bottom: 10px;
  }


  .footer__text {
    font-size: 14px;

  }
  .footer__bottom {
    padding: 0px 0px 20px;
    font-size: 12px;
  }


}

.projects {
  padding: 56px 0 69px;
  background: #fff;
}

.projects__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 23px;
}

.projects__title {
  font-family: var(--ff-title);
  font-weight: 600;
  font-size: 48px;
  margin-bottom: 6px;
  line-height: 1.2;
  color: #161920;
}

.projects__subtitle {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.6;
  color: rgba(22, 25, 32, .4)
}

/* arrows */
.projects__nav {
  display: flex;
  gap: 8px;
  align-items: center;
}

.projects__arrow {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(22, 25, 32, 0.2);
  background: transparent;
  cursor: pointer;
  position: relative;
  transition: 0.2s;
    color: rgba(22, 25, 32, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
}
.projects__arrow:hover{
  background-color: var(--c-btn);
  color: #fff;
  border: 1px solid var(--c-btn);
}

.projects__arrow svg{
  width: 20px;
  height: auto;

}
.projects__arrow--prev{
  transform: rotate(180deg);
}


/* slide */
.projects__card {

  gap: 0px;
  background: #F1F3F6;
  border-radius: 10px;
  overflow: hidden;
  height: 500px;
}
.projects__image{
    width:100%;
    height:100%;
}
.projects__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.projects__content {
  padding: 32px 32px 40px 40px;
  display: flex;
  flex-direction: column;
}

.projects__card-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2;
  color: #161920;
  margin-bottom: 8px;
  font-family: var(--ff-title);
}

.projects__card-text {
  font-size: 20px;
  font-weight: 400;
  color: rgba(22, 25, 32, 0.6);
  line-height: 1.8;
  
  margin-bottom: auto;
}

.projects__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
  height: 60px;
  max-width: 100%;
  text-align:center;
  width: 100%;
  border-radius: 12px;
  background: var(--c-btn);
  transition: 0.2s;
  font-size: 18px;
  color: #161920;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
}
.projects__btn:hover{
 background: var(--c-btn-hover);
}
/* pagination */
.projects__pagination {
  display: none;
}

/* ===== MOBILE ===== */
@media (max-width: 767px) {
  .projects__slider{
    margin-left: -8px;
    margin-right: -8px ;
    width: calc(100% + 16px);
  }
  .projects {
    padding: 34px 0 56px;
  }

  .projects__head {
    align-items: flex-start;
  }

  .projects__nav {
    display: none;
  }

  .projects__card {
    grid-template-columns: 1fr;
    border-radius: 12px;
    height: auto;
  }

  .projects__image {
    height: 220px;
  }

  .projects__content {
    padding: 16px 8px 32px;
  }

  .projects__card-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.1;
    margin-bottom: 8px;
  }

  .projects__btn {
    width: 100%;
    text-align: center;
    max-width: 100%;
  }

.projects__card-text {
  font-size: 14px;
  line-height: 1.6;
}

.projects__btn {
  font-size: 15px;

}
  .projects__pagination {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 16px;
    top: 0px !important;
    bottom: 0px !important;
    left: 0px !important;
    right: 0px !important;
  }
  .swiper-pagination-bullet{
    width: 6px;
    height: 6px;
    background-color: rgba(205, 205, 205, 0.4);
    opacity: 1;
    
  }
  .swiper-pagination-bullet-active{
    width: 8px;
    height: 8px;
    background-color: #55CE9C;
  }
  .projects__title {
  font-size: 24px;
  margin-bottom: 8px;
  line-height: 1.1;
}

.projects__subtitle {
  font-size: 14px;
  color: rgba(22, 25, 32, .6)
}
.projects__head{
  margin-bottom: 16px;
}
}

.advantages {
  background: #E4E9F0; /* как на макете: светло-серый */
 
}

.advantages__grid {
  position: relative;
   padding: 50px 0 100px;
  display: grid;
  grid-template-columns: 530fr 784fr;
  gap: 45px;
  align-items: start;
}

/* LEFT */
.advantages__head {
  padding: 0 0 24px;
}
.advantages__left{
  position: relative;
  height: 100%;
}

.advantages__title {
  font-family: var(--ff-title);
  font-weight: 600;
  font-size: 48px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #161920;
  margin-bottom: 12px;
}

.advantages__subtitle {
  font-size: 18px;
  line-height: 1.6;
  color: rgba(22, 25, 32, 0.6);
  max-width: 530px;
}

.advantages__media {
  bottom: -100px;
  right: 0;
  position: absolute;
  border-radius: 0px;
  width: 810px;
  overflow: hidden;
  background: #dfe5ec;
  aspect-ratio: 810 / 480; /* чтобы держать пропорции как на макете */
}

.advantages__img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* правая часть */
.advantages__right {
  display: flex;
  gap: 20px;            /* как ты сказал */
  align-items: flex-start;
}

/* колонки */
.advantages__col {
  flex: 0 0 calc(50% - 10px); 
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* смещение первой колонки на ПК */
.advantages__col--offset {
  margin-top: 120px;
}

/* карточки */
.advantages__card {
  min-height: 216px;
  background: #fff;
  border-radius: 10px;
  padding: 24px 28px 40px;
 
}
.advantages__card-title{
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  color: #161920;
  font-family: var(--ff-title);
  margin-bottom: 12px;
}
.advantages__card-text{
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  color: rgba(22, 25, 32, 0.8);
  letter-spacing: -0.02em;
}
/* адаптив */
@media (max-width: 1024px) {
  .advantages__card {
  min-height: 0px;
 
}
  .advantages__right {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .advantages__col {
    flex: 1 1 auto;
    gap: 12px;
  }

  .advantages__col--offset {
    margin-top: 0; /* убираем offset */
  }
}


/* ====== Адаптив как на макете ====== */
@media (max-width: 1024px) {
  .advantages__col--offset{
    width: 100%;
  }
  .advantages__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .advantages__subtitle {
    max-width: 100%;
  }
  .advantages__media{
    display: none;
  }
}

@media (max-width: 767px) {
     .advantages__col {

    gap: 8px;
  }
.advantages__grid{
  gap: 0px;
  padding: 0;
}
  .advantages {
    padding: 32px 0 24px;
  }

  .advantages__title {
    font-size: 24px;
    line-height: 1.1;
    margin-bottom: 12px;
  }

  .advantages__subtitle {
    font-size: 14px;
    line-height: 1.6;
  }

  .advantages__head {
    padding-bottom: 12px;
  }


  .advantages__card {
    padding: 12px;
  }

  .advantages__card-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 8px;
  }

  .advantages__card-text {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(22, 25, 32, 0.8);
  }
}

.hero-alt {
  padding-block: 48px 56px;
}



/* верх: заголовок слева, лого справа */
.hero-alt__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.hero-alt__title {
  margin: 0;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: #111;

  /* примерно как на скрине */
  font-size: clamp(28px, 4.2vw, 44px);
  max-width: 30ch; /* чтобы заголовок красиво переносился */
}

.hero-alt__logo {
  flex: 0 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}

.hero-alt__logo img {
  display: block;
  width: min(200px, 28vw);
  height: auto;
}

.hero-alt__subtitle {
  margin: 18px 0 0;
  color: #9aa0a6;
  line-height: 1.35;
  font-weight: 400;
  font-size: clamp(16px, 1.5vw, 18px);
  max-width: 100%;
}

/* картинка */
.hero-alt__media {
  margin: 28px 0 0;
  height: clamp(208px, 35vw, 500px);
}

.hero-alt__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit:cover;
}

/* адаптив как на твоём мобильном скрине (лого скрыто) */
@media (max-width: 768px) {
  .hero-alt {
    padding-block: 28px 36px;
  }

  .hero-alt__container {
    width: min(1240px, 100% - 32px);
  }

  .hero-alt__top {
    display: block;
  }

  .hero-alt__title {
    max-width: none;
  }

  .hero-alt__logo {
    display: none;
  }

  .hero-alt__subtitle {
    margin-top: 14px;
  }

  .hero-alt__media {
    margin-top: 18px;
  }
}
/* === Polylang switcher in menu (dropdown) === */
.menu .pll-parent-menu-item {
  position: relative;
}

/* top item */
.menu .pll-parent-menu-item > a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

/* flag size + alignment */
.menu .pll-parent-menu-item img {
  display: block;
  width: 16px;
  height: 11px;
  flex: 0 0 auto;
}

/* remove inline margin from span (у тебя style="margin-left") */
.menu .pll-parent-menu-item span {
  margin-left: 0 !important;
}

/* add dropdown arrow */
.menu .pll-parent-menu-item > a::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-left: 2px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  opacity: .7;
}

/* dropdown panel */
.menu .pll-parent-menu-item > .sub-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;              /* если надо слева — поменяй на left:0; right:auto; */
  min-width: 160px;

  padding: 8px;
  margin: 0;

  list-style: none;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
  z-index: 9999;

  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
}

/* show dropdown on hover */
.menu .pll-parent-menu-item:hover > .sub-menu,
.menu .pll-parent-menu-item:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* dropdown items */
.menu .pll-parent-menu-item > .sub-menu > li > a {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  padding: 8px 10px;
  border-radius: 10px;
  text-decoration: none;
}

/* hover */
.menu .pll-parent-menu-item > .sub-menu > li > a:hover {
  background: rgba(0,0,0,.06);
}

/* optional: highlight current lang */
.menu .pll-parent-menu-item .current-lang > a {
  font-weight: 600;
}

/* optional: remove default submenu styling if theme adds it */
.menu .pll-parent-menu-item > .sub-menu {
  display: block; 

}
	.pll-parent-menu-item:hover{
		opacity:1 !important;
	}
/* === Polylang switcher mobile fixes === */
@media (max-width: 767px) {


  .menu .pll-parent-menu-item > .sub-menu {
    right: auto !important;       
    left: 0 !important;
    min-width: 0;
    width: max-content;
    max-width: calc(100vw - 24px);
    box-sizing: border-box;
  }


  /*
  .menu .pll-parent-menu-item > .sub-menu {
    left: 12px;
    right: 12px;
    width: auto;
  }
  */

  .menu .pll-parent-menu-item > .sub-menu > li > a {
    padding: 12px 12px;
  }


  .menu .pll-parent-menu-item > a {
    padding: 10px 0;
  }

 
  .menu {
    overflow: visible;
  }
}

.header__wrap-bot_logo{
	max-width:106px !important;
	width:100% !important;
	height:auto;
	max-height:22px;
	object-fit:contain;
}

.header__wrap-bot_logo img{
	object-fit:contain;
	width:100%;
	height:100%
}
.hero-alt__media{position:relative;}
.a100project-link{
    display:flex;
    align-items:center;
    justify-content:center;
    height:50px;
    padding:0 16px;
    background:#3be49e;
    color:#fff;
    font-size:16px;
    font-weight:500;
    transition:0.2s;
    position:absolute;
    bottom:20px;
    right:20px;
}

.a100project-link:hover{
    background:#30d890;
    color:#fff;
}

@media(max-width:440px){
    .a100project-link{
        left:0;
        right:0;
        bottom:0px;
        padding:0 10px;
        font-size:14px;
        height:40px;
    }
}



.wpcf7-list-item-label{color:#fff;font-size:14px;line-height:1.35;}
.wpcf7-list-item label{display:inline-flex;align-items:flex-start;gap:10px;}
input[type="checkbox"][name="privacy-consent"]{width:18px;height:18px;margin:2px 0 0;accent-color:#fff;}
.wpcf7-list-item-label a{color:#fff;text-decoration:underline;text-underline-offset:3px;opacity:.95;}
.wpcf7-list-item-label a:hover{opacity:1;}
.wpcf7-list-item{margin:8px 0 0;display:inline-block;}
[type=checkbox]:checked {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e") !important
}