/* ===================================================================
   Variables
   =================================================================== */
:root {
  /* Основные переменные */
  --max-width: 1440px;
  --gap: 20px;
  --main-font: 'Manrope', Arial, sans-serif;
  

  /* Цвета */
  --clr-h1: white;
  --clr-subtitle:#c7d2e9;
  
  
  
  --clr-black: linear-gradient(0.354turn, #2d2f38, #292929);
  --clr-title: #303030;
  --clr-accent: #007bff;
  --clr-text: #1c2241;
  --clr-link: #007AFF;
  --color-blue: #007BFF;  /* для кнопок */

  /* Размер шрифта для крошек */
  --fs-breadcrumb: clamp(12px, 1vw, 14px);
}

/* Изменение переменных на планшетах */
@media (max-width: 1199px) {
 
  
}

.t-popup.t-popup_show {
    backdrop-filter: blur(15px);   
}

/* ===================================================================
   Reset
   =================================================================== */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ===================================================================
   Layout & Containers
   =================================================================== */
.page-container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 20px;
}

@media (max-width:1199px){
  .page-container {
    padding: 0 10px;
  }
}


.t-quiz {
  max-width: 1360px !important;
  margin: 0 auto;
}

/* ===================================================================
   Header & Typography
   =================================================================== */

.header-text-container {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    margin-bottom: 10px;
    max-width: var(--max-width);
    padding: 0 20px;
  padding: 40px 0px;
  flex: 1 1 0;
  color: #fff;
 
}





.person {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 12px 16px;
  color: white;
  font-size: 14px;
  line-height: 1.4;
}


.position {
  margin: 4px 0 0 0;
  font-size: 14px;
  opacity: 0.8;
}


.text-img-container {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap:60px;
  margin-bottom: 10px;
  max-width: var(--max-width);
  padding: 0px 40px;
  -webkit-border-radius: 0%;
  --squircle-radius: 40px;
  --squircle-smooth: 1;
  mask-image: paint(squircle);
  -webkit-mask-image: paint(squircle);
  transition: height 0.3s;
  background-color: var(--clr-black);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: white;
  position: relative;
  z-index: 1;
}

.image-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
  overflow: hidden;
  margin: 20px 0;
}

.name {
    position: flex;
    text-align: left;
    font-size: 16px;
    line-height: 1.4;
}

.feedback-card .name {
    text-align: center;
}


.t450__container .button-blue-text {
    color: white;
}

.page-container {
  max-width: var(--max-width);
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: var(--gap);
}



.header-image-container {
  flex-shrink: 0;
  max-width: 300px;
}

.header-image-container img {
  width: 100%;
  height: auto;
  display: block;
}

/* Адаптив */
@media (max-width: 641px) {
  .text-img-container {
    flex-direction: column;
    align-items: flex-start;
  }

.header-text-container {
    padding: 40px 0px 0px 0px;
}

.text-img-container {
gap: 5px;
}
  .header-image-container {
    max-width: 350px;
    margin: 0 auto;
  }
}




.header__title__h1 {
  font-family: var(--main-font);
  color: var(--clr-title);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -2.5px;
  font-size: clamp(32px, 5vw, 48px);
}

.header-subtitle {
  font-family: var(--main-font);
  color: var(--clr-subtitle);
  font-weight: 550;
  line-height: 1.1;
  letter-spacing: -0.55px;
  font-size: clamp(22px, 3vw, 32px);
}

.header-description p {
  font-family: var(--main-font);
  font-weight: 400;
  line-height: 1.5;
  font-size: clamp(14px, 2.5vw, 18px);
  color: white;
  opacity: 0.7;
}

/* ===================================================================
   Breadcrumbs
   =================================================================== */
/* Breadcrumbs */
.breadcrumbs-container {
  
  max-width: var(--max-width);
  /*background: linear-gradient(0.5turn, #fff 0%, #f8f9fd 100%);*/
  margin: 0 auto;
  padding: 10px;
}

.breadcrumbs {
  display: flex;
  flex-wrap: nowrap;                    /* запретить перенос */
  overflow-x: auto;                     /* горизонтальный скролл */
  -webkit-overflow-scrolling: touch;     /* плавный скролл на iOS */

  /* Скрыть скроллбар */
  -ms-overflow-style: none;             /* IE, Edge */
  scrollbar-width: none;                /* Firefox */

  align-items: center;
  font-family: var(--main-font);
  font-size: var(--fs-breadcrumb);
  color: var(--clr-text);
  list-style: none;
  white-space: nowrap;                  /* не разрывать слова */
  margin: 0 auto;
   max-width: var(--max-width);
}

