/* Kane's Guide — шапка й футер у коді (макет Bei, 16.09). */

/* Ховання старої Elementor-шапки/футера — інлайном із site-chrome.php за режимом. */

:root {
    --kg-indigo: #3B3AAC;
    --kg-navy:   #090824;
    --kg-orange: #E75132;
    --kg-green:  #33C58B;
    --kg-indigo-2: #4F4EC5;   /* заливка регіону/Join Now і лінія під шапкою (макет) */
    --kg-ph:     #A3A2C4;     /* плейсхолдер пошуку */
    --kg-content: 1460px;
    --kg-gutter: clamp(20px, 4.375vw, 70px);
    --kg-muted:  #8281A1;
}

/* ── Шапка ── */
.kg-chrome-header {
    background: var(--kg-indigo);
    color: #fff;
    font-family: "Premier League", Sans-serif;
    position: sticky;
    top: 0;
    z-index: 1000;
}
body.admin-bar .kg-chrome-header { top: 32px; }
@media (min-width: 601px) and (max-width: 782px) {
    body.admin-bar .kg-chrome-header { top: 46px; }
}
@media (max-width: 600px) {
    body.admin-bar .kg-chrome-header { top: 0; }
}

.kg-chrome-header__top {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: calc(var(--kg-content) + var(--kg-gutter) * 2);
    margin: 0 auto;
    padding: 24px var(--kg-gutter);
}

.kg-chrome-logo,
.kg-chrome-logo:where(:hover, :focus, :visited) {
    color: #fff !important;
    font-family: "Helvetica Display", Sans-serif;
    font-size: 40px;
    line-height: 40px;
    font-weight: 700;
    text-decoration: none !important;
    white-space: nowrap;
    flex-shrink: 0;
    display: inline-block;
    transform: none !important;
    transition: none !important;
    letter-spacing: normal !important;
    animation: none !important;
}

.kg-chrome-search {
    position: relative;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    background: #fff;
    border: 0;
    border-radius: 9px;
    padding: 0 20px;
    height: 50px;
    overflow: hidden;
}
.kg-chrome-search__icon { display: flex; align-items: center; line-height: 0; margin-right: 10px; flex-shrink: 0; }
.kg-chrome-search__input,
.kg-chrome-search__input:focus,
.kg-chrome-search__input:hover,
.kg-chrome-search__input:active {
    -webkit-appearance: none !important;
    appearance: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    font-size: 16px;
    color: #090824;
    line-height: normal;
}
.kg-chrome-search__input::placeholder { color: var(--kg-ph); opacity: 1; }
.kg-chrome-search__input::-webkit-search-decoration,
.kg-chrome-search__input::-webkit-search-cancel-button,
.kg-chrome-search__input::-webkit-search-results-button { -webkit-appearance: none; }

