@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#101110;--panel:#191a18;--cream:#f1ede1;--muted:#b9bab0;--brass:#c5a476;--line:#363832;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--cream);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--brass);outline-offset:6px}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--display);line-height:1;letter-spacing:-.01em}h2{font-size:clamp(3rem,5.2vw,5rem);font-weight:600}em{font-style:normal;color:var(--brass)}.eyebrow{font-size:.875rem;letter-spacing:.16em;font-weight:600;color:var(--brass);margin-bottom:22px}.header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:15px 5%;border-bottom:1px solid var(--line);background:rgba(16,17,16,.96);gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{object-fit:contain}.brand>span{font:700 1.6rem/.95 var(--display);letter-spacing:.04em}.brand span span{display:block;font-size:.9rem;letter-spacing:.14em;margin-top:7px}.header nav{display:flex;gap:28px;font-size:.875rem}.header nav a:hover,.text-link:hover{color:var(--brass)}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;background:var(--brass);color:#101110;font-weight:700;font-size:1rem;border:1px solid var(--brass);transition:background .2s,transform .2s;min-height:50px}.button:hover{background:#dfbd8e;transform:translateY(-2px)}.button.small{padding:10px 20px;font-size:.875rem}.button.outline{background:transparent;color:var(--cream)}.button.outline:hover{color:#101110;background:var(--brass)}.text-link{display:inline-block;border-bottom:1px solid var(--brass);padding-bottom:5px;font-weight:500}.hero{max-width:1500px;margin:auto;padding:75px 7% 80px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;min-height:770px}.hero h1{font-size:clamp(4.5rem,7.8vw,8rem);font-weight:700;line-height:.94;letter-spacing:-.025em}.hero h1 em{display:block;color:transparent;-webkit-text-stroke:1.5px var(--brass)}.intro{max-width:420px;color:var(--muted);font-size:1.1rem;margin:30px 0;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.rating{display:flex;gap:20px;margin-top:42px;align-items:center;font-size:.9rem}.rating strong{font-size:1.15rem}.rating small{color:var(--muted);font-size:.875rem}.stars{color:var(--brass);letter-spacing:.12em;font-size:1.3rem}.hero-film{position:relative;padding:0 20px;max-width:390px;justify-self:center;width:100%}.film-frame{position:relative;aspect-ratio:512/810;border:1px solid #737464;background:#222;box-shadow:20px 20px 0 #1e211c;overflow:hidden}.film-frame video{width:100%;height:100%;object-fit:cover;display:block}.film-frame:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#000b);pointer-events:none}.film-caption{position:absolute;z-index:2;bottom:22px;left:22px;font:600 2rem var(--display);letter-spacing:.08em}.film-control{position:absolute;z-index:3;top:15px;right:15px;background:#101110d9;color:white;border:1px solid #fff7;padding:8px 14px;font-size:.875rem}.vertical-label{position:absolute;right:-13px;top:0;writing-mode:vertical-rl;font-size:.8rem;letter-spacing:.18em;color:var(--muted)}.hero-stamp{position:absolute;left:-45px;bottom:50px;background:var(--brass);color:#151612;padding:20px;font:700 1rem/1.15 var(--display);letter-spacing:.08em;transform:rotate(-8deg);border:5px double #5d4c34}.ribbon{border-block:1px solid var(--line);padding:25px 5%;display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;background:#171915;font:500 1.25rem var(--display);letter-spacing:.1em}.ribbon span{color:var(--muted)}.section{padding:95px 7%;max-width:1500px;margin:auto}.specials{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:center}.special{border-left:1px solid var(--line);padding-left:35px}.special .eyebrow{font-size:.8rem;margin-bottom:22px}.big-price{font:600 6rem/.85 var(--display);color:var(--brass);display:flex;gap:20px;align-items:center}.big-price span{font-size:1.5rem;line-height:1.05;max-width:80px;color:var(--cream)}.special p:not(.eyebrow){margin:24px 0;color:var(--muted)}.special .text-link{font-size:.9rem}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:55px}.section-heading>p{max-width:365px;color:var(--muted)}.services{border-top:1px solid var(--line)}.menu-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px}.menu-grid h3{font-size:1.35rem;color:var(--brass);letter-spacing:.09em;margin-bottom:22px}.menu-row{display:flex;justify-content:space-between;gap:16px;padding:20px 0;border-top:1px solid var(--line)}.menu-row h4{font-size:1rem;line-height:1.4;font-weight:600}.menu-row p{color:var(--muted);font-size:.875rem;margin-top:7px}.menu-row strong{font:600 1.65rem var(--display);white-space:nowrap}.highlight strong{color:var(--brass)}.menu-callout{border:1px solid var(--line);padding:25px;margin-top:30px}.menu-callout p{font:500 2rem/1.1 var(--display);margin-bottom:22px}.cuts{background:#1b1e19;max-width:none}.cuts>.section-heading,.gallery-note{max-width:1290px;margin-inline:auto}.cut-gallery{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 20px;scrollbar-color:var(--brass) #30332d;max-width:1290px;margin:auto}.cut-card{flex:0 0 260px;scroll-snap-align:start;margin:0}.cut-card video{width:100%;aspect-ratio:512/910;object-fit:cover;background:#101110;display:block;border:1px solid #51554b}.cut-card figcaption{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font-size:.9rem}.cut-card figcaption small{font-size:.8rem;color:var(--muted)}.gallery-note{font-size:.875rem;color:var(--muted);margin-top:25px}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-image{max-width:420px;justify-self:center;position:relative}.about-image img{width:100%;height:530px;object-fit:cover;display:block;filter:saturate(.7)}.about-copy p:not(.eyebrow){color:var(--muted);margin-top:25px;max-width:500px}.about-signature{font:700 2.25rem/1 var(--display);letter-spacing:.03em;border-block:1px solid var(--line);padding:24px 0;margin:35px 0}.about-signature span{color:var(--brass)}.shop{border-top:1px solid var(--line)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-grid article{padding:34px;background:var(--panel);border:1px solid var(--line);position:relative;min-height:340px}.product-number{font-size:.875rem;letter-spacing:.1em;color:var(--brass)}.product-grid h3{font-size:2.75rem;font-weight:500;margin:35px 0 22px}.product-grid p{color:var(--muted);font-size:1rem}.coming{display:inline-block;margin-top:30px;color:var(--brass);font-size:.875rem}.shop-note{margin-top:30px;color:var(--muted)}.review-band{text-align:center;padding:85px 7%;background:var(--cream);color:var(--bg)}.review-band .eyebrow{color:#705633}.review-band .stars{color:#896534;font-size:1.8rem;margin-bottom:20px}.review-band h2{font-size:5.5rem}.review-band h2 span{font-size:3rem}.review-band p:not(.eyebrow){margin:24px 0}.review-band .button{color:#101110;border-color:#8b704b}.visit{display:grid;grid-template-columns:1.2fr .8fr;gap:80px}.visit h2{font-size:clamp(4rem,6vw,6rem)}address{font-style:normal;font-size:1.15rem;margin:30px 0;color:var(--muted)}.visit-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-bottom:25px}.hours h3{font-size:1.4rem;letter-spacing:.08em;color:var(--brass);margin:10px 0 25px}.hours dl{margin:0 0 22px}.hours dl div{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:18px 0}.hours dd{margin:0}.hours>p{color:var(--muted);font-size:.875rem;margin-bottom:18px}.hours>a{font-size:.875rem;overflow-wrap:anywhere}details{border-top:1px solid var(--line);padding:20px 0}details:first-of-type{margin-top:30px}summary{cursor:pointer;font-size:1rem;font-weight:500}details p{color:var(--muted);margin-top:15px}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:24px}footer p,footer small{color:var(--muted);font-size:.875rem}.menu-toggle,.mobile-book{display:none}.mobile-nav[hidden]{display:none}@media(min-width:1500px){.hero{min-height:850px}}@media(max-width:1100px){.header nav{gap:15px}.hero{gap:35px;padding-inline:5%}.hero h1{font-size:6rem}.hero-stamp{left:-15px}.section{padding-inline:5%}.specials{gap:20px}.special{padding-left:20px}.big-price{font-size:5rem;gap:10px}.menu-grid{gap:24px}.about{gap:50px}.product-grid article{padding:25px}.product-grid h3{font-size:2.5rem}footer p{display:none}}@media(max-width:760px){html{scroll-padding-top:86px}.header{padding:10px 5%;gap:14px}.header .brand img{width:45px;height:45px}.brand>span{font-size:1.3rem}.brand span span{font-size:.75rem}.header nav,.header>.button{display:none}.menu-toggle{display:block;border:1px solid var(--line);background:transparent;color:var(--cream);padding:9px 16px;min-height:44px;font-size:.9rem}.mobile-nav{position:fixed;top:76px;left:0;right:0;background:#171915;z-index:25;padding:20px 5%;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:12px 0;font-size:1.1rem}.hero{grid-template-columns:1fr;padding:55px 6% 55px;gap:55px;min-height:auto}.hero h1{font-size:clamp(3.8rem,13vw,6rem)}.hero .eyebrow{font-size:.8rem;letter-spacing:.1em}.intro{font-size:1rem;margin:25px 0}.hero-actions{gap:22px}.rating{margin-top:30px;gap:15px}.hero-film{max-width:325px;padding:0 20px}.film-frame{aspect-ratio:512/680}.hero-stamp{left:-8px;bottom:32px;padding:14px}.ribbon{font-size:1rem;padding:20px 6%;gap:15px}.section{padding:65px 6%}.specials{grid-template-columns:1fr;gap:35px}.section-note h2{font-size:3.5rem}.special{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:28px}.big-price{font-size:5.5rem;gap:25px}.special p:not(.eyebrow){margin:20px 0}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px}.menu-grid{grid-template-columns:1fr;gap:40px}.menu-row{padding:18px 0}.menu-callout{margin-top:20px}.cut-card{flex-basis:240px}.about{grid-template-columns:1fr;gap:40px}.about-image{width:100%;max-width:400px}.about-image img{height:440px}.about-copy h2{font-size:3.5rem}.product-grid{grid-template-columns:1fr;gap:18px}.product-grid article{min-height:auto;padding:30px}.product-grid h3{font-size:3rem;margin-top:24px}.review-band{padding:65px 6%}.review-band h2{font-size:4rem}.review-band h2 span{font-size:2.5rem;display:block;margin-top:12px}.visit{grid-template-columns:1fr;gap:50px}.visit h2{font-size:4.5rem}.visit-actions{gap:20px}.hours h3{margin-top:0}footer{flex-direction:column;align-items:flex-start;padding:30px 6% 100px}.mobile-book{display:flex;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:6%;right:6%;z-index:40;box-shadow:0 5px 25px #0009}body{padding-bottom:env(safe-area-inset-bottom)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@media(min-width:761px){.mobile-nav{display:none}}

