@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--cream:#f3e9dd;--light:#fbf7f1;--wine:#782f43;--rose:#d7a3a7;--ink:#332729;--line:rgba(51,39,41,.15);--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--light);font-family:"DM Sans",sans-serif}body.lock{overflow:hidden}button,input,select{font:inherit}.skip{position:fixed;z-index:50;top:8px;left:8px;padding:10px;background:var(--wine);color:#fff;transform:translateY(-150%)}.skip:focus{transform:none}.press,.pill,.service button,.mood-tabs button{transition:transform 140ms var(--ease)}.press:active,.pill:active,.service button:active,.mood-tabs button:active{transform:scale(.97)}header{position:absolute;z-index:20;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:90px;padding:0 clamp(20px,4vw,60px)}header.fixed{position:fixed;background:rgba(243,233,221,.82);backdrop-filter:blur(20px);box-shadow:inset 0 -1px rgba(255,255,255,.7)}.logo{position:relative;display:flex;gap:7px;align-items:baseline;color:inherit;text-decoration:none}.logo span{font-size:10px;letter-spacing:.16em}.logo b{font-family:"Instrument Serif";font-size:28px;font-style:italic;font-weight:400}.logo small{position:absolute;top:29px;left:0;font-size:6px;letter-spacing:.16em}nav{display:flex;gap:30px}nav a{color:inherit;font-size:9px;text-decoration:none}.book-top{justify-self:end;min-height:42px;padding:0 18px;border:1px solid var(--wine);border-radius:999px;background:transparent;color:var(--wine);cursor:pointer;font-size:9px}.menu-btn{display:none;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.5)}.menu-btn i{position:absolute;width:15px;height:1px;background:currentColor}.menu-btn i:first-child{transform:translateY(-3px)}.menu-btn i:last-child{transform:translateY(3px)}.mobile-nav{position:fixed;z-index:19;inset:0;display:none;flex-direction:column;justify-content:center;padding:100px 24px 30px;background:var(--cream);opacity:0;pointer-events:none;transition:opacity 180ms var(--ease)}.mobile-nav.open{opacity:1;pointer-events:auto}.mobile-nav a{padding:14px 0;border-bottom:1px solid var(--line);font-family:"Instrument Serif";font-size:38px;text-decoration:none}.mobile-nav button{margin-top:auto;min-height:50px;border:0;border-radius:999px;background:var(--wine);color:#fff}.hero{position:relative;min-height:100svh;overflow:hidden;background:var(--cream)}.hero-img,.hero-wash{position:absolute;inset:0}.hero-img{background:url('./assets/atelier-lacca-hero.jpg') center/cover}.hero-wash{background:linear-gradient(90deg,rgba(248,241,233,.96),rgba(248,241,233,.74) 40%,transparent 72%)}.hero-copy{position:relative;z-index:2;display:flex;min-height:100svh;flex-direction:column;justify-content:center;padding:120px clamp(20px,7vw,110px) 80px}.eyebrow{color:var(--wine);font-size:8px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.hero h1,.section-title h2,.box-copy h2,.studio h2{margin:16px 0 0;font-family:"Instrument Serif";font-size:clamp(4.9rem,8vw,8.8rem);font-weight:400;line-height:.84;letter-spacing:-.04em}.hero h1 em,.section-title h2 em,dialog h2 em{color:var(--wine);font-weight:400}.hero-copy>p:not(.eyebrow){max-width:440px;margin:30px 0;color:#746263;font-size:12px;line-height:1.7}.pill{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:22px;padding:0 22px;border:0;border-radius:999px;cursor:pointer;font-size:9px;font-weight:600}.pill.burgundy{align-self:flex-start;background:var(--wine);color:#fff}.open-note{position:absolute;z-index:3;right:5vw;bottom:32px;display:grid;grid-template-columns:auto auto;gap:3px 15px;padding:17px 20px;border-radius:15px;background:rgba(255,255,255,.62);backdrop-filter:blur(18px)}.open-note span{grid-row:1/3;align-self:center;width:9px;height:9px;border-radius:50%;background:#66815d;font-size:0}.open-note b{font-family:"Instrument Serif";font-size:18px;font-weight:400}.open-note small{color:#7d6b6c;font-size:8px}.reveal{opacity:0;transform:translateY(10px);transition:opacity 220ms var(--ease),transform 260ms var(--ease)}.reveal.show{opacity:1;transform:none}.marquee{display:flex;min-height:58px;align-items:center;justify-content:space-around;gap:20px;overflow:hidden;background:var(--wine);color:#fff;font-family:"Instrument Serif";font-size:18px;white-space:nowrap}.marquee i{color:var(--rose);font-style:normal}.services{padding:clamp(85px,10vw,150px) clamp(18px,7vw,110px);background:var(--light)}.section-title{display:grid;grid-template-columns:1.2fr .6fr;align-items:end;gap:40px;margin-bottom:60px}.section-title .eyebrow{grid-column:1/-1}.section-title h2{font-size:clamp(4rem,6vw,6.8rem)}.section-title>p:last-child{color:#786667;font-size:11px;line-height:1.7}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:45px 1fr 90px 90px 90px;align-items:center;gap:20px;min-height:130px;border-bottom:1px solid var(--line)}.service>span{color:#a38f90;font-size:8px}.service h3{margin:0 0 8px;font-family:"Instrument Serif";font-size:27px;font-weight:400}.service p{margin:0;color:#806e6f;font-size:9px}.service small{font-size:8px}.service>b{font-family:"Instrument Serif";font-size:20px;font-weight:400}.service button{min-height:38px;border:1px solid var(--wine);border-radius:999px;background:transparent;color:var(--wine);cursor:pointer;font-size:8px}.gallery{padding:clamp(85px,10vw,145px) clamp(12px,5vw,75px);background:var(--cream)}.mood-tabs{display:flex;gap:8px;margin:-20px 0 28px}.mood-tabs button{min-height:38px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:transparent;cursor:pointer;font-size:8px}.mood-tabs button.active{background:var(--wine);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.look{position:relative;display:flex;min-height:370px;flex-direction:column;justify-content:flex-end;padding:22px;overflow:hidden}.look::before,.look::after{content:"";position:absolute;border-radius:50% 50% 42% 42%;background:rgba(255,255,255,.55);box-shadow:inset 0 -30px rgba(92,31,49,.08)}.look::before{width:33%;height:53%;left:15%;top:16%;transform:rotate(-7deg)}.look::after{width:33%;height:53%;right:15%;top:16%;transform:rotate(8deg)}.look.hidden{display:none}.look span,.look h3,.look p{position:relative;z-index:2}.look span{position:absolute;top:17px;left:18px;font-size:8px}.look h3{margin:0;font-family:"Instrument Serif";font-size:28px;font-weight:400}.look p{margin:4px 0 0;font-size:8px}.look.blush{background:#e7b9b7}.look.wine{background:#8c3b51;color:#fff}.look.wine::before,.look.wine::after{background:#5f1830}.look.line{background:#ded1bf}.look.line::before,.look.line::after{border:1px solid #403338;background:transparent}.look.milk{background:#eee8de}.look.terracotta{background:#c97962}.look.dots{background:#c8a6ad}.look.dots::before,.look.dots::after{background:radial-gradient(circle at 30% 30%,#7c3448 0 5px,rgba(255,255,255,.5) 6px)}.care{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:var(--wine);color:#fff}.care-quote{display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,8vw,120px);border-right:1px solid rgba(255,255,255,.14)}.care-quote>span{color:var(--rose);font-family:"Instrument Serif";font-size:90px;line-height:.4}.care blockquote{max-width:540px;margin:30px 0;font-family:"Instrument Serif";font-size:clamp(2.5rem,4vw,4.5rem);line-height:1}.care-quote p{color:rgba(255,255,255,.5);font-size:8px}.care-points{display:flex;flex-direction:column;justify-content:center;padding:50px clamp(40px,7vw,100px)}.care-points div{padding:26px 0;border-bottom:1px solid rgba(255,255,255,.14)}.care-points b{color:var(--rose);font-size:8px}.care-points h3{margin:7px 0;font-family:"Instrument Serif";font-size:24px;font-weight:400}.care-points p{margin:0;color:rgba(255,255,255,.55);font-size:9px}.studio{display:grid;grid-template-columns:.8fr 1.2fr;min-height:650px;background:var(--light)}.studio-art{position:relative;display:grid;place-items:center;background:#d7b2ac}.studio-art span{font-family:"Instrument Serif";font-size:150px;font-style:italic}.studio-art i{position:absolute;width:50%;aspect-ratio:1;border:1px solid rgba(51,39,41,.2);border-radius:50%}.studio-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,9vw,140px)}.studio h2{font-size:clamp(3.8rem,6vw,6.5rem)}.studio-copy>p:not(.eyebrow){color:#776566;font-size:10px;line-height:1.8}footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:45px clamp(20px,5vw,75px);background:#2f2426;color:#fff}.footer-brand{font-size:11px;letter-spacing:.13em}.footer-brand i{display:block;font-family:"Instrument Serif";font-size:24px;font-weight:400}footer>div:nth-child(2){display:flex;justify-content:center;gap:15px}footer a,footer p{color:#a9999c;font-size:8px;text-decoration:none}footer p{text-align:right}dialog{width:min(900px,calc(100% - 30px));max-height:calc(100dvh - 30px);padding:0;border:0;border-radius:20px;color:var(--ink);background:var(--light);box-shadow:0 30px 100px rgba(51,20,30,.35);opacity:0;transform:scale(.96);transition:opacity 170ms var(--ease),transform 220ms var(--ease),display 220ms allow-discrete,overlay 220ms allow-discrete}dialog[open]{display:grid;grid-template-columns:.55fr 1.45fr;opacity:1;transform:none}@starting-style{dialog[open]{opacity:0;transform:scale(.96)}}dialog::backdrop{background:rgba(48,28,35,.67);backdrop-filter:blur(5px)}.dialog-close{position:absolute;z-index:2;top:15px;right:15px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;font-size:22px}.dialog-side{display:flex;min-height:620px;flex-direction:column;justify-content:space-between;padding:45px 30px;background:#d7a3a7}.dialog-side span{font-family:"Instrument Serif";font-size:70px;font-style:italic}.dialog-side p{font-family:"Instrument Serif";font-size:28px}.dialog-main{padding:55px 45px 40px}.dialog-main h2{margin:8px 0 30px;font-family:"Instrument Serif";font-size:55px;font-weight:400;line-height:.9}.dialog-main form{display:flex;flex-direction:column;gap:13px}.dialog-main label{display:flex;flex-direction:column;gap:6px;color:#796668;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.dialog-main input,.dialog-main select{height:44px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);outline:none}.dialog-main input:focus,.dialog-main select:focus{border-color:var(--wine);box-shadow:0 0 0 3px rgba(120,47,67,.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.dialog-main .consent{display:grid;grid-template-columns:auto 1fr;align-items:center;text-transform:none;letter-spacing:0}.consent input{width:15px;height:15px;accent-color:var(--wine)}.submit{width:100%;justify-content:space-between}.toast{position:fixed;z-index:60;left:50%;bottom:22px;padding:13px 18px;border-radius:999px;background:var(--wine);color:#fff;font-size:8px;opacity:0;transform:translate(-50%,12px);transition:opacity 180ms var(--ease),transform 200ms var(--ease)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){header{grid-template-columns:1fr auto auto;gap:8px}header nav,.book-top{display:none}.menu-btn{position:relative;display:grid;place-items:center}.mobile-nav{display:flex}.hero-wash{background:linear-gradient(0deg,rgba(248,241,233,.94),transparent 70%)}.hero-copy{justify-content:flex-end;padding-bottom:100px}.open-note{display:none}.service{grid-template-columns:35px 1fr auto}.service small{display:none}.service button{grid-column:2/4;width:110px;margin-bottom:18px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.care{grid-template-columns:1fr}.care-quote{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.studio{grid-template-columns:1fr}.studio-art{min-height:480px}footer{grid-template-columns:1fr;gap:24px}footer>div:nth-child(2){justify-content:flex-start;flex-wrap:wrap}footer p{text-align:left}}
@media(max-width:570px){.hero h1{font-size:clamp(4rem,19vw,5.4rem)}.section-title{grid-template-columns:1fr}.section-title .eyebrow{grid-column:auto}.service{grid-template-columns:25px 1fr auto;gap:10px}.service p{display:none}.gallery-grid{grid-template-columns:1fr}.look{min-height:390px}.care-quote,.care-points,.studio-copy{padding:75px 22px}.form-row{grid-template-columns:1fr}dialog[open]{grid-template-columns:1fr}.dialog-side{display:none}.dialog-main{padding:58px 23px 30px}.dialog-main h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}*,*::before,*::after{transition-duration:.01ms!important}}
