/* First screen: one visual slide based on the supplied desktop composition. */
.voshod-masthead {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    max-width: none;
    height: 96px;
    min-height: 96px;
    margin-bottom: -96px;
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: 0 5px 18px rgb(21 79 132 / 8%);
}

.voshod-masthead__inner {
    display: flex;
    width: auto;
    height: 96px;
    min-height: 96px;
    align-items: center;
    gap: 0;
    margin-left: max(30px, calc((100vw - 1420px) / 2));
    margin-right: 27px;
}

.voshod-masthead__brand { flex: 0 0 260px; gap: 8px; }
.voshod-masthead__brand img { width: 96px; height: 70px; object-fit: contain; }
.voshod-masthead__brand strong { color: #0a3a7a; font-size: 2.9rem; font-style: italic; font-weight: 950; letter-spacing: -.06em; line-height: .94; }
.voshod-masthead__brand small { color: #0a3a7a; font-size: .48rem; font-weight: 800; letter-spacing: .12em; }

.voshod-masthead__nav { flex: 1 1 auto; justify-self: auto; margin: 0 16px; }
.voshod-masthead__menu { flex-wrap: nowrap; gap: clamp(12px, 1.45vw, 25px); white-space: nowrap; }
.voshod-masthead__menu a { color: #092f6d; font-size: 14px; font-weight: 600; }

.voshod-masthead__phone {
    display: flex;
    flex: 0 0 260px;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding-left: 25px;
    border-left: 1px solid #e0edf7;
    color: #0c3779;
    font-size: 16px;
}

.voshod-masthead__phone-icon {
    display: grid;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid #b8defb;
    border-radius: 50%;
    color: #0872e6;
}

.voshod-masthead__phone-icon svg { width: 21px; height: 21px; fill: currentColor; }
.voshod-masthead__phone-copy { display: flex; min-height: 42px; align-items: center; }
.voshod-masthead__phone-copy strong { font-size: 17px; line-height: 1.1; }

.voshod-masthead__cta {
    display: flex;
    flex: 0 0 302px;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    padding: 0 25px 0 30px;
    border: 0;
    border-radius: 30px;
    background: linear-gradient(105deg, #0756bd, #078cf4);
    box-shadow: 0 5px 12px rgb(7 99 207 / 16%);
    color: #fff;
    font-size: 15px;
    white-space: nowrap;
}

.voshod-masthead__cta:hover,
.voshod-masthead__cta:focus { background: linear-gradient(105deg, #064da9, #087ee0); color: #fff; }
.voshod-masthead__cta span { margin-left: 10px; font-size: 1.4rem; }

.voshod-hero--single {
    position: relative;
    height: auto;
    min-height: 585px;
    isolation: isolate;
    overflow: hidden;
    background: #e6f5ff;
}

.voshod-hero--single::before,
.voshod-hero--single::after { display: none; }
.voshod-hero__slide { position: absolute; z-index: 0; inset: 0; overflow: hidden; background: #e6f5ff; }
.voshod-hero__slide-art { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; transform: none; }
.voshod-hero__wash { position: absolute; z-index: 2; inset: 0; background: linear-gradient(90deg, rgb(255 255 255 / 22%) 0%, rgb(255 255 255 / 14%) 36%, transparent 57%); pointer-events: none; }

.voshod-hero--single .voshod-hero__inner {
    position: relative;
    z-index: 1;
    display: block;
    width: min(1420px, calc(100% - 60px));
    height: auto;
    min-height: 0;
    padding: 114px 0 30px;
}

.voshod-hero--single .voshod-hero__copy { position: relative; z-index: 2; width: 690px; max-width: 690px; }
.voshod-hero--single .voshod-eyebrow { margin: 0 0 10px; color: #0873ed; font-size: 17px; font-weight: 800; letter-spacing: .15em; line-height: 20px; }
.voshod-hero--single h1 { display: grid; max-width: none; margin: 0 0 16px; color: #0c3979; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(76px, 5.45vw, 94px); font-style: italic; font-weight: 900; letter-spacing: -.075em; line-height: .88; text-transform: uppercase; transform: skewX(-3deg); transform-origin: left center; }
.voshod-hero--single h1 span { display: block; width: max-content; white-space: nowrap; transform-origin: left center; }
.voshod-hero--single h1 span:first-child { transform: scaleX(1.12); }
.voshod-hero--single h1 span:last-child { color: #087ce5; transform: scaleX(1.18); }
.voshod-hero--single .voshod-hero__lead { margin: 0 0 18px; color: #0c438a; font-size: 35px; font-weight: 800; letter-spacing: .13em; line-height: 1.02; white-space: nowrap; }
.voshod-hero--single .voshod-hero__text { max-width: 530px; margin: 12px 0 0; color: #124a8d; font-size: 20px; font-weight: 400; line-height: 1.22; }
.voshod-hero--single .voshod-actions { display: flex; flex-wrap: nowrap; gap: 18px; margin-top: 16px; }
.voshod-hero--single .voshod-actions .voshod-button { display: inline-flex; min-height: 60px; align-items: center; justify-content: center; border: 0; border-radius: 32px; font-size: 18px; font-weight: 700; white-space: nowrap; }
.voshod-hero--single .voshod-actions .voshod-button:first-child { flex: 0 0 441px; justify-content: space-between; padding: 0 34px 0 54px; background: linear-gradient(105deg, #0753b9, #078bf4); box-shadow: 0 5px 14px rgb(6 93 194 / 15%); }
.voshod-hero--single .voshod-actions .voshod-button:first-child:hover,
.voshod-hero--single .voshod-actions .voshod-button:first-child:focus { background: linear-gradient(105deg, #064da9, #087ee0); }
.voshod-hero--single .voshod-actions .voshod-button--outline { flex: 0 0 224px; border: 1.5px solid #0879ec; background: rgb(255 255 255 / 76%); color: #0870df; }
.voshod-hero--single .voshod-actions .voshod-button--outline:hover,
.voshod-hero--single .voshod-actions .voshod-button--outline:focus { background: #fff; color: #0753b9; }
.voshod-hero--single .voshod-actions .voshod-button span { margin-left: 10px; font-size: 1.5rem; }

.voshod-hero__slogan {
    position: absolute;
    top: 253px;
    right: 1%;
    z-index: 2;
    max-width: 245px;
    color: #fff;
    font-family: "Segoe Script", "Brush Script MT", cursive;
    font-size: 42px;
    font-style: italic;
    line-height: .95;
    text-align: center;
    text-shadow: 0 2px 8px rgb(0 55 112 / 24%);
    transform: rotate(-11deg);
}

.voshod-hero__slogan::after { position: absolute; right: -14px; bottom: -12px; width: 116px; height: 12px; border-bottom: 3px solid currentColor; border-radius: 50%; content: ""; transform: rotate(-12deg); }

/* One direction-specific hero slide on each age-group page. */
.voshod-direction-hero { position: relative; min-height: 660px; isolation: isolate; overflow: hidden; background: #e7f5ff; }
.voshod-direction-hero__slide { position: absolute; z-index: -1; inset: 0; overflow: hidden; }
.voshod-direction-hero__slide img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 44%; }
.voshod-direction-hero__wash { position: absolute; inset: 0; background: linear-gradient(90deg, transparent 0%, rgb(255 255 255 / 6%) 30%, rgb(255 255 255 / 58%) 58%, rgb(255 255 255 / 91%) 78%, rgb(255 255 255 / 96%) 100%); }
.voshod-direction-hero__inner { display: flex; min-height: 660px; align-items: flex-start; justify-content: flex-end; padding-top: 148px; padding-bottom: 46px; }
.voshod-direction-hero__copy { width: min(690px, 54%); margin-left: auto; text-align: right; }
.voshod-direction-hero__copy .voshod-eyebrow { margin-bottom: 14px; font-size: 15px; letter-spacing: .16em; }
.voshod-direction-hero__copy h1 { margin: 0 0 18px; color: #0c3979; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(58px, 5.45vw, 88px); font-weight: 900; letter-spacing: -.065em; line-height: .94; }
.voshod-direction-hero__description { max-width: 610px; margin-left: auto; color: #124a8d; font-size: clamp(19px, 1.45vw, 22px); line-height: 1.35; }
.voshod-direction-hero__description p { margin: 0 0 12px; }
.voshod-direction-hero__description p:last-child { margin-bottom: 0; }
.voshod-direction-hero__description a { color: #0759b8; font-weight: 750; }
.voshod-direction-hero__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 14px; margin-top: 25px; }
.voshod-direction-hero__actions .voshod-button { min-height: 60px; padding: 17px 32px; border: 0; border-radius: 32px; background: linear-gradient(105deg, #0753b9, #078bf4); box-shadow: 0 5px 14px rgb(6 93 194 / 16%); color: #fff; font-size: 17px; font-weight: 800; text-decoration: none; }
.voshod-direction-hero__actions .voshod-button:hover,
.voshod-direction-hero__actions .voshod-button:focus-visible { background: linear-gradient(105deg, #064da9, #087ee0); color: #fff; }
.voshod-direction-hero__actions .voshod-button--outline { border: 1px solid #0879ec; background: rgb(255 255 255 / 86%); box-shadow: none; color: #0759b8; }
.voshod-direction-hero__actions .voshod-button--outline:hover,
.voshod-direction-hero__actions .voshod-button--outline:focus-visible { background: #fff; color: #0753b9; }

@media (max-width: 760px) {
    .voshod-direction-hero { min-height: 760px; }
    .voshod-direction-hero__slide img { object-position: 58% center; }
    .voshod-direction-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 95%) 0%, rgb(255 255 255 / 90%) 44%, rgb(255 255 255 / 74%) 68%, rgb(255 255 255 / 26%) 100%); }
    .voshod-direction-hero__inner { min-height: 760px; align-items: flex-start; padding-top: 126px; padding-bottom: 38px; }
    .voshod-direction-hero__copy { width: 100%; margin-left: 0; text-align: left; }
    .voshod-direction-hero__copy .voshod-eyebrow { font-size: 12px; }
    .voshod-direction-hero__copy h1 { max-width: 540px; margin-bottom: 14px; font-size: clamp(42px, 10vw, 62px); }
    .voshod-direction-hero__description { margin-left: 0; font-size: 18px; }
    .voshod-direction-hero__actions { justify-content: flex-start; gap: 10px; margin-top: 19px; }
    .voshod-direction-hero__actions .voshod-button { min-height: 52px; padding: 14px 20px; }
}

@media (max-width: 420px) {
    .voshod-direction-hero__actions { align-items: stretch; flex-direction: column; }
    .voshod-direction-hero__actions .voshod-button { justify-content: center; }
}

.voshod-why--mock {
    position: relative;
    box-sizing: border-box;
    min-height: clamp(330px, 19.2vw, 384px);
    margin-top: -20px;
    overflow: hidden;
    padding: clamp(24px, 2.4vw, 46px) 0;
    background: #f5fbff url("../images/home/why-background.png") center center / cover no-repeat;
}
.voshod-why--mock .voshod-mock-card-grid { align-items: stretch; }

.voshod-why--mock .voshod-container { position: relative; z-index: 1; width: min(var(--voshod-container), calc(100% - 48px)); }
.voshod-mock-heading { display: flex; min-height: 40px; align-items: center; margin-bottom: 12px; }
.voshod-mock-heading h2 { margin: 0; color: #0955c0; font-size: clamp(29px, 2vw, 40px); font-weight: 800; letter-spacing: -.025em; line-height: 1; white-space: nowrap; }
.voshod-mock-heading > span { flex: 0 0 60px; height: 2px; margin: 2px 0 0 18px; background: #167de8; }
.voshod-mock-heading p { margin: 0 0 0 auto; padding: 7px 12px; border-radius: 4px; background: rgb(255 255 255 / 64%); color: #0872e4; font-size: 11px; font-weight: 800; letter-spacing: .34em; white-space: nowrap; }
.voshod-mock-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.voshod-mock-card { display: flex; min-height: 148px; align-items: flex-start; gap: 13px; padding: 16px; border: 1px solid rgb(159 215 255 / 76%); border-radius: 13px; background: rgb(255 255 255 / 64%); box-shadow: 0 5px 16px rgb(21 101 169 / 5%); backdrop-filter: blur(4px); }
.voshod-mock-card__icon { display: grid; flex: 0 0 54px; width: 54px; height: 54px; place-items: center; margin: 0; border-radius: 50%; background: #d9efff; color: #075fc7; }
.voshod-mock-card__copy { min-width: 0; }
.voshod-mock-card__icon svg { width: 32px; height: 32px; fill: currentColor; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.voshod-mock-card:first-child .voshod-mock-card__icon svg,
.voshod-mock-card:nth-child(3) .voshod-mock-card__icon svg { fill: none; stroke-width: 2.5; }
.voshod-mock-card h3 { margin: 0 0 5px; color: #0753bd; font-size: 17px; font-weight: 800; line-height: 1.1; }
.voshod-mock-card p { margin: 0; color: #2f6bb4; font-size: 14px; line-height: 1.2; }

/* Confirmed current intake groups and the Contact Form 7 application form. */
.voshod-recruitment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.voshod-recruitment-card { min-height: 220px; padding: clamp(24px, 4vw, 38px); border: 1px solid #d2eafb; border-radius: 16px; background: #fff; box-shadow: 0 2px 8px rgb(21 101 169 / 6%); }
.voshod-recruitment-card .voshod-eyebrow { margin-bottom: 12px; }
.voshod-recruitment-card h3 { margin: 0; color: var(--voshod-navy); font-size: clamp(1.5rem, 3vw, 2.1rem); font-weight: 850; line-height: 1.1; }
.voshod-recruitment-card__ages { margin: 10px 0 26px; color: #285889; font-size: 1.05rem; }
.voshod-recruitment-card__link { display: inline-flex; align-items: center; gap: 10px; color: #0759b8; font-weight: 800; text-decoration: none; }
.voshod-recruitment-card__link.voshod-button { min-height: 48px; margin-top: 24px; padding: 12px 22px; border: 0; border-radius: 28px; background: linear-gradient(105deg, #0756bd, #078cf4); box-shadow: 0 5px 12px rgb(7 99 207 / 20%); color: #fff; transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; }
.voshod-recruitment-card__link.voshod-button:hover,
.voshod-recruitment-card__link.voshod-button:focus-visible { color: #fff; text-decoration: none; transform: translateY(-2px); box-shadow: 0 8px 18px rgb(7 99 207 / 28%); filter: brightness(1.05); }
.voshod-contact__inner { display: grid; grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr); align-items: center; gap: clamp(28px, 6vw, 88px); }
.voshod-contact__details { min-width: 0; }
#contact-form { scroll-margin-top: 118px; }
.voshod-contact .voshod-email { color: #fff; text-underline-offset: 3px; }
.voshod-contact__form { min-width: 0; padding: clamp(22px, 3vw, 34px); border-radius: 18px; background: #fff; color: #1c3655; box-shadow: 0 14px 40px rgb(0 25 66 / 18%); }
.voshod-contact__form .wpcf7 form { display: grid; gap: 15px; margin: 0; }
.voshod-contact__form .wpcf7-form p { margin: 0; }
.voshod-contact__form label { display: block; color: #174477; font-size: .9rem; font-weight: 700; }
.voshod-contact__form .wpcf7-form-control-wrap { display: block; margin-top: 7px; }
.voshod-contact__form input[type="text"],
.voshod-contact__form input[type="tel"],
.voshod-contact__form select { width: 100%; min-height: 48px; padding: 10px 13px; border: 1px solid #b9d5ef; border-radius: 8px; background: #fff; color: #123d70; font: inherit; }
.voshod-contact__form input[type="text"]:focus,
.voshod-contact__form input[type="tel"]:focus,
.voshod-contact__form select:focus { border-color: #087ce5; outline: 3px solid rgb(8 124 229 / 18%); outline-offset: 1px; }
.voshod-contact__form .wpcf7-acceptance label { display: flex; align-items: flex-start; gap: 9px; color: #345578; font-size: .82rem; font-weight: 400; line-height: 1.5; }
.voshod-contact__form .wpcf7-acceptance input { flex: 0 0 auto; margin: 4px 0 0; accent-color: #0759b8; }
.voshod-contact__form .wpcf7-acceptance a { color: #0759b8; }
.voshod-contact__form .wpcf7-submit { min-height: 50px; border-color: #0759b8; background: linear-gradient(105deg, #0756bd, #078cf4); }
.voshod-contact__form .wpcf7-spinner { margin: 0 0 0 8px; }
.voshod-contact__form .wpcf7-response-output { margin: 0; padding: 11px 13px; border-radius: 8px; color: #174477; font-size: .9rem; }
.voshod-contact__form .wpcf7-not-valid-tip { margin-top: 5px; color: #b42318; font-size: .8rem; }

@media (max-width: 760px) {
    .voshod-recruitment-grid { grid-template-columns: 1fr; gap: 12px; }
    .voshod-recruitment-card { min-height: 0; padding: 24px; }
    .voshod-recruitment-card__ages { margin-bottom: 20px; }
    .voshod-contact__inner { grid-template-columns: 1fr; gap: 26px; }
    .voshod-contact__form { width: 100%; padding: 21px; }
}

@media (max-width: 1440px) {
    .voshod-masthead { width: 100%; }
    .voshod-masthead__inner { margin-left: 30px; margin-right: 24px; }
    .voshod-masthead__brand { flex-basis: 220px; }
    .voshod-masthead__brand img { width: 72px; }
    .voshod-masthead__brand strong { font-size: 1.7rem; }
    .voshod-masthead__nav { margin-inline: 18px; }
    .voshod-masthead__menu { gap: clamp(10px, 1vw, 16px); }
    .voshod-masthead__menu a { font-size: 13px; }
    .voshod-masthead__phone { flex-basis: 215px; padding-left: 17px; }
    .voshod-masthead__cta { flex-basis: 270px; padding-inline: 22px; font-size: 14px; }
    .voshod-hero--single .voshod-hero__copy { max-width: 62%; }
    .voshod-hero--single h1 { font-size: clamp(70px, 6vw, 88px); }
    .voshod-hero--single .voshod-hero__lead { font-size: 30px; }
    .voshod-hero__slogan { right: 5%; font-size: 37px; }
    .voshod-mock-heading p { letter-spacing: .25em; }
    .voshod-mock-card { padding-inline: 17px; }
    .voshod-mock-card h3 { font-size: 16px; }
    .voshod-mock-card p { font-size: 14px; }
}

@media (max-width: 1080px) {
    .voshod-masthead__inner { margin-left: 24px; margin-right: 24px; }
    .voshod-masthead__brand { flex-basis: 210px; }
    .voshod-masthead__brand img { width: 68px; }
    .voshod-masthead__nav { margin-inline: 14px; }
    .voshod-masthead__menu { gap: 12px; }
    .voshod-masthead__menu a { font-size: 12px; }
    .voshod-masthead__phone { flex-basis: 48px; padding-left: 10px; border-left: 0; }
    .voshod-masthead__phone-copy { display: none; }
    .voshod-masthead__cta { flex-basis: 230px; min-height: 48px; padding-inline: 20px; font-size: 13px; }
    .voshod-hero--single { height: auto; min-height: 625px; }
    .voshod-hero--single .voshod-hero__inner { padding-top: 112px; }
    .voshod-hero--single .voshod-hero__copy { max-width: 65%; }
    .voshod-hero--single h1 { font-size: clamp(66px, 7vw, 78px); }
    .voshod-hero--single .voshod-hero__lead { font-size: 26px; }
    .voshod-hero--single .voshod-hero__text { font-size: 17px; }
    .voshod-hero--single .voshod-actions .voshod-button { min-height: 54px; font-size: 15px; }
    .voshod-hero--single .voshod-actions .voshod-button:first-child { flex-basis: 350px; padding-inline: 28px; }
    .voshod-hero--single .voshod-actions .voshod-button--outline { flex-basis: 180px; }
    .voshod-hero__slogan { top: 230px; font-size: 32px; }
    .voshod-why--mock { min-height: 0; padding: 28px 0; }
    .voshod-mock-heading h2 { font-size: 24px; }
    .voshod-mock-heading p { font-size: 9px; letter-spacing: .15em; }
    .voshod-mock-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .voshod-mock-card { min-height: 130px; padding: 13px; }
    .voshod-mock-card__icon { width: 58px; height: 58px; }
    .voshod-mock-card__icon svg { width: 36px; height: 36px; }
}

@media (max-width: 760px) {
    .voshod-masthead { height: auto; min-height: 66px; margin-bottom: 0; }
    .voshod-masthead__inner { height: auto; min-height: 66px; flex-wrap: wrap; justify-content: space-between; margin: 0 18px; }
    .voshod-masthead__brand { flex: 0 0 auto; gap: 7px; }
    .voshod-masthead__brand img { width: 54px; height: 52px; }
    .voshod-masthead__brand strong { font-size: 1.45rem; }
    .voshod-masthead__brand small { font-size: .43rem; }
    .voshod-masthead__phone, .voshod-masthead__cta { display: none; }
    .voshod-masthead__nav { order: 3; flex: 0 0 100%; width: 100%; overflow-x: auto; justify-self: auto; margin: 0; padding: 0 0 10px; }
    .voshod-masthead__menu { width: max-content; justify-content: flex-start; gap: 18px; }
    .voshod-masthead__menu a { font-size: 12px; }
    .voshod-hero--single { height: auto; min-height: 930px; }
    .voshod-hero__slide-art { object-position: 69% top; }
    .voshod-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 90%) 0%, rgb(255 255 255 / 83%) 44%, rgb(255 255 255 / 22%) 72%, transparent 100%), linear-gradient(90deg, rgb(255 255 255 / 60%), transparent); }
    .voshod-hero--single .voshod-hero__inner { width: min(100% - 36px, 560px); min-height: 930px; padding-top: 122px; }
    .voshod-hero--single .voshod-hero__copy { width: 100%; max-width: 100%; }
    .voshod-hero--single .voshod-eyebrow { max-width: 320px; margin-bottom: 12px; font-size: 12px; letter-spacing: .13em; }
    .voshod-hero--single h1 { margin-bottom: 14px; font-size: clamp(50px, 13vw, 68px); line-height: .88; }
    .voshod-hero--single h1 span:first-child, .voshod-hero--single h1 span:last-child { transform: none; }
    .voshod-hero--single .voshod-hero__lead { margin-bottom: 13px; font-size: clamp(20px, 5.6vw, 27px); letter-spacing: .1em; line-height: 1.05; white-space: normal; }
    .voshod-hero--single .voshod-hero__text { max-width: 420px; font-size: 16px; line-height: 1.3; }
    .voshod-desktop-break { display: none; }
    .voshod-hero--single .voshod-actions { align-items: stretch; flex-direction: column; gap: 10px; margin-top: 19px; }
    .voshod-hero--single .voshod-actions .voshod-button,
    .voshod-hero--single .voshod-actions .voshod-button:first-child,
    .voshod-hero--single .voshod-actions .voshod-button--outline { flex: 0 0 54px; width: 100%; min-height: 54px; padding-inline: 23px; font-size: 15px; }
    .voshod-hero__slogan { display: none; }
    .voshod-why--mock { min-height: 0; padding: 13px 0 22px; }
    .voshod-why--mock .voshod-container { width: min(100% - 32px, var(--voshod-container)); }
    .voshod-mock-heading { display: block; min-height: 0; margin-bottom: 14px; }
    .voshod-mock-heading h2 { font-size: 23px; white-space: normal; }
    .voshod-mock-heading > span { display: block; width: 58px; margin: 9px 0; }
    .voshod-mock-heading p { font-size: 9px; line-height: 1.5; letter-spacing: .14em; white-space: normal; }
    .voshod-mock-card-grid { grid-template-columns: 1fr; gap: 8px; }
    .voshod-mock-card { min-height: 0; padding: 12px; }
    .voshod-mock-card__icon { flex-basis: 48px; width: 48px; height: 48px; }
    .voshod-mock-card__icon svg { width: 32px; height: 32px; }
    .voshod-mock-card h3 { font-size: 15px; }
    .voshod-mock-card p { font-size: 13px; line-height: 1.25; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-hero--single *, .voshod-hero--single *::before, .voshod-hero--single *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Use the branded masthead on every page and keep its complete logo visible. */
.voshod-masthead {
    position: sticky;
    top: 0;
    z-index: 1000;
    margin-bottom: 0;
}
body.home .voshod-masthead,
body.front-page .voshod-masthead { margin-bottom: -96px; }
.voshod-masthead__brand { flex-shrink: 0; }
.voshod-masthead__brand img {
    display: block;
    flex: 0 0 auto;
    width: 96px;
    height: 78px;
    max-width: none;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 1024px) {
    .voshod-masthead { height: auto; min-height: 0; }
    body.home .voshod-masthead,
    body.front-page .voshod-masthead { margin-bottom: -132px; }
    .voshod-masthead__inner {
        height: auto;
        min-height: 96px;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-left: 24px;
        margin-right: 24px;
    }
    .voshod-masthead__nav {
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        margin: 0;
        padding: 0 0 12px;
    }
    .voshod-masthead__menu { justify-content: center; flex-wrap: wrap; }
}

@media (max-width: 760px) {
    body.home .voshod-masthead,
    body.front-page .voshod-masthead { margin-bottom: 0; }
    .voshod-masthead__inner { min-height: 66px; margin: 0 18px; }
    .voshod-masthead__brand img { width: 54px; height: 52px; }
    .voshod-masthead__nav { justify-content: flex-start; }
    .voshod-masthead__menu { justify-content: flex-start; flex-wrap: nowrap; }
}

/* Five training directions matching the supplied long-page mockup. */
.voshod-training-directions {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 30px 0 40px;
    background: linear-gradient(180deg, #f4fbff 0%, #fff 24%, #f8fcff 100%);
    scroll-margin-top: 110px;
}

.voshod-training-directions::before,
.voshod-training-directions::after {
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    width: 190px;
    background: repeating-linear-gradient(132deg, transparent 0 26px, rgb(29 145 236 / 12%) 27px 42px, transparent 43px 75px);
    content: "";
    pointer-events: none;
}

.voshod-training-directions::before { left: 0; transform: translateX(-82px); }
.voshod-training-directions::after { right: 0; transform: translateX(72px); }

.voshod-training-directions__container {
    position: relative;
    z-index: 1;
    width: min(var(--voshod-container), calc(100% - 48px));
}

.voshod-training-directions__heading {
    display: flex;
    min-height: 38px;
    align-items: center;
    gap: 20px;
    margin-bottom: 13px;
}

.voshod-training-directions__title { display: flex; min-width: 0; align-items: center; }
.voshod-training-directions__title h2 { margin: 0; color: #0955c0; font-size: clamp(23px, 2vw, 30px); font-weight: 800; letter-spacing: -.025em; line-height: 1; white-space: nowrap; }
.voshod-training-directions__title > span { flex: 0 0 60px; height: 2px; margin: 2px 0 0 18px; background: #167de8; }
.voshod-training-directions__heading > p { margin: 0 0 0 auto; color: #0872e4; font-size: 11px; font-weight: 800; letter-spacing: .28em; line-height: 1.4; text-align: right; }

.voshod-training-directions__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.voshod-training-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid #d2eafb; border-radius: 12px; background: rgb(255 255 255 / 97%); box-shadow: 0 2px 7px rgb(21 101 169 / 8%); }
.voshod-training-card__image-link { display: block; overflow: hidden; }
.voshod-training-card__image-link img { display: block; width: 100%; aspect-ratio: 1.49 / 1; object-fit: cover; object-position: center; transition: transform .22s ease; }
.voshod-training-card__image-link:hover img { transform: scale(1.035); }
.voshod-training-card__image-link:focus-visible,
.voshod-training-card__title-link:focus-visible { outline: 3px solid #087ce5; outline-offset: 3px; }
.voshod-training-card__body { position: relative; flex: 1; min-height: 188px; padding: 18px 22px 75px; }
.voshod-training-card__body h3 { margin: 0 0 8px; color: #0753bd; font-size: clamp(16px, 1.25vw, 20px); font-weight: 850; line-height: 1.12; }
.voshod-training-card__title-link { color: inherit; text-decoration: none; }
.voshod-training-card__title-link:hover { color: #087ce5; }
.voshod-training-card__body p { margin: 0; color: #2f6bb4; font-size: 16px; line-height: 1.23; }
.voshod-training-card__body > .voshod-training-card__more { position: absolute; right: auto; bottom: 16px; left: 50%; display: inline-flex; min-height: 42px; align-items: center; justify-content: center; padding: 10px 18px; border: 0; border-radius: 24px; background: linear-gradient(105deg, #0756bd, #078cf4); box-shadow: 0 5px 12px rgb(7 99 207 / 16%); color: #fff; font-size: 14px; font-weight: 750; line-height: 1.2; text-decoration: none; transform: translateX(-50%); transition: background .18s ease, transform .18s ease; }
.voshod-training-card__body > .voshod-training-card__more:hover,
.voshod-training-card__body > .voshod-training-card__more:focus-visible { background: linear-gradient(105deg, #064da9, #087ee0); color: #fff; transform: translate(-50%, -1px); }
.voshod-training-card__body > .voshod-training-card__more:focus-visible { outline: 3px solid rgb(8 124 229 / 35%); outline-offset: 3px; }

#enrollment { scroll-margin-top: 110px; }
.voshod-section#enrollment {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: #0a4f99;
    background-image: linear-gradient(105deg, rgb(3 33 75 / 60%) 0%, rgb(4 57 117 / 50%) 58%, rgb(4 42 91 / 56%) 100%), url("../images/faq/stadium.webp");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll, fixed;
    background-blend-mode: normal, screen;
}
.voshod-section#enrollment::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(130deg, transparent 0 83%, rgb(0 111 221 / 8%) 83% 84%, transparent 84% 90%, rgb(0 111 221 / 7%) 90% 91%, transparent 91%);
    content: "";
    pointer-events: none;
}
.voshod-section#enrollment .voshod-section__heading h2 {
    color: #f6fbff;
    font-family: "Arial Black", Arial, sans-serif;
    font-style: italic;
    font-weight: 900;
    letter-spacing: -.025em;
    text-transform: uppercase;
    transform: skewX(-3deg);
    transform-origin: left center;
}
.voshod-section#enrollment .voshod-section__heading > p { color: #d9edff; }

@media (max-width: 1200px) {
    .voshod-training-directions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .voshod-training-card__body { min-height: 165px; }
    .voshod-training-card__body h3 { font-size: 18px; }
}

@media (max-width: 760px) {
    .voshod-training-directions { padding: 26px 0 30px; }
    .voshod-training-directions__container { width: min(100% - 32px, var(--voshod-container)); }
    .voshod-training-directions__heading { display: block; margin-bottom: 14px; }
    .voshod-training-directions__title { display: block; }
    .voshod-training-directions__title h2 { font-size: 23px; white-space: normal; }
    .voshod-training-directions__title > span { display: block; width: 58px; margin: 9px 0; }
    .voshod-training-directions__heading > p { margin: 0; font-size: 9px; letter-spacing: .14em; text-align: left; }
    .voshod-training-directions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .voshod-training-card__body { min-height: 184px; padding: 15px 14px 66px; }
    .voshod-training-card__body h3 { font-size: 16px; }
    .voshod-training-card__body p { font-size: 14px; }
    .voshod-training-card__body > .voshod-training-card__more { bottom: 12px; min-height: 40px; padding-inline: 15px; font-size: 13px; }
}

@media (max-width: 480px) {
    .voshod-training-directions__grid { grid-template-columns: 1fr; }
    .voshod-training-card__body { min-height: 145px; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-training-card__image-link img,
    .voshod-training-card__body > .voshod-training-card__more { transition: none; }
}

/* Reveal section headings and cards as they enter the viewport. */
.voshod-scroll-reveal-ready .voshod-mock-heading,
.voshod-scroll-reveal-ready .voshod-mock-card,
.voshod-scroll-reveal-ready .voshod-training-directions__heading,
.voshod-scroll-reveal-ready .voshod-training-card {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .62s ease, transform .62s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}

.voshod-scroll-reveal-ready .voshod-mock-heading,
.voshod-scroll-reveal-ready .voshod-mock-card { transform: translateY(14px) scale(.985); transition-duration: .48s; }

.voshod-scroll-reveal-ready .voshod-reveal-visible {
    opacity: 1;
    transform: translateY(0);
}
.voshod-scroll-reveal-ready .voshod-mock-heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-mock-card.voshod-reveal-visible { transform: translateY(0) scale(1); }

@media (prefers-reduced-motion: reduce) {
    .voshod-scroll-reveal-ready .voshod-mock-heading,
    .voshod-scroll-reveal-ready .voshod-mock-card,
    .voshod-scroll-reveal-ready .voshod-training-directions__heading,
    .voshod-scroll-reveal-ready .voshod-training-card {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* Recruitment cards pair each player photo with the group details. */
.voshod-recruitment-card {
    display: grid;
    min-height: 260px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
    padding: 0;
    border-color: rgb(178 220 255 / 62%);
    background: rgb(3 37 82 / 88%);
    box-shadow: 0 12px 30px rgb(0 15 42 / 24%);
}
.voshod-recruitment-card__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 260px;
    grid-column: 1;
    grid-row: 1;
    object-fit: cover;
    object-position: center;
}
.voshod-recruitment-card__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    grid-column: 2;
    grid-row: 1;
    padding: clamp(22px, 2.6vw, 38px);
}
.voshod-recruitment-card__content h3 { color: #f6fbff; }
.voshod-recruitment-card__ages { color: #c9e6ff; }
.voshod-recruitment-card__link { color: #79caff; }
.voshod-recruitment-card__link:hover,
.voshod-recruitment-card__link:focus-visible { color: #c2e8ff; }
.voshod-recruitment-card--girls .voshod-recruitment-card__image { grid-column: 2; }
.voshod-recruitment-card--girls .voshod-recruitment-card__content { grid-column: 1; grid-row: 1; }
.voshod-recruitment-card__ages { margin-bottom: auto; }
.voshod-recruitment-card__link { margin-top: 24px; }

.voshod-scroll-reveal-ready .voshod-section--reveal .voshod-section__heading,
.voshod-scroll-reveal-ready .voshod-section--reveal .voshod-recruitment-card {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .62s ease, transform .62s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}
.voshod-scroll-reveal-ready .voshod-section--reveal .voshod-section__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-section--reveal .voshod-recruitment-card.voshod-reveal-visible {
    opacity: 1;
    transform: translateY(0);
}

/* School story: a compact introduction beside the coaching scene. */
.voshod-about-feature {
    position: relative;
    isolation: isolate;
    display: flex;
    min-height: clamp(520px, 42vw, 720px);
    align-items: center;
    overflow: hidden;
    padding-block: clamp(52px, 6vw, 88px);
    background: #eaf6ff url("../images/school/arena-background.png") center center / cover no-repeat;
}
.voshod-about-feature::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(255 255 255 / 18%) 0%, rgb(255 255 255 / 9%) 38%, transparent 67%); content: ""; pointer-events: none; }
.voshod-about-feature__layout {
    position: relative;
    z-index: 1;
    display: block;
    width: min(var(--voshod-container), calc(100% - 48px));
    margin-inline: auto;
}
.voshod-about-feature__copy { width: min(100%, 650px); }
.voshod-about-feature__brand { display: block; width: clamp(210px, 22vw, 300px); height: auto; margin: 0 0 24px; object-fit: contain; object-position: left center; }
.voshod-about-feature__heading {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 17px;
    margin-bottom: 22px;
}
.voshod-about-feature__heading h2 {
    margin: 0;
    color: #103f7d;
    font-family: "Arial Black", Arial, sans-serif;
    font-size: clamp(3.2rem, 6.2vw, 6rem);
    font-style: italic;
    font-weight: 900;
    letter-spacing: -.055em;
    line-height: .9;
    text-transform: uppercase;
    white-space: nowrap;
    transform: skewX(-3deg);
}
.voshod-about-feature__heading > span {
    width: 76px;
    height: 3px;
    flex: 0 0 3px;
    background: #078cf4;
}
.voshod-about-feature__lead {
    max-width: 620px;
    margin: 0;
    color: #164b8e;
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
    font-weight: 700;
    line-height: 1.45;
}
.voshod-about-feature__description {
    max-width: 620px;
    margin: 13px 0 0;
    color: #315f91;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    line-height: 1.5;
}
.voshod-about-feature__link { gap: 13px; margin-top: 21px; padding-inline: 28px; background: linear-gradient(105deg, #0756bd, #078cf4); border-color: #0873df; }
.voshod-about-feature__link span { font-size: 1.35rem; }
.voshod-about-feature__slogan {
    position: absolute;
    z-index: 1;
    top: 15%;
    right: clamp(30px, 6vw, 110px);
    margin: 0;
    color: #0876df;
    font-family: "Segoe Print", "Comic Sans MS", cursive;
    font-size: clamp(1.7rem, 3.5vw, 3.4rem);
    font-style: italic;
    line-height: 1.03;
    text-align: center;
    text-shadow: 0 1px 8px rgb(255 255 255 / 42%);
    transform: rotate(-8deg);
}
.voshod-about-feature__slogan::after { position: absolute; right: -12px; bottom: -13px; width: 82%; height: 12px; border-bottom: 3px solid currentColor; border-radius: 50%; content: ""; transform: rotate(-8deg); }
.voshod-scroll-reveal-ready .voshod-about-feature__copy {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .68s ease, transform .68s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}
.voshod-scroll-reveal-ready .voshod-about-feature__copy.voshod-reveal-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 980px) {
    .voshod-about-feature { min-height: 580px; background-position: 58% center; }
    .voshod-about-feature__copy { max-width: 600px; }
    .voshod-about-feature__slogan { right: 5%; top: 10%; }
}

@media (max-width: 760px) {
    .voshod-about-feature { min-height: 0; padding-block: 48px; background-position: 64% center; }
    .voshod-about-feature::before { background: linear-gradient(90deg, rgb(255 255 255 / 88%) 0%, rgb(255 255 255 / 72%) 70%, rgb(255 255 255 / 20%) 100%); }
    .voshod-about-feature__layout { width: min(100% - 36px, var(--voshod-container)); }
    .voshod-about-feature__brand { width: min(210px, 68%); margin-bottom: 23px; }
    .voshod-about-feature__heading { gap: 13px; margin-bottom: 18px; }
    .voshod-about-feature__heading h2 { font-size: clamp(3rem, 14vw, 4.2rem); }
    .voshod-about-feature__heading > span { width: 58px; }
    .voshod-about-feature__lead { font-size: 1.04rem; }
    .voshod-about-feature__description { font-size: .98rem; }
    .voshod-about-feature__slogan { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-scroll-reveal-ready .voshod-about-feature__copy { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 760px) {
    .voshod-recruitment-card {
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr;
    }
    .voshod-recruitment-card__image,
    .voshod-recruitment-card--girls .voshod-recruitment-card__image {
        min-height: 0;
        aspect-ratio: 1.35 / 1;
        grid-column: 1;
        grid-row: 1;
    }
    .voshod-recruitment-card__content,
    .voshod-recruitment-card--girls .voshod-recruitment-card__content {
        grid-column: 1;
        grid-row: 2;
        padding: 22px 24px 24px;
    }
    .voshod-recruitment-card__ages { margin-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-scroll-reveal-ready .voshod-section--reveal .voshod-section__heading,
    .voshod-scroll-reveal-ready .voshod-section--reveal .voshod-recruitment-card {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* Accessible compact navigation for narrow screens. */
.voshod-masthead__toggle,
.voshod-masthead__mobile-cta { display: none; }

@media (max-width: 760px) {
    .voshod-masthead { height: auto; min-height: 66px; overflow: visible; }
    .voshod-masthead__inner {
        display: flex;
        height: auto;
        min-height: 66px;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 0;
        margin-inline: 16px;
    }
    .voshod-masthead__brand { flex: 0 1 auto; gap: 7px; margin-right: auto; }
    .voshod-masthead__brand img { width: 54px; height: 52px; }
    .voshod-masthead__brand strong { font-size: 1.45rem; }
    .voshod-masthead__brand small { font-size: .43rem; }
    .voshod-masthead__toggle {
        display: grid;
        width: 44px;
        height: 44px;
        flex: 0 0 44px;
        align-content: center;
        justify-items: center;
        gap: 5px;
        margin: 0;
        padding: 0;
        border: 1px solid #cfe5f8;
        border-radius: 12px;
        appearance: none;
        background: #f2f9ff !important;
        color: #0759b8 !important;
        cursor: pointer;
        box-shadow: none;
    }
    .voshod-masthead__toggle span {
        display: block;
        width: 20px;
        height: 2px;
        border-radius: 2px;
        background: #0759b8 !important;
        transition: transform .18s ease, opacity .18s ease;
    }
    .voshod-masthead__toggle:focus-visible { outline: 3px solid rgb(8 124 229 / 35%); outline-offset: 3px; }
    .voshod-masthead__nav {
        order: 3;
        display: flex;
        flex: 0 0 100%;
        width: 100%;
        flex-direction: column;
        justify-self: stretch;
        overflow: visible;
        margin: 0;
        padding: 0;
        border-top: 1px solid transparent;
    }
    .voshod-mobile-menu-ready .voshod-masthead__nav { display: none; }
    .voshod-mobile-menu-ready .voshod-masthead.is-menu-open .voshod-masthead__nav {
        display: flex;
        padding: 10px 0 16px;
        border-top-color: #e3eff9;
    }
    .voshod-masthead__menu {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 4px 8px;
        margin: 0;
        padding: 0;
        list-style: none;
        white-space: normal;
    }
    .voshod-masthead__menu a {
        display: flex;
        min-height: 44px;
        align-items: center;
        padding: 9px 10px;
        border-radius: 8px;
        font-size: 14px;
        line-height: 1.25;
        white-space: normal;
    }
    .voshod-masthead__menu a:hover,
    .voshod-masthead__menu a:focus-visible { background: #f0f8ff; }
    .voshod-masthead__mobile-cta { display: none; }
    .voshod-masthead.is-menu-open .voshod-masthead__mobile-cta {
        display: flex;
        width: 100%;
        min-height: 46px;
        flex: 0 0 auto;
        margin-top: 8px;
        padding-inline: 16px;
        font-size: 14px;
    }
    .voshod-masthead.is-menu-open .voshod-masthead__toggle span:first-child { transform: translateY(7px) rotate(45deg); }
    .voshod-masthead.is-menu-open .voshod-masthead__toggle span:nth-child(2) { opacity: 0; }
    .voshod-masthead.is-menu-open .voshod-masthead__toggle span:last-child { transform: translateY(-7px) rotate(-45deg); }
}

@media (max-width: 360px) {
    .voshod-masthead__brand img { width: 48px; height: 48px; }
    .voshod-masthead__brand strong { font-size: 1.3rem; }
    .voshod-masthead__menu { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-masthead__toggle span { transition: none; }
}

/* Homepage news preview. */
.voshod-home-news {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(58px, 7vw, 92px) 0 clamp(62px, 7vw, 88px);
    background: linear-gradient(118deg, #f3faff 0%, #fff 52%, #eaf5ff 100%);
}
.voshod-home-news::before,
.voshod-home-news::after {
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    width: 150px;
    background: repeating-linear-gradient(132deg, transparent 0 26px, rgb(29 145 236 / 9%) 27px 42px, transparent 43px 74px);
    content: "";
    pointer-events: none;
}
.voshod-home-news::before { left: 0; transform: translateX(-82px); }
.voshod-home-news::after { right: 0; transform: translateX(82px); }
.voshod-home-news__heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 26px;
}
.voshod-home-news__heading .voshod-eyebrow { margin-bottom: 7px; }
.voshod-home-news__heading h2 {
    margin: 0;
    color: #0c3979;
    font-size: clamp(2rem, 3.6vw, 3.2rem);
    font-weight: 900;
    letter-spacing: -.045em;
    line-height: 1.04;
}
.voshod-home-news__heading > p {
    max-width: 380px;
    margin: 0 0 4px;
    color: #315f91;
    font-size: 1rem;
    line-height: 1.55;
}
.voshod-home-news__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(400px, .92fr);
    gap: 18px;
}
.voshod-home-news__featured {
    position: relative;
    display: flex;
    min-height: 440px;
    flex-direction: column;
    justify-content: end;
    overflow: hidden;
    border: 1px solid #cfe4f5;
    border-radius: 20px;
    background: #0a3a7a;
    box-shadow: 0 12px 30px rgb(10 58 122 / 12%);
    color: #fff;
}
.voshod-home-news__featured::after {
    position: absolute;
    z-index: 0;
    inset: 0;
    background: linear-gradient(180deg, rgb(4 36 82 / 3%) 10%, rgb(4 36 82 / 35%) 48%, rgb(4 36 82 / 94%) 100%);
    content: "";
    pointer-events: none;
}
.voshod-home-news__featured-image {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s cubic-bezier(.2, .7, .25, 1);
}
.voshod-home-news__featured:hover .voshod-home-news__featured-image { transform: scale(1.035); }
.voshod-home-news__featured-content {
    position: relative;
    z-index: 1;
    max-width: 710px;
    padding: clamp(24px, 3.2vw, 42px);
}
.voshod-home-news__category {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    padding: 6px 11px;
    border: 1px solid rgb(255 255 255 / 52%);
    border-radius: 999px;
    background: rgb(255 255 255 / 92%);
    color: #0756aa;
    font-size: .7rem;
    font-weight: 800;
    line-height: 1.2;
}
.voshod-home-news__featured h3 {
    max-width: 650px;
    margin: 14px 0 9px;
    color: #fff;
    font-size: clamp(1.65rem, 3vw, 2.5rem);
    font-weight: 900;
    letter-spacing: -.04em;
    line-height: 1.08;
}
.voshod-home-news__featured h3 a { color: inherit; text-decoration: none; }
.voshod-home-news__featured h3 a:hover,
.voshod-home-news__featured h3 a:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.voshod-home-news__featured-content > p {
    max-width: 590px;
    margin: 0;
    color: rgb(255 255 255 / 91%);
    font-size: 1rem;
    line-height: 1.5;
}
.voshod-home-news__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 13px;
    margin-top: 15px;
    color: rgb(255 255 255 / 83%);
    font-size: .78rem;
}
.voshod-home-news__meta > span { padding-left: 13px; border-left: 1px solid rgb(255 255 255 / 55%); }
.voshod-home-news__featured-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 17px;
    color: #fff;
    font-weight: 850;
    text-decoration: none;
}
.voshod-home-news__featured-link:hover,
.voshod-home-news__featured-link:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.voshod-home-news__featured-link span { font-size: 1.25rem; }
.voshod-home-news__cards { display: grid; min-width: 0; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 12px; }
.voshod-home-news__card {
    display: grid;
    min-width: 0;
    min-height: 136px;
    grid-template-columns: minmax(120px, .36fr) minmax(0, .64fr);
    overflow: hidden;
    border: 1px solid #d5e8f7;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 7px 20px rgb(21 79 132 / 7%);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.voshod-home-news__card:hover { transform: translateY(-2px); border-color: #afd8f5; box-shadow: 0 12px 26px rgb(21 79 132 / 11%); }
.voshod-home-news__card-image { display: block; min-height: 100%; overflow: hidden; background: #e5f2fc; }
.voshod-home-news__card-image img { display: block; width: 100%; height: 100%; min-height: 136px; object-fit: cover; transition: transform .35s ease; }
.voshod-home-news__card:hover .voshod-home-news__card-image img { transform: scale(1.04); }
.voshod-home-news__card-content { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; padding: 13px 16px; }
.voshod-home-news__card .voshod-home-news__category { padding: 4px 9px; border-color: #c6e2f6; background: #f1f9ff; font-size: .65rem; }
.voshod-home-news__card h3 { margin: 8px 0 0; color: #0c3979; font-size: clamp(1rem, 1.3vw, 1.2rem); font-weight: 850; letter-spacing: -.02em; line-height: 1.2; }
.voshod-home-news__card h3 a { color: inherit; text-decoration: none; }
.voshod-home-news__card h3 a:hover,
.voshod-home-news__card h3 a:focus-visible { color: #0872e4; text-decoration: underline; text-underline-offset: 3px; }
.voshod-home-news__card .voshod-home-news__meta { margin-top: auto; padding-top: 8px; color: #557493; font-size: .7rem; }
.voshod-home-news__card .voshod-home-news__meta > span { padding-left: 10px; border-color: #b9d8ef; }
.voshod-home-news__action { display: flex; justify-content: center; margin-top: 26px; }
.voshod-home-news__action .voshod-button { min-height: 52px; gap: 12px; border: 0; background: linear-gradient(105deg, #0756bd, #078cf4); box-shadow: 0 5px 12px rgb(7 99 207 / 16%); text-decoration: none; }
.voshod-home-news__action .voshod-button:hover,
.voshod-home-news__action .voshod-button:focus-visible { background: linear-gradient(105deg, #064da9, #087ee0); }

.voshod-scroll-reveal-ready .voshod-home-news__heading,
.voshod-scroll-reveal-ready .voshod-home-news__featured,
.voshod-scroll-reveal-ready .voshod-home-news__card,
.voshod-scroll-reveal-ready .voshod-home-news__action {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .62s ease, transform .62s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}
.voshod-scroll-reveal-ready .voshod-home-news__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home-news__featured.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home-news__card.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home-news__action.voshod-reveal-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1020px) {
    .voshod-home-news__layout { grid-template-columns: 1fr; }
    .voshod-home-news__featured { min-height: 380px; }
    .voshod-home-news__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; }
    .voshod-home-news__card { grid-template-columns: 1fr; grid-template-rows: 120px 1fr; }
    .voshod-home-news__card-image img { height: 120px; min-height: 120px; }
    .voshod-home-news__card-content { min-height: 132px; padding: 13px; }
}
@media (max-width: 760px) {
    .voshod-home-news { padding-block: 48px 60px; }
    .voshod-home-news::before,
    .voshod-home-news::after { width: 90px; }
    .voshod-home-news__heading { display: block; margin-bottom: 20px; }
    .voshod-home-news__heading > p { margin-top: 10px; }
    .voshod-home-news__featured { min-height: 360px; border-radius: 16px; }
    .voshod-home-news__featured-content { padding: 24px; }
    .voshod-home-news__cards { grid-template-columns: 1fr; gap: 10px; }
    .voshod-home-news__card { grid-template-columns: 120px minmax(0, 1fr); grid-template-rows: auto; min-height: 130px; }
    .voshod-home-news__card-image img { height: 100%; min-height: 130px; }
    .voshod-home-news__card-content { min-height: 130px; padding: 12px 14px; }
    .voshod-home-news__card h3 { font-size: 1rem; }
    .voshod-home-news__card .voshod-home-news__meta { font-size: .66rem; }
}
@media (max-width: 420px) {
    .voshod-home-news__featured { min-height: 390px; }
    .voshod-home-news__featured-content { padding: 21px; }
    .voshod-home-news__card { grid-template-columns: 100px minmax(0, 1fr); }
    .voshod-home-news__card-content { padding: 11px; }
    .voshod-home-news__card .voshod-home-news__category { font-size: .6rem; }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-scroll-reveal-ready .voshod-home-news__heading,
    .voshod-scroll-reveal-ready .voshod-home-news__featured,
    .voshod-scroll-reveal-ready .voshod-home-news__card,
    .voshod-scroll-reveal-ready .voshod-home-news__action {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .voshod-home-news__featured-image,
    .voshod-home-news__card,
    .voshod-home-news__card-image img { transition: none; }
}

/* Compact masthead action and the shared Contact Form 7 training dialog. */
.voshod-masthead__cta {
    flex: 0 0 auto;
    width: auto;
    justify-content: center;
    padding-inline: 22px;
}

.voshod-training-modal[hidden] { display: none !important; }
.voshod-training-modal { position: fixed; z-index: 2000; inset: 0; display: grid; place-items: center; padding: 22px; }
.voshod-training-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgb(5 28 61 / 72%); cursor: default; backdrop-filter: blur(5px); }
.voshod-training-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 610px);
    max-height: min(92vh, 840px);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 34px clamp(24px, 5vw, 48px) 28px;
    border: 1px solid #c8e4fb;
    border-radius: 24px;
    background: linear-gradient(145deg, #fff 0%, #f8fcff 100%);
    box-shadow: 0 28px 90px rgb(1 28 66 / 34%);
    color: #183f70;
    text-align: center;
    opacity: 0;
    transform: translateY(12px) scale(.98);
    transition: opacity .22s ease, transform .22s ease;
}
.voshod-training-modal__dialog::before,
.voshod-training-modal__dialog::after { position: absolute; z-index: -1; width: 130px; height: 290px; border: 1px solid rgb(39 147 242 / 10%); content: ""; pointer-events: none; transform: rotate(34deg); }
.voshod-training-modal__dialog::before { top: -175px; left: -72px; }
.voshod-training-modal__dialog::after { right: -72px; bottom: -175px; }
.voshod-training-modal.is-open .voshod-training-modal__dialog { opacity: 1; transform: none; }
.voshod-training-modal__close {
    position: absolute;
    top: 15px;
    right: 15px;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid #c9e2f7;
    border-radius: 50%;
    background: #fff;
    color: #0a3a7a;
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
}
.voshod-training-modal__close:hover,
.voshod-training-modal__close:focus-visible { background: #0a3a7a; color: #fff; }
.voshod-training-modal__close span { display: none; }
.voshod-training-modal__close svg { display: block; width: 17px; height: 17px; flex: 0 0 17px; overflow: visible; }
.voshod-training-modal__close svg path { fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 1.8; }
.voshod-training-modal__mark { display: grid; width: 58px; height: 52px; place-items: center; margin: 0 auto 8px; }
.voshod-training-modal__mark img { display: block; width: 58px; height: 52px; object-fit: contain; }
.voshod-training-modal__dialog > .voshod-eyebrow { margin-bottom: 7px; font-size: .68rem; letter-spacing: .12em; }
.voshod-training-modal__dialog h2 { max-width: 470px; margin: 0 auto; color: #0a3a7a; font-size: clamp(1.8rem, 4vw, 2.45rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.04; }
.voshod-training-modal__description { max-width: 440px; margin: 12px auto 20px; color: #476b92; font-size: .98rem; line-height: 1.5; }
.voshod-training-modal__form { text-align: left; }
.voshod-training-modal__form .wpcf7 form > p { margin: 0 0 13px; }
.voshod-training-modal__form .wpcf7 form > p > label { display: block; color: #0a3a7a; font-size: .88rem; font-weight: 750; line-height: 1.45; }
.voshod-training-modal__form .wpcf7 form > p:first-of-type > label { font-size: 0; line-height: 0; }
.voshod-training-modal__form .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
.voshod-training-modal__form input[type="text"],
.voshod-training-modal__form input[type="tel"] { width: 100%; min-height: 54px; padding: 13px 16px; border: 1px solid #bbd9f3; border-radius: 10px; background: #fff; box-shadow: none; color: #143d70; font: inherit; font-size: 1rem; }
.voshod-training-modal__form input[type="text"]::placeholder,
.voshod-training-modal__form input[type="tel"]::placeholder { color: #8297ad; opacity: 1; }
.voshod-training-modal__form input[type="text"]:focus,
.voshod-training-modal__form input[type="tel"]:focus { border-color: #0879ec; outline: 3px solid rgb(39 147 242 / 17%); }
.voshod-training-modal__form .voshod-form__consent { margin: 1px 0 14px; }
.voshod-training-modal__form .voshod-form__consent .wpcf7-list-item { margin: 0; }
.voshod-training-modal__form .voshod-form__consent label { display: flex; align-items: flex-start; gap: 9px; color: #476b92; font-size: .78rem; line-height: 1.5; }
.voshod-training-modal__form .voshod-form__consent input[type="checkbox"] { flex: 0 0 auto; width: 17px; height: 17px; margin: 2px 0 0; accent-color: #0879ec; }
.voshod-training-modal__form .voshod-form__consent a { color: #075bbb; text-underline-offset: 2px; }
.voshod-training-modal__form .wpcf7-submit.voshod-button { width: 100%; min-height: 52px; margin: 0; border: 0; border-radius: 12px; background: linear-gradient(105deg, #0756bd, #078cf4); box-shadow: 0 6px 16px rgb(7 99 207 / 18%); color: #fff; font-size: 1rem; font-weight: 800; cursor: pointer; }
.voshod-training-modal__form .wpcf7-submit.voshod-button:hover,
.voshod-training-modal__form .wpcf7-submit.voshod-button:focus-visible { background: linear-gradient(105deg, #064da9, #087ee0); }
.voshod-training-modal__form .wpcf7-not-valid-tip { margin-top: 4px; color: #b42318; font-size: .78rem; }
.voshod-training-modal__form .wpcf7-response-output { margin: 12px 0 0; padding: 10px 12px; border-radius: 8px; color: #183f70; font-size: .82rem; }
.voshod-training-modal__form .wpcf7 form.invalid .wpcf7-response-output,
.voshod-training-modal__form .wpcf7 form.unaccepted .wpcf7-response-output,
.voshod-training-modal__form .wpcf7 form.failed .wpcf7-response-output,
.voshod-training-modal__form .wpcf7 form.spam .wpcf7-response-output { color: #b42318; }
.voshod-training-modal__divider { display: flex; align-items: center; gap: 12px; margin: 20px 0 12px; color: #58779a; font-size: .78rem; }
.voshod-training-modal__divider::before,
.voshod-training-modal__divider::after { height: 1px; flex: 1; background: #d9e8f5; content: ""; }
.voshod-training-modal__messengers ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin: 0; padding: 0; list-style: none; }
.voshod-training-modal__messengers li { min-width: 76px; padding: 9px 8px 8px; border: 1px solid #d7e8f6; border-radius: 12px; background: #fff; color: #496c90; font-size: .68rem; }
.voshod-training-modal__messengers li > span { display: grid; justify-items: center; gap: 5px; }
.voshod-training-modal__messengers img { display: block; width: 38px; height: 38px; border-radius: 50%; object-fit: contain; }
.voshod-training-modal__phone { display: inline-block; margin-top: 14px; color: #075bbb; font-size: 1rem; font-weight: 800; text-decoration: none; }
.voshod-training-modal__phone:hover { text-decoration: underline; text-underline-offset: 3px; }
.voshod-training-modal :focus-visible { outline-color: #0879ec; outline-offset: 3px; }
body.voshod-training-modal-open { overflow: hidden; }

@media (max-width: 760px) {
    .voshod-masthead__cta { flex-basis: auto; padding-inline: 16px; }
    .voshod-training-modal { padding: 12px; }
    .voshod-training-modal__dialog { max-height: 94dvh; padding: 27px 20px 22px; border-radius: 20px; }
    .voshod-training-modal__close { top: 11px; right: 11px; width: 38px; height: 38px; }
    .voshod-training-modal__mark { width: 48px; height: 43px; }
    .voshod-training-modal__mark img { width: 48px; height: 43px; }
    .voshod-training-modal__description { margin: 9px auto 16px; font-size: .9rem; }
    .voshod-training-modal__messengers ul { gap: 6px; }
    .voshod-training-modal__messengers li { min-width: 68px; padding-inline: 6px; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-training-modal__dialog,
    .voshod-training-modal__close,
    .voshod-training-modal__form .wpcf7-submit.voshod-button { transition: none; }
}

/* Keep the complete application form visible without scrolling on regular screens. */
.voshod-training-modal__dialog { width: min(100%, 580px); max-height: calc(100dvh - 32px); padding: 22px clamp(22px, 4vw, 40px) 18px; }
.voshod-training-modal__dialog::before,
.voshod-training-modal__dialog::after { display: none; }
.voshod-training-modal__close { top: 11px; right: 11px; display: flex; width: 40px; height: 40px; align-items: center; justify-content: center; padding: 0; line-height: 1; }
.voshod-training-modal__mark { width: 46px; height: 40px; margin-bottom: 4px; }
.voshod-training-modal__mark img { width: 46px; height: 40px; }
.voshod-training-modal__dialog > .voshod-eyebrow { margin-bottom: 4px; font-size: .63rem; }
.voshod-training-modal__dialog h2 { font-size: clamp(1.65rem, 3.3vw, 2.05rem); line-height: 1.02; }
.voshod-training-modal__description { margin: 7px auto 12px; font-size: .88rem; line-height: 1.35; }
.voshod-training-modal__form .wpcf7 form > p { margin-bottom: 8px; }
.voshod-training-modal__form .wpcf7 form > p > label { font-size: .8rem; line-height: 1.35; }
.voshod-training-modal__form .wpcf7-form-control-wrap { margin-top: 4px; }
.voshod-training-modal__form input[type="text"],
.voshod-training-modal__form input[type="tel"] { min-height: 46px; padding: 10px 14px; font-size: .94rem; }
.voshod-training-modal__form .voshod-form__consent { margin: 0 0 9px; }
.voshod-training-modal__form .voshod-form__consent label { gap: 8px; font-size: .72rem; line-height: 1.35; }
.voshod-training-modal__form .wpcf7-submit.voshod-button { min-height: 46px; font-size: .92rem; }
.voshod-training-modal__divider { gap: 10px; margin: 11px 0 8px; font-size: .72rem; }
.voshod-training-modal__messengers ul { gap: 7px; }
.voshod-training-modal__messengers li { min-width: 70px; padding: 6px 7px 5px; font-size: .64rem; }
.voshod-training-modal__messengers img { width: 30px; height: 30px; }
.voshod-training-modal__phone { margin-top: 8px; font-size: .9rem; }

@media (max-width: 760px) {
    .voshod-training-modal__dialog { max-height: calc(100dvh - 20px); padding: 18px 20px 14px; }
    .voshod-training-modal__mark { width: 40px; height: 35px; }
    .voshod-training-modal__mark img { width: 40px; height: 35px; }
    .voshod-training-modal__dialog h2 { max-width: 390px; font-size: clamp(1.5rem, 6vw, 1.9rem); }
    .voshod-training-modal__description { margin: 6px auto 10px; font-size: .82rem; }
    .voshod-training-modal__form .wpcf7 form > p { margin-bottom: 7px; }
    .voshod-training-modal__form input[type="text"],
    .voshod-training-modal__form input[type="tel"] { min-height: 43px; }
    .voshod-training-modal__messengers li { min-width: 64px; }
}

@media (max-height: 680px) {
    .voshod-training-modal__dialog { padding-top: 12px; padding-bottom: 10px; }
    .voshod-training-modal__mark { display: none; }
    .voshod-training-modal__description { margin-block: 5px 8px; }
    .voshod-training-modal__form .wpcf7 form > p { margin-bottom: 6px; }
    .voshod-training-modal__messengers { display: none; }
    .voshod-training-modal__phone { margin-top: 5px; }
}

@media (max-height: 560px) {
    .voshod-training-modal__description { display: none; }
    .voshod-training-modal__dialog h2 { margin-bottom: 8px; font-size: 1.5rem; }
    .voshod-training-modal__form .wpcf7 form > p { margin-bottom: 4px; }
    .voshod-training-modal__form input[type="text"],
    .voshod-training-modal__form input[type="tel"] { min-height: 39px; }
}

/* School contacts: branded arena backdrop with the live Contact Form 7 form. */
.voshod-contact {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(56px, 4vw, 69px) 0 clamp(27px, 3vw, 43px);
    scroll-margin-top: 108px;
    background-color: #062c62;
    background-image: linear-gradient(90deg, rgb(3 31 71 / 88%) 0%, rgb(4 43 91 / 80%) 48%, rgb(4 39 83 / 68%) 100%), var(--voshod-contact-arena);
    background-position: center, center 52%;
    background-size: auto, cover;
    background-repeat: no-repeat;
    background-attachment: scroll, fixed;
    color: #fff;
}
.voshod-contact::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(3 31 71 / 88%) 0%, rgb(4 43 91 / 80%) 48%, rgb(4 39 83 / 68%) 100%); content: ""; }
.voshod-contact .voshod-contact__heading { display: block; width: 100%; max-width: none; margin: 0 auto clamp(26px, 3vw, 40px); color: #fff; font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 900; line-height: 1.05; letter-spacing: -.035em; text-align: center; }
.voshod-contact__inner { grid-template-columns: minmax(0, .924fr) minmax(0, 1.076fr); align-items: center; gap: clamp(28px, 4vw, 64px); }
.voshod-contact__info { display: flex; min-width: 0; flex-direction: column; align-items: center; color: #fff; text-align: center; }
.voshod-contact__crest { width: 178px; height: 158px; margin: 0 auto 10px; object-fit: contain; }
.voshod-contact__info .voshod-eyebrow { margin-bottom: 10px; color: #8bcaff; font-size: .7rem; letter-spacing: .14em; }
.voshod-contact h2 { max-width: 440px; color: #fff; font-size: clamp(2rem, 3.2vw, 3.1rem); line-height: 1.02; }
.voshod-contact__intro { max-width: 390px; margin: 13px 0 17px; color: rgb(239 248 255 / 83%); font-size: 1rem; line-height: 1.5; }
.voshod-contact__form { min-width: 0; padding: clamp(20px, 2.2vw, 30px); border: 1px solid rgb(166 215 255 / 35%); border-radius: 18px; background: rgb(5 37 79 / 62%); color: #fff; box-shadow: 0 16px 48px rgb(0 14 42 / 24%); backdrop-filter: blur(10px); }
.voshod-contact__form .wpcf7 form { gap: 12px; }
.voshod-contact__form label { color: #eff8ff; font-size: .84rem; }
.voshod-contact__form .wpcf7 form > p:first-of-type > label { font-size: 0; line-height: 0; }
.voshod-contact__form .wpcf7 form > p:first-of-type input[type="text"] { font-size: 1rem; }
.voshod-contact__form input[type="text"],
.voshod-contact__form input[type="tel"],
.voshod-contact__form select { min-height: 46px; border-color: rgb(197 227 255 / 54%); border-radius: 8px; background: rgb(255 255 255 / 9%); color: #fff; }
.voshod-contact__form input[type="text"]::placeholder,
.voshod-contact__form input[type="tel"]::placeholder,
.voshod-contact__form select { color: rgb(231 243 255 / 78%); }
.voshod-contact__form input[type="text"]:focus,
.voshod-contact__form input[type="tel"]:focus,
.voshod-contact__form select:focus { border-color: #58b7ff; outline-color: rgb(88 183 255 / 28%); }
.voshod-contact__form .wpcf7-acceptance label { color: rgb(239 248 255 / 84%); font-size: .72rem; }
.voshod-contact__form .wpcf7-acceptance a { color: #9bd3ff; }
.voshod-contact__form .wpcf7-submit { width: 100%; min-height: 48px; border: 0; border-radius: 8px; background: linear-gradient(105deg, #0870db, #08a0f7); }
.voshod-contact__form .wpcf7-submit:hover,
.voshod-contact__form .wpcf7-submit:focus-visible { background: linear-gradient(105deg, #0759bd, #0786e6); }
.voshod-contact__form .wpcf7-response-output { color: #eaf6ff; }
.voshod-contact__form .wpcf7 form.invalid .wpcf7-response-output,
.voshod-contact__form .wpcf7 form.unaccepted .wpcf7-response-output,
.voshod-contact__form .wpcf7 form.failed .wpcf7-response-output,
.voshod-contact__form .wpcf7 form.spam .wpcf7-response-output { color: #fff; }
.voshod-contact__form .wpcf7-not-valid-tip { color: #fff; font-weight: 650; }
.voshod-contact__phone-icon { display: grid; width: 46px; height: 46px; place-items: center; margin: 2px auto 9px; border: 1px solid rgb(179 220 255 / 58%); border-radius: 50%; color: #8dccff; }
.voshod-contact__phone-icon svg { width: 22px; height: 22px; fill: currentColor; }
.voshod-contact__channels-label,
.voshod-contact__messengers-title { margin: 0 0 5px; color: rgb(239 248 255 / 78%); font-size: .86rem; }
.voshod-contact__channels-phone { color: #fff; font-size: clamp(1rem, 1.2vw, 1.22rem); font-weight: 850; text-decoration: none; white-space: nowrap; }
.voshod-contact__channels-phone:hover,
.voshod-contact__channels-phone:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.voshod-contact__messengers-title { margin-top: 23px; }
.voshod-contact__messengers { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.voshod-contact__messengers li { display: grid; width: 58px; min-height: 66px; place-items: center; padding: 6px 3px; border: 1px solid rgb(185 222 255 / 25%); border-radius: 10px; background: rgb(2 27 62 / 24%); color: rgb(239 248 255 / 88%); font-size: .58rem; line-height: 1; }
.voshod-contact__messengers li span { display: grid; justify-items: center; gap: 4px; }
.voshod-contact__messengers img { display: block; width: 34px; height: 34px; object-fit: contain; }

@media (max-width: 1100px) {
    .voshod-contact__inner { grid-template-columns: minmax(0, .924fr) minmax(0, 1.076fr); gap: 26px; }
}

@media (max-width: 760px) {
    .voshod-contact { padding: 44px 0 20px; background-position: center, 64% center; }
    .voshod-contact::before { background: rgb(3 31 71 / 82%); }
    .voshod-contact__inner { grid-template-columns: 1fr; gap: 22px; }
    .voshod-contact__info { padding-top: 22px; border-top: 1px solid rgb(178 218 255 / 24%); }
    .voshod-contact__crest { width: 136px; height: 120px; margin-bottom: 8px; }
    .voshod-contact__info .voshod-eyebrow { margin-bottom: 8px; }
    .voshod-contact h2 { max-width: 100%; font-size: clamp(2rem, 9vw, 2.7rem); }
    .voshod-contact__intro { margin: 9px 0 12px; font-size: .94rem; }
    .voshod-contact__form { width: 100%; padding: 20px; }
    .voshod-contact__messengers-title { width: 100%; margin: 10px 0 0; }
    .voshod-contact__messengers { justify-content: center; width: 100%; }
}

/* FAQ: volleyball-school styling, with the stadium artwork kept quiet behind the accordion. */
.voshod-faq {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(56px, 7vw, 92px) 0;
    background-color: #0a4f99;
    background-image: linear-gradient(105deg, rgb(3 33 75 / 60%) 0%, rgb(4 57 117 / 50%) 58%, rgb(4 42 91 / 56%) 100%), url("../images/faq/stadium.webp");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll, fixed;
    background-blend-mode: normal, screen;
    color: #f5faff;
}
.voshod-faq::before,
.voshod-faq::after { position: absolute; z-index: -1; pointer-events: none; content: ""; }
.voshod-faq::before { inset: 0; background: linear-gradient(130deg, transparent 0 83%, rgb(0 111 221 / 8%) 83% 84%, transparent 84% 90%, rgb(0 111 221 / 7%) 90% 91%, transparent 91%); }
.voshod-faq__heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.voshod-faq__title { display: flex; align-items: center; gap: 18px; }
.voshod-faq__title h2 { margin: 0; color: #f6fbff; font-size: clamp(1.8rem, 3vw, 2.5rem); font-weight: 900; line-height: 1.05; letter-spacing: -.035em; }
.voshod-faq__title > span { width: clamp(42px, 6vw, 78px); height: 3px; flex: 0 0 auto; background: #64bdff; }
.voshod-faq__heading > p { margin: 0 0 3px; color: #b8e1ff; font-size: .76rem; font-weight: 900; letter-spacing: .22em; text-align: right; }
.voshod-faq__layout { display: grid; grid-template-columns: minmax(330px, .98fr) minmax(0, 1.02fr); grid-template-areas: "cta list"; gap: clamp(22px, 3vw, 42px); align-items: stretch; }
.voshod-faq__list { grid-area: list; }
.voshod-faq__cta { grid-area: cta; }
.voshod-faq__list { display: grid; align-content: start; gap: 10px; }
.voshod-faq__item { overflow: hidden; border: 1px solid rgb(178 220 255 / 48%); border-radius: 12px; background: rgb(3 37 82 / 72%); box-shadow: 0 8px 22px rgb(0 15 42 / 18%); backdrop-filter: blur(5px); }
.voshod-faq__item summary { position: relative; display: flex; min-height: 60px; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 22px; color: #f6fbff; cursor: pointer; font-size: 1rem; font-weight: 850; line-height: 1.35; list-style: none; }
.voshod-faq__item summary::-webkit-details-marker { display: none; }
.voshod-faq__item summary::after { width: 10px; height: 10px; flex: 0 0 10px; border-right: 2px solid #8bd0ff; border-bottom: 2px solid #8bd0ff; content: ""; transform: translateY(-3px) rotate(45deg); transition: transform .2s ease; }
.voshod-faq__item[open] summary::after { transform: translateY(3px) rotate(225deg); }
.voshod-faq__item summary:focus-visible { outline: 3px solid #50adff; outline-offset: -4px; border-radius: 10px; }
.voshod-faq__answer { padding: 0 22px 18px; color: #d9edff; font-size: .94rem; line-height: 1.55; }
.voshod-faq__answer p { margin: 0; }
.voshod-faq__cta { position: relative; display: flex; min-height: 100%; flex-direction: column; align-items: flex-start; overflow: hidden; padding: clamp(28px, 3.4vw, 48px); border: 1px solid rgb(129 201 255 / 65%); border-radius: 18px; background: linear-gradient(135deg, rgb(5 67 139 / 93%), rgb(3 38 88 / 96%)); box-shadow: 0 18px 42px rgb(0 19 48 / 30%); color: #fff; }
.voshod-faq__cta::before { position: absolute; top: -30%; right: -13%; width: 58%; height: 160%; border: 1px solid rgb(53 158 255 / 24%); background: linear-gradient(135deg, transparent 20%, rgb(0 124 237 / 18%) 20% 44%, transparent 44% 53%, rgb(0 124 237 / 12%) 53% 68%, transparent 68%); content: ""; transform: skewX(-18deg); pointer-events: none; }
.voshod-faq__cta > * { position: relative; z-index: 1; }
.voshod-faq__eyebrow { margin: 0 0 12px; color: #69bdff; font-size: .72rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.voshod-faq__cta h3 { max-width: 450px; margin: 0; color: #fff; font-size: clamp(1.8rem, 3vw, 2.65rem); font-weight: 900; line-height: 1.06; letter-spacing: -.035em; }
.voshod-faq__cta-intro { max-width: 460px; margin: 16px 0 20px; color: rgb(235 246 255 / 84%); font-size: 1rem; line-height: 1.55; }
.voshod-faq__cta ul { display: grid; gap: 13px; margin: 0 0 26px; padding: 0; list-style: none; }
.voshod-faq__cta li { position: relative; padding-left: 36px; color: rgb(245 250 255 / 93%); font-size: .94rem; line-height: 1.4; }
.voshod-faq__cta li::before { position: absolute; top: 0; left: 0; display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid rgb(143 207 255 / 58%); border-radius: 50%; color: #9bd7ff; content: "✓"; font-size: .78rem; font-weight: 900; }
.voshod-faq__cta-button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 20px; margin-top: auto; padding: 13px 22px; border: 1px solid rgb(156 218 255 / 70%); border-radius: 30px; background: linear-gradient(105deg, #075cc7, #078ff0); box-shadow: 0 10px 24px rgb(0 11 34 / 25%); color: #fff; font-size: .92rem; font-weight: 850; text-decoration: none; transition: filter .18s ease, transform .18s ease; }
.voshod-faq__cta-button:hover,
.voshod-faq__cta-button:focus-visible { color: #fff; filter: brightness(1.12); transform: translateY(-2px); }
.voshod-faq__cta-button:focus-visible { outline: 3px solid #a9dcff; outline-offset: 3px; }
.voshod-faq__cta-button span { font-size: 1.2em; line-height: 1; }

@media (max-width: 900px) {
    .voshod-faq__layout { grid-template-columns: 1fr; grid-template-areas: "list" "cta"; }
    .voshod-faq__cta { min-height: 0; }
}
@media (max-width: 600px) {
    .voshod-faq { padding: 44px 0; background-position: center, 62% center; }
    .voshod-faq__heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 20px; }
    .voshod-faq__title { gap: 10px; }
    .voshod-faq__title h2 { font-size: clamp(1.55rem, 7vw, 2rem); }
    .voshod-faq__title > span { width: 28px; }
    .voshod-faq__heading > p { font-size: .66rem; letter-spacing: .14em; text-align: left; }
    .voshod-faq__layout { gap: 16px; }
    .voshod-faq__item summary { min-height: 56px; padding: 14px 16px; font-size: .91rem; }
    .voshod-faq__answer { padding: 0 16px 15px; font-size: .87rem; }
    .voshod-faq__cta { padding: 25px 21px; border-radius: 15px; }
    .voshod-faq__cta-intro { margin: 12px 0 17px; font-size: .93rem; }
    .voshod-faq__cta ul { gap: 11px; margin-bottom: 22px; }
    .voshod-faq__cta li { font-size: .88rem; }
    .voshod-faq__cta-button { width: 100%; padding-inline: 16px; }
}

/* Contacts page */
.voshod-contacts-page { background: #f2f9ff; }
.voshod-contact-location {
    position: relative;
    overflow: hidden;
    padding: clamp(36px, 4vw, 56px) 0;
    background: #edf7ff;
}
.voshod-contact-location::before { position: absolute; z-index: 0; top: clamp(132px, 9vw, 176px); right: 0; bottom: 0; left: 0; background: linear-gradient(135deg, rgb(255 255 255 / 28%), rgb(232 245 255 / 34%)), url("../images/contact/arena-background.png") center 50% / cover no-repeat fixed; content: ""; pointer-events: none; }
.voshod-contact-location > .voshod-container { position: relative; z-index: 1; }
.voshod-contact-location__heading { max-width: 100%; margin: 0 auto 24px; text-align: center; }
.voshod-contact-location__heading .voshod-eyebrow { margin: 0 0 10px; color: #1689ef; font-size: .82rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.voshod-contact-location__heading h1,
.voshod-contact-location__heading h2 { margin: 0 0 12px; color: #103f7d; font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 900; line-height: 1.05; }
.voshod-contact-location__heading h2 { font-family: "Arial Black", Arial, sans-serif; font-size: clamp(2rem, 4vw, 3.25rem); font-style: italic; font-weight: 900; letter-spacing: -.025em; text-transform: uppercase; transform: skewX(-3deg); transform-origin: center; white-space: nowrap; }
.voshod-contact-location__heading h1:last-child,
.voshod-contact-location__heading h2:last-child { margin-bottom: 0; }
.voshod-contact-location__heading > p:not(.voshod-eyebrow) { margin: 0; color: #4e7199; font-size: clamp(1rem, 1.6vw, 1.2rem); }
.voshod-contact-location__layout { display: grid; grid-template-columns: minmax(270px, .78fr) minmax(0, 1.42fr); gap: 24px; align-items: stretch; }
.voshod-contact-location__details,
.voshod-contact-location__map { min-width: 0; overflow: hidden; border: 1px solid #c8e3ff; border-radius: 24px; background: #fff; box-shadow: 0 16px 42px rgb(18 77 137 / 9%); }
.voshod-contact-location__details { display: flex; flex-direction: column; justify-content: center; gap: 26px; padding: clamp(25px, 3vw, 42px); background: rgb(255 255 255 / 84%); backdrop-filter: blur(10px); }
.voshod-contact-location__item { display: flex; align-items: flex-start; gap: 16px; }
.voshod-contact-location__icon { display: grid; flex: 0 0 48px; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: #e1f2ff; color: #0876db; }
.voshod-contact-location__icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.voshod-contact-location__item h2,
.voshod-contact-location__item h3 { margin: 0 0 5px; color: #103f7d; font-size: 1rem; font-weight: 850; }
.voshod-contact-location__item address,
.voshod-contact-location__item a { margin: 0; color: #4e7199; font-size: 1rem; font-style: normal; line-height: 1.55; }
.voshod-contact-location__item a { color: #0865c7; font-weight: 850; text-decoration: none; }
.voshod-contact-location__item a:hover { text-decoration: underline; }
.voshod-contact-location__messenger-group { width: 100%; margin: -10px 0 0; }
.voshod-contact-location__messenger-group > p { margin: 0 0 8px; color: #4e7199; font-size: .88rem; text-align: center; }
.voshod-contact-location__messengers { display: flex; flex-wrap: nowrap; justify-content: center; gap: 8px; width: 100%; max-width: 100%; margin: 0; padding: 0; list-style: none; }
.voshod-contact-location__messengers li { display: grid; flex: 0 0 58px; width: 58px; min-width: 0; min-height: 66px; place-items: center; padding: 6px 3px; border: 1px solid #c8e3ff; border-radius: 10px; background: #f7fbff; color: #496c90; font-size: .58rem; line-height: 1; }
.voshod-contact-location__messengers li span { display: grid; justify-items: center; gap: 4px; }
.voshod-contact-location__messengers img { display: block; width: 34px; height: 34px; object-fit: contain; }
.voshod-contact-location__map-link { align-self: center; display: inline-flex; align-items: center; gap: 12px; margin-top: 2px; padding: 14px 22px; border-radius: 999px; background: linear-gradient(100deg, #075cc4, #078ff0); color: #fff; font-weight: 800; text-decoration: none; box-shadow: 0 9px 20px rgb(0 103 207 / 18%); }
.voshod-contact-location__map-link:hover { color: #fff; transform: translateY(-1px); }
.voshod-contact-location__map-link span { font-size: 1.1em; }
.voshod-contact-location__map { min-height: 430px; }
.voshod-contact-location__map iframe { display: block; width: 100%; height: 100%; min-height: 430px; border: 0; }
.voshod-contact-location--intro .voshod-contact-location__heading .voshod-button { margin-top: 22px; }
@media (max-width: 760px) {
    .voshod-contact-location { padding: 32px 0 38px; }
    .voshod-contact-location::before { top: 125px; background-attachment: scroll; }
    .voshod-contact-location__heading { margin-bottom: 20px; }
    .voshod-contact-location__heading h2 { white-space: normal; }
    .voshod-contact-location__layout { grid-template-columns: 1fr; gap: 16px; }
    .voshod-contact-location__details { gap: 21px; padding: 24px; }
    .voshod-contact-location__messenger-group { margin: -7px 0 0; }
    .voshod-contact-location__map,
    .voshod-contact-location__map iframe { min-height: 340px; }
}

@media (prefers-reduced-motion: reduce) {
    .voshod-contact-location::before { background-attachment: scroll; }
}

/* Keep the adults direction hero in its original left-aligned composition. */
.voshod-direction-hero--adults .voshod-direction-hero__wash { background: linear-gradient(90deg, rgb(255 255 255 / 96%) 0%, rgb(255 255 255 / 89%) 29%, rgb(255 255 255 / 56%) 47%, rgb(255 255 255 / 7%) 72%, transparent 100%); }
.voshod-direction-hero--adults .voshod-direction-hero__inner { align-items: center; justify-content: flex-start; padding-top: 112px; }
.voshod-direction-hero--adults .voshod-direction-hero__copy { width: min(650px, 52%); margin-left: 0; text-align: left; }
.voshod-direction-hero--adults .voshod-direction-hero__description { margin-left: 0; }
.voshod-direction-hero--adults .voshod-direction-hero__actions { justify-content: flex-start; }
@media (max-width: 760px) {
    .voshod-direction-hero--adults .voshod-direction-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 95%) 0%, rgb(255 255 255 / 90%) 44%, rgb(255 255 255 / 74%) 68%, rgb(255 255 255 / 26%) 100%); }
    .voshod-direction-hero--adults .voshod-direction-hero__inner { align-items: flex-start; justify-content: flex-start; padding-top: 126px; }
    .voshod-direction-hero--adults .voshod-direction-hero__copy { width: 100%; }
    .voshod-direction-hero--adults .voshod-direction-hero__description { margin-left: 0; }
    .voshod-direction-hero--adults .voshod-direction-hero__actions { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-faq__item summary::after,
    .voshod-faq__cta-button { transition: none; }
}

/* Age-specific direction pages: useful details between the hero and shared contact section. */
.voshod-direction-content { position: relative; overflow: hidden; padding: clamp(56px, 7vw, 86px) 0; background: #f4f9fe; }
.voshod-direction-content::before { position: absolute; top: -150px; right: -90px; width: 460px; height: 460px; border: 1px solid rgb(7 124 224 / 10%); border-radius: 50%; box-shadow: 0 0 0 34px rgb(7 124 224 / 3%), 0 0 0 68px rgb(7 124 224 / 2%); content: ""; pointer-events: none; }
.voshod-direction-content__heading { position: relative; display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 27px; }
.voshod-direction-content__title .voshod-eyebrow { margin-bottom: 8px; }
.voshod-direction-content__title h2,
.voshod-direction-start__copy h2,
.voshod-direction-faq__heading h2 { margin: 0; color: #0a3a7a; font-size: clamp(1.9rem, 3.5vw, 2.8rem); font-weight: 900; letter-spacing: -.04em; line-height: 1.05; }
.voshod-direction-content__heading > p { max-width: 400px; margin: 0 0 3px; color: #087ce0; font-size: .76rem; font-weight: 850; letter-spacing: .16em; text-align: right; text-transform: uppercase; }
.voshod-direction-content__focus { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.voshod-direction-focus-card { min-height: 220px; padding: 23px 24px 25px; border: 1px solid #d0e8ff; border-radius: 14px; background: rgb(255 255 255 / 92%); box-shadow: 0 8px 24px rgb(8 57 112 / 5%); }
.voshod-direction-focus-card__mark { display: grid; width: 52px; height: 52px; place-items: center; margin-bottom: 18px; border-radius: 50%; background: #dcefff; color: #0866ce; }
.voshod-direction-focus-card__mark svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.3; }
.voshod-direction-focus-card h3 { margin: 0 0 8px; color: #0758b7; font-size: 1.08rem; font-weight: 850; line-height: 1.25; }
.voshod-direction-focus-card p { margin: 0; color: #42658b; font-size: .94rem; line-height: 1.5; }
.voshod-direction-start { position: relative; overflow: hidden; padding: clamp(56px, 7vw, 88px) 0; background: #fff; }
.voshod-direction-start::after { position: absolute; right: -170px; bottom: -280px; width: 510px; height: 510px; border: 1px solid rgb(7 124 224 / 11%); border-radius: 50%; box-shadow: 0 0 0 34px rgb(7 124 224 / 3%), 0 0 0 68px rgb(7 124 224 / 2%); content: ""; pointer-events: none; }
.voshod-direction-start__layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); gap: clamp(32px, 7vw, 94px); align-items: center; }
.voshod-direction-start__copy > p:not(.voshod-eyebrow) { max-width: 430px; margin: 14px 0 22px; color: #42658b; font-size: 1rem; line-height: 1.6; }
.voshod-direction-start__button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 16px; padding: 13px 21px; border-radius: 28px; background: linear-gradient(105deg, #0759bf, #078cf1); box-shadow: 0 8px 20px rgb(7 93 191 / 20%); color: #fff; font-weight: 850; text-decoration: none; transition: filter .18s ease, transform .18s ease; }
.voshod-direction-start__button:hover,
.voshod-direction-start__button:focus-visible { color: #fff; filter: brightness(1.1); transform: translateY(-2px); }
.voshod-direction-start__button:focus-visible { outline: 3px solid #83c8ff; outline-offset: 3px; }
.voshod-direction-start__steps { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: direction-step; }
.voshod-direction-start__steps li { position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 17px; padding: 0 0 25px; }
.voshod-direction-start__steps li:not(:last-child)::after { position: absolute; top: 44px; bottom: 0; left: 25px; width: 1px; background: #c6e3fc; content: ""; }
.voshod-direction-start__steps li > span { display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid #b9dcfa; border-radius: 50%; background: #edf7ff; color: #0877dc; font-size: .8rem; font-weight: 900; }
.voshod-direction-start__steps h3 { margin: 2px 0 4px; color: #0a3a7a; font-size: 1rem; font-weight: 850; }
.voshod-direction-start__steps p { margin: 0; color: #58718e; font-size: .91rem; line-height: 1.5; }
.voshod-direction-faq { padding: clamp(54px, 7vw, 82px) 0; background-color: #0a4f99; background-image: linear-gradient(120deg, rgb(3 34 78 / 60%), rgb(4 57 117 / 50%) 62%, rgb(3 35 78 / 60%)), url("../images/faq/stadium.webp"); background-position: center; background-size: cover; background-repeat: no-repeat; background-attachment: scroll, fixed; background-blend-mode: normal, screen; }
.voshod-direction-faq__heading { max-width: 760px; margin: 0 auto 34px; text-align: center; }
.voshod-direction-faq__heading .voshod-eyebrow { margin-bottom: 9px; color: #a6dcff; }
.voshod-direction-faq__heading h2 { color: #f6fbff; }
.voshod-direction-faq__heading > p:not(.voshod-eyebrow) { margin: 12px 0 0; color: #d9edff; font-size: 1.02rem; line-height: 1.55; }
.voshod-direction-faq__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.voshod-direction-faq__item { overflow: hidden; border: 1px solid rgb(178 220 255 / 48%); border-radius: 12px; background: rgb(3 37 82 / 72%); box-shadow: 0 8px 22px rgb(0 15 42 / 18%); backdrop-filter: blur(5px); }
.voshod-direction-faq__item summary { display: flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 17px; color: #f6fbff; cursor: pointer; font-size: 1.04rem; font-weight: 850; line-height: 1.35; list-style: none; }
.voshod-direction-faq__item summary::-webkit-details-marker { display: none; }
.voshod-direction-faq__item summary::after { width: 10px; height: 10px; flex: 0 0 10px; border-right: 2px solid #8bd0ff; border-bottom: 2px solid #8bd0ff; content: ""; transform: translateY(-3px) rotate(45deg); transition: transform .2s ease; }
.voshod-direction-faq__item[open] summary::after { transform: translateY(3px) rotate(225deg); }
.voshod-direction-faq__item summary:focus-visible { outline: 3px solid #50adff; outline-offset: -4px; }
.voshod-direction-faq__item > div { padding: 0 17px 17px; color: #e3f2ff; font-size: 1rem; line-height: 1.55; }
.voshod-direction-faq__item p { margin: 0; }
.voshod-scroll-reveal-ready .voshod-direction-faq__heading,
.voshod-scroll-reveal-ready .voshod-direction-faq__item { opacity: 0; transform: translateY(20px); transition: opacity .62s ease, transform .62s cubic-bezier(.2, .7, .25, 1); transition-delay: var(--voshod-reveal-delay, 0ms); }
.voshod-scroll-reveal-ready .voshod-direction-faq__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-direction-faq__item.voshod-reveal-visible { opacity: 1; transform: translateY(0); }
@media (max-width: 800px) {
    .voshod-direction-start__layout { grid-template-columns: 1fr; gap: 30px; }
    .voshod-direction-faq__heading { margin-bottom: 24px; }
}
@media (max-width: 620px) {
    .voshod-direction-content { padding: 44px 0; }
    .voshod-direction-content__heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 19px; }
    .voshod-direction-content__heading > p { text-align: left; }
    .voshod-direction-content__focus { grid-template-columns: 1fr; gap: 10px; }
    .voshod-direction-focus-card { min-height: 0; padding: 19px; }
    .voshod-direction-focus-card__mark { width: 44px; height: 44px; margin-bottom: 13px; }
    .voshod-direction-focus-card__mark svg { width: 26px; height: 26px; }
    .voshod-direction-start { padding: 45px 0; }
    .voshod-direction-start__steps li { grid-template-columns: 44px minmax(0, 1fr); gap: 13px; padding-bottom: 21px; }
    .voshod-direction-start__steps li > span { width: 44px; height: 44px; }
    .voshod-direction-start__steps li:not(:last-child)::after { top: 39px; left: 21px; }
    .voshod-direction-faq { padding: 44px 0; background-position: center, 62% center; }
    .voshod-direction-faq__heading { margin-bottom: 20px; }
    .voshod-direction-faq__list { grid-template-columns: 1fr; gap: 9px; }
    .voshod-direction-faq__item summary { min-height: 52px; padding: 12px 15px; font-size: 1rem; }
    .voshod-direction-faq__item > div { padding: 0 15px 15px; font-size: .94rem; }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-direction-start__button,
    .voshod-direction-faq__item summary::after { transition: none; }
    .voshod-scroll-reveal-ready .voshod-direction-faq__heading,
    .voshod-scroll-reveal-ready .voshod-direction-faq__item { opacity: 1; transform: none; transition: none; }
}

/* Full-width dark footer; remove the theme's default gap and credits strip. */
.site-main.voshod-home > section,
.site-main.voshod-placeholder > section,
.site-main.voshod-directions-page > section,
.site-main.voshod-contacts-page > section,
.site-main.voshod-news-page > section { margin-bottom: 0 !important; }

body.home #content.site-content,
body.front-page #content.site-content { margin-bottom: 0 !important; padding-bottom: 0 !important; }
#site-footer.site-footer { margin: 0 !important; padding: 0 !important; border: 0; background: #031735; color: #fff; }
#site-footer.site-footer > .inside-site-info { max-width: none; margin: 0; padding: 0; }
#site-footer .voshod-footer { position: relative; overflow: hidden; background: linear-gradient(90deg, rgb(2 24 56 / 96%) 0%, rgb(3 34 77 / 91%) 52%, rgb(2 24 56 / 92%) 100%), url("../images/footer/arena.webp") center 58% / cover no-repeat; color: #fff; }
.voshod-footer__main { display: grid; grid-template-columns: minmax(200px, 1.15fr) minmax(130px, .72fr) minmax(165px, .9fr) minmax(220px, 1.15fr); gap: clamp(24px, 4vw, 58px); padding-top: 48px; padding-bottom: 42px; }
.voshod-footer__brand img { display: block; width: 166px; height: 148px; object-fit: contain; }
.voshod-footer__brand p { max-width: 250px; margin: 10px 0 0; color: rgb(235 246 255 / 76%); font-size: .9rem; line-height: 1.55; }
.voshod-footer__nav h2,
.voshod-footer__contact h2 { margin: 5px 0 17px; color: #fff; font-size: 1rem; font-weight: 800; letter-spacing: .01em; }
.voshod-footer__nav ul { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.voshod-footer__nav a,
.voshod-footer__bottom a { color: rgb(235 246 255 / 80%); text-decoration: none; text-underline-offset: 4px; transition: color .18s ease; }
.voshod-footer__nav a { font-size: .88rem; line-height: 1.35; }
.voshod-footer__nav a:hover,
.voshod-footer__nav a:focus-visible,
.voshod-footer__bottom a:hover,
.voshod-footer__bottom a:focus-visible { color: #fff; text-decoration: underline; }
.voshod-footer__contact h2 { margin-bottom: 12px; }
.voshod-footer__phone { display: inline-block; color: #fff; font-size: clamp(1.1rem, 1.5vw, 1.35rem); font-weight: 850; text-decoration: none; white-space: nowrap; }
.voshod-footer__phone:hover,
.voshod-footer__phone:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.voshod-footer__contact p { max-width: 250px; margin: 9px 0 20px; color: rgb(235 246 255 / 75%); font-size: .86rem; line-height: 1.5; }
.voshod-footer__cta { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 12px 18px; border: 1px solid rgb(147 209 255 / 70%); border-radius: 26px; background: linear-gradient(105deg, #0759bf, #078cf1); box-shadow: 0 6px 20px rgb(0 13 37 / 24%); color: #fff; font-size: .83rem; font-weight: 800; text-align: center; text-decoration: none; transition: filter .18s ease, transform .18s ease; }
.voshod-footer__cta:hover,
.voshod-footer__cta:focus-visible { filter: brightness(1.12); color: #fff; transform: translateY(-1px); }
.voshod-footer__bottom { border-top: 1px solid rgb(178 218 255 / 23%); background: rgb(0 15 38 / 30%); }
.voshod-footer__bottom-inner { display: flex; min-height: 68px; align-items: center; justify-content: space-between; gap: 20px; padding-top: 13px; padding-bottom: 13px; }
.voshod-footer__bottom p { margin: 0; color: rgb(235 246 255 / 66%); font-size: .76rem; }
.voshod-footer__bottom nav { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.voshod-footer__bottom a { font-size: .76rem; }

@media (max-width: 900px) {
    .voshod-footer__main { grid-template-columns: minmax(190px, 1fr) minmax(140px, .8fr) minmax(180px, 1fr); }
    .voshod-footer__brand { grid-row: span 2; }
    .voshod-footer__bottom-inner { flex-wrap: wrap; }
}

@media (max-width: 600px) {
    .voshod-footer__main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 27px 18px; padding-top: 36px; padding-bottom: 30px; }
    .voshod-footer__brand { grid-column: 1 / -1; grid-row: auto; display: flex; align-items: center; gap: 16px; }
    .voshod-footer__brand img { flex: 0 0 104px; width: 104px; height: 96px; }
    .voshod-footer__brand p { margin: 0; font-size: .82rem; }
    .voshod-footer__nav h2,
    .voshod-footer__contact h2 { margin: 0 0 12px; font-size: .92rem; }
    .voshod-footer__nav ul { gap: 9px; }
    .voshod-footer__nav a { font-size: .8rem; }
    .voshod-footer__nav--groups { grid-column: 1; }
    .voshod-footer__contact { grid-column: 1 / -1; padding-top: 19px; border-top: 1px solid rgb(178 218 255 / 20%); }
    .voshod-footer__contact p { margin-bottom: 13px; }
    .voshod-footer__bottom-inner { align-items: flex-start; flex-direction: column; gap: 11px; padding-top: 17px; padding-bottom: 17px; }
    .voshod-footer__bottom nav { flex-direction: column; gap: 8px; }
}

/* Children's first-volleyball-steps hero, composed to match the supplied mockup. */
.voshod-direction-hero--children { min-height: 660px; background: #e9f6ff; }
.voshod-direction-hero--children .voshod-direction-hero__slide img { object-position: center center; }
.voshod-direction-hero--children .voshod-direction-hero__wash { background: linear-gradient(90deg, rgb(255 255 255 / 10%) 0%, rgb(255 255 255 / 4%) 38%, transparent 66%); }
.voshod-direction-hero--children .voshod-direction-hero__inner { min-height: 660px; align-items: center; justify-content: flex-start; padding-top: 76px; padding-bottom: 58px; }
.voshod-direction-hero--children .voshod-direction-hero__copy { width: min(650px, 51%); margin: 0; text-align: left; }
.voshod-direction-hero--children .voshod-eyebrow { margin: 0 0 12px; color: #0876e5; font-size: 16px; font-weight: 850; letter-spacing: .18em; line-height: 1.3; text-transform: uppercase; }
.voshod-direction-hero--children .voshod-direction-hero__copy h1 { margin: 0 0 4px; color: #0c3979; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(70px, 6.4vw, 96px); font-weight: 950; letter-spacing: -.07em; line-height: .94; }
.voshod-direction-hero--children .voshod-direction-hero__children-title { margin: 0 0 16px; color: #103f7d; font-size: clamp(25px, 2.25vw, 34px); font-weight: 900; line-height: 1.08; text-transform: uppercase; }
.voshod-direction-hero--children .voshod-direction-hero__description { max-width: 540px; margin: 0; color: #426d9f; font-size: clamp(17px, 1.35vw, 20px); line-height: 1.42; }
.voshod-direction-hero--children .voshod-direction-hero__description p { margin: 0; }
.voshod-direction-hero__features { display: flex; flex-wrap: wrap; gap: 12px 0; margin: 22px 0 0; padding: 0; list-style: none; }
.voshod-direction-hero__features li { display: flex; min-height: 48px; align-items: center; gap: 10px; padding: 0 16px; border-right: 1px solid rgb(8 105 206 / 22%); color: #24558f; font-size: 14px; font-weight: 650; line-height: 1.2; }
.voshod-direction-hero__features li:first-child { padding-left: 0; }
.voshod-direction-hero__features li:last-child { padding-right: 0; border-right: 0; }
.voshod-direction-hero__features li > span { display: grid; flex: 0 0 46px; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: #d9efff; color: #0865c7; }
.voshod-direction-hero__features svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.voshod-direction-hero--children .voshod-direction-hero__actions { justify-content: flex-start; margin-top: 26px; }
.voshod-direction-hero--children .voshod-direction-hero__actions .voshod-button:first-child { display: inline-flex; min-width: 355px; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 28px 16px 34px; font-size: 17px; }
.voshod-direction-hero--children .voshod-direction-hero__actions .voshod-button:first-child span { font-size: 1.55rem; line-height: 1; }
.voshod-direction-hero--children .voshod-direction-hero__actions .voshod-button--outline { display: none; }
.voshod-direction-hero--children .voshod-direction-hero__slide img { animation: voshod-kids-image-in 1.2s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--children .voshod-direction-hero__copy > * { animation: voshod-kids-copy-in .68s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(1) { animation-delay: .08s; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(2) { animation-delay: .16s; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(3) { animation-delay: .24s; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(4) { animation-delay: .32s; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(5) { animation-delay: .4s; }
.voshod-direction-hero--children .voshod-direction-hero__copy > :nth-child(6) { animation-delay: .48s; }
@keyframes voshod-kids-image-in { from { opacity: .72; transform: scale(1.035); } to { opacity: 1; transform: scale(1); } }
@keyframes voshod-kids-copy-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 760px) {
    .voshod-direction-hero--children,
    .voshod-direction-hero--children .voshod-direction-hero__inner { min-height: 740px; }
    .voshod-direction-hero--children .voshod-direction-hero__slide img { object-position: 64% center; }
    .voshod-direction-hero--children .voshod-direction-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 82%) 0%, rgb(255 255 255 / 74%) 44%, rgb(255 255 255 / 40%) 100%); }
    .voshod-direction-hero--children .voshod-direction-hero__inner { align-items: flex-start; padding-top: 112px; padding-bottom: 34px; }
    .voshod-direction-hero--children .voshod-direction-hero__copy { width: 100%; }
    .voshod-direction-hero--children .voshod-eyebrow { font-size: 13px; }
    .voshod-direction-hero--children .voshod-direction-hero__copy h1 { font-size: clamp(62px, 14vw, 84px); }
    .voshod-direction-hero--children .voshod-direction-hero__children-title { max-width: 450px; font-size: clamp(23px, 6vw, 30px); }
    .voshod-direction-hero--children .voshod-direction-hero__description { max-width: 480px; font-size: 17px; }
    .voshod-direction-hero__features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
    .voshod-direction-hero__features li { align-items: flex-start; flex-direction: column; gap: 7px; padding: 0 8px; border: 0; font-size: 12px; }
    .voshod-direction-hero__features li:first-child { padding-left: 0; }
    .voshod-direction-hero__features li:last-child { padding-right: 0; }
    .voshod-direction-hero__features li > span { flex-basis: 42px; width: 42px; height: 42px; }
    .voshod-direction-hero--children .voshod-direction-hero__actions { margin-top: 22px; }
    .voshod-direction-hero--children .voshod-direction-hero__actions .voshod-button:first-child { min-width: 0; width: min(100%, 360px); }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-direction-hero--children .voshod-direction-hero__slide img,
    .voshod-direction-hero--children .voshod-direction-hero__copy > * { animation: none; }
}

/* Teen 11–14 direction hero, following the supplied sports-growth layout. */
.voshod-direction-hero--teens-11-14 { min-height: 660px; background: #eaf6ff; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__slide img { object-position: center center; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__wash { background: linear-gradient(90deg, rgb(255 255 255 / 8%) 0%, rgb(255 255 255 / 4%) 37%, transparent 65%); }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__inner { min-height: 660px; align-items: center; justify-content: flex-start; padding-top: 60px; padding-bottom: 48px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy { width: min(720px, 56%); margin: 0; text-align: left; }
.voshod-direction-hero--teens-11-14 .voshod-eyebrow { margin: 0 0 12px; color: #0876e5; font-size: 16px; font-weight: 850; letter-spacing: .18em; line-height: 1.3; text-transform: uppercase; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy h1 { margin: 0 0 5px; color: #0c3979; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(70px, 6.1vw, 94px); font-weight: 950; letter-spacing: -.07em; line-height: .94; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__children-title { max-width: 660px; margin: 0 0 14px; color: #103f7d; font-size: clamp(24px, 2.1vw, 32px); font-weight: 900; line-height: 1.08; text-transform: uppercase; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__description { max-width: 580px; margin: 0; color: #426d9f; font-size: clamp(17px, 1.3vw, 20px); line-height: 1.42; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__description p { margin: 0; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 20px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li { min-width: 0; gap: 8px; padding: 0 9px; font-size: 12px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li:first-child { padding-left: 0; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li:last-child { padding-right: 0; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li > span { flex-basis: 40px; width: 40px; height: 40px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__features svg { width: 23px; height: 23px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions { justify-content: flex-start; margin-top: 24px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions .voshod-button:first-child { display: inline-flex; min-width: 355px; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 28px 16px 34px; font-size: 17px; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions .voshod-button:first-child span { font-size: 1.55rem; line-height: 1; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions .voshod-button--outline { display: none; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__slide img { animation: voshod-kids-image-in 1.2s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > * { animation: voshod-kids-copy-in .68s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(1) { animation-delay: .08s; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(2) { animation-delay: .16s; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(3) { animation-delay: .24s; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(4) { animation-delay: .32s; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(5) { animation-delay: .4s; }
.voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > :nth-child(6) { animation-delay: .48s; }
@media (max-width: 980px) {
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy { width: min(690px, 64%); }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li { flex-direction: column; align-items: flex-start; border: 0; }
}
@media (max-width: 760px) {
    .voshod-direction-hero--teens-11-14,
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__inner { min-height: 760px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__slide img { object-position: 66% center; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 93%) 0%, rgb(255 255 255 / 87%) 49%, rgb(255 255 255 / 53%) 100%); }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__inner { align-items: flex-start; padding-top: 105px; padding-bottom: 34px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy { width: 100%; }
    .voshod-direction-hero--teens-11-14 .voshod-eyebrow { font-size: 13px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy h1 { font-size: clamp(62px, 14vw, 84px); }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__children-title { max-width: 500px; font-size: clamp(22px, 6vw, 30px); }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__description { max-width: 480px; font-size: 17px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__features { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 6px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li { gap: 7px; padding: 0 7px; font-size: 12px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__features li:first-child { padding-left: 0; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions { margin-top: 20px; }
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__actions .voshod-button:first-child { min-width: 0; width: min(100%, 360px); }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__slide img,
    .voshod-direction-hero--teens-11-14 .voshod-direction-hero__copy > * { animation: none; }
}

/* Adult and senior-teen heroes follow the supplied artwork layouts. */
.voshod-direction-hero--adults,
.voshod-direction-hero--teens-15-17 { min-height: 660px; background: #eaf6ff; }
.voshod-direction-hero--adults .voshod-direction-hero__slide img,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__slide img { object-position: center center; }
.voshod-direction-hero--adults .voshod-direction-hero__wash,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__wash { background: linear-gradient(90deg, rgb(255 255 255 / 6%) 0%, rgb(255 255 255 / 3%) 37%, transparent 65%); }
.voshod-direction-hero--adults .voshod-direction-hero__inner,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__inner { min-height: 660px; align-items: center; justify-content: flex-start; padding-top: 58px; padding-bottom: 48px; }
.voshod-direction-hero--adults .voshod-direction-hero__copy,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy { width: min(760px, 55%); margin: 0; text-align: left; }
.voshod-direction-hero--adults .voshod-eyebrow,
.voshod-direction-hero--teens-15-17 .voshod-eyebrow { margin: 0 0 12px; color: #0876e5; font-size: 16px; font-weight: 850; letter-spacing: .18em; line-height: 1.3; text-transform: uppercase; }
.voshod-direction-hero--adults .voshod-direction-hero__copy h1,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy h1 { margin: 0 0 3px; color: #0c3979; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(68px, 6.15vw, 94px); font-weight: 950; letter-spacing: -.065em; line-height: .96; }
.voshod-direction-hero--adults .voshod-direction-hero__children-title,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__children-title { max-width: 720px; margin: 0 0 13px; color: #103f7d; font-size: clamp(25px, 2.35vw, 36px); font-weight: 900; line-height: 1.07; text-transform: uppercase; }
.voshod-direction-hero--adults .voshod-direction-hero__description,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__description { max-width: 590px; margin: 0; color: #426d9f; font-size: clamp(17px, 1.35vw, 20px); line-height: 1.42; }
.voshod-direction-hero--adults .voshod-direction-hero__description p,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__description p { margin: 0; }
.voshod-direction-hero--adults .voshod-direction-hero__features,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__features { margin-top: 20px; }
.voshod-direction-hero--adults .voshod-direction-hero__features li,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li { padding-inline: 11px; font-size: 13px; }
.voshod-direction-hero--adults .voshod-direction-hero__features li:first-child,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li:first-child { padding-left: 0; }
.voshod-direction-hero--adults .voshod-direction-hero__features li > span,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li > span { flex-basis: 44px; width: 44px; height: 44px; }
.voshod-direction-hero--adults .voshod-direction-hero__actions,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions { justify-content: flex-start; margin-top: 24px; }
.voshod-direction-hero--adults .voshod-direction-hero__actions .voshod-button:first-child,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions .voshod-button:first-child { display: inline-flex; min-width: 355px; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 28px 16px 34px; font-size: 17px; }
.voshod-direction-hero--adults .voshod-direction-hero__actions .voshod-button:first-child span,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions .voshod-button:first-child span { font-size: 1.55rem; line-height: 1; }
.voshod-direction-hero--adults .voshod-direction-hero__actions .voshod-button--outline,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions .voshod-button--outline { display: none; }
.voshod-direction-hero--adults .voshod-direction-hero__slide img,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__slide img { animation: voshod-kids-image-in 1.2s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > *,
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > * { animation: voshod-kids-copy-in .68s cubic-bezier(.2, .7, .25, 1) both; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(1),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(1) { animation-delay: .08s; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(2),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(2) { animation-delay: .16s; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(3),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(3) { animation-delay: .24s; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(4),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(4) { animation-delay: .32s; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(5),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(5) { animation-delay: .4s; }
.voshod-direction-hero--adults .voshod-direction-hero__copy > :nth-child(6),
.voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > :nth-child(6) { animation-delay: .48s; }
@media (max-width: 980px) {
    .voshod-direction-hero--adults .voshod-direction-hero__copy,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy { width: min(690px, 64%); }
    .voshod-direction-hero--adults .voshod-direction-hero__features li,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li { flex-direction: column; align-items: flex-start; border: 0; }
}
@media (max-width: 760px) {
    .voshod-direction-hero--adults,
    .voshod-direction-hero--adults .voshod-direction-hero__inner,
    .voshod-direction-hero--teens-15-17,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__inner { min-height: 780px; }
    .voshod-direction-hero--adults .voshod-direction-hero__slide img,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__slide img { object-position: 66% center; }
    .voshod-direction-hero--adults .voshod-direction-hero__wash,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__wash { background: linear-gradient(180deg, rgb(255 255 255 / 93%) 0%, rgb(255 255 255 / 87%) 48%, rgb(255 255 255 / 52%) 100%); }
    .voshod-direction-hero--adults .voshod-direction-hero__inner,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__inner { align-items: flex-start; padding-top: 105px; padding-bottom: 34px; }
    .voshod-direction-hero--adults .voshod-direction-hero__copy,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy { width: 100%; }
    .voshod-direction-hero--adults .voshod-eyebrow,
    .voshod-direction-hero--teens-15-17 .voshod-eyebrow { font-size: 13px; }
    .voshod-direction-hero--adults .voshod-direction-hero__copy h1,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy h1 { font-size: clamp(60px, 13vw, 82px); }
    .voshod-direction-hero--adults .voshod-direction-hero__children-title,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__children-title { max-width: 480px; font-size: clamp(22px, 6vw, 29px); }
    .voshod-direction-hero--adults .voshod-direction-hero__description,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__description { max-width: 480px; font-size: 17px; }
    .voshod-direction-hero--adults .voshod-direction-hero__features,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 6px; }
    .voshod-direction-hero--adults .voshod-direction-hero__features li,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li { gap: 7px; padding: 0 7px; font-size: 12px; }
    .voshod-direction-hero--adults .voshod-direction-hero__features li:first-child,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__features li:first-child { padding-left: 0; }
    .voshod-direction-hero--adults .voshod-direction-hero__actions,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions { margin-top: 20px; }
    .voshod-direction-hero--adults .voshod-direction-hero__actions .voshod-button:first-child,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__actions .voshod-button:first-child { min-width: 0; width: min(100%, 360px); }
}
@media (prefers-reduced-motion: reduce) {
    .voshod-direction-hero--adults .voshod-direction-hero__slide img,
    .voshod-direction-hero--adults .voshod-direction-hero__copy > *,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__slide img,
    .voshod-direction-hero--teens-15-17 .voshod-direction-hero__copy > * { animation: none; }
}

/* Subtle entrance for the homepage hero and the sections not covered above. */
.voshod-hero--single .voshod-hero__copy > *,
.voshod-hero--single .voshod-hero__slogan {
    animation: voshod-home-hero-fade .68s ease both;
}
.voshod-hero--single .voshod-hero__copy > :nth-child(1) { animation-delay: .06s; }
.voshod-hero--single .voshod-hero__copy > :nth-child(2) { animation-delay: .14s; }
.voshod-hero--single .voshod-hero__copy > :nth-child(3) { animation-delay: .22s; }
.voshod-hero--single .voshod-hero__copy > :nth-child(4) { animation-delay: .3s; }
.voshod-hero--single .voshod-hero__copy > :nth-child(5) { animation-delay: .38s; }
.voshod-hero--single .voshod-hero__slogan { animation-delay: .42s; }
@keyframes voshod-home-hero-fade {
    from { opacity: 0; }
    to { opacity: 1; }
}

.voshod-scroll-reveal-ready .voshod-home .voshod-home-intro__copy > p,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__heading,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__details,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__map,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__heading,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__item,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__cta {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .62s ease, transform .62s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}
.voshod-scroll-reveal-ready .voshod-home .voshod-home-intro__copy > p.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__details.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__map.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__item.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-home .voshod-faq__cta.voshod-reveal-visible {
    opacity: 1;
    transform: translateY(0);
}
.voshod-scroll-reveal-ready .voshod-mock-card__icon {
    transform: scale(.86);
    transition: transform .5s cubic-bezier(.2, .7, .25, 1) .14s;
}
.voshod-scroll-reveal-ready .voshod-mock-card.voshod-reveal-visible .voshod-mock-card__icon { transform: scale(1); }

@media (prefers-reduced-motion: reduce) {
    .voshod-hero--single .voshod-hero__copy > *,
    .voshod-hero--single .voshod-hero__slogan { animation: none; }
    .voshod-scroll-reveal-ready .voshod-home .voshod-home-intro__copy > p,
    .voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__heading,
    .voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__details,
    .voshod-scroll-reveal-ready .voshod-home .voshod-contact-location__map,
    .voshod-scroll-reveal-ready .voshod-home .voshod-faq__heading,
    .voshod-scroll-reveal-ready .voshod-home .voshod-faq__item,
    .voshod-scroll-reveal-ready .voshod-home .voshod-faq__cta {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .voshod-scroll-reveal-ready .voshod-mock-card__icon { transform: none; transition: none; }
}

/* Shared "Остались вопросы?" contact block reveal. */
.voshod-scroll-reveal-ready .voshod-contact__heading,
.voshod-scroll-reveal-ready .voshod-contact__form,
.voshod-scroll-reveal-ready .voshod-contact__info {
    opacity: 0;
    transition: opacity .68s ease, transform .68s cubic-bezier(.2, .7, .25, 1);
    transition-delay: var(--voshod-reveal-delay, 0ms);
}
.voshod-scroll-reveal-ready .voshod-contact__heading { transform: translateY(18px); }
.voshod-scroll-reveal-ready .voshod-contact__form { transform: translateX(-22px); }
.voshod-scroll-reveal-ready .voshod-contact__info { transform: translateX(22px); }
.voshod-scroll-reveal-ready .voshod-contact__heading.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-contact__form.voshod-reveal-visible,
.voshod-scroll-reveal-ready .voshod-contact__info.voshod-reveal-visible { opacity: 1; transform: translate(0); }
@media (prefers-reduced-motion: reduce) {
    .voshod-scroll-reveal-ready .voshod-contact__heading,
    .voshod-scroll-reveal-ready .voshod-contact__form,
    .voshod-scroll-reveal-ready .voshod-contact__info { opacity: 1; transform: none; transition: none; }
}