/* Booking and visit refinements */
.quick-visit{max-width:1500px;margin:auto;padding:28px 7%;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center}.quick-visit .eyebrow{margin-bottom:8px}.quick-visit p{color:var(--muted)}.quick-visit strong{color:var(--cream)}.quick-actions{display:flex;flex-wrap:wrap;gap:14px 22px}.quick-actions a{min-height:44px;display:inline-flex;align-items:center}.special .booking-note{font-size:.875rem;line-height:1.6;margin:16px 0 0;max-width:340px}.shop-compact{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding-top:55px;padding-bottom:55px}.shop-compact p:not(.eyebrow){color:var(--muted);max-width:540px}.shop-compact .coming{margin-top:16px}.shop-compact .eyebrow{margin-bottom:16px}
@media(max-width:760px){.quick-visit{grid-template-columns:1fr;padding:28px 6%;gap:22px}.quick-actions{gap:14px 24px}.shop-compact{grid-template-columns:1fr;gap:24px}.cut-gallery{scroll-padding-bottom:100px}.mobile-nav{max-height:calc(100dvh - 160px);overflow-y:auto}body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}footer{padding-bottom:30px}}

/* Home-screen guide */
.save-phone{max-width:1500px;margin:auto;padding:0 7% 30px}.save-phone details{border:1px solid var(--line);padding:0;background:var(--panel)}.save-phone summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;list-style:none;min-height:64px}.save-phone summary::-webkit-details-marker{display:none}.save-phone summary strong{display:block;font-size:1rem}.save-phone summary small{display:block;font-size:.875rem;color:var(--muted);margin-top:5px}.save-phone-label{flex-shrink:0;color:var(--brass);font-size:.875rem;border-bottom:1px solid var(--brass);padding-bottom:4px}.save-phone details[open] .save-phone-label:after{content:' −'}.save-phone details:not([open]) .save-phone-label:after{content:' +'}.phone-guide{border-top:1px solid var(--line);padding:26px}.phone-guide .phone-guide-intro{margin:0;color:var(--muted)}.phone-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:28px}.phone-guide h3{font-size:1.6rem;color:var(--brass);line-height:1.2}.phone-guide ol{margin:18px 0 0;padding-left:24px}.phone-guide li{padding-left:5px;margin-bottom:14px;color:var(--muted)}.phone-guide li strong{color:var(--cream)}.phone-guide .phone-guide-note{margin:18px 0 0;font-size:.875rem;color:var(--muted)}
@media(max-width:760px){.save-phone{padding:0 6% 30px}.save-phone summary{align-items:flex-start;flex-direction:column;gap:16px;padding:22px}.phone-guide{padding:22px}.phone-guide-grid{grid-template-columns:1fr;gap:24px}.phone-guide li{font-size:1rem}}

