/* L17 only. Shared navigation, consent and lead modal use the site shell. */
.kd-page { --kd-ink:#282035; --kd-muted:#62596d; --kd-purple:#6146b4; --kd-line:#ded6e8; --kd-paper:#faf8fc; }
.kd-main { color:var(--kd-ink); overflow:clip; background:#fff; }
.kd-main * { box-sizing:border-box; }
.kd-container { width:min(1290px, calc(100% - 48px)); margin-inline:auto; }
.kd-main h1,.kd-main h2,.kd-main h3,.kd-main p,.kd-main figure { margin:0; }
.kd-main a { color:inherit; }
.kd-main p { line-height:1.65; }
.kd-main a:focus-visible,.kd-main button:focus-visible,.kd-main [tabindex]:focus-visible { outline:3px solid #765ee2; outline-offset:5px; }
.kd-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; padding:20px 0 32px; color:var(--kd-muted); font-size:12px; }
.kd-breadcrumb a { text-decoration:none; }
.kd-breadcrumb [aria-current] { color:var(--kd-purple); }
.kd-hero { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(0,1fr); gap:48px; align-items:center; margin:0 0 36px; }
.kd-kicker { color:var(--kd-purple); font-size:12px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; line-height:1.5!important; margin-bottom:20px!important; }
.kd-hero h1 { font-size:clamp(36px,4vw,54px); line-height:1.07; letter-spacing:-.045em; font-weight:700; max-width:660px; text-wrap:balance; }
.kd-hero h1 em { color:var(--kd-purple); font-style:normal; }
.kd-lead { font-size:19px; line-height:1.58!important; margin-top:24px!important; max-width:600px; color:var(--kd-muted); }
.kd-actions { display:flex; flex-wrap:wrap; gap:18px; align-items:center; margin-top:30px; }
.kd-main .commercial-button { min-height:52px; padding:15px 22px; border-radius:12px; font-size:15px; gap:15px; }
.kd-main .commercial-button--primary { color:#fff; background:#6146b4; box-shadow:0 10px 24px #6146b426; }
.kd-main .commercial-button--dark { color:#352354; }
.kd-link { display:inline-flex; align-items:center; gap:14px; min-height:44px; font-size:14px; font-weight:650; text-decoration:underline; text-underline-offset:5px; text-decoration-color:#c4b7da; }
.kd-hero-note { color:var(--kd-muted); font-size:14px; margin-top:17px!important; max-width:510px; }
.kd-hero-proof { display:flex; gap:14px; align-items:center; text-decoration:none; margin-top:29px; padding-top:21px; border-top:1px solid var(--kd-line); max-width:510px; color:var(--kd-muted)!important; font-size:13px; line-height:1.55; }
.kd-hero-proof strong { color:var(--kd-ink); font-size:14px; }
.kd-proof-mark { display:grid; place-items:center; flex:none; width:36px; height:36px; border-radius:50%; background:#f0e9f9; color:var(--kd-purple); font-size:21px; }
.kd-hero-art { align-self:stretch; position:relative; overflow:hidden; border-radius:28px; min-height:570px; background:#d6c7e2; }
.kd-hero-art picture,.kd-hero-art img { height:100%; width:100%; }
.kd-hero-art img { position:absolute; inset:0; object-fit:cover; object-position:63% 50%; }
.kd-hero-art::after { content:''; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,#241727cf); pointer-events:none; }
.kd-hero-art figcaption { position:absolute; bottom:20px; left:24px; right:24px; z-index:2; color:#eee4ee; font-size:12px; line-height:1.5; }
.kd-art-label { position:absolute; bottom:64px; left:32px; right:24px; z-index:2; color:#fff; }
.kd-art-label span { display:block; font-size:12px; letter-spacing:.08em; margin-bottom:10px; text-transform:uppercase; }
.kd-art-label strong { font-size:32px; line-height:1.15; font-weight:500; letter-spacing:-.02em; }
.kd-section-nav { display:flex; flex-wrap:wrap; gap:12px 28px; border-bottom:1px solid var(--kd-line); padding:10px 0 28px; }
.kd-section-nav a { text-decoration:none; font-size:14px; min-height:35px; display:flex; align-items:center; color:var(--kd-muted); }
.kd-section-nav a:hover,.kd-link:hover { color:var(--kd-purple); }
.kd-section { padding:88px 0; scroll-margin-top:24px; }
.kd-section-head { display:grid; grid-template-columns:1fr 1fr; column-gap:64px; row-gap:16px; margin-bottom:38px; }
.kd-section-head .kd-kicker { grid-column:1/-1; margin-bottom:0!important; }
.kd-main h2 { font-size:clamp(30px,3.25vw,44px); line-height:1.12; letter-spacing:-.035em; font-weight:650; text-wrap:balance; }
.kd-section-head > p:last-child { color:var(--kd-muted); font-size:16px; align-self:center; max-width:610px; }
.kd-main h3 { font-size:21px; line-height:1.28; font-weight:650; letter-spacing:-.015em; }
.kd-path { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin:0; padding:0; list-style:none; }
.kd-path li { position:relative; padding-top:26px; border-top:2px solid #d7c7e9; }
.kd-path li > span { display:inline-block; color:var(--kd-purple); font-size:13px; margin-bottom:18px; }
.kd-path h3 { font-size:19px; margin-bottom:12px; }
.kd-path p { color:var(--kd-muted); font-size:14px; }
.kd-boundary { display:grid; grid-template-columns:230px 1fr; gap:30px; margin-top:36px; padding:23px 0; border-block:1px solid var(--kd-line); }
.kd-boundary strong { font-size:15px; }
.kd-boundary p { color:var(--kd-muted); font-size:14px; max-width:900px; }
.kd-booking-section { background:var(--kd-paper); margin-inline:-24px; padding-inline:24px; border-radius:32px; }
.kd-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:center; }
.kd-copy p:not(.kd-kicker) { color:var(--kd-muted); font-size:16px; margin-top:20px; }
.kd-small { font-size:14px!important; line-height:1.6!important; }
.kd-copy .kd-link { margin-top:24px; color:var(--kd-purple); }
.kd-booking { padding:30px; border-radius:22px; background:#fff; box-shadow:0 22px 55px #4025590d; border:1px solid #e7dfef; }
.kd-booking-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:26px; }
.kd-concept { display:inline-block; color:var(--kd-purple); font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.kd-dot { width:8px; height:8px; flex:none; background:#7d6a9c; border-radius:50%; }
.kd-apartment { font-size:14px; color:var(--kd-muted); margin-bottom:8px!important; }
.kd-booking h3 { font-size:25px; }
.kd-booking-hint { font-size:14px; color:var(--kd-muted); margin-top:10px!important; }
.kd-days { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:22px; }
.kd-main button { font:inherit; cursor:pointer; }
.kd-days button { min-width:0; display:grid; gap:5px; padding:16px 5px; color:var(--kd-ink); border:1px solid #dcd2e8; border-radius:12px; background:#fff; text-align:center; }
.kd-days button[aria-pressed=true] { color:#fff; background:var(--kd-purple); border-color:var(--kd-purple); }
.kd-days small,.kd-days span { font-size:12px; }
.kd-days strong { font-size:27px; font-weight:600; line-height:1.2; }
.kd-slots { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:20px; }
.kd-slots button { min-height:44px; font-size:13px; border:1px solid #dcd2e8; border-radius:9px; background:#fff; color:var(--kd-ink); }
.kd-slots button[aria-pressed=true] { border-color:var(--kd-purple); color:var(--kd-purple); background:#f3ecfb; box-shadow:inset 0 0 0 1px var(--kd-purple); }
.kd-slots button:disabled { background:#f5f3f6; color:#7a737e; border-color:#f0edf2; cursor:default; }
.kd-booking-status { font-size:13px; min-height:48px; margin-top:20px!important; color:var(--kd-purple); }
.kd-demo-action { padding:14px; border-radius:10px; color:#fff; background:var(--kd-purple); border:0; font-size:14px!important; width:100%; min-height:48px; }
.kd-demo-action:disabled { color:#69616f; background:#eae4ee; cursor:default; }
.kd-demo-reset { padding:12px; border:0; background:#fff; color:var(--kd-purple); text-decoration:underline; text-underline-offset:4px; font-size:13px!important; width:100%; min-height:44px; }
.kd-demo-note { margin-top:15px!important; color:var(--kd-muted); font-size:14px!important; }
.kd-remark { display:grid; grid-template-columns:1fr 1.3fr; gap:64px; padding-top:58px; margin-top:58px; border-top:1px solid var(--kd-line); }
.kd-remark h3 { font-size:27px; margin-bottom:16px; }
.kd-remark > div > p:last-child { color:var(--kd-muted); font-size:14px; }
.kd-remark-flow { list-style:none; margin:0; padding:0; display:grid; gap:22px; }
.kd-remark-flow li { display:grid; grid-template-columns:150px 1fr; gap:5px 20px; position:relative; padding-left:24px; border-left:2px solid #d6c9e5; }
.kd-remark-flow li::before { content:''; width:10px; height:10px; border:2px solid #fff; background:var(--kd-purple); border-radius:50%; position:absolute; left:-6px; top:4px; }
.kd-remark-flow span { font-size:12px; color:var(--kd-muted); }
.kd-remark-flow strong { font-size:15px; line-height:1.4; }
.kd-remark-flow p { grid-column:2; font-size:14px; color:var(--kd-muted); }
.kd-disclaimer { font-size:14px; margin-top:32px!important; color:var(--kd-muted); max-width:1020px; }
.kd-data-table table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:14px; line-height:1.6; }
.kd-data-table caption { text-align:left; padding:0 0 18px; font-size:12px; color:var(--kd-muted); }
.kd-data-table th,.kd-data-table td { text-align:left; vertical-align:top; padding:20px 24px; border-bottom:1px solid var(--kd-line); }
.kd-data-table thead { background:#f1ecf7; font-size:13px; }
.kd-data-table thead th:first-child { width:23%; }
.kd-data-table tbody th { font-weight:600; padding-left:0; }
.kd-data-table td { color:var(--kd-muted); }
.kd-access { display:grid; grid-template-columns:1fr 1fr; gap:64px; margin-top:36px; }
.kd-access h3 { margin-bottom:14px; }
.kd-access p { color:var(--kd-muted); font-size:14px; }
.kd-experience { display:grid; grid-template-columns:1fr 1.3fr; gap:96px; align-items:center; border-block:1px solid var(--kd-line); }
.kd-real-screen { background:#f4effa; border-radius:26px; padding:28px 24px 20px; text-align:center; }
.kd-real-screen a { display:block; width:185px; max-width:100%; margin:auto; }
.kd-real-screen img { height:auto; width:100%; border-radius:15px; }
.kd-real-screen figcaption { margin-top:18px; color:var(--kd-muted); font-size:12px; }
.kd-scope { display:grid; grid-template-columns:1fr 1fr; gap:56px; }
.kd-scope ul { padding:0; margin:20px 0 0; list-style:none; }
.kd-scope li { padding:14px 0 14px 25px; border-bottom:1px solid var(--kd-line); position:relative; font-size:14px; line-height:1.6; color:var(--kd-muted); }
.kd-scope li::before { content:'✓'; position:absolute; left:0; color:var(--kd-purple); font-weight:700; }
.kd-scope-later { padding:30px; background:var(--kd-paper); border-radius:20px; }
.kd-scope-later p { margin-top:20px; color:var(--kd-muted); font-size:14px; }
.kd-scope-later a { margin-top:24px; color:var(--kd-purple); }
.kd-acceptance { display:grid; grid-template-columns:1fr 1.3fr; gap:64px; margin-top:45px; padding:34px 0 0; border-top:1px solid var(--kd-line); }
.kd-acceptance h3 { font-size:27px; max-width:320px; }
.kd-acceptance ol { padding-left:20px; margin:0; display:grid; gap:14px; font-size:14px; color:var(--kd-muted); line-height:1.6; }
.kd-acceptance strong { color:var(--kd-ink); }
.kd-estimate { border-top:1px solid var(--kd-line); }
.kd-estimate-rows { display:grid; gap:0; }
.kd-estimate-rows article { display:grid; grid-template-columns:80px 1fr; gap:30px; padding:26px 0; border-bottom:1px solid var(--kd-line); }
.kd-estimate-rows article > span { color:var(--kd-purple); font-size:14px; padding-top:4px; }
.kd-estimate-rows article > div { display:grid; grid-template-columns:1fr 1.35fr; gap:64px; }
.kd-estimate-rows p { color:var(--kd-muted); font-size:14px; }
.kd-choice { margin-top:42px; }
.kd-choice dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin:24px 0 0; }
.kd-choice dt { font-size:15px; font-weight:650; margin-bottom:12px; }
.kd-choice dd { margin:0; color:var(--kd-muted); font-size:14px; line-height:1.65; }
.kd-faq-section { padding-top:12px; }
.kd-faq-section .commercial-faq { max-width:none; gap:12px; }
.kd-faq-section .commercial-faq > details { border:0; border-bottom:1px solid var(--kd-line); border-radius:0; box-shadow:none; }
.kd-faq-section .commercial-faq__question { padding-left:0; }
.kd-faq-section .commercial-faq__answer { padding-left:0; max-width:950px; }
.kd-next { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.kd-next a { display:grid; grid-template-columns:1fr auto; gap:10px 20px; min-width:0; border-top:1px solid var(--kd-line); padding-top:24px; text-decoration:none; }
.kd-next span { grid-column:1/-1; color:var(--kd-muted); font-size:12px; }
.kd-next strong { font-size:18px; line-height:1.4; font-weight:600; }
.kd-next b { color:var(--kd-purple); font-weight:400; font-size:26px; }
.kd-main .kd-final { grid-template-columns:1.35fr 1fr; gap:72px; margin:72px 0; padding:48px; background:radial-gradient(ellipse at 100% 0,#745b9b,transparent 80%),#302040; box-shadow:none; border-radius:26px; }
.kd-final .kd-kicker { color:#d9c9f2; }
.kd-final h2 { color:#fff; font-size:38px; }
.kd-final > div:first-child > p { font-size:15px; color:#e1d8eb; margin-top:20px; }
.kd-final .kd-final-small { font-size:14px!important; }
.kd-final-actions { display:flex; flex-direction:column; gap:12px; align-items:stretch; }
.kd-final-contact { min-height:44px; display:flex; align-items:center; justify-content:center; color:#fff!important; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.kd-final-actions p { color:#d9cce5; font-size:14px; text-align:center; margin-top:5px; }
@media(max-width:1100px) {
 .kd-hero { gap:30px; } .kd-hero h1 { font-size:44px; } .kd-hero-art { min-height:600px; }
 .kd-split,.kd-experience { gap:44px; } .kd-remark { gap:36px; } .kd-remark-flow li { grid-template-columns:1fr; } .kd-remark-flow p { grid-column:1; }
 .kd-estimate-rows article > div { gap:30px; } .kd-section-head { column-gap:40px; }
}
@media(max-width:850px) {
 .kd-hero { grid-template-columns:1fr; gap:32px; } .kd-hero h1 { max-width:620px; font-size:48px; } .kd-lead { max-width:680px; }
 .kd-hero-art { min-height:350px; } .kd-hero-art img { object-position:50% 60%; } .kd-art-label { bottom:58px; } .kd-art-label strong { font-size:28px; }
 .kd-section { padding-block:64px; } .kd-section-head { grid-template-columns:1fr; gap:20px; } .kd-main h2 { font-size:36px; }
 .kd-path { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; } .kd-split { grid-template-columns:1fr; gap:32px; }
 .kd-booking { max-width:580px; width:100%; } .kd-remark { grid-template-columns:1fr; gap:30px; } .kd-remark-flow { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
 .kd-access,.kd-scope { gap:32px; } .kd-experience { grid-template-columns:.8fr 1.2fr; gap:35px; }
 .kd-experience h2 { font-size:30px; } .kd-experience .kd-copy p { font-size:14px; } .kd-acceptance { grid-template-columns:1fr; gap:22px; } .kd-acceptance h3 { max-width:none; }
 .kd-estimate-rows article { grid-template-columns:40px 1fr; gap:20px; } .kd-estimate-rows article > div { grid-template-columns:1fr; gap:12px; }
 .kd-choice dl { gap:24px; } .kd-main .kd-final { grid-template-columns:1fr; gap:34px; padding:35px; } .kd-final-actions { max-width:400px; }
}
@media(max-width:600px) {
 .kd-container { width:calc(100% - 36px); } .kd-breadcrumb { font-size:12px; padding:10px 0 28px; gap:5px; }
 .kd-hero h1 { font-size:38px; line-height:1.1; } .kd-kicker { font-size:12px; margin-bottom:15px!important; }
 .kd-lead { font-size:17px; margin-top:20px!important; } .kd-actions { display:grid; gap:12px; margin-top:24px; }
 .kd-main .commercial-button { font-size:15px; padding-inline:17px; } .kd-actions .kd-link { justify-content:center; font-size:13px; }
 .kd-hero-note { font-size:14px; margin-top:14px!important; } .kd-hero-proof { margin-top:21px; font-size:12px; } .kd-hero-proof strong { font-size:13px; }
 .kd-hero-art { min-height:300px; border-radius:20px; } .kd-art-label { left:24px; bottom:56px; } .kd-art-label strong { font-size:26px; } .kd-hero-art figcaption { left:24px; font-size:12px; }
 .kd-section-nav { gap:0 20px; padding-bottom:20px; } .kd-section-nav a { font-size:14px; min-height:40px; }
 .kd-section { padding-block:52px; } .kd-main h2 { font-size:31px; } .kd-section-head { margin-bottom:28px; gap:16px; } .kd-section-head > p:last-child { font-size:15px; }
 .kd-path { grid-template-columns:1fr; gap:25px; } .kd-path li { display:grid; grid-template-columns:30px 1fr; gap:10px 14px; padding-top:19px; } .kd-path li > span { margin:3px 0 0; } .kd-path h3 { font-size:19px; margin:0; } .kd-path p { grid-column:2; font-size:14px; }
 .kd-boundary { grid-template-columns:1fr; gap:10px; margin-top:28px; } .kd-booking-section { margin-inline:-8px; padding-inline:18px; border-radius:24px; }
 .kd-copy p:not(.kd-kicker) { font-size:15px; margin-top:17px; } .kd-booking { padding:20px 16px; border-radius:18px; }
 .kd-booking-top { margin-bottom:22px; } .kd-concept { font-size:12px; } .kd-days { gap:7px; } .kd-days small { font-size:12px; } .kd-days button { padding-block:13px; } .kd-slots { gap:8px; }
 .kd-remark { margin-top:36px; padding-top:36px; } .kd-remark h3 { font-size:25px; } .kd-remark-flow { grid-template-columns:1fr; gap:20px; } .kd-disclaimer { font-size:14px; }
 .kd-data-table table,.kd-data-table tbody,.kd-data-table tr,.kd-data-table td,.kd-data-table th { display:block; width:100%; }
 .kd-data-table thead { display:none; } .kd-data-table tr { border-top:1px solid var(--kd-line); padding:20px 0; }
 .kd-data-table caption { display:block; width:100%; }
 .kd-data-table tbody th { font-size:17px; padding:0 0 12px; border:0; } .kd-data-table td { padding:8px 0 0; border:0; font-size:14px; }
 .kd-data-table td::before { display:block; font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--kd-purple); font-weight:700; margin-bottom:4px; }
 .kd-data-table td:nth-child(2)::before { content:'Откуда получаем'; } .kd-data-table td:nth-child(3)::before { content:'Возвращаем и проверяем'; }
 .kd-access,.kd-experience,.kd-scope { grid-template-columns:1fr; gap:30px; } .kd-access { margin-top:20px; } .kd-real-screen { order:2; }
 .kd-experience h2 { font-size:31px; } .kd-experience .kd-copy p { font-size:15px; } .kd-real-screen a { width:170px; } .kd-real-screen { padding:24px; }
 .kd-scope-later { padding:24px; } .kd-acceptance h3 { font-size:25px; } .kd-choice dl { grid-template-columns:1fr; gap:22px; } .kd-choice dt { margin-bottom:8px; }
 .kd-estimate-rows article { grid-template-columns:25px 1fr; gap:15px; padding-block:23px; } .kd-estimate-rows h3 { font-size:19px; }
 .kd-faq-section { padding-top:0; } .kd-next { grid-template-columns:1fr; gap:28px; } .kd-next strong { font-size:17px; }
 .kd-main .kd-final { margin:48px 0; padding:28px 22px; border-radius:22px; gap:26px; } .kd-final h2 { font-size:29px!important; } .kd-final > div:first-child > p { font-size:14px!important; }
}
@media(max-width:350px) { .kd-hero h1 { font-size:34px; } .kd-main h2 { font-size:29px; } .kd-booking { padding-inline:13px; } .kd-days small { font-size:12px; } .kd-main .kd-final { padding-inline:18px; } }
@media(prefers-reduced-motion:reduce) { .kd-main * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
@media print { .kd-section-nav,.kd-actions,.kd-final-actions { display:none; } .kd-section { padding-block:25px; } .kd-hero-art { min-height:350px; } }


/* 2026-10-03: shared 13FOX spacing and readable UI refinement. */
.kd-page .kd-container { box-sizing:border-box; width:100%; max-width:1320px; margin-inline:auto; padding-inline:15px; }
.commercial-page .kd-breadcrumb { gap:8px; font-size:16px; line-height:1.5; }
.commercial-page .kd-faq-section .commercial-faq > details { border:1px solid var(--commercial-border); border-radius:18px; background:#fff; padding:0; }
.commercial-page .kd-faq-section .commercial-faq > details > summary { font-size:17px; line-height:1.5; padding:20px 58px 20px 22px; }
.commercial-page .kd-faq-section .commercial-faq > details > :not(summary) { padding-left:22px; padding-right:22px; }
@media(max-width:600px) {
 .commercial-page .kd-breadcrumb { font-size:15px; }
 .commercial-page .kd-faq-section .commercial-faq > details > summary { font-size:16px; padding:18px 52px 18px 18px; }
 .commercial-page .kd-faq-section .commercial-faq > details > :not(summary) { padding-left:18px; padding-right:18px; }
}
.commercial-page.kd-page main .commercial-button { border-radius:14px; }
