:root { --max-width-desktop: 100vw; --p: 1.25vw; --gap: 1.04167vw; --header-height: 3.33333vw; }

/* ******* */
/* Layout */
body { min-width: 0; font-size: 0.83333vw; }

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

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

.h2 { font-size: 4.47917vw; letter-spacing: -0.02em; }

.h3 { font-size: 3.33333vw; letter-spacing: -0.02em; }

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

.h6 { font-size: 1.35417vw; 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: 0.12708vw; }

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

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

.button_rounded { border-radius: 0.625vw; }

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

.button_red { font-size: 0.9375vw; box-shadow: 0px 0.3125vw 0.10417vw rgba(102, 0, 0, 0.18); }

.button_white { box-shadow: 0px 0.3125vw 0.10417vw rgba(82, 82, 82, 0.18); }

.button_black { box-shadow: 0px 0.3125vw 0.10417vw rgba(82, 82, 82, 0.18); }

.form__items { gap: 1.04167vw; margin-bottom: 1.04167vw; }

.form__item-label { font-size: 0.98958vw; }

.form__item_radio { gap: 1.04167vw; border-radius: 0.625vw; padding: 0.625vw 0.625vw 0.625vw 1.25vw; }

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

.form__input { min-height: 3.125vw; font-size: 0.98958vw; outline-width: 1px; border-radius: 0.625vw; padding-inline: 1.04167vw; }

.form__select { background-size: 0.83333vw auto; }

.form__input-select { background-position: right 1.30208vw center; }

.form__button, .form__group .form__button, .form__answer .form__button { min-height: 3.125vw; font-size: 1.19792vw; }

.form__footer { gap: 0.57292vw; font-size: 0.72917vw; line-height: 1.2; margin-top: 0.83333vw; }

.form__footer-checkbox { width: 0.83333vw; height: 0.83333vw; font-size: 0.83333vw; border-radius: 0.20833vw; }

.popup__overlay { backdrop-filter: blur(0.52083vw); }

.popup__inner { display: flex; padding: 1.04167vw 0; }

.popup__inner:has(.popup__buttons_inset) { padding: 1.04167vw; }

.popup__buttons { order: 2; flex-direction: column; margin: 0 0 auto 0.41667vw; }

.popup__buttons-button { width: 3.125vw; height: 3.125vw; border-radius: 0.41667vw; }

.popup__buttons-close { font-size: 0.78125vw; }

.popup__buttons_inset { top: 2.08333vw; right: 2.08333vw; }

.popup__buttons_inset .popup__buttons-button { width: 2.08333vw; height: 2.08333vw; font-size: 0.46875vw; border-width: 1px; }

.popup__content { max-width: 47.39583vw; border-radius: 0.83333vw; }

.popup .form__text { margin-bottom: 0.625vw; }

.popup .form__title { margin-bottom: 1.66667vw; }

.popup .form__items { gap: 1.04167vw; margin-bottom: 4.16667vw; }

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

.header_common { max-width: var(--max-width-desktop); padding: 0.625vw 2.08333vw; margin-inline: auto; }

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

.header-logo__synergy-img { width: 9.42708vw; }

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

.header-logo__partner-img { max-width: 8.85417vw; max-height: 1.5625vw; }

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

.header-menu__button { width: auto; min-height: 2.08333vw; font-size: 0.83333vw; border-radius: 5.15625vw; box-shadow: none; padding-inline: 0.83333vw; }

.main { min-height: 34.375vw; text-align: left; border-radius: 0.83333vw; padding-block: 1.09375vw 1.25vw; margin-bottom: 4.16667vw; }

.main__note { width: auto; max-width: none; min-height: 2.08333vw; font-size: 1.19792vw; backdrop-filter: blur(1.14583vw); padding-inline: 1.04167vw; margin: 0 auto 1.61458vw 0; }

.main__title { max-width: 52.08333vw; font-size: 5.10417vw; margin: 0 0 auto; }

.main__text { max-width: 38.02083vw; font-size: 2.5vw; line-height: 1.1; margin: auto 0 1.25vw; }

.main__button { max-width: 30vw; min-height: 3.125vw; font-size: 1.19792vw; }

.synergy { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gap); border-radius: 1.45833vw; padding: 4.16667vw 2.08333vw 3.22917vw; margin-inline: -2.08333vw; }

.synergy__title { grid-column: span 2; margin-bottom: 1.25vw; }

.synergy__text { display: flex; flex-direction: column; border-radius: 0.83333vw; padding-block: 1.25vw; margin-bottom: 0; }

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

.synergy__text-2 { font-size: 1.35417vw; letter-spacing: 0; }

.synergy__text-footer { gap: 0.625vw; align-items: flex-end; margin-top: 2.08333vw; }

.synergy__text-icon { width: 2.5vw; height: 2.5vw; font-size: 2.5vw; }

.synergy__button { max-width: 15.88542vw; min-height: 3.125vw; font-size: 1.19792vw; margin: 0 auto 0 0; }

.synergy__video { height: 100%; border-radius: 0.83333vw; }

.synergy__video-note { width: auto; position: absolute; top: 1.04167vw; left: 1.04167vw; font-size: 0.83333vw; font-weight: 600; border-radius: 0.83333vw; background: rgba(255, 255, 255, 0.01); backdrop-filter: blur(1.14583vw); padding: 0.52083vw 1.04167vw; }

