@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,500&display=swap");:root{--ink:#171713;--cream:#f4f0e8;--paper:#faf8f3;--copper:#b67a4a;--line:#d9d2c6;--muted:#726e65}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}a,button{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.nav{height:86px;padding:0 5vw;justify-content:space-between;background:rgba(23,23,19,.92);color:white;position:absolute;top:0;left:0;right:0;z-index:10;border-bottom:1px solid #ffffff20}.brand,.nav{display:flex;align-items:center}.brand{gap:14px}.brand-mark{font:600 29px/1 Playfair Display,serif;border:1px solid #ffffff88;width:58px;height:48px;display:grid;place-items:center}.brand-mark>span{color:var(--copper)}.brand-copy{display:flex;flex-direction:column;letter-spacing:.16em}.brand-copy b{font-size:13px}.brand-copy small{font-size:8px;color:#ffffff99;margin-top:4px}.nav-links{display:flex;align-items:center;gap:38px;font-size:13px}.nav-links>a{color:#ddd}.button,.nav-links>a:hover{color:white}.button{border:0;background:var(--copper);padding:17px 24px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-weight:600;font-size:13px;letter-spacing:.03em;transition:.2s}.button:hover{background:#9d643b;transform:translateY(-1px)}.button-small{padding:12px 18px}.menu-button{display:none;background:none;color:white;border:0}.hero{height:760px;min-height:680px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,16,13,.96),rgba(16,16,13,.76) 37%,rgba(16,16,13,.08) 72%)}.hero-content{position:absolute;top:0;bottom:0;left:8vw;max-width:620px;display:flex;flex-direction:column;justify-content:center;padding-top:65px}.eyebrow{font-size:10px;letter-spacing:.24em;text-transform:uppercase;display:flex;align-items:center;gap:12px;font-weight:700;color:#ded8cd}.eyebrow>span{height:1px;width:34px;background:var(--copper)}.eyebrow.dark{color:#615e57}.booking-modal h2,.cta h2,.experience h2,.hero h1,.reviews h2,.section h2{font:600 clamp(52px,6.2vw,88px)/.98 Playfair Display,serif;margin:22px 0}.hero h1 em,h2 em{font-weight:500;color:var(--copper)}.hero-lead{max-width:475px;color:#d2cec6;font-size:17px;line-height:1.75}.hero-actions{gap:32px;margin-top:28px}.hero-actions,.text-link{display:flex;align-items:center}.text-link{font-size:13px;gap:8px;border-bottom:1px solid #ffffff55;padding-bottom:5px}.hero-meta{display:flex;gap:36px;margin-top:65px;border-top:1px solid #ffffff2e;padding-top:24px}.hero-meta>div{display:flex;gap:11px;align-items:flex-start}.hero-meta svg{color:var(--copper)}.hero-meta span{display:flex;flex-direction:column}.hero-meta b{font-size:11px}.hero-meta small{font-size:10px;color:#aaa;margin-top:4px}.scroll-label{position:absolute;right:2.5vw;bottom:36px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.23em;display:flex;gap:12px;align-items:center}.scroll-label span{height:45px;width:1px;background:#ffffff99}.section{padding:110px 8vw}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}.reviews h2,.section-head h2{font-size:51px;margin:16px 0 0}.section-head>p{max-width:450px;line-height:1.8;color:var(--muted);font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-card{min-height:340px;padding:34px;position:relative;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:.25s}.service-card:last-child{border:0}.service-card.featured,.service-card:hover{background:var(--ink);color:white;transform:translateY(-8px);box-shadow:0 20px 45px #211b1430}.service-number{font:500 12px Playfair Display;color:#aaa;margin-bottom:42px}.service-card svg{color:var(--copper)}.service-card h3{font:600 22px Playfair Display;margin:18px 0 9px}.service-card p{font-size:12px;color:var(--muted);margin:0}.featured p,.service-card:hover p{color:#aaa}.service-info{display:flex;align-items:center;justify-content:space-between;margin-top:auto;border-top:1px solid var(--line);padding-top:18px}.featured .service-info,.service-card:hover .service-info{border-color:#ffffff26}.service-info span{display:flex;align-items:center;gap:6px;font-size:11px}.service-info strong{font:600 20px Playfair Display}.service-card>button{border:0;background:none;padding:20px 0 0;color:inherit;display:flex;justify-content:space-between;font-size:11px;font-weight:600}.popular{position:absolute;top:0;right:15px;background:var(--copper);padding:7px 10px;font-size:8px;letter-spacing:.12em}.experience{display:grid;grid-template-columns:1.1fr .9fr;background:var(--ink);color:white;min-height:590px}.experience-copy{padding:100px 8vw}.experience h2{font-size:52px}.experience-copy>p:not(.eyebrow){color:#aaa;line-height:1.8;max-width:520px;font-size:14px}.stats{display:flex;gap:50px;margin-top:58px}.stats>div{display:flex;gap:10px;align-items:center}.stats b{font:600 31px Playfair Display;color:var(--copper)}.stats span{font-size:9px;color:#aaa;line-height:1.4;text-transform:uppercase;letter-spacing:.1em}.experience-panel{background:linear-gradient(#b67a4ad5,#6b3f25e8),url(/barber-hero.png) 50%/cover;display:flex;flex-direction:column;justify-content:end;padding:65px}.experience-panel blockquote{font:italic 500 31px/1.4 Playfair Display;margin:0 0 24px}.experience-panel>span{font-size:9px;letter-spacing:.2em}.reviews{text-align:center}.center{justify-content:center}.reviews h2{margin-bottom:46px}.review-card{max-width:770px;margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 50px}.stars{color:var(--copper);letter-spacing:.35em}.review-card blockquote{font:italic 500 23px/1.6 Playfair Display;margin:25px 0}.reviewer{display:flex;align-items:center;justify-content:center;gap:12px}.reviewer>span{width:40px;height:40px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;font-size:11px}.reviewer div{display:flex;flex-direction:column;text-align:left}.reviewer b{font-size:11px}.reviewer small{font-size:9px;color:var(--muted);margin-top:3px}.cta{margin:0 5vw;background:var(--copper);color:white;padding:70px 7vw;display:flex;align-items:center;justify-content:space-between}.cta h2{font-size:49px;margin-bottom:0}.cta h2 em{color:white}.button.light{background:white;color:var(--ink)}.button.light:hover{background:var(--cream)}footer{background:var(--ink);color:white;padding:75px 8vw 30px;display:grid;grid-template-columns:2fr repeat(3,1fr);grid-gap:55px;gap:55px;margin-top:90px;position:relative}footer .brand-mark{margin-bottom:18px}.footer-brand p{font:italic 16px Playfair Display;color:#aaa}footer b{font-size:9px;letter-spacing:.18em}footer p{font-size:11px;line-height:1.8;color:#aaa}footer a{font-size:10px;color:var(--copper)}.copyright{grid-column:1/-1;border-top:1px solid #ffffff1a;padding-top:25px;color:#666;font-size:9px}.modal-backdrop{position:fixed;inset:0;background:#0f0f0ddd;z-index:100;display:grid;place-items:center;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.booking-modal{width:min(760px,100%);max-height:94vh;overflow:auto;background:var(--paper);position:relative;box-shadow:0 30px 90px #0008}.modal-close{position:absolute;right:22px;top:22px;border:0;background:none;z-index:2}.booking-head{padding:38px 45px 26px;border-bottom:1px solid var(--line)}.booking-head h2{font-size:36px;margin:12px 0 25px}.steps,.steps>div{display:flex}.steps>div{flex:1 1;align-items:center;gap:8px;position:relative;color:#aaa}.steps>div:not(:last-child):after{content:"";height:1px;background:var(--line);flex:1 1;margin:0 8px}.steps span{width:25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:10px}.steps small{font-size:8px;letter-spacing:.12em}.steps .active{color:var(--ink)}.steps .active span{background:var(--copper);color:white;border-color:var(--copper)}.booking-body{padding:30px 45px 40px}.field-label{font-size:9px;font-weight:700;letter-spacing:.16em;display:block;margin:0 0 10px}.select-wrap{border:1px solid var(--line);display:flex;align-items:center;padding:0 15px;margin-bottom:25px;background:white}.select-wrap svg{color:var(--copper)}select{width:100%;border:0;background:none;padding:15px;outline:0}.date-row{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:7px;gap:7px;margin-bottom:26px}.date-row button{border:1px solid var(--line);background:white;padding:9px 4px;display:flex;flex-direction:column;align-items:center}.date-row small,.date-row span{font-size:8px;color:#888}.date-row b{font:600 19px Playfair Display;margin:4px}.date-row button.selected,.slot-grid button.selected{background:var(--ink);color:white;border-color:var(--ink)}.date-row button.selected small,.date-row button.selected span{color:#aaa}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-bottom:28px}.slot-grid button{border:1px solid var(--line);background:white;padding:12px}.full{width:100%}.details-form label{display:flex;flex-direction:column;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:17px}.details-form input{font:14px DM Sans;padding:14px;border:1px solid var(--line);margin-top:8px;background:white;outline:0}.details-form input:focus{border-color:var(--copper)}.form-actions{justify-content:space-between;margin-top:28px}.back,.form-actions{display:flex;align-items:center}.back{border:0;background:none;gap:5px}.summary{background:white;border:1px solid var(--line);padding:5px 20px;margin-bottom:25px}.summary>div{display:flex;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid var(--line)}.summary>div:last-child{border:0}.summary svg{color:var(--copper)}.summary span{display:flex;flex-direction:column;flex:1 1}.payment-box small,.summary small{font-size:8px;letter-spacing:.11em;color:#888}.summary b{font-size:12px;margin-top:4px}.summary strong{font:600 21px Playfair Display}.payment-box{border:1px solid var(--copper);background:white;padding:16px;display:flex;align-items:center;gap:13px;margin-bottom:8px}.payment-box>div{display:flex;flex-direction:column;flex:1 1}.payment-box b{font-size:12px}.payment-box.disabled{border-color:var(--line);opacity:.55}.payment-box>span{font-size:8px;background:#eee;padding:5px}.secure-note{display:flex;align-items:center;gap:7px;color:#777;font-size:9px}.success{padding:70px 60px;text-align:center}.success-icon{width:70px;height:70px;background:var(--copper);color:white;border-radius:50%;display:grid;place-items:center;margin:0 auto 25px}.success h2{font-size:39px}.success>p{color:var(--muted);line-height:1.7}.success-note{background:white;border:1px solid var(--line);padding:17px;margin:25px 0;font-size:11px}.barber-choice{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px;margin-bottom:25px}.barber-choice>button{border:1px solid var(--line);background:white;padding:12px;display:flex;align-items:center;gap:10px;text-align:left}.barber-choice>button.selected{border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper)}.barber-choice>button>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:white;font-size:9px}.barber-choice>button>div{display:flex;flex-direction:column;flex:1 1}.barber-choice b{font-size:11px}.barber-choice small{font-size:8px;color:#888;margin-top:3px}.barber-choice svg{color:var(--copper)}.slot-grid button.unavailable{background:#eeeae4;color:#b1ada5;text-decoration:line-through;cursor:not-allowed}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.booking-error{background:#fff0ed;color:#a54233;padding:10px;font-size:10px;margin:-15px 0 20px}.payment-box{width:100%;border-color:var(--line);text-align:left}.payment-box.selected{border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper)}.payment-box.disabled{cursor:not-allowed}.availability-note{color:#777;font-size:9px;margin:-3px 0 10px}.payment-error{margin:14px 0 0}.confirmation-page{min-height:100vh;background:var(--paper);display:grid;place-items:center;padding:30px;position:relative}.confirmation-brand{position:absolute;top:28px;left:32px;width:58px;height:50px;background:var(--ink);color:white;display:grid;place-items:center;font:600 27px Playfair Display}.confirmation-brand span{color:var(--copper)}.confirmation-card{width:min(600px,100%);background:white;border:1px solid var(--line);padding:65px;text-align:center;box-shadow:0 30px 80px #221b1212}.confirmation-card h1{font-size:42px;margin:14px 0}.confirmation-card>p{color:var(--muted);line-height:1.7}.confirmation-icon{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:var(--copper);color:white;margin:0 auto 24px}.confirmation-icon.loading{background:var(--sage)}.confirmation-icon.error{background:#a54233}.confirmation-summary{display:flex;text-align:left;align-items:center;gap:14px;background:var(--paper);border:1px solid var(--line);padding:18px;margin:28px 0}.confirmation-summary svg{color:var(--copper)}.confirmation-summary div{display:flex;flex-direction:column}.confirmation-summary small{font-size:8px;letter-spacing:.14em;color:#888}.confirmation-summary b{font-size:13px;margin:4px 0}.confirmation-summary span{font-size:11px;color:#666}@media(max-width:900px){.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card{border-bottom:1px solid var(--line)}.experience{grid-template-columns:1fr}.experience-panel{min-height:420px}.section-head{align-items:start;flex-direction:column}.hero-meta{gap:18px}.hero-meta>div:nth-child(2){display:none}footer{grid-template-columns:1fr 1fr}.cta{gap:30px}}@media(max-width:650px){.nav{height:70px;padding:0 20px}.brand-copy{display:none}.brand-mark{width:48px;height:40px;font-size:23px}.menu-button{display:block}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:var(--ink);padding:25px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.hero{height:720px}.hero>img{object-position:63% center}.hero-overlay{background:linear-gradient(90deg,rgba(16,16,13,.94),rgba(16,16,13,.52))}.hero-content{left:25px;right:25px;padding-top:50px}.hero h1{font-size:53px}.hero-lead{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-meta{margin-top:45px}.scroll-label{display:none}.section{padding:75px 22px}.reviews h2,.section-head h2{font-size:39px}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;min-height:300px}.experience-copy{padding:75px 25px}.experience h2{font-size:43px}.stats{gap:20px;flex-wrap:wrap}.experience-panel{padding:35px 25px;min-height:350px}.experience-panel blockquote{font-size:26px}.review-card{padding:35px 5px}.review-card blockquote{font-size:19px}.cta{margin:0 15px;padding:50px 25px;align-items:flex-start;flex-direction:column}.cta h2{font-size:40px}footer{grid-template-columns:1fr;padding:60px 25px}.booking-body,.booking-head{padding-left:22px;padding-right:22px}.steps small{display:none}.date-row{overflow:auto;grid-template-columns:repeat(7,55px)}.slot-grid{grid-template-columns:repeat(3,1fr)}.barber-choice{grid-template-columns:1fr}.success{padding:55px 24px}.confirmation-card{padding:48px 24px}.confirmation-card h1{font-size:34px}}