/* Visual storytelling v2. Layout remains usable without JavaScript. */
.skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:#f4e2bd;color:#171813;padding:12px 18px;border-radius:20px}.skip-link:focus{top:12px}
.visual-hero{padding:52px 0 32px;max-width:990px}.visual-hero h1{font-size:clamp(38px,5.8vw,72px);max-width:940px;margin:18px 0}.visual-hero .lead{font-size:17px;max-width:680px}.visual-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 26px}.visual-actions .quiet-link{font-size:13px;text-underline-offset:5px}.visual-actions .button{margin:0}.visual-cover{margin:0 0 42px}.visual-cover img{height:auto;aspect-ratio:3/2;max-height:none;object-fit:contain;border-radius:24px}.visual-cover:hover img{transform:none}
.visual-moments h2{max-width:860px;margin-block:12px 18px}.gallery-guide{font-size:12px}.moment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;margin-top:28px}.moment-card{margin:0;min-width:0}.moment-card:last-child:nth-child(odd){grid-column:1 / -1;max-width:780px;width:100%;margin:auto}.moment-open{display:block;position:relative;overflow:hidden;border-radius:20px;background:#20211e}.moment-open img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:transform .65s ease}.moment-card figcaption{padding:18px 0 8px}.moment-card h3{font-family:'Playfair Display',Georgia,serif;font-size:clamp(25px,3vw,34px);margin:5px 0;font-weight:400;color:#f4f0e7}.moment-card p{font-size:14px;margin:5px 0}.moment-card .eyebrow{font-size:11px}.zoom-hint{position:absolute;right:12px;bottom:12px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#111c;color:#fff;font-size:22px}
.visual-plan{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.visual-plan h2{font-size:40px}.visual-plan p{font-size:15px}.visual-final{text-align:center}.visual-final h2,.visual-final p{margin-inline:auto}.visual-event-card{padding:0!important;overflow:hidden}.visual-event-photo{display:block;overflow:hidden}.visual-event-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;display:block;transition:transform .65s ease}.visual-event-card h3,.visual-event-card p,.visual-event-card>.text-link{margin-left:22px!important;margin-right:22px!important}.visual-event-card>.text-link{margin-bottom:24px}.visual-event-card h3{font-size:20px}.visual-event-card p{font-size:13px}.event-grid:has(.visual-event-card){grid-template-columns:repeat(3,minmax(0,1fr))}
.visual-lightbox{width:min(1120px,96vw);max-width:96vw;max-height:94dvh;max-height:94vh;padding:14px;border:1px solid #e6d1a455;background:#111210;color:#f4f0e7;border-radius:18px;box-shadow:0 20px 100px #000a}.visual-lightbox::backdrop{background:#000d}.visual-lightbox img{display:block;width:100%;height:auto;max-height:72vh;object-fit:contain;margin-top:8px}.visual-lightbox button{font:inherit;min-height:44px;min-width:44px;padding:8px 16px;border-radius:30px;border:1px solid #ffffff55;color:#f4f0e7;background:#24251f;cursor:pointer}.visual-lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:16px}.visual-lightbox-controls span{font-size:12px}.visual-lightbox p{margin:12px auto 4px;font-size:14px;text-align:center}.visual-lightbox:focus-visible,.moment-open:focus-visible,.visual-event-photo:focus-visible,button:focus-visible{outline:3px solid #e6d1a4;outline-offset:4px}
header>nav{display:flex;gap:20px;align-items:center}.partner-note>summary{color:#e6d1a4}.sample-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sample-grid .photo-open img{aspect-ratio:3/2;height:auto;object-fit:contain}.hero-portrait img{aspect-ratio:auto!important;height:auto!important;object-fit:contain!important}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.moment-open:hover img,.visual-event-photo:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.event-grid:has(.visual-event-card){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.visual-hero{padding:34px 0 25px}.visual-hero h1{font-size:39px}.visual-hero .lead{font-size:16px}.visual-cover{margin-bottom:28px}.visual-cover img{border-radius:16px}.moment-grid{grid-template-columns:1fr;gap:20px}.moment-card:last-child:nth-child(odd){grid-column:auto}.moment-card figcaption{padding-top:12px}.moment-card h3{font-size:27px}.moment-card p{font-size:14px}.visual-plan{grid-template-columns:1fr;gap:18px}.visual-plan h2{font-size:32px}.event-grid:has(.visual-event-card){grid-template-columns:1fr}.sample-grid{grid-template-columns:1fr}.visual-actions{gap:20px}.visual-actions .button{width:100%}header>nav{gap:12px}.visual-lightbox-controls{gap:6px}.visual-lightbox-controls button{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.moment-open img,.visual-event-photo img{transition:none}.moment-open:hover img,.visual-event-photo:hover img{transform:none}}

/* QA-LAYOUT-03: destination images share the gallery frame without its lightbox hook. */
body[data-capture-premium="coverage"] .moment-destination{display:block;position:relative;overflow:hidden;border-radius:20px;background:#20211e}
body[data-capture-premium="coverage"] .moment-destination img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
