:root{--gold:#d0ab69;--muted:#aca79c;--bg:#090909;--line:#393022}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:#f1eee6;font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{height:94px;padding:0 5%;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);background:#090909f5;position:sticky;top:0;z-index:20}.logo{font:26px Georgia,serif;white-space:nowrap;letter-spacing:1px}.logo span{color:var(--gold)}.logo small{display:block;font:9px Arial,sans-serif;letter-spacing:1.6px;margin-top:8px}nav{display:flex;gap:23px;margin-left:auto}nav a{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#d9d4c9}nav a:hover,.text-link:hover{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;background:linear-gradient(110deg,#b88941,#e2c184);color:#111;padding:13px 24px;text-transform:uppercase;letter-spacing:1.1px;font-size:12px;font-weight:bold;min-height:46px;border:1px solid var(--gold);transition:filter .2s}.button:hover{filter:brightness(1.18)}.outline{background:transparent;color:var(--gold)}.menu{display:none}.hero{min-height:660px;position:relative;background:url('shop.jpeg') center/cover;border-bottom:1px solid var(--gold);display:flex;align-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#050505f7 0%,#050505d9 35%,#05050550 68%,#05050530),linear-gradient(0deg,#0007,transparent)}.hero-copy{position:relative;padding:65px 0 65px 10%;max-width:770px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:bold;color:var(--gold);text-transform:uppercase;margin:0 0 15px}h1{font:clamp(48px,5.5vw,82px)/.99 Georgia,serif;text-transform:uppercase;letter-spacing:-2px;margin:20px 0 26px}h1 em{font-style:normal;color:var(--gold)}.hero-copy>p:not(.eyebrow){color:#c4c0b7;font-size:17px;line-height:1.6}.actions{display:flex;gap:12px;margin-top:28px}.hero-foot{display:block;margin-top:45px;font-size:10px;letter-spacing:2px;color:#b5aa93}.hero-number{position:absolute;right:4%;bottom:35px;color:var(--gold);font:30px Georgia}.hero-number span{font:10px Arial;letter-spacing:2px;display:block}.intro{padding:70px 7%;display:grid;grid-template-columns:1fr 1.5fr .55fr;gap:60px;align-items:center;border-bottom:1px solid var(--line)}h2{font:clamp(32px,3.5vw,48px)/1.15 Georgia,serif;margin:0 0 16px}h3{font:22px/1.3 Georgia,serif;margin:5px 0 12px}.intro>p{color:var(--muted);max-width:600px}.intro-mark{text-align:center;border-left:1px solid var(--line)}.intro-mark strong{font:68px Georgia;color:var(--gold)}.intro-mark span{font-size:9px;letter-spacing:2px;display:block}.section{padding:66px 5%;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at top left,#24201740,transparent 65%)}.section-heading{text-align:center;margin-bottom:35px}.section-heading h2{text-transform:uppercase;font-size:36px;letter-spacing:1px}.section-heading>p:not(.eyebrow){color:var(--muted);margin:8px 0}.section-heading .script{font:italic 28px Georgia;color:var(--gold)!important;margin-top:-9px!important}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-grid article{border:1px solid var(--line);background:#0d0d0d}.service-grid img{width:100%;height:190px;object-fit:cover;filter:saturate(.65)}.service-grid article>div{padding:22px}.service-grid h3{text-transform:uppercase;font-size:18px;letter-spacing:1px}.service-grid p:not(.eyebrow){color:var(--muted);font-size:14px;margin-bottom:0}.note{color:var(--muted);font-size:13px;text-align:center;margin-top:25px}.barber-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.barber{position:relative;border:1px solid var(--line);padding:28px 24px;background:linear-gradient(145deg,#201b13,#0b0b0b 66%);transition:border-color .2s}.barber:hover{border-color:var(--gold)}.barber-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:30px}.monogram{font:44px Georgia;color:var(--gold)}.barber-index{font-size:11px;color:#8d7d62;letter-spacing:1px}.barber h3{font-size:27px}.barber p{color:var(--muted);font-size:14px;margin:0 0 22px}.barber .button{width:100%}.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.gallery-grid img{width:100%;height:245px;object-fit:cover;transition:filter .3s}.gallery-grid a:hover img{filter:brightness(1.15)}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:3px;font-size:13px;color:#d6c39c}.gallery>.text-link{display:table;margin:25px auto 0}.reviews{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--gold);min-height:430px}.review-image{background:linear-gradient(#0003,#0003),url('photo-0.jpeg') center/cover}.review-content{text-align:center;padding:50px 50px;background:radial-gradient(ellipse at right,#29211566,transparent)}.review-content h2{font-size:32px;text-transform:uppercase}.stars{letter-spacing:5px;color:var(--gold);font-size:22px}blockquote{font:italic 23px/1.5 Georgia;margin:20px auto;max-width:520px}.review-name{color:var(--gold);font-size:11px;letter-spacing:1.5px}.review-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin:20px}.review-controls button{background:none;color:var(--gold);border:1px solid var(--line);width:40px;height:40px;border-radius:50%;font-size:24px}.review-controls span{color:var(--muted);font-size:12px}.locations-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:1100px;margin:auto}.location{padding:35px;border:1px solid var(--line);background:linear-gradient(135deg,#1c1913,#0c0c0c)}.location h3{font-size:29px}.location p{margin:12px 0}.muted{color:var(--muted);font-size:14px}dl{margin:24px 0}dl div{display:flex;justify-content:space-between;max-width:380px;font-size:14px}dd{margin:0;color:var(--gold)}.coming{display:inline-block;border:1px solid var(--line);padding:6px 12px;color:var(--gold);font-size:11px;letter-spacing:2px;margin:10px 0}.future>p:last-child{color:var(--muted);font-size:14px}.final-cta{padding:45px 7%;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(100deg,#242016,#090909);border-bottom:1px solid var(--line)}.final-cta h2{margin:0}footer{padding:45px 5%;display:flex;gap:25px;align-items:center;flex-wrap:wrap}footer p,footer>a:not(.logo){font-size:13px;color:var(--muted)}footer>small{margin-left:auto;color:#948b7c;font-size:12px}.mobile-book{display:none}@media(min-width:1500px){main{max-width:1600px;margin:auto}}@media(max-width:1100px){header{gap:20px}nav{gap:14px}nav a{font-size:10px}.logo{font-size:23px}.header-book{padding:12px}.intro{gap:30px}.service-grid{gap:12px}.service-grid article>div{padding:17px}.barber-grid{gap:14px}.barber{padding:24px 18px}}@media(max-width:800px){header{height:80px;padding:0 6%}.logo{font-size:24px}.logo small{font-size:8px}.menu{display:block;margin-left:auto;border:1px solid var(--line);color:var(--gold);background:none;padding:4px 12px;font-size:24px}.header-book{display:none}nav{display:none;position:absolute;left:0;right:0;top:80px;background:#0c0c0c;padding:25px 6%;flex-direction:column;border-bottom:1px solid var(--gold)}nav.open{display:flex}nav a{font-size:14px;padding:5px}.hero{min-height:650px;background-position:60% center}.hero-shade{background:linear-gradient(90deg,#000e,#0007)}.hero-copy{padding:55px 7%;width:100%}h1{font-size:64px}.hero-number{display:none}.actions{flex-wrap:wrap}.hero-foot{margin-top:35px}.intro{padding:45px 7%;grid-template-columns:1fr;gap:10px}.intro h2 br{display:none}.intro-mark{display:none}.section{padding:50px 6%}.section-heading h2{font-size:30px}.service-grid,.barber-grid{grid-template-columns:repeat(2,1fr)}.service-grid img{height:170px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid a:last-child{grid-column:1/-1}.gallery-grid a:last-child img{height:260px}.reviews{grid-template-columns:1fr}.review-image{height:250px}.review-content{padding:35px 7%}.locations-grid{grid-template-columns:1fr}.location{padding:28px}.final-cta{padding:40px 7%;gap:20px;flex-wrap:wrap}footer{padding-bottom:100px;display:block}footer>small{display:block;margin-top:20px}.mobile-book{display:flex;position:fixed;bottom:15px;left:6%;right:6%;z-index:30;box-shadow:0 8px 35px #0009}}@media(max-width:420px){h1{font-size:53px}.barber-grid{gap:10px}.barber{padding:18px 14px}.barber h3{font-size:24px}.barber .button{padding:12px 8px;font-size:10px}.service-grid{grid-template-columns:1fr}.service-grid img{height:220px}.hero-copy{padding-top:45px}.hero{min-height:610px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.location-photo{width:100%;height:180px;object-fit:cover;margin:0 0 25px}.location .phone{display:block;color:var(--gold);margin:15px 0}
/* Portfolio photography and booking */
.hero{background-image:url('assets/noelito-2.jpeg');background-position:center 39%;min-height:620px}.hero-shade{background:linear-gradient(90deg,#050505f7 0%,#050505d9 36%,#05050560 70%,#05050535)}.barber{padding:0;background:#0d0d0d;overflow:hidden}.barber-info{padding:22px;position:relative}.barber-index{position:absolute;right:18px;top:22px}.barber-info h3{padding-right:45px}.barber-cover{border:0;padding:0;background:#111;width:100%;height:260px;position:relative;display:block;overflow:hidden;color:#fff}.barber-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s;object-position:center 42%}.barber-cover:hover img{transform:scale(1.035)}.barber-cover span{position:absolute;bottom:0;left:0;right:0;padding:25px 15px 12px;background:linear-gradient(transparent,#000c);font-size:9px;letter-spacing:2px;text-align:left}.barber-placeholder{height:260px;background:radial-gradient(ellipse at top,#3b3021,#0c0c0c);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gold)}.barber-placeholder>span{font:80px Georgia}.barber-placeholder small{font-size:9px;letter-spacing:3px}.portfolio-link{width:100%;border:0;border-bottom:1px solid var(--line);background:none;color:#d6c39c;text-align:left;font-size:13px;padding:0 0 13px;margin-bottom:18px}.portfolio-link span{float:right}.barber-info p{font-size:12px;margin-bottom:18px}.barber-info .button{font-size:10px;padding:12px 8px}.gallery-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 auto 28px}.filter{color:var(--muted);background:none;border:1px solid #3b3326;padding:8px 14px;font-size:12px}.filter.active,.filter:hover{color:#111;background:var(--gold);border-color:var(--gold)}.gallery-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.work-photo{padding:0;border:1px solid var(--line);background:#0d0d0d;color:#d6c39c;text-align:left;min-width:0;overflow:hidden}.work-photo img{display:block;height:230px;width:100%;object-fit:cover}.work-photo span{display:block;padding:8px 12px;font-size:11px;letter-spacing:1px}.gallery-more{display:table;margin:28px auto}.gallery-more[hidden]{display:none}.review-image{background-image:linear-gradient(#0003,#0003),url('assets/noelito-2.jpeg');background-position:center 44%}dialog{color:#f1eee6;background:#0b0b0b;border:1px solid var(--gold);padding:28px;width:min(1000px,94vw);max-height:90vh;overscroll-behavior:contain}dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-close,.lightbox-close{color:var(--gold);border:1px solid var(--line);background:#111;width:44px;height:44px;font-size:28px;flex-shrink:0}#portfolio-photos{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}#portfolio-photos img{display:block;width:100%;height:auto}#portfolio-book{position:sticky;bottom:-28px;background:#0b0b0bf5;padding:18px 0}#portfolio-book .button{width:100%}#lightbox{padding:15px;width:fit-content;text-align:center}#lightbox img{max-width:85vw;max-height:76vh;object-fit:contain;display:block;margin:auto}.lightbox-close{position:absolute;right:18px;top:18px}#lightbox-caption{margin:10px 0 0;font-size:13px;color:var(--gold)}
@media(max-width:800px){.barber-cover,.barber-placeholder{height:230px}.barber-info{padding:18px 14px}.barber-index{display:none}.barber-info h3{padding-right:0}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-photo img{height:230px}.hero{background-position:62% center}.gallery-filters{gap:6px}.filter{padding:7px 11px}dialog{padding:20px}#portfolio-photos{gap:8px}#portfolio-book{bottom:-20px}}
@media(max-width:420px){.barber-cover,.barber-placeholder{height:200px}.work-photo img{height:200px}.barber-info h3{font-size:24px}.barber-info p{font-size:11px}#portfolio-photos{grid-template-columns:1fr}}

/* Original crowned lion artwork, framed without altering the logo. */
.brand-crest{display:inline-block;position:relative;overflow:hidden;width:66px;aspect-ratio:470/526;flex:none;background:#000;vertical-align:middle}
.brand-crest img{position:absolute;width:274.4681%;max-width:none;height:auto;left:-19.14894%;top:-81.74905%;display:block}
.logo-with-crest{display:flex;align-items:center;gap:12px}.logo .brand-wordmark{color:#f1eee6}.logo .brand-wordmark>span{color:var(--gold)}.logo small{letter-spacing:1.1px;font-size:8px}.intro-mark .brand-crest{width:155px;margin-bottom:16px}.intro-mark>.brand-crest{display:inline-block}.intro-mark>.brand-crest img{display:block}.intro-mark>span:last-child{margin-top:4px}.cta-brand{display:flex;align-items:center;gap:25px}.cta-brand>.brand-crest{width:95px}footer .brand-crest{width:84px}
@media(min-width:801px) and (max-width:1200px){header{gap:15px;padding-left:3%;padding-right:3%}header .brand-crest{width:50px}header .logo{font-size:21px}header nav{gap:12px}header nav a{font-size:10px}header .logo small{font-size:7px;letter-spacing:.6px}}
@media(max-width:800px){header .brand-crest{width:50px}.logo-with-crest{gap:10px}header .logo{font-size:22px}header .logo small{font-size:7px;letter-spacing:.5px}.intro-mark{display:block;border-left:0;border-top:1px solid var(--line);padding-top:25px;margin-top:12px}.intro-mark .brand-crest{width:130px}.cta-brand{gap:18px}.cta-brand>.brand-crest{width:75px}.cta-brand h2{font-size:32px}.cta-brand .eyebrow{font-size:9px;letter-spacing:1.3px}footer .logo-with-crest{display:flex;margin-bottom:20px}}

.service-grid .gold-cut-photo{object-position:center 42%}.service-grid .beard-grooming-photo{object-position:center 36%}

.locations-grid { grid-template-columns: minmax(0, 1fr); }

/* Updated shop photography */
.hero{background-image:url('assets/shop-interior.jpeg');background-position:center 50%}.location-photo{object-position:center 50%}

/* Prominent shop slogan and mission */
.hero h1{font-size:clamp(58px,6.5vw,96px);line-height:1.02}.hero-copy{max-width:1000px;padding-right:5%}.intro>p strong{display:block;color:#f1eee6;font:24px/1.35 Georgia,serif;margin-bottom:16px}@media(max-width:800px){.hero h1{font-size:clamp(40px,8.5vw,68px);letter-spacing:-1px}.hero-copy{padding-right:7%}}

.wednesday-offer{padding:44px 7%;display:flex;align-items:center;gap:38px;background:linear-gradient(115deg,#282013,#100e0b);border-bottom:1px solid var(--gold)}.offer-amount{flex-shrink:0;color:var(--gold);text-align:center}.offer-amount>span{display:block;font:80px/1 Georgia,serif}.offer-amount>small{display:block;font-size:10px;font-weight:bold;letter-spacing:1.5px;margin-top:12px}.offer-copy{flex:1}.offer-copy h2{font-size:clamp(28px,3vw,40px);margin-bottom:12px}.offer-copy p{margin:6px 0;color:#d8d1c4}.offer-copy .eyebrow{color:var(--gold);margin-bottom:10px}.offer-copy .offer-schools{color:var(--gold);font-weight:bold;letter-spacing:1px;margin-top:14px}.offer-copy .offer-welcome{font-size:14px;color:var(--muted)}@media(max-width:800px){.wednesday-offer{flex-direction:column;align-items:flex-start;gap:24px;padding:36px 7%}.offer-amount{text-align:left}.offer-amount>span{font-size:68px}.wednesday-offer>.button{width:100%}}

.walkin-menu{margin-top:46px;padding:36px;border:1px solid var(--gold);background:linear-gradient(135deg,#1d180f,#0d0c0a)}.walkin-menu h3{font:32px Georgia,serif;margin:0 0 8px}.walkin-menu>p{color:var(--muted);margin:8px 0 24px}.walkin-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px}.walkin-list{margin:0}.walkin-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:13px 0;border-bottom:1px solid var(--line)}.walkin-list dt{font-size:16px}.walkin-list dt small{display:block;color:var(--muted);font-size:12px}.walkin-list dd{margin:0;color:var(--gold);font:23px Georgia,serif;white-space:nowrap}.walkin-extras h4{color:var(--gold);font-size:12px;letter-spacing:2px;text-transform:uppercase;margin:4px 0 10px}.walkin-menu .after-hours{color:var(--gold);font-weight:bold;border-top:1px solid var(--gold);padding-top:20px;margin:26px 0 0}@media(max-width:650px){.walkin-menu{padding:24px 20px}.walkin-columns{grid-template-columns:1fr;gap:26px}.walkin-list dt{font-size:15px}.walkin-menu h3{font-size:28px}}

/* Keep the mobile booking button clear of the Netlify badge. */
@media(max-width:800px){
  .mobile-book{bottom:calc(88px + env(safe-area-inset-bottom, 0px));}
  footer{padding-bottom:calc(180px + env(safe-area-inset-bottom, 0px));}
  html{scroll-padding-bottom:calc(160px + env(safe-area-inset-bottom, 0px));}
}
