/* Studio experience: progressive motion, accessible planning, responsive details. */
:root{--studio-ease:cubic-bezier(.22,1,.36,1)}
body[data-studio=lale]{--s-accent:#6f1d31;--s-dark:#441723;--s-paper:#fffdf9;--s-bg:#f8f4ed;--s-soft:#f0dfda;--s-line:#d9c5c0;--s-muted:#675651}
body[data-studio=kok]{--s-accent:#8b6737;--s-dark:#172a24;--s-paper:#fffdf8;--s-bg:#f6f1e7;--s-soft:#e8dfce;--s-line:#cfc5b1;--s-muted:#556257}
body[data-studio=mimo]{--s-accent:#994554;--s-dark:#452a55;--s-paper:#fffdfd;--s-bg:#f4eaf8;--s-soft:#f9e1e5;--s-line:#d7bfdc;--s-muted:#695773}

html{scroll-padding-top:100px}body{overflow-x:clip}body.studio-dialog-open{overflow:hidden}
[hidden]{display:none!important}main{min-width:0}img{max-width:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--s-accent);outline-offset:4px}
.studio-skip{position:fixed;top:8px;left:12px;z-index:300;padding:12px 18px;background:var(--s-dark);color:white;translate:0 -150%}.studio-skip:focus{translate:0 0}
:is(.eyebrow,.tiny,.label){font-size:12px!important}:is(.menu-toggle,.toggle,.menu){min-width:44px;min-height:44px}
header{transition:box-shadow .3s,background .3s}body.scrolled>header{box-shadow:0 10px 35px #00000014}
:is(.links,.navlinks,.main-nav) a{position:relative;min-height:30px;display:inline-flex;align-items:center}
:is(.links,.navlinks,.main-nav) a::after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:1px;background:currentColor;scale:0 1;transform-origin:left;transition:scale .4s var(--studio-ease)}
:is(.links,.navlinks,.main-nav) a:is(:hover,[aria-current=location])::after{scale:1 1}
:is(.primary,.pill,.action,.btn,.navcta,.nav-btn){position:relative;overflow:hidden;isolation:isolate;min-height:46px;transition:background .25s,box-shadow .35s,translate .35s var(--studio-ease)}
:is(.primary,.pill,.action,.btn)::after{content:"";position:absolute;pointer-events:none;inset:-70%;background:linear-gradient(110deg,transparent 44%,#ffffff30 50%,transparent 56%);translate:-70% 0;transition:translate .9s var(--studio-ease)}
@media(hover:hover){:is(.primary,.pill,.action,.btn):hover{translate:0 -3px;box-shadow:0 16px 28px #0002}:is(.primary,.pill,.action,.btn):hover::after{translate:70% 0}}
.reveal,.fade,.hero-animate{opacity:1;transform:none;animation:none;transition:none}
.studio-active .studio-motion{opacity:0;translate:0 32px;transition:opacity .8s var(--studio-ease),translate 1s var(--studio-ease),scale .5s var(--studio-ease),box-shadow .5s;transition-delay:var(--stagger,0ms)}
.studio-active .studio-motion.is-in{opacity:1;translate:0 0}
.studio-active .studio-image{clip-path:inset(0 0 16%);transition:clip-path 1.2s var(--studio-ease),opacity .9s,translate 1s var(--studio-ease)}
.studio-active .studio-image.is-in{clip-path:inset(0)}
.studio-headline{overflow:hidden;padding:.1em .03em;margin:-.1em -.03em;display:block}
.studio-headline>span{display:block;animation:studio-title 1.05s var(--title-delay,80ms) var(--studio-ease) both}
@keyframes studio-title{from{opacity:.1;translate:0 105%;rotate:1.5deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes studio-dialog-in{from{opacity:0;translate:0 22px;scale:.98}to{opacity:1;translate:0 0;scale:1}}
@keyframes studio-answer{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
.hero-media,.hero-image,.hero-photo,.hero-image-wrap{overflow:hidden}
.hero :is(.hero-media,.hero-image,.hero-photo,.hero-image-wrap) img{scale:1.04;transition:scale 1.3s var(--studio-ease)}
.service-includes{padding:0;list-style:none;margin:20px 0 25px;font:14px/1.55 Arial,sans-serif;color:var(--s-muted)}
.service-includes li{padding:7px 0;border-bottom:1px solid var(--s-line)}
.service-note{display:block;margin:10px 0 16px;font-size:14px;line-height:1.5;color:var(--s-muted)}
.select-service{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;align-self:start;width:100%;padding:14px 0 7px;border:0;border-bottom:1px solid var(--s-line);background:transparent;color:var(--s-accent);font-size:14px;font-weight:700;text-align:left;cursor:pointer;min-height:44px}
.select-service span{transition:translate .35s}.select-service:hover span{translate:4px -4px}
body:not([data-studio=lale]) :is(.service,.card){position:relative;overflow:hidden;min-width:0}
body:not([data-studio=lale]) :is(.service,.card)::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--px,50%) var(--py,0%),#ffffff90,transparent 65%);opacity:0;transition:opacity .5s}
body:not([data-studio=lale]) :is(.service,.card):hover::before{opacity:1}
body:not([data-studio=lale]) :is(.service,.card)>*{position:relative}
.studio-wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}
.studio-guide{padding:94px 0;background:var(--s-paper);color:var(--s-dark)}
.studio-overline{display:block;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--s-accent);margin-bottom:15px}
.studio-guide h2,.studio-faq h2{font:400 clamp(36px,4vw,60px)/1.12 Georgia,serif;letter-spacing:-.035em;max-width:740px;margin:0 0 24px}
.studio-lead{max-width:620px;font-size:17px;line-height:1.75;color:var(--s-muted);margin-bottom:35px}
.studio-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}
.studio-guide-grid article{border-top:1px solid var(--s-line);padding:25px 0}
.studio-guide-grid strong{font-size:13px;color:var(--s-accent)}
.studio-guide-grid h3{font:400 26px/1.2 Georgia,serif;margin:23px 0 14px}
.studio-guide-grid p{font-size:16px;line-height:1.7;color:var(--s-muted);margin:0}
.studio-guide-action{display:inline-flex;gap:35px;padding:16px 22px;background:var(--s-dark);color:var(--s-paper);border:0;min-height:48px;font-weight:700;cursor:pointer}
.studio-faq{padding:94px 0;background:var(--s-bg);color:var(--s-dark)}
.studio-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}
.studio-faq details{border-top:1px solid var(--s-line);padding:0 3px}.studio-faq details:last-child{border-bottom:1px solid var(--s-line)}
.studio-faq summary{font-size:17px;font-weight:600;line-height:1.5;cursor:pointer;list-style:none;padding:23px 32px 23px 0;position:relative}
.studio-faq summary::-webkit-details-marker{display:none}.studio-faq summary::after{content:"+";position:absolute;right:0;top:20px;font-size:25px;font-weight:400;transition:rotate .3s}.studio-faq details[open] summary::after{rotate:45deg}
.studio-faq details p{margin:0;padding:0 32px 24px 0;font-size:16px;line-height:1.7;color:var(--s-muted);animation:studio-answer .3s ease}
.studio-launcher{position:fixed;z-index:40;bottom:22px;right:24px;border:1px solid #ffffff66;border-radius:999px;padding:15px 20px;display:inline-flex;align-items:center;gap:10px;background:var(--s-dark);color:var(--s-paper);box-shadow:0 14px 35px #0003;cursor:pointer;font-size:14px;font-weight:700;transition:translate .35s}
.studio-launcher:hover{translate:0 -4px}.studio-launcher svg{width:23px;height:23px}
.studio-mobile-bar{display:none}.studio-motion-control{display:block;margin:20px auto 0;padding:10px 14px;border:1px solid currentColor;background:transparent;color:inherit;font-size:12px;border-radius:30px;cursor:pointer}
.studio-booking{width:min(870px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:0;border:0;background:var(--s-paper);color:var(--s-dark);box-shadow:0 35px 100px #0008;overflow:auto;overscroll-behavior:contain}
.studio-booking::backdrop,.studio-gallery::backdrop{background:#111b18bb;backdrop-filter:blur(8px)}
.studio-booking[open],.studio-gallery[open]{animation:studio-dialog-in .4s var(--studio-ease)}
.studio-booking-grid{display:grid;grid-template-columns:.72fr 1.28fr}
.studio-booking-intro{padding:48px 32px;background:var(--s-dark);color:var(--s-paper)}
.studio-booking-intro .studio-overline{color:inherit;opacity:.8}.studio-booking-intro h2{font:400 43px/1.13 Georgia,serif;letter-spacing:-.035em;margin:28px 0 24px}
.studio-booking-intro p{font-size:16px;line-height:1.75;opacity:.83}.studio-booking-intro small{display:block;margin-top:45px;font-size:13px;line-height:1.6;opacity:.75}
.studio-booking-main{padding:46px 35px 32px;min-width:0;position:relative}.studio-close{position:absolute;right:12px;top:10px;width:44px;height:44px;display:grid;place-items:center;background:var(--s-paper);color:var(--s-dark);border:1px solid var(--s-line);border-radius:50%;font-size:26px;cursor:pointer;z-index:3}
.studio-form label{display:block;font-size:14px;font-weight:700;margin:16px 0 9px}.studio-form :is(select,input,textarea){display:block;width:100%;min-height:47px;border:1px solid var(--s-line);border-radius:0;background:var(--s-paper);color:var(--s-dark);font:16px/1.5 Arial,sans-serif;padding:11px;box-sizing:border-box}.studio-form textarea{resize:vertical;min-height:78px}
.studio-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.studio-help{display:block;font-size:13px;line-height:1.5;color:var(--s-muted);margin-top:9px}
.studio-submit,.studio-copy,.studio-send{width:100%;display:flex;justify-content:center;align-items:center;gap:12px;border:0;background:var(--s-dark);color:var(--s-paper);padding:15px 20px;min-height:48px;font-weight:700;font-size:15px;margin-top:20px;cursor:pointer;text-decoration:none}
.studio-summary h3{font:400 32px/1.2 Georgia,serif;margin:15px 0}.studio-message{white-space:pre-wrap;padding:20px;background:var(--s-soft);color:var(--s-dark);font-size:16px;line-height:1.7;border-left:3px solid var(--s-accent);overflow-wrap:anywhere}
.studio-back{border:0;border-bottom:1px solid currentColor;padding:10px 0;background:transparent;color:var(--s-muted);cursor:pointer;font-size:14px}.studio-feedback{min-height:20px;font-size:14px;color:var(--s-accent);margin-top:12px}
.studio-gallery{position:fixed;max-width:min(1120px,calc(100% - 26px));max-height:calc(100dvh - 26px);padding:14px;border:1px solid #ffffff33;background:var(--s-dark);color:var(--s-paper);overflow:auto}
.studio-gallery img{width:100%;height:auto;max-height:calc(100dvh - 125px);object-fit:contain;display:block}.studio-gallery p{font-size:14px;margin:12px 0 0;line-height:1.5}.studio-gallery-bar{display:flex;justify-content:space-between;align-items:center;gap:15px}.studio-gallery-bar button{min-width:44px;min-height:44px;border:1px solid #ffffff66;background:transparent;color:white;font-size:22px;cursor:pointer}.studio-gallery-nav{display:flex;gap:8px;flex-shrink:0}
.studio-photo-button{position:absolute;right:14px;top:14px;z-index:3;border:1px solid #ffffff88;border-radius:30px;background:var(--s-paper);color:var(--s-dark);padding:11px 14px;min-height:44px;cursor:pointer;font-size:14px;font-weight:700}
.studio-photo-host{position:relative;overflow:hidden}.studio-photo-host img{transition:scale .9s var(--studio-ease)}.studio-photo-host:hover img{scale:1.04}
.studio-demo-label{font-size:13px;line-height:1.6;color:var(--s-muted);margin-top:15px}
/* Correct percentage columns and keep headings within their cards. */
body[data-studio=mimo] .hero-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)}
body[data-studio=mimo] .service .arrow{display:none}body[data-studio=mimo] .palette-name{display:inline-block;font-size:15px}
body[data-studio=mimo] .work-photo{border-radius:32px;overflow:hidden}body[data-studio=mimo] .polish-note{left:18px;right:18px;min-width:0;box-shadow:inset 0 0 0 2px var(--picked,#d79fbb);transition:box-shadow .4s}
body[data-studio=mimo] .shade{transition:scale .3s}body[data-studio=mimo] .shade[aria-pressed=true]{scale:1.12}
body[data-studio=kok] .hero-media{margin-right:min(0px,calc((1296px - 100vw)/2))}body[data-studio=kok] .service h3{margin-top:35px}

body[data-studio=lale] .hero-meta>span{font-size:12px}body[data-studio=lale] .service-body{min-height:240px}body[data-studio=lale] .service-body small{font-size:14px}body[data-studio=lale] .service-body a{position:static;width:auto;height:auto;border:0;border-radius:0;display:flex;margin-top:20px;justify-content:space-between;min-height:44px;font-size:14px;background:none}
body[data-studio=lale] .stats strong{font-size:28px;line-height:1.25}body[data-studio=lale] .stats small{font-size:14px;color:#ffffffbb}
body[data-studio=lale] .price-card li{font-size:16px}body[data-studio=lale] .price-card li b{font-size:14px}body[data-studio=lale] .footer-bottom{font-size:12px}body[data-studio=lale] .contact-card p{font-size:16px}
body[data-studio=lale] .rating{font-size:15px;line-height:1.7;color:var(--s-muted)}
body[data-studio=lale] .atelier-marquee>div{animation:none;flex-wrap:wrap;justify-content:center;width:auto;padding:15px;gap:12px}body[data-studio=lale] .atelier-marquee span{font-size:12px;padding:0 10px}
@media(min-width:761px){body[data-studio=lale] .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border:0}body[data-studio=lale] .service-card{border:1px solid var(--s-line)}body[data-studio=lale] .service-photo{height:220px}}
@media(max-width:1000px){.studio-faq-grid{gap:38px}.studio-wrap{width:calc(100% - 48px)}}
@media(max-width:760px){
 html{scroll-padding-top:85px}body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.studio-wrap{width:calc(100% - 36px)}
 body[data-studio=mimo] .hero-grid{grid-template-columns:1fr}body[data-studio=kok] .hero-media{margin:0 -19px}
 .studio-guide,.studio-faq{padding:66px 0}.studio-guide-grid,.studio-faq-grid{grid-template-columns:1fr;gap:16px}.studio-guide-grid{margin-top:20px}.studio-guide-grid article{padding:20px 0}.studio-guide-grid h3{margin-top:15px}
 .studio-launcher{display:none}.studio-mobile-bar{display:flex;align-items:center;gap:14px;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 17px calc(10px + env(safe-area-inset-bottom));background:var(--s-paper);border-top:1px solid var(--s-line);box-shadow:0 -8px 30px #0000000b}.studio-mobile-bar a{font-size:14px;color:var(--s-dark);min-width:88px;text-align:center}.studio-mobile-bar button{flex:1;min-height:46px;background:var(--s-dark);color:var(--s-paper);border:0;font-size:15px;font-weight:700;cursor:pointer}
 .studio-booking-grid{grid-template-columns:1fr}.studio-booking-intro{padding:27px 25px 20px}.studio-booking-intro h2{font-size:31px;margin:12px 0}.studio-booking-intro p{margin:0;font-size:15px}.studio-booking-intro small{margin-top:12px}.studio-booking-main{padding:20px 24px 25px}.studio-close{position:fixed;right:12px;top:10px}
 .studio-active .studio-motion{translate:0 20px;transition-delay:0ms}.studio-active .studio-motion.is-in{translate:0 0}
 body[data-studio=lale] .hero{padding-top:105px}body[data-studio=lale] .service-body{min-height:190px}body[data-studio=lale] .location-float{left:0;min-width:0}body[data-studio=lale] .gallery-grid .gallery-item:last-child{display:block}
 body[data-studio=lale] .main-nav a{min-height:44px}
}
@media(max-width:420px){.studio-field-row{grid-template-columns:1fr}.studio-booking-main{padding-inline:18px}.studio-booking-intro h2{font-size:28px}body[data-studio=lale] .service-card,body[data-studio=lale] .service-card:first-child{grid-template-columns:1fr}body[data-studio=lale] .service-photo{height:200px;margin:10px}body[data-studio=lale] .service-body{min-height:0}}
.studio-reduced *,.studio-reduced *::before,.studio-reduced *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.studio-reduced .studio-motion,.studio-reduced .studio-headline>span{opacity:1!important;translate:none!important;rotate:none!important;clip-path:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.studio-active .studio-motion,.studio-headline>span{opacity:1!important;translate:none!important;rotate:none!important;clip-path:none!important}}

.studio-progress{position:fixed;left:0;top:0;width:0;height:3px;z-index:190;background:var(--s-accent);pointer-events:none}

.hero-visual.hero-animate{transform:none}.studio-reduced .hero img{translate:none!important}body[data-studio=lale] .service-body a{color:var(--s-accent)}

.atelier-images img:last-of-type{height:76%;align-self:end}@media(max-width:480px){body[data-studio=lale] .gallery-grid{grid-auto-rows:280px}}


/* Lâle business-first refresh */
body[data-studio=lale] .p-hero{min-height:650px}
body[data-studio=lale] .p-hero-copy{padding-top:clamp(60px,6vw,92px)}
body[data-studio=lale] .p-hero h1{font-size:clamp(3.7rem,6.1vw,6.7rem);max-width:720px}
body[data-studio=lale] .p-hero-footer{padding-top:54px}
.p-proof{background:var(--p-paper);border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line)}
.p-proof-inner{width:min(1280px,calc(100% - 96px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.p-proof article{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:31px 28px;border-right:1px solid var(--p-line)}
.p-proof article:first-child{border-left:1px solid var(--p-line)}
.p-proof article>span{font-size:.61rem;letter-spacing:.14em;color:var(--p-accent);padding-top:4px}
.p-proof strong{display:block;font-family:var(--p-head);font-size:1.28rem;font-weight:500;letter-spacing:-.02em;margin-bottom:7px}
.p-proof p{font-size:.79rem;line-height:1.65;color:var(--p-muted)}
body[data-studio=lale] .p-intro{padding-block:82px}
body[data-studio=lale] .p-services{padding-block:84px}
body[data-studio=lale] .p-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-studio=lale] .p-service-image{height:270px}
body[data-studio=lale] .p-service-body{min-height:310px}
body[data-studio=lale] .p-service h3{font-size:clamp(2rem,2.6vw,2.65rem)}
.p-contact{padding-block:105px;display:grid;grid-template-columns:1fr .92fr;gap:clamp(48px,8vw,110px);align-items:center}
.p-contact-lead h2{margin:22px 0;font-size:clamp(3.2rem,5vw,5.5rem)}
.p-contact-lead>p{max-width:560px;color:var(--p-muted);font-size:.95rem;line-height:1.9;margin-bottom:30px}
.p-contact-card{background:var(--p-ink);color:var(--p-paper);padding:38px 40px;box-shadow:0 25px 65px #3c17231f}
.p-contact-card-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:25px;border-bottom:1px solid #ffffff2c}
.p-contact-card-head strong{font-family:var(--p-head);font-size:1.7rem;font-weight:500;letter-spacing:.04em}
.p-contact-card-head span{font-size:.56rem;letter-spacing:.18em;color:#dfbca4}
.p-contact-row{display:grid;grid-template-columns:125px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid #ffffff24}
.p-contact-row span{font-size:.66rem;letter-spacing:.09em;color:#dfbca4;text-transform:uppercase}
.p-contact-row strong{font-size:.82rem;line-height:1.65;font-weight:500}
.p-contact-link{width:100%;margin-top:25px;padding:15px 0;border:0;border-bottom:1px solid #ffffff5c;background:none;color:white;text-align:left;font-size:.8rem;font-weight:600}
.p-contact-card small{display:block;margin-top:17px;color:#ffffff88;font-size:.66rem;line-height:1.7}
body[data-studio=lale] .p-faq{padding-bottom:65px}
body[data-studio=lale] .p-closing{padding-block:82px}
@media(max-width:900px){
 .p-proof-inner{width:calc(100% - 48px);grid-template-columns:1fr}
 .p-proof article,.p-proof article:first-child{border-left:1px solid var(--p-line);border-right:1px solid var(--p-line);border-bottom:1px solid var(--p-line)}
 .p-proof article:last-child{border-bottom:0}
 .p-contact{grid-template-columns:1fr;gap:40px}
}
@media(max-width:560px){
 .p-proof-inner{width:calc(100% - 38px)}
 .p-proof article{padding:23px 18px;grid-template-columns:35px 1fr}
 .p-proof strong{font-size:1.12rem}
 .p-proof p{font-size:.75rem}
 body[data-studio=lale] .p-intro{padding-block:62px}
 body[data-studio=lale] .p-service-image{height:245px}
 body[data-studio=lale] .p-service-body{min-height:0}
 .p-contact{padding-block:72px}
 .p-contact-lead h2{font-size:3.15rem}
 .p-contact-card{padding:30px 22px}
 .p-contact-row{grid-template-columns:1fr;gap:5px}
}
