/* Hallmark · design-system: design.md · internal review P4 H4 E4 S5 R5 V4.
   Reading refinement for scenes 1–2; original maps and gesture viewer retained. */
.opening .opening-landscape img{height:115%;transform:translateY(-13.0435%);object-position:52% 58%}
.opening .opening-invitation{gap:19px}
.opening .cover-question{line-height:1.5}
.opening .opening-credit{font-size:10px;line-height:1.7;margin-top:12px}
.opening .opening-credit button{font-size:11px}
.opening .cover-anniversary .anniversary-label>span{color:var(--cover-on-photo)}
.atlas .atlas-heading .departure-term{font-size:12px;line-height:1.55;display:block;color:var(--cover-red-deep);margin-top:8px}
.atlas .atlas-map figcaption{padding-block:0;font-size:10.5px}
.atlas .atlas-map .map-expand{white-space:nowrap;min-height:44px;font-size:11px;padding-inline:10px;margin-block:2px}
.atlas .route-reading-body{height:auto;min-height:83px}
body[data-page='2'] .deck-footer{flex-wrap:nowrap;gap:8px}
body[data-page='2'] .deck-footer>div:first-child{gap:12px}
body[data-page='2'] #gesture-hint{white-space:nowrap;flex:none}
@media(max-height:700px){
 .opening .opening-invitation{gap:15px}.opening .opening-credit{font-size:10px}
 .atlas .atlas-heading .departure-term{font-size:11px;margin-top:6px}
 .atlas-map[data-reading='branches'] .map-original{display:none!important}
 .atlas-map[data-reading='branches'] .map-detail{display:block}
 .atlas .route-reading-body{min-height:74px}
}
@media(max-height:600px){
 .opening .opening-invitation{gap:12px}.opening .cover-question{line-height:1.4}.opening .opening-credit{font-size:9px;margin-top:8px}
 .atlas .atlas-heading h2{font-size:25px;margin-bottom:3px}
 .atlas-heading .eyebrow{font-size:10px;margin-bottom:3px}
 .atlas .atlas-heading .departure-cause{font-size:12px;line-height:1.6}
 .atlas .atlas-heading .departure-term{font-size:10px;line-height:1.4;margin-top:4px}
 .atlas .atlas-heading{padding-bottom:4px;padding-top:calc(var(--header) + 1px)}
 .atlas .route-reading-tabs{padding-block:2px}
 .atlas .route-reading-body{min-height:64px}
 .atlas .atlas-reading{padding-block:5px}
 .atlas .discovery-feedback{font-size:11px;line-height:1.5}.atlas .discovery-feedback strong{font-size:12px;margin-bottom:3px}
 .journey-places{font-size:16px}.journey-scope{font-size:10px;line-height:1.5;margin-top:5px}
}
@media(min-width:650px){.opening .opening-credit{font-size:12px}.atlas .atlas-heading .departure-term{font-size:14px}.atlas .route-reading-body{min-height:96px}}

/* Opening-17: unified commemoration, one question, one reading action.
   Hallmark internal critique P4 H4 E4 S5 R5 V4; no judging score implied. */
:root{--entry-border:#fff8eb66;--entry-surface:#fff8eb14;--entry-pressed:#fff8eb2e}
.opening .cover-masthead{gap:20px}
.opening .cover-name{font:700 clamp(42px,12.5vw,64px)/1.2 var(--entry-heading);letter-spacing:0;white-space:nowrap}
.opening .cover-identity{align-items:baseline;justify-content:flex-start;gap:clamp(17px,5vw,24px)}
.opening .cover-anniversary{display:block;padding:0;gap:0}
.opening .cover-anniversary strong{font-size:clamp(45px,14vw,65px);letter-spacing:-.045em}
.opening .opening-invitation{gap:16px;padding-bottom:40px}
 .opening button.opening-enter{width:144px;min-height:52px;padding:12px 24px;justify-content:center;gap:0;border:0;border-radius:var(--radius-control);background:var(--color-entry-surface);color:var(--color-entry-ink);font-size:1rem;font-weight:600;line-height:1.5;transition:background-color var(--dur-feedback) var(--ease-feedback),transform var(--dur-feedback) var(--ease-feedback)}
@media(hover:hover){.opening button.opening-enter:hover:not(:disabled){background:var(--color-entry-pressed);padding:12px 24px;color:var(--color-entry-ink);transform:none}}
.opening button.opening-enter:active:not(:disabled),.opening button.opening-enter[aria-busy='true']{background:var(--color-entry-pressed);padding:12px 24px;transform:none;color:var(--color-entry-ink)}
.opening button.opening-enter:focus-visible{outline:2px solid var(--cover-gold);outline-offset:4px}
.opening button.opening-enter:disabled{opacity:.75;cursor:wait}.opening button.opening-enter[aria-busy='true']{opacity:1}
.opening .opening-credit{font-size:11px;line-height:1.5;margin-top:0}
.opening .opening-credit button{font-size:11px;padding-inline:8px;min-height:44px}
@media(max-height:700px){.opening .cover-masthead{gap:17px}.opening .opening-invitation{gap:14px;padding-bottom:25px}}
@media(max-height:600px){.opening .cover-name{font-size:40px}.opening .cover-anniversary strong{font-size:46px}.opening .cover-commemoration{font-size:12px}.opening .cover-masthead{gap:14px}.opening .opening-invitation{gap:12px;padding-bottom:10px}.opening .opening-credit{font-size:11px}}
@media(min-width:650px){.opening .cover-name{font-size:64px}.opening .cover-anniversary strong{font-size:76px}.opening .opening-credit,.opening .opening-credit button{font-size:12px}.opening button.opening-enter{width:144px;min-height:56px;font-size:19px}}
@media(prefers-reduced-motion:reduce){.opening button.opening-enter{transition:none}}

/* Narrow the photo masks to the text zones, retaining the natural middle scene. */
:root{--opening-head:#75261fe8;--opening-head-fade:#75261f72;--opening-photo-clear:#211b1600;--opening-text-shade:#211b16b8;--opening-foot-shade:#211b16e8}
.opening:after{background:linear-gradient(180deg,var(--opening-head) 0%,var(--opening-head) calc(16% + var(--opening-safe-top)),var(--opening-head-fade) calc(27% + var(--opening-safe-top)),var(--opening-photo-clear) calc(39% + var(--opening-safe-top)),var(--opening-photo-clear) 49%,var(--opening-text-shade) 72%,var(--opening-foot-shade) 100%)}
.opening .opening-context{font:400 14px/1.65 var(--cover-body);color:var(--cover-photo-muted);margin:0;text-wrap:pretty}
.opening .cover-anniversary .anniversary-label>span{font-size:14px}
.opening .opening-credit button:focus-visible{outline:2px solid var(--cover-gold);outline-offset:3px}
@media(max-height:600px){.opening .opening-context{font-size:13px;line-height:1.6}}
@media(min-width:650px){.opening .opening-context{font-size:16px}}

:root{--entry-gold-pressed:#dab77c}

/* Hallmark · design-system: design.md · paired refinement, original photograph retained. */
.opening .cover-question { line-height:1.4; }
.opening .cover-masthead { gap:var(--exhibit-lg); }
.opening .opening-context { font-size:.9375rem; }
.opening .opening-credit button { text-underline-offset:3px; text-decoration:underline; text-decoration-color:var(--entry-border); }
@media(prefers-reduced-motion:no-preference){.opening button.opening-enter:active:not(:disabled){transform:scale(.96)}}
@media(max-height:700px){.opening .opening-context{font-size:.875rem}.opening .cover-question{line-height:1.35}}
