@font-face{font-family:Agrandir;src:url('../fonts/Agrandir-GrandLight.otf') format('opentype');font-display:swap}
@font-face{font-family:'Open Sans';src:url('../fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2') format('woff2');font-display:swap}
@font-face{font-family:'DM Serif Display';src:url('../fonts/-nFnOHM81r4j6k0gjAW3mujVU2B2G_Bx0g.woff2') format('woff2');font-display:swap}

:root{--ink:#201d1a;--charcoal:#25211e;--brown:#67584d;--taupe:#a6907d;--clay:#c9b3a0;--rose:#d8c2b2;--cream:#ece1d5;--ivory:#f7f2ec;--paper:#fbf8f4;--white:#fff;--line:rgba(43,35,29,.18);--content:1280px;--header:82px;--ease:cubic-bezier(.22,.72,.18,1)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 15px/1.72 'Open Sans',Arial,sans-serif;overflow-x:clip;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img,video{display:block;width:100%;max-width:100%}
button{font:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Agrandir,'Open Sans',sans-serif;font-weight:400;line-height:1.03}
.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}
.eyebrow{margin:0 0 15px;color:var(--brown);font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:14px 26px;border:1px solid var(--charcoal);background:var(--charcoal);color:#fff;font-size:10px;font-weight:700;letter-spacing:.16em;text-align:center;text-transform:uppercase;transition:.35s var(--ease)}
.button:hover{background:var(--brown);border-color:var(--brown);transform:translateY(-3px)}
.text-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.text-link .ui-icon{width:15px;height:15px}
.ui-icon{display:block;width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ui-icon .fill{fill:currentColor;stroke:none}
a,button{transition:color .25s,background .25s,border-color .25s,transform .35s var(--ease)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #9c7f68;outline-offset:4px}
.section-heading{width:min(var(--content),calc(100% - 64px));margin:0 auto 55px}
.section-heading h2{max-width:850px;margin:0;font-size:clamp(42px,6vw,78px)}


/* Header */
.site-header{position:relative;z-index:40;height:var(--header);background:var(--charcoal);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.header-inner{width:min(var(--content),calc(100% - 56px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:44px}
.wordmark{width:128px;height:66px;display:grid;place-items:center;flex:0 0 auto;transform:translateY(3px)}
.wordmark img{width:100%;height:100%;object-fit:contain}
.main-menu ul{display:flex;align-items:center;gap:clamp(17px,2vw,33px);padding:0;margin:0;list-style:none}
.main-menu a{display:block;padding:10px 0 9px;border-bottom:1px solid transparent;color:rgba(255,255,255,.82);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.main-menu a:hover,.main-menu a[aria-current=page]{color:#fff;border-color:var(--clay)}
.menu-button,.menu-close,.menu-backdrop,.mobile-social{display:none}


/* Home */
.atelier-hero{min-height:min(840px,calc(100svh - var(--header)));display:grid;grid-template-columns:46% 54%;background:var(--cream)}
.atelier-hero-copy{position:relative;z-index:2;padding:clamp(80px,9vw,145px) clamp(38px,7vw,110px);align-self:center}
.atelier-hero-copy h1{margin:0 0 34px;font-size:clamp(62px,7vw,104px);letter-spacing:-.045em}
.atelier-hero-copy h1 em,.price-mast em,.people-copy em{color:var(--brown);font-family:'DM Serif Display';font-weight:400}
.hero-lead{max-width:510px;margin-bottom:32px;font-size:17px}
.atelier-hero-copy .text-link{margin-left:26px}
.atelier-hero-image{position:relative;min-height:680px;overflow:hidden}
.hero-picture{display:block;width:100%;height:100%}
.hero-picture img{height:100%;object-fit:cover;object-position:center 48%}
.welcome-story{padding:125px max(32px,calc((100% - 1180px)/2));display:grid;grid-template-columns:280px 1fr;gap:clamp(65px,9vw,140px);background:var(--charcoal);color:#fff}
.welcome-mark{position:relative;padding-top:8px;border-top:1px solid rgba(255,255,255,.28)}
.welcome-mark>img{height:340px;margin:22px 0;object-fit:cover;filter:grayscale(1) contrast(.9)}
.welcome-mark span{display:block;margin-bottom:24px;color:var(--clay);font-size:11px}
.welcome-mark p{font:32px/1.25 'DM Serif Display';color:var(--clay)}
.welcome-copy .eyebrow{color:var(--clay)}
.welcome-copy h2{max-width:820px;margin-bottom:55px;font-size:clamp(42px,5vw,68px)}
.welcome-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px 60px;color:rgba(255,255,255,.72)}
.welcome-columns p{margin:0}
.welcome-columns strong{color:#fff}
.craft-index{position:relative;padding:120px 0;background:var(--paper)}
.scissors-line{width:min(900px,80vw);height:76px;margin:0 auto 65px}
.scissors-line svg{width:100%;height:100%;overflow:visible}
.scissors-line .thread{fill:none;stroke:#a78e79;stroke-width:1;stroke-dasharray:5 8}
.scissors-line .scissors{fill:none;stroke:#67584d;stroke-width:2;offset-path:path('M18 38C156 7 259 70 398 37s260-19 484 1');offset-distance:0}
.scissors-line.is-cutting .scissors{animation:scissor-travel 2.6s var(--ease) 1 both}
.craft-trio{width:min(var(--content),calc(100% - 64px));margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.craft-trio a{position:relative;padding-bottom:32px;border-bottom:1px solid var(--line)}
.craft-trio a>span{position:absolute;z-index:2;top:14px;left:14px;width:36px;height:36px;display:grid;place-items:center;background:var(--paper);font-size:10px}
.craft-trio img{height:480px;object-fit:cover;filter:saturate(.82);transition:.65s var(--ease)}
.craft-trio .craft-icon{width:48px;height:48px;margin:22px 0 -8px;object-fit:contain;filter:sepia(.35);opacity:.68}
.craft-trio h3{margin:24px 0 12px;font-size:34px}
.craft-trio p{max-width:360px;margin:0;color:#655a51}
.craft-trio a:nth-child(2){margin-top:80px}
.craft-trio a:hover img{transform:scale(.985);filter:saturate(1)}
.transformation{padding:120px max(32px,calc((100% - 1120px)/2));display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,9vw,120px);align-items:center;background:var(--rose)}
.transformation-copy h2{font-size:clamp(48px,6vw,76px)}
.transformation-copy>p:not(.eyebrow){max-width:420px;color:#5e5147}
.image-compare{margin:0}
.compare-frame{position:relative;overflow:hidden;aspect-ratio:349/414;background:#a89482;box-shadow:0 26px 70px rgba(48,37,29,.18);isolation:isolate}
.compare-frame>img{position:absolute;inset:0;height:100%;object-fit:cover;user-select:none;pointer-events:none}
.compare-after{z-index:1;clip-path:inset(0 calc(100% - var(--position)) 0 0)}
.compare-divider{position:absolute;z-index:3;top:0;bottom:0;left:var(--position);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.compare-divider b{position:absolute;top:50%;left:50%;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--charcoal);color:#fff;transform:translate(-50%,-50%);box-shadow:0 8px 22px rgba(0,0,0,.28)}
.compare-divider .ui-icon{width:22px;height:22px}
.compare-frame input{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
.compare-label{position:absolute;z-index:2;top:17px;padding:7px 10px;background:rgba(35,31,28,.78);color:#fff;font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.before-label{right:17px}
.after-label{left:17px}
.new-compare .before-label{z-index:5;top:0;right:0;width:96px;min-height:72px;display:grid;place-items:end center;padding:9px 10px;background:#27231f;pointer-events:none}
.image-compare figcaption{padding-top:14px;font-size:10px;letter-spacing:.15em;text-align:center;text-transform:uppercase}
.salon-film{padding:115px max(32px,calc((100% - 1120px)/2));display:grid;grid-template-columns:minmax(320px,.9fr) 1.1fr;gap:clamp(60px,9vw,120px);align-items:center;background:var(--ivory)}
.film-stage{position:relative;max-width:440px;justify-self:end;padding:0 28px 28px 0}
.film-stage:after{content:"";position:absolute;z-index:0;inset:28px 0 0 28px;background:var(--clay)}
.film-stage video{position:relative;z-index:1;aspect-ratio:9/14;object-fit:cover;background:#201d1a}
.salon-photo-stage>img{position:relative;z-index:1;aspect-ratio:4/5;object-fit:cover;object-position:center 35%}
.film-stage span{position:absolute;z-index:2;right:-50px;top:50%;font-size:9px;letter-spacing:.19em;text-transform:uppercase;transform:rotate(90deg)}
.visit-panel{max-width:520px}
.visit-panel h2{font-size:clamp(42px,5vw,66px)}
.visit-panel dl{margin:30px 0}
.visit-panel dl div{display:flex;justify-content:space-between;gap:30px;padding:13px 0;border-bottom:1px solid var(--line)}
.visit-panel dt,.visit-panel dd{margin:0}
.visit-panel dd{font-weight:700}
.phone-link{display:block;width:max-content;margin:25px 0;font:35px Agrandir}
.visit-note{margin-top:38px;padding-top:28px;border-top:1px solid var(--line);color:#665a50}
.home-team{padding:120px 0;background:var(--charcoal);color:#fff}
.home-team .eyebrow{color:var(--clay)}
.home-people{width:min(var(--content),calc(100% - 64px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.home-person{position:relative;min-height:0;aspect-ratio:3/4;overflow:hidden}
.home-person img{height:100%;object-fit:cover;filter:saturate(.78);transition:.7s var(--ease)}
.home-person span{position:absolute;inset:auto 0 0;padding:70px 25px 23px;background:linear-gradient(transparent,rgba(25,22,20,.92));display:flex;flex-direction:column}
.home-person strong{font:30px Agrandir}
.home-person small{color:rgba(255,255,255,.7)}
.home-person:hover img{transform:scale(1.035);filter:saturate(1)}
.review{padding:85px max(32px,calc((100% - 1050px)/2));display:flex;align-items:center;justify-content:space-between;gap:70px;background:var(--taupe);color:#fff}
.review h2{margin-bottom:12px;font-size:38px}
.review p{max-width:650px;margin:0}
.review .eyebrow{color:#fff}
.review .button{flex:0 0 auto;border-color:#fff;background:transparent}
.review .button:hover{background:#fff;color:var(--ink)}


/* Galleries */
.social-gallery{padding:110px 0;background:var(--cream)}
.gallery-heading{width:min(var(--content),calc(100% - 64px));margin:0 auto 50px;display:flex;align-items:end;justify-content:space-between;gap:30px}
.instagram-title{display:flex;align-items:center;gap:17px}
.instagram-title svg{width:37px;height:37px;fill:none;stroke:var(--ink);stroke-width:1.5}
.instagram-title svg .fill{fill:var(--ink);stroke:none}
.instagram-title h2{margin:0;font-size:clamp(38px,5vw,64px)}
.instagram-link{padding-bottom:6px;border-bottom:1px solid currentColor;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.instagram-grid{width:min(var(--content),calc(100% - 64px));margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.instagram-grid .gallery-item{aspect-ratio:1}
.gallery-item{display:block;padding:0;border:0;background:none;overflow:hidden;cursor:pointer}
.gallery-item img{height:100%;object-fit:cover;transition:transform .6s var(--ease),filter .4s}
.gallery-item:hover img{transform:scale(1.04);filter:saturate(1.08)}
.gallery-mobile-controls{display:none}


/* Women */
.women-mast{min-height:720px;display:grid;grid-template-columns:40% 60%;background:#d9c8ba}
.women-title{padding:110px 6vw;align-self:center}
.women-title h1{margin:0 0 20px;font-size:clamp(74px,7vw,104px);letter-spacing:-.06em}
.women-title>p:not(.eyebrow){max-width:380px;margin-bottom:30px}
.women-images{display:grid;grid-template-columns:42% 58%;gap:10px;padding:28px 28px 28px 0}
.women-images img{height:100%;object-fit:cover}
.women-images img:first-child{object-position:72% center}
.editorial-intro{padding:115px max(32px,calc((100% - 1120px)/2));display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;background:var(--paper)}
.editorial-intro h2{font:54px/1.08 'DM Serif Display';margin:0}
.editorial-intro>p{font-size:17px}
.women-services{padding:115px max(32px,calc((100% - 1180px)/2));display:grid;grid-template-columns:330px 1fr;gap:100px;background:var(--ivory)}
.sticky-heading{align-self:start;position:sticky;top:35px}
.sticky-heading h2{font-size:56px}
.service-ledger article{display:grid;grid-template-columns:45px 230px 1fr;gap:22px;padding:30px 0;border-top:1px solid var(--line)}
.service-ledger article:last-child{border-bottom:1px solid var(--line)}
.service-ledger span{color:var(--taupe);font-size:10px}
.service-ledger h3{margin:0;font-size:26px}
.service-ledger p{margin:0;color:#675b52}
.before-after{padding:115px 0;background:#d7c8ba}
.before-after .section-heading{text-align:center}
.before-after .section-heading h2{margin-inline:auto}
.before-after .section-heading>p:last-child{margin-top:20px}
.compare-grid{width:min(1120px,calc(100% - 64px));margin:0 auto 48px;display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.mobile-carousel-controls{display:none}
.before-after>a{display:block;width:max-content;max-width:calc(100% - 40px);margin:auto;padding-bottom:4px;border-bottom:1px solid currentColor;text-align:center;font-size:11px}
.women-gallery{background:var(--paper)}


/* Men */
.men-mast{min-height:720px;display:grid;grid-template-columns:42% 58%;background:#1f2525;color:#fff}
.men-copy{padding:125px 6vw;align-self:center}
.men-copy .eyebrow{color:#b8c0bb}
.men-copy h1{margin:0 0 22px;font-size:clamp(72px,7vw,100px);letter-spacing:-.055em}
.men-copy>p:not(.eyebrow){max-width:390px;color:rgba(255,255,255,.72);font-size:17px}
.men-copy .button{border-color:#fff;background:transparent}
.men-visual{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:28px 28px 28px 0}
.men-visual img{height:100%;object-fit:cover;filter:saturate(.65)}
.men-visual img:first-child,.men-visual img:last-child{margin-top:70px;height:calc(100% - 70px)}
.men-intro{padding:110px max(32px,calc((100% - 1180px)/2));display:grid;grid-template-columns:70px .85fr 1.15fr;gap:55px;background:#d4cdc3}
.men-intro>span{font-size:11px}
.men-intro h2{font-size:52px}
.men-intro>p{font-size:17px}
.men-services{padding:110px max(32px,calc((100% - 1180px)/2));background:var(--paper)}
.men-services .section-heading{width:auto}
.men-services .service-ledger article{grid-template-columns:55px 260px 1fr}
.men-services>.button{margin-top:42px}
.shave-ritual{display:grid;grid-template-columns:48% 52%;background:#303636;color:#fff}
.shave-ritual>div:first-child{min-height:700px}
.shave-ritual img{height:100%;object-fit:cover;filter:saturate(.65)}
.shave-ritual>div:last-child{padding:110px clamp(45px,7vw,115px);align-self:center}
.shave-ritual .eyebrow{color:#c5c9c6}
.shave-ritual h2{font-size:clamp(42px,5vw,68px)}
.shave-ritual p{color:rgba(255,255,255,.75)}
.ritual-note{margin:28px 0;padding-top:25px;border-top:1px solid rgba(255,255,255,.24)}
.shave-ritual .button{border-color:#fff;background:transparent}
.men-gallery{background:#d4cdc3}
.men-gallery .instagram-grid{grid-template-columns:repeat(5,1fr)}


/* Prices */
.price-mast{min-height:500px;padding:95px max(32px,calc((100% - 1180px)/2));background:linear-gradient(110deg,#c8b39f 0 58%,#8d7766 58%);display:flex;flex-direction:column;justify-content:center}
.price-mast h1{margin:0;font-size:clamp(80px,12vw,165px);letter-spacing:-.06em}
.price-mast>p:last-child{margin:20px 0 0;font-size:17px}
.price-book{padding:110px max(32px,calc((100% - 1120px)/2));background:var(--paper)}
.price-book-intro{max-width:590px;margin:0 auto 80px;text-align:center}
.price-book-intro h2{font-size:53px}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}
.price-grid article{min-width:0;break-inside:avoid;padding:34px 0;border-top:1px solid var(--line)}
.price-grid article:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
.price-grid header{display:grid;grid-template-columns:35px minmax(0,1fr);gap:18px;margin-bottom:20px}
.price-grid header span{color:var(--taupe);font-size:10px}
.price-grid h2{margin:0;font:25px/1.2 'DM Serif Display';overflow-wrap:anywhere}
.price-grid dl{margin:0}
.price-grid dl div{display:grid;grid-template-columns:1fr auto;gap:24px;padding:7px 0}
.price-grid dt,.price-grid dd{min-width:0;margin:0}
.price-grid dt{overflow-wrap:anywhere}
.price-grid dd{font-weight:700;text-align:right;white-space:nowrap}
.price-note{max-width:760px;margin:65px auto 30px;text-align:center;color:#65584e}
.price-book>.button{display:flex;width:max-content;margin:auto}


/* Biosthetique */
.bio-mast{min-height:720px;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);background:#d3c1ae}
.bio-copy{padding:110px 5.5vw;align-self:center;min-width:0;container-type:inline-size}
.bio-copy h1{margin:0 0 28px;font-size:clamp(24px,3.3vw,84px);font-size:clamp(24px,11.5cqi,84px);letter-spacing:-.055em}
.bio-copy>p:not(.eyebrow){max-width:430px;font-size:17px}
.bio-images{display:grid;min-width:0;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;padding:28px 28px 28px 0}
.bio-images img{min-width:0;min-height:0;height:100%;object-fit:cover}
.bio-images img:nth-child(2),.bio-images img:nth-child(4){transform:none}
@media(min-width:681px){.bio-images{height:clamp(600px,52vw,780px);align-self:center}.bio-images img:nth-child(2),.bio-images img:nth-child(4){object-position:center top}}
.care-manifest{padding:120px max(32px,calc((100% - 1160px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;background:#27302c;color:#fff}
.care-heading{align-self:start;position:sticky;top:35px}
.care-heading .eyebrow{color:#bbc9c0}
.care-heading h2{font-size:clamp(46px,5vw,68px)}
.care-heading p:last-child{color:rgba(255,255,255,.72)}
.commitment-list article{display:grid;grid-template-columns:26px 40px 1fr;gap:16px;padding:28px 0;border-top:1px solid rgba(255,255,255,.2)}
.commitment-list article>img{width:22px;height:22px;object-fit:contain;opacity:.75}
.commitment-list article:last-child{border-bottom:1px solid rgba(255,255,255,.2)}
.commitment-list span{color:#bbc9c0;font-size:10px}
.commitment-list h3{margin-bottom:8px;font-size:25px}
.commitment-list p{margin:0;color:rgba(255,255,255,.68)}
.product-story{padding:120px 0;background:var(--ivory)}
.product-grid{width:min(var(--content),calc(100% - 64px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 24px;align-items:stretch}
.product-grid figure{margin:0;display:grid;grid-template-rows:auto 1fr;background:#fff;border:1px solid rgba(103,88,77,.1)}
.product-grid .gallery-item{width:100%;aspect-ratio:4/5;background:#fff}
.product-grid .gallery-item img{object-fit:contain;transform:none}
.product-grid figcaption{display:flex;align-items:baseline;gap:15px;padding:20px 22px 24px;border-top:1px solid rgba(103,88,77,.1);font:22px Agrandir}
.product-grid figcaption span{font:10px 'Open Sans';color:var(--taupe)}


/* About */
.people-first{min-height:710px;display:grid;grid-template-columns:46% 54%;background:#e0d0c1}
.people-copy{padding:110px 6vw;align-self:center;min-width:0}
.people-copy h1{margin:0 0 28px;font-size:clamp(58px,6.2vw,88px);letter-spacing:-.05em}
.people-copy>p:not(.eyebrow){max-width:430px;font-size:17px}
.people-image{padding:28px 28px 28px 0}
.people-image img{height:100%;object-fit:cover;object-position:center 35%}
.team-editorial{padding:120px 0;background:var(--paper)}
.team-profile{width:min(1120px,calc(100% - 64px));margin:0 auto 90px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.team-profile:nth-of-type(odd) .team-image{order:2}
.team-profile:nth-of-type(odd)>div:last-child{order:1}
.team-image img{aspect-ratio:4/5;object-fit:cover}
.profile-1 .team-image img{object-position:56% center}
.team-profile>div:last-child>span{color:var(--taupe);font-size:11px}
.team-profile h2{margin:12px 0 5px;font-size:62px}
.team-profile strong{color:var(--brown)}
.team-profile p{margin-top:25px;font-size:16px}
.team-arrivals-intro{width:min(1120px,calc(100% - 64px));margin:140px auto 45px;display:grid;grid-template-columns:1fr 1fr;gap:30px 70px;align-items:end;border-top:1px solid var(--line);padding-top:50px}
.team-arrivals-intro .eyebrow{grid-column:1/-1;margin:0}
.team-arrivals-intro h2{margin:0;font-size:clamp(48px,6vw,78px)}
.team-arrivals-intro p{max-width:430px;margin:0 0 9px;font-size:17px}
.team-newcomers{width:min(1120px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.newcomer-card{padding-bottom:24px;border-bottom:1px solid var(--line)}
.newcomer-card .team-image{margin-bottom:18px;overflow:hidden;background:#e8e1da}
.newcomer-card .team-image img{aspect-ratio:3/4;object-fit:cover;object-position:center top;transition:transform .6s var(--ease)}
.newcomer-card>span{color:var(--taupe);font-size:10px}
.newcomer-card h3{margin:8px 0 2px;font-size:34px}
.newcomer-card strong{color:var(--brown)}
.newcomer-card p{margin:14px 0 0}
.newcomer-card:hover .team-image img{transform:scale(1.025)}
.about-welcome{padding:100px max(32px,calc((100% - 1080px)/2));display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--rose)}
.about-welcome>div{padding-right:70px}
.about-welcome h2{font:43px/1.15 'DM Serif Display'}
.about-welcome img{aspect-ratio:1.25;object-fit:cover}
.history{padding:120px max(32px,calc((100% - 1180px)/2));background:var(--charcoal);color:#fff}
.history .section-heading{width:auto}
.history .eyebrow{color:var(--clay)}
.timeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.timeline:before{content:"";position:absolute;top:22px;left:0;right:0;height:1px;background:rgba(255,255,255,.25)}
.timeline article{position:relative;padding-top:65px}
.timeline article:before{content:"";position:absolute;top:16px;width:13px;height:13px;border-radius:50%;background:var(--clay)}
.timeline h3{font-size:50px;color:var(--clay)}
.timeline p{color:rgba(255,255,255,.7)}
.childhood-drawing{width:min(560px,100%);margin:80px auto 0}
.childhood-drawing img{aspect-ratio:1;object-fit:cover;filter:sepia(.2)}
.childhood-drawing figcaption{padding-top:12px;color:var(--clay);font-size:10px;letter-spacing:.15em;text-align:center;text-transform:uppercase}
.behind-scenes{padding:110px max(32px,calc((100% - 1080px)/2));display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center;background:var(--ivory)}
.film-copy h2{font-size:55px}
.portrait-film{position:relative;width:min(100%,480px);aspect-ratio:9/16;justify-self:end;overflow:hidden;background:#1c1a18;box-shadow:0 26px 70px rgba(48,37,29,.18)}
.portrait-film video{position:absolute;top:0;left:50%;width:auto;max-width:none;height:100%;transform:translateX(-50%);background:#1c1a18}
.film-control{position:absolute;z-index:2;inset:auto 22px 22px 22px;min-height:62px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px solid rgba(255,255,255,.65);background:rgba(28,25,23,.76);color:#fff;cursor:pointer;backdrop-filter:blur(8px)}
.film-control svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.5}
.film-control .play-shape{fill:currentColor;stroke:none}
.film-control .pause-shape{display:none}
.film-control span{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.portrait-film.is-playing .film-control{inset:auto 18px 18px auto;width:52px;min-height:52px;padding:0;border-radius:50%;opacity:.72}
.portrait-film.is-playing .film-control span,.portrait-film.is-playing .play-shape{display:none}
.portrait-film.is-playing .pause-shape{display:block}
.portrait-film.is-playing .film-control:hover,.portrait-film.is-playing .film-control:focus-visible{opacity:1}


/* Contact + legal */
.contact-mast{min-height:660px;display:grid;grid-template-columns:46% 54%;background:var(--cream)}
.contact-welcome{padding:110px 8vw;align-self:center}
.contact-welcome h1{margin:0 0 25px;font-size:clamp(64px,8vw,110px);letter-spacing:-.055em}
.contact-welcome>p:not(.eyebrow){max-width:400px;font-size:17px}
.contact-photo{position:relative;padding:28px 28px 28px 0}
.contact-photo img{height:100%;object-fit:cover;object-position:center 34%}
.contact-photo span{position:absolute;right:42px;bottom:45px;padding:11px 16px;background:var(--paper);font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.contact-routes{padding:110px max(32px,calc((100% - 1180px)/2));background:var(--paper)}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.contact-cards article{min-height:190px;padding:38px;display:grid;grid-template-columns:70px 1fr;gap:26px;align-items:center;background:var(--paper);transition:.35s var(--ease)}
.contact-cards article:hover{background:var(--cream)}
.contact-icon{display:grid;width:58px;height:58px;place-items:center;color:var(--brown)}
.contact-icon .ui-icon{width:43px;height:43px}
.contact-cards h2{margin:0 0 8px;font-size:21px}
.contact-cards p{margin:0}
.contact-map-wrap{margin-top:80px;display:grid;grid-template-columns:330px 1fr;gap:50px;align-items:center}
.contact-map-wrap h2{font-size:43px}
.map{min-height:430px;display:grid;place-items:center;background:linear-gradient(rgba(34,29,25,.55),rgba(34,29,25,.55)),url('../images/Ladeninnen1.jpg') center/cover;color:#fff;text-align:center}
.map p{max-width:430px;padding:22px;border:1px solid rgba(255,255,255,.5);background:rgba(31,27,24,.7)}
.map iframe{width:100%;height:100%;min-height:430px;border:0}
.legal{padding:100px max(24px,calc((100% - 900px)/2));background:var(--ivory)}
.legal h1{font-size:58px}
.legal h2{margin-top:48px;font-size:32px}
.legal h3{margin-top:30px;font-size:23px}
.legal a{text-decoration:underline}
.privacy-mast{padding:105px max(32px,calc((100% - 1000px)/2));background:var(--clay)}
.privacy-mast h1{margin:0;font-size:clamp(58px,10vw,120px)}
.privacy{padding-top:80px;background:var(--paper)}


/* Footer, cookie, lightbox */
.cta{padding:68px 28px;display:flex;align-items:center;justify-content:center;gap:clamp(55px,10vw,140px);background:var(--charcoal);color:#fff}
.cta h2{margin:0;font:600 17px/1.55 'Open Sans';text-align:center}
.cta .button{border-color:#fff;background:transparent}
.map-section{background:#292622}
.site-footer{padding:75px max(28px,calc((100% - 1180px)/2)) 28px;background:#191817;color:#fff}
.footer-inner{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:80px;padding-bottom:55px}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:26px}
.footer-logo{width:175px}
.footer-logo img{height:auto}
.footer-social,.mobile-social{display:flex;gap:12px}
.main-menu .mobile-social{display:none}
.footer-social a,.mobile-social a{width:42px;height:42px;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center}
.footer-social a:hover,.mobile-social a:hover{background:var(--clay);color:var(--ink);transform:translateY(-3px)}
.footer-social svg,.mobile-social svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}
.footer-social svg .fill,.mobile-social svg .fill{fill:currentColor;stroke:none}
.footer-contact h2,.footer-nav h2{margin-bottom:18px;color:var(--clay);font:700 11px 'Open Sans';letter-spacing:.15em;text-transform:uppercase}
.footer-contact p{margin:0;color:rgba(255,255,255,.72);line-height:2}
.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.footer-nav a{color:rgba(255,255,255,.72)}
.footer-bottom{padding-top:24px;border-top:1px solid rgba(255,255,255,.13);display:flex;justify-content:space-between;gap:25px;color:rgba(255,255,255,.48);font-size:11px}
.footer-bottom div{display:flex;gap:20px}
.cookie-banner{position:fixed;z-index:90;inset:auto 0 0;padding:28px 0;background:rgba(30,28,26,.98);color:#fff;box-shadow:0 -15px 45px rgba(0,0,0,.24)}
.cookie-banner[hidden],.lightbox[hidden]{display:none}
.cookie-inner{width:min(1160px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:55px}
.cookie-banner h2{margin-bottom:7px;font:600 22px 'Open Sans'}
.cookie-banner p{margin:0;color:rgba(255,255,255,.75);font-size:13px}
.cookie-actions{display:flex;gap:9px}
.cookie-actions button{min-width:125px;min-height:43px;border:1px solid var(--clay);background:var(--clay);cursor:pointer}
.cookie-actions button+button{background:transparent;color:#fff}
.lightbox{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:70px 1fr 70px;place-items:center;padding:28px;background:rgba(12,11,10,.95)}
.lightbox img{max-width:min(88vw,1300px);max-height:88vh;width:auto;box-shadow:0 28px 80px #000}
.lightbox button{border:0;background:transparent;color:#fff;cursor:pointer}
.lightbox button .ui-icon{width:30px;height:30px}
.lightbox-close{position:absolute;top:20px;right:25px}


/* Motion */
.motion-enabled .reveal-item{transform:translateY(22px);transition:transform .75s var(--ease)}
.motion-enabled .reveal-item:nth-child(even){transform:translateY(22px) translateX(10px)}
.motion-enabled .reveal-item.is-visible{transform:none}
@keyframes scissor-travel{from{offset-distance:0}
to{offset-distance:100%}
}


@media(max-width:1050px){.main-menu ul{gap:15px}
.main-menu a{font-size:10px}
.header-inner{gap:26px}
.atelier-hero-copy{padding-inline:5vw}
.welcome-story{grid-template-columns:210px 1fr}
.craft-trio img{height:390px}
.women-services{grid-template-columns:270px 1fr;gap:55px}
.service-ledger article{grid-template-columns:40px 190px 1fr}
.men-services .service-ledger article{grid-template-columns:45px 220px 1fr}
.team-profile{gap:55px}
.contact-map-wrap{grid-template-columns:260px 1fr}
}


@media(max-width:860px){:root{--header:70px}
.header-inner{width:calc(100% - 30px)}
.wordmark{width:98px;height:52px;transform:translateY(2px)}
.menu-button{display:grid;width:44px;height:44px;flex:0 0 44px;padding:11px;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:none;align-content:space-around;cursor:pointer}
.menu-button span{height:1px;background:#fff}
.main-menu{position:fixed;z-index:55;inset:0 0 0 auto;width:min(88vw,390px);padding:90px 34px 35px;background:#211e1b;clip-path:inset(0 0 0 100%);visibility:hidden;pointer-events:none;transition:clip-path .38s var(--ease),visibility 0s linear .38s;box-shadow:-20px 0 60px rgba(0,0,0,.3)}
.menu-open .main-menu{clip-path:inset(0);visibility:visible;pointer-events:auto;transition:clip-path .38s var(--ease)}
.main-menu ul{display:grid;gap:6px;padding:0}
.main-menu a{padding:12px 0;font-size:13px}
.menu-close{display:grid;position:absolute;top:17px;right:19px;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:none;color:#fff}
.menu-close .ui-icon{width:23px;height:23px}
.mobile-social{display:flex;margin-top:30px}
.main-menu .mobile-social{display:flex}
.menu-open .menu-backdrop{display:block;position:fixed;z-index:50;inset:0;border:0;background:rgba(0,0,0,.63)}
.atelier-hero{grid-template-columns:1fr 1.05fr;min-height:690px}
.atelier-hero-copy h1{font-size:63px}
.welcome-story{grid-template-columns:1fr;gap:35px}
.welcome-mark{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end}
.welcome-mark>img{grid-column:1/-1;height:290px;margin:18px 0 4px}
.welcome-mark span{margin:0}
.welcome-mark p{margin:0;font-size:27px;text-align:right}
.craft-trio img{height:320px}
.transformation{grid-template-columns:1fr 1fr;gap:45px}
.salon-film{gap:45px}
.women-mast,.men-mast,.bio-mast,.people-first,.contact-mast{grid-template-columns:42% 58%;min-height:620px}
.women-title,.men-copy,.bio-copy,.people-copy,.contact-welcome{padding-inline:40px}
.women-title h1,.men-copy h1{font-size:72px}
.women-images,.men-visual,.bio-images{padding:18px 18px 18px 0}
.women-services{grid-template-columns:1fr}
.sticky-heading{position:static}
.service-ledger article,.men-services .service-ledger article{grid-template-columns:42px 220px 1fr}
.price-grid{gap:0 35px}
.care-manifest{grid-template-columns:1fr;gap:50px}
.care-heading{position:static}
.team-profile{grid-template-columns:.8fr 1.2fr}
.contact-cards article{padding:28px}
.footer-inner{gap:38px}
}


@media(max-width:680px){body{font-size:14px}
.section-heading{width:calc(100% - 36px);margin-bottom:38px}
.section-heading h2{font-size:40px}
.atelier-hero{display:flex;min-height:0;flex-direction:column-reverse}
.atelier-hero-image{min-height:0;padding:12px;background:#d8c7b7}
.hero-picture{height:auto}
.hero-picture img{height:auto;aspect-ratio:5/4;object-fit:cover;object-position:center 48%}
.atelier-hero-copy{padding:50px 22px 58px}
.atelier-hero-copy h1{font-size:56px}
.atelier-hero-copy .text-link{margin:24px 0 0 18px}
.welcome-story{padding:78px 22px}
.welcome-copy h2{font-size:39px}
.welcome-columns{grid-template-columns:1fr;gap:8px}
.craft-index{padding:78px 0}
.scissors-line{width:86vw;margin-bottom:40px}
.craft-trio{width:calc(100% - 34px);grid-template-columns:1fr;gap:50px}
.craft-trio a:nth-child(2){margin-top:0}
.craft-trio img{height:auto;aspect-ratio:4/5}
.craft-trio h3{font-size:30px}
.transformation{padding:78px 18px;grid-template-columns:1fr;gap:45px}
.transformation-copy h2{font-size:44px}
.salon-film{padding:78px 18px;grid-template-columns:1fr;gap:48px}
.film-stage{max-width:310px;justify-self:center}
.film-stage span{right:-58px}
.visit-panel h2{font-size:clamp(25px,8.7vw,36px);letter-spacing:-.045em}
.visit-panel dl div{display:grid;grid-template-columns:1fr;gap:3px;padding:12px 0}
.visit-panel dd{text-align:left}
.phone-link{max-width:100%;overflow-wrap:anywhere}
.visit-panel .button{width:100%}
.home-team{padding:78px 0}
.home-people{width:calc(100% - 24px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible}
.home-person{width:auto;min-height:0;aspect-ratio:3/4}
.home-person span{padding:48px 12px 14px}
.home-person strong{font-size:20px}
.home-person small{font-size:10px;line-height:1.25}
.review{padding:65px 22px;display:grid;gap:30px}
.review h2{font-size:32px}
.social-gallery{padding:78px 0}
.gallery-heading{width:calc(100% - 34px);display:block;text-align:center}
.instagram-title{justify-content:center}
.instagram-title h2{font-size:39px}
.instagram-link{display:inline-block;margin-top:18px}
.instagram-grid,.men-gallery .instagram-grid{width:100%;display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:18px;padding:0 18px 8px;scrollbar-width:none}
.instagram-grid::-webkit-scrollbar{display:none}
.instagram-grid .gallery-item{flex:0 0 78vw;max-width:390px;aspect-ratio:4/5;scroll-snap-align:center}
.gallery-mobile-controls{width:calc(100% - 36px);margin:18px auto 0;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#675a50;font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.gallery-mobile-controls>span{display:flex;align-items:center;gap:7px}
.gallery-mobile-controls .ui-icon{width:18px;height:18px}
.gallery-mobile-controls div{display:flex;gap:6px}
.gallery-mobile-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #887667;background:transparent;color:var(--ink)}
.cta{padding:55px 22px;display:grid;gap:28px}
.cta h2{font-size:15px}
.women-mast,.men-mast,.bio-mast,.people-first,.contact-mast{display:flex;min-height:0;flex-direction:column}
.women-title,.men-copy,.bio-copy,.people-copy,.contact-welcome{width:100%;min-width:0;padding:68px 22px}
.women-title h1,.men-copy h1{font-size:clamp(62px,18vw,74px)}
.women-images,.men-visual,.bio-images{padding:0 14px 14px;min-height:500px}
.women-images{grid-template-columns:45% 55%}
.men-visual img:first-child,.men-visual img:last-child{margin-top:55px;height:calc(100% - 55px)}
.editorial-intro{padding:75px 22px;grid-template-columns:1fr;gap:28px}
.editorial-intro h2{font-size:40px}
.women-services,.men-services{padding:75px 20px}
.sticky-heading h2{font-size:44px}
.service-ledger article,.men-services .service-ledger article{grid-template-columns:35px 1fr;gap:10px 14px}
.service-ledger article p{grid-column:2}
.compare-grid{width:calc(100% - 24px);grid-template-columns:1fr;gap:24px}
.before-after{padding:78px 0}
.before-after .section-heading h2{font-size:clamp(30px,9.5vw,40px)}
.men-intro{padding:75px 22px;grid-template-columns:35px 1fr;gap:20px}
.men-intro>p{grid-column:2}
.shave-ritual{grid-template-columns:1fr}
.shave-ritual>div:first-child{min-height:520px}
.shave-ritual>div:last-child{padding:68px 22px}
.price-mast{min-height:410px;padding:70px 22px;background:linear-gradient(145deg,#c8b39f 0 72%,#8d7766 72%)}
.price-mast h1{font-size:clamp(54px,17vw,72px)}
.price-book{padding:75px 20px}
.price-book-intro{margin-bottom:48px}
.price-book-intro h2{font-size:40px}
.price-grid dl div{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.price-grid{grid-template-columns:1fr}
.price-grid article:nth-last-child(-n+2){border-bottom:0}
.price-grid article:last-child{border-bottom:1px solid var(--line)}
.bio-copy h1{font-size:clamp(29px,9.5vw,41px);letter-spacing:-.045em}
.care-manifest{padding:78px 22px}
.care-heading h2{font-size:42px}
.product-story{padding:78px 0}
.product-grid{width:calc(100% - 32px);grid-template-columns:1fr 1fr;gap:14px}
.product-grid figure:nth-child(n){grid-column:auto;margin:0}
.product-grid figcaption{min-height:74px;padding:13px 12px 16px;font-size:16px;line-height:1.25}
.product-story .section-heading h2{font-size:clamp(25px,7.3vw,31px);letter-spacing:-.045em;overflow-wrap:normal;word-break:normal}
.people-copy h1{font-size:clamp(40px,12.5vw,50px)}
.people-image{padding:0 14px 14px;min-height:480px}
.team-editorial{padding:78px 0}
.team-profile{width:calc(100% - 34px);margin-bottom:68px;grid-template-columns:1fr;gap:28px}
.team-profile:nth-of-type(odd) .team-image,.team-profile:nth-of-type(odd)>div:last-child{order:initial}
.team-profile h2{font-size:50px}
.team-editorial>.section-heading h2{font-size:clamp(35px,10.5vw,40px)}
.team-arrivals-intro{width:calc(100% - 34px);margin:90px auto 32px;display:block;padding-top:34px}
.team-arrivals-intro .eyebrow{margin-bottom:12px}
.team-arrivals-intro h2{font-size:clamp(36px,11vw,44px)}
.team-arrivals-intro p{margin-top:18px}
.team-newcomers{width:calc(100% - 34px);grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 10px}
.newcomer-card h3{font-size:25px}
.newcomer-card p{font-size:12px;line-height:1.45}
.newcomer-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 5px);justify-self:center}
.about-welcome{padding:70px 22px;grid-template-columns:1fr;gap:35px}
.about-welcome>div{padding:0}
.about-welcome h2{font-size:36px}
.history{padding:78px 22px}
.timeline{grid-template-columns:1fr;gap:0}
.timeline:before{top:0;bottom:0;left:6px;right:auto;width:1px;height:auto}
.timeline article{padding:10px 0 45px 38px}
.timeline article:before{top:15px;left:0}
.behind-scenes{padding:75px 20px;grid-template-columns:1fr;gap:35px}
.film-copy h2{font-size:43px}
.portrait-film{width:min(100%,380px);justify-self:center}
.contact-photo{padding:0 14px 14px;min-height:500px}
.contact-routes{padding:75px 16px}
.contact-cards{grid-template-columns:1fr}
.contact-cards article{min-height:145px;padding:22px;grid-template-columns:44px minmax(0,1fr);gap:14px}
.contact-icon{width:44px;height:44px}
.contact-icon .ui-icon{width:34px;height:34px}
.contact-cards h2{font-size:16px;overflow-wrap:normal}
.contact-map-wrap{margin-top:60px;grid-template-columns:1fr;gap:28px}
.contact-map-wrap h2{font-size:39px}
.legal{padding:70px 20px}
.legal h1{font-size:42px}
.legal h2{font-size:28px}
.privacy-mast{padding:70px 22px}
.privacy-mast h1{font-size:clamp(32px,10.5vw,42px);letter-spacing:-.055em}
.footer-inner{grid-template-columns:1fr;text-align:center;gap:45px}
.footer-brand,.footer-nav{align-items:center}
.footer-contact{grid-column:1}
.footer-bottom{flex-direction:column;align-items:center;text-align:center}
.cookie-inner{grid-template-columns:1fr;gap:20px}
.cookie-actions{justify-content:center}
.lightbox{grid-template-columns:42px 1fr 42px;padding:12px}
}


@media(max-width:360px){.header-inner{width:calc(100% - 22px)}
.wordmark{width:90px;height:48px}
.menu-button{width:42px;height:42px;flex-basis:42px}
.main-menu{width:100%;padding-inline:24px}
.atelier-hero-copy h1{font-size:50px}
.button{width:100%;padding-inline:12px;font-size:9px;letter-spacing:.11em}
.atelier-hero-copy .text-link{width:max-content}
.gallery-mobile-controls{width:calc(100% - 24px)}
.gallery-mobile-controls>span b{max-width:145px}
.phone-link{font-size:28px}
.price-book-intro h2{font-size:35px}
}

/* A separate editorial rhythm for narrow screens. Desktop rules stay unchanged. */
@media(max-width:680px){
  :root{--mobile-pad:clamp(18px,5vw,24px)}
  body{font-size:15px;line-height:1.6}
  .section-heading{width:calc(100% - 2 * var(--mobile-pad));margin-bottom:32px}
  .section-heading h2{font-size:clamp(32px,9.5vw,42px);line-height:1.08}
  .button{min-height:48px;letter-spacing:.1em}

  .atelier-hero{flex-direction:column}
  .atelier-hero-copy{padding:52px var(--mobile-pad) 34px}
  .atelier-hero-copy h1{margin-bottom:20px;font-size:clamp(48px,13.6vw,60px);line-height:.98}
  .hero-lead{max-width:31ch;margin-bottom:24px;font-size:15px}
  .atelier-hero-copy .text-link{display:inline-flex;margin:17px 0 0 6px}
  .atelier-hero-image{min-height:0;display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:end;padding:16px var(--mobile-pad) 40px;background:linear-gradient(90deg,var(--cream) 0 24%,#d6c1af 24% 100%)}
  .atelier-hero-image::before{content:'ESLEM HAIRATELIER';align-self:center;justify-self:center;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;font-weight:700;letter-spacing:.26em;color:var(--brown)}
  .hero-picture{width:100%;max-width:290px;height:auto;justify-self:end;padding:6px;background:var(--paper);box-shadow:10px 10px 0 rgba(95,72,57,.18)}
  .hero-picture img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 55%}
  .welcome-story{padding:62px var(--mobile-pad) 68px;gap:24px}
  .welcome-mark>img{height:210px;object-position:center 40%}
  .welcome-mark p{font-size:24px}
  .welcome-copy h2{margin-bottom:28px;font-size:clamp(33px,10vw,42px)}
  .welcome-columns{gap:12px}
  .welcome-columns p{font-size:14px;line-height:1.65}
  .craft-index{padding:62px 0 72px}
  .craft-index .scissors-line{height:42px;margin-bottom:30px}
  .craft-trio{width:calc(100% - 2 * var(--mobile-pad));gap:22px}
  .craft-trio a{display:grid;grid-template-columns:39% minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:15px;min-height:185px;padding:0 0 20px}
  .craft-trio a>img:not(.craft-icon){grid-area:1/1/4/2;width:100%;height:100%;min-height:185px;aspect-ratio:auto;object-fit:cover}
  .craft-trio .craft-icon{grid-area:1/2;width:30px;height:30px;margin:2px 0 0}
  .craft-trio h3{grid-area:2/2;margin:5px 0;font-size:clamp(22px,6.7vw,28px)}
  .craft-trio p{grid-area:3/2;font-size:13px;line-height:1.45}
  .craft-trio a>span{top:6px;left:6px;width:28px;height:28px}
  .transformation{padding:66px var(--mobile-pad);gap:28px}
  .transformation-copy h2{font-size:clamp(38px,11vw,48px)}
  .transformation .image-compare{width:min(78vw,300px);justify-self:center;margin:auto}
  .salon-film{padding:68px var(--mobile-pad);gap:38px}
  .film-stage{width:min(69vw,260px);padding:0 18px 18px 0}
  .film-stage:after{inset:18px 0 0 18px}
  .film-stage span{right:-43px;font-size:8px}
  .visit-panel dl{margin:22px 0}
  .visit-panel .phone-link{font-size:clamp(27px,8vw,34px)}
  .visit-note{margin-top:26px;padding-top:22px}
  .home-team{padding:68px 0}
  .home-person small{font-size:11px}
  .review{padding:58px var(--mobile-pad)}
  .review h2{font-size:clamp(29px,8vw,36px)}
  .social-gallery{padding:66px 0}
  .instagram-title h2{font-size:clamp(34px,10vw,43px)}
  .instagram-grid .gallery-item{flex-basis:min(72vw,310px);aspect-ratio:1}
  .cta{padding:48px var(--mobile-pad)}

  .women-title,.men-copy,.bio-copy,.people-copy,.contact-welcome{padding:56px var(--mobile-pad) 44px}
  .women-images,.men-visual,.bio-images{min-height:0;height:340px;padding:0 12px 12px}
  .women-images{grid-template-columns:38% minmax(0,1fr)}
  .women-images img:first-child{height:75%;align-self:end;object-position:center}
  .men-visual{height:315px}
  .men-visual img:first-child,.men-visual img:last-child{margin-top:32px;height:calc(100% - 32px)}
  .editorial-intro{padding:64px var(--mobile-pad);gap:16px}
  .editorial-intro h2{font-size:clamp(35px,10vw,43px)}
  .editorial-intro>p{font-size:15px}
  .women-services,.men-services{padding:66px var(--mobile-pad)}
  .sticky-heading h2{font-size:clamp(35px,10vw,44px)}
  .service-ledger article{padding:22px 0}
  .service-ledger h3{font-size:clamp(22px,6.6vw,28px)}
  .before-after{padding:68px 0}
  .before-after .section-heading h2{font-size:clamp(31px,9vw,39px)}
  .compare-grid{width:100%;display:flex;grid-template-columns:none;gap:14px;margin:0 0 8px;padding:0 var(--mobile-pad) 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--mobile-pad);scrollbar-width:thin}
  .compare-grid .image-compare{flex:0 0 min(78vw,300px);scroll-snap-align:start}
  .compare-frame{box-shadow:none}
  .compare-divider b{width:44px;height:44px}
  .compare-label{top:9px;padding:6px 8px;font-size:9px}
  .before-label{right:9px}.after-label{left:9px}
  .mobile-carousel-controls{width:calc(100% - 2 * var(--mobile-pad));margin:0 auto 34px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
  .mobile-carousel-controls span{display:flex;flex-direction:column;gap:2px}
  .mobile-carousel-controls b{font-size:13px;font-weight:400}
  .mobile-carousel-controls>div{display:flex;gap:7px}
  .mobile-carousel-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--taupe);background:transparent;color:var(--ink)}
  .mobile-carousel-controls .ui-icon{width:20px;height:20px}
  .before-after>a{margin-top:12px}
  .men-intro{padding:62px var(--mobile-pad);grid-template-columns:24px minmax(0,1fr);gap:10px}
  .men-intro h2{font-size:clamp(36px,10vw,46px)}
  .men-intro>p{font-size:15px}
  .shave-ritual>div:first-child{min-height:0;height:310px}
  .shave-ritual>div:last-child{padding:60px var(--mobile-pad)}
  .shave-ritual h2{font-size:clamp(36px,10vw,46px)}
  .price-mast{min-height:315px;padding:55px var(--mobile-pad)}
  .price-book{padding:65px var(--mobile-pad)}
  .price-book-intro{margin-bottom:34px}
  .price-grid article{padding:26px 0}
  .price-grid h2{font-size:22px}
  .price-grid dl div{padding:8px 0;font-size:13px;line-height:1.45}

  .bio-images{height:330px;grid-template-rows:repeat(2,minmax(0,1fr))}
  .bio-images img{min-width:0;min-height:0;width:100%;height:100%;object-fit:cover}
  .care-manifest{padding:68px var(--mobile-pad);gap:30px}
  .care-heading h2{font-size:clamp(37px,10vw,46px)}
  .commitment-list article{padding:20px 0}
  .commitment-list h3{font-size:22px}
  .product-story{padding:70px 0}
  .product-grid{width:100%;display:flex;grid-template-columns:none;gap:14px;margin:0;padding:0 var(--mobile-pad) 14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--mobile-pad);scrollbar-width:thin}
  .product-grid figure:nth-child(n){flex:0 0 min(76vw,290px);display:grid;grid-template-rows:auto auto;scroll-snap-align:start}
  .product-grid .gallery-item{aspect-ratio:1;padding:14px}
  .product-grid figcaption{min-height:66px;padding:15px 16px;font-size:19px}
  .product-controls{margin-top:14px}

  .people-image{min-height:0;padding:0 12px 12px}
  .people-image img{height:auto;aspect-ratio:1.28;object-fit:cover;object-position:center 28%}
  .team-editorial{padding:68px 0}
  .team-profile{margin-bottom:52px;gap:19px}
  .team-profile .team-image img{aspect-ratio:1.14;object-position:center 22%}
  .team-profile h2{font-size:43px}
  .team-profile p{margin-top:16px;font-size:14px}
  .team-arrivals-intro{margin:76px auto 28px}
  .team-newcomers{display:grid;grid-template-columns:1fr;gap:0}
  .newcomer-card,.newcomer-card:last-child:nth-child(odd){width:100%;min-height:0;display:grid;grid-template-columns:105px minmax(0,1fr);grid-template-rows:auto auto auto 1fr;gap:0 16px;justify-self:stretch;grid-column:auto;padding:18px 0}
  .newcomer-card .team-image{grid-area:1/1/5/2;margin:0}
  .newcomer-card .team-image img{height:140px;aspect-ratio:3/4;object-fit:cover}
  .newcomer-card>span{grid-area:1/2}
  .newcomer-card h3{grid-area:2/2;font-size:28px}
  .newcomer-card strong{grid-area:3/2}
  .newcomer-card p{grid-area:4/2;margin-top:8px;font-size:13px}
  .about-welcome{padding:62px var(--mobile-pad)}
  .history{padding:68px var(--mobile-pad)}
  .behind-scenes{padding:68px var(--mobile-pad)}
  .portrait-film{width:min(72vw,300px)}
  .contact-photo{min-height:0;padding:0 12px 12px}
  .contact-photo img{height:auto;aspect-ratio:1.28;object-fit:cover;object-position:center 30%}
  .contact-photo--waves img{aspect-ratio:1;object-position:center 65%}
  .contact-routes{padding:68px var(--mobile-pad)}
  .contact-cards article{min-height:130px}
  .contact-map-wrap{margin-top:52px}
  .map,.map iframe{min-height:320px}
  .legal{padding:64px var(--mobile-pad);overflow-wrap:anywhere}
  .privacy-mast{padding:60px var(--mobile-pad)}
}


@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
.motion-enabled .reveal-item{transform:none}
.scissors-line .scissors{offset-distance:48%}
}
