@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--ink:#191313;--ink-soft:#66575a;--cream:#fffaf7;--paper:#f7efeb;--blush:#e9c9ca;--rose:#b96978;--rose-deep:#7e2e40;--line:rgba(25,19,19,.12);--white:#fff;--shadow:0 22px 65px rgba(83,45,52,.13);--radius:26px;--max:1180px;--header:78px}
[data-theme="dark"]{--ink:#fff6f2;--ink-soft:#cdbfc0;--cream:#171112;--paper:#211819;--blush:#633c45;--rose:#d78a99;--rose-deep:#e4a0ad;--line:rgba(255,255,255,.12);--white:#211819;--shadow:0 22px 65px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.65;transition:background .25s,color .25s}body.drawer-open{overflow:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}.container{width:min(var(--max),calc(100% - 36px));margin:auto}.muted{color:var(--ink-soft)}
.topbar{background:#171112;color:#eee3e1;font-size:.74rem;letter-spacing:.06em}.topbar .container{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-header{position:sticky;top:0;z-index:95;background:color-mix(in srgb,var(--cream) 94%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand img{width:52px;height:52px}.brand strong{display:block;letter-spacing:.07em;font-size:1rem;white-space:nowrap}.brand small{display:block;color:var(--rose-deep);letter-spacing:.24em;font-weight:700;font-size:.65rem}.menu-btn{width:46px;height:46px;border:0;background:transparent;display:grid;place-items:center;position:relative;cursor:pointer;z-index:92}.menu-btn span{position:absolute;width:26px;height:2px;background:var(--ink);border-radius:2px;transition:transform .32s ease,opacity .22s ease,top .32s ease}.menu-btn span:nth-child(1){top:14px}.menu-btn span:nth-child(2){top:22px}.menu-btn span:nth-child(3){top:30px}.menu-btn.open span:nth-child(1){top:22px;transform:rotate(45deg)}.menu-btn.open span:nth-child(2){opacity:0}.menu-btn.open span:nth-child(3){top:22px;transform:rotate(-45deg)}
.drawer-backdrop{position:fixed;inset:0;background:rgba(15,10,11,.46);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:.3s;z-index:80}.drawer-backdrop.open{opacity:1;visibility:visible}.drawer{position:fixed;inset:0 auto 0 0;width:min(88vw,430px);background:var(--cream);border-right:1px solid var(--line);z-index:90;transform:translateX(-102%);transition:transform .36s cubic-bezier(.22,.8,.2,1);padding:24px 22px 28px;overflow:auto;box-shadow:var(--shadow)}.drawer.open{transform:translateX(0)}.drawer-top{display:flex;align-items:center;justify-content:space-between;margin:56px 0 18px}.theme-toggle{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:9px 13px;font-weight:700;cursor:pointer}.search-box{display:grid;grid-template-columns:1fr 48px;border:1px solid var(--line);border-radius:17px;overflow:hidden;background:var(--white);margin-bottom:16px}.search-box input{border:0;background:transparent;color:var(--ink);outline:none;padding:13px 14px;min-width:0}.search-box button{border:0;border-left:1px solid var(--line);background:var(--paper);cursor:pointer;color:var(--ink)}.search-results{display:none;border:1px solid var(--line);border-radius:18px;background:var(--white);padding:8px;margin:-4px 0 14px;max-height:240px;overflow:auto}.search-results.show{display:grid}.search-result{padding:10px 11px;border-radius:12px}.search-result:hover{background:var(--paper)}.search-result strong{display:block;font-size:.9rem}.search-result span{font-size:.76rem;color:var(--ink-soft)}.drawer-nav{display:grid;gap:9px}.drawer-link{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:var(--white);font-weight:700;transition:.2s}.drawer-link:hover{transform:translateX(4px);border-color:color-mix(in srgb,var(--rose) 65%,var(--line))}.drawer-link .nav-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--paper);color:var(--rose-deep)}.drawer-book{margin-top:12px;display:flex;justify-content:center;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#7e2e40,#ba6878);color:#fff;font-weight:800}.drawer-note{font-size:.77rem;color:var(--ink-soft);margin:16px 4px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:800;cursor:pointer;transition:.22s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--ink);color:var(--cream)}.btn-light{background:var(--white);border-color:var(--line);color:var(--ink)}.btn-rose{background:linear-gradient(135deg,#7e2e40,#bb697a);color:#fff}.btn.small{min-height:42px;padding:0 17px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:800;color:var(--rose-deep)}.title,.section-title{font-family:"Playfair Display",serif;line-height:1.02;margin:.35rem 0}.title{font-size:clamp(3rem,7vw,6rem)}.title em{color:var(--rose-deep);font-weight:600}.section-title{font-size:clamp(2.15rem,4.7vw,4.3rem)}
.hero{padding:64px 0 74px;background:radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--blush) 40%,transparent),transparent 36%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.hero-copy p{font-size:1.08rem;color:var(--ink-soft);max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-proof{display:flex;gap:2rem;flex-wrap:wrap;margin-top:42px}.proof{padding-left:14px;border-left:2px solid var(--line)}.proof strong{font-family:"Playfair Display",serif;font-size:1.75rem}.proof span{display:block;color:var(--ink-soft);font-size:.82rem}.hero-visual{position:relative}.hero-visual:before{content:"";position:absolute;inset:8% -9% -6% 10%;background:var(--blush);border-radius:45% 55% 42% 58%/57% 45% 55% 43%;z-index:-1;opacity:.34}.hero-visual img{border-radius:42px;box-shadow:var(--shadow);width:100%}.float-card{position:absolute;left:-30px;bottom:34px;background:color-mix(in srgb,var(--cream) 92%,transparent);backdrop-filter:blur(12px);padding:17px 19px;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);max-width:230px}.float-card strong{display:block;font-family:"Playfair Display",serif;font-size:1.25rem}.float-card span{font-size:.82rem;color:var(--ink-soft)}
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);overflow:hidden}.marquee-track{display:flex;gap:3.2rem;white-space:nowrap;padding:17px 0;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:800;color:var(--ink-soft)}.dot{color:var(--rose)}.section{padding:92px 0}.section.soft{background:var(--paper)}.section.dark{background:#171112;color:#fff8f4}.section.dark .muted{color:#cdbfc0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:40px}.section-head p{max-width:520px;margin:0}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:0;overflow:hidden;min-height:340px;display:flex;flex-direction:column;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-image{aspect-ratio:1.35/1;object-fit:cover;width:100%;background:var(--paper)}.service-body{padding:22px;display:flex;flex:1;flex-direction:column}.service-kicker{font-family:"Playfair Display",serif;color:var(--rose-deep);font-size:1.1rem}.service-card h3{font-family:"Playfair Display",serif;font-size:1.4rem;margin:.45rem 0}.service-card p{margin:0;color:var(--ink-soft);font-size:.93rem}.service-meta{margin-top:auto;padding-top:1.2rem;display:flex;justify-content:space-between;gap:12px;font-size:.8rem;font-weight:800;color:var(--rose-deep)}
.looks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.look-card{border:1px solid var(--line);border-radius:30px;background:var(--white);padding:16px;overflow:hidden}.look-main{aspect-ratio:1.15/1;border-radius:22px;overflow:hidden;background:var(--paper)}.look-main img{width:100%;height:100%;object-fit:cover;transition:opacity .18s}.look-card h3{font-family:"Playfair Display",serif;font-size:1.55rem;margin:17px 4px 5px}.look-card p{margin:0 4px 14px;color:var(--ink-soft);font-size:.92rem}.look-thumbs{display:flex;gap:9px;overflow-x:auto;padding:2px 3px 10px;scrollbar-width:thin}.look-thumb{flex:0 0 70px;width:70px;height:70px;border-radius:15px;border:2px solid transparent;padding:0;overflow:hidden;background:var(--paper);cursor:pointer}.look-thumb.selected{border-color:var(--rose-deep)}.look-thumb img{width:100%;height:100%;object-fit:cover}.look-card .btn{width:100%;margin-top:4px}
.experience-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.quote-card{background:linear-gradient(145deg,#6f2a3a,#8f4052);color:#fff;border-radius:38px;padding:42px;min-height:470px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.quote-card:after{content:"N";position:absolute;right:-24px;bottom:-100px;font-family:"Playfair Display",serif;font-size:360px;opacity:.08}.quote-card blockquote{font-family:"Playfair Display",serif;font-size:clamp(2rem,4vw,3.25rem);line-height:1.08;margin:0;position:relative;z-index:1}.check-list{display:grid;gap:18px;margin-top:28px}.check{display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:start}.check i{width:38px;height:38px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-style:normal;color:var(--rose-deep);font-weight:900}.check strong{display:block;margin-bottom:2px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.price-card{background:#241c1d;border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:28px;color:#fff8f4}.price-card.featured{background:#fff7f3;color:#191313;transform:translateY(-10px)}.price-card h3{font-family:"Playfair Display",serif;font-size:1.6rem;margin:.2rem 0}.price{font-family:"Playfair Display",serif;font-size:2.15rem;margin:.8rem 0}.price-card ul{list-style:none;padding:0;margin:1.2rem 0 1.8rem}.price-card li{padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9rem}.price-card.featured li{border-color:rgba(25,19,19,.12)}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{border:1px solid var(--line);border-radius:24px;padding:22px;background:var(--white)}.review-head{display:flex;align-items:center;gap:11px}.review-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:#7a6c6e;border:1px solid var(--line)}.avatar-fallback{width:46px;height:46px;border-radius:50%;background:#7a6c6e;display:grid;place-items:center;color:#fff}.review-name{font-weight:800}.stars{letter-spacing:.1em;color:#d69942}.review p{font-family:"Playfair Display",serif;font-size:1.08rem}.review footer{font-size:.8rem;color:var(--ink-soft)}.review-form-wrap{margin-top:34px;border:1px solid var(--line);border-radius:28px;padding:26px;background:var(--white)}.review-form-wrap h3{font-family:"Playfair Display",serif;font-size:1.7rem;margin:0 0 8px}.review-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:14px;background:var(--cream);color:var(--ink);padding:13px 14px;outline:none}.field textarea{min-height:115px;resize:vertical}.rating-input{display:flex;gap:5px;touch-action:none;user-select:none}.rating-star{border:0;background:transparent;font-size:2rem;line-height:1;color:#d1c6c4;padding:0 2px;cursor:pointer}.rating-star.on{color:#d69942}.form-status{display:none;padding:11px 13px;border-radius:13px;background:var(--paper);font-size:.86rem}.form-status.show{display:block}
.cta{margin:0 auto 84px;width:min(var(--max),calc(100% - 36px));background:linear-gradient(135deg,#7e2e40,#a95969);border-radius:36px;padding:54px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem}.cta h2{font-family:"Playfair Display",serif;font-size:clamp(2rem,4vw,3.5rem);margin:0;line-height:1.05}.cta p{max-width:540px;opacity:.84}.footer-socials-wrap{background:#171112;padding:32px 0 0;color:#fff}.footer-socials-label{text-align:center;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#bcaeb0;font-weight:800}.footer-socials{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px}.social-btn{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);background:#211819;transition:.2s}.social-btn:hover{transform:translateY(-3px)}.social-btn svg{width:21px;height:21px}.footer{background:#171112;color:#f8eeeb;padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:42px}.footer .brand img{width:52px}.footer p,.footer a{color:#baadaf;font-size:.9rem}.footer h4{margin:0 0 1rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em}.footer-links{display:grid;gap:.6rem}.copyright{margin-top:48px;padding-top:21px;border-top:1px solid rgba(255,255,255,.09);display:flex;justify-content:space-between;gap:1rem;font-size:.77rem;color:#8f8284}
.page-hero{padding:70px 0 54px;background:linear-gradient(180deg,var(--paper),var(--cream))}.page-hero .title{max-width:900px}.page-copy{max-width:720px;color:var(--ink-soft)}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card{min-height:150px;border-radius:26px;padding:24px;color:white;display:flex;justify-content:space-between;align-items:end;position:relative;overflow:hidden}.contact-card:after{content:"";width:150px;height:150px;border-radius:50%;position:absolute;right:-45px;top:-60px;background:rgba(255,255,255,.13)}.contact-card strong{font-family:"Playfair Display",serif;font-size:1.65rem}.contact-card span{font-size:.86rem;opacity:.86}.contact-whatsapp{background:linear-gradient(135deg,#128c7e,#25d366)}.contact-call{background:linear-gradient(135deg,#7e2e40,#bd6d7c)}.contact-email{background:linear-gradient(135deg,#9e3b34,#d96b62)}.contact-tiktok{background:linear-gradient(135deg,#111,#323232)}.contact-facebook{background:linear-gradient(135deg,#1456a0,#1877f2)}.contact-custom{background:linear-gradient(135deg,#7e2e40,#b96978)}.location-card{margin-top:22px;border:1px solid var(--line);border-radius:28px;background:var(--white);padding:28px}.services-page{display:grid;gap:18px}.service-row{display:grid;grid-template-columns:180px 1fr auto;gap:24px;align-items:center;border:1px solid var(--line);border-radius:24px;padding:14px;background:var(--white)}.service-row img{width:180px;height:145px;border-radius:18px;object-fit:cover;background:var(--paper)}.service-row h3{font-family:"Playfair Display",serif;font-size:1.45rem;margin:0 0 5px}.service-row p{margin:0;color:var(--ink-soft)}.service-row .amount{text-align:right}.gallery-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.about-art{min-height:460px;border-radius:36px;background:radial-gradient(circle at 70% 20%,#fff7f1 0 17%,transparent 18%),linear-gradient(135deg,#d99ba5,#f2d8d4);position:relative;overflow:hidden}.about-art:before{content:"NISHA";position:absolute;left:-30px;bottom:-40px;font-family:"Playfair Display",serif;font-size:140px;color:rgba(255,255,255,.3)}
.empty-state{border:1px dashed var(--line);border-radius:22px;padding:28px;text-align:center;color:var(--ink-soft)}
@media(max-width:980px){.hero-grid,.experience-grid,.about-grid{grid-template-columns:1fr;gap:40px}.services{grid-template-columns:1fr 1fr}.reviews{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.price-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.service-row{grid-template-columns:145px 1fr}.service-row .amount{grid-column:2;text-align:left}.gallery-page-grid{grid-template-columns:1fr}}
@media(max-width:680px){:root{--header:70px}.topbar .container span:last-child{display:none}.container{width:min(var(--max),calc(100% - 28px))}.brand img{width:44px;height:44px}.brand strong{font-size:.82rem}.brand small{font-size:.55rem;letter-spacing:.18em}.hero{padding:36px 0 56px}.hero-grid{gap:30px}.title{font-size:clamp(2.8rem,13vw,4.4rem)}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-proof{gap:1rem}.proof{min-width:43%}.hero-visual{max-width:100%;margin:0}.hero-visual:before{inset:8% 0 -4% 8%}.hero-visual img{border-radius:26px}.float-card{position:static;max-width:none;margin-top:12px;border-radius:18px;box-shadow:none;background:var(--white)}.section{padding:66px 0}.section-head{align-items:start;flex-direction:column;margin-bottom:28px}.services,.looks-grid,.reviews,.footer-grid,.contact-grid{grid-template-columns:1fr}.look-main{aspect-ratio:1/1}.quote-card{min-height:390px;padding:30px}.review-form{grid-template-columns:1fr}.field.full{grid-column:auto}.cta{padding:34px 24px;margin-bottom:0;border-radius:0;width:100%;align-items:flex-start;flex-direction:column}.footer-socials-wrap{padding-top:28px}.footer{padding-top:42px}.copyright{flex-direction:column}.service-row{grid-template-columns:1fr;padding:12px}.service-row img{width:100%;height:auto;aspect-ratio:1.5/1}.service-row .amount{grid-column:auto}.drawer{width:min(90vw,410px)}.drawer-top{margin-top:50px}.page-hero{padding:46px 0 38px}.gallery-page-grid{grid-template-columns:1fr}}

/* V3 interactive booking, notifications and promotions */
.public-header-actions{margin-left:auto;display:flex;align-items:center}.notification-bell{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);display:grid;place-items:center;cursor:pointer;position:relative;transition:.2s}.notification-bell:hover{transform:translateY(-1px);border-color:var(--rose)}.bell-glyph{font-size:1.35rem;line-height:1}.notification-count{position:absolute;right:-3px;top:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--rose-deep);color:#fff;display:grid;place-items:center;font-size:.62rem;font-weight:900;border:2px solid var(--cream)}
.notification-backdrop{position:fixed;inset:0;background:rgba(15,10,11,.42);opacity:0;visibility:hidden;transition:.25s;z-index:106}.notification-backdrop.open{opacity:1;visibility:visible}.notification-panel{position:fixed;right:0;top:0;bottom:0;width:min(92vw,420px);background:var(--cream);border-left:1px solid var(--line);z-index:107;transform:translateX(102%);transition:transform .32s cubic-bezier(.22,.8,.2,1);box-shadow:var(--shadow);padding:24px;overflow:auto}.notification-panel.open{transform:translateX(0)}.notification-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:18px 0 20px}.notification-panel-head h3{font-family:"Playfair Display",serif;font-size:2rem;margin:.15rem 0}.notification-panel-head button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);font-size:1.4rem;cursor:pointer}.notification-list{display:grid;gap:10px}.notification-item{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--white)}.notification-type{width:36px;height:36px;border-radius:11px;background:var(--paper);display:grid;place-items:center;color:var(--rose-deep);font-weight:900}.notification-type.promotion{background:linear-gradient(135deg,var(--rose-deep),var(--rose));color:#fff}.notification-item strong{display:block}.notification-item p{font-size:.84rem;color:var(--ink-soft);margin:3px 0 7px}.notification-item small{font-size:.7rem;color:var(--ink-soft)}
.promo-bar{background:#171112;color:#fff8f4;border-bottom:1px solid rgba(255,255,255,.1)}.promo-bar-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:9px;padding-bottom:9px}.promo-bar-inner>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}.promo-bar-inner strong{white-space:nowrap}.promo-bar-inner span:not(.promo-badge){color:#cfc2c4;font-size:.83rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promo-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.1);font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.promo-right{display:flex;align-items:center;gap:12px;white-space:nowrap}.promo-countdown{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:#f0c9d0;display:block;margin:.7rem 0}.promo-cta{border:0;border-radius:999px;background:linear-gradient(135deg,#9c4053,#d98294);color:white;padding:10px 15px;font-weight:800;cursor:pointer}.home-promotions{background:linear-gradient(180deg,var(--cream),var(--paper))}.promotion-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.promotion-card{border:1px solid var(--line);border-radius:28px;background:var(--white);overflow:hidden;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);min-height:260px}.promotion-card>img{width:100%;height:100%;object-fit:cover;background:var(--paper)}.promotion-card>div{padding:27px}.promotion-card h3{font-family:"Playfair Display",serif;font-size:1.65rem;margin:.65rem 0 .45rem}.promotion-card p{color:var(--ink-soft)}
.look-info{padding:0 4px}.look-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:-2px 0 8px}.look-meta strong{color:var(--rose-deep)}.look-meta span{font-size:.78rem;color:var(--ink-soft);padding:4px 8px;border:1px solid var(--line);border-radius:999px}.service-book-home{margin-top:16px;width:100%}
.booking-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px;opacity:0;visibility:hidden;transition:.22s}.booking-modal.open{opacity:1;visibility:visible}.booking-modal-backdrop{position:absolute;inset:0;background:rgba(15,10,11,.62);backdrop-filter:blur(5px)}.booking-dialog{position:relative;width:min(600px,100%);max-height:min(88vh,760px);overflow:auto;background:var(--cream);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.35);transform:translateY(16px) scale(.98);transition:.22s}.booking-modal.open .booking-dialog{transform:none}.booking-dialog h2{font-family:"Playfair Display",serif;font-size:2rem;margin:.25rem 0 .4rem}.booking-close{position:absolute;right:18px;top:18px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);font-size:1.35rem;cursor:pointer}.booking-selection{display:grid;grid-template-columns:88px 1fr;gap:14px;align-items:center;border:1px solid var(--line);border-radius:18px;background:var(--white);padding:12px;margin:18px 0}.booking-selection:has(img:only-child){grid-template-columns:88px 1fr}.booking-selection img{width:88px;height:76px;object-fit:cover;border-radius:13px;background:var(--paper)}.booking-selection strong{display:block;font-family:"Playfair Display",serif;font-size:1.18rem}.booking-selection span{display:block;color:var(--rose-deep);font-weight:800}.booking-selection small{display:block;color:var(--ink-soft)}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
@media(max-width:820px){.promotion-grid{grid-template-columns:1fr}.promo-bar-inner>div:first-child span:not(.promo-badge){display:none}}
@media(max-width:680px){.notification-bell{width:40px;height:40px}.public-header-actions{margin-left:auto}.promo-bar-inner{align-items:flex-start;flex-direction:column;gap:8px}.promo-right{width:100%;justify-content:space-between}.promo-bar-inner>div:first-child{flex-wrap:wrap}.promotion-card{grid-template-columns:1fr}.promotion-card>img{aspect-ratio:1.65/1}.booking-dialog{padding:22px 18px;border-radius:22px}.booking-form-grid{grid-template-columns:1fr}.booking-actions{display:grid}.booking-actions .btn{width:100%}.booking-selection{grid-template-columns:72px 1fr}.booking-selection img{width:72px;height:66px}.notification-panel{padding:18px}.menu-btn{margin-left:2px}}
.bell-glyph svg{width:20px;height:20px;display:block}.booking-selection.no-image{grid-template-columns:1fr}

/* Production mobile navigation + expandable header search */
.public-header-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.header-search-wrap{position:relative;display:flex;align-items:center}
.header-search-toggle{width:44px;height:44px;border:0;background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;border-radius:14px;transition:background .2s ease,transform .2s ease}
.header-search-toggle:hover{background:var(--paper)}
.header-search-toggle svg{width:22px;height:22px}
.header-search-pop{position:absolute;right:0;top:calc(100% + 12px);width:min(420px,calc(100vw - 28px));opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:.22s ease;z-index:120}
.header-search-wrap.open .header-search-pop{opacity:1;visibility:visible;transform:none}
.header-search-pop .search-box{margin:0;box-shadow:var(--shadow)}
.header-search-pop .search-results{margin:8px 0 0;box-shadow:var(--shadow)}
.drawer{top:var(--header);height:calc(100dvh - var(--header));padding:18px 22px 28px;width:min(86vw,410px)}
.drawer-top{margin:0 0 16px;min-height:44px}
.drawer .search-box{width:100%;grid-template-columns:minmax(0,1fr) 48px}
.drawer .search-box input{width:100%;min-width:0;text-overflow:ellipsis}
.drawer-book{width:100%;min-width:0;text-align:center;white-space:normal;line-height:1.3}
@media(max-width:680px){
  .drawer{top:var(--header);height:calc(100dvh - var(--header));width:min(86vw,380px);padding:16px 14px 24px}
  .drawer-top{margin:0 0 14px}
  .drawer-link{padding:12px}
  .drawer-book{padding:13px 12px;font-size:.94rem}
  .header-search-toggle{width:40px;height:40px}
  .header-search-pop{position:fixed;left:14px;right:14px;top:calc(var(--header) + 8px);width:auto}
  .header-search-pop .search-box{grid-template-columns:minmax(0,1fr) 48px}
  .header-search-pop input{min-width:0;width:100%}
}
