:root { --max-width-desktop: 1920px; --p: 24px; --gap: 20px; --header-height: 64px; }

/* ******* */
/* Layout */
body { min-width: 0; font-size: 16px; }

.wrapper { max-width: var(--max-width-desktop); padding-inline: 40px; margin-inline: auto; }

/***********/
/* Common */
.d-mobile { display: none !important; }

.h2 { font-size: 86px; letter-spacing: -0.02em; }

.h3 { font-size: 64px; letter-spacing: -0.02em; }

.h4 { font-size: 48px; line-height: 1.1; letter-spacing: -0.02em; }

.h6 { font-size: 26px; letter-spacing: 0; }

/* Lists */
.list-squared { list-style: none; padding-left: 0; }

.list-squared > * { position: relative; padding-left: 1.5em; }

.list-squared > *:before { content: ''; position: absolute; left: 0; top: 0.25em; box-shadow: inset -1em 0; border-radius: 2.44px; }

@media (max-width: 767px) { .list-squared > *:before { width: 8px; height: 8px; } }

@media (min-width: 768px) { .list-squared > *:before { width: 12px; height: 12px; } }

.button_rounded { border-radius: 12px; }

.button_bordered { outline-width: 1px; outline-offset: -1px; }

.button_red { font-size: 18px; box-shadow: 0px 6px 2px rgba(102, 0, 0, 0.18); }

.button_white { box-shadow: 0px 6px 2px rgba(82, 82, 82, 0.18); }

.button_black { box-shadow: 0px 6px 2px rgba(82, 82, 82, 0.18); }

.form__items { gap: 20px; margin-bottom: 20px; }

.form__item-label { font-size: 19px; }

.form__item_radio { gap: 20px; border-radius: 12px; padding: 12px 12px 12px 24px; }

.form__item-radio { width: 32px; height: 32px; font-size: 32px; outline-width: 1px; }

.form__input { min-height: 60px; font-size: 19px; outline-width: 1px; border-radius: 12px; padding-inline: 20px; }

.form__select { background-size: 16px auto; }

.form__input-select { background-position: right 25px center; }

.form__button, .form__group .form__button, .form__answer .form__button { min-height: 60px; font-size: 23px; }

.form__footer { gap: 11px; font-size: 14px; line-height: 1.2; margin-top: 16px; }

.form__footer-checkbox { width: 16px; height: 16px; font-size: 16px; border-radius: 4px; }

.popup__overlay { backdrop-filter: blur(10px); }

.popup__inner { display: flex; padding: 20px 0; }

.popup__inner:has(.popup__buttons_inset) { padding: 20px; }

.popup__buttons { order: 2; flex-direction: column; margin: 0 0 auto 8px; }

.popup__buttons-button { width: 60px; height: 60px; border-radius: 8px; }

.popup__buttons-close { font-size: 15px; }

.popup__buttons_inset { top: 40px; right: 40px; }

.popup__buttons_inset .popup__buttons-button { width: 40px; height: 40px; font-size: 9px; border-width: 1px; }

.popup__content { max-width: 910px; border-radius: 16px; }

.popup .form__text { margin-bottom: 12px; }

.popup .form__title { margin-bottom: 32px; }

.popup .form__items { gap: 20px; margin-bottom: 80px; }

.header { display: flex; flex-direction: row; justify-content: space-between; align-items: center; }

.header_common { max-width: var(--max-width-desktop); padding: 12px 40px; margin-inline: auto; }

.header-logo { gap: 14px; margin: 1px 0 0; }

.header-logo__synergy-img { width: 181px; }

.header-logo__partner { border-width: 1px; padding-left: 8px; }

.header-logo__partner-img { max-width: 170px; max-height: 30px; }

.header-menu { justify-content: flex-end; flex-wrap: wrap; gap: 4px; padding: 0; margin: 0; }

.header-menu__button { width: auto; min-height: 40px; font-size: 16px; border-radius: 99px; box-shadow: none; padding-inline: 16px; }

.main { min-height: 660px; text-align: left; border-radius: 16px; padding-block: 21px 24px; margin-bottom: 80px; }

.main__note { width: auto; max-width: none; min-height: 40px; font-size: 23px; backdrop-filter: blur(22px); padding-inline: 20px; margin: 0 auto 31px 0; }

.main__title { max-width: 1000px; font-size: 98px; margin: 0 0 auto; }

.main__text { max-width: 730px; font-size: 48px; line-height: 1.1; margin: auto 0 24px; }

.main__button { max-width: 576px; min-height: 60px; font-size: 23px; }

.synergy { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gap); border-radius: 28px; padding: 80px 40px 62px; margin-inline: -40px; }

.synergy__title { grid-column: span 2; margin-bottom: 24px; }

.synergy__text { display: flex; flex-direction: column; border-radius: 16px; padding-block: 24px; margin-bottom: 0; }

.synergy__text-1 { font-size: 48px; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: auto; }

.synergy__text-2 { font-size: 26px; letter-spacing: 0; }

.synergy__text-footer { gap: 12px; align-items: flex-end; margin-top: 40px; }

.synergy__text-icon { width: 48px; height: 48px; font-size: 48px; }

.synergy__button { max-width: 305px; min-height: 60px; font-size: 23px; margin: 0 auto 0 0; }

.synergy__video { height: 100%; border-radius: 16px; }

.synergy__video-note { width: auto; position: absolute; top: 20px; left: 20px; font-size: 16px; font-weight: 600; border-radius: 16px; background: rgba(255, 255, 255, 0.01); backdrop-filter: blur(22px); padding: 10px 20px; }

.synergy__video-image { height: 100%; }

.synergy__video-img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.synergy__video-button { font-size: 80px; }

.synergy__cards { grid-column: span 2; }

