@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-italic.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500-italic.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/montserrat-300.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-400.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/montserrat-500.woff2) format("woff2")}:root{color-scheme:light;--gold: #9c7c3e;--gold-soft: #c9a96e;--bg: #f7f3ec;--surface: #fffdf8;--surface-2: #efe7d8;--band: #efe7d8;--text: #2b231d;--text-soft: #6a5f54;--hair: rgba(156, 124, 62, .32);--line: rgba(43, 35, 29, .12);--on-gold: #fffaf0;--hover-bg: #2b231d;--hover-text: #f7f3ec;--invert-bg: #2b231d;--invert-text: #f3ede1;--btn-bg: #2b231d;--btn-text: #f7f3ec;--btn-hover-text: #2b231d;--nav-bg: rgba(247, 243, 236, .8);--chip-bg: rgba(247, 243, 236, .82);--scrim: rgba(43, 35, 29, .34);--glow: transparent;--grain-blend: multiply;--grain-opacity: .5;--shadow: 0 24px 60px -32px rgba(43, 35, 29, .28);--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans: "Montserrat", "Helvetica Neue", Arial, sans-serif;--pad: clamp(20px, 6vw, 120px);--maxw: 1320px}:root[data-theme=dark]{color-scheme:dark;--gold: #c9a96e;--gold-soft: #e0c694;--bg: #0b0a08;--surface: #16130f;--surface-2: #211c16;--band: #0e0c0a;--text: #ece5d6;--text-soft: #a09686;--hair: rgba(201, 169, 110, .3);--line: rgba(236, 229, 214, .1);--on-gold: #120f0a;--hover-bg: #241f18;--hover-text: #ece5d6;--invert-bg: #060504;--invert-text: #ece5d6;--btn-bg: #c9a96e;--btn-text: #120f0a;--btn-hover-text: #c9a96e;--nav-bg: rgba(11, 10, 8, .72);--chip-bg: rgba(22, 19, 15, .86);--scrim: rgba(0, 0, 0, .58);--glow: rgba(201, 169, 110, .1);--grain-blend: overlay;--grain-opacity: .22;--shadow: 0 30px 80px -34px rgba(0, 0, 0, .75)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){color-scheme:dark;--gold: #c9a96e;--gold-soft: #e0c694;--bg: #0b0a08;--surface: #16130f;--surface-2: #211c16;--band: #0e0c0a;--text: #ece5d6;--text-soft: #a09686;--hair: rgba(201, 169, 110, .3);--line: rgba(236, 229, 214, .1);--on-gold: #120f0a;--hover-bg: #241f18;--hover-text: #ece5d6;--invert-bg: #060504;--invert-text: #ece5d6;--btn-bg: #c9a96e;--btn-text: #120f0a;--btn-hover-text: #c9a96e;--nav-bg: rgba(11, 10, 8, .72);--chip-bg: rgba(22, 19, 15, .86);--scrim: rgba(0, 0, 0, .58);--glow: rgba(201, 169, 110, .1);--grain-blend: overlay;--grain-opacity: .22;--shadow: 0 30px 80px -34px rgba(0, 0, 0, .75)}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:radial-gradient(120% 75% at 50% -8%,var(--glow),transparent 60%),var(--bg);background-attachment:fixed;color:var(--text);font-family:var(--sans);font-weight:300;font-size:17px;line-height:1.7;letter-spacing:.01em;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background-color .5s ease,color .5s ease}.skip-link{position:fixed;top:12px;left:12px;z-index:10000;padding:12px 20px;background:var(--btn-bg);color:var(--btn-text);font-size:13px;letter-spacing:.08em;border-radius:2px;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.grain{position:fixed;inset:0;z-index:9000;pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:var(--grain-blend);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.42'/%3E%3C/svg%3E")}.spark{display:inline-block;width:1em;height:1em;vertical-align:-.12em;background:var(--gold);-webkit-mask:var(--spark-mask) center / contain no-repeat;mask:var(--spark-mask) center / contain no-repeat}:root{--spark-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c.9 8 3.1 11.1 12 12-8.9.9-11.1 4-12 12-.9-8-3.1-11.1-12-12C8.9 11.1 11.1 8 12 0Z'/%3E%3C/svg%3E")}h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0}.eyebrow{font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold)}.section-title{font-size:clamp(38px,6vw,76px);line-height:1.02;letter-spacing:-.01em}.section-title em{font-style:italic;color:var(--gold)}a{color:inherit;text-decoration:none}.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--pad)}section{position:relative}.rule{height:1px;background:var(--hair);border:0;margin:0}.ph{position:relative;background-color:var(--surface-2);background-image:repeating-linear-gradient(-45deg,transparent 0 11px,rgba(201,169,110,.1) 11px 12px);border:1px solid var(--hair);overflow:hidden;display:flex;align-items:flex-end;border-radius:2px}.ph:before{content:"";position:absolute;inset:10px;border:1px solid var(--hair);border-radius:1px;pointer-events:none}.ph .ph-label{position:relative;margin:16px;padding:6px 12px;background:var(--chip-bg);border:1px solid var(--hair);font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);border-radius:2px}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.22em;text-transform:uppercase;padding:15px 30px;border:1px solid var(--btn-bg);background:var(--btn-bg);color:var(--btn-text);cursor:pointer;transition:background .4s ease,color .4s ease,border-color .4s ease;border-radius:2px}.btn:hover{background:transparent;color:var(--btn-hover-text)}.btn--ghost{background:transparent;color:var(--text);border-color:var(--hair)}.btn--ghost:hover{border-color:var(--gold);color:var(--gold)}.btn--gold{background:transparent;border-color:var(--gold);color:var(--gold)}.btn--gold:hover{background:var(--gold);color:var(--on-gold)}.nav{position:sticky;top:0;z-index:1000;background:var(--nav-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .4s ease,background .4s ease}.nav.scrolled{border-bottom-color:var(--hair)}.nav__inner{max-width:var(--maxw);margin:0 auto;padding:20px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:var(--serif);font-style:italic;font-weight:500;font-size:26px;color:var(--gold);letter-spacing:.01em;white-space:nowrap}.nav__links{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0;white-space:nowrap}.nav__links a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);position:relative;transition:color .3s}.nav__links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--gold);transition:width .35s ease}@media(hover:hover){.nav__links a:hover{color:var(--text)}.nav__links a:hover:after{width:100%}}.nav__links a.active{color:var(--text)}.nav__links a.active:after{width:100%}.nav__cta{display:inline-flex}.nav__right{display:flex;align-items:center;gap:18px}.lang{display:inline-flex;align-items:center;gap:7px}.lang__btn{background:none;border:0;cursor:pointer;font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);padding:4px 1px;transition:color .3s ease}.lang__btn:hover{color:var(--text)}.lang__btn.is-active{color:var(--gold);cursor:default}.lang__sep{color:var(--hair);font-size:12px;line-height:1}.theme-toggle{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--hair);border-radius:50%;color:var(--text-soft);cursor:pointer;padding:0;transition:color .3s ease,border-color .3s ease}.theme-toggle:hover{color:var(--gold);border-color:var(--gold)}.theme-toggle svg{width:17px;height:17px;display:block}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon{display:block}:root[data-theme=dark] .theme-toggle .icon-sun{display:block}:root[data-theme=dark] .theme-toggle .icon-moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .theme-toggle .icon-sun{display:block}:root:not([data-theme=light]):not([data-theme=dark]) .theme-toggle .icon-moon{display:none}}.drawer .theme-toggle{width:44px;height:44px}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:transparent;border:1px solid var(--hair);border-radius:2px;cursor:pointer;padding:0 10px}.hamburger span{display:block;height:1px;background:var(--text);transition:transform .35s ease,opacity .25s ease}.hamburger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.drawer{position:fixed;inset:0 0 0 auto;width:min(86vw,380px);background:var(--bg);border-left:1px solid var(--hair);z-index:1200;transform:translate(100%);transition:transform .5s cubic-bezier(.7,0,.2,1);padding:22px 30px 32px;display:flex;flex-direction:column}.drawer.open{transform:translate(0)}.drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.drawer__head .brand{font-size:22px}.drawer__close{width:42px;height:42px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--hair);border-radius:50%;color:var(--text-soft);cursor:pointer;padding:0;transition:color .3s,border-color .3s}.drawer__close:hover{color:var(--gold);border-color:var(--gold)}.drawer__close svg{width:17px;height:17px;display:block}.drawer__links{display:flex;flex-direction:column}.drawer__links a{font-family:var(--serif);font-size:27px;padding:13px 2px;border-bottom:1px solid var(--line);color:var(--text);transition:color .25s ease,padding-left .25s ease}.drawer__links a:hover,.drawer__links a.active{color:var(--gold);padding-left:8px}.drawer__foot{margin-top:auto;padding-top:28px}.drawer__cta{width:100%;justify-content:center;letter-spacing:.16em;white-space:nowrap}.drawer__tools{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.scrim{position:fixed;inset:0;background:var(--scrim);backdrop-filter:blur(2px);z-index:1100;opacity:0;pointer-events:none;transition:opacity .4s}.scrim.open{opacity:1;pointer-events:auto}.hero{padding-top:clamp(40px,7vw,90px)}.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,80px);align-items:center}.hero__head{font-size:clamp(52px,8.5vw,124px);line-height:.96;letter-spacing:-.018em}.hero__head em{font-style:italic;color:var(--gold)}.hero__tag{font-size:13px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin:0 0 28px;display:inline-flex;align-items:center;gap:12px}.hero__tag .spark{font-size:13px}.hero__sub{max-width:44ch;color:var(--text-soft);font-size:18px;margin:30px 0 38px}.hero__ctas{display:flex;flex-wrap:wrap;gap:16px}.hero__img{aspect-ratio:4 / 5}.hero--solo{padding-top:clamp(56px,9vw,120px)}.hero--solo .hero__grid{grid-template-columns:1fr}.hero--solo .hero__copy{max-width:1000px;margin-inline:auto;text-align:center}.hero--solo .hero__head{font-size:clamp(56px,9.5vw,148px)}.hero--solo .hero__sub{max-width:56ch;margin-inline:auto}.hero--solo .hero__ctas,.hero--solo .hero__meta{justify-content:center}.hero--solo .hero__meta{gap:clamp(30px,6vw,80px)}.hero__meta{display:flex;gap:44px;margin-top:52px;padding-top:30px;border-top:1px solid var(--hair)}.hero__meta b{display:block;font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.05;color:var(--text)}.hero__meta span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.marquee{margin-top:80px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);background:var(--band);overflow:hidden;padding:26px 0}.marquee__track{display:flex;width:max-content;animation:slide 38s linear infinite}.marquee:hover .marquee__track{animation-play-state:paused}.marquee__track span{font-family:var(--serif);font-style:italic;font-size:clamp(28px,4vw,50px);color:var(--text);padding:0 38px;white-space:nowrap}.marquee__track span:after{content:"·";color:var(--gold);margin-left:76px}@keyframes slide{to{transform:translate(-50%)}}.block{padding-block:clamp(80px,12vw,80px)}.block__head{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;margin-bottom:clamp(48px,7vw,84px)}.block__head p{max-width:42ch;color:var(--text-soft);margin:0}.services{display:grid;gap:1px;background:var(--hair);border:1px solid var(--hair)}.svc{background:var(--surface);padding:clamp(30px,4vw,52px);display:flex;flex-direction:column;gap:18px;transition:background .5s ease}.svc:hover{background:var(--surface-2)}.svc__no{font-family:var(--sans);font-size:11px;letter-spacing:.22em;color:var(--gold)}.svc h3{font-size:clamp(30px,3.4vw,42px);line-height:1.05}.svc__desc{color:var(--text-soft);flex:1;margin:0}.svc__foot{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;padding-top:18px;border-top:1px solid var(--line)}.svc__price{font-family:var(--serif);font-size:28px;color:var(--gold);white-space:nowrap}.svc__dur{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-soft);white-space:nowrap}.pricelist{background:var(--band);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.pl__head{text-align:center;max-width:640px;margin:0 auto clamp(40px,6vw,64px)}.pl__sparks{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--gold);margin-bottom:18px}.pl__sparks .spark{font-size:15px}.pl__sparks .spark:nth-child(2){font-size:22px}.pl__title{font-size:clamp(30px,4.4vw,52px);letter-spacing:.02em}.pl__title em{font-style:normal;color:var(--gold)}.pl__rule{display:flex;align-items:center;justify-content:center;gap:16px;margin:22px auto 0;max-width:420px}.pl__rule:before,.pl__rule:after{content:"";height:1px;flex:1;background:var(--hair)}.pl__rule .spark{font-size:11px;color:var(--gold)}.pl__group{max-width:760px;margin:0 auto}.pl__group+.pl__group{margin-top:clamp(40px,6vw,64px)}.pl__group-title{text-align:center;font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--text-soft);margin:0 0 26px}.pl__row{display:flex;align-items:baseline;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.pl__row:first-of-type{border-top:1px solid var(--line)}.pl__name{flex:1}.pl__name b{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(19px,2.4vw,24px);line-height:1.2;color:var(--text)}.pl__name i{display:block;font-style:italic;font-size:13px;letter-spacing:.02em;color:var(--text-soft);margin-top:2px}.pl__price{font-family:var(--serif);font-size:clamp(20px,2.6vw,26px);color:var(--gold);white-space:nowrap}.pl__note{text-align:center;margin:clamp(36px,5vw,52px) auto 0;max-width:560px;color:var(--text-soft);font-family:var(--serif);font-style:italic;font-size:18px}.pl__note .spark{font-size:13px;margin:0 6px}.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:130px;gap:clamp(12px,1.6vw,22px)}.gallery .ph{width:100%;height:100%}.gallery__item{position:relative;width:100%;height:100%;padding:0;margin:0;border:1px solid var(--hair);border-radius:2px;overflow:hidden;background:var(--surface-2);cursor:pointer;display:block}.gallery__img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease}.gallery__item:hover .gallery__img,.gallery__item:focus-visible .gallery__img{transform:scale(1.06);filter:brightness(.82)}.gallery__item:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.gallery__zoom{position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%) scale(.8);border:1px solid rgba(247,243,236,.7);border-radius:50%;opacity:0;transition:opacity .35s ease,transform .35s ease;pointer-events:none}.gallery__zoom:before,.gallery__zoom:after{content:"";position:absolute;top:50%;left:50%;background:#f7f3ece6;transform:translate(-50%,-50%)}.gallery__zoom:before{width:15px;height:1px}.gallery__zoom:after{width:1px;height:15px}.gallery__item:hover .gallery__zoom,.gallery__item:focus-visible .gallery__zoom{opacity:1;transform:translate(-50%,-50%) scale(1)}.g1{grid-column:span 5;grid-row:span 3}.g2{grid-column:span 4;grid-row:span 2}.g3{grid-column:span 3;grid-row:span 3}.g4{grid-column:span 4;grid-row:span 2}.g5{grid-column:span 5;grid-row:span 2}.g6{grid-column:span 4;grid-row:span 2}.g7{grid-column:span 5;grid-row:span 2}.g8{grid-column:span 7;grid-row:span 2}.g9{grid-column:10 / span 3;grid-row:4 / span 3}.about__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(36px,6vw,90px);align-items:center}.about__img{aspect-ratio:3 / 4}.about__grid--solo{grid-template-columns:.9fr 1.1fr;align-items:start}.about__intro .eyebrow{display:block;margin:0 0 18px}.about__intro .lead{font-family:var(--serif);font-size:clamp(30px,3.4vw,46px);line-height:1.18;letter-spacing:-.01em;color:var(--text);margin:0}.about__grid--solo .about__body p:last-child{margin-bottom:0}.about__body p{color:var(--text-soft);margin:0 0 22px}.about__body p.lead{font-family:var(--serif);font-size:clamp(24px,2.6vw,32px);line-height:1.3;color:var(--text)}.stats{display:flex;flex-wrap:wrap;gap:24px clamp(32px,5vw,72px);margin-top:44px;padding-top:36px;border-top:1px solid var(--hair)}.stats>div{flex:1 1 auto;min-width:max-content}.stats b{display:block;font-family:var(--serif);font-size:clamp(34px,4.4vw,52px);font-weight:400;line-height:1;color:var(--gold)}.stats span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.studio{position:relative;overflow:hidden;background:var(--band);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.studio__img{display:block}.studio__img .ph-img,.studio__img.ph{display:block;width:100%;height:clamp(300px,46vw,580px);object-fit:cover;object-position:center}.studio__overlay{position:absolute;inset:0;display:flex;align-items:flex-end;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,.5) 32%,rgba(0,0,0,.18) 60%,transparent 88%)}.studio__overlay .wrap{width:100%}.studio__cap{padding-block:clamp(28px,5vw,60px);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 22px rgba(0,0,0,.55)}.studio__cap .spark{color:var(--gold-soft)}.studio__cap .eyebrow{color:var(--gold-soft);margin-top:14px}.studio__line{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(24px,3.6vw,42px);line-height:1.1;margin-top:6px;max-width:20ch}.booking{background:var(--band);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.booking__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px);align-items:start}.cal{background:var(--surface);border:1px solid var(--hair);padding:clamp(22px,3vw,36px);border-radius:2px;box-shadow:var(--shadow)}.cal__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.cal__month{font-family:var(--serif);font-size:26px}.cal__nav{display:flex;gap:8px}.cal__nav button{width:38px;height:38px;border:1px solid var(--hair);background:transparent;color:var(--text);cursor:pointer;border-radius:2px;font-size:15px;transition:background .3s,color .3s,border-color .3s}.cal__nav button:hover:not(:disabled){background:var(--gold);color:var(--on-gold);border-color:var(--gold)}.cal__nav button:disabled{opacity:.3;cursor:not-allowed}.cal__dow,.cal__days{display:grid;grid-template-columns:repeat(7,1fr)}.cal__dow span{text-align:center;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);padding-bottom:10px}.cal__days{gap:4px}.day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:15px;border:1px solid transparent;border-radius:2px;cursor:pointer;color:var(--text);position:relative;transition:background .25s,color .25s,border-color .25s}.day.empty{cursor:default}.day.closed,.day.past{color:var(--text-soft);opacity:.45;cursor:not-allowed;text-decoration:line-through;text-decoration-color:var(--hair)}.day.avail:hover{border-color:var(--gold)}.day.avail:after{content:"";position:absolute;bottom:6px;width:4px;height:4px;border-radius:50%;background:var(--gold)}.day.selected{background:var(--gold);color:var(--on-gold)}.day.selected:after{background:var(--on-gold);opacity:.65}.cal__legend{display:flex;gap:20px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.08em;color:var(--text-soft)}.cal__legend i{font-style:normal;display:inline-flex;align-items:center;gap:7px}.dot{width:6px;height:6px;border-radius:50%;display:inline-block}.dot--gold{background:var(--gold)}.dot--off{background:var(--text-soft);opacity:.5}.panel{min-height:200px}.panel__title{font-family:var(--serif);font-size:clamp(26px,3vw,36px);line-height:1.1;margin-bottom:6px}.panel__hint{color:var(--text-soft);font-size:14px;margin:0 0 26px}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.slot{padding:14px 8px;text-align:center;border:1px solid var(--hair);background:var(--surface);font-family:var(--sans);font-size:15px;letter-spacing:.06em;cursor:pointer;border-radius:2px;color:var(--text);transition:background .25s,color .25s,border-color .25s}.slot:hover:not(.booked){background:var(--hover-bg);color:var(--hover-text);border-color:var(--hover-bg)}.slot.selected{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}.slot.booked{color:var(--text-soft);opacity:.5;cursor:not-allowed;text-decoration:line-through;background:transparent}.slot small{display:block;font-size:9px;letter-spacing:.16em;text-transform:uppercase;margin-top:3px;opacity:.7}.empty-state{border:1px dashed var(--hair);border-radius:2px;padding:40px 28px;text-align:center;color:var(--text-soft);font-style:italic;font-family:var(--serif);font-size:19px}.book-ext{text-align:center;border:1px solid var(--hair);border-radius:2px;padding:clamp(34px,5vw,56px);background:var(--surface);box-shadow:var(--shadow)}.book-ext .spark{font-size:22px;color:var(--gold)}.book-ext h3{font-size:clamp(26px,3vw,36px);margin:16px 0 10px}.book-ext p{color:var(--text-soft);margin:0 auto 26px;max-width:40ch}.book-ext__ctas{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.book-ext p.book-ext__handle{margin:34px auto 0;max-width:none;font-size:14px;letter-spacing:.04em}.book-ext__handle a{color:var(--gold);white-space:nowrap}.book-ext__handle a:hover{text-decoration:underline;text-underline-offset:3px}.book-ext iframe{width:100%;min-height:640px;border:1px solid var(--hair);border-radius:2px;margin-top:26px;background:var(--surface)}.bform{display:grid;gap:16px;margin-top:26px;animation:fade .5s ease}.bform__row{display:grid;gap:16px;grid-template-columns:1fr 1fr}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.field input,.field select{font-family:var(--sans);font-size:15px;font-weight:300;color:var(--text);padding:13px 14px;border:1px solid var(--hair);background:var(--surface);border-radius:2px;outline:none;transition:border-color .3s}.field input:focus,.field select:focus{border-color:var(--gold)}.bform__summary{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.06em;color:var(--text-soft);padding:12px 0}.bform__summary b{color:var(--text);font-weight:400}.bform .btn{justify-content:center;margin-top:4px}.confirmed{text-align:center;padding:44px 28px;border:1px solid var(--gold);border-radius:2px;background:var(--surface);animation:fade .5s ease}.confirmed .chk{width:52px;height:52px;margin:0 auto 20px;border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:22px}.confirmed h3{font-size:30px;margin-bottom:10px}.confirmed p{color:var(--text-soft);margin:0 auto;max-width:36ch}.confirmed button{margin-top:24px}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.footer{background:var(--invert-bg);color:var(--invert-text);padding-block:clamp(64px,9vw,110px)}.footer a{color:var(--invert-text)}.footer__brand{font-family:var(--serif);font-style:italic;font-size:clamp(44px,7vw,86px);color:var(--gold-soft);line-height:1;margin-bottom:8px}.footer__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-top:60px;padding-top:48px;border-top:1px solid rgba(255,255,255,.14)}.footer__cols h4{font-family:var(--sans);font-weight:400;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 18px}.footer__cols p{margin:0 0 6px;color:#ffffffb8;font-size:15px}.footer__cols a:hover{color:var(--gold-soft)}.footer__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:56px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;letter-spacing:.1em;color:#ffffff80}.footer__bottom a:hover{color:var(--gold-soft)}.footer__credit{display:inline-flex;align-items:center;gap:8px}.footer__credit .spark{font-size:9px;background:var(--gold-soft)}.footer__credit a{color:var(--gold-soft)}.footer__credit a:hover{color:#fff}.cookie{position:fixed;left:50%;bottom:20px;transform:translate(-50%,140%);z-index:8000;width:min(680px,calc(100vw - 32px));display:flex;align-items:center;gap:18px;padding:16px 20px;background:var(--surface);border:1px solid var(--hair);border-radius:4px;box-shadow:var(--shadow);transition:transform .5s cubic-bezier(.7,0,.2,1)}.cookie.show{transform:translate(-50%)}.cookie p{margin:0;font-size:13px;line-height:1.55;color:var(--text-soft)}.cookie p a{color:var(--gold);text-decoration:underline;text-underline-offset:2px}.cookie__ok{flex:none;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:11px 22px;border:1px solid var(--btn-bg);background:var(--btn-bg);color:var(--btn-text);border-radius:2px;cursor:pointer;transition:background .3s,color .3s}.cookie__ok:hover{background:transparent;color:var(--btn-hover-text)}.lightbox{position:fixed;inset:0;z-index:9500;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,56px);background:#080706f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease,visibility .4s ease}.lightbox.open{opacity:1;visibility:visible;pointer-events:auto}.lightbox__stage{margin:0;max-width:min(1100px,calc(100% - 140px));max-height:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.lightbox__img{max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;border:1px solid rgba(201,169,110,.35);border-radius:2px;background:#0c0a08;box-shadow:0 40px 120px -40px #000000d9}.lightbox__img.is-in{animation:lbpop .45s cubic-bezier(.2,.7,.2,1)}@keyframes lbpop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.lightbox__cap{display:flex;align-items:center;gap:14px;color:#f7f3eca8;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.lightbox__count{color:#d9bd84;font-family:var(--serif);font-style:italic;font-size:15px;letter-spacing:.04em;text-transform:none}.lightbox__nav,.lightbox__close{position:absolute;display:inline-flex;align-items:center;justify-content:center;background:#f7f3ec0f;border:1px solid rgba(247,243,236,.2);color:#f3ede1;cursor:pointer;border-radius:50%;transition:background .3s,border-color .3s,color .3s}.lightbox__nav:hover,.lightbox__close:hover{background:#c9a96e;border-color:#c9a96e;color:#120f0a}.lightbox__nav{width:52px;height:52px;top:50%;transform:translateY(-50%)}.lightbox__nav svg{width:22px;height:22px}.lightbox__prev{left:clamp(12px,2.5vw,30px)}.lightbox__next{right:clamp(12px,2.5vw,30px)}.lightbox__close{width:46px;height:46px;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px)}.lightbox__close svg{width:18px;height:18px}@media(max-width:620px){.lightbox__stage{max-width:calc(100% - 12px)}.lightbox__nav{width:42px;height:42px}.lightbox__nav svg{width:18px;height:18px}.lightbox__prev{left:6px}.lightbox__next{right:6px}.lightbox__img{max-height:calc(100vh - 130px)}}.js .reveal{opacity:0;transform:translateY(26px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}.js .reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}@media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}.marquee__track{animation:none}html{scroll-behavior:auto}}.ph-frame{position:relative;overflow:hidden;border-radius:2px}.ph-img{display:block;width:100%;height:100%;object-fit:cover}.gallery .ph-frame{width:100%;height:100%}@media(max-width:1200px){.nav__links,.nav__cta{display:none}.nav__right>.lang,.nav__right>.theme-toggle{display:none}.hamburger{display:flex}}@media(max-width:980px){.svc__foot{flex-direction:column;align-items:flex-start;gap:4px}.hero__grid{grid-template-columns:1fr}.hero__img{aspect-ratio:16 / 11;order:-1}.booking__grid,.about__grid{grid-template-columns:1fr}.about__img{aspect-ratio:16 / 11;max-height:460px}}@media(max-width:720px){body{font-size:16px}.block__head{grid-template-columns:1fr}.services{grid-template-columns:1fr!important}.footer__cols{grid-template-columns:1fr 1fr}.cookie{flex-direction:column;align-items:stretch;text-align:center;gap:12px}.cookie__ok{width:100%}}@media(max-width:560px){.hero__meta{gap:26px;flex-wrap:wrap}.pl__note .spark:last-child{display:none}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}.g1,.g2,.g3,.g4,.g5,.g6,.g7,.g8,.g9{grid-column:span 1;grid-row:span 2}.g1{grid-column:span 2}.bform__row{grid-template-columns:1fr}.slots{grid-template-columns:repeat(2,1fr)}.footer__cols{grid-template-columns:1fr}}.services{grid-template-columns:repeat(2,1fr)}
