.ks-ref-main { background: #fff; }
.ks-ref-container { width: min(1200px, calc(100% - 2 * var(--ks-gutter))); margin: 0 auto; }
.ks-ref-section { position: relative; padding: clamp(78px, 8vw, 118px) 0; scroll-margin-top: calc(var(--ks-header) + 18px); }
.ks-ref-icon { flex: 0 0 auto; width: 20px; height: 20px; }
.ks-ref-eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--ks-blue); font-family: var(--ks-display); font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.ks-ref-eyebrow::before { content: ""; width: 24px; height: 3px; background: var(--ks-blue); border-radius: 10px; }
.ks-ref-eyebrow--orange { color: var(--ks-orange); }
.ks-ref-eyebrow--orange::before { background: var(--ks-orange); }
.ks-ref-eyebrow--cyan { color: var(--ks-cyan); }
.ks-ref-eyebrow--cyan::before { background: var(--ks-cyan); }
.ks-ref-heading { max-width: 760px; margin: 0 auto clamp(38px, 5vw, 62px); text-align: center; }
.ks-ref-heading h2, .ks-ref-copy h2 { margin: 14px 0 16px; color: var(--ks-navy); font-size: clamp(34px, 4.5vw, 56px); font-weight: 850; line-height: 1.15; letter-spacing: -.055em; }
.ks-ref-heading > p, .ks-ref-copy > p { color: var(--ks-slate); font-size: 15px; line-height: 1.85; }
.ks-ref-heading--dark h2 { color: #fff; }
.ks-ref-heading--dark p { color: #aeb9cc; }
.ks-ref-heading--split { max-width: none; display: flex; align-items: end; justify-content: space-between; text-align: left; }
.ks-ref-heading--split h2 { margin-bottom: 0; }
.ks-ref-heading--split > a { display: inline-flex; align-items: center; gap: 7px; color: var(--ks-blue); text-decoration: none; font-size: 13px; font-weight: 800; }
.ks-ref-heading--split > a .ks-ref-icon { width: 17px; }

.ks-ref-hero { position: relative; min-height: 910px; display: flex; align-items: center; padding: calc(var(--ks-header) + 70px) 0 40px; overflow: hidden; color: #fff; background: var(--ks-navy); }
.ks-ref-hero__media { position: absolute; inset: 0; }
.ks-ref-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; filter: saturate(.85) contrast(1.03); }
.ks-ref-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(4,11,29,.89),rgba(4,11,29,.62) 52%,rgba(4,11,29,.62)), linear-gradient(0deg,rgba(4,11,29,.86),transparent 58%); }
.ks-ref-hero__media span { position: absolute; z-index: 1; inset: 0; opacity: .1; background-image: linear-gradient(rgba(0,232,245,.32) 1px,transparent 1px),linear-gradient(90deg,rgba(0,232,245,.32) 1px,transparent 1px); background-size: 58px 58px; mask-image: linear-gradient(90deg,#000,transparent 78%); }
.ks-ref-hero__content { position: relative; z-index: 2; display: flex; align-items: center; flex-direction: column; text-align: center; }
.ks-ref-badge { display: inline-flex; align-items: center; gap: 9px; min-height: 31px; padding: 0 15px; color: var(--ks-cyan); background: rgba(0,232,245,.12); border: 1px solid rgba(0,232,245,.46); border-radius: 999px; font-size: 10px; font-weight: 800; letter-spacing: .1em; backdrop-filter: blur(8px); }
.ks-ref-badge i { width: 7px; height: 7px; background: var(--ks-cyan); border-radius: 50%; box-shadow: 0 0 0 5px rgba(0,232,245,.13); }
.ks-ref-hero h1 { max-width: 1040px; margin: 22px 0 15px; font-size: clamp(48px, 6.6vw, 88px); font-weight: 900; line-height: 1.06; letter-spacing: -.065em; word-break: keep-all; }
.ks-ref-hero h1 em { color: var(--ks-cyan); font-style: normal; }
.ks-ref-hero__lead { margin: 0; color: #cbd4e2; font-size: clamp(15px, 1.5vw, 19px); line-height: 1.65; }
.ks-ref-hero__lead b { color: #fff; }
.ks-ref-specs { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 28px; }
.ks-ref-specs span { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 15px; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.16); border-radius: 10px; backdrop-filter: blur(8px); }
.ks-ref-specs .ks-ref-icon { width: 16px; color: var(--ks-cyan); }
.ks-ref-specs b { font-size: 11px; font-weight: 700; }
.ks-ref-actions { display: flex; justify-content: center; gap: 11px; margin-top: 25px; }
.ks-ref-button { min-width: 170px; min-height: 49px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 18px; color: #fff; border: 0; border-radius: 11px; text-decoration: none; font-size: 12px; font-weight: 850; cursor: pointer; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.ks-ref-button:hover { transform: translateY(-2px); }
.ks-ref-button--primary { background: var(--ks-blue); box-shadow: 0 12px 30px rgba(7,89,255,.38); }
.ks-ref-button--primary:hover { background: var(--ks-blue-deep); }
.ks-ref-button--glass { background: rgba(255,255,255,.11); border: 1px solid rgba(255,255,255,.33); }
.ks-ref-button--glass:hover { background: rgba(255,255,255,.18); }
.ks-ref-button .ks-ref-icon { width: 17px; }
.ks-ref-countdown { width: min(760px, 100%); margin-top: 38px; padding: 20px 24px 17px; background: rgba(8,19,46,.86); border: 1px solid rgba(255,255,255,.12); border-radius: 20px; box-shadow: 0 24px 70px rgba(0,0,0,.3); backdrop-filter: blur(14px); }
.ks-ref-countdown > p { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0 0 13px; color: #aeb8c8; font-size: 10px; font-weight: 750; letter-spacing: .08em; }
.ks-ref-countdown > p .ks-ref-icon { width: 15px; color: var(--ks-cyan); }
.ks-ref-countdown__grid { display: grid; grid-template-columns: repeat(4,1fr); }
.ks-ref-countdown__grid > div { position: relative; display: grid; place-items: center; gap: 5px; }
.ks-ref-countdown__grid > div + div::before { content: ":"; position: absolute; left: 0; top: 5px; color: #56627a; font-family: var(--ks-display); font-size: 22px; font-weight: 800; transform: translateX(-50%); }
.ks-ref-countdown__grid b { min-width: 55px; color: #fff; font-family: var(--ks-display); font-size: 34px; line-height: 1; font-variant-numeric: tabular-nums; }
.ks-ref-countdown__grid span { color: var(--ks-cyan); font-family: var(--ks-display); font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.ks-ref-countdown__grid.is-status { display: block; padding: 20px; color: var(--ks-cyan); font-weight: 800; }

.ks-ref-about { background: #fff; }
.ks-ref-about__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(52px, 8vw, 110px); }
.ks-ref-copy > p { margin: 0 0 12px; }
.ks-ref-copy h2 em { color: var(--ks-blue); font-style: normal; }
.ks-ref-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-top: 30px; }
.ks-ref-metrics div { padding: 17px 12px; background: #f5f7fb; border-radius: 12px; text-align: center; }
.ks-ref-metrics b { display: block; color: var(--ks-blue); font-family: var(--ks-display); font-size: 27px; line-height: 1; }
.ks-ref-metrics span { display: block; margin-top: 7px; color: var(--ks-muted); font-size: 10px; font-weight: 700; }
.ks-ref-about__visual { position: relative; padding: 0 24px 34px 0; }
.ks-ref-about__image { overflow: hidden; border-radius: 26px; box-shadow: 0 30px 70px rgba(8,19,46,.16); }
.ks-ref-about__image img { width: 100%; min-height: 470px; object-fit: cover; }
.ks-ref-about__badge { position: absolute; right: 0; bottom: 0; display: flex; align-items: center; gap: 14px; width: min(280px, 75%); padding: 19px; color: #fff; background: var(--ks-blue); border: 5px solid #fff; border-radius: 18px; box-shadow: 0 18px 40px rgba(7,89,255,.28); }
.ks-ref-about__badge > .ks-ref-icon { width: 30px; height: 30px; color: var(--ks-cyan); }
.ks-ref-about__badge b { font-size: 13px; }
.ks-ref-about__badge p { margin: 4px 0 0; color: #d9e4ff; font-size: 10px; line-height: 1.5; }

.ks-ref-zones { background: var(--ks-paper); }
.ks-ref-zone-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.ks-ref-zone-card { position: relative; min-height: 405px; display: flex; align-items: flex-start; flex-direction: column; padding: 29px; background: #fff; border: 1px solid var(--ks-line); border-radius: 19px; box-shadow: 0 12px 35px rgba(8,19,46,.045); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ks-ref-zone-card:hover { transform: translateY(-7px); box-shadow: 0 24px 50px rgba(8,19,46,.1); }
.ks-ref-zone-card--blue:hover { border-color: #abc4ff; }
.ks-ref-zone-card--cyan:hover { border-color: #85eaf0; }
.ks-ref-zone-card--orange:hover { border-color: #ffc2a3; }
.ks-ref-zone-card__icon { display: grid; place-items: center; width: 50px; height: 50px; margin-bottom: 25px; color: var(--ks-blue); background: #eaf1ff; border-radius: 14px; }
.ks-ref-zone-card--cyan .ks-ref-zone-card__icon { color: #009aa5; background: #e1fbfc; }
.ks-ref-zone-card--orange .ks-ref-zone-card__icon { color: var(--ks-orange); background: #fff0e8; }
.ks-ref-zone-card__icon .ks-ref-icon { width: 25px; height: 25px; }
.ks-ref-zone-card > span { color: var(--ks-muted); font-family: var(--ks-display); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.ks-ref-zone-card h3 { margin: 7px 0 10px; font-size: 22px; letter-spacing: -.035em; }
.ks-ref-zone-card > p { margin: 0; color: var(--ks-slate); font-size: 12px; line-height: 1.7; }
.ks-ref-zone-card ul { display: grid; gap: 8px; margin: 18px 0 22px; padding: 0; list-style: none; }
.ks-ref-zone-card li { display: flex; gap: 7px; color: #637188; font-size: 11px; }
.ks-ref-zone-card li .ks-ref-icon { width: 14px; height: 14px; color: var(--ks-blue); }
.ks-ref-zone-card button { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding: 0; color: var(--ks-blue); background: none; border: 0; font-size: 11px; font-weight: 850; cursor: pointer; }
.ks-ref-zone-card button .ks-ref-icon { width: 15px; }

.ks-ref-guide { color: #fff; background: var(--ks-navy); }
.ks-ref-anchor { position: absolute; left: 0; top: calc(-1 * var(--ks-header)); width: 1px; height: 1px; }
.ks-ref-anchor--visitor { top: calc(-1 * var(--ks-header) + 1px); }
.ks-ref-tabs { width: fit-content; display: grid; grid-template-columns: 1fr 1fr; margin: 0 auto 30px; padding: 5px; background: #111f3c; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; }
.ks-ref-tabs button { min-width: 170px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 18px; color: #98a5bc; background: transparent; border: 0; border-radius: 9px; font-size: 12px; font-weight: 800; cursor: pointer; }
.ks-ref-tabs button[aria-selected="true"] { color: var(--ks-navy); background: var(--ks-cyan); box-shadow: 0 10px 25px rgba(0,232,245,.18); }
.ks-ref-tabs .ks-ref-icon { width: 16px; }
.ks-ref-guide-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.ks-ref-guide-grid[hidden] { display: none; }
.ks-ref-guide-card { min-height: 310px; display: flex; align-items: flex-start; flex-direction: column; padding: 27px; color: var(--ks-ink); background: #fff; border-radius: 17px; }
.ks-ref-guide-card__tag { display: inline-flex; padding: 6px 9px; color: var(--ks-blue); background: #e9f0ff; border-radius: 7px; font-size: 9px; font-weight: 850; letter-spacing: .06em; }
.ks-ref-guide-card__tag--cyan { color: #008c96; background: #def9fb; }
.ks-ref-guide-card__tag--orange { color: var(--ks-orange); background: #fff0e8; }
.ks-ref-guide-card h3 { margin: 17px 0 8px; font-size: 19px; }
.ks-ref-guide-card > p { margin: 0; color: var(--ks-slate); font-size: 12px; line-height: 1.7; }
.ks-ref-guide-card__price { display: block; margin-top: 20px; color: var(--ks-blue); font-family: var(--ks-display); font-size: 31px; }
.ks-ref-guide-card__price small { margin-left: 5px; color: var(--ks-muted); font-family: var(--ks-body); font-size: 10px; }
.ks-ref-guide-card ul { display: grid; gap: 7px; margin: 18px 0; padding: 0; list-style: none; }
.ks-ref-guide-card li { display: flex; gap: 7px; color: #637188; font-size: 11px; }
.ks-ref-guide-card li .ks-ref-icon { width: 14px; height: 14px; color: var(--ks-blue); }
.ks-ref-guide-card > a, .ks-ref-guide-card > button { display: inline-flex; margin-top: auto; padding: 0; color: var(--ks-blue); background: none; border: 0; text-decoration: none; font-size: 11px; font-weight: 850; cursor: pointer; }

.ks-ref-program { background: #fff; }
.ks-ref-program-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 17px; }
.ks-ref-program-card { overflow: hidden; background: #fff; border: 1px solid var(--ks-line); border-radius: 18px; box-shadow: 0 12px 35px rgba(8,19,46,.05); }
.ks-ref-program-card > header { display: flex; align-items: center; justify-content: space-between; min-height: 62px; padding: 0 22px; color: #fff; background: var(--ks-blue); }
.ks-ref-program-card:nth-child(2) > header { background: #009fac; }
.ks-ref-program-card:nth-child(3) > header { background: var(--ks-orange); }
.ks-ref-program-card > header b { font-family: var(--ks-display); font-size: 18px; }
.ks-ref-program-card > header span { font-size: 10px; font-weight: 750; }
.ks-ref-program-item { min-height: 125px; padding: 20px 22px; }
.ks-ref-program-item + .ks-ref-program-item { border-top: 1px solid var(--ks-line); }
.ks-ref-program-item time { color: var(--ks-blue); font-family: var(--ks-display); font-size: 11px; font-weight: 800; }
.ks-ref-program-item h3 { margin: 7px 0; font-size: 15px; line-height: 1.4; }
.ks-ref-program-item p { margin: 0; color: var(--ks-muted); font-size: 10px; }
.ks-ref-program-item--muted { background: #fafbfd; }

.ks-ref-media { background: var(--ks-paper); }
.ks-ref-media-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.ks-ref-media-card { overflow: hidden; color: inherit; background: #fff; border-radius: 18px; text-decoration: none; box-shadow: 0 14px 36px rgba(8,19,46,.07); transition: transform .25s ease, box-shadow .25s ease; }
.ks-ref-media-card:hover { transform: translateY(-6px); box-shadow: 0 24px 48px rgba(8,19,46,.13); }
.ks-ref-media-card > div { position: relative; aspect-ratio: 1.58; overflow: hidden; }
.ks-ref-media-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.ks-ref-media-card:hover img { transform: scale(1.04); }
.ks-ref-media-card__tag { position: absolute; left: 15px; top: 15px; padding: 6px 9px; color: #fff; background: var(--ks-navy); border-radius: 6px; font-size: 9px; font-weight: 800; }
.ks-ref-media-card__tag--blue { background: var(--ks-blue); }
.ks-ref-media-card__tag--orange { background: var(--ks-orange); }
.ks-ref-media-card article { padding: 20px 22px 24px; }
.ks-ref-media-card time { color: var(--ks-blue); font-family: var(--ks-display); font-size: 10px; font-weight: 800; }
.ks-ref-media-card h3 { margin: 9px 0 8px; font-size: 17px; line-height: 1.45; }
.ks-ref-media-card p { margin: 0; color: var(--ks-slate); font-size: 11px; line-height: 1.65; }

.ks-ref-contact { background: #fff; }
.ks-ref-contact__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(45px, 7vw, 92px); }
.ks-ref-contact h2 { margin: 15px 0 30px; font-size: clamp(33px, 4vw, 50px); letter-spacing: -.05em; }
.ks-ref-contact-list { display: grid; gap: 17px; }
.ks-ref-contact-list > p { display: flex; gap: 13px; margin: 0; color: var(--ks-slate); font-size: 12px; line-height: 1.65; }
.ks-ref-contact-list > p > .ks-ref-icon { width: 19px; color: var(--ks-blue); }
.ks-ref-contact-list span { display: block; }
.ks-ref-contact-list b { display: block; margin-bottom: 4px; color: var(--ks-ink); font-size: 12px; }
.ks-ref-map-card { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin-top: 28px; padding: 21px; color: #fff; background: var(--ks-navy); border-radius: 15px; }
.ks-ref-map-card > .ks-ref-icon { width: 30px; height: 30px; color: var(--ks-cyan); }
.ks-ref-map-card h3 { flex: 1; margin: 0; font-size: 17px; }
.ks-ref-map-card p { flex: 0 0 100%; margin: 4px 0 0 42px; color: #9aa7bb; font-size: 10px; }
.ks-ref-map-card a { display: inline-flex; align-items: center; gap: 5px; margin-left: 42px; color: var(--ks-cyan); text-decoration: none; font-size: 10px; font-weight: 800; }
.ks-ref-map-card a .ks-ref-icon { width: 14px; }
.ks-ref-contact-form { padding: 32px; background: var(--ks-paper); border: 1px solid var(--ks-line); border-radius: 20px; }
.ks-ref-contact-form h3 { margin: 0 0 7px; font-size: 22px; }
.ks-ref-contact-form > p { margin: 0 0 23px; color: var(--ks-slate); font-size: 12px; line-height: 1.6; }
.ks-ref-contact-form form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.ks-ref-contact-form label { color: #59677d; font-size: 10px; font-weight: 750; }
.ks-ref-contact-form label:nth-of-type(3), .ks-ref-contact-form label:nth-of-type(4), .ks-ref-contact-form button, .ks-ref-contact-form .ks-form-state { grid-column: 1 / -1; }
.ks-ref-contact-form label > span, .ks-ref-modal-form label > span { color: var(--ks-orange); }
.ks-ref-contact-form input, .ks-ref-contact-form select, .ks-ref-contact-form textarea { margin-top: 7px; padding: 11px 12px; }
.ks-ref-contact-form textarea { resize: vertical; }
.ks-ref-contact-form button { min-height: 46px; color: #fff; background: var(--ks-blue); border: 0; border-radius: 10px; font-size: 12px; font-weight: 850; cursor: pointer; }

.ks-ref-modal[hidden] { display: none; }
.ks-ref-modal { position: fixed; inset: 0; z-index: 1500; display: grid; place-items: center; padding: 20px; background: rgba(4,10,25,.72); backdrop-filter: blur(6px); }
.ks-ref-modal__dialog { position: relative; width: min(470px, 100%); max-height: calc(100vh - 40px); overflow: auto; padding: 35px; color: var(--ks-ink); background: #fff; border-radius: 22px; box-shadow: 0 30px 100px rgba(0,0,0,.3); animation: ksModalIn .25s ease both; }
.ks-ref-modal__dialog--form { width: min(570px, 100%); }
.ks-ref-modal__close { position: absolute; right: 16px; top: 15px; width: 36px; height: 36px; padding: 0; color: #778399; background: #f0f3f7; border: 0; border-radius: 10px; font-size: 24px; cursor: pointer; }
.ks-ref-modal__title { display: flex; align-items: center; gap: 15px; margin-bottom: 24px; padding-right: 35px; }
.ks-ref-modal__title > span { display: grid; place-items: center; width: 50px; height: 50px; color: #fff; background: var(--ks-blue); border-radius: 14px; }
.ks-ref-modal__title h2, .ks-ref-modal__dialog > h2 { margin: 0 0 5px; font-size: 23px; }
.ks-ref-modal__title p, .ks-ref-modal__dialog > p { margin: 0; color: var(--ks-slate); font-size: 12px; line-height: 1.7; }
.ks-ref-modal-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ks-ref-modal-form label { color: #59677d; font-size: 10px; font-weight: 750; }
.ks-ref-modal-form input, .ks-ref-modal-form select { margin-top: 7px; padding: 11px 12px; }
.ks-ref-check, .ks-ref-modal-form > button, .ks-ref-modal-form .ks-form-state { grid-column: 1 / -1; }
.ks-ref-check { display: flex; align-items: center; gap: 8px; margin-top: 5px; }
.ks-ref-check input { width: 16px; height: 16px; margin: 0; }
.ks-ref-check span { color: var(--ks-slate) !important; }
.ks-ref-modal-form > button, .ks-ref-modal__confirm, .ks-ref-modal__dialog > a { display: grid; place-items: center; min-height: 46px; padding: 0 18px; color: #fff; background: var(--ks-blue); border: 0; border-radius: 10px; text-decoration: none; font-size: 12px; font-weight: 850; cursor: pointer; }
.ks-ref-modal__feature { display: grid; place-items: center; width: 62px; height: 62px; margin-bottom: 20px; color: var(--ks-blue); background: #eaf1ff; border-radius: 17px; }
.ks-ref-modal__feature--cyan { color: #008e98; background: #dff9fb; }
.ks-ref-modal__feature--orange { color: var(--ks-orange); background: #fff0e8; }
.ks-ref-modal__feature .ks-ref-icon { width: 32px; height: 32px; }
.ks-ref-modal__dialog > p { margin-bottom: 24px; }
.ks-ref-privacy { margin: 20px 0; padding: 18px; color: var(--ks-slate); background: var(--ks-paper); border-radius: 12px; font-size: 12px; line-height: 1.7; }
.ks-ref-modal__confirm { width: 100%; }
.ks-ref-toast { position: fixed; z-index: 1700; left: 50%; bottom: 30px; display: flex; align-items: center; gap: 9px; min-width: 280px; max-width: calc(100% - 32px); padding: 14px 18px; color: #fff; background: var(--ks-navy); border: 1px solid rgba(255,255,255,.13); border-radius: 12px; box-shadow: 0 18px 50px rgba(0,0,0,.25); opacity: 0; pointer-events: none; transform: translate(-50%, 20px); transition: .25s ease; }
.ks-ref-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }
.ks-ref-toast .ks-ref-icon { width: 18px; color: var(--ks-cyan); }
.ks-ref-toast span { font-size: 11px; line-height: 1.5; }
@keyframes ksModalIn { from { opacity: 0; transform: translateY(18px) scale(.98); } }

@media (max-width: 980px) {
  .ks-ref-hero { min-height: 850px; }
  .ks-ref-zone-grid, .ks-ref-guide-grid, .ks-ref-program-grid, .ks-ref-media-grid { grid-template-columns: repeat(2,1fr); }
  .ks-ref-guide-card:last-child, .ks-ref-program-card:last-child, .ks-ref-media-card:last-child { grid-column: 1 / -1; }
  .ks-ref-contact__grid { gap: 38px; }
}
@media (max-width: 760px) {
  .ks-ref-section { padding: 72px 0; }
  .ks-ref-hero { min-height: 820px; padding-top: calc(var(--ks-header) + 54px); }
  .ks-ref-hero h1 { font-size: clamp(44px, 12.2vw, 67px); }
  .ks-ref-specs { gap: 7px; }
  .ks-ref-specs span { padding: 0 11px; }
  .ks-ref-countdown { padding: 18px 12px 15px; border-radius: 16px; }
  .ks-ref-countdown__grid b { font-size: 29px; }
  .ks-ref-about__grid, .ks-ref-contact__grid { grid-template-columns: 1fr; }
  .ks-ref-about__visual { max-width: 580px; margin: 0 auto; }
  .ks-ref-about__image img { min-height: 390px; }
  .ks-ref-heading--split { align-items: flex-start; flex-direction: column; gap: 18px; }
  .ks-ref-contact-form { padding: 26px 22px; }
}
@media (max-width: 580px) {
  .ks-ref-hero { min-height: 850px; }
  .ks-ref-hero__lead br { display: none; }
  .ks-ref-specs span:last-child { display: none; }
  .ks-ref-actions { width: 100%; }
  .ks-ref-button { flex: 1; min-width: 0; padding: 0 12px; }
  .ks-ref-countdown__grid b { min-width: 35px; font-size: 25px; }
  .ks-ref-zone-grid, .ks-ref-guide-grid, .ks-ref-program-grid, .ks-ref-media-grid { grid-template-columns: 1fr; }
  .ks-ref-guide-card:last-child, .ks-ref-program-card:last-child, .ks-ref-media-card:last-child { grid-column: auto; }
  .ks-ref-zone-card { min-height: 370px; }
  .ks-ref-tabs { width: 100%; }
  .ks-ref-tabs button { min-width: 0; padding: 0 10px; }
  .ks-ref-metrics { gap: 7px; }
  .ks-ref-metrics b { font-size: 23px; }
  .ks-ref-about__image img { min-height: 330px; }
  .ks-ref-about__badge { width: 82%; }
  .ks-ref-contact-form form, .ks-ref-modal-form { grid-template-columns: 1fr; }
  .ks-ref-contact-form label, .ks-ref-contact-form button, .ks-ref-contact-form .ks-form-state, .ks-ref-modal-form label, .ks-ref-modal-form > button, .ks-ref-modal-form .ks-form-state { grid-column: 1; }
  .ks-ref-modal__dialog { padding: 30px 22px; }
}
