:root{--ink:#222321;--paper:#fafaf8;--soft:#eeefeb;--line:#d4d5cf;--muted:#5e615a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:2px solid #85724f;outline-offset:5px}.skip{position:absolute;left:20px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}header{height:100px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:var(--paper)}.brand{font:34px Georgia,serif;letter-spacing:-1.5px;line-height:1.1;display:inline-block}.brand span{display:block;font:11px Arial,sans-serif;letter-spacing:4px;text-align:center;margin-top:8px}nav{display:flex;gap:30px;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--ink);color:white;padding:16px 24px;font-size:14px;min-height:52px}.button:hover{background:#43483e;text-decoration:none}.button.small{padding:12px 19px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:700px}.hero-copy{padding:68px 11% 35px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.3px;margin:0 0 28px}h1,h2,h3,h4,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.7px;line-height:1.08}h1{font-size:clamp(64px,6.5vw,96px);margin-bottom:28px}em{font-weight:400;color:#66705e}h1+p{max-width:360px;color:var(--muted);margin-bottom:28px}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:4px;font-size:14px}.hero-copy>.text-link{display:block;width:max-content;margin-top:20px}.hero-note{margin-top:50px;font-size:11px;letter-spacing:1.7px}.hero-image{position:relative;min-height:700px;overflow:hidden}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 43%}.photo-label{position:absolute;bottom:28px;left:32px;color:white;font:30px/1.15 Georgia,serif;text-shadow:0 1px 8px #222}.photo-label em{color:white}.ribbon{display:flex;justify-content:space-around;gap:16px;background:var(--ink);color:#fff;padding:22px 5%;font-size:11px;letter-spacing:2px}.section{padding:95px 5.5%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:50px}h2{font-size:clamp(40px,4.1vw,61px);margin-bottom:0}.section-heading>p{max-width:350px;color:var(--muted);margin:0}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.menu-grid article{border-top:1px solid var(--ink);padding-top:20px}.number{font-size:12px;color:var(--muted)}h3{font:28px Georgia,serif;margin:14px 0}.muted{color:var(--muted);font-size:14px}.menu-grid dl{margin:28px 0 0}.menu-grid dl div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:13px 0;font-size:14px}dt small{display:block;color:var(--muted);font-size:12px}dd{margin:0;white-space:nowrap}.consult{margin-top:30px;background:var(--soft);padding:22px}.consult h4{font-size:16px;font-weight:400;margin-bottom:10px}.consult p,.consult a{font-size:14px}.consult a{text-decoration:underline}.price-note{font-size:12px;color:var(--muted);margin:28px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--soft)}.about-photo{height:650px;padding:50px 12%}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy{align-self:center;padding:60px 12% 60px 4%}.about h2{margin-bottom:30px}.about-copy>p:not(.eyebrow){color:var(--muted)}.about .text-link{margin-top:12px}.reviews{text-align:center}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;margin-top:45px}.review-grid figure{padding:0 32px;margin:0;border-left:1px solid var(--line)}.review-grid figure:first-child{border:0;padding-left:0}.quote-mark{font:60px Georgia,serif;color:#7c8575;line-height:1}blockquote{font:21px/1.55 Georgia,serif;margin:10px 0 25px}figcaption{font-size:14px}figcaption span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.booking{background:var(--ink);color:white;padding:75px 7%;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.booking em{color:#c4cdbb}.booking .eyebrow{color:#c4cdbb}.booking p:not(.eyebrow){color:#dedfd9;max-width:350px}.actions{display:flex;gap:12px;margin:26px 0}.light{background:var(--paper);color:var(--ink)}.light:hover{background:#d7dece}.outline{border:1px solid #969b90}.phone{font-size:22px}.visit{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px}.visit h3{font-family:Arial;font-size:16px;margin:5px 0 20px}.visit address{font-style:normal;color:var(--muted);margin-bottom:22px}.visit>div>a{display:block;width:fit-content}.visit>div>.text-link{margin-top:18px}.visit>div:last-child>a{overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:35px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer small,footer div{font-size:12px;color:var(--muted);margin:0}footer div{display:flex;flex-direction:column;gap:4px}footer .brand{font-size:26px}@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:850px}}@media(max-width:900px){header{gap:15px;padding:0 5%}nav{gap:18px}header .small{display:none}.hero-copy{padding:55px 9% 35px}.hero,.hero-image{min-height:620px}h1{font-size:68px}.menu-grid{gap:25px}.section{padding:65px 5%}.about-photo{height:590px;padding:35px 8%}.about-copy{padding:40px 8% 40px 2%}.visit{grid-template-columns:1fr 1fr}.visit>div:first-child{grid-column:1/-1}footer{flex-wrap:wrap}}@media(max-width:600px){header{height:86px}.brand{font-size:29px}nav{gap:14px;font-size:12px}nav a:nth-child(3){display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 7%}.hero h1{font-size:70px}.hero-note{margin-top:35px}.hero-image{min-height:500px;max-height:650px}.hero-image img{object-position:center 40%}.ribbon{font-size:9px;letter-spacing:1px;gap:20px;text-align:center}.section-heading{display:block}.section-heading>p{margin-top:25px}.menu-grid{grid-template-columns:1fr;gap:40px}.section{padding:60px 7%}.about{grid-template-columns:1fr}.about-photo{height:490px;padding:30px 7% 0}.about-copy{padding:40px 7% 55px}.review-grid{grid-template-columns:1fr;gap:30px}.review-grid figure,.review-grid figure:first-child{padding:0 0 25px;border:0;border-bottom:1px solid var(--line)}.reviews{text-align:left}.booking{grid-template-columns:1fr;padding:55px 7%;gap:30px}.visit{grid-template-columns:1fr}.visit>div:first-child{grid-column:auto}footer{padding:35px 7%;display:grid;grid-template-columns:1fr 1fr}footer>p{display:none}footer small{grid-column:1/-1}h2{letter-spacing:-1.6px}.eyebrow{font-size:11px}.actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Refined spacing, gallery and online scheduling */
header{height:90px}nav{gap:26px}h1{font-size:clamp(60px,6.2vw,88px);line-height:1.08;letter-spacing:-2.8px}.hero,.hero-image{min-height:650px}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-top:45px;padding-bottom:45px}.hero-copy>.text-link{margin-top:18px}.hero-copy .eyebrow{margin-bottom:24px}.section{padding-top:76px;padding-bottom:76px}.section-heading{margin-bottom:36px}.section-heading .eyebrow{margin-bottom:20px}.gallery{border-bottom:1px solid var(--line)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gallery-grid figure{margin:0}.gallery-grid img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.gallery-grid figcaption{padding:14px 0 0;font-size:14px;letter-spacing:.2px}.menu-grid{gap:32px}.menu-grid h3{font-size:26px}.menu-grid article{padding-top:16px}.menu-grid dl div{padding:11px 0}.consult{padding:18px}.about-photo{height:auto;min-height:430px;padding:0;display:flex;align-items:center;background:#e5e6e1}.about-photo img{height:auto;max-height:540px;object-fit:contain}.about-copy{padding:56px 10%}.about-copy h2{font-size:clamp(38px,3.7vw,53px)}.booking{display:block;padding:70px 5.5%}.booking-top{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:center;max-width:1180px;margin:auto}.booking h2{font-size:clamp(40px,4vw,58px)}.booking .booking-help{font-size:14px;margin-top:18px}.booking-help a{text-decoration:underline;text-underline-offset:3px}.calendar-shell{background:white;border-radius:8px;overflow:hidden;max-width:1180px;margin:36px auto 0}.calendar-shell iframe{display:block;width:100%;height:720px;border:0;color-scheme:light}.booking .calendar-note{font-size:13px;max-width:none;text-align:center;margin:18px 0 0;color:#dedfd9}.calendar-note a{text-decoration:underline}.reviews h2{font-size:clamp(38px,3.8vw,54px)}.review-grid{margin-top:32px}blockquote{font-size:20px}.ribbon{padding:18px 5%}
@media(max-width:900px){.hero,.hero-image{min-height:600px}h1{font-size:63px}.booking-top{gap:30px}.gallery-grid{gap:16px}header .small{display:inline-flex;font-size:12px;padding:9px 12px}header nav a:last-child{display:none}.brand{font-size:29px}nav{gap:18px}.menu-grid{gap:22px}.menu-grid h3{font-size:23px}}
@media(max-width:600px){header{height:auto;min-height:85px;flex-wrap:wrap;padding:16px 7%;gap:16px}header .small{margin-left:auto}header nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px;font-size:14px}header nav a:last-child,header nav a:nth-child(3){display:inline}header .small span{display:none}.hero,.hero-image{min-height:0}.hero-image{height:470px}.hero-copy{padding:40px 7%}h1{font-size:66px}.section{padding:52px 7%}.gallery-grid{gap:12px;grid-template-columns:1fr 1fr}.gallery-grid figure:first-child{grid-column:1/-1}.gallery-grid figure:first-child img{aspect-ratio:5/4;object-position:50% 45%}.gallery-grid figcaption{font-size:14px;line-height:1.4;padding-top:10px}.gallery .section-heading .text-link{margin-top:22px}.about-photo{min-height:0}.about-photo img{width:100%}.about-copy{padding:40px 7%}.booking{padding:50px 5%}.booking-top{grid-template-columns:1fr;gap:25px;padding:0 2%}.calendar-shell iframe{height:740px}.booking .calendar-note{line-height:1.5}.menu-grid h3{font-size:27px}.menu-grid{gap:32px}.ribbon{font-size:10px;letter-spacing:.8px}.visit{gap:28px}}
/* Dark salon theme */
:root{color-scheme:dark;--ink:#f3efe8;--paper:#171817;--soft:#222421;--line:#41443d;--muted:#b9bdb3;--gold:#d3b783}
body{background:var(--paper);color:var(--ink)}header{background:#141513}.brand{color:#f3efe8}.brand span,.eyebrow{color:var(--gold)}em{color:var(--gold)}.button{background:var(--gold);color:#191a17;border:1px solid var(--gold)}.button:hover{background:#e5cca0;border-color:#e5cca0;color:#191a17}a:focus-visible{outline-color:#e5cca0}.skip{background:#f3efe8;color:#191a17}.hero-copy{background:#171817}.hero-copy h1+p{color:#c0c3ba}.ribbon{background:#10110f;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#d9c39a}.gallery{background:#1c1e1b}.gallery-grid figcaption{color:#deded6}.menu-grid article{border-top-color:#727666}.consult{background:#252821}.consult a,.text-link{color:#dcc496}.about{background:#22241f}.about-photo{background:#151613}.about-copy>p:not(.eyebrow){color:#c2c5bb}.reviews{background:#171817}.quote-mark{color:var(--gold)}.booking{background:#10120f;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booking em,.booking .eyebrow{color:var(--gold)}.booking .light{background:var(--gold);color:#191a17}.booking .light:hover{background:#e5cca0}.booking .outline{background:transparent;border-color:#868d7c;color:#f3efe8}.calendar-shell{background:#fff;border:1px solid #666c5e;border-radius:6px;color-scheme:light}.calendar-shell iframe{background:white}.visit{background:#1b1d19}footer{background:#121410}footer .brand{color:#f3efe8}footer p,footer small,footer div{color:#b9bdb3}
/* Uploaded portfolio gallery */
.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gallery-grid figure:first-child{grid-column:auto}.gallery-grid img{aspect-ratio:4/5}.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(5) img{object-position:50% 45%}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-grid figure:first-child{grid-column:auto}.gallery-grid figure:first-child img{aspect-ratio:4/5}}
.hero-image>img{animation:heroDrift 16s ease-in-out infinite alternate;transform-origin:center center;will-change:transform}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(15,16,14,.08),transparent 45%,rgba(211,183,131,.08));pointer-events:none}@keyframes heroDrift{0%{transform:scale(1.02) translate3d(-.5%,0,0)}100%{transform:scale(1.09) translate3d(.7%,-.5%,0)}}
@media(prefers-reduced-motion:reduce){.hero-image>img{animation:none;transform:none}}
.hero-image{background:#0f100e}.hero-image>img{object-fit:contain!important;object-position:center!important;animation:none!important;transform:none!important}.hero-image:after{background:linear-gradient(120deg,rgba(15,16,14,.12),transparent 55%,rgba(211,183,131,.06))}
.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:42px}.review-grid figure:nth-child(4){padding-left:0;border-left:0}@media(max-width:600px){.review-grid{grid-template-columns:1fr;row-gap:26px}.review-grid figure:nth-child(4){padding-left:0}}

