/* Larger controls and Laura's original arched LG signature. */
.wordmark{width:253px;height:94px;display:flex;align-items:center}
.wordmark .brand-signature{width:100%;height:100%;object-fit:contain}
.footer-brand .brand-signature{width:240px;height:90px;object-fit:contain}
.portrait img{object-position:58% 48%}
.signature-services{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:48px 0 55px}
.signature-service{text-align:left;min-width:0}.signature-photo{display:block;aspect-ratio:4/4.5;position:relative;overflow:hidden;border-radius:140px 140px 7px 7px;background:var(--blush)}
.signature-service:nth-child(2) .signature-photo{border-radius:7px}.signature-service:nth-child(3) .signature-photo{border-radius:7px 140px 7px 7px}
.signature-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.signature-service:hover img{transform:scale(1.045)}.signature-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#271b2b80);pointer-events:none}
.signature-tag{position:absolute;bottom:24px;left:24px;color:white;font-size:11px;letter-spacing:.15em;z-index:1}
.signature-book{position:absolute;bottom:18px;right:18px;border-radius:50%;width:50px;height:50px;display:grid;place-items:center;background:#fff8f6;color:var(--rose);font-size:26px;z-index:1}
.signature-caption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding-top:21px}.signature-caption strong{font-family:var(--serif);font-size:32px;font-weight:600;line-height:1.1}.signature-caption>span{font-size:21px;color:var(--rose);white-space:nowrap}
@media(max-width:780px){.signature-services{gap:28px;grid-template-columns:1fr;margin:32px 0 42px}.signature-photo{aspect-ratio:5/4;border-radius:110px 110px 5px 5px}.signature-service:nth-child(3) .signature-photo{border-radius:5px 110px 5px 5px}.signature-caption{padding-top:17px}.signature-caption strong{font-size:31px}.signature-caption>span{font-size:23px}}
header{height:126px;padding-inline:4%;gap:28px}
.wordmark{display:flex;flex-direction:row;align-items:center;gap:14px;width:253px;line-height:1;flex-shrink:0}
.wordmark .brand-emblem{width:70px;height:84px;flex-shrink:0}
.brand-type{display:flex;flex-direction:column;gap:5px}
.brand-type .brand-kicker{font:600 10px 'DM Sans',sans-serif;letter-spacing:.28em;color:var(--rose)}
.wordmark .brand-type strong{font-size:48px;font-weight:600;letter-spacing:-.055em;white-space:nowrap}
.brand-type .brand-tagline{font:500 8px 'DM Sans',sans-serif;letter-spacing:.19em;color:var(--muted);white-space:nowrap}
nav{font-size:16px;gap:26px}nav a{padding-block:18px}
.button,.button.compact{font-size:18px;min-height:70px;padding:23px 34px;gap:30px;border-radius:5px;line-height:1.3}
.header-actions .button{font-size:16px;min-height:66px;padding:20px 28px;white-space:nowrap}
.language{font-size:16px;min-width:44px;min-height:48px}
.hero-buttons .text-link{font-size:17px;min-height:56px;display:inline-flex;align-items:center}
.filters button,.service-filters button{font-size:16px;min-height:52px;padding:15px 25px}
.quick-questions button{font-size:14px;min-height:44px;padding:12px 17px}
.voice-controls button{min-height:46px;font-size:14px;padding:11px 17px}
.time-slots button{font-size:16px;min-height:52px;padding:14px 20px}
.hero-photo-controls button{width:56px;height:56px;font-size:28px}
.footer-brand{display:flex;align-items:center;gap:14px;font-size:36px}.footer-brand img{width:54px;height:66px}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #9f315329}.button:active{transform:translateY(0)}
button:focus-visible,a:focus-visible{outline:3px solid #b73968;outline-offset:5px}
@media(max-width:1250px){header{gap:20px}.wordmark{width:230px}.wordmark .brand-emblem{width:59px}.wordmark .brand-type strong{font-size:43px}nav{gap:18px;font-size:14px}.header-actions{gap:10px}.header-actions .button{padding:20px;font-size:14px}}
@media(max-width:1050px) and (min-width:781px){header{padding-inline:3%;gap:16px}.wordmark{width:195px;gap:10px}.wordmark .brand-emblem{width:49px}.wordmark .brand-type strong{font-size:37px}.brand-type .brand-kicker{font-size:8px}.brand-type .brand-tagline{font-size:6px}nav{gap:13px;font-size:13px}.header-actions .button{padding:18px 15px;font-size:13px}.header-actions{gap:6px}}
@media(max-width:780px){header{height:105px;padding-inline:5%;gap:12px}.wordmark{width:auto;gap:8px}.wordmark .brand-emblem{width:44px;height:61px}.wordmark .brand-type strong{font-size:32px}.brand-type{gap:4px}.brand-type .brand-kicker{font-size:7px;letter-spacing:.23em}.brand-type .brand-tagline{font-size:5px;letter-spacing:.12em}.header-actions{gap:8px}.header-actions .button{font-size:13px;min-height:53px;padding:16px 17px;max-width:155px;white-space:normal}.language{font-size:13px;min-width:30px}.menu-toggle{width:30px;min-height:48px;font-size:24px}.hero-buttons{gap:20px;flex-wrap:wrap}.hero-buttons .button,.assistant-feature .button,.closing .button,.booking-step .button{font-size:17px;padding:21px 27px;min-height:65px}.hero-buttons .text-link{font-size:16px}.filters,.service-filters{gap:9px}.filters button,.service-filters button{font-size:14px;min-height:49px;padding:13px 18px}.quick-questions button{font-size:12px;min-height:42px;padding:10px 13px}.voice-controls button{min-height:44px;font-size:12px}.time-slots button{font-size:15px;min-height:50px}.hero-photo-controls button{width:52px;height:52px}.footer-brand{font-size:31px}.footer-brand img{width:48px;height:60px}}
@media(max-width:420px){header{padding-inline:4%;gap:7px;height:100px}.wordmark .brand-emblem{width:37px;height:53px}.wordmark{gap:6px}.wordmark .brand-type strong{font-size:28px}.brand-type .brand-kicker{font-size:6px}.brand-type .brand-tagline{display:none}.header-actions{gap:4px}.header-actions .button{font-size:12px;padding:14px 12px;max-width:122px;min-height:52px}.language{min-width:27px;font-size:12px}.menu-toggle{width:25px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}
.walk-sprite{background-image:url(assets/laura-front-smooth-v3.webp);background-size:800% 400%;opacity:0;display:block;pointer-events:none;transition:opacity .35s ease;transform-origin:center bottom}
.concierge-launch.is-entering{animation:none;will-change:transform}
.is-entering .walk-sprite{animation:none;opacity:1}
.assistant-avatar>img{transition:opacity .25s ease;opacity:1}
.is-entering .assistant-avatar>img{visibility:visible;opacity:0}
.concierge-launch>span:nth-child(2){transition:opacity .3s ease}
.concierge-launch.is-entering>span:nth-child(2){visibility:visible;opacity:0}
.has-arrived>span:nth-child(2){opacity:1}
.is-preparing .assistant-avatar>img,.concierge-launch.is-preparing>span:nth-child(2){opacity:0}
.walk-sprite{display:none!important}
.assistant-avatar{overflow:visible;isolation:isolate}
.assistant-avatar{width:190px;height:280px;padding:8px;box-sizing:border-box}
.concierge-launch{height:310px;width:230px;bottom:18px}
.concierge-launch>span:nth-child(2){right:195px;bottom:185px}
.assistant-avatar>img{width:100%;height:100%;object-fit:contain;object-position:center bottom;visibility:visible;transition:opacity .85s ease,transform 1.1s cubic-bezier(.2,.65,.3,1);transform:none}
.is-preparing .assistant-avatar>img{transform:translateY(8px) scale(.95)}
.concierge-launch>span:nth-child(2){width:220px;max-width:240px;white-space:normal;box-sizing:border-box}
.assistant-world>img{padding-bottom:48px;box-sizing:border-box}
@media(max-width:580px){.concierge-launch>span:nth-child(2){right:140px;bottom:145px;width:175px;max-width:190px;min-width:0}.assistant-avatar{width:132px;height:210px;padding:7px}.concierge-launch{width:180px;height:235px;bottom:12px}}
@media(prefers-reduced-motion:reduce){.walk-sprite{display:none}.assistant-avatar>img{transition:none}}
/* Signature logo and a clickable studio map. */
.wordmark{width:253px;height:94px;flex-shrink:0}
.wordmark .brand-signature{display:block;width:100%;height:100%;object-fit:contain}
.footer-brand .brand-signature{width:240px;height:90px;object-fit:contain}
.visit-map{position:relative;min-height:570px;overflow:hidden;border-radius:120px 120px 12px 12px;background:#eadfe2;border:1px solid #e6d9dc;isolation:isolate;box-shadow:0 18px 55px #4224380a}
.visit-map iframe{position:absolute;inset:0;width:100%;height:calc(100% - 111px);border:0;pointer-events:none}
.map-directions{position:absolute;inset:0 0 111px;z-index:1;display:flex;align-items:flex-end;padding:24px;background:linear-gradient(transparent 65%,#32203120)}
.map-directions>span{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:18px 26px;border-radius:5px;background:var(--rose);color:white;font-size:14px;font-weight:600;letter-spacing:.04em;box-shadow:0 7px 24px #5b24432a;transition:background .2s,transform .2s}
.map-directions:hover>span{background:#8f284e;transform:translateY(-2px)}
.map-address{position:absolute;bottom:0;left:0;right:0;min-height:111px;display:flex;align-items:center;gap:17px;padding:23px 26px;background:#fffaf7}
.map-address strong{display:block;font-family:var(--serif);font-size:27px;font-weight:600;margin-bottom:5px}
.map-address div>span{font-size:13px;line-height:1.6;display:block;color:var(--muted)}
.map-marker{width:43px;height:43px;display:grid;place-items:center;flex-shrink:0;color:var(--rose);border:1px solid #e9d3dc;border-radius:50%}
.map-marker svg{width:23px;height:23px}
@media(max-width:1250px){.wordmark{width:220px;height:85px}}
@media(max-width:1050px) and (min-width:781px){.wordmark{width:190px;height:76px}}
@media(max-width:780px){.wordmark{width:170px;height:70px}.visit-map{min-height:470px;border-radius:95px 95px 10px 10px}.map-directions{padding:19px}.map-directions>span{font-size:14px;min-height:57px;padding:18px 23px}.map-address{padding:22px 20px;gap:14px}.map-address strong{font-size:27px}.footer-brand .brand-signature{width:220px;height:82px}}
@media(max-width:420px){.wordmark{width:clamp(115px,36vw,146px);height:64px}}
/* Studio information should be as easy to read as the rest of the page. */
.visit-info{gap:34px}
.visit-info h3{font-size:23px;font-weight:600;color:var(--ink);margin-bottom:14px}
.visit-info p{font-size:20px;line-height:1.85;color:#3b303b}
.visit-info .text-link{font-size:18px;font-weight:500;color:#332535}
.visit>div:first-child>.text-link{font-size:20px;font-weight:500;color:#332535}
.map-address div>span{font-size:17px;line-height:1.65;color:#3b303b}
.visit-map iframe{height:calc(100% - 125px)}
.map-address{min-height:125px}
.map-directions{bottom:125px}
@media(max-width:780px){.visit-info{grid-template-columns:1fr;gap:28px}.visit-info h3{font-size:21px;margin-bottom:10px}.visit-info p{font-size:18px;line-height:1.85}.visit-info .text-link{font-size:17px}.visit>div:first-child>.text-link{font-size:19px}.map-address div>span{font-size:16px}.map-address strong{font-size:27px}}
nav{font-size:20px;gap:30px;font-weight:600;color:var(--ink)}
nav a{padding-block:20px;color:var(--ink)}
@media(min-width:1051px) and (max-width:1250px){nav{font-size:18px;gap:22px}}
@media(max-width:1050px){nav{display:none;position:absolute;top:100%;left:0;right:0;padding:24px 6%;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 24px #2b202810;z-index:10;gap:0}nav.open{display:flex;flex-direction:column;align-items:flex-start}nav a{font-size:21px;font-weight:600;width:100%;padding:16px 0}.menu-toggle{display:block;font-size:25px;min-width:32px;min-height:48px}}
.concierge-head h2 em{font-size:14px;line-height:1.4;letter-spacing:.01em;margin-top:4px}
.concierge-launch small{font-size:11px;line-height:1.45;letter-spacing:.01em;color:#514354}
.character-label{white-space:normal;text-align:center;width:max-content;max-width:90%;line-height:1.5;letter-spacing:.04em}
@media(max-width:580px){.concierge-head h2 em{font-size:12px}.concierge-launch small{font-size:10px}.character-label{font-size:10px}}
@media(max-width:420px){.menu-toggle{width:26px;min-width:26px;font-size:24px}}
.about-copy>p:not(.eyebrow){font-size:19px;line-height:1.8;color:#3b303b;max-width:560px}
@media(max-width:780px){.about-copy>p:not(.eyebrow){font-size:18px;line-height:1.8}}
.social-links{display:flex;flex-wrap:wrap;gap:12px;max-width:365px}
.about-social{margin-top:28px}
.social-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:16px 19px;border:1px solid #c68aa2;border-radius:7px;background:#fffaf7;color:#84254d;font-size:16px;font-weight:600;line-height:1.3;transition:background .2s,color .2s,transform .2s}
.social-link svg{display:block;width:22px;height:22px;flex-shrink:0}
.social-arrow{font-size:20px;margin-left:6px;line-height:1}
.social-link:hover{background:#a83261;border-color:#a83261;color:white;transform:translateY(-2px)}
.footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.footer-social{max-width:340px}
.footer-social .social-link{min-height:52px;font-size:15px;padding:14px 17px}
@media(max-width:580px){.social-links{gap:10px;width:100%;max-width:340px}.social-link,.footer-social .social-link{flex:1;min-width:140px;min-height:56px;padding:15px 14px;font-size:15px;gap:8px}.social-link svg{width:21px;height:21px}.social-arrow{margin-left:auto;font-size:18px}.about-social{margin-top:25px}.footer-identity{width:100%}}
@media(prefers-reduced-motion:reduce){.social-link:hover{transform:none}}
/* Keep the black social bar and navigation together while the page scrolls. */
:root{--top-bar-height:46px;--site-header-height:126px}
html{scroll-padding-top:calc(var(--top-bar-height) + var(--site-header-height) + 16px)}
.announcement{position:sticky;top:0;z-index:60;height:var(--top-bar-height);min-height:var(--top-bar-height);padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#000;color:#fff;overflow:visible}
.announcement .announcement-tagline{font-size:11px;line-height:1.35;letter-spacing:.11em}
.announcement .announcement-location{font-size:10px;white-space:nowrap;line-height:1.35;letter-spacing:.1em}
.announcement-socials{display:flex;align-items:center;gap:10px;position:relative;flex-shrink:0}
.bar-social-link{display:grid;place-items:center;width:36px;height:36px;padding:7px;border:0;border-radius:6px;flex-shrink:0;background:transparent;color:#fff;transition:background .2s,color .2s}
.bar-social-link svg{display:block;width:21px;height:21px}
.bar-social-link:hover{background:#292129;color:#f4a4c4}
.bar-social-link:focus-visible{outline-color:#f4a4c4;outline-offset:1px}
header{position:sticky;top:var(--top-bar-height);z-index:55}
.youtube-note{position:absolute;top:calc(100% + 13px);right:0;width:255px;padding:17px 19px;border:1px solid #e6d4dc;border-radius:9px;background:#fffaf7;box-shadow:0 14px 34px #25132924;color:var(--ink);letter-spacing:0;text-align:left;line-height:1.55}
.youtube-note strong{display:block;font-size:16px;margin-bottom:4px;color:#86274d}
.youtube-note span{display:block;font-size:14px}
.announcement{z-index:80}
.concierge{z-index:70;max-height:calc(100dvh - var(--top-bar-height) - 14px)}
@media(max-width:780px){:root{--top-bar-height:44px;--site-header-height:105px}.announcement{padding-inline:5%;gap:12px}.announcement .announcement-tagline{font-size:9px;max-width:190px}.announcement .announcement-location{display:none}.announcement-socials{gap:6px}.bar-social-link{width:36px;height:36px}.youtube-note{top:calc(100% + 11px)}}
@media(max-width:420px){:root{--site-header-height:100px}.announcement{padding-inline:4%}.announcement .announcement-tagline{font-size:8px;max-width:160px;letter-spacing:.08em}.announcement-socials{gap:5px}}
.payment-methods>strong{display:block;font-size:17px;font-weight:600;letter-spacing:.01em;color:var(--ink);margin-bottom:12px}
.accepted-cards{display:flex;gap:10px;flex-wrap:wrap}
.payment-card{display:grid;place-items:center;width:66px;height:44px;padding:5px 6px;background:#fff;border:1px solid #e5d5dd;border-radius:6px}
.payment-card img{display:block;width:100%;height:100%;object-fit:contain;opacity:.85}
footer{display:grid;grid-template-columns:minmax(250px,1fr) auto auto;align-items:center;gap:26px 44px}
footer .footer-identity{grid-column:1;grid-row:1/3}
footer>span{grid-column:2;grid-row:1;text-align:left}
footer .payment-methods{grid-column:2;grid-row:2}
footer .credits{grid-column:3;grid-row:1}
footer .privacy-open{grid-column:3;grid-row:2;justify-self:start}
@media(max-width:1050px){footer{grid-template-columns:1fr 1fr;gap:26px 30px}footer .credits{grid-column:1/3;grid-row:3}footer .privacy-open{grid-column:1/3;grid-row:4}}
@media(max-width:580px){footer{grid-template-columns:1fr;gap:28px}footer .footer-identity,footer>span,footer .payment-methods,footer .credits,footer .privacy-open{grid-column:1;grid-row:auto}.payment-methods>strong{font-size:17px}.payment-card{width:64px;height:43px}.accepted-cards{gap:9px}}
/* Compact social marks sit beside the signature, rather than stacking buttons. */
.social-links{display:flex;flex-wrap:nowrap;gap:8px;width:auto;max-width:none;flex-shrink:0}
.social-links .social-link{display:grid;place-items:center;flex:0 0 42px;width:42px;min-width:42px;max-width:42px;height:42px;min-height:42px;padding:10px;border:0;border-radius:50%;background:#f4e3eb;color:#8c2a51}
.social-links .social-link svg{width:22px;height:22px}
.social-links .social-link:hover{background:#a83261;color:white}
.about-action-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px 22px;margin-top:14px}
.about-action-row .about-social{margin:0}
footer .footer-identity{flex-direction:row;align-items:center;gap:18px}
.footer-social{margin:0}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.back-to-top{position:fixed;left:22px;bottom:22px;z-index:30;display:grid;place-items:center;width:50px;height:50px;padding:13px;border:1px solid #ffffff80;border-radius:50%;background:#2b202e;color:white;box-shadow:0 5px 20px #34203826;transition:background .2s,transform .2s}
.back-to-top svg{display:block;width:24px;height:24px}
.back-to-top:hover{background:#a83261;transform:translateY(-3px)}
@media(max-width:580px){footer .footer-identity{gap:12px}.footer-brand .brand-signature{width:178px;height:68px}.social-links .social-link{flex-basis:40px;width:40px;min-width:40px;max-width:40px;height:40px;min-height:40px;padding:9px}.back-to-top{left:12px;bottom:15px;width:46px;height:46px;padding:11px}}
@media(prefers-reduced-motion:reduce){.back-to-top:hover{transform:none}}
.announcement .announcement-tagline{order:0}
.announcement-socials{order:1;margin-left:auto}
.announcement .announcement-location{order:2}
.bar-social-link{padding:6px}
.bar-social-link svg,.social-links .social-link svg{width:24px;height:24px}
.social-links .social-link{padding:8px;background:transparent}
.social-links .social-link:hover{background:#f3e4eb}
@media(max-width:780px){:root{--top-bar-height:64px}.announcement{display:grid;grid-template-columns:1fr auto;grid-template-rows:36px 16px;gap:0 12px;padding-block:4px}.announcement .announcement-tagline{grid-column:1;grid-row:1}.announcement-socials{grid-column:2;grid-row:1;margin-left:0}.announcement .announcement-location{display:block;grid-column:1/3;grid-row:2;justify-self:end;font-size:8px;letter-spacing:.08em}.announcement-location i{margin-inline:7px}.youtube-note{top:calc(100% + 24px)}}
@media(min-width:1051px){footer{padding-right:260px}}
@media(min-width:1051px) and (max-width:1400px){footer{grid-template-columns:1fr 1fr;gap:25px 30px}footer .credits{grid-column:1;grid-row:3}footer .privacy-open{grid-column:2;grid-row:3}}
.announcement-phone{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:4px 6px;color:white;font-size:13px;font-weight:500;letter-spacing:.01em;white-space:nowrap;margin-right:12px}
.announcement-phone>svg{width:17px;height:17px;flex-shrink:0}
.announcement-phone:hover{color:#f4a4c4}
footer{padding-right:6%;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:25px 35px}
footer .footer-identity{grid-column:1;grid-row:1}
footer>span{grid-column:2;grid-row:1;justify-self:center;text-align:center}
footer .payment-methods{grid-column:3;grid-row:1;justify-self:end}
footer .credits{grid-column:1/4;grid-row:2;justify-self:center;justify-content:center}
footer .privacy-open{grid-column:3;grid-row:2;justify-self:end}
@media(max-width:1250px){footer{grid-template-columns:1fr 1fr;gap:22px 28px}footer .footer-identity{grid-column:1;grid-row:1}footer .payment-methods{grid-column:2;grid-row:1}footer .credits{grid-column:1/3;grid-row:2}footer>span{grid-column:1;grid-row:3;justify-self:start;text-align:left}footer .privacy-open{grid-column:2;grid-row:3}}
@media(max-width:780px){.announcement .announcement-tagline{display:none}.announcement-socials{grid-column:1/3;justify-content:flex-end;width:100%}.announcement-phone{margin-right:auto;font-size:13px;padding-left:0}.announcement-phone>svg{width:16px;height:16px}}
@media(max-width:580px){footer{grid-template-columns:1fr;gap:23px;padding-bottom:70px}footer .footer-identity,footer .payment-methods,footer .credits,footer .privacy-open{grid-column:1;grid-row:auto;justify-self:start}footer>span{display:none}footer .credits{justify-self:center}.announcement-phone{font-size:12px;gap:7px;margin-right:auto}}
/* Owner's black-and-gold monogram paired with the Laura G signature. */
.wordmark{width:330px;height:108px}
.footer-brand .brand-signature{width:290px;height:100px}
@media(max-width:1250px) and (min-width:781px){.wordmark{width:250px;height:90px}header{gap:16px}nav{gap:17px}}
@media(max-width:1050px) and (min-width:781px){.wordmark{width:210px;height:80px}}
@media(max-width:780px){
 :root{--site-header-height:124px}
 header{display:grid;grid-template-columns:minmax(0,1fr) 76px;grid-template-rows:58px 48px;height:124px;padding:7px 5%;gap:4px 12px}
 .wordmark{grid-column:1;grid-row:1;width:min(230px,100%);height:58px}
 .wordmark .brand-signature{object-fit:cover}
 .header-actions{display:contents}
 .header-actions .language{grid-column:2;grid-row:1;justify-self:start;min-width:30px}
 .header-actions .menu-toggle{grid-column:2;grid-row:1;justify-self:end;width:30px}
 .header-actions .button{grid-column:1/3;grid-row:2;max-width:none;width:100%;min-height:48px;padding:13px 20px;font-size:14px;white-space:nowrap}
 .footer-brand .brand-signature{width:220px;height:78px}
}
@media(max-width:360px){header{padding-inline:4%;grid-template-columns:minmax(0,1fr) 68px}.footer-brand .brand-signature{width:185px;height:68px}.footer-identity{gap:8px}}
.service-row .service-time{display:block;position:static;margin-top:9px;font:500 15px 'DM Sans',sans-serif;color:#6a4555;letter-spacing:.02em}
.signature-caption>span>small{display:block;margin-top:9px;font:500 15px 'DM Sans',sans-serif;color:#6a4555;text-align:right}
.studio-gallery{background:#f1e6e9}
.gallery-filters{margin:35px 0}
.studio-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.gallery-card{position:relative;aspect-ratio:4/5;overflow:hidden;background:#d5c2c7;text-align:left;border-radius:5px;color:white;isolation:isolate}
.gallery-card:nth-child(6n+1){grid-column:span 2;aspect-ratio:1.6}
.gallery-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gallery-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#21111bd9);z-index:0}
.gallery-card>span,.gallery-card>small{position:absolute;left:22px;right:18px;z-index:1}
.gallery-card>span{bottom:43px;font:600 28px/1.08 var(--serif)}
.gallery-card>small{bottom:22px;font-size:9px;letter-spacing:.14em}
.gallery-card:hover img{transform:scale(1.035)}
.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}
.gallery-bottom>p{font-size:10px;letter-spacing:.14em}
.gallery-more{font-size:16px;min-height:48px}
.gallery-lightbox{width:min(1000px,94vw);max-width:94vw;padding:0;border:0;background:#fffaf7;border-radius:12px;overflow:auto;max-height:94dvh}
.gallery-lightbox::backdrop{background:#211721df;backdrop-filter:blur(8px)}
.gallery-photo-stage{position:relative;height:min(72dvh,800px);background:#241b24;display:flex;justify-content:center}
.gallery-photo-stage img{width:100%;height:100%;object-fit:contain}
.gallery-close,.gallery-prev,.gallery-next{position:absolute;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fffaf7eb;color:#281d29;font-size:25px;z-index:2}
.gallery-close{position:absolute;top:15px;right:15px;z-index:3}.gallery-prev{left:15px;top:50%;transform:translateY(-50%)}.gallery-next{right:15px;top:50%;transform:translateY(-50%)}
.gallery-photo-caption{padding:23px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px}.gallery-photo-caption h3{font:600 31px var(--serif)}.gallery-counter{font-size:12px;color:#6a4555}.gallery-book{font-size:13px;min-height:44px}
@media(max-width:1050px) and (min-width:781px){header nav{font-size:16px;gap:11px}.wordmark{width:190px}}
@media(max-width:780px){.studio-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.gallery-card:nth-child(6n+1){aspect-ratio:1.2}.gallery-card>span{font-size:24px;left:15px;bottom:39px}.gallery-card>small{font-size:8px;left:15px;bottom:19px}.gallery-photo-caption{padding:20px;flex-wrap:wrap}.gallery-photo-caption h3{font-size:27px}.gallery-book{flex-basis:100%;text-align:center}.gallery-photo-stage{height:65dvh}.gallery-bottom{align-items:flex-start;flex-direction:column}.service-row .service-time{font-size:15px}}
@media(prefers-reduced-motion:reduce){.gallery-card img{transition:none}.gallery-card:hover img{transform:none}}
/* Keep the expanded navigation readable instead of squeezing seven labels. */
@media(max-width:1360px){header nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:18px 6% 25px;background:#fffaf7;border-bottom:1px solid #e4d2da;box-shadow:0 20px 30px #2c182712}header nav.open{display:flex}header nav a{font-size:21px;min-height:50px;padding:13px 0}.menu-toggle{display:block;font-size:26px;width:34px;min-height:48px}header{justify-content:space-between}}
.concierge-status{min-height:0;padding:0 20px;font-size:12px;line-height:1.6;color:#7e3455}.concierge-status:empty{display:none}.concierge-status:not(:empty){padding-block:10px}
.chat-form .concierge-mic{flex-shrink:0;width:42px;height:42px;min-width:42px;min-height:42px;padding:8px;background:#f3e7ed;color:#8e315a;border:1px solid #e4cdd9;border-radius:50%;font-size:20px}
.chat-booking-action{align-self:flex-start;min-height:46px;padding:12px 19px;background:#b73969;color:white;border:0;border-radius:7px;font-size:14px;margin:5px 0 15px}
.time-slots button:disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.time-availability-note{font-size:13px;line-height:1.6;color:#6f4259;margin-top:15px}
@media(min-width:1361px) and (max-width:1560px){header nav{font-size:18px;gap:19px}.wordmark{width:250px}.header-actions .button{font-size:14px;padding:20px}.header-actions{gap:12px}}
@media(max-width:580px){.assistant-avatar{width:104px;height:170px;padding:5px}.concierge-launch{width:124px;height:190px}.concierge-launch>span:nth-child(2){right:114px;bottom:117px;width:152px;max-width:152px}.concierge-launch>span:nth-child(2) strong{font-size:12px}.concierge-launch>span:nth-child(2) small{font-size:9px}}
