:root {
  color-scheme: light;
  --ae-ink: #151412;
  --ae-muted: #665f57;
  --ae-paper: #f6f1e8;
  --ae-paper-2: #ebe3d7;
  --ae-card: #fff;
  --ae-line: #d8cec0;
  --ae-line-strong: #bfb3a4;
  --ae-accent: #8e2e3d;
  --ae-accent-dark: #702330;
  --ae-gold: #c9a46a;
  --ae-positive: #2f6652;
  --ae-warning: #9b6a1e;
  --ae-danger: #9a4138;
  --ae-shadow: 0 24px 70px rgba(32, 29, 23, .10);
}

html { scroll-behavior: smooth; }
html, body { min-height: 100%; margin: 0; }
body { background: var(--ae-paper); color: var(--ae-ink); font-family: Roboto, Arial, sans-serif; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.ae-skip-link {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 1000;
  padding: 12px 14px;
  background: #11100f;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  transform: translateY(-170%);
}
.ae-skip-link:focus { outline: 3px solid var(--ae-gold); transform: translateY(0); }

/* Shared ArkiStudio header */
.ae-site-header { position: relative; z-index: 20; border-bottom: 1px solid var(--ae-line); background: #fff; }
.ae-site-topbar { background: #000; color: #fff; }
.ae-site-topbar__inner { display: flex; align-items: center; justify-content: flex-end; width: min(1180px, calc(100% - 40px)); min-height: 68px; margin: 0 auto; }
.ae-site-contacts { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; font-size: 14px; font-weight: 700; text-transform: uppercase; }
.ae-site-contacts a { color: #fff; text-decoration: none; }
.ae-site-contacts a::before { margin-right: 8px; color: var(--ae-gold); }
.ae-site-contacts a[href^="tel"]::before { content: "☎"; }
.ae-site-contacts a[href^="mailto"]::before { content: "✉"; }
.ae-site-mainbar { display: grid; grid-template-columns: 112px minmax(0,1fr) 34px; align-items: center; gap: 14px; width: min(1180px, calc(100% - 40px)); min-height: 104px; margin: 0 auto; }
.ae-site-logo img { display: block; width: 96px; height: auto; }
.ae-site-nav-toggle { display: none; align-items: center; gap: 9px; min-height: 44px; padding: 9px 12px; border: 1px solid rgba(21,20,18,.18); background: transparent; color: var(--ae-ink); cursor: pointer; }
.ae-site-nav-toggle__icon { display: grid; gap: 4px; width: 18px; }
.ae-site-nav-toggle__icon span { display: block; width: 100%; height: 2px; background: currentColor; transition: opacity .18s ease, transform .18s ease; }
.ae-site-nav-toggle__label { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ae-site-mainbar.is-nav-open .ae-site-nav-toggle__icon span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.ae-site-mainbar.is-nav-open .ae-site-nav-toggle__icon span:nth-child(2) { opacity: 0; }
.ae-site-mainbar.is-nav-open .ae-site-nav-toggle__icon span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
.ae-site-nav { display: flex; align-items: center; justify-content: center; gap: clamp(8px, 1vw, 14px); }
.ae-site-nav > a, .ae-site-nav-group > summary { color: var(--ae-ink); font-size: 13px; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.ae-site-nav > a:hover, .ae-site-nav > a:focus-visible, .ae-site-nav-group > summary:hover, .ae-site-nav-group > summary:focus-visible, .ae-site-nav-group.is-active > summary { color: var(--ae-accent); }
.ae-site-nav > a { white-space: nowrap; }
.ae-site-nav .ae-site-nav-cta { padding: 10px 12px; background: #171815; color: #fff; font-size: 11px; }
.ae-site-nav .ae-site-nav-cta:hover, .ae-site-nav .ae-site-nav-cta:focus-visible { background: var(--ae-accent); color: #fff; }
.ae-site-nav-group { position: relative; }
.ae-site-nav-group > summary { display: flex; align-items: center; gap: 8px; cursor: pointer; list-style: none; white-space: nowrap; }
.ae-site-nav-group > summary::-webkit-details-marker { display: none; }
.ae-site-nav-group > summary::after { width: 6px; height: 6px; margin-top: -4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; content: ""; transform: rotate(45deg); }
.ae-site-nav-group[open] > summary::after { margin-top: 4px; transform: rotate(225deg); }
.ae-site-submenu { position: absolute; top: calc(100% + 14px); left: 50%; z-index: 30; display: grid; min-width: 240px; padding: 8px; border: 1px solid var(--ae-line); background: #fff; box-shadow: 0 16px 32px rgba(21,20,18,.14); transform: translateX(-50%); }
.ae-site-nav-group[data-nav-group="services"] .ae-site-submenu { min-width: 330px; }
.ae-site-submenu::before { position: absolute; top: -14px; right: 0; left: 0; height: 14px; content: ""; }
.ae-site-submenu a { padding: 11px 13px; color: var(--ae-ink); font-size: 12px; font-weight: 700; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.ae-site-submenu a:hover, .ae-site-submenu a:focus-visible, .ae-site-submenu a[aria-current="page"] { background: var(--ae-paper); color: var(--ae-accent); }
.ae-site-social { display: inline-flex; align-items: center; justify-content: center; color: #000; font: 900 42px/1 Arial, sans-serif; text-decoration: none; }

/* Application */
.ae-app { min-height: 100vh; background: var(--ae-paper); color: var(--ae-ink); font-size: 16px; line-height: 1.55; isolation: isolate; }
.ae-shell { width: min(1220px, 100%); margin: 0 auto; padding: 58px 20px 72px; }
.ae-hero { display: grid; grid-template-columns: minmax(0,1.42fr) minmax(320px,.72fr); gap: clamp(40px,7vw,92px); align-items: end; padding: clamp(34px,6vw,76px) 0 clamp(58px,8vw,96px); }
.ae-hero-copy { max-width: 800px; }
.ae-eyebrow, .ae-step-kicker { margin: 0 0 14px; color: var(--ae-accent); font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.ae-title { max-width: 780px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(52px,6.6vw,94px); font-weight: 400; letter-spacing: 0; line-height: .96; }
.ae-lead { max-width: 690px; margin: 30px 0 0; color: var(--ae-muted); font-size: clamp(18px,2vw,23px); line-height: 1.48; }
.ae-start-row { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 38px; }
.ae-note-inline { color: var(--ae-muted); font-size: 13px; }
.ae-hero-aside { padding: 30px; border-left: 3px solid var(--ae-gold); background: #171815; color: #fff; box-shadow: var(--ae-shadow); }
.ae-aside-kicker { margin: 0 0 12px; color: var(--ae-gold); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.ae-hero-aside h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(28px,3vw,40px); font-weight: 400; line-height: 1.08; }
.ae-trust { display: grid; gap: 0; margin: 26px 0 0; padding: 0; list-style: none; }
.ae-trust li { display: grid; grid-template-columns: 34px 1fr; gap: 10px; padding: 15px 0; border-top: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.78); font-size: 14px; }
.ae-trust span { color: var(--ae-gold); font-size: 11px; font-weight: 700; letter-spacing: .12em; }

.ae-tool { border: 1px solid var(--ae-line); background: #fff; box-shadow: var(--ae-shadow); scroll-margin-top: 24px; }
.ae-progress { display: grid; grid-template-columns: repeat(5,1fr); border-bottom: 1px solid var(--ae-line); background: #f0e9de; }
.ae-progress-item { display: grid; grid-template-columns: auto 1fr; gap: 11px; align-items: center; min-width: 0; padding: 17px 18px; border: 0; border-right: 1px solid var(--ae-line); background: transparent; color: var(--ae-muted); text-align: left; }
.ae-progress-item:last-child { border-right: 0; }
.ae-progress-item span { color: var(--ae-accent); font-size: 11px; font-weight: 700; letter-spacing: .14em; }
.ae-progress-item strong { overflow: hidden; font-size: 12px; letter-spacing: .05em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.ae-progress-item.is-active { background: #fff; color: var(--ae-ink); box-shadow: inset 0 -3px 0 var(--ae-accent); }
.ae-progress-item.is-complete { background: rgba(47,102,82,.08); color: var(--ae-positive); }
.ae-step { min-height: 610px; padding: clamp(32px,5vw,64px); }
.ae-step-head { display: grid; grid-template-columns: 76px minmax(0,760px); gap: 24px; margin-bottom: 46px; }
.ae-step-index { color: #76501d; font-family: Michroma, Arial, sans-serif; font-size: 32px; line-height: 1; }
.ae-step-kicker { margin-bottom: 8px; }
.ae-step-title { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(34px,4.5vw,58px); font-weight: 400; line-height: 1.02; }
.ae-step-intro { max-width: 720px; margin: 18px 0 0; color: var(--ae-muted); font-size: 17px; }
.ae-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 24px; }
.ae-col-12 { grid-column: span 12; }.ae-col-6 { grid-column: span 6; }.ae-col-4 { grid-column: span 4; }.ae-col-3 { grid-column: span 3; }
.ae-field { display: grid; align-content: start; gap: 9px; min-width: 0; }
.ae-label { color: var(--ae-ink); font-size: 13px; font-weight: 700; letter-spacing: .03em; }
.ae-required { color: var(--ae-accent); }.ae-optional { margin-left: 8px; color: var(--ae-muted); font-size: 12px; font-weight: 400; }
.ae-field input, .ae-field select, .ae-field textarea { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid var(--ae-line-strong); border-radius: 0; background: #fff; color: var(--ae-ink); }
.ae-field input:focus, .ae-field select:focus, .ae-field textarea:focus { border-color: var(--ae-accent); outline: 3px solid rgba(142,46,61,.14); }
.ae-field input[aria-invalid="true"], .ae-field select[aria-invalid="true"] { border-color: var(--ae-danger); }
.ae-help { color: var(--ae-muted); font-size: 12px; }
.ae-input-unit { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: stretch; }
.ae-input-unit input { border-right: 0; }
.ae-input-unit > span { display: inline-flex; align-items: center; min-width: 56px; padding: 0 13px; border: 1px solid var(--ae-line-strong); background: #f0e9de; color: var(--ae-muted); font-size: 12px; font-weight: 700; }
.ae-fieldset { margin: 0; padding: 0; border: 0; }
.ae-check-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.ae-check, .ae-consent { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.ae-check { min-height: 54px; padding: 14px; border: 1px solid var(--ae-line); background: #faf8f4; font-size: 13px; }
.ae-check input, .ae-consent input { width: 18px; height: 18px; min-height: 0; margin: 1px 0 0; accent-color: var(--ae-accent); }
.ae-choice-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.ae-choice { position: relative; display: block; cursor: pointer; }
.ae-choice input { position: absolute; opacity: 0; pointer-events: none; }
.ae-choice > span { display: grid; align-content: start; min-height: 126px; padding: 20px; border: 1px solid var(--ae-line); background: #faf8f4; transition: border-color .16s ease, background .16s ease, transform .16s ease; }
.ae-choice strong { font-size: 15px; }.ae-choice small { margin-top: 8px; color: var(--ae-muted); font-size: 13px; line-height: 1.45; }
.ae-choice input:checked + span { border-color: var(--ae-accent); background: rgba(142,46,61,.055); box-shadow: inset 0 -3px 0 var(--ae-accent); }
.ae-choice input:focus-visible + span { outline: 3px solid rgba(142,46,61,.2); }
.ae-review-note { margin-top: 34px; padding: 18px 20px; border-left: 3px solid var(--ae-gold); background: var(--ae-paper); color: var(--ae-muted); }
.ae-review-note strong { color: var(--ae-ink); }
.ae-step-actions { display: flex; align-items: center; gap: 18px; margin-top: 46px; padding-top: 24px; border-top: 1px solid var(--ae-line); }
.ae-action-right { display: flex; margin-left: auto; }
.ae-validation { flex: 1; margin: 0; color: var(--ae-danger); font-size: 13px; }

.ae-btn { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 50px; padding: 14px 22px; border: 1px solid var(--ae-ink); border-radius: 0; background: var(--ae-ink); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; cursor: pointer; transition: background .16s ease, color .16s ease, border-color .16s ease, transform .16s ease; }
.ae-btn:hover, .ae-btn:focus-visible { border-color: var(--ae-accent); background: var(--ae-accent); color: #fff; transform: translateY(-1px); }
.ae-btn:focus-visible { outline: 3px solid rgba(142,46,61,.22); outline-offset: 2px; }
.ae-btn:disabled { opacity: .55; cursor: wait; transform: none; }
.ae-btn--secondary { border-color: var(--ae-accent); background: var(--ae-accent); }
.ae-btn--ghost { border-color: var(--ae-line-strong); background: transparent; color: var(--ae-ink); }
.ae-btn--contact { border-color: var(--ae-accent); background: transparent; color: var(--ae-accent); }

/* Results */
.ae-results { padding: clamp(34px,5vw,64px); }
.ae-results-head { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.7fr); gap: 44px; align-items: end; }
.ae-results-head h2 { max-width: 750px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(38px,5vw,68px); font-weight: 400; line-height: 1; }
.ae-results-head > p { margin: 0; color: var(--ae-muted); font-size: 16px; }
.ae-kpis { display: grid; grid-template-columns: 1.15fr repeat(3,1fr); margin-top: 50px; border: 1px solid var(--ae-line); }
.ae-kpi { display: grid; align-content: start; min-height: 170px; padding: 25px; border-right: 1px solid var(--ae-line); background: #fff; }
.ae-kpi:last-child { border-right: 0; }
.ae-kpi > span { color: var(--ae-accent); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ae-kpi strong { margin-top: 18px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(34px,4vw,52px); font-weight: 400; line-height: 1; }
.ae-kpi strong b { font-weight: 400; }.ae-kpi small { margin-top: 12px; color: var(--ae-muted); }
.ae-kpi--class { background: var(--ae-ink); color: #fff; }.ae-kpi--class > span { color: var(--ae-gold); }.ae-kpi--class small { color: rgba(255,255,255,.68); }
.ae-result-section { margin-top: 64px; }
.ae-section-heading { display: grid; grid-template-columns: minmax(0,.9fr) minmax(280px,.55fr); column-gap: 50px; }
.ae-section-heading .ae-step-kicker { grid-column: 1 / -1; }
.ae-section-heading h3 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(32px,4vw,52px); font-weight: 400; line-height: 1.03; }
.ae-section-heading > p:last-child { margin: 0; color: var(--ae-muted); }
.ae-recommendations { display: grid; gap: 12px; margin-top: 30px; }
.ae-recommendation { display: grid; grid-template-columns: 86px minmax(0,1.35fr) minmax(180px,.55fr); gap: 24px; align-items: start; padding: 25px; border: 1px solid var(--ae-line); background: #fff; }
.ae-rec-index { color: var(--ae-gold); font: 700 12px/1 Michroma, Arial, sans-serif; }
.ae-rec-content h4 { margin: 0; font-size: 19px; }.ae-rec-content p { margin: 9px 0 0; color: var(--ae-muted); }
.ae-rec-meta { display: grid; gap: 8px; color: var(--ae-muted); font-size: 12px; }
.ae-rec-meta span { display: flex; justify-content: space-between; gap: 10px; padding-bottom: 7px; border-bottom: 1px solid var(--ae-line); }
.ae-rec-meta b { color: var(--ae-ink); text-align: right; }
.ae-result-section--dark { margin-right: calc(clamp(34px,5vw,64px) * -1); margin-left: calc(clamp(34px,5vw,64px) * -1); padding: clamp(40px,5vw,64px); background: var(--ae-ink); color: #fff; }
.ae-result-section--dark .ae-section-heading > p:last-child { color: rgba(255,255,255,.66); }
.ae-scenarios { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-top: 34px; }
.ae-scenario { display: grid; align-content: start; min-height: 330px; padding: 25px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.04); }
.ae-scenario.is-primary { border-color: var(--ae-gold); background: rgba(201,164,106,.09); }
.ae-scenario-index { color: var(--ae-gold); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ae-scenario h4 { margin: 18px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: 32px; font-weight: 400; }
.ae-scenario p { margin: 10px 0 0; color: rgba(255,255,255,.68); }
.ae-scenario ul { display: grid; gap: 8px; margin: 20px 0 0; padding-left: 18px; color: rgba(255,255,255,.86); }
.ae-scenario footer { display: grid; gap: 5px; margin-top: auto; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.16); }
.ae-scenario footer strong { color: var(--ae-gold); }.ae-scenario footer small { color: rgba(255,255,255,.6); }

.ae-lead-panel { display: grid; grid-template-columns: minmax(260px,.6fr) minmax(0,1fr); gap: clamp(34px,6vw,74px); margin-top: 64px; padding: clamp(30px,5vw,54px); border: 1px solid var(--ae-line); background: var(--ae-paper); }
.ae-lead-copy h3 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(34px,4vw,50px); font-weight: 400; line-height: 1.03; }
.ae-lead-copy p:last-child { color: var(--ae-muted); }
.ae-lead-form { min-width: 0; }
.ae-lead-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.ae-lead-fields .ae-field:last-of-type { grid-column: 1 / -1; }
.ae-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%) !important; }
.ae-consent { margin-top: 17px; color: var(--ae-muted); font-size: 12px; line-height: 1.45; }
.ae-consent a { color: var(--ae-accent); }.ae-consent strong { color: var(--ae-accent); }
.ae-lead-submit-row { display: flex; align-items: center; gap: 18px; margin-top: 24px; }
.ae-lead-submit-row p { margin: 0; color: var(--ae-muted); font-size: 13px; }.ae-lead-submit-row p.is-error { color: var(--ae-danger); }
.ae-lead-success { margin-top: 20px; padding: 18px; border-left: 3px solid var(--ae-positive); background: rgba(47,102,82,.08); }
.ae-lead-success h4, .ae-lead-success p { margin: 0; }.ae-lead-success p { margin-top: 5px; }
.ae-result-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.ae-result-actions .ae-btn--contact { margin-left: auto; }
.ae-disclaimer { max-width: 1020px; margin: 30px auto 0; color: var(--ae-muted); font-size: 12px; line-height: 1.6; }
.ae-disclaimer a { color: var(--ae-accent); }
.ae-toast { position: fixed; right: 20px; bottom: 20px; z-index: 100; max-width: 360px; padding: 14px 18px; background: var(--ae-ink); color: #fff; box-shadow: var(--ae-shadow); opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity .18s ease, transform .18s ease; }
.ae-toast.is-visible { opacity: 1; transform: translateY(0); }

/* Footer */
.ae-site-footer { background: #000; color: #fff; }
.ae-site-footer__inner { width: min(1180px,100%); margin: 0 auto; padding: 54px 20px 36px; text-align: center; }
.ae-site-footer__logo img { width: 145px; height: auto; margin: 0 auto 24px; filter: invert(1); }
.ae-site-footer__contacts, .ae-site-footer__links { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 18px; }
.ae-site-footer__contacts { margin-bottom: 20px; color: rgba(255,255,255,.78); }
.ae-site-footer__contacts > span:last-child { flex-basis: 100%; font-size: 12px; line-height: 1.6; }
.ae-site-footer__contacts a { color: inherit; text-decoration: none; }
.ae-site-footer__links { max-width: 860px; margin: 30px auto 0; padding: 20px; background: #fff; color: #111; text-transform: uppercase; }
.ae-site-footer__links a { color: inherit; text-decoration: none; }
.ae-site-footer__copy { margin: 24px 0 0; color: rgba(255,255,255,.58); }

@media (max-width: 1100px) {
  .ae-site-mainbar { grid-template-columns: 100px minmax(0,1fr) 32px; }
  .ae-site-nav > a, .ae-site-nav-group > summary { font-size: 11px; }
  .ae-hero { grid-template-columns: minmax(0,1.2fr) minmax(290px,.75fr); gap: 36px; }
  .ae-check-grid, .ae-choice-grid { grid-template-columns: repeat(2,1fr); }
  .ae-kpis { grid-template-columns: repeat(2,1fr); }
  .ae-kpi:nth-child(2) { border-right: 0; }.ae-kpi:nth-child(-n+2) { border-bottom: 1px solid var(--ae-line); }
}

@media (max-width: 920px) {
  .ae-site-mainbar { grid-template-columns: 92px minmax(0,1fr) 32px; }
  .ae-site-nav-toggle { display: inline-flex; justify-self: end; }
  .ae-site-nav { display: none; grid-column: 1 / -1; grid-row: 2; align-items: stretch; grid-template-columns: repeat(3,minmax(0,1fr)); padding: 12px 0 4px; }
  .ae-site-mainbar.is-nav-open .ae-site-nav { display: grid; }
  .ae-site-nav > a, .ae-site-nav-group > summary { justify-content: center; width: 100%; padding: 10px 8px; border: 1px solid rgba(21,20,18,.14); font-size: 11px; line-height: 1.2; text-align: center; }
  .ae-site-nav-group { width: 100%; }
  .ae-site-submenu, .ae-site-nav-group[data-nav-group="services"] .ae-site-submenu { position: static; width: 100%; min-width: 0; margin-top: 7px; padding: 0; border: 0; box-shadow: none; transform: none; }
  .ae-site-submenu::before { display: none; }
  .ae-site-submenu a { width: 100%; padding: 10px 8px; border: 1px solid rgba(21,20,18,.1); background: rgba(21,20,18,.035); font-size: 10px; text-align: center; white-space: normal; }
  .ae-hero { grid-template-columns: 1fr; align-items: start; }
  .ae-hero-aside { max-width: 680px; }
  .ae-step-head { grid-template-columns: 54px minmax(0,1fr); }
  .ae-col-3, .ae-col-4 { grid-column: span 6; }
  .ae-results-head, .ae-section-heading, .ae-lead-panel { grid-template-columns: 1fr; }
  .ae-section-heading { gap: 18px; }
  .ae-scenarios { grid-template-columns: 1fr; }
  .ae-scenario { min-height: 0; }
  .ae-recommendation { grid-template-columns: 58px minmax(0,1fr); }
  .ae-rec-meta { grid-column: 2; }
}

@media (max-width: 640px) {
  .ae-site-mainbar, .ae-site-topbar__inner { width: min(100% - 28px,1180px); }
  .ae-site-topbar__inner { justify-content: center; min-height: 62px; }
  .ae-site-contacts { flex-direction: column; gap: 4px; padding: 8px 0; font-size: 12px; line-height: 1.35; text-align: center; }
  .ae-site-contacts a { overflow-wrap: anywhere; }
  .ae-site-logo img { width: 82px; }
  .ae-site-mainbar { gap: 12px; min-height: auto; overflow: hidden; padding: 13px 0; }
  .ae-site-mainbar.is-nav-open .ae-site-nav { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .ae-shell { padding: 18px 14px 42px; }
  .ae-hero { gap: 28px; padding: 38px 0 52px; }
  .ae-title { font-size: clamp(43px,14vw,66px); }
  .ae-lead { font-size: 18px; }
  .ae-hero-aside { padding: 24px 20px; }
  .ae-progress { overflow-x: auto; grid-template-columns: repeat(5,minmax(88px,1fr)); }
  .ae-progress-item { grid-template-columns: 1fr; gap: 4px; padding: 13px 10px; text-align: center; }
  .ae-step, .ae-results { min-height: 0; padding: 28px 20px; }
  .ae-step-head { grid-template-columns: 1fr; gap: 10px; margin-bottom: 34px; }
  .ae-step-index { font-size: 27px; }
  .ae-grid { gap: 18px; }
  .ae-col-3, .ae-col-4, .ae-col-6, .ae-col-12 { grid-column: span 12; }
  .ae-check-grid, .ae-choice-grid { grid-template-columns: 1fr; }
  .ae-choice > span { min-height: 0; }
  .ae-step-actions { align-items: flex-start; flex-direction: column; }
  .ae-action-right { width: 100%; margin-left: 0; }
  .ae-action-right .ae-btn, .ae-step-actions > .ae-btn { width: 100%; }
  .ae-kpis { grid-template-columns: 1fr; }
  .ae-kpi, .ae-kpi:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--ae-line); }
  .ae-kpi:last-child { border-bottom: 0; }
  .ae-result-section--dark { margin-right: -20px; margin-left: -20px; padding: 38px 20px; }
  .ae-recommendation { grid-template-columns: 1fr; gap: 12px; padding: 20px; }
  .ae-rec-meta { grid-column: auto; }
  .ae-lead-panel { margin-top: 44px; padding: 26px 20px; }
  .ae-lead-fields { grid-template-columns: 1fr; }
  .ae-lead-fields .ae-field:last-of-type { grid-column: auto; }
  .ae-lead-submit-row { align-items: flex-start; flex-direction: column; }
  .ae-lead-submit-row .ae-btn, .ae-result-actions .ae-btn { width: 100%; }
  .ae-result-actions .ae-btn--contact { margin-left: 0; }
  .ae-site-footer__contacts { display: grid; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