/* Скрыть скроллбар в WebKit-браузерах */
.breadcrumbs::-webkit-scrollbar {
  display: none;
}

.breadcrumbs li {
  flex: 0 0 auto;                       /* фиксированная ширина по содержимому */
}

.breadcrumbs li + li::before {
  content: '/';
  margin: 0 var(--gap);
  color: var(--clr-text);
}

.breadcrumb-link {
  color: var(--clr-link);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.breadcrumb-link:hover {
  color: var(--clr-accent);
  text-decoration: underline;
}

.breadcrumb-current {
  font-weight: 500;
  color: var(--clr-text);
  max-width: 80vw;                      /* ограничение ширины */
  overflow: hidden;
  text-overflow: ellipsis;              /* «…» при обрезке */
  white-space: nowrap;
}



/* ===================================================================
   Buttons
   =================================================================== */
.button-blue {
  display: inline-flex;
  align-items: center;
  padding: 10px;
  background: var(--color-blue);
  color: #ffffff;
  border: none;
  border-radius: 150px;
  transition: transform 0.3s;
  cursor: pointer;
}
.button-blue:hover {
  transform: scale(1.03);
}
.button-blue .arrow-in-button {
  width: 50px;
  height: 50px;
  background: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s ease;
  flex-shrink: 0;
}
.button-blue .arrow-in-button svg path {
  stroke: var(--color-blue);
}
.button-blue:hover .arrow-in-button {
  transform: rotate(180deg);
}
.arrow-in-button svg {
  width: 1.85rem;
  height: 1.85rem;
}
.button-blue-text {
  padding: 0 20px 0 10px;
  font-family: var(--main-font);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  
  white-space: nowrap;
  font-size: clamp(14px, 4vw, 18px);
}

}

/* ===================================================================
   Form Success Box
   =================================================================== */
.t-form__successbox {
  background: #62c584;
  color: #fff;
  border-radius: 10px;
  margin-bottom: 20px;
  padding: 20px;
  text-align: center;
}

/* ===================================================================
   Quote Styles
   =================================================================== */
.t090 svg polygon {
  fill: #e1e6ef;
}
.t090__outer {
  border-top: 4px solid #e1e6ef;
}
.t090__autor-descr {
  letter-spacing: 0px;
}


.t090__img {
    position: relative;
    width: 80px;
    height: 80px;
    margin-right: 20px;
    float: left;
    border-radius: 0%;
    -moz-border-radius: 0%;
    -webkit-border-radius: 0%;
    --squircle-radius: 30px;
    --squircle-smooth: 1;
    mask-image: paint(squircle);
    -webkit-mask-image: paint(squircle);
    transition: height 0.3s;
}

/* ===================================================================
   Background & Misc
   =================================================================== */
.fon-image {
  z-index: -9999999 !important;
}
.t886 {
  width: 100%;
  padding-bottom: 0 !important;
  display: flex;
  justify-content: center;
}
.img-zoom {
  border-radius: 100px;
  overflow: hidden;
}
.img-zoom .tn-atom {
  border-radius: 100px;
  transition: transform 300ms ease-in-out;
}
.img-zoom:hover .tn-atom {
  transform: scale(1.15);
}





/* ===================================================================
   Squircle Masks
   =================================================================== */
.squircle70, .squircle40, .squircle30, .squircle20, .squircle10,
.t-img, .t404__img, .t404__imgbox {
  mask-image: paint(squircle);
  -webkit-mask-image: paint(squircle);
}
.squircle70 { --squircle-radius: 70px; --squircle-smooth: 1; }

@media (max-width: 640px){
    .squircle70 { --squircle-radius: 40px;}
}

.squircle40 { --squircle-radius: 40px; --squircle-smooth: 1; }
.squircle30 { --squircle-radius: 30px; --squircle-smooth: 1; }
.squircle20 { --squircle-radius: 20px; --squircle-smooth: 1; }
.squircle10 { --squircle-radius: 10px; --squircle-smooth: 1; }

