/* Red and black art direction inspired by the supplied barber references. */
@font-face{font-family:Oswald;src:url('/assets/fonts/oswald-variable.ttf') format('truetype');font-weight:200 700;font-display:swap}
:root{--bg:#0c0708;--paper:#f2ece8;--muted:#b3a4a6;--line:#ffffff1b;--red:#da2637;--gold:#ef5963}
body{background:#0c0708;color:var(--paper)}
header{position:relative;height:105px;gap:24px;border-bottom:1px solid #ffffff20}
.logo{font-family:Oswald,Arial,sans-serif;font-size:43px;letter-spacing:-1px;font-weight:700;line-height:.95}.logo span{font-family:Manrope,Arial;font-size:11px;letter-spacing:2px;margin-top:8px;color:var(--gold)}
nav{font-size:12px;gap:30px}.header-book,.button{font-size:12px;font-weight:600;padding:17px 24px;box-shadow:0 8px 28px #da263725}
.hero{height:auto;max-height:none;min-height:745px;padding:50px 6% 150px;display:block;isolation:isolate;background:radial-gradient(ellipse at 80% 25%,#68121e65,transparent 65%),linear-gradient(145deg,#11090b,#090607)}
.hero:after{display:block;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 4px,#ffffff01 4px 5px)}
.hero-copy{position:relative;width:50%;max-width:720px}.hero .eyebrow{color:var(--gold);font-size:10px;letter-spacing:2px}
.hero-photo{inset:38px 5% 138px 58%;z-index:0;border-radius:28px;overflow:hidden;border:1px solid #ef59634d;box-shadow:0 24px 70px #0007,0 0 65px #da26371a}
.hero-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#18070b9c,transparent 35%),linear-gradient(90deg,#14080b30,transparent 45%)}
.hero-photo img,.hero-photo>video{filter:none;object-position:50% 40%}
.hero h1{font-family:Oswald,Arial,sans-serif;font-weight:600;text-transform:uppercase;font-size:clamp(64px,6.5vw,102px);line-height:1.06;letter-spacing:-1.5px;margin:24px 0 24px;overflow-wrap:anywhere}.hero h1 em{font-family:inherit;font-weight:600;font-style:normal;color:var(--red);display:block;text-shadow:0 8px 42px #da263720}
.hero p{font-size:14px;color:#baadaf;line-height:1.85;max-width:440px}.hero-actions{margin-top:27px;flex-wrap:wrap;gap:24px}.hero .button{font-size:12px;padding:20px 25px}.hero-more{font-size:12px}.hero-more span{margin-left:10px}.hero-bottom{height:112px;border-top-color:#ef596333}.hero-details{gap:50px}.hero-details span{font-size:9px;color:#b3a4a6}.hero-details b{font-size:13px;color:var(--paper)}.hero-signature{color:var(--paper)}.scroll-link{font-size:11px;color:#b3a4a6}
h2,h3{font-family:Oswald,Arial,sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:-.5px}h2{font-size:clamp(45px,4.6vw,70px);line-height:1.12}h2 em{font-family:inherit;font-weight:500;font-style:normal;color:var(--red)}
.section{padding:90px 6%}.section-heading{margin-bottom:42px;align-items:flex-end}.section-heading p{font-size:13px;line-height:1.85;color:#b3a4a6}.eyebrow{font-size:10px;color:var(--gold)}
.stories{margin:0 6% 30px;padding:26px 32px;border:1px solid #ef596333;border-radius:24px;background:linear-gradient(110deg,#201013,#10090b);box-shadow:0 12px 36px #0003;gap:48px}.story-intro .eyebrow{font-size:8px}.story-intro h2{font-family:Oswald;font-size:27px;margin-top:8px;letter-spacing:0}.story-list{gap:24px}.story{min-width:90px}.story img{width:74px;height:74px;filter:none;border-color:#6e454b}.story.has-stories img{border-color:var(--red);box-shadow:0 0 18px #da26371a}.story span{font-size:12px;color:var(--paper)}
.services{background:radial-gradient(ellipse at 50% 40%,#47101945,transparent 75%),#10080a;color:var(--paper);border-top:1px solid #ffffff0e}.services .eyebrow,.services em{color:var(--gold)}.services .section-heading p{color:#b3a4a6}
.price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.price-row{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:30px;min-height:195px;padding:25px 22px;border:1px solid #ef596335!important;border-radius:20px;background:linear-gradient(145deg,#251216,#130b0e);box-shadow:0 14px 30px #0002;font-size:14px;line-height:1.6;transition:border-color .3s,background .3s,transform .3s}
.price-row>span{width:100%;min-width:0}.price-row small{display:block;color:var(--gold);font-family:Oswald;font-size:13px;letter-spacing:2px;margin:0 0 12px}.price-row b{font-family:Oswald;font-size:32px;font-weight:500;color:var(--paper)}
.price-row:nth-child(3){background:linear-gradient(135deg,#a61c2b,#da2637);border-color:#f66571!important}.price-row:nth-child(3) small,.price-row:nth-child(3) b{color:#fff}
.gift{margin-top:28px;background:#1e1014;border-color:#ef59634d;border-radius:24px;box-shadow:inset 4px 0 0 var(--red),0 12px 30px #0002;padding:30px 32px;gap:30px}.gift-label{color:var(--gold)}.gift p{font-family:Oswald;font-size:28px;color:var(--paper)}.gift b{font-size:12px;color:#b3a4a6;opacity:1}.gift a{font-size:12px;color:var(--paper)}
.team{background:radial-gradient(ellipse at 90% 20%,#4a101b30,transparent 60%),#0b0708}.team-grid{gap:32px;align-items:stretch}.barber{background:linear-gradient(150deg,#251216,#100a0d);border:1px solid #ef596333;border-radius:26px;padding:12px;box-shadow:0 20px 42px #0003;display:flex;flex-direction:column;min-width:0;transition:border-color .3s}.portrait{border-radius:16px;box-shadow:none;border-color:#ffffff12}.portrait img{aspect-ratio:4/4.3;max-height:550px;filter:none}.portrait>span{font-size:13px;left:24px;bottom:24px}.barber-info{margin:0;min-height:115px;padding:23px 12px 12px;gap:18px}.barber-info small{font-size:9px;color:var(--gold);letter-spacing:1.6px}.barber-info h3{font-size:40px;margin-top:10px}.circle{width:50px;height:50px;flex-shrink:0;border-color:#ef596355;color:var(--gold);background:#ffffff03}
.place{background:linear-gradient(160deg,#230e14,#10080b);border-block:1px solid #ef596315}.place-grid>img,.place-grid>video{filter:none;border-color:#ef596333;box-shadow:0 16px 40px #0005;height:auto;aspect-ratio:4/3;object-position:50% 40%}.place-grid>img:nth-child(2){height:auto;aspect-ratio:4/3}.amenities{font-size:12px;line-height:1.6;color:#b3a4a6;border-top-color:#ef596330;margin-top:40px}
.contact{background:radial-gradient(ellipse at 10% 60%,#63132435,transparent 70%),#0d0709;color:var(--paper);border-top:1px solid #ef596330;padding:90px 6%}.contact .eyebrow,.contact em{color:var(--gold)}.contact p{color:#b3a4a6;font-size:14px}.contact .phone{color:var(--paper);font-family:Oswald;font-size:35px;letter-spacing:.5px}.contact .text-link{color:var(--paper);border-bottom-color:#ef596366;font-size:12px}.contact .button{font-size:12px}.contact .muted{font-size:11px}.contact h2{font-size:68px}.location-photo{height:420px;border-color:#ef596333;box-shadow:0 18px 42px #0005}.location-photo img{filter:none}.location-photo a{background:#190b10f2;border-color:#ef596340;color:var(--paper);font-size:12px}
footer{background:#090607;border-top-color:#ef596325}footer .logo span{color:var(--gold)}footer>span,footer>a:last-child{font-size:10px;color:#b3a4a6}
dialog{background:#180b10;border-color:#ef596340}.story-viewer{background:#090607}.story-stage{background:#180b10}.preview-badge{bottom:0}
.hero-copy,.hero-photo{animation:stop-arrive .6s ease-out both}.hero-photo{animation-delay:.08s}@keyframes stop-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.price-row:hover{border-color:var(--red)!important;transform:translateY(-4px)}.barber:hover{border-color:#ef596385}.portrait:hover{transform:none}.circle:hover{background:#da263718;border-color:var(--red);box-shadow:0 0 20px #da263720}.story:hover img{border-color:var(--gold);box-shadow:0 0 16px #da263725}}
@media(max-width:1100px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-row{min-height:180px}.hero h1{font-size:75px}.hero{min-height:700px}.hero-photo{left:57%}.hero-copy{width:48%}.hero-actions{gap:16px}.section-heading p{font-size:12px}}
@media(max-width:900px){.hero{display:flex;flex-direction:column;gap:30px;padding:40px 6% 0;min-height:0}.hero-copy{width:100%;max-width:650px;order:0}.hero h1{font-size:78px}.hero-photo{position:relative;inset:auto;width:100%;height:390px;order:1;animation-delay:0s;flex-shrink:0}.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;order:2;width:100%;min-height:105px;height:auto;padding:24px 0}.hero-signature{display:none}.hero-actions{flex-direction:row;align-items:center;gap:24px}.stories{margin-top:18px}.contact h2{font-size:60px}}
@media(max-width:640px){header{height:92px;margin:0 6%;gap:14px}.logo{font-size:36px}.logo span{font-size:10px;letter-spacing:1.8px}.header-book{font-size:10px;padding:14px 16px}.header-book span{margin-left:10px}.hero{padding:30px 6% 0;gap:26px}.hero .eyebrow{font-size:8px;letter-spacing:1.2px}.hero h1{font-size:clamp(48px,14.5vw,76px);letter-spacing:-.5px;margin:22px 0;line-height:1.1}.hero p{font-size:13px;margin:0;line-height:1.85}.hero-actions{margin-top:24px;gap:18px}.hero .button{font-size:11px;padding:17px 21px;gap:20px}.hero-more{font-size:11px}.hero-photo{height:300px;border-radius:22px}.hero-bottom{padding:20px 0;min-height:92px}.hero-details{gap:20px}.hero-details span{font-size:8px}.hero-details b{font-size:11px;margin-top:9px}.section{padding:60px 6%}.section-heading{margin-bottom:30px}.section-heading p{font-size:12px;line-height:1.85}h2{font-size:clamp(36px,10vw,50px);line-height:1.16;letter-spacing:0}.stories{margin:18px 6% 24px;padding:24px 18px;border-radius:22px}.story-intro{margin-bottom:20px}.story-intro h2{font-size:26px}.story-list{gap:14px}.story{min-width:74px;padding:3px}.story img{width:66px;height:66px}.story span{font-size:11px}.price-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.price-row{padding:20px 16px;min-height:180px;font-size:12px;gap:20px;border-radius:18px}.price-row small{font-size:11px;margin-bottom:10px}.price-row b{font-size:27px}.gift{padding:25px 22px;gap:18px}.gift p{font-size:25px;line-height:1.3}.gift b{font-size:11px;line-height:1.7}.gift a{font-size:12px}.team-grid{grid-template-columns:1fr;gap:24px}.barber{padding:10px;border-radius:24px}.portrait{border-radius:15px}.portrait img{max-height:460px;aspect-ratio:4/4.4}.portrait>span{font-size:13px;left:20px;bottom:22px}.barber-info{padding:22px 10px 12px;min-height:105px}.barber-info small{font-size:9px}.barber-info h3{font-size:36px}.circle{width:46px;height:46px}.amenities{font-size:11px;margin-top:30px;gap:20px}.contact{padding:60px 6%;gap:32px}.contact h2{font-size:52px}.contact p{font-size:13px}.contact .phone{font-size:30px}.contact .muted{font-size:11px;line-height:1.7}.contact-actions{gap:22px}.location-photo{height:310px}.location-photo a{font-size:12px;padding:18px}footer{padding:35px 6%}footer .logo{font-size:32px}footer>a:last-child{font-size:10px}}
@media(max-width:360px){.logo{font-size:32px}.logo span{font-size:9px}.header-book{padding:12px 13px;font-size:9px}.hero-photo{height:260px}.hero-actions{gap:13px}.hero .button{font-size:10px;padding:16px 17px;gap:12px}.hero-more{font-size:10px}.story-list{gap:8px}.story{min-width:70px}.story img{height:60px;width:60px}.price-row{padding:18px 13px;font-size:11px;min-height:180px}.price-row b{font-size:25px}.contact .phone{font-size:27px}}
@media(prefers-reduced-motion:reduce){.hero-copy,.hero-photo{animation:none}.price-row:hover{transform:none}}

/* Keep the edited portraits and barber tools fully in frame. */
.portrait img{aspect-ratio:4/5;max-height:none;height:auto}
@media(max-width:640px){.portrait img{aspect-ratio:4/5;max-height:none;height:auto}}
.barber:nth-child(2){padding-top:12px}
@media(max-width:640px){.barber:nth-child(2){padding-top:10px}}
/* Slim scrollbars follow the site's red and black palette. */
html{color-scheme:dark}
*{scrollbar-width:thin;scrollbar-color:var(--red,#da2637) #10090d}
@supports selector(::-webkit-scrollbar){
  *{scrollbar-width:auto}
  ::-webkit-scrollbar{width:6px;height:6px}
  ::-webkit-scrollbar-track{background:#10090d;border-radius:999px}
  ::-webkit-scrollbar-thumb{background:var(--red,#da2637);border-radius:999px}
  ::-webkit-scrollbar-thumb:hover{background:var(--gold,#ef5963)}
  ::-webkit-scrollbar-button{display:none;width:0;height:0}
  ::-webkit-scrollbar-corner{background:#10090d}
}
