@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--black:#151313;--pink:#e4a9b5;--gold:#c8a971;--cream:#f8f3ed;--ink:#292320;--nail:#d897a9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.header{background:var(--black);color:var(--cream);padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid #ffffff16}.brand{font:27px 'Playfair Display',Georgia,serif;white-space:nowrap}.brand i{color:var(--pink);font-weight:400}.brand span{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2.5px;margin-top:8px}.header nav{display:flex;gap:35px;font-size:13px;color:#e8dcd5}.header nav a:hover,.text-link:hover{color:var(--pink)}.button{display:inline-flex;gap:35px;align-items:center;justify-content:center;background:var(--pink);color:var(--black);font-size:13px;font-weight:600;padding:19px 25px;border:1px solid var(--pink);transition:background .2s,transform .2s}.button:hover{background:#efc0ca;transform:translateY(-2px)}.button span{font-size:20px}.button.small{padding:11px 22px;gap:24px}.hero{background:var(--black);color:var(--cream);display:grid;grid-template-columns:1.05fr 1fr;gap:60px;padding:72px 8% 74px;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2.8px;font-weight:600;margin:0 0 25px;color:#9c774a}.hero .eyebrow{color:var(--gold);display:flex;align-items:center;gap:12px}.eyebrow>span{width:23px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(58px,6.7vw,102px);line-height:1.03;letter-spacing:-3px;margin-bottom:30px}h1 em{color:var(--pink);font-weight:400}.intro{max-width:360px;color:#bfb4ad;font-size:15px;line-height:1.8}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:31px}.text-link{font-size:12px;white-space:nowrap}.text-link span{margin-left:12px}.location{font-size:9px;letter-spacing:2px;color:#bcb0a6;margin:39px 0 0}.location span{color:var(--gold);margin:0 15px}.hero-art{position:relative;padding:10px 0 15px 8px}.art-frame{height:100%;min-height:480px;position:relative;background:#e3b0bb;border-radius:230px 230px 3px 3px;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid #c6a676}.art-top,.art-bottom{position:absolute;letter-spacing:2.5px;font-size:9px;z-index:2}.art-top{top:65px}.art-bottom{bottom:27px}.orb{position:absolute;border:1px solid #78595040;border-radius:50%;width:520px;height:520px}.orb-one{left:-330px;top:120px}.orb-two{right:-340px;top:20px}.bottle{position:relative;transform:rotate(-13deg);filter:drop-shadow(22px 30px 20px #6e354748)}.cap{height:134px;width:93px;background:repeating-linear-gradient(90deg,#211d1c 0px,#211d1c 3px,#393332 4px,#211d1c 6px);margin:auto;border-radius:7px 7px 0 0;border-bottom:8px solid #c4a568}.glass{width:169px;height:199px;background:linear-gradient(110deg,#fadce4 0%,#c77e91 15%,#d995a7 50%,#b47486 85%,#e5bec7);border-radius:27px 27px 22px 22px;box-shadow:inset 5px 0 2px #ffffff45,inset -5px -6px 2px #ffffff25;border:2px solid #ebc6cf}.bottle-label{border:1px solid #c4a568;background:#1d1919;color:#f3e8da;text-align:center;width:119px;margin:38px auto;padding:16px 7px 14px;font:20px 'Playfair Display',Georgia,serif}.bottle-label span{display:block}.bottle-label i{color:var(--gold);font-size:15px}.bottle-label small{font:6px Arial,sans-serif;letter-spacing:1px;display:block;margin-top:12px}.art-script{position:absolute;bottom:65px;right:25px;font:italic 40px 'Playfair Display',Georgia,serif;transform:rotate(-8deg);color:#593c3e}.seal{position:absolute;right:-28px;top:5px;background:var(--black);border:1px solid var(--gold);outline:6px solid var(--black);color:var(--gold);width:106px;height:106px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:9px;letter-spacing:2px;line-height:1.7;transform:rotate(12deg)}.seal i{font:italic 25px Georgia,serif;letter-spacing:0}.ribbon{background:var(--pink);padding:20px 0;display:flex;justify-content:space-around;gap:40px;overflow:hidden;white-space:nowrap;font:italic 21px 'Playfair Display',Georgia,serif}.ribbon b{font-size:26px;font-weight:400}.section{padding:94px 8%}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}h2{font-size:clamp(38px,4vw,55px);line-height:1.18;letter-spacing:-1.5px;margin-bottom:20px}h2 em{color:#a96577;font-weight:400}.section-heading>p{max-width:350px;font-size:14px;line-height:1.9;color:#73675f;margin-bottom:25px}.service-row{display:grid;grid-template-columns:50px 1fr 1.2fr 135px;gap:24px;align-items:center;border-top:1px solid #d8cbbb;padding:30px 0}.service-row:last-child{border-bottom:1px solid #d8cbbb}.number{font-size:11px;color:#987342}.service-row h3{font-size:30px;margin:0}.service-row p{font-size:13px;line-height:1.8;color:#73675f;margin:0;max-width:330px}.service-row a{font-size:11px;justify-self:end;border-bottom:1px solid #b98b56;padding-bottom:7px}.palette{background:#eee4da;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.palette-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#73675f;max-width:340px}.swatches{display:flex;gap:16px;margin:29px 0 20px}.swatch{background:var(--swatch);width:33px;height:33px;border-radius:50%;border:0;cursor:pointer;position:relative}.swatch:after{content:'';position:absolute;inset:-5px;border:1px solid transparent;border-radius:50%}.swatch.selected:after{border-color:#6e5040}.palette-copy .shade{font-weight:600;font-size:12px}.shade span{display:block;font-weight:400;font-size:12px}.note{display:block;font-size:10px;color:#73675f;line-height:1.7;max-width:330px}.nail-preview{position:relative;min-height:365px;background:#151313;color:var(--cream);border-radius:180px 180px 5px 5px;padding:48px 20px 30px;text-align:center}.preview-label{font-size:8px;letter-spacing:2.3px;color:var(--gold)}.nails{height:225px;display:flex;align-items:center;justify-content:center;gap:18px}.nail{width:60px;height:142px;border-radius:50% 50% 23px 23px;background:linear-gradient(105deg,#ffffff40,transparent 30%,#00000020 85%),var(--nail);box-shadow:inset 3px 0px 3px #ffffff20,6px 15px 12px #0005;transition:background .3s,transform .3s;position:relative}.nail:after{content:'';position:absolute;top:16px;left:11px;width:6px;height:50px;background:#ffffff3a;border-radius:50%;transform:rotate(9deg)}.n1{transform:rotate(-13deg) translateY(17px)}.n2{height:165px}.n3{transform:rotate(13deg) translateY(17px);background:linear-gradient(155deg,transparent 62%,#c8a971 62.5%,#c8a971 64%,transparent 64.5%),linear-gradient(105deg,#ffffff40,transparent 30%,#00000020 85%),var(--nail)}.preview-caption{font:30px 'Playfair Display',Georgia,serif}.preview-caption i{color:var(--pink)}.sparkle{position:absolute;right:35px;top:98px;font-size:42px;color:var(--gold)}.visit{display:grid;grid-template-columns:1fr 1fr;gap:80px}.visit-title>p:not(.eyebrow){color:#73675f;font-size:14px;line-height:1.9}.visit .button{margin-top:12px}.faq{padding-top:15px}details{border-top:1px solid #d8cbbb;padding:21px 0}details:last-child{border-bottom:1px solid #d8cbbb}summary{cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:15px}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:#9c774a;font-size:19px;line-height:1}details[open] summary:after{content:'−'}details p{color:#73675f;font-size:13px;line-height:1.9;margin:15px 20px 0 0}details>a{display:inline-block;font-size:12px;margin-top:15px;color:#976347;text-decoration:underline}.closing{padding:72px 8%;text-align:center;background:var(--pink)}.closing p{font:40px/1.25 'Playfair Display',Georgia,serif;margin-bottom:23px}.closing em{font-weight:400}.closing a{font-size:12px;border-bottom:1px solid #5d393a;padding-bottom:7px}.closing a span{margin-left:35px}footer{background:var(--black);color:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:40px 6%}footer p{font-size:11px;color:#bcb0a6;margin:0}footer>a:last-child{font-size:11px;color:var(--gold)}
@media(min-width:1600px){.hero,.section{padding-left:calc((100vw - 1300px)/2);padding-right:calc((100vw - 1300px)/2)}}
@media(max-width:1000px){.header nav{gap:18px}.hero{gap:35px;padding:55px 6%}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-art{padding-top:45px}.art-frame{min-height:440px}.seal{top:38px;right:-12px}.section{padding:70px 6%}.palette,.visit{gap:45px}.service-row{grid-template-columns:30px 1fr 1.2fr 115px;gap:15px}.brand{font-size:23px}}
@media(max-width:680px){.header{padding:22px 6%;gap:12px}.header nav{display:none}.brand{font-size:21px}.brand span{font-size:7px;letter-spacing:1.7px}.button.small{font-size:11px;padding:10px 14px;gap:13px}.hero{grid-template-columns:1fr;padding:45px 7% 47px;gap:25px}h1{font-size:67px;letter-spacing:-2px}.hero-actions{flex-direction:row;align-items:center;gap:19px}.hero-actions .button{padding:15px 17px;font-size:11px;gap:13px}.text-link{font-size:10px}.intro{font-size:14px}.location{font-size:8px;margin-top:30px;letter-spacing:1.3px}.hero-art{padding:16px 20px 0 5px;max-width:390px;width:100%;margin:0 auto}.art-frame{min-height:405px}.cap{height:113px;width:78px}.glass{width:148px;height:175px}.bottle-label{width:104px;font-size:17px;margin-top:29px}.art-top{top:43px}.art-bottom{font-size:7px;bottom:21px}.art-script{font-size:32px;bottom:47px;right:18px}.seal{width:87px;height:87px;font-size:7px;top:11px;right:0}.seal i{font-size:22px}.ribbon{padding:15px 25px;font-size:18px;justify-content:start;gap:30px}.section{padding:60px 7%}.section-heading{display:block;margin-bottom:30px}h2{font-size:39px}.section-heading>p{margin-bottom:0}.service-row{grid-template-columns:25px 1fr auto;gap:13px;padding:25px 0}.service-row h3{font-size:25px}.service-row p{grid-column:2 / 4;grid-row:2;font-size:12px}.service-row a{font-size:10px}.palette,.visit{grid-template-columns:1fr;gap:35px}.nail-preview{min-height:340px;max-width:380px;width:100%;margin:auto}.visit .faq{padding-top:0}.closing{padding:55px 7%}.closing p{font-size:31px}footer{flex-wrap:wrap;padding:33px 7%;gap:22px}footer p{order:3;width:100%;font-size:10px}footer>a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.logo-art{padding:0;text-align:center;align-self:center}.logo-window{position:relative;overflow:hidden;aspect-ratio:709 / 1160;width:100%;max-width:350px;margin:0 auto;border:1px solid #c8a97166;background:#151313}.logo-window img{position:absolute;width:100%;height:auto;left:0;top:-16.2%;display:block}.logo-caption{display:block;color:var(--gold);font-size:8px;letter-spacing:2.2px;margin-top:20px}.studio{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;border-bottom:1px solid #d8cbbb}.studio-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#73675f;max-width:370px}.studio-copy .text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:8px;margin-top:10px}.studio-photos{position:relative}.photo{position:relative;overflow:hidden;aspect-ratio:709 / 471;background:#151313;margin:0;border:1px solid #c8a97188}.photo img{position:absolute;width:100%;height:auto;top:-113.2%;left:0}.second-photo{width:70%;margin:-32px -18px 0 auto;box-shadow:0 8px 25px #0002}.photo-caption{text-align:right;font-size:8px;letter-spacing:2px;color:#987342;margin-top:22px}
@media(max-width:680px){.logo-art{padding:0 18px;margin-top:15px}.logo-window{max-width:290px}.studio{grid-template-columns:1fr;gap:30px}.second-photo{margin-right:-8px}.logo-caption{font-size:7px;letter-spacing:1.7px}}

.branding-hero{padding:0;align-self:center;text-align:center;min-width:0}.hero-branding-photos{position:relative;padding-bottom:10px}.hero-studio-photo{width:100%;border-radius:8px}.hero-artist-photo{width:79%;margin:-25px -15px 0 auto;position:relative;box-shadow:0 12px 28px #0007;border:2px solid var(--gold);border-radius:6px}.hero-logo{position:absolute;bottom:16px;left:5px;width:23%;margin:0;box-shadow:0 6px 16px #0007;border-color:var(--gold)}.branding-hero .logo-caption{margin-top:19px}.studio-logo{text-align:center}.studio-logo .logo-window{max-width:260px}.studio-logo .logo-caption{color:#987342}
@media(max-width:680px){.hero .branding-hero{order:-1;width:100%;max-width:420px;margin:0 auto 15px;padding:0 7px}.hero{gap:18px;padding-top:30px}.hero-artist-photo{margin-right:-5px;width:75%}.hero-logo{width:23%;left:8px;bottom:14px}.branding-hero .logo-caption{font-size:7px;letter-spacing:1.8px}.studio-logo .logo-window{max-width:230px}}
.work-gallery{background:#151313;color:var(--cream);padding-top:70px;padding-bottom:65px}.work-gallery .eyebrow{color:var(--gold)}.work-gallery h2 em{color:var(--pink)}.work-gallery .section-heading{align-items:center;margin-bottom:32px}.gallery-intro{max-width:365px}.gallery-intro>p{color:#bfb4ad;font-size:13px;line-height:1.8;margin-bottom:20px}.gallery-intro .button{padding:13px 20px;gap:30px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.gallery-item{position:relative;display:block;padding:0;border:1px solid #c8a97155;background:#292320;aspect-ratio:1;cursor:pointer;overflow:hidden}.gallery-item[hidden]{display:none}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.035)}.photo-enlarge{position:absolute;right:10px;bottom:10px;width:29px;height:29px;background:#151313bb;color:var(--cream);display:grid;place-items:center;font-size:18px;border-radius:50%}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:27px}.gallery-bottom p{color:#bfb4ad;font-size:10px;letter-spacing:.8px;margin:0}.gallery-more{background:none;border:0;border-bottom:1px solid var(--gold);color:var(--cream);font-size:12px;padding:8px 0;cursor:pointer}.gallery-more span{margin-left:25px}.gallery-dialog{padding:20px 25px 24px;border:1px solid #c8a97166;background:#151313;color:var(--cream);max-width:1000px;width:95vw;max-height:94dvh;overflow:auto;text-align:center}.gallery-dialog::backdrop{background:#000d}.viewer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.viewer-top p{font-size:12px;color:var(--gold);margin:0}.viewer-close,.viewer-prev,.viewer-next{color:var(--cream);background:transparent;border:1px solid #c8a97155;cursor:pointer;min-width:42px;min-height:42px}.viewer-close{font-size:19px}.viewer-content{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;align-items:center;justify-items:center}.viewer-image{display:block;max-width:100%;height:auto;max-height:65dvh;object-fit:contain}.viewer-prev,.viewer-next{font-size:35px}.viewer-caption{font-size:12px;color:#cbbdb2;margin:18px 0 13px}.viewer-book{font-size:12px;color:var(--pink);border-bottom:1px solid var(--gold);padding-bottom:5px}
@media(max-width:1000px){.gallery-grid{gap:12px}}
@media(max-width:680px){.work-gallery{padding:45px 5%}.work-gallery .section-heading{margin-bottom:25px}.gallery-intro{max-width:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gallery-item{border-radius:3px}.gallery-bottom{align-items:flex-start;gap:15px}.gallery-bottom p{font-size:9px;max-width:140px;line-height:1.8}.gallery-more{font-size:11px;white-space:nowrap}.gallery-dialog{padding:12px 10px 20px}.viewer-content{grid-template-columns:30px minmax(0,1fr) 30px;gap:5px}.viewer-prev,.viewer-next{min-width:30px;min-height:44px}.viewer-image{max-height:62dvh}.viewer-caption{font-size:11px;line-height:1.6}}

/* Keep content framed within the viewport at every screen width. */
.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.studio,.palette,.visit{grid-template-columns:repeat(2,minmax(0,1fr))}
.hero>*,.studio>*,.palette>*,.visit>*,.section-heading>*,.service-row>*{min-width:0}
h1,h2,h3,p,summary,.eyebrow,.logo-caption{overflow-wrap:anywhere}
.section-heading>div:first-child{flex:1}
.section-heading>p,.gallery-intro{flex:1;min-width:0}
.button{max-width:100%;white-space:normal}
.button span,summary:after{flex-shrink:0}
.hero-actions,.swatches{flex-wrap:wrap}
.ribbon{flex-wrap:wrap;white-space:normal;text-align:center;padding:20px 6%;gap:14px 30px}
.ribbon span{min-width:0;overflow-wrap:anywhere}
@media(min-width:681px) and (max-width:1000px){
 .header{flex-wrap:wrap}
 .header nav{flex-wrap:wrap}
 .studio,.palette,.visit{gap:32px}
 .studio h2{font-size:clamp(32px,4vw,40px)}
 .section-heading{gap:30px}
 .service-row{grid-template-columns:30px minmax(0,1fr) minmax(0,1.2fr) 115px}
}
@media(max-width:680px){
 .hero,.studio,.palette,.visit{grid-template-columns:minmax(0,1fr)}
 h1{font-size:clamp(46px,15.5vw,67px)}
 h2{font-size:clamp(30px,8.5vw,39px)}
 .header{flex-wrap:wrap}
 .brand{white-space:normal}
 .service-row{grid-template-columns:25px minmax(0,1fr) auto}
 .service-row h3{font-size:clamp(20px,6vw,25px)}
 .location{line-height:1.9}
 .text-link{white-space:normal;line-height:1.6}
 .ribbon{padding:15px 7%;gap:12px 18px}
 .ribbon span:last-child,.ribbon b:last-of-type{display:none}
 .gallery-bottom{flex-wrap:wrap}
 .logo-caption{line-height:1.8}
 .nails{gap:clamp(8px,4vw,18px)}
 .nail{width:clamp(40px,14vw,60px)}
 footer>a:last-child{margin-left:0}
}
