.ac-guide { overflow: hidden; }
.ac-guide__hero { padding-top: var(--space-10); }
.ac-guide__hero-grid, .ac-guide__cabin-grid, .ac-guide__dining-grid, .ac-guide__family-grid, .ac-guide__wayfinding-grid, .ac-guide__navigation-context, .ac-guide__boundary-panel { display:grid; gap:var(--space-6); min-width:0; }
.ac-guide__hero-grid { grid-template-columns:repeat(8,minmax(0,1fr)); }
.ac-guide__intro { grid-column:span 5; min-width:0; }
.ac-guide__route-index { grid-column:span 3; min-width:0; display:flex; flex-direction:column; gap:var(--space-2); padding:var(--space-5); border:1px solid var(--border-color); border-top:2px solid var(--color-teal-500); border-radius:var(--radius-panel); background:var(--surface-raised); }
.ac-guide__route-index h2 { font-size:1.35rem; margin:0 0 var(--space-2); }
.ac-guide__route-index .section-code { margin-bottom:0; }
.ac-guide__route-index a { min-height:44px; display:grid; grid-template-columns:2rem minmax(0,1fr); gap:var(--space-2); align-items:center; padding:var(--space-2); border-bottom:1px solid var(--border-color); color:var(--color-marine-800); text-decoration:none; }
.ac-guide__route-index a:last-child { border-bottom:0; }
.ac-guide__route-index a b { color:var(--color-teal-500); font-family:var(--font-heading); font-variant-numeric:tabular-nums; }
.ac-guide__route-index a strong, .ac-guide__route-index a small { display:block; }
.ac-guide__route-index a small { color:var(--color-steel-700); font-size:.78rem; line-height:1.35; }
.ac-guide__breadcrumb { display:flex; gap:var(--space-2); margin-bottom:var(--space-3); font-size:var(--text-small); }
.ac-guide__intro > .lead { max-width:66ch; }
.ac-guide__intro > p:not(.lead) { max-width:68ch; }
.ac-guide__variation { max-width:66ch; }
.ac-guide__amber-dot { display:inline-block; width:.5rem; height:.5rem; margin-right:.35rem; border-radius:50%; background:var(--color-amber-500); }
.ac-guide__section-head { margin-bottom:var(--space-8); }
.ac-guide__section-head h2 { margin-bottom:var(--space-3); }
.ac-guide__section-head--layers .lead, .ac-guide__section-head--cabins .lead, .ac-guide__section-head--dining .lead, .ac-guide__section-head--family .lead, .ac-guide__section-head--entertainment .lead, .ac-guide__section-head--services .lead, .ac-guide__section-head--navigation .lead, .ac-guide__section-head--first-day .lead, .ac-guide__section-head--related .lead { max-width:62ch; }
.ac-guide__deck-diagram { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-3); margin-bottom:var(--space-6); }
.ac-guide__deck-band { min-width:0; min-height:112px; display:flex; flex-direction:column; justify-content:center; gap:var(--space-1); padding:var(--space-4); border:1px solid var(--border-color); border-radius:var(--radius-control); background:var(--surface-content); text-decoration:none; }
.ac-guide__deck-band span, .ac-guide__module-number { color:var(--color-teal-500); font-family:var(--font-heading); font-weight:700; font-variant-numeric:tabular-nums; }
.ac-guide__deck-band strong { font-family:var(--font-heading); }
.ac-guide__deck-band small { color:var(--color-steel-700); }
.ac-guide__deck-band--public { border-top:3px solid var(--color-marine-800); }
.ac-guide__deck-band--open { border-top:3px solid var(--color-teal-500); }
.ac-guide__deck-band--operations { border-top:3px dashed var(--color-steel-700); }
.ac-guide__layer-modules { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-6); }
.ac-guide__layer-modules > article { min-width:0; padding:var(--space-5); border-left:2px solid var(--color-marine-800); background:var(--surface-content); }
.ac-guide__layer-modules p { max-width:50ch; }
.ac-guide__cabin-grid { grid-template-columns:repeat(8,minmax(0,1fr)); }
.ac-guide__cabin-card { grid-column:span 2; min-width:0; display:flex; flex-direction:column; gap:var(--space-3); }
.ac-guide__cabin-card > * { margin:0; }
.ac-guide__cabin-card .media-frame { width:100%; }
.ac-guide__cabin-card p { max-width:52ch; }
.ac-guide__cabin-check { grid-column:span 2; min-width:0; }
.ac-guide__mini-route, .ac-guide__locator { display:flex; align-items:center; flex-wrap:wrap; gap:var(--space-2); color:var(--color-steel-700); font-size:var(--text-small); }
.ac-guide__mini-route i, .ac-guide__locator i { flex:1 1 12px; min-width:12px; height:2px; background:var(--color-teal-500); }
.ac-guide__level-list { margin:0; font-size:var(--text-small); }
.ac-guide__dining-grid { grid-template-columns:repeat(8,minmax(0,1fr)); align-items:start; }
.ac-guide__restaurant-feature { grid-column:span 5; display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-4); }
.ac-guide__restaurant-feature p { max-width:62ch; }
.ac-guide__venue-card { grid-column:span 3; display:flex; flex-direction:column; gap:var(--space-3); }
.ac-guide__venue-card > * { margin:0; }
.ac-guide__venue-card + .ac-guide__venue-card { grid-column:6 / span 3; }
.ac-guide__micro-facts { margin:0; }
.ac-guide__micro-facts > div { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:var(--space-2); padding:var(--space-2) 0; border-top:1px solid var(--border-color); font-size:var(--text-small); }
.ac-guide__micro-facts dt, .ac-guide__micro-facts dd { margin:0; }
.ac-guide__micro-facts dt { color:var(--color-steel-700); }
.ac-guide__sequence, .ac-guide__show-flow, .ac-guide__teal-path { color:var(--color-steel-700); font-size:var(--text-small); }
.ac-guide__sequence span, .ac-guide__show-flow span, .ac-guide__teal-path span { color:var(--color-teal-500); font-weight:700; }
.ac-guide__access-panel { margin-top:var(--space-6); }
.ac-guide__family-grid { grid-template-columns:repeat(8,minmax(0,1fr)); }
.ac-guide__pool-feature { grid-column:span 5; display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-4); }
.ac-guide__pool-feature p { max-width:62ch; }
.ac-guide__family-card { grid-column:span 3; display:flex; flex-direction:column; gap:var(--space-3); }
.ac-guide__family-card > * { margin:0; }
.ac-guide__family-card ol { padding-left:1.35rem; }
.ac-guide__day-route { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-3); margin-top:var(--space-6); }
.ac-guide__day-route a { min-width:0; min-height:66px; display:grid; grid-template-columns:2rem minmax(0,1fr); align-items:center; gap:var(--space-2); padding:var(--space-3); border-top:2px solid var(--color-teal-500); background:var(--surface-content); color:var(--color-ink); text-decoration:none; }
.ac-guide__day-route b { color:var(--color-marine-800); font-family:var(--font-heading); }
.ac-guide__entertainment-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); align-items:start; }
.ac-guide__entertainment-card { min-width:0; display:flex; flex-direction:column; gap:var(--space-3); }
.ac-guide__entertainment-card > * { margin:0; }
.ac-guide__entertainment-card p { max-width:52ch; }
.ac-guide__casino-wrap { min-width:0; display:flex; flex-direction:column; gap:var(--space-4); }
.ac-guide__responsible-note { margin:0; }
.ac-guide__services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); }
.ac-guide__services-grid > article { min-width:0; }
.ac-guide__services-grid p { max-width:52ch; }
.ac-guide__queue-callout { width:min(100%,62ch); margin-top:var(--space-6); }
.ac-guide__wayfinding-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ac-guide__wayfinding-grid > article { min-width:0; }
.ac-guide__wayfinding-grid p { max-width:52ch; }
.ac-guide__locator { margin-top:var(--space-4); }
.ac-guide__locator b { padding:var(--space-2); border:1px solid var(--border-color); border-radius:var(--radius-technical); background:var(--surface-raised); font-size:var(--text-small); }
.ac-guide__checkpoints { margin:var(--space-4) 0 0; }
.ac-guide__navigation-context { grid-template-columns:repeat(8,minmax(0,1fr)); margin-top:var(--space-6); align-items:start; }
.ac-guide__navigation-context > .media-frame { grid-column:span 3; min-width:0; }
.ac-guide__navigation-context > div:last-child { grid-column:span 5; min-width:0; }
.ac-guide__navigation-context > div:last-child > p { max-width:56ch; }
.ac-guide__navigation-context .callout { max-width:52ch; }
.ac-guide__first-day-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:var(--space-3); }
.ac-guide__first-day-steps > article { min-width:0; position:relative; padding:var(--space-4); border-top:2px solid var(--color-teal-500); background:var(--surface-content); }
.ac-guide__first-day-steps > article > b { display:block; margin-bottom:var(--space-3); color:var(--color-marine-800); font-family:var(--font-heading); font-size:1.25rem; font-variant-numeric:tabular-nums; }
.ac-guide__first-day-steps h3 { font-size:1.1rem; }
.ac-guide__first-day-steps p { font-size:var(--text-small); line-height:var(--line-small); }
.ac-guide__priority-note { width:min(100%,62ch); margin-top:var(--space-6); padding-left:var(--space-4); border-left:4px solid var(--color-teal-500); }
.ac-guide__priority-note p { max-width:54ch; }
.ac-guide__resource-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-4); }
.ac-guide__resource-grid > article { min-width:0; display:flex; flex-direction:column; gap:var(--space-3); }
.ac-guide__resource-grid > article > * { margin:0; }
.ac-guide__resource-grid p { max-width:50ch; }
.ac-guide__resource-grid .card__link { min-height:44px; margin-top:auto; align-items:center; }
.ac-guide__boundary-panel { grid-template-columns:repeat(8,minmax(0,1fr)); padding:var(--space-6); border:1px solid var(--border-color); border-top:2px solid var(--color-marine-800); border-radius:var(--radius-panel); background:var(--surface-raised); }
.ac-guide__boundary-panel > div:first-child { grid-column:span 5; min-width:0; }
.ac-guide__boundary-panel > div:last-child { grid-column:span 3; min-width:0; }
.ac-guide__boundary-panel > div:first-child p { max-width:62ch; }
.ac-guide__boundary-panel ul { margin-bottom:var(--space-3); }
@media (max-width:63.75rem) { .ac-guide__cabin-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ac-guide__cabin-card, .ac-guide__cabin-check { grid-column:auto; } .ac-guide__cabin-check { grid-column:1 / -1; } }
@media (max-width:62.5rem) { .ac-guide__entertainment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ac-guide__casino-wrap { grid-column:1 / -1; } }
@media (max-width:61.25rem) { .ac-guide__hero-grid, .ac-guide__dining-grid { grid-template-columns:1fr; } .ac-guide__intro, .ac-guide__route-index, .ac-guide__restaurant-feature, .ac-guide__venue-card, .ac-guide__venue-card + .ac-guide__venue-card { grid-column:auto; } .ac-guide__dining-grid { gap:var(--space-4); } .ac-guide__venue-card { min-height:0; } }
@media (max-width:60rem) { .ac-guide__navigation-context { grid-template-columns:1fr; } .ac-guide__navigation-context > .media-frame, .ac-guide__navigation-context > div:last-child { grid-column:auto; } }
@media (max-width:58.75rem) { .ac-guide__family-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ac-guide__pool-feature, .ac-guide__family-card { grid-column:auto; } }
@media (max-width:56.25rem) { .ac-guide__layer-modules { grid-template-columns:1fr; } .ac-guide__services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ac-guide__services-grid > article:last-child { grid-column:1 / -1; } }
@media (max-width:52.5rem) { .ac-guide__boundary-panel { grid-template-columns:1fr; } .ac-guide__boundary-panel > div:first-child, .ac-guide__boundary-panel > div:last-child { grid-column:auto; } }
@media (max-width:46.25rem) { .ac-guide__first-day-steps { grid-template-columns:1fr; gap:0; } .ac-guide__first-day-steps > article { display:grid; grid-template-columns:2.5rem minmax(0,1fr); column-gap:var(--space-3); border-top:0; border-left:2px solid var(--color-teal-500); } .ac-guide__first-day-steps > article > b { grid-row:span 2; margin:0; } .ac-guide__first-day-steps h3, .ac-guide__first-day-steps p { grid-column:2; } }
@media (max-width:45rem) { .ac-guide__hero { padding-top:var(--space-8); } .ac-guide__route-index { gap:var(--space-2); } .ac-guide__deck-diagram, .ac-guide__cabin-grid, .ac-guide__dining-grid, .ac-guide__family-grid, .ac-guide__entertainment-grid, .ac-guide__services-grid, .ac-guide__wayfinding-grid, .ac-guide__resource-grid { grid-template-columns:1fr; } .ac-guide__deck-band, .ac-guide__cabin-card, .ac-guide__cabin-check, .ac-guide__restaurant-feature, .ac-guide__venue-card, .ac-guide__venue-card + .ac-guide__venue-card, .ac-guide__pool-feature, .ac-guide__family-card, .ac-guide__casino-wrap, .ac-guide__services-grid > article:last-child { grid-column:auto; } .ac-guide__deck-diagram { gap:var(--space-2); } .ac-guide__deck-band { min-height:76px; } .ac-guide__layer-modules { gap:var(--space-4); } .ac-guide__day-route { grid-template-columns:1fr; gap:var(--space-2); } .ac-guide__entertainment-grid { gap:var(--space-4); } .ac-guide__services-grid { gap:var(--space-4); } .ac-guide__navigation-context { gap:var(--space-4); } .ac-guide__navigation-context > .media-frame { order:-1; } .ac-guide__boundary-panel { padding:var(--space-4); gap:var(--space-5); } .ac-guide__restaurant-feature, .ac-guide__pool-feature { padding:var(--space-4); } .ac-guide__restaurant-feature .media-frame, .ac-guide__pool-feature .media-frame { order:2; } .ac-guide__section-head { margin-bottom:var(--space-6); } .ac-guide__section-head h2 { font-size:clamp(1.75rem,7vw,1.95rem); } }