.synergy__card { max-width: none; min-height: 149px; flex-shrink: 1; border-radius: 16px; padding-block: 20px; }

.synergy__card-num { font-size: 48px; line-height: 1.1; letter-spacing: -0.02em; }

.synergy__card-text { font-size: 19px; }

.synergy__card-icon { font-size: 110px; }

.programs { padding: 80px 0 0; }

.programs__count { font-size: 16px; padding: 10px 20px; }

.programs__title { margin-bottom: 49px; }

.programs__title-count { margin: 20px 0 0 20px; }

.programs__tabs { flex-wrap: wrap; gap: 12px; }

.programs__tabs-button { min-height: 48px; font-size: 19px; border-radius: 16px; padding-inline: 16px; }

.programs__category { padding-top: 60px; }

.programs__category-header { gap: 10px; margin-bottom: 32px; }

.programs__category-title { flex: 0 1 auto; font-size: 64px; }

.programs__category-count { margin-top: 15px; }

.programs__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); }

.programs__card { max-width: 600px; min-height: 376px; display: flex; flex-direction: column; border-radius: 16px; box-shadow: 0px 1.68px 3.976px rgba(0, 0, 0, 0.06); cursor: pointer; }

.programs__card-category { font-size: 15px; margin-bottom: 12px; }

.programs__card-title { font-size: 48px; line-height: 1.1; letter-spacing: -0.02em; }

.programs__card-info { display: flex; gap: 12px; margin-bottom: auto; }

.programs__card-note { gap: 4px; font-size: 19px; line-height: 1.2; margin-top: 12px; }

.programs__card-note:before { font-size: 22px; }

.programs__card-time { font-size: 19px; line-height: 1.2; margin-top: 12px; }

.programs__card-price { gap: 12px; line-height: 1.1; padding-top: 12px; }

.programs__card-price-old { font-size: 26px; line-height: 1.2; }

.programs__card-price-new { font-size: 38px; }

.programs__card-discount { font-size: 26px; line-height: 1.15; padding: 6px 8px; }

.programs__card-button { max-width: 186px; min-height: 48px; font-size: 15px; border-radius: 10px; margin-top: 20px; }

.programs__button-more { max-width: 290px; min-height: 60px; font-size: 16px; margin-top: 40px; }

.credit { padding: 87px 10px 0; }

.credit__header { min-height: 438px; overflow: clip; position: relative; z-index: 2; display: flex; flex-direction: column; border-radius: 16px; margin-bottom: 20px; }

.credit__image { position: absolute; inset: 0; z-index: -1; margin: 0; }

.credit__img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; border-radius: 0; }

.credit__title { margin-bottom: 29px; }

.credit__text { flex: 1 1 100%; display: flex; flex-direction: column; border-radius: 0; background: none; padding-block: 28px 24px; margin-bottom: 0; }

.credit__text-1 { max-width: 755px; font-size: 26px; letter-spacing: 0; margin-bottom: 16px; }

.credit__text-2 { max-width: 600px; font-size: 23px; margin-bottom: 16px; }

.credit__button { max-width: 416px; min-height: 68px; font-size: 23px; margin-top: auto; }

.credit__cards { gap: 20px; }

.credit__card { max-width: none; min-height: 176px; flex-shrink: 1; border-radius: 16px; background: var(--gray-20) no-repeat 0 0/cover; padding-block: 24px; }

.credit__card-note { min-height: 40px; font-size: 16px; background: none; border-radius: 99px; outline-color: inherit; padding-inline: 20px; }

.credit__card-price { font-size: 38px; }

.credit__card-icon { font-size: 56px; margin-top: -7px; }

.credit__card_3 { background-image: url("data:image/svg+xml,%3Csvg width='348' height='176' viewBox='0 0 348 176' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_2027_576)'%3E%3Crect width='348' height='176' fill='%23ECEDF0'/%3E%3Cg filter='url(%23filter0_f_2027_576)'%3E%3Cellipse cx='343.5' cy='-284.5' rx='267.5' ry='293.5' fill='%23ED131C'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3Cfilter id='filter0_f_2027_576' x='-168' y='-822' width='1023' height='1075' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='BackgroundImageFix' result='shape'/%3E%3CfeGaussianBlur stdDeviation='122' result='effect1_foregroundBlur_2027_576'/%3E%3C/filter%3E%3CclipPath id='clip0_2027_576'%3E%3Crect width='348' height='176' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A"); }

.request { display: grid; grid-template-columns: repeat(2, 1fr); padding-top: 79px; }

.request__content { min-height: 540px; color: white; border-radius: 16px 0 0 16px; background-image: url("../img/request/bg_d-b86b5fde6f.jpg"); background-size: cover; padding: 0; }

.request__header { height: 100%; display: flex; flex-direction: column; border-radius: 0; background: none; padding-block: 20px 24px; margin: 0; }

.request__title { max-width: 440px; font-size: 48px; margin-bottom: auto; }

.request__text { max-width: 680px; font-size: 26px; letter-spacing: 0; }

.request__info { gap: 8px; margin-bottom: 12px; }

.request__info-item { min-height: 40px; font-size: 16px; backdrop-filter: blur(22px); padding-inline: 20px; }

.request__form { align-content: center; border-radius: 0 16px 16px 0; padding-block: 24px; }

.request .form__title { margin: 0 0 32px; }

.footer { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 133px 0 46px; }

.footer__meta { flex-basis: 100%; flex-direction: row; gap: 24px; font-size: 15px; margin-top: 52px; }

.footer__meta-item_first { order: 10; margin-left: auto; }

.footer__meta-item_last { order: -1; }

.popup-video .popup__inner { width: auto; }

.popup-video .popup__content { min-width: 1800px; max-width: none; box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.25); backdrop-filter: blur(40px); }