.synergy__video-image { height: 100%; }

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

.synergy__video-button { font-size: 4.16667vw; }

.synergy__cards { grid-column: span 2; }

.synergy__card { max-width: none; min-height: 7.76042vw; flex-shrink: 1; border-radius: 0.83333vw; padding-block: 1.04167vw; }

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

.synergy__card-text { font-size: 0.98958vw; }

.synergy__card-icon { font-size: 5.72917vw; }

.programs { padding: 4.16667vw 0 0; }

.programs__count { font-size: 0.83333vw; padding: 0.52083vw 1.04167vw; }

.programs__title { margin-bottom: 2.55208vw; }

.programs__title-count { margin: 1.04167vw 0 0 1.04167vw; }

.programs__tabs { flex-wrap: wrap; gap: 0.625vw; }

.programs__tabs-button { min-height: 2.5vw; font-size: 0.98958vw; border-radius: 0.83333vw; padding-inline: 0.83333vw; }

.programs__category { padding-top: 3.125vw; }

.programs__category-header { gap: 0.52083vw; margin-bottom: 1.66667vw; }

.programs__category-title { flex: 0 1 auto; font-size: 3.33333vw; }

.programs__category-count { margin-top: 0.78125vw; }

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

.programs__card { max-width: 31.25vw; min-height: 19.58333vw; display: flex; flex-direction: column; border-radius: 0.83333vw; box-shadow: 0px 0.0875vw 0.20708vw rgba(0, 0, 0, 0.06); cursor: pointer; }

.programs__card-category { font-size: 0.78125vw; margin-bottom: 0.625vw; }

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

.programs__card-info { display: flex; gap: 0.625vw; margin-bottom: auto; }

.programs__card-note { gap: 0.20833vw; font-size: 0.98958vw; line-height: 1.2; margin-top: 0.625vw; }

.programs__card-note:before { font-size: 1.14583vw; }

.programs__card-time { font-size: 0.98958vw; line-height: 1.2; margin-top: 0.625vw; }

.programs__card-price { gap: 0.625vw; line-height: 1.1; padding-top: 0.625vw; }

.programs__card-price-old { font-size: 1.35417vw; line-height: 1.2; }

.programs__card-price-new { font-size: 1.97917vw; }

.programs__card-discount { font-size: 1.35417vw; line-height: 1.15; padding: 0.3125vw 0.41667vw; }

.programs__card-button { max-width: 9.6875vw; min-height: 2.5vw; font-size: 0.78125vw; border-radius: 0.52083vw; margin-top: 1.04167vw; }

.programs__button-more { max-width: 15.10417vw; min-height: 3.125vw; font-size: 0.83333vw; margin-top: 2.08333vw; }

.credit { padding: 4.53125vw 0.52083vw 0; }

.credit__header { min-height: 22.8125vw; overflow: clip; position: relative; z-index: 2; display: flex; flex-direction: column; border-radius: 0.83333vw; margin-bottom: 1.04167vw; }

.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: 1.51042vw; }

.credit__text { flex: 1 1 100%; display: flex; flex-direction: column; border-radius: 0; background: none; padding-block: 1.45833vw 1.25vw; margin-bottom: 0; }

.credit__text-1 { max-width: 39.32292vw; font-size: 1.35417vw; letter-spacing: 0; margin-bottom: 0.83333vw; }

.credit__text-2 { max-width: 31.25vw; font-size: 1.19792vw; margin-bottom: 0.83333vw; }

.credit__button { max-width: 21.66667vw; min-height: 3.54167vw; font-size: 1.19792vw; margin-top: auto; }

.credit__cards { gap: 1.04167vw; }

.credit__card { max-width: none; min-height: 9.16667vw; flex-shrink: 1; border-radius: 0.83333vw; background: var(--gray-20) no-repeat 0 0/cover; padding-block: 1.25vw; }

.credit__card-note { min-height: 2.08333vw; font-size: 0.83333vw; background: none; border-radius: 5.15625vw; outline-color: inherit; padding-inline: 1.04167vw; }

.credit__card-price { font-size: 1.97917vw; }

.credit__card-icon { font-size: 2.91667vw; margin-top: -0.36458vw; }

.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: 4.11458vw; }

.request__content { min-height: 28.125vw; color: white; border-radius: 0.83333vw 0 0 0.83333vw; 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: 1.04167vw 1.25vw; margin: 0; }

.request__title { max-width: 22.91667vw; font-size: 2.5vw; margin-bottom: auto; }

.request__text { max-width: 35.41667vw; font-size: 1.35417vw; letter-spacing: 0; }

.request__info { gap: 0.41667vw; margin-bottom: 0.625vw; }

.request__info-item { min-height: 2.08333vw; font-size: 0.83333vw; backdrop-filter: blur(1.14583vw); padding-inline: 1.04167vw; }

.request__form { align-content: center; border-radius: 0 0.83333vw 0.83333vw 0; padding-block: 1.25vw; }

.request .form__title { margin: 0 0 1.66667vw; }

.footer { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 6.92708vw 0 2.39583vw; }

.footer__meta { flex-basis: 100%; flex-direction: row; gap: 1.25vw; font-size: 0.78125vw; margin-top: 2.70833vw; }

.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: 93.75vw; max-width: none; box-shadow: 0px 0.20833vw 0.625vw rgba(0, 0, 0, 0.25); backdrop-filter: blur(2.08333vw); }
