@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito+Sans:wght@400;500;600;700;800&display=swap');
:root{--ink:#37323a;--muted:#716d75;--cream:#fffdfb;--paper:#fff;--peach:#f4c9d8;--coral:#e984ac;--yellow:#f4d66b;--mint:#8bd0c1;--lilac:#d9b8d5;--line:#eee7ec;--serif:'Fredoka','Trebuchet MS',sans-serif;--sans:'Nunito Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.announcement{text-align:center;padding:8px 16px;background:#f5dfd4;font-size:12px;letter-spacing:.035em}.announcement span{color:var(--coral);padding-left:5px}.site-header{height:86px;padding:0 max(6vw,24px);display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:10px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:var(--coral);color:white;font:600 27px var(--serif);position:relative}.brand-mark span{font:14px var(--sans);position:absolute;right:-4px;top:-5px;color:#d6a843}.brand-name{font:600 24px/1 var(--serif);letter-spacing:-.04em}.brand-name small{display:block;margin-top:5px;font:600 8px/1 var(--sans);letter-spacing:.19em}.nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.nav>a:not(.button):hover,.footer a:hover,.text-link:hover{color:var(--coral)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 22px;border-radius:4px;background:var(--coral);color:white;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#bd6046}.button span{font-size:18px;line-height:0}.button-small{padding:12px 17px}.menu-toggle{display:none}.hero{position:relative;min-height:570px;padding:70px max(9vw,30px) 75px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%;overflow:hidden}.hero-copy{max-width:530px;position:relative;z-index:1}.eyebrow{margin:0 0 15px;color:var(--coral);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}.eyebrow span{font-size:16px;margin-right:5px}h1,h2,h3,p{margin-top:0}h1,h2{font:500 clamp(44px,5.5vw,72px)/1.1 var(--serif);letter-spacing:-.045em;margin-bottom:21px}h1 em,h2 em{font-weight:500;color:var(--coral)}.hero-intro{max-width:400px;color:var(--muted);font-size:16px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:29px}.text-link{font-size:13px;font-weight:700}.text-link span{padding-left:7px;color:var(--coral)}.hero-note{margin-top:45px;display:flex;align-items:center;gap:13px;color:var(--muted);font-size:11px;line-height:1.6}.hero-note b{color:var(--ink)}.sparkle{color:#d7a843;font-size:34px}.hero-art{height:430px;position:relative;display:grid;place-items:center}.hero-photo{width:82%;height:100%;border-radius:48% 48% 8px 8px;background:linear-gradient(145deg,#f4ddd1,#edc4b4 55%,#d9c6de)!important}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;color:#82746c;font-size:11px;letter-spacing:.025em;background-color:#f2e5dc;background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1px);background-size:13px 13px}.photo-icon{font-size:29px;color:#c47760;line-height:1}.floating-note{position:absolute;left:-2%;bottom:43px;border-radius:50px;background:white;padding:12px 20px;box-shadow:0 8px 30px #5e3d2518;font:italic 15px var(--serif)}.floating-note span{color:#d4a440;margin-right:8px}.hero-doodle{position:absolute;right:0;top:14px;font-size:60px;color:#d8a743}.hero-scribble{position:absolute;right:8%;bottom:20px;font-size:38px;color:#daa93e}.section{padding:105px max(10vw,30px)}.welcome{background:#fff;display:grid;grid-template-columns:.9fr 1fr;gap:11%;align-items:center;position:relative;overflow:hidden}.welcome-image{min-height:360px;border-radius:5px;background:linear-gradient(135deg,#e7d2c2,#dccde5 60%,#f1d4c0)}.welcome-copy{max-width:480px}.welcome h2,.section-heading h2,.visit h2{font-size:clamp(38px,4.5vw,57px)}.welcome-copy>p:not(.eyebrow),.visit-copy>p:not(.eyebrow){font-size:14px;color:var(--muted)}.welcome-copy .text-link{display:inline-block;margin-top:14px}.welcome-flower{position:absolute;right:3%;bottom:-52px;font-size:140px;color:#f2e8dc}.services{background:var(--cream)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-heading h2{margin:0}.section-heading>p{max-width:310px;color:var(--muted);font-size:13px;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{padding:27px 23px 24px;background:white;border:1px solid #f1e8e0;min-height:250px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #5e3d2510}.service-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;font-size:23px;margin-bottom:22px}.peach{background:#f8e1d7;color:#b65f48}.lilac{background:#eee8f4;color:#8871a0}.mint{background:#e4efe8;color:#648b72}.yellow{background:#fcf0ca;color:#a9832a}.service-card h3{font:600 19px/1.25 var(--serif);margin-bottom:10px}.service-card p{font-size:12px;line-height:1.7;color:var(--muted);min-height:61px}.service-card>a{font-size:10px;font-weight:700;color:var(--coral)}.service-card>a span{padding-left:4px}.detail-note{margin:20px 0 0;font-size:10px;color:#887e78}.comfort-band{background:#d9e5dc;padding:75px max(10vw,30px)}.comfort-inner{display:grid;grid-template-columns:50px 1fr 1fr;gap:25px;align-items:center;max-width:1100px;margin:auto}.comfort-star{font-size:44px;color:#72937d;align-self:start;padding-top:18px}.comfort-inner h2{font-size:clamp(38px,4.4vw,55px);margin-bottom:15px}.comfort-inner h2 em{color:#6a8973}.comfort-inner>div:nth-child(2)>p:not(.eyebrow){font-size:13px;color:#59665c;max-width:370px}.button-light{background:#627f69;margin-top:10px}.button-light:hover{background:#4d6a55}.comfort-photo{height:330px;border-radius:50% 50% 4px 4px;background:linear-gradient(135deg,#e9d1c6,#c4d7cb 60%,#ead9c8)}.gallery{background:white}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:18px}.gallery-tile{height:270px;border-radius:3px}.tile-one{background:linear-gradient(145deg,#f1d6c9,#dec8dc 60%,#efd7b8)}.tile-two{margin-top:38px;height:232px;background:linear-gradient(145deg,#e5d8cd,#d3e2d5 60%,#f2d7c6)}.tile-three{background:linear-gradient(145deg,#f1e1b4,#ebc8b8 60%,#d9ccdf)}.cta-band{padding:88px 20px 94px;text-align:center;background:#f5e5db;position:relative;overflow:hidden}.cta-band h2{font-size:clamp(41px,5vw,61px);margin-bottom:26px}.cta-flower{position:absolute;right:12%;top:22px;font-size:95px;color:#e7c3ae;transform:rotate(13deg)}.visit{display:grid;grid-template-columns:.9fr 1fr;gap:12%;align-items:center}.visit-copy{max-width:400px}.visit-copy .button{margin:13px 0 0}.visit-card{background:white;padding:30px 34px;border:1px solid var(--line)}.visit-row{display:flex;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.visit-icon{width:36px;height:36px;flex:none;border-radius:50%;background:#f8e8df;display:grid;place-items:center;color:var(--coral)}.visit-row b{font:600 16px var(--serif)}.visit-row p{margin:4px 0 0;font-size:12px;color:var(--muted);line-height:1.65}.visit-row small{color:#9a8e86;font-size:10px}.map-placeholder{height:95px;margin-top:20px;background:#e4ebe3;display:flex;align-items:center;justify-content:center;gap:10px;color:#6f7f70;font-size:11px}.map-placeholder span{font-size:17px}.footer{padding:35px max(6vw,24px);background:#312b28;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.brand-footer .brand-mark{background:#d98265}.footer>p{font:italic 15px var(--serif);margin:0;color:#eadbd2}.footer>div{display:flex;gap:20px;font-size:11px}.footer>small{width:100%;font-size:10px;color:#b8aaa3}.footer .brand-name{font-size:21px}
@media(max-width:900px){.nav{gap:18px}.hero{padding-left:7vw;padding-right:7vw}.section{padding-left:7vw;padding-right:7vw}.service-grid{grid-template-columns:repeat(2,1fr)}.comfort-band{padding-left:7vw;padding-right:7vw}.comfort-inner{grid-template-columns:30px 1fr 1fr;gap:18px}.welcome{gap:7%}}
@media(max-width:680px){.announcement{font-size:10px}.site-header{height:72px;padding:0 22px}.brand-mark{width:38px;height:38px;font-size:24px}.brand-name{font-size:21px}.menu-toggle{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:700}.menu-toggle span{font-size:18px}.nav{display:none;position:absolute;top:72px;left:0;right:0;padding:20px 24px 24px;background:var(--cream);box-shadow:0 12px 18px #44312612;align-items:stretch;flex-direction:column;gap:18px}.nav.is-open{display:flex}.nav .button{align-self:flex-start}.hero{padding:55px 25px 55px;grid-template-columns:1fr;gap:20px}.hero-copy{max-width:none}.hero h1{font-size:56px}.hero-art{height:330px;margin:0 5%}.hero-photo{width:76%}.hero-note{margin-top:29px}.floating-note{left:-3%;bottom:24px}.hero-doodle{right:3%;font-size:43px}.hero-scribble{right:7%;bottom:4px}.section{padding:72px 25px}.welcome{grid-template-columns:1fr;gap:35px}.welcome-image{min-height:280px}.welcome-copy{max-width:none}.welcome-flower{font-size:100px;bottom:-40px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin:13px 0 0}.service-grid{gap:11px}.service-card{padding:21px 16px;min-height:250px}.service-card h3{font-size:17px}.service-card p{font-size:11px}.comfort-band{padding:60px 25px}.comfort-inner{grid-template-columns:28px 1fr;gap:10px}.comfort-photo{grid-column:2;height:260px;margin-top:20px}.comfort-inner h2{font-size:43px}.comfort-star{font-size:32px}.gallery-grid{grid-template-columns:1fr 1fr;gap:11px}.gallery-tile{height:205px}.tile-two{margin-top:23px;height:180px}.tile-three{height:180px;margin-top:-13px}.cta-band{padding:70px 20px}.cta-flower{right:-8px;top:9px;font-size:75px}.visit{grid-template-columns:1fr;gap:33px}.visit-card{padding:23px}.footer{justify-content:flex-start}.footer>p{margin-left:auto}.footer>div{width:100%;order:3}.footer>small{order:4}}
@media(max-width:390px){.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.service-card p{min-height:0}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.gallery-tile{height:165px}.tile-two,.tile-three{height:150px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.nav>a.active{color:var(--coral)}.page-hero{padding:82px 25px 55px;text-align:center;background:#f7e9df}.page-hero h1{font-size:clamp(47px,6vw,70px);margin-bottom:15px}.page-hero>p:not(.eyebrow){max-width:540px;margin:0 auto 24px;color:var(--muted);font-size:14px}.breadcrumb{font-size:11px;color:#897d76}.breadcrumb a{color:var(--coral)}.breadcrumb span{padding:0 7px;color:#b7aaa2}.style-gallery{grid-template-columns:repeat(3,1fr)}.style-gallery .gallery-tile{margin-top:0;height:270px}.social-links{display:flex;align-items:center;gap:12px}.social-links a{width:35px;height:35px;border:1px solid #746761;border-radius:50%;display:grid;place-items:center;color:#fff;transition:background .2s,border-color .2s}.social-links a:hover{background:var(--coral);border-color:var(--coral);color:white}.social-links svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.social-links a:nth-child(2) svg,.social-links a:nth-child(3) svg{fill:currentColor;stroke:none}.social-links .social-dot{fill:currentColor;stroke:none}.footer-links{display:flex;gap:18px;font-size:11px}.footer{row-gap:18px}.footer>small{margin-top:1px}
@media(max-width:680px){.page-hero{padding:64px 25px 42px}.style-gallery{grid-template-columns:1fr 1fr}.style-gallery .gallery-tile{height:190px}.footer-links{order:3;width:100%;flex-wrap:wrap}.social-links{margin-left:auto;order:2}.footer>div:not(.footer-links){width:auto}.footer>small{order:4}}
.brand-mark{display:none}.brand-name{font:700 34px/.92 var(--serif);letter-spacing:.005em;text-transform:capitalize;background:linear-gradient(90deg,#e889b0 0 16%,#75c9c2 16% 33%,#efb37e 33% 50%,#f1d263 50% 67%,#83cec2 67% 82%,#d7a3cb 82%);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-name small{margin-top:4px;color:#e984ac;background:none;-webkit-text-fill-color:#e984ac;font:800 10px/1.1 var(--sans);letter-spacing:.19em}.brand-name::after{content:'FOR EVERY CROWN';display:block;margin-top:3px;color:#83cbbd;-webkit-text-fill-color:#83cbbd;font:800 8px/1.1 var(--sans);letter-spacing:.16em}.brand-footer .brand-name{font-size:29px}.brand-footer .brand-name small{color:#f0a0bc;-webkit-text-fill-color:#f0a0bc}.brand-footer .brand-name::after{color:#9bdbcd;-webkit-text-fill-color:#9bdbcd}.brand-name small{font-size:0}.brand-name small::after{content:'KIDS SALON';font-size:10px}.brand-footer .brand-name small::after{font-size:9px}h1,h2,h3{font-family:var(--serif);font-weight:500}
.brand{gap:8px;align-items:center}.brand-avatar{display:block;position:relative;overflow:hidden;flex:none;width:59px;height:36px}.brand-avatar img{position:absolute;display:block;height:78px;width:auto;max-width:none;left:50%;top:0;transform:translateX(-50%)}.brand-wordmark{display:flex;align-items:baseline;white-space:nowrap;font:600 30px/.9 var(--serif);letter-spacing:.005em}.brand-wordmark .pink{color:#e889b0}.brand-wordmark .aqua{color:#75c9c2}.brand-wordmark .peach{color:#efb37e}.brand-wordmark .yellow{color:#e6c547}.brand-wordmark .lilac{color:#d7a3cb}.brand-wordmark small{display:block;font:800 9px/1 var(--sans);letter-spacing:.15em}.brand-wordmark>small{position:absolute;margin-top:0;transform:translateY(14px);color:#e889b0}.brand-wordmark .brand-tagline{transform:translateY(26px);color:#83cbbd;font-size:7px;letter-spacing:.13em}.brand-footer .brand-wordmark{font-size:26px}.brand-footer .brand-avatar{width:52px;height:33px}.brand-footer .brand-avatar img{height:71px}.brand-footer .brand-wordmark>small{transform:translateY(12px);font-size:8px}.brand-footer .brand-wordmark .brand-tagline{transform:translateY(23px);font-size:6px}.site-header{height:92px}.footer .brand-wordmark{position:relative;padding-bottom:0}@media(max-width:680px){.site-header{height:80px}.brand{gap:5px}.brand-avatar{width:48px;height:32px}.brand-avatar img{height:69px}.brand-wordmark{font-size:25px}.brand-wordmark>small{transform:translateY(12px);font-size:8px}.brand-wordmark .brand-tagline{transform:translateY(23px);font-size:6px}.brand-footer .brand-avatar{width:48px}.brand-footer .brand-wordmark{font-size:24px}}
.brand-wordmark{display:block;position:relative;line-height:.92}.brand-wordmark>small,.brand-wordmark .brand-tagline{position:static;transform:none;margin:3px 0 0}.brand-wordmark .brand-tagline{margin-top:2px}.brand-footer .brand-wordmark>small,.brand-footer .brand-wordmark .brand-tagline{transform:none}
.brand-logo{display:block;width:96px;height:auto;object-fit:contain;flex:none}.site-header{height:108px}.brand{gap:0}.brand-avatar,.brand-wordmark{display:none}.footer .brand-logo{width:96px}.button span,.text-link span,.service-card>a span,.floating-note>span,.eyebrow>span,.photo-icon,.hero-doodle,.hero-scribble,.welcome-flower,.cta-flower,.comfort-star,.visit-icon,.announcement span{display:none!important}.service-icon{display:none}.photo-placeholder{gap:0}.footer>p{white-space:nowrap}@media(max-width:680px){.site-header{height:84px}.brand-logo{width:70px}.footer .brand-logo{width:82px}}
.comfort-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;max-width:1000px}.comfort-inner>div:nth-child(2){max-width:440px;justify-self:center}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.gallery-grid .gallery-tile{height:auto;aspect-ratio:1;margin:0}
@media(max-width:680px){.comfort-inner{grid-template-columns:minmax(0,1fr);gap:22px}.comfort-inner>div:nth-child(2){max-width:none;justify-self:stretch}.comfort-photo{grid-column:auto;height:auto;aspect-ratio:1.12;margin-top:0}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.gallery-grid .gallery-tile{height:auto;aspect-ratio:1;margin:0}}
.service-menu{max-width:1180px;margin:auto}.service-menu-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.service-menu-heading h2,.faq-section h2{font-size:clamp(38px,4.5vw,56px);margin:0}.service-menu-heading>p{max-width:385px;color:var(--muted);font-size:13px;margin:0 0 5px}.service-filters{display:flex;gap:9px;overflow-x:auto;padding:0 0 19px;margin-bottom:4px;border-bottom:1px solid var(--line);scrollbar-width:thin}.service-filter{flex:none;border:1px solid #e8dfe3;background:#fff;color:var(--ink);padding:10px 17px;border-radius:3px;font:700 11px var(--sans);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.service-filter:hover,.service-filter.is-active{background:var(--coral);border-color:var(--coral);color:#fff}.service-list{max-width:1000px}.service-row{display:grid;grid-template-columns:minmax(0,1fr) 185px 150px;gap:28px;align-items:center;padding:23px 5px;border-bottom:1px solid var(--line)}.service-row[hidden]{display:none}.service-row-copy h3{font:600 21px/1.2 var(--serif);margin:0 0 6px}.service-row-copy p{font-size:12px;color:var(--muted);margin:0;max-width:500px}.service-row-meta span{display:block;font-size:12px;font-weight:800;color:#4d484b}.service-row-meta small{display:block;color:#92878d;font-size:10px;margin-top:4px}.service-row-link{font-size:11px;font-weight:800;color:var(--coral);white-space:nowrap}.service-row-link:hover{color:#a94c76}.service-menu-note{font-size:10px;color:#867b80;margin-top:18px}.faq-section{background:#fff}.faq-section .section-heading>p{margin-bottom:5px}.faq-list{max-width:850px;border-top:1px solid var(--line)}.faq-list details{padding:18px 3px;border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;font:600 17px var(--serif);position:relative;padding-right:30px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:4px;top:-3px;font:500 23px var(--sans);color:var(--coral)}.faq-list details[open] summary::after{content:'−'}.faq-list details p{max-width:720px;margin:13px 0 0;color:var(--muted);font-size:12px}.service-menu.section{padding-top:76px;padding-bottom:88px}
@media(max-width:680px){.service-menu-heading{display:block;margin-bottom:25px}.service-menu-heading>p{margin-top:13px}.service-filters{gap:7px;margin-right:-25px;padding-right:25px}.service-filter{padding:9px 13px}.service-row{grid-template-columns:minmax(0,1fr) auto;gap:12px 15px;padding:18px 0}.service-row-copy h3{font-size:18px}.service-row-meta{grid-column:2;grid-row:1;text-align:right}.service-row-meta span{font-size:11px}.service-row-meta small{font-size:9px}.service-row-link{grid-column:1 / -1}.service-menu.section{padding-top:60px;padding-bottom:65px}.faq-list summary{font-size:16px}}
.service-row{grid-template-columns:96px minmax(0,1fr) 165px 135px;gap:22px;padding:20px 5px}.service-photo{width:92px;height:76px;position:relative;overflow:hidden;background-color:#f3dce7;background-image:radial-gradient(rgba(255,255,255,.78) 1.2px,transparent 1.2px),linear-gradient(145deg,#edcad9,#f0dfb4 55%,#cde8df);background-size:13px 13px,cover;box-shadow:0 5px 12px rgba(68,48,41,.1);border:3px solid #fff;transform:rotate(-2deg);transition:transform .25s ease}.service-row:hover .service-photo{transform:rotate(0deg) scale(1.04)}.service-row:nth-child(even) .service-photo{width:82px;height:88px;margin-left:8px;border-radius:44% 18% 42% 22%;transform:rotate(3deg)}.service-row:nth-child(3n) .service-photo{width:100px;height:70px;border-radius:18% 43% 19% 45%;transform:rotate(-3deg)}.service-row:nth-child(4n) .service-photo{width:84px;height:84px;margin-left:5px;border-radius:50% 18% 50% 18%;transform:rotate(2deg)}.service-row:nth-child(1) .service-photo{background-image:radial-gradient(rgba(255,255,255,.72) 1.2px,transparent 1.2px),linear-gradient(145deg,#efbfd3,#dcccf0 58%,#f3dea3)}.service-row:nth-child(2) .service-photo{background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#cfe8df,#f0d0b7 58%,#e8cce3)}.service-row:nth-child(3) .service-photo{background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#f1dfac,#dfc9e8 58%,#f0c8d9)}.service-row:nth-child(4) .service-photo{background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#d1ebe3,#edc3d7 58%,#f4dda2)}.service-row:nth-child(5) .service-photo{background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#efc9d9,#f3dfa2 58%,#d9d0ed)}.service-row:nth-child(6) .service-photo{background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#d4e9e1,#f1c8b4 58%,#e3cfe9)}
@media(max-width:680px){.service-row{grid-template-columns:78px minmax(0,1fr);gap:9px 14px;padding:17px 0}.service-photo,.service-row:nth-child(even) .service-photo,.service-row:nth-child(3n) .service-photo,.service-row:nth-child(4n) .service-photo{grid-column:1;grid-row:1 / span 2;width:70px;height:70px;margin:3px 0 0;align-self:center}.service-row-copy{grid-column:2;grid-row:1}.service-row-copy h3{font-size:17px}.service-row-meta{grid-column:2;grid-row:2;text-align:left}.service-row-meta span{font-size:10px}.service-row-meta small{font-size:9px}.service-row-link{grid-column:2;grid-row:3;font-size:10px}.service-row:nth-child(2n){padding-left:8px}}
.service-card{padding:0;min-height:0;background:transparent;border:0;overflow:visible;transition:transform .25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:none}.service-card-link{display:block;height:100%;color:inherit}.home-service-art{height:178px;position:relative;overflow:hidden;background-size:15px 15px,cover;border:4px solid #fff;box-shadow:0 9px 22px rgba(80,50,62,.1);transition:transform .25s ease}.home-service-art::after{content:"";position:absolute;width:34px;height:34px;border-radius:50%;right:12px;top:12px;background:rgba(255,255,255,.38);box-shadow:-120px 126px 0 -8px rgba(255,255,255,.5)}.service-item:nth-child(1) .home-service-art{border-radius:42% 18% 38% 15%;transform:rotate(-2deg);background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#efbfd3,#dcccf0 58%,#f3dea3)}.service-item:nth-child(2) .home-service-art{height:198px;border-radius:18% 45% 16% 42%;transform:rotate(2deg);background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#cfe8df,#f0d0b7 58%,#e8cce3)}.service-item:nth-child(3) .home-service-art{height:168px;border-radius:48% 16% 44% 20%;transform:rotate(-1deg);background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#f1dfac,#dfc9e8 58%,#f0c8d9)}.service-item:nth-child(4) .home-service-art{height:190px;border-radius:20% 44% 18% 46%;transform:rotate(2deg);background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#d4e9e1,#f1c8b4 58%,#e3cfe9)}.service-image-link:hover .home-service-art{transform:rotate(0deg) scale(1.02)}.service-card-body{height:100%;margin-top:12px;padding:18px 17px 20px;background:#fff;border:1px solid #f0e7e8}.service-kicker{display:block;color:#c9799d;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px}.service-card-body h3{font:600 20px/1.2 var(--serif);margin-bottom:8px}.service-card-body p{min-height:61px;margin-bottom:13px;font-size:12px;line-height:1.65;color:var(--muted)}.service-more{font-size:10px;font-weight:800;color:var(--coral)}.service-card:hover .service-more{color:#a94c76}
@media(max-width:680px){.home-service-art,.service-item:nth-child(2) .home-service-art,.service-item:nth-child(3) .home-service-art,.service-item:nth-child(4) .home-service-art{height:140px}.service-card-body{padding:15px 13px 17px;margin-top:9px}.service-card-body h3{font-size:17px}.service-card-body p{font-size:11px;min-height:72px}.service-kicker{font-size:8px}}
.service-grid{align-items:start;gap:28px}.service-item{min-width:0;background:transparent;border:0;box-shadow:none}.service-image-link{display:block}.service-image-link:focus-visible{outline:2px solid var(--coral);outline-offset:5px}.service-item-copy{padding:17px 0 0}.service-item-copy .service-kicker{margin-bottom:7px}.service-item-copy h3{font:600 20px/1.2 var(--serif);margin:0 0 8px}.service-item-copy p{min-height:61px;margin:0 0 11px;font-size:12px;line-height:1.65;color:var(--muted)}.service-item .service-more{display:inline-block;color:#dc83ae;font-size:12px;font-weight:800;transition:color .2s,transform .2s}.service-item .service-more:hover{color:#ad5177;transform:translateX(3px)}.service-image-link:hover .home-service-art{transform:rotate(0deg) scale(1.035)}.services-bottom-cta{display:flex;justify-content:center;margin-top:39px}.services-bottom-cta .button{min-width:140px;background:#e984ac}.services-bottom-cta .button:hover{background:#ce6e97}
#services .service-item-price{display:block;margin:1px 0 9px;color:#c15b85;font:700 22px/1 var(--serif)}
@media(max-width:680px){.service-grid{gap:24px 14px}.service-item-copy{padding-top:13px}.service-item-copy h3{font-size:17px}.service-item-copy p{font-size:11px;min-height:72px}.service-item .service-more{font-size:11px}.services-bottom-cta{margin-top:30px}}
.comfort-band{position:relative;z-index:1;margin:-32px 0 -38px;padding-top:108px;padding-bottom:108px;background:transparent}.comfort-band::before{content:"";position:absolute;z-index:-1;inset:0 -3.5vw;background:#e2f1eb;border-radius:92px 32px 82px 38px}.comfort-inner{position:relative}.comfort-photo{position:relative;border:8px solid #fff;border-radius:46% 18% 43% 16%;box-shadow:0 12px 26px rgba(72,58,64,.13);transform:rotate(1.6deg);transition:transform .25s ease}.comfort-photo::before{content:"";position:absolute;top:-15px;left:36%;width:76px;height:21px;border-radius:2px;background:rgba(241,210,128,.82);transform:rotate(-5deg)}.comfort-photo:hover{transform:rotate(0deg) scale(1.015)}.cta-band{position:relative;z-index:2;margin:-36px 2vw -40px;padding:112px 24px 118px;border-radius:104px 34px 90px 30px;transform:none}.cta-band h2{position:relative;display:table;margin:0 auto 28px;transform:rotate(-.8deg);padding:0 12px}.cta-band h2::after{content:"";position:absolute;left:16%;right:12%;bottom:-11px;height:10px;border-bottom:2px solid rgba(220,131,174,.42);border-radius:50%}.cta-band .button{position:relative;z-index:1}
@media(max-width:680px){.comfort-band{margin:-20px 0 -24px;padding-top:79px;padding-bottom:82px}.comfort-band::before{inset:0 -16px;border-radius:48px 20px 44px 18px}.comfort-photo{transform:rotate(1deg)}.comfort-photo::before{top:-12px;left:38%;width:58px;height:17px}.cta-band{margin:-22px 0 -26px;padding:84px 20px 90px;border-radius:55px 18px 52px 16px}.cta-band h2{transform:rotate(-.55deg);padding:0}.cta-band h2::after{bottom:-8px;height:7px}}
.comfort-band{isolation:isolate;margin:-44px 0 -50px;padding-top:118px;padding-bottom:120px}.comfort-band::before{inset:-36px -3vw;border-radius:96px 28px 86px 32px;clip-path:ellipse(97% 55% at 50% 50%)}.comfort-photo{height:330px;min-height:0;border:5px solid #fff;border-radius:18% 44% 17% 42%;background-image:radial-gradient(rgba(255,255,255,.72) 1.2px,transparent 1.2px),linear-gradient(145deg,#cfe8df,#f0d0b7 58%,#e8cce3);background-size:13px 13px,cover;box-shadow:0 9px 22px rgba(80,50,62,.12);transform:rotate(2deg)}.comfort-photo::before{top:-9px;left:28%;width:52px;height:13px;border-radius:2px;background:rgba(238,183,198,.78);transform:rotate(-8deg)}.comfort-photo:hover{transform:rotate(0deg) scale(1.025)}.cta-band{isolation:isolate;overflow:visible;margin:-48px 0 -50px;padding:124px 24px 128px;border-radius:0;background:transparent}.cta-band::before{content:"";position:absolute;z-index:-1;inset:-38px -2vw;background:#f5e5db;border-radius:90px 28px 84px 30px;clip-path:ellipse(97% 55% at 50% 50%)}.cta-band h2{display:block;margin:-7px auto 28px;padding:0;transform:none}.cta-band h2::after{content:none}.cta-title-line{display:inline-block;transform:rotate(-1.3deg) translateX(-5px)}.cta-band h2 em{display:inline-block;transform:rotate(1.2deg) translateX(10px)}
@media(max-width:680px){.comfort-band{margin:-26px 0 -30px;padding-top:90px;padding-bottom:94px}.comfort-band::before{inset:-24px -16px;border-radius:52px 18px 48px 20px;clip-path:ellipse(105% 54% at 50% 50%)}.comfort-photo{height:auto;aspect-ratio:1.12;transform:rotate(1.5deg)}.comfort-photo::before{top:-8px;left:36%;width:42px;height:11px}.cta-band{margin:-28px 0 -30px;padding:94px 18px 100px}.cta-band::before{inset:-24px -10px;border-radius:52px 18px 48px 18px;clip-path:ellipse(104% 55% at 50% 50%)}.cta-band h2{font-size:clamp(38px,10vw,48px);margin:-4px auto 27px}.cta-title-line{transform:rotate(-1deg) translateX(-2px)}.cta-band h2 em{transform:rotate(1deg) translateX(5px)}}
.comfort-band{isolation:isolate;z-index:1;margin:-20px 0 -22px;padding-top:96px;padding-bottom:98px}.comfort-band::before{inset:-8px -1.5vw;background:#e2f1eb;border-radius:54px 20px 48px 24px;clip-path:ellipse(96% 58% at 50% 50%)}.comfort-photo{height:330px;min-height:0;border:4px solid #fff;border-radius:18% 45% 16% 42%;background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#cfe8df,#f0d0b7 58%,#e8cce3);background-size:15px 15px,cover;box-shadow:0 9px 22px rgba(80,50,62,.1);transform:rotate(2deg)}.comfort-photo::before{content:"";position:absolute;top:12px;right:12px;left:auto;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.38);box-shadow:-120px 126px 0 -8px rgba(255,255,255,.5);transform:none}.comfort-photo:hover{transform:rotate(0deg) scale(1.02)}.cta-band{isolation:auto;z-index:auto;overflow:hidden;margin:0;padding:88px 20px 94px;border-radius:0;background:#f5e5db}.cta-band::before{content:none}.cta-band h2{display:block;margin:0 auto 26px;padding:0;transform:none}.cta-band h2::after{content:none}.cta-band h2 em{display:inline;transform:none}
.gallery-grid:not(.style-gallery) .frame-arch{border-radius:48% 17% 36% 16%;transform:rotate(-2deg)}.gallery-grid:not(.style-gallery) .frame-lilypad{border-radius:15% 46% 13% 41%;transform:rotate(1.7deg)}.gallery-grid:not(.style-gallery) .frame-cloud{border-radius:53% 14% 45% 18%;transform:rotate(-1.2deg)}
@media(max-width:680px){.comfort-band{margin:-12px 0 -14px;padding-top:82px;padding-bottom:84px}.comfort-band::before{inset:-4px -8px;border-radius:42px 16px 40px 18px;clip-path:ellipse(96% 58% at 50% 50%)}.comfort-photo{height:auto;aspect-ratio:1.12;transform:rotate(1.5deg)}.cta-band{margin:0;padding:70px 20px 76px}.gallery-grid:not(.style-gallery) .frame-arch{transform:rotate(-1.5deg)}.gallery-grid:not(.style-gallery) .frame-lilypad{transform:rotate(1.3deg)}.gallery-grid:not(.style-gallery) .frame-cloud{transform:rotate(-.9deg)}}
.comfort-band::before{clip-path:ellipse(96% 52% at 50% 50%)}@media(max-width:680px){.comfort-band::before{clip-path:ellipse(96% 52% at 50% 50%)}}
.service-grid .service-item .home-service-art.shared-photo-frame,.service-list .service-row .service-photo.shared-photo-frame,.gallery-grid .gallery-tile.shared-photo-frame,.hero-art .hero-photo.shared-photo-frame,.welcome-image.shared-photo-frame,.comfort-photo.shared-photo-frame{border:4px solid #fff;border-radius:18% 45% 16% 42%;box-shadow:0 9px 22px rgba(80,50,62,.1);transform:rotate(2deg)}.service-grid .service-item .home-service-art.shared-photo-frame::after,.service-list .service-row .service-photo.shared-photo-frame::after,.gallery-grid .gallery-tile.shared-photo-frame::after,.hero-art .hero-photo.shared-photo-frame::after,.welcome-image.shared-photo-frame::after,.comfort-photo.shared-photo-frame::after{content:"";position:absolute;width:30px;height:30px;border-radius:50%;right:12px;top:12px;background:rgba(255,255,255,.38);box-shadow:-120px 126px 0 -8px rgba(255,255,255,.5)}.gallery-grid .shared-photo-frame::before{content:none}.service-image-link:hover .home-service-art.shared-photo-frame,.service-image-link:focus-visible .home-service-art.shared-photo-frame{transform:rotate(0deg) scale(1.07);z-index:2;box-shadow:0 14px 30px rgba(80,50,62,.2)}.service-image-link .home-service-art.shared-photo-frame{transition:transform .32s cubic-bezier(.2,.75,.25,1),box-shadow .32s ease}.service-image-link:active .home-service-art.shared-photo-frame{transform:rotate(0deg) scale(1.035)}.service-row:hover .service-photo.shared-photo-frame,.gallery-grid .gallery-tile.shared-photo-frame:hover,.comfort-photo.shared-photo-frame:hover{transform:rotate(0deg) scale(1.025)}
.service-grid .service-item .home-service-art.shared-photo-frame,.service-list .service-row .service-photo.shared-photo-frame,.gallery-grid .gallery-tile.shared-photo-frame,.hero-art .hero-photo.shared-photo-frame,.welcome-image.shared-photo-frame,.comfort-photo.shared-photo-frame{background-color:#e9dce9;background-image:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#efbfd3,#cfe8df 58%,#f3dea3);background-size:15px 15px,cover}.hero-art .hero-photo.shared-photo-frame{background:radial-gradient(rgba(255,255,255,.75) 1.2px,transparent 1.2px),linear-gradient(145deg,#efbfd3,#cfe8df 58%,#f3dea3)!important;background-size:15px 15px,cover!important}.shared-photo-frame::before{content:none!important}
.brand{gap:3px}.brand-name{font:700 34px/.92 var(--serif);letter-spacing:.005em;text-transform:none;background:linear-gradient(90deg,#e889b0 0 16%,#75c9c2 16% 33%,#efb37e 33% 50%,#f1d263 50% 67%,#83cec2 67% 82%,#d7a3cb 82%);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-name small{margin-top:4px;color:#e984ac;background:none;-webkit-text-fill-color:#e984ac;font:800 10px/1.1 var(--sans);letter-spacing:.19em}.brand-name .brand-tagline{margin-top:3px;color:#83cbbd;-webkit-text-fill-color:#83cbbd;font-size:8px;letter-spacing:.16em}.brand-footer .brand-name{font-size:29px}.brand-footer .brand-name small{color:#f0a0bc;-webkit-text-fill-color:#f0a0bc}.brand-footer .brand-name .brand-tagline{color:#9bdbcd;-webkit-text-fill-color:#9bdbcd}h1,h2,h3{font-family:var(--serif);font-weight:500}h1 em,h2 em{color:#dc83ae}.eyebrow,.text-link span{color:#d979a4}.button{background:#e984ac}.button:hover{background:#ce6e97}.button-light{background:#6ba99d}.button-light:hover{background:#548e82}.service-icon.peach{background:#f8e3eb;color:#d979a4}.service-icon.lilac{background:#eee4ef;color:#a579a1}.service-icon.mint{background:#e1f2ed;color:#5ca996}.service-icon.yellow{background:#fbf2d2;color:#aa8a27}.footer{background:#37323a}.announcement{background:#faeaf0}.welcome-flower{color:#f5eaf0}.comfort-band{background:#e2f1eb}.comfort-inner h2 em{color:#68a998}.comfort-star{color:#68a998}.tile-one{background:linear-gradient(145deg,#f1d5e2,#dfcde8 60%,#f0ddb4)}.tile-two{background:linear-gradient(145deg,#eedbd4,#d3e8dc 60%,#f2d7e2)}.tile-three{background:linear-gradient(145deg,#f4e7b9,#edcbdc 60%,#d8d8ef)}.hero-photo{background:linear-gradient(145deg,#f6dce7,#edc6d8 55%,#d9e8e0)!important}.welcome-image{background:linear-gradient(135deg,#ecd9cf,#e2d1eb 60%,#f1d4e0)}.comfort-photo{background:linear-gradient(135deg,#efd6df,#c9e4d9 60%,#eedec8)}.social-links a:hover{background:#dc83ae;border-color:#dc83ae}


/* Give the non-image sections the same clean, framed presentation. */
.hero,.section,.page-hero,.comfort-band,.cta-band{border:4px solid #fff;border-radius:14px;box-shadow:0 9px 22px rgba(80,50,62,.1)}
.hero,.section,.page-hero,.comfort-band,.cta-band{margin:16px max(2vw,12px)}
.comfort-band{padding:68px max(8vw,24px);background:#e2f1eb}
.comfort-band::before{inset:0!important;border-radius:10px!important;clip-path:none!important;background:#e2f1eb}
.cta-band{border-radius:14px}.booking-form{display:grid;gap:9px;margin-top:22px;text-align:left}
.booking-form>label,.booking-form legend{font-size:12px;font-weight:800;color:var(--ink)}
.booking-form input:not([type=checkbox]),.booking-form textarea{width:100%;border:1px solid #e7dfe4;border-radius:8px;background:#fff;padding:11px 12px;color:var(--ink);font:14px var(--sans)}
.booking-form input:focus,.booking-form textarea:focus{outline:2px solid #e984ac;outline-offset:2px}
.booking-form fieldset{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;border:1px solid #e7dfe4;border-radius:10px;padding:13px;margin:8px 0}
.booking-form legend{padding:0 5px}
.booking-check{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.booking-check input{accent-color:#e984ac}
.booking-form .button{justify-self:start;border:0;cursor:pointer;margin-top:7px}
.booking-status{font-size:11px;line-height:1.5;color:var(--muted);margin:2px 0 0}
#contact{scroll-margin-top:0}
@media(max-width:680px){.section,.page-hero,.comfort-band,.cta-band{border-radius:14px}.section{margin:12px 10px}.page-hero{margin:12px 10px 0}.comfort-band{margin:12px 10px;padding:52px 24px}.cta-band{margin:12px 10px}.booking-form fieldset{grid-template-columns:1fr}}

/* Let light sections blend into the page; send color bands edge to edge. */
.hero,.section,.page-hero,.comfort-band,.cta-band{border:0;border-radius:0;box-shadow:none;margin:0}
.welcome,.gallery,.faq-section,.service-menu,.visit,.visit-card{background:transparent}
.visit-card{border:0;padding:30px 0}
.comfort-band{isolation:auto;z-index:auto;background:#e2f1eb}
.comfort-band::before{content:none!important}
.cta-band{background:#f5e5db;overflow:hidden}
.cta-band h2 .cta-title-line{display:inline-block;transform:rotate(-1.8deg) translate(-7px,2px)}
.cta-band h2 em{display:inline-block;transform:rotate(1.8deg) translate(10px,-2px)}
@media(max-width:680px){.hero,.section,.page-hero,.comfort-band,.cta-band{margin:0}.visit-card{padding:20px 0}.comfort-band{padding:72px 25px}.cta-band h2 .cta-title-line{transform:rotate(-1.4deg) translate(-3px,2px)}.cta-band h2 em{transform:rotate(1.4deg) translate(5px,-2px)}}

/* Colored bands use a responsive contour modeled on the image frames. */
.page-hero,.comfort-band,.cta-band{position:relative;isolation:isolate;border:0;border-radius:0;background:transparent;box-shadow:none;margin-block:14px;margin-inline:clamp(22px,3vw,40px)}
.page-hero,.comfort-band{transform:rotate(2deg)}
.cta-band{transform:rotate(-2deg)}
.page-hero~.comfort-band{transform:rotate(-2deg)}
.page-hero::before,.comfort-band::before,.cta-band::before,.page-hero::after,.comfort-band::after,.cta-band::after{content:""!important;position:absolute;z-index:-1;inset:0;clip-path:url(#colored-band-shape);pointer-events:none}
.page-hero::before,.comfort-band::before,.cta-band::before{background:#fff}
.page-hero::after{inset:4px;background:#f7e9df}
.comfort-band::after{inset:4px;background:#e2f1eb}
.cta-band::after{inset:4px;background:#f5e5db}
@media(max-width:680px){.page-hero,.comfort-band,.cta-band{margin-block:12px;margin-inline:18px}}

/* Straighten the colored sections and the CTA headline without changing their outline. */
.page-hero,.comfort-band,.cta-band,.page-hero~.comfort-band{transform:none}
.cta-band .cta-title-line,.cta-band h2 em{transform:none}

/* Match the Kids cuts & trims frame: tight top-left/bottom-right, fuller top-right/bottom-left. */
.page-hero,.comfort-band,.cta-band{position:relative;isolation:auto;overflow:hidden;border:4px solid #fff;box-shadow:none}
.page-hero{background:#f7e9df;border-radius:68px 169px 60px 158px / 54px 135px 48px 126px}
.comfort-band{background:#e2f1eb;border-radius:90px 225px 80px 210px / 72px 180px 64px 168px}
.cta-band{background:#f5e5db;border-radius:68px 169px 60px 158px / 54px 135px 48px 126px}
.page-hero::before,.page-hero::after,.comfort-band::before,.comfort-band::after,.cta-band::before,.cta-band::after{content:none!important;clip-path:none!important}
@media(max-width:680px){.page-hero,.comfort-band,.cta-band{border-radius:48px 112px 42px 104px / 38px 90px 34px 84px}}

/* Dedicated right-hand image frame in the Gentle Care section. */
.comfort-image-frame{display:flex!important;justify-self:end;width:min(100%,360px);height:330px;min-height:330px;margin:0;aspect-ratio:auto}
@media(max-width:680px){.comfort-image-frame{justify-self:stretch;width:100%;height:auto;min-height:0;aspect-ratio:1.12}}

/* Playful, tactile button treatment. */
.button{--button-top:#f39abd;--button-bottom:#dc78a2;--button-edge:#be5f88;position:relative;isolation:isolate;overflow:hidden;padding:13px 15px 13px 21px;border-radius:12px 22px 11px 20px / 12px 18px 13px 17px;background:linear-gradient(145deg,var(--button-top),var(--button-bottom));box-shadow:0 4px 0 var(--button-edge),0 10px 18px rgba(125,67,91,.16);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.button::before{content:"";position:absolute;z-index:-1;inset:1px 1px 45% 1px;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,0))}
.button::after{content:"→";display:grid;place-items:center;width:22px;height:22px;margin-left:2px;border-radius:50%;background:rgba(255,255,255,.22);font:700 16px/1 var(--sans);transition:transform .22s ease,background .22s ease}
.button:hover{transform:translateY(-3px) rotate(-.45deg);background:linear-gradient(145deg,#f7a4c4,#df729e);box-shadow:0 6px 0 var(--button-edge),0 15px 23px rgba(125,67,91,.2)}
.button:hover::after{transform:translateX(3px);background:rgba(255,255,255,.32)}
.button:active{transform:translateY(2px);box-shadow:0 1px 0 var(--button-edge),0 5px 10px rgba(125,67,91,.14)}
.button-light{--button-top:#80bdb0;--button-bottom:#62a294;--button-edge:#4a887c;background:linear-gradient(145deg,var(--button-top),var(--button-bottom));box-shadow:0 4px 0 var(--button-edge),0 10px 18px rgba(59,111,100,.16)}
.button-light:hover{background:linear-gradient(145deg,#8bc9bc,#5a9c8d);box-shadow:0 6px 0 var(--button-edge),0 15px 23px rgba(59,111,100,.2)}
.button-small{padding:10px 12px 10px 16px;border-radius:10px 17px 9px 16px;font-size:12px}.button-small::after{width:19px;height:19px;font-size:14px}
@media(max-width:680px){.button{padding:12px 14px 12px 19px}.button-small{padding:10px 12px 10px 15px}}

/* Larger service-menu thumbnails without changing their row placement. */
.service-row{grid-template-columns:122px minmax(0,1fr) 165px 135px}
.service-list .service-row .service-photo.shared-photo-frame{width:112px;height:94px;margin-left:2px;justify-self:start}

/* Service filters are lighter, chip-style cousins of the main buttons. */
.service-filter{position:relative;overflow:hidden;border:1px solid #efc6d7;border-radius:9px 16px 8px 14px / 9px 13px 9px 12px;background:linear-gradient(145deg,#fffdfd,#faedf3);padding:10px 16px;color:#a45a78;font:800 11px var(--sans);box-shadow:0 3px 0 #efd4df;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease}
.service-filter:hover{transform:translateY(-2px) rotate(-.3deg);border-color:#e98caf;background:linear-gradient(145deg,#fff7fa,#f8e1eb);box-shadow:0 5px 0 #edc5d6;color:#9a4f6d}
.service-filter.is-active{border-color:#c8648e;background:linear-gradient(145deg,#f19abc,#dc78a2);box-shadow:0 4px 0 #bd5e87,0 9px 15px rgba(125,67,91,.14);color:#fff}
.service-filter:focus-visible{outline:2px solid #dc83ae;outline-offset:3px}
@media(max-width:680px){.service-row{grid-template-columns:94px minmax(0,1fr)}.service-list .service-row .service-photo.shared-photo-frame{width:84px;height:84px;margin:3px 0 0}.service-filter{padding:9px 14px}}

/* Give the homepage service images more room to be seen. */
.service-grid .service-item .home-service-art{height:202px}
.service-grid .service-item:nth-child(2) .home-service-art{height:222px}
.service-grid .service-item:nth-child(3) .home-service-art{height:192px}
.service-grid .service-item:nth-child(4) .home-service-art{height:214px}
@media(max-width:680px){.service-grid .service-item .home-service-art,.service-grid .service-item:nth-child(2) .home-service-art,.service-grid .service-item:nth-child(3) .home-service-art,.service-grid .service-item:nth-child(4) .home-service-art{height:160px}}

/* Wider image frames for the Our Services list. */
.service-row{grid-template-columns:156px minmax(0,1fr) 165px 135px}
.service-list .service-row .service-photo.shared-photo-frame{width:144px;height:102px;margin-left:2px}
@media(max-width:680px){.service-row{grid-template-columns:106px minmax(0,1fr)}.service-list .service-row .service-photo.shared-photo-frame{width:96px;height:78px;margin:3px 0 0}}

/* Image-led service menu: the hairstyle is the first thing parents see. */
.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1100px}
.service-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-items:start;gap:14px 18px;padding:14px;border:1px solid #f0e1e8;border-radius:18px 34px 16px 30px / 16px 26px 18px 24px;background:#fff;box-shadow:0 7px 18px rgba(93,62,74,.06);transition:transform .25s ease,box-shadow .25s ease}
.service-row:hover{transform:translateY(-4px);box-shadow:0 13px 25px rgba(93,62,74,.11)}
.service-list .service-row .service-photo.shared-photo-frame{grid-column:1 / -1;grid-row:1;width:100%;height:245px;margin:0;align-self:auto;justify-self:stretch}
.service-row-copy{grid-column:1;grid-row:2}.service-row-copy h3{font-size:24px;margin-bottom:7px}.service-row-copy p{font-size:13px;line-height:1.6}
.service-row-meta{grid-column:2;grid-row:2;align-self:start;text-align:right}.service-row-meta span{display:inline-block;padding:6px 9px;border-radius:8px 13px 7px 11px;background:#fae9f0;color:#b85d84;font-size:10px}.service-row-meta small{margin-top:7px}
.service-row-link{grid-column:1 / -1;grid-row:3;display:inline-flex;align-items:center;justify-self:start;padding:8px 12px;border:1px solid #f0bbd1;border-radius:8px 14px 7px 12px;background:#fff8fb;color:#b6537c;font-size:11px;transition:transform .2s ease,background .2s ease,color .2s ease}.service-row-link:hover{transform:translateY(-2px);background:#f5dfe9;color:#9e4269}
@media(max-width:680px){.service-list{grid-template-columns:1fr;gap:20px}.service-row{grid-template-columns:minmax(0,1fr) auto;gap:12px 14px;padding:12px}.service-list .service-row .service-photo.shared-photo-frame{grid-column:1 / -1;grid-row:1;width:100%;height:220px;margin:0}.service-row-copy{grid-column:1;grid-row:2}.service-row-copy h3{font-size:21px}.service-row-meta{grid-column:2;grid-row:2}.service-row-link{grid-column:1 / -1;grid-row:3}}

/* Direct hairstyle crops in a touch-friendly style carousel. */
.style-carousel-section{margin:38px 0 52px;padding:31px 0 0;border-top:1px solid var(--line)}
.style-carousel-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:20px}.style-carousel-heading h3{margin:0;font-size:clamp(31px,3.5vw,45px);line-height:1.05}.style-carousel-heading h3 em{color:#dc83ae;font-style:normal}.style-carousel-heading>p:not(.eyebrow){max-width:350px;margin:0;color:var(--muted);font-size:12px}
.style-carousel{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:10px;align-items:center}.style-carousel-track{display:flex;gap:18px;min-width:0;margin:0;padding:10px 3px 17px;overflow-x:auto;list-style:none;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#e9b2c8 transparent}.style-carousel-track::-webkit-scrollbar{height:7px}.style-carousel-track::-webkit-scrollbar-thumb{border-radius:99px;background:#e9b2c8}
.style-carousel-item{flex:0 0 clamp(180px,22vw,255px);margin:0;scroll-snap-align:start;text-align:center}.style-carousel-item img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(80,50,62,.15));transition:transform .25s ease,filter .25s ease}.style-carousel-item:hover img{transform:translateY(-4px) rotate(-1deg);filter:drop-shadow(0 13px 16px rgba(80,50,62,.2))}.style-carousel-item p{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:9px 7px 0}.style-carousel-item p span{color:var(--muted);font-size:11px;font-weight:800}.style-carousel-item p strong{color:#b6537c;font:700 21px/1 var(--serif)}
.style-carousel-control{width:38px;height:38px;border:1px solid #edc3d4;border-radius:50%;background:#fff8fb;color:#b6537c;font:700 22px/1 var(--sans);cursor:pointer;box-shadow:0 3px 0 #efd4df;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.style-carousel-control:hover{transform:translateY(-2px);background:#f7e1eb;box-shadow:0 5px 0 #edc5d6}.style-carousel-control:focus-visible{outline:2px solid #dc83ae;outline-offset:3px}
@media(max-width:680px){.style-carousel-section{margin:32px 0 44px;padding-top:26px}.style-carousel-heading{display:block;margin-bottom:16px}.style-carousel-heading>p:not(.eyebrow){margin-top:11px}.style-carousel{grid-template-columns:34px minmax(0,1fr) 34px;gap:4px}.style-carousel-control{width:32px;height:32px;font-size:18px}.style-carousel-track{gap:13px;padding-bottom:14px}.style-carousel-item{flex-basis:72vw}.style-carousel-item p{margin-inline:3px}}

/* One-photo-at-a-time carousels inside the relevant service cards. */
.service-row-with-carousel .service-card-carousel{display:grid;grid-column:1 / -1;grid-row:1;grid-template-columns:36px minmax(0,1fr) 36px;gap:6px;align-items:center;width:100%;min-height:266px}.service-card-track{display:flex;min-width:0;height:260px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x}.service-card-track::-webkit-scrollbar{display:none}.service-card-track img{display:block;flex:0 0 100%;width:100%;height:260px;scroll-snap-align:start;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(80,50,62,.15))}.service-card-control{width:32px;height:32px;border:1px solid #edc3d4;border-radius:50%;background:#fff8fb;color:#b6537c;font:700 18px/1 var(--sans);cursor:pointer;box-shadow:0 3px 0 #efd4df;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.service-card-control:hover{transform:translateY(-2px);background:#f7e1eb;box-shadow:0 5px 0 #edc5d6}.service-card-control:focus-visible{outline:2px solid #dc83ae;outline-offset:3px}
.service-row-with-carousel .service-row-copy{grid-column:1;grid-row:2}.service-row-with-carousel .service-row-meta{grid-column:2;grid-row:2;align-self:center}.service-row-with-carousel .service-row-meta span{padding:9px 13px;border-radius:10px 16px 9px 14px;background:linear-gradient(145deg,#f39abd,#dc78a2);color:#fff;font:700 27px/1 var(--serif);box-shadow:0 3px 0 #bd5e87}.service-row-with-carousel .service-row-meta small{margin-top:8px}.service-row-with-carousel .service-row-link{grid-column:1 / -1;grid-row:3}
@media(max-width:680px){.service-row-with-carousel .service-card-carousel{grid-template-columns:32px minmax(0,1fr) 32px;min-height:236px}.service-card-track,.service-card-track img{height:230px}.service-row-with-carousel .service-row-meta span{padding:8px 11px;font-size:23px}}

/* Service cards use complete, image-first galleries. */
.service-list-showcase{display:grid;grid-template-columns:1fr;gap:30px;max-width:1100px}
.service-list-showcase .service-row[hidden]{display:none!important}
.service-list-showcase .service-row-with-carousel{position:relative;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(270px,.84fr);grid-template-rows:auto auto auto;column-gap:clamp(28px,5vw,64px);min-height:404px;padding:22px 26px;border-radius:20px 36px 18px 32px / 18px 30px 20px 28px;background:#fff;overflow:hidden}
.service-list-showcase .service-row-with-carousel::after{content:"";position:absolute;z-index:0;width:190px;height:190px;right:-62px;bottom:-72px;border-radius:50%;background:#faedf3;pointer-events:none}
.service-list-showcase .service-card-carousel{position:relative;z-index:1;display:block;grid-column:1;grid-row:1 / span 3;min-height:360px;width:100%}
.service-list-showcase .service-card-track{height:360px;width:100%;overflow-x:auto;border:1px solid #f2e3ea;border-radius:12px;background:linear-gradient(135deg,#fff9fc,#fffdfb 57%,#f9edf2);scrollbar-width:none}
.service-list-showcase .service-card-track::-webkit-scrollbar{display:none}
.service-list-showcase .service-card-track img{width:100%;height:360px;padding:14px 26px 36px;object-fit:contain;filter:drop-shadow(0 13px 16px rgba(80,50,62,.16))}
.service-list-showcase .service-card-control{position:absolute;z-index:2;top:calc(50% - 19px);width:38px;height:38px;border-color:#e9abc4;background:#fff;color:#a84d73;font-size:21px;box-shadow:0 3px 0 #e6bed0}
.service-list-showcase .service-card-control-previous{left:12px}
.service-list-showcase .service-card-control-next{right:12px}
.service-carousel-navigation{position:absolute;z-index:2;right:16px;bottom:12px;left:16px;display:flex;align-items:center;justify-content:center;gap:13px;color:#9a6279;font-size:10px;font-weight:800;letter-spacing:.08em}
.service-carousel-count{padding:4px 7px;border-radius:99px;background:rgba(255,255,255,.85);box-shadow:0 2px 8px rgba(80,50,62,.08)}
.service-carousel-dots{display:flex;gap:6px;padding:6px 8px;border-radius:99px;background:rgba(255,255,255,.85);box-shadow:0 2px 8px rgba(80,50,62,.08)}
.service-carousel-dots button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#eac5d4;cursor:pointer;transition:width .2s ease,background .2s ease}
.service-carousel-dots button.is-active{width:20px;background:#d8739e}
.service-carousel-dots button:focus-visible{outline:2px solid #c6628c;outline-offset:3px}
.service-list-showcase .service-row-copy,.service-list-showcase .service-row-meta,.service-list-showcase .service-row-link{position:relative;z-index:1;grid-column:2}
.service-list-showcase .service-row-copy{grid-row:1;align-self:end;padding-top:36px}
.service-style-label{margin:0 0 7px;color:#d26b96;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.service-list-showcase .service-row-copy h3{margin:0 0 10px;font-size:clamp(31px,3.6vw,46px);line-height:1.02}
.service-list-showcase .service-row-copy p:last-child{max-width:330px;margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.service-list-showcase .service-row-meta{grid-row:2;align-self:center;margin-top:20px;text-align:left}
.service-list-showcase .service-row-meta span{padding:0;background:none;color:#c15b85;font:700 clamp(47px,5vw,65px)/.9 var(--serif);box-shadow:none}
.service-list-showcase .service-row-meta small{margin-top:8px;color:#9a7b88;font-size:11px;letter-spacing:.02em}
.service-list-showcase .service-row-link{grid-row:3;align-self:start;margin-top:22px}
.service-list-showcase .service-row-reverse .service-card-carousel{grid-column:2}
.service-list-showcase .service-row-reverse .service-row-copy,.service-list-showcase .service-row-reverse .service-row-meta,.service-list-showcase .service-row-reverse .service-row-link{grid-column:1}
.service-list-showcase .service-row-reverse::after{right:auto;left:-62px;background:#e8f4ef}
@media(max-width:760px){.service-list-showcase{gap:22px}.service-list-showcase .service-row-with-carousel,.service-list-showcase .service-row-reverse{grid-template-columns:1fr;grid-template-rows:auto auto auto;min-height:0;padding:14px}.service-list-showcase .service-card-carousel,.service-list-showcase .service-row-reverse .service-card-carousel{grid-column:1;grid-row:1;min-height:278px}.service-list-showcase .service-card-track,.service-list-showcase .service-card-track img{height:278px}.service-list-showcase .service-card-track img{padding:10px 18px 35px}.service-list-showcase .service-row-copy,.service-list-showcase .service-row-reverse .service-row-copy{grid-column:1;grid-row:2;align-self:auto;padding-top:23px}.service-list-showcase .service-row-meta,.service-list-showcase .service-row-reverse .service-row-meta{grid-column:1;grid-row:3;align-self:start;margin-top:17px}.service-list-showcase .service-row-link,.service-list-showcase .service-row-reverse .service-row-link{grid-column:1;grid-row:4;margin-top:18px}.service-list-showcase .service-row-copy h3{font-size:32px}.service-list-showcase .service-row-meta span{font-size:50px}}

/* Prices use the Find Their Style headline typography; the service names stay unchanged. */
.service-list-showcase .service-row-meta span{display:inline-block;padding:0;background:none;color:#dc83ae;font:500 clamp(47px,5vw,65px)/1.02 var(--serif);letter-spacing:-.045em;box-shadow:none}

/* Simple Instagram-style chevrons: just the tip, centred on each side of the photo. */
.service-list-showcase .service-card-control{top:calc(50% - 19px);bottom:auto;width:38px;height:38px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(255,255,255,.82);box-shadow:0 2px 8px rgba(80,50,62,.12);color:#a84d73;font:500 32px/31px Arial,sans-serif}
.service-list-showcase .service-card-control::before,.service-list-showcase .service-card-control::after{content:none}
.service-list-showcase .service-card-control:hover{background:#fff;box-shadow:0 3px 10px rgba(80,50,62,.16);color:#c45d89}
.service-list-showcase .service-card-control-previous{left:12px}
.service-list-showcase .service-card-control-next{right:12px}
@media(max-width:760px){.service-list-showcase .service-card-control{top:calc(50% - 19px);bottom:auto}.service-list-showcase .service-card-control-previous{left:10px}.service-list-showcase .service-card-control-next{right:10px}}

/* Homepage: show service photos without re-cropping their shapes. */
#services .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#services .home-service-art-real{display:flex;align-items:center;justify-content:center;height:clamp(280px,28vw,360px)!important;overflow:hidden!important;border:0!important;background:none!important;box-shadow:none!important;transform:none!important}
#services .home-service-art-real::after{content:none!important}
#services .home-service-art-real img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 9px 13px rgba(80,50,62,.15));transition:transform .32s cubic-bezier(.2,.75,.25,1),filter .32s ease}
#services .service-image-link:hover .home-service-art-real,#services .service-image-link:focus-visible .home-service-art-real{transform:none!important;box-shadow:none!important}
#services .service-image-link:hover .home-service-art-real img,#services .service-image-link:focus-visible .home-service-art-real img{transform:translateY(-4px) scale(1.035);filter:drop-shadow(0 14px 18px rgba(80,50,62,.2))}
@media(max-width:900px){#services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){#services .home-service-art-real{height:240px!important}#services .service-item-price{font-size:20px}}
@media(max-width:390px){#services .service-grid{grid-template-columns:1fr}}

/* Give the homepage labels a clear, deliberate space below the larger real images. */
#services .service-item-copy{padding-top:34px}
.hero-photo,.welcome-image,.comfort-photo,.gallery-tile{display:block;object-fit:cover}
.welcome-image,.comfort-photo,.gallery-tile{width:100%}
.booking-status a{color:var(--coral);font-weight:700;text-decoration:underline}
.style-gallery-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
@media(max-width:680px){
  .menu-toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:4px;background:transparent;font-size:0}
  .menu-toggle::before{content:"";width:22px;height:16px;background:linear-gradient(to bottom,currentColor 0 2px,transparent 2px 7px,currentColor 7px 9px,transparent 9px 14px,currentColor 14px 16px)}
  .menu-toggle:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
  .hero-art{height:280px;margin:0}
  .hero-photo{width:100%}
  .welcome-image{height:280px;min-height:0}
  #services .service-grid{grid-template-columns:1fr;gap:28px}
  #services .home-service-art-real{height:clamp(190px,58vw,240px)!important}
  #services .service-item-copy{padding-top:18px}
  #services .service-item-copy p{min-height:0}
  #gallery .gallery-grid{grid-template-columns:1fr;gap:16px}
  #gallery .gallery-tile{width:100%;height:280px;aspect-ratio:auto;border-radius:18% 45% 16% 42%;transform:rotate(2deg);margin-top:0}
  .style-gallery{grid-template-columns:1fr;gap:28px}
  .style-gallery .gallery-tile{width:100%;height:280px}
}

.hero{
  isolation:isolate;
  display:flex;
  align-items:center;
  min-height:570px;
  background:none;
}
.hero::before,.hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.hero::before{
  z-index:-2;
  background:url("assets/hero/child-haircare-banner.jpg") center 42%/cover no-repeat;
  filter:contrast(1.14) saturate(1.06);
}
.hero::after{
  z-index:-1;
  background:linear-gradient(90deg,rgba(255,253,251,.88) 0%,rgba(255,253,251,.74) 27%,rgba(255,253,251,.5) 46%,rgba(255,253,251,.16) 68%,transparent 82%);
}
.hero-copy{max-width:560px}
.hero-copy>.eyebrow{display:table;padding:4px 8px;border-radius:999px;background:rgba(255,253,251,.9);color:#b24f7d}
.hero h1,.hero-intro,.hero-note,.hero-actions .text-link{text-shadow:0 1px 6px rgba(255,253,251,.9)}
@media(max-width:680px){
  .hero{
    min-height:580px;
    padding:55px 25px;
  }
  .hero::before{background-position:center center}
  .hero::after{
    background:linear-gradient(180deg,rgba(255,253,251,.16) 0%,rgba(255,253,251,.26) 10%,rgba(255,253,251,.44) 19%,rgba(255,253,251,.7) 39%,rgba(255,253,251,.58) 70%,rgba(255,253,251,.3) 100%);
  }
}
.welcome-image{height:360px;min-height:0;object-position:50% 22%}
@media(max-width:680px){.welcome-image{height:280px;object-position:50% 18%}}
.comfort-photo-image{
  position:absolute;
  top:4px;
  left:4px;
  width:calc(100% - 8px);
  height:calc(100% - 8px);
  object-fit:cover;
  object-position:center 18%;
  border-radius:inherit;
}
.welcome-photo-frame{height:360px}
.welcome-photo-image{object-position:50% 22%}
@media(max-width:680px){.welcome-photo-frame{height:280px;aspect-ratio:auto}.welcome-photo-image{object-position:50% 18%}}
.welcome-photo-frame.shared-photo-frame,.comfort-band .comfort-photo.shared-photo-frame{box-shadow:0 0 0 2px #f4c9d8,0 9px 22px rgba(80,50,62,.12)}
.comfort-band .comfort-photo.shared-photo-frame{isolation:isolate;overflow:hidden}
.comfort-band .comfort-photo.shared-photo-frame::after{z-index:-1}
.comfort-band .comfort-photo-image{top:0;left:0;width:100%;height:100%;z-index:2;box-shadow:inset 0 0 0 4px #fff;transform:scale(1.14);transform-origin:50% 24%}
.page-hero.story-banner{min-height:500px;display:flex;align-items:center;text-align:left;padding:90px max(10vw,30px);background-color:#16435a;background-image:linear-gradient(90deg,rgba(255,253,251,.91) 0%,rgba(255,253,251,.84) 38%,rgba(255,253,251,.46) 59%,rgba(255,253,251,.05) 100%),url("assets/hero/our-story-haircare-banner.jpg");background-position:center,64% center;background-size:cover,cover;background-repeat:no-repeat}
.story-banner-copy{position:relative;z-index:1;max-width:620px}
.story-banner-copy h1{max-width:620px}
.story-banner-copy>p:not(.eyebrow){max-width:420px;margin:0 0 24px;color:var(--ink);font-size:14px}
.story-values{grid-template-columns:1fr}
.story-values .welcome-copy{max-width:760px;margin:0 auto;text-align:center}
.story-values .welcome-copy>p:not(.eyebrow){max-width:680px;margin-left:auto;margin-right:auto}
@media(max-width:680px){.page-hero.story-banner{min-height:540px;padding:64px 25px 52px;background-image:linear-gradient(90deg,rgba(255,253,251,.91) 0%,rgba(255,253,251,.84) 58%,rgba(255,253,251,.42) 82%,rgba(255,253,251,.08) 100%),url("assets/hero/our-story-haircare-banner.jpg");background-position:center,50% center}.story-banner-copy{max-width:270px}.story-banner-copy h1{font-size:clamp(39px,10.5vw,48px)}.story-banner-copy>p:not(.eyebrow){max-width:260px}.story-values .welcome-copy{max-width:none}}