/* Dismissible phone installation banner */
.install-banner[hidden]{display:none}.install-banner{display:none}
@media(max-width:760px){.install-banner{position:fixed;left:6%;right:6%;bottom:calc(82px + env(safe-area-inset-bottom));z-index:45;display:flex;align-items:flex-start;gap:4px;background:var(--cream);color:var(--bg);border:1px solid #d8cfbd;border-radius:16px;box-shadow:0 8px 32px #0007;padding:12px 8px 12px 12px;max-height:40dvh;overflow-y:auto}.install-banner-guide{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;border:0;background:none;color:inherit;padding:4px;min-height:64px}.install-banner-icon{display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:12px;width:52px;height:52px;flex-shrink:0;overflow:hidden}.install-banner-icon img{width:52px;height:52px;object-fit:contain}.install-banner-copy{min-width:0}.install-banner-copy strong{display:block;font-family:var(--body);font-size:1rem;line-height:1.35;font-weight:700}.install-banner-copy>span{display:block;font-size:.875rem;line-height:1.5;margin-top:6px;color:#575950}.install-banner-close{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:0;background:none;color:#575950;font-size:1.75rem;line-height:1;padding:0}.install-banner button:focus-visible{outline:3px solid #785b31;outline-offset:0}.install-share-icon{display:inline-block;width:16px;height:18px;vertical-align:-3px;margin:0 3px}}

.grooming-categories{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0;padding:0;list-style:none}.grooming-categories li{padding:9px 14px;border:1px solid var(--line);color:var(--cream);font-size:.875rem}.shop-compact{background:var(--panel);border-bottom:1px solid var(--line);padding-top:65px;padding-bottom:65px}.shop-compact .shop-launch-note{font-size:.875rem}.hero-shop-link{font-size:.875rem;color:var(--brass)}

/* Local advertising inquiries */
.local-spotlight{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;border-bottom:1px solid var(--line)}.spotlight-copy h2{font-size:clamp(3rem,4.8vw,4.7rem);line-height:1.04}.spotlight-copy>p:not(.eyebrow){max-width:600px;margin-top:26px;color:var(--muted)}.spotlight-options{display:flex;gap:12px 24px;flex-wrap:wrap;margin:24px 0 0;padding:0;list-style:none;color:var(--brass);font-size:.875rem}.spotlight-inquiry{padding:34px;border:1px solid var(--line);background:var(--panel)}.spotlight-inquiry h3{font-size:2.5rem;line-height:1.05}.spotlight-inquiry>p{margin:22px 0;color:var(--muted)}.spotlight-inquiry .button{width:100%}.spotlight-inquiry .spotlight-email{font-size:.875rem;margin-bottom:0}.spotlight-email a{overflow-wrap:anywhere}.footer-advertise{font-size:.875rem;white-space:nowrap}
@media(max-width:1100px){.local-spotlight{gap:30px}.spotlight-inquiry{padding:26px}}
@media(max-width:760px){.local-spotlight{grid-template-columns:1fr;gap:30px}.spotlight-copy h2{font-size:3.25rem}.spotlight-inquiry{padding:26px}.spotlight-options{gap:12px 20px}}

/* Barber opportunity inquiries */
.join-team{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;border-bottom:1px solid var(--line)}.join-team h2{font-size:clamp(3rem,4.8vw,4.7rem);line-height:1.04}.join-team>div>p:not(.eyebrow){margin-top:24px;color:var(--muted);max-width:600px}.team-inquiry{padding:34px;border:1px solid var(--line);background:var(--panel)}.team-inquiry h3{font-size:2.5rem;line-height:1.05}.team-inquiry .button{width:100%;margin:24px 0;white-space:normal}.team-inquiry .text-link{font-size:.875rem}.join-team .team-inquiry-note{font-size:.875rem;margin-bottom:0}.footer-team{font-size:.875rem;white-space:nowrap}footer{flex-wrap:wrap}
@media(min-width:761px) and (max-width:1000px){.header nav{display:none}.header .menu-toggle{display:block;border:1px solid var(--line);background:transparent;color:var(--cream);padding:9px 16px;min-height:44px;font-size:.9rem}.mobile-nav{display:block;position:fixed;top:89px;left:0;right:0;background:#171915;z-index:25;padding:20px 5%;border-bottom:1px solid var(--line);max-height:calc(100dvh - 110px);overflow-y:auto}.mobile-nav a{display:block;padding:12px 0;font-size:1.1rem}.mobile-nav[hidden]{display:none}}
@media(max-width:760px){.join-team{grid-template-columns:1fr;gap:30px}.join-team h2{font-size:3.25rem}.team-inquiry{padding:26px}}
