:root{--cream:#faf7f1;--paper:#fffefa;--ink:#193a36;--muted:#6b7670;--red:#b72b31;--red-dark:#97232a;--gold:#b28a3e;--line:#e5e2d8;--soft-red:#f8ede6;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:102px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;font-weight:400}h2{font-size:clamp(36px,4vw,48px);line-height:1.13}h2 em{color:var(--red);font-weight:400}h3{line-height:1.3}strong{font-weight:700}fieldset{padding:0;border:0;margin:0;min-width:0}legend{font-size:18px;font-weight:700;margin-bottom:19px;padding:0;display:flex;align-items:center;gap:11px}::selection{background:#efcfb8;color:var(--ink)}:focus-visible{outline:3px solid #cc9c49;outline-offset:4px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px}[hidden]{display:none!important}.wrap{max-width:1216px;margin-inline:auto;padding-inline:36px}.icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:absolute;top:-100px;left:20px;z-index:200;background:var(--paper);padding:12px;border:1px solid var(--ink)}.skip-link:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--red);color:white;border:1px solid var(--red);border-radius:9px;min-height:56px;padding:15px 25px;font-size:16px;font-weight:700;line-height:1.2;transition:background .2s,transform .2s;white-space:normal;text-align:center}.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-2px)}.button-small{min-height:45px;padding:12px 19px;font-size:14px;gap:13px}.button-small .icon{width:18px;height:18px}.button-outline{background:transparent;color:var(--red);border-color:#ce797a}.button-outline:hover{background:#f2e3dc;color:var(--red-dark);border-color:var(--red-dark)}.text-button{padding:10px 0;background:none;border:0;color:var(--ink);font-size:15px;display:flex;gap:9px;align-items:center;border-bottom:1px solid #b7bbb0}.text-button:hover{color:var(--red);border-color:var(--red)}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--muted);line-height:1.5}.section{padding:76px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:13px}.section-heading>p{font-size:15px;color:var(--muted);line-height:1.65;text-align:right}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,247,241,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;flex-direction:column;line-height:1;flex-shrink:0}.brand-caption{font-size:9px;letter-spacing:.19em;font-weight:700;margin-left:3px}.brand-name{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-style:italic;font-size:40px;letter-spacing:-.065em;color:var(--red);position:relative}.brand-star{font-style:normal;color:var(--gold);font-size:18px;position:absolute;right:-16px;top:1px}.navigation{display:flex;gap:27px;margin-left:auto;margin-right:10px;font-size:14px}.navigation a{padding:10px 0}.navigation a:hover{color:var(--red)}.hero{overflow:hidden;position:relative;padding:47px 0 67px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:62px;align-items:center}.hero-copy{padding:18px 0 3px}.hero .eyebrow{color:var(--ink);display:flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.09em}.green-dot{width:6px;height:6px;border-radius:50%;background:#56765a;display:inline-block}.hero h1{font-size:clamp(54px,6.1vw,81px);line-height:1.06;margin:27px 0 26px;white-space:nowrap}.hero h1 em{color:var(--red);font-weight:400;letter-spacing:-.065em}.hero-description{max-width:402px;font-size:19px;line-height:1.65;color:#53645c}.hero-description strong{color:var(--ink)}.hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.hero-tags span{font-size:13px;border:1px solid #d9d9ca;border-radius:30px;padding:6px 12px;color:var(--ink)}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:30px}.hero-actions .button{font-size:15px;padding-inline:22px}.hero-note{margin-top:35px;padding-top:23px;border-top:1px solid var(--line);display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px;line-height:1.6}.hero-note .icon{color:var(--gold);width:25px;height:25px}.hero-note strong{color:var(--ink);font-weight:400}.note-separator{width:1px;height:34px;background:var(--line);margin-inline:7px}.hero-art{position:relative;padding:9px 10px 0 0}.hero-photo{height:555px;overflow:hidden;border-radius:150px 150px 18px 18px;background:#183c78;border:6px solid var(--paper);box-shadow:0 14px 30px #263b3610;position:relative;transform:rotate(2deg)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 5%}.photo-bottom{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(38,23,17,.68));padding:57px 24px 23px;color:#fff;font-size:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}.photo-bottom span{color:#ffe1ac;font-size:24px}.art-caption{position:absolute;z-index:2;top:0;left:-29px;background:var(--paper);border:1px solid var(--line);box-shadow:0 6px 18px #27322b09;padding:13px 20px 13px 50px;border-radius:9px;transform:rotate(-5deg);font-size:12px;line-height:1.6;color:#55615a}.art-caption .icon{position:absolute;left:17px;top:18px;color:var(--gold);height:21px;width:21px}.art-caption strong{color:var(--ink)}.art-spark{position:absolute;color:var(--gold);line-height:1;pointer-events:none}.spark-one{font-size:55px;bottom:16px;left:-29px;transform:rotate(9deg)}.spark-two{font-size:52px;right:-7px;top:88px;transform:rotate(14deg)}.adventure{background:var(--paper);border-block:1px solid var(--line);padding-top:65px;padding-bottom:65px}.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.step-photo{height:159px;background-image:url('assets/poster.webp');background-size:448% auto;background-repeat:no-repeat;position:relative;border-radius:12px;overflow:hidden;background-color:#eee5d3}.photo-games{background-position:4.65% 79.85%}.photo-pizza{background-position:33.5% 79.85%}.photo-quest{background-position:64% 79.85%}.photo-cinema{background-position:95% 79.85%}.step-number{position:absolute;top:11px;left:11px;font-size:12px;font-weight:700;background:var(--paper);padding:5px 9px;border-radius:6px;line-height:1.4}.step-label{position:absolute;bottom:10px;left:9px;right:9px;max-width:max-content;background:var(--ink);color:#fff;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:700}.journey-step h3{font-size:17px;letter-spacing:-.015em;margin-top:19px;margin-bottom:9px}.journey-step p{color:var(--muted);font-size:14px;line-height:1.65}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.program-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:30px 34px;display:flex;flex-direction:column;position:relative}.primary-program{border:1.5px solid var(--red);background:#fffefa}.primary-program:before{position:absolute;content:'';top:0;right:38px;left:38px;height:4px;background:var(--red);border-radius:0 0 6px 6px}.program-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:21px;font-size:11px}.program-type{display:flex;align-items:center;gap:7px;font-weight:700;color:var(--red);letter-spacing:.04em}.program-type .icon{width:15px;height:15px}.duration{display:flex;align-items:center;gap:5px;color:var(--muted)}.duration .icon{height:15px;width:15px}.program-card h3{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;letter-spacing:-.035em}.program-tagline{margin-top:7px;color:var(--muted);font-size:14px}.price{font-size:45px;line-height:1;letter-spacing:-.045em;font-weight:700;margin:28px 0 27px;display:flex;align-items:baseline;gap:9px}.price>span{font-weight:400;font-size:32px}.price>small{font-weight:400;letter-spacing:0;font-size:13px;color:var(--muted);margin-left:6px}.program-list{padding:0;margin:0 0 25px;list-style:none;font-size:15px;line-height:1.5;display:grid;gap:15px}.program-list li{display:flex;align-items:flex-start;gap:12px}.program-list .icon{width:18px;height:18px;margin-top:2px;color:#518363;stroke-width:2}.program-list strong{font-weight:700}.minus-mark{width:18px;flex-shrink:0;text-align:center;color:#9c7d6c;font-weight:700;font-size:22px;line-height:22px}.program-detail{margin-top:auto;font-size:13px;color:var(--muted);background:#f4f2e9;border-radius:8px;padding:13px 17px;line-height:1.6;min-height:67px}.primary-program .program-detail{background:#f8eee6;color:#78584b}.program-pick{width:100%;margin-top:22px;justify-content:space-between}.adult-note{margin-top:23px;display:flex;gap:20px;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:12px}.adult-icon{background:#e8ebdf;border-radius:50%;width:45px;height:45px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#617c54}.adult-note h3{font-size:15px;margin-bottom:5px}.adult-note p{font-size:13px;line-height:1.65;color:var(--muted)}.adult-note strong{color:var(--ink)}.booking{background:var(--paper);border-block:1px solid var(--line)}.booking-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:34px;align-items:start}.booking-fields{padding:27px 29px;border:1px solid var(--line);border-radius:var(--radius)}.booking-fields fieldset+fieldset{border-top:1px solid var(--line);margin-top:27px;padding-top:27px}.field-number{color:var(--gold);border:1px solid #cfc8ae;width:26px;height:26px;border-radius:50%;font-size:13px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.program-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px}.program-toggle label{position:relative;cursor:pointer}.program-toggle input{position:absolute;opacity:0;width:1px;height:1px}.program-toggle span{border:1px solid var(--line);border-radius:8px;background:#fff;min-height:65px;padding:11px 13px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;font-size:13px;gap:1px}.program-toggle span strong{font-size:15px}.program-toggle input:checked+span{border:1.5px solid var(--red);background:#fcf4ee;color:var(--red)}.program-toggle input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}.calendar-and-times{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:22px}.calendar-heading{display:flex;align-items:center;gap:7px;font-size:13px;margin-bottom:17px}.calendar-heading .icon{width:17px;height:17px;color:var(--gold)}.calendar-heading>span{margin-left:auto;font-size:11px;color:var(--muted)}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-week{color:#929c92;font-size:10px;text-align:center;margin-bottom:6px}.calendar-week span:nth-last-child(-n+2){color:#b98682}.calendar-days button{min-width:0;width:100%;min-height:31px;padding:4px 0;background:#f1f3e8;border:1px solid transparent;border-radius:5px;color:var(--ink);font-size:12px;line-height:1.4;transition:background .15s}.calendar-days button:hover:not(:disabled){background:#e5e9d7}.calendar-days button:disabled{background:transparent;color:#adb2a8}.calendar-days button[aria-pressed=true]{background:var(--red);color:white;border-color:var(--red)}.calendar-days button[aria-pressed=true]:hover{background:var(--red-dark)}.time-picker h3{font-size:13px;line-height:1.4}.date-label{font-size:12px;color:var(--muted);margin:6px 0 13px;min-height:19px;line-height:1.5}.time-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.time-options button{background:#fff;border:1px solid #d4d9ce;border-radius:6px;padding:8px 5px;font-size:13px;min-height:37px}.time-options button:hover{background:#f4f5ec}.time-options button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.schedule-note{font-size:10px;line-height:1.65;color:var(--muted);margin-top:13px}.calendar-help{display:flex;align-items:baseline;gap:7px;color:var(--muted);font-size:10px;margin-top:13px;line-height:1.6}.calendar-key{display:inline-block;width:7px;height:7px;background:#dce4c8;border-radius:2px;flex-shrink:0}.group-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.form-label{font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:8px;color:var(--ink);line-height:1.5}.form-label input,.form-label select,textarea{background:white;border:1px solid #d8ddd2;border-radius:7px;min-height:44px;padding:10px 11px;width:100%;min-width:0;color:var(--ink);font-size:13px}.form-label input::placeholder{color:#869082;font-weight:400}.field-hint{font-size:10px;color:var(--muted);font-weight:400}.stepper{display:flex;border:1px solid #d8ddd2;border-radius:7px;overflow:hidden;height:44px;background:#fff}.stepper button{border:0;background:#f8f8f2;min-width:29px;padding:6px;color:var(--ink);font-size:20px;line-height:1}.stepper button:hover:not(:disabled){background:#ebeee3}.stepper button:disabled{color:#bec4b5}.stepper input{border:0;border-radius:0;min-width:0;text-align:center;padding:5px 0;min-height:42px;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.adults-choice{margin-top:17px;max-width:270px}.booking-summary{background:var(--ink);color:var(--paper);padding:31px 30px;border-radius:var(--radius);position:sticky;top:118px;overflow:hidden}.booking-summary .eyebrow{color:#b4c2ae;font-size:9px;letter-spacing:.15em}.booking-summary h3{font-family:Georgia,'Times New Roman',serif;font-size:32px;line-height:1.17;font-weight:400;letter-spacing:-.025em;margin-top:16px}.summary-star{position:absolute;right:28px;top:29px;font-size:42px;color:#cfb47d;opacity:.7;line-height:1}.summary-facts{display:grid;gap:12px;margin-top:23px;padding-top:21px;border-top:1px solid #ffffff20;font-size:12px}.summary-facts>div{display:flex;align-items:center;gap:10px}.summary-facts .icon{width:17px;height:17px;color:#d2bc8e}.cost-lines{margin-top:27px;border-top:1px solid #ffffff20;padding-top:19px;font-size:11px;color:#c5cdc2;display:grid;gap:10px}.cost-lines>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.cost-lines strong{color:var(--paper);font-weight:400;white-space:nowrap}.total-row{margin-top:19px;display:flex;flex-direction:column;gap:7px;font-size:11px;color:#c5cdc2}.total-row strong{font-size:37px;letter-spacing:-.035em;color:var(--paper);line-height:1.25}.total-row small{font-size:25px;font-weight:400}.button-light{background:#f8e9c9;border-color:#f8e9c9;color:var(--ink);width:100%;margin-top:24px;justify-content:space-between;font-size:13px;gap:8px;padding:15px 18px;min-height:52px}.button-light:hover{background:#efdcaf;border-color:#efdcaf;color:var(--ink)}.summary-disclaimer{font-size:10px;color:#b1c0ae;margin-top:16px;line-height:1.7}.form-error{color:#ffe2ae;font-size:12px;margin-top:14px}.questions-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:90px}.questions .eyebrow{margin-bottom:17px}.contact-link{display:flex;gap:10px;align-items:center;color:var(--red);font-size:19px;font-weight:700;margin-top:31px}.contact-link .icon{width:19px;height:19px}.contact-caption{color:var(--muted);font-size:12px;margin-top:9px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:21px 0}.faq-list summary{font-size:16px;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;font-weight:400;line-height:1;color:var(--gold);transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:14px;color:var(--muted);line-height:1.75;margin-top:13px;padding-right:28px}.faq-list p a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.closing{padding:39px 0;background:#f0eee1;border-block:1px solid #e4e2d4;position:relative;overflow:hidden}.closing-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px}.closing .eyebrow{font-size:10px;color:#7e846f}.closing h2{font-size:40px;margin-top:11px}.closing .button{z-index:1}.closing-snow{position:absolute;right:316px;top:-60px;font-size:230px;line-height:1;color:#e4e4d2;pointer-events:none}.site-footer{background:var(--paper);padding:30px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand .brand-name{font-size:35px}.footer-brand .brand-caption{font-size:8px}.footer-inner>p{font-size:11px;color:var(--muted);line-height:1.8;margin-right:auto;margin-left:40px}.footer-contacts{display:flex;flex-direction:column;gap:6px;font-size:12px;text-align:right}.footer-contacts a:first-child{font-size:14px;font-weight:700}.footer-contacts a:last-child{color:var(--red)}.mobile-booking-bar{display:none}dialog{border:0;padding:0;background:var(--paper);color:var(--ink);border-radius:18px;box-shadow:0 30px 90px #0005;max-height:90dvh;max-width:calc(100vw - 32px);overscroll-behavior:contain}dialog::backdrop{background:#122523b3;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:12px;top:12px;border:1px solid #d5d3c6;background:var(--paper);color:var(--ink);width:39px;height:39px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:3}.dialog-close:hover{background:#ebe9df}.poster-dialog{width:min(505px,calc(90dvh * .563));border-radius:10px;overflow:auto}.poster-dialog img{width:100%;height:auto}.poster-dialog .dialog-close{position:fixed;right:max(20px,calc((100vw - 505px) / 2 + 12px));top:5dvh}.request-dialog{width:600px;padding:34px}.request-dialog h2{font-size:37px;margin-top:14px}.request-dialog>p{font-size:14px;color:var(--muted);margin-top:14px;line-height:1.65}.request-dialog>label{margin-top:20px;margin-bottom:8px}.request-dialog textarea{padding:14px;resize:vertical;font-size:13px;line-height:1.6;min-height:200px;max-height:350px}.request-actions{display:grid;gap:10px;margin-top:18px}.request-actions .button{font-size:14px;min-height:49px}.request-dialog .copy-status{font-size:12px;color:var(--red);min-height:18px;margin-top:10px}
@media(min-width:1400px){.hero h1{font-size:82px}.hero-grid{gap:73px}.hero-photo{height:577px}.hero-description{font-size:20px}}
@media(max-width:1100px){.wrap{padding-inline:28px}.hero-grid{gap:40px}.hero h1{font-size:clamp(52px,6.5vw,70px)}.hero-photo{height:535px}.navigation{gap:18px;font-size:12px}.header-inner{gap:20px}.hero-actions{gap:17px}.hero-actions .button{padding-inline:15px;font-size:14px}.text-button{font-size:13px}.program-card{padding:26px}.program-top{font-size:10px}.booking-grid{gap:23px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.booking-fields{padding:25px 20px}.booking-summary{padding:28px 23px}.calendar-and-times{gap:15px}.group-fields{gap:8px}.form-label{font-size:11px}.form-label select,.form-label input{font-size:12px;padding-inline:7px}.journey{gap:18px}.journey-step h3{font-size:15px}.step-photo{height:141px}.questions-grid{gap:55px}}
@media(max-width:860px){.navigation{display:none}.header-inner{height:80px}.brand-name{font-size:36px}.hero-grid{gap:25px;grid-template-columns:1fr 1fr}.hero h1{font-size:53px;margin-top:24px}.hero-description{font-size:17px}.hero .eyebrow{font-size:10px;letter-spacing:.04em}.hero-art{padding-top:17px}.hero-photo{height:495px;border-radius:110px 110px 15px 15px}.art-caption{left:-10px;top:0;font-size:10px;padding:10px 13px 10px 40px}.art-caption .icon{left:12px;top:15px;width:17px;height:17px}.photo-bottom{padding-inline:17px;font-size:11px}.hero-tags{gap:7px}.hero-tags span{font-size:11px;padding:5px 10px}.hero-note{font-size:11px;gap:9px}.hero-note .icon{width:19px;height:19px}.note-separator{margin-inline:1px}.hero-actions{gap:13px}.hero-actions .button{min-height:50px}.spark-one{left:-16px;font-size:40px}.spark-two{font-size:38px;right:-7px}.section{padding:57px 0}.section-heading>p{font-size:12px}.journey{grid-template-columns:repeat(2,1fr);gap:28px 23px}.step-photo{height:auto;aspect-ratio:1.65;background-position-y:80%}.journey-step h3{font-size:18px;margin-top:15px}.journey-step p{font-size:14px}.program-card{padding:25px 21px}.program-card h3{font-size:29px}.program-top{flex-wrap:wrap;gap:7px;margin-bottom:17px;align-items:flex-start;flex-direction:column}.price{font-size:38px;gap:6px}.price>small{font-size:11px;margin-left:2px}.program-list{font-size:13px;gap:13px}.program-pick{font-size:13px;padding-inline:15px}.program-detail{font-size:11px}.program-grid{gap:18px}.booking-grid{grid-template-columns:1fr}.booking-fields{padding:28px}.calendar-and-times{grid-template-columns:1fr 1fr;gap:35px}.calendar-days button{min-height:38px;font-size:14px}.calendar-week{font-size:11px}.calendar-heading{font-size:14px}.time-picker h3{font-size:15px}.date-label{font-size:13px}.time-options button{font-size:14px;min-height:42px}.schedule-note,.calendar-help{font-size:11px}.group-fields{gap:15px}.form-label{font-size:13px}.form-label input,.form-label select{font-size:14px}.field-hint{font-size:11px}.booking-summary{position:relative;top:0;display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding:27px 29px}.booking-summary>.eyebrow,.booking-summary>h3,.booking-summary>.summary-facts{grid-column:1;grid-row:auto}.summary-star{right:29px;top:25px;font-size:34px}.booking-summary .cost-lines{grid-column:2;grid-row:1 / 3;border:0;margin-top:30px;padding:0;align-content:center;font-size:12px}.booking-summary .total-row{grid-column:2;grid-row:3;font-size:12px;margin-top:9px;align-self:center}.booking-summary .summary-facts{font-size:12px}.booking-summary .button{grid-column:1 / -1;margin-top:25px;font-size:15px;justify-content:center}.booking-summary .summary-disclaimer,.booking-summary .form-error{grid-column:1 / -1;font-size:11px}.questions-grid{gap:35px;grid-template-columns:1fr 1.3fr}.questions h2{font-size:37px}.contact-link{font-size:16px}.faq-list summary{font-size:14px}.faq-list p{font-size:13px;padding-right:0}.closing h2{font-size:32px}.closing .button{font-size:14px;padding:15px 18px}.footer-inner>p{margin-left:10px;font-size:10px}.footer-contacts{font-size:11px}.footer-contacts a:first-child{font-size:12px}.footer-inner{gap:15px}}
@media(max-width:620px){html{scroll-padding-top:86px}.wrap{padding-inline:21px}body{font-size:16px;padding-bottom:77px}.header-inner{height:74px;gap:10px}.site-header .button-small{font-size:12px;min-height:40px;padding:11px 12px;gap:8px}.brand-name{font-size:33px}.brand-caption{font-size:8px}.brand-star{font-size:14px;right:-12px}.hero{padding-top:29px;padding-bottom:43px}.hero-grid{grid-template-columns:1fr;gap:34px}.hero-copy{padding:0}.hero .eyebrow{font-size:10px;letter-spacing:.065em}.hero h1{font-size:clamp(47px,12vw,68px);margin-top:20px;margin-bottom:21px;line-height:1.04}.hero-description{font-size:17px;line-height:1.6;max-width:360px}.hero-tags{margin-top:18px;gap:8px}.hero-tags span{font-size:11px;padding:5px 10px}.hero-actions{margin-top:24px;gap:18px}.hero-actions .button{font-size:13px;padding:14px 15px;min-height:49px;gap:9px}.hero-actions .text-button{font-size:12px}.hero-note{margin-top:24px;padding-top:18px;font-size:11px;gap:13px}.hero-note .icon{height:22px;width:22px}.note-separator{margin-inline:5px}.hero-art{max-width:430px;margin-inline:auto;width:100%;padding:3px 12px 0}.hero-photo{height:445px;border-radius:125px 125px 16px 16px;border-width:5px;transform:rotate(1.5deg)}.hero-photo img{object-position:center 12%}.art-caption{font-size:11px;left:0;top:0;padding:10px 16px 10px 43px}.art-caption .icon{height:18px;width:18px}.photo-bottom{font-size:12px;padding-bottom:20px}.spark-one{bottom:20px;left:-1px;font-size:43px}.spark-two{right:0;top:75px;font-size:38px}.section{padding:47px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:25px}.section-heading .eyebrow{font-size:9px;margin-bottom:11px}.section-heading>p{font-size:13px;text-align:left}.section-heading>p br{display:none}h2{font-size:36px}.adventure .section-heading>p{display:none}.journey{gap:25px 15px}.step-photo{aspect-ratio:1.32;border-radius:8px;background-position-y:79.85%}.step-number{font-size:10px;top:7px;left:7px;padding:3px 6px;border-radius:4px}.step-label{font-size:8px;left:6px;bottom:6px;right:6px;padding:3px 4px}.journey-step h3{font-size:15px;line-height:1.35;margin-top:12px;margin-bottom:7px}.journey-step p{font-size:12px;line-height:1.65}.program-grid{grid-template-columns:1fr;gap:20px}.program-card{padding:26px 24px}.program-top{flex-direction:row;align-items:center;font-size:10px;margin-bottom:20px}.program-card h3{font-size:33px}.program-tagline{font-size:13px;margin-top:6px}.price{font-size:43px;gap:8px;margin:25px 0}.price>span{font-size:30px}.price>small{font-size:12px;margin-left:6px}.program-list{font-size:14px;gap:13px;margin-bottom:23px}.program-detail{font-size:12px;padding:12px 15px;min-height:63px}.program-pick{font-size:14px;padding-inline:17px}.adult-note{gap:13px;padding:18px 16px;align-items:flex-start}.adult-icon{height:33px;width:33px}.adult-icon .icon{height:18px;width:18px}.adult-note h3{font-size:14px}.adult-note p{font-size:12px}.booking-grid{gap:18px}.booking-fields{padding:23px 17px;border-radius:13px}legend{font-size:16px;margin-bottom:18px;gap:9px}.field-number{height:24px;width:24px;font-size:12px}.program-toggle{gap:8px}.program-toggle span{font-size:12px;min-height:62px;padding:10px}.program-toggle span strong{font-size:14px}.booking-fields fieldset+fieldset{padding-top:25px;margin-top:25px}.calendar-and-times{grid-template-columns:1fr;gap:23px}.calendar-heading{font-size:14px;margin-bottom:13px}.calendar-week{gap:6px;font-size:11px}.calendar-days{gap:6px}.calendar-days button{min-height:38px;font-size:13px}.calendar-heading>span{font-size:11px}.date-label{font-size:12px}.time-picker h3{font-size:14px}.time-options{grid-template-columns:repeat(4,1fr);gap:6px}.time-options button{font-size:12px;min-height:38px}.schedule-note,.calendar-help{font-size:10px}.group-fields{grid-template-columns:1fr 1fr;gap:16px 13px}.group-fields>.form-label:last-child{grid-column:1 / -1;max-width:100%}.form-label{font-size:12px}.form-label select,.form-label input{font-size:14px;min-height:45px;padding-inline:10px}.stepper{height:45px}.stepper button{min-width:30px}.stepper input{padding-inline:0}.field-hint{font-size:10px}.adults-choice{max-width:100%;margin-top:16px}.booking-summary{padding:27px 24px;border-radius:13px;display:block}.booking-summary .eyebrow{font-size:9px}.booking-summary h3{font-size:33px;margin-top:15px}.booking-summary .cost-lines{border-top:1px solid #ffffff20;margin-top:22px;padding-top:18px;font-size:12px}.booking-summary .total-row{margin-top:19px;font-size:12px}.total-row strong{font-size:39px}.booking-summary .button{margin-top:22px;justify-content:space-between;font-size:14px}.booking-summary .summary-disclaimer{font-size:11px}.questions-grid{grid-template-columns:1fr;gap:27px}.questions h2{font-size:36px}.questions h2 br{display:none}.questions .eyebrow{font-size:9px}.contact-link{font-size:18px;margin-top:22px}.contact-caption{font-size:12px}.faq-list details{padding:20px 0}.faq-list summary{font-size:15px;gap:15px}.faq-list p{font-size:13px;line-height:1.7;margin-top:12px}.closing{padding:32px 0}.closing-inner{flex-direction:column;align-items:flex-start;gap:21px}.closing h2{font-size:33px;margin-top:10px}.closing .eyebrow{font-size:9px}.closing .button{font-size:14px;min-height:50px}.closing-snow{right:-16px;top:10px;font-size:205px;opacity:.7}.site-footer{padding:26px 0}.footer-inner{display:grid;grid-template-columns:1fr 1.9fr;gap:18px}.footer-brand .brand-name{font-size:33px}.footer-inner>p{font-size:10px;margin:0;line-height:1.7}.footer-contacts{grid-column:1 / -1;text-align:left;gap:8px;padding-top:7px;flex-direction:row;justify-content:space-between;font-size:11px}.footer-contacts a:first-child{font-size:12px}.mobile-booking-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;align-items:center;justify-content:space-between;gap:12px;padding:12px 21px max(12px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #263b3607}.mobile-booking-bar>span{display:flex;flex-direction:column;font-size:9px;color:var(--muted);gap:1px}.mobile-booking-bar strong{font-size:18px;color:var(--ink);font-weight:700}.mobile-booking-bar .button{font-size:12px;min-height:42px;padding:12px 14px}.request-dialog{padding:31px 23px 22px;max-height:88dvh}.request-dialog .eyebrow{font-size:8px;padding-right:23px}.request-dialog h2{font-size:34px;margin-top:12px}.request-dialog>p{font-size:13px}.request-dialog textarea{font-size:12px;padding:12px;min-height:190px}.request-actions .button{font-size:13px}.request-dialog .copy-status{font-size:11px}.poster-dialog .dialog-close{right:19px;top:6dvh}.poster-dialog{max-height:88dvh}}
@media(max-width:365px){.wrap{padding-inline:17px}.hero h1{font-size:44px}.hero-actions{gap:11px}.hero-actions .button{font-size:12px;padding-inline:12px}.hero-actions .text-button{font-size:11px}.hero-photo{height:397px}.hero-note{font-size:10px;gap:8px}.note-separator{margin-inline:3px}.program-card{padding:24px 19px}.program-top{font-size:9px}.program-card h3{font-size:31px}.program-list{font-size:13px}.mobile-booking-bar{padding-inline:17px}.footer-contacts{font-size:10px}.footer-contacts a:first-child{font-size:11px}}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:620px){.journey-step p{font-size:14px}.journey-step h3{font-size:16px}.program-tagline{font-size:14px}.program-list{font-size:15px}.adult-note p{font-size:14px}.adult-note h3{font-size:15px}.program-detail{font-size:13px}.form-label{font-size:14px}.form-label input,.form-label select{font-size:16px}.field-hint{font-size:12px}.time-picker h3{font-size:15px}.time-options button{font-size:14px;min-height:42px}.calendar-days button{font-size:14px;min-height:40px}.date-label{font-size:14px}.schedule-note,.calendar-help{font-size:12px}.faq-list p{font-size:15px}.faq-list summary{font-size:16px}.contact-caption{font-size:13px}.booking-summary .summary-disclaimer{font-size:12px}.booking-summary .summary-facts{font-size:14px}.booking-summary .cost-lines{font-size:13px}.request-dialog>p{font-size:15px}.request-dialog textarea{font-size:16px}.request-dialog .copy-status{font-size:13px}.footer-inner>p{font-size:11px}.summary-star{pointer-events:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
