.corridor > .fixed-slab {
  position:absolute; width:calc(25% - var(--gap)); margin:0; padding:0; overflow:hidden;
  border:2px solid var(--block-stroke); background:var(--module-color); color:var(--module-ink,var(--ink));
  box-shadow:var(--block-shadow);
  transition:none;
}
.corridor > [data-module="qa"],.corridor > [data-module="consult"] { left:calc(var(--gap) / 2); }
.corridor > [data-module="chat"],.corridor > [data-module="nav"] { right:calc(var(--gap) / 2); }
.corridor > [data-module="qa"],.corridor > [data-module="chat"] { top:calc(var(--gap) / 2); height:calc(var(--safe-zone) - var(--gap)); }
.corridor > [data-module="consult"],.corridor > [data-module="nav"] { top:calc(var(--safe-zone) + var(--gap) / 2); height:calc(100% - var(--safe-zone) - var(--gap)); }
.module-trigger {
  position:absolute; inset:0; width:100%; padding:clamp(18px,2.5vw,34px); border:0; background:transparent; color:inherit;
  display:flex; flex-direction:column; align-items:flex-start; text-align:left; text-decoration:none; cursor:pointer; font-family:var(--font-body);
}
.module-trigger strong { margin:auto 0 12px; font-size:clamp(26px,3vw,48px); line-height:1; letter-spacing:-.04em; }
.module-eyebrow { font-size:12px; letter-spacing:.1em; }
.module-copy { max-width:240px; font-size:clamp(13px,1.2vw,17px); line-height:1.55; }
.module-arrow { position:absolute; right:22px; bottom:20px; font-size:22px; }
.module-body { position:absolute; inset:0; z-index:2; padding:clamp(28px,4vw,64px); overflow:auto; opacity:0; visibility:hidden; transition:opacity 240ms ease 360ms,visibility 0s linear 600ms; scrollbar-width:none; }
.module-body::-webkit-scrollbar { display:none; }
.corridor[data-active] { height:clamp(820px,100svh,1080px); transition:none; }
.corridor[data-active] > .fixed-slab { right:calc(var(--gap) / 2); left:auto; top:calc(var(--gap) / 2 + var(--compact-index) * 116px); width:calc(25% - var(--gap)); height:110px; }
.corridor[data-active="qa"] > [data-module="qa"],.corridor[data-active="chat"] > [data-module="chat"],.corridor[data-active="consult"] > [data-module="consult"],.corridor[data-active="nav"] > [data-module="nav"] {
  left:calc(var(--gap) / 2); right:auto; top:calc(var(--gap) / 2); bottom:auto; width:calc(75% - var(--gap)); height:calc(100% - var(--gap)); z-index:4; cursor:default;
}
.corridor[data-active="qa"] > [data-module="qa"] .module-trigger,.corridor[data-active="chat"] > [data-module="chat"] .module-trigger,.corridor[data-active="consult"] > [data-module="consult"] .module-trigger,.corridor[data-active="nav"] > [data-module="nav"] .module-trigger { opacity:0; visibility:hidden; }
.corridor[data-active="qa"] > [data-module="qa"] .module-body,.corridor[data-active="chat"] > [data-module="chat"] .module-body,.corridor[data-active="consult"] > [data-module="consult"] .module-body,.corridor[data-active="nav"] > [data-module="nav"] .module-body { opacity:1; visibility:visible; transition:opacity 300ms ease 360ms; }
.corridor[data-active] > .difficulty { position:absolute; left:87.5%; right:auto; top:auto; bottom:34px; width:min(var(--dial-size),calc(25% - var(--gap) * 2)); margin:0; translate:-50% 0; transition:none; }
.is-module-moving { will-change:transform; }
.corridor > .fixed-slab.is-module-moving { z-index:6; }
.corridor[data-active] > .fixed-slab:not([data-module="none"]) .module-trigger { padding:16px 18px; }
.corridor[data-active] > .fixed-slab:not([style*="--compact-index"]) .module-trigger { padding:clamp(18px,2.5vw,34px); }
.corridor[data-active] > .fixed-slab .module-trigger strong { font-size:24px; margin:auto 0 4px; }
.corridor[data-active] > .fixed-slab .module-copy { display:none; }
.corridor[data-active] > .fixed-slab .module-arrow { right:16px; bottom:14px; font-size:17px; }
.module-head { position:relative; padding-right:52px; margin-bottom:34px; }
.module-head > span { font-size:12px; letter-spacing:.12em; }
.module-head h2 { margin:14px 0 14px; font-size:clamp(42px,6vw,82px); line-height:.95; letter-spacing:-.055em; }
.module-head p { max-width:680px; margin:0; font-size:17px; line-height:1.6; }
.module-collapse { position:absolute; right:0; top:0; width:44px; height:44px; border:1px solid color-mix(in srgb,currentColor 34%,transparent); border-radius:50%; background:transparent; color:inherit; font:400 26px/1 var(--font-body); cursor:pointer; }
.qa-list { border-top:1px solid #26333244; }
.qa-list article { border-bottom:1px solid #26333244; }
.qa-list article > button { width:100%; min-height:68px; padding:14px 0; display:grid; grid-template-columns:46px 1fr 28px; gap:12px; align-items:center; border:0; background:none; color:inherit; text-align:left; cursor:pointer; font-family:var(--font-body); }
.qa-list button span { font-size:11px; }
.qa-list button strong { font-size:clamp(16px,1.7vw,22px); font-weight:600; }
.qa-list button i { font-style:normal; font-size:20px; transition:transform 300ms ease; }
.qa-list article > div { display:grid; grid-template-rows:0fr; transition:grid-template-rows 380ms cubic-bezier(.22,.8,.25,1); }
.qa-list article > div p { min-height:0; overflow:hidden; margin:0 46px; font-size:15px; line-height:1.8; }
.qa-list article[data-open="true"] > div { grid-template-rows:1fr; }
.qa-list article[data-open="true"] > div p { padding-bottom:22px; }
.qa-list article[data-open="true"] button i { transform:rotate(45deg); }
.chat-log { min-height:300px; max-height:470px; overflow:auto; display:flex; flex-direction:column; gap:10px; padding:18px 0; border-block:1px solid #26333233; }
.chat-message,.chat-welcome { width:max-content; max-width:78%; margin:0; padding:13px 16px; border-radius:18px; background:#f8f4ed; line-height:1.65; }
.chat-message.user { margin-left:auto; background:var(--ink); color:#f8f4ed; }
.chat-form { display:grid; grid-template-columns:1fr auto; gap:10px; margin-top:18px; }
.chat-form textarea,.consult-form input,.consult-form select { width:100%; border:1px solid #26333255; border-radius:15px; background:#f8f4ed; color:#263332; padding:11px 16px; font:400 15px/1.45 var(--font-body); outline:none; }
.chat-form textarea { height:46px; min-height:46px; max-height:96px; resize:vertical; }
.chat-form button,.consult-submit { border:0; border-radius:15px; padding:0 22px; background:var(--ink); color:#f8f4ed; font:600 14px/1 var(--font-body); cursor:pointer; }
.consult-form { display:grid; gap:26px; }
.consult-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.consult-form label > span:first-child,.consult-form legend { display:block; margin-bottom:8px; font-size:13px; }
.contact-line { display:grid!important; grid-template-columns:100px 1fr; gap:8px; margin:0!important; }
.consult-form fieldset { margin:0; padding:0; border:0; }
.consult-form legend small { margin-left:10px; font-weight:400; opacity:.65; }
.choice-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.choice-groups h3 { margin:0 0 8px; font-size:13px; font-weight:500; }
.choice-groups section > div,.choice-row { display:flex; flex-wrap:wrap; gap:6px; }
.choice-chip { margin:0!important; }
.choice-chip input { position:absolute; opacity:0; pointer-events:none; }
.choice-chip span { display:block; margin:0!important; padding:8px 12px; border:1px solid #26333255; border-radius:999px; font-size:12px!important; cursor:pointer; }
.choice-chip input:checked + span { background:var(--ink); color:#f8f4ed; }
.consent { display:flex!important; align-items:flex-start; gap:10px; }
.consent input { width:18px; margin-top:2px; }
.consent span { margin:0!important; }
.consult-submit { min-height:50px; width:max-content; }
.consult-submit:disabled { opacity:.45; cursor:wait; }
.consult-note,.form-status { margin:0; font-size:12px; line-height:1.6; }
.consult-success { padding:80px 0; }
.consult-success h3 { margin:10px 0; font-size:44px; }
.nav-groups { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.nav-groups section { border-top:1px solid color-mix(in srgb,currentColor 28%,transparent); padding-top:14px; }
.nav-groups h3 { margin:0 0 10px; font-size:13px; }
.nav-groups section > div { display:grid; }
.nav-groups a { min-height:48px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid color-mix(in srgb,currentColor 22%,transparent); color:inherit; text-decoration:none; font-size:15px; }
.nav-groups a i { font-style:normal; }
.module-trigger:focus-visible,.module-collapse:focus-visible,.qa-list button:focus-visible,.chat-form textarea:focus-visible,.chat-form button:focus-visible,.consult-form input:focus-visible,.consult-form select:focus-visible,.consult-submit:focus-visible,.nav-groups a:focus-visible { outline:2px solid var(--ink); outline-offset:-3px; }
@media (max-width:760px) {
  .corridor[data-active] { height:980px; }
  .corridor[data-active] > .fixed-slab { top:auto; bottom:calc(188px + var(--compact-index) * 38px); left:calc(var(--gap) / 2); right:auto; width:calc(100% - var(--gap)); height:34px; }
  .corridor[data-active="qa"] > [data-module="qa"],.corridor[data-active="chat"] > [data-module="chat"],.corridor[data-active="consult"] > [data-module="consult"],.corridor[data-active="nav"] > [data-module="nav"] { top:calc(var(--gap) / 2); bottom:auto; left:calc(var(--gap) / 2); width:calc(100% - var(--gap)); height:calc(100% - 310px); }
  .corridor[data-active] > .difficulty { left:50%; right:auto; bottom:-8px; width:var(--dial-size); translate:-50% 0; }
  .corridor[data-active] > .fixed-slab .module-trigger { padding:6px 12px; flex-direction:row; align-items:center; gap:10px; }
  .corridor[data-active] > .fixed-slab .module-trigger strong { margin:0; font-size:14px; }
  .corridor[data-active] > .fixed-slab .module-eyebrow,.corridor[data-active] > .fixed-slab .module-arrow { display:none; }
  .module-body { padding:24px 18px; }
  .module-head h2 { font-size:48px; }
  .consult-fields,.choice-groups,.nav-groups { grid-template-columns:1fr; }
  .chat-log { min-height:240px; }
}
@media (prefers-reduced-motion:reduce) { .module-body,.qa-list article > div { transition:none; } }
