*{box-sizing:border-box} :root{color:#242320;background:#eeede9;font-family:Arial,sans-serif}body{margin:0;height:100dvh;overflow:hidden;display:flex;flex-direction:column}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit}header{height:110px;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative}.brand{width:180px;height:84px;object-fit:contain;mix-blend-mode:multiply}.book,.btn{background:#252421;color:white;text-decoration:none;border-radius:40px;padding:14px 24px;display:inline-block}.book{position:absolute;right:5%;font-size:13px}main{flex:1;min-height:0;display:flex;flex-direction:column;text-align:center}.heading span{font-size:10px;letter-spacing:3px}.heading h1{font:clamp(30px,4vw,58px) Georgia,serif;margin:12px 0}.heading h1 i{font-weight:normal}.heading p{font-size:13px;color:#77736d;margin:12px 0}.stage{flex:1;min-height:100px;position:relative;perspective:1200px;touch-action:none;outline-offset:-5px}.card{position:absolute;top:50%;left:50%;width:min(38vw,420px);height:88%;max-height:430px;border:6px solid #faf9f6;border-radius:38px;overflow:hidden;padding:0;background:#ccc;box-shadow:0 22px 45px #39332925;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .6s,opacity .6s;user-select:none}.card img{width:100%;height:100%;object-fit:cover;pointer-events:none}.card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0009)}.card span{position:absolute;z-index:1;bottom:28px;left:20px;right:20px;color:white;font:32px Georgia,serif}.card small{display:block;font:10px Arial;letter-spacing:2px;margin-bottom:9px}.controls{display:flex;justify-content:center;align-items:center;gap:24px;padding-top:14px}.controls>button,.pager button{width:43px;height:43px;border:1px solid #bcb8b1;border-radius:50%;background:transparent;font-size:21px}.dots{display:flex;gap:10px}.dots button{border:0;width:7px;height:7px;padding:0;border-radius:50%;background:#c7c3bc}.dots button[aria-current=true]{background:#282621}.hint{font-size:10px;color:#817c73;margin:12px 0 20px}footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d9d6cf;margin:0 5%;padding:17px 0;font-size:10px;color:#736d64}footer button{border:0;background:none;font-size:inherit;padding:0}footer a{text-decoration:none}dialog{border:1px solid #d3cec5;padding:0;border-radius:28px;width:min(1150px,94vw);height:90dvh;max-height:90dvh;background:#f5f3ef;color:#252421;overflow:hidden;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#28251f66;backdrop-filter:blur(10px)}dialog[open]{display:flex;flex-direction:column}.detail-head{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #ddd8cf;font-size:12px;letter-spacing:1px}.detail-head button{background:transparent;border:1px solid #c7c1b6;border-radius:30px;padding:10px 16px;font-size:12px;letter-spacing:0}#content{flex:1;min-height:0;padding:26px 5%;overflow:hidden;display:flex;flex-direction:column;justify-content:center}#content h2{font:clamp(27px,4vw,47px) Georgia;margin:0 0 18px}#content h3{font:26px Georgia;margin:12px 0}#content p{line-height:1.6;font-size:15px;color:#5d5952}#content .eyebrow{font-size:10px;letter-spacing:2px}.pager{display:flex;justify-content:center;gap:25px;align-items:center;padding:12px;border-top:1px solid #ddd8cf;font-size:11px}.pager button:disabled{opacity:.3;cursor:default}.spread{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;height:100%;min-height:0}.spread>img{width:100%;height:100%;max-height:55dvh;object-fit:cover;border-radius:25px}.team-photo{object-fit:contain!important;border-radius:50%!important;background:#e9e6df}.gallery-view{width:100%;height:100%;object-fit:contain;border-radius:22px}.team-picker{display:flex;gap:8px;flex-wrap:wrap}.team-picker button{border:1px solid #c9c1b4;background:none;border-radius:20px;padding:7px 12px}.bio{white-space:pre-line}.legal p,.legal li{font-size:13px!important;line-height:1.5!important}.legal h1,.legal h2{font-size:28px!important}.legal h3{font-size:20px!important}.tabs{display:flex;gap:10px;margin-bottom:20px}.tabs button{padding:9px 14px;border:1px solid #bfb9ad;border-radius:20px;background:transparent}button:focus-visible,a:focus-visible{outline:3px solid #9c8058;outline-offset:4px}@media(max-width:650px){header{height:94px}.brand{width:140px;height:70px}.book{right:4%;font-size:10px;padding:9px 12px}header>a:first-child{margin-right:30%}.heading h1{font-size:37px}.heading p{font-size:11px}.card{width:68vw;border-radius:30px;height:87%}.card span{font-size:29px}.hint{margin-bottom:15px}footer{font-size:9px;flex-wrap:wrap;justify-content:center;padding:12px 0;column-gap:20px}.detail-head{padding:14px 18px}#content{padding:18px 7%}#content p{font-size:13px}.spread{grid-template-columns:1fr;grid-template-rows:38% 1fr;gap:15px}.spread>img{height:100%;max-height:100%}.team-photo{width:auto!important;max-width:100%;justify-self:center}.spread h2{font-size:29px!important;margin-bottom:8px!important}.spread p{margin:7px 0;line-height:1.45!important}.pager{padding:9px}.pager button{width:35px;height:35px}.legal p,.legal li{font-size:12px!important}.tabs{gap:5px}.tabs button{padding:7px 10px;font-size:11px}}@media(prefers-reduced-motion:reduce){.card{transition:none}}
/* Fixed viewport geometry: opening a dialog and restoring focus cannot pan the page. */
html{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overflow:hidden}header,footer,.heading,.controls,.hint{flex-shrink:0}main{overflow:hidden;width:100%}.stage{width:100%;overflow:hidden;isolation:isolate;min-height:0;flex:1 1 0}.card{width:clamp(230px,32vw,390px);height:min(90%,410px);border-width:5px;transform-origin:center center}.card img{object-position:50% 40%;filter:saturate(.65)}.card span{bottom:25px;font-size:30px}.card small{font-size:9px;letter-spacing:1.8px}.card:after{inset:25% 0 0;background:linear-gradient(transparent 15%,#171511a6)}header>a:first-child{margin:0}dialog{position:fixed;inset:0;margin:auto;width:min(1120px,calc(100vw - 48px));height:min(850px,calc(100dvh - 48px));max-width:none;max-height:none;transform:none}dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.detail-head,.pager{flex-shrink:0}.pager[hidden]{display:none}#content{width:100%;min-width:0;min-height:0;overflow:hidden;padding:24px 5%}.spread{width:100%;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5%;min-width:0}.spread>div{min-width:0;max-height:100%}.spread>img{min-height:0;max-height:100%;height:100%;object-fit:cover}.spread>.team-photo{width:100%!important;max-width:390px;aspect-ratio:1;height:auto;object-fit:cover!important;border-radius:50%!important;justify-self:center}.back-team{display:block;border:0;background:transparent;padding:0 0 18px;font-size:12px;text-decoration:underline;text-underline-offset:4px}.team-overview{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;text-align:center}.team-title h2{font-size:36px!important;margin:6px 0!important}.team-title p{margin:5px 0 10px!important}.team-grid{min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:18px 28px;align-items:center}.team-member{height:100%;min-height:0;min-width:0;background:none;border:0;padding:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.team-member img{aspect-ratio:1;object-fit:cover;object-position:center;width:auto;height:calc(100% - 45px);max-height:160px;max-width:100%;border-radius:50%;box-shadow:0 4px 15px #302a1d15}.team-member strong{font:20px Georgia}.team-member small{font-size:10px;color:#70695f}.gallery-view{min-height:0;max-height:100%}.legal{min-height:0}.legal p{margin:10px 0}.book{white-space:nowrap}
@media(min-width:651px) and (max-width:1000px){header{height:95px}.brand{width:155px}.heading h1{font-size:44px}.card{width:42vw;max-width:360px}.team-grid{gap:18px}.team-member strong{font-size:18px}.team-member small{font-size:9px}}
@media(max-width:650px){header{height:86px;justify-content:flex-start;padding:0 6%}.brand{width:135px;height:66px}.book{right:6%;padding:10px 13px}.heading h1{font-size:clamp(29px,8.5vw,40px);margin:8px 0}.heading span{font-size:8px;letter-spacing:2.5px}.heading p{margin:8px 0}.card{width:67vw;min-width:0;height:88%;max-height:400px;border-radius:28px}.card span{font-size:27px;left:10px;right:10px;bottom:22px}.card small{font-size:8px;letter-spacing:1px}.controls{padding-top:5px;gap:22px}.controls>button{width:40px;height:40px}.hint{font-size:9px;margin:8px 0 12px}footer{padding:10px 0;row-gap:7px;font-size:8px}dialog{width:calc(100vw - 20px);height:calc(100dvh - 24px);border-radius:22px}.detail-head{padding:12px 15px;font-size:10px;letter-spacing:.5px}.detail-head button{padding:9px 12px;font-size:10px}#content{padding:16px 18px}.team-title h2{font-size:28px!important}.team-title p{font-size:11px!important;line-height:1.35!important;margin:4px auto 6px!important;max-width:270px}.team-overview{gap:8px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:8px 15px}.team-member{gap:3px}.team-member img{height:calc(100% - 32px);max-height:98px;max-width:100%}.team-member strong{font-size:16px}.team-member small{font-size:8px}.spread{grid-template-columns:1fr;grid-template-rows:minmax(0,34%) minmax(0,1fr);gap:15px}.spread>.team-photo{width:auto!important;height:100%;max-width:100%}.spread>div{height:100%;align-self:start}.back-team{font-size:11px;padding-bottom:10px}.spread .bio{font-size:12px!important;line-height:1.5!important}.spread .eyebrow{font-size:9px!important}.spread h2{margin:6px 0!important;font-size:29px!important}.pager{padding:9px}.gallery-view{border-radius:15px}}
@media(max-height:600px) and (min-width:651px){header{height:70px}.brand{height:60px;width:140px}.heading h1{font-size:30px;margin:5px}.heading p{margin:5px}.hint{margin:5px}footer{padding:8px 0}.team-title h2{font-size:24px!important}.team-title p{font-size:11px!important}.team-overview{gap:4px}.team-grid{gap:8px 20px}.team-member img{max-height:85px;height:calc(100% - 30px)}.team-member strong{font-size:15px}.team-member small{font-size:8px}.team-member{gap:2px}.detail-head{padding:9px 20px}#content{padding:12px 4%}.pager{padding:7px}.pager button{width:32px;height:32px}.spread h2{font-size:30px!important}.spread p{font-size:12px!important;line-height:1.45!important}}
/* Four compact topic overviews. */
header{justify-content:center;padding:0;height:105px}header>a:first-child{margin:0}.brand{height:90px;width:195px}.below-carousel{display:flex;justify-content:center;flex-shrink:0;padding:8px 0 22px}.below-carousel .book{position:static;font-size:13px;padding:13px 30px}.stage{touch-action:pan-y}.detail-head{display:grid;grid-template-columns:150px 1fr 150px;gap:12px;text-align:center;align-items:center;padding:15px 22px}.detail-head #topic{font-family:Georgia,serif;font-size:22px;letter-spacing:0}.detail-head .nav-back,.detail-head .nav-close{border:0;border-radius:30px;background:#292722;color:#fff;font-size:12px;min-height:42px;padding:10px 15px;white-space:nowrap}.detail-head .nav-close{background:#e7e2d8;color:#292722}#content{display:block;padding:22px 4%;overflow:hidden}.view-heading{text-align:center;flex-shrink:0}.view-heading h2{font-size:35px!important;margin:7px 0 10px!important}.view-heading p{margin:5px auto 15px;max-width:670px}.view-heading .eyebrow{font-size:9px;letter-spacing:2px}.salon-overview,.style-overview,.gallery-overview,.contact-overview{height:100%;min-height:0;display:flex;flex-direction:column}.salon-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center;min-height:0;flex:1}.salon-copy p{font-size:15px!important}.salon-copy blockquote{margin:25px 0;font:24px/1.45 Georgia,serif}.salon-copy cite{display:block;font:13px Arial;margin-top:10px}.salon-photos{height:100%;max-height:490px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;min-height:0}.thumb{min-height:0;min-width:0;padding:0;border:0;border-radius:18px;overflow:hidden;position:relative;background:#ddd7ce;height:100%}.thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.thumb:hover img{transform:scale(1.035)}.thumb span{position:absolute;bottom:8px;right:9px;background:#fffdf8df;border-radius:50%;height:26px;width:26px;display:grid;place-items:center}.style-groups{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px}.style-group{min-height:0;min-width:0;border:1px solid #d8d2c6;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:42% 1fr;text-align:left;background:#ece8e0;padding:0}.style-group img{width:100%;height:100%;object-fit:cover;min-height:0}.style-group>span{padding:15px;align-self:center}.style-group strong{font:24px Georgia;display:block;margin-bottom:9px}.style-group small{font-size:12px;line-height:1.5;color:#5d584f;display:block}.price-link{text-align:center;font-size:12px;padding:15px 0 0}.thumbnail-grid{min-height:0;flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:12px}.gallery-overview:has(.thumb:nth-child(9)) .thumbnail-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.thumbnail-grid .thumb img{object-fit:cover;object-position:center 35%}.photo-enlarged{height:100%;display:flex;align-items:center;justify-content:center}.photo-enlarged img{width:100%;height:100%;object-fit:contain;border-radius:18px}.profile-view{height:100%;display:grid;grid-template-columns:.75fr 1.25fr;gap:40px;align-items:center;min-height:0}.profile-view>img{width:100%;max-width:330px;aspect-ratio:1;border-radius:50%;justify-self:center}.profile-copy{height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center}.profile-copy h2{margin:7px 0 20px!important}.scroll-area{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;min-height:0}.profile-copy .bio{font-size:14px;line-height:1.6;max-height:calc(100% - 90px);padding-right:15px;white-space:pre-line}.contact-overview{justify-content:center;max-width:850px;margin:auto}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:22px 0}.contact-grid section{min-width:0}.contact-grid h3{margin:0 0 15px!important;font-size:25px!important}.contact-grid p{margin:0 0 15px}.contact-line{display:block;font-size:14px;margin:12px 0;overflow-wrap:anywhere;text-decoration:none}.hours{white-space:pre-line;line-height:1.9!important}.contact-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.route-btn{display:inline-block;border:1px solid #aaa294;border-radius:30px;padding:14px 24px;text-decoration:none;font-size:14px}.legal-view{height:100%;display:flex;flex-direction:column;gap:15px}.legal-tabs{display:flex;justify-content:center;gap:10px}.legal-tabs button{padding:10px 17px;border:1px solid #c9c0af;border-radius:25px;background:none}.legal-tabs button[aria-pressed=true]{background:#292722;color:white}.legal-document{flex:1;padding:0 10px}.legal-document main{display:block;overflow:visible;text-align:left}.legal-document h1{font:35px Georgia}.legal-document h2{font-size:25px!important}.legal-document h3{font-size:20px!important}.team-overview{grid-template-rows:auto minmax(0,1fr)}.team-overview .view-heading h2{font-size:35px!important}
@media(max-width:900px){.style-group strong{font-size:21px}.style-group small{font-size:11px}.salon-layout{gap:22px}.salon-copy blockquote{font-size:21px}.profile-view{gap:25px}.contact-grid{gap:25px}.gallery-overview:has(.thumb:nth-child(9)) .thumbnail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){header{height:90px;padding:0;justify-content:center}.brand{height:75px;width:175px}.below-carousel{padding:4px 0 14px}.below-carousel .book{font-size:12px;padding:12px 27px}.detail-head{grid-template-columns:95px 1fr 95px;padding:10px;gap:5px}.detail-head #topic{font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-head .nav-back,.detail-head .nav-close{min-height:40px;font-size:10px;padding:8px}.view-heading h2,.team-overview .view-heading h2{font-size:27px!important;margin:5px 0 8px!important}.view-heading p{font-size:11px!important;line-height:1.4!important;margin:3px auto 12px}.view-heading .eyebrow{font-size:8px}#content{padding:14px 16px}.salon-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:15px}.salon-copy{display:contents}.salon-copy p{font-size:12px!important;line-height:1.5!important;margin:0}.salon-copy blockquote{display:none}.salon-copy .btn{display:none}.salon-photos{max-height:none;gap:9px}.thumb{border-radius:13px}.style-groups{gap:10px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.style-group{display:flex;flex-direction:column;border-radius:16px}.style-group img{height:58%;flex-shrink:0;width:100%;object-position:center 35%}.style-group>span{padding:9px;align-self:stretch}.style-group strong{font-size:18px;margin-bottom:5px}.style-group small{font-size:10px;line-height:1.35}.price-link{font-size:10px;padding:12px 0 0}.thumbnail-grid,.gallery-overview:has(.thumb:nth-child(9)) .thumbnail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.thumb span{height:20px;width:20px;font-size:12px;bottom:5px;right:5px}.profile-view{display:flex;flex-direction:column;gap:16px;align-items:stretch}.profile-view>img{height:24%;width:auto;align-self:center;max-height:150px;min-height:80px}.profile-copy{flex:1;min-height:0}.profile-copy h2{font-size:29px!important;margin:4px 0 12px!important}.profile-copy .bio{font-size:12px;line-height:1.55;max-height:none;flex:1}.profile-copy .eyebrow{font-size:9px!important}.contact-grid{grid-template-columns:1fr;gap:17px;margin:10px 0 18px}.contact-grid h3{font-size:20px!important;margin:0 0 7px!important}.contact-grid p{font-size:12px!important;margin:0 0 6px;line-height:1.5!important}.contact-line{font-size:12px;margin:8px 0}.hours{line-height:1.6!important}.contact-actions{gap:9px}.contact-actions .btn,.route-btn{font-size:11px;padding:11px 16px}.legal-tabs{gap:6px}.legal-tabs button{font-size:11px;padding:8px 12px}.legal-document h1{font-size:27px}.legal-document p{font-size:12px!important}.photo-enlarged img{border-radius:12px}}
@media(max-height:720px) and (max-width:650px){header{height:72px}.brand{height:64px;width:155px}.heading h1{font-size:30px}.heading p{margin:4px 0}.below-carousel{padding-bottom:8px}.contact-grid{gap:12px;margin:7px 0 12px}.contact-grid h3{font-size:18px!important}.contact-grid p,.contact-line{font-size:11px!important}.contact-line{margin:6px 0}.view-heading h2{font-size:24px!important}.style-group img{height:48%}.style-group strong{font-size:16px}.style-group small{font-size:9px}.style-group>span{padding:7px}.salon-overview .view-heading h2{font-size:23px!important}.salon-layout{gap:10px}.salon-copy p{font-size:11px!important}}
@media(max-width:650px){.salon-layout{display:flex;flex-direction:column;align-items:stretch}.salon-copy{display:block;flex-shrink:0}.salon-copy blockquote{display:block;font:13px/1.4 Georgia,serif;margin:9px 0 0}.salon-copy cite{font-size:10px;margin-top:4px}.salon-photos{flex:1;min-height:0}}
/* Logo on the same paper tone, with no visible image rectangle. */
header{background:#eeede9;isolation:isolate}header #home{display:flex;align-items:center;justify-content:center}.brand{filter:grayscale(1) contrast(4);mix-blend-mode:multiply}
footer{font-size:12px;color:#514b42;align-items:center}footer button,footer a{font-size:inherit;min-height:34px;display:inline-flex;align-items:center}footer button{text-decoration:underline;text-underline-offset:4px}footer a{font-weight:500}
@media(max-width:650px){.stage .card{top:47%}footer{font-size:12px;line-height:1.4;padding:8px 0 10px;gap:0 16px;justify-content:center}footer>span{flex-basis:100%;text-align:center;font-size:11px;margin-bottom:1px}footer button,footer a{min-height:34px}footer button{font-size:11px}footer a{font-size:12px}.below-carousel{padding-top:0}}
@media(max-width:650px){footer button,footer a{font-size:13px}footer>span{font-size:12px}footer{column-gap:13px}}
/* A welcoming, centered contact composition with a real salon photograph. */
.contact-refined{max-width:860px;align-items:center;justify-content:center;text-align:center;gap:0}.contact-salon-photo{display:block;width:100%;height:clamp(110px,23vh,190px);min-height:80px;object-fit:cover;object-position:center 55%;border-radius:22px;margin-bottom:22px;box-shadow:0 6px 20px #554a3412}.contact-refined .view-heading{width:100%}.contact-refined .view-heading h2{margin:6px 0 8px!important}.contact-refined .contact-grid{width:100%;gap:20px;margin:12px 0 18px}.contact-refined .contact-grid section{padding:18px 15px;border:1px solid #ddd6c9;background:#eeeae2;border-radius:18px}.contact-refined .contact-grid h3{font-size:23px!important;margin-bottom:9px!important}.contact-refined .contact-grid p{font-size:13px;line-height:1.55}.contact-refined .contact-line{font-size:13px;margin:8px 0}.contact-refined .hours{line-height:1.8!important;margin:0}.contact-refined .contact-actions{width:100%}
@media(max-width:650px){.contact-refined{justify-content:center}.contact-salon-photo{height:clamp(90px,18dvh,145px);max-height:23%;margin-bottom:15px;border-radius:17px;flex-shrink:1}.contact-refined .view-heading h2{font-size:26px!important;margin:6px 0!important}.contact-refined .contact-grid{gap:10px;margin:10px 0 14px}.contact-refined .contact-grid section{padding:11px 12px;border-radius:15px}.contact-refined .contact-grid h3{font-size:20px!important;margin:0 0 6px!important}.contact-refined .contact-grid p{font-size:12px!important;line-height:1.45!important;margin:0}.contact-refined .contact-line{font-size:12px;margin:7px 0 0}.contact-refined .hours{line-height:1.6!important}.contact-refined .contact-actions{gap:10px}.contact-refined .contact-actions a{font-size:12px;padding:12px 17px}}
@media(max-width:650px) and (max-height:720px){.contact-salon-photo{height:88px;margin-bottom:10px;min-height:65px}.contact-refined .view-heading h2{font-size:24px!important}.contact-refined .contact-grid{gap:8px;margin:7px 0 10px}.contact-refined .contact-grid section{padding:8px 10px}.contact-refined .contact-grid h3{font-size:18px!important;margin-bottom:4px!important}.contact-refined .contact-grid p,.contact-refined .contact-line{font-size:11px!important}.contact-refined .contact-line{margin-top:5px}.contact-refined .contact-actions a{padding:10px 15px;font-size:11px}}
@media(min-width:651px) and (max-height:700px){.contact-salon-photo{height:100px;margin-bottom:12px}.contact-refined .contact-grid{margin:8px 0 12px}.contact-refined .contact-grid section{padding:10px}.contact-refined .view-heading h2{font-size:28px!important}}
@media(max-width:650px) and (max-height:720px){.contact-refined .contact-grid p,.contact-refined .contact-line{font-size:12px!important}.contact-refined .contact-grid h3{font-size:20px!important}}
/* Salon: an editorial arrangement of soft, sculptural photo shapes. */
.salon-overview .view-heading{max-width:720px;margin:0 auto 12px}.salon-overview .view-heading h2{font-size:clamp(27px,3.1vw,43px)!important;line-height:1.12;margin-top:11px!important}.salon-overview .view-heading h2 i{font-weight:normal;color:#7d6b4f}.salon-overview .view-heading .eyebrow{letter-spacing:3px;color:#7b6f5b}.salon-layout{grid-template-columns:.85fr 1.15fr;gap:45px}.salon-copy{text-align:center}.salon-copy>p{line-height:1.7!important;color:#726a5e!important;max-width:400px;margin:0 auto}.salon-copy blockquote{position:relative;border-top:1px solid #d9cfbe;border-bottom:1px solid #d9cfbe;padding:23px 8px;margin:26px auto;font:italic 23px/1.45 Georgia,serif;max-width:420px;color:#4f4638}.salon-copy cite{font:11px Arial;letter-spacing:1.5px;text-transform:uppercase;margin-top:15px;color:#8a785a}.salon-photos{position:relative;grid-template-columns:1.06fr .94fr;gap:18px 22px;padding:16px 14px 24px;max-height:500px;isolation:isolate}.salon-photos:before{content:'';position:absolute;inset:8% 7%;border:1px solid #d9cfbd;border-radius:50%;transform:rotate(-18deg);z-index:-1}.salon-photos .thumb{border:4px solid #faf8f3;box-shadow:0 8px 18px #4d3c2520;border-radius:48% 44% 47% 42%;transform:rotate(-3deg);transition:transform .3s,box-shadow .3s}.salon-photos .thumb:nth-child(2){border-radius:47% 48% 41% 46%;transform:translateY(15px) rotate(4deg)}.salon-photos .thumb:nth-child(3){border-radius:43% 48% 44% 49%;transform:translateY(-8px) rotate(3deg)}.salon-photos .thumb:nth-child(4){border-radius:48% 42% 49% 44%;transform:translateY(9px) rotate(-4deg)}.salon-photos .thumb img{object-position:center;filter:saturate(.82)}.salon-photos .thumb span{bottom:13%;right:13%;height:28px;width:28px;box-shadow:0 2px 7px #0002}.salon-photos .thumb:hover{transform:rotate(0) scale(1.025);box-shadow:0 12px 25px #4d3c2530}
@media(max-width:650px){.salon-overview .view-heading{margin-bottom:10px}.salon-overview .view-heading h2{font-size:27px!important;max-width:330px;margin:7px auto 4px!important;line-height:1.1}.salon-overview .view-heading h2 i{display:block}.salon-overview .view-heading .eyebrow{font-size:8px;letter-spacing:2px}.salon-layout{gap:12px}.salon-copy>p{font-size:12px!important;line-height:1.5!important;max-width:330px}.salon-copy blockquote{font:italic 14px/1.4 Georgia,serif;padding:11px 5px;margin:12px auto 0;max-width:330px}.salon-copy cite{font-size:9px;margin-top:7px;letter-spacing:1px}.salon-photos{gap:12px 17px;padding:9px 9px 16px;max-height:none}.salon-photos .thumb{border-width:3px}.salon-photos .thumb:nth-child(2){transform:translateY(9px) rotate(4deg)}.salon-photos .thumb:nth-child(3){transform:translateY(-4px) rotate(3deg)}.salon-photos .thumb:nth-child(4){transform:translateY(6px) rotate(-4deg)}.salon-photos .thumb span{height:23px;width:23px;font-size:13px;bottom:13%;right:13%}}
@media(max-width:650px) and (max-height:720px){.salon-overview .view-heading h2{font-size:23px!important}.salon-overview .view-heading{margin-bottom:6px}.salon-copy>p{font-size:11px!important;line-height:1.4!important}.salon-copy blockquote{font-size:12px;padding:8px 3px;margin-top:8px}.salon-copy cite{margin-top:5px;font-size:8px}.salon-layout{gap:8px}.salon-photos{padding:5px 8px 13px;gap:9px 14px}}
@media(prefers-reduced-motion:reduce){.salon-photos .thumb{transition:none}}
/* Salon rebuilt as a spacious editorial feature, with one leading photograph. */
.salon-story{height:100%;min-height:0;display:grid;grid-template-columns:1.13fr 1fr;grid-template-rows:minmax(0,1fr) 150px;column-gap:40px;row-gap:22px;padding:8px 0}.salon-feature{position:relative;grid-row:1 / 3;border:0;padding:0;border-radius:25px;overflow:hidden;background:#b9b2a5;min-height:0;text-align:left;color:white;cursor:zoom-in}.salon-feature>img{width:100%;height:100%;object-fit:cover;object-position:45% center;display:block}.feature-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0000 35%,#19160fbb)}.feature-title{position:absolute;bottom:35px;left:30px;right:25px}.feature-title small{display:block;font-size:9px;letter-spacing:2.2px;margin-bottom:14px}.feature-title strong{display:block;font:36px/1.12 Georgia,serif;letter-spacing:-.6px}.feature-title i{font-weight:normal;color:#f0e4c8}.feature-expand{position:absolute;right:17px;top:17px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff75;border-radius:50%;background:#ffffffd9;color:#25221e;font-size:20px}.salon-editorial{display:flex;flex-direction:column;justify-content:center;align-self:center;text-align:left;min-height:0;padding:10px 5px}.salon-editorial .eyebrow{color:#8b785b;font-size:9px!important;letter-spacing:1.8px!important;line-height:1.7}.salon-editorial>p{font-size:17px!important;line-height:1.8!important;margin:20px 0 30px;color:#625a50!important}.salon-editorial blockquote{position:relative;margin:0;padding:24px 0 0;border-top:1px solid #d7cdbd;font:italic 25px/1.4 Georgia,serif;color:#3f382e}.salon-editorial cite{display:block;font:11px Arial;letter-spacing:1.6px;text-transform:uppercase;margin-top:16px;color:#8b785b}.salon-film{min-height:0;display:flex;flex-direction:column;gap:10px}.film-label{font-size:9px;letter-spacing:2px;color:#8b785b}.film-images{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.film-images .thumb{border-radius:12px;border:0;box-shadow:none;transform:none}.film-images .thumb img{object-position:center}.film-images .thumb span{height:23px;width:23px;font-size:14px;bottom:7px;right:7px}
@media(max-width:900px) and (min-width:651px){.salon-story{column-gap:25px;grid-template-rows:minmax(0,1fr) 130px}.feature-title{left:20px;bottom:25px}.feature-title strong{font-size:29px}.salon-editorial>p{font-size:15px!important;margin:16px 0 24px}.salon-editorial blockquote{font-size:21px}}
@media(max-width:650px){.salon-story{grid-template-columns:1fr;grid-template-rows:minmax(150px,1fr) auto 100px;gap:17px;padding:0;min-height:0}.salon-feature{grid-row:auto;border-radius:20px}.salon-feature>img{object-position:center 48%}.feature-title{bottom:21px;left:21px;right:16px}.feature-title small{font-size:8px;letter-spacing:1.8px;margin-bottom:9px}.feature-title strong{font-size:28px;line-height:1.1;letter-spacing:-.3px}.feature-expand{width:29px;height:29px;top:12px;right:12px;font-size:17px}.salon-editorial{padding:0 6px;text-align:center}.salon-editorial .eyebrow{font-size:8px!important;letter-spacing:1.2px!important}.salon-editorial>p{font-size:12px!important;line-height:1.6!important;margin:9px 0 14px}.salon-editorial blockquote{font-size:16px;line-height:1.4;padding:13px 8px 0}.salon-editorial cite{font-size:9px;margin-top:9px;letter-spacing:1.4px}.salon-film{gap:7px}.film-label{font-size:8px;letter-spacing:1.4px;text-align:center}.film-images{gap:10px}.film-images .thumb{border-radius:11px}.film-images .thumb span{height:20px;width:20px;font-size:12px;bottom:6px;right:6px}}
@media(max-width:650px) and (max-height:720px){.salon-story{grid-template-rows:minmax(145px,1fr) auto 85px;gap:12px}.feature-title strong{font-size:25px}.feature-title{bottom:17px;left:18px}.salon-editorial>p{font-size:11px!important;line-height:1.5!important;margin:7px 0 11px}.salon-editorial blockquote{font-size:14px;padding-top:10px}.salon-editorial cite{font-size:8px;margin-top:7px}}
/* Wipeable coverflow previews and their large detail view. */
.look-group{overflow:hidden}.look-copy{align-self:center;padding:15px;min-width:0}.look-open{padding:0;border:0;background:none;text-align:left;font:inherit;color:inherit}.look-open strong{font:24px Georgia;display:block;margin-bottom:9px}.look-copy>small{display:block;font-size:12px;line-height:1.5;color:#5d584f}.look-carousel{position:relative;min-width:0;min-height:0;overflow:hidden;background:radial-gradient(ellipse at center,#faf7f0,#ded7ca);isolation:isolate}.look-stage{position:relative;width:100%;height:100%;perspective:900px;touch-action:pan-y;cursor:grab;overflow:hidden}.look-stage:active{cursor:grabbing}.look-slide{padding:0;border:3px solid #faf9f4;border-radius:16px;position:absolute;left:50%;top:47%;width:64%;height:84%;overflow:hidden;box-shadow:0 7px 18px #40332330;transition:transform .4s ease,opacity .4s ease;transform-origin:center center;user-select:none;background:#ccc}.look-slide img{width:100%;height:100%;object-fit:cover;object-position:center 32%;display:block;pointer-events:none}.look-slide[aria-current=false] img{filter:brightness(.85)}.look-arrow{position:absolute;z-index:5;top:46%;transform:translateY(-50%);border:1px solid #fff8;background:#fffdf4e6;border-radius:50%;height:28px;width:28px;padding:0;font:26px/1 Georgia;color:#39352b;box-shadow:0 2px 8px #0001}.look-prev{left:5px}.look-next{right:5px}.look-counter{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:1px;color:#615746;z-index:5}.look-expanded{display:flex;flex-direction:column;min-height:0;height:100%}.look-expanded .view-heading{flex-shrink:0}.look-expanded .is-large{flex:1;min-height:0;background:radial-gradient(ellipse,#eee8dd,#f5f3ef);border-radius:22px}.is-large .look-slide{width:min(50%,360px);height:91%;top:48%;border-width:5px;border-radius:24px}.is-large .look-arrow{height:44px;width:44px;font-size:35px;top:48%}.is-large .look-prev{left:5%}.is-large .look-next{right:5%}.is-large .look-counter{font-size:11px;bottom:5px}.look-instruction{text-align:center;font-size:11px!important;color:#8a7b65!important;margin:12px 0 0!important}.look-stage:focus-visible{outline:2px solid #957c55;outline-offset:-4px}
@media(max-width:900px) and (min-width:651px){.look-open strong{font-size:21px}.look-copy>small{font-size:11px}}
@media(max-width:650px){.look-group{display:flex;flex-direction:column}.look-group>.look-carousel{height:58%;flex-shrink:0;width:100%}.look-copy{padding:9px;align-self:stretch}.look-open strong{font-size:18px;margin-bottom:5px}.look-copy>small{font-size:10px;line-height:1.35}.is-mini .look-slide{height:80%;width:68%;border-width:2px;border-radius:12px;top:45%}.is-mini .look-arrow{height:23px;width:23px;font-size:23px;top:44%}.is-mini .look-prev{left:3px}.is-mini .look-next{right:3px}.is-mini .look-counter{font-size:8px;bottom:3px}.is-large .look-slide{width:73%;max-width:350px;height:88%;border-width:4px;border-radius:22px}.is-large .look-arrow{height:36px;width:36px;font-size:30px}.is-large .look-prev{left:2px}.is-large .look-next{right:2px}.look-instruction{font-size:10px!important;line-height:1.4!important;margin-top:9px!important}.look-expanded .view-heading h2{font-size:29px!important}}
@media(max-width:650px) and (max-height:720px){.look-group>.look-carousel{height:48%}.look-open strong{font-size:16px}.look-copy{padding:7px}.look-copy>small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.look-slide{transition:none}}
/* Larger, centered previews; automatic motion with touch control. */
.look-group{grid-template-columns:56% 1fr}.look-copy{text-align:center;align-self:center;padding:12px}.look-open{text-align:center;width:100%}.is-mini .look-slide{width:82%;height:88%;top:48%;border-radius:16px}.is-mini .look-stage{height:100%}.look-carousel{background:radial-gradient(ellipse,#f7f3ea,#e6dfd2)}.look-motion{position:absolute;bottom:5px;right:6px;z-index:6;width:24px;height:24px;padding:0;border:1px solid #c7bcaa;background:#fffaf0e8;border-radius:50%;font:11px Arial;color:#504536;display:grid;place-items:center}.look-counter{pointer-events:none}.is-large .look-motion{width:32px;height:32px;bottom:7px;right:12px;font-size:13px}.look-slide{transition:transform .7s cubic-bezier(.25,.65,.25,1),opacity .7s ease}.is-mini .look-counter{font-size:8px;bottom:3px;background:#eee8dce6;padding:2px 6px;border-radius:12px}
@media(max-width:650px){.look-group{display:flex;flex-direction:column}.look-group>.look-carousel{flex:1 1 0;height:auto;min-height:0;width:100%}.look-group>.look-copy{flex:0 0 auto;align-self:stretch;text-align:center;min-height:59px;padding:10px 6px 12px}.look-copy .look-open{display:block}.look-open strong{font-size:19px;margin-bottom:5px;white-space:nowrap}.look-copy>small{font-size:10px;line-height:1.35}.is-mini .look-slide{width:85%;height:89%;top:48%;border-radius:15px;border-width:2px}.is-mini .look-motion{width:22px;height:22px;right:5px;bottom:4px;font-size:10px}.look-expanded .look-instruction{font-size:10px!important}}
@media(max-width:650px) and (max-height:720px){.look-group>.look-copy{min-height:55px;padding:8px 5px 10px}.look-open strong{font-size:17px}.look-copy>small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.look-slide{transition:none}}
.is-large[data-look-carousel="styling"] .look-slide img,.is-large[data-look-carousel="faerben"] .look-slide img{object-fit:contain;object-position:center;background:#e6e0d5}
@media(max-width:650px){footer{display:grid;grid-template-columns:auto auto;justify-content:center;column-gap:15px;row-gap:0;align-items:center}footer>span{grid-column:1;grid-row:1;text-align:left;margin:0;font-size:12px}footer>a{grid-column:2;grid-row:1;min-height:30px;font-size:13px;white-space:nowrap}footer>button{grid-column:1 / -1;grid-row:2;justify-self:center;min-height:30px;font-size:13px}}

.below-carousel{align-items:center;gap:24px}.social-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#282823;text-decoration:none;font-size:11px;min-width:55px;min-height:44px}.social-link svg{width:23px;height:23px}.social-link:hover{color:#88785e}.social-link:focus-visible{outline:2px solid #88785e;outline-offset:4px;border-radius:6px}@media(max-width:650px){.below-carousel{gap:16px}.social-link{font-size:10px;min-width:48px}.social-link svg{width:22px;height:22px}.below-carousel .book{padding-left:23px;padding-right:23px}}


.card:nth-child(2)>img{object-fit:cover;object-position:50% 45%;filter:none}

.brand{filter:none;mix-blend-mode:normal;background:transparent}
.card:nth-child(1){background:#000}.card:nth-child(1)>img{object-position:50% 50%;filter:none}
.notice-topic{background:#c8bd9f!important}.notice-art{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:16%;background:radial-gradient(ellipse at 70% 20%,#e6ddc6,transparent 65%),linear-gradient(140deg,#c3b28b,#655f4b);color:#494735}.notice-art svg{width:36%;height:auto}.notice-art>div{font:italic 24px Georgia,serif;margin-top:5%}.notice-topic>span{font-size:clamp(23px,3vw,32px);line-height:1.1;overflow-wrap:anywhere}.notice-topic>span>small{font-size:9px;line-height:1.6;letter-spacing:1.5px}.notice-detail{max-width:760px;margin:auto;padding:22px 16px 30px;text-align:center}.notice-period{display:inline-block;background:#e6e0d2;padding:9px 20px;border-radius:30px}.notice-message,.notice-hours p{white-space:pre-wrap;line-height:1.7;font-size:16px}.notice-message{margin:24px auto;max-width:620px}.notice-hours{background:#eae5da;border:1px solid #d7d0bf;border-radius:20px;padding:18px;margin:22px 0}.notice-hours h3{font:25px Georgia,serif;margin:0 0 10px}.employee-placeholder{display:grid;place-items:center;aspect-ratio:1;background:#d8d0be;border-radius:50%;font:42px Georgia,serif;color:#74684e}.profile-view>.employee-placeholder{min-height:240px;align-self:start}@media(max-width:650px){.notice-detail{padding:14px 6px}.notice-message,.notice-hours p{font-size:14px}.notice-art>div{font-size:20px}}

.kern-admin-banner{display:flex;align-items:center;gap:18px;max-width:370px;margin:32px auto 12px;padding:16px 20px;border:1px solid #d9d3c7;border-radius:16px;background:#eae6dc;color:#35342e;text-decoration:none}.kern-admin-banner img{width:90px;height:auto}.kern-admin-banner span{font-size:15px;line-height:1.5}.kern-admin-banner small{display:block;font-size:12px;color:#716b5e}.kern-admin-banner:focus-visible{outline:2px solid #716b5e;outline-offset:4px}


/* Compact notices with content-aware sizing and muted sage background. */
.stage .notice-topic{background:#dce0d5!important;text-align:center;color:#343b31}.notice-topic:after{display:none}.notice-card-content{--notice-scale:1;height:100%;display:flex;flex-direction:column;padding:7% 8% 6%;overflow:hidden}.notice-card-label{flex-shrink:0;font:calc(8px * var(--notice-scale))/1.4 Arial,sans-serif;letter-spacing:1.4px;color:#6d7862}.notice-card-content h2{font:calc(25px * var(--notice-scale))/1.08 Georgia,serif;font-weight:normal;margin:calc(10px * var(--notice-scale)) 0 calc(12px * var(--notice-scale));flex-shrink:0;overflow-wrap:anywhere}.notice-card-period{flex-shrink:0;font:calc(10px * var(--notice-scale))/1.4 Arial,sans-serif;color:#64705c;padding:0 0 calc(10px * var(--notice-scale));margin-bottom:calc(10px * var(--notice-scale));border-bottom:1px solid #bfc7b6}.notice-card-copy{flex:1;min-height:0;overflow:hidden;font:calc(13px * var(--notice-scale))/1.4 Arial,sans-serif;color:#4c5746;white-space:pre-wrap;overflow-wrap:anywhere;padding:0 2px}.notice-card-copy p{margin:calc(9px * var(--notice-scale)) 0 0}.notice-card-copy p:first-child{margin-top:0}.notice-card-hours{font-size:calc(14px * var(--notice-scale));line-height:1.45;color:#343e2f}.notice-card-foot{flex-shrink:0;border-top:1px solid #bfc7b6;margin-top:calc(10px * var(--notice-scale));padding-top:calc(9px * var(--notice-scale));font:italic calc(15px * var(--notice-scale)) Georgia,serif;color:#68755e}.notice-card-foot small{display:block;font:calc(7px * var(--notice-scale))/1.4 Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase;margin-top:calc(5px * var(--notice-scale))}@media(max-width:650px){.notice-card-content h2{font-size:calc(22px * var(--notice-scale))}.notice-card-label{font-size:calc(7px * var(--notice-scale));letter-spacing:1px}.notice-card-copy{font-size:calc(12px * var(--notice-scale))}.notice-card-hours{font-size:calc(13px * var(--notice-scale))}}
.stage .card:first-child>img{object-fit:cover;object-position:50% 50%}.stage .card:first-child:after{inset:82% 0 0;background:linear-gradient(transparent,#0009)}

.look-slide img[data-rotation="90"]{position:absolute;left:50%;top:50%;max-width:none;max-height:none;object-fit:contain;object-position:center;transform:translate(-50%,-50%) rotate(90deg)}

.special-hours-note{background:#dce0d5;border:1px solid #c2cbbb;border-radius:14px;padding:12px 15px;margin:12px auto 0;max-width:420px;color:#44503c}.special-hours-note>strong{display:block;font:12px/1.4 Arial,sans-serif}.special-hours-note button{display:block;width:100%;border:0;background:none;padding:9px 0 0;color:inherit;font:15px/1.3 Georgia,serif}.special-hours-note button small{display:block;font:10px/1.4 Arial,sans-serif;margin-top:4px}.special-hours-note button em{display:block;font:10px/1.5 Arial,sans-serif;font-style:normal;text-decoration:underline;text-underline-offset:3px;margin-top:4px}.special-hours-note button:focus-visible{outline:2px solid #68765a;outline-offset:3px}@media(max-width:650px){.special-hours-note{padding:9px 12px;margin-top:9px}.special-hours-note>strong{font-size:10px}.special-hours-note button{font-size:13px;padding-top:6px}}

.salon-film .look-carousel{height:125px;width:100%;border-radius:16px;margin-top:9px;background:#e8e3d9}.salon-film .look-slide{width:44%;height:92%;top:46%;border-radius:12px;border-width:2px}.salon-film .look-slide img{object-fit:cover;object-position:center}.salon-film .look-counter{bottom:2px;background:#f4f0e4db;border-radius:14px;padding:2px 7px;font-size:8px}.salon-film .look-motion{width:26px;height:26px;font-size:11px;bottom:5px;right:7px}.salon-film-hint{display:block;text-align:center;color:#8a7b65;font-size:9px;margin:7px 0 0}.look-expanded:has([data-look-carousel="salon"]) .look-slide img{object-fit:contain;object-position:center}@media(max-width:650px){.salon-film .look-carousel{height:95px;margin-top:5px}.salon-film-hint{font-size:8px;margin-top:5px}.salon-film .film-label{font-size:8px}}
.salon-film{gap:5px}.salon-film .look-carousel{flex:1;height:auto;min-height:40px;margin-top:0}.salon-film-hint{margin:0;flex-shrink:0}.salon-film .film-label{flex-shrink:0}@media(max-height:720px){.salon-film-hint{display:none}}

/* Centered title with one distinct circular back control. */
.detail-head{grid-template-columns:56px minmax(0,1fr) 56px;gap:12px;padding:12px 22px}.detail-head #topic{grid-column:2;grid-row:1;text-align:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-head .nav-back{grid-column:3;grid-row:1;justify-self:end;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:#e5e8df;color:#414a38;width:54px;height:54px;min-width:54px;min-height:54px;border-radius:50%;font:9px/1.1 Arial,sans-serif;font-weight:normal;padding:4px;border:1px solid #aeb8a2;box-shadow:none}.detail-head .nav-back:before{content:'←';font:25px/1 Arial,sans-serif}.detail-head .nav-back:hover{background:#d6decd}.detail-head .nav-back:focus-visible{outline:3px solid #879675;outline-offset:3px}@media(max-width:650px){.detail-head{grid-template-columns:50px minmax(0,1fr) 50px;padding:10px 15px;gap:8px}.detail-head #topic{font-size:23px}.detail-head .nav-back{width:48px;height:48px;min-width:48px;min-height:48px;font-size:8px}.detail-head .nav-back:before{font-size:23px}}

.team-member .employee-avatar{position:relative;flex-shrink:0;overflow:hidden;border-radius:50%;aspect-ratio:1;height:calc(100% - 45px);max-height:160px;max-width:100%;background:#e6e2da;box-shadow:0 4px 15px #302a1d15}.team-member .employee-avatar img{position:absolute;left:var(--portrait-left,0%);top:var(--portrait-top,0%);width:var(--portrait-width,100%);height:auto;max-width:none;max-height:none;aspect-ratio:auto;border-radius:0;box-shadow:none;object-fit:contain;display:block}.profile-view>.employee-full-photo{width:100%;height:100%;max-height:100%;min-height:0;object-fit:contain!important;object-position:center;border-radius:18px!important;align-self:center;justify-self:center;background:transparent;aspect-ratio:auto}@media(max-width:650px){.team-member .employee-avatar{height:calc(100% - 32px);max-height:98px}.profile-view>.employee-full-photo{height:44%;max-height:340px;min-height:150px;width:100%;flex-shrink:0;border-radius:16px!important}.profile-view{gap:16px}.profile-view .profile-copy{min-height:0;flex:1}}

.detail-head{grid-template-columns:124px minmax(0,1fr) 124px}.detail-head .detail-book{grid-column:1;grid-row:1;justify-self:start;display:flex;align-items:center;justify-content:center;width:124px;min-height:44px;padding:10px 13px;background:#252421;color:#fff;border-radius:30px;text-decoration:none;font:12px/1.2 Arial,sans-serif;letter-spacing:0;white-space:nowrap}.detail-head .detail-book:hover{background:#464238}.detail-head .detail-book:focus-visible{outline:3px solid #a79a79;outline-offset:3px}@media(max-width:650px){.detail-head{grid-template-columns:96px minmax(0,1fr) 96px;gap:6px;padding:10px 12px}.detail-head .detail-book{width:96px;min-height:42px;font-size:10px;padding:9px 8px}.detail-head #topic{font-size:22px}}@media(max-width:360px){.detail-head{grid-template-columns:88px minmax(0,1fr) 88px;padding-inline:9px}.detail-head .detail-book{width:88px;font-size:9px}.detail-head #topic{font-size:20px}}
/* Page titles are always written out, including on narrow screens. */
.detail-head #topic{white-space:normal;text-overflow:clip;overflow:visible;overflow-wrap:anywhere;hyphens:auto;line-height:1.15;max-width:100%}.detail-head{flex-shrink:0}@media(max-width:650px){.detail-head #topic{font-size:19px}}@media(max-width:360px){.detail-head #topic{font-size:17px}}

.profile-view{--profile-fit:1;height:100%;overflow:hidden;gap:calc(22px * var(--profile-fit))}.profile-copy{display:flex;flex-direction:column;min-height:0;overflow:hidden}.profile-copy .eyebrow{font-size:calc(10px * var(--profile-fit))!important;flex-shrink:0}.profile-copy h2{font-size:calc(32px * var(--profile-fit))!important;margin:calc(6px * var(--profile-fit)) 0 calc(12px * var(--profile-fit))!important;flex-shrink:0}.profile-copy .bio{flex:1;min-height:0;max-height:none;overflow:hidden;white-space:normal;font-size:calc(15px * var(--profile-fit));line-height:1.4}.profile-copy .bio p{font-size:inherit!important;line-height:inherit!important;margin:0 0 calc(7px * var(--profile-fit))!important;white-space:pre-line;overflow-wrap:anywhere;color:#5d5952}.profile-copy .bio p:last-child{margin-bottom:0!important}@media(max-width:650px){.profile-view{display:flex;flex-direction:column;gap:calc(12px * var(--profile-fit))}.profile-view>.employee-full-photo{height:calc(32% * var(--profile-fit));min-height:0;max-height:270px;width:100%;object-fit:contain!important;flex-shrink:0}.profile-view>.employee-placeholder{min-height:0;height:calc(25% * var(--profile-fit));aspect-ratio:1;align-self:center}.profile-copy h2{font-size:calc(27px * var(--profile-fit))!important;margin:4px 0 calc(8px * var(--profile-fit))!important}.profile-copy .eyebrow{font-size:calc(9px * var(--profile-fit))!important}.profile-copy .bio{font-size:calc(12px * var(--profile-fit));line-height:1.35}.profile-copy .bio p{margin-bottom:calc(5px * var(--profile-fit))!important}}

/* Keep each phrase of the home headline together on small screens. */
.heading h1 span{font:inherit;letter-spacing:normal;white-space:nowrap}.heading h1 i{white-space:nowrap}

/* The original headline, one point smaller, with a calligraphic final phrase. */
@font-face{font-family:KernScript;src:url('kern-script.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
.heading h1{font-size:calc(clamp(30px,4vw,58px) - 1pt)}
.heading h1 span:last-child{font-family:KernScript,'Segoe Script',cursive;font-weight:400;letter-spacing:normal}
@media(max-width:1000px){.heading h1{font-size:calc(44px - 1pt)}}
@media(max-width:650px){.heading h1{font-size:calc(clamp(29px,8.5vw,40px) - 1pt)}}
@media(max-width:650px) and (max-height:720px){.heading h1{font-size:calc(30px - 1pt)}}

/* Logo-inspired Roman lettering only for the final headline phrase. */
@font-face{font-family:KernRoman;src:url('kern-roman.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
.heading h1 span:last-child{font-family:KernRoman,'Times New Roman',serif;font-size:calc(1em + 2pt);font-weight:400;font-style:normal;letter-spacing:normal}

/* Lift only the homepage carousel; retain all type sizes and footer positions. */
main>.stage{transform:translateY(-8px)}

/* Balanced home composition: keep the agreed type sizes and separate the title from the artwork. */
.heading{padding:5px 18px 12px}.heading>span{display:block;margin-bottom:9px}.heading h1{line-height:1.12;margin:0 auto 12px;text-wrap:balance}.heading>p{line-height:1.4;margin:0 auto 4px}
main>.stage{transform:translateY(-5px)}
.stage .card:first-child>span{bottom:18px;left:20px;right:auto;max-width:66%;text-align:left;text-shadow:0 2px 10px #0008}.stage .card:first-child:after{inset:70% 0 0;background:linear-gradient(transparent,#000b)}
a.card{display:block;text-decoration:none;color:inherit}.stage-fallback{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:12px}.stage-fallback>a{position:relative;height:90%;max-width:390px;border:5px solid #faf9f6;border-radius:28px;overflow:hidden}.stage-fallback img{height:100%;width:100%;object-fit:cover}.stage-fallback>a span{position:absolute;bottom:16px;left:20px;color:white;font:28px Georgia}.stage-fallback>div{padding:0 10px}.stage-fallback>div a{line-height:1.8}
@media(min-width:651px){header{height:clamp(90px,14dvh,125px)}.heading{padding-bottom:15px}.heading>span{margin-bottom:12px}.heading h1{margin-bottom:12px}.card{height:min(92%,560px);max-height:560px}.below-carousel{padding-top:10px;padding-bottom:18px}footer{max-width:1000px;width:90%;margin-inline:auto}}
@media(min-width:651px) and (max-width:1000px){.heading h1 span:last-child{display:block;margin-top:2px}.card{width:44vw;max-width:440px}.heading{padding-bottom:12px}}
@media(max-width:650px){header{height:88px}.heading{padding:3px 16px 12px}.heading>span{margin-bottom:10px}.heading h1{margin:0 auto 12px;line-height:1.13}.heading h1 span:last-child{display:block;margin-top:2px}.heading>p{margin:0 0 3px}.stage .card:first-child>span{bottom:17px;left:17px;max-width:70%}.below-carousel{padding-top:8px}footer{column-gap:12px}footer>span{font-size:11px}footer>a{font-size:12px}}
@media(max-width:370px){.heading{padding-inline:10px}footer{column-gap:9px}footer>span{font-size:10px}}
@media(max-height:720px) and (max-width:650px){header{height:66px}.brand{height:58px}.heading{padding-top:0;padding-bottom:7px}.heading>span{margin-bottom:6px}.heading h1{margin-bottom:7px}.heading>p{margin-bottom:1px}.below-carousel{padding-bottom:6px;padding-top:3px}footer{padding-top:5px;padding-bottom:5px}}
@media(max-height:520px) and (min-width:651px){header{height:58px}.brand{height:54px;width:140px}.heading{padding:0 12px 5px}.heading>span{margin-bottom:3px}.heading h1{font-size:calc(30px - 1pt);margin-bottom:3px}.heading h1 span:last-child{display:inline}.heading>p{margin-bottom:0}.below-carousel{padding:3px 0}.below-carousel .book{padding:8px 20px}.social-link{flex-direction:row;gap:5px;min-height:32px}footer{padding:3px 0}.card{height:94%}}
@media(max-width:650px) and (max-height:490px){html{overflow-y:auto}body{position:relative;min-height:590px;height:100dvh;overflow:visible}}

/* Quiet salon-inspired backdrop behind employee biographies. */
#content:has(>.profile-view){background-color:#f5f3ef;background-image:url('team-profile-lines.svg'),radial-gradient(ellipse at 85% 25%,#ddd4c036,transparent 55%),radial-gradient(ellipse at 5% 85%,#d6ddce2e,transparent 55%);background-repeat:no-repeat;background-position:right center,center,center;background-size:cover,cover,cover}
.profile-view>.employee-full-photo{filter:drop-shadow(0 10px 20px #68573f12)}
@media(max-width:650px){#content:has(>.profile-view){background-position:65% center,center,center;background-size:auto 100%,cover,cover}}

/* Broader, visible paper-and-sage colour fields for employee profiles. */
#content:has(>.profile-view){background-color:#e9e5db;background-image:url('team-profile-lines.svg'),radial-gradient(ellipse at 100% 10%,#c5cfbd 0%,#d3dacb 28%,transparent 68%),radial-gradient(ellipse at 0% 100%,#d7c7af 0%,#e2d6c4 32%,transparent 72%),linear-gradient(135deg,#f2eee5,#e5e3d7);background-size:cover,cover,cover,cover;background-position:right center,center,center,center;background-repeat:no-repeat}
@media(max-width:650px){#content:has(>.profile-view){background-size:auto 100%,cover,cover,cover;background-position:65% center,center,center,center}}

/* Soft hair-like ribbons in warm neutrals, without green undertones. */
#content:has(>.profile-view){background-color:#f0e9df;background-image:url('team-hair-waves.svg'),radial-gradient(ellipse at 100% 15%,#ded0bf 0%,transparent 65%),radial-gradient(ellipse at 0% 100%,#e4d5c4 0%,transparent 70%),linear-gradient(135deg,#f5f0e8,#eae0d4);background-size:cover,cover,cover,cover;background-position:right center,center,center,center;background-repeat:no-repeat}
@media(max-width:650px){#content:has(>.profile-view){background-size:auto 100%,cover,cover,cover;background-position:70% center,center,center,center}}

/* Restore the Salon caption to the center of its card. */
.stage .card:first-child>span{left:12px;right:12px;bottom:22px;max-width:none;text-align:center}
@media(max-width:650px){.stage .card:first-child>span{left:10px;right:10px;bottom:22px;max-width:none;text-align:center}}

/* Larger oval portraits and continuous editorial biography text. */
.profile-editorial{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px;align-items:center}
.profile-portrait{margin:0;justify-self:center;align-self:center;width:100%;max-width:360px;height:min(100%,490px);aspect-ratio:3/4;border-radius:50%;overflow:hidden;border:5px solid #faf7f0;box-shadow:0 12px 32px #6d513024;background:#e7dacb;flex-shrink:0}
.profile-portrait>.employee-full-photo{display:block;width:100%;height:100%;max-height:none;max-width:none;object-fit:cover;object-position:50% 35%;border-radius:50%;aspect-ratio:auto}
.profile-editorial .profile-copy{max-width:620px;padding:8px 0}
.profile-editorial .profile-copy .eyebrow{letter-spacing:2px;color:#7a624a;text-transform:uppercase}
.profile-editorial .profile-copy h2{padding-bottom:calc(12px * var(--profile-fit));border-bottom:1px solid #c5b19570}
.profile-editorial .profile-copy .bio{padding-right:0;text-wrap:pretty}
.profile-editorial .profile-copy .bio p{white-space:normal;line-height:1.5!important;margin-bottom:calc(14px * var(--profile-fit))!important}
.profile-editorial .profile-copy .bio .profile-quote{font-family:Georgia,serif;font-style:italic;color:#58432f;font-size:calc(18px * var(--profile-fit))!important;line-height:1.45!important}
.profile-editorial .profile-copy .bio .profile-prose{color:#65584b}
@media(max-width:650px){.profile-editorial{gap:calc(16px * var(--profile-fit));align-items:stretch}.profile-editorial>.profile-portrait{height:calc(43% * var(--profile-fit));width:auto;max-width:80%;max-height:360px;min-height:0;aspect-ratio:3/4;align-self:center;border-width:4px}.profile-editorial .profile-copy{padding:0}.profile-editorial .profile-copy h2{padding-bottom:calc(8px * var(--profile-fit));margin-bottom:calc(12px * var(--profile-fit))!important}.profile-editorial .profile-copy .bio .profile-quote{font-size:calc(15px * var(--profile-fit))!important}.profile-editorial .profile-copy .bio p{line-height:1.5!important;margin-bottom:calc(10px * var(--profile-fit))!important}}

/* A quiet warm hair-inspired backdrop for the team overview as well. */
#content:has(>.team-overview){background-color:#f3ede4;background-image:url('team-hair-waves.svg'),radial-gradient(ellipse at 100% 20%,#e4d7c6 0%,transparent 65%),radial-gradient(ellipse at 0% 100%,#eadcca 0%,transparent 70%),linear-gradient(135deg,#f8f4ee,#eee5d9);background-size:cover,cover,cover,cover;background-position:right center,center,center,center;background-repeat:no-repeat}
@media(max-width:650px){#content:has(>.team-overview){background-size:auto 100%,cover,cover,cover;background-position:70% center,center,center,center}}

/* Keep complete portrait artwork visible on tablet and desktop. */
@media(min-width:651px){main>.stage .card{height:min(92%,560px);width:auto;min-width:0;max-width:min(44vw,420px);max-height:560px;aspect-ratio:3/4;background-color:#24221e}main>.stage .card>img{object-fit:contain!important;object-position:center!important}}
/* Optional notice artwork stays behind the complete, readable notice text. */
.stage .notice-topic.has-background{background:#26231f!important;color:#fff;isolation:isolate}
.stage .notice-topic.has-background>img.notice-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important;object-position:center!important;z-index:-2;filter:none;opacity:1}
.stage .notice-topic.has-background:before{content:'';position:absolute;inset:0;background:none;display:none;z-index:-1;pointer-events:none}
.stage .notice-topic.has-background .notice-card-content{position:relative;z-index:1;text-shadow:0 1px 3px #000,0 0 8px #0008}
.stage .notice-topic.has-background :is(.notice-card-label,.notice-card-period,.notice-card-copy,.notice-card-hours,.notice-card-foot){color:#fff}
.stage .notice-topic.has-background :is(.notice-card-period,.notice-card-foot){border-color:#ffffff59}
/* Legal tabs remain centered independently of the compact administration link. */
.legal-tabs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;flex-shrink:0}
.legal-tab-group{grid-column:2;grid-row:1;display:flex;gap:10px;justify-content:center}
.legal-tab-group button{min-width:110px}
.legal-tabs .legal-admin{grid-column:3;grid-row:1;justify-self:end;display:inline-flex;align-items:center;justify-content:center;padding:6px 11px;min-height:28px;border:1px solid #c9c0af;border-radius:20px;background:#e9e4da;color:#625a4d;text-decoration:none;font:11px Arial,sans-serif;white-space:nowrap}
.legal-tabs .legal-admin{width:32px;height:32px;min-height:32px;padding:0;border-radius:50%}
.legal-admin svg{display:block;flex-shrink:0}
@media(max-width:650px){.legal-tabs{gap:5px}.legal-tab-group{gap:6px}.legal-tab-group button{font-size:13px;padding:10px 8px;min-width:0;min-height:42px}.legal-tabs .legal-admin{width:30px;height:30px;min-height:30px;padding:0}.legal-document{padding:0 5px}}
@media(max-width:360px){.legal-tab-group{gap:4px}.legal-tab-group button{font-size:12px;padding:10px 7px}}
@media(max-width:340px){.legal-tabs{grid-template-columns:1fr}.legal-tab-group{grid-column:1}.legal-tabs .legal-admin{grid-column:1;grid-row:2}}
/* A plain image tile has no text overlay or darkening. */
.stage .card.image-topic{background:#e7e1d6!important}
.stage .card.image-topic:before,.stage .card.image-topic:after{display:none}
.stage .card.image-topic>img.image-tile-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain!important;object-position:center!important}

/* Responsive home geometry: preserve artwork, allow short screens to scroll. */
html{height:auto;min-height:100%;overflow-x:clip;overflow-y:auto;overscroll-behavior-y:auto}
body{position:relative;inset:auto;height:auto;min-height:100vh;min-height:100svh;overflow:visible;width:100%}
body>header{height:clamp(60px,10svh,100px);padding:4px 16px}
body>header .brand{width:clamp(135px,20vw,195px);height:100%;max-height:86px}
body>main{flex:1 0 auto;min-width:0;min-height:0;overflow:visible}
body>main>.heading{padding:6px 16px 10px;flex:none}
body>main>.heading>span{margin-bottom:6px}
body>main>.heading h1{font-size:clamp(28px,4vw,56px);line-height:1.18;margin:0 auto 8px;max-width:100%;overflow-wrap:anywhere}
body>main>.heading p{margin:0;line-height:1.5}
body>main>.stage{transform:none;flex:1 0 auto;height:clamp(220px,calc(100svh - 330px),650px);min-height:220px;container-type:size;overflow:hidden;touch-action:pan-y}
body>main>.stage .card{top:50%;width:auto;min-width:0;max-width:76%;height:92%;max-height:560px;aspect-ratio:3/4;border-radius:clamp(20px,4vw,38px)}
@supports(height:1cqh){body>main>.stage .card{height:min(92cqh,96cqw,560px);max-width:none}}
body>main>.stage .card>img{object-fit:contain!important;object-position:center!important}
body>main>.below-carousel{padding:10px 12px 14px;gap:clamp(10px,3vw,24px);flex-wrap:wrap}
body>footer{flex:none;width:90%;max-width:1000px;margin:0 auto;padding:10px 0 max(10px,env(safe-area-inset-bottom));display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;line-height:1.5;text-align:center}
body>footer a,body>footer button{min-height:30px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
#detail{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
#detail #content{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:650px){
 body>main>.heading h1{font-size:clamp(27px,7.6vw,40px)}
 body>main>.heading h1 span:last-child{display:block;margin-top:2px}
 body>main>.heading p{font-size:clamp(11px,3vw,13px)}
 body>main>.stage{height:clamp(220px,calc(100svh - 315px),540px)}
 body>main>.stage .card span{font-size:clamp(22px,6vw,30px)}
 body>main>.below-carousel .book{font-size:13px;padding:12px 22px}
 body>footer>span{flex-basis:100%;margin:0}
}
@media(max-height:500px){
 body>header{height:56px}
 body>main>.stage{height:260px}
 body>main>.heading h1{font-size:28px}
}
/* Lift the carousel slightly and reserve a clear two-row contact footer. */
body>main>.stage{height:clamp(220px,calc(100svh - 365px),620px)}
body>main>.stage .card{top:calc(50% - 4px)}
body>footer{display:grid;grid-template-columns:max-content max-content;justify-content:center;align-items:center;gap:4px 14px;padding:8px 0 max(8px,env(safe-area-inset-bottom))}
body>footer>span{grid-column:1;grid-row:1;margin:0;flex-basis:auto;white-space:nowrap}
body>footer>a{grid-column:2;grid-row:1;white-space:nowrap}
body>footer>span,body>footer>a{display:block;align-self:baseline;font:400 clamp(10px,2.8vw,13px)/28px Arial,sans-serif;min-height:28px;margin:0;padding:0;letter-spacing:normal;white-space:nowrap;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body>footer>button{grid-column:1/-1;grid-row:2;justify-self:center;font-size:clamp(12px,3.2vw,14px);min-height:32px;margin:0}
@media(max-width:650px){body>main>.stage{height:clamp(200px,calc(100svh - 355px),510px)}body>footer{column-gap:12px}}
@media(max-height:500px){body>main>.stage{height:240px}}
