*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.hidden{display:none}.font-display{font-family:Cormorant Garamond,Georgia,serif}.text-display{letter-spacing:-.055em;font-size:clamp(3.75rem,10vw,8.75rem);line-height:.88}.text-editorial{letter-spacing:-.045em;font-size:clamp(2.4rem,6vw,5.25rem);line-height:.95}:root{color-scheme:light;--brand-canvas:#ab9c8a;--brand-accent-1:#dc9d60;--brand-accent-2:#747245;--brand-accent-3:#b58d63;--brand-ink:#1a1918;--brand-text:#2b2723;--brand-light:#f8f6f2;--brand-paper:#fcfbfa}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--brand-light)}body{background:var(--brand-light);min-width:320px;color:var(--brand-text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}body::selection{background:#dc9d6047}::selection{background:#dc9d6047}a{color:inherit;text-underline-offset:.35em;text-decoration-thickness:1px;transition:color .18s,border-color .18s,background .18s,transform .18s}button,input,textarea,select{font:inherit}button{cursor:pointer}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--brand-accent-1);outline-offset:4px}#main{isolation:isolate}.container{width:min(100% - 2rem,1180px);margin-inline:auto}.section{padding-block:clamp(5rem,9vw,9rem);scroll-margin-top:6rem}.section-shell{padding-block:clamp(4.5rem,7vw,7rem) clamp(5rem,9vw,9rem)}.site-header{z-index:50;backdrop-filter:blur(18px);background:#fcfbfad1;border-bottom:1px solid #74724547;position:sticky;top:0}.nav-shell{justify-content:space-between;align-items:center;gap:1.5rem;min-height:84px;display:flex}.brand-mark{justify-content:center;align-items:center;min-width:142px;text-decoration:none;display:inline-flex}.brand-mark img{-o-object-fit:contain;object-fit:contain;width:auto;height:42px}.brand-fallback{letter-spacing:.28em;color:var(--brand-accent-2);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-size:.82rem;font-weight:700}.nav-links{letter-spacing:.16em;text-transform:uppercase;justify-content:center;align-items:center;gap:clamp(1rem,3vw,2.4rem);font-size:.78rem;font-weight:600;display:flex}.nav-links a{text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--brand-accent-1);transform-origin:0;height:1px;transition:transform .18s;position:absolute;bottom:-.45rem;left:0;right:0;transform:scaleX(0)}.nav-links a:hover{color:var(--brand-accent-2)}.nav-links a:hover:after{transform:scaleX(1)}.nav-cta,.button{border:1px solid var(--brand-accent-2);letter-spacing:.14em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:.78rem 1.18rem;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .18s,background .18s,border-color .18s,color .18s,box-shadow .18s;display:inline-flex}.nav-cta{white-space:nowrap;background:var(--brand-accent-2);color:var(--brand-paper)}.nav-cta:hover,.button-primary:hover{background:var(--brand-accent-1);border-color:var(--brand-accent-1);transform:translateY(-2px);box-shadow:0 14px 40px #7472452e}.button-ghost{color:var(--brand-accent-2);background:#fcfbfa9e}.button-ghost:hover{border-color:var(--brand-accent-1);background:#dc9d6024;transform:translateY(-2px)}.skip-link{z-index:100;border:1px solid var(--brand-accent-2);background:var(--brand-paper);color:var(--brand-accent-2);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.7rem 1rem;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .16s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.hero{background:radial-gradient(circle at 12% 18%, #dc9d602e, transparent 28%), radial-gradient(circle at 88% 10%, #7472451f, transparent 30%), linear-gradient(135deg, var(--brand-light) 0%, var(--brand-paper) 46%, var(--brand-canvas) 100%);position:relative;overflow:hidden}.hero:before{z-index:-1;aspect-ratio:1;content:"";opacity:.75;border:1px solid #74724538;border-radius:999px;width:min(42vw,540px);position:absolute;top:14%;left:4%}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);display:grid}.hero-copy{padding-top:clamp(2rem,6vw,6rem)}.eyebrow{color:var(--brand-accent-2);letter-spacing:.24em;text-transform:uppercase;margin:0 0 1.15rem;font-size:.72rem;font-weight:700}.hero-subtitle,.booking-copy,.footer-intro,.service-copy p,.about-copy p,.modal-fallback{color:#2b2723c7;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.75}.hero-subtitle{max-width:620px;margin:0 0 2rem}.hero-actions,.booking-actions{flex-wrap:wrap;gap:.85rem;display:flex}.studio-facts{border-top:1px solid #7472456b;border-bottom:1px solid #74724547;grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px;margin:clamp(2.5rem,5vw,4.5rem) 0 0;display:grid}.studio-facts div{padding:1rem 1rem 1.05rem 0}.studio-facts dt{color:#2b272394;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.25rem;font-size:.68rem;font-weight:700}.studio-facts dd{color:var(--brand-accent-2);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;line-height:1.1}.hero-visual{justify-content:center;align-items:center;min-height:min(72vh,680px);padding:clamp(2rem,5vw,5rem);display:flex;position:relative}.portrait-frame{aspect-ratio:3/4;background:var(--brand-canvas);border:1px solid #747245b3;border-radius:999px 999px 2.2rem 2.2rem;width:min(100%,430px);overflow:hidden;box-shadow:0 24px 70px #1a19181f}.portrait-frame img{-o-object-fit:cover;object-fit:cover;filter:saturate(.88)contrast(.96);width:100%;height:100%;transform:scale(1.01)}.floating-note{backdrop-filter:blur(14px);background:#fcfbfad6;border:1px solid #7472455c;border-radius:1.4rem;width:min(280px,62%);padding:1.15rem;position:absolute;bottom:9%;left:0;transform:translate(-12%);box-shadow:0 14px 40px #7472451a}.floating-note span{color:var(--brand-accent-1);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.5rem;font-size:.68rem;font-weight:700;display:block}.floating-note strong{color:var(--brand-accent-2);margin-bottom:.35rem;font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;line-height:1;display:block}.floating-note em{color:#2b2723ad;font-size:.92rem;font-style:normal;line-height:1.55;display:block}.section-heading{grid-template-columns:minmax(150px,.32fr) minmax(0,.68fr);align-items:start;gap:clamp(1.5rem,5vw,5rem);margin-bottom:clamp(2.8rem,6vw,5.5rem);display:grid}.section-heading h2,.about-copy h2,.booking-panel h2,.modal-head h2{color:var(--brand-ink);margin:0}.service-menu{border-top:1px solid #7472456b}.service-row{border-bottom:1px solid #74724547;grid-template-columns:4.8rem minmax(0,1fr) auto;align-items:center;gap:clamp(1rem,3vw,2rem);padding:clamp(1.35rem,3vw,2.1rem) 0;display:grid}.service-index{color:var(--brand-accent-1);font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;line-height:1}.service-copy h3{color:var(--brand-accent-2);margin:0 0 .45rem;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.7rem,3.2vw,3rem);font-weight:600;line-height:1}.service-copy p{max-width:680px;margin:0}.service-link{min-height:42px;color:var(--brand-accent-2);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;border:1px solid #74724557;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1rem;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.service-link:hover{border-color:var(--brand-accent-1);color:var(--brand-ink);background:#dc9d601f}.section-canvas{background:linear-gradient(135deg,#ab9c8aeb 0%,#f8f6f2e6 58%,#fcfbfa 100%)}.about-grid{grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);display:grid}.about-image{background:var(--brand-accent-3);border:1px solid #74724585;align-self:stretch;min-height:560px;position:relative;box-shadow:0 24px 70px #1a19181f}.about-image img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.about-image:after{content:"";pointer-events:none;border:1px solid #fcfbfa94;position:absolute;inset:1rem}.signature{color:var(--brand-accent-2);letter-spacing:.16em;text-transform:uppercase;backdrop-filter:blur(12px);background:#fcfbfadb;border:1px solid #fcfbfab8;border-radius:999px;padding:.68rem .95rem;font-size:.72rem;font-weight:700;position:absolute;bottom:1.2rem;right:1.2rem}.about-list{gap:1rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.about-list li{border-left:1px solid #7472456b;gap:.2rem;padding-left:1rem;display:grid}.about-list strong{color:var(--brand-accent-2);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;font-weight:700}.about-list span{color:#2b2723b8;line-height:1.65}.booking-panel{background:#fcfbfac2;border:1px solid #7472457a;border-radius:2rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(1.5rem,5vw,4rem);padding:clamp(1.4rem,4vw,3.2rem);display:grid;box-shadow:0 24px 70px #1a191814}.booking-copy{max-width:640px;margin:1.1rem 0 0}.footer{background:var(--brand-ink);color:var(--brand-paper);border-top:1px solid #7472454d}.footer-grid{grid-template-columns:minmax(220px,1fr) minmax(260px,.8fr) minmax(180px,.55fr);gap:clamp(2rem,6vw,5rem);padding-block:clamp(3.5rem,7vw,6rem);display:grid}.footer-brand{color:var(--brand-paper);letter-spacing:.28em;margin-bottom:1rem;font-size:.86rem;font-weight:800;text-decoration:none;display:inline-block}.footer h2{color:var(--brand-paper);margin:0 0 1rem;font-family:Cormorant Garamond,Georgia,serif;font-size:2.4rem;font-weight:600;line-height:1}.footer p,.footer address{color:#f8f6f2b8;line-height:1.7}.footer a:hover{color:var(--brand-accent-1)}.footer-notes{align-content:start;gap:.7rem;display:grid}.footer-notes a{color:#f8f6f2c7;width:fit-content;text-decoration:none}.footer-notes a:after{content:" ↗";font-size:.8em}.legal-strip{color:#f8f6f294;border-top:1px solid #f8f6f224;flex-wrap:wrap;gap:.75rem;padding-block:1.1rem;font-size:.88rem;display:flex}.legal-strip details{border-right:1px solid #f8f6f22e;padding-right:1rem}.legal-strip details:last-child{border-right:0;padding-right:0}.legal-strip summary{cursor:pointer;color:#f8f6f2c7;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.legal-strip p{max-width:760px;margin:.5rem 0 0}.modal-backdrop{z-index:100;backdrop-filter:blur(8px);background:#1a19188a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.booking-modal{background:var(--brand-paper);border:1px solid #7472456b;border-radius:1.5rem;width:min(960px,100vw - 2rem);max-height:calc(100vh - 2rem);overflow:hidden;box-shadow:0 24px 90px #1a191847}.modal-head{border-bottom:1px solid #74724547;justify-content:space-between;align-items:start;gap:1rem;padding:1.2rem 1.2rem 1rem;display:flex}.modal-head h2{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:600;line-height:1}.modal-close{width:42px;height:42px;color:var(--brand-accent-2);background:0 0;border:1px solid #7472455c;border-radius:999px;place-items:center;font-size:1.7rem;line-height:1;display:inline-grid}.modal-close:hover{border-color:var(--brand-accent-1);background:#dc9d601f}.iframe-wrap{background:var(--brand-light);height:clamp(420px,70vh,720px)}.iframe-wrap iframe{border:0;width:100%;height:100%}.modal-fallback{margin:0;padding:.9rem 1.2rem 1.1rem;font-size:.95rem}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (width<=980px){.nav-shell{flex-wrap:wrap;padding-block:.9rem}.nav-links{order:3;justify-content:space-between;width:100%;padding-top:.25rem;overflow-x:auto}.nav-cta{margin-left:auto}.hero-grid,.about-grid,.booking-panel{grid-template-columns:1fr}.hero-visual{min-height:auto;padding-top:2rem}.floating-note{width:100%;margin-top:1rem;position:relative;bottom:auto;left:auto;transform:none}.section-heading{grid-template-columns:1fr;gap:1rem}.service-row{grid-template-columns:3.8rem minmax(0,1fr)}.service-link{grid-column:2;justify-self:start}.footer-grid{grid-template-columns:1fr}}@media (width<=680px){.container{width:min(100% - 1.25rem,1180px)}.brand-mark{min-width:0}.brand-mark img{height:34px}.nav-cta,.button{width:100%}.hero:before{width:72vw;top:8%}.studio-facts{grid-template-columns:1fr}.portrait-frame{width:min(100%,360px)}.about-image{min-height:430px}.booking-actions{flex-direction:column}.legal-strip details{border-top:1px solid #f8f6f22e;border-right:0;padding-top:.75rem;padding-right:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
