/* Blondie editorial direction: salon light, aubergine ink, a cut through the frame. */
:root{--paper:#f3eee7;--ink:#2d2029;--dark:#251b23;--lime:#e1c19c;--muted:#73636c;--rule:#2d20292c;--gutter:clamp(24px,5vw,90px)}
body{background:var(--paper)}
::selection{background:#e1c19c;color:#251b23}
a:focus-visible,button:focus-visible{outline-color:#a36c38}
.header{background:#f3eee7f5;border-bottom-color:#2d202926}
.header-inner{height:80px}.brand{font-size:30px}.brand img{width:37px;height:37px}
.button{border-radius:0;min-height:52px}.button:hover{background:#e1c19c;color:#291c25}
.underlink{font-size:15px}.eyebrow{font-size:12px;letter-spacing:.13em}
#mobile-menu{background:#e1c19c}
.cinematic-hero{height:calc(100svh - 80px);min-height:740px;max-height:1100px;position:relative;background:#291c25;color:#f7f0e8;overflow:hidden;isolation:isolate}
.hero-photograph{position:absolute;inset:0 0 0 34%;z-index:-3;overflow:hidden}
.hero-photograph img{object-position:50% 47%;transform:scale(calc(1.06 + var(--cover-progress,0)*.09)) translateY(calc(var(--cover-progress,0)*28px));filter:saturate(.72)}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#291c25 6%,#291c25f2 25%,#291c2570 49%,#291c2500 72%),linear-gradient(0deg,#21171ee8 0%,#21171e00 39%,#21171e30)}
.hero-topline{display:flex;justify-content:space-between;position:absolute;left:var(--gutter);right:var(--gutter);top:32px;color:#f3e8dc}
.hero-topline p:last-child{font-size:11px;text-align:right}
.hero-title{position:absolute;top:13%;left:var(--gutter);z-index:2}
.hero-title h1{font-size:clamp(115px,12.6vw,210px);font-weight:400;letter-spacing:-.075em;line-height:.88}
.hero-title h1 i{display:block;font-size:1.62em;line-height:.96;letter-spacing:-.07em;font-weight:500;margin-left:.08em;color:#f0d6b8}
.hero-tagline{font-size:clamp(32px,3.3vw,54px);letter-spacing:-.055em;line-height:1.1;margin-top:25px;margin-left:15px}
.hero-side-note{position:absolute;right:25px;top:28%;writing-mode:vertical-rl;display:flex;gap:55px;font-size:10px;letter-spacing:.18em;color:#fff4e3}
.hero-bottomline{position:absolute;bottom:35px;left:var(--gutter);right:var(--gutter);display:grid;grid-template-columns:1fr 1.2fr .65fr;align-items:end;gap:50px}
.hero-bottomline>p{font-size:15px;line-height:1.65;color:#dfced3;max-width:300px}
.hero-reserve{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f5dfc28c;padding:15px 0;font-size:21px;letter-spacing:-.025em;gap:35px;max-width:310px}
.reserve-symbol{display:flex;width:43px;height:43px;align-items:center;justify-content:center;border:1px solid #e1c19c88;border-radius:50%;font-size:25px;transition:transform .4s,background .4s}
.hero-reserve:hover .reserve-symbol{transform:rotate(90deg);background:#7b5b50}
.hero-explore{font-size:13px;justify-self:end;max-width:145px;display:flex;gap:25px;align-items:center;padding:15px 0}
.hero-explore span{font-size:25px}
.pause-story{padding-top:125px;padding-bottom:130px;background:radial-gradient(ellipse at 90% 80%,#dfcbb8,transparent 58%),var(--paper);overflow:hidden}
.pause-heading{position:relative;z-index:2;display:grid;grid-template-columns:.65fr 2fr;align-items:start;gap:40px}
.pause-heading>.eyebrow{padding-top:18px}
.pause-heading h2{font-size:clamp(65px,8.7vw,140px);line-height:1.02;font-weight:400;letter-spacing:-.065em}
.pause-heading i{color:#986342}
.pause-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:13%;margin-top:65px;align-items:center}
.pause-image{height:640px;position:relative;clip-path:polygon(0 0,100% 0,100% 89%,85% 100%,0 100%);overflow:hidden}
.pause-image img{object-position:center 60%;transform:scale(calc(1.09 - var(--pause-progress,0)*.07));transition:transform .1s linear}
.pause-image figcaption{position:absolute;bottom:30px;left:30px;font-size:12px;letter-spacing:.1em;color:#fff;text-shadow:0 1px 8px #000}
.pause-copy{max-width:400px;padding-top:0;position:relative}
.pause-monogram{font:italic 500 155px/.9 Bodoni,serif;color:#9b765c;display:block;margin-bottom:35px}
.pause-copy p:first-of-type{font-size:27px;line-height:1.35;letter-spacing:-.035em;margin-bottom:27px}
.pause-copy p:nth-of-type(2){font-size:17px;line-height:1.8;color:#6d5962}
.pause-copy .underlink{margin-top:25px}
/* Four rooms, one continuous photographic sequence. */
.tour{background:#251b23}.tour-head>.eyebrow,.tour-instruction{color:#d8bda9}
.tour-head h2{font-size:clamp(45px,4.5vw,72px);font-weight:400}
.tour-head h2 i{color:#ead0ad}
.tour-enhanced{height:310svh}
.tour-enhanced .tour-sticky{top:80px;height:calc(100svh - 80px);min-height:650px;max-height:1100px;padding:0;isolation:isolate}
.tour-enhanced .tour-head{position:absolute;left:0;right:0;top:35px;z-index:5;display:flex;justify-content:space-between;align-items:start;gap:35px}
.tour-enhanced .tour-head h2{font-size:37px;line-height:1.12;max-width:370px;text-align:right;text-shadow:0 2px 20px #000}
.tour-enhanced .tour-head .eyebrow{color:#f2dfc8;padding-top:0}
.tour-enhanced .tour-instruction{position:absolute;top:55px;left:var(--gutter);max-width:225px;font-size:13px;color:#e0d2cc}
.tour-enhanced .tour-stage{padding:0}
.tour-enhanced .tour-panel{inset:0;padding:0;display:block;transform:none;transition:opacity .75s ease,visibility 0s .75s}
.tour-enhanced .tour-panel.is-active{transform:none}
.tour-enhanced .tour-frame{position:absolute;inset:0;margin:0;width:100%;height:100%;max-height:none;clip-path:none;box-shadow:none;z-index:0;background:#251b23}
.tour-enhanced .tour-frame img{object-position:70% 52%;filter:saturate(.78);transform:scale(1.09);transition:transform 1.6s cubic-bezier(.2,.7,.2,1);width:68%;margin-left:auto}
.tour-enhanced .is-active .tour-frame img{transform:scale(1)}
.tour-enhanced .tour-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#251b23 0%,#251b23ed 20%,#251b237d 45%,transparent 74%),linear-gradient(0deg,#251b23dc,transparent 27%,transparent 72%,#251b2377)}
.tour-enhanced .tour-frame figcaption{z-index:3;left:auto;right:var(--gutter);bottom:110px;gap:40px;padding:0;background:none;font-size:12px;letter-spacing:.1em}
.tour-enhanced .tour-copy{position:absolute;left:var(--gutter);top:32%;max-width:62%}
.tour-enhanced .tour-copy .eyebrow{font-size:12px;color:#e6c8a7}
.tour-enhanced .tour-copy h3{font-size:clamp(85px,10vw,155px);letter-spacing:-.055em;line-height:.93;font-weight:500}
.tour-enhanced .tour-copy h3 span{display:inline;font-size:1.18em;margin-left:20px;color:#e1c19c}
.tour-enhanced .tour-count{margin-top:28px;color:#e0cdd3;font-size:15px}
.tour-enhanced .tour-actions{margin-top:23px}.tour-actions .underlink{color:inherit}
.tour-enhanced .tour-number{display:none}
.tour-enhanced .tour-nav{position:absolute;bottom:28px;left:0;right:0;z-index:5;gap:28px}
.tour-nav button{color:#e1cdd5;border-color:#ffffff50;font-size:14px;min-height:54px}
.tour-nav button[aria-pressed=true]{color:#f4d7b4}.tour-progress{background:#e1c19c}
.service-editorial{padding-top:110px;padding-bottom:120px;background:#f3eee7}
.section-title{grid-template-columns:.65fr 1.6fr .8fr}.section-title h2{font-weight:400}
.service-layout{display:grid;grid-template-columns:.65fr 1.6fr;gap:9%;align-items:start}
.service-still{height:465px;position:relative;margin-top:40px;overflow:hidden;border-radius:48% 48% 0 0}
.service-still img{object-position:50% 46%;filter:saturate(.65)}
.service-still figcaption{position:absolute;bottom:20px;left:20px;right:20px;color:#fff;font-size:11px;letter-spacing:.1em;text-align:center;text-shadow:0 2px 6px #000}
.service-row{grid-template-columns:25px 1fr 36px;gap:20px;padding:35px 0}
.service-row h3{font-size:clamp(35px,4vw,64px)}.service-row p{grid-column:2;grid-row:2;max-width:none;font-size:15px}
.service-open{grid-column:3;grid-row:1/3;font-size:34px}.service-ordinal{align-self:start;padding-top:15px}
.service-row:hover{color:#95613e;padding-left:10px}
.people-story{background:radial-gradient(ellipse at 85% 75%,#644448,transparent 55%),#2b2028;color:#f2e9e3;padding-top:105px;padding-bottom:120px}
.people-story-title{grid-template-columns:.65fr 1.5fr .9fr;gap:30px}
.people-story-title .eyebrow{color:#d9b899;max-width:180px}
.people-story-title h2{font-size:clamp(65px,6.4vw,104px);font-weight:400}.people-story-title h2 i{color:#ddba97}
.people-story-title>p:not(.eyebrow){color:#d5c7ce}
.people-montage{grid-template-columns:.9fr 1.25fr .8fr;gap:6%;margin-top:60px}
.people-montage .portrait-0{margin-top:100px}.people-montage .portrait-2{margin-top:220px}
.people-montage .portrait-1 img{aspect-ratio:3/4.25}
.portrait img{filter:saturate(.45);box-shadow:20px 30px 65px #08050b45}
.portrait figcaption{color:#f4eae1;border-color:#eadbd440}.portrait figcaption span{color:#d5bbc2}
.barber-band{background:#e4d3c2;color:#2b2028;padding-top:75px}
.barber-heading .eyebrow{color:#735644}
.barber-heading h2{font-size:clamp(90px,13.4vw,220px);font-weight:400}
.barber-heading i{color:#986342}
.barber-stage{margin-top:30px;height:760px}
.barber-stage>figure{left:0;right:20%;clip-path:polygon(0 0,100% 0,100% 85%,90% 100%,0 100%)}
.barber-stage>figure img{filter:saturate(.45)}
.barber-note{background:#2b2028;color:#f3e9e0;right:5%;top:140px;box-shadow:0 35px 75px #291c2535}
.barber-note .eyebrow{color:#e1c19c}.barber-note .button{background:#e1c19c;color:#251b23;border-color:#e1c19c}
.barber-note h3{font-weight:400}.barber-side{color:#735644}
.booking{background:radial-gradient(ellipse at 95% 0%,#ecd8ba,transparent 60%),#d6b393;padding-top:80px;padding-bottom:75px;color:#2d2029}
.booking h2{font-size:clamp(75px,10.5vw,166px);font-weight:400;letter-spacing:-.06em}
.booking-heading .round-link{background:#2d2029;color:#f3e7db;width:170px;height:170px}
.booking-kicker .eyebrow{font-size:12px}
.booking-places>a{font-size:16px;padding:22px 0}.booking-bottom>p{font-size:16px}
.footer{background:#251b23;color:#f0e2d4}.footer-wordmark{font-weight:400;letter-spacing:-.075em}
.footer-wordmark span{color:#c49d77}.footer-bottom{border-color:#ead9d530}.footer-top{color:#dec7ce}
/* Carry the photographic direction through every location. */
.location-opening{background:radial-gradient(ellipse at 15% 90%,#d7b79e55,transparent 60%),var(--paper)}
.location-heading h1{font-weight:400;letter-spacing:-.065em}.location-heading h1 i{color:#986342}
.location-image-set{height:650px}.location-main-photo{width:80%;height:100%;clip-path:polygon(0 0,100% 0,100% 87%,88% 100%,0 100%)}
.location-small-photo{height:350px;width:27%;right:0;top:180px;transform:none;box-shadow:10px 25px 55px #291c2535}
.location-image-word{color:#f9eddf;text-shadow:0 4px 35px #2c172433;bottom:25px;right:7%;font-size:130px}
.location-facts{padding-top:30px}.team-section{background:#f3eee7}.team-section h2{font-weight:400}
.person-photo{background:#cbbfc0}.person h3{font-weight:400}.person>p{color:#74616c}
.portrait-cta{background:#e1c19c;color:#2d2029}.location-gallery{background:#dfcbbb}
.gallery-header h2{font-weight:400}.gallery-grid img{box-shadow:0 25px 45px #291c2518}
.price-opening{background:radial-gradient(ellipse at 90% 5%,#6a454d,transparent 70%),#291c25;color:#f3e8dc}
.price-opening h1{font-weight:400}.price-opening h1 i,.price-symbol{color:#e1c19c}
.price-sidebar{top:110px}.price-title h2{font-weight:400}
@media(max-width:1199px){
.hero-title{top:17%}.hero-title h1{font-size:14vw}.hero-tagline{font-size:4vw}.hero-bottomline{gap:25px;grid-template-columns:1fr 1fr .65fr}
.pause-layout{gap:9%}.pause-image{height:560px}.pause-copy{padding-right:20px}
.tour-enhanced .tour-copy h3{font-size:10.5vw}.tour-enhanced .tour-copy{max-width:72%}
.people-story-title{grid-template-columns:.55fr 1.5fr 1fr}.people-story-title h2{font-size:70px}
.people-montage .portrait-2{margin-top:150px}
}
@media(max-width:999px){
.header-inner{height:76px}.cinematic-hero{height:900px;min-height:0;max-height:none}.hero-title{top:14%}.hero-title h1{font-size:18vw}.hero-photograph{left:23%}.hero-shade{background:linear-gradient(90deg,#291c25f5,#291c2599 40%,#291c2510 80%),linear-gradient(0deg,#21171ef5,transparent 50%)}
.hero-topline .eyebrow{font-size:10px}.hero-tagline{font-size:40px}.hero-bottomline{grid-template-columns:1fr 1fr;gap:25px;bottom:40px}.hero-explore{display:none}.hero-reserve{font-size:19px}.hero-side-note{right:12px}
.pause-story{padding-top:85px;padding-bottom:85px}.pause-heading{grid-template-columns:1fr;gap:30px}.pause-heading h2{font-size:10vw}.pause-heading>.eyebrow{padding:0}.pause-layout{gap:9%;margin-top:45px}.pause-image{height:510px}.pause-copy p:first-of-type{font-size:23px}.pause-monogram{font-size:100px}.pause-copy p:nth-of-type(2){font-size:16px}
.tour-sticky{padding-top:60px}.tour-head{display:block}.tour-head h2{font-size:60px;margin-top:20px}.tour-instruction{font-size:16px;margin-top:20px}
.tour-panel{gap:7%;padding:55px 0}.tour-frame{height:500px;margin:0;box-shadow:none}.tour-copy h3{font-size:65px}.tour-copy .eyebrow{color:#d9b899}.tour-count{color:#d8c4ce}.tour-number{color:#ddba9715}
.service-editorial{padding:85px var(--gutter)}.service-layout{grid-template-columns:.65fr 1.3fr;gap:6%}.service-still{height:380px}.service-row{gap:13px;padding:27px 0}.service-row h3{font-size:37px}.service-row p{font-size:14px}.service-ordinal{padding-top:8px}
.people-story-title{grid-template-columns:1.3fr 1fr}.people-story-title h2{font-size:65px}.people-story-title .eyebrow{max-width:none}.people-montage{gap:5%}.people-montage .portrait-0{margin-top:70px}.people-montage .portrait-2{margin-top:125px}
.barber-heading h2{font-size:13vw}.barber-stage{height:650px}.barber-note{top:100px;padding:35px;width:40%}.barber-note h3{font-size:58px}.barber-stage>figure{right:23%}.booking-heading .round-link{width:130px;height:130px;font-size:15px}
.location-image-set{height:560px}.location-small-photo{height:280px;top:180px;width:29%}.location-image-word{font-size:95px}.location-main-photo{width:80%}
}
@media(max-width:700px){
.header-inner{height:72px}.brand{font-size:26px}.brand img{width:30px;height:30px}.header-end{gap:8px}
.cinematic-hero{height:calc(100svh - 72px);min-height:700px;max-height:900px}.hero-photograph{left:0;top:0}.hero-photograph img{object-position:62% 45%;transform:none;filter:saturate(.68)}
.hero-shade{background:linear-gradient(90deg,#291c25c9,#291c254a 75%),linear-gradient(0deg,#21171ef5 0%,#21171e77 35%,#21171e00 62%,#21171e66)}
.hero-topline{top:24px;gap:25px}.hero-topline .eyebrow{font-size:10px;line-height:1.5;max-width:170px}.hero-topline p:last-child{max-width:100px;font-size:9px}
.hero-title{top:15%;left:var(--gutter)}.hero-title h1{font-size:27vw;line-height:.93;letter-spacing:-.07em}.hero-title h1 i{font-size:1.7em;margin-left:.03em;line-height:.96}.hero-tagline{font-size:34px;margin-left:8px;margin-top:18px}
.hero-side-note{display:none}.hero-bottomline{left:var(--gutter);right:var(--gutter);bottom:25px;display:block}.hero-bottomline>p{font-size:14px;line-height:1.6;max-width:280px}.hero-reserve{margin-top:20px;max-width:none;font-size:20px;padding:13px 0}.reserve-symbol{width:40px;height:40px}
.pause-story{padding-top:65px;padding-bottom:70px}.pause-heading{gap:25px}.pause-heading h2{font-size:14.7vw;line-height:1.1}.pause-heading h2 i{letter-spacing:-.065em;white-space:nowrap}.pause-heading .eyebrow{font-size:11px}.pause-layout{display:block;margin-top:35px}.pause-image{height:440px;width:88%;margin-left:0}.pause-image img{transform:none;object-position:50% 55%}.pause-image figcaption{font-size:10px;left:20px;bottom:22px}.pause-copy{margin:40px 0 0 18%;padding:0;max-width:none}.pause-monogram{display:none}.pause-copy p:first-of-type{font-size:24px}.pause-copy p:nth-of-type(2){font-size:16px}.pause-copy .underlink{margin-top:15px}
.tour-sticky{padding-top:55px}.tour-head h2{font-size:53px;line-height:1.05}.tour-head h2 i{display:inline}.tour-head>.eyebrow{font-size:11px}.tour-instruction{font-size:15px;max-width:280px}.tour-panel{display:flex;flex-direction:column-reverse;gap:27px;padding:38px 0 48px}.tour-frame{height:420px;width:100%;box-shadow:none;clip-path:polygon(0 0,100% 0,100% 91%,88% 100%,0 100%)}.tour-frame img{object-position:center 52%}.tour-frame figcaption{font-size:11px;padding-bottom:27px}.tour-copy h3{font-size:53px;gap:0 14px}.tour-count{font-size:14px}.tour-copy .eyebrow{font-size:11px}.tour-actions{gap:25px;margin-top:20px}.tour-actions .button{font-size:14px}.tour-number{display:none}
.service-editorial{padding-top:65px;padding-bottom:70px}.section-title{margin-bottom:32px}.section-title h2{font-size:53px}.section-title>.eyebrow{font-size:11px}.section-title>.underlink{margin-top:22px}.service-layout{display:block}.service-still{display:none}.service-row{grid-template-columns:22px 1fr 24px;gap:10px;padding:25px 0}.service-row h3{font-size:35px}.service-row p{font-size:14px}.service-ordinal{font-size:11px;padding-top:8px}.service-open{font-size:28px}
.people-story{padding-top:65px;padding-bottom:65px}.people-story-title{display:block}.people-story-title .eyebrow{font-size:11px}.people-story-title h2{font-size:61px;margin-top:25px}.people-story-title p:not(.eyebrow){font-size:16px}.people-story-title>.underlink{margin-top:20px}.people-montage{margin-top:40px;gap:20px;scrollbar-color:#a88478 transparent}.people-montage .portrait{flex-basis:79%;margin-top:0!important}.people-montage .portrait img{aspect-ratio:3/4;filter:saturate(.65)}.portrait figcaption{font-size:16px}.portrait figcaption span{font-size:12px}
.barber-band{padding-top:55px}.barber-heading h2{font-size:21vw;white-space:normal;line-height:1}.barber-heading h2 i{font-size:25vw;text-align:right;display:block}.barber-heading .eyebrow{font-size:11px}.barber-stage{height:740px;margin-top:30px}.barber-stage>figure{left:0;right:12%;height:440px}.barber-note{top:300px;right:var(--gutter);width:80%;padding:30px}.barber-note h3{font-size:53px}.barber-note .eyebrow{font-size:10px}.barber-note p:not(.eyebrow){font-size:15px}.barber-side{right:12px;font-size:10px}
.booking{padding-top:55px;padding-bottom:50px}.booking h2{font-size:15vw;line-height:1.1}.booking-kicker .eyebrow{font-size:10px}.booking-heading{margin-top:30px}.booking-heading .round-link{width:110px;height:110px;font-size:15px}.booking-bottom{margin-top:20px}.booking-bottom>p{font-size:16px}.booking-places>a{font-size:14px;padding:18px 0}.footer-bottom{font-size:12px}.footer-top>div{font-size:13px}.footer-wordmark{font-size:23vw}
.location-heading h1{font-size:13.5vw}.location-intro p{font-size:16px}.location-breadcrumb{font-size:12px;gap:10px 18px}.location-image-set{height:460px}.location-main-photo{width:94%;height:380px}.location-small-photo{width:43%;height:220px;top:195px;right:0}.location-small-photo figcaption{font-size:9px}.location-facts{padding-top:0;font-size:13px}.location-image-word{display:none}.person>p{font-size:13px}.person h3{font-size:22px}.gallery-header h2{font-size:48px}.price-opening-foot p{font-size:14px}.price-sidebar nav a{font-size:14px}.price-note{font-size:13px}.price-table{font-size:14px}.price-title h2{font-size:33px}.price-opening h1{font-size:14.5vw}
}
@media(max-width:374px){
.header-inner{gap:10px}.brand{font-size:24px}.header-end{gap:3px}.cinematic-hero{min-height:660px}.hero-title{top:17%}.hero-tagline{font-size:30px}.hero-bottomline>p{font-size:13px}.hero-reserve{font-size:18px}.pause-image{height:360px}.pause-copy{margin-left:10%}.tour-frame{height:350px}.tour-copy h3{font-size:45px}.people-story-title h2{font-size:53px}.service-row h3{font-size:30px}.section-title h2{font-size:47px}.person h3{font-size:19px}.price-table td{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.hero-photograph img,.pause-image img{transform:none!important}.tour-enhanced{height:auto}.hero-reserve:hover .reserve-symbol{transform:none}}
/* Review refinement: different typographic cadence, clear captions, deliberate image entry. */
.people-story-title h2{font-size:clamp(90px,10vw,155px);line-height:.92;letter-spacing:-.075em}
.people-story-title>p:not(.eyebrow){align-self:center}
.location-small-photo figcaption{display:none}
.tour-enhanced .tour-frame img{clip-path:inset(0 0 0 6%);transition:transform 1.6s cubic-bezier(.2,.7,.2,1),clip-path 1.2s cubic-bezier(.2,.7,.2,1)}
.tour-enhanced .is-active .tour-frame img{clip-path:inset(0)}
.tour-enhanced .tour-copy h3 span{margin-left:12px}
@media(max-width:999px){.people-story-title h2{font-size:100px}}
@media(max-width:700px){.people-story-title h2{font-size:25vw;margin-bottom:25px}.location-small-photo{height:200px}.location-image-set{height:440px}}
@media(prefers-reduced-motion:reduce){.tour-frame img{clip-path:none!important}}
/* Signature moments: portrait spread, Barber poster, typographic finale. */
.service-layout{grid-template-columns:.75fr 1.6fr;gap:7%;position:relative}
.service-still{border-radius:0;height:540px;margin-top:0;clip-path:polygon(0 0,86% 0,100% 12%,100% 100%,0 100%)}
.service-row{padding:32px 0;position:relative;grid-template-columns:35px 1fr 36px;gap:14px}
.service-row h3{font-family:DM,sans-serif;font-size:clamp(40px,4.8vw,76px);font-weight:400;letter-spacing:-.065em;line-height:1.08}
.service-row:nth-child(2) h3{font-family:Bodoni,serif;font-style:italic;font-size:clamp(48px,5.6vw,90px)}
.service-row:nth-child(3){margin-left:9%}.service-row p{margin-top:0}.service-ordinal{font-size:12px}
.people-story{padding:0;overflow:clip}
.people-sticky{padding-top:85px;padding-bottom:70px;position:relative}
.people-story-title{display:grid;grid-template-columns:1fr 1fr;gap:20px 8%;position:relative;z-index:5}
.people-story-title .eyebrow{grid-column:1;max-width:none}
.people-story-title h2{grid-column:1;grid-row:2/4;font-size:clamp(110px,16vw,245px);margin:0}
.people-story-title>p:not(.eyebrow){grid-column:2;max-width:340px;align-self:end}
.people-story-title>.underlink{grid-column:2;justify-self:start;margin:0}
.people-montage{display:grid;grid-template-columns:1fr 1.05fr .95fr;gap:0;margin:35px 5% 0 15%;overflow:visible}
.people-montage .portrait{position:relative;margin:0;min-width:0}
.people-montage .portrait-0{transform:rotate(-5deg);z-index:2;margin-top:50px}
.people-montage .portrait-1{transform:rotate(3deg);z-index:3;margin-left:-8%;margin-right:-5%}
.people-montage .portrait-2{transform:rotate(-3deg);z-index:1;margin-top:100px}
.people-montage .portrait img{aspect-ratio:3/3.7;object-position:center 25%;border:7px solid #d9cec8;filter:saturate(.4);box-shadow:15px 30px 50px #120b1659}
.people-montage .portrait figcaption{border:0;padding:16px 9px;display:flex;justify-content:space-between;gap:10px;font-size:18px}
.people-folio{display:block;font-size:10px;letter-spacing:.18em;margin-top:45px;color:#dbbfaa}
.people-enhanced{height:180svh}
.people-enhanced .people-sticky{position:sticky;top:80px;height:calc(100svh - 80px);min-height:680px;padding-top:40px;padding-bottom:25px}
.people-enhanced .people-story-title h2{font-size:15vw}
.people-enhanced .people-montage{position:absolute;left:20%;right:7%;top:31%;margin:0;transform:translateX(calc(8vw - var(--people-progress,0)*16vw))}
.people-enhanced .portrait img{height:clamp(300px,43svh,490px);aspect-ratio:auto;width:100%}
.people-enhanced .portrait-0{transform:translateY(calc(35px - var(--people-progress,0)*35px)) rotate(-5deg)}
.people-enhanced .portrait-2{transform:translateY(calc(-20px + var(--people-progress,0)*40px)) rotate(-3deg)}
.people-enhanced .people-folio{position:absolute;bottom:30px;left:var(--gutter)}
.barber-band{background:#1c1b1b;color:#ece6df;padding-top:65px;overflow:hidden;position:relative}
.barber-heading{position:relative;z-index:2}.barber-heading .eyebrow{color:#c8b19b}
.barber-heading h2{line-height:.82;margin-top:35px;white-space:normal}
.barber-heading h2>span{display:block;font:italic 400 clamp(45px,5vw,80px)/1 Bodoni,serif;color:#d2b79e;margin-left:8px;margin-bottom:20px}
.barber-heading strong{display:block;font:400 19.7vw/.82 DM,sans-serif;letter-spacing:-.075em;text-transform:uppercase;position:relative;z-index:3}
.barber-stage{height:720px;margin-top:-15px;isolation:isolate}
.barber-stage>figure{inset:0 0 0 29%;height:100%;clip-path:inset(0);overflow:hidden}
.barber-stage>figure img{filter:grayscale(1) brightness(.8);object-position:center 55%;transform:scale(calc(1.08 - var(--barber-progress,0)*.06))}
.barber-stage>figure:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1c1b1b,transparent 35%),linear-gradient(0deg,#1c1b1b80,transparent 60%)}
.barber-note{left:var(--gutter);right:auto;top:140px;background:none;box-shadow:none;padding:0;width:350px}
.barber-note h3{font-size:80px;line-height:.95;margin:30px 0}.barber-note .eyebrow{color:#c8b19b;max-width:220px;line-height:1.7}
.barber-note .underlink{display:table}.barber-note .button{margin-top:25px}.barber-side{color:#e9dacc;right:24px;top:70px}
.booking{position:relative;padding-top:70px;padding-bottom:60px;background:radial-gradient(ellipse at 65% 35%,#f5e4cb 0%,#ddbb99 60%,#ba8f76 100%);overflow:hidden}
.booking-heading{display:block;position:relative;margin-top:65px}
.booking h2{font-size:clamp(90px,13.5vw,215px);line-height:.9;letter-spacing:-.065em}
.booking h2 i{display:block;text-align:right;margin-right:4%;font-weight:400}
.booking-signature{display:flex;justify-content:space-between;align-items:center;margin:50px 0 0 40%;padding:20px 0;border-bottom:1px solid #725346;font-size:clamp(30px,3.5vw,56px);letter-spacing:-.055em;gap:30px}
.booking-signature>span:last-child{font-family:Arial,sans-serif;font-size:1.5em;transition:transform .35s}.booking-signature:hover>span:last-child{transform:translate(5px,-5px)}
.booking-bottom{margin-top:65px;grid-template-columns:1fr 1.5fr;gap:10%}.booking-places{gap:0 35px}
@media(max-width:999px){
.people-sticky{padding-top:65px}.people-story-title h2{font-size:17vw}.people-montage{margin-left:5%;margin-right:5%}.people-montage .portrait-2{margin-top:90px}.people-montage .portrait figcaption{display:block;font-size:17px}.portrait figcaption span{display:block;margin-top:5px}
.service-still{height:440px}.service-row h3{font-size:42px}.service-row:nth-child(2) h3{font-size:54px}
.barber-stage{height:650px}.barber-note{width:290px;top:100px}.barber-note h3{font-size:65px}.barber-stage>figure{left:25%}
.booking h2{font-size:14vw}.booking-signature{margin-left:28%;font-size:40px}
}
@media(max-width:700px){
.service-layout{display:block}.service-still{display:block;width:48%;height:230px;margin:10px 0 32px auto}.service-still figcaption{font-size:8px;left:8px;right:8px;bottom:15px}.service-row{grid-template-columns:22px 1fr 25px;padding:25px 0;gap:10px}.service-row h3{font-size:39px}.service-row:nth-child(2) h3{font-size:49px}.service-row:nth-child(3){margin-left:0}.service-row p{font-size:13px}.service-ordinal{font-size:10px}
.people-sticky{padding-top:55px;padding-bottom:55px}.people-story-title{display:block}.people-story-title h2{font-size:26vw;margin:25px 0}.people-story-title>p:not(.eyebrow){max-width:290px;font-size:16px}.people-story-title>.underlink{margin-top:20px}
.people-montage{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:40px calc(-1 * var(--gutter)) 0;padding:10px var(--gutter) 25px;gap:22px;scroll-padding:var(--gutter)}
.people-montage .portrait{flex:0 0 78%;transform:none;margin:0!important;scroll-snap-align:start}.people-montage .portrait:nth-child(2){padding-top:35px}.people-montage .portrait img{aspect-ratio:3/4;border-width:5px}.people-montage .portrait figcaption{display:flex;font-size:18px}.portrait figcaption span{margin:0;font-size:12px}.people-folio{margin-top:15px;font-size:9px}
.barber-band{padding-top:50px}.barber-heading h2{margin-top:30px}.barber-heading h2>span{font-size:45px;margin:0 0 18px}.barber-heading strong{font-size:20vw}.barber-stage{height:auto;margin-top:25px;padding-bottom:50px;display:flex;flex-direction:column}.barber-stage>figure{position:relative;inset:auto;height:370px;width:100%;clip-path:none}.barber-stage>figure img{object-position:65% 50%;transform:none;filter:grayscale(1) brightness(.85)}.barber-stage>figure:after{background:linear-gradient(0deg,#1c1b1b,transparent 30%)}.barber-note{position:relative;inset:auto;width:auto;padding:0 var(--gutter);margin-top:-5px}.barber-note h3{font-size:66px;line-height:.96;margin:23px 0}.barber-note .eyebrow{max-width:none;font-size:10px}.barber-note .button{margin-top:12px}.barber-side{display:none}
.booking{padding-top:45px;padding-bottom:50px}.booking-heading{margin-top:45px}.booking h2{font-size:16vw;line-height:.98}.booking h2 i{margin:8px 0 0;text-align:right;white-space:nowrap}.booking-signature{margin:35px 0 0 12%;font-size:33px;padding:14px 0}.booking-bottom{margin-top:40px;display:block}.booking-bottom>p{font-size:15px}.booking-places{margin-top:25px;gap:0 22px}.booking-kicker .eyebrow{font-size:9px}
}
@media(max-width:374px){.service-row h3{font-size:33px}.service-row:nth-child(2) h3{font-size:41px}.people-montage .portrait figcaption{font-size:15px}.barber-note h3{font-size:58px}}
@media(prefers-reduced-motion:reduce){.people-montage,.people-montage .portrait,.barber-stage>figure img{transform:none!important}.booking-signature>span:last-child{transition:none}}
/* Review correction: overlapping photographs must never compete with names. */
@media(min-width:701px){.people-montage .portrait figcaption{position:relative;background:#352730;padding:13px 14px;margin-top:0;box-shadow:10px 18px 25px #160c1722}.people-montage .portrait img{border-width:3px}}
@media(min-width:1000px) and (max-height:850px){.people-enhanced .people-montage{top:34%}.people-enhanced .portrait img{height:38svh}.people-enhanced .portrait-2{margin-top:65px}}
/* Reference-led refinement: real Blondie imagery, cinematic rooms, touch-led browsing. */
.cinematic-hero{isolation:isolate}
.hero-photograph{inset:0;z-index:-3}
.cinematic-hero .hero-photograph img{object-position:50% 48%;filter:saturate(.55) brightness(.57) sepia(var(--season-photo-warmth,0));transform:scale(calc(1.04 + var(--cover-progress,0)*.07))}
.hero-shade{background:linear-gradient(90deg,#291c25f5 0%,#291c25c9 32%,#291c2540 65%,#291c2530),linear-gradient(0deg,#21171ee8 0%,transparent 40%);z-index:-2}
.hero-editorial{position:absolute;right:9%;top:13%;width:min(31vw,420px);aspect-ratio:3/4;z-index:1;box-shadow:24px 36px 80px #120a1359;transform:translateY(calc(var(--cover-progress,0)*-45px)) rotate(2deg)}
.hero-editorial img{object-fit:cover;filter:saturate(.75);clip-path:polygon(0 0,100% 0,100% 93%,90% 100%,0 100%)}
.hero-editorial figcaption{position:absolute;bottom:25px;left:20px;right:35px;font-size:9px;letter-spacing:.13em;color:#fff;text-shadow:0 1px 6px #000}
.hero-editorial figcaption a{display:flex;justify-content:space-between;gap:15px;min-height:35px;align-items:center}.hero-editorial figcaption span{font-size:18px}
.hero-title{top:10%;z-index:3;pointer-events:none}.hero-title h1{font-size:clamp(130px,13.6vw,220px)}.hero-title h1 i{font-size:1.72em}.hero-tagline{margin-top:18px}
.hero-bottomline{z-index:4}.hero-side-note{z-index:2}
.hero-reserve .reserve-symbol{transition:transform .45s,background .45s}.hero-reserve:hover .reserve-symbol{transform:rotate(90deg) scale(1.06)}
.tour-enhanced .tour-frame img{width:100%;margin:0;object-position:65% 50%;transform:scale(1.075);clip-path:inset(0 0 0 5%)}
.tour-enhanced .is-active .tour-frame img{transform:scale(calc(1.045 + var(--room-progress,0)*.025)) translateX(calc(var(--room-progress,0)*-10px));clip-path:inset(0);transition:clip-path 1.1s cubic-bezier(.2,.7,.2,1)}
.tour-enhanced .tour-frame:after{background:linear-gradient(90deg,#251b23eb 0%,#251b23a8 28%,#251b2310 78%),linear-gradient(0deg,#251b23ec,transparent 35%,transparent 65%,#251b23a0)}
.tour-enhanced .tour-copy{top:35%}.tour-enhanced .tour-copy h3{text-shadow:0 6px 35px #1b111535}
.tour-enhanced .tour-nav button[aria-pressed=true] .tour-progress{width:calc(var(--room-progress,0)*100%);transition:none}
.service-still{max-width:370px;height:auto;aspect-ratio:3/4;margin-top:20px}.service-still img{filter:saturate(.85);object-position:center}.service-still figcaption{font-size:9px;text-align:left;background:#291c2599;padding:11px 13px;left:0;right:0;bottom:0;text-shadow:none}
.portrait figcaption>a{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:30px}.portrait figcaption>a:hover{color:#e1c19c}.portrait figcaption>a:focus-visible{outline-color:#ead0ad}
.people-enhanced .people-montage{transform:translateX(calc(10vw - var(--people-progress,0)*20vw))}
.has-motion .image-reveal>figure{clip-path:inset(0 8% 0 12%);transition:clip-path 1.15s cubic-bezier(.2,.7,.2,1)}
.has-motion .image-reveal.visible>figure{clip-path:inset(0)}
.booking-signature{position:relative}.booking-signature:after{content:'';position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s}.booking-signature:hover:after,.booking-signature:focus-visible:after{transform:scaleX(1)}
@media(min-width:1000px) and (max-height:850px){.hero-editorial{width:min(28vw,350px);top:12%;right:10%}.hero-title{top:9%}.hero-title h1{font-size:12vw}.hero-tagline{font-size:3vw}.hero-bottomline{bottom:28px}}
@media(max-width:999px){
.hero-editorial{width:36vw;right:7%;top:26%}.hero-title{top:14%}.hero-title h1{font-size:19vw}.hero-title h1 i{font-size:1.6em}.hero-tagline{font-size:4.7vw}.hero-bottomline{grid-template-columns:1fr 1fr}.hero-editorial figcaption{font-size:8px;left:15px;right:25px}
.tour-touch{height:auto;overflow:hidden}.tour-touch .tour-sticky{position:relative;top:auto;height:auto;min-height:0;padding-top:60px}
.tour-touch .tour-head{padding-bottom:30px}.tour-touch .tour-instruction{max-width:none}
.tour-touch .tour-stage{display:flex;gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:var(--gutter);padding-bottom:20px;scrollbar-width:none;position:relative}.tour-touch .tour-stage::-webkit-scrollbar{display:none}
.tour-touch .tour-panel{flex:0 0 100%;display:grid;grid-template-columns:1fr 1fr;gap:30px;scroll-snap-align:start;padding:0;position:relative;opacity:1;visibility:visible;transform:none;min-width:0}
.tour-touch .tour-frame{height:470px;clip-path:polygon(0 0,100% 0,100% 91%,88% 100%,0 100%)}.tour-touch .tour-copy{align-self:center}.tour-touch .tour-copy h3{font-size:62px}.tour-touch .tour-number{display:none}
.tour-touch .tour-nav{display:grid;grid-template-columns:repeat(4,1fr);position:relative;inset:auto;padding-top:20px;padding-bottom:45px;gap:20px}.tour-touch .tour-nav button{font-size:12px;min-height:52px}.tour-touch .tour-nav button>span:first-child{display:block;font-size:10px;margin-bottom:8px}.tour-touch .tour-progress{transition:width .3s}
}
@media(max-width:700px){
.cinematic-hero{height:calc(100svh - 72px);min-height:760px;max-height:940px}
.cinematic-hero .hero-photograph img{object-position:62% 50%;transform:none;filter:saturate(.6) brightness(.5) sepia(var(--season-photo-warmth,0))}
.hero-shade{background:linear-gradient(90deg,#291c25c0,transparent),linear-gradient(0deg,#21171ef5,transparent 60%)}
.hero-title{top:13%;left:var(--gutter)}.hero-title h1{font-size:27vw}.hero-title h1 i{font-size:1.65em;line-height:.93}.hero-tagline{font-size:8.2vw;max-width:180px;line-height:1.08;margin:18px 0 0 4px}
.hero-editorial{top:25%;right:0;width:56%;max-width:260px;transform:rotate(3deg);box-shadow:12px 18px 35px #120a1359}.hero-editorial img{clip-path:polygon(0 0,100% 0,100% 93%,90% 100%,0 100%)}.hero-editorial figcaption{bottom:14px;left:12px;right:18px;font-size:7px;letter-spacing:.05em}.hero-editorial figcaption span{font-size:13px}
.hero-bottomline{bottom:24px}.hero-bottomline>p{max-width:260px;font-size:13px}.hero-reserve{margin-top:16px}.hero-topline{gap:20px}
.tour-touch .tour-sticky{padding-top:50px}.tour-touch .tour-head h2{font-size:50px}.tour-touch .tour-instruction{font-size:13px;max-width:260px}.tour-touch .tour-head{padding-bottom:28px}
.tour-touch .tour-stage{gap:16px;padding-right:var(--gutter)}.tour-touch .tour-panel{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:22px;flex-basis:100%}
.tour-touch .tour-frame{height:370px;flex-shrink:0}.tour-touch .tour-frame figcaption{font-size:10px;padding:18px 18px 28px}.tour-touch .tour-copy{align-self:stretch}.tour-touch .tour-copy h3{font-size:47px}.tour-touch .tour-copy .eyebrow{font-size:10px}.tour-touch .tour-count{font-size:13px;margin-top:18px}.tour-touch .tour-actions{margin-top:18px;gap:22px}.tour-touch .tour-actions .button{padding:13px 22px;font-size:13px}
.tour-touch .tour-nav{grid-template-columns:1fr 1fr;gap:10px 22px;padding-top:10px;padding-bottom:40px}.tour-touch .tour-nav button{font-size:12px;min-height:50px;text-align:left;display:flex;align-items:center;gap:12px}.tour-touch .tour-nav button>span:first-child{margin:0;font-size:10px}
.service-still{width:62%;max-width:250px;height:auto;aspect-ratio:3/4;margin:15px 0 35px auto}.service-still figcaption{font-size:7px;padding:9px}.portrait figcaption>a{font-size:18px}.portrait figcaption>a span{font-size:12px}
.has-motion .image-reveal>figure{clip-path:none;transition:none}
}
@media(prefers-reduced-motion:reduce){.hero-editorial{transform:none}.cinematic-hero .hero-photograph img{transform:none}.tour-frame img{transform:none!important;clip-path:none!important}.booking-signature:after{transition:none}}

/* Review: keep attribution legible and show the rooms above their foreground details. */
.hero-editorial figcaption{bottom:-43px;left:0;right:0;color:#f0ded0;text-shadow:none;font-size:10px}
.hero-editorial img{filter:saturate(.75) sepia(.08)}
.tour-enhanced #tour-sidumuli .tour-frame img{object-position:50% 12%}
.tour-enhanced #tour-kringlan .tour-frame img{object-position:50% 23%}
.tour-enhanced #tour-gardatorg .tour-frame img{object-position:50% 34%}
@media(max-width:700px){.hero-editorial figcaption{font-size:8px;bottom:-37px;left:8px;right:12px}}
/* Mobile is a separate composition: the photograph follows the headline, not the face. */
@media(max-width:700px){.hero-editorial{top:42%;width:50%;right:0}.hero-title h1{font-size:25vw}.hero-title h1 i{font-size:1.65em}.hero-tagline{font-size:29px;max-width:130px}.hero-editorial figcaption{font-size:9px;letter-spacing:0;left:2px;right:8px;bottom:-36px}}

/* Keep image masking on a wrapper so resizing does not lose the image layer. */
.hero-editorial-frame{position:absolute;inset:0;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 93%,90% 100%,0 100%)}
.hero-editorial .hero-editorial-frame img{position:absolute;inset:0;clip-path:none;filter:none;transform:translateZ(0)}
.service-still figcaption{font-size:10px;line-height:1.4}.service-still figcaption a{display:flex;align-items:center;min-height:28px}
@media(max-width:700px){.hero-editorial figcaption{font-size:10px;bottom:-46px}.hero-editorial figcaption a{min-height:44px;line-height:1.3}.service-still figcaption{font-size:10px;padding:9px 12px}}

@media(max-width:700px){.hero-editorial{width:48%}}
