@charset "UTF-8";
:root{color-scheme:dark;--bg:#111110;--surface:#191918;--raised:#222220;--gold:#c9ac72;--text:#f3ede3;--muted:#b7b2a8;--line:#3e3b33;--error:#ffb3a8;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}button{color:inherit}img{display:block;max-width:100%}figure,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;margin:0;letter-spacing:-.045em}h1{font-size:clamp(72px,7.8vw,122px)}h2{font-size:clamp(43px,4.6vw,72px)}h3{font-size:34px}em{font-style:italic;color:var(--gold)}strong{font-weight:600}[hidden]{display:none!important}.wrap{width:calc(100% - 112px);max-width:1328px;margin-inline:auto}.section{padding-block:104px;scroll-margin-top:20px}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.22em;font-weight:600;margin-bottom:25px}.muted{color:var(--muted)}.gold{color:var(--gold)}.dot{width:5px;height:5px;display:inline-block;background:var(--gold);border-radius:50%;flex:none}.tiny-line{display:inline-block;width:27px;height:1px;background:var(--gold);vertical-align:middle;margin-right:12px}.skip{position:fixed;left:10px;top:-100px;background:var(--gold);color:var(--bg);padding:12px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--gold);outline-offset:5px}::selection{background:var(--gold);color:var(--bg)}
.demo-strip{padding:10px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:11px;letter-spacing:.03em}.header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px}.wordmark{font:38px/1 var(--serif);letter-spacing:-.07em;white-space:nowrap}.wordmark-dot{color:var(--gold)}.header nav{display:flex;gap:32px;font-size:13px}.header nav a{padding:10px 0}.header nav a:hover,.text-link:hover{color:var(--gold)}.button{min-height:54px;display:inline-flex;gap:35px;align-items:center;justify-content:space-between;border:1px solid var(--gold);padding:13px 27px;background:var(--gold);color:#161613;font-size:14px;font-weight:600;transition:background .18s,transform .18s}.button:hover{background:#dfc58e;transform:translateY(-2px)}.button.small{min-height:44px;padding:10px 20px;font-size:12px;gap:28px}.button.secondary{background:transparent;color:var(--gold)}.text-link{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:4px}.hero{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:660px}.hero-copy{padding:58px 38px 20px 0;display:flex;flex-direction:column;align-items:flex-start}.hero-note{margin:30px 0;color:var(--muted);font-size:15px;line-height:1.8}.hero-bottom{margin-top:auto;padding-top:42px;width:100%;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.1em;color:var(--muted);gap:15px}.hero-bottom a{letter-spacing:0;font-size:12px}.hero-photo{position:relative;min-height:660px;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 52%}.photo-caption{position:absolute;bottom:0;background:rgba(17,17,16,.92);display:flex;gap:15px;justify-content:space-between;width:100%;padding:16px 22px;font-size:10px;letter-spacing:.08em}.photo-caption span:first-child{color:var(--gold)}.ticker{padding-block:25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:11px;letter-spacing:.2em;color:var(--muted)}.ticker i{font:20px var(--serif);color:var(--gold)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:40px}.section-note{max-width:320px;font-size:14px;color:var(--muted);line-height:1.9}.filters{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.filters button{border:1px solid var(--line);border-radius:2px;background:transparent;padding:10px 19px;font-size:12px;min-height:44px}.filters button[aria-pressed=true]{color:var(--bg);background:var(--gold);border-color:var(--gold)}.gallery{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:start;min-height:540px}.gallery figure:nth-child(2){margin-top:62px}.photo-button{position:relative;border:0;padding:0;background:var(--surface);width:100%;overflow:hidden}.photo-button img{height:500px;width:100%;object-fit:cover;object-position:center 53%;transition:transform .5s}.photo-button:hover img{transform:scale(1.025)}.photo-button>span{position:absolute;bottom:20px;right:20px;background:var(--bg);border:1px solid var(--line);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:20px}.gallery figcaption{display:flex;justify-content:space-between;padding-top:18px;font-size:13px}.gallery figcaption>span:last-child{color:var(--gold);font-size:11px}.gallery-footer{display:flex;justify-content:space-between;align-items:center;margin-top:30px;font-size:11px;color:var(--muted);gap:20px}.master-section{background:var(--surface);border-block:1px solid var(--line)}.master-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:100px;align-items:center}.master-monogram{border:1px solid var(--line);height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.master-monogram>span{font:clamp(100px,15vw,220px)/1 var(--serif);letter-spacing:-.15em;color:var(--gold);padding-right:.15em}.master-monogram>small{position:absolute;bottom:32px;font-size:10px;color:var(--muted);letter-spacing:.2em}.master-content>p:not(.eyebrow){margin-top:24px;font-size:14px;line-height:1.9}.master-content .muted{font-size:12px!important}.master-switch{display:grid;gap:10px;margin-top:30px}.master-choice{border:1px solid var(--line);background:transparent;display:flex;align-items:center;text-align:left;padding:15px 18px;gap:15px;min-height:78px}.master-choice[aria-pressed=true]{border-color:var(--gold)}.initial{width:40px;height:40px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);display:inline-grid;place-items:center;font:22px var(--serif);flex-shrink:0}.master-choice small,.summary-master small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.choice-mark{margin-left:auto;color:var(--gold)}.master-message{min-height:54px;font-size:12px!important;color:var(--muted)}
.price-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:80px}.price-aside{border-top:1px solid var(--gold);padding-top:36px}.price-number{font-size:14px;color:var(--gold)}.price-number strong{font:60px var(--serif);color:var(--text);letter-spacing:-.04em}.price-aside p{margin:12px 0 30px;color:var(--muted);font-size:13px}.price-list details{border-top:1px solid var(--line)}.price-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:15px}summary::-webkit-details-marker{display:none}summary>span:last-child{color:var(--gold);font:24px var(--serif)}details[open]>summary>span:last-child{transform:rotate(45deg)}.price-row{display:flex;justify-content:space-between;gap:25px;font-size:13px;padding:13px 0;border-top:1px solid #2c2b28}.price-row span{max-width:76%;color:var(--muted)}.price-row strong{white-space:nowrap;font-weight:400;color:var(--text)}
.booking-section{background:#161615;border-block:1px solid var(--line)}.notice{display:flex;gap:14px;align-items:flex-start;border:1px solid #594d34;background:#211f18;padding:18px 22px;font-size:12px;line-height:1.8;color:#d8cdb7;margin-bottom:35px}.notice .dot{margin-top:8px}.booking-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);gap:64px;align-items:start}fieldset{border:0;padding:0;margin:0 0 38px;min-width:0}legend{padding:0;margin:0 0 22px;font:25px var(--serif);letter-spacing:-.02em;width:100%;border-bottom:1px solid var(--line);padding-bottom:16px}legend>span{font:10px var(--sans);color:var(--gold);margin-right:18px;vertical-align:middle}.field-label{display:block;font-size:12px;margin:17px 0 8px}.field-help{font-size:11px;line-height:1.8;color:var(--muted);margin-top:14px}input:not([type=checkbox],[type=radio]),select{width:100%;min-height:50px;border:1px solid #5a5549;border-radius:0;background:var(--bg);color:var(--text);padding:11px 13px;min-width:0}select{font-size:13px;padding-right:30px}option,optgroup{background:var(--bg)}input::placeholder{color:#9b978d}input[aria-invalid=true]{border-color:var(--error)}.extras{display:grid;gap:11px;margin-top:16px}.check{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.8;padding-block:6px}.check small{display:block;color:var(--muted);font-size:11px}.check input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--gold);flex-shrink:0}.check:has(input:disabled){opacity:.5}.extra-price{color:var(--gold);white-space:nowrap}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;font-size:13px}.calendar-head>span{font-size:10px;color:var(--muted)}.dates{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.dates button{min-width:0;min-height:74px;border:1px solid var(--line);background:var(--bg);padding:8px 2px;font-size:18px}.dates button small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;margin-bottom:4px}.dates button[aria-pressed=true],.slots button[aria-pressed=true]{background:var(--gold);color:var(--bg);border-color:var(--gold)}.dates button[aria-pressed=true] small{color:#383020}.slots{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px;min-height:44px}.slots button{border:1px solid var(--line);background:transparent;min-height:44px;min-width:74px;padding:9px 14px;font-size:12px}.slots[aria-busy=true]{opacity:.5}.channel-switch{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:15px}.channel-switch label{padding:11px 15px;border:1px solid var(--line);min-height:46px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:9px}.channel-switch label:has(input:checked){border-color:var(--gold)}.channel-switch input{accent-color:var(--gold);margin:0}.inline-button{font-size:inherit;background:transparent;color:var(--gold);border:0;text-decoration:underline;padding:0}.error{color:var(--error);font-size:12px;margin-top:8px}.summary{position:sticky;top:25px;border:1px solid #67583b;padding:32px;background:var(--bg)}.summary h3{font-size:34px;line-height:1.15}.summary-master{display:flex;align-items:center;gap:13px;padding:25px 0;border-bottom:1px solid var(--line);margin-bottom:21px;font-size:14px}.summary ul{list-style:none;padding:0;margin:0 0 20px;color:var(--muted);font-size:12px}.summary li+li{margin-top:8px}.summary>p.muted{font-size:12px;padding-bottom:20px;border-bottom:1px solid var(--line)}dl{margin:20px 0}dl>div{display:flex;justify-content:space-between;gap:15px;font-size:13px;margin-block:12px}dd{margin:0;white-space:nowrap}dl>div:first-child dd{font:29px var(--serif);color:var(--gold)}dt{color:var(--muted)}.summary .button{width:100%;margin-top:25px;justify-content:center;padding-inline:12px}.summary-foot{font-size:10px;color:var(--muted);line-height:1.8;margin-top:15px}.empty-state,.result{padding:48px;border:1px solid var(--gold);background:var(--bg);max-width:800px;margin-inline:auto}.empty-state>p,.result>p{margin-block:20px;color:var(--muted)}.result .button,.empty-state .button{margin-top:12px}.status-pill{display:inline-block;padding:7px 12px;background:#2f291c;color:var(--gold);border:1px solid #71613e;font-size:12px;margin-bottom:25px}
.faq-section{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list details>p{font-size:13px;color:var(--muted);padding:0 35px 25px 0;line-height:1.9}.faq-list summary{font-size:14px;padding-block:15px}.contact-section{padding:65px 0 80px;border-top:1px solid var(--line)}.contact-section>div{display:flex;align-items:center;justify-content:space-between;gap:30px}.circle-link{border:1px solid var(--gold);color:var(--gold);width:94px;height:94px;border-radius:50%;display:grid;place-items:center;font-size:40px}.circle-link:hover{background:var(--gold);color:var(--bg)}.contact-section>p:not(.eyebrow){margin-top:25px;font-size:13px}.contact-section>.muted{font-size:11px!important;margin-top:8px!important}.footer{border-top:1px solid var(--line);padding-block:35px;display:flex;align-items:center;justify-content:space-between;gap:22px}.footer .wordmark{font-size:30px}.footer>span{font-size:10px;color:var(--muted)}.footer>a:last-child{font-size:11px}
dialog{border:1px solid var(--gold);background:var(--surface);color:var(--text);padding:48px;max-width:min(600px,calc(100vw - 32px));max-height:90dvh;overflow:auto}dialog::backdrop{background:rgba(0,0,0,.85)}dialog h3{margin-bottom:25px}dialog>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:16px}.dialog-close{position:absolute;top:7px;right:8px;width:40px;height:40px;border:0;background:var(--bg);font-size:27px;color:var(--text);z-index:1}.photo-dialog{padding:0;max-width:min(700px,calc(100vw - 32px))}.photo-dialog img{max-height:78dvh;width:100%;object-fit:contain}.photo-dialog p{padding:8px 20px 20px}.state-header{padding:60px 0 30px}.state-header h1{font-size:60px;margin-block:30px}.state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-block:35px}.state-card{padding:30px;border:1px solid var(--line);min-width:0}.state-card h2{font-size:32px;margin:18px 0}.state-card p{color:var(--muted);font-size:13px;margin-block:15px}.state-card button{margin-top:15px}.skeleton{height:45px;margin:12px 0;background:#34332d;border-radius:2px}.spinner{width:16px;height:16px;border:2px solid #504b3f;border-top-color:var(--gold);border-radius:50%;display:inline-block;animation:spin 1s linear infinite}.state-card .notice{margin-bottom:0}.state-card .status-pill{margin-bottom:0}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.hero-copy h1{animation:appear .6s ease-out both}.hero-photo{animation:appear .8s ease-out both}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px}.hero{min-height:580px}.hero-photo{min-height:580px}.hero h1{font-size:88px}.hero-copy{padding-top:45px}.master-grid{gap:55px}.price-layout{gap:45px}.booking-grid{gap:32px;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr)}.summary{padding:25px}.faq-section{gap:40px}.photo-button img{height:440px}.gallery{min-height:500px}.calendar-head{align-items:flex-start;flex-direction:column;gap:3px}.form-row{grid-template-columns:1fr}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.header{height:90px}.header nav{display:none}.hero-copy{padding-top:35px;padding-right:20px}.hero h1{font-size:70px}.hero-photo,.hero{min-height:540px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.1em}.hero-note{font-size:13px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:14px}.section{padding-block:75px}.section-note{font-size:12px}.photo-button img{height:370px}.gallery{gap:20px;min-height:430px}.master-grid{gap:40px}.master-monogram{height:400px}.master-monogram>span{font-size:130px}.master-content h2{font-size:48px}.price-layout{grid-template-columns:1fr 1.6fr;gap:35px}.price-number strong{font-size:45px}.booking-grid{grid-template-columns:1fr}.summary{position:static;max-width:none}.summary h3{font-size:40px}.form-row{grid-template-columns:1fr 1fr}.faq-section{grid-template-columns:1fr;gap:35px}.footer{flex-wrap:wrap}.gallery-footer{font-size:10px}.ticker{font-size:9px;letter-spacing:.12em}.state-grid{grid-template-columns:1fr}}
@media(max-width:560px){.wrap{width:calc(100% - 36px)}.demo-strip{font-size:9px;text-align:center;padding:9px 18px;line-height:1.7}.header{height:78px;gap:12px}.wordmark{font-size:32px}.button.small{font-size:11px;padding:9px 14px;gap:12px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:30px 0 28px}.hero h1{font-size:clamp(67px,14.3vw,86px);line-height:.98}.hero-copy .eyebrow{font-size:10px;margin-bottom:24px;letter-spacing:.18em}.hero-note{font-size:13px;margin:20px 0 25px}.hero-copy>.button{min-height:50px;width:100%;justify-content:space-between}.hero-bottom{display:none}.hero-photo{min-height:0;aspect-ratio:1/.98}.hero-photo>img{object-position:center 56%}.photo-caption{padding:13px 15px;font-size:9px;letter-spacing:0}.ticker{padding-block:18px;font-size:8px;gap:8px;letter-spacing:.1em}.ticker>span:nth-last-child(1),.ticker>i:last-of-type{display:none}.ticker i{font-size:14px}.section{padding-block:60px}h2{font-size:44px}.eyebrow{font-size:9px;letter-spacing:.19em;margin-bottom:20px}.section-head{display:block;margin-bottom:28px}.section-note{margin-top:22px;font-size:12px;line-height:1.8}.filters{gap:7px}.filters button{padding:9px 13px;font-size:11px}.gallery{gap:15px;min-height:0;grid-template-columns:1fr}.gallery figure:nth-child(2){margin-top:12px}.photo-button img{height:auto;aspect-ratio:1/.98;object-fit:cover;object-position:center 55%}.gallery figcaption{font-size:12px;padding-top:12px}.gallery-footer{align-items:flex-start;margin-top:25px;flex-direction:column;gap:12px}.master-grid{grid-template-columns:1fr;gap:30px}.master-monogram{height:200px}.master-monogram>span{font-size:110px}.master-monogram>small{font-size:8px;bottom:20px}.master-content h2{font-size:48px}.master-content>p:not(.eyebrow){font-size:13px}.master-choice{padding:12px 14px}.master-message{margin-top:16px!important}.price-layout{grid-template-columns:1fr;gap:35px}.price-aside{padding-top:25px}.price-number strong{font-size:54px}.price-aside p{margin-bottom:18px}.price-row{font-size:12px;gap:14px}.price-row span{max-width:70%}.notice{padding:15px;gap:10px;font-size:11px}.booking-grid{gap:15px}fieldset{margin-bottom:32px}legend{font-size:24px}.dates{gap:4px}.dates button{min-height:65px;font-size:16px}.dates button small{font-size:9px}.slots{gap:7px}.slots button{min-width:65px;padding-inline:11px}.form-row{grid-template-columns:1fr;gap:0}.summary{padding:24px}.summary h3{font-size:36px}.summary .button{font-size:13px}.summary-foot{font-size:11px}.empty-state,.result{padding:25px}.result h3{font-size:35px}.result>p{font-size:13px}.faq-list summary{font-size:13px;min-height:70px}.faq-list details>p{font-size:12px;padding-right:8px}.contact-section{padding-block:50px}.contact-section h2{font-size:43px}.circle-link{width:57px;height:57px;font-size:28px;flex:none}.contact-section>div{gap:15px}.footer{display:grid;grid-template-columns:1fr;gap:15px;padding-bottom:30px}.footer>span{font-size:11px}.footer>a:last-child{width:fit-content}dialog{padding:40px 25px 25px}.photo-dialog{padding:0}.state-header{padding-top:40px}.state-header h1{font-size:42px}.state-card{padding:22px}}
.hero-copy,.hero-photo{min-width:0}
@media(max-width:360px){.hero h1{font-size:60px}.contact-section h2{font-size:36px}.contact-section>div{gap:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.spinner{border-color:var(--gold)}}

/* Noir Atelier / motion and portfolio, revision 2 */
.header{position:relative}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);color:var(--gold);height:44px;width:44px;font-size:23px}.mobile-booking-link{display:none}
@media(max-width:800px){.menu-toggle{display:inline-grid;place-items:center;margin-left:auto;flex:none}.header nav[data-open=true]{display:flex;position:absolute;z-index:8;top:90px;left:0;right:0;flex-direction:column;gap:0;padding:15px 23px;border:1px solid var(--gold);background:#1b1a17;box-shadow:0 15px 30px #0007;animation:dialog-arrive .25s ease}.header nav a{padding-block:13px}.mobile-booking-link{display:block}}
@media(max-width:560px){.header-cta{display:none}.header nav[data-open=true]{top:78px}}
:root{transition:--gold .3s}#scroll-progress{position:fixed;inset:0 0 auto;height:2px;z-index:20;background:var(--gold);transform-origin:left;transform:scaleX(0)}
@supports(animation-timeline:scroll()){#scroll-progress{animation:reading-progress linear both;animation-timeline:scroll(root block)}}
@keyframes reading-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-photo video,.film-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;z-index:1;transition:opacity .8s ease}.hero-photo video.playing,.film-frame video.playing{opacity:1}.hero-photo .photo-caption{z-index:3}.motion-toggle{position:absolute;right:18px;top:18px;z-index:4;border:1px solid #b8a272;background:rgba(17,17,16,.85);color:#f3ede3;padding:10px 15px;font-size:11px;min-height:44px;backdrop-filter:blur(8px)}
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;min-height:0}.gallery figure{margin:0!important;min-width:0;animation:card-enter .5s ease both;animation-delay:calc(var(--item,0)*45ms)}.gallery .photo-button{transition:transform .35s ease;transform:perspective(1100px) rotateY(var(--tilt,0deg));transform-origin:center}.gallery .photo-button img{height:auto;aspect-ratio:4/5}.photo-credit{display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:8px}.photo-navigation{display:flex;justify-content:center;gap:15px;padding-bottom:20px}.round-button{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;background:transparent;color:var(--gold);font-size:22px;flex:none;transition:background .3s,color .3s,transform .3s}.round-button:hover{background:var(--gold);color:var(--bg);transform:rotate(-5deg)}
.film-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-bottom:100px}.film-frame{height:490px;position:relative;overflow:hidden;border:1px solid var(--line)}.film-frame>img{width:100%;height:100%;object-fit:cover}.film-copy>p:not(.eyebrow){max-width:340px;color:var(--muted);font-size:14px;line-height:1.9;margin-block:30px}.film-credit{display:block;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:var(--gold)}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}.reveal.in-view{opacity:1;transform:none}.master-content{transition:color .3s}.master-content h2 em{display:inline-block;min-width:5ch}.master-choice{transition:background .3s,border-color .3s,transform .3s}.master-choice:hover{background:#27251f;transform:translateX(4px)}.master-choice[aria-pressed=true] .initial{background:var(--gold);color:var(--bg)}.join-link{margin-top:12px;background:none;color:var(--gold);border:0;border-bottom:1px solid var(--line);padding:10px 0;min-height:44px}.master-booking-note{color:var(--gold);font-size:12px;margin-bottom:25px}
.nail-fact{margin-top:80px;padding:40px 45px;border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:45px;background:var(--surface)}.nail-fact h3{font-size:33px;letter-spacing:-.025em}.nail-fact>div:first-child{max-width:850px;min-width:0}.nail-fact #fact-copy{font-size:14px;color:var(--muted);margin-top:16px;min-height:50px}.fact-source{display:inline-block;font-size:10px;color:var(--muted);margin-top:14px;border-bottom:1px solid var(--line)}.fact-actions{display:flex;align-items:center;gap:25px;flex:none}.fact-actions>span{font-size:10px;letter-spacing:.12em;color:var(--gold)}
.frame-pulse{animation:frame-breathe 1.4s ease-in-out 2}.result.frame-pulse{animation:result-enter .5s ease both,frame-breathe 1.4s ease-in-out 2}.result>h3{font-size:42px}.result>p{font-size:14px;line-height:1.9}.summary{transition:border-color .4s,box-shadow .4s}.summary dd{animation:card-enter .25s ease}.dates button,.slots button{transition:background .2s,border-color .2s,transform .2s}.dates button:hover,.slots button:hover{border-color:var(--gold);transform:translateY(-2px)}.status-pill{position:relative}.status-pill:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:8px;background:var(--gold)}
.circle-link{position:relative;isolation:isolate;overflow:hidden;background:transparent;transition:color .55s ease,transform .55s ease}.circle-link:before{content:'';position:absolute;inset:-1px;border-radius:50%;background:var(--gold);transform:translateY(105%);transition:transform .65s cubic-bezier(.2,.7,.25,1);z-index:-1}.circle-link:hover,.circle-link:focus-visible{background:transparent;color:var(--bg);transform:rotate(-7deg)}.circle-link:hover:before,.circle-link:focus-visible:before{transform:translateY(0)}
dialog[open]{animation:dialog-arrive .3s cubic-bezier(.2,.7,.25,1)}dialog::backdrop{animation:backdrop-arrive .3s ease}.join-dialog{max-width:min(660px,calc(100vw - 32px))}.join-dialog>h3{font-size:44px}.join-steps{list-style:none;counter-reset:step;margin:30px 0;padding:0}.join-steps li{counter-increment:step;position:relative;padding:0 0 20px 42px}.join-steps li:before{content:'0' counter(step);position:absolute;left:0;color:var(--gold);font-size:11px;top:3px}.join-steps strong{font-size:14px}.join-steps span{display:block;color:var(--muted);font-size:12px;line-height:1.9;margin-top:5px}.join-dialog .button{margin-top:25px}.join-result{margin-top:25px;border:1px solid var(--gold);padding:20px;font-size:13px}.join-result .status-pill{margin:0 0 15px}.join-result p{color:var(--muted)}
.toast{position:fixed;right:24px;bottom:24px;max-width:min(390px,calc(100vw - 32px));padding:18px 18px 18px 22px;border:1px solid var(--gold);background:#1d1c18;color:var(--text);box-shadow:0 10px 35px #0006;z-index:15;display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.7;animation:toast-arrive .35s ease both}.toast button{border:0;background:none;font-size:24px;color:var(--muted);width:30px;height:36px;flex:none}.toast>span:nth-child(2){min-width:0}.check input{transition:accent-color .3s}.faq-list details[open]>p{animation:card-enter .25s ease}
@keyframes frame-breathe{0%,100%{box-shadow:0 0 0 0 #c9ac7200;border-color:var(--line)}50%{box-shadow:0 0 0 3px #c9ac7217,0 0 25px #c9ac7214;border-color:var(--gold)}}
@keyframes card-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes result-enter{from{opacity:0;transform:translateY(15px) scale(.985)}to{opacity:1;transform:none}}@keyframes dialog-arrive{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}@keyframes backdrop-arrive{from{background:#0000}to{background:#000d}}@keyframes toast-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:900px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.film-section{gap:35px}.film-frame{height:400px}.nail-fact{padding:30px;gap:25px}.fact-actions{flex-direction:column;gap:15px}}
@media(max-width:560px){.gallery{gap:25px 12px}.gallery .photo-button img{aspect-ratio:3/4}.gallery figcaption{font-size:10px;gap:7px}.gallery figcaption>span:last-child{font-size:9px}.photo-button>span{width:32px;height:32px;bottom:10px;right:10px;font-size:16px}.film-section{grid-template-columns:1fr;gap:25px;padding-bottom:60px}.film-frame{height:auto;aspect-ratio:4/4.5}.film-copy h2{font-size:44px}.film-copy>p:not(.eyebrow){font-size:13px;margin-block:20px}.nail-fact{margin-top:45px;padding:25px;align-items:flex-start;gap:15px}.nail-fact h3{font-size:27px}.nail-fact #fact-copy{font-size:12px;min-height:120px}.nail-fact .eyebrow{font-size:8px}.fact-actions{gap:20px}.fact-actions .round-button{width:38px;height:38px}.fact-source{font-size:9px}.toast{right:16px;bottom:16px;font-size:11px;padding:12px 14px;gap:8px}.motion-toggle{font-size:10px;padding:8px 12px;right:12px;top:12px}.result>h3{font-size:34px}.result>p{font-size:12px}.join-dialog>h3{font-size:36px}.join-dialog{padding:40px 23px 25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.gallery .photo-button{transform:none!important}.circle-link:hover{transform:none}.motion-toggle{backdrop-filter:none}}

/* Revision 3: readable typography, chapter arrivals and a shared fill language. */
.gallery-empty{grid-column:1/-1;border:1px solid var(--line);padding:28px;color:var(--muted);font-size:16px;line-height:1.8}
body{font-size:17px}.eyebrow{font-size:13px;letter-spacing:.16em}.section-note,.hero-note,.master-content>p:not(.eyebrow){font-size:16px}.header nav{font-size:15px}.field-label,.check,.field-help,.error,.summary-foot,.summary ul,.summary>p.muted,.summary-master small,.master-choice small,.master-message,.photo-credit,.fact-source,.gallery-footer,.film-credit,.footer>span,.footer>a:last-child{font-size:14px!important}.field-help,.summary-foot{line-height:1.8}.button,.button.small,.filters button,.slots button,.channel-switch label,.calendar-head,.price-row,.faq-list summary,.faq-list details>p{font-size:15px}.photo-caption,.hero-bottom,.ticker{font-size:12px}.summary li+li{margin-top:12px}.dates button small,.calendar-head>span,.gallery figcaption>span:last-child{font-size:13px}.gallery figcaption{font-size:15px}.nail-fact #fact-copy{font-size:16px;min-height:56px}.fact-actions>span{font-size:13px}.contact-section>p:not(.eyebrow),.contact-section>.muted{font-size:15px!important}.master-content .muted{font-size:15px!important}.summary h3{font-size:36px}.master-monogram{overflow:hidden}.master-monogram>img{height:100%;width:100%;object-fit:cover;object-position:center 35%}.join-steps span,.join-dialog>.field-help,.join-result{font-size:15px}.master-booking-note,.price-aside p{font-size:15px}.price-row{padding-block:17px}.faq-list summary{padding-block:20px}.accordion-body{padding-bottom:4px}.accordion-body>p{font-size:16px;line-height:1.9;color:var(--muted);padding:0 0 25px}.price-list details,.faq-list details{will-change:auto}
.chapter{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.3,1),visibility .75s}.chapter-pending{opacity:0;transform:translateY(50px);visibility:hidden;pointer-events:none}.chapter-visible{opacity:1;transform:none;visibility:visible}.chapter-visible .section-head{animation:chapter-title .8s ease both}@keyframes chapter-title{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.round-button,.filters button,.button.secondary,.menu-toggle,.channel-switch label{position:relative;isolation:isolate;overflow:hidden;background:transparent;transition:color .55s ease,border-color .55s ease,transform .35s ease}.round-button:before,.filters button:before,.button.secondary:before,.menu-toggle:before,.channel-switch label:before{content:'';position:absolute;inset:-1px;z-index:-1;background:var(--gold);transform:translateY(105%);transition:transform .65s cubic-bezier(.2,.7,.25,1)}.round-button:hover,.round-button:focus-visible,.filters button:hover,.filters button:focus-visible,.button.secondary:hover,.button.secondary:focus-visible,.menu-toggle:hover,.channel-switch label:hover{color:var(--bg);background:transparent}.round-button:hover:before,.round-button:focus-visible:before,.filters button:hover:before,.filters button:focus-visible:before,.button.secondary:hover:before,.button.secondary:focus-visible:before,.menu-toggle:hover:before,.channel-switch label:hover:before{transform:translateY(0)}.round-button:hover{transform:rotate(-5deg)}.filters button[aria-pressed=true]{background:var(--gold);color:var(--bg)}.button:not(.secondary){background:var(--gold);transition:background .6s,color .4s,transform .3s}.button:not(.secondary):hover{background:#e0c68f}
.frame-pulse{animation:frame-breathe 1.4s ease-in-out 2,shadow-drift 9s ease-in-out 2.8s infinite}.result.frame-pulse{animation:result-enter .5s ease both,frame-breathe 1.4s ease-in-out 2,shadow-drift 9s ease-in-out 2.8s infinite}@keyframes shadow-drift{0%,100%{box-shadow:-2px 4px 17px #c9ac7209}35%{box-shadow:3px 1px 23px #c9ac7210}70%{box-shadow:1px -3px 19px #c9ac720b}}
@media(max-width:800px){.eyebrow{font-size:12px}.hero h1{font-size:70px}.hero-note,.section-note{font-size:15px}.photo-caption{font-size:12px}.price-row{font-size:14px}.dates button small{font-size:12px}}
@media(max-width:560px){.hero h1{font-size:clamp(60px,15vw,77px)}.eyebrow{font-size:12px!important;letter-spacing:.12em}.section-note,.hero-note{font-size:15px}.photo-caption{gap:10px;font-size:12px;line-height:1.7}.ticker{font-size:10px}.gallery figcaption{font-size:13px}.gallery figcaption>span:last-child{display:none}.photo-credit{font-size:13px!important}.nail-fact{display:block;padding:25px}.nail-fact h3{font-size:31px}.nail-fact #fact-copy{font-size:15px;min-height:96px}.fact-actions{flex-direction:row;justify-content:space-between;margin-top:25px}.fact-source{font-size:13px!important}.field-label,.check,.field-help,.error,.summary-foot,.summary ul,.summary>p.muted,.master-message{font-size:14px!important}.summary h3{font-size:35px}.calendar-head>span{font-size:12px}.dates button small{font-size:11px}.dates{gap:4px}.slots button{font-size:14px}.faq-list summary{font-size:15px}.result>p{font-size:15px}.join-steps strong{font-size:16px}.join-steps span{font-size:15px}.toast{font-size:14px;padding:14px}.master-monogram{height:380px}.master-content>p:not(.eyebrow){font-size:16px}.contact-section>.muted{font-size:14px!important}}
@media(max-width:360px){.hero h1{font-size:59px}.calendar-head>span{font-size:12px}.filters button{padding-inline:12px;font-size:14px}}
@media(max-width:560px){.ticker{font-size:12px;flex-wrap:wrap;justify-content:center;gap:12px}.gallery figcaption{font-size:15px}.photo-credit{font-size:14px!important}.dates button small{font-size:12px}.fact-actions>span{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.chapter-pending{opacity:1;transform:none;visibility:visible}.gallery .photo-button{transform:none!important}}

/* Connected portfolio keeps the existing frame and typography. */
.gallery-status{color:var(--muted);padding-block:24px}.gallery-actions{display:flex;gap:16px;flex-wrap:wrap}.gallery-actions:has(> [hidden]):not(:has(> :not([hidden]))){display:none}.photo-dialog #large-video{display:block;max-width:100%;width:auto;height:72vh;max-height:72vh;object-fit:contain;margin:auto}.photo-dialog #play-media{display:block;margin:20px auto 0}.photo-credit{overflow-wrap:anywhere}.hero-photo{background:var(--panel,#1b1a18)}
.photo-caption>span{min-width:0;overflow-wrap:anywhere}

/* Public profile text retains line breaks and fits narrow screens. */
#master-biography,.profile-answer{white-space:pre-wrap;overflow-wrap:anywhere}#master-name,.profile-question>span:first-child{overflow-wrap:anywhere;min-width:0}.master-content,.faq-section>div{min-width:0}.profile-question>span:last-child{flex:none}#profile-faq-status:empty,#profile-status:empty{display:none}
.reviews-section{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.reviews-section>div{min-width:0}.reviews-list{display:grid;gap:16px}.public-review{border-top:1px solid var(--line);padding:18px 0;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.reviews-section [data-reviews-status]:empty{display:none}

.language-switch{display:flex;gap:.25rem;align-items:center}.language-switch[hidden]{display:none}.language-switch button{background:transparent;border:1px solid var(--gold);border-radius:.25rem;color:inherit;padding:.35rem .45rem;cursor:pointer}.language-switch button[aria-pressed="true"]{background:var(--gold);color:#111110}

html[lang="kk"] .contact-section h2{min-width:0;overflow-wrap:anywhere}
@media(max-width:560px){html[lang="kk"] .contact-section h2{font-size:clamp(28px,8vw,38px)}}


html[lang="kk"] .hero h1{max-width:100%;overflow-wrap:anywhere}
@media(max-width:560px){html[lang="kk"] .hero h1{font-size:clamp(44px,12vw,67px)}}

.ideas-section[hidden]{display:none}.ideas-filters{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 22px}.ideas-filters label{display:grid;gap:7px;color:var(--muted,#aaa);font-size:.85rem}.ideas-filters select{min-width:190px;max-width:100%;padding:11px 36px 11px 12px;color:inherit;background:var(--panel,#1b1a18);border:1px solid rgba(255,255,255,.18);border-radius:4px;font:inherit}.ideas-section .gallery figure{min-width:0}.ideas-section .gallery img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.ideas-section .gallery figcaption{overflow-wrap:anywhere}
@media(max-width:560px){.ideas-filters{display:grid;grid-template-columns:1fr}.ideas-filters label,.ideas-filters select{width:100%;min-width:0}}
