:root{--stage: #15110f;--stage-2: #1f1916;--ink: #f1e7da;--muted: #b5a493;--varnish: #d39a52;--line: rgba(241, 231, 218, .14);--ph-a: #3a2a20;--ph-b: #1c1512;--display: "Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;--body: "Jost", "Futura", "Century Gothic", system-ui, sans-serif;--step--1: .85rem;--step-0: 1.05rem;--step-1: 1.35rem;--step-2: 2rem;--step-3: clamp(2.4rem, 6vw, 3.6rem);--step-4: clamp(3.6rem, 12vw, 8.5rem);color-scheme:dark;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--stage: #f3ece4;--stage-2: #e9dfd3;--ink: #231a15;--muted: #6c5a4c;--varnish: #9c5a1c;--line: rgba(35, 26, 21, .16);--ph-a: #d9c3a8;--ph-b: #b89878;color-scheme:light}}:root[data-theme=light]{--stage: #f3ece4;--stage-2: #e9dfd3;--ink: #231a15;--muted: #6c5a4c;--varnish: #9c5a1c;--line: rgba(35, 26, 21, .16);--ph-a: #d9c3a8;--ph-b: #b89878;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}img{max-width:100%}html{scroll-behavior:smooth}body{margin:0;background:var(--stage);color:var(--ink);font:300 var(--step-0)/1.65 var(--body);-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}main{flex:1}.wrap{max-width:1180px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}h1,h2,h3{font-family:var(--display);font-weight:400;text-wrap:balance;margin:0;line-height:1.05}p{margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--varnish);outline-offset:3px}.tempo{font-family:var(--display);font-style:italic;color:var(--varnish);font-size:var(--step-1);display:flex;align-items:baseline;gap:.75rem}.tempo small{font:400 var(--step--1)/1 var(--body);font-style:normal;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.label{font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--stage)}header.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:color-mix(in srgb,var(--stage) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}header.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.9rem}.mark{font-family:var(--display);font-size:1.25rem;text-decoration:none;letter-spacing:.02em;white-space:nowrap}.mark i{color:var(--varnish)}.nav-right{display:flex;align-items:center;gap:clamp(.9rem,3vw,2rem)}nav ul{list-style:none;display:flex;gap:clamp(.9rem,3vw,2rem);margin:0;padding:0;flex-wrap:wrap}nav a{text-decoration:none;font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}nav a:hover,nav a[aria-current=page]{color:var(--ink)}nav a[aria-current=page]{border-bottom:1px solid var(--varnish);padding-bottom:.2rem}@media(max-width:760px){header.nav .wrap{flex-wrap:wrap}.nav-right{width:100%;justify-content:space-between}}.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.85rem 1.4rem;font:500 var(--step--1)/1 var(--body);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid var(--varnish);color:var(--ink);border-radius:999px;background:none;cursor:pointer;transition:background .25s,color .25s,border-color .25s}.btn.solid{background:var(--varnish);color:var(--stage)}.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--stage)}.btn.small{padding:.6rem 1rem}.btn:disabled{opacity:.6;cursor:default}.hero{background:#000;color:#f1e7da;--stage: #000;--ink: #f1e7da;--muted: #b5a493;--varnish: #d39a52;--line: rgba(241, 231, 218, .14)}.hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,5vw,4rem);align-items:center;padding-block:clamp(2.5rem,7vw,5.5rem)}.hero-text{min-width:0;display:grid;gap:1.6rem}.hero h1{font-size:var(--step-4);letter-spacing:-.02em;line-height:.9;font-weight:600;color:#fff;text-shadow:0 2px 28px rgba(255,236,205,.22)}.hero h1 em{display:block;color:#ecb468;font-weight:600;text-shadow:0 2px 30px rgba(236,180,104,.35)}.hero .lede{font-size:var(--step-1);max-width:30ch;color:#d9cbb9;line-height:1.45}.staff{display:grid;gap:6px;width:min(260px,70%)}.staff span{height:1px;background:var(--line)}.cta{display:flex;flex-wrap:wrap;gap:.8rem}.hero-photo{position:relative;min-width:0}.hero-photo .shot{aspect-ratio:4 / 5;border-radius:220px 220px 4px 4px}.hero-photo .shot img{object-position:50% 30%}.fhole{position:absolute;right:-6px;bottom:12%;width:54px;color:var(--varnish);opacity:.9}.programme{list-style:none;margin:0;padding:0;display:grid}.programme a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:baseline;padding-block:1.3rem;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .25s}.programme li:first-child a{border-top:1px solid var(--line)}.programme .p-title{font-family:var(--display);font-size:var(--step-2);line-height:1.1}.programme .p-desc{display:block;font:300 var(--step--1)/1.5 var(--body);color:var(--muted);margin-top:.3rem}.programme .p-go{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.programme a:hover{padding-left:.6rem}.programme a:hover .p-go{color:var(--varnish)}@media(max-width:600px){.programme a{grid-template-columns:minmax(0,1fr);gap:.3rem}.programme .p-go{display:none}}.shot{position:relative;overflow:hidden;margin:0;max-width:100%;background:radial-gradient(120% 90% at 30% 20%,var(--ph-a),var(--ph-b))}.shot img,.shot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.shot .ph{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:.6rem;color:var(--muted);text-align:center;padding:1rem;font-size:var(--step--1)}.shot .ph svg{width:34px;height:34px;opacity:.55}section.movement>.wrap{padding-block:clamp(3rem,8vw,6rem);display:grid;gap:2.5rem}section.movement+section.movement{border-top:1px solid var(--line)}.sec-head{display:grid;gap:.8rem}.sec-head h1,.sec-head h2{font-size:var(--step-3)}.sec-head em{color:var(--varnish)}.sec-lede{color:var(--muted);max-width:52ch}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);align-items:start}.about-copy{display:grid;gap:1.2rem;max-width:62ch;min-width:0}.about-copy p:first-child{font-family:var(--display);font-size:var(--step-2);line-height:1.2}.follow{display:grid;gap:.6rem;padding-top:1.2rem;border-top:1px solid var(--line)}.follow .socials a{color:var(--ink);border-bottom:1px solid var(--varnish);padding-bottom:.15rem}.about-side{display:grid;gap:2rem;min-width:0}.about-side .shot{aspect-ratio:4 / 5;border-radius:3px}.about-side .shot img{object-position:50% 25%}.facts{display:grid;gap:0;margin:0}.facts div{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding-block:.9rem;border-bottom:1px solid var(--line)}.facts dt{font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-top:.2rem}.facts dd{margin:0}.facts .pdf-link{color:var(--varnish);text-underline-offset:.25em}.facts .pdf-link:hover{color:var(--ink)}.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1.5rem}.video{display:grid;gap:.8rem;min-width:0;align-content:start}.video .shot{aspect-ratio:16 / 9;border-radius:4px}.play{position:absolute;inset:0;margin:auto;width:68px;height:68px;border-radius:50%;border:1px solid rgba(241,231,218,.6);background:#15110f73;color:#f1e7da;display:grid;place-items:center;cursor:pointer;z-index:2;transition:transform .25s,background .25s}.play:hover{transform:scale(1.06);background:var(--varnish)}.play svg{width:22px;height:22px;margin-left:4px}.video h2{font-size:var(--step-1)}.video p{color:var(--muted);font-size:var(--step--1);letter-spacing:.04em}.video.featured{grid-column:1 / -1}.video.featured .shot{aspect-ratio:21 / 9}@media(max-width:700px){.video.featured .shot{aspect-ratio:16 / 9}}.gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.gallery button{all:unset;cursor:zoom-in;display:block;min-width:0}.gallery button:focus-visible{outline:2px solid var(--varnish);outline-offset:3px}.gallery .shot{width:100%;aspect-ratio:4 / 5;border-radius:3px;transition:filter .3s}.gallery .shot img{object-position:var(--pos, 50% 25%)}.gallery button:hover .shot{filter:brightness(1.12)}@media(max-width:1000px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}.lightbox{position:fixed;inset:0;z-index:20;background:#0a0705eb;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.lightbox .shot{width:min(900px,100%);height:80vh;border-radius:3px;background:none}.lightbox .shot img{object-fit:contain}.lightbox .close,.quote-close{background:none;border:1px solid currentColor;border-radius:999px;padding:.5rem 1rem;font:500 var(--step--1)/1 var(--body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.lightbox .close{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));color:#f1e7da}.cal{display:grid;gap:1rem;padding:clamp(1rem,3vw,1.6rem);background:var(--stage-2);border-radius:4px;min-width:0}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.cal-head h2{font-size:var(--step-1);font-style:italic}.cal-nav{width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid var(--line);background:none;color:var(--ink);font:400 1.3rem/1 var(--display);cursor:pointer}.cal-nav:hover:not(:disabled){border-color:var(--varnish);color:var(--varnish)}.cal-nav:disabled{opacity:.3;cursor:default}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-dow span{text-align:center;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.day{aspect-ratio:1;max-width:100%;border-radius:50%;border:1px solid transparent;background:none;color:var(--ink);font:400 var(--step--1)/1 var(--body);font-variant-numeric:tabular-nums;cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s}.day:hover:not(:disabled){border-color:var(--varnish)}.day.today{border-color:var(--line)}.day:disabled{cursor:default;color:var(--muted);opacity:.35}.day.booked{text-decoration:line-through;opacity:.5;color:var(--muted)}.day.selected{background:var(--varnish);color:var(--stage);border-color:var(--varnish);opacity:1}.day.blank{visibility:hidden}.cal-legend{display:flex;flex-wrap:wrap;gap:1rem;font-size:var(--step--1);color:var(--muted)}.cal-legend span{display:inline-flex;align-items:center;gap:.45rem}.cal-legend i{width:.8rem;height:.8rem;border-radius:50%;display:inline-block}.k-open{border:1px solid var(--ink)}.k-booked{background:var(--muted);opacity:.5}.k-sel{background:var(--varnish)}.cal-status{font-size:var(--step--1);color:var(--muted);min-height:1.4em}.field{display:grid;gap:.35rem;min-width:0;align-content:start}.field.full{grid-column:1 / -1}.field label{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.field label b{color:var(--varnish);font-weight:400}.field input,.field select,.field textarea{width:100%;min-width:0;padding:.7rem .1rem;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);border-radius:0;font:300 var(--step-0)/1.4 var(--body)}.field select option{background:var(--stage-2);color:var(--ink)}.field textarea{resize:vertical;min-height:7rem}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--varnish)}.field .hint{font-size:var(--step--1);color:var(--muted);min-height:1.2em}.field .hint.warn{color:var(--varnish)}.form-foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.form-status{font-size:var(--step--1);color:var(--muted)}.form-status.ok{color:var(--ink)}.form-status.err{color:var(--varnish)}.contact-alt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding-top:1.6rem;border-top:1px solid var(--line)}.contact-facts a{text-decoration-color:var(--varnish);text-underline-offset:.25em;overflow-wrap:anywhere}.contact-facts a:hover{color:var(--varnish)}.contact-facts .email{text-decoration:none}.email-line{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}.email{font-family:var(--display);font-size:var(--step-1);user-select:all;overflow-wrap:anywhere}.copy{background:none;border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:.4rem .9rem;font:400 var(--step--1)/1 var(--body);cursor:pointer}.socials{display:flex;flex-wrap:wrap;gap:1.2rem}.socials a{color:var(--muted);text-decoration:none;font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase}.socials a:hover{color:var(--varnish)}.quote{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:6px;background:var(--stage);color:var(--ink)}.quote::backdrop{background:#0a0705bf}.quote-inner{display:grid;grid-template-rows:auto minmax(0,1fr);max-height:calc(100dvh - 34px)}.quote-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}.quote-head h2{font-size:var(--step-1);font-style:italic}.quote-close{color:var(--ink)}.quote-body{overflow-y:auto;padding:clamp(1.1rem,3vw,1.8rem)}.q-step{display:grid;gap:1.2rem}.q-lede{font-family:var(--display);font-size:var(--step-1)}.q-h{font-size:var(--step-1);font-style:italic;text-transform:capitalize}.q-note{color:var(--muted);font-size:var(--step--1);min-height:1.4em}.q-summary{font-family:var(--display);font-style:italic;color:var(--varnish);text-transform:capitalize}.q-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem}.q-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem}.q-choice{display:grid;gap:.3rem;align-content:start;text-align:left;text-decoration:none;color:var(--ink);padding:1rem 1.1rem;border:2px solid var(--varnish);border-radius:6px;background:var(--stage-2);font:inherit;cursor:pointer;transition:background .25s}.q-choice b{font:400 var(--step-1)/1.2 var(--display);color:var(--varnish)}.q-choice span:last-child{color:var(--muted);font-size:var(--step--1)}.q-choice.wa{border-color:#6fae84}.q-choice.wa b{color:#6fae84}.q-choice:hover:not(:disabled){background:color-mix(in srgb,var(--varnish) 14%,var(--stage-2))}.q-choice.wa:hover{background:color-mix(in srgb,#6fae84 14%,var(--stage-2))}.q-choice:disabled{opacity:.6;cursor:default}.q-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.5rem}.q-time{padding:.6rem .4rem;border:1px solid var(--line);border-radius:999px;background:none;color:var(--ink);font:400 var(--step--1)/1 var(--body);font-variant-numeric:tabular-nums;cursor:pointer}.q-time:hover:not(:disabled){border-color:var(--varnish);color:var(--varnish)}.q-time:disabled{text-decoration:line-through;opacity:.4;cursor:default}.q-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 1.4rem}.q-other-row{display:flex;gap:1.2rem}.q-inline{display:flex!important;align-items:center;gap:.6rem;letter-spacing:.08em}.q-inline input{width:5rem;text-align:center}.q-price,.q-busy{display:grid;gap:.3rem;padding:1.2rem;border:2px solid var(--varnish);border-radius:6px;background:var(--stage-2)}.q-price b{font:400 var(--step-3)/1.1 var(--display);color:var(--varnish)}.q-price p,.q-busy p{color:var(--muted);font-size:var(--step--1)}.q-busy{border-color:#d77a68}.q-busy b{font:400 var(--step-2)/1.1 var(--display);color:#d77a68}.q-recap{margin:0;display:grid}.q-recap div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding-block:.6rem;border-bottom:1px solid var(--line)}.q-recap dt{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.q-recap dd{margin:0}.q-nearby{display:flex;flex-wrap:wrap;gap:.6rem}.q-step .cal{background:var(--stage-2)}@media(max-width:520px){.q-fields{grid-template-columns:minmax(0,1fr)}}footer{border-top:1px solid var(--line)}footer .wrap{padding-block:1.6rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;color:var(--muted);font-size:var(--step--1)}@media(max-width:820px){.hero .wrap,.about-grid{grid-template-columns:minmax(0,1fr)}.hero-photo{max-width:420px}.facts div{grid-template-columns:7rem minmax(0,1fr)}}@media(prefers-reduced-motion:no-preference){.rise>*{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}.rise>*:nth-child(2){animation-delay:.08s}.rise>*:nth-child(3){animation-delay:.16s}.rise>*:nth-child(4){animation-delay:.24s}.rise>*:nth-child(5){animation-delay:.32s}@keyframes rise{0%{transform:translateY(14px)}to{transform:none}}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
