
:root {
    --color-menu-left:  #ff69b4;
    --color-menu-right: #f9a2a2;
    --color-menu-left-2: #8c52ff;
    --color-menu-right-2: #d359b6;
  }
  *  {
    box-sizing: border-box;
  }
  body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family:  ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    color: #667687;
  }
a  { 
    transition: all 0.3s ease-in-out;
}
  .m-top-30 { padding-top: 30px;}

.bg-m {
    background-image: url(../img/background/bg.jpg);
    background-size: 100% 100%; /* Растягивает на всю ширину и высоту */
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed; /* Фиксирует фон при скролле */
    min-height: 100vh;
    width: 100%;
    position: relative;
}
img {
   width: 100%;
   height: auto;
   vertical-align: middle;
}
.cont-menu {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding-left: clamp(15px, 2vw, 30px);
    padding-right: clamp(15px, 2vw, 30px);
    padding-top: clamp(30px, 2vh, 40px);
    padding-bottom: clamp(10px, 2vh, 40px);
}
.column-40 img  {
   width: 15%;
   height: auto;
   vertical-align: middle;
}
.item-logo {
   width: 50px;
   height: 50px;
}
.h-text a {
    display: block;
    width: 180px;
    font-size: 22px;
    font-weight: 600;
    text-align: center;
    line-height: clamp(34px, 34px + 0.00694*(100vw - 768px), 42px);
    padding: 4px 30px;
    border-radius: 5px;
    text-decoration: none;
    color: #fff;
    background-image: linear-gradient(298deg, var(--color-menu-right), var(--color-menu-left));
    transition: all ease 0.5s;
  }
  .h-text a:hover {
    background-image: linear-gradient(15deg, var(--color-menu-right), var(--color-menu-left));
    color: #555;
  }
  .page-box-content  {
    width: 1400px;
    margin: 0 auto;
}
.hero {
    display: flex; 
    padding: 30px 15px;
}
.column img {
    max-width: 100%;
    height: auto;
    display: block;
}


@media (min-width: 360px) and (max-width: 767px)  {

.hero {
    flex-direction: column;
    gap: 60px;
}
.page-box-content  {
    width: 100%;
}
.column-40 {
    flex: 1;
    padding-top: clamp(0px, 0px + 0.05208*(100vw - 360px), 60px);
}
.column-40 img  {
   width: 8%;
}
.column-60-h {
    flex: 1;
}
.h-text {
    padding-left: clamp(30px, 30px + 0.22130*(100vw - 360px), 120px);
    margin-top: calc(-1*clamp(70px, 70px + 0.17199*(100vw - 360px), 140px));
}
.h-text h1 {
    font-size: clamp(40px, 40px + 0.09828*(100vw - 360px), 80px);
    font-weight: 700;
    line-height: 1.0;
    margin-bottom: clamp(15px, 15px + 0.03906*(100vw - 360px), 60px);
    color: var(--color-menu-right-2);
}
.h-text h2 {
    font-size: clamp(30px, 30px + 0.00868*(100vw - 360px), 40px);
    font-weight: 700;
    line-height: 1.0;
    margin-bottom: 0px;
}
.h-text p {
    font-size: clamp(20px, 20px + 0.02457*(100vw - 360px), 30px);
    font-weight: 600;
    line-height: 1.2;
    margin-top: 12px;
    margin-bottom: clamp(30px, 30px + 0.02604*(100vw - 360px), 60px);
}
#contacts  {
    padding-top: 0;

}
.column-50, .column-55  {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}
.int-block  {
    padding: 20px 30px;
}
.img-04 {
   padding: 0 20px;
}
}



@media (min-width: 768px) and (max-width: 1400px) {

.page-box-content  {
    width: 100%;
} 
.column-40 {
    width: 40%;
    padding-top: clamp(30px, 30px + 0.04747*(100vw - 768px), 60px);
}
.column-60-h {
    width: 60%;
    padding-top: 30px;
    padding-right: 30px;
}
.h-text {
    padding-left: clamp(60px, 60px + 0.10759*(100vw - 768px), 128px);
    margin-top: calc(-1*clamp(60px, 60px + 0.06329*(100vw - 768px), 100px));
}
.h-text h1 {
    font-size: clamp(34px, 34px + 0.04114*(100vw - 768px), 60px);
    font-weight: 700;
    line-height: 1.0;
    margin-bottom: clamp(0px, 0px + 0.09494*(100vw - 768px), 60px);
    color: var(--color-menu-right-2);
}
.h-text h2 {
    font-size: clamp(26px, 26px + 0.02215*(100vw - 768px), 40px);
    font-weight: 700;
    line-height: 1.0;
    margin-bottom: clamp(5px, 5px + 0.03165*(100vw - 768px), 25px);
}
.h-text p {
    font-size: clamp(22px, 22px + 0.01266*(100vw - 768px), 30px);
    font-weight: 600;
    line-height: 1.2;
    color: #667687;
    margin-top: 10px;
    margin-bottom: clamp(30px, 30px + 0.04747*(100vw - 768px), 60px);
}
.column-50 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.column-55 {
    display: grid;
    grid-template-columns: 55% 45%;
    gap: clamp(10px, 10px + 0.03165*(100vw - 768px), 30px);
}
.int-block  {
    padding: 20px 30px;
}
.img-04 {
   padding-top: clamp(60px, 60px - 0.09494*(100vw - 768px), 0px);
}
}

@media (min-width: 1401px) {

.page-box-content  {
    width: 1400px;
} 
.column-40 {
    width: 40%;
    padding-top: 60px;
}
.column-60-h {
    width: 60%;
    padding-top: 30px;
}
.h-text {
    padding-left: 128px;
    margin-top: -100px;
}
.h-text h1 {
    font-size: 62px;
    font-weight: 700;
    line-height: 1.0;
    margin-bottom: 60px;
    color: var(--color-menu-right-2);
}
.h-text h2 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.0;
    color: #667687;
}
.h-text p {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    color: #667687;
    margin-bottom: 60px;
}

.column-50 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}
.column-55 {
    display: grid;
    grid-template-columns: 55% 45%;
    gap: 40px;
}
.int-block  {
    padding: 20px 40px;
}
}
