/* Shared public pages: circus identity, readable content, no fixed text heights. */
:root{--ink:#171717;--paper:#f4f2ed;--red:#af2334;--red-light:#ea8188;--muted:#625f5a;--line:#cfccc5;--max:1180px;color-scheme:light}
*{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}
button,input,select{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,summary{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}svg.lucide{width:20px;height:20px;flex:none;stroke-width:1.7}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #198774;outline-offset:4px}
.container,.nav{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:20;background:#171717;color:#fff;border-bottom:1px solid #ffffff28}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;align-items:center;gap:12px;font:900 22px/1 Georgia,serif;text-transform:uppercase;text-decoration:none;flex:none}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--red);border:1px solid #eeaeac;transform:rotate(-5deg)}
.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{font-size:14px;text-decoration:none}.nav-links a:hover{color:#ee989e}
.nav-links .nav-cta{display:flex;align-items:center;gap:10px;border-bottom:1px solid #ef9ea3;padding-block:8px}
.icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #ffffff50;background:transparent;color:inherit}
.menu-toggle{display:none}.menu-toggle .lucide-x{display:none}.menu-open .lucide-menu{display:none}.menu-open .lucide-x{display:block}
.skip-link{position:fixed;top:10px;left:15px;z-index:100;background:#fff;padding:10px 18px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.eyebrow{margin:0 0 16px;text-transform:uppercase;font-size:12px;font-weight:700;color:var(--red)}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.13;overflow-wrap:break-word}h2{font-size:44px;margin:0}h3{font-size:24px;margin:0 0 16px}
.home-hero{position:relative;isolation:isolate;background:#171717;color:#fff;min-height:590px;max-height:850px;height:calc(88svh - 76px);display:flex;flex-direction:column;justify-content:center}
.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 47%;z-index:-2}
.home-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,14,14,.9),rgba(14,14,14,.64) 48%,rgba(14,14,14,.08))}
.hero-content{padding-block:54px 84px}.home-hero .eyebrow{color:#f3a4ac}.home-hero h1{font-size:112px;margin:0 0 10px;text-transform:uppercase}.hero-quest{font:700 40px/1.15 Georgia,serif;margin:0 0 24px}.hero-lead{font-size:19px;line-height:1.65;margin:0 0 30px;max-width:540px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:12px 24px;border:1px solid transparent;background:var(--red);color:white;text-decoration:none;font-weight:700;font-size:14px;line-height:1.45;border-radius:2px;transition:background .18s ease}
.button:hover{background:#901b2b}.button.secondary{background:transparent;border-color:currentColor}.button.secondary:hover{background:#ffffff14}.button:disabled{opacity:.55;cursor:wait}
.booking-status{display:flex;align-items:center;gap:9px;font-size:13px;margin:24px 0 0;color:#d9eee6}.booking-status span{width:7px;height:7px;flex:none;border-radius:50%;background:#8abdaa}
.hero-bottom{position:absolute;bottom:0;left:0;right:0;padding-block:19px;display:flex;gap:20px;justify-content:space-between;align-items:center;border-top:1px solid #ffffff35;font-size:13px}.hero-bottom a{display:flex;gap:12px;align-items:center;text-decoration:none}
.paper-section,.dark-section{padding-block:80px}.dark-section{background:#1c1c1c;color:var(--paper)}.dark-section .eyebrow{color:var(--red-light)}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:44px}.section-heading>p{color:var(--muted);margin:0;max-width:420px}
.quest-info{display:grid;grid-template-columns:1fr 1fr;gap:90px}.quest-description p{color:var(--muted);max-width:570px;margin:0 0 20px}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:700}
.mode-list{margin:0;border-top:2px solid var(--ink)}.mode-list>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.mode-list dt{font:700 22px/1.3 Georgia,serif}.mode-list dd{margin:0;color:var(--red);font-weight:700}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:0 0 36px;padding:0;list-style:none}.steps li{border-top:1px solid #ffffff40;padding-top:22px}.step-number{display:block;font:700 28px/1 Georgia,serif;color:var(--red-light);margin-bottom:24px}.steps p{margin:0;color:#c8c8c5;font-size:15px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.faq-grid details{border-top:1px solid var(--line);padding:22px 0}.faq-grid summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font:700 20px/1.5 Georgia,serif}.faq-grid summary::-webkit-details-marker{display:none}.faq-grid summary:after{content:'+';flex:none;color:var(--red)}.faq-grid details[open] summary:after{content:'−'}.faq-grid p{color:var(--muted);font-size:15px;margin:16px 0 0}
.contacts-section{border-top:6px solid var(--red)}.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contacts-grid address{font-style:normal;font-size:20px;margin:28px 0}.contacts-grid address span{font-size:15px;color:#babab6}
.contact-links{border-top:1px solid #ffffff40}.contact-links>a{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:25px 0;text-decoration:none;border-bottom:1px solid #ffffff40}.contact-links small{display:block;color:#c4c4c0;margin-bottom:9px}.contact-links strong{font:700 27px/1.3 Georgia,serif}.contact-links svg{color:var(--red-light)}
.site-footer{padding:36px 0;background:#121212;color:#c7c7c3;font-size:13px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-links{display:flex;flex-wrap:wrap;gap:16px 26px}.footer-links a{display:flex;align-items:center;gap:6px}.footer-links svg{width:15px;height:15px}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:22px;border-top:1px solid #ffffff25;margin-top:28px;padding-top:24px;font-size:12px;color:#969693}
.page-intro{padding-block:62px 44px;border-bottom:1px solid var(--line)}.breadcrumbs{font-size:13px;color:var(--muted);margin:0 0 24px}.page-intro h1{font-size:54px;margin:0 0 24px;max-width:820px}.page-intro .lead{max-width:690px;font-size:19px;color:var(--muted);margin:0}
.document-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:70px;padding-block:48px 80px}.document-nav{align-self:start;position:sticky;top:108px;display:grid;gap:12px;font-size:14px}.document-nav a{padding-block:7px}.document-content{min-width:0;max-width:800px}.document-content section{margin-bottom:42px;scroll-margin-top:110px}.document-content h2{font-size:30px;margin:0 0 20px}.document-content h3{font-size:23px;margin:24px 0 12px}.document-content p,.document-content li{color:#403e3a}.document-content li{margin-bottom:12px}.document-content ul{padding-left:22px}.document-content .mode-list{margin-bottom:30px}
.notice{border-left:4px solid var(--red);background:#e9e6df;padding:20px 24px;margin:24px 0}.notice p{margin:0}.notice p+p{margin-top:12px}.notice strong{color:var(--ink)}.terms-list{padding:0;list-style:none;border-top:1px solid var(--line)}.terms-list li{display:grid;grid-template-columns:180px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:18px 0;margin:0}.terms-list b{color:var(--ink)}
.acknowledgment{border-top:2px solid var(--ink);padding-top:28px}.acknowledgment p{font-size:14px}.form-message{font-size:14px;min-height:24px;margin:16px 0 0}.form-message.error{color:#991c2b}.form-message.success{color:#235e4b}
.payment-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:80px;padding-block:48px 80px;align-items:start}.payment-form{max-width:610px}.field{display:block;margin-bottom:22px;font-weight:700;font-size:14px}.field input{display:block;width:100%;min-height:50px;padding:12px 14px;border:1px solid #95938d;background:white;border-radius:2px;margin-top:8px;font-weight:400;color:var(--ink)}.field small{font-weight:400;color:var(--muted);display:block;margin-top:8px}.check-row{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;margin:22px 0}.check-row input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--red)}
.payment-summary{border-top:3px solid var(--red);padding-top:24px}.payment-summary h2{font-size:25px}.payment-summary .amount{font:700 44px/1.2 Georgia,serif;margin:18px 0}.payment-summary p{font-size:14px;color:var(--muted)}.payment-result{border-top:2px solid #28765b;padding-top:24px}.payment-result h2{font-size:32px}.reference{font:700 26px/1.4 monospace;overflow-wrap:anywhere}.payment-result .hero-actions{margin-block:24px}.payment-result p{color:var(--muted)}
@media(max-width:1000px){.nav-links{gap:17px}.nav-links a{font-size:13px}.quest-info{gap:45px}.document-layout{gap:38px;grid-template-columns:190px minmax(0,1fr)}.payment-layout{gap:40px;grid-template-columns:minmax(0,1fr) 300px}.contacts-grid{gap:40px}.contact-links strong{font-size:23px}.home-hero h1{font-size:96px}}
@media(max-width:800px){.container,.nav{width:calc(100% - 40px)}.nav{flex-wrap:wrap;gap:0;min-height:66px}.nav>.brand{margin:16px 0}.has-menu .menu-toggle{display:grid}.nav-links{width:100%;flex-wrap:wrap;padding:5px 0 18px;gap:14px 24px}.has-menu .nav-links{display:none}.has-menu.menu-open .nav-links{display:flex}.nav-links a{font-size:14px}.home-hero{height:auto;min-height:570px;max-height:none}.home-hero h1{font-size:82px}.hero-quest{font-size:34px}.hero-content{padding-block:64px 100px}.hero-lead{font-size:17px}.hero-art{object-position:64% center}.home-hero:after{background:linear-gradient(90deg,rgba(14,14,14,.87),rgba(14,14,14,.65) 60%,rgba(14,14,14,.28))}.section-heading{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:32px}.quest-info,.contacts-grid,.document-layout,.payment-layout{grid-template-columns:1fr;gap:38px}.steps{grid-template-columns:1fr;gap:26px}.steps li{padding-top:20px}.step-number{margin-bottom:16px}.steps h3{margin-bottom:12px}.paper-section,.dark-section{padding-block:56px}h2{font-size:36px}.faq-grid{grid-template-columns:1fr}.document-nav{position:static;display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);padding-bottom:22px}.page-intro{padding-block:38px 32px}.page-intro h1{font-size:42px}.payment-summary{grid-row:1}.payment-summary .amount{font-size:36px;margin:12px 0}.payment-summary .notice{margin-bottom:0}.footer-top{align-items:flex-start;flex-direction:column}.document-layout,.payment-layout{padding-block:30px 56px}.contact-links strong{font-size:26px}}
@media(max-width:480px){.container,.nav{width:calc(100% - 36px)}.home-hero{min-height:560px}.home-hero h1{font-size:58px}.hero-quest{font-size:30px}.hero-content{padding-top:42px}.hero-actions{display:grid}.button{padding-inline:17px}.hero-bottom{font-size:11px;gap:12px}.hero-bottom>span{max-width:190px}.hero-bottom a{gap:5px}.hero-bottom svg{width:16px}.hero-lead{font-size:16px}.page-intro h1{font-size:34px}.page-intro .lead{font-size:17px}h2{font-size:31px}.contact-links strong{font-size:23px}.document-content h2{font-size:27px}.terms-list li{grid-template-columns:1fr;gap:6px}.notice{padding:18px}.footer-links{gap:14px 20px}.brand{font-size:20px}.reference{font-size:22px}}
@media(max-width:480px) and (max-height:700px){.home-hero{min-height:0}.hero-content{padding-block:16px 54px}.home-hero .eyebrow{margin-bottom:8px}.home-hero h1{font-size:48px;margin-bottom:4px}.hero-quest{font-size:24px;margin-bottom:12px}.hero-lead{font-size:14px;margin-bottom:20px}.hero-actions{gap:8px}.hero-actions .button{min-height:44px;padding-block:9px}.hero-actions .secondary{min-height:36px;padding-block:6px}.booking-status{margin-top:14px}.home-hero+.paper-section{padding-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.payment-layout .button.secondary{color:var(--ink)}.payment-layout .button.secondary:hover{background:#1717170a}.payment-layout .button:disabled{cursor:not-allowed}.payment-times{font-size:14px;margin-bottom:24px}.payment-times p{margin:6px 0}.payment-refresh{width:52px;padding:12px}.payment-result .hero-actions{display:flex}.payment-result button.text-link{border:0;padding:4px 0;background:transparent;color:var(--ink)}
@media(max-width:800px){.payment-layout .payment-summary{grid-row:auto}}
@media print{.site-header,.site-footer,.document-nav,.acknowledgment,.skip-link{display:none}.container{width:100%}.document-layout{display:block;padding:20px 0}.page-intro{padding:0}.document-content{max-width:none}body{background:white;color:black}}
