:root{--bg:#080808;--surface:#121210;--panel:#191815;--gold:#d7ad5c;--gold2:#e2be75;--text:#f4efe7;--muted:#b9b2a7;--line:rgba(215,173,92,.24);--danger:#b85b55;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.09'/%3E%3C/svg%3E")}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.08;margin:0 0 .65em}h1{font-size:clamp(3rem,7vw,6.8rem)}h2{font-size:clamp(2.2rem,4.5vw,4.2rem)}h3{font-size:1.65rem}p{color:var(--muted)}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{height:94px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(8,8,8,.94);backdrop-filter:blur(14px);position:relative;z-index:20}.brand{width:108px;height:80px;overflow:hidden;display:grid;place-items:center}.brand img{width:100%;height:100%;object-fit:contain}.main-nav{display:flex;align-items:center;gap:30px}.main-nav>a,.nav-link{font-size:.74rem;text-transform:uppercase;letter-spacing:.16em;text-decoration:none;color:#d7d0c6;background:none;border:0;cursor:pointer;padding:8px 0}.main-nav>a:hover,.nav-link:hover,.text-link:hover{color:var(--gold2)}.main-nav form{margin:0}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:25px;height:1px;background:var(--gold);margin:6px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;background:linear-gradient(135deg,#e2be75,#c99742);border:1px solid #e7c67f;border-radius:3px;color:#090909;text-decoration:none;text-transform:uppercase;font-size:.76rem;font-weight:750;letter-spacing:.14em;cursor:pointer;box-shadow:0 12px 40px rgba(201,151,66,.12);transition:.2s ease}.button:hover{transform:translateY(-2px);filter:brightness(1.08)}.button-small{min-height:40px;padding:0 20px}.button-outline{background:transparent;color:var(--gold2)}.button-danger{background:transparent;border-color:#92504b;color:#e7a19b}.full{width:100%}.text-link{color:var(--gold2);font-size:.8rem;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;display:inline-block;margin-top:16px}.eyebrow,.step-label{color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 18px}.eyebrow:before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:10px}.eyebrow.dark{color:#3b2b10}.hero,.event-hero{height:min(790px,calc(100vh - 94px));min-height:620px;position:relative;display:flex;align-items:center;overflow:hidden}.hero>img,.event-hero>img,.booking-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,4,4,.97) 0%,rgba(4,4,4,.75) 38%,rgba(4,4,4,.15) 72%),linear-gradient(0deg,rgba(4,4,4,.72),transparent 45%)}.hero-content{position:relative;z-index:1}.hero-content h1{max-width:900px}.hero-content h1 em{color:var(--gold2);font-style:italic}.hero-content>p:not(.eyebrow){font-size:clamp(1rem,1.7vw,1.25rem);max-width:620px}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:32px}.section{padding:110px 0}.section-dark{background:var(--surface);border-block:1px solid rgba(255,255,255,.04)}.section-gold{background:#c99d4e;color:#171207}.section-gold p{color:#392d1a}.section-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:45px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{margin:0}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.event-card{border:1px solid var(--line);background:var(--surface)}.event-card>div{padding:28px}.event-card h3 a{text-decoration:none}.event-image{display:block;position:relative;aspect-ratio:16/10;overflow:hidden}.event-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.event-image:hover img{transform:scale(1.035)}.event-image span{position:absolute;top:18px;left:18px;background:#0b0b09;color:var(--gold2);padding:10px 13px;font-family:Georgia,serif;border:1px solid var(--line)}.event-meta{color:var(--gold2);font-family:Georgia,serif}.event-meta.large{font-size:1.2rem}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:45px}.experience-grid article{padding:46px;background:var(--surface)}.experience-grid span,.steps span{color:var(--gold);font-family:Georgia,serif;font-size:1.1rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.split>div>p{font-size:1.1rem}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:50px}.steps li{border-top:1px solid rgba(30,20,5,.3);padding-top:25px}.steps strong{display:block;font-family:Georgia,serif;font-size:1.35rem;margin-top:25px}.faq-teaser{display:flex;align-items:center;justify-content:space-between;gap:40px}.page-hero{padding:120px 0 70px}.page-hero.compact{padding-bottom:45px}.page-hero>p:last-child{font-size:1.15rem;max-width:660px}.page-hero h1{font-size:clamp(3.3rem,7vw,6rem)}.event-detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:7vw}.panel{background:linear-gradient(145deg,#191815,#11110f);border:1px solid var(--line);padding:32px;border-radius:5px}.panel dl,.detail-list{display:grid;grid-template-columns:1fr auto;gap:12px 24px}.panel dt,.detail-list dt{color:var(--muted)}.panel dd,.detail-list dd{margin:0;text-align:right}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:38px 0}.price{font-family:Georgia,serif;font-size:1.8rem;color:var(--gold2)}.price small{font-family:inherit;font-size:.8rem;color:var(--muted)}.prose{max-width:760px}.prose p{font-size:1.08rem}.prose a{color:var(--gold2)}.legal h2{font-size:1.8rem;margin-top:2em}.center{text-align:center}.empty-state{border:1px solid var(--line);padding:60px;text-align:center;grid-column:1/-1}.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid var(--line);padding:0}.faq-list summary{padding:24px 0;cursor:pointer;font-family:Georgia,serif;font-size:1.3rem;list-style:none}.faq-list summary:after{content:"+";float:right;color:var(--gold)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 0 24px;margin:0}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.form{display:grid;gap:18px}.form label,.booking-column>label,.field-row label{display:grid;gap:7px;font-size:.78rem;color:#ddd7cd}.form input,.form select,.form textarea,.booking-column input,.booking-column select,.booking-column textarea{width:100%;color:var(--text);background:#22211e;border:1px solid rgba(255,255,255,.12);padding:13px 14px;border-radius:3px;outline:none}.form input:focus,.form textarea:focus,.booking-column input:focus,.booking-column select:focus,.booking-column textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(215,173,92,.09)}select{color-scheme:dark}.check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px!important}.check input{width:auto!important}.auth-wrap{min-height:calc(100vh - 94px);padding:80px 20px;display:grid;place-items:center;background:radial-gradient(circle at 50% 15%,rgba(201,151,66,.13),transparent 38%)}.auth-card{width:min(100%,500px);padding:44px}.auth-card h1{font-size:3rem}.booking-banner{height:380px;position:relative;display:flex;align-items:end;padding-bottom:45px}.booking-banner .container{position:relative}.booking-banner h1{font-size:clamp(2.8rem,5vw,5rem)}.booking-layout{display:grid;grid-template-columns:1fr 1.1fr .9fr;border:1px solid var(--line);margin-block:38px 80px;background:#0f0f0d}.booking-column{padding:32px;border-right:1px solid var(--line);display:grid;align-content:start;gap:18px}.booking-column:last-child{border:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.step-label{font-family:Georgia,serif;font-size:1rem}.step-label span,.booking-column label>span{color:var(--gold)}.package-options{display:grid;gap:12px}.package-option{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;border:1px solid rgba(255,255,255,.13);padding:17px;cursor:pointer;border-radius:4px}.package-option:has(input:checked){border-color:var(--gold);background:rgba(215,173,92,.05)}.package-option input{position:absolute;opacity:0}.radio-dot{width:16px;height:16px;border:1px solid #777;border-radius:50%;margin-top:5px}.package-option input:checked+.radio-dot{border:5px solid var(--gold)}.package-copy{display:grid}.package-copy strong{font-family:Georgia,serif;font-size:1.05rem}.package-copy small{color:var(--muted);margin-top:5px}.package-price{color:var(--gold2);white-space:nowrap}.package-price small{color:var(--muted)}.booking-note{border:1px solid var(--line);background:rgba(215,173,92,.05);padding:15px;color:var(--muted);font-size:.88rem}.warning{border-color:#8e6734}.success-note{border-color:#4d805d}.summary-event{display:grid;grid-template-columns:80px 1fr;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}.summary-event img{width:80px;height:58px;object-fit:cover}.summary-event div{display:grid}.summary-event small{color:var(--muted)}.booking-summary dl{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0}.booking-summary dd{margin:0;text-align:right}.booking-summary dt{color:var(--muted)}.summary-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:18px}.summary-total strong{font-family:Georgia,serif;color:var(--gold2);font-size:1.9rem}.terms{font-size:.75rem!important;color:var(--muted)!important}.secure-note{text-align:center;color:#777}.payment-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:20px;padding-bottom:100px}.booking-receipt{align-self:start}.swish-panel{text-align:center;padding:44px}.swish-panel>p{margin-bottom:25px}.swish-mark{font-weight:800;font-size:1.25rem;letter-spacing:.08em}.swish-mark span{display:inline-block;width:25px;height:25px;border:5px solid var(--gold);border-right-color:#5cc1cf;border-bottom-color:#7b6bd5;border-radius:50%;vertical-align:middle;margin-right:8px}.qr{width:min(300px,100%);margin:25px auto;background:#fff;padding:12px;border-radius:10px;box-shadow:0 0 35px rgba(215,173,92,.2)}.swish-details{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin:20px 0}.swish-details div{padding:16px;border-right:1px solid var(--line);display:grid}.swish-details div:last-child{border:0}.swish-details small{color:var(--gold);text-transform:uppercase;letter-spacing:.1em}.swish-details strong{font-family:Georgia,serif}.status-grid{max-width:840px}.status-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:30px}.status-row div{display:grid;gap:5px}.status{display:inline-block;padding:6px 10px;border:1px solid #766540;color:#d7c9aa;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;border-radius:20px}.status.paid,.status.confirmed{border-color:#4d805d;color:#92cea5}.status.rejected,.status.cancelled{border-color:#8d4b47;color:#e0a29d}.account-list{display:grid;gap:16px}.account-booking{display:grid;grid-template-columns:1.3fr .8fr 1fr auto;align-items:center;gap:25px}.account-booking h2{font-size:1.5rem;margin:.2em 0}.account-booking dl{margin:0}.flash{position:relative;z-index:30;padding:15px max(20px,calc((100vw - var(--max))/2));border-bottom:1px solid}.flash.success{background:#16301f;border-color:#4d805d}.flash.error{background:#3a1d1a;border-color:#8d4b47}.flash ul{margin:5px 0}.site-footer{border-top:1px solid var(--line);padding:70px max(24px,calc((100vw - var(--max))/2)) 25px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px;background:#0b0b0a}.site-footer>div:first-child img{width:105px}.site-footer h2{font-family:inherit;font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}.site-footer a,.site-footer p{display:block;color:var(--muted);text-decoration:none;margin:8px 0}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;display:flex;gap:24px}.footer-bottom span{margin-right:auto;color:#777}
@media(max-width:960px){.menu-toggle{display:block}.main-nav{position:absolute;display:none;top:94px;left:0;right:0;background:#0b0b0a;padding:25px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav form,.nav-link{width:100%;text-align:left}.event-grid{grid-template-columns:repeat(2,1fr)}.booking-layout{grid-template-columns:1fr 1fr}.booking-summary{grid-column:1/-1;border-top:1px solid var(--line)}.payment-layout,.event-detail{grid-template-columns:1fr}.account-booking{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container{width:min(calc(100% - 28px),var(--max))}.site-header{height:76px;padding-inline:14px}.brand{height:66px;width:85px}.main-nav{top:76px}.hero,.event-hero{min-height:630px;height:calc(100svh - 76px);align-items:end;padding-bottom:65px}.hero-shade{background:linear-gradient(0deg,rgba(4,4,4,.98) 0%,rgba(4,4,4,.56) 67%,rgba(4,4,4,.2))}.hero-content h1{font-size:3.3rem}.section{padding:72px 0}.section-heading{display:block}.event-grid,.experience-grid,.split,.contact-grid,.package-grid{grid-template-columns:1fr}.event-grid{gap:18px}.experience-grid article{padding:30px}.steps{grid-template-columns:1fr 1fr}.faq-teaser{align-items:flex-start;flex-direction:column}.page-hero{padding:85px 0 40px}.page-hero h1{font-size:3.4rem}.event-hero .hero-content{padding-bottom:35px}.booking-banner{height:330px}.booking-layout{grid-template-columns:1fr;margin-top:14px}.booking-column{border-right:0;border-bottom:1px solid var(--line);padding:24px 18px}.field-row{grid-template-columns:1fr 1fr}.package-option{grid-template-columns:auto 1fr}.package-price{grid-column:2}.payment-layout{padding-bottom:70px}.swish-panel{padding:28px 18px}.swish-details{grid-template-columns:1fr}.swish-details div{border-right:0;border-bottom:1px solid var(--line)}.account-booking{grid-template-columns:1fr}.status-row{flex-direction:column}.site-footer{grid-template-columns:1fr;padding-top:50px}.footer-bottom{flex-wrap:wrap}.footer-bottom span{width:100%}.auth-card{padding:30px 22px}}
.admin-body{background:#0b0b0a}.admin-shell{display:grid;grid-template-columns:230px 1fr;gap:45px;padding:55px 0 100px;min-height:75vh}.admin-nav{display:flex;flex-direction:column;gap:4px;align-self:start;position:sticky;top:20px}.admin-nav a{padding:10px 12px;text-decoration:none;color:var(--muted);border-left:1px solid var(--line)}.admin-nav a:hover{color:var(--gold2);background:rgba(215,173,92,.05)}.admin-main h1{font-size:clamp(2.7rem,5vw,4.5rem)}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.admin-heading h1,.admin-heading h2{margin:0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-grid article{background:var(--panel);border:1px solid var(--line);padding:24px;display:grid;gap:15px}.stat-grid small{color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.stat-grid strong{font-family:Georgia,serif;color:var(--gold2);font-size:2rem}.admin-section{margin-top:55px}.table-wrap{overflow-x:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:#11110f}th,td{text-align:left;padding:15px;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:top}th{color:var(--gold);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}td{font-size:.88rem}td small{color:var(--muted)}td a{color:var(--gold2)}.admin-form{display:grid;gap:20px}.admin-form .panel h2{font-size:1.7rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:grid;gap:7px;font-size:.78rem;color:var(--muted)}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select,.admin-row input,.filter-bar input,.filter-bar select,.admin-package input{background:#24231f;color:var(--text);border:1px solid rgba(255,255,255,.13);padding:12px;min-width:0}.admin-row{display:grid;grid-template-columns:1fr 1fr .7fr auto;gap:10px;margin-bottom:10px}.icon-button{background:transparent;color:var(--gold);border:1px solid var(--line);font-size:1.4rem;cursor:pointer}.admin-package-list{display:grid;gap:10px}.admin-package{display:grid;grid-template-columns:auto 1.2fr repeat(3,.7fr);align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);padding:10px}.admin-package>input:first-child{width:18px;height:18px}.danger-zone{border-top:1px solid #572f2c;margin-top:40px;padding-top:25px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter-bar input{flex:1;min-width:230px}.admin-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-detail-grid .panel dl{grid-template-columns:.7fr 1.3fr}.admin-actions{margin-top:20px}.pagination{margin-top:25px}.pagination svg{width:18px}@media(max-width:960px){.admin-shell{grid-template-columns:1fr}.admin-nav{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.admin-shell{padding-top:30px}.admin-nav{grid-template-columns:1fr 1fr}.admin-heading{align-items:flex-start;flex-direction:column}.stat-grid,.form-grid,.admin-detail-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.admin-row{grid-template-columns:1fr}.admin-package{grid-template-columns:auto 1fr}.admin-package input:not(:first-child){grid-column:2}.table-wrap{margin-inline:-14px}.filter-bar>*{width:100%}}
.site-footer>div:first-child img{height:auto}
