.home-page { overflow: clip; }
.home-page a { text-decoration-thickness: 1px; }
.home-page .route-marker { margin: 0; }
.home-page .telemetry { margin: 0; }
.home-hero { padding-block: clamp(7rem, 12vw, 10rem) var(--section-padding); }
.home-hero__grid, .home-highroller__grid, .home-dining__grid, .home-private__feature { display: grid; min-width: 0; grid-template-columns: minmax(0, 7fr) minmax(22.5rem, 5fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.home-hero__copy, .home-hero__media-wrap, .home-highroller__copy, .home-highroller__media, .home-dining__rail, .home-dining__media, .home-private__copy, .home-private__image { min-width: 0; width: 100%; }
.home-hero__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); max-width: 43.75rem; }
.home-hero__copy h1, .home-hero__copy p { margin: 0; }
.home-hero__deck { max-width: 40rem; font-size: clamp(1rem, 1.5vw, 1.125rem); }
.home-hero__actions, .home-private__actions { display: flex; width: 100%; min-width: 0; flex-wrap: wrap; gap: var(--space-3); }
.home-hero__media-wrap { position: relative; padding-bottom: 4rem; }
.home-hero__media { width: 100%; }
.home-hero__media img, .home-highroller__media img, .home-dining__media img { object-position: 62% center; transition: transform var(--transition-panel); }
.home-hero__media:hover img, .home-highroller__media:hover img, .home-dining__media:hover img { transform: scale(1.025); }
.home-hero__status { position: absolute; z-index: 1; bottom: 0; left: -2rem; width: min(19rem, calc(100% - 1rem)); display: flex; flex-direction: column; gap: var(--space-3); }
.home-hero__status p { margin: 0; font-size: var(--text-compact); }
.home-flow__intro, .home-formats__intro, .home-sequence__intro, .home-journal__intro, .home-planning__header, .home-closing__intro { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-flow__intro { max-width: 37.5rem; }
.home-flow__intro h2, .home-flow__intro p, .home-formats__intro h2, .home-formats__intro p, .home-sequence__intro h2, .home-sequence__intro p, .home-journal__intro h2, .home-journal__intro p, .home-planning__header h2, .home-planning__header p, .home-closing__intro h2 { margin: 0; }
.home-flow__panels { display: grid; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-10); }
.home-flow__panel { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-flow__panel > * { margin: 0; }
.home-flow__panel p:not(.telemetry) { max-width: 38ch; }
.home-flow__panel--dining { border-top-color: var(--color-warm-image-neutral); }
.home-flow__metadata { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: var(--space-2) var(--space-3); padding-top: var(--space-4); border-top: var(--border-default); font-family: var(--font-mono); font-size: var(--text-telemetry); letter-spacing: var(--tracking-mono); text-transform: uppercase; }
.home-flow__metadata span { color: var(--color-text-muted); }
.home-flow__metadata strong { color: var(--color-text-secondary); font-weight: 500; }
.home-text-link { display: inline-flex; width: fit-content; max-width: 100%; align-items: center; gap: var(--space-2); color: var(--color-text-primary); font-family: var(--font-heading); font-size: var(--text-compact); font-weight: 600; text-decoration: none; border-bottom: 1px solid transparent; }
.home-text-link:hover { border-bottom-color: var(--color-signal-green-bright); }
.home-flow__note, .home-formats__statement, .home-sequence__note, .home-closing__reminder { margin-top: var(--space-6); padding: var(--space-4) 0 var(--space-4) var(--space-5); border-left: 2px solid var(--color-signal-green); }
.home-flow__note p, .home-sequence__note p { max-width: 47.5rem; margin: 0; }
.home-formats__intro { max-width: 35rem; }
.home-formats__grid { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-10); }
.home-format { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-format > * { margin: 0; }
.home-format h3 { font-size: clamp(1.25rem, 2vw, 1.5rem); }
.home-format p:not(.telemetry):not(.status) { max-width: 40ch; }
.home-formats__statement { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--space-4); }
.home-formats__statement p { max-width: 43.75rem; margin: 0; }
.home-highroller__grid { grid-template-columns: minmax(22.5rem, 5fr) minmax(0, 7fr); }
.home-highroller__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-highroller__copy h2, .home-highroller__copy p { margin: 0; }
.home-highroller__definition { max-width: 35rem; }
.home-highroller__attributes { display: flex; width: 100%; min-width: 0; flex-direction: column; gap: var(--space-4); margin-top: var(--space-2); }
.home-attribute { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding-top: var(--space-4); border-top: var(--border-default); }
.home-attribute p { max-width: 36ch; }
.home-attribute .button { margin-top: var(--space-1); }
.home-highroller__media img { object-position: 58% center; }
.home-dining__intro { display: flex; max-width: 35rem; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-dining__intro h2, .home-dining__intro p { margin: 0; }
.home-dining__grid { grid-template-columns: minmax(0, 8fr) minmax(18.75rem, 4fr); margin-top: var(--space-10); align-items: stretch; }
.home-dining__media img { object-position: 45% center; }
.home-dining__rail { display: flex; flex-direction: column; gap: var(--space-6); }
.home-dining__block { display: flex; min-width: 0; flex: 1 1 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-block: var(--space-4); }
.home-dining__block > * { margin: 0; }
.home-dining__block p:not(.telemetry) { max-width: 42ch; }
.home-sequence__intro { max-width: 35rem; }
.home-sequence__steps { position: relative; display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-10); }
.home-sequence__steps::before { position: absolute; top: 0.35rem; right: 0; left: 0; height: 1px; background: var(--color-line-subtle); content: ""; }
.home-step { position: relative; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-top: var(--space-6); }
.home-step::before { position: absolute; top: 0; left: 0; width: 2.5rem; height: 1px; background: var(--color-signal-green); content: ""; }
.home-step > * { margin: 0; }
.home-step p:not(.telemetry):not(.status) { max-width: 34ch; }
.home-step .status { margin-top: auto; }
.home-private__feature { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.home-private__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); max-width: 32.5rem; }
.home-private__copy h2, .home-private__copy p { margin: 0; }
.home-private__image { min-height: 19rem; border-radius: var(--radius-panel); background-image: linear-gradient(rgba(13,17,23,.2), rgba(13,17,23,.72)), radial-gradient(circle at 72% 25%, rgba(183,165,138,.38), transparent 24%), linear-gradient(135deg, #1c222b 15%, #0d1117 80%); }
.home-private__details { display: grid; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin: var(--space-10) 0 0; }
.home-private__details div { min-width: 0; padding-top: var(--space-4); border-top: var(--border-default); }
.home-private__details dt { color: var(--color-text-muted); font-family: var(--font-mono); font-size: var(--text-telemetry); letter-spacing: var(--tracking-mono); text-transform: uppercase; }
.home-private__details dd { max-width: 30ch; margin: var(--space-2) 0 0; color: var(--color-text-secondary); }
.home-private__actions { align-items: center; margin-top: var(--space-6); }
.home-private__actions p { width: 100%; max-width: 40rem; margin: 0; }
.home-journal__intro { max-width: 32.5rem; }
.home-journal__rows { margin-top: var(--space-8); border-top: var(--border-default); }
.home-journal__row { display: grid; min-width: 0; grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--space-6); padding-block: var(--space-6); border-bottom: var(--border-default); }
.home-journal__rail { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); max-width: 15.625rem; }
.home-journal__rail h3, .home-journal__rail p, .home-journal__row > p { margin: 0; }
.home-journal__rail h3 a { color: var(--color-text-primary); text-decoration: none; }
.home-journal__row > p { max-width: 38.75rem; }
.home-planning__header { max-width: 36.25rem; }
.home-planning__form { margin-top: var(--space-10); }
.home-planning__fields { display: grid; min-width: 0; grid-template-columns: minmax(0, 7fr) minmax(21.25rem, 5fr); gap: var(--space-6); }
.home-planning__core { display: grid; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.home-field { min-width: 0; }
.home-field:nth-child(5) { grid-column: 1 / -1; }
.home-field label { min-height: 1.125rem; }
.home-field label small { color: var(--color-text-muted); font-family: var(--font-body); font-size: var(--text-meta); letter-spacing: 0; text-transform: none; }
.home-field__error { display: block; min-height: 1.15rem; margin-top: var(--space-1); color: #ff7b72; font-size: var(--text-meta); line-height: var(--leading-meta); }
.home-field input[aria-invalid="true"] { border-color: #ff7b72; }
.home-planning__interests { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: var(--space-2); padding: var(--space-5); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-surface-850); }
.home-planning__interests legend { margin-bottom: var(--space-3); color: var(--color-text-secondary); font-family: var(--font-mono); font-size: var(--text-meta); letter-spacing: .08em; text-transform: uppercase; }
.home-planning__help { max-width: 36rem; margin: 0 0 var(--space-2); font-size: var(--text-compact); }
.home-check { display: flex; min-height: 2.75rem; align-items: center; gap: var(--space-3); margin: 0; padding: var(--space-2); border-radius: var(--radius-data); font-family: var(--font-body); font-size: var(--text-compact); letter-spacing: 0; line-height: var(--leading-compact); text-transform: none; }
.home-check:hover { background: rgba(240,246,252,.03); }
.home-planning__submit { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: var(--space-4); margin-top: var(--space-6); padding-top: var(--space-6); border-top: var(--border-default); }
.home-planning__submit p { max-width: 39rem; margin: 0; font-size: var(--text-compact); }
.home-planning__status { width: 100%; color: #56d364; }
.home-closing { padding-top: var(--space-14); }
.home-closing__intro { max-width: 26.25rem; }
.home-closing__routes { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-8); }
.home-closing__routes article { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding-block: var(--space-4); border-top: var(--border-default); }
.home-closing__routes article > * { margin: 0; }
.home-closing__routes article p:not(.telemetry) { max-width: 32ch; }
.home-closing__routes h3 a { color: var(--color-text-primary); text-decoration: none; }
.home-closing__reminder { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: var(--space-5); }
.home-closing__reminder p { max-width: 38.75rem; margin: 0; }
@media (max-width: 980px) { .home-hero__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); } .home-hero__media-wrap { padding-bottom: 0; } .home-hero__status { position: static; width: min(100%, 21.25rem); margin-top: var(--space-4); } }
@media (max-width: 920px) { .home-formats__grid, .home-sequence__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-format:nth-child(3), .home-step:nth-child(3) { grid-column: 1 / 2; } .home-private__details { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-highroller__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); } .home-planning__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-closing__routes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 880px) { .home-dining__grid { grid-template-columns: minmax(0, 7fr) minmax(18.75rem, 5fr); gap: var(--space-6); } }
@media (max-width: 860px) { .home-hero__grid, .home-highroller__grid, .home-dining__grid, .home-private__feature { grid-template-columns: minmax(0, 1fr); } .home-hero__copy { max-width: 100%; } .home-hero__deck { max-width: 43.75rem; } .home-hero__media-wrap { margin-top: var(--space-2); } .home-hero__status { width: 100%; max-width: 34ch; } .home-highroller__media { order: 2; } .home-highroller__copy { order: 1; } .home-dining__rail { flex-direction: row; } .home-dining__block { width: calc(50% - var(--space-3)); } .home-private__copy { max-width: 32.5rem; } .home-private__image { min-height: 16rem; } }
@media (max-width: 760px) { .home-journal__row { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); } }
@media (max-width: 700px) { .home-flow__panels, .home-formats__grid, .home-sequence__steps, .home-planning__fields { grid-template-columns: minmax(0, 1fr); } .home-format:nth-child(3), .home-step:nth-child(3) { grid-column: auto; } .home-sequence__steps { gap: 0; padding-left: var(--space-5); border-left: 1px solid var(--color-line-subtle); } .home-sequence__steps::before { display: none; } .home-step { padding-block: var(--space-6); } .home-step::before { top: 1.85rem; left: calc(var(--space-5) * -1 - 1px); width: var(--space-5); } .home-dining__rail { flex-direction: column; } .home-dining__block { width: 100%; } .home-planning__core { grid-template-columns: minmax(0, 1fr); } .home-field:nth-child(5) { grid-column: auto; } }
@media (max-width: 640px) { .home-hero { padding-top: 6.5rem; } .home-hero__copy { gap: var(--space-4); } .home-hero__actions, .home-private__actions { flex-direction: column; align-items: stretch; } .home-hero__actions .button, .home-private__actions .button { width: 100%; min-height: 3rem; } .home-hero__media { aspect-ratio: 4 / 3; } .home-hero__status { max-width: 100%; } .home-flow__panels { gap: var(--space-4); margin-top: var(--space-8); } .home-formats__grid { margin-top: var(--space-8); gap: var(--space-4); } .home-formats__statement, .home-closing__reminder { align-items: stretch; flex-direction: column; } .home-formats__statement .button, .home-closing__reminder .button { width: 100%; } .home-highroller__attributes { gap: 0; } .home-attribute { padding-block: var(--space-4); } .home-highroller__media, .home-dining__media { aspect-ratio: 4 / 3; } .home-private__details, .home-closing__routes { grid-template-columns: minmax(0, 1fr); gap: 0; } .home-private__details div { padding-block: var(--space-4); } .home-journal__row { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); padding-block: var(--space-4); } .home-journal__rail { max-width: none; } .home-planning__form { padding: var(--space-4); margin-top: var(--space-8); } .home-planning__interests { padding: var(--space-4); } .home-planning__submit { align-items: stretch; flex-direction: column; } .home-planning__submit .button { width: 100%; min-height: 3rem; } .home-closing__routes article { padding-block: var(--space-4); } }
@media (prefers-reduced-motion: reduce) { .home-hero__media img, .home-highroller__media img, .home-dining__media img { transform: none !important; } }