.kg-chrome-region { flex-shrink: 0; position: relative; }
.kg-chrome-region__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 50px;
    box-sizing: border-box;
    border: 0;
    border-radius: 9px;
    background: var(--kg-indigo-2);
    color: #fff;
    font: inherit;
    font-weight: 400;
    font-size: 16px;
    padding: 0 20px;
    cursor: pointer;
    white-space: nowrap;
}
.kg-chrome-region__pin, .kg-chrome-region__caret {
    display: inline-flex;
    align-items: center;
    align-self: center;
    line-height: 0;
    flex-shrink: 0;
}
.kg-chrome-region__menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 180px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0,0,0,.18);
    padding: 8px;
    z-index: 50;
    display: none;
}
.kg-chrome-region__menu::before {
    content: "";
    position: absolute;
    left: 0; right: 0;
    top: -12px;
    height: 12px;
}
.kg-chrome-region:hover .kg-chrome-region__menu,
.kg-chrome-region:focus-within .kg-chrome-region__menu { display: block; }
.kg-region-switcher { list-style: none; margin: 0; padding: 0; }
.kg-region-switcher .kg-region,
.kg-region-switcher .is-soon {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 6px;
    color: #222;
    font-size: 15px;
}
.kg-region-switcher .kg-region a { color: #222; text-decoration: none; }
.kg-region-switcher .kg-region:hover { background: #F1F1FA; }
.kg-region-switcher .is-soon { color: var(--kg-muted); }
.kg-region-switcher .kg-region-soon {
    margin-left: auto;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: var(--kg-muted);
    background: #F1F1FA;
    border-radius: 999px;
    padding: 3px 8px;
}
.kg-region-box {
    flex-shrink: 0;
    width: 18px; height: 18px;
    border: 1.5px solid #cfcfe0;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #fff;
    margin-right: 4px;
}
.kg-region-box.is-checked { background: var(--kg-indigo); border-color: var(--kg-indigo); }

/* «Other Categories» */
.kg-chrome-other { position: relative; flex-shrink: 0; }
.kg-chrome-other__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 8px;
    background: transparent;
    color: #fff;
    font: inherit;
    font-weight: 600;
    font-size: 15px;
    padding: 11px 16px;
    cursor: pointer;
    white-space: nowrap;
}
.kg-chrome-other__menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 260px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0,0,0,.18);
    padding: 8px;
    z-index: 50;
    display: none;
    max-height: 60vh;
    overflow-y: auto;
}
.kg-chrome-other__menu::before {
    content: "";
    position: absolute;
    left: 0; right: 0;
    top: -12px;
    height: 12px;
}
.kg-chrome-other:hover .kg-chrome-other__menu,
.kg-chrome-other:focus-within .kg-chrome-other__menu { display: block; }
.kg-chrome-other__menu a {
    display: block;
    padding: 9px 12px;
    border-radius: 6px;
    color: #222;
    text-decoration: none;
    font-size: 15px;
}
.kg-chrome-other__menu a:hover { background: #F1F1FA; }

.kg-chrome-actions { display: flex; gap: 10px; flex-shrink: 0; }
.kg-chrome-btn {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    min-height: 50px;
    box-sizing: border-box;
    border-radius: 9px;
    padding: 0 48px 0 20px;
    font-weight: 400;
    font-size: 16px;
    text-decoration: none !important;
    white-space: nowrap;
    color: #fff !important;
}
.kg-chrome-btn__label { position: relative; z-index: 1; }
/* Дзеркальний паддінг (як стандартні кнопки сайту): текст їде, стрілці зліва є місце. */
.kg-chrome-btn:hover { padding: 0 20px 0 48px; }
.kg-chrome-btn--ghost,
.kg-chrome-btn--ghost:hover,
.kg-chrome-btn--ghost:focus { border: 1px solid rgba(255,255,255,.5); color: #fff !important; }
.kg-chrome-btn--primary,
.kg-chrome-btn--primary:hover,
.kg-chrome-btn--primary:focus { background: var(--kg-orange); color: #fff !important; }
.kg-chrome-btn--join,
.kg-chrome-btn--join:hover,
.kg-chrome-btn--join:focus { background: var(--kg-indigo-2); color: #fff !important; }

/* Ховер кнопок шапки: ghost підсвічується заливкою й яскравішим бордером,
   помаранчева темнішає. Плавно. */
.kg-chrome-btn, .kg-chrome-region__btn, .kg-chrome-other__btn {
    transition: background-color .15s ease, border-color .15s ease;
}
.kg-chrome-btn--ghost:hover,
.kg-chrome-other__btn:hover {
    background: rgba(255,255,255,.14) !important;
    border-color: rgba(255,255,255,.9) !important;
}
/* Стандартний ефект сайту: кнопка зеленіє на ховер. */
.kg-chrome-btn { transition: background-color .3s ease-out, padding .3s ease-out; }
.kg-chrome-btn--primary:hover,
.kg-chrome-btn--join:hover { background: var(--kg-green) !important; }
.kg-chrome-btn__arrow {
    position: absolute;
    top: 50%;
    width: 18px; height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    transition: all .3s ease-out;
}
.kg-chrome-btn__arrow--out { right: 20px; }
.kg-chrome-btn__arrow--in  { left: -22px; }
.kg-chrome-btn:hover .kg-chrome-btn__arrow--out { right: -22px; }
.kg-chrome-btn:hover .kg-chrome-btn__arrow--in  { left: 20px; }

.kg-chrome-header__navbar { border-top: 1px solid var(--kg-indigo-2); }
.kg-chrome-header__nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
    max-width: calc(var(--kg-content) + var(--kg-gutter) * 2);
    margin: 0 auto;
    padding: 20px var(--kg-gutter);
}
.kg-chrome-nav__item,
.kg-chrome-nav__item:link,
.kg-chrome-nav__item:visited,
.kg-chrome-nav__item:hover,
.kg-chrome-nav__item:focus,
.kg-chrome-nav__item:active {
    color: #fff !important;
    text-decoration: none;
    font-size: 20px;
    line-height: 20px;
    font-weight: 400;
    opacity: .95;
    display: inline-flex;
    align-items: center;
    height: 20px;
    gap: 10px;
}
.kg-chrome-nav__item:hover { opacity: 1; }
.kg-chrome-nav__mobile-label { display: none; }
.kg-chrome-nav__caret { display: inline-flex; align-items: center; align-self: center; line-height: 0; opacity: .85; }

.kg-chrome-nav__group { position: relative; display: flex; align-items: center; height: 20px; }
.kg-chrome-nav__menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    max-width: calc(100vw - 24px);
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0,0,0,.18);
    padding: 8px;
    z-index: 60;
    display: none;
}
/* Невидимий місток, щоб меню не закривалось при переході миші з пункту у випадайку. */
.kg-chrome-nav__menu::before {
    content: "";
    position: absolute;
    left: 0; right: 0;
    top: -10px;
    height: 10px;
}
.kg-chrome-nav__group.has-sub:hover .kg-chrome-nav__menu,
.kg-chrome-nav__group.has-sub:focus-within .kg-chrome-nav__menu { display: block; }
/* Активний пункт лишається білим; каретка обертається. */
.kg-chrome-nav__group.has-sub:hover .kg-chrome-nav__item--cat { opacity: 1; color: #fff; }
.kg-chrome-nav__group.has-sub:hover .kg-chrome-nav__caret { transform: rotate(180deg); opacity: 1; }
.kg-chrome-nav__caret { transition: transform .15s ease; }
.kg-chrome-nav__menu a {
    display: block;
    padding: 9px 12px;
    border-radius: 6px;
    color: #222;
    text-decoration: none;
    font-size: 15px;
}
.kg-chrome-nav__menu a:hover { background: #F1F1FA; }

/* ── Футер ── */
.kg-chrome-footer {
    position: relative;
    overflow: hidden;
    background: var(--kg-navy);
    color: #fff;
    font-family: "Premier League", Sans-serif;
}
/* Декор за макетом: дві дуги в тих самих пропорціях і місцях, що у Figma
   (полотно 1600×619). Відсоткові margin рахуються від ШИРИНИ — тому зсув по
   вертикалі теж прив'язаний до ширини футера, і дуги масштабуються разом із ним,
   а не розтягуються на всю висоту, як робив cover. */
.kg-chrome-footer::before,
.kg-chrome-footer::after {
    content: "";
    position: absolute;
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    z-index: 0;
}
.kg-chrome-footer::before {
    background-image: url("footer-glow-a.svg");
    width: 45.6875%;      /* 731/1600 */
    aspect-ratio: 731 / 818;
    left: -4.9375%;       /* -79/1600 */
    top: 0;
    margin-top: -26%;     /* -416/1600 */
}
.kg-chrome-footer::after {
    background-image: url("footer-glow-b.svg");
    width: 36.625%;       /* 586/1600 */
    aspect-ratio: 586 / 320;
    left: 41.8125%;       /* 669/1600 */
    bottom: 0;
    margin-bottom: -9.125%;  /* дуга виходить за нижній край, як у макеті */
}
.kg-chrome-footer__inner { position: relative; z-index: 1; }
.kg-chrome-footer__inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 56px 40px 32px;
}
.kg-chrome-footer__title {
    text-align: center;
    font-family: "Helvetica Display", Sans-serif;
    font-size: 36px;
    line-height: 36px;
    font-weight: 700;
    margin: 0 0 46px;
}
.kg-chrome-footer__cols {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 40px 30px;
    border-bottom: 1px solid rgba(255,255,255,.12);
    padding-bottom: 32px;
    align-items: start;
}
.kg-chrome-footer__region {
    font-size: 20px;
    line-height: 24px;
    font-weight: 700;
    margin: 0 0 20px;
}
.kg-chrome-footer__list { list-style: none; margin: 0; padding: 0; }
.kg-chrome-footer__list li { margin-bottom: 0; }
.kg-chrome-footer__list a {
    color: rgba(255,255,255,.8);
    text-decoration: none;
    font-size: 16px;
    line-height: 24px;
}
.kg-chrome-footer__list a:hover { color: #fff; }
.kg-chrome-footer__soon {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: rgba(255,255,255,.65);
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 999px;
    padding: 4px 12px;
}

.kg-chrome-footer__all { text-align: center; padding: 24px 0; }
.kg-chrome-footer__all a {
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    font-size: 20px;
    line-height: 24px;
}

.kg-chrome-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}
.kg-chrome-logo--footer { font-size: 44px; line-height: 44px; }
.kg-chrome-footer__copy { color: rgba(255,255,255,.6); font-size: 15px; line-height: 22.5px; margin: 0; }

/* ── Адаптив ── */
@media (max-width: 1024px) {
    .kg-chrome-header__nav { padding: 14px 20px; gap: 18px; font-size: 17px; }
    .kg-chrome-nav__item { font-size: 17px !important; }
    .kg-chrome-footer__inner { padding: 40px 20px 28px; }
    .kg-chrome-footer__cols { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 560px) {
    .kg-chrome-footer__title { font-size: 24px; }
    .kg-chrome-footer__cols { grid-template-columns: 1fr 1fr; gap: 24px; }
    .kg-chrome-footer__bottom { flex-direction: column; align-items: flex-start; }
}

/* Прод-тема фарбує текст кнопок — прибиваємо білим. */
.kg-chrome-region__btn, .kg-chrome-region__btn:hover, .kg-chrome-region__btn:focus,
.kg-chrome-other__btn, .kg-chrome-other__btn:hover, .kg-chrome-other__btn:focus { color: #fff !important; }
/* Тема стилізує будь-який <button> (рожевий бордер, radius 3) — прибиваємо заливку макета. */
.kg-chrome-header .kg-chrome-region__btn,
.kg-chrome-header .kg-chrome-region__btn:hover,
.kg-chrome-header .kg-chrome-region__btn:focus {
    background: var(--kg-indigo-2) !important;
    border: 0 !important;
    border-radius: 9px !important;
    padding: 0 20px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}
.kg-chrome-header .kg-chrome-region__pin,
.kg-chrome-header .kg-chrome-region__caret { align-self: center !important; line-height: 0 !important; }
.kg-chrome-region__btn *, .kg-chrome-other__btn * { color: #fff !important; }

.kg-chrome-header .kg-chrome-btn__mobile-icon,
.kg-chrome-header .kg-chrome-menu-toggle,
.kg-chrome-header .kg-chrome-search-toggle { display: none !important; }
.kg-chrome-header .kg-chrome-search { min-width: 120px; }

/* Compact mode starts at 1024px; both rows share the same wrapper gutters. */
.kg-chrome-header.is-compact .kg-chrome-header__top { position: relative; flex-wrap: wrap; padding: 10px 20px; gap: 3px; }
.kg-chrome-header.is-compact .kg-chrome-logo { font-size: clamp(19px, 5.8vw, 28px); line-height: 1.15; margin-right: auto !important; }
.kg-chrome-header.is-compact .kg-chrome-actions { width: auto; gap: 3px; }
.kg-chrome-header.is-compact .kg-chrome-btn,
.kg-chrome-header.is-compact .kg-chrome-region__btn,
.kg-chrome-header.is-compact .kg-chrome-menu-toggle,
.kg-chrome-header.is-compact .kg-chrome-search-toggle {
        box-sizing: border-box;
        width: 44px;
        height: 44px;
        min-height: 44px;
        flex: 0 0 44px;
        padding: 0 !important;
        justify-content: center;
        align-items: center;
        border: 0 !important;
        border-radius: 9px !important;
        gap: 3px !important;
        color: #fff !important;
    }
.kg-chrome-header.is-compact .kg-chrome-btn__label,
.kg-chrome-header.is-compact .kg-chrome-btn__arrow,
.kg-chrome-header.is-compact .kg-chrome-region__label { display: none; }
.kg-chrome-header.is-compact .kg-chrome-btn__mobile-icon { display: block !important; }
.kg-chrome-header.is-compact .kg-chrome-region__caret svg { width: 8px; }
.kg-chrome-header.is-compact .kg-chrome-region { position: static; margin-left: auto; }
.kg-chrome-header.is-compact .kg-chrome-region__menu { left: auto; right: 20px; top: 58px; max-width: calc(100% - 40px); }
.kg-chrome-header.is-compact.has-search-toggle .kg-chrome-search-toggle { display: inline-flex !important; background: var(--kg-indigo-2); cursor: pointer; }
.kg-chrome-header.is-compact.has-menu-toggle .kg-chrome-menu-toggle { display: inline-flex !important; background: var(--kg-indigo-2); cursor: pointer; }
.kg-chrome-header.is-compact .kg-chrome-menu-toggle[aria-expanded="true"] { background: var(--kg-navy) !important; }
.kg-chrome-header.is-compact.has-menu-toggle .kg-chrome-header__navbar { display: none; }
.kg-chrome-header.is-compact.has-menu-toggle.is-menu-open .kg-chrome-header__navbar {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: calc(100dvh - 120px);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--kg-indigo);
    box-shadow: 0 12px 24px rgb(9 8 36 / 18%);
}
.kg-chrome-header.is-compact .kg-chrome-header__nav { flex-direction: column; align-items: stretch; gap: 0; padding-top: 8px; padding-bottom: 12px; }
.kg-chrome-header.is-compact .kg-chrome-nav__item { height: auto; min-height: 44px; padding: 12px 0; }
.kg-chrome-header.is-compact .kg-chrome-nav__desktop-label { display: none; }
.kg-chrome-header.is-compact .kg-chrome-nav__mobile-label { display: inline; }
.kg-chrome-header.is-compact .kg-chrome-nav__group { display: block; height: auto; border-top: 1px solid var(--kg-indigo-2); }
.kg-chrome-header.is-compact .kg-chrome-nav__caret { display: none; }
.kg-chrome-header.is-compact .kg-chrome-nav__menu { display: block; position: static; min-width: 0; max-width: none; background: transparent; box-shadow: none; padding: 0 0 8px 12px; transform: none !important; }
.kg-chrome-header.is-compact .kg-chrome-nav__menu::before { display: none; }
.kg-chrome-header.is-compact .kg-chrome-nav__menu a { color: #fff; min-height: 44px; padding: 12px; }
.kg-chrome-header.is-compact .kg-chrome-nav__menu a:hover { background: var(--kg-indigo-2); }
.kg-chrome-header.is-compact .kg-chrome-header__nav a:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
.kg-chrome-header .kg-chrome-nav__mobile-only,
.kg-chrome-header .kg-chrome-nav__toggle { display: none !important; }
.kg-chrome-header.is-compact .kg-chrome-nav__mobile-only { display: block !important; }
.kg-chrome-header.is-compact.has-menu-toggle .has-sub > .kg-chrome-nav__item { display: none !important; }
.kg-chrome-header.is-compact.has-menu-toggle .kg-chrome-nav__toggle {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    min-height: 48px;
    padding: 12px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #fff;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.kg-chrome-header.is-compact .kg-chrome-nav__toggle svg { flex-shrink: 0; }
.kg-chrome-header.is-compact .kg-chrome-nav__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.kg-chrome-header.is-compact .kg-chrome-nav__toggle:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
.kg-chrome-header.is-compact.has-menu-toggle .kg-chrome-nav__group > .kg-chrome-nav__menu { display: none; }
.kg-chrome-header.is-compact.has-menu-toggle .kg-chrome-nav__group.is-expanded > .kg-chrome-nav__menu { display: block; }
.kg-chrome-header.is-compact .kg-chrome-search-toggle[aria-expanded="true"] { background: var(--kg-navy) !important; }
.kg-chrome-header.is-compact.has-search-toggle .kg-chrome-search { display: none; }
.kg-chrome-header.is-compact.has-search-toggle.is-search-open .kg-chrome-search { display: flex; }
.kg-chrome-header.is-compact .kg-chrome-search { order: 3; flex-basis: 100%; margin-top: 6px; height: 46px; min-width: 0; padding: 0 14px; }
.kg-chrome-header.is-compact .kg-chrome-header__top a:focus-visible,
.kg-chrome-header.is-compact .kg-chrome-header__top button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media (min-width: 1025px) and (max-width: 1200px) {
    .kg-chrome-header .kg-chrome-logo { font-size: 30px; line-height: 1.15; }
    .kg-chrome-header .kg-chrome-region__btn { padding: 0 12px !important; }
}
@media (max-width: 360px) {
    .kg-chrome-header.is-compact .kg-chrome-header__top,
    .kg-chrome-header__nav { padding-left: 8px; padding-right: 8px; }
    .kg-chrome-header.is-compact .kg-chrome-region__menu { right: 8px; max-width: calc(100% - 16px); }
}
@media (max-width: 420px) {
    .kg-chrome-header.is-compact .kg-chrome-logo { width: 65px; white-space: normal; font-size: 19px; }
}

/* Лого не має «стрибати» на ховер — тема анімує посилання з вищою специфічністю. */
.kg-chrome-header .kg-chrome-logo,
.kg-chrome-header .kg-chrome-logo:hover,
.kg-chrome-header .kg-chrome-logo:focus,
.kg-chrome-footer .kg-chrome-logo,
.kg-chrome-footer .kg-chrome-logo:hover,
.kg-chrome-footer .kg-chrome-logo:focus {
    transform: none !important;
    translate: none !important;
    transition: none !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    animation: none !important;
    text-decoration: none !important;
    letter-spacing: normal !important;
}


/* ── Сторінка результатів пошуку ── */
.kg-search { background: #F4F4FB; min-height: 60vh; }
.kg-search__inner {
    max-width: calc(var(--kg-content) + var(--kg-gutter) * 2);
    margin: 0 auto;
    padding: 48px var(--kg-gutter) 80px;
    font-family: "Premier League", Sans-serif;
}
.kg-search__form {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border-radius: 9px;
    padding: 0 20px;
    height: 50px;
    max-width: 628px;
    margin-bottom: 28px;
}
.kg-search__form-icon { display: flex; align-items: center; line-height: 0; }
.kg-search__form input[type="search"] {
    flex: 1 1 auto;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    font-size: 16px;
    color: #090824;
    padding: 0;
    height: 100%;
}
.kg-search__form input::placeholder { color: var(--kg-ph); opacity: 1; }
.kg-search__form button {
    border: 0;
    background: var(--kg-orange);
    color: #fff;
    border-radius: 9px;
    height: 38px;
    padding: 0 18px;
    font-size: 15px;
    cursor: pointer;
}
.kg-search__form button:hover { background: var(--kg-green); }
.kg-search__title { font-family: "Helvetica Display", Sans-serif; font-size: 40px; line-height: 1.15; color: var(--kg-navy); margin: 0 0 8px; }
.kg-search__count { color: #5B5A79; font-size: 18px; margin: 0 0 32px; }

.kg-search__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 32px;
}
.kg-search-card {
    background: #fff;
    border-radius: 25px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.kg-search-card__media {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    background: var(--kg-indigo);
    border-radius: 300px 300px 0 0;
    overflow: hidden;
}
.kg-search-card__photo, .kg-search-card__logo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity .25s ease;
}
.kg-search-card__photo--empty { background: var(--kg-indigo); display: block; }
.kg-search-card__logo { object-fit: contain; background: #fff; padding: 18%; opacity: 0; }
.kg-search-card:hover .kg-search-card__logo { opacity: 1; }
.kg-search-card__body { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1 1 auto; }
.kg-search-card__cat {
    align-self: flex-start;
    font-size: 13px;
    color: var(--kg-indigo);
    background: #EDEDF8;
    border-radius: 999px;
    padding: 4px 12px;
    text-decoration: none;
}
.kg-search-card__title { font-size: 22px; line-height: 1.2; margin: 0; font-family: "Helvetica Display", Sans-serif; }
.kg-search-card__title a { color: var(--kg-navy); text-decoration: none; }
.kg-search-card__text { color: #5B5A79; font-size: 15px; line-height: 1.5; margin: 0; }
.kg-search-card__btn {
    margin-top: auto;
    align-self: flex-start;
    background: var(--kg-orange);
    color: #fff !important;
    border-radius: 9px;
    padding: 11px 20px;
    font-size: 15px;
    text-decoration: none !important;
    transition: background-color .3s ease-out;
}
.kg-search-card__btn:hover { background: var(--kg-green); }

.kg-search__pager ul { display: flex; gap: 8px; list-style: none; padding: 0; margin: 40px 0 0; }
.kg-search__pager a, .kg-search__pager span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border-radius: 9px;
    background: #fff;
    color: var(--kg-navy);
    text-decoration: none;
    font-size: 15px;
}
.kg-search__pager .current { background: var(--kg-indigo); color: #fff; }

.kg-search-empty { background: #fff; border-radius: 25px; padding: 48px 40px; max-width: 760px; }
.kg-search-empty__title { font-family: "Helvetica Display", Sans-serif; font-size: 32px; color: var(--kg-navy); margin: 0 0 12px; }
.kg-search-empty__text { color: #5B5A79; font-size: 17px; line-height: 1.6; margin: 0 0 24px; }
.kg-search-empty__cats { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; }
.kg-search-empty__cat {
    border: 1px solid #DCDBEF;
    border-radius: 999px;
    padding: 8px 16px;
    font-size: 15px;
    color: var(--kg-navy) !important;
    text-decoration: none !important;
}
.kg-search-empty__cat:hover { border-color: var(--kg-indigo); color: var(--kg-indigo) !important; }
.kg-search-empty__actions { display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 560px) {
    .kg-search__title { font-size: 28px; }
    .kg-search-empty { padding: 32px 22px; }
    .kg-search__grid { gap: 20px; }
}


/* ── Apply now (макет Bei, Figma 742:264) ── */
html:has(.kg-apply), body:has(.kg-apply) { overflow-x: clip; max-width: 100%; }
body:has(.kg-apply) .page-header,
body:has(.kg-apply) .entry-title { display: none !important; }
body:has(.kg-apply) .page-content,
body:has(.kg-apply) .site-main { padding: 0 !important; margin: 0 !important; max-width: none !important; }

.kg-apply {
    font-family: "Premier League", Sans-serif;
    color: var(--kg-navy);
    background: #F6F0E9;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-bottom: 90px;
}
.kg-apply__inner {
    max-width: calc(var(--kg-content) + var(--kg-gutter) * 2);
    margin: 0 auto;
    padding: 0 var(--kg-gutter);
}
.kg-apply__h2 {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(28px, 3.4vw, 48px);
    line-height: 1.2;
    font-weight: 700;
    color: var(--kg-orange);
    margin: 0;
}
.kg-apply__body {
    font-size: clamp(16px, 1.4vw, 20px);
    line-height: 1.5;
    color: var(--kg-navy);
    margin: 0;
}

/* Герой: три дуги з макета, як фон */
.kg-apply__hero {
    position: relative;
    overflow: hidden;
    background: var(--kg-indigo);
    color: #fff;
    padding: 110px 0 96px;
    margin-bottom: 90px;
    text-align: center;
}
.kg-apply__hero::before,
.kg-apply__hero::after,
.kg-apply__hero-arc {
    content: "";
    position: absolute;
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    opacity: .55;
}
.kg-apply__hero::before {          /* ліва дуга, 731x818 @283,-360 у макеті */
    background-image: url("hero-arc-left.svg");
    width: 45.6875%;
    aspect-ratio: 731 / 818;
    left: 17.6875%;
    top: 0;
    margin-top: -22.5%;
}
.kg-apply__hero::after {           /* права дуга, 731x818 @1088,163 */
    background-image: url("hero-arc-right.svg");
    width: 45.6875%;
    aspect-ratio: 731 / 818;
    left: 68%;
    top: 0;
    margin-top: 10.1875%;
}
.kg-apply__hero-arc {              /* нижня дуга, 754x412 @915,488 */
    background-image: url("hero-arc-bottom.svg");
    width: 47.125%;
    aspect-ratio: 754 / 412;
    left: 57.1875%;
    top: 0;
    margin-top: 30.5%;
}
.kg-apply__hero .kg-apply__inner { position: relative; z-index: 1; }
.kg-apply__title {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(40px, 6vw, 96px);
    line-height: 1;
    font-weight: 700;
    color: #fff;
    margin: 0 0 30px;
}
.kg-apply__lead {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(20px, 2.6vw, 40px);
    line-height: 1.2;
    font-weight: 500;
    margin: 0 auto 50px;
    max-width: 1000px;
    color: #fff;
}
.kg-apply__cta { display: inline-flex; }

/* About + картка Кейна */
.kg-apply__about {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr) 339px;
    gap: 50px;
    align-items: start;
    margin-bottom: 24px;   /* у макеті низ картки Кейна 1338, верх смуги 1362 */
}
.kg-apply__eyebrow {
    font-family: "Helvetica Display", Sans-serif;
    font-size: 20px;
    font-weight: 700;
    margin: 0;
}
.kg-apply__about-text { display: grid; gap: 30px; }
.kg-apply__kane {
    /* Біла картка теж арка: у макеті це Union 339x468 з куполом зверху. */
    background: #fff;
    border-radius: 170px 170px 15px 15px;
    padding: 16px 16px 28px;
}
.kg-apply__kane-photo {
    /* Арка з макета: купол зверху, м'які кути знизу. Портрет виступає за верх
       плашки, як у Figma (фото 287x384 над плашкою 311x354), тому не обрізаємо. */
    position: relative;
    height: 354px;
    border-radius: 156px 156px 9px 9px;   /* купол = півширини плашки 311 */
    background: var(--kg-orange);
}
.kg-apply__kane-photo img {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 92%;
    height: auto;
    max-width: none;
    display: block;
}
.kg-apply__kane { overflow: visible; }
.kg-apply__kane-name {
    margin: 22px 0 6px;
    font-size: 24px;
    font-weight: 700;
    color: var(--kg-orange);
}
.kg-apply__kane-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 15px;
    color: #2867B2 !important;
    text-decoration: none !important;
}
.kg-apply__kane-in { display: inline-flex; line-height: 0; flex-shrink: 0; }

/* Смуга FREE: 1460x89 r9 з двома дугами 457x511 (Figma 831:802) — та сама
   пара дуг, що й на кроках, тому позиції теж у % ширини. */
.kg-apply__free {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 89px;
    background: var(--kg-indigo);
    --kg-arc-from: #3B3AAC;
    --kg-arc-to: #6564D8;
    color: #fff;
    border-radius: 9px;
    margin: 0 0 143px;
    padding: 28px 30px;
    text-align: center;
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(22px, 2.2vw, 32px);
    line-height: 1;
    font-weight: 700;
}
.kg-apply__free::before,
.kg-apply__free::after {
    content: "";
    position: absolute;
    top: 0;
    width: 31.3%;            /* 457/1460 */
    aspect-ratio: 457 / 511;
    background: linear-gradient(to top, var(--kg-arc-from) 40%, var(--kg-arc-to) 103.6%);
    -webkit-mask: url("step-arc.svg") no-repeat center / 100% 100%;
    mask: url("step-arc.svg") no-repeat center / 100% 100%;
    pointer-events: none;
}
.kg-apply__free::before { left: 58.3%; margin-top: -19.45%; }
.kg-apply__free::after  { left: 71.9%; margin-top: 1.71%; }
.kg-apply__free > * { position: relative; z-index: 1; }

/* Секції з двоколонковим заголовком */
.kg-apply__section { margin-bottom: 90px; }
.kg-apply__section-head {
    display: grid;
    grid-template-columns: minmax(0, 590px) minmax(0, 842px);
    gap: 40px;
    align-items: start;
    margin-bottom: 40px;
}

/* Leads Management — карусель: у макеті (Figma 758:1778) ряд 1735px ширший за
   контент 1460, тобто картки виїжджають за правий край, під ними дві стрілки. */
.kg-apply__leads {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    /* Трек іде під правий край вікна, як у макеті. */
    margin-right: calc(-1 * var(--kg-gutter));
    padding-right: var(--kg-gutter);
}
.kg-apply__leads::-webkit-scrollbar { display: none; }
.kg-apply__leads > * {
    flex: 0 0 auto;
    width: clamp(260px, 23.5vw, 339px);
    scroll-snap-align: start;
}
.kg-apply__carousel-nav { display: flex; gap: 7px; margin-top: 13px; }
/* Тема малює рожеву рамку й фон на кожному <button> — стрілкам це не треба. */
.kg-apply__carousel-btn,
.kg-apply__carousel-btn:hover,
.kg-apply__carousel-btn:focus,
.kg-apply__carousel-btn:active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: none !important;
    box-shadow: none !important;
    min-height: 0 !important;
    outline: none;
    line-height: 0;
    color: #DEAF77 !important;
    cursor: pointer;
    transform: none !important;
    translate: none !important;
    transition: color .2s ease-out, opacity .2s ease-out !important;
}
.kg-apply__carousel-btn:hover { color: var(--kg-orange) !important; }
.kg-apply__carousel-btn[disabled] { opacity: .35; cursor: default; }
.kg-apply__carousel-btn[disabled]:hover { color: #DEAF77 !important; }
.kg-apply__carousel-btn svg { width: 42px; height: 42px; }
/* Картка лідів — дві вкладені арки з макета (Figma 746:1761): зовнішня
   339x488 r15, всередині 311x354 r9 з відступом 14/16; у синіх карток вона
   темніша (#2F2EA1), у зеленій — того ж кольору, тож не читається. */
.kg-apply__lead-card {
    background: var(--kg-indigo);
    border-radius: 170px 170px 15px 15px;   /* купол = півширини 339 */
    padding: 16px 14px 28px;                /* відступи з макета; у % вони рахувались би від ширини треку */
    color: #fff;
    display: flex;
    flex-direction: column;
}
.kg-apply__lead-arch {
    /* Ширину веде картка, висоту — пропорція; без width/flex браузер рахує
       ширину від розтягнутої висоти й арка виходить вужчою за картку. */
    width: 100%;
    flex: 0 0 auto;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 311 / 354;
    border-radius: 156px 156px 9px 9px;     /* купол = півширини 311 */
    background: #2F2EA1;
    padding: 0 18px;
    text-align: center;
}
.kg-apply__lead-card--first { background: var(--kg-green); }
.kg-apply__lead-card--first .kg-apply__lead-arch { background: var(--kg-green); }
.kg-apply__lead-title {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(24px, 2.9vw, 48px);
    line-height: 1.2;
    font-weight: 700;
}
.kg-apply__lead-head {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(20px, 2.4vw, 40px);
    line-height: 1.2;
    font-weight: 700;
}
.kg-apply__lead-text {
    font-size: 15px;
    line-height: 1.2;
    margin-top: 18px;
    padding: 0 9px;
}

/* Feature Products */
.kg-apply__products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 19px;
}
.kg-apply__product {
    background: #fff;
    border-radius: 170px 170px 15px 15px;
    padding: 14px 14px 28px;
    display: flex;
    flex-direction: column;
}
.kg-apply__product-top {
    height: 240px;
    border-radius: 156px 156px 9px 9px;
    background: #DEAF77;
    margin-bottom: 22px;
    overflow: hidden;
}
.kg-apply__product-top img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.kg-apply__product-btn {
    margin-top: 12px;
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--kg-orange);
    color: #fff !important;
    border-radius: 120px;
    padding: 10px 24px;
    font-size: 16px;
    text-decoration: none !important;
    transition: background-color .3s ease-out;
}
.kg-apply__product-btn:hover { background: var(--kg-green); }
.kg-apply__product-body { padding: 0 6px; display: flex; flex-direction: column; gap: 6px; }
.kg-apply__product-name { font-size: 24px; font-weight: 700; margin: 0; color: var(--kg-navy); }
.kg-apply__product-price { font-size: 20px; color: var(--kg-orange); margin: 0; }
.kg-apply__product-text { font-size: 15px; line-height: 1.4; margin: 0; color: var(--kg-navy); }

/* How to Join */
.kg-apply__heading {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(30px, 4vw, 64px);
    line-height: 1.05;
    font-weight: 700;
    text-align: center;
    margin: 0 0 40px;
    color: var(--kg-navy);
}
/* Кроки: смуга 1460x281 з номером у верхньому лівому куті й заголовком по
   центру; між смугами 140px, як у макеті (Figma 762:1944). */
.kg-apply__steps { display: grid; gap: clamp(24px, 9.6vw, 140px); margin-bottom: 90px; }
.kg-apply__step {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 281px;
    border-radius: 9px;
    padding: 33px 51px;
    color: #fff;
    font-family: "Helvetica Display", Sans-serif;
    font-weight: 700;
    text-align: center;
}
/* Дуга — не напівпрозора накладка: у макеті це той самий силует, залитий
   градієнтом від кольору смуги до світлішого відтінку. Тому SVG беремо як
   маску, а колір задаємо змінними на кожну смугу. */
.kg-apply__step::before,
.kg-apply__step::after {
    content: "";
    position: absolute;
    top: 0;
    width: 31.3%;            /* 457/1460 */
    aspect-ratio: 457 / 511;
    background: linear-gradient(to top, var(--kg-arc-from) 40%, var(--kg-arc-to) 103.6%);
    -webkit-mask: url("step-arc.svg") no-repeat center / 100% 100%;
    mask: url("step-arc.svg") no-repeat center / 100% 100%;
    pointer-events: none;
}
/* Зсув по вертикалі — теж у відсотках ширини (відсотковий margin рахується від
   ширини), інакше на вузькому екрані дуги роз'їжджаються: ширина стискається,
   а px-овий top лишається. */
.kg-apply__step::after           { left: 71.9%; margin-top: 1.71%; }
.kg-apply__step--indigo::before  { left: 58.3%; margin-top: -19.45%; }
.kg-apply__step--green::before   { left: 9.5%;  margin-top: -13.97%; }
.kg-apply__step--orange::after   { left: 66.4%; margin-top: 1.71%; }
.kg-apply__step--orange::before  { left: -2.2%; margin-top: 2.47%; }
.kg-apply__step--indigo { background: var(--kg-indigo); --kg-arc-from: #3B3AAC; --kg-arc-to: #6564D8; }
.kg-apply__step--green  { background: var(--kg-green);  --kg-arc-from: #33C58B; --kg-arc-to: #3EE6A4; }
.kg-apply__step--orange { background: var(--kg-orange); --kg-arc-from: #E75132; --kg-arc-to: #FF856C; }
.kg-apply__step-num {
    position: absolute;
    left: 51px;
    top: 33px;
    font-size: clamp(28px, 3vw, 48px);
    line-height: 1;
    opacity: .9;
}
.kg-apply__step-text {
    position: relative;
    z-index: 1;
    font-size: clamp(22px, 3vw, 48px);
    line-height: 1;
    max-width: 900px;
}

/* Форма */
.kg-apply__card {
    scroll-margin-top: 190px;
    background: #fff;
    border-radius: 9px;
    padding: clamp(28px, 4vw, 66px);
}
.kg-apply__card-title {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(26px, 3vw, 40px);
    line-height: 1;
    font-weight: 700;
    color: var(--kg-orange);
    text-align: center;
    margin: 0 0 40px;
}
.kg-apply-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
.kg-apply-form__row {
    display: flex;
    align-items: center;
    gap: 14px;
    border-bottom: 1px solid #EAE9FF;
    padding: 20px 0;
}
.kg-apply-form__row--full { grid-column: 1 / -1; }
.kg-apply-form__label {
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(18px, 1.9vw, 28px);
    font-weight: 700;
    color: var(--kg-navy);
    white-space: nowrap;
}
.kg-apply-form input[type="text"],
.kg-apply-form input[type="tel"],
.kg-apply-form input[type="email"],
.kg-apply-form input[type="password"],
.kg-apply-form select {
    flex: 1 1 auto;
    min-width: 0;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0;
    height: auto;
    font-family: "Helvetica Display", Sans-serif;
    font-size: clamp(18px, 1.9vw, 28px);
    font-weight: 700;
    color: var(--kg-navy);
    -webkit-appearance: none;
    appearance: none;
}
.kg-apply-form select { cursor: pointer; }
.kg-apply-form input::placeholder { color: #E0E0E0; opacity: 1; }
.kg-apply-form__eye,
.kg-apply-form__eye:hover,
.kg-apply-form__eye:focus {
    flex-shrink: 0;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    min-height: 0 !important;
    background: none;
    padding: 0;
    color: #E0E0E0;
    cursor: pointer;
    line-height: 0;
}
/* Тема анімує й фарбує кожен <button> — оку це не потрібно. */
.kg-apply__card .kg-apply-form__eye,
.kg-apply__card .kg-apply-form__eye:hover,
.kg-apply__card .kg-apply-form__eye:focus,
.kg-apply__card .kg-apply-form__eye:active {
    color: #C9C8DE !important;
    transform: none !important;
    translate: none !important;
    transition: color .15s ease !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    animation: none !important;
    outline: 0 !important;
}
.kg-apply__card .kg-apply-form__eye:hover { color: var(--kg-indigo) !important; }
.kg-apply-form__eye.is-visible,
.kg-apply__card .kg-apply-form__eye.is-visible { color: var(--kg-indigo) !important; }
.kg-apply-form__eye.is-visible .kg-apply-form__eye-slash { display: none; }
.kg-apply-form__foot { display: flex; justify-content: flex-end; margin-top: 46px; }
.kg-apply-form button[type="submit"] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 50px;
    border: 0;
    border-radius: 25px;
    background: var(--kg-orange);
    color: #fff;
    font-family: "Premier League", Sans-serif;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .3s ease-out;
}
.kg-apply-form button[type="submit"]:hover { background: var(--kg-green); }
.kg-apply-form__error {
    margin-bottom: 24px;
    padding: 14px 20px;
    border-radius: 9px;
    background: #FDECE8;
    color: #B03A20;
    font-size: 16px;
}
.kg-apply-form__note {
    padding: 18px 22px;
    border-radius: 9px;
    background: #EDEDF8;
    color: var(--kg-navy);
    font-size: 18px;
    text-align: center;
}

@media (max-width: 1200px) {
    .kg-apply__about { grid-template-columns: minmax(0, 1fr) 300px; grid-template-areas: "eyebrow kane" "text kane"; grid-template-rows: auto 1fr; }
    .kg-apply__eyebrow { grid-area: eyebrow; }
    .kg-apply__about-text { grid-area: text; }
    .kg-apply__kane { grid-area: kane; align-self: start; }
    .kg-apply__section-head { grid-template-columns: 1fr; gap: 20px; }
    .kg-apply__products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    /* Cap tablet cards too: fixed corner radii leave flat tops on wide cards. */
    .kg-apply__product { width: 100%; max-width: 360px; box-sizing: border-box; justify-self: center; border-radius: 999px 999px 15px 15px; }
    .kg-apply__lead-arch { border-radius: 999px 999px 9px 9px; }
    .kg-apply__product-top { height: auto; aspect-ratio: 1 / 1; border-radius: 999px 999px 9px 9px; }
}
@media (max-width: 860px) {
    .kg-apply { padding-bottom: 56px; }
    .kg-apply__hero { padding: 60px 0 56px; margin-bottom: 50px; }
    .kg-apply__about { grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; margin-bottom: 48px; }
    .kg-apply__about-text { gap: 20px; }
    .kg-apply__kane { width: 100%; max-width: 339px; box-sizing: border-box; }
    .kg-apply__kane-photo { height: auto; aspect-ratio: 311 / 354; }
    .kg-apply__free, .kg-apply__section, .kg-apply__steps { margin-bottom: 56px; }
    .kg-apply__section-head { margin-bottom: 24px; }
    .kg-apply__leads { gap: 16px; }
    .kg-apply__lead-arch { border-radius: 999px 999px 9px 9px; }
    .kg-apply__steps { gap: 20px; }
    .kg-apply__step { min-height: 160px; padding: 24px; flex-direction: column; align-items: flex-start; gap: 20px; text-align: left; }
    .kg-apply__step-num { position: relative; left: auto; top: auto; }
    .kg-apply__step-text { line-height: 1.2; }
    .kg-apply-form__grid { grid-template-columns: 1fr; gap: 0; }
    .kg-apply-form__row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 16px 0; }
    .kg-apply-form__label { grid-column: 1 / -1; }
    .kg-apply-form input, .kg-apply-form select { width: 100%; min-height: 44px; }
    .kg-apply-form input::placeholder { color: var(--kg-muted); }
    .kg-apply-form__row:focus-within { border-bottom-color: var(--kg-indigo); }
    .kg-apply__card .kg-apply-form__eye { width: 44px; height: 44px; }
    .kg-apply-form__foot { justify-content: stretch; margin-top: 28px; }
    .kg-apply-form button[type="submit"] { width: 100%; justify-content: center; padding: 14px 18px; font-size: 18px; line-height: 1.3; white-space: normal; }
    .kg-apply-form button[type="submit"] svg { flex-shrink: 0; }
}
@media (max-width: 600px) {
    .kg-apply__hero { padding: 44px 0; margin-bottom: 40px; }
    .kg-apply__title { font-size: clamp(32px, 8.8vw, 48px); line-height: 1.08; margin-bottom: 20px; }
    .kg-apply__lead { margin-bottom: 28px; line-height: 1.4; }
    .kg-apply__about { grid-template-columns: minmax(0, 1fr); grid-template-areas: "eyebrow" "text" "kane"; grid-template-rows: auto; gap: 24px; }
    .kg-apply__kane { justify-self: center; margin-top: 20px; }
    .kg-apply__products { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .kg-apply__leads { gap: 12px; }
    .kg-apply__leads > * { width: min(82vw, 339px); }
    .kg-apply__free { padding: 24px 20px; line-height: 1.3; }
    .kg-apply__heading { line-height: 1.2; margin-bottom: 24px; }
    .kg-apply__card { padding: 28px 20px; scroll-margin-top: 24px; }
    .kg-apply__card-title { margin-bottom: 20px; line-height: 1.2; }
}
