:root{--cream:#f8f5ef;--paper:#fffdf9;--ink:#332d29;--muted:#6a605b;--rose:#e5d5cf;--mauve:#815f5d;--gold:#bf9456;--border:#dcd0c5;--heading:'Unna',Georgia,serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.65 var(--body)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--mauve);outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:400;line-height:1.03}h2{font-size:clamp(42px,4.6vw,72px);letter-spacing:-.035em}h3{font-size:32px;letter-spacing:-.02em}em{font-weight:400}p{color:var(--muted)}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:20px;z-index:999}.topline{padding:9px 4.5%;background:#ece4da;font-size:13px;display:flex;justify-content:space-between;letter-spacing:.01em}.header{position:sticky;top:0;background:var(--paper);z-index:50;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:21px 4.5%;border-bottom:1px solid var(--border)}.brand{width:243px;flex-shrink:0}.brand img{object-fit:contain;height:59px}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}.desktop-nav>a,.menu-trigger{padding:10px 0}.desktop-nav>a:hover,.menu-trigger:hover{color:var(--mauve)}.menu-trigger{border:0;background:none;display:flex;align-items:center;gap:10px;color:var(--ink)}.chevron{width:7px;height:7px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);transition:transform .25s}.menu-trigger[aria-expanded=true] .chevron{transform:rotate(225deg)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--mauve);color:white;padding:17px 24px;border:1px solid transparent;font-size:15px;font-weight:500;transition:background .25s,transform .25s;min-height:52px}.button:hover{background:#624744;transform:translateY(-2px)}.button span,.text-link span{transition:transform .25s}.button:hover span,.text-link:hover span{transform:translateX(4px)}.button.small{padding:13px 19px}.button.light{background:var(--paper);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:15px;font-weight:500;border-bottom:1px solid #aa8e80;padding:7px 0}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.15em;font-weight:600;line-height:1.5}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px}.hero-copy{padding:66px 8.5% 52px 9%;position:relative}.hero-copy h1{font-size:clamp(62px,6.65vw,106px);letter-spacing:-.05em;margin:25px 0 25px}.hero-line{display:block}.hero-copy h1 em{color:var(--mauve)}.hero-copy p{max-width:430px;font-size:18px;line-height:1.7}.little-flower{font-size:20px;color:var(--mauve);vertical-align:middle;margin-right:7px}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:30px;flex-wrap:wrap}.hero-note{display:flex;align-items:center;gap:13px;margin-top:40px;font-size:13px;color:var(--muted)}.fine-line{width:35px;height:1px;background:var(--gold)}.hero-photo{position:relative;overflow:hidden;min-height:650px;background:var(--rose)}.hero-photo>img{height:100%;position:absolute;inset:0;object-position:center}.hero-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(35,28,25,.45));pointer-events:none}.photo-caption{position:absolute;bottom:46px;left:40px;z-index:1;color:white;display:flex;flex-direction:column;gap:12px}.photo-caption span{font-size:11px;letter-spacing:.2em}.photo-caption em{font:italic 31px var(--heading)}.hero-round{position:absolute;right:36px;bottom:46px;border:1px solid #fff8;color:white;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;z-index:2}.values{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:27px 7%;border-bottom:1px solid var(--border);font-size:14px}.values i{font-style:normal;color:#a98b7e;font-size:22px}.mega{position:absolute;top:100%;left:4.5%;right:4.5%;background:var(--paper);padding:38px;display:grid;grid-template-columns:1fr 1.6fr;gap:45px;border:1px solid var(--border);box-shadow:0 24px 40px #332d2912}.mega-intro{background:#ece1d9;padding:32px}.mega h2{font-size:39px;margin:16px 0 25px}.mega-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 32px;align-content:center}.mega-links a{padding:9px 0;border-bottom:1px solid var(--border);font-size:17px}.mega-links span{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:3px}.menu-dim{position:fixed;inset:0;z-index:40;background:#211b1866;backdrop-filter:blur(3px)}.hamburger{display:none;background:none;border:0;width:44px;height:44px;padding:9px}.hamburger span{display:block;height:1px;background:var(--ink);margin:7px 0;transition:transform .2s}.mobile-nav{display:none}
@media(min-width:1650px){.hero-copy{padding-left:max(9%,calc((100vw - 1550px)/2))}.hero{min-height:780px}}@media(max-width:1150px){.desktop-nav{gap:17px}.brand{width:200px}.header{gap:20px}.header-cta{font-size:14px;gap:10px}.hero-copy{padding-top:50px}.hero-actions{gap:16px}.hero{min-height:650px}}@media(max-width:950px){.desktop-nav{display:none}.hamburger{display:block}.header-cta{margin-left:auto}.header{padding:15px 5%}.mobile-nav{display:flex;flex-direction:column;position:fixed;top:104px;left:0;right:0;bottom:0;overflow:auto;background:var(--paper);z-index:49;padding:25px 6% 40px;gap:0}.mobile-nav>a,.mobile-nav summary{font-size:23px;padding:14px 0;border-bottom:1px solid var(--border)}.mobile-nav details a{display:block;padding:9px 15px;font-size:16px}.mobile-nav .button{margin-top:25px;font-size:16px;padding:16px}.hero{min-height:610px}.hero-copy{padding:40px 8%}.hero-copy h1{font-size:68px}.hero-photo{min-height:610px}.photo-caption{left:25px;right:25px;bottom:28px}.photo-caption em{font-size:26px}.hero-round{display:none}.values{padding:23px 5%;gap:15px;font-size:13px}.topline span{display:none}.hamburger[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.hamburger[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}}@media(max-width:650px){html{scroll-padding-top:88px}.topline{justify-content:center;font-size:12px;padding:7px 4%}.header{padding:12px 5%;gap:10px}.brand{width:175px}.brand img{height:45px}.header-cta{font-size:12px;padding:9px 12px!important;min-height:42px;gap:8px}.header-cta span{display:none}.hamburger{width:36px;padding:6px}.hero{display:flex;flex-direction:column}.hero-copy{padding:38px 6% 34px}.hero-copy h1{font-size:clamp(58px,14vw,82px);margin:20px 0}.hero-copy p{font-size:16px;max-width:370px}.hero-line{display:inline}.hero-line:last-child{display:block}.hero-line:first-child:after{content:' '}.eyebrow{font-size:11px}.hero-actions{gap:20px;margin-top:24px}.hero-actions .button{font-size:14px;padding:15px 19px;gap:15px}.hero-note{display:none}.hero-photo{min-height:350px;height:350px}.photo-caption{bottom:26px}.photo-caption em{font-size:28px}.values{justify-content:center;flex-wrap:wrap;gap:5px 15px;padding:21px 6%;font-size:13px}.values i{font-size:15px}.values span:last-child{width:100%;text-align:center}.values i:nth-of-type(2){display:none}.mobile-nav{top:101px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.section{padding:110px 5.5%;max-width:1760px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:45px}.section-heading h2{margin-top:20px}.section-heading-aside{max-width:390px;padding-bottom:4px}.section-heading-aside .text-link{margin-top:17px}h2 em{color:var(--mauve)}.treatment-carousel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.treatment-card{background:var(--paper);padding:28px 24px 24px;border:1px solid var(--border);display:flex;flex-direction:column;scroll-margin-top:130px;position:relative;transition:border-color .25s,box-shadow .25s}.treatment-card:hover{border-color:#aa8b7e;box-shadow:0 10px 25px #332d2906}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-top .eyebrow{font-size:10px;letter-spacing:.1em}.card-index{font:italic 25px var(--heading);opacity:.65}.treatment-card h3{font-size:clamp(30px,2.7vw,43px);margin:30px 0 20px;line-height:1.07}.treatment-card>p{font-size:15px;line-height:1.7;flex:1}.card-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:26px 0 17px}.card-meta span{font-size:13px}.card-meta strong{font:400 28px var(--heading)}.treatment-card details{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.treatment-card summary{display:flex;justify-content:space-between;align-items:center;padding:13px 0;font-size:13px;font-weight:500;gap:10px}.treatment-card details p{font-size:14px;padding-bottom:18px}.treatment-card details[open] summary span{transform:rotate(45deg)}.card-link{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;padding-top:20px;gap:12px}.card-link:hover{text-decoration:underline}.featured{background:#e9dcd5;border-color:#e0cfc5}.featured h3 em{color:var(--mauve)}.treatment-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px;font-size:13px}.treatment-bottom p{font-size:12px}.treatment-bottom a{border-bottom:1px solid #c6b7ab}.swipe-hint{display:none}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding-top:35px;padding-bottom:130px}.about-visual{position:relative;padding:0 42px 0 0}.romy-photo{height:650px;object-position:50% 35%}.portrait-label{position:absolute;bottom:32px;left:-20px;background:var(--paper);padding:25px 32px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--border)}.portrait-label>span:last-child{font:32px var(--heading)}.brand-mark{width:145px;position:absolute;right:-8px;top:30px;opacity:.85;mix-blend-mode:multiply;transform:rotate(8deg)}.about-copy h2{margin:22px 0 30px}.about-copy p{margin:0 0 20px;max-width:495px}.about-copy .lead{font-size:20px;color:var(--ink)}.signature{font:italic 35px var(--heading);color:var(--mauve);margin:24px 0 10px}.salon-story{position:relative;height:690px;background:#e0d5c9;overflow:hidden}.salon-story>img{width:100%;height:100%;object-position:center 54%}.salon-panel{position:absolute;top:50%;transform:translateY(-50%);right:6%;width:450px;padding:45px;background:var(--cream);box-shadow:0 12px 40px #211b180d}.salon-panel h2{font-size:49px;margin:20px 0 24px}.salon-panel p{font-size:16px}.salon-panel .text-link{margin-top:20px}.salon-location{border-top:1px solid var(--border);margin-top:30px;padding-top:20px;font-size:14px;display:flex;justify-content:space-between;gap:15px}.salon-location span{color:var(--muted)}.products{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.products-copy{padding-left:4%}.products h2{margin:22px 0 30px}.products p{max-width:490px;margin-bottom:18px}.products .text-link{margin-top:10px}.products-photo{position:relative;height:590px;overflow:hidden}.products-photo img{height:100%;object-position:58% center}.image-note{position:absolute;bottom:28px;left:28px;right:28px;color:white;font:italic 35px/1.1 var(--heading);text-shadow:0 1px 10px #0009}.product-wordmark{font-family:var(--heading);font-size:43px;letter-spacing:-.08em;border-top:1px solid var(--border);margin-top:40px;padding-top:22px}.product-wordmark span{display:block;font:13px var(--body);letter-spacing:0;margin-top:10px;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:12%;padding-top:20px}.faq h2{margin:20px 0 25px}.faq>div>p{margin-bottom:15px}.faq-list details{border-top:1px solid var(--border)}.faq-list details:last-child{border-bottom:1px solid var(--border)}.faq-list summary{padding:24px 0;display:flex;gap:25px;justify-content:space-between;align-items:center;font-size:18px;line-height:1.45;font-weight:500}.faq-list summary span{font-size:26px;color:var(--mauve);font-weight:400;flex-shrink:0;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{padding:0 40px 25px 0;font-size:17px}.faq-list p a{text-decoration:underline}.contact{position:relative;max-width:none;background:#e5d6ce;display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding:90px 8%;overflow:hidden}.contact-mark{position:absolute;bottom:-15px;left:36%;width:290px;opacity:.2;mix-blend-mode:multiply;pointer-events:none}.contact-copy{position:relative;z-index:1;align-self:center}.contact h2{margin:22px 0 25px;font-size:clamp(48px,5vw,78px)}.contact-copy>p{max-width:420px}.contact-person{display:flex;gap:18px;align-items:center;margin:28px 0}.contact-person img{width:58px;height:58px;border-radius:50%;object-position:50% 22%}.contact-person strong{display:block;font-size:15px;font-weight:500}.contact-person span{display:block;font-size:13px;color:var(--muted)}.contact-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.contact-small{font-size:13px;margin-top:16px}.contact-card{position:relative;background:var(--paper);padding:40px;max-width:490px;width:100%;justify-self:end}.contact-card h3{margin:15px 0 22px;font-size:36px}.contact-card address{font-style:normal;font-size:16px;color:var(--muted)}.contact-card .text-link{margin-top:9px}.hours{border-top:1px solid var(--border);margin-top:25px;padding-top:17px}.hours h4{font-size:15px;font-weight:500;margin:0 0 13px}.hours dl{margin:0;font-size:14px;line-height:1.7;color:var(--muted)}.hours dl div{display:flex;justify-content:space-between;gap:20px;margin-top:7px}.hours dd{margin:0;text-align:right}.contact-email{display:block;border-top:1px solid var(--border);padding-top:20px;margin-top:25px;font-size:13px;overflow-wrap:anywhere}.footer{padding:50px 5.5% 20px;background:var(--paper)}.footer-main{display:grid;grid-template-columns:1.4fr 1fr .7fr .7fr;align-items:start;gap:50px;padding-bottom:40px}.footer-main>.brand{width:240px;margin-top:7px}.footer-main>p{font:italic 25px/1.3 var(--heading)}.footer-main>div{display:flex;flex-direction:column;gap:9px;font-size:14px}.footer-main a:hover{color:var(--mauve)}.footer-bottom{border-top:1px solid var(--border);padding-top:20px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
@media(min-width:1650px){.contact{padding-left:calc((100vw - 1450px)/2);padding-right:calc((100vw - 1450px)/2)}}@media(max-width:1150px){.section{padding:80px 5%}.treatment-carousel{gap:14px}.treatment-card{padding:24px 18px}.card-link,.treatment-card summary{font-size:12px}.about{gap:6%;padding-top:20px}.romy-photo{height:590px}.portrait-label{left:-8px}.brand-mark{width:115px}.salon-story{height:630px}.salon-panel{right:5%;width:420px}.products{gap:7%}.products-photo{height:560px}.contact{gap:7%;padding:75px 5%}.contact-card{padding:32px}.footer-main{gap:30px}.footer-main>.brand{width:200px}}@media(max-width:950px){.treatment-carousel{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.treatment-card{padding:28px}.card-link,.treatment-card summary{font-size:14px}.card-top .eyebrow{font-size:11px}.treatment-card>p{font-size:16px}.treatment-card h3{font-size:40px}.section-heading{gap:35px}.section-heading-aside{max-width:310px}.about{gap:5%}.about-visual{padding-right:20px}.romy-photo{height:530px}.portrait-label{padding:20px}.portrait-label .eyebrow{font-size:10px}.brand-mark{width:95px;right:-5px}.about-copy h2{font-size:48px}.about-copy p{font-size:16px}.products{gap:6%}.products-copy{padding-left:0}.products-photo{height:540px}.faq{gap:8%;grid-template-columns:.9fr 1.2fr}.contact{gap:5%;grid-template-columns:1fr 1fr}.contact-person span{max-width:230px}.contact-card{padding:28px}.footer-main{grid-template-columns:1.3fr 1fr 1fr}.footer-main>p{display:none}}
@media(max-width:650px){body{font-size:16px}.section{padding:64px 6%}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:45px;margin-top:15px}.section-heading-aside{margin-top:22px;max-width:none}.section-heading-aside .text-link{font-size:14px;margin-top:12px}.treatment-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;margin-right:-6.8%;padding-right:6.8%;padding-bottom:15px;gap:14px;scrollbar-width:thin;scrollbar-color:#bca298 transparent}.treatment-card{min-width:85%;flex:0 0 85%;scroll-snap-align:start;padding:25px;scroll-margin-top:105px}.treatment-card h3{font-size:39px;margin-top:25px}.card-top .eyebrow{font-size:10px}.treatment-card>p{font-size:16px}.treatment-card details p{font-size:15px}.card-meta span{font-size:14px}.card-link,.treatment-card summary{font-size:14px}.treatment-bottom{flex-direction:column;align-items:flex-start;gap:12px;margin-top:16px}.treatment-bottom p{font-size:12px}.swipe-hint{display:block;color:var(--muted);font-size:13px}.about{display:flex;flex-direction:column;padding-top:15px;gap:45px;padding-bottom:70px}.about-visual{width:100%;padding-right:27px}.romy-photo{height:480px;max-height:125vw;object-position:center 30%}.brand-mark{width:120px;right:-5px;top:28px}.portrait-label{left:-5px;bottom:25px;min-width:220px}.portrait-label>span:last-child{font-size:30px}.about-copy h2{font-size:45px;margin:17px 0 25px}.about-copy .lead{font-size:19px}.signature{margin-top:16px}.salon-story{height:auto;overflow:visible;background:var(--paper);padding-bottom:0}.salon-story>img{height:330px;object-position:38% center}.salon-panel{position:relative;top:auto;right:auto;transform:none;width:auto;margin:-28px 6% 0;padding:30px 26px;box-shadow:none;border:1px solid var(--border)}.salon-panel h2{font-size:42px;margin:15px 0 20px}.salon-panel .eyebrow{font-size:10px}.salon-panel .text-link{font-size:13px;gap:14px}.salon-location{font-size:12px;gap:10px}.products{display:flex;flex-direction:column;gap:32px;padding-top:70px}.products h2{font-size:45px;margin:17px 0 23px}.products-photo{height:400px;width:100%}.products .text-link{font-size:14px}.product-wordmark{margin-top:25px}.faq{display:block;padding-top:0}.faq h2{font-size:45px}.faq-list{margin-top:32px}.faq-list summary{font-size:17px;padding:21px 0;gap:22px}.faq-list p{font-size:16px;padding-right:12px}.contact{display:block;padding:62px 6%}.contact h2{font-size:50px}.contact-person{margin:25px 0}.contact-person span{max-width:none;font-size:12px}.contact-card{margin-top:38px;max-width:none;padding:28px}.contact-card h3{font-size:33px}.contact-mark{width:240px;left:auto;right:-45px;top:190px;bottom:auto}.contact-email{font-size:12px}.footer{padding:38px 6% 20px}.footer-main{grid-template-columns:1fr 1fr;gap:27px;padding-bottom:30px}.footer-main>.brand{grid-column:1/-1;width:230px}.footer-bottom{font-size:11px;gap:15px}.header .brand{max-width:calc(100vw - 197px)}}
/* Readable treatment information at every screen size. */
.treatment-card>p{font-size:16px}.card-link,.treatment-card summary,.card-meta span{font-size:14px}.treatment-card details p{font-size:16px}.contact-person span,.contact-small,.contact-email,.product-wordmark span{font-size:14px}.topline{font-size:13px}.hero-copy .eyebrow{font-size:12px}.mobile-nav{top:var(--menu-top,101px)}
@media(max-width:650px){.contact-person span{font-size:13px}.contact-email{font-size:13px}.treatment-card{padding:24px}.card-link{font-size:14px}.hero-copy h1{line-height:1.04}.topline{font-size:11px}}
.contact-mark{bottom:24px}.contact .contact-mark{max-height:75%;object-fit:contain}@media(max-width:650px){.contact-mark{right:18px;bottom:auto;opacity:.12}}

/* Beauty Moments interaction language: soft capsules and clearly defined action buttons. */
.button{border-radius:999px;padding:17px 29px;min-height:56px;font-size:1rem;line-height:1.4;font-weight:500;letter-spacing:.01em;box-shadow:inset 0 0 0 0 #f8f5ef;transition:background-color .3s,color .3s,box-shadow .3s,border-color .3s;}
.button:hover{transform:none;background:#684a48;box-shadow:inset 0 0 0 4px #ffffff14}
.button:active{box-shadow:inset 0 0 0 4px #ffffff25}
.button.small.header-cta{background:var(--mauve);border:1px solid transparent;color:#fff;padding:13px 23px;min-height:48px;font-size:.9375rem}
.button.small.header-cta:hover{background:#684a48;color:#fff;box-shadow:inset 0 0 0 4px #ffffff14}
.card-link{border:1px solid #bda79c;border-radius:999px;justify-content:center;text-align:center;min-height:48px;padding:11px 14px;margin-top:22px;color:#704f4d;font-size:.875rem;font-weight:500;line-height:1.45;transition:background-color .3s,border-color .3s,color .3s}
.card-link:hover{background:var(--mauve);border-color:var(--mauve);color:#fff;text-decoration:none}
.featured .card-link{background:#fff8;border-color:transparent}
.featured .card-link:hover{background:var(--mauve);color:white}
.desktop-nav>a{position:relative}.desktop-nav>a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:var(--mauve);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav>a:hover:after,.desktop-nav>a:focus-visible:after{transform:scaleX(1)}
.treatment-bottom>a,.contact-email,.footer-main>div>a,.footer-bottom>a{transition:color .25s;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px}.treatment-bottom>a{border:0;text-decoration-color:#bda79c}.treatment-bottom>a:hover,.contact-email:hover,.footer-main>div>a:hover,.footer-bottom>a:hover{text-decoration-color:currentColor;color:#704f4d}
.section-heading-aside .text-link,.products .text-link,.salon-panel .text-link{font-size:1.375rem}
.contact-actions{gap:20px 26px}.hero-actions{gap:23px}.contact-card .text-link{font-size:1.25rem}
@media(max-width:1150px){.header .button.small.header-cta{padding:12px 18px;font-size:.875rem}}
@media(max-width:650px){.header .button.small.header-cta{min-height:42px;padding:10px 13px!important;font-size:.75rem}.hero-actions .button{font-size:.9375rem;padding:15px 23px;min-height:52px}.text-link,.section-heading-aside .text-link,.products .text-link,.salon-panel .text-link{font-size:1.25rem}.hero-actions{gap:20px}.mobile-nav .button{font-size:1rem;border:0;padding:16px 22px}.card-link{font-size:.875rem;padding:12px 15px}.contact-actions>.button{font-size:.9375rem}.contact-actions .text-link{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){.button,.text-link:before,.text-link:after,.card-link,.desktop-nav>a:after{transition:none}}
/* Complete treatment catalogue, shared by desktop, mobile and homepage. */
.mega{display:block;padding:30px;max-height:calc(100dvh - 130px);overflow:auto}.mega-intro{padding:0 0 23px;background:none;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--border)}.mega-intro .eyebrow{display:none}.mega-intro h2{font-size:35px;margin:0}.mega-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;padding-top:25px}.mega-category h3{font:500 1rem/1.45 var(--body);margin:0 0 14px;color:var(--mauve)}.mega-category>a{display:block;font-size:.875rem;line-height:1.5;padding:7px 0;color:var(--muted)}.mega-category a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--mauve)}
.category-tabs{display:flex;gap:10px;margin-bottom:30px;padding-bottom:12px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#bca298 transparent;scroll-margin-top:125px}.category-tabs button{flex-shrink:0;border:1px solid var(--border);border-radius:999px;padding:13px 20px;background:transparent;color:var(--muted);font-size:.9375rem;line-height:1.4;min-height:48px;transition:background .25s,color .25s,border-color .25s}.category-tabs button[aria-selected=true]{background:var(--mauve);color:white;border-color:var(--mauve)}.category-tabs button:hover{border-color:var(--mauve);color:var(--ink)}.category-tabs button[aria-selected=true]:hover{color:white}.treatment-panel{scroll-margin-top:130px}.category-heading{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:25px}.category-heading h3{font-size:32px}.category-heading p{font-size:1rem;max-width:520px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{padding:27px;background:var(--paper);border:1px solid var(--border);display:flex;flex-direction:column;align-items:flex-start;scroll-margin-top:130px}.service-card-top{display:flex;align-items:start;justify-content:space-between;gap:22px;width:100%}.service-card h4{font:400 29px/1.1 var(--heading);margin:0}.service-card strong{font:400 26px var(--heading);white-space:nowrap}.service-time{display:block;font-size:.875rem;color:var(--mauve);margin-top:16px}.service-card>p{font-size:1rem;margin-top:17px}.service-card .service-extra{font-size:.875rem;font-weight:500}.service-card .card-link{margin-top:auto;padding-top:11px;transform:translateY(0);width:100%}.service-card .service-time:last-of-type{margin-bottom:20px}.service-card>p:last-of-type,.service-care{margin-bottom:22px}.service-care{width:100%;margin-top:18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.service-care summary{display:flex;justify-content:space-between;gap:20px;padding:13px 0;font-size:.875rem}.service-care details[open] span{transform:rotate(45deg)}.service-care p{font-size:1rem;padding-bottom:16px}.mobile-nav .mobile-category{margin-left:10px}.mobile-nav .mobile-category summary{font-size:19px;padding:14px 0}.mobile-nav .mobile-category a{font-size:16px;padding:10px 10px 10px 15px}.mobile-category[open]>summary{color:var(--mauve)}.mobile-nav summary:after{content:'+';float:right;color:var(--mauve)}.mobile-nav details[open]>summary:after{content:'−'}
@media(max-width:1150px){.mega-categories{gap:17px}.mega-category h3{font-size:.9375rem}.mega-category>a{font-size:.875rem}.service-card{padding:23px}.service-card h4{font-size:27px}.category-heading{align-items:flex-start}.category-heading p{max-width:400px}}
@media(max-width:950px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tabs{margin-right:-5%;padding-right:5%}.category-heading{display:block}.category-heading p{max-width:none;margin-top:12px}}
@media(max-width:650px){.category-tabs{margin-right:-6.8%;padding-right:6.8%;gap:8px;margin-bottom:21px;scroll-margin-top:110px}.category-tabs button{font-size:.875rem;padding:11px 16px;min-height:46px}.category-heading h3{font-size:30px}.category-heading p{font-size:1rem;margin-top:10px}.service-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-right:-6.8%;padding-right:6.8%;padding-bottom:15px;scrollbar-width:thin;scrollbar-color:#bca298 transparent}.service-card{flex:0 0 88%;min-width:0;scroll-snap-align:start;padding:24px;scroll-margin-top:110px}.service-card h4{font-size:28px}.service-card strong{font-size:25px}.service-card .card-link{font-size:.875rem}.treatment-panel{scroll-margin-top:110px}}
/* Treatment photography slider; copy and layout remain stationary. */
.hero-photo>.hero-slide{opacity:0;z-index:0;object-position:center}.hero-photo>.hero-slide:first-child{opacity:1}.hero-photo:after{z-index:2;background:linear-gradient(transparent,rgba(35,28,25,.62))}.hero-photo .photo-caption{z-index:3;bottom:112px;right:35px;pointer-events:none}.hero-slider-controls{position:absolute;left:36px;right:36px;bottom:30px;display:flex;align-items:center;gap:15px;z-index:4;color:white}.hero-slide-counter{font-size:12px;letter-spacing:.1em;font-variant-numeric:tabular-nums}.hero-slide-dots{display:flex;gap:0;align-items:center;margin-left:auto}.hero-slide-dot{display:grid;place-items:center;min-width:44px;height:44px;padding:0;border:0;background:transparent;color:white}.hero-slide-dot span{display:block;width:8px;height:8px;border:1px solid #fff;border-radius:50%;background:transparent;transition:width .3s,background .3s}.hero-slide-dot[aria-current=true] span{width:23px;border-radius:6px;background:white}.hero-slide-dot:hover span{background:#fff9}.hero-slide-pause{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid #fff9;border-radius:50%;background:#211b1826;color:white;font-size:16px;transition:background .25s}.hero-slide-pause:hover{background:#211b1870}.hero-slider-controls button:focus-visible{outline:2px solid white;outline-offset:2px}
@media(max-width:950px){.hero-slider-controls{left:25px;right:25px;gap:7px}.hero-photo .photo-caption{left:25px;bottom:96px}.hero-slide-dot{min-width:38px}.hero-slide-counter{font-size:11px}}
@media(max-width:650px){.hero-slider-controls{bottom:17px;left:24px;right:24px}.hero-photo .photo-caption{bottom:83px;left:24px;right:24px}.hero-photo .photo-caption em{font-size:27px}.hero-photo .photo-caption span{font-size:10px}.hero-slide-dot{min-width:40px}.hero-slide-counter{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-slide-dot span,.hero-slide-pause{transition:none}}
/* Compact photographs introduce every treatment card. */
.treatment-card,.service-card{--card-padding:24px;padding:var(--card-padding);overflow:hidden}.treatment-image{width:calc(100% + var(--card-padding)*2);height:150px;flex-shrink:0;margin:calc(var(--card-padding)*-1) calc(var(--card-padding)*-1) 23px;overflow:hidden;background:var(--rose)}.treatment-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.treatment-card:hover .treatment-image img,.service-card:hover .treatment-image img{transform:scale(1.035)}.treatment-card h3{margin-top:22px}.service-card .treatment-image{height:155px}.treatment-image.contain img{object-fit:contain;background:#f3ebe4;padding:13px}.treatment-image.salon-detail img{object-position:80% 30%}.treatment-image.brow-detail img{object-position:center 70%}
@media(max-width:650px){.treatment-image,.service-card .treatment-image{height:135px;margin-bottom:21px}.treatment-card h3{margin-top:19px}}
@media(prefers-reduced-motion:reduce){.treatment-image img{transition:none}.treatment-card:hover .treatment-image img,.service-card:hover .treatment-image img{transform:none}}
.treatment-image.ampoule-detail,.treatment-image.wrap-detail{position:relative}.treatment-image.ampoule-detail img{position:absolute;max-width:none;width:200%;height:200%;left:-100%;top:-60%;object-fit:cover}.treatment-image.wrap-detail img{position:absolute;max-width:none;width:155%;height:140%;left:-55%;top:-10%;object-fit:cover}

/* Secondary calls to action: clear button shape and generous touch targets. */
:root a.text-link{display:inline-flex;align-items:center;justify-content:center;position:relative;gap:12px;width:fit-content;max-width:100%;min-height:52px;padding:14px 24px;border:1px solid #997572;border-radius:999px;background:#eee3dc;color:#684a48;font:500 1rem/1.4 var(--body);letter-spacing:0;text-align:center;text-decoration:none;white-space:normal;transition:background-color .25s,color .25s,border-color .25s,box-shadow .25s}
:root a.text-link:hover{background:#815f5d;border-color:#815f5d;color:#fff;box-shadow:inset 0 0 0 3px #ffffff18;text-decoration:none}
:root a.text-link:active{background:#684a48;box-shadow:inset 0 0 0 3px #ffffff25}
:root a.text-link:focus-visible{outline:3px solid #684a48;outline-offset:4px}
@media(max-width:650px){:root a.text-link{padding:13px 20px;min-height:50px;font-size:1rem}.hero-actions,.contact-actions{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){:root a.text-link{transition:none}}
