@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&family=Italianno&display=swap');
:root{--wine:#79072e;--ink:#633346;--rose:#c76c91;--pink:#fff0f5;--gold:#bf934f;--cream:#fff5f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff1f6;color:var(--ink);font:14px/1.8 'DM Sans',sans-serif}main{overflow:hidden}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #bb4275;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.03;color:var(--wine);margin:0}h1 em,h2 em,h3 em{font-weight:400}h1{font-size:clamp(58px,6vw,93px);letter-spacing:-3.2px}h2{font-size:clamp(48px,4.5vw,70px);letter-spacing:-2px}h3{font-size:32px;letter-spacing:-.5px}.eyebrow{color:#9b4768;letter-spacing:2.5px;font-size:9px;font-weight:500;line-height:1.8;margin:0 0 20px}.section{padding:70px 6%}.section-head{display:flex;justify-content:space-between;align-items:center;gap:35px;margin:0 0 35px}.section-head h2:after{content:'── ♡ ──';font:18px Georgia,serif;letter-spacing:6px;display:block;color:#bc8e51;margin-top:22px}.section-head>p,.section-head>div>p:not(.eyebrow){font-size:12px;max-width:260px}.text-link{display:inline-block;font-size:11px;border-bottom:1px solid #bc8e51;padding:5px 0;color:var(--wine)}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;border:1px solid #d3a96b;border-radius:50px;color:#fff7f5;background:linear-gradient(180deg,#aa2958,#7c0a32 72%,#680a2a);box-shadow:inset 0 2px 1px #ffe6ee55,0 6px 13px #93204b26;padding:15px 25px;font-size:12px;line-height:1.4;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:inset 0 2px 1px #fff5,0 9px 20px #93204b35}.button:after{content:'';position:absolute;top:-50%;bottom:-50%;width:35%;left:-60%;transform:skewX(-25deg);background:linear-gradient(90deg,transparent,#fff3,transparent);animation:shine 7s infinite ease-in-out;pointer-events:none}.button.small{padding:12px 24px;font-size:11px}.button span{color:#f1d3a0}.outline{background:transparent;color:var(--wine);border:1px solid var(--gold);border-radius:50px;padding:12px 20px;font-size:12px}
header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;height:100px;padding:15px 6%;background:linear-gradient(105deg,#ffedf3,#fff8f8,#fce1eb);border-bottom:1px solid #c69b5d;z-index:5}header:after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:1px;background:#e4c99f}.brand{display:flex;align-items:baseline;white-space:nowrap;color:var(--wine);gap:6px}.brand-main{font:42px/.9 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px}.brand small{font-size:14px;letter-spacing:0;font-style:italic}.brand-script{font:58px/.8 'Italianno',cursive}.brand-heart{font:25px Georgia;color:#bb8e52;margin-left:4px;align-self:center}nav{display:flex;align-items:center;gap:27px}nav a{font:15px Georgia,serif;color:#7c173b;position:relative}nav a:after{content:'';position:absolute;left:0;right:100%;height:1px;bottom:-5px;background:var(--gold);transition:right .3s}nav a:hover:after{right:0}
.hero{position:relative;isolation:isolate;min-height:650px;padding:100px 6% 120px;background:#ffe8f1 url('assets/pearl-satin.webp') center/cover no-repeat;display:flex;align-items:center}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fff7fb70,transparent 62%);z-index:-1}.hero-copy{position:relative;z-index:3;width:45%;padding-left:15px}.hero .eyebrow{font-size:8px;letter-spacing:2.4px;margin:0 0 30px}.hero h1 em{font-style:normal}.hero h1:after{content:'── ♡ ──';display:block;font:18px Georgia;color:#bb8b56;letter-spacing:7px;margin-top:23px}.intro{font-size:13px;line-height:1.8;margin:23px 0 25px;max-width:330px}.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.hero-profile-link{font-size:10px;border-bottom:1px solid #bf965a;padding:5px 0}.hero-art{position:absolute;right:2%;top:5px;bottom:5px;width:58%;translate:var(--pointer-x,0px) var(--pointer-y,0px);transition:translate .4s ease-out}.portrait-frame{position:absolute;left:1%;top:-10px;width:65%;height:100%;animation:portraitFloat 9s ease-in-out infinite}.portrait-frame:after,.floating-photo:after,.artist-medallion:after,.vision-medallion:after{content:'';position:absolute;inset:0;background:url('assets/pearl-frame.webp') center/100% 100% no-repeat;pointer-events:none;filter:drop-shadow(0 5px 5px #7b254422)}.portrait-frame>.portrait{position:absolute;inset:7% 8% 15%;width:84%;height:78%;object-fit:cover;object-position:50% 34%;border-radius:50%;border:1px solid #bd8b4e}.hero .floating-photo{position:absolute;width:37%;aspect-ratio:.88;right:-1%;padding:0;border:0;background:none;animation:detailFloat 8s infinite ease-in-out;--tilt:6deg;overflow:visible}.floating-photo img{position:absolute;inset:7% 8% 15%;width:84%;height:78%;object-fit:cover;border-radius:50%;border:1px solid #bc8e51}.hero .nails-photo{top:-5px;--tilt:8deg;animation-delay:-3s}.hero .lashes-photo{width:42%;bottom:35px;right:-1%;--tilt:-5deg}.floating-photo:hover{animation-play-state:paused;z-index:4}.art-note{position:absolute;bottom:0;right:9%;font:34px/.9 'Italianno',cursive;color:#8b2851;transform:rotate(-8deg);text-align:center;z-index:4;text-shadow:0 1px #fff}.ribbon{position:relative;margin:-18px -2% 0;transform:rotate(-1deg);width:104%;overflow:hidden;z-index:3;border-block:3px double #c79a5d;background:linear-gradient(110deg,#f7c9dc,#fff0f6,#f5bfd6);padding:16px 0;box-shadow:0 4px 8px #93345710}.ribbon>div{width:max-content;animation:marquee 30s linear infinite;font:10px Georgia;color:#9c315a;letter-spacing:5px}.ribbon i{font-style:normal;color:#b6884a;margin:0 36px}.ribbon:hover>div{animation-play-state:paused}
.services{display:grid;grid-template-columns:230px minmax(0,1fr);column-gap:30px;align-items:center;position:relative;background:linear-gradient(90deg,#fff4f991,#fff4f980),url('assets/pearl-satin.webp') center/cover;isolation:isolate;padding-top:75px;padding-bottom:65px}.services .section-head{display:block;grid-column:1;grid-row:1;margin:0;padding-left:8px}.services h2{font-size:62px;line-height:.97}.services h2 em{font-style:normal}.services .section-head>p{margin:24px 0 0;max-width:200px;font-size:11px}.slider-track{display:flex;position:relative;overflow:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y}.slider-track::-webkit-scrollbar{display:none}.service-grid{grid-column:2;grid-row:1;gap:22px;padding:16px 10px 26px;margin:0 -10px;scroll-padding-inline:10px;align-items:stretch}.service{flex:0 0 39%;scroll-snap-align:center;padding:7px;border:1px solid #b99055;border-radius:105px 105px 24px 24px;background:linear-gradient(145deg,#fff7fa,#fbe3ed);color:var(--ink);text-align:center;box-shadow:0 5px 8px #8f2d4c12;position:relative;transition:box-shadow .3s}.service:before{content:'';position:absolute;inset:4px;border:1px solid #e1be8b;border-radius:inherit;pointer-events:none;z-index:2}.service:hover{box-shadow:0 9px 20px #96335a28}.image-wrap{position:relative;height:270px;overflow:hidden;border-radius:100px 100px 0 0;border:1px solid #cfaa76}.image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service:hover .image-wrap img{transform:scale(1.06)}.image-label{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);background:#fff4f4e8;border:1px solid #caa36e;padding:3px 9px;font-size:7px;letter-spacing:1.5px;white-space:nowrap;border-radius:30px}.service-copy{padding:17px 13px 16px}.service-flourish{display:none}.service-copy h3{font-size:28px;line-height:1.05;min-height:60px;display:flex;justify-content:center;align-items:center}.service-copy h3 span{display:none}.service-copy p{font-size:10px;line-height:1.7;margin:10px 0 12px;min-height:34px}.service .text-link{font:12px Georgia;border:0}.slider-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.services .slider-toolbar{grid-column:2;grid-row:2;margin-top:3px;padding-top:8px;border-top:1px solid #d4b18180}.auto-toggle,.film-toggle{background:none;border:0;border-bottom:1px solid #c9a36a;color:#822747;font-size:10px;min-height:36px;padding:4px 0;letter-spacing:.5px}.slider-arrows,.gallery-controls{display:flex;gap:9px}.slider-arrows button,.gallery-controls button{width:40px;height:40px;border:1px solid #c39b64;border-radius:50%;background:linear-gradient(135deg,#fff7fa,#f8d5e5);color:#8c234a;font-size:20px;box-shadow:inset 0 0 0 3px #fff8f588;transition:transform .2s}.slider-arrows button:hover,.gallery-controls button:hover{transform:scale(1.08);background:#f4c5da}.slider-dots{display:flex;gap:4px}.slider-dots button{width:30px;height:30px;padding:0;background:none;border:0;position:relative}.slider-dots button:after{content:'';position:absolute;width:6px;height:6px;left:12px;top:12px;border:1px solid #b4884b;border-radius:50%}.slider-dots button[aria-current=true]:after{background:#b4884b;transform:scale(1.25)}
.work{position:relative;padding:65px 0 35px 6%;display:grid;grid-template-columns:220px minmax(0,1fr);gap:0 35px;background:linear-gradient(90deg,#fff2f7b3,#ffedf591),url('assets/pearl-satin.webp') center/cover;isolation:isolate}.work:before,.about:before,.contact:before{content:'';position:absolute;inset:0;pointer-events:none;border-top:1px solid #c6995e66;z-index:-1}.work .section-head{grid-column:1;grid-row:1;display:block;margin:0;align-self:center}.work h2{font-size:60px}.work .eyebrow{font-size:8px}.work .section-head>div>p:not(.eyebrow){font-size:11px;margin:23px 0;max-width:190px}.gallery-controls{margin-top:25px}.film{grid-column:2;grid-row:1;display:flex;gap:20px;align-items:center;overflow:auto;position:relative;padding:38px 25px 50px 15px;min-height:390px;scrollbar-width:none;scroll-snap-type:x mandatory;touch-action:pan-x pan-y}.film::-webkit-scrollbar{display:none}.film.continuous-film{scroll-snap-type:none}.film button{flex:0 0 260px;height:290px;border:1px solid #c1975e;background:linear-gradient(135deg,#fff9f6,#fbdde9);padding:6px 6px 26px;scroll-snap-align:center;box-shadow:0 9px 18px #7e1b4225;position:relative;transform:rotate(-5deg);transition:box-shadow .3s}.film button:nth-child(3n+2){transform:translateY(18px) rotate(5deg)}.film button:nth-child(3n){transform:rotate(-2deg)}.film button:after{content:'made with care ♡';position:absolute;bottom:0;left:0;right:0;text-align:center;font:23px 'Italianno',cursive;color:#a0496b}.film img{width:100%;height:100%;object-fit:cover;pointer-events:none;transition:transform .4s}.film button:hover{z-index:2;box-shadow:0 13px 23px #7e1b4233}.film button:hover img{transform:scale(1.025)}.film.dragging{cursor:grabbing;scroll-snap-type:none}.film-bottom{grid-column:2;grid-row:2;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:8px;padding-right:7%;letter-spacing:1px}.film-toggle{font-size:9px}
.vision{display:grid;grid-template-columns:260px minmax(0,1fr);position:relative;background:#ffeef5 url('assets/pearl-satin.webp') center/cover;isolation:isolate;padding-block:65px}.vision:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fff7fb9c,#fff4f844);z-index:-1}.vision .section-head{display:block;grid-row:1;grid-column:1;margin:0}.vision .section-head .eyebrow{font-size:8px;margin-bottom:15px}.vision .section-head h2{font-size:57px}.philosophy-tabs{grid-column:2;grid-row:1;display:flex;gap:25px;justify-content:flex-end;align-self:start;padding-top:13px}.philosophy-tabs button{background:none;border:0;border-bottom:1px solid transparent;color:#9e6480;padding:7px 0;font:21px Georgia;transition:color .3s}.philosophy-tabs button[aria-current=true]{color:var(--wine);border-color:#b68b4f}.vision-track{grid-column:1/-1;grid-row:2;gap:0;margin-top:10px}.vision-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;align-items:center;min-height:440px;padding:5px 0 35px}.vision-copy{grid-row:1;grid-column:1;position:relative;padding:25px 15px 20px 0;align-self:center}.vision-copy h3{font-size:43px;line-height:1.02;margin:14px 0 20px}.vision-copy>p:not(.vision-script){font:15px/1.7 'Cormorant Garamond',Georgia,serif;max-width:400px;color:#673b4b}.vision-number{font-size:8px;letter-spacing:2.5px;color:#a45274}.vision-script{font:39px/1 'Italianno',cursive;margin:21px 0 0;color:#a13360}.value-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.value-pills span{font-size:9px;border:1px solid #cfab78;padding:4px 10px;border-radius:25px;background:#fff7fabf}.vision-visual{grid-row:1;grid-column:2;height:430px;position:relative}.vision-medallion{position:absolute;right:-1%;top:-5%;height:110%;width:58%;z-index:1;animation:portraitFloat 11s -3s infinite ease-in-out}.vision-medallion>img{position:absolute;inset:7% 8% 15%;width:84%;height:78%;object-fit:cover;object-position:50% 35%;border-radius:50%;border:1px solid #c79a59}.vision-visual>span{position:absolute;right:0;bottom:0;z-index:3;font:29px 'Italianno',cursive;color:#8c3156;transform:rotate(-7deg);background:#fff1f6b3;padding:0 7px;border-radius:30px}.vision-still{position:absolute;left:0;top:3%;width:40%;height:83%;border:3px double #c29456;border-radius:50%;padding:4px;transform:rotate(6deg);background:#fff5f6}.vision-still img{width:100%;height:100%;object-fit:cover;border-radius:50%}.vision-charm{position:absolute;left:29%;top:24%;width:35%;height:66%;z-index:2;background:linear-gradient(140deg,#fff8f9,#f6d4e3);border:4px double #c59a5c;border-radius:50%;box-shadow:0 7px 16px #85234023;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-5deg);text-align:center}.vision-charm:before{content:'';position:absolute;inset:7px;border:1px solid #dfbf8f;border-radius:50%;pointer-events:none}.vision-charm>span{font:34px Georgia;color:#b48a4f;line-height:1}.vision-charm i{font:37px/.95 'Italianno',cursive;color:#9e416a;margin-top:12px}.vision .slider-toolbar{grid-column:1/-1;grid-row:3;border-top:1px solid #c9a57266;padding-top:12px}.slider-toolbar>p{font-size:8px;letter-spacing:2px}.slide-progress{display:block;width:150px;height:1px;background:#c9a57255;position:relative;overflow:hidden}.slide-progress:after{content:'';position:absolute;inset:0;background:#b67b9a;transform:scaleX(0);transform-origin:left}.slide-progress.running:after{animation:slideTime 6.5s linear forwards}.is-paused .slide-progress:after{animation-play-state:paused}
.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;position:relative;background:linear-gradient(90deg,#fff5f9b5,#fff5f9e6),url('assets/pearl-satin.webp') center/cover;padding-top:75px;padding-bottom:85px;isolation:isolate}.about-image{position:relative;max-width:480px;justify-self:center;width:100%;padding-bottom:40px}.artist-medallion{width:100%;aspect-ratio:.8;position:relative}.artist-medallion>img{position:absolute;inset:7% 8% 15%;width:84%;height:78%;object-fit:cover;object-position:50% 32%;border-radius:50%;border:1px solid #bd8b4e}.artist-detail{position:absolute;bottom:50px;width:31%;height:30%;border:3px double #c4945a;padding:3px;background:#fff7f9;box-shadow:0 6px 14px #73254724;z-index:2;animation:portraitFloat 9s infinite ease-in-out}.artist-nails{left:-2%;border-radius:60px 60px 6px 6px;rotate:-10deg}.artist-lashes{right:-2%;border-radius:50%;rotate:7deg;animation-delay:-4s}.artist-detail img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.about-image>span{position:absolute;bottom:0;left:0;right:0;font:39px 'Italianno',cursive;text-align:center;color:#96305c;z-index:3}.about-copy>p:not(.eyebrow){font-size:13px;max-width:480px}.about-copy>p:nth-of-type(2){font:22px/1.5 'Cormorant Garamond',Georgia,serif;color:#9d4268;margin-top:25px}.about h2{font-size:56px}.about h2 span{font-size:34px}.signature{font:65px 'Italianno',cursive;color:var(--wine);margin:15px 0 0;line-height:1.1}.about .text-link{font-size:10px}
.visit{background:linear-gradient(120deg,#fff5f9,#fbe1ec);display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;padding-block:60px;border-block:1px solid #d6b78977}.visit h2{font-size:48px}.visit-steps{display:flex;gap:25px}.visit-steps>div{flex:1;min-width:0}.visit-steps>div>span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:3px double #c7a06a;border-radius:50%;background:radial-gradient(circle at 33% 28%,#fff,#f7cadc);color:#a24269;font:16px Georgia;margin-bottom:20px}.visit h3{font-size:26px}.visit-steps p{font-size:10px;line-height:1.8}.policies{background:#fff3f8;padding-block:50px}.policies .section-head{margin-bottom:25px}.policies h2{font-size:42px}.policies .eyebrow{font-size:8px;margin-bottom:12px}.policy-layout{display:grid;grid-template-columns:1fr 1fr;gap:25px}.policy-card{padding:25px 30px;border:3px double #cba774;border-radius:25px;background:linear-gradient(140deg,#fff9fc,#fbe4ee);align-self:start}.policy-copy h3{font-size:32px}.policy-copy>p,.policy-copy li{font-size:11px}.policy-copy details{margin-top:18px;border-top:1px solid #d7b58a;padding-top:12px}.policy-copy summary{list-style:none;font-size:11px;color:#8f2450;cursor:pointer;padding-block:5px}.policy-copy summary::-webkit-details-marker{display:none}.policy-copy summary span{float:right}.policy-copy details[open] summary span{display:inline-block;transform:rotate(45deg)}.policy-copy li{margin-bottom:10px}.policy-copy ol,.policy-copy ul{padding-left:19px}.policy-note{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:25px}.policy-note>span{font:45px Georgia;color:#bc9354}.policy-note p{font:17px/1.5 'Cormorant Garamond',Georgia,serif}.policy-note strong{font-weight:500}
.contact{position:relative;isolation:isolate;display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:center;background:linear-gradient(90deg,#fff6faab,#fff4f888),url('assets/pearl-satin.webp') center/cover;padding-top:85px;padding-bottom:90px}.contact h2{font-size:64px}.contact>div>p:not(.eyebrow){font-size:13px;margin:22px 0}.contact-details{position:relative;display:grid;gap:24px;padding:140px 30px 35px;border:3px double #caa16b;border-radius:45% 45% 20px 20px;background:linear-gradient(130deg,#fff9fbd9,#fce5f0e6);margin-top:55px;box-shadow:0 9px 25px #7e29491a}.contact-cameo{position:absolute;top:-55px;left:10%;width:80%;height:175px;display:flex;justify-content:center;align-items:center}.contact-cameo img{width:51%;height:170px;object-fit:cover;border:3px double #c89a5b;border-radius:50%;box-shadow:0 4px 9px #85274720;rotate:-8deg}.contact-cameo img:nth-child(2){margin-left:-12%;margin-top:20px;rotate:8deg}.contact-details a{display:flex;gap:23px;align-items:center}.contact-details a>span{font:35px Georgia;color:#a64971}.contact-details small{display:block;font-size:8px;letter-spacing:2px;color:#a94c73;margin-bottom:5px}.contact-details strong{font-size:14px;font-weight:500;color:#7e173e}.contact-details p{font-size:11px;margin:0}.contact .button{margin-top:10px}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:33px 6%;background:linear-gradient(100deg,#ffedf4,#fff6fa);border-top:1px solid #c79c65}footer .brand-main{font-size:31px}footer .brand-script{font-size:43px}footer .brand-heart{font-size:20px}footer p,footer>a:last-child{font-size:10px}.mobile-book{display:none}.progress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#b65582,#e0bb7d,#f1b8d0);z-index:20}
.reveal{opacity:1;transform:none}.motion .reveal{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .9s}.motion .reveal.visible{opacity:1;transform:none}dialog{border:1px solid #c99b60;border-radius:20px;background:linear-gradient(130deg,#fff7fa,#fbe4ee);color:var(--ink);padding:0;width:min(560px,92vw);max-height:90dvh;overflow:auto;box-shadow:0 30px 100px #400a2255}dialog::backdrop{background:#330b1fba;backdrop-filter:blur(7px)}dialog[open]{animation:appear .25s ease-out}.close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid #cba971;background:#fff4f7;color:var(--wine);font-size:25px;border-radius:50%;z-index:3;box-shadow:0 3px 9px #6c163b22}.dialog-copy{padding:35px}.dialog-copy h2{font-size:49px}.dialog-copy p{font-size:12px}#service-dialog>img{width:100%;height:250px;object-fit:cover}#photo-dialog{width:min(760px,94vw);background:#fff1f6}#large-photo{width:100%;max-height:75dvh;object-fit:contain}#photo-dialog p{text-align:center;font-size:10px}.muted{font-size:10px!important;opacity:.75}form{display:grid;gap:14px;margin-top:25px}label{display:grid;gap:6px;font-size:11px;color:#882c51}label small{display:inline}input,select,textarea{font:inherit;font-size:14px;width:100%;min-height:44px;padding:12px;border:1px solid #d5b48a;border-radius:7px;background:#fffafd;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid #b45f83;outline-offset:1px}textarea{min-height:80px;resize:vertical}.booking-policy-note{font-size:10px!important;line-height:1.6;color:#8f687b}.booking-policy-note a{text-decoration:underline;color:var(--wine)}#message{min-height:175px;font-size:13px}.send-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}body.modal-open{overflow:hidden}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes portraitFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes detailFloat{0%,100%{transform:translateY(0) rotate(var(--tilt))}50%{transform:translateY(-9px) rotate(calc(var(--tilt) - 2deg))}}@keyframes shine{0%,65%{left:-60%}85%,100%{left:140%}}@keyframes slideTime{to{transform:scaleX(1)}}@keyframes appear{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(min-width:1600px){header,.section,footer{padding-inline:max(6%,calc((100vw - 1400px)/2))}.hero{padding-left:max(6%,calc((100vw - 1400px)/2));min-height:750px}.hero-art{width:850px;right:max(2%,calc((100vw - 1550px)/2))}.hero h1{font-size:96px}.work{padding-left:max(6%,calc((100vw - 1400px)/2))}.service{flex-basis:38%}.image-wrap{height:320px}}
@media(min-width:701px) and (max-width:1100px){header{gap:16px;padding-inline:4%;height:88px}.brand-main{font-size:32px}.brand-script{font-size:47px}.brand-heart{font-size:20px}nav{gap:18px}nav a{font-size:12px}.button.small{padding:10px 16px;font-size:10px}.hero{min-height:600px;padding:70px 5% 100px}.hero h1{font-size:65px}.hero .eyebrow{font-size:7px}.hero-copy{width:46%;padding-left:0}.hero-art{width:59%;right:0}.hero .button{font-size:11px;padding:14px 20px}.hero-profile-link{font-size:9px}.hero-actions{gap:15px}.intro{font-size:12px}.portrait-frame{top:20px;height:92%;width:68%}.hero .lashes-photo{bottom:45px}.art-note{font-size:28px;right:5%;bottom:15px}.services{grid-template-columns:180px minmax(0,1fr);gap:20px}.services h2{font-size:54px}.service{flex-basis:47%}.service-copy h3{font-size:26px}.image-wrap{height:245px}.work{grid-template-columns:180px minmax(0,1fr);gap:20px}.work h2{font-size:54px}.vision{grid-template-columns:210px minmax(0,1fr)}.vision .section-head h2{font-size:50px}.philosophy-tabs{gap:20px}.philosophy-tabs button{font-size:18px}.vision-slide{grid-template-columns:.85fr 1.15fr;gap:5px}.vision-visual{height:380px}.vision-charm i{font-size:30px}.vision-copy h3{font-size:38px}.vision-copy>p:not(.vision-script){font-size:14px}.about{gap:6%}.about h2{font-size:48px}.about-copy>p:not(.eyebrow){font-size:12px}.about-image>span{font-size:33px}.visit{grid-template-columns:1fr;gap:30px}.visit-heading{text-align:center}.visit-heading h2 br{display:none}.visit-steps{gap:35px}.contact h2{font-size:52px}.contact-details{padding-inline:22px}.contact-cameo img{height:140px}.contact-cameo{top:-35px}.contact-details strong{font-size:12px}}
@media(max-width:700px){html{scroll-padding-top:20px}body{font-size:13px}header{height:auto;min-height:115px;padding:20px 6% 15px;flex-wrap:wrap;justify-content:center;gap:19px}header .brand-main{font-size:34px}header .brand-script{font-size:49px}header .brand-heart{font-size:22px}header>.button{display:none}nav{width:100%;justify-content:center;gap:21px}nav a{font-size:11px}.section{padding:50px 7%}h2{font-size:47px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:16px}.section-head{display:block;margin-bottom:24px}.section-head h2:after{font-size:15px;letter-spacing:5px;margin-top:18px}.section-head>p{font-size:11px;margin:20px 0 0}.hero{display:block;min-height:0;padding:45px 7% 0;background-size:auto 100%;background-position:55% center}.hero:before{background:linear-gradient(180deg,#fff4f899,transparent 70%)}.hero-copy{width:100%;padding:0;max-width:500px;margin:auto}.hero .eyebrow{font-size:7px;letter-spacing:1.8px;margin:0 0 22px}.hero h1{font-size:clamp(48px,12.7vw,73px);letter-spacing:-1.8px}.hero h1:after{font-size:14px;margin-top:18px}.intro{font-size:12px;margin:19px 0 22px}.hero-actions{gap:16px}.hero .button{padding:14px 21px;font-size:11px;gap:20px}.hero-profile-link{font-size:9px}.hero-art{position:relative;top:auto;bottom:auto;right:auto;width:118%;height:470px;margin:18px 0 0 -9%;translate:none!important}.portrait-frame{left:0;top:0;width:72%;height:100%}.portrait-frame>.portrait{object-position:50% 33%}.hero .nails-photo{width:38%;right:-1%;top:0}.hero .lashes-photo{width:42%;right:-2%;bottom:38px}.art-note{right:9%;font-size:27px;bottom:10px}.ribbon{margin-top:-4px;padding:12px 0}.ribbon>div{font-size:8px;letter-spacing:3px}.ribbon i{margin:0 26px}.services{display:block;background-size:auto 100%;padding:50px 7% 40px}.services .section-head{padding:0;display:flex;align-items:flex-end;gap:20px}.services h2{font-size:46px}.services .section-head .eyebrow{font-size:7px;margin-bottom:14px}.services .section-head>p{font-size:10px;max-width:140px;margin:0 0 6px}.service-grid{margin:16px -8.1% 0;padding:10px 7% 25px;gap:17px;scroll-padding-inline:7%}.service{flex-basis:76%;border-radius:120px 120px 23px 23px}.image-wrap{height:275px;border-radius:115px 115px 0 0}.service-copy{padding:18px 16px}.service-copy h3{font-size:31px;min-height:34px}.service-copy p{font-size:11px;min-height:36px}.image-label{font-size:7px}.services .slider-toolbar{padding-top:15px}.slider-toolbar{gap:15px}.slider-arrows button,.gallery-controls button{width:37px;height:37px;font-size:18px}.work{padding:50px 0 25px;display:block;background-size:auto 100%}.work .section-head{padding:0 7%;display:flex;align-items:center;justify-content:space-between;gap:20px}.work h2{font-size:47px}.work .section-head>div>p:not(.eyebrow){font-size:10px;margin:0;max-width:155px}.work .eyebrow{font-size:7px}.gallery-controls{margin-top:15px;justify-content:flex-end}.film{padding:30px 7% 45px;min-height:335px;gap:18px}.film button{flex-basis:220px;height:250px;padding-bottom:24px}.film button:after{font-size:22px}.film-bottom{padding:0 7%;gap:12px;letter-spacing:.4px;font-size:7px}.film-bottom>span:last-child{display:none}.film-toggle{font-size:8px}.vision{display:block;padding:50px 7% 40px;background-size:auto 100%;background-position:center}.vision .section-head h2{font-size:47px}.vision .section-head .eyebrow{font-size:7px}.philosophy-tabs{justify-content:flex-start;gap:25px;margin-top:25px;padding:0;border-bottom:1px solid #c9a46e66}.philosophy-tabs button{font-size:18px;padding-bottom:10px}.vision-track{margin-top:10px}.vision-slide{display:flex;flex-direction:column;min-height:0;gap:0;padding:0 0 25px;align-items:stretch}.vision-copy{order:1;padding:18px 0 15px}.vision-copy h3{font-size:40px;line-height:1.05;margin:13px 0 18px}.vision-copy>p:not(.vision-script){font-size:16px;max-width:100%;line-height:1.7}.vision-number{font-size:7px;letter-spacing:2px}.vision-script{font-size:34px;margin-top:19px}.vision-visual{order:2;width:100%;height:310px;margin:12px 0 0}.vision-medallion{height:110%;width:60%;top:-2%;right:-2%}.vision-still{height:85%;width:41%;top:5%;left:-1%}.vision-charm{width:35%;height:64%;left:28%;top:26%}.vision-charm i{font-size:29px}.vision-charm>span{font-size:24px}.vision-visual>span{font-size:24px;bottom:-4px;right:0}.vision .slider-toolbar{padding-top:15px;margin-top:10px;gap:12px}.slide-progress{width:60px}.vision .slider-arrows{gap:7px}.about{grid-template-columns:1fr;padding-top:55px;padding-bottom:50px;gap:25px}.about-image{max-width:360px;padding-bottom:34px}.artist-medallion{max-height:460px}.about-image>span{font-size:32px}.artist-detail{bottom:43px}.about h2{font-size:48px}.about-copy>p:not(.eyebrow){font-size:12px}.about-copy>p:nth-of-type(2){font:21px/1.4 'Cormorant Garamond',Georgia,serif;margin-top:23px}.signature{font-size:57px}.visit{grid-template-columns:1fr;gap:27px;padding-block:45px}.visit-heading{text-align:center}.visit h2{font-size:43px}.visit-heading .eyebrow{font-size:7px}.visit-steps{flex-direction:column;gap:22px}.visit-steps>div{display:grid;grid-template-columns:42px 1fr;gap:0 18px}.visit-steps>div>span{grid-row:1/3;align-self:center;margin:0}.visit h3{font-size:28px}.visit-steps p{font-size:11px;margin:7px 0 0}.policies{padding-block:45px}.policies .section-head>p{margin-top:18px;font-size:11px}.policies h2{font-size:40px}.policy-layout{grid-template-columns:1fr;gap:20px}.policy-card{padding:23px}.policy-copy h3{font-size:30px}.policy-copy>p,.policy-copy li{font-size:11px}.policy-note{gap:14px;margin-top:25px}.policy-note>span{font-size:34px}.policy-note p{font-size:14px}.contact{grid-template-columns:1fr;gap:55px;padding-top:55px;padding-bottom:50px;background-size:auto 100%}.contact h2{font-size:47px}.contact>div>p:not(.eyebrow){font-size:12px}.contact .button{font-size:11px}.contact-details{margin-top:12px;max-width:400px;width:100%;justify-self:center;padding:145px 25px 28px}.contact-cameo{top:-50px;height:175px}.contact-cameo img{height:160px}.contact-details strong{font-size:13px}.contact-details a{gap:20px}footer{padding:28px 7% 105px;flex-wrap:wrap;gap:20px}footer .brand-main{font-size:29px}footer .brand-script{font-size:39px}footer .brand-heart{font-size:18px}footer p{font-size:9px;margin:0}footer>a:last-child{width:100%;text-align:center;font-size:9px}.mobile-book{display:flex;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:7%;width:86%;padding:15px;font-size:11px;z-index:6;box-shadow:0 7px 25px #73183b33}.dialog-copy{padding:33px 24px}.dialog-copy h2{font-size:43px}.dialog-copy .button{font-size:11px;gap:18px}dialog{max-height:88dvh}.send-actions{gap:8px}.outline{font-size:11px}}
@media(max-width:360px){nav{gap:16px}nav a{font-size:10px}.hero h1{font-size:45px}.hero-art{height:420px}.hero-profile-link{font-size:8px}.hero .button{padding-inline:17px;font-size:10px}.services h2{font-size:42px}.services .section-head>p{max-width:125px;font-size:9px}.image-wrap{height:245px}.service-copy h3{font-size:28px}.vision-visual{height:270px}.philosophy-tabs{gap:20px}.philosophy-tabs button{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}.hero-art{translate:none!important}}

/* The original portrait stays intact; its viewport provides the closer crop. */
.portrait-window{position:absolute;inset:7% 8% 15%;border-radius:50%;overflow:hidden;border:1px solid #bd8b4e}.portrait-frame .portrait-window>.portrait{position:static;width:100%;height:100%;border:0;border-radius:0;object-fit:cover;object-position:50% 24%;transform:scale(1.27)}.art-note{bottom:32px;right:1%;font-size:29px;padding:3px 9px;border-radius:50%;background:#fff1f7a6}@media(max-width:700px){.art-note{font-size:23px;bottom:28px;right:2%}.portrait-frame .portrait-window>.portrait{object-position:50% 27%;transform:scale(1.22)}}

/* One pink canvas; decoration dissolves into the next section. */
body,main{background:#fff0f5}
header,footer{background:#fff0f5;border:0}
header:after{display:none}
.hero,.services,.work,.vision,.about,.contact{background:transparent;isolation:isolate}
.hero:before,.services:before,.work:before,.vision:before,.about:before,.contact:before{content:'';display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;border:0;background:linear-gradient(90deg,#fff5f86b,#fff4f850),url('assets/pearl-satin.webp') center/cover no-repeat;mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%)}
.services{position:relative}
.visit,.policies{background:transparent;border:0}
.ribbon{background:transparent;border:0;box-shadow:none;transform:none;margin:-18px 0 0;width:100%;padding-block:20px}
.services .slider-toolbar,.vision .slider-toolbar{border-top:0}
@media(max-width:700px){.hero:before,.services:before,.work:before,.vision:before,.about:before,.contact:before{background-size:auto 100%;background-position:55% center;mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%)}.ribbon{margin-top:-6px}}

/* Individual compositions on the same uninterrupted blush canvas. */
.services:before{transform:scaleX(-1);opacity:.78;background-position:35% center}
.work:before{transform:scaleY(-1);opacity:.4;background-size:120% 100%;background-position:20% center}
.vision:before{transform:scaleX(-1);background-position:80% center;background-size:120% 100%;opacity:.8}
.about:before{background-position:90% center;background-size:145% 100%;opacity:.5}
.contact:before{transform:scaleX(-1);background-position:60% center;opacity:.8}
.hero-art{width:60%;right:1%}.portrait-frame{width:68%;height:104%;top:-12px;left:0;z-index:2}.portrait-frame .portrait-window>.portrait{transform:scale(1.43);object-position:50% 24%}.hero .nails-photo{width:36%;right:0;top:12px;z-index:3}.hero .lashes-photo{width:40%;right:-1%;bottom:25px;z-index:3}.art-note{z-index:4}
.intro{font-size:14px}.section-head>p,.section-head>div>p:not(.eyebrow){font-size:13px;color:#6c2c45}.services .section-head>p,.work .section-head>div>p:not(.eyebrow){font-size:12px}.service-copy p{font-size:12px;min-height:43px;color:#663047}.service-copy h3{font-size:30px}.service .text-link{font-size:13px}.about-copy>p:not(.eyebrow){font-size:14px;color:#643046}.vision-copy>p:not(.vision-script){font-size:18px;line-height:1.65;color:#613044}.visit-steps p,.policy-copy>p,.policy-copy li{font-size:12px;color:#633047}.policy-copy summary{font-size:12px}.contact>div>p:not(.eyebrow){font-size:14px}
/* Gold catches a soft travelling highlight; pearl glints are deliberately sparse. */
.portrait-frame:after,.floating-photo:after,.artist-medallion:after,.vision-medallion:after{animation:goldLight 10s ease-in-out infinite}.floating-photo:nth-of-type(2):after{animation-delay:-4s}
.portrait-frame:before,.artist-medallion:before,.vision-medallion:before{content:'✧';position:absolute;right:14%;bottom:24%;z-index:4;font:27px Georgia;color:#fffdf2;text-shadow:0 0 5px #fff,0 0 13px #dfbf7f;pointer-events:none;animation:pearlGlint 8s ease-in-out infinite}.artist-medallion:before{right:auto;left:11%;bottom:28%;animation-delay:-3s}.vision-medallion:before{right:15%;bottom:22%;animation-delay:-5s}
.service:after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(113deg,transparent 38%,#fff9df00 43%,#fff9df66 49%,#fff9df00 55%,transparent 60%) -400px 0/400px 100% no-repeat;animation:frameSweep 12s ease-in-out infinite;z-index:3}.service:nth-child(2):after{animation-delay:-4s}.service:nth-child(3):after{animation-delay:-8s}
/* A circular, overlapping photographic fan, with its middle photo in front. */
.work{display:block;padding:70px 0 35px}.work .section-head{display:flex;align-items:center;justify-content:space-between;max-width:1500px;margin:0 auto 15px;padding:0 6%;gap:35px}.work .section-head>div:last-child{display:flex;align-items:center;gap:30px}.work .section-head>div>p:not(.eyebrow){max-width:260px;margin:0}.work .gallery-controls{margin:0}.work .film{display:flex;gap:8px;align-items:center;min-height:440px;padding:45px calc(50% - 140px) 65px;scroll-snap-type:none;overflow-x:auto;overflow-y:hidden;cursor:grab;scroll-padding:0}.work .film button{flex:0 0 280px;height:330px;margin:0 -25px;padding:7px 7px 29px;transform:translateY(var(--fan-lift,0px)) rotate(var(--fan-angle,0deg)) scale(var(--fan-scale,1))!important;transform-origin:50% 80%;border:1px solid #c49a61;box-shadow:0 10px 24px #81234822;transition:box-shadow .3s;will-change:transform;outline-offset:5px}.work .film button.is-featured{box-shadow:0 18px 32px #81234832;border-color:#ac7d3e}.work .film button:hover,.work .film button:focus-visible{z-index:70!important;box-shadow:0 20px 38px #8123483b}.work .film button img{transition:transform .5s;transform:scale(1)}.work .film button:hover img{transform:scale(1.04)}.work .film button:after{font-size:25px}.work .film-bottom{padding:0 6%;max-width:1500px;margin:auto}.gallery-help{text-align:center;font-size:11px;letter-spacing:.5px;color:#874360;margin:-10px 7% 15px;position:relative;z-index:3}.vision-medallion>img{object-position:center}.vision-still{rotate:-7deg}.vision-charm{rotate:4deg}.vision-visual>span{font-size:31px}
@keyframes goldLight{0%,70%,100%{filter:drop-shadow(0 5px 5px #7b254422) brightness(1)}80%{filter:drop-shadow(0 4px 8px #e1be8066) brightness(1.16)}87%{filter:drop-shadow(0 5px 5px #7b254422) brightness(1)}}
@keyframes pearlGlint{0%,64%,80%,100%{opacity:0;scale:.3;rotate:0deg}70%{opacity:.95;scale:1;rotate:25deg}75%{opacity:.5;scale:.7;rotate:55deg}}
@keyframes frameSweep{0%,65%{background-position:-400px 0}85%,100%{background-position:600px 0}}
@media(min-width:1600px){.hero-art{width:920px;right:max(1%,calc((100vw - 1550px)/2))}.work .section-head,.work .film-bottom{padding-inline:max(6%,calc((100vw - 1400px)/2))}}
@media(min-width:701px) and (max-width:1100px){.hero-art{width:59%;right:0}.portrait-frame{top:10px;width:70%;height:98%}.hero .nails-photo{width:34%;top:24px}.hero .lashes-photo{width:38%;bottom:35px}.hero h1{font-size:63px}.work .section-head>div:last-child{gap:20px}.work .section-head>div>p:not(.eyebrow){max-width:230px}.vision-copy>p:not(.vision-script){font-size:17px}.service-copy h3{font-size:28px}}
@media(max-width:700px){.hero-art{width:118%;right:auto;height:470px}.portrait-frame{width:74%;left:-1%;height:101%;top:0}.portrait-frame .portrait-window>.portrait{transform:scale(1.36);object-position:50% 25%}.hero .nails-photo{width:37%;right:0;top:0}.hero .lashes-photo{width:40%;right:-1%;bottom:35px}.hero .art-note{bottom:20px}.intro{font-size:14px;line-height:1.7}.hero-profile-link{font-size:10px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.services .section-head>p{font-size:12px;max-width:160px}.service-copy h3{font-size:31px}.service-copy p{font-size:13px;line-height:1.6;min-height:42px}.service .text-link{font-size:13px}.service-copy{padding:18px 15px 20px}.work{padding-top:50px}.work .section-head{display:block;padding:0 7%;margin-bottom:10px}.work .section-head>div:last-child{display:flex;justify-content:space-between;gap:20px;margin-top:22px}.work .section-head>div>p:not(.eyebrow){font-size:12px;max-width:210px}.work .film{padding:40px calc(50% - 115px) 55px;min-height:365px;gap:7px}.work .film button{flex-basis:230px;height:270px;margin:0 -20px;padding:6px 6px 26px}.work .film button:after{font-size:23px}.work .film-bottom{padding:0 7%;font-size:9px}.film-toggle{font-size:10px}.gallery-help{font-size:11px;margin-bottom:17px;letter-spacing:0}.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.8}.about-copy>p:nth-of-type(2){font-size:23px}.vision-copy>p:not(.vision-script){font-size:18px;line-height:1.65}.vision-visual>span{font-size:25px}.visit-steps p,.policy-copy>p,.policy-copy li{font-size:13px}.policy-copy summary{font-size:13px;line-height:1.6;min-height:36px}.contact>div>p:not(.eyebrow){font-size:14px}.philosophy-tabs button{font-size:18px}.section-head>p{font-size:12px}.services:before{background-position:30% center}.vision:before{background-position:80% center}.about:before{background-position:90% center}.work:before{background-size:120% 100%}}
@media(max-width:360px){.hero-art{height:425px}.services .section-head>p{font-size:11px;max-width:135px}.hero-profile-link{font-size:9px}.hero .eyebrow{font-size:7px}.work .section-head>div>p:not(.eyebrow){max-width:180px}.philosophy-tabs button{font-size:16px}}
@media(prefers-reduced-motion:reduce){.portrait-frame:after,.floating-photo:after,.artist-medallion:after,.vision-medallion:after,.service:after,.portrait-frame:before,.artist-medallion:before,.vision-medallion:before{animation:none!important}.portrait-frame:before,.artist-medallion:before,.vision-medallion:before{display:none}.work .film button{will-change:auto}}

/* Light travelling through satin, with scattered jewellery-like glints. */
.sparkle-field{position:absolute;inset:0;overflow:hidden;z-index:4;pointer-events:none;isolation:isolate}
.sparkle-field:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 40%,#fff5e866,transparent 48%);mix-blend-mode:soft-light;opacity:.4;animation:satinGlow 12s ease-in-out infinite;pointer-events:none}
.glitter-star{position:absolute;left:var(--glitter-x);top:var(--glitter-y);width:var(--glitter-size);height:var(--glitter-size);opacity:0;filter:drop-shadow(0 0 4px #fff8da);animation:diamondTwinkle var(--glitter-time) var(--glitter-delay) ease-in-out infinite;will-change:transform,opacity}
.glitter-star:before,.glitter-star:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#fffefa,#fff1d1);clip-path:polygon(50% 0,59% 39%,100% 50%,59% 60%,50% 100%,40% 60%,0 50%,40% 40%)}
.glitter-star:after{inset:28%;rotate:45deg;background:#fff;filter:blur(.3px)}
.touch-glitter{position:fixed;inset:0;pointer-events:none;z-index:50;overflow:hidden}.glitter-burst{position:absolute;width:1px;height:1px;pointer-events:none}.glitter-burst i{position:absolute;width:12px;height:12px;left:-6px;top:-6px;background:linear-gradient(135deg,#fff8df,#d2a267);clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);filter:drop-shadow(0 0 3px #fff);animation:touchSparkle 1s ease-out forwards}
.portrait-frame:after,.floating-photo:after,.artist-medallion:after,.vision-medallion:after{animation:goldLight 7s ease-in-out infinite}.hero .nails-photo:after{animation-delay:-2s}.hero .lashes-photo:after{animation-delay:-4s}
.hero .portrait-frame:before{font-size:36px;animation:pearlGlint 5.5s -2s ease-in-out infinite}.vision-medallion:before{font-size:32px;animation-duration:6.5s}.service:after{animation-duration:8s}
.hero .art-note{animation:noteBreathe 7s ease-in-out infinite}
.effects-asleep .glitter-star,.effects-asleep .sparkle-field:before{animation-play-state:paused}
@keyframes diamondTwinkle{0%,24%,100%{opacity:0;transform:translateY(3px) rotate(-15deg) scale(.25)}42%{opacity:.85;transform:translateY(-2px) rotate(15deg) scale(1)}57%{opacity:.25;transform:translateY(-5px) rotate(40deg) scale(.55)}70%{opacity:0;transform:translateY(-8px) rotate(60deg) scale(.15)}}
@keyframes satinGlow{0%,100%{opacity:.2;transform:translateX(-18%) scale(.9)}50%{opacity:.65;transform:translateX(15%) scale(1.15)}}
@keyframes touchSparkle{0%{opacity:0;transform:translate(0,0) rotate(0deg) scale(.15)}18%{opacity:.95}100%{opacity:0;transform:translate(var(--burst-x),var(--burst-y)) rotate(var(--burst-turn)) scale(.35)}}
@keyframes noteBreathe{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-6px) rotate(-5deg)}}
@media(max-width:700px){.glitter-star{width:calc(var(--glitter-size)*.8);height:calc(var(--glitter-size)*.8)}.glitter-star:nth-child(n+9){display:none}.hero .portrait-frame:before{font-size:28px}}
@media(prefers-reduced-motion:reduce){.sparkle-field,.touch-glitter{display:none!important}.hero .art-note{animation:none!important}.portrait-frame:after,.floating-photo:after,.artist-medallion:after,.vision-medallion:after,.service:after{animation:none!important}}

.glitter-star{filter:drop-shadow(0 0 3px #fff8da) drop-shadow(0 0 1px #b98b4f)}.glitter-star:before{background:linear-gradient(135deg,#fff 20%,#ffe8ae 55%,#fffdf4 85%)}
