:root{color-scheme:dark;font-family:Inter,Segoe UI,Arial,sans-serif;color:#f2ede2;background:#12110f;font-synthesis:none;text-rendering:optimizeLegibility;--charcoal: #12110f;--charcoal-soft: #1c1a17;--ivory: #f2ede2;--ivory-muted: #c8c1b4;--brass: #b88a45;--brass-dark: #7a5522;--red: #c83d32;--red-dark: #a52e27;--steel: #2f5068;--border-dark: rgb(18 17 15 / 18%);--border-light: rgb(242 237 226 / 18%);--gutter: clamp(1rem, 4vw, 4.5rem);--section-space: clamp(4.5rem, 10vw, 10rem);--display: Anton, Impact, Haettenschweiler, "Arial Narrow Bold", "Segoe UI", sans-serif}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:var(--charcoal)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}:focus-visible{outline:3px solid var(--brass);outline-offset:4px}.site-header{position:sticky;z-index:20;top:0;border-bottom:1px solid var(--border-light);background:#12110ff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-inner{width:min(100%,1600px);min-height:4.75rem;margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem}.wordmark{min-height:44px;display:inline-grid;align-content:center;color:var(--ivory);font-family:var(--display);font-size:1rem;line-height:.8;letter-spacing:.08em;text-decoration:none}.wordmark span:last-child{color:var(--brass)}nav{display:flex;align-items:center;gap:clamp(1rem,3vw,2.5rem);margin-left:auto}nav a,.header-back{min-height:44px;display:inline-flex;align-items:center;gap:.5rem;color:var(--ivory-muted);font-size:.85rem;font-weight:700;text-decoration:none}nav a:hover,.header-back:hover{color:var(--ivory)}.header-booking-cta{flex:0 0 auto;white-space:nowrap}.mobile-menu-toggle,.mobile-nav{display:none}.button{min-height:48px;padding:.8rem 1.15rem;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;border:1px solid transparent;border-radius:2px;font-size:.88rem;font-weight:850;line-height:1;text-decoration:none;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:#df463a}.hero-actions>.button-primary,.mobile-booking-cta>.button-primary{transform:translateZ(0);transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s cubic-bezier(.16,1,.3,1)}.hero-actions>.button-primary svg,.mobile-booking-cta>.button-primary svg{flex:0 0 auto;transition:transform .15s cubic-bezier(.16,1,.3,1)}@media(hover:hover)and (pointer:fine){.hero-actions>.button-primary:hover,.mobile-booking-cta>.button-primary:hover{background:var(--red-dark);transform:translateY(-2px)}.hero-actions>.button-primary:hover svg,.mobile-booking-cta>.button-primary:hover svg{transform:translate(4px)}}.hero-actions>.button-primary:focus-visible,.mobile-booking-cta>.button-primary:focus-visible{background:var(--red-dark);outline:3px solid var(--brass);outline-offset:4px;transform:translateY(-1px)}.hero-actions>.button-primary:focus-visible svg,.mobile-booking-cta>.button-primary:focus-visible svg{transform:translate(4px)}.hero-actions>.button-primary:active,.mobile-booking-cta>.button-primary:active{background:var(--red-dark);transform:translateY(1px) scale(.985);transition-duration:80ms}.hero-actions>.button-primary:active svg,.mobile-booking-cta>.button-primary:active svg{transform:translate(1px) scale(.96);transition-duration:80ms}.button-dark{width:fit-content;border-color:var(--charcoal);color:var(--charcoal)}.button-dark:hover{background:var(--charcoal);color:var(--ivory)}.button:disabled{border-color:#f2ede214;background:#302d29;color:#8f8980}.kicker{margin-bottom:1.35rem;color:var(--brass);font-size:.72rem;font-weight:900;letter-spacing:.16em;line-height:1.3}.hero{width:min(100%,1600px);height:calc(100svh - 4.75rem);min-height:40rem;max-height:56rem;margin:0 auto;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);grid-template-rows:minmax(0,1fr) auto}.hero-copy{padding:clamp(2.5rem,5vh,4.5rem) var(--gutter);display:flex;flex-direction:column;justify-content:center}.hero-copy>*{max-width:35rem}.hero h1{max-width:8ch;margin-bottom:clamp(1.4rem,3vw,2rem);display:grid;font-family:var(--display);font-size:clamp(3.8rem,7vw,7rem);font-weight:900;letter-spacing:-.025em;line-height:.78}.hero-line{display:block}.hero-title-mask{display:block;overflow:hidden;margin-block:-.135em;padding:.16em 0 .15em}.accent-line{color:var(--red)}.hero-description{max-width:42rem;margin-bottom:1.8rem;color:var(--ivory-muted);font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.65}.hero-actions{display:flex;align-items:center;gap:1.4rem}.text-link{min-height:44px;width:fit-content;display:inline-flex;align-items:center;gap:.55rem;border-bottom:1px solid currentColor;font-size:.87rem;font-weight:800;text-decoration:none}.text-link:hover{color:var(--brass)}.hero-note{margin:1rem 0 0;color:#9e978d;font-size:.76rem}.hero-image-shell{position:relative;min-height:0;height:100%;overflow:hidden;background:#d9d1c2;clip-path:inset(0);will-change:clip-path}.hero-image-shell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgb(18 17 15 / 40%) 0%,transparent 32%,transparent 70%,rgb(18 17 15 / 45%) 100%)}.hero-image{width:100%;height:100%;object-fit:cover;object-position:50% 50%;scale:1;transform-origin:50% 50%}@media(min-width:761px){.hero-image{object-position:50% 50%;scale:1;transform-origin:50% 50%}}.image-tag{position:absolute;z-index:2;right:2.2rem;bottom:1.25rem;padding:.55rem .7rem;border:1px solid rgb(242 237 226 / 42%);background:#12110fe5;color:var(--ivory);font-size:.62rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.proof-band{grid-column:1 / -1;width:min(100%,1600px);margin:0 auto;padding:1.4rem var(--gutter);display:grid;grid-template-columns:repeat(3,1fr);background:var(--ivory);color:var(--charcoal)}.proof-item{min-height:5.5rem;padding:.5rem clamp(1rem,3vw,2.5rem);display:grid;grid-template-columns:auto 1fr;align-content:center;align-items:center;column-gap:1rem;border-right:1px solid var(--border-dark)}.proof-item:first-child{padding-left:0}.proof-item:last-child{border-right:0}.proof-item>span{color:var(--red);font-family:var(--display);font-size:1.6rem}.proof-item strong{font-size:clamp(.9rem,1.4vw,1.1rem)}.proof-item small{grid-column:2;color:#625d55;font-size:.68rem}.section{width:min(100%,1600px);margin:0 auto;padding:var(--section-space) var(--gutter)}.section-heading{display:grid;grid-template-columns:minmax(12rem,.7fr) 1.3fr;align-items:start;gap:2rem}.section-heading h2,.work-copy h2,.location-copy h2,.booking-intro h2,.closing-section h2,.admin-title h1{margin-bottom:2rem;font-family:var(--display);font-size:clamp(3rem,6vw,6.5rem);font-weight:900;letter-spacing:-.025em;line-height:.84}.service-ledger{margin-top:clamp(2rem,5vw,5rem);border-top:1px solid var(--border-light)}.service-row{min-height:6rem;display:grid;grid-template-columns:3rem minmax(0,1fr) auto 2rem;align-items:center;gap:1rem;border-bottom:1px solid var(--border-light);color:var(--ivory);text-decoration:none;transition:color .18s ease,transform .18s ease,border-color .18s ease}.service-row:hover,.service-row:focus-visible{border-color:var(--red);color:var(--red);transform:translate(6px)}.service-number{color:var(--brass);font-size:.75rem;font-weight:800}.service-name{font-family:var(--display);font-size:clamp(1.7rem,3.5vw,3.2rem);letter-spacing:.01em;text-transform:uppercase}.service-price{color:currentColor;font-family:var(--display);font-size:clamp(1.5rem,3vw,2.6rem)}.provisional-note{margin:1rem 0 0;color:#a9a196;font-size:.72rem}.work-section{position:relative;min-height:48rem;display:grid;grid-template-columns:minmax(0,.8fr) minmax(20rem,.9fr);align-items:center;gap:clamp(3rem,8vw,8rem);background:var(--ivory);color:var(--charcoal)}.work-section .kicker,.location-section .kicker,.admin-main .kicker{color:var(--brass-dark)}.work-section :focus-visible,.location-section :focus-visible,.admin-page :focus-visible{outline-color:var(--brass-dark)}.work-copy{align-self:end;padding-bottom:3rem}.work-copy>p:not(.kicker){max-width:35rem;color:#4b4741;font-size:1.06rem;line-height:1.65}.work-quote{max-width:18ch;margin:clamp(1.8rem,3vw,2.8rem) 0 1.8rem;color:var(--brass-dark);font-family:var(--display);font-size:clamp(2rem,3.5vw,3.65rem);font-weight:900;letter-spacing:-.025em;line-height:.9}.work-quote p{margin:0}.light-link{margin-top:1.4rem}.work-figure{width:min(100%,37rem);margin:0;justify-self:center;transform:rotate(1.3deg)}.work-image-crop{aspect-ratio:4 / 5;overflow:hidden;background:#9aa78d}.work-image-crop img{width:100%;height:calc(100% + 70px);object-fit:cover;object-position:50% 38%}.work-figure figcaption{padding:.75rem 0 0;display:flex;justify-content:space-between;border-top:1px solid var(--charcoal);font-size:.68rem;font-weight:900;letter-spacing:.12em}.work-stamp{position:absolute;left:46%;bottom:6%;width:9rem;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--charcoal);border-radius:50%;background:var(--red);color:#fff;font-family:var(--display);font-size:.9rem;line-height:1.05;text-align:center;transform:rotate(-8deg)}.work-stamp svg{width:2.6rem}.booking-section{width:min(100%,1600px);margin:0 auto;padding:var(--section-space) var(--gutter);background:var(--charcoal)}.mobile-booking-cta{display:none}.booking-intro{display:grid;grid-template-columns:.7fr 1.2fr .8fr;gap:2rem;align-items:start}.booking-intro>p:last-child{max-width:30rem;color:var(--ivory-muted);line-height:1.65}.booking-shell{margin-top:clamp(2.5rem,6vw,5rem);border:1px solid var(--border-light);background:#171512}.stepper{margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--border-light);list-style:none}.stepper li{min-height:4.5rem;padding:.8rem 1rem;display:flex;align-items:center;justify-content:center;gap:.8rem;border-right:1px solid var(--border-light);color:#8e887f;font-size:.75rem;font-weight:850;letter-spacing:.04em}.stepper li:last-child{border-right:0}.stepper li>span{width:1.8rem;height:1.8rem;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%}.stepper .current{color:var(--ivory);background:#211e1a}.stepper .current>span{border-color:var(--red);background:var(--red)}.stepper .complete{color:var(--brass)}.booking-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(17rem,.6fr)}.booking-controls{padding:clamp(1.4rem,4vw,3.5rem)}fieldset{min-width:0;margin:0 0 2.8rem;padding:0;border:0}fieldset:last-child{margin-bottom:0}legend{width:100%;margin-bottom:1rem;padding:0;color:var(--ivory);font-family:var(--display);font-size:1.4rem;letter-spacing:.02em;text-transform:uppercase}.choice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.choice{min-height:4rem;padding:.85rem 1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;border:1px solid var(--border-light);color:var(--ivory-muted);transition:color .18s ease,border-color .18s ease,background-color .18s ease}.choice:hover{color:var(--ivory);border-color:#f2ede270}.choice.selected{border-color:var(--red);background:#c83d321c;color:var(--ivory)}.choice input{position:absolute;opacity:0;pointer-events:none}.choice:has(input:focus-visible){outline:3px solid var(--brass);outline-offset:3px}.choice strong{color:var(--brass)}.date-list{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.date{min-height:6.5rem;padding:.65rem;display:grid;place-items:center;border:1px solid var(--border-light);border-radius:0;background:transparent;color:var(--ivory-muted);transition:color .18s ease,border-color .18s ease,background-color .18s ease}.date:hover{border-color:#f2ede27a;color:var(--ivory)}.date.selected{border-color:var(--red);background:var(--red);color:#fff}.date strong{font-family:var(--display);font-size:2rem}.date small{min-height:1em;font-size:.64rem}.slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.slot{min-height:4.3rem;padding:.65rem .4rem;display:grid;place-items:center;gap:.15rem;border:1px solid var(--border-light);border-radius:0;background:transparent;color:var(--ivory)}.slot:hover:not(:disabled){border-color:var(--red)}.slot.selected{border-color:var(--red);background:var(--red)}.slot span{color:var(--brass);font-size:.65rem;font-weight:750}.slot:disabled{border-style:dashed;color:#858078;background:#f2ede208}.slot:disabled span{color:#9b6a66}.empty-slots{min-height:8rem;padding:1.5rem;display:grid;grid-template-columns:auto 1fr;align-content:center;gap:.35rem .8rem;border:1px dashed var(--border-light);color:var(--ivory-muted)}.empty-slots svg{grid-row:1 / 3;color:var(--brass)}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.field-grid label{display:grid;gap:.5rem;color:var(--ivory);font-size:.78rem;font-weight:800}.field-grid input{width:100%;min-height:48px;padding:.75rem .85rem;border:1px solid var(--border-light);border-radius:0;background:var(--charcoal);color:var(--ivory)}.field-grid input::placeholder{color:#8d877e}.field-grid input[aria-invalid=true]{border-color:var(--red)}.field-error,.form-errors{color:#ff9187;font-size:.72rem;font-weight:600;line-height:1.4}.booking-summary-panel{padding:clamp(1.4rem,3vw,2.5rem);border-left:1px solid var(--border-light);background:#201d19}.booking-summary{margin:0}.booking-summary>div{padding:.95rem 0;display:grid;gap:.3rem;border-bottom:1px solid var(--border-light)}.booking-summary dt{color:#a69f95;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.booking-summary dd{margin:0;color:var(--ivory);font-weight:750}.summary-disclaimer{margin:1rem 0;color:#b7afa4;font-size:.7rem;line-height:1.45}.form-errors{min-height:1.5rem;margin-bottom:.5rem}.booking-submit{width:100%}.booking-complete{max-width:48rem;margin:0 auto;padding:clamp(3rem,8vw,7rem) clamp(1.4rem,5vw,4rem);text-align:center}.booking-complete>svg{margin-bottom:1.5rem;color:var(--brass)}.booking-complete h3{margin-bottom:1rem;font-family:var(--display);font-size:clamp(2.2rem,5vw,4rem);text-transform:uppercase}.booking-complete>p:not(.kicker){max-width:42rem;margin-inline:auto;color:var(--ivory-muted);line-height:1.6}.booking-complete .booking-summary{margin:2rem auto;text-align:left}.location-section{display:grid;grid-template-columns:minmax(20rem,.88fr) minmax(0,1.12fr);gap:clamp(3rem,8vw,8rem);align-items:center;background:var(--ivory);color:var(--charcoal)}.location-image-crop{max-height:45rem;aspect-ratio:4 / 5;overflow:hidden;background:#ded6c4}.location-image-crop img{width:100%;height:calc(100% + 70px);object-fit:cover;object-position:58% 52%}.location-copy>p:not(.kicker){max-width:36rem;color:#4c4740;font-size:1.05rem;line-height:1.65}.location-copy address{margin:2rem 0;padding:1.2rem 0;display:flex;align-items:flex-start;gap:.8rem;border-block:1px solid var(--border-dark);font-style:normal}.location-copy address svg{color:var(--red)}.location-copy address span{display:grid;gap:.3rem}.location-copy address small{color:#5d5850;font-size:.7rem}.location-map{height:clamp(15rem,25vw,19rem);margin:0 0 1.5rem;overflow:hidden;border:1px solid var(--border-dark);background:#ded6c4}.location-map iframe{width:100%;height:100%;display:block;border:0}.closing-section{position:relative;width:min(100%,1600px);min-height:40rem;margin:0 auto;padding:var(--section-space) var(--gutter);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.closing-section h2{position:relative;z-index:1;max-width:12ch;margin-bottom:2.5rem;font-size:clamp(4rem,9vw,10rem);color:var(--ivory)}.closing-mark{position:absolute;right:-4vw;width:min(45vw,38rem);color:#b88a4529;transform:rotate(-12deg)}.closing-actions{position:relative;z-index:1;display:flex;align-items:center;gap:1.5rem}.whatsapp-link{min-height:48px;display:inline-flex;align-items:center;gap:.6rem;font-weight:800;text-decoration:none}.whatsapp-link:hover{color:var(--brass)}footer{width:min(100%,1600px);min-height:10rem;margin:0 auto;padding:2rem var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid var(--border-light);background:#0c0b0a}.footer-brand{display:grid;gap:.35rem}.footer-brand strong{font-family:var(--display);font-size:1.4rem;letter-spacing:.06em}.footer-brand span{color:#9c958b;font-size:.7rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem 1.4rem}.footer-links a{min-height:44px;display:inline-flex;align-items:center;gap:.4rem;color:var(--ivory-muted);font-size:.76rem;text-decoration:none}.footer-links a:hover{color:var(--ivory)}.admin-page{min-height:100vh;background:var(--ivory);color:var(--charcoal)}.admin-page .site-header{background:#12110ff7}.admin-main{width:min(100%,1380px);margin:0 auto;padding:clamp(3rem,7vw,7rem) var(--gutter) 7rem}.admin-title{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.admin-title h1{max-width:11ch;margin-bottom:0}.demo-badge{min-height:44px;padding:.65rem .85rem;display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border-dark);color:var(--steel);font-size:.72rem;font-weight:850;text-transform:uppercase}.admin-toolbar{margin:3rem 0 0;padding:1rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;border:1px solid var(--border-dark);background:#e9e3d8}.admin-day-picker{display:grid;gap:.45rem}.admin-day-picker label{font-size:.65rem;font-weight:900;letter-spacing:.1em}.admin-day-picker select{min-width:12rem;min-height:44px;padding:.6rem 2rem .6rem .7rem;border:1px solid var(--charcoal);border-radius:0;background:var(--ivory);color:var(--charcoal)}.filter-group{display:flex;align-items:center;gap:.35rem}.filter-group>svg{margin-right:.4rem}.filter-group button{min-height:44px;padding:.55rem .75rem;border:1px solid var(--border-dark);border-radius:0;background:transparent;color:var(--charcoal);font-size:.72rem;font-weight:750}.filter-group button.active{border-color:var(--charcoal);background:var(--charcoal);color:var(--ivory)}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border-dark);border-top:0}.admin-stats>div{min-height:8rem;padding:1.4rem;display:grid;align-content:center;gap:.25rem;border-right:1px solid var(--border-dark)}.admin-stats>div:last-child{border-right:0}.admin-stats span{font-family:var(--display);font-size:2.8rem;line-height:1}.admin-stats strong{color:#5d5850;font-size:.73rem}.agenda-list{margin-top:4rem}.agenda-heading{padding-bottom:1.2rem;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;border-bottom:2px solid var(--charcoal)}.agenda-heading .kicker{margin-bottom:.5rem}.agenda-heading h2{margin:0;font-family:var(--display);font-size:clamp(2.4rem,4vw,4rem);text-transform:uppercase}.agenda-heading>span{color:#625c54;font-size:.74rem}.agenda-list ol{margin:0;padding:0;list-style:none}.agenda-item{min-height:6rem;display:grid;grid-template-columns:6rem minmax(0,1fr) auto;align-items:center;gap:1rem;border-bottom:1px solid var(--border-dark)}.agenda-item time{font-family:var(--display);font-size:1.8rem}.agenda-person{display:grid;gap:.3rem}.agenda-person span{color:#625d55;font-size:.76rem}.status-label{min-width:6.5rem;padding:.45rem .6rem;border:1px solid currentColor;color:var(--steel);font-size:.65rem;font-weight:900;text-align:center;text-transform:uppercase}.status-available .status-label{color:#3f6949}.status-cancelled .status-label,.status-blocked .status-label{color:var(--red-dark)}.status-cancelled .agenda-person strong{text-decoration:line-through}.admin-empty{padding:3rem 0;border-bottom:1px solid var(--border-dark);color:#625d55}.admin-note{margin-top:3rem;padding:1.2rem;display:flex;gap:.9rem;border:1px solid var(--border-dark);background:#e9e3d8}.admin-note svg{flex:0 0 auto;color:var(--steel)}.admin-note p{max-width:62rem;margin:.35rem 0 0;color:#565149;font-size:.82rem;line-height:1.5}@media(max-width:980px){.hero{grid-template-columns:1fr .9fr}.hero h1{font-size:clamp(3.7rem,8vw,6.2rem)}.work-stamp{left:42%}.booking-intro{grid-template-columns:.65fr 1.35fr}.booking-intro>p:last-child{grid-column:2}.booking-grid{grid-template-columns:1fr}.booking-summary-panel{position:sticky;z-index:4;bottom:0;border-top:1px solid var(--border-light);border-left:0}.booking-summary-panel .booking-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.booking-summary-panel .booking-summary>div{padding-block:.5rem}.summary-disclaimer{margin:.8rem 0}}@media(max-width:760px){:root{--gutter: 1rem;--section-space: 5.5rem}.site-header{position:sticky}.header-inner{min-height:4.25rem}.desktop-nav,.header-booking-cta{display:none}.header-inner{position:relative;gap:.75rem}.mobile-menu-toggle{min-width:44px;min-height:44px;margin-left:auto;padding:.45rem .55rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid var(--border-light);border-radius:2px;background:transparent;color:var(--ivory);font-size:.7rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.mobile-nav:not([hidden]){position:absolute;top:calc(100% + 1px);right:0;left:0;margin:0;padding:.5rem var(--gutter) max(.75rem,env(safe-area-inset-bottom,0px));display:grid;gap:0;border-bottom:1px solid var(--border-light);background:var(--charcoal);box-shadow:0 1rem 2.5rem #00000042}.mobile-nav a{min-height:52px;padding:.75rem 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-light);color:var(--ivory);font-size:.95rem;font-weight:850;text-decoration:none}.mobile-nav a:last-child{border-bottom:0}.hero{min-height:auto;display:flex;flex-direction:column}.hero-copy{padding-block:3.5rem 4rem}.hero h1{max-width:none;font-size:clamp(3.7rem,18vw,6rem)}.hero-image-shell{width:calc(100% - 2rem);min-height:0;aspect-ratio:4 / 5;margin:1rem}.hero-image{object-position:50% 70%}.image-tag{right:.6rem;bottom:.6rem}.proof-band{grid-template-columns:1fr;padding-block:.5rem}.proof-item,.proof-item:first-child{min-height:4.5rem;padding:.6rem 0;border-right:0;border-bottom:1px solid var(--border-dark)}.proof-item:last-child{border-bottom:0}.section-heading{grid-template-columns:1fr;gap:.5rem}.section-heading h2,.work-copy h2,.location-copy h2,.booking-intro h2,.admin-title h1{font-size:clamp(3rem,14vw,5rem)}.service-row{min-height:5.5rem;grid-template-columns:2rem minmax(0,1fr) auto}.service-row svg{display:none}.service-name{font-size:clamp(1.5rem,7vw,2.4rem)}.service-price{font-size:clamp(1.35rem,6vw,2rem)}.work-section{min-height:0;grid-template-columns:1fr;gap:2rem}.work-copy{padding-bottom:0}.work-figure{width:calc(100% - 1.5rem)}.work-stamp{right:.5rem;bottom:3rem;left:auto;width:7rem}.booking-intro{grid-template-columns:1fr;gap:.2rem}.booking-intro>p:last-child{grid-column:auto}.stepper li{min-height:4rem;padding-inline:.5rem;display:grid;place-items:center;gap:.25rem;text-align:center}.booking-controls{padding:1.2rem}.choice-list{grid-template-columns:1fr}.date-list{grid-template-columns:repeat(4,minmax(4.1rem,1fr));overflow-x:auto;padding-bottom:.35rem}.date{min-height:6rem}.slot-grid{grid-template-columns:repeat(3,1fr)}.field-grid{grid-template-columns:1fr}.booking-summary-panel{position:static;padding:1rem 1.2rem}.booking-summary-panel .booking-summary{grid-template-columns:repeat(2,1fr)}.location-section{grid-template-columns:1fr;gap:3rem}.location-image-crop{max-height:none}.location-copy{padding-bottom:1rem}.location-map{height:clamp(16rem,68vw,22rem)}.closing-section{min-height:35rem}.closing-section h2{font-size:clamp(4rem,18vw,7rem)}.closing-mark{right:-20vw;width:80vw}footer{align-items:flex-start;flex-direction:column}.footer-links{justify-content:flex-start}.admin-title{flex-direction:column}.admin-title h1{max-width:10ch;font-size:clamp(2.6rem,12vw,4rem)}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-day-picker select{width:100%}.filter-group{width:100%;overflow-x:auto;padding-bottom:.25rem}.filter-group>svg{display:none}.filter-group button{flex:0 0 auto}.admin-stats>div{min-height:6.5rem;padding:1rem}.admin-stats span{font-size:2.2rem}.agenda-item{min-height:6.5rem;grid-template-columns:4.3rem minmax(0,1fr);gap:.8rem}.agenda-item time{font-size:1.5rem}.status-label{grid-column:2;width:fit-content;min-width:0}}@media(max-width:390px){.header-inner{gap:.8rem}.hero-actions,.closing-actions{align-items:stretch;flex-direction:column}.text-link,.whatsapp-link{width:fit-content}.slot-grid{grid-template-columns:repeat(2,1fr)}.admin-stats{grid-template-columns:1fr}.admin-stats>div{min-height:5rem;grid-template-columns:auto 1fr;align-items:baseline;gap:.8rem;border-right:0;border-bottom:1px solid var(--border-dark)}.admin-stats>div:last-child{border-bottom:0}.agenda-heading{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-line,.hero-support,.hero-image-shell{visibility:visible!important;opacity:1!important;transform:none!important;clip-path:none!important}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.booking-section{padding-block:clamp(4rem,7vw,7rem)}.booking-intro{grid-template-columns:.55fr 1.25fr .9fr;gap:clamp(1rem,3vw,3rem);align-items:end}.booking-intro h2{max-width:9ch;font-size:clamp(3rem,5vw,5.2rem)}.booking-intro>p:last-child{align-self:end;margin-bottom:.35rem}.booking-shell{margin-top:clamp(1.75rem,3vw,2.75rem);border-color:#12110f73;background:var(--ivory);color:var(--charcoal)}.stepper-nav{border-bottom:1px solid rgb(18 17 15 / 28%);background:#e7e0d4}.stepper{grid-template-columns:repeat(4,1fr);border:0}.stepper li{min-height:0;padding:0;border:0;color:#6c655c}.stepper li button{width:100%;min-height:4.75rem;padding:.75rem 1rem;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto;align-items:center;gap:.1rem .65rem;border:0;border-right:1px solid rgb(18 17 15 / 18%);border-bottom:3px solid transparent;border-radius:0;background:transparent;color:inherit;text-align:left}.stepper li:last-child button{border-right:0}.stepper li button>span{grid-row:auto;width:2rem;height:2rem;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:.68rem;font-weight:900}.stepper li button strong{color:currentColor;font-size:.78rem}.stepper li.current{color:var(--charcoal);background:var(--ivory)}.stepper li.current button{border-bottom-color:var(--red)}.stepper li.current button>span{border-color:var(--red);background:var(--red);color:#fff}.stepper li.complete{color:var(--charcoal)}.stepper li button:disabled{cursor:not-allowed;color:#958d82}.booking-grid{grid-template-columns:minmax(0,1fr) minmax(21rem,22.5rem);align-items:start}.booking-controls{min-height:42rem;padding:clamp(1.5rem,3vw,3rem);color:var(--charcoal)}.booking-step-content>h3{margin-bottom:.45rem;font-family:var(--display);font-size:clamp(2.4rem,4vw,4.2rem);line-height:.9;text-transform:uppercase}.booking-step-content>h3:focus{outline:none}.booking-step-content>p{max-width:60ch;margin:0 0 1.75rem;color:#5d5850;line-height:1.55}.booking-step-content fieldset{margin-bottom:1.5rem}.completed-selections{margin-bottom:1.4rem;display:grid;gap:.45rem}.completed-selections button{min-height:3.25rem;padding:.55rem .75rem;display:grid;grid-template-columns:5rem minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid rgb(18 17 15 / 28%);border-radius:0;background:transparent;color:var(--charcoal);text-align:left}.completed-selections button span,.completed-selections button small{color:#6b4f25;font-size:.74rem;font-weight:900;text-transform:uppercase}.choice-list{gap:.75rem}.choice{min-height:4.75rem;border-color:#12110f4d;color:var(--charcoal);background:transparent}.choice:hover{border-color:var(--charcoal);color:var(--charcoal)}.choice.selected{border-color:var(--charcoal);border-bottom:3px solid var(--red);background:var(--charcoal);color:var(--ivory)}.choice strong{color:var(--brass-dark)}.choice.selected strong{color:var(--brass)}.booking-step-content .choice{min-height:5.25rem}.booking-step-content .service-choice-name{font-size:clamp(1.12rem,2.2vw,1.45rem);font-weight:850;line-height:1.15}.booking-step-content .service-choice-price{font-family:var(--display);font-size:clamp(1.7rem,3.4vw,2.25rem);letter-spacing:.01em;line-height:.9}.step-action{min-width:12rem}.step-actions{margin-top:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.slot-period h4{margin-bottom:.55rem;color:#6b4f25;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.booking-calendar{max-width:48rem;margin-bottom:1.5rem;border-block:1px solid rgb(18 17 15 / 24%)}.calendar-toolbar{min-height:4rem;display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;align-items:center;border-bottom:1px solid rgb(18 17 15 / 18%)}.calendar-toolbar h4{margin:0;color:var(--charcoal);font-size:.86rem;font-weight:900;letter-spacing:.08em;text-align:center;text-transform:uppercase}.calendar-toolbar button{width:44px;min-height:44px;padding:0;display:inline-grid;place-items:center;border:1px solid transparent;background:transparent;color:var(--charcoal)}.calendar-toolbar button:hover:not(:disabled){border-color:var(--charcoal)}.calendar-toolbar button:disabled{cursor:not-allowed;color:#8a847b}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{min-height:2rem;align-items:center}.calendar-weekdays span{color:#6b4f25;font-size:.65rem;font-weight:900;text-align:center;text-transform:uppercase}.calendar-grid{gap:.25rem}.calendar-day,.calendar-empty{min-width:0;min-height:4.75rem}.calendar-day{padding:.35rem .2rem;display:grid;align-content:center;gap:.2rem;border:1px solid rgb(18 17 15 / 24%);border-radius:0;background:transparent;color:var(--charcoal);text-align:center}.calendar-day:hover:not(:disabled){border-color:var(--charcoal);background:#fffdf7}.calendar-day:disabled{cursor:not-allowed;border-color:transparent;background:#e6dfd3;color:#746d64}.calendar-day.selected:not(:disabled),.calendar-day.selected:hover:not(:disabled){border-color:var(--charcoal);background-color:var(--charcoal);box-shadow:inset 0 -4px var(--red);color:#fff}.calendar-day.today:not(.selected){box-shadow:inset 0 -2px var(--brass-dark)}.calendar-day strong{font-family:var(--display);font-size:1.6rem;line-height:1}.calendar-day small{min-height:2em;color:#6b4f25;font-size:.58rem;font-weight:850;line-height:1.05}.calendar-day.selected:not(:disabled) small{color:var(--ivory)}.calendar-day:disabled small{color:#746d64}.calendar-legend{margin:0;padding:.75rem 0;display:flex;flex-wrap:wrap;gap:.55rem 1rem;color:#625d55;font-size:.66rem;font-weight:750}.calendar-legend span{display:inline-flex;align-items:center;gap:.35rem}.calendar-legend i{width:.75rem;height:.75rem;display:inline-block;border:1px solid rgb(18 17 15 / 35%);background:transparent}.calendar-legend .legend-selected{background:var(--charcoal)}.calendar-legend .legend-closed{border-color:#e6dfd3;background:#e6dfd3}.slot-periods{display:grid;gap:1.5rem}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.slot{min-height:4.7rem;border-color:#12110f47;color:var(--charcoal)}.slot:hover:not(:disabled){border-color:var(--charcoal)}.slot.selected{border-color:var(--red);background:var(--red);color:var(--ivory)}.slot span{color:var(--brass-dark)}.slot.selected span{color:var(--ivory)}.slot:disabled{border-color:#12110f3d;color:#6f685f;background:#e3ddd1}.slot:disabled span{color:#71504c}.empty-slots{border-color:#12110f5c;color:#5d5850}.empty-slots svg{color:var(--brass-dark)}.field-grid label{color:var(--charcoal);font-size:.78rem;grid-template-rows:auto 52px minmax(2.8rem,auto);align-content:start}.field-grid label small{color:#625d55;font-size:.7rem;font-weight:500}.field-support{min-height:2.8rem;display:block;line-height:1.35}.field-grid input{min-height:52px;border-color:#12110f61;background:#fffdf7;color:var(--charcoal)}@media(min-width:1100px){.field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-summary-panel{position:sticky;top:6.5rem;max-height:calc(100vh - 8rem);padding:1.75rem;align-self:start;overflow:auto;border-left-color:var(--border-light);background:var(--charcoal-soft);color:var(--ivory)}.booking-summary>div{position:relative;padding-right:3.4rem}.booking-summary>div button{position:absolute;right:0;bottom:.95rem;min-height:2.25rem;padding:0;border:0;background:transparent;color:var(--brass);font-size:.68rem;font-weight:850}.mobile-summary-title{display:none}.booking-complete{max-width:66rem;padding:clamp(2.5rem,5vw,5rem) clamp(1.25rem,4vw,4rem);color:var(--charcoal);text-align:left}.success-heading{margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between}.success-heading svg{color:var(--brass-dark)}.booking-complete h3{max-width:12ch;color:var(--charcoal)}.booking-complete>p:not(.kicker),.future-truth{margin-left:0;color:#5d5850}.confirmation-greeting{margin-bottom:.3rem;font-size:1.08rem}.confirmation-detail{margin:0;color:var(--charcoal)!important;font-size:clamp(1.05rem,2vw,1.25rem);font-weight:850}.confirmation-email{margin-top:.7rem}.demo-note{max-width:60rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid rgb(18 17 15 / 22%);color:#625d55!important;font-size:.78rem;line-height:1.5}.booking-complete .booking-summary{max-width:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.booking-complete .booking-summary>div{border:1px solid rgb(18 17 15 / 24%);padding:.85rem}.booking-complete .booking-summary dt{color:var(--brass-dark)}.booking-complete .booking-summary dd{color:var(--charcoal)}.email-preview{margin-top:2rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--charcoal);background:#fffdf7}.email-preview summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;color:var(--charcoal);font-size:.88rem;font-weight:850;list-style:none}.email-preview summary::-webkit-details-marker{display:none}.email-preview summary:after{content:"+";color:var(--brass-dark);font-size:1.3rem;line-height:1}.email-preview[open] summary{margin-bottom:1.15rem;padding-bottom:1.15rem;border-bottom:1px solid rgb(18 17 15 / 22%)}.email-preview[open] summary:after{content:"–"}.email-preview-content>.kicker{margin-bottom:.75rem}.email-preview h4{margin-bottom:1.4rem;font-family:var(--display);font-size:clamp(1.7rem,3vw,2.7rem);text-transform:uppercase}.email-preview dl{margin:0;display:grid;gap:.45rem}.email-preview dl>div{display:grid;grid-template-columns:5rem 1fr}.email-preview dt{color:var(--brass-dark);font-size:.7rem;font-weight:850;text-transform:uppercase}.email-preview dd{margin:0;font-weight:700}.email-preview-body{margin-top:1.25rem;padding:1rem 0;display:grid;gap:.35rem;border-block:1px solid rgb(18 17 15 / 22%)}.email-preview-body small{color:#625d55}.email-preview-actions,.success-actions{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem}.email-preview-actions button{min-height:44px;padding:.65rem .85rem;border:1px solid var(--charcoal);border-radius:0;background:transparent;color:var(--charcoal);font-weight:800}.preview-message{min-height:1.4rem;margin:.65rem 0 0;color:#5d5850;font-size:.75rem}.demo-owner-actions{margin-top:1.35rem}.demo-owner-actions .text-action{min-height:0;padding:0;border:0;color:var(--charcoal);font-size:.78rem;text-decoration:underline;text-underline-offset:.2rem}.success-actions-secondary{margin-top:.85rem}@media(max-width:760px){.booking-section{padding-block:4rem}.booking-intro{gap:.45rem}.booking-intro h2{max-width:8ch;font-size:clamp(2.8rem,13vw,4.2rem)}.booking-intro>p:last-child{font-size:.92rem;line-height:1.5}.booking-shell{margin-top:1.5rem}.stepper li button{min-height:4.1rem;padding:.45rem .2rem;grid-template-columns:1fr;place-items:center;text-align:center}.stepper li button>span{grid-row:auto;width:1.7rem;height:1.7rem}.stepper li button strong{font-size:.62rem}.stepper li button small{display:none}.booking-grid{grid-template-columns:1fr}.booking-controls{min-height:39rem;padding:1.1rem}.booking-step-content .choice-list{grid-template-columns:1fr}.booking-step-content .choice{min-height:5.5rem;padding-inline:1rem}.booking-step-content .service-choice-name{font-size:clamp(1.2rem,5.3vw,1.45rem)}.booking-step-content .service-choice-price{font-size:clamp(1.85rem,8.2vw,2.25rem)}.booking-step-content>h3{font-size:clamp(2.3rem,12vw,3.5rem)}.completed-selections button{grid-template-columns:3.8rem minmax(0,1fr) auto}.booking-calendar{width:calc(100% + 1.25rem);margin-inline:-.625rem}.calendar-toolbar{min-height:3.5rem}.calendar-grid{gap:.18rem}.calendar-day,.calendar-empty{min-height:4.25rem}.calendar-day{padding-inline:.05rem}.calendar-day strong{font-size:1.35rem}.calendar-day small{font-size:.5rem;letter-spacing:-.01em}.calendar-day .calendar-status-available{display:none}.calendar-legend{gap:.45rem .7rem}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid{grid-template-columns:1fr}.field-grid label{grid-template-rows:auto 52px auto}.field-support{min-height:1.25rem}.step-actions{align-items:stretch;flex-direction:column-reverse}.step-action{width:100%}.booking-summary-panel:not(.is-final){display:none}.booking-summary-panel .kicker,.booking-summary-panel .booking-summary,.booking-summary-panel .form-errors{display:none}.booking-summary-panel.is-final{position:static;padding:1rem;border-top:1px solid var(--border-light);border-left:0}.booking-summary-panel.is-final .kicker,.booking-summary-panel.is-final .booking-summary,.booking-summary-panel.is-final .form-errors{display:block}.booking-summary-panel.is-final .booking-summary{margin-bottom:.75rem}.mobile-summary-title{margin-bottom:.55rem;display:flex;justify-content:space-between;gap:.75rem;color:var(--ivory);font-size:.78rem}.booking-summary-panel.is-final .mobile-summary-title{display:none}.summary-disclaimer{margin:0 0 .55rem}.booking-complete{padding:2rem 1rem}.booking-complete .booking-summary{grid-template-columns:1fr}.email-preview-actions,.success-actions{flex-direction:column}.email-preview-actions button,.success-actions .button{width:100%}}@media(max-width:390px){.date{min-height:5.35rem}.date strong{font-size:1.4rem}}@media(prefers-reduced-motion:reduce){.booking-step-content{transform:none!important;opacity:1!important}}.service-item{border-bottom:1px solid var(--border-light)}.service-item .service-row{width:100%;border:0;border-bottom:0;background:transparent;text-align:left}.service-item.expanded .service-row{color:var(--red)}.service-item.expanded .service-row svg{transform:rotate(90deg)}.service-detail{padding:0 2rem 1.6rem 4rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.2rem 2rem;color:var(--ivory-muted)}.service-detail p{max-width:55ch;margin:0;line-height:1.6}.service-detail .text-link{white-space:nowrap}.work-section{grid-template-columns:minmax(16rem,.58fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem)}.editorial-collage{position:relative;min-width:0;aspect-ratio:1.18 / 1;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:.75rem}.collage-tile{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:#958d7e}.collage-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 48%,rgba(18,17,15,.52) 100%);opacity:.78;transition:opacity .18s ease}.collage-tile img,.collage-atlas>span{width:100%;height:100%;display:block;object-fit:cover;transition:transform .2s ease}.collage-tile:hover img,.collage-tile:focus-within img,.collage-atlas:hover>span,.collage-atlas:focus-within>span{transform:scale(1.035)}.collage-tile:hover:after,.collage-tile:focus-within:after{opacity:1}.collage-tile figcaption{position:absolute;z-index:1;right:.6rem;bottom:.6rem;padding:.38rem .5rem;border-left:1px solid var(--brass);background:color-mix(in srgb,var(--charcoal) 92%,transparent);color:var(--ivory);font-size:.64rem;font-weight:850;letter-spacing:.08em;transition:transform .18s ease,background-color .18s ease}@media(hover:hover)and (pointer:fine){.collage-tile:hover figcaption{transform:translateY(-.18rem);background:var(--charcoal)}}.collage-anchor{grid-column:1 / 7;grid-row:1 / 3}.collage-anchor img{object-position:50% 48%;scale:1.16;transform-origin:50% 42%}.collage-platinum{grid-column:7 / 11;grid-row:1}.collage-platinum img{object-position:50% 70%}.collage-atlas{grid-row:2}.collage-atlas>span{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-image:url(/assets/work-grid-atlas.png);background-repeat:no-repeat;background-size:500% 250%}.atlas-line{grid-column:7 / 9}.atlas-line>span{background-position:50% 18%}.atlas-mullet{grid-column:9 / 11}.atlas-mullet>span{background-position:100% 18%}.collage-real-stamp{position:absolute;z-index:2;right:-.6rem;bottom:-.8rem;width:6.7rem;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-family:var(--display);font-size:1.05rem;line-height:.9;text-align:center;transform:rotate(-8deg)}.story-section{display:grid;grid-template-columns:minmax(18rem,.82fr) minmax(0,1fr);align-items:center;gap:clamp(3rem,8vw,8rem);background:var(--charcoal-soft);color:var(--ivory)}.story-photo{aspect-ratio:4 / 5;overflow:hidden;background:#d7d0c4}.story-photo img{width:100%;height:100%;object-fit:cover;object-position:100% 15%;transform:scale(1.28);transform-origin:100% 15%}.story-copy h2{max-width:10ch;margin-bottom:1.5rem;font-family:var(--display);font-size:clamp(3rem,6vw,6.2rem);line-height:.84}.story-copy>p:not(.kicker){max-width:46rem;color:var(--ivory-muted);font-size:1.05rem;line-height:1.65}.story-facts{color:var(--brass)!important;font-size:.78rem!important;font-weight:800;letter-spacing:.04em}.story-actions{margin-top:1.8rem;display:flex;align-items:center;gap:1.5rem}.story-actions .button-dark{border-color:var(--ivory);color:var(--ivory)}.dark-link{color:var(--brass)}.permission-note{max-width:42rem;margin-top:1.2rem;display:block;color:#9f988e;font-size:.7rem;line-height:1.5}.date-list{scrollbar-color:var(--red) var(--charcoal-soft)}.slot.status-confirmed span{color:#d18b84}.slot.status-blocked span,.slot.status-outside span{color:#9c958b}.my-appointments{margin-top:2rem;padding:clamp(1.4rem,4vw,2.5rem);display:grid;grid-template-columns:minmax(11rem,.5fr) minmax(0,1.5fr);gap:1.5rem 3rem;border:1px solid var(--border-light);background:#171512}.my-appointments h3{margin:0;font-family:var(--display);font-size:clamp(2rem,4vw,3.6rem);line-height:.9}.my-appointment-list{display:grid}.my-appointment{min-height:4.6rem;padding:.8rem 0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;border-bottom:1px solid var(--border-light)}.my-appointment>div{display:grid;gap:.25rem}.my-appointment time{color:var(--ivory-muted);font-size:.78rem}.text-action{min-height:44px;padding:.6rem;display:inline-flex;align-items:center;border:1px solid var(--border-light);background:transparent;color:var(--ivory);font-weight:750;text-decoration:none}.my-appointment.status-cancelled{opacity:.65}.cancellation-policy{grid-column:2;margin:0;color:#aaa298;font-size:.76rem;line-height:1.55}.footer-brand-lockup{display:flex;align-items:center;gap:1rem}.footer-brand-lockup>img{width:94px;height:94px;object-fit:cover}.admin-truth{max-width:66ch;margin:1.5rem 0 0;color:#5d5850;line-height:1.6}.admin-toolbar{flex-wrap:wrap}.block-reason{min-width:14rem;display:grid;gap:.45rem;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.block-reason input{min-height:44px;padding:.6rem .7rem;border:1px solid var(--charcoal);border-radius:0;background:var(--ivory);color:var(--charcoal)}.admin-actions-row{min-height:4.5rem;margin-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-actions-row p{margin:0;color:#4c4740;font-size:.78rem}.admin-primary-actions{display:flex;flex-wrap:wrap;gap:.65rem}.admin-primary-actions .button:disabled,.agenda-actions button:disabled{cursor:not-allowed;opacity:.48}.day-block-banner{margin:0 0 1rem;padding:.9rem 1rem;display:flex;align-items:flex-start;gap:.65rem;border:1px solid var(--border-dark);background:var(--ivory);color:var(--charcoal);line-height:1.5}.day-block-banner svg{flex:0 0 auto;margin-top:.15rem}.manual-booking-panel{margin:0 0 1.25rem;padding:clamp(1.1rem,2vw,1.5rem);border:1px solid var(--border-dark);background:#e9e3d8}.manual-booking-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.manual-booking-heading h3{margin:.1rem 0 0;font-family:var(--display);font-size:clamp(2rem,4vw,3rem);line-height:.95}.manual-booking-panel>p{max-width:64ch;margin:.85rem 0 1.1rem;color:#4c4740;line-height:1.5}.manual-booking-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.manual-booking-form label{display:grid;gap:.45rem;color:#4c4740;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.manual-booking-form label small{color:#625d55;font-size:.62rem;letter-spacing:.04em}.manual-booking-form input,.manual-booking-form select{min-height:44px;padding:.6rem .7rem;border:1px solid var(--charcoal);border-radius:0;background:var(--ivory);color:var(--charcoal);font:inherit;font-size:.9rem;font-weight:600;letter-spacing:normal;text-transform:none}.manual-booking-actions{min-height:44px;margin-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.manual-booking-actions p{margin:0;color:#a52e27;font-size:.78rem}.agenda-item{grid-template-columns:6rem minmax(0,1fr) auto minmax(8rem,auto)}.agenda-actions{display:flex;justify-content:flex-end}.agenda-actions button{min-height:44px;padding:.55rem .7rem;display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--border-dark);border-radius:0;background:transparent;color:var(--charcoal);font-weight:750}.agenda-actions button:hover{background:var(--charcoal);color:var(--ivory)}.status-outside{color:#777067;background:#e7e0d4}.cancelled-history,.attendance-history{margin-top:2rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--border-dark)}.cancelled-history h2,.attendance-history h2{margin-bottom:1rem;font-family:var(--display);font-size:clamp(2rem,4vw,3.6rem)}.cancelled-history article,.attendance-history article{min-height:4.5rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;border-top:1px solid var(--border-dark)}.cancelled-history article>div,.attendance-history article>div{display:grid;gap:.25rem}.cancelled-history article span,.attendance-history article span{color:#625d55;font-size:.76rem}@media(max-width:980px){.work-section{grid-template-columns:.55fr 1fr;gap:2.5rem}.agenda-item{grid-template-columns:5rem minmax(0,1fr) auto}.agenda-actions{grid-column:2 / 4;justify-content:flex-start}}@media(max-width:760px){.landing-page{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom,0px))}.mobile-booking-cta{position:fixed;z-index:30;right:0;bottom:0;left:0;min-height:calc(4.5rem + env(safe-area-inset-bottom,0px));padding:.65rem max(1rem,env(safe-area-inset-right,0px)) max(.65rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px));display:flex;background:var(--charcoal);border-top:1px solid var(--border-light);transition:opacity .18s ease,transform .18s ease,visibility .18s linear}.mobile-booking-cta .button{width:100%;min-height:52px}.mobile-booking-cta.is-hidden{visibility:hidden;pointer-events:none;opacity:0;transform:translateY(100%)}.hero{height:auto;max-height:none;min-height:auto}.hero-copy{padding-block:2.4rem 2.8rem}.hero h1{font-size:clamp(3.1rem,16vw,4.5rem)}.hero-image-shell{height:clamp(19rem,82vw,21.25rem);aspect-ratio:auto}.hero-image{object-position:50% 80%;transform-origin:50% 80%}.service-detail{padding:0 0 1.4rem 2rem;grid-template-columns:1fr;gap:.7rem}.service-detail .text-link{white-space:normal}.work-section{grid-template-columns:1fr}.editorial-collage{aspect-ratio:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(28rem,1.4fr) minmax(12rem,.7fr)}.collage-anchor{grid-column:1 / 3;grid-row:1}.collage-platinum{grid-column:1;grid-row:2}.atlas-line{display:none}.atlas-mullet{grid-column:2;grid-row:2}.collage-real-stamp{right:.2rem}.story-section{grid-template-columns:1fr;gap:2.5rem}.story-photo img{object-position:100% 15%;transform-origin:100% 15%}.story-copy h2{font-size:clamp(3rem,14vw,5rem)}.story-actions{align-items:stretch;flex-direction:column}.my-appointments{grid-template-columns:1fr}.cancellation-policy{grid-column:auto}.footer-brand-lockup>img{width:88px;height:88px}.admin-toolbar{flex-direction:column}.block-reason{width:100%}.manual-booking-heading,.manual-booking-actions{align-items:flex-start;flex-direction:column}.manual-booking-form{grid-template-columns:1fr}.manual-booking-form input,.manual-booking-form select,.manual-booking-actions .button{width:100%}.admin-actions-row{align-items:flex-start;flex-direction:column}.admin-primary-actions,.admin-primary-actions .button{width:100%}.agenda-item{grid-template-columns:4.3rem minmax(0,1fr)}.agenda-actions{grid-column:2}}@media(max-width:390px){.editorial-collage{grid-template-rows:minmax(24rem,1.3fr) minmax(10rem,.65fr)}.my-appointment{grid-template-columns:1fr}.my-appointment .text-action{width:fit-content}}@media(prefers-reduced-motion:reduce){.mobile-booking-cta{transition:none}.hero-actions>.button-primary,.mobile-booking-cta>.button-primary,.hero-actions>.button-primary svg,.mobile-booking-cta>.button-primary svg{transition:none}.hero-actions>.button-primary:is(:hover,:focus-visible,:active),.mobile-booking-cta>.button-primary:is(:hover,:focus-visible,:active),.hero-actions>.button-primary:is(:hover,:focus-visible,:active) svg,.mobile-booking-cta>.button-primary:is(:hover,:focus-visible,:active) svg{transform:none}.collage-anchor,.collage-secondary{visibility:visible!important;opacity:1!important;transform:none!important;clip-path:none!important}}.hero{grid-template-rows:minmax(0,1fr)}.calendar-action,.agenda-contact{min-height:44px;padding:.55rem .7rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid currentColor;color:var(--charcoal);font-size:.78rem;font-weight:800;text-decoration:none}.calendar-action:hover,.agenda-contact:hover{background:var(--charcoal);color:var(--ivory)}@media(max-width:760px){.hero-image-shell{width:100%;margin:0;height:clamp(20rem,105vw,27rem);aspect-ratio:auto}.agenda-actions{flex-wrap:wrap;gap:.5rem}.agenda-contact,.agenda-actions button{min-height:44px}}.header-booking-cta{gap:.5rem}.hero-actions>.button-primary,.closing-actions>.button-primary,.header-booking-cta{transform:translateZ(0);transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s cubic-bezier(.16,1,.3,1)}.hero-actions>.button-primary svg,.closing-actions>.button-primary svg,.header-booking-cta svg{flex:0 0 auto;transition:transform .15s cubic-bezier(.16,1,.3,1)}@media(hover:hover)and (pointer:fine){.hero-actions>.button-primary:hover,.closing-actions>.button-primary:hover,.header-booking-cta:hover{background:var(--red-dark);transform:translateY(-2px)}.hero-actions>.button-primary:hover svg,.closing-actions>.button-primary:hover svg,.header-booking-cta:hover svg{transform:translate(3px)}}.hero-actions>.button-primary:focus-visible,.closing-actions>.button-primary:focus-visible,.header-booking-cta:focus-visible{background:var(--red-dark);outline:3px solid var(--brass);outline-offset:4px}.hero-actions>.button-primary:active,.closing-actions>.button-primary:active,.header-booking-cta:active{background:var(--red-dark);transform:translateY(1px) scale(.985);transition-duration:80ms}.footer-copyright{color:#9c958b;font-size:.76rem}.footer-credit-line{display:flex;align-items:baseline;gap:.35rem;color:var(--ivory);font-size:.92rem;font-weight:750;letter-spacing:.01em}.footer-brand .footer-credit{color:inherit;text-decoration:underline;text-decoration-color:#f2ede29e;text-decoration-thickness:1px;text-underline-offset:.28em;transition:color .16s ease,text-decoration-color .16s ease}.footer-brand .footer-credit:hover,.footer-brand .footer-credit:focus-visible{color:var(--brass);text-decoration-color:currentColor}.location-image-crop--interior img{height:100%;object-position:50% 50%}.story-photo--at-work img{object-position:28% 23%;transform:none}@media(prefers-reduced-motion:reduce){.hero-actions>.button-primary,.closing-actions>.button-primary,.header-booking-cta,.hero-actions>.button-primary svg,.closing-actions>.button-primary svg,.header-booking-cta svg{transition:none}.hero-actions>.button-primary:is(:hover,:focus-visible,:active),.closing-actions>.button-primary:is(:hover,:focus-visible,:active),.header-booking-cta:is(:hover,:focus-visible,:active),.hero-actions>.button-primary:is(:hover,:focus-visible,:active) svg,.closing-actions>.button-primary:is(:hover,:focus-visible,:active) svg,.header-booking-cta:is(:hover,:focus-visible,:active) svg{transform:none}}.hero-image{object-position:50% 50%;scale:1;transform-origin:50% 50%}@media(max-width:760px){.hero-image{object-position:50% 50%;scale:1;transform-origin:50% 50%}}
