:root{color-scheme:dark;--bg:#1b101f;--panel:#26172b;--text:#f5eee5;--muted:#c9bacb;--gold:#edb253;--accent:#ff9b20;--line:#b6894e50;--reading-scale:1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 10%,#38213c55,transparent 46%),var(--bg);line-height:1.6}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}a:hover{color:var(--gold)}p{margin:0 0 1.2em}h1,h2,h3{line-height:1.15;margin:0 0 .6em}h1,h2{font-family:Georgia,"Iowan Old Style",serif;font-weight:400}h1{font-size:clamp(2.35rem,4.6vw,4rem);letter-spacing:-.035em}h2{font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.025em}h3{font-size:1.125rem;font-weight:600}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #e9b8ff;outline-offset:4px}[hidden]{display:none!important}svg.icon{width:1.5em;height:1.5em;flex-shrink:0}main{min-height:50vh}section[id],h2[id]{scroll-margin-top:2rem}.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}.skip{position:absolute;top:-8rem;left:1rem;z-index:50;padding:.75rem 1rem;background:var(--text);color:var(--bg)}.skip:focus{top:1rem}.header{max-width:84rem;margin:auto;min-height:6.5rem;padding:1.2rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;position:relative;z-index:10}.brand{font-family:Georgia,serif;letter-spacing:.2em;font-size:1.4rem;text-decoration:none;display:flex;flex-direction:column;align-items:center;line-height:1.3}.brand-ornament{font-size:.8rem;letter-spacing:0;color:var(--gold);display:flex;align-items:center;gap:.4rem;margin-top:.3rem}.brand-ornament:before,.brand-ornament:after{content:"";width:2.5rem;height:1px;background:var(--gold)}#navigation{display:flex;align-items:center;gap:1.7rem;font-size:.875rem}#navigation>a:not(.button){text-decoration:none;padding:.6rem 0}#navigation [aria-current=page]{color:var(--gold)}#navigation .button[aria-current]{color:#28140c}.menu-toggle{align-items:center;gap:.5rem;background:transparent;color:var(--text);border:0;padding:.6rem 0 .6rem .6rem;min-height:44px}.button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;min-height:3.25rem;padding:.8rem 1.35rem;background:var(--accent);color:#26120b;border:1px solid var(--accent);border-radius:.3rem;text-decoration:none;font-weight:650;line-height:1.4;text-align:center;transition:background .15s}.button:hover{background:#ffb449;color:#26120b}.button.small{padding:.6rem 1rem;min-height:2.7rem}.button.outline{background:transparent;color:var(--text);border-color:var(--line)}.button.outline:hover{background:#ffffff0a;border-color:var(--gold);color:var(--gold)}button:disabled{opacity:.4;cursor:not-allowed}.eyebrow{font-size:.72rem;letter-spacing:.19em;font-weight:650;color:var(--gold);margin:0 0 1.1rem}.text-link{display:inline-block;padding:.45rem 0;text-decoration-color:var(--gold)}.home-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;max-width:84rem;margin:0 auto 2rem}.hero-art{position:relative;aspect-ratio:941/830;overflow:hidden;align-self:center}.hero-art img{position:absolute;top:0;left:0;width:100%;height:auto;max-width:none;transform:translateY(-7.2%)}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,transparent 80%,var(--bg)),linear-gradient(to bottom,var(--bg),transparent 9%,transparent 85%,var(--bg));pointer-events:none}.hero-copy{padding:2rem 3rem;text-align:center}.adventure-title{font-size:clamp(2.5rem,4.7vw,4.8rem);line-height:.96;letter-spacing:-.055em;margin:.3rem 0 1.6rem}.adventure-title span{display:block}.adventure-title .title-middle{font-size:.53em;letter-spacing:-.025em;line-height:1.1}.hero-tagline{font-size:1.1rem;color:var(--muted);line-height:1.55}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:.65rem}.hero-actions .text-link{align-self:center}.quick-links{display:grid;grid-template-columns:1fr 1fr;margin-top:1.6rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-links a{display:flex;align-items:center;gap:.8rem;justify-content:center;min-height:3.8rem;padding:.75rem .5rem;text-decoration:none;font-size:.9rem}.quick-links .icon{color:var(--gold)}.quick-links a:nth-child(odd){border-right:1px solid var(--line)}.quick-links a:nth-child(-n+2){border-bottom:1px solid var(--line)}.quick-links a:hover{background:#d3a24708}.page-shell,.flow-shell,.reading-column{margin:1.5rem auto 6rem;width:calc(100% - 3rem)}.page-shell{max-width:68rem}.flow-shell{max-width:52rem}.reading-column{max-width:46rem}.back-link{font-size:.85rem;display:inline-block;text-decoration:none;color:var(--muted);margin-bottom:2.2rem;min-height:2rem}.page-heading{margin:0 0 2.5rem;max-width:51rem}.page-heading>p:not(.eyebrow){color:var(--muted);font-size:1.1rem;margin-bottom:0;max-width:43rem}.centered{text-align:center}.page-heading.centered h1{font-size:clamp(2.15rem,4vw,3.35rem)}.memory-image{margin:0 0 1.4rem;width:100%;border:1px solid var(--line);border-radius:.3rem;overflow:hidden}.memory-image img{width:100%}.reading-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem 0;margin-bottom:1.5rem;border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}.reading-buttons{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.reading-buttons button{min-width:44px;min-height:44px;border:1px solid var(--line);background:transparent;color:var(--text);border-radius:.25rem}.reading-buttons .reset-size{font-size:.75rem;padding:0 .6rem}.reading-buttons output{min-width:3.6rem;text-align:center}.narrative{font-size:1.125rem;line-height:1.75;overflow-wrap:anywhere}.reading-content{font-size:calc(1.125rem * var(--reading-scale))}.narrative p{margin-bottom:1.45em}.narrative .lead{font-size:1.1em;color:var(--text)}.narrative .mission{color:#f2cb8d;border-block:1px solid var(--line);padding:1.1em 0}.narrative .closing{font-family:Georgia,serif;font-size:1.4em;line-height:1.45;color:#f4d9ad}.experience-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding:1.8rem 0;gap:1.5rem;margin-top:2rem}.experience-facts>div{display:grid;grid-template-columns:auto 1fr;column-gap:.65rem;align-items:center}.experience-facts .icon{grid-row:span 2;color:var(--gold)}.experience-facts strong{font-size:.95rem;font-weight:550}.experience-facts span{font-size:.8rem;color:var(--muted)}.reading-column>.button{width:100%}.supporting{color:var(--muted);font-size:.85rem;line-height:1.6;margin-top:.85rem}.section-nav{display:flex;flex-wrap:wrap;gap:.6rem 1.7rem;border-block:1px solid var(--line);padding:.5rem 0;margin:0 0 1rem}.section-nav a{min-height:44px;display:flex;align-items:center;text-decoration:none}.info-section{display:grid;grid-template-columns:1fr 1.3fr;gap:5rem;border-bottom:1px solid var(--line);padding:4rem 0}.section-intro>p:not(.eyebrow){color:var(--muted)}.section-intro address{font-style:normal;margin:1.5rem 0 .5rem}.info-copy p{color:var(--muted)}.info-copy h3:not(:first-child){margin-top:1.8rem}.price-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line);padding:1rem 0}.price-row:first-child{padding-top:0}.price-row b{font-family:Georgia,serif;font-size:2rem;font-weight:400;color:var(--gold);white-space:nowrap}.price-row small{color:var(--muted);display:block}.contact-links{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.phone{font-size:1.4rem;color:var(--gold)}details{border-bottom:1px solid var(--line);padding:1rem 0}summary{cursor:pointer;font-weight:550;padding:.3rem 1.8rem .3rem 0;position:relative;list-style:none;min-height:44px}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:.15rem;top:.1rem;color:var(--gold);font-size:1.4rem}details[open]>summary:after{content:"−"}details>p{margin:.7rem 0;color:var(--muted)}.end-cta{text-align:center;padding:4rem 0 0}.end-cta .text-link{display:block;max-width:max-content;margin:1rem auto 0}.demo-note{color:var(--muted);font-size:.85rem;padding:.85rem 1rem;border-left:2px solid var(--gold);background:#ffffff04}.steps{display:flex;list-style:none;padding:0;gap:1rem;justify-content:space-between;margin:2rem 0;color:var(--muted);font-size:.85rem}.steps li{display:flex;align-items:center;gap:.6rem}.steps b{display:grid;place-items:center;width:1.8rem;height:1.8rem;border:1px solid var(--line);border-radius:50%;font-size:.75rem;flex-shrink:0}.steps [aria-current]{color:var(--gold)}.steps [aria-current] b{background:var(--gold);color:var(--bg)}.flow-panel{min-width:0;margin:0;padding:2rem;border:1px solid var(--line);border-radius:.35rem;background:linear-gradient(140deg,#30203580,#26172b80)}.flow-panel h2{font-size:1.8rem}.flow-panel h3{margin-bottom:.8rem}.flow-panel label{display:flex;flex-direction:column;gap:.45rem;font-size:.9rem;font-weight:550}.flow-panel input:not([type=radio]),.flow-panel select,.flow-panel textarea{width:100%;min-width:0;min-height:48px;border:1px solid #a287a885;background:#1b101f;color:var(--text);padding:.7rem .8rem;border-radius:.25rem;line-height:1.5;font-size:1rem}.flow-panel textarea{resize:vertical}.flow-panel input::placeholder,.flow-panel textarea::placeholder{color:#ac9baf}.team-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end}.team-price{margin:0;text-align:right;display:flex;flex-direction:column;line-height:1.4}.team-price>span,.team-price small{color:var(--muted);font-size:.8rem}.team-price strong{font-family:Georgia,serif;font-size:2.5rem;color:var(--gold);font-weight:400}.inline-note{font-size:.85rem;color:var(--gold);margin:1rem 0}.calendar-heading{margin-top:2.5rem;display:flex;gap:1rem;justify-content:space-between;align-items:center}.calendar-heading h2{margin:0;font-size:1.6rem}.flow-panel .date-picker{font-size:.75rem;color:var(--muted)}.date-picker input{font-size:.9rem!important}.booking-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0 .75rem}.booking-nav p{font-size:.85rem;text-align:center;margin:0}.icon-button{min-width:44px;min-height:44px;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:.25rem}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.days button,.slots button{border:1px solid var(--line);background:#160c1b88;color:var(--text);border-radius:.25rem;padding:.6rem .25rem;min-height:48px}.days button span{display:block;font-size:.7rem;color:var(--muted)}.days button strong{font-size:1.2rem;font-weight:550}.days [aria-pressed=true],.slots [aria-pressed=true]{background:#edb25319;border-color:var(--gold);color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.days button:hover:not(:disabled),.slots button:hover:not(:disabled){border-color:var(--gold)}.slots-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-top:1.8rem}.slots-heading h3{font-size:1rem}.slots-heading span{color:var(--muted);font-size:.7rem;text-align:right}.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.slots button{font-size:.95rem}.slots button small{display:block;font-size:.65rem;color:var(--muted)}.selection-status{font-size:.8rem;color:var(--gold);min-height:1.6em;margin:1rem 0}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:1rem;margin-top:1.8rem}.form-actions>.button{flex:1 1 12rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:1.5rem 0}.selected-summary{color:var(--gold);border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.5rem;font-size:.9rem}.voucher-entry{margin-top:1.5rem;border-block:1px solid var(--line)}.voucher-entry label{margin-top:1rem}.flow-help{font-size:.85rem;color:var(--muted);text-align:center;margin:1.5rem auto;max-width:34rem}.flow-help a{white-space:nowrap}.summary-list{margin:1.5rem 0}.summary-list>div{display:flex;gap:1rem;justify-content:space-between;border-bottom:1px solid var(--line);padding:.8rem 0}.summary-list dt{color:var(--muted)}.summary-list dd{margin:0;text-align:right;overflow-wrap:anywhere}.summary-total{font-size:1.3rem;color:var(--gold)}.payment-options{display:grid;gap:.8rem;border:0;padding:0;margin:2rem 0 1rem;min-width:0}.payment-options legend{margin-bottom:1rem;font-family:Georgia,serif;font-size:1.5rem}.payment-options label{display:flex;flex-direction:row;align-items:center;gap:.75rem;padding:.85rem;border:1px solid var(--line);border-radius:.25rem}.payment-options input{width:1.2rem;height:1.2rem;accent-color:var(--gold);flex-shrink:0}.payment-due{padding:1rem 0;border-bottom:1px solid var(--line)}.payment-due strong{color:var(--gold);font-size:1.25rem}.success-mark{color:var(--gold);font-size:2rem;margin-bottom:1rem}.success-panel p{color:var(--muted)}.gift-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:start}.gift-page .page-heading{margin-top:.3rem}.gift-layout form>label{margin:1.2rem 0}.gift-layout form>h2:not(:first-child){margin-top:2rem}.gift-layout form>.button{width:100%;margin-top:1rem}.optional{font-weight:400;color:var(--muted);display:contents}.gift-card{border:1px solid var(--gold);padding:1.5rem;text-align:center;background:radial-gradient(ellipse at 90% 100%,#50305e80,transparent),#1e1424;box-shadow:0 1.2rem 3rem #0003}.gift-card>.eyebrow{font-family:Georgia,serif;letter-spacing:.22em;font-size:.85rem}.gift-card-art{margin:0 -1.5rem 1.5rem;overflow:hidden}.gift-card-copy h2{font-size:2rem}.gift-card-copy .eyebrow{font-size:.6rem}.gift-to{font-family:Georgia,serif;font-size:1.25rem;color:#f4d9ad;margin-top:1.5rem}.gift-card #gift-message{font-size:.85rem;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}.gift-team{border-top:1px solid var(--line);padding-top:1rem;color:var(--gold);margin-bottom:.5rem}.gift-stamp{color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.2em}.gift-conditions{font-size:.85rem;color:var(--muted);margin-top:2rem}.gift-conditions h3{color:var(--text);font-size:1rem}.gift-conditions ul{padding-left:1.2rem}.gift-conditions li{margin:.6rem 0}.gift-review{max-width:48rem}.footer{max-width:78rem;margin:0 auto;padding:2rem 1.5rem;border-top:1px solid var(--line);display:flex;gap:1.5rem;align-items:start;flex-wrap:wrap}.footer-brand{font-family:Georgia,serif;letter-spacing:.18em;font-size:1rem;text-decoration:none}.footer nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;font-size:.75rem;color:var(--muted)}.footer nav a{padding:.3rem 0}.atelier-note{flex-basis:100%;margin:0;color:#ab98b0;font-size:.65rem;text-align:right}
@media(min-width:851px){.menu-toggle{display:none!important}.home-hero{min-height:calc(100svh - 15rem)}}
@media(max-width:1000px){.header{padding-inline:1.5rem;gap:1rem}#navigation{gap:1rem}.hero-copy{padding:1.5rem}.info-section{gap:2.5rem}.gift-layout{gap:1.5rem}}
@media(max-width:850px){.header{min-height:5rem;padding:1rem 1.5rem}.brand{font-size:1.2rem}.menu-toggle:not([hidden]){display:flex}.header:has(.menu-toggle:not([hidden])) #navigation{display:none;position:absolute;top:100%;left:1rem;right:1rem;background:#26172b;border:1px solid var(--line);border-radius:.3rem;padding:1.25rem;box-shadow:0 1rem 2rem #0008;flex-direction:column;align-items:stretch;gap:.2rem}.header:has(.menu-toggle[aria-expanded=true]) #navigation{display:flex}#navigation>a:not(.button){padding:.75rem .25rem}.header:has(.menu-toggle[hidden]){flex-wrap:wrap}.header:has(.menu-toggle[hidden]) #navigation{flex-wrap:wrap}.home-hero{display:block;max-width:38rem;margin-top:-.5rem}.hero-art{width:100%;aspect-ratio:941/830}.hero-art:after{background:linear-gradient(to bottom,var(--bg),transparent 8%,transparent 84%,var(--bg)),linear-gradient(to right,var(--bg),transparent 4%,transparent 96%,var(--bg))}.hero-copy{padding:0 1.5rem 1.5rem;position:relative;margin-top:-.2rem}.adventure-title{font-size:clamp(2.7rem,9vw,4.5rem);margin-bottom:1.1rem}.hero-copy .eyebrow{font-size:.7rem;margin-bottom:.8rem}.hero-tagline{font-size:1rem;margin-bottom:1.2rem}.desktop-break{display:none}.quick-links{margin-top:1.1rem}.page-shell,.flow-shell,.reading-column{margin-top:1rem}.info-section{grid-template-columns:1fr 1.35fr;gap:2rem}.gift-layout{grid-template-columns:1fr 1fr;gap:1.25rem}.flow-panel{padding:1.5rem}.footer{margin-inline:1.5rem;padding-inline:0}.footer nav{margin-left:0}.atelier-note{text-align:left}}
@media(max-width:600px){.page-shell,.flow-shell,.reading-column{width:calc(100% - 2rem);margin-bottom:4rem}.header{padding:1rem}.page-heading{margin-bottom:1.8rem}.page-heading>p:not(.eyebrow){font-size:1rem}.back-link{margin-bottom:1.5rem}.page-heading.centered h1{font-size:2.2rem}.reading-content{font-size:calc(1.0625rem * var(--reading-scale))}.reading-tools{align-items:flex-start;gap:.6rem}.reading-buttons{width:100%;justify-content:space-between;gap:.15rem}.experience-facts{gap:1rem}.experience-facts strong{font-size:.85rem}.experience-facts span{font-size:.75rem}.experience-facts .icon{width:1.2rem}.info-section{grid-template-columns:1fr;gap:1.2rem;padding:2.5rem 0}.section-intro h2{margin-bottom:.3rem}.section-intro p{margin-bottom:.5rem}.section-nav{font-size:.85rem;gap:.1rem 1rem}.flow-panel{padding:1.15rem}.steps{gap:.5rem;font-size:.72rem;margin:1.5rem 0}.steps li{flex-direction:column;align-items:flex-start;gap:.4rem}.team-row{grid-template-columns:1.3fr 1fr;gap:.75rem}.team-price strong{font-size:2rem}.team-price small{font-size:.65rem}.calendar-heading{flex-direction:column;align-items:stretch;margin-top:2rem;gap:1rem}.flow-panel .date-picker{flex-direction:row;align-items:center;justify-content:space-between;gap:.6rem}.date-picker input{max-width:11rem}.days{grid-template-columns:repeat(4,minmax(0,1fr))}.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.form-actions{gap:.75rem}.form-actions>.button{flex-basis:100%}.gift-layout{grid-template-columns:1fr;gap:2rem}.gift-preview{max-width:30rem;width:100%;margin:auto}.gift-card{padding:1.5rem}.summary-list>div{flex-direction:column;gap:.2rem}.summary-list dd{text-align:left}.footer{margin-inline:1rem;gap:1rem}.footer nav{gap:.5rem 1rem}.footer-brand{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Keep enlarged text inside the available column, including text-only zoom. */
h1,h2,h3,p,a,button,label,summary{overflow-wrap:anywhere}.info-section>*,.gift-layout>*,.team-row>*,.form-grid>*,.quick-links>*{min-width:0}.info-section{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.gift-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-links a{flex-wrap:nowrap}.quick-links a>span{min-width:0}.brand{font-size:22px}.footer-brand{font-size:16px}.reading-buttons{max-width:100%}.price-row{flex-wrap:wrap}.button .icon{max-width:1.5em}.gift-card-copy{min-width:0}.steps li{min-width:0}
@media(max-width:850px){.header{flex-wrap:wrap}.brand{font-size:19px}.hero-copy{padding-inline:24px}.info-section{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.gift-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.header{padding:16px;gap:12px}.page-shell,.flow-shell,.reading-column{width:calc(100% - 32px)}.hero-copy{padding-inline:24px}.adventure-title{font-size:clamp(2.5rem,9vw,4.5rem)}.info-section,.gift-layout,.form-grid{grid-template-columns:minmax(0,1fr)}.flow-panel{padding:18px}.team-row{grid-template-columns:repeat(2,minmax(0,1fr))}.team-price small{overflow-wrap:anywhere}.experience-facts{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr))}.flow-panel .date-picker{flex-wrap:wrap}.date-picker input{max-width:100%}.slots-heading{flex-wrap:wrap}.form-actions .button{padding-inline:12px}.reading-buttons{justify-content:flex-start;gap:6px}.gift-card{padding:20px}.gift-card-art{margin-inline:-20px}.gift-card-copy h2{font-size:clamp(1.5rem,7vw,2rem)}.contact-links a{max-width:100%}.footer{margin-inline:16px}.flow-help a{white-space:normal}}
.steps li{overflow-wrap:anywhere}
/* Payment, access acknowledgements and legal documents. */
.payment-information{border-block:1px solid var(--line);padding:1.4rem 0;margin:1.6rem 0}.payment-information h2{font-size:1.65rem}.payment-information p,.payment-recap-note p{font-size:.9rem;color:var(--muted);margin-bottom:.9rem}.payment-information p:last-child,.payment-recap-note p:last-child{margin-bottom:0}.payment-information strong,.payment-recap-note strong{color:var(--text)}.payment-recap-note{padding:1rem 0;border-bottom:1px solid var(--line);margin-bottom:1.8rem}.agreement-group{border:0;padding:0;min-width:0;margin:1.8rem 0}.agreement-group legend{font-family:Georgia,serif;font-size:1.6rem;margin-bottom:1rem}.access-reminder{border-left:2px solid var(--gold);background:#edb25308;padding:1rem;margin-bottom:1.3rem}.access-reminder h3{font-size:1rem}.access-reminder p{font-size:.9rem;color:var(--muted)}.access-reminder p:last-child{margin-bottom:0}.flow-panel label.agreement{display:grid;grid-template-columns:24px minmax(0,1fr);gap:.8rem;align-items:start;margin:1rem 0;font-weight:400;font-size:.95rem;cursor:pointer}.flow-panel input[type=checkbox]{appearance:auto;accent-color:var(--gold);width:22px;height:22px;min-height:22px;padding:0;margin:.25rem 0 0;border-radius:0;flex-shrink:0}.agreement span{min-width:0}.agreement-group .supporting{margin:1.2rem 0 0}.document-note{border-left:2px solid var(--gold);padding:.9em 1em;background:#edb25308;color:var(--muted);font-size:.87em}.legal-copy{font-size:calc(1rem * var(--reading-scale));line-height:1.75;overflow-wrap:anywhere}.legal-copy section{margin:2.5em 0}.legal-copy h2{font-size:1.5em;line-height:1.25}.legal-copy p{margin-bottom:1.15em}.document-nav,.document-related{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;border-block:1px solid var(--line);padding:.8rem 0;font-size:.85em}.document-nav a,.document-related a{padding:.35rem 0}.document-source{color:var(--muted);font-size:.8em;border-top:1px solid var(--line);padding-top:1.2em}.document-related{margin-top:2rem;font-size:.85rem}.decor-section{border-top:1px solid var(--line);margin-top:2rem;padding-top:2rem}.decor-section h2{font-size:1.8rem}.image-note{font-size:.7rem;color:var(--muted);margin:.3rem 0 0}.legal-page .page-heading h1{font-size:clamp(2rem,4vw,3.3rem)}
@media(max-width:600px){.access-reminder{padding:.85rem}.flow-panel label.agreement{gap:.65rem}.payment-information{margin-block:1.4rem}.legal-copy{font-size:calc(1rem * var(--reading-scale))}}
/* Desktop content follows the header's inner edges; mobile keeps its existing layout. */
@media(min-width:851px){
  .reading-column,.flow-shell,.gift-page{width:calc(100% - 3rem);max-width:78rem}
  .reading-column>.page-heading,.flow-shell>.page-heading,.gift-page>.page-heading,.gift-review{max-width:none}
  .reading-column>.page-heading>p,.flow-shell>.page-heading>p,.gift-page>.page-heading>p{max-width:none}
}
@media(min-width:1001px){
  .reading-column,.flow-shell,.gift-page{width:calc(100% - 6rem)}
}
/* Real venue details: a compact gallery and a useful entrance photograph. */
.venue-photo{margin:1.5rem 0 0;min-width:0}
.venue-photo img{width:100%;height:auto;border:1px solid var(--line);border-radius:.3rem}
.venue-photo figcaption{font-size:.85rem;line-height:1.5;color:var(--muted);padding-top:.75rem}
.venue-photo small{display:block;margin-top:.4rem;font-size:.7rem}

/* Five real-decor views, with a full-screen viewer progressively enhanced in JS. */
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.35rem}
.gallery-heading .eyebrow{margin-bottom:.65rem}
.gallery-heading h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:0}
.gallery-hint{margin:0;color:var(--gold);font-size:.8rem;text-align:right}
.gallery-hint span{display:block;color:var(--muted);font-size:.7rem;margin-top:.2rem}
.decor-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.gallery-tile{position:relative;display:block;min-width:0;aspect-ratio:3/2;overflow:hidden;border:1px solid var(--line);border-radius:.3rem;background:#120c16;text-decoration:none;isolation:isolate}
.gallery-featured{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.gallery-wide{grid-column:span 2}
.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.gallery-tile::after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent 25%,#130b16dd);z-index:1;pointer-events:none}
.gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:1rem;font-family:Georgia,serif;font-size:1rem;line-height:1.3;color:#fff4e5;z-index:2}
.gallery-featured .gallery-caption{font-size:1.5rem;padding:1.5rem}
.gallery-expand{position:absolute;top:.65rem;right:.65rem;z-index:2;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid #f5eee560;border-radius:50%;background:#1b101f99;color:#fff4e5;font-size:1.3rem;line-height:1}
.gallery-tile:focus-visible{outline-offset:4px;z-index:3}
.gallery-tile:hover img{transform:scale(1.035)}
.decor-section>.image-note{margin-top:.85rem}
body.gallery-is-open{overflow:hidden}
.gallery-viewer{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:1rem clamp(1rem,3vw,3rem);border:0;background:#140d19fa;color:var(--text);overflow:auto;overscroll-behavior:contain}
.gallery-viewer::backdrop{background:#0d0712ed}
.gallery-viewer[open]{display:flex;flex-direction:column;gap:.7rem;align-items:stretch}
.gallery-viewer-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-shrink:0}
.gallery-viewer-header p{margin:0;font-size:.65rem}
.gallery-close,.gallery-prev,.gallery-next{display:flex;align-items:center;justify-content:center;gap:.7rem;min-width:48px;min-height:48px;padding:.4rem .85rem;border:1px solid #d3b8db60;border-radius:.3rem;background:#211327e8;color:var(--text);font-size:.85rem}
.gallery-close span{font-size:1.8rem;line-height:1}
.gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;flex:1 1 auto;overflow:hidden}
.gallery-full-image{width:100%;height:100%;object-fit:contain;touch-action:pan-y pinch-zoom;user-select:none;max-height:calc(100dvh - 260px);min-height:120px}
.gallery-prev,.gallery-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;padding:.2rem;font-size:2.4rem;box-shadow:0 .2rem 1rem #0005}
.gallery-prev{left:.4rem}.gallery-next{right:.4rem}
.gallery-close:hover,.gallery-prev:hover,.gallery-next:hover{border-color:var(--gold);color:var(--gold)}
.gallery-viewer-caption{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;max-width:75rem;width:100%;margin:0 auto;flex-shrink:0}
.gallery-viewer-caption h2{font-size:1.35rem;line-height:1.3;margin:0}
.gallery-counter{color:var(--gold);font-size:.85rem;white-space:nowrap;margin:0}
.gallery-thumbnails{display:flex;justify-content:center;gap:.5rem;flex-shrink:0;margin:.3rem auto 0;max-width:100%;width:28rem}
.gallery-thumb{padding:0;border:2px solid transparent;background:transparent;border-radius:.2rem;overflow:hidden;min-width:0;flex:1 1 0;min-height:44px;opacity:.55}
.gallery-thumb img{width:100%;height:100%;aspect-ratio:3/2;object-fit:cover}
.gallery-thumb[aria-pressed=true]{border-color:var(--gold);opacity:1}
.gallery-thumb:hover{opacity:1}
.gallery-viewer>.image-note{text-align:center;font-size:.65rem;margin:0;flex-shrink:0}
.gallery-error{text-align:center;color:var(--gold);font-size:.85rem;margin:0}
@media(max-width:900px){
 .decor-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gallery-featured{grid-column:1/-1;grid-row:auto;aspect-ratio:3/2}
 .gallery-wide{grid-column:auto}
}
@media(max-width:600px){
 .gallery-heading{display:block;margin-bottom:1rem}
 .gallery-hint{text-align:left;margin-top:.7rem}
 .gallery-hint span{display:inline;margin-left:.5rem}
 .decor-gallery{gap:.6rem}
 .gallery-caption{padding:.65rem;font-size:.85rem}
 .gallery-featured .gallery-caption{padding:1rem;font-size:1.25rem}
 .gallery-expand{width:1.6rem;height:1.6rem;top:.4rem;right:.4rem;font-size:1rem}
 .gallery-viewer{padding:.75rem .6rem;padding-top:max(.75rem,env(safe-area-inset-top));padding-bottom:max(.75rem,env(safe-area-inset-bottom))}
 .gallery-viewer-caption h2{font-size:1.1rem}
 .gallery-full-image{max-height:calc(100dvh - 235px)}
 .gallery-prev{left:0}.gallery-next{right:0}
 .gallery-thumbnails{gap:.35rem}
}
@media(max-height:500px) and (min-width:601px){
 .gallery-thumbnails,.gallery-viewer>.image-note{display:none}
 .gallery-full-image{max-height:calc(100dvh - 130px)}
}
@media(max-width:360px){.quick-links a{gap:.45rem;padding-inline:.25rem}}

/* Approved readability and form improvements — October 2026. */
.flow-panel input:not([type=radio]):not([type=checkbox]),.flow-panel select,.flow-panel textarea{border-color:#aa91b0}
.field{min-width:0;margin-bottom:1.2rem}
.flow-panel .field>label{display:block;margin-bottom:.4rem}
.required-note{font-size:.75rem;font-weight:400;color:var(--muted)}
.field-error{font-size:.85rem;line-height:1.5;color:#ffb6ad;margin:.45rem 0 .8rem}
[aria-invalid=true]{border-color:#ffb6ad!important}
.form-grid>.field{margin:0}
.experience-layout{display:grid;grid-template-areas:"facts" "story";gap:1.5rem}
.experience-story{grid-area:story;min-width:0}
.experience-story>.button{width:100%}
.experience-story .narrative{text-align:left}
.experience-facts{grid-area:facts;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:0;padding:1.5rem;border:1px solid var(--line);border-radius:.3rem;background:#26172b66;align-self:start}
.experience-facts>.eyebrow,.experience-facts>.supporting{grid-column:1/-1;margin:0}
.experience-facts>div{grid-template-columns:auto minmax(0,1fr)}
.experience-facts>.text-link{font-size:.85rem;align-self:start}
.price-list{display:grid;gap:1rem}
.price-row,.price-row:first-child{padding:1.25rem;border:1px solid var(--line);border-radius:.3rem;background:#26172b66}
.price-row b{font-size:2.2rem}
.gift-essentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin:0 0 2rem;padding:1.3rem 0;border-block:1px solid var(--line)}
.gift-essentials>div{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.gift-essentials strong{font-weight:550;color:var(--text)}
.gift-essentials span{font-size:.85rem;color:var(--muted)}
.gift-essentials>.gift-help-links{grid-column:1/-1;align-items:flex-start;gap:.1rem}
.gift-help-links>.text-link{color:var(--gold);padding:.45rem 0}
.gift-withdrawal-link{font-size:.85rem;color:var(--muted);padding:.45rem 0;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:.2em}
.gift-preview-jump{font-size:.85rem;margin-bottom:1rem}
.review-edit-actions{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin:0 0 1.5rem}
.review-edit-actions button{background:transparent;border:0;border-bottom:1px solid var(--gold);border-radius:0;color:var(--text);padding:.6rem 0;font-size:.9rem;min-height:44px}
@media(min-width:851px){
 .experience-layout{grid-template-areas:"story facts";grid-template-columns:minmax(0,2fr) minmax(16rem,1fr);gap:3rem}
 .experience-story .narrative{max-width:72ch}
 .experience-facts{grid-template-columns:minmax(0,1fr);padding:1.7rem;gap:1.6rem}
 .experience-facts>.eyebrow,.experience-facts>.supporting{grid-column:auto}
 .experience-facts strong{font-size:1rem}
 .experience-facts span{font-size:.9rem}
 .price-list{grid-template-columns:repeat(4,minmax(0,1fr))}
 .price-row,.price-row:first-child{flex-direction:column;align-items:flex-start;justify-content:space-between;gap:2rem;padding:1.5rem;min-height:11rem}
 .price-row b{font-size:2.7rem}
 .gift-preview-jump{display:none}
}
@media(max-width:400px){
 .experience-facts{padding:1.1rem;gap:1rem}
 .gift-essentials{column-gap:1rem}
}
@media(max-width:850px){
 .experience-facts>div:nth-of-type(3){grid-column:1/-1}
 .experience-facts>.text-link{margin:0;padding:.3rem 0}
}

/* Review links: locally hosted official brand assets. */
.reviews{text-align:center;margin:2rem 0 0;padding:2.2rem 1.2rem 0;border-top:1px solid var(--line)}.reviews h2{font-size:2.3rem}.reviews>p:not(.eyebrow){color:var(--muted)}.review-links{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.review-links a{display:flex;align-items:center;justify-content:space-between;gap:2rem;border:1px solid #b6894e88;border-radius:5px;padding:1rem 1.3rem;text-decoration:none;min-height:52px}.review-links span[aria-hidden]{color:var(--gold)}.review-links a:hover{border-color:var(--gold)}.footer nav{align-items:center;gap:1.1rem}.footer-review-icons{display:inline-flex;gap:.2rem;align-items:center}.footer .review-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;flex-shrink:0}.review-icon img{width:24px;height:24px;object-fit:contain}.review-icon:hover{background:#ffffff0a;border-radius:4px}@media(max-width:600px){.review-links{flex-direction:column}.reviews h2{font-size:1.9rem}}
.review-icon img[src$="google-g.png"]{width:72px;height:72px;max-width:none;flex:none}.footer .review-icon{overflow:hidden}

.review-ratings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;max-width:52rem;margin:1.6rem auto 0}.review-rating{padding:1.5rem;border:1px solid #b6894e66;border-radius:5px;background:#ffffff02}.rating-platform{font-weight:600;margin-bottom:.5rem}.rating-score{display:flex;align-items:baseline;justify-content:center;gap:.3rem;line-height:1.2;margin-bottom:.7rem;color:var(--gold)}.rating-score strong{font-family:Georgia,serif;font-size:3rem;font-weight:400}.rating-score span{font-size:1.1rem;color:var(--muted)}.rating-count{font-size:.85rem;color:var(--muted);min-height:2.8em;margin-bottom:.5rem}.review-rating>a{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:44px;text-decoration-color:var(--gold);font-size:.9rem}.reviews .ratings-date{font-size:.75rem;margin:1rem 0 0;color:var(--muted)}@media(max-width:600px){.review-ratings{grid-template-columns:1fr;gap:.8rem}.review-rating{padding:1.2rem}.rating-count{min-height:0}}

/* Prepared event themes. Empty content produces no markup. */
.home-event{--event-accent:#edb253;--event-bg:#302035;--event-edge:#7e5e44;display:grid;grid-template-columns:80px minmax(0,1fr);gap:1.1rem;align-items:start;text-align:left;margin-top:1.4rem;padding:1.3rem;border:1px solid var(--event-edge);border-left:3px solid var(--event-accent);border-radius:.3rem;background:radial-gradient(ellipse at top left,#ffffff07,transparent 65%),var(--event-bg)}
.event-halloween{--event-accent:#ffb86c;--event-bg:#352030;--event-edge:#97603b}
.event-noel{--event-accent:#f1d38a;--event-bg:#193b35;--event-edge:#627e58}
.event-paques{--event-accent:#c4e5ab;--event-bg:#303947;--event-edge:#839b76}
.event-valentin{--event-accent:#ffc3cc;--event-bg:#482337;--event-edge:#ac6279}
.event-nuits{--event-accent:#c5d5ff;--event-bg:#222f50;--event-edge:#687daf}
.event-anniversaire{--event-accent:#ffe0a1;--event-bg:#493345;--event-edge:#b58a4e}
.event-motif{width:80px;height:80px;color:var(--event-accent);margin-top:.2rem}
.event-copy{min-width:0}
.home-event .event-eyebrow{font-size:.59rem;letter-spacing:.13em;color:var(--event-accent);font-weight:650;margin:0 0 .5rem}
.home-event h2{font-size:1.55rem;letter-spacing:-.02em;margin:0 0 .5rem;color:#fff5e9}
.home-event .event-date{font-size:.72rem;color:var(--event-accent);margin:0 0 .65rem;display:flex;flex-wrap:wrap;gap:.1rem .8rem}
.home-event .event-description{font-size:.85rem;line-height:1.65;color:#eee1e5;margin:0}
.home-event .event-link{display:inline-flex;gap:.8rem;align-items:center;min-height:44px;margin-top:.45rem;font-size:.82rem;text-decoration-color:var(--event-accent);color:#fff5e9}
.home-event .event-link .icon{color:var(--event-accent)}
@media(max-width:600px){.home-event{grid-template-columns:52px minmax(0,1fr);gap:.8rem;padding:1rem;margin-top:1.2rem}.event-motif{width:52px;height:52px}.home-event h2{font-size:1.4rem}}

/* Event dates are a separate cue from availability and selection. */
.season-preview-notice{max-width:78rem;margin:0 auto 1rem;padding:.6rem 1rem;text-align:center;color:var(--muted);font-size:.75rem;border-block:1px dashed var(--line)}
.calendar-event-legend{display:flex;gap:.6rem;align-items:center;margin:.5rem 0 1rem;color:var(--event-accent);font-size:.85rem}
.calendar-event-legend .event-motif{width:28px;height:28px;margin:0;flex-shrink:0}
.days:has(.event-day) button{position:relative;min-height:88px}
.days .event-day{border-color:var(--event-edge);background:var(--event-bg);padding-bottom:28px}
.days .event-day .event-motif{position:absolute;width:23px;height:23px;left:calc(50% - 11.5px);bottom:4px;margin:0;color:var(--event-accent);stroke-width:3}
.days .event-day .event-motif circle{display:none}
.days .event-day[aria-pressed=true]{border-color:#fff5df;box-shadow:inset 0 0 0 2px #fff5df;color:#fff5df}
.days .event-day[aria-pressed=true]:after{content:'✓';position:absolute;right:5px;top:2px;font-size:.8rem;color:#fff5df}
.days .event-day:hover:not(:disabled){border-color:var(--event-accent)}
.selected-event-note{color:var(--gold);font-size:.8rem;margin:.3rem 0 1rem}
.season-slots button:not(:disabled){border-color:var(--event-edge)}
.season-slots button[aria-pressed=true]{border-color:var(--event-accent);box-shadow:inset 0 0 0 1px var(--event-accent);color:var(--event-accent);background:var(--event-bg)}
@media(max-width:600px){.calendar-event-legend{font-size:.78rem}.days:has(.event-day) button{min-height:85px}}

/* Seasonal artwork contains no baked-in interface: display the complete scene. */
.hero-art.hero-art-seasonal{aspect-ratio:4/3}
.hero-art-seasonal img{position:static;display:block;width:100%;height:auto;transform:none}
.hero-art.hero-art-seasonal:after{background:linear-gradient(to right,var(--bg),transparent 3%,transparent 96%,var(--bg)),linear-gradient(to bottom,var(--bg),transparent 3%,transparent 96%,var(--bg))}
.home-event .event-visitor-note{font-size:.78rem;line-height:1.55;margin:.65rem 0 0;color:#fff0df;border-top:1px solid var(--event-edge);padding-top:.6rem}

/* Composition du groupe et accompagnement : mêmes contrôles pour tous. */
.team-options{margin:1.2rem 0;padding:1.2rem;border:1px solid #b6894e88;border-radius:.35rem;background:#ffffff03}
.team-options .field{max-width:40rem}.team-options select{max-width:16rem}.team-options .supporting{margin:.6rem 0 0}
.guide-option{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1rem}.guide-option .agreement{margin:0}.guide-option .inline-note{margin:0 0 1rem}
.preparation-field{margin:1.5rem 0}.preparation-field textarea{width:100%;resize:vertical}.preparation-summary dd{white-space:pre-wrap;overflow-wrap:anywhere}
.guide-pricing{margin:2rem 0}.guide-pricing h2{font-size:1.65rem}
@media(max-width:600px){.team-options{padding:1rem}.team-options select{max-width:none;width:100%}}

.news-opt-in{margin:1.5rem 0}.news-opt-in .supporting{margin:.5rem 0 0;padding-left:calc(24px + .8rem)}

.withdrawal-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2rem;align-items:start}.withdrawal-layout>*{min-width:0}.withdrawal-page fieldset{border:0;padding:0;margin:0;min-width:0}.withdrawal-page .field{margin-bottom:1.2rem}.withdrawal-help{padding:1.5rem;border-left:2px solid var(--gold);overflow-wrap:anywhere}.withdrawal-help h2{font-size:1.5rem}.withdrawal-page .summary-list dd{overflow-wrap:anywhere}@media(max-width:760px){.withdrawal-layout{grid-template-columns:1fr}.withdrawal-help{padding:1rem}.withdrawal-page .form-actions{align-items:stretch}.withdrawal-page .button{white-space:normal}}

/* Keep the inert-before-JavaScript gift fieldset visually neutral. */
.form-fields{border:0;padding:0;margin:0;min-width:0}

/* Homepage ambient loop: same frame as the original hero, no layout shift. */
.hero-art-animated .hero-poster,.hero-art-animated .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
.hero-art-animated .hero-video{opacity:0;pointer-events:none}
.hero-art-animated.video-ready .hero-video{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-art-animated .hero-video{display:none}}
