/* Shared finishing layer over the retained page designs. */
[hidden]{display:none!important}html{scroll-padding-top:105px}body{overflow-wrap:break-word}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8bd8ff;outline-offset:5px}.skip-link{position:fixed;top:8px;left:12px;z-index:100;background:#f4f0e9;color:#07111b;padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}.menu-toggle{display:none}.nav a[aria-current="page"]{color:#8bd8ff;text-decoration:underline;text-underline-offset:7px}.nav{position:relative}.nav nav a{min-height:44px;display:inline-flex;align-items:center}.nav nav{z-index:30}.grid>*{min-width:0}img{max-width:100%}.event-photo{width:100%;height:100%;min-height:310px;object-fit:cover;display:block}.photo-note{font-size:12px;line-height:1.6;color:#aebbc8;margin:10px 0 0}.photo-frame{position:relative;overflow:hidden;border-radius:8px}.photo-frame figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 20px 16px;background:linear-gradient(transparent,#07111bef);font-size:13px;color:white}.invitation-list{padding:0;list-style:none;display:grid;gap:12px}.invitation-list li{padding:16px;border:1px solid #3c5368;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.invitation-list code{font-size:16px;overflow-wrap:anywhere}.invitation-list .button{padding:10px 14px}.activity-list{padding-left:20px;line-height:1.8}.policy{line-height:1.8;border-left:3px solid #23a9ed;padding-left:20px}.trip-list{list-style:none;padding:0;display:grid;gap:16px}.trip-list li{border:1px solid #3c5368;border-radius:8px;padding:20px;line-height:1.8}.trip-list h3{margin:0 0 8px}.trip-list p{margin:5px 0}#invitation-codes{font-size:14px}.lightbox .controls{flex-wrap:wrap;justify-content:center}#phototitle{text-align:center}main:focus{outline:none}
@media(max-width:850px){header .nav{min-height:86px;padding-top:0;padding-bottom:0;flex-wrap:nowrap;justify-content:space-between;align-items:center}header .logo{width:125px;height:76px}.menu-toggle{display:block;background:#14293b;color:white;border:1px solid #688399;border-radius:6px;padding:12px 16px;cursor:pointer}header .nav nav.links,header .nav nav.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:#0b1523;border:1px solid #3c5368;border-radius:0 0 10px 10px;padding:16px;flex-direction:column;align-items:stretch;gap:4px;font-size:14px}header .nav nav[data-open="true"]{display:flex}header .nav nav a,header .nav nav a:nth-child(n){display:flex;font-size:14px;padding:12px;justify-content:flex-start}header .nav nav .member{border-radius:6px}html{scroll-padding-top:90px}.event-photo{min-height:240px}.hero h1{overflow-wrap:normal}.lightbox{padding:65px 12px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}}

body[data-page="home"] .hero{background:linear-gradient(90deg,#060b13f5 0%,#07111bd9 40%,#07111b55 100%),url(photos/final-reviewed/db3611d32ecd0ce1-1800.webp) center/cover}body[data-page="home"] .hero:after{display:none}

.queue-filter{margin:20px 0}.queue-filter label{display:block;margin-bottom:8px}.queue-filter input{width:min(100%,600px);padding:13px;border:1px solid #55738d;border-radius:6px;background:#0a1421;color:#fff}caption{text-align:left;color:#b1c2d4;padding:10px 0}#credit-history li{padding:10px 0;border-bottom:1px solid #2c4157}

#registration-context dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 14px}#registration-context dt{font-weight:bold}#registration-context dd{margin:0;overflow-wrap:anywhere}

/* Section padding must not erase the shared wrapper's side gutters. */
.wrap.content{padding-inline:25px}
@media(max-width:850px){header .wrap.nav{padding-inline:25px}}
/* Private booking summaries share the approved portal palette. */
.booking-card{background:#111f30;border:1px solid #2c4157;border-radius:10px;padding:24px;margin:18px 0;color:#f6f8fb;overflow-wrap:anywhere}
.booking-card p{line-height:1.6}.booking-card .button{max-width:100%;white-space:normal}.booking-card button:disabled{opacity:.7;cursor:not-allowed}
#booking-content[hidden],#founder-benefits[hidden]{display:none!important}
/* Photo-review draft: licensed inspiration stays separate from original events. */
.photo-art{position:relative;isolation:isolate;overflow:hidden}
.photo-art>img,.photo-art>.inspiration-grid{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.photo-art>img{object-fit:cover}
.photo-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07111bc9,transparent 65%);z-index:-1}
.inspiration-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:3px}
.inspiration-grid img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.inspiration-grid img:first-child{grid-row:1 / 3}
.experience .body .photo-caption{min-height:0;font-size:12px;line-height:1.5;color:#d6b878;margin:0 0 12px}
@media(max-width:760px){body[data-page="home"] .hero{background-image:linear-gradient(90deg,#07111be6,#07111b4d),url(photos/final-reviewed/db3611d32ecd0ce1-960.webp)}}
.vip-confirmation{max-width:780px;padding-top:55px;padding-bottom:55px}
.vip-confirmation h1{font:normal clamp(36px,6vw,60px)/1.1 Georgia,serif;margin:18px 0 24px}
.vip-email-steps{padding-left:24px;font-size:17px;line-height:1.8}
.vip-email-steps li{padding:10px 0 10px 8px;color:#c7d5df}
.vip-email-steps strong{color:#f2d18a}
.vip-email-help{max-width:660px;margin:30px auto 0;font-size:15px;line-height:1.7}
.vip-email-help h3{font:normal 24px Georgia,serif}

/* Public VIP privacy disclosure */
.vip-privacy-notice{display:block;flex-basis:100%;max-width:38rem;font-size:12px;line-height:1.6;color:inherit;white-space:normal}.vip-privacy-notice a,.privacy-footer a{text-decoration:underline;text-underline-offset:3px}.privacy-footer{margin-top:16px}nav .vip-privacy-notice{max-width:240px}nav:has(.vip-privacy-notice){flex-wrap:wrap}
