.entry-page { height:100svh; display:grid; grid-template-rows:76px minmax(0,1fr) 44px; background:var(--paper); }
.entry-page .site-header { position:relative; inset:auto; height:76px; }
.entry-page .header-inner { height:100%; padding-block:10px; }
.entry-page .brand img { width:125px; height:auto; }
.entry-page .site-nav,.entry-page .nav-toggle { display:none; }
.entry-page main { min-height:0; min-width:0; }
.entry-page > * { min-width:0; }
.entry-page .audience-intro { margin:0; }
.entry-page .audience-actions,.entry-page .audience-card { min-width:0; }
.entry-page .site-footer nav { flex-direction:row; align-items:center; }
.entry-page .audience-hero { height:100%; min-height:0; padding:0; background:var(--paper); }
.entry-page .audience-shell { height:100%; max-width:none; padding:0; display:grid; grid-template-rows:auto minmax(0,1fr); gap:0; }
.entry-page .audience-intro { padding:14px 24px 18px; text-align:center; color:var(--ink); width:100%; max-width:none; }
.entry-page .audience-intro h1 { max-width:none; }
.entry-page .audience-shell { width:100%; }
.entry-page .audience-card::after { display:none; }
.entry-page .choice-prompt { box-shadow:none; }
.entry-page .audience-intro h1 { color:var(--ink); font-size:52px; margin:4px 0; line-height:1.03; }
.entry-page .audience-intro .eyebrow { color:var(--clay); margin:0; font-size:11px; }
.entry-page .lead { margin:6px 0; font-size:19px; color:var(--ink-soft); }
.entry-page .hero-text { display:none; }
.entry-page .choice-prompt { margin:10px 0 0; padding:0; color:var(--clay-dark); background:none; border:0; font-size:13px; justify-content:center; }
.entry-page .audience-actions { min-height:0; display:grid; grid-template-columns:1fr 1fr; gap:3px; }
.entry-page .audience-card { min-height:0; padding:30px 7%; border:0; border-radius:0; box-shadow:none; display:flex; flex-direction:column; justify-content:flex-end; transform:none; isolation:isolate; }
.entry-page .audience-card::before { display:none; }
.entry-page .audience-card strong { font-size:42px; line-height:1.05; }
.entry-page .audience-card p { margin:12px 0; font-size:15px; }
.entry-page .audience-cta { border-radius:3px; display:flex; justify-content:space-between; gap:30px; padding:14px 18px; margin-top:5px; align-self:flex-start; background:var(--clay); }
.entry-page .audience-card:hover .audience-cta { background:var(--clay-dark); transform:translateX(5px); }
.entry-page .audience-card:focus-visible { outline:4px solid var(--clay); outline-offset:-4px; }
.entry-page .site-footer { padding:0 24px; background:var(--paper); color:var(--ink); }
.entry-page .footer-grid { height:44px; width:100%; margin:0; padding:0; display:flex; flex-direction:row; gap:0; align-items:center; justify-content:space-between; }
.entry-page .footer-brand { display:none; }
.entry-page .site-footer p,.entry-page .site-footer a { margin:0; color:var(--ink); font-size:11px; }
.entry-page .site-footer nav { display:flex; gap:18px; }
.benefits-section { background:var(--clay-dark); }
.status-available { background:var(--clay); color:var(--white); border-color:var(--clay); }
.status-reserved { background:var(--paper-deep); color:var(--clay-dark); border-color:var(--taupe); }
.status-sold { background:var(--ink-soft); color:var(--white); }
.status-preparation { background:var(--paper); color:var(--ink-soft); border-style:dashed; }
.location-cards { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin-top:12px; border-top:1px solid var(--taupe); }
.location-experience { gap:4px; }
.location-card:last-child p { left:auto; right:0; }
.location-card:nth-child(5n) p { left:auto; right:0; }
@media(max-width:700px) { .location-card:nth-child(5n) p {left:0;right:auto;} .location-card:nth-child(3n) p,.location-card:last-child p {left:auto;right:0;} }
.media-slider-progress { background:none; box-shadow:none; border:0; }
.location-card { min-height:0; padding:12px 8px; border:0; border-radius:0; background:none; box-shadow:none; position:relative; cursor:default; }
.location-card h3 { font-size:12px; line-height:1.35; margin:4px 0; }
.location-card > span { font-size:10px; }
.location-card p { position:absolute; bottom:100%; left:0; width:200px; background:var(--paper); padding:12px; box-shadow:var(--shadow); z-index:5; font-size:12px; opacity:0; visibility:hidden; transition:opacity .15s; }
.location-card:hover p,.location-card:focus p { opacity:1; visibility:visible; }
.location-card.is-active { background:var(--paper); box-shadow:inset 0 -2px var(--clay); }
.map-attribution,.map-vignette { display:none; }
.map-canvas-real { border-radius:4px; }
.map-canvas-real .map-basemap { filter:none; opacity:1; }
.map-caption { font-size:11px; color:var(--ink-soft); margin:10px 0 0; }
.map-canvas-real { aspect-ratio:3/2; }
.neighborhood-pin { position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); width:29px; height:29px; padding:0; border:2px solid var(--paper); border-radius:50%; background:var(--clay-dark); color:var(--white); font-size:12px; font-weight:800; box-shadow:0 2px 8px rgba(9,29,38,.15); z-index:2; }
.neighborhood-pin:hover,.neighborhood-pin:focus-visible,.neighborhood-pin.is-active { background:var(--clay); outline:3px solid var(--paper-deep); }
.map-direction { position:absolute; z-index:3; display:flex; align-items:center; gap:7px; padding:8px 10px; background:var(--paper); color:var(--clay-dark); border:1px solid var(--taupe); border-radius:3px; text-align:left; box-shadow:0 2px 10px rgba(9,29,38,.1); }
.map-direction strong { font-size:11px; line-height:1.3; }
.map-direction small { display:block; color:var(--ink-soft); font-size:10px; font-weight:400; margin-top:2px; }
.map-direction > span { font-size:23px; line-height:1; }
.map-direction:hover,.map-direction:focus-visible,.map-direction.is-active { border-color:var(--clay); background:var(--white); outline:1px solid var(--clay); }
.direction-northeast {right:8px;top:8px;}.direction-east {right:8px;top:40%;}.direction-southeast {right:8px;bottom:8px;}.direction-south {left:8px;bottom:8px;}
.map-north {position:absolute;top:12px;left:12px;color:var(--ink);font-size:12px;font-weight:700;}
@media(max-width:700px) {
 .map-canvas-real {aspect-ratio:3/2;}
 .map-direction {padding:5px;gap:4px;}
 .map-direction strong {font-size:9px;}.map-direction small {font-size:8px;}.map-direction > span {font-size:18px;}
 .neighborhood-pin {width:25px;height:25px;font-size:11px;}
 .map-canvas-real .map-basemap {object-fit:contain;}
}
.zoom-trigger { cursor:zoom-in; }
.zoom-trigger:focus-visible { outline:3px solid var(--clay); outline-offset:3px; }
.position-plan { width:100%; height:auto; display:block; }
.gallery-dialog { width:100vw; max-width:none; height:100dvh; max-height:none; padding:0; border:0; margin:0; background:var(--ink); color:var(--white); overflow:hidden; }
.gallery-dialog::backdrop { background:var(--ink); }
.gallery-stage { position:absolute; inset:60px 65px 65px; display:grid; place-items:center; overflow:auto; touch-action:pan-y; }
.gallery-stage img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; cursor:zoom-in; }
.gallery-tool { position:absolute; width:44px; height:44px; background:var(--paper); border:0; border-radius:4px; color:var(--ink); font-size:25px; z-index:2; }
.gallery-close { top:12px; right:14px; }
.gallery-prev { left:12px; top:48%; }.gallery-next { right:12px; top:48%; }
.gallery-caption { position:absolute; bottom:15px; left:65px; right:65px; text-align:center; font-size:14px; }
.slider-slide { min-width:100%; }
.slider-slide[aria-hidden="true"] { pointer-events:none; }
.slider-dots { flex-wrap:wrap; max-width:90%; }
.progress-feed { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.progress-photo { margin:0; background:var(--paper); }
.progress-photo img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.progress-photo figcaption { padding:16px; }
.progress-photo time { display:block; font-size:12px; color:var(--clay); margin-bottom:5px; }
@media(max-width:700px) {
 .entry-page { grid-template-rows:60px minmax(0,1fr) 40px; }
 .entry-page .site-header {height:60px;}.entry-page .brand img {width:95px;}
 .entry-page .audience-intro {padding:10px 12px 12px;}.entry-page .audience-intro h1 {font-size:32px;}
 .entry-page .lead {font-size:15px;margin:4px 0;}.entry-page .choice-prompt {margin-top:6px;font-size:12px;}
 .entry-page .audience-actions {grid-template-columns:1fr;grid-template-rows:1fr 1fr;}
 .entry-page .audience-card {padding:14px 22px;background-position:center 48%;}
 .entry-page .audience-card strong {font-size:28px;}.entry-page .audience-card p {display:none;}
 .entry-page .audience-label {font-size:10px;}.entry-page .audience-cta {padding:10px 12px;font-size:12px;margin-top:10px;}
 .entry-page .site-footer {padding:0 12px;}.entry-page .footer-grid {height:40px;}.entry-page .site-footer p {display:none;}
 .location-cards {grid-template-columns:repeat(3,minmax(0,1fr));}.location-card p {width:150px;}
 .map-canvas-real .map-marker strong {display:block;position:absolute;width:max-content;height:auto;clip:auto;overflow:visible;top:100%;left:50%;transform:translateX(-50%);padding:3px 4px;background:var(--paper);color:var(--ink);font-size:9px;line-height:1.2;}
 .map-canvas-real [data-map-target="mtz"] strong {top:auto;bottom:100%;}
 .map-route-label {display:none;}
 .gallery-stage {inset:65px 8px 90px;}.gallery-prev,.gallery-next {top:auto;bottom:15px;}.gallery-caption {bottom:25px;font-size:12px;}
 .progress-feed {grid-template-columns:1fr;}
}
@media(max-height:650px) and (min-width:701px) { .entry-page .audience-intro {padding:8px;}.entry-page .audience-intro h1 {font-size:36px;}.entry-page .audience-card strong {font-size:32px;}.entry-page .audience-card p {display:none;}.entry-page .audience-card {padding:20px;} }
@media(max-height:600px) and (max-width:700px) { .entry-page .audience-intro .lead,.entry-page .eyebrow {display:none;}.entry-page .audience-intro h1 {font-size:25px;}.entry-page .audience-card {padding:8px 18px;}.entry-page .audience-card strong {font-size:23px;} }
@media(prefers-reduced-motion:reduce) { .slider-track {transition:none;} }
