/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.italic{font-style:italic}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond-italic.woff2)format("woff2");font-style:italic;font-weight:400 700;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/montserrat.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}:root{--ivory:#f2efeb;--sand:#dbd2c7;--stone:#c6b9a9;--taupe:#a89a8c;--umber:#7f7366;--charcoal:#3c3936;--ink:#121212;--font-display:"Cormorant Garamond";--font-body:"Montserrat"}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{color:var(--ink);background:var(--ivory);font-family:var(--font-body), Arial, sans-serif;margin:0;line-height:1.55}body:before{z-index:50;content:"";opacity:.018;pointer-events:none;mix-blend-mode:multiply;background-image:url(/brand/hair-by-jodie-cover.png);background-position:50%;background-size:52rem;position:fixed;inset:0}a{color:inherit;text-decoration:none}main:before{z-index:8;content:"";filter:grayscale()sepia(.25)blur(2.5px);opacity:.06;pointer-events:none;transform-origin:50%;mix-blend-mode:multiply;background:url(/brand/pampas-shadow.png) 7%/158% no-repeat;width:142vw;height:88vh;position:fixed;inset:5vh auto auto -18vw;transform:translateY(-9vh)scale(1.05)rotate(-1.5deg)}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f2efebf0;border-bottom:1px solid #3c39362e;grid-template-columns:1fr auto 1fr;align-items:center;min-height:74px;padding:0 4vw;display:grid;position:sticky;top:0;box-shadow:0 10px 32px #3c393614,inset 0 1px #ffffffad}.site-header>a:first-child{align-items:center;width:max-content;height:62px;display:flex}.brand-wordmark{width:136px;height:auto;display:block}nav{letter-spacing:.17em;text-transform:uppercase;gap:2.6rem;font-size:.66rem;font-weight:600;display:flex}nav a{padding:.5rem;transition:color .18s;position:relative}nav a:after{background:var(--umber);content:"";transform-origin:100%;height:1px;transition:transform .26s cubic-bezier(.16,1,.3,1);position:absolute;bottom:.18rem;left:.5rem;right:.5rem;transform:scaleX(0)}nav a:hover,nav a:focus-visible{color:var(--umber)}nav a:hover:after,nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.appointment-link{border:1px solid var(--charcoal);width:max-content;min-height:50px;color:var(--ivory);background:var(--charcoal);letter-spacing:.15em;text-transform:uppercase;justify-content:center;align-items:center;gap:1.1rem;padding:.95rem 1.35rem;font-size:.85rem;font-weight:600;transition:color .22s,background .22s,transform .22s,box-shadow .22s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 12px 28px #3c39362e}.appointment-link:hover,.appointment-link:focus-visible{color:var(--charcoal);background:var(--sand);transform:translateY(-2px);box-shadow:0 17px 36px #3c393638}.appointment-link:active{transform:translateY(1px)}.appointment-link--compact{justify-self:end;min-height:40px;padding:.68rem 1rem}.hero{grid-template-columns:minmax(34rem,1.18fr) minmax(29rem,.82fr);min-height:calc(100dvh - 74px);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 70px #3c393624}.hero__art{background:var(--sand);justify-content:center;align-items:center;min-height:44rem;padding:clamp(3rem,8vw,9rem);display:flex;position:relative;overflow:hidden;box-shadow:inset -28px 0 60px #3c393617,inset 0 1px #ffffff85}.hero__art:before{content:"";pointer-events:none;border:1px solid #f2efeb8c;position:absolute;inset:8% 7%}.hero__art:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#f2efeb57);width:55%;height:100%;position:absolute;top:0;right:-16%}.hero__wordmark{z-index:1;width:min(100%,29.5rem);height:auto;animation:.95s cubic-bezier(.16,1,.3,1) both hero-image-in;display:block;position:relative}.hero__copy{background:linear-gradient(90deg, transparent 49.7%, #c6b9a93d 50%, transparent 50.3%) 0 0 / 12rem 100%, var(--ivory);flex-direction:column;justify-content:center;align-items:flex-start;padding:5rem 5vw;animation:.72s cubic-bezier(.16,1,.3,1) .12s both copy-in;display:flex;position:relative;box-shadow:inset 1px 0 #ffffffb3}.hero__eyebrow{color:var(--umber);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.65rem;font-weight:600}h1,h2,h3{font-family:var(--font-display), Georgia, serif;margin:0;font-weight:500}h1{letter-spacing:-.055em;flex-direction:column;gap:0;max-width:38rem;font-size:clamp(4.7rem,6vw,7.7rem);line-height:1;display:flex}.hero__title-line{white-space:nowrap;line-height:1;animation:.78s cubic-bezier(.16,1,.3,1) both title-line-in;display:block}.hero__title-line:nth-child(2){animation-delay:90ms}.hero__title-line:nth-child(3){animation-delay:.18s}.hero__title-line+.hero__title-line{margin-top:-.24em}.hero__title-line--colour{color:var(--ink)}.hero__title-line--styling{color:var(--charcoal);padding-left:.4em}.hero__title-line--accent{color:var(--umber);padding:0 0 .12em .03em;font-size:.92em;font-style:italic;line-height:1.06}.hero__title-line+.hero__title-line--accent{margin-top:-.26em}.hero__copy>p:not(.hero__eyebrow){max-width:25rem;color:var(--charcoal);margin:1.25rem 0 2rem;font-size:.96rem}.hero__actions{align-items:center;gap:1.1rem;display:flex}.hero__actions>span{max-width:10.5rem;color:var(--umber);font-size:.69rem;line-height:1.45}.real-work{background:radial-gradient(circle at 84% 10%, #f2efebb8, transparent 28rem), var(--sand);padding:clamp(6rem,9vw,10rem) 0;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffa3,inset 0 -34px 70px #3c393612}.real-work__eyebrow{color:var(--umber);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.4rem;font-size:.64rem;font-weight:600}.real-work h2{color:var(--charcoal);letter-spacing:-.05em;margin:0;font-size:clamp(4rem,7vw,7.2rem);line-height:.86}.real-work__heading>p:last-child{max-width:34rem;color:var(--charcoal);margin:1.5rem 0 0;font-size:.88rem}.real-work__viewport{padding:.75rem 0 0;overflow:hidden}.real-work__track{will-change:transform;width:max-content;animation:28s linear infinite real-work-carousel;display:flex}.real-work__group{--carousel-gap:clamp(1rem, 2vw, 2rem);gap:var(--carousel-gap);padding-right:var(--carousel-gap);flex-shrink:0;display:flex}.real-work__group figure{flex:0 0 clamp(18rem,31vw,28rem);margin:0;transition:transform .34s cubic-bezier(.16,1,.3,1)}.real-work__frame{aspect-ratio:4/5;background:var(--stone);transition:box-shadow .34s;position:relative;overflow:hidden;box-shadow:0 24px 48px #3c393630,0 4px 12px #3c39361a}.real-work__group figure:hover .real-work__frame{box-shadow:0 32px 62px #3c393640,0 7px 16px #3c39361f}.real-work__frame:after{content:"";pointer-events:none;border:1px solid #f2efeb57;position:absolute;inset:0}.real-work__frame img{object-fit:cover;transition:transform .9s cubic-bezier(.16,1,.3,1),filter .5s}.real-work__group figcaption{padding:1.25rem 0 .25rem}.real-work__group h3{color:var(--charcoal);letter-spacing:-.035em;font-size:clamp(1.8rem,2.6vw,2.8rem);line-height:1}.real-work__group figcaption p{max-width:24rem;color:var(--umber);margin:.7rem 0 0;font-size:.72rem;line-height:1.55}@keyframes real-work-carousel{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.real-work__viewport{scroll-snap-type:x mandatory;overflow-x:auto}.real-work__track{animation:none}.real-work__group[aria-hidden=true]{display:none}.real-work__group figure{scroll-snap-align:start}}.services{background:radial-gradient(circle at 8% 38%, #dbd2c78c, transparent 30rem), var(--ivory);padding:9rem 6vw;position:relative;box-shadow:inset 0 1px #ffffffd9}.services__heading{max-width:48rem;margin-bottom:4rem}.services__heading h2,.visit h2{letter-spacing:-.05em;font-size:clamp(4rem,7vw,7.5rem);line-height:.86}.services__heading p{color:var(--umber);margin:1.5rem 0 0}.service-grid{grid-template-columns:1.08fr .92fr;gap:1.2rem;display:grid}.service-panel{isolation:isolate;border:1px solid #3c39362b;padding:clamp(2rem,4vw,4.5rem);transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s;position:relative;box-shadow:0 22px 50px #3c39361c,inset 0 1px #ffffff85}.service-panel:after{z-index:-1;content:"";pointer-events:none;border:1px solid #7f736629;position:absolute;inset:10px -10px -10px 10px}.service-panel:hover{translate:0 -6px;box-shadow:0 30px 64px #3c393629,inset 0 1px #ffffff9e}.service-panel--highlights{background:var(--sand)}.service-panel--colour{background:#c6b9a975;margin-top:2.6rem}.service-panel--cutting{background:var(--sand);grid-column:1/-1;grid-template-columns:.72fr 1.28fr;align-items:center;margin-top:1.4rem;display:grid}.service-panel__title{align-items:center;gap:1.1rem;margin-bottom:2.5rem;display:flex}.service-panel__title img{filter:drop-shadow(0 7px 10px #3c393624);flex:none;width:clamp(2.8rem,4vw,4.4rem);height:auto}.service-panel h3{color:var(--charcoal);letter-spacing:-.04em;margin:0;font-size:clamp(2.8rem,4vw,4.8rem);line-height:.95}.service-panel--cutting .service-panel__title{margin:0}.service-panel dl{grid-template-columns:1fr 1fr;gap:1.5rem 2.3rem;margin:0;display:grid}.service-panel dl>div{grid-template-columns:1fr auto;align-items:end;gap:1rem;display:grid}.service-panel dt,.service-panel dd{margin:0}.service-panel dt{color:var(--charcoal);font-size:.86rem}.service-panel dd{font-family:var(--font-display), Georgia, serif;white-space:nowrap;font-size:1.35rem}.service-panel--cutting dl{grid-template-columns:1fr}.service-panel--cutting dl>div{font-size:1.08rem}.price-note{color:var(--umber);margin:1rem 0 0;font-size:.7rem}.services__klarna{background:var(--sand);border:1px solid #3c39362b;align-items:center;gap:1rem;width:fit-content;margin-top:1.6rem;padding:1rem 1.2rem;display:flex;box-shadow:0 14px 30px #3c39361a,inset 0 1px #ffffff8c}.services__klarna img{width:5.1rem;height:auto;display:block}.services__klarna p{color:var(--charcoal);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.services__klarna-name{color:var(--charcoal);letter-spacing:-.06em;font-size:2rem;font-weight:700;line-height:1}.booking-policy{background:var(--ivory);border:1px solid #3c39362b;grid-template-columns:.8fr 1fr 1.35fr;align-items:start;gap:2.5rem;margin-top:2.5rem;padding:2.2rem 2.4rem;display:grid;box-shadow:0 20px 45px #3c393617,inset 0 1px #ffffffd1}.booking-policy h3{color:var(--charcoal);letter-spacing:-.035em;font-size:clamp(1.9rem,3vw,3rem);line-height:1}.booking-policy__item{grid-template-columns:auto 1fr;align-items:start;gap:1rem;display:grid}.booking-policy__item strong{color:var(--umber);font-family:var(--font-display), Georgia, serif;font-size:clamp(2rem,3vw,3.2rem);font-weight:500;line-height:.9}.booking-policy__item p{max-width:23rem;color:var(--charcoal);margin:0;font-size:.78rem;line-height:1.6}.visit{background:radial-gradient(circle at 90% 70%, #dbd2c79e, transparent 28rem), var(--ivory);border-top:1px solid #3c393629;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:9rem 6vw;display:grid;box-shadow:inset 0 30px 70px #3c39360d}.visit__intro{flex-direction:column;justify-content:space-between;align-items:flex-start;display:flex}.visit__icon{filter:drop-shadow(0 14px 20px #3c393624);width:clamp(4.5rem,7vw,7rem);height:auto;margin-top:4rem;transition:transform .5s cubic-bezier(.16,1,.3,1)}.visit__intro:hover .visit__icon{transform:rotate(-4deg)translateY(-5px)}.visit__details{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f2efebad;border:1px solid #3c393624;grid-template-columns:1fr 1fr;gap:3rem 4rem;padding:clamp(2rem,4vw,4rem);display:grid;box-shadow:0 28px 64px #3c39361f,inset 0 1px #fffc}.visit__details>div:not(.visit__booking){border-top:1px solid var(--stone);flex-direction:column;align-items:flex-start;padding-top:1.3rem;display:flex}.visit__details span{color:var(--umber);letter-spacing:.17em;text-transform:uppercase;margin-bottom:.75rem;font-size:.63rem;font-weight:600}.visit__details p{margin:0}.visit__details a:not(.appointment-link):hover,.visit__details a:not(.appointment-link):focus-visible{color:var(--umber)}.visit__booking{background:var(--sand);grid-column:1/-1;align-items:center;gap:1.4rem;padding:2rem;display:flex;box-shadow:inset 0 1px #ffffff94}.visit__booking p{max-width:25rem;color:var(--charcoal);font-size:.76rem}footer{background:var(--sand);border-top:1px solid #3c393629;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:2.5rem 4vw;display:grid;box-shadow:inset 0 1px #ffffffa6,0 -20px 50px #3c393612}@keyframes title-line-in{0%{opacity:0;transform:translateY(.42em)}to{opacity:1;transform:translateY(0)}}@keyframes section-reveal{0%{opacity:0;transform:translateY(2.5rem)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline:view()){.real-work__heading,.services__heading,.service-panel,.booking-policy,.visit__intro,.visit__details{animation:linear both section-reveal;animation-timeline:view();animation-range:entry 5% cover 30%}main:before{animation:linear both pampas-scroll;animation-timeline:scroll(root)}.real-work h2,.services__heading h2,.visit h2{transform-origin:0 100%;animation:linear both heading-pop;animation-timeline:view();animation-range:entry 5% cover 38%}.service-panel--highlights{animation-name:panel-from-left}.service-panel--colour{animation-name:panel-from-right}}@keyframes pampas-scroll{0%{transform:translateY(-10vh)scale(1.08)rotate(-2deg)}to{transform:translateY(14vh)scale(1.15)rotate(2deg)}}@keyframes heading-pop{0%{opacity:0;filter:blur(7px);transform:translateY(.8em)scale(.82)}to{opacity:1;filter:blur();transform:translate(0)scale(1)}}@keyframes panel-from-left{0%{opacity:0;transform:translate(-5vw,3rem)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes panel-from-right{0%{opacity:0;transform:translate(5vw,3rem)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.brand-wordmark--footer{width:150px}footer p,footer>a{color:var(--charcoal);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.65rem}footer>a{justify-self:end}@keyframes hero-image-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes copy-in{0%{opacity:0;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@media (width<=1050px){.hero{grid-template-columns:1fr 1fr}.service-panel dl{grid-template-columns:1fr}}@media (width<=800px){.site-header{grid-template-columns:1fr auto}nav{display:none}.hero,.visit{grid-template-columns:1fr}.hero__art{order:2;min-height:63vw}.hero__copy{min-height:35rem;padding:5rem 7vw}.hero__copy h1{font-size:clamp(4.8rem,14vw,7rem)}.real-work__heading{max-width:42rem}.service-grid{grid-template-columns:1fr}.service-panel--cutting{grid-column:auto;grid-template-columns:1fr;gap:2rem}.service-panel--colour,.service-panel--cutting{margin-top:0}.booking-policy{grid-template-columns:1fr}footer{grid-template-columns:1fr;justify-items:start}footer>a{justify-self:start}}@media (width<=540px){.site-header{min-height:68px;padding:0 4.5vw}.brand-wordmark{width:105px}.appointment-link--compact{min-height:38px;padding:.62rem .75rem;font-size:.56rem}.hero__copy{min-height:calc(100dvh - 68px);padding:4rem 7vw}h1{letter-spacing:-.045em;gap:0;font-size:clamp(3.4rem,16vw,5.1rem);line-height:1.02}.hero__title-line{line-height:1.02}.hero__title-line+.hero__title-line{margin-top:-.19em}.hero__title-line--styling{padding-left:.3em}.hero__title-line--accent{line-height:1.07}.hero__title-line+.hero__title-line--accent{margin-top:-.21em}.hero__actions{flex-direction:column;align-items:flex-start}.hero__art{min-height:31rem}.hero__art:before{inset:6%}main:before{opacity:.055;width:168vw;height:78vh;inset:12vh -34vw auto}.real-work{padding:5.5rem 0}.real-work__heading{padding:0 6vw 2.5rem}.real-work h2{font-size:clamp(3.8rem,16vw,5.4rem)}.real-work__track{animation-duration:22s}.real-work__group figure{flex-basis:76vw}.services,.visit{padding:6rem 6vw}.service-panel{padding:2.2rem 1.4rem}.service-panel:after{inset:7px -7px -7px 7px}.service-panel dl{gap:1.15rem}.visit__details{grid-template-columns:1fr}.visit__booking{flex-direction:column;grid-column:auto;align-items:flex-start}.services__klarna{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--ease-out:cubic-bezier(.16,1,.3,1)}body:before,main:before{display:none}html{scroll-padding-top:100px}body{overflow-x:clip}::selection{background:var(--charcoal);color:var(--ivory)}:focus-visible{outline:2px solid var(--charcoal);outline-offset:6px}.site-header{box-shadow:none;background:#f2efebf5;padding-inline:5vw}nav{letter-spacing:.1em;font-size:.75rem}.appointment-link{letter-spacing:.1em;min-height:52px;box-shadow:none;white-space:nowrap;font-size:.75rem}.appointment-link span{transition:transform .4s var(--ease-out);font-size:1.2rem;display:inline-block}.appointment-link:hover span{transform:translate(3px,-3px)}.appointment-link--compact{min-height:44px}.atelier-hero{isolation:isolate;grid-template-columns:1.12fr .88fr;align-items:center;gap:3vw;min-height:min(850px,100dvh - 74px);padding:clamp(32px,5vw,80px) 5vw 56px;display:grid;position:relative}.atelier-hero__copy{z-index:2;min-width:0}.hero__eyebrow{color:var(--charcoal);letter-spacing:.14em;margin-bottom:2rem;font-size:.75rem}.atelier-hero h1{letter-spacing:-.055em;max-width:none;font-size:clamp(70px,8.4vw,142px);line-height:.86}.atelier-hero h1>span{animation:hero-type 1.2s var(--ease-out) both;display:block}.atelier-hero h1>span:nth-child(2){color:var(--charcoal);padding-left:.42em;animation-delay:.12s}.atelier-hero h1>span:nth-child(3){color:var(--umber);white-space:nowrap;padding-top:.02em;padding-bottom:.12em;font-size:.72em;font-style:italic;line-height:1.1;animation-delay:.24s}.atelier-hero__bottom{grid-template-columns:1fr auto;align-items:center;gap:20px 28px;max-width:560px;margin-top:24px;display:grid}.atelier-hero__bottom>p{margin:0;font-size:.94rem}.atelier-hero__bottom .booking-status{color:var(--charcoal);grid-column:1/-1;font-size:.75rem}.atelier-hero__visual{perspective:1100px;min-width:0;position:relative}.portrait{height:clamp(390px,43vw,620px);transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .6s var(--ease-out);box-shadow:18px 22px 0 var(--sand), 0 30px 70px #3c39362e;position:relative;overflow:hidden}.portrait__image{object-fit:cover;opacity:0;transition:opacity .7s ease, transform 1.4s var(--ease-out);transform:scale(1.08)}.portrait__image.is-selected{opacity:1;transform:scale(1)}.portrait__edge{pointer-events:none;border:1px solid #f2efeb66;position:absolute;inset:12px}.tone-picker{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:38px;display:flex;position:relative}.tone-picker button{font:500 .75rem var(--font-body),sans-serif;color:var(--charcoal);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;align-items:center;gap:8px;padding:10px 0;display:flex}.tone-picker button[aria-pressed=true]{border-color:var(--charcoal)}.tone{border:1px solid #3c393647;border-radius:50%;width:14px;height:14px;display:inline-block}.tone--0{background:#c6b9a9}.tone--1{background:#3c3936}.tone--2{background:#dbd2c7}.reveal-title{flex-wrap:wrap;gap:0 .18em;display:flex}.word-mask{margin-bottom:-.15em;padding-bottom:.15em;display:inline-block;overflow:clip}.word-mask>span{transform-origin:0 100%;display:inline-block}.reveal-title[data-motion=ready] .word-mask>span{opacity:0;transition:transform 1.05s var(--ease-out),opacity .6s ease;transition-delay:calc(var(--word) * 95ms);transform:translateY(110%)rotate(8deg)}.reveal-title[data-visible=true] .word-mask>span{opacity:1;transform:translateY(0)rotate(0)}.real-work__heading,.services__heading,.visit__intro,.real-work h2,.services__heading h2,.visit h2{animation:none}@keyframes hero-type{0%{opacity:0;transform:translateY(45px)rotate(3deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@media (width>=1800px){.atelier-hero{max-width:1800px;margin:auto}}@media (width<=1050px){.atelier-hero__bottom{grid-template-columns:1fr;gap:16px}.atelier-hero h1{font-size:clamp(65px,8.4vw,100px)}.tone-picker button{font-size:.7rem}}@media (width<=800px){.atelier-hero{grid-template-columns:1fr;gap:40px;padding:40px 6vw 65px}.atelier-hero h1{font-size:clamp(74px,16vw,124px)}.atelier-hero__bottom{grid-template-columns:1fr auto}.portrait{height:min(115vw,660px);margin-right:16px}.tone-picker{justify-content:flex-start;gap:22px}.tone-picker button{font-size:.8rem}.hero__eyebrow{font-size:.7rem}}@media (width<=480px){.atelier-hero__bottom{grid-template-columns:1fr}.atelier-hero h1{font-size:clamp(60px,17vw,82px)}.site-header{padding-inline:5vw}.appointment-link--compact{font-size:.65rem}.hero__eyebrow{font-size:.64rem}.tone-picker{gap:16px}.tone-picker button{font-size:.72rem}}.real-work{background:var(--sand);box-shadow:none;padding:100px 0 90px}.real-work__heading{max-width:1100px;padding:0 5vw}.real-work h2,.services__heading h2,.visit h2{letter-spacing:-.055em;font-size:clamp(64px,8.4vw,140px);line-height:.93}.real-work__heading>p:last-child{margin:24px 0 0;font-size:1rem}.gallery-controls{border-top:1px solid #3c393640;justify-content:space-between;align-items:center;margin:34px 5vw 20px;padding-top:18px;font-size:.8rem;display:flex}.gallery-controls button{color:var(--charcoal);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:20px;padding:10px 0 10px 20px;display:flex}.real-work__viewport{padding:20px 0 30px}.real-work__mobile-wrap{display:none}.real-work__track{animation-duration:38s}.real-work__track:focus-within{animation-play-state:paused!important}.real-work__group{--carousel-gap:clamp(24px,4vw,64px)}.real-work__group figure{flex-basis:clamp(290px,38vw,570px)}.real-work__group figure:nth-child(2){padding-top:58px}.real-work__frame{aspect-ratio:4/5;cursor:zoom-in;border:0;border-radius:0;width:100%;padding:0;display:block;box-shadow:0 18px 40px #3c393629}.real-work__group figure:nth-child(2) .real-work__frame{aspect-ratio:4/4.5}.real-work__frame img{transition:transform 1.1s var(--ease-out)}.real-work__group figure:hover .real-work__frame img{filter:none;transform:scale(1.04)}.real-work__group figure:hover{transform:translateY(-5px)}.photo-open{background:var(--ivory);width:52px;height:52px;color:var(--charcoal);opacity:0;transition:opacity .3s,transform .4s var(--ease-out);place-items:center;font-size:28px;display:grid;position:absolute;bottom:18px;right:18px;transform:translateY(12px)}.real-work__frame:hover .photo-open,.real-work__frame:focus-visible .photo-open{opacity:1;transform:none}.real-work__group figcaption{padding-top:26px}.real-work__group h3{font-size:clamp(34px,3.5vw,56px)}.real-work__group figcaption p{color:var(--charcoal);font-size:.875rem}.photo-dialog{border:1px solid var(--stone);width:min(1100px,96vw);max-width:96vw;height:94dvh;max-height:94dvh;color:var(--ink);background:var(--ivory);padding:18px 24px;overflow:hidden;box-shadow:0 40px 100px #1212124d}.photo-dialog[open]{animation:dialog-arrive .5s var(--ease-out);grid-template-rows:auto minmax(0,1fr) auto;gap:16px;margin:auto;display:grid}.photo-dialog::backdrop{background:#3c3936c7}.photo-dialog__bar{justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.photo-dialog button{border:1px solid var(--stone);min-width:48px;min-height:48px;font:inherit;cursor:pointer;background:0 0;padding:8px 16px}.photo-dialog button:hover{background:var(--sand)}.photo-dialog__bar button{align-items:center;gap:20px;display:flex}.photo-dialog__image{min-height:0;position:relative}.photo-dialog__image img{object-fit:contain;animation:dialog-arrive .4s var(--ease-out)}.photo-dialog__bottom{text-align:center;justify-content:space-between;align-items:center;gap:12px;display:flex}.photo-dialog__bottom h3{font-size:clamp(26px,3vw,40px);line-height:1}.photo-dialog__bottom span{font-size:.75rem}body:has(dialog[open]){overflow:hidden}.services{background:var(--ivory);box-shadow:none;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:40px 7vw;padding:110px 5vw;display:grid}.services__heading{align-self:start;margin:0;position:sticky;top:130px}.services__heading h2{font-size:clamp(60px,6.7vw,108px)}.services__heading p{color:var(--charcoal);max-width:24rem;font-size:1rem}.service-grid{display:block}.service-panel,.service-panel--colour,.service-panel--cutting{border:0;border-top:1px solid var(--stone);box-shadow:none;background:0 0;margin:0;padding:0;animation:none;display:block;position:relative}.service-panel:last-child{border-bottom:1px solid var(--stone)}.service-panel:after{display:none}.service-panel:hover{box-shadow:none;transform:translate(0,0)}.service-panel__title,.service-panel--cutting .service-panel__title{cursor:pointer;align-items:center;gap:16px;margin:0;padding:26px 0;list-style:none;display:flex}.service-panel__title::-webkit-details-marker{display:none}.service-panel__title img{filter:none;width:40px}.service-panel h3{transition:translate .4s var(--ease-out);flex:1;font-size:clamp(36px,4vw,68px)}.service-panel summary:hover h3{translate:8px}.service-toggle{font:300 32px var(--font-body),sans-serif;transition:transform .4s var(--ease-out)}.service-panel[open] .service-toggle{transform:rotate(45deg)}.service-panel dl{animation:price-arrive .5s var(--ease-out);grid-template-columns:1fr;gap:22px;padding:4px 0 32px 56px}.service-panel dt{font-size:.95rem}.service-panel dd{font-size:1.65rem}.price-note,.services__klarna{grid-column:2;margin:0}.price-note{color:var(--charcoal);font-size:.8rem}.services__klarna{box-shadow:none;background:0 0;border:0;padding:0}.services__klarna p{letter-spacing:.04em;font-size:.75rem}.booking-policy{border:0;border-top:1px solid var(--stone);box-shadow:none;background:0 0;grid-column:1/-1;gap:4vw;margin-top:20px;padding:34px 0 0;animation:none}.booking-policy h3{font-size:40px}.booking-policy__item strong{color:var(--charcoal);font-size:62px}.booking-policy__item p{font-size:.875rem}.visit{background:var(--sand);box-shadow:none;grid-template-columns:1fr 1fr;gap:7vw;padding:90px 5vw 110px}.visit__intro{justify-content:flex-start}.visit__icon{display:none}.visit__details{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;grid-template-columns:1fr;align-content:start;gap:24px;padding:0;animation:none;display:grid}.visit__details>div:not(.visit__booking){border-color:var(--taupe);grid-template-columns:100px 1fr;gap:4px 20px;display:grid}.visit__details>div>span{color:var(--charcoal);grid-row:1/3;font-size:.75rem}.visit__details p,.visit__details a:not(.appointment-link){overflow-wrap:anywhere;font-size:1rem}.visit__booking{border-top:1px solid var(--taupe);box-shadow:none;background:0 0;flex-direction:column;align-items:flex-start;padding:20px 0 0}.visit__booking p{font-size:.8rem}footer{background:var(--ivory);box-shadow:none;padding:36px 5vw}footer p,footer>a{letter-spacing:.04em;font-size:.75rem}@keyframes dialog-arrive{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:none}}@keyframes price-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.atelier-hero__visual{animation:linear both portrait-exit;animation-timeline:view();animation-range:exit}.atelier-hero__copy{animation:linear both copy-exit;animation-timeline:view();animation-range:exit}}}@keyframes portrait-exit{to{transform:translateY(-65px)rotate(3deg)scale(.96)}}@keyframes copy-exit{to{opacity:.35;transform:translateY(40px)}}@media (width<=1050px){.services{gap:32px 4vw}.service-panel dl{padding-left:0}.booking-policy{grid-template-columns:1fr 1fr}.booking-policy h3{grid-column:1/-1}}@media (width<=800px){.real-work{padding:70px 0 60px}.real-work__heading{padding-inline:6vw}.real-work h2,.visit h2{font-size:clamp(60px,13vw,100px)}.real-work__group figure{flex-basis:76vw}.real-work__group figure:nth-child(2){padding-top:30px}.real-work__track{animation-duration:30s}.services{grid-template-columns:1fr;gap:30px;padding:75px 6vw}.services__heading{position:static}.services__heading h2{font-size:clamp(58px,13vw,100px)}.service-panel h3{font-size:clamp(36px,8vw,60px)}.service-panel__title img{width:34px}.price-note,.services__klarna{grid-column:1}.booking-policy{grid-template-columns:1fr;gap:28px}.booking-policy__item p{max-width:none}.visit{grid-template-columns:1fr;gap:45px;padding:70px 6vw}.visit__details{grid-template-columns:1fr}.photo-open{opacity:1;width:40px;height:40px;transform:none}.photo-dialog{padding:12px}.services__klarna{flex-direction:row;align-items:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.reveal-title[data-motion=ready] .word-mask>span{opacity:1;transform:none}.portrait{transform:none}.real-work__viewport{overflow-x:auto}.real-work__track{transform:none}.real-work__group[aria-hidden=true],.gallery-controls button{display:none}}.mobile-dock,.gallery-mobile-controls{display:none}.site-header nav{text-transform:none;letter-spacing:.02em;gap:20px;font-size:.875rem;display:flex}.site-header nav a{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}.social-contact{background:var(--sand);color:var(--charcoal);padding:52px 6vw}.social-contact h2{margin:0 0 14px;font-size:clamp(40px,6vw,68px)}.social-contact p{margin-bottom:24px;line-height:1.6}.social-contact>a{background:var(--charcoal);min-height:48px;color:var(--ivory);align-items:center;gap:24px;padding:12px 20px;display:inline-flex}@media (width<=800px){.site-header{grid-template-columns:1fr auto}.site-header nav{border-top:1px solid var(--stone);grid-area:2/1/auto/-1;justify-content:space-between;padding-bottom:4px}.site-header>.appointment-link{grid-area:1/2}html{scroll-padding-top:128px}}.real-work{background:var(--charcoal);color:var(--ivory)}.real-work h2,.real-work__group h3{color:var(--ivory)}.real-work__heading>p:last-child,.real-work__group figcaption p{color:var(--sand)}.gallery-controls{border-color:var(--umber)}.gallery-controls button{color:var(--ivory)}.real-work :focus-visible{outline-color:var(--ivory)}.real-work__frame{box-shadow:0 18px 40px #12121247}.consultation{background:var(--sand);border-left:3px solid var(--umber);grid-column:2;padding:28px}.consultation__duration{color:var(--charcoal);font-size:.875rem}.consultation h3{font:400 3rem/1 var(--font-display), "Cormorant Garamond", serif;margin:12px 0}.consultation p{font-size:1rem;line-height:1.65}.consultation a{border-bottom:1px solid var(--umber);align-items:center;gap:20px;min-height:48px;margin-top:8px;padding-block:14px;font-size:.875rem;font-weight:600;display:inline-flex}.booking-status a{text-underline-offset:4px;text-decoration:underline}.service-panel[open]{border-top-color:var(--charcoal)}@media (width<=800px){html{scroll-padding-top:82px;scroll-padding-bottom:110px}body{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}.site-header{background:var(--ivory);-webkit-backdrop-filter:none;backdrop-filter:none;min-height:64px;padding:0 5vw}.site-header>a:first-child{height:62px}.site-header .appointment-link{min-height:44px;padding-inline:15px;font-size:.75rem}.atelier-hero{flex-direction:column;align-items:stretch;gap:0;min-height:auto;padding:26px 5vw 42px;display:flex}.atelier-hero__copy{animation:none;display:contents}.hero__eyebrow{letter-spacing:.075em;order:0;margin:0 0 18px;font-size:.75rem}.atelier-hero h1{letter-spacing:-.055em;order:1;margin:0 0 20px;font-size:clamp(68px,20vw,110px);line-height:.83}.atelier-hero h1>span:nth-child(2){padding-left:.6em}.atelier-hero h1>span:nth-child(3){padding-top:.02em;padding-bottom:.12em;padding-left:.06em;font-size:.69em;line-height:1.12}.atelier-hero__visual{perspective:none;order:2;animation:none}.portrait{height:clamp(280px,84vw,480px);box-shadow:8px 9px 0 var(--stone), 0 18px 30px #3c393626;margin:0 8px 0 0}.portrait__edge{inset:8px}.portrait__image{object-position:center 44%}.tone-picker{border:1px solid var(--stone);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:24px;display:grid}.tone-picker button{border:0;flex-direction:column;justify-content:center;gap:6px;min-height:64px;padding:8px 3px;font-size:.75rem;line-height:1.3;transition:background .25s,color .25s;display:flex}.tone-picker button+button{border-left:1px solid var(--stone)}.tone-picker button[aria-pressed=true]{background:var(--charcoal);color:var(--ivory)}.tone-picker .tone{border-color:var(--stone);width:12px;height:12px}.atelier-hero__bottom{order:3;margin-top:24px;display:block}.atelier-hero__bottom>p{font-size:1rem}.atelier-hero__bottom>.appointment-link{display:none}.atelier-hero__bottom .booking-status{margin-top:12px;font-size:.875rem}.real-work{padding:48px 0 36px}.real-work__heading{padding-inline:5vw}.real-work h2,.services__heading h2,.visit h2{font-size:clamp(58px,15vw,98px);line-height:.96}.real-work__heading>p:last-child{margin-top:18px;font-size:1rem}.gallery-controls{margin:22px 5vw 6px;padding-top:8px;font-size:.875rem;display:flex}.gallery-controls button{min-height:44px}.real-work__viewport{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:12px 5vw 20px;scroll-padding-inline:5vw;position:relative;overflow:auto hidden}.real-work__viewport::-webkit-scrollbar{display:none}.real-work__track{will-change:auto;animation:none!important;transform:none!important}.real-work__group{gap:16px;padding-right:5vw}.real-work__group[aria-hidden=true]{display:none}.real-work__group figure{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 82vw;width:82vw}.real-work__group figure:nth-child(2){padding-top:0}.real-work__frame,.real-work__group figure:nth-child(2) .real-work__frame{aspect-ratio:4/5;box-shadow:0 10px 20px #3c39361f}.real-work__group figure:hover,.real-work__group figure:hover .real-work__frame img{transform:none}.real-work__group figcaption{padding-top:18px}.real-work__group h3{font-size:2.5rem}.real-work__group figcaption p{font-size:.875rem}.photo-open{min-width:44px;min-height:44px;bottom:12px;right:12px}.gallery-mobile-controls{justify-content:space-between;align-items:center;padding-inline:5vw;font-size:.875rem;display:flex}.gallery-mobile-controls>div{display:flex}.gallery-mobile-controls button{cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid}.gallery-mobile-controls button span{background:var(--taupe);border-radius:50%;width:7px;height:7px;transition:transform .25s}.gallery-mobile-controls button[aria-pressed=true] span{background:var(--ivory);transform:scale(1.65)}.services{gap:24px;padding:50px 5vw}.service-panel__title,.service-panel--cutting .service-panel__title{gap:10px;min-height:70px;padding:20px 0}.service-panel__title img{width:30px}.service-panel h3{font-size:clamp(32px,9vw,60px);line-height:1.05}.service-panel dt{font-size:1rem}.service-panel dd{white-space:nowrap;font-size:1.65rem}.service-panel dl{gap:18px}.price-note{font-size:.875rem}.consultation{grid-column:1;padding:24px}.services__klarna{gap:16px}.services__klarna p{text-transform:none;letter-spacing:0;font-size:.875rem}.booking-policy{gap:20px;margin-top:6px}.booking-policy__item{grid-template-columns:86px 1fr;align-items:center;gap:16px;display:grid}.booking-policy__item strong{font-size:3rem}.booking-policy__item p{font-size:.875rem}.visit{gap:30px;padding:50px 5vw}.visit__details>div:not(.visit__booking){grid-template-columns:76px 1fr;gap:6px 10px}.visit__details>div>span{font-size:.875rem}.visit__details a{min-height:44px}.visit__booking .appointment-link{justify-content:space-between;width:100%}.visit__booking p{font-size:.875rem}footer{padding:28px 5vw}footer p,footer>a{font-size:.875rem}.mobile-dock{z-index:30;bottom:max(12px, env(safe-area-inset-bottom,0px));border:1px solid var(--stone);background:var(--ivory);letter-spacing:0;grid-template-columns:1fr 1fr 1.65fr;gap:4px;padding:5px;font-size:.875rem;display:grid;position:fixed;left:12px;right:12px;box-shadow:0 7px 30px #3c393638}.mobile-dock a{white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:8px 4px;display:flex}.mobile-dock a:last-child{background:var(--charcoal);color:var(--ivory)}.mobile-dock a:active,.tone-picker button:active,.photo-dialog button:active{transform:scale(.96)}body:has(dialog[open]) .mobile-dock{visibility:hidden}.photo-dialog{height:94dvh;max-height:94dvh;padding:14px}.photo-dialog__bottom h3{font-size:1.9rem}}@media (width<=360px){.hero__eyebrow{letter-spacing:0;font-size:.75rem}.atelier-hero h1{font-size:19vw}.tone-picker button{font-size:.75rem}.mobile-dock{font-size:.8rem;left:8px;right:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-controls button{display:none}.gallery-mobile-controls button span,.tone-picker button{transition:none}.mobile-dock a:active,.tone-picker button:active,.photo-dialog button:active{transform:none}}.booking-app{--booking-paper:#f2efeb;--booking-panel:#faf8f5;--booking-border:#c6b9a9;--booking-muted:#655c52;--booking-radius:16px;isolation:isolate;background:var(--booking-paper);color:#121212;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);font-family:Montserrat,Arial,sans-serif}.booking-app *{box-sizing:border-box}.booking-app button,.booking-app input,.booking-app select,.booking-app textarea{font:inherit}.booking-quick-dates{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:20px 0 24px;display:grid}.booking-quick-dates button{color:#3c3936;background:#faf8f5;border:1px solid #c6b9a9;border-radius:12px;place-content:center;gap:4px;min-height:84px;padding:8px 3px;display:grid}.booking-quick-dates button span{font-size:10px}.booking-quick-dates button strong{font-size:22px}.booking-quick-dates button[aria-pressed=true]{color:#f2efeb;background:#3c3936;box-shadow:0 6px 18px #7f736629}.booking-app .booking-cancellation p,.booking-cancellation .booking-notice,.booking-cancellation .booking-error{font-size:1rem}.booking-cancellation .booking-check,.booking-cancellation .booking-field,.booking-cancellation .booking-text-button{font-size:.875rem}.booking-cancellation .booking-text-button{display:block}.booking-app a{color:inherit}.booking-app button{cursor:pointer}.booking-app button:disabled{cursor:not-allowed;opacity:.5}.booking-app :focus-visible{outline-offset:4px;outline:3px solid #7f7366}.booking-header{border-bottom:1px solid var(--booking-border);justify-content:space-between;align-items:center;gap:20px;max-width:1120px;height:96px;margin:0 auto;padding:12px 32px;display:flex}.booking-header img{object-fit:contain;width:144px;height:65px;display:block}.booking-header>a:last-child{text-align:right;align-items:center;min-height:44px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.booking-container{max-width:760px;margin:0 auto;padding:48px 28px 36px}.booking-intro{margin-bottom:30px}.booking-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--booking-muted);font-size:10px;font-weight:600}.booking-app h1,.booking-app h2{letter-spacing:-.035em;text-transform:none;font-family:Cormorant Garamond,Georgia,serif;font-weight:500}.booking-app h1{margin:14px 0 20px;font-size:clamp(44px,6vw,64px);line-height:1.03}.booking-app h2{margin:0 0 14px;font-size:38px;line-height:1.1}.booking-app h3{margin:0 0 12px;font-size:16px;line-height:1.4}.booking-app p{max-width:60ch;margin:0 0 20px;font-size:14px;line-height:1.65}.booking-muted{color:var(--booking-muted);font-size:12px!important}.booking-progress{grid-template-columns:repeat(5,1fr);gap:6px;margin:0 0 30px;display:grid}.booking-progress button{border:0;border-top:3px solid var(--booking-border);color:var(--booking-muted);background:0 0;min-height:44px;padding:12px 0;font-size:11px}.booking-progress button[aria-current]{color:#121212;border-color:#3c3936;font-weight:700}.booking-content{min-height:280px}.booking-service-group{margin:30px 0}.booking-service-group>h3{color:var(--booking-muted);letter-spacing:.08em;margin-bottom:8px;font-size:12px}.booking-service{border:0;border-bottom:1px solid var(--booking-border);text-align:left;width:100%;color:inherit;background:0 0;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;display:flex}.booking-service strong{font-size:15px;line-height:1.5;display:block}.booking-service small{color:var(--booking-muted);margin-top:5px;font-size:12px;line-height:1.6;display:block}.booking-service-price{flex-shrink:0;align-items:center;gap:12px;font-size:14px;display:flex}.booking-service-price>span{font-size:19px}.booking-service:hover{background:#dbd2c73b}.booking-notice,.booking-error{border-radius:var(--booking-radius);border:1px solid var(--booking-border);background:#dbd2c766;margin:18px 0;padding:18px 20px;font-size:13px;line-height:1.65}.booking-error{color:#4c3026;background:#eee0d8;border-color:#77594c}.booking-notice a{text-underline-offset:3px}.booking-primary{border-radius:var(--booking-radius);text-align:center;background:#3c3936;border:1px solid #3c3936;justify-content:center;align-items:center;gap:8px;width:100%;min-height:56px;margin:24px 0 14px;padding:16px 22px;font-size:14px;font-weight:600;text-decoration:none;display:flex;color:#f2efeb!important}.booking-primary:hover{background:#121212}.booking-primary:active{transform:scale(.985)}.booking-form{max-width:560px}.booking-form>label:not(.booking-check),.booking-date-label,.booking-editor>label{margin:20px 0;font-size:12px;font-weight:600;display:block}.booking-app input:not([type=checkbox]),.booking-app select,.booking-app textarea{background:var(--booking-panel);color:#121212;border:1px solid #a89a8c;border-radius:12px;width:100%;min-height:54px;margin-top:8px;padding:14px 16px;font-size:16px;display:block}.booking-app textarea{resize:vertical;min-height:110px}.booking-app input[type=checkbox]{accent-color:#3c3936;flex-shrink:0;width:22px;height:22px;margin:1px 0}.booking-check{align-items:flex-start;gap:12px;min-height:48px;padding:12px 0;font-size:12px;line-height:1.7;display:flex}.booking-option{border:1px solid var(--booking-border);border-radius:var(--booking-radius);background:var(--booking-panel);align-items:center;gap:16px;min-height:76px;margin:12px 0;padding:18px;font-size:13px;display:flex}.booking-option>span{flex:1}.booking-option small{color:var(--booking-muted);margin-top:5px;display:block}.booking-times{grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0;display:grid}.booking-times button{background:var(--booking-panel);color:#121212;border:1px solid #a89a8c;border-radius:12px;min-height:52px;font-size:15px}.booking-times button[aria-pressed=true]{color:#f2efeb;background:#3c3936;border-color:#3c3936}.booking-summary{background:var(--booking-panel);border:1px solid var(--booking-border);border-radius:var(--booking-radius);margin:20px 0;padding:26px}.booking-summary h3{font-family:Cormorant Garamond,Georgia,serif;font-size:30px;font-weight:500;line-height:1.15}.booking-summary dl{border-top:1px solid var(--booking-border);margin:20px 0 0;padding-top:18px}.booking-summary dl div{justify-content:space-between;gap:24px;margin:12px 0;font-size:13px;display:flex}.booking-summary dd{white-space:nowrap;margin:0;font-weight:600}.booking-summary dt{color:var(--booking-muted)}.booking-policy{border-top:1px solid var(--booking-border);border-bottom:1px solid var(--booking-border);margin:24px 0;padding:16px 0}.booking-policy summary{cursor:pointer;min-height:32px;font-size:13px;font-weight:600}.booking-policy p{white-space:pre-line;margin:10px 0;font-size:12px}.booking-running-total{border-radius:var(--booking-radius);background:#dbd2c7;border:1px solid #a89a8c;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:18px 20px;font-size:12px;display:flex;position:sticky;bottom:12px;box-shadow:0 8px 24px #7f73661a}.booking-running-total strong{white-space:nowrap}.booking-text-button{text-underline-offset:4px;color:#3c3936;background:0 0;border:0;min-height:44px;padding:12px 0;font-size:12px;text-decoration:underline}.booking-footer{color:var(--booking-muted);flex-wrap:wrap;justify-content:center;gap:20px;padding:36px 24px;font-size:11px;display:flex}.booking-footer a{text-transform:none;letter-spacing:normal}.booking-skeleton{gap:14px;padding:12px 0;display:grid}.booking-skeleton span{border-radius:var(--booking-radius);background:#dbd2c780;height:80px}.booking-skeleton span:first-child{width:65%;height:40px}.booking-tabs{gap:8px;margin:24px 0;padding-bottom:12px;display:flex;overflow:auto}.booking-tabs button{border:1px solid var(--booking-border);white-space:nowrap;background:var(--booking-panel);color:#121212;border-radius:12px;min-height:46px;padding:12px 18px;font-size:12px}.booking-tabs button[aria-pressed=true]{color:#f2efeb;background:#3c3936}.booking-status{letter-spacing:.04em;color:var(--booking-muted);text-transform:capitalize;font-size:11px}.booking-appointment{border-bottom:1px solid var(--booking-border);padding:24px 0}.booking-appointment h3{margin:10px 0;font-size:20px}.booking-appointment p{margin:6px 0;font-size:13px}.booking-appointment .booking-primary{max-width:300px}.booking-account-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.booking-account-heading h1{margin-bottom:12px}.booking-diary-date{align-items:center;gap:16px;margin:20px 0 32px;display:flex}.booking-diary-date label{flex:1;font-size:14px}.booking-diary-date>button{border:1px solid var(--booking-border);background:var(--booking-panel);border-radius:12px;min-width:48px;min-height:48px}.booking-diary-day{margin:32px 0}.booking-diary-day h2{font-size:30px}.booking-diary-entry{text-align:left;background:var(--booking-panel);border:0;border-bottom:1px solid var(--booking-border);color:#121212;gap:20px;width:100%;min-height:100px;padding:20px 12px;display:flex}.booking-diary-entry>span:last-child{gap:6px;min-width:0;display:grid}.booking-diary-entry strong{font-size:16px}.booking-diary-entry small{color:var(--booking-muted);text-transform:capitalize;font-size:14px}.booking-diary-time{min-width:52px;font-size:16px;font-weight:600}.booking-diary-time small{margin-top:8px;font-weight:400;display:block}.booking-diary-cancelled,.booking-diary-expired{opacity:.7;background:0 0}.booking-diary-entry[aria-expanded=true]{background:#dbd2c7;box-shadow:inset 4px 0 #7f7366}.booking-admin-detail{background:var(--booking-panel);border:1px solid var(--booking-border);overflow-wrap:anywhere;border-radius:16px;padding:24px}.booking-admin-detail h2{font-size:28px}.booking-admin-detail h3{margin-top:24px}.booking-admin-detail p{font-size:16px}.booking-private-note{border-top:1px solid var(--booking-border);padding:16px 0}.booking-private-note p{white-space:pre-wrap}.booking-admin .booking-tabs button{font-size:14px}.booking-editor{margin-top:24px}.booking-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.booking-form-grid>label{font-size:12px;font-weight:600}.booking-hours-fieldset{border:0;min-width:0;margin:0;padding:0}.booking-hours-day{border-bottom:1px solid var(--booking-border);padding:24px 0}.booking-hours-day h2{font-size:30px}.booking-hours-row{align-items:end;gap:12px;margin-bottom:12px;display:flex}.booking-hours-row label{flex:1;min-width:0;font-size:14px}.booking-hours-row .booking-text-button{min-height:54px;font-size:14px}.booking-hours-day>.booking-text-button{font-size:14px}.booking-diagram{grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0;display:grid}.booking-diagram>div{background:var(--booking-panel);border:1px solid var(--booking-border);border-radius:var(--booking-radius);padding:20px}.booking-diagram strong{margin-top:8px;font-size:26px;display:block}.booking-diagram span{color:var(--booking-muted);font-size:12px}@media (prefers-reduced-motion:no-preference){.booking-content{animation:.22s ease-out booking-enter}.booking-primary,.booking-times button{transition:background .15s,transform .15s}.booking-skeleton span{animation:1.4s ease-in-out infinite alternate booking-loading}@keyframes booking-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes booking-loading{0%{opacity:.45}to{opacity:1}}}@media (width<=600px){.booking-header{height:84px;padding:8px 20px}.booking-header img{width:124px;height:60px}.booking-header>a:last-child{max-width:110px;font-size:10px}.booking-container{padding:30px 20px}.booking-app h1{font-size:46px}.booking-app h2{font-size:34px}.booking-progress{gap:4px;margin-bottom:24px}.booking-progress button{font-size:10px}.booking-service{gap:12px}.booking-service-price{gap:8px;font-size:12px}.booking-service strong{font-size:14px}.booking-summary{padding:22px}.booking-running-total{bottom:calc(10px + env(safe-area-inset-bottom))}.booking-form-grid{grid-template-columns:1fr}.booking-footer{gap:16px;padding-bottom:32px}}@media (width<=360px){.booking-times{grid-template-columns:repeat(3,1fr)}.booking-service{align-items:flex-start}.booking-service-price{white-space:normal;max-width:100px}}
