/* Reference pass: shared surfaces, image-led hierarchy and compact mobile rhythm. */
.demo-login>button.primary{background:var(--yellow);color:var(--ink);border-color:var(--yellow);font-size:15px;min-height:48px}
:root{--nav-height:76px;--mini-width:480px;--radius:12px;--font-display:'Arial Narrow','Segoe UI',Arial,sans-serif;--hero-shade:linear-gradient(90deg,#00142df2 0%,#00142dbf 32%,#00142d38 68%,#00142d0d 100%)}
h1,h2,h3{font-weight:850}h1{letter-spacing:-1px}.brand-logo{width:64px;height:64px;max-width:none;max-height:none;object-fit:contain;border-radius:10px}.brand-wordmark{font-size:18px}.brand-wordmark strong:last-child{color:var(--text)}.header-inner{min-height:82px;padding-block:8px}.demo-bar{font-size:10px;padding:2px 16px;color:#9daec3}.photo-image{filter:saturate(.86) contrast(1.08)}
.event-card,.booking-row{background:#f8faff;color:var(--ink);border:1px solid #d5dfec;box-shadow:0 5px 16px #0002}.event-card .meta-row,.booking-row .meta-row,.booking-date{color:#45607e}.event-card .meta-row .icon,.booking-row .meta-row .icon{color:#46688c}.event-price,.booking-end strong{font-weight:850;font-size:18px;color:#051c40}.event-type{color:#076edf}.event-card .card-chevron{color:#356391}.booking-status{color:#355173}.booking-status.status-approved{color:#087a44}.booking-status.status-payment_pending,.booking-status.status-reserved_unpaid{color:#996400}.booking-end{border-color:#d5dfec}.booking-link{color:#056ade;font-weight:750}.event-content h3{font-weight:850}.event-image .state-badge{background:#e7efff;color:#082953}
.featured-event{border-color:#34c3ff;box-shadow:0 0 0 3px #149de30c,0 12px 34px #008acc22}.featured-event:after{background:linear-gradient(180deg,#001b3720 0%,#001b3740 23%,#001126e8 60%,#001126 100%)}.featured-image .photo-image{object-position:52% 32%}.featured-content .eyebrow{font-size:12px;letter-spacing:1px}.featured-state{display:inline-flex;align-items:center;border-left:3px solid var(--yellow);padding-left:8px;font-weight:750}.featured-content .primary{min-height:50px;font-size:16px}.featured-facts .meta-row{font-weight:650}.featured-title h2{font-weight:900;letter-spacing:-.8px}
.detail-cover{height:370px}.detail-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#03182d90,transparent 60%);pointer-events:none}.detail-cover>.badge{z-index:3}.detail-main h1{font-size:40px;font-weight:900}.detail-facts .meta-row:last-child{font-size:23px;font-weight:850}.detail-facts .meta-row:last-child .icon{margin-top:7px}.booking-state{background:linear-gradient(145deg,#0c2c48,#061c32);border-color:#23455f;box-shadow:0 8px 24px #0002}.booking-state .status-pill{font-size:17px}.booking-state>.secondary,.booking-state>.danger{background:transparent;border-color:#2a4964;color:#bcd0e5;font-size:13px;min-height:44px}.booking-state>.primary{min-height:52px}.location-card{background:linear-gradient(125deg,#0d2d49,#061c31)}.rules-card{background:#062039}.image-disclaimer{font-size:11px}.description-block h2{font-size:22px}.description{font-size:15px}
.profile-heading{padding:24px;background:linear-gradient(130deg,#0d3d64,#03213e);border:1px solid #275071;border-radius:14px;margin:20px 0}.profile-avatar{border:3px solid #eaf2ff;background:linear-gradient(135deg,#1767a8,#031931);box-shadow:0 0 25px #23a0ff26;color:#fff}.profile-heading h2{font-size:29px}.profile-disclosure{background:#07233d;border:1px solid #254762;border-radius:10px;margin:12px 0;padding:18px 20px}.profile-disclosure summary{list-style:none;display:flex;align-items:center;gap:12px;cursor:pointer;min-height:32px;font-size:15px;font-weight:750}.profile-disclosure summary::-webkit-details-marker{display:none}.profile-disclosure summary .icon{color:#93bfe9}.profile-disclosure summary .icon:last-child{margin-left:auto;width:17px;transition:transform .2s}.profile-disclosure[open] summary .icon:last-child{transform:rotate(90deg)}.profile-disclosure .facts{margin-top:24px}.profile-disclosure .stats{margin:20px 0 0;gap:0;background:#041b32;border-radius:9px}.stats>div{background:none;border:0;border-radius:0;padding:18px 8px}.stats>div+div{border-left:1px solid #254762}.stats strong{font-size:29px}.stats span{font-size:11px}.history-list{margin-top:12px}
.login-layout{overflow:hidden;gap:0;border-radius:16px;border:1px solid #2c4c6a;box-shadow:0 18px 60px #0003}.login-card{border:0;border-radius:0;padding:42px;background:linear-gradient(140deg,#0d2e4b,#03172b)}.login-card>.brand{margin-bottom:25px}.login-card>.eyebrow{margin-bottom:12px}.login-card h1{font-size:42px;font-weight:900;max-width:370px}.login-art{border-radius:0}.login-art>.photo img{opacity:1}.login-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#021428,transparent 80%)}.login-art>div:last-child{z-index:3}.dev-disclosure{border-top:1px solid #29435b;margin-top:26px;padding-top:16px;color:#a9bfd4;font-size:12px}.dev-disclosure summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:10px}.dev-disclosure summary:before{content:'+';font-size:21px}.dev-disclosure[open] summary:before{content:'−'}.demo-login{margin:0;padding:10px 0;border:0}.demo-login>button{background:#133956;color:#dfeaf7;box-shadow:none;border:1px solid #385b77;font-size:13px}.modal-heading{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:18px}.modal-heading h2{margin:0}.modal-heading button{padding:4px;width:44px;min-width:44px;font-size:23px}.financial-modal{max-height:calc(100dvh - 32px);overflow-y:auto}.refund-form h3{display:none}.refund-form{display:grid;gap:16px}.refund-form label{font-size:14px}.refund-form button,.payment-content>.primary{width:100%}.payment-content .price{color:#fff;font-size:32px;font-weight:800}.modal::backdrop{background:#000e20cc;backdrop-filter:blur(4px)}
body[data-mode=mini] #app{background:radial-gradient(ellipse at 95% 12%,#06426c66,transparent 43%),#02182e}body[data-mode=mini] .header{background:transparent}body[data-mode=mini] .header-inner{min-height:78px;padding:calc(8px + env(safe-area-inset-top)) 16px 6px;gap:12px}body[data-mode=mini] .brand-logo{width:58px;height:58px;border-radius:8px}body[data-mode=mini] .brand{gap:9px}body[data-mode=mini] .brand-wordmark{font-size:15px}body[data-mode=mini] .avatar-small{width:36px;height:36px}body[data-mode=mini] main{padding:0 16px calc(var(--nav-height) + 32px + env(safe-area-inset-bottom));min-height:calc(100dvh - 98px)}body[data-mode=mini] .greeting{padding:12px 0 18px}body[data-mode=mini] .greeting>p:first-child{font-size:18px;color:#fff}body[data-mode=mini] .greeting h1{font-size:30px;font-weight:900;margin:0 0 4px}body[data-mode=mini] .greeting .muted{font-size:14px}body[data-mode=mini] .featured-event{min-height:320px}body[data-mode=mini] .featured-content{padding:96px 16px 16px}body[data-mode=mini] .featured-title h2{font-size:29px;margin:0 0 12px}body[data-mode=mini] .featured-content .meta-row{font-size:13px}body[data-mode=mini] .featured-facts{gap:16px;margin:4px 0 10px}body[data-mode=mini] .featured-state{margin:0 0 12px;font-size:12px}body[data-mode=mini] .section-heading{margin:24px 0 10px}body[data-mode=mini] .section-heading h2{font-size:20px;font-weight:850}body[data-mode=mini] .date-strip{gap:6px;padding-bottom:7px}body[data-mode=mini] .date-pill{min-width:58px;min-height:75px;padding:7px 5px;border-color:#143957}body[data-mode=mini] .date-pill strong{font-size:23px}body[data-mode=mini] .date-pill:first-child{min-width:58px}body[data-mode=mini] .date-pill small{font-size:10px}body[data-mode=mini] .date-pill:first-child small{max-width:50px;line-height:1.1;font-size:9px}body[data-mode=mini] .chip{padding:9px 12px;font-size:12px;min-height:44px}body[data-mode=mini] .filters{margin-bottom:12px}
body[data-mode=mini] .event-card{grid-template-columns:94px minmax(0,1fr);padding:7px;gap:10px;border-radius:11px}body[data-mode=mini] .event-image{min-height:128px;border-radius:7px;overflow:hidden}body[data-mode=mini] .event-content{padding:5px 12px 5px 0}body[data-mode=mini] .event-content h3{font-size:17px;line-height:1.16;margin-bottom:8px}body[data-mode=mini] .event-content .meta-row{font-size:11px;line-height:1.45;gap:5px}body[data-mode=mini] .event-content .meta-row .icon{width:14px;height:14px}body[data-mode=mini] .event-bottom{margin-top:7px}body[data-mode=mini] .event-price{font-size:15px}body[data-mode=mini] .event-image>.badge{font-size:9px;padding:4px;line-height:1.25}body[data-mode=mini] .card-chevron{right:5px;top:12px;color:#456c98}
body[data-mode=mini] .nav{height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#021326f5;border-top:1px solid #295370;box-shadow:0 -6px 25px #0004;backdrop-filter:blur(16px)}body[data-mode=mini] .nav a{font-size:11px;color:#93a9c3;justify-content:center;padding:4px 0}body[data-mode=mini] .nav a.selected{color:#ffe500;font-weight:800}body[data-mode=mini] .nav .icon{height:24px;width:24px}body[data-mode=mini] .nav a.selected .icon{filter:drop-shadow(0 0 5px #ffe50035)}body[data-mode=mini] .back-link{margin:0 0 6px;min-height:36px}body[data-mode=mini] .detail-cover{height:235px;margin:0 -16px;border-radius:0}body[data-mode=mini] .detail-cover>.badge{top:16px;right:16px;font-size:12px}body[data-mode=mini] .detail-layout{gap:16px;padding-top:18px}body[data-mode=mini] .detail-main>h1{font-size:29px;font-weight:900;line-height:1.1}body[data-mode=mini] .detail-facts{gap:5px}body[data-mode=mini] .detail-facts .meta-row{font-size:14px;line-height:1.5;margin-bottom:5px}body[data-mode=mini] .detail-facts .meta-row:last-child{font-size:21px;font-weight:850}body[data-mode=mini] .booking-state{padding:16px;gap:10px}body[data-mode=mini] .location-card{padding:17px}body[data-mode=mini] .description-block{padding-top:18px}body[data-mode=mini] .rules-card{padding:15px}body[data-mode=mini] .page-title{margin:16px 0}body[data-mode=mini] .page-title h1{font-size:29px;font-weight:900}body[data-mode=mini] .booking-tabs{gap:6px;margin-bottom:12px}body[data-mode=mini] .booking-tabs .chip{padding:9px 10px;font-size:11px;flex:1}body[data-mode=mini] .booking-list{margin-top:12px}body[data-mode=mini] .booking-row{grid-template-columns:80px minmax(0,1fr);padding:12px;gap:12px}body[data-mode=mini] .booking-copy h2{font-size:18px}body[data-mode=mini] .booking-date{font-size:11px;font-weight:650}body[data-mode=mini] .booking-status{font-size:12px}body[data-mode=mini] .booking-end strong{font-size:17px}body[data-mode=mini] .booking-image{height:118px}body[data-mode=mini] .profile-page>h1{font-size:29px}body[data-mode=mini] .profile-heading{padding:20px 16px;gap:15px;margin:16px 0}body[data-mode=mini] .profile-heading h2{font-size:25px}body[data-mode=mini] .profile-card{padding:16px}body[data-mode=mini] .stats{grid-template-columns:repeat(4,1fr)}body[data-mode=mini] .stats span{font-size:10px;overflow-wrap:anywhere}body[data-mode=mini] .stats strong{font-size:24px}body[data-mode=mini] .profile-disclosure{padding:16px}
body[data-mode=mini] .login-layout{display:flex;flex-direction:column;margin:8px 0 0}body[data-mode=mini] .login-art{display:block;order:-1;min-height:205px}body[data-mode=mini] .login-art>.photo img{object-position:center 37%}body[data-mode=mini] .login-art>div:last-child{bottom:20px;left:20px}body[data-mode=mini] .login-art h2{font-size:39px;margin:0}body[data-mode=mini] .login-art .eyebrow{font-size:10px;margin-bottom:8px}body[data-mode=mini] .login-card{padding:22px}body[data-mode=mini] .login-card>.brand{display:none}body[data-mode=mini] .login-card h1{font-size:31px}body[data-mode=mini] .login-card>.eyebrow{font-size:11px}body[data-mode=mini] .dev-disclosure{margin-top:18px;padding-top:5px}
body[data-mode=web] .web-hero{min-height:580px;padding-top:60px}body[data-mode=web] .hero-copy h1{font-size:clamp(72px,8.2vw,118px);font-weight:950;line-height:.93;text-shadow:0 3px 24px #00152c44}body[data-mode=web] .hero-image .photo-image{object-position:70% 45%}body[data-mode=web] .hero-copy .lead{font-size:20px;max-width:460px}body[data-mode=web] .web-event-section{padding-top:35px;padding-bottom:32px}body[data-mode=web] .web-event-section .event-image{height:180px}body[data-mode=web] .how-section{padding-top:22px;padding-bottom:38px}body[data-mode=web] .community-banner{min-height:205px}body[data-mode=web] .section-heading h2,body[data-mode=web] .how-section>h2{font-size:29px}body[data-mode=web] .schedule-page .event-content{min-height:185px}body[data-mode=web] .schedule-page .event-image{height:200px}
@media(max-width:600px){.financial-modal{width:100%;max-width:100%;margin:auto 0 0;border-radius:20px 20px 0 0;padding:22px 20px calc(24px + env(safe-area-inset-bottom));max-height:90dvh}.detail-layout{display:flex}.detail-main{display:contents}.detail-main>h1{order:1}.detail-facts{order:2}.detail-side{order:3}.detail-main>.location-card{order:4}.description-block{order:5}.rules-card{order:6}.detail-main>.eyebrow{display:none}.brand-logo{width:52px;height:52px}.brand-wordmark{font-size:14px}body[data-mode=web] .hero-copy h1{font-size:65px}body[data-mode=web] .hero-copy .lead{font-size:17px}body[data-mode=web] .web-hero{padding-top:42px;min-height:550px}.login-layout{gap:0}.login-card{padding:24px}.login-card h1{font-size:32px}}

body[data-mode=mini] .profile-heading{display:block}body[data-mode=mini] .profile-avatar{margin-bottom:14px}body[data-mode=mini] .profile-heading h2{font-size:25px;overflow-wrap:normal;line-height:1.15}body[data-mode=mini] .profile-heading .badge{font-size:11px}

.hero-copy h1,.community-copy h2,.how-section>h2,.web-event-section .section-heading h2{transform:skewX(-5deg);transform-origin:left bottom}.hero-image .photo-image{filter:saturate(.72) contrast(1.12) brightness(.76)}body[data-mode=mini] .booking-image{height:135px}

body[data-mode=mini] .featured-event{min-height:300px}body[data-mode=mini] .featured-content{padding-top:84px}body[data-mode=mini] .featured-title h2{font-size:27px}body[data-mode=mini] .featured-state{position:absolute;top:12px;right:12px;max-width:85%;margin:0;padding:5px 8px;background:var(--yellow);color:var(--ink);border:0;border-radius:6px;font-size:11px;box-shadow:0 2px 8px #0002}
