:root{--ink:#30251f;--muted:#756b63;--cream:#f8f4ee;--paper:#fffdf9;--line:#e6ddd3;--accent:#a65d3d;--rose:#e8cbbd;--sage:#89907c;--dark:#33251e;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.announcement{height:34px;background:#392b24;color:#fff8f0;display:flex;justify-content:center;align-items:center;gap:12px;font-size:11px;letter-spacing:.06em}.announcement a{text-decoration:underline;text-underline-offset:3px}.site-header{height:88px;padding:0 max(4.5vw,24px);display:flex;align-items:center;justify-content:space-between;background:#fffdf9;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;letter-spacing:.08em;line-height:1}.brand em{font-style:normal;font-weight:400}.brand small{display:block;font-size:8px;letter-spacing:.21em;margin-top:7px;color:#917b6e}.brand-mark{display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:44px;height:44px;font-family:'Playfair Display',serif;font-size:18px;letter-spacing:-.1em;padding-right:3px}.nav{display:flex;gap:36px;font-size:13px;font-weight:600}.nav a,.text-link{transition:color .2s}.nav a:hover,.text-link:hover{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:24px}.text-link{font-size:12px;color:var(--muted)}.button{border:1px solid var(--dark);padding:15px 22px;border-radius:3px;font-size:12px;font-weight:700;letter-spacing:.04em;display:inline-flex;justify-content:center;align-items:center;gap:24px;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button.dark{background:var(--dark);color:white}.button.light{background:#fffaf4;border-color:#fffaf4;color:var(--dark)}.button.outline{background:transparent;color:var(--dark)}.button.small{padding:12px 18px}.button.accent{background:var(--accent);border-color:var(--accent);color:white}.menu-toggle{display:none;background:none;border:0;font-size:22px}.section{padding:90px max(4.5vw,24px)}.section.alt{background:#f0e9e1}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--accent);margin:0 0 16px}.eyebrow.light{color:#f4d4bc}h1,h2,h3,.serif{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(48px,5.3vw,86px);line-height:1.06;letter-spacing:-.04em;margin:0 0 25px}h2{font-size:clamp(37px,4vw,62px);letter-spacing:-.035em;line-height:1.12;margin:0 0 22px}h3{font-size:28px;letter-spacing:-.02em;margin:0 0 10px}p{line-height:1.7}.lead{font-size:17px;color:#675950;max-width:540px}.hero{min-height:660px;background:#ad7351 url('assets/hero.png') center/cover no-repeat;position:relative;display:flex;align-items:center;padding:70px max(4.5vw,24px)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,27,21,.74),rgba(42,29,23,.31) 43%,transparent 68%)}.hero-content{position:relative;color:#fff;max-width:660px}.hero-content p:not(.eyebrow){font-size:17px;line-height:1.7;color:#f8eee8;max-width:480px;margin-bottom:32px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-note{position:absolute;right:4.5vw;bottom:30px;color:white;font-size:11px;letter-spacing:.07em}.intro-strip{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:#fffdf9}.intro-item{padding:28px 38px;border-right:1px solid var(--line);display:flex;align-items:center;gap:19px}.intro-item:last-child{border:0}.intro-icon{width:40px;height:40px;border:1px solid #d8bcaa;border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:21px}.intro-item strong{display:block;font-size:14px}.intro-item span:last-child{font-size:12px;color:var(--muted)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:36px}.section-head p{max-width:440px;color:var(--muted);margin:0}.underline-link{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-underline-offset:7px;white-space:nowrap}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:var(--paper);padding:16px;border:1px solid var(--line);transition:transform .25s}.service-card:hover,.product-card:hover{transform:translateY(-5px)}.service-art{height:310px;position:relative;overflow:hidden;background:linear-gradient(135deg,#c89a78,#6b4335)}.service-art.braids{background:linear-gradient(160deg,rgba(60,33,25,.05),rgba(60,33,25,.55)),url('assets/hero.png') 67% 48%/auto 170%}.service-art.scalp{background:url('assets/scalp.png') center 30%/cover}.service-art.shop{background:radial-gradient(circle at 65% 42%,#f4dec8 0 15%,transparent 15.4%),linear-gradient(135deg,#aaa889,#615d49)}.bottle{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);width:80px;height:185px;background:linear-gradient(90deg,#5d3327,#ab7654 52%,#5a3429);border-radius:16px 16px 10px 10px;box-shadow:18px 25px 30px #392c2866}.bottle:before{content:"";position:absolute;top:-22px;left:17px;width:46px;height:24px;background:#392b23;border-radius:3px}.bottle:after{content:"ADA\A HAIRITAGE";white-space:pre;position:absolute;top:66px;left:9px;width:62px;padding:17px 2px;text-align:center;background:#e8d9c6;color:#33251e;font-size:8px;font-weight:700;letter-spacing:.08em}.service-card .info{padding:23px 12px 12px}.service-card .info small{display:block;color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:700;margin-bottom:10px}.service-card .info p{color:var(--muted);font-size:13px;margin:0 0 20px}.split{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.split-image{background:url('assets/scalp.png') center 35%/cover}.split-copy{background:#dfc6b6;padding:80px max(5vw,50px);display:flex;flex-direction:column;justify-content:center}.split-copy p{max-width:490px}.split-copy ul{padding:0;list-style:none;margin:14px 0 32px}.split-copy li{border-top:1px solid #b99f90;padding:12px 0;font-size:13px}.split-copy li:before{content:'✦';color:var(--accent);margin-right:12px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:var(--paper);border:1px solid var(--line);transition:transform .25s}.product-photo{height:250px;background:#eadfd3;display:grid;place-items:center;position:relative;overflow:hidden}.product-photo.p1{background:#ece0d2}.product-photo.p2{background:#d9ddce}.product-photo.p3{background:#e6d1c7}.product-photo.p4{background:#d2c1ab}.product-shape{width:77px;height:155px;border-radius:12px 12px 7px 7px;background:linear-gradient(90deg,#563227,#a9744b 45%,#533328);box-shadow:16px 20px 25px #0003;position:relative}.product-shape:before{content:"";height:20px;width:46px;position:absolute;left:16px;top:-19px;background:#292522;border-radius:3px}.product-shape:after{content:"HAIR CARE";position:absolute;top:60px;left:5px;width:67px;padding:16px 0;background:#e8dbca;color:#49342b;text-align:center;font-size:8px;letter-spacing:.15em}.product-photo.p2 .product-shape{height:105px;width:122px;border-radius:50% 50% 18px 18px;background:linear-gradient(90deg,#a98458,#dbc39b,#85633f)}.product-photo.p2 .product-shape:before{height:16px;width:125px;left:-1px;top:-8px;background:#554738;border-radius:6px}.product-photo.p2 .product-shape:after{top:43px;left:17px;width:88px}.product-photo.p3 .product-shape{width:85px;height:170px;background:linear-gradient(90deg,#312d29,#6a5141,#272522)}.product-photo.p4 .product-shape{width:94px;height:134px;border-radius:8px;background:linear-gradient(90deg,#8a694d,#d5b28c,#8e6c4c)}.product-photo.p4 .product-shape:before{width:95px;left:0;background:#b18d6b}.product-card .product-info{padding:17px}.product-card small{font-size:10px;letter-spacing:.12em;color:var(--accent);text-transform:uppercase}.product-card h3{font-family:'DM Sans';font-size:14px;font-weight:600;line-height:1.45;min-height:40px;margin:9px 0}.product-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700}.add-button{background:none;border:0;border-bottom:1px solid var(--dark);font-size:11px;font-weight:700;padding:3px 0}.quote-section{background:#49372c;color:white;text-align:center;padding:85px 20px}.quote-section blockquote{font-family:'Playfair Display';font-size:clamp(25px,3vw,43px);line-height:1.35;max-width:850px;margin:10px auto 20px}.quote-section span{font-size:12px;color:#ead0bf}.page-hero{padding:84px max(4.5vw,24px) 74px;background:#e9d9cb}.page-hero .lead{margin-bottom:0}.page-hero.dark-page{background:#48352a;color:white}.dark-page .lead{color:#e6d4c7}.page-hero.shop-hero{background:#d7c9af}.breadcrumbs{font-size:11px;color:var(--muted);margin-bottom:22px}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-list-card{padding:28px;background:#fffdf9;border:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.service-list-card h3{font-size:25px}.service-list-card p{font-size:13px;color:var(--muted);max-width:440px}.tag{display:inline-flex;padding:6px 9px;background:#f1e6dc;color:#87563e;font-size:10px;letter-spacing:.07em;text-transform:uppercase;font-weight:700}.service-meta{font-size:12px;color:var(--muted);margin:17px 0}.service-meta span{margin-right:18px}.shop-controls{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{padding:9px 16px;border:1px solid #d9cfc2;background:transparent;border-radius:22px;font-size:12px}.chip.active{background:var(--dark);color:#fff;border-color:var(--dark)}.search-input,.form-field input,.form-field select,.form-field textarea{border:1px solid #dbd1c6;background:#fffdf9;border-radius:3px;padding:14px 15px;outline:none;width:100%;color:var(--ink)}.search-input{max-width:250px}.search-input:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent)}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:50px;align-items:start}.booking-panel,.summary-card{background:#fffdf9;border:1px solid var(--line);padding:32px}.booking-step-title{display:flex;align-items:center;gap:13px;font-size:19px;font-weight:600;margin:0 0 20px}.step-number{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--dark);color:#fff;font-size:12px}.choice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice{border:1px solid var(--line);background:#fffdf9;text-align:left;padding:16px;border-radius:4px}.choice:hover,.choice.selected{border-color:var(--accent);background:#f9eee6}.choice strong{display:block;font-size:13px}.choice small{display:block;color:var(--muted);margin-top:6px}.booking-step{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.booking-step:last-child{border:0;margin-bottom:0;padding-bottom:0}.date-row,.time-row{display:flex;flex-wrap:wrap;gap:8px}.date-button,.time-button{border:1px solid var(--line);background:white;border-radius:4px;padding:12px 15px;min-width:74px;text-align:center;font-size:12px}.date-button strong{display:block;font-size:17px;margin-top:4px}.date-button.selected,.time-button.selected{background:var(--dark);border-color:var(--dark);color:#fff}.time-button{min-width:90px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-field{display:block;font-size:12px;font-weight:700;margin-bottom:14px}.form-field input,.form-field select,.form-field textarea{display:block;margin-top:7px;font-weight:400}.form-field textarea{min-height:90px;resize:vertical}.policy-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.55;color:var(--muted);margin:15px 0}.policy-check input{margin-top:3px}.summary-card{position:sticky;top:115px}.summary-card h3{font-size:27px}.summary-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.summary-row span:first-child{color:var(--muted)}.summary-card p{font-size:12px;color:var(--muted)}.fineprint{font-size:11px;color:var(--muted)}.success-panel{background:#e9efe4;padding:22px;border:1px solid #a9b9a2}.success-panel h3{font-size:22px}.care-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.care-content img{width:100%;height:540px;object-fit:cover}.info-box{background:#fffdf9;border:1px solid var(--line);padding:24px;margin:25px 0}.info-box h3{font-size:20px}.info-box p{font-size:13px;color:var(--muted);margin-bottom:0}.about-photo{background:url('assets/hero.png') 65% center/cover;min-height:500px}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 122px);background:#f5f4f1}.admin-sidebar{background:#302821;color:white;padding:27px 20px}.admin-sidebar .brand{font-size:14px;color:#fff;margin-bottom:35px}.admin-sidebar .brand-mark{width:35px;height:35px;font-size:15px}.admin-sidebar a.nav-item{display:block;padding:12px 15px;border-radius:4px;font-size:12px;color:#d8cec6;margin:3px 0}.admin-sidebar a.nav-item.active,.admin-sidebar a.nav-item:hover{background:#57493e;color:white}.admin-sidebar .side-label{font-size:10px;letter-spacing:.15em;color:#9f9086;text-transform:uppercase;margin:27px 15px 9px}.admin-main{padding:36px max(3vw,28px)}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-top h1{font-size:37px;margin:0}.admin-top p{font-size:13px;color:var(--muted);margin:7px 0 0}.demo-badge{font-size:10px;letter-spacing:.1em;font-weight:700;padding:8px 11px;background:#f7e8d4;color:#88593a;border-radius:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:white;border:1px solid #e5e2dc;padding:21px}.metric small{font-size:11px;color:var(--muted)}.metric strong{display:block;font-size:29px;margin:9px 0 3px;font-weight:500}.metric span{font-size:11px;color:#778c6b}.admin-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:17px;margin-top:17px}.admin-card{background:white;border:1px solid #e5e2dc;padding:24px;overflow:auto}.admin-card h3{font-family:'DM Sans';font-size:16px;font-weight:700;margin:0 0 18px}.admin-table{border-collapse:collapse;width:100%;font-size:12px}.admin-table th{text-align:left;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#958b84;padding:12px;border-bottom:1px solid #e8e5df}.admin-table td{padding:13px 12px;border-bottom:1px solid #f0ede8}.status{padding:5px 9px;border-radius:20px;background:#e8eee4;color:#4f7052;font-size:10px}.status.pending{background:#f7ebd9;color:#9a6b29}.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.mini-calendar span{font-size:11px;text-align:center;padding:8px 0;color:#8a817b}.mini-calendar span.today{background:var(--dark);color:white;border-radius:50%}.admin-tabs{display:flex;gap:6px;margin-bottom:20px;flex-wrap:wrap}.admin-tab{border:1px solid #ddd7d0;background:white;padding:9px 15px;font-size:12px}.admin-tab.active{background:var(--dark);color:white}.admin-form{max-width:720px}.admin-form .button{margin-top:8px}.admin-alert{background:#fff4e8;border:1px solid #efd6b8;padding:14px 17px;font-size:12px;color:#775d43;margin-bottom:20px}.admin-product-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #eee9e3;font-size:12px}.admin-product-row strong{display:block}.admin-product-row small{color:var(--muted)}.toggle{accent-color:var(--accent);width:16px;height:16px}.footer{display:grid;grid-template-columns:2fr 1fr 1.5fr 1.7fr;gap:40px;padding:65px max(4.5vw,24px) 0;background:#2f241f;color:#eee5dc}.footer .brand{color:#fff}.footer .brand small{color:#ccb9a8}.footer p,.footer a:not(.brand){font-size:12px;line-height:1.8;color:#cdbfb5}.footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin:0 0 18px;color:#fff}.footer div>a:not(.brand){display:block}.footer input{border:0;background:#58463a;padding:13px;color:white;min-width:0;flex:1}.footer input::placeholder{color:#d0bbb0}.footer form{display:flex}.footer form button{border:0;background:#a86949;color:white;padding:0 15px;font-size:20px}.footer-bottom{grid-column:1/-1;border-top:1px solid #5e4c42;padding:22px 0;font-size:11px;color:#b9a99c;display:flex;justify-content:space-between}.footer-bottom span{color:#b9a99c}#toast{position:fixed;bottom:24px;right:24px;background:var(--dark);color:white;padding:13px 18px;border-radius:4px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}#toast.show{opacity:1;transform:translateY(0)}@media(max-width:1100px){.nav{gap:15px}.text-link{display:none}.products{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.site-header{height:72px}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fffdf9;padding:20px 24px;flex-direction:column;box-shadow:0 15px 20px #0001}.nav.open{display:flex}.header-actions .button{display:none}.menu-toggle{display:block}.hero{min-height:600px;background-position:58% center}.hero:before{background:linear-gradient(90deg,#271e1cbb,#271e1c66)}.hero-note{display:none}.intro-strip,.card-grid,.split,.service-list,.booking-layout,.care-content,.admin-grid{grid-template-columns:1fr}.intro-item{border-right:0;border-bottom:1px solid var(--line)}.split-image{min-height:370px}.split-copy{padding:50px 24px}.section{padding:60px 24px}.section-head{align-items:start;flex-direction:column}.products{grid-template-columns:repeat(2,1fr)}.product-photo{height:190px}.booking-panel,.summary-card{padding:22px}.summary-card{position:static}.footer{grid-template-columns:1fr 1fr;gap:30px}.footer>div:first-child,.footer>div:last-of-type{grid-column:1/-1}.admin-shell{grid-template-columns:1fr}.admin-sidebar{display:flex;overflow:auto;align-items:center;padding:12px;gap:5px}.admin-sidebar .brand,.admin-sidebar .side-label{display:none}.admin-sidebar a.nav-item{white-space:nowrap;margin:0}.admin-main{padding:25px 16px}}@media(max-width:480px){.announcement{font-size:9px}.brand{font-size:16px}.brand-mark{width:37px;height:37px;font-size:15px}.hero{min-height:570px}.hero h1{font-size:52px}.products{gap:9px}.product-photo{height:160px}.product-shape{transform:scale(.75)}.product-card .product-info{padding:12px}.product-card h3{font-size:12px}.choice-list,.field-grid,.metric-grid{grid-template-columns:1fr}.footer{grid-template-columns:1fr}.footer>div:first-child,.footer>div:last-of-type{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
.cart-trigger{border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:700;white-space:nowrap}.cart-trigger span{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--accent);color:white;margin-left:4px;font-size:10px}.cart-backdrop{position:fixed;inset:0;background:#1d1717aa;z-index:49}.cart-drawer{position:fixed;right:0;top:0;bottom:0;width:min(430px,100vw);background:#fffdf9;z-index:50;box-shadow:-15px 0 35px #0002;transform:translateX(105%);transition:transform .25s;display:flex;flex-direction:column;padding:25px}.cart-drawer.open{transform:translateX(0)}.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px}.cart-head h3{margin:0}.cart-head button{border:0;background:none;font-size:28px}.cart-drawer #cart-items{overflow:auto;flex:1}.cart-line{padding:18px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:13px}.cart-line small{display:block;color:var(--muted);margin-top:5px}.cart-line button{border:0;background:none;text-decoration:underline;color:var(--muted);font-size:11px;margin-top:8px;padding:0}.cart-bottom{border-top:1px solid var(--line);padding-top:18px}.cart-bottom p{font-size:11px;color:var(--muted)}.cart-bottom .button{width:100%}#cart-total{display:flex;justify-content:space-between;font-weight:700;font-size:14px}
.mobile-admin{display:none}@media(max-width:760px){.nav .mobile-admin{display:block;border-top:1px solid var(--line);padding-top:15px}}
/* Ada Hairitage brand and revised business flows */
:root{--ink:#25212a;--muted:#69636b;--cream:#faf8fa;--paper:#fff;--line:#e9e0e9;--accent:#9f28a5;--rose:#f0ddf1;--sage:#9f28a5;--dark:#29212e}
body{background:var(--cream)}.announcement{background:#8b208f}.site-header{height:92px;padding:0 3.4vw;background:#fff}.brand{height:78px;display:flex;align-items:center}.brand img{height:75px;width:75px;object-fit:contain}.nav{gap:20px;font-size:12px}.nav a:hover,.text-link:hover{color:var(--accent)}.header-actions{gap:14px}.header-actions .button{font-size:11px;padding:11px 13px;gap:10px}.button{border-radius:5px}.button.dark{background:var(--accent);border-color:var(--accent)}.button.accent{background:var(--accent);border-color:var(--accent)}.button.outline{border-color:var(--accent);color:var(--accent)}.button.outline:hover{background:#f7e8f8}.eyebrow,.service-card .info small,.product-card small{color:var(--accent)}h1,h2,h3,.serif{font-family:'DM Sans',Arial,sans-serif;font-weight:700}h1{letter-spacing:-.055em}h2{letter-spacing:-.045em}h3{letter-spacing:-.035em}.hero{min-height:660px;background:#3a252d url('assets/ada-hero.jpg') center 44%/cover no-repeat}.hero:before{background:linear-gradient(90deg,rgba(27,17,33,.82),rgba(27,17,33,.55) 43%,rgba(27,17,33,.08) 80%)}.hero-content{max-width:780px}.hero h1{font-size:clamp(45px,5vw,76px)}.hero .button.light{color:var(--accent)}.intro-icon{color:var(--accent);border-color:#d8b6db}.service-art.braids{background:url('assets/ada-hero.jpg') center/cover}.service-art.shop{background:#f4ecf5;display:grid;place-items:center}.service-art.shop img{width:80%;height:85%;object-fit:contain;mix-blend-mode:multiply}.split-copy{background:#f1e0f2}.split-copy li{border-color:#d6b9d8}.split-image{background-position:center 30%}.page-hero{background:#f0e2f0}.page-hero.dark-page{background:#5c2363}.page-hero.shop-hero{background:#eee2ef}.tag{background:#f3e5f4;color:#7f2285}.choice:hover,.choice.selected{border-color:var(--accent);background:#f8edf9}.date-button.selected,.time-button.selected,.chip.active{background:var(--accent);border-color:var(--accent)}.product-photo{background:#fff;display:grid;place-items:center}.product-photo img{width:82%;height:82%;object-fit:contain}.product-card h3{font-weight:600;letter-spacing:0}.quote-section{background:#532159}.footer{background:#29212e}.footer-brand img{height:96px;width:96px;background:#fff;border-radius:4px}.footer input{background:#46394d}.footer form button{background:var(--accent)}.admin-sidebar{background:#2b2230}.admin-sidebar .brand img{width:80px;height:80px;background:white;border-radius:4px}.admin-sidebar a.nav-item.active,.admin-sidebar a.nav-item:hover{background:#633369}.demo-badge{background:#f4e5f5;color:#822589}.admin-alert{background:#f9effa;border-color:#e5c6e7;color:#703775}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.policy-grid>div{border:1px solid var(--line);padding:20px;background:white}.policy-grid h3{font-size:18px}.policy-grid p{font-size:13px;color:var(--muted);margin-bottom:0}.waitlist-form{display:flex;gap:9px}.waitlist-form input{flex:1;min-width:0;border:1px solid var(--line);padding:13px}.detail-photo{background:white;border:1px solid var(--line);min-height:480px;display:grid;place-items:center}.detail-photo img{max-height:430px;max-width:85%;object-fit:contain}.product-detail h1{font-size:clamp(36px,4vw,60px)}.mobile-admin{display:none}
@media(max-width:1100px){.site-header{height:76px}.brand{height:70px}.brand img{width:65px;height:65px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px 24px;flex-direction:column;box-shadow:0 15px 20px #0001}.nav.open{display:flex}.nav .mobile-admin{display:block;border-top:1px solid var(--line);padding-top:15px}.menu-toggle{display:block}.header-actions .text-link{display:none}}@media(max-width:760px){.nav{top:72px}.policy-grid{grid-template-columns:1fr}.hero{background-position:58% center}.hero:before{background:linear-gradient(90deg,#201426d9,#20142696)}.hero h1{font-size:48px}.waitlist-form{flex-direction:column}.footer .brand img{height:80px;width:80px}}@media(max-width:480px){.brand img{width:58px;height:58px}.header-actions .button{display:none}.hero h1{font-size:42px}.hero-content p:not(.eyebrow){font-size:15px}}

.square-booking-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,0.8fr);gap:32px;align-items:start}.square-embed{margin:28px 0 12px;min-height:420px;border:1px solid #d9d2e2;border-radius:18px;background:linear-gradient(140deg,#f9f5fb,#f0e9f5);display:grid;place-items:center;padding:32px}.square-embed-placeholder{text-align:center;max-width:440px}.square-embed-placeholder h3{font-size:34px;margin:18px 0}.square-embed-placeholder p{margin-bottom:28px}.square-embed iframe{width:100%;min-height:620px;border:0}@media(max-width:800px){.square-booking-layout{grid-template-columns:1fr}}

/* v0.4 client review: larger primary actions and clearer body copy */
body{font-size:16px}.nav{font-size:15px;gap:25px}.button{font-size:15px;line-height:1.25;padding:17px 25px;letter-spacing:.01em;gap:12px}.button.small{font-size:14px;padding:13px 17px}.hero-content p:not(.eyebrow){font-size:20px;max-width:570px}.lead{font-size:19px}.service-card .info p{font-size:15px}.info-box p,.summary-card p{font-size:16px}.intro-item strong{font-size:16px}.intro-item span:last-child{font-size:14px}.jane-panel{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:42px;align-items:start;max-width:1100px;margin:auto}.jane-panel>div:first-child>p{font-size:18px;max-width:670px}.connection-badge{display:inline-block;background:#eee4f3;color:#4b2558;border-radius:30px;padding:12px 18px;font-size:15px;font-weight:700}.jane-panel .info-box{margin:0}@media(max-width:800px){.jane-panel{grid-template-columns:1fr}.hero-content p:not(.eyebrow){font-size:18px}.nav{font-size:16px}}

/* v0.5: storefront navigation and product discovery */
.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}
.site-header{display:block;height:auto;padding:0;background:#fff;z-index:30}
.header-main{min-height:82px;display:grid;grid-template-columns:auto minmax(220px,440px) auto;align-items:center;justify-content:space-between;gap:24px;padding:0 max(3.4vw,20px)}
.header-main .brand{flex:none}
.header-actions{display:flex;align-items:center;gap:18px}
.cart-trigger{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;padding:8px 2px;white-space:nowrap}
.cart-trigger svg{width:25px;height:25px}
.cart-trigger .cart-label{display:inline;color:var(--ink);background:none;width:auto;height:auto;border-radius:0;margin:0;font-size:14px}
.cart-trigger #cart-count{width:22px;height:22px;border-radius:50%;margin:0;font-size:11px}
.nav-row{position:relative;min-height:58px;display:flex;align-items:center;gap:22px;padding:0 max(3.4vw,20px);border-top:1px solid #eee4ef;background:#fff}
.nav{display:flex;align-items:center;gap:29px;font-size:15px;font-weight:700}
.nav>a,.nav-dropdown>summary{display:flex;align-items:center;min-height:56px;white-space:nowrap;line-height:1.2}
.nav-dropdown{position:relative;align-self:stretch;display:flex;align-items:center}
.nav-dropdown summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:flex-start;gap:7px}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown>summary svg{display:block;flex:none;width:13px;height:13px;transition:transform .2s}
.nav-dropdown[open]>summary svg{transform:rotate(180deg)}
.dropdown-panel{position:absolute;top:100%;left:-16px;z-index:40;min-width:240px;background:white;border:1px solid #e8dbe9;border-top:3px solid var(--accent);box-shadow:0 18px 35px #23162820;padding:15px 14px 16px;display:grid;gap:3px}
.dropdown-panel p{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--accent);margin:0 8px 8px}
.dropdown-panel a{font-size:14px;font-weight:600;padding:10px 8px;border-radius:5px;white-space:nowrap}
.dropdown-panel a:hover,.dropdown-panel a:focus-visible{background:#f6eff7}
.global-search{position:relative;display:flex;align-items:center;width:100%;min-width:0;height:42px;border:1px solid #d9c9dc;border-radius:7px;background:#fbf8fb;padding:0 4px 0 12px}
.global-search svg{width:19px;height:19px;color:#713e78;flex:none}
.global-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:9px;font-size:14px;color:var(--ink)}
.global-search input::placeholder{color:#7e7082}
.global-search:focus-within{outline:2px solid #9c55a5;outline-offset:2px}
.global-search button{border:0;border-radius:5px;background:var(--accent);color:white;font-size:13px;font-weight:700;padding:8px 12px}
.carousel-section{padding-block:60px;background:#fffdfb}
.carousel-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.carousel-head h2{margin-bottom:8px}
.carousel-head p{margin:0;color:var(--muted)}
.carousel-actions{display:flex;gap:9px;flex:none}
.carousel-actions button{width:42px;height:42px;border:1px solid #b793bc;border-radius:50%;background:white;color:var(--accent);font-size:21px;line-height:1}
.carousel-actions button:hover,.carousel-actions button:focus-visible{background:var(--accent);color:white}
.product-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 2px 22px;scrollbar-color:#bf9bc4 transparent}
.product-rail .product-card{flex:0 0 clamp(215px,23vw,286px);scroll-snap-align:start}
.carousel-footer{margin-top:10px;display:flex;justify-content:flex-end}
@media(max-width:1100px){.site-header{height:auto}.header-main{min-height:76px;grid-template-columns:auto minmax(180px,1fr) auto}.nav-row{height:0;min-height:0;padding:0;border:0}.global-search{height:44px}.nav{display:none;position:absolute;top:0;left:0;right:0;z-index:42;padding:12px 20px 20px;background:#fff;box-shadow:0 18px 30px #23162826;align-items:stretch;gap:0;max-height:calc(100vh - 100px);overflow-y:auto}.nav.open{display:flex}.nav>a,.nav-dropdown>summary{min-height:47px}.nav-dropdown{width:100%;display:block}.dropdown-panel{position:static;box-shadow:none;border:0;border-left:3px solid var(--accent);padding:2px 10px 8px;margin-bottom:8px}.header-actions .text-link{display:none}}
@media(max-width:760px){.header-book{display:none!important}}
@media(max-width:600px){.header-main{min-height:72px;padding:0 16px;grid-template-columns:62px minmax(0,1fr) auto;gap:10px}.header-main .brand{height:66px}.header-main .brand img{width:62px;height:62px}.header-actions{gap:10px}.header-book{display:none!important}.cart-trigger .cart-label{display:none}.global-search{height:40px;padding-left:9px}.global-search svg{width:16px;height:16px}.global-search input{font-size:13px;padding:7px 4px}.global-search button{display:none}.carousel-section{padding-block:48px}.carousel-head{align-items:center}.carousel-head h2{font-size:34px}.product-rail .product-card{flex-basis:72vw}.carousel-actions button{width:38px;height:38px}}
.fulfillment-options{border:0;border-top:1px solid var(--line);margin:0 0 16px;padding:15px 0 0;display:grid;gap:9px}
.fulfillment-options legend{font-size:14px;font-weight:700;padding:0 0 4px}
.fulfillment-options label{display:flex;align-items:center;gap:9px;font-size:13px;cursor:pointer}
.fulfillment-options input{accent-color:var(--accent)}
#fulfillment-note{line-height:1.5;margin:12px 0}
.nav-row{justify-content:flex-start}
.nav{width:100%;justify-content:flex-start;gap:clamp(12px,1.5vw,24px)}
.nav-department,.nav-dropdown summary{font-weight:700}
.nav-dropdown>summary:focus-visible,.nav>a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.services-panel{min-width:315px}
.shop-controls-stacked{display:grid;align-items:start;gap:15px}
.shop-departments,.shop-subcategories{display:flex;flex-wrap:wrap;gap:9px}
.shop-departments .chip,.shop-subcategories .chip{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.shop-subcategories{padding-left:16px;border-left:3px solid #e2c8e5}
.shop-controls-stacked .search-input{width:min(100%,420px)}
.catalog-empty{grid-column:1/-1;padding:44px 28px;background:#fff;border:1px solid var(--line);text-align:center}
.catalog-empty h2{font-size:28px;margin:0 0 8px}
.catalog-empty p{color:var(--muted);max-width:500px;margin:0 auto 20px}
@media(max-width:1100px){.nav{justify-content:flex-start;align-items:stretch}.nav-dropdown>summary,.nav>a{width:100%}.services-panel{min-width:0}}
/* Interface review: keyboard access, readable controls and motion preferences. */
:root{--control-border:#8b6b90}
html{scroll-padding-block-start:155px}
.skip-link{position:fixed;inset-block-start:12px;inset-inline-start:12px;z-index:110;padding:12px 16px;background:#fff;color:#25212a;border:2px solid var(--accent);border-radius:5px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.cart-bottom a{text-decoration:underline;text-underline-offset:3px}
:where(a,button,summary,input,textarea,select):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.global-search,.search-input,.form-field input,.form-field select,.form-field textarea{border-color:var(--control-border)}
.search-input:focus-visible,.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.chip{border-color:#806585}
.footer input{border:1px solid #b793bc}
.cart-trigger{min-height:44px}
.cart-drawer #cart-items{overscroll-behavior:contain}
.nav{overscroll-behavior:contain}
.product-row span,#cart-count,#cart-total,.cart-line strong{font-variant-numeric:tabular-nums}
h1,h2,h3{text-wrap:balance}
.lead,.section-head p,.catalog-empty p{text-wrap:pretty}
@media(max-width:1100px){html{scroll-padding-block-start:82px}.menu-toggle{display:grid;place-items:center;min-width:44px;min-height:44px}}
@media(max-width:600px){.global-search input{font-size:16px}}
@media(prefers-reduced-motion:reduce){
  html,.product-rail{scroll-behavior:auto}
  .button:hover,.service-card:hover,.product-card:hover{transform:none}
  .cart-drawer,.cart-drawer.open{transform:none}
  .cart-drawer{visibility:hidden;opacity:0;transition:opacity .15s}
  .cart-drawer.open{visibility:visible;opacity:1}
  #toast{transform:none;transition:opacity .15s}
  .skip-link{transition:none}
}

/* Shop beauty departments and their subcategories. */
.beauty-panel{min-width:250px;gap:0;padding:8px}
.beauty-panel .beauty-all{border-bottom:1px solid var(--line);border-radius:0;margin-bottom:5px}
.beauty-department{position:relative}
.beauty-department>summary,.beauty-panel>.beauty-department-link{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:10px 8px;border-radius:5px;font-size:14px;font-weight:600;white-space:nowrap}
.beauty-department>summary:hover,.beauty-department>summary:focus-visible,.beauty-panel>.beauty-department-link:hover{background:#f6eff7}
.beauty-department>summary svg{transform:rotate(-90deg);width:12px;height:12px}
.beauty-department[open]>summary svg{transform:rotate(90deg)}
.beauty-submenu{position:absolute;left:calc(100% - 8px);top:-9px;z-index:41;min-width:220px;padding:8px;display:grid;gap:2px;background:#fff;border:1px solid #e8dbe9;border-top:3px solid var(--accent);box-shadow:0 18px 35px #23162820}
@media(max-width:1100px){.beauty-panel{min-width:0;padding:4px 8px}.beauty-department>summary,.beauty-panel>.beauty-department-link{min-height:44px}.beauty-submenu{position:static;min-width:0;margin:0 0 8px 12px;padding:3px 0 3px 9px;border:0;border-left:2px solid #e2c8e5;box-shadow:none}.beauty-submenu a{min-height:40px;display:flex;align-items:center}}

/* Storefront content: compact card, field and checkout patterns inspired by ReUI/shadcn. */
body{background:#faf8fb}
main{background:#faf8fb}
main .section{padding-block:clamp(52px,7vw,96px)}
main .section.alt{background:#f5f0f6}
main .page-hero{background:#f2eaf3;border-bottom:1px solid #e9deeb;padding-block:clamp(52px,6vw,82px)}
main .page-hero.dark-page{background:linear-gradient(135deg,#4c2054,#762d80);border:0}
main .page-hero.shop-hero{background:#f5edf5}
.hero{min-height:clamp(560px,48vw,710px);margin:18px max(2vw,16px) 0;border-radius:20px;overflow:hidden;background-position:center 43%}
.hero:before{background:linear-gradient(90deg,rgba(27,17,33,.9),rgba(27,17,33,.56) 46%,rgba(27,17,33,.08) 82%)}
.hero-content{max-width:720px}
.hero-content h1{max-width:720px;font-size:clamp(42px,5vw,78px)}
.hero-content p:not(.eyebrow){font-size:clamp(16px,1.4vw,19px)}
.hero-buttons .button{min-height:48px;font-size:15px;padding-inline:22px}
.intro-strip{margin:0 max(2vw,16px);background:#fff;border:1px solid #e7dee9;border-top:0;border-radius:0 0 14px 14px;overflow:hidden}
.intro-item{padding:24px 30px}
.intro-icon{width:45px;height:45px;border-radius:10px;background:#faf3fb}
main .section-head{align-items:end;margin-bottom:28px}
main .section-head h2,.carousel-head h2{font-size:clamp(32px,3.5vw,50px)}
main .section-head p,.carousel-head p{font-size:15px;line-height:1.55}
.product-card,.service-card,.service-list-card,.info-box,.admin-card,.metric,.summary-card{border:1px solid #e7dee9;border-radius:14px;background:#fff;box-shadow:0 2px 6px #3b1d4210}
.product-card{overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.product-card:hover{box-shadow:0 12px 30px #3b1d421a;transform:translateY(-3px)}
.product-photo{height:clamp(210px,22vw,285px);background:#f7f4f8;border-bottom:1px solid #eee8ef}
.product-photo img{max-width:88%;max-height:88%;object-fit:contain;transition:transform .25s}
.product-card:hover .product-photo img{transform:scale(1.035)}
.product-card .product-info{padding:19px;display:flex;flex-direction:column;flex:1;gap:10px}
.product-card h3{margin:0;min-height:0;font-size:15px;line-height:1.45}
.product-card small{font-size:11px;letter-spacing:.08em}
.product-row{margin-top:auto;font-size:16px}
.card-action{width:100%;min-height:42px;margin-top:4px;font-size:13px;gap:6px}
main .button,.cart-drawer .button{min-height:44px;border-radius:8px;letter-spacing:0;box-shadow:none}
main .button:disabled,.cart-drawer .button:disabled{opacity:.52;cursor:not-allowed}
.chip{border-radius:7px;font-size:13px;font-weight:600;padding:10px 15px}
.chip.active{box-shadow:0 2px 5px #6c26701c}
.search-input,.form-field input,.form-field select,.form-field textarea{border-radius:8px;background:#fff}
.service-card{padding:10px;overflow:hidden}
.service-art{border-radius:9px;height:270px}
.service-card .info{padding:19px 13px 14px}
.service-list-card{padding:25px;align-items:center}
.service-list-card h3{font-size:23px}
.info-box{padding:25px}
.square-embed{border-radius:14px;background:#fbf9fc}
.back-link{display:inline-flex;align-items:center;min-height:44px;margin-bottom:20px;color:#732a7a;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.cart-drawer{background:#fff;padding:24px}
.cart-line{align-items:flex-start;gap:12px}
.cart-line>img{width:62px;height:68px;object-fit:contain;background:#f7f4f8;border:1px solid #e7dee9;border-radius:8px;flex:none}
.cart-line-copy{min-width:0;flex:1}
.cart-line-copy strong{display:block;line-height:1.4}
.cart-line>strong{white-space:nowrap}
.quantity-control{display:inline-flex;align-items:center;border:1px solid #d9c9dc;border-radius:7px;overflow:hidden;margin-top:9px}
.quantity-control button{width:34px;height:32px;margin:0;padding:0;text-decoration:none;color:#55245b;font-size:18px}
.quantity-control span{min-width:30px;text-align:center;font-size:13px;font-weight:700}
.empty-cart{text-align:center;padding:40px 12px}
.empty-cart h4{font-size:20px;margin:0}
.empty-cart p{font-size:14px;color:var(--muted)}
.product-detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(25px,5vw,70px);align-items:start}
.product-buy-box{background:#fff;border:1px solid #e7dee9;border-radius:14px;padding:clamp(24px,3vw,42px);box-shadow:0 5px 24px #3b1d420c}
.product-buy-box h1{font-size:clamp(32px,3.3vw,52px);line-height:1.1;margin-bottom:18px}
.product-buy-box .detail-price{font-size:25px;font-weight:800;color:#65246c;margin:0 0 22px}
.product-buy-box .button{width:100%;margin:16px 0}
.product-buy-box .fineprint{font-size:13px;margin:0 0 22px}
.variation-field{font-size:14px;margin-top:25px}
.variation-field select{font-size:15px}
.product-variation-label{padding:11px 14px;background:#f8f4f9;border:1px solid #e7dee9;border-radius:8px}
.checkout-page{max-width:1300px;margin:auto}
.checkout-heading{margin:0 0 28px}
.checkout-heading h1{font-size:clamp(36px,4vw,58px);margin-bottom:9px}
.checkout-heading p:last-child{margin:0;color:var(--muted)}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:28px;align-items:start}
.checkout-form{display:grid;gap:18px}
.checkout-card{background:#fff;border:1px solid #e6dfe8;border-radius:14px;padding:clamp(22px,2.8vw,32px);box-shadow:0 3px 14px #3b1d420a}
.checkout-card h2{font-size:22px;margin:0 0 4px}
.checkout-card-head{display:flex;align-items:start;gap:14px;margin-bottom:23px}
.checkout-card-head p{font-size:13px;color:var(--muted);margin:0;line-height:1.4}
.checkout-card .step-number{width:30px;height:30px;flex:none}
.checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.checkout-fields label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#514957}
.checkout-fields input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfc0d2;border-radius:8px;background:#fff;color:#30251f;font-size:15px}
.checkout-fields input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.checkout-methods{border:0;padding:0;margin:0 0 22px;display:grid;gap:9px}
.checkout-methods label{display:flex;align-items:center;gap:12px;min-height:65px;padding:11px 14px;border:1px solid #d9cbdc;border-radius:9px;cursor:pointer}
.checkout-methods label:has(input:checked){border-color:var(--accent);background:#faf2fb;box-shadow:0 0 0 1px var(--accent)}
.checkout-methods input{accent-color:var(--accent)}
.checkout-methods strong,.checkout-methods small{display:block}
.checkout-methods strong{font-size:14px}
.checkout-methods small{font-size:12px;color:var(--muted);margin-top:3px}
.checkout-notice{padding:12px 14px;background:#f8f4f9;border:1px solid #e5d8e8;border-radius:8px;font-size:13px;line-height:1.5;color:#56465b}
.checkout-notice a{text-decoration:underline;text-underline-offset:3px}
.payment-pending{display:flex;gap:12px;align-items:flex-start;padding:18px;background:#f9f6fa;border:1px dashed #d6c7da;border-radius:9px}
.payment-pending strong{font-size:14px}
.payment-pending p{margin:4px 0 0;font-size:13px;color:var(--muted)}
.order-summary{position:sticky;top:170px}
.order-summary h2{margin:0 0 20px}
.checkout-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eee8ef;font-size:13px}
.checkout-item img{width:46px;height:50px;object-fit:contain;background:#f8f5f9;border-radius:6px}
.checkout-item div{flex:1}
.checkout-item strong,.checkout-item small{display:block}
.checkout-item small{color:var(--muted);margin-top:3px}
.order-summary .summary-row{font-size:13px}
.order-summary .button{width:100%;margin-top:10px}
.order-summary .fineprint{text-align:center;font-size:12px}
.empty-checkout{text-align:center;padding:70px 15px}
.admin-shell{background:#f7f5f8}
.admin-main{padding:38px max(3vw,26px)}
.metric,.admin-card{border-radius:12px;box-shadow:0 2px 8px #3b1d4209}
.metric strong{color:#59245f}
.admin-alert{border-radius:9px}
.quote-section{margin:clamp(36px,4vw,64px) max(2vw,16px) 18px;border-radius:18px}
.footer{border-top:4px solid #8e2993}
@media(max-width:850px){.product-detail-layout,.checkout-layout{grid-template-columns:1fr}.order-summary{position:static}.product-page .detail-photo{min-height:360px}}
@media(max-width:600px){.hero{margin:8px 8px 0;border-radius:12px}.hero-content h1{font-size:clamp(38px,11vw,54px)}.intro-strip{margin:0 8px}.checkout-fields{grid-template-columns:1fr}.product-card .product-info{padding:14px}.product-photo{height:190px}.checkout-page{padding-inline:16px!important}.cart-drawer{padding:18px}.cart-line>img{width:46px;height:53px}.cart-line>strong{font-size:12px}}

/* Porto Shop 56 inspired product detail and footer, adapted to Ada's palette and data. */
main .product-page{background:#fff;padding-top:28px}
.product-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 34px;color:#706b73;font-size:13px}
.product-breadcrumb a:hover{text-decoration:underline;color:var(--accent)}
.product-detail-layout{grid-template-columns:minmax(0,1.06fr) minmax(370px,.94fr);gap:clamp(32px,4.5vw,74px)}
.product-gallery{min-width:0;position:relative}
.product-gallery .detail-photo{min-height:520px;background:#f8f7f9;border:1px solid #eee9ef;border-radius:3px;overflow:hidden}
.product-gallery:has(.product-thumbnails) .detail-photo{padding-left:100px}
.product-gallery .detail-photo img{max-height:490px;max-width:88%}
.product-thumbnails{position:absolute;top:14px;left:14px;z-index:1;display:flex;flex-direction:column;gap:10px;max-height:calc(100% - 28px);overflow-y:auto;margin:0;padding:2px}
.product-thumbnail{width:78px;height:82px;flex:none;padding:5px;border:1px solid #e3dbe5;border-radius:3px;background:#fff;cursor:pointer}
.product-thumbnail.selected,.product-thumbnail:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.product-thumbnail img{width:100%;height:100%;object-fit:contain}
.product-buy-box{border:0;box-shadow:none;border-radius:0;padding:3px 0 0;background:transparent}
.product-category{margin:0 0 10px;color:#8e2993;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
main .product-page .product-buy-box h1{font-size:clamp(24px,2.1vw,28px);letter-spacing:-.025em;line-height:1.3;margin:0 0 14px}
.product-buy-box .detail-price{font-size:clamp(23px,2.2vw,28px);color:#312835;margin:0 0 17px}
.product-excerpt{font-size:15px;line-height:1.65;color:#5f5a63;max-width:600px;margin:0 0 20px}
.product-meta{display:flex;flex-wrap:wrap;gap:7px 20px;font-size:13px;color:#77717c;margin:0 0 18px}
.product-meta strong{color:#312835;font-weight:600}
.variation-field{margin:20px 0 0;font-size:14px;color:#3c3440}
.variation-field select{max-width:380px;min-height:46px;margin-top:8px;border:1px solid #c8becb;border-radius:4px}
.product-variation-label{display:inline-block;margin:5px 0 8px;border-radius:4px;font-size:13px}
.product-purchase-row{display:flex;align-items:stretch;gap:10px;margin:23px 0 20px}
.product-purchase-row .button{width:auto;flex:1;max-width:290px;margin:0;min-height:48px;font-size:14px}
.product-quantity{display:flex;align-items:center;border:1px solid #cfc5d1;border-radius:4px;background:#fff;overflow:hidden}
.product-quantity button{width:40px;height:46px;border:0;background:none;color:#35283a;font-size:20px;cursor:pointer}
.product-quantity input{width:42px;height:46px;border:0;text-align:center;font-size:15px;font-weight:700;appearance:textfield}
.product-quantity input::-webkit-inner-spin-button,.product-quantity input::-webkit-outer-spin-button{appearance:none;margin:0}
.product-fulfillment{border-top:1px solid #e8e2e9;border-bottom:1px solid #e8e2e9;margin-top:24px;padding:11px 0}
.product-fulfillment p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:8px 0;font-size:13px;line-height:1.5}
.product-fulfillment strong{font-weight:700;white-space:nowrap}
.product-fulfillment span,.product-fulfillment a{color:#68616c;text-align:right}
.product-fulfillment a{text-decoration:underline;text-underline-offset:3px}
.product-sale-note{font-size:12px;color:#77717c;margin:15px 0 0}
.product-information{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,5vw,70px);border-top:1px solid #e7e1e8;margin-top:clamp(56px,7vw,90px);padding-top:clamp(35px,5vw,60px)}
main .product-page .product-information h2{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px}
.product-information h3{font-size:18px;margin:0 0 12px}
.product-information p{font-size:15px;line-height:1.7;color:#5d5660}
.product-information dl{margin:0 0 28px}
.product-information dl div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #eee8ef;font-size:14px}
.product-information dt{color:#77717c}
.product-information dd{margin:0;text-align:right;font-weight:600}
.product-information a{font-size:14px;font-weight:700;color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.related-products{border-top:1px solid #e7e1e8;margin-top:clamp(50px,6vw,80px);padding-top:clamp(35px,5vw,60px)}
main .product-page .related-products .section-head h2{font-size:26px;line-height:1.25;letter-spacing:-.02em;margin:0}
.porto-footer{display:block;padding:0;background:#fff;border-top:0;color:#312835}
.footer-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#f4f1f5;border-block:1px solid #ebe4ec;padding:0 max(4.5vw,24px)}
.footer-benefits>div{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:10px;align-content:center;min-height:106px;padding:18px;border-right:1px solid #e4dce7}
.footer-benefits>div:last-child{border-right:0}
.footer-benefits span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border:1px solid #cfbcd3;border-radius:50%;font-size:20px;color:var(--accent)}
.footer-benefits strong{font-size:14px;line-height:1.4}
.footer-benefits small{font-size:12px;color:#716a75;line-height:1.45}
.footer-main{display:grid;grid-template-columns:1.6fr repeat(2,1fr) 1.4fr;gap:clamp(24px,3vw,55px);padding:clamp(46px,5vw,76px) max(4.5vw,24px) clamp(42px,5vw,65px)}
.porto-footer .footer-brand img{width:95px;height:95px;background:none}
.porto-footer h4{color:#312835;font-size:14px;letter-spacing:.04em;margin:10px 0 22px;text-transform:none}
.porto-footer p,.porto-footer a:not(.brand){color:#67606b;font-size:13px;line-height:1.65}
.porto-footer .footer-main a:not(.brand){display:block;margin:0 0 10px}
.porto-footer .footer-main a:hover{color:var(--accent);text-decoration:underline}
.porto-footer .footer-about p{max-width:310px;margin:13px 0}
.porto-footer .footer-news p{max-width:300px;margin:0 0 18px}
.porto-footer .footer-news form{display:flex;max-width:330px;border:1px solid #cfc1d2;border-radius:5px;overflow:hidden}
.porto-footer .footer-news input{background:#fff;border:0;color:#302737;padding:12px 13px;font-size:14px}
.porto-footer .footer-news input::placeholder{color:#7d7480}
.porto-footer .footer-news button{background:var(--accent);color:#fff;border:0;padding:0 15px;font-size:13px;font-weight:700;white-space:nowrap}
.porto-footer .footer-news small{display:block;margin-top:12px;font-size:11px;color:#77717c;line-height:1.45}
.porto-footer .footer-bottom{display:flex;grid-column:auto;justify-content:space-between;gap:12px;border-top:1px solid #e9e3ea;padding:22px max(4.5vw,24px);color:#716a75;font-size:12px}
.porto-footer .footer-bottom span{color:inherit}
@media(max-width:900px){.product-detail-layout{grid-template-columns:1fr}.product-gallery .detail-photo{min-height:430px}.product-information{grid-template-columns:1fr}.footer-benefits{grid-template-columns:repeat(2,1fr)}.footer-benefits>div:nth-child(2){border-right:0}.footer-benefits>div:nth-child(-n+2){border-bottom:1px solid #e4dce7}.footer-main{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.product-breadcrumb{font-size:12px;margin-bottom:20px}.product-gallery .detail-photo{min-height:330px}.product-gallery:has(.product-thumbnails) .detail-photo{padding-left:72px}.product-gallery .detail-photo img{max-height:300px}.product-thumbnails{top:8px;left:8px;gap:6px;max-height:calc(100% - 16px)}.product-thumbnail{width:54px;height:58px}main .product-page .product-buy-box h1{font-size:24px}main .product-page .product-information h2{font-size:22px}main .product-page .related-products .section-head h2{font-size:24px}.product-purchase-row .button{max-width:none}.product-fulfillment p{display:block}.product-fulfillment span,.product-fulfillment a{display:block;text-align:left}.footer-benefits{grid-template-columns:1fr;padding:0 18px}.footer-benefits>div{border-right:0;border-bottom:1px solid #e4dce7;min-height:82px}.footer-benefits>div:last-child{border-bottom:0}.footer-main{grid-template-columns:1fr 1fr;padding:40px 22px;gap:25px}.footer-about,.footer-news{grid-column:1/-1}.porto-footer .footer-bottom{display:block;padding:20px 22px}.porto-footer .footer-bottom span{display:block;margin-top:4px}}
main .carousel-section .carousel-head h2,main .home-services .section-head h2{font-size:clamp(24px,2.1vw,28px);line-height:1.3;letter-spacing:-.025em}
.carousel-section .product-rail .product-photo{background:#fff}
.product-page .related-products .product-photo{background:#fff}
.site-header .header-main{grid-template-columns:auto minmax(0,1fr) minmax(200px,260px) auto;gap:clamp(14px,1.5vw,28px);min-height:88px}
.site-header .header-main .nav{width:auto;min-width:0;gap:clamp(10px,1vw,20px);font-size:15px}
.site-header .header-main .nav>a,.site-header .header-main .nav-dropdown>summary{min-height:88px}
.site-header .header-actions{gap:14px}
.account-trigger{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--ink)}
.account-trigger svg{width:25px;height:25px}
.account-trigger:hover{color:var(--accent)}
@media(min-width:1101px) and (max-width:1250px){.site-header .header-main{grid-template-columns:auto minmax(0,1fr) 190px auto;gap:10px;padding-inline:20px}.site-header .header-main .nav{font-size:13px;gap:10px}.site-header .cart-trigger .cart-label{display:none}.site-header .global-search button{display:none}}
@media(max-width:1100px){
  .site-header .header-main{grid-template-columns:auto 44px minmax(180px,1fr) auto;min-height:76px}
  .site-header .header-main .nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:42;padding:12px 20px 20px;background:#fff;box-shadow:0 18px 30px #23162826;align-items:stretch;gap:0;max-height:calc(100vh - 110px);overflow-y:auto}
  .site-header .header-main .nav.open{display:flex}
  .site-header .header-main .nav>a,.site-header .header-main .nav-dropdown>summary{min-height:47px}
  .site-header .header-main .nav-dropdown{width:100%;display:block}
  .site-header .header-main .dropdown-panel{position:static;box-shadow:none;border:0;border-left:3px solid var(--accent);padding:2px 10px 8px;margin-bottom:8px}
  .site-header .menu-toggle{display:grid;place-items:center;min-width:44px;min-height:44px}
}
@media(max-width:600px){.site-header .header-main{grid-template-columns:62px 36px minmax(0,1fr) auto;gap:8px}.site-header .header-actions{gap:2px}.site-header .cart-trigger{gap:2px}.site-header .cart-trigger svg,.account-trigger svg{width:22px;height:22px}.site-header .cart-trigger #cart-count{width:18px;height:18px;font-size:10px;margin:0}.account-trigger{width:38px;height:44px}.site-header .menu-toggle{min-width:36px;padding:0}.site-header .global-search{min-width:0}}
@media(max-width:1100px){
  .site-header .header-main{grid-template-columns:auto minmax(0,1fr) auto;column-gap:14px;row-gap:0}
  .site-header .menu-toggle{display:none}
  .site-header .header-main .nav{display:flex;position:static;grid-column:1/-1;grid-row:2;flex-direction:row;flex-wrap:wrap;align-items:center;width:100%;max-height:none;overflow:visible;gap:0 18px;padding:0 0 8px;box-shadow:none}
  .site-header .header-main .nav>a,.site-header .header-main .nav-dropdown>summary{min-height:42px}
  .site-header .header-main .nav-dropdown{display:flex;width:auto}
  .site-header .header-main .dropdown-panel{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid #e8dbe9;border-top:3px solid var(--accent);box-shadow:0 18px 35px #23162820;padding:12px;z-index:50}
}
@media(max-width:600px){.site-header .header-main{grid-template-columns:62px minmax(0,1fr) auto;column-gap:8px;padding-inline:16px}.site-header .header-main .nav{gap:0 12px;font-size:12px}.site-header .header-main .nav>a,.site-header .header-main .nav-dropdown>summary{min-height:38px}.site-header .header-main .nav-dropdown{position:static}.site-header .header-main .dropdown-panel{left:16px;right:16px;min-width:0}.site-header .global-search{min-width:0}}
/* Keep the current section visible in the main navigation. */
.site-header #main-nav>a,.site-header #main-nav>.nav-dropdown>summary{position:relative}
.site-header #main-nav>a.is-active::after,.site-header #main-nav>.nav-dropdown.is-active>summary::after{content:"";position:absolute;left:0;right:0;bottom:13px;height:3px;background:var(--accent);border-radius:2px}
@media(max-width:1100px){.site-header #main-nav>a.is-active::after,.site-header #main-nav>.nav-dropdown.is-active>summary::after{bottom:3px}}
/* Inner-page headings follow the homepage beauty-edit title style. */
main .page-hero h1,main .shop-top h1,main .checkout-page h1,main .product-page h1,main .admin-top h1{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(24px,2.1vw,28px);font-weight:700;line-height:1.3;letter-spacing:-.025em}
/* The homepage hero reaches the header and both viewport edges. */
main .hero{margin:0;border-radius:0}
/* Shop filters begin the page, with search directly beneath the categories. */
main .shop-top{padding:clamp(24px,2.5vw,36px) max(4.5vw,24px);background:#fff;border-bottom:1px solid #e9deeb}
main .shop-top-categories{min-width:0}
main .shop-top-categories .shop-subcategories{margin-top:12px}
main .shop-search-form{display:flex;align-items:stretch;gap:10px;width:min(100%,480px);margin-top:18px}
main .shop-search-form .search-input{flex:1;min-width:0;height:48px;padding:0 14px}
main .shop-search-form button{min-width:96px;padding:0 18px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;font-weight:700}
main .shop-search-form button:hover{background:#84228a}
main .shop-catalog{padding-top:clamp(24px,3vw,40px)}
main .product-card .product-photo{background:#fff}
@media(max-width:600px){main .shop-top{padding-block:24px}main .shop-search-form{width:100%}}
main .trichology-intro{padding-top:clamp(32px,4vw,56px)}
main .trichology-intro h1{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(24px,2.1vw,28px);font-weight:700;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}
main .trichology-intro .lead{font-size:15px;line-height:1.65;color:#5f5a63;max-width:600px}
main .trichology-steps h2,main .jane-panel h2{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(24px,2.1vw,28px);font-weight:700;line-height:1.3;letter-spacing:-.025em}
@media(min-width:1251px){.site-header .header-main .nav{width:100%;justify-content:space-between}}
/* Keep the desktop header together instead of stretching each link across the viewport. */
@media(min-width:1251px){
  .site-header .header-main{max-width:1640px;margin-inline:auto;grid-template-columns:76px minmax(0,1fr) minmax(210px,260px) auto;gap:clamp(12px,1.2vw,20px);padding-inline:clamp(20px,2.5vw,40px)}
  .site-header .header-main .nav{width:auto;justify-content:center;gap:clamp(14px,1.3vw,24px)}
}
main .shop-refinements{display:flex;align-items:end;flex-wrap:wrap;gap:12px 16px;margin-top:16px}
main .shop-refinements>label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--ink)}
/* Match the homepage section typography and keep service cards easy to scan. */
#app:has(.service-list)>.page-hero{padding-block:clamp(30px,3vw,48px)}
#app:has(.service-list)>.page-hero .breadcrumbs{margin-bottom:16px}
#app:has(.service-list)>.page-hero .eyebrow{margin-bottom:6px}
#app:has(.service-list)>.page-hero h1{margin-bottom:10px}
#app:has(.service-list)>.page-hero .lead{font-size:15px;line-height:1.65;color:#6e6870;max-width:660px}
#app:has(.service-list)>.section{padding-block:clamp(36px,4vw,56px)}
#app:has(.service-list) .section-head{margin-bottom:22px}
#app:has(.service-list) .section-head h2{font-size:clamp(24px,2.1vw,28px);line-height:1.3;letter-spacing:-.025em;margin-bottom:8px}
#app:has(.service-list) .section-head p:not(.eyebrow){font-size:15px;line-height:1.65}
#app:has(.service-list) .service-list{gap:12px;max-width:1200px}
#app:has(.service-list) .service-list-card{padding:16px 20px;gap:12px}
#app:has(.service-list) .service-list-card h3{font-size:18px;line-height:1.35;margin:8px 0 4px}
#app:has(.service-list) .service-meta{font-size:12px;line-height:1.45;margin:6px 0 0}
#app:has(.service-list) .service-list-card .button{padding:10px 14px}
#app:has(.service-list)>.section>.info-box{max-width:1200px;padding:20px;margin-top:24px}
main .trichology-intro{padding-block:clamp(36px,4vw,56px)}
main .trichology-intro .care-content{align-items:start;gap:clamp(24px,3vw,48px)}
main .trichology-intro .care-content img{height:420px;border-radius:14px}
main .trichology-intro .info-box{padding:18px 20px;margin:20px 0}
main .trichology-intro .info-box h3{font-size:18px}
main .trichology-intro .info-box p{font-size:14px;line-height:1.6}
main .trichology-steps{padding-block:clamp(36px,4vw,56px)}
main .trichology-steps h2{margin-bottom:20px}
main .trichology-steps .card-grid{gap:14px;max-width:1200px}
main .trichology-steps .info-box{padding:18px 20px;margin:0}
main .trichology-steps .info-box h3{font-size:18px;line-height:1.35;margin:9px 0 5px}
main .trichology-steps .info-box p{font-size:14px;line-height:1.6}
@media(max-width:760px){main .trichology-intro .care-content img{height:300px}#app:has(.service-list) .service-list-card{padding:16px}}
main .shop-refinements select{min-width:150px;height:42px;padding:0 34px 0 12px;border:1px solid var(--control-border);border-radius:6px;background:#fff;color:var(--ink)}
main .shop-refinements .shop-priced-toggle{display:flex;align-items:center;gap:8px;min-height:42px;font-size:13px;font-weight:600}
main .shop-priced-toggle input{width:17px;height:17px;accent-color:var(--accent)}
main #shop-clear-filters{min-height:42px;padding:0 4px;border:0;background:none;color:var(--accent);font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
main .class-intro{padding-top:clamp(32px,4vw,56px)}
main .class-intro h1,main .class-benefits h2{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(24px,2.1vw,28px);font-weight:700;line-height:1.3;letter-spacing:-.025em}
main .class-intro h1{margin:0 0 14px}
main .class-intro .lead{font-size:15px;line-height:1.65;color:#5f5a63;max-width:600px}

/* A single, readable consultation journey inspired by ReUI's three-step explainer. */
main#app:has(.trichology-intro),main .section.alt.trichology-steps{background:#fff}
main .trichology-steps .consultation-guide{width:100%;margin:0;background:#fff;border:1px solid #e7dee9;border-radius:16px;box-shadow:0 8px 30px #3b1d420a;overflow:hidden}
main .trichology-steps .consultation-guide-head{display:block;padding:clamp(24px,3vw,40px)}
main .trichology-steps .consultation-guide-head .eyebrow{display:inline-flex;align-items:center;min-height:28px;padding:5px 11px;margin:0 0 18px;border-radius:100px;background:#f5e8f6;color:var(--accent);font-size:10px}
main .trichology-steps .consultation-guide-head h2{margin:0}
main .trichology-steps .consultation-guide-head>p{max-width:680px;margin:10px 0 0;color:#6e6870;font-size:14px;line-height:1.6}
main .trichology-steps .consultation-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0;border-top:1px solid #e7dee9}
main .trichology-steps .consultation-journey li{display:flex;align-items:flex-start;gap:17px;min-width:0;padding:clamp(22px,2.5vw,34px)}
main .trichology-steps .consultation-journey li+li{border-left:1px solid #e7dee9}
main .trichology-steps .consultation-step-number{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #e9ccea;border-radius:11px;background:#f8eff9;color:var(--accent);font-size:13px;font-weight:800;letter-spacing:.02em}
main .trichology-steps .consultation-journey h3{font-family:'DM Sans',Arial,sans-serif;font-size:17px;font-weight:700;line-height:1.35;letter-spacing:-.02em;margin:0 0 8px}
main .trichology-steps .consultation-journey p{color:#6e6870;font-size:14px;line-height:1.6;margin:0}
@media(max-width:900px){main .trichology-steps .consultation-journey{grid-template-columns:1fr}main .trichology-steps .consultation-journey li+li{border-left:0;border-top:1px solid #e7dee9}}
@media(max-width:600px){main .trichology-steps .consultation-guide-head{display:block}main .trichology-steps .consultation-guide-head>p{margin-top:12px}main .trichology-steps .consultation-journey li{padding:22px}main .trichology-steps .consultation-step-number{width:40px;height:40px}}

/* Keep checkout close to the header and the order visible as the form scrolls. */
main#app:has(.checkout-page){background:#fff}
main .section.checkout-page{padding-top:0}
@media(min-width:851px){
  main .checkout-page .order-summary{position:sticky;top:104px;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:850px){main .checkout-page .order-summary{position:static;max-height:none;overflow:visible}}

/* Logo placeholders follow the reference's clean, text-led brand row. */
main .featured-brands{background:#fff;padding-block:clamp(36px,4vw,58px);border-top:1px solid #eee8ef;border-bottom:1px solid #eee8ef}
main .featured-brands-heading{margin-bottom:clamp(22px,3vw,40px)}
main .featured-brands-heading .eyebrow{margin-bottom:7px}
main .featured-brands-heading h2{font-size:clamp(24px,2.1vw,28px);line-height:1.3;letter-spacing:-.025em;margin:0}
main .featured-brands-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:16px}
main .featured-brand{display:flex;align-items:center;justify-content:center;min-height:72px;padding:10px;color:#29252b;text-align:center;line-height:1;font-size:clamp(16px,1.55vw,23px);white-space:nowrap}
main .brand-style-one{font-weight:300;letter-spacing:-.07em}
main .brand-style-one strong{font-weight:800;margin-left:5px}
main .brand-style-two{font-weight:800;letter-spacing:-.045em}
main .brand-style-two span{display:inline-grid;place-items:center;margin-left:6px;width:31px;height:31px;background:#29252b;color:#fff;font-size:14px}
main .brand-style-three{font-family:Georgia,serif;font-weight:700;letter-spacing:-.045em}
main .brand-style-three span{font-weight:400;margin-left:3px}
main .brand-style-four{gap:7px;font-size:17px}
main .brand-style-four span{font-size:30px;font-weight:800;letter-spacing:-.1em}
main .brand-style-five{font-weight:800;letter-spacing:.02em}
main .brand-style-five em{font-family:Georgia,serif;font-weight:400;margin-left:5px}
main .brand-style-six{flex-direction:column;gap:2px;font-size:17px;letter-spacing:.09em}
main .brand-style-six span{font-size:13px;letter-spacing:.26em}
@media(max-width:900px){main .featured-brands-list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}}
@media(max-width:520px){main .featured-brands-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}main .featured-brand{min-height:64px}}

main .home-testimonials{background:#fff;padding-block:clamp(42px,5vw,72px)}
main .testimonials-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
main .testimonials-heading .eyebrow{margin-bottom:7px}
main .testimonials-heading h2{font-size:clamp(24px,2.1vw,28px);line-height:1.3;letter-spacing:-.025em;margin:0}
main .testimonials-controls{display:flex;gap:9px}
main .testimonials-controls button{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ded2e0;border-radius:50%;background:#fff;color:#54235b;font-size:21px;line-height:1}
main .testimonials-controls button:hover,main .testimonials-controls button:focus-visible{border-color:var(--accent);background:#f8eff9}
main .testimonial-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:2px 2px 12px}
main .testimonial-card{flex:0 0 clamp(245px,25vw,310px);min-height:240px;padding:24px;border:1px solid #e7dee9;border-radius:12px;background:#fff;scroll-snap-align:start}
main .testimonial-person{display:flex;align-items:center;gap:12px}
main .testimonial-avatar{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:#f2e4f4;color:#812588;font-size:19px;font-weight:800}
main .testimonial-card:nth-child(2) .testimonial-avatar{background:#f5e9df;color:#80502d}
main .testimonial-card:nth-child(3) .testimonial-avatar{background:#e9e5f3;color:#553d83}
main .testimonial-card:nth-child(4) .testimonial-avatar{background:#e7f0eb;color:#336548}
main .testimonial-person strong,main .testimonial-person small{display:block}
main .testimonial-person strong{font-size:15px;line-height:1.3}
main .testimonial-person small{margin-top:3px;color:#746c76;font-size:12px}
main .testimonial-card blockquote{margin:28px 0 0;color:#4e4850;font-size:18px;font-weight:500;line-height:1.55}
@media(max-width:600px){main .testimonial-card{flex-basis:min(78vw,310px);min-height:220px}main .testimonial-card blockquote{font-size:17px}}

/* Compact category tiles keep all five departments in one desktop row. */
main .shop-by-category{padding-block:clamp(26px,3vw,40px);background:#fff;border-top:1px solid #eee6ef}
main .shop-by-category .category-heading{margin-bottom:18px}
main .shop-by-category .category-heading .eyebrow{margin-bottom:6px}
main .shop-by-category h2{font-size:clamp(24px,2.1vw,28px);line-height:1.3;letter-spacing:-.025em;margin:0}
main .category-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
main .category-tile{display:flex;align-items:center;gap:12px;min-width:0;min-height:78px;padding:12px;border:1px solid #e8dfea;border-radius:10px;background:#fff;text-align:left;transition:border-color .2s,box-shadow .2s,transform .2s}
main .category-photo{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:8px;overflow:hidden;background:#f2eaf3}
main .category-photo img{width:100%;height:100%;object-fit:cover}
main .category-placeholder{font-size:19px;font-weight:700;letter-spacing:-.06em;color:#93449d}
main .category-photo-braiding-hair{background:#efe6f4}
main .category-photo-accessories{background:#f7eaf0}
main .category-photo-wigs{background:#ece8f4}
main .category-photo-weave{background:#f4e9e6}
main .category-tile strong{font-size:14px;line-height:1.25}
main .category-tile:hover{transform:translateY(-2px);border-color:#cfaed3;box-shadow:0 8px 20px #54265d12}
main .category-tile:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:8px}
@media(max-width:960px){main .category-row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px}main .category-tile{flex:0 0 190px;scroll-snap-align:start}main .category-photo{width:46px;height:46px}}

/* Ada's hair and scalp consultation story. */
main .trichology-intro h1{max-width:660px;font-size:clamp(30px,3.1vw,44px);line-height:1.16}
main .trichology-intro .trichology-question{max-width:650px;margin:0 0 14px;font-size:18px;font-weight:600;line-height:1.5}
main .trichology-intro .lead{margin:0 0 24px}
main .trichology-explainer,main .trichology-story,main .trichology-consultation,main .trichology-booking{padding-block:clamp(40px,5vw,70px)}
main .trichology-explainer h2,main .trichology-story h2,main .trichology-consultation h2,main .trichology-booking h2{font-size:clamp(24px,2.1vw,30px);line-height:1.3;letter-spacing:-.025em;margin:0 0 16px}
main .trichology-explainer p:not(.eyebrow),main .trichology-story p:not(.eyebrow),main .trichology-consultation p:not(.eyebrow),main .trichology-booking p:not(.eyebrow){font-size:15px;line-height:1.75;color:#5f5a63}
main .trichology-copy{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr);align-items:start;gap:clamp(24px,5vw,80px)}
main .trichology-copy>div{max-width:760px}
main .trichology-story .trichology-copy{display:block}
main .trichology-story p{margin:0 0 16px}
main .trichology-certification{margin:0;padding:20px;border:1px solid #e7dee9;border-radius:14px;background:#fff;text-align:center}
main .trichology-certification img{display:block;width:min(100%,300px);height:auto;margin-inline:auto}
main .trichology-certification figcaption{margin-top:14px;color:#6e6870;font-size:12px;line-height:1.5}
main .trichology-consultation>p:not(.eyebrow){margin:0 0 20px}
main .consultation-includes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;max-width:1050px;margin:0;padding:0;list-style:none}
main .consultation-includes li{padding:16px 18px 16px 42px;border:1px solid #e7dee9;border-radius:10px;background:#fff;position:relative;font-size:14px;line-height:1.55}
main .consultation-includes li::before{content:'✓';position:absolute;left:18px;color:var(--accent);font-weight:700}
main .trichology-booking>div{max-width:850px}
main .trichology-booking .button{margin-top:8px}
main .trichology-booking .trichology-contact{margin:24px 0 0;font-size:13px!important}
main .trichology-contact a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){main .trichology-copy,main .consultation-includes{grid-template-columns:1fr}main .trichology-intro .trichology-question{font-size:16px}main .trichology-certification{max-width:380px}main .trichology-contact{line-height:1.8}}

/* Editorial homepage slider: Ada's imagery and palette with a clean Porto-style composition. */
main .hero.hero-slider{position:relative;min-height:clamp(390px,32vw,470px);height:clamp(390px,32vw,470px);margin:0;border-radius:0;background:#fff;color:#27212b;overflow:hidden}
main .hero.hero-slider::before,main .hero.hero-slider::after{content:'';position:absolute;top:16px;bottom:16px;width:calc(7.5vw - 28px);background-position:center;background-size:cover;opacity:.78;pointer-events:none}
main .hero.hero-slider::before{left:0;border-radius:0 24px 24px 0;background-image:url('assets/scalp.png')}
main .hero.hero-slider::after{right:0;border-radius:24px 0 0 24px;background-image:url('assets/homepage/ada-home-banner.jpg')}
main .hero.hero-slider[data-active-slide="1"]::before{background-image:url('assets/ada-hero.jpg')}
main .hero.hero-slider[data-active-slide="1"]::after{background-image:url('assets/scalp.png')}
main .hero.hero-slider[data-active-slide="2"]::before{background-image:url('assets/homepage/ada-home-banner.jpg')}
main .hero.hero-slider[data-active-slide="2"]::after{background-image:url('assets/ada-hero.jpg')}
.hero-slides{position:absolute;z-index:1;inset:16px 7.5vw;border-radius:24px;overflow:hidden}
.hero-slide{position:absolute;inset:0}
.hero-slide{overflow:hidden;background:#f4ebf2;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s ease}
.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero-slide:nth-child(2){background:#f4eff2}
.hero-slide:nth-child(3){background:#f1e9ed}
.hero-slide-image{position:absolute;inset:0 0 0 auto;width:67%;height:100%;max-width:none;object-fit:cover;object-position:center}
.hero-slide:first-child .hero-slide-image{object-position:center 45%}
.hero-slide:nth-child(2) .hero-slide-image{object-position:54% center}
.hero-slide:nth-child(3) .hero-slide-image{object-position:center 34%}
.hero-slide::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#f4ebf2 0%,#f4ebf2 31%,rgba(244,235,242,.95) 39%,rgba(244,235,242,.38) 59%,transparent 76%)}
.hero-slide:nth-child(2)::after{background:linear-gradient(90deg,#f4eff2 0%,#f4eff2 30%,rgba(244,239,242,.94) 40%,rgba(244,239,242,.25) 65%,transparent 82%)}
.hero-slide:nth-child(3)::after{background:linear-gradient(90deg,#f1e9ed 0%,#f1e9ed 30%,rgba(241,233,237,.94) 40%,rgba(241,233,237,.28) 64%,transparent 80%)}
.hero-slide-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:min(46%,620px);height:100%;margin-left:max(5vw,32px);padding:21px 0 36px}
.hero-slide-content .eyebrow{margin:0 0 19px;color:#8d268f;font-size:12px;font-weight:800;letter-spacing:.16em}
.hero-slide-content h1{max-width:610px;margin:0 0 20px;color:#26222a;font-family:'DM Sans',Arial,sans-serif;font-size:clamp(44px,4.5vw,72px);font-weight:800;line-height:1.04;letter-spacing:-.055em}
.hero-slide-content>p:not(.eyebrow){max-width:480px;margin:0 0 30px;color:#514953;font-size:clamp(16px,1.2vw,19px);line-height:1.58}
.hero-slide-content .button{min-height:52px;padding:14px 23px;border-radius:5px;font-size:15px}
.hero-slider-controls{position:absolute;z-index:3;inset:0;display:block;transform:none;pointer-events:none}
.hero-slider-dots,.hero-slider-arrows{display:flex;align-items:center;gap:10px;pointer-events:auto}
.hero-slider-dots{position:absolute;right:calc(7.5vw + 28px);bottom:32px}
.hero-slider-arrows{display:contents}
.hero-slider-dot{width:9px;height:9px;padding:0;border:1px solid #5d475e;border-radius:50%;background:transparent}
.hero-slider-dot.is-active{width:27px;border-radius:99px;border-color:#94259b;background:#94259b}
.hero-slider-arrows button{position:absolute;top:50%;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #e3d7e3;border-radius:50%;background:#fff;color:#33243a;font-size:23px;line-height:1;transform:translateY(-50%);pointer-events:auto}
.hero-slider-arrows button:first-child{left:calc(7.5vw - 24px)}
.hero-slider-arrows button:last-child{right:calc(7.5vw - 24px)}
.hero-slider-arrows button:hover{border-color:#94259b;color:#94259b}
.hero-slider button:focus-visible,.hero-slider a:focus-visible{outline:3px solid #8b208f;outline-offset:3px}
@media(max-width:760px){
  main .hero.hero-slider{height:540px;min-height:540px}
  main .hero.hero-slider::before,main .hero.hero-slider::after{content:none}
  .hero-slides{inset:10px 12px;border-radius:18px}
  .hero-slide-image{inset:0 0 auto;width:100%;height:53%;object-position:center 40%}
  .hero-slide:nth-child(3) .hero-slide-image{object-position:center 29%}
  .hero-slide::after,.hero-slide:nth-child(2)::after,.hero-slide:nth-child(3)::after{background:linear-gradient(180deg,transparent 0%,rgba(244,235,242,.2) 39%,#f4ebf2 54%,#f4ebf2 100%)}
  .hero-slide:nth-child(2)::after{background:linear-gradient(180deg,transparent 0%,rgba(244,239,242,.2) 39%,#f4eff2 54%,#f4eff2 100%)}
  .hero-slide:nth-child(3)::after{background:linear-gradient(180deg,transparent 0%,rgba(241,233,237,.2) 39%,#f1e9ed 54%,#f1e9ed 100%)}
  .hero-slide-content{justify-content:flex-end;width:auto;height:100%;margin:0;padding:0 24px 44px}
  .hero-slide-content .eyebrow{margin-bottom:10px;font-size:10px}
  .hero-slide-content h1{margin-bottom:12px;font-size:clamp(36px,8vw,50px)}
  .hero-slide-content>p:not(.eyebrow){margin-bottom:20px;font-size:15px;line-height:1.45}
  .hero-slide-content .button{min-height:46px;padding:11px 17px;font-size:13px}
  .hero-slider-dots{right:28px;bottom:23px}
  .hero-slider-arrows button{width:40px;height:40px;font-size:20px}
  .hero-slider-arrows button:first-child{left:2px}
  .hero-slider-arrows button:last-child{right:2px}
}
@media(max-width:390px){main .hero.hero-slider{height:570px;min-height:570px}.hero-slide-content{padding-bottom:44px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Equal breathing room above and below the class feature. */
main .quote-section{margin:32px max(2vw,16px);padding-block:clamp(55px,6vw,78px)}
@media(max-width:600px){main .quote-section{margin:20px 16px;padding-block:50px}}

/* Flat surfaces across the storefront and admin. Focus remains visible through outlines. */
*,*::before,*::after{box-shadow:none!important}

/* Keep the two-row header clean while preserving the active-link underline. */
.site-header{border-bottom:0}
.site-header .nav-row{border-top:0}

/* White indicators remain visible over both light and dark hero photography. */
.hero-slider-dot{background:#fff;border:1px solid #39283d}
.hero-slider-dot.is-active{background:#fff;border:2px solid #39283d}

/* Porto-style three-row header: announcement, tools, then navigation and offer. */
.site-header .header-main{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;justify-content:stretch;gap:clamp(18px,3vw,54px);width:min(100%,1640px);min-height:84px;margin-inline:auto;padding:0 clamp(20px,2.5vw,40px)}
.site-header .header-main .brand{grid-column:1;grid-row:1}
.site-header .header-main .global-search{grid-column:2;grid-row:1;justify-self:center;width:min(100%,640px);height:48px}
.site-header .header-main .menu-toggle{display:none}
.site-header .header-main .header-actions{grid-column:3;grid-row:1;display:flex;align-items:center;gap:clamp(8px,1.2vw,20px)}
.call-trigger{display:grid;place-items:center;flex:none;width:44px;height:44px;color:var(--ink)}
.call-trigger svg{width:24px;height:24px}
.call-trigger:hover,.call-trigger:focus-visible{color:var(--accent)}
.site-header .header-nav-row{display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(100%,1640px);min-height:56px;margin-inline:auto;padding:0 clamp(20px,2.5vw,40px);background:#fff}
.site-header .header-nav-row .nav{position:static;display:flex;flex:1 1 auto;align-items:center;flex-direction:row;flex-wrap:wrap;gap:0 clamp(18px,2vw,34px);width:auto;min-width:0;max-height:none;overflow:visible;margin:0;padding:0;background:transparent;font-size:15px;box-shadow:none}
.site-header .header-nav-row .nav>a,.site-header .header-nav-row .nav-dropdown>summary{display:flex;align-items:center;min-height:56px}
.site-header .header-nav-row .nav-dropdown{position:relative;display:flex;align-self:stretch;width:auto}
.site-header .header-nav-row .dropdown-panel{position:absolute;top:100%;left:0;z-index:50;min-width:240px;padding:12px;border:1px solid #e8dbe9;border-top:3px solid var(--accent);background:#fff}
.site-header .header-nav-row .beauty-submenu{position:absolute;left:calc(100% - 8px);top:-9px}
.site-header .header-offer{display:flex;flex:none;align-items:center;gap:9px;margin:0;color:#8b208f;font-size:12px;font-weight:800;line-height:1.35;white-space:nowrap}
.site-header .header-offer>span:first-child{font-size:17px}
.site-header .offer-short{display:none}
.site-header #main-nav>a.is-active::after,.site-header #main-nav>.nav-dropdown.is-active>summary::after{bottom:6px}
@media(max-width:1150px){
  .site-header .header-main{gap:16px}
  .site-header .header-nav-row .nav{gap:0 17px;font-size:13px}
  .site-header .header-offer{font-size:11px}
  .site-header .offer-full{display:none}
  .site-header .offer-short{display:inline}
}
@media(max-width:1100px){.site-header .header-nav-row .beauty-submenu{position:static;min-width:0;margin:0 0 8px 12px;padding:3px 0 3px 9px;border:0;border-left:2px solid #e2c8e5}}
@media(max-width:760px){
  .site-header .header-main{grid-template-columns:62px minmax(0,1fr) auto;gap:8px;min-height:74px;padding-inline:14px}
  .site-header .header-main .global-search{height:40px}
  .site-header .header-main .global-search button{display:none}
  .site-header .header-main .header-actions{gap:2px}
  .site-header .header-main .cart-trigger .cart-label{display:none}
  .site-header .account-trigger,.site-header .call-trigger{width:36px;height:40px}
  .site-header .account-trigger svg,.site-header .call-trigger svg{width:21px;height:21px}
  .site-header .header-nav-row{align-items:flex-start;gap:8px;min-height:48px;padding-inline:14px}
  .site-header .header-nav-row .nav{gap:0 12px;font-size:12px}
  .site-header .header-nav-row .nav>a,.site-header .header-nav-row .nav-dropdown>summary{min-height:38px}
  .site-header .header-offer{align-self:center;max-width:82px;white-space:normal;font-size:10px}
  .site-header .header-nav-row .beauty-nav .dropdown-panel{left:auto;right:0}
  .site-header .header-nav-row .beauty-submenu{position:static;min-width:0}
}
@media(max-width:390px){
  .site-header .header-main{grid-template-columns:54px minmax(0,1fr) auto;padding-inline:10px}
  .site-header .header-main .brand img{width:54px;height:54px}
  .site-header .header-main .cart-trigger{gap:2px}
  .site-header .header-nav-row{padding-inline:10px}
  .site-header .header-nav-row .nav{gap:0 9px;font-size:11px}
}
