@font-face{font-family:Manrope;src:url('assets/fonts/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--blue:#083795;--ink:#15213b;--muted:#626b7b;--pale:#edf2fa;--line:#dce3ef;--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;padding:0 32px 32px;background:#e4ebf5;color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #597fe7;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.07;letter-spacing:-0.0192em}h2{font-size:clamp(2.2rem,4.1vw,3.7rem)}h3{font-size:1.6rem}p+p{margin-top:18px}button svg,a svg{flex-shrink:0}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.shell{max-width:1440px;margin:auto;background:#fff;border-radius:34px;overflow:clip}.topline{max-width:1328px;margin:auto;min-height:42px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--blue);letter-spacing:.015em}.topline div{display:flex;gap:26px}.topline a{display:flex;align-items:center;gap:7px}.topline svg{width:13px;height:13px}.skip{position:fixed;left:20px;top:-100px;background:var(--blue);color:white;z-index:100;padding:12px}.skip:focus{top:12px}.site-header{padding:28px 38px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:10}.brand{display:block;flex-shrink:0;width:223px;height:46px;background:var(--blue);mask:url('logo.png') center/contain no-repeat;-webkit-mask:url('logo.png') center/contain no-repeat}.main-nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:500}.main-nav>a:not(.button),summary{transition:color .2s}.main-nav>a:hover,summary:hover{color:var(--blue)}.main-nav details{position:relative}.main-nav summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}.main-nav summary::-webkit-details-marker{display:none}.main-nav summary svg{width:12px;height:12px}.nav-dropdown{position:absolute;top:calc(100% + 17px);left:-22px;width:270px;background:white;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:0 14px 35px #10274c15}.nav-dropdown a{display:block;padding:9px 12px;border-radius:9px;font-size:13px}.nav-dropdown a:hover{background:var(--pale);color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--blue);border-radius:99px;background:var(--blue);color:#fff;padding:14px 23px;font-size:14px;line-height:1.4;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#00296f;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--blue);border-color:#a7b8d5}.button.outline:hover{background:var(--pale)}.button.white{background:white;border-color:white;color:var(--blue)}.button.white:hover{background:var(--pale)}.main-nav .button{padding:12px 20px;gap:14px;font-size:13px}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:50%;padding:12px}.hero{position:relative;min-height:635px;margin:0 16px;background:#e3edf7;border-radius:26px;isolation:isolate;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}.hero-copy{padding:49px 46px;max-width:660px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.14em;line-height:1.6;font-weight:600;color:var(--blue)}.hero .eyebrow{display:flex;gap:12px;align-items:center}.hero .eyebrow:before{content:'';width:24px;height:1px;background:currentColor}.hero h1{font-size:clamp(3.6rem,6.25vw,6rem);line-height:1.015;color:var(--blue);letter-spacing:-0.0227em;margin:25px 0 28px;max-width:620px}.hero-copy>p:not(.eyebrow){font-size:15px;max-width:300px;line-height:1.65;color:#354b6b}.hero-copy .button{margin-top:23px}.hero-note{position:absolute;bottom:27px;left:30px;display:flex;align-items:center;gap:15px;padding:12px 17px 12px 12px;background:#fffffff2;max-width:342px;border-radius:18px}.hero-note img{width:67px;height:80px;object-fit:cover;border-radius:11px}.hero-note p{font-size:12px;line-height:1.55;color:#334668}.hero-note small{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-top:8px;color:var(--blue)}.hero-promo{position:absolute;right:23px;top:24px;width:165px;background:white;border-radius:19px;padding:12px;box-shadow:0 6px 18px #24385b0b}.promo-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:10px}.circle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #c4cee0;border-radius:50%;background:transparent;flex-shrink:0}.promo-top .circle{width:25px;height:25px}.promo-top svg{width:14px;height:14px}.tag{border:1px solid #dce3ed;border-radius:30px;padding:3px 9px;display:inline-flex;line-height:1.45;font-size:12px}.hero-promo img{width:100%;height:110px;border-radius:9px;object-fit:cover;object-position:50% 57%}.hero-promo h2{font-size:16px;letter-spacing:-0.0087em;line-height:1.25;margin-top:9px}.hero-bottom{position:absolute;bottom:30px;right:30px;color:white;display:flex;align-items:center;gap:15px;font-size:12px;text-shadow:0 1px 12px #0008}.hero-bottom .circle{background:white;color:var(--blue);border:none;width:44px;height:44px}.hero-bottom span:first-child{max-width:120px;line-height:1.5}.content-section{padding:88px 48px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}.section-head h2{margin-top:13px;color:var(--blue)}.section-head>p{max-width:360px;font-size:15px;color:var(--muted)}.section-head .button{flex-shrink:0}.intro{display:grid;grid-template-columns:1fr 1.6fr;gap:65px;padding-bottom:0}.intro h2{margin-top:18px;color:var(--blue)}.intro .lead{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.4;letter-spacing:-0.0123em;font-weight:500}.intro .lead+p{margin-top:22px;color:var(--muted);font-size:15px}.intro .button{margin-top:25px;padding:11px 20px}.intro-copy{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:32px;color:var(--muted);font-size:14px;line-height:1.85}.intro-copy p{margin:0}.treatments{padding-top:65px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{position:relative;border-radius:21px;overflow:hidden;background:var(--pale);min-width:0;display:flex;flex-direction:column}.service-image{position:relative;height:255px;overflow:hidden;background:#eef0f3}.service-image:after{content:'';position:absolute;inset:0;background:linear-gradient(#fff4,transparent 50%)}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover .service-image img{transform:scale(1.05)}.service-image .circle{position:absolute;top:14px;right:14px;background:#fff9;z-index:1;border:none}.service-number{position:absolute;left:18px;top:20px;z-index:1;font-size:12px;color:var(--blue)}.service-body{padding:21px 20px 24px;display:flex;flex-direction:column;flex:1}.service-body h3{color:var(--blue);font-size:21px;letter-spacing:-0.0158em;line-height:1.2}.service-body p{font-size:12px;color:var(--muted);line-height:1.5;margin:9px 0 20px}.text-link{display:inline-flex;gap:15px;align-items:center;font-size:12px;color:var(--blue);font-weight:600;margin-top:auto}.text-link svg{width:16px;height:16px}.service-card:nth-child(2){background:#f2eff3}.service-card:nth-child(3){background:#eaf0f3}.service-card:nth-child(4){background:#f2f1ee}.feature-wrap{padding:0 16px}.featured{border-radius:26px;background:var(--blue);color:white;padding:35px 34px 32px;overflow:hidden}.featured-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.featured .eyebrow{color:#d7e4ff}.feature-tags{display:flex;gap:7px}.feature-tags .tag{border-color:#ffffff40;font-size:11px}.feature-title{font-size:clamp(3.1rem,7.5vw,7rem);letter-spacing:-0.0227em;line-height:1.06;margin:31px 0 24px;position:relative;z-index:1}.featured-grid{display:grid;grid-template-columns:.68fr 1.32fr;gap:28px;align-items:end}.feature-small{padding:10px 0 5px;max-width:300px}.feature-small p{font-size:15px;line-height:1.7;color:#dae5ff}.feature-small .button{margin-top:25px}.featured-photo{width:100%;height:295px;object-fit:cover;border-radius:18px;object-position:center 58%}.featured-grid .tag{font-size:12px;margin-bottom:20px;border-color:#ffffff40}.promotions{padding-top:70px;padding-bottom:78px}.promo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.treatment-feature img{height:230px;width:100%;object-fit:cover;border-radius:20px;margin-bottom:22px}.treatment-feature .eyebrow{font-size:10px}.treatment-feature h3{font-size:27px;line-height:1.15;margin:10px 0;color:var(--blue)}.treatment-feature p:not(.eyebrow){font-size:14px;line-height:1.7;color:var(--muted);min-height:50px;margin-bottom:20px}.problems{background:#f3f6fb;border-radius:26px;margin:0 16px;padding:58px 34px}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.problem-card{position:relative;overflow:hidden;border-radius:18px;background:white;min-width:0}.problem-card img{width:100%;height:170px;object-fit:cover;transition:transform .4s}.problem-card:hover img{transform:scale(1.04)}.problem-info{padding:20px 17px}.problem-info h3{font-size:20px;line-height:1.15;letter-spacing:-0.0140em;color:var(--blue);min-height:46px}.problem-info p{font-size:11px;color:var(--muted);margin:12px 0 14px}.problem-info .text-link{font-size:11px}.special-offer{margin-top:24px;display:flex;align-items:center;justify-content:space-between;padding:27px 30px;background:var(--blue);color:white;border-radius:18px;gap:24px}.special-offer h3{font-size:27px}.special-offer p{font-size:14px;color:#dce8ff;margin-top:8px}.special-actions{display:flex;gap:12px;align-items:center}.special-actions>a{font-size:13px}.gallery{padding-bottom:65px}.gallery-header p{max-width:350px;font-size:14px;color:var(--muted);margin-top:20px}.gallery-controls{display:flex;align-items:center;gap:11px}.icon-button{padding:0;width:44px;height:44px;background:white;border:1px solid var(--line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background .2s}.icon-button:hover{background:var(--pale)}.gallery-track{display:flex;gap:16px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -48px;padding:0 48px 4px}.gallery-track::-webkit-scrollbar{display:none}.gallery-item{position:relative;padding:0;background:none;border:0;flex:0 0 31.5%;scroll-snap-align:center}.gallery-item img{width:100%;height:340px;object-fit:cover;border-radius:20px}.gallery-item .circle{position:absolute;bottom:16px;right:16px;background:white;border:none;width:34px;height:34px}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:26px}.gallery-bottom p{font-size:12px;color:var(--muted)}.social-strip{margin-top:44px;padding-top:28px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px}.social-strip>svg{width:34px;height:34px;color:var(--blue)}.social-strip p{font-size:12px;color:var(--muted)}.social-strip a{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;color:var(--blue);font-size:clamp(1.2rem,2.4vw,2rem);letter-spacing:-0.0140em}.social-strip .circle{width:45px;height:45px}.reviews{margin:0 16px;padding:58px 34px;background:var(--pale);border-radius:26px}.review-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:18px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:2px}.review-track::-webkit-scrollbar{display:none}.review-card{scroll-snap-align:start;background:white;border-radius:20px;padding:28px;display:flex;flex-direction:column;min-height:285px}.quote-mark{font-family:Georgia,serif;font-size:60px;color:var(--blue);line-height:.9;display:block;height:45px}.review-card blockquote{margin:10px 0 24px;font-size:14px;line-height:1.85;color:#46516a}.review-card cite{font-style:normal;font-size:13px;color:var(--blue);font-weight:600;margin-top:auto;display:flex;align-items:center;gap:12px}.review-card cite:before{content:attr(data-initial);display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--pale);border-radius:50%;font-size:11px}.review-position{font-size:12px;color:var(--muted);margin-top:18px;text-align:right}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:60px 48px 65px}.stat{text-align:center;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-0.0227em;color:var(--blue);font-weight:500;line-height:1.1}.stat span{display:block;font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}.contact{margin:0 16px;background:var(--blue);border-radius:26px;padding:40px;color:white}.contact-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.contact-heading h2{max-width:700px;font-size:clamp(2.3rem,4.1vw,4rem)}.contact-heading .button{flex-shrink:0}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center}.salon-video{display:block;width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:18px;background:#0a2d75}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-details h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:#b9cef6;margin-bottom:12px;line-height:1.5}.contact-details p,.contact-details a{font-size:13px;line-height:1.9}.contact-details .contact-wide{grid-column:1/-1}.contact-details .phone{font-size:30px;letter-spacing:-0.0158em;line-height:1.5}.contact-details a:hover{text-decoration:underline}.footer{padding:43px 48px 25px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.footer .brand{width:200px;height:42px}.footer-links{display:flex;gap:23px;font-size:12px;color:var(--blue)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.footer-bottom a{text-decoration:underline}.booking-mobile{display:none}.lightbox{border:0;border-radius:20px;padding:0;width:min(1000px,92vw);max-height:90vh;background:#0c1c35;color:white;overflow:visible}.lightbox::backdrop{background:#061531dc;backdrop-filter:blur(7px)}.lightbox img{width:100%;max-height:78vh;object-fit:contain;border-radius:20px 20px 0 0}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:16px}.lightbox-bar p{font-size:13px}.lightbox-controls{display:flex;gap:8px}.lightbox .icon-button{color:white;border-color:#ffffff40;background:transparent}.lightbox-close{position:absolute;top:12px;right:12px;background:white!important;color:var(--blue)!important}.lightbox-error{padding:40px;text-align:center}.js .no-js{display:none}
@media(min-width:1500px){.hero{min-height:720px}.hero-copy{padding-top:65px}.hero h1{font-size:100px}.hero-note{bottom:35px}.hero-image{object-position:center 42%}}
@media(max-width:1190px){body{padding:0 20px 20px}.main-nav{gap:17px;font-size:12px}.main-nav .button{font-size:12px;padding:12px 15px}.site-header{padding:25px 28px;gap:18px}.brand{width:190px;height:39px}.hero{min-height:595px}.hero-copy{padding:43px 36px}.hero h1{font-size:76px}.hero-promo{width:145px}.hero-promo img{height:90px}.content-section{padding-left:36px;padding-right:36px}.intro{gap:35px}.intro-copy{gap:24px}.service-image{height:215px}.service-body{padding:18px 15px}.service-body h3{font-size:20px}.problem-grid{grid-template-columns:repeat(4,1fr)}.problem-info{padding:18px 14px}.problem-info h3{font-size:18px}.gallery-track{margin:0 -36px;padding:0 36px 4px}.gallery-item img{height:280px}.contact{padding:34px}.contact-grid{gap:30px}.contact-details{gap:20px}.contact-details p,.contact-details a{font-size:12px}.review-card{padding:23px}.feature-title{font-size:8vw}}
@media(max-width:1000px){.main-nav{display:none;position:absolute;top:100%;left:16px;right:16px;background:white;padding:20px;border-radius:20px;border:1px solid var(--line);box-shadow:0 20px 35px #15213b14;align-items:stretch;font-size:15px}.main-nav.is-open{display:flex;flex-direction:column;gap:4px}.main-nav>a,.main-nav summary{padding:12px}.main-nav .button{font-size:14px;margin-top:10px}.nav-dropdown{position:static;box-shadow:none;border:0;width:100%;padding:0 12px;background:var(--pale);margin:5px 0}.nav-dropdown a{font-size:14px}.menu-toggle{display:flex}.hero{min-height:580px}.hero h1{font-size:70px}.hero-copy{padding:38px 30px}.hero-image{object-position:56% center}.hero-promo{width:135px;right:18px;top:18px}.hero-note{left:24px;bottom:24px;max-width:300px}.hero-note img{width:52px;height:70px}.hero-note p{font-size:11px}.hero-bottom{right:24px;bottom:25px}.intro{grid-template-columns:1fr 1.4fr;gap:30px}.intro-copy{grid-template-columns:1fr;gap:20px}.service-grid{grid-template-columns:repeat(2,1fr);gap:20px}.service-image{height:260px}.service-body h3{font-size:25px}.service-body p{font-size:14px}.service-number{font-size:14px}.problem-grid{grid-template-columns:repeat(2,1fr)}.problem-card img{height:205px}.problem-info h3{font-size:22px;min-height:0}.problem-info p,.problem-info .text-link{font-size:12px}.special-offer{align-items:start}.special-actions{flex-direction:column;align-items:start}.promo-grid{gap:18px}.treatment-feature img{height:185px}.treatment-feature h3{font-size:23px}.review-track{grid-auto-columns:calc((100% - 18px)/2)}.contact-grid{grid-template-columns:1fr}.salon-video{aspect-ratio:2}.contact-details{grid-template-columns:1fr 1fr 1fr;gap:22px}.contact-details .contact-wide{grid-column:auto}.contact-details .phone{font-size:25px}.contact-details p,.contact-details a{font-size:13px}.footer{padding-left:35px;padding-right:35px}}
@media(max-width:700px){body{padding:0 10px 85px}.topline{min-height:36px;padding:0 7px;font-size:10px}.topline .address{display:none}.topline div{gap:14px}.shell{border-radius:23px}.site-header{padding:22px 21px}.brand{width:184px;height:38px}.menu-toggle{padding:10px}.hero{margin:0 9px;min-height:750px;border-radius:19px;background:#e1edf7}.hero-image{height:475px;top:auto;bottom:0;object-position:68% center;object-fit:cover;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#e1edf7 0%,#e1edf7 33%,#e1edf700 48%);z-index:-1;pointer-events:none}.hero-copy{padding:30px 24px}.hero .eyebrow{font-size:9px;letter-spacing:.13em}.hero h1{font-size:clamp(3.1rem,12vw,4.4rem);line-height:1.02;margin:18px 0 17px;max-width:400px}.hero h1 br:last-of-type{display:none}.hero-copy>p:not(.eyebrow){font-size:13px;max-width:245px}.hero-copy .button{margin-top:20px;padding:12px 20px;font-size:12px}.hero-promo{top:auto;bottom:28px;right:15px;width:125px;padding:10px}.hero-promo img{height:76px}.hero-promo h2{font-size:13px}.promo-top{font-size:9px}.promo-top .tag{font-size:9px;padding:3px 6px}.hero-note{bottom:26px;left:17px;padding:10px;width:calc(100% - 172px);max-width:195px;display:block;border-radius:14px}.hero-note img{display:none}.hero-note p{font-size:10px;line-height:1.5}.hero-note small{font-size:8px;margin-top:6px}.hero-bottom{display:none}.content-section{padding:50px 24px}.eyebrow{font-size:10px}.intro{display:block;padding-bottom:0}.intro h2{margin:10px 0 25px;font-size:38px}.intro .lead{font-size:23px;line-height:1.45}.intro .lead+p{font-size:14px}.intro-copy{font-size:14px;margin-top:26px;gap:20px}.intro .button{font-size:13px}.treatments{padding-top:43px}.section-head{gap:18px;align-items:start;margin-bottom:26px}.section-head h2{font-size:36px;margin-top:9px}.section-head .button{font-size:11px;padding:10px 13px;gap:8px}.section-head .button svg{width:15px}.service-grid{gap:12px}.service-image{height:180px}.service-image .circle{width:30px;height:30px;right:10px;top:10px}.service-number{top:14px;left:12px;font-size:11px}.service-body{padding:16px 13px 19px}.service-body h3{font-size:19px;line-height:1.2}.service-body p{font-size:11px;min-height:33px;margin-bottom:16px}.service-body .text-link{font-size:10px;gap:5px}.service-body .text-link svg{width:12px}.service-card{border-radius:16px}.feature-wrap{padding:0 9px}.featured{padding:25px 20px;border-radius:20px}.feature-tags{display:none}.featured-top .eyebrow{font-size:9px}.feature-title{font-size:clamp(2.5rem,8.8vw,3.8rem);letter-spacing:-0.0210em;overflow-wrap:anywhere;margin:27px 0}.featured-grid{display:flex;flex-direction:column-reverse;align-items:stretch;gap:22px}.featured-photo{height:220px}.feature-small{max-width:none}.feature-small p{font-size:13px}.featured-grid .tag{margin-bottom:14px}.feature-small .button{font-size:13px;margin-top:20px}.promotions{padding-top:50px}.promo-grid{grid-template-columns:1fr;gap:32px}.treatment-feature{display:grid;grid-template-columns:120px 1fr;column-gap:18px;align-items:start}.treatment-feature img{grid-row:1/6;margin:0;height:185px;border-radius:16px}.treatment-feature .eyebrow{font-size:8px;margin-top:5px}.treatment-feature h3{font-size:24px;margin:8px 0}.treatment-feature p:not(.eyebrow){font-size:12px;min-height:0;margin-bottom:15px}.treatment-feature .text-link{font-size:11px}.problems{margin:0 9px;padding:34px 15px;border-radius:20px}.problem-grid{gap:12px}.problem-card img{height:120px}.problem-info{padding:14px 12px}.problem-info h3{font-size:17px;min-height:40px}.problem-info p{font-size:9px;line-height:1.5;margin:10px 0}.problem-info .text-link{font-size:10px;gap:5px}.problem-info .text-link svg{width:12px}.special-offer{padding:24px 20px;display:block;margin-top:18px}.special-offer h3{font-size:25px}.special-offer p{font-size:12px}.special-actions{flex-direction:row;gap:17px;align-items:center;margin-top:23px}.special-actions .button{font-size:11px;padding:11px 15px;gap:10px}.special-actions>a{font-size:11px}.gallery-header p{font-size:13px}.gallery .section-head{align-items:end}.gallery-controls{gap:7px}.icon-button{width:37px;height:37px}.gallery-track{margin:0 -24px;padding:0 24px 4px;gap:12px}.gallery-item{flex-basis:85%}.gallery-item img{height:315px}.gallery-bottom p{font-size:10px}.gallery-bottom .button{font-size:11px;padding:11px 14px;gap:12px}.social-strip{gap:12px;margin-top:30px;padding-top:25px}.social-strip>svg{width:26px;height:26px}.social-strip a{font-size:15px;letter-spacing:-0.0105em;gap:10px}.social-strip .circle{width:34px;height:34px}.social-strip p{font-size:10px}.reviews{margin:0 9px;padding:34px 19px;border-radius:20px}.reviews .section-head h2{font-size:31px}.review-track{grid-auto-columns:100%;gap:14px}.review-card{padding:25px;min-height:285px}.review-card blockquote{font-size:14px}.review-position{font-size:10px}.stats{padding:42px 24px;grid-template-columns:1fr 1fr;gap:30px 0}.stat:nth-child(2){border:0}.stat strong{font-size:48px}.stat span{font-size:11px;margin-top:9px}.contact{margin:0 9px;border-radius:20px;padding:29px 21px}.contact-heading{display:block;margin-bottom:27px}.contact-heading h2{font-size:34px}.contact-heading .button{margin-top:24px;padding:12px 18px;font-size:12px}.contact-grid{gap:25px}.salon-video{aspect-ratio:1.5;border-radius:14px}.contact-details{grid-template-columns:1fr 1fr;gap:24px 15px}.contact-details .contact-wide{grid-column:1/-1}.contact-details h3{font-size:10px;margin-bottom:8px}.contact-details p,.contact-details a{font-size:11px}.contact-details .phone{font-size:30px}.footer{padding:32px 24px 22px}.footer-main{display:block;margin-bottom:22px}.footer .brand{width:180px;height:37px}.footer-links{font-size:11px;gap:18px;margin-top:23px;flex-wrap:wrap}.footer-bottom{display:block;font-size:9px;line-height:1.8}.footer-bottom p+p{margin-top:9px}.booking-mobile{position:fixed;bottom:12px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:white;border:1px solid var(--line);border-radius:50px;padding:8px 9px 8px 20px;box-shadow:0 8px 30px #0837951a;z-index:15}.booking-mobile>a:first-child{font-size:12px;color:var(--blue);font-weight:600;display:flex;gap:8px;align-items:center}.booking-mobile .button{padding:11px 18px;font-size:12px;gap:12px}.booking-mobile svg{width:15px;height:15px}.lightbox-bar{padding:12px}.lightbox-bar p{font-size:11px}.lightbox-controls{gap:6px}}
@media(max-width:370px){.hero{min-height:720px}.hero-copy{padding:26px 20px}.hero h1{font-size:46px}.hero-note{left:12px;width:calc(100% - 158px)}.hero-promo{right:12px;width:120px}.content-section{padding-left:20px;padding-right:20px}.service-image{height:155px}.service-body h3{font-size:17px}.section-head h2{font-size:32px}.treatment-feature{grid-template-columns:100px 1fr;gap:14px}.contact-details{grid-template-columns:1fr}.contact-details .contact-wide{grid-column:auto}.booking-mobile{left:12px;right:12px;padding-left:15px}.booking-mobile>a:first-child{font-size:11px}.booking-mobile .button{padding:11px 13px;font-size:11px}.social-strip a{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Final layout adjustments after desktop and phone inspection. */
@media(min-width:1191px) and (max-width:1499px){.hero{min-height:690px}}
@media(min-width:1001px) and (max-width:1190px){.hero{min-height:650px}}
@media(min-width:701px) and (max-width:1000px){.hero{min-height:640px}}
@media(max-width:700px){.hero h1 br:last-of-type{display:initial}.hero-image{height:515px}.hero:after{background:linear-gradient(#e1edf7 0%,#e1edf7 33%,#e1edf700 55%)}.treatment-feature>a:first-child{grid-row:1/6}.treatment-feature>a:first-child img{height:185px}.treatment-feature .text-link{grid-column:2}.section-head>div:first-child{min-width:0}}
@media(max-width:370px){.hero h1{font-size:40px}.feature-title{font-size:33px}}

/* Original homepage treatments, presented as an accessible hero carousel. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero.hero-carousel{min-height:620px;background:#e9eff7;isolation:isolate}
.hero-carousel:after{display:none}
.hero-slide{position:relative;min-height:620px;animation:hero-appear .45s ease-out}
.hero-slide[hidden]{display:none}
.hero-slide-image{position:absolute;right:0;top:0;width:65%;height:100%;object-fit:contain;object-position:center bottom}
.hero-slide-copy{position:relative;padding:72px 46px 125px;max-width:62%;z-index:1;background:transparent}
.hero-slide-copy h2{font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.08;letter-spacing:-.022em;color:var(--blue);margin:28px 0 22px;max-width:650px}
.hero-slide-copy .eyebrow{font-size:12px}
.hero-slide-copy .hero-description{font-size:18px;line-height:1.65;max-width:370px;color:#354b6b;min-height:60px}
.hero-slide-copy .button{margin-top:25px}
.hero-controls{position:absolute;bottom:30px;left:46px;right:30px;display:flex;align-items:center;justify-content:space-between;z-index:3}
.hero-dots,.hero-arrows{display:flex;gap:10px;align-items:center}
.hero-dot{position:relative;padding:15px 0;width:53px;min-height:48px;border:0;background:none;color:var(--blue);font-size:12px;text-align:left;opacity:.45}
.hero-dot:after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:2px;background:var(--blue);transition:height .2s}
.hero-dot[aria-current=true]{opacity:1}
.hero-dot[aria-current=true]:after{height:4px}
.hero-dot:hover{opacity:1}
.hero-arrows .icon-button{width:45px;height:45px;background:white;color:var(--blue);border-color:white}
.hero-arrows .hero-pause{margin-right:6px}
.hero-carousel .hero-promo{z-index:2}
.hero-booking{margin:0 48px;padding:28px 0 32px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}
.hero-booking .booking-copy{flex-shrink:0}
.hero-booking .booking-copy h2{font-size:clamp(24px,2.2vw,32px);line-height:1.25;color:var(--blue)}
.hero-booking .booking-copy p{margin-top:6px;font-size:14px;line-height:1.5;color:var(--muted)}
.hero-booking>.button{flex-shrink:0}
.booking-arrow{position:relative;display:block;flex:1;min-width:40px;height:16px;color:var(--blue);margin:0 10px}
.booking-arrow:before{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px solid currentColor}
.booking-arrow:after{content:'';position:absolute;right:1px;top:50%;width:10px;height:10px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:translateY(-50%) rotate(45deg)}
.feature-wrap+.problems{margin-top:70px}
@keyframes hero-appear{from{opacity:.5}to{opacity:1}}
@media(max-width:1100px) and (min-width:701px){.hero-slide-copy{padding-left:34px;max-width:65%}.hero-slide-copy .hero-description{max-width:310px;font-size:16px}.hero-controls{left:34px}.hero-carousel .hero-promo{width:128px}.hero-booking{margin:0 36px}}
@media(max-width:700px){.hero.hero-carousel{min-height:0}.hero-slide{min-height:0;display:flex;flex-direction:column;padding-bottom:0}.hero-slide-copy{order:1;max-width:none;min-height:340px;padding:30px 24px 26px}.hero-slide-copy h2{font-size:clamp(1.75rem,9.5vw,2.75rem);line-height:1.1;margin:20px 0 16px;letter-spacing:-.02em}.hero-slide-copy .eyebrow{font-size:10px}.hero-slide-copy .hero-description{font-size:15px;line-height:1.6;min-height:48px;max-width:300px}.hero-slide-copy .button{font-size:13px;margin-top:20px;padding:13px 20px}.hero-slide-image{order:2;position:relative;width:100%;height:auto;aspect-ratio:auto;object-position:center bottom}.hero-carousel .hero-promo{display:none}.hero-controls{left:23px;right:20px;bottom:14px}.hero-dots{gap:8px}.hero-dot{width:31px;font-size:11px}.hero-arrows{gap:7px}.hero-arrows .icon-button{width:36px;height:36px}.hero-arrows .hero-pause{margin-right:2px}.hero-booking{margin:0 24px;padding:25px 0;display:grid;grid-template-columns:1fr auto;gap:22px 18px;align-items:center}.hero-booking .booking-copy{grid-column:1/-1}.hero-booking .booking-copy h2{font-size:24px}.hero-booking .booking-copy p{font-size:13px}.hero-booking .booking-arrow{width:100%;min-width:0;margin:0}.hero-booking .button{font-size:11px;gap:9px;padding:12px 14px;align-self:center;flex-shrink:0}.hero-booking .button svg{width:15px}.feature-wrap+.problems{margin-top:42px}.feature-title{font-size:clamp(1.8rem,8.7vw,3.8rem)}}
@media(max-width:370px){.hero-slide-copy{padding:26px 20px;min-height:330px}.hero-controls{left:20px;right:17px}.hero-arrows{gap:5px}.hero-arrows .icon-button{width:32px;height:32px}.feature-title{font-size:28px}}
@media(prefers-reduced-motion:reduce){.hero-slide{animation:none}}
/* Keep Instagram's label and profile name together; do not inherit paragraph spacing. */
.social-strip{align-items:center;gap:22px;padding-top:28px}
.social-strip>svg{flex:0 0 32px;width:32px;height:32px}
.social-strip a{min-width:0;gap:20px;letter-spacing:normal}
.social-name{display:flex;flex-direction:column;gap:5px;min-width:0}
.social-label{font-size:12px;line-height:1.5;color:var(--muted);font-weight:400;letter-spacing:normal}
.social-handle{font-size:clamp(1.1rem,2.3vw,2rem);line-height:1.35;letter-spacing:-.01em;color:var(--blue);overflow-wrap:anywhere}
.social-strip .circle{flex-shrink:0}
.footer-bottom p{margin:0}
@media(max-width:700px){.social-strip{gap:13px}.social-strip>svg{flex-basis:25px;width:25px;height:25px}.social-strip a{gap:12px}.social-label{font-size:11px}.social-handle{font-size:clamp(.9rem,4vw,1.2rem)}.footer-bottom p+p{margin-top:9px}}

/* Mobile card rails retain native touch scrolling and keyboard-accessible links. */
.mobile-slider-controls{display:none}
@media(max-width:700px){
 .mobile-card-slider{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(84%,320px);gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;align-items:stretch;padding-bottom:8px}
 .mobile-card-slider::-webkit-scrollbar{display:none}
 .mobile-card-slider>a{scroll-snap-align:start;scroll-snap-stop:always}
 .service-grid.mobile-card-slider{margin:0 -24px;padding-left:24px;padding-right:24px;scroll-padding-inline:24px}
 .problem-grid.mobile-card-slider{margin:0 -15px;padding-left:15px;padding-right:15px;scroll-padding-inline:15px}
 .mobile-card-slider .service-image{height:230px}
 .mobile-card-slider .service-body{padding:21px 20px 24px}
 .mobile-card-slider .service-body h3{font-size:23px}
 .mobile-card-slider .service-body p{font-size:13px;min-height:39px}
 .mobile-card-slider .text-link{font-size:12px;gap:12px}
 .mobile-card-slider .text-link svg{width:16px;height:16px}
 .mobile-card-slider .problem-card{display:flex;flex-direction:column}
 .mobile-card-slider .problem-card img{height:205px}
 .mobile-card-slider .problem-info{padding:20px;display:flex;flex-direction:column;flex:1}
 .mobile-card-slider .problem-info h3{font-size:23px;min-height:53px}
 .mobile-card-slider .problem-info p{font-size:12px;margin:12px 0 20px}
 .mobile-slider-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}
 .mobile-slider-controls>span{font-size:11px;color:var(--muted)}
 .mobile-slider-controls>div{display:flex;gap:8px}
 .mobile-slider-controls .icon-button{width:44px;height:44px;flex-shrink:0;background:white}
}