/* HairSense online shop */
.store-page{background:#171817}.store-header{position:sticky;top:0;z-index:20;background:rgba(20,21,19,.96);backdrop-filter:blur(16px)}.store-header nav{margin-left:auto}.store-header [aria-current=page]{color:var(--gold)}.cart-button{border:1px solid var(--gold);background:transparent;color:var(--ink);padding:10px 16px;font:inherit;cursor:pointer}.cart-button span{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:8px;border-radius:50%;background:var(--gold);color:#171817;font-size:12px}.store-intro{padding:85px 5.5% 74px;background:linear-gradient(120deg,#171817 0%,#20231d 60%,#171817 100%);border-bottom:1px solid var(--line)}.store-intro h1{font-size:clamp(56px,6vw,86px);margin-bottom:25px}.store-intro>p:last-child{max-width:550px;color:var(--muted);font-size:18px}.catalog{padding:70px 5.5%}.catalog-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}.catalog-head h2{font-size:clamp(38px,4vw,56px)}.results-count{margin:0;color:var(--muted)}.shop-controls{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(155px,1fr));gap:12px;margin-bottom:42px}.shop-controls label{display:flex;flex-direction:column;gap:7px;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.shop-controls input,.shop-controls select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:0;background:#20221f;color:var(--ink);padding:0 14px;font:16px Arial,sans-serif}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-card{min-width:0;border:1px solid var(--line);background:#1d1f1c;padding:16px;display:flex;flex-direction:column}.product-image{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;margin-bottom:18px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain}.product-brand{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card h3{font:19px/1.25 Georgia,serif;margin:0 0 8px;letter-spacing:0;min-height:48px}.product-category{font-size:13px;color:var(--muted);margin:0 0 18px}.product-buy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.product-buy strong{font-size:18px}.product-buy button,.load-more{border:1px solid var(--gold);background:var(--gold);color:#171817;padding:10px 12px;font-weight:700;cursor:pointer}.product-buy button:hover,.load-more:hover{background:#e5cca0}.load-more{display:block;margin:42px auto 0;min-width:210px;padding:14px 20px}.load-more[hidden]{display:none}.empty-products{grid-column:1/-1;padding:50px;text-align:center;color:var(--muted);border:1px solid var(--line)}.store-promise{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#11120f;padding:0 5.5%}.store-promise>div{padding:30px;border-left:1px solid var(--line);display:flex;flex-direction:column}.store-promise>div:first-child{border-left:0}.store-promise strong{font:20px Georgia,serif}.store-promise span{font-size:13px;color:var(--muted);margin-top:5px}.store-footer{background:#121410}.cart-panel{position:fixed;z-index:42;top:0;right:0;width:min(440px,100%);height:100dvh;background:#1a1c19;border-left:1px solid var(--line);transform:translateX(105%);transition:transform .25s ease;display:flex;flex-direction:column}.cart-panel[aria-hidden=false]{transform:translateX(0)}.cart-backdrop{position:fixed;z-index:40;inset:0;background:rgba(0,0,0,.62)}.cart-open{overflow:hidden}.cart-head{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--line)}.cart-head h2{font-size:34px}.cart-head button{background:none;border:0;color:var(--ink);font-size:38px;line-height:1;cursor:pointer}.cart-items{padding:18px 24px;overflow:auto;flex:1}.cart-line{display:grid;grid-template-columns:82px 1fr;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.cart-line img{width:82px;height:82px;object-fit:contain;background:#fff}.cart-line>div{display:flex;flex-direction:column}.cart-line strong{font:16px Georgia,serif;line-height:1.3}.cart-line span{font-size:12px;color:var(--muted)}.quantity{display:flex;align-items:center;gap:12px;margin-top:8px}.quantity button{width:28px;height:28px;background:transparent;color:var(--ink);border:1px solid var(--line);cursor:pointer}.cart-summary{padding:22px 24px;border-top:1px solid var(--line);background:#151613}.cart-summary>div{display:flex;justify-content:space-between;margin-bottom:8px}.cart-summary p{font-size:12px;color:var(--muted)}.checkout-button{width:100%;border:0;cursor:pointer}.checkout-button:disabled{opacity:.45;cursor:not-allowed}.checkout-note{margin:10px 0 0;text-align:center;color:#dcc496!important}.empty-cart{text-align:center;color:var(--muted);padding:35px 0}
@media(max-width:1000px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-controls{grid-template-columns:1fr 1fr}.store-promise>div{padding:24px 18px}}
@media(max-width:650px){.store-header{flex-wrap:nowrap;min-height:76px;padding:12px 5%}.store-header nav{order:initial;width:auto;border:0;padding:0;margin-left:auto}.store-header nav a:first-child{display:none}.store-intro{padding:52px 7%}.store-intro h1{font-size:57px}.catalog{padding:48px 5%}.catalog-head{display:block}.results-count{margin-top:10px}.shop-controls{grid-template-columns:1fr 1fr}.shop-controls .search-field{grid-column:1/-1}.product-grid{grid-template-columns:1fr 1fr;gap:9px}.product-card{padding:10px}.product-card h3{font-size:16px;min-height:43px}.product-buy{display:block}.product-buy button{width:100%;margin-top:10px}.store-promise{grid-template-columns:1fr}.store-promise>div,.store-promise>div:first-child{border-left:0;border-top:1px solid var(--line);padding:22px 7%}.store-promise>div:first-child{border-top:0}.store-footer{display:flex;flex-direction:column;align-items:flex-start}.store-footer small{grid-column:auto}}
