@charset "UTF-8";
:root{color-scheme:light;--ink:#30281f;--muted:#6d6255;--paper:#f8f5ee;--line:#d9d0c1;--gold:#b29869;--dark:#231c16;--focus:#735827;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;font-size:16px;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:4px}button[hidden],[hidden]{display:none!important}.sr-only,.skip:not(:focus){position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip:focus{position:fixed;z-index:9;padding:16px;background:var(--paper)}
.site-header{height:78px;max-width:1360px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand img{width:42px;height:42px;object-fit:contain;background:var(--dark);border-radius:50%}.brand>span{font-size:15px;letter-spacing:3px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:5px;margin-top:4px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:12px;letter-spacing:1px}.site-header nav a{text-decoration:none;padding:12px 0}#language{font-weight:700}#language span{color:var(--muted);margin-left:5px}
.arrival{display:grid;grid-template-columns:1fr 1fr;max-width:1360px;margin:auto;padding:38px 5% 58px;gap:6%;align-items:start}.brand-story{position:relative;min-height:665px;padding:30px 0 0;isolation:isolate}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:700;margin:0 0 21px}.brand-story h1{font:400 clamp(45px,4.8vw,68px)/1.02 Georgia,'Times New Roman',serif;letter-spacing:-2px;margin:0 0 22px}.intro{font-size:15px;line-height:1.75;max-width:295px;margin:0;color:var(--muted)}.signature{font:italic 20px/1.4 Georgia,serif;margin:25px 0;color:#67523b}.brand-art{height:300px;position:relative;margin:16px 0 0 28px;display:flex;align-items:center;justify-content:center;max-width:340px}.brand-art img{width:250px;height:250px;object-fit:contain;filter:sepia(.2) saturate(.6);position:relative;z-index:1;mix-blend-mode:multiply;border-radius:50%}.art-frame{position:absolute;inset:22px 0;border:1px solid #c6b897;transform:rotate(-5deg)}.art-frame:before{content:'';position:absolute;inset:-20px 18px;border:1px solid #e3d8c2;transform:rotate(10deg)}.story-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding:12px 0;line-height:1.5}.story-link span{font-size:17px}.brand-story>.story-link{margin-top:7px}
.booking{background:#fffcf6;border:1px solid #d6cabb;padding:27px 30px 24px;box-shadow:0 9px 32px #33220c07;scroll-margin-top:14px;min-width:0}.booking-heading{display:flex;gap:13px;align-items:flex-start}.section-number{font-size:10px;letter-spacing:1px;color:var(--muted);padding-top:8px}.booking h2{font:400 31px/1.1 Georgia,serif;letter-spacing:-.8px;margin:0 0 7px}.booking-heading p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.booking-seal{font:20px Georgia,serif;color:#bda674;margin-left:auto;padding-top:5px}.steps{display:flex;align-items:center;gap:10px;color:#8a8176;font-size:10px;letter-spacing:.2px;margin:21px 0 18px}.steps [aria-current]{color:var(--ink);font-weight:700}.step-line{height:1px;width:24px;background:#cfc5b3}.booking fieldset{border:0;padding:0;margin:0;min-width:0}.field-label{display:block;font-size:12px;font-weight:700;letter-spacing:.1px;margin:15px 0 8px}.label-with-help{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.label-with-help>span:last-child:not(:first-child){font-size:10px;line-height:1.3;font-weight:400;color:var(--muted);text-align:right}.service-select{position:relative}.service-select select{padding-right:30px}.duration{position:absolute;right:34px;top:14px;color:var(--muted);font-size:12px;pointer-events:none}input:not([type=checkbox]),select{width:100%;height:45px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:10px 12px;min-width:0;font-size:16px}select{appearance:auto;padding-right:28px}input::placeholder{color:#9b9186}.barber-options{display:flex;flex-wrap:wrap;gap:7px}.barber-options button,.day-button{border:1px solid var(--line);background:transparent;color:var(--ink);min-height:42px;padding:9px 13px;font-size:12px;line-height:1.4}.barber-options button[aria-pressed=true],.day-button[aria-pressed=true]{border-color:var(--ink);background:#eee8dd;font-weight:700}.day-options{display:flex;gap:7px}.day-button{flex:1}.date-picker{position:relative;min-height:42px;display:flex;align-items:center;justify-content:center;gap:10px;flex:1.6;border:1px solid var(--line);font-size:12px;cursor:pointer;overflow:hidden;padding:5px}.date-picker svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.3;flex-shrink:0}.date-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;min-width:100%;padding:0}.date-picker input::-webkit-calendar-picker-indicator{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}.date-picker:focus-within{outline:2px solid var(--focus);outline-offset:3px}.date-picker.selected{border-color:var(--ink);background:#eee8dd}.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.slots button{min-height:41px;padding:9px 3px;background:transparent;border:1px solid var(--line);color:var(--ink);font-size:12px;font-variant-numeric:tabular-nums}.slots button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:#fff8ea}.slots button:hover,.barber-options button:hover,.day-button:hover{border-color:var(--ink)}.slots button:disabled{opacity:.4}.slot-status,.status{font-size:12px;line-height:1.55;color:var(--muted);margin:12px 0}.slot-status:empty{display:none}.text-button{display:inline-flex;align-items:center;gap:5px;font-size:12px;min-height:40px;padding:8px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;border:0;background:transparent;line-height:1.4}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--dark);color:#fff8e9;border:1px solid var(--dark);min-height:48px;padding:12px 17px;font-size:13px;letter-spacing:.2px;line-height:1.4;text-decoration:none}.primary span{font-size:18px;font-weight:400}.primary:hover{background:#463523}.primary:disabled{opacity:.42}.continue{margin-top:17px}.field-help{font-size:11px;line-height:1.6;color:var(--muted);margin:7px 0 0}.optional{color:var(--muted);font-weight:400}.back{margin-top:-9px;margin-bottom:5px}.selection{padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;line-height:1.7;margin:0 0 18px}.selection strong{display:block;font-weight:700}.selection span{display:block;color:var(--muted);font-size:12px}.booking h3{font:400 27px/1.2 Georgia,serif;margin:14px 0 7px}.details-intro{font-size:12px;color:var(--muted);margin:0 0 17px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:10px;line-height:1.6;margin:18px 0}.consent input{appearance:auto;accent-color:var(--dark);width:18px;height:18px;flex:0 0 18px;margin:0}.honey{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}.form-error{color:#9b2d22;font-size:12px;line-height:1.5;border-left:2px solid #9b2d22;padding-left:10px;margin:12px 0}.payment-note{font-size:10px;text-align:center;color:var(--muted);margin:10px 0 0}.success-mark{width:48px;height:48px;margin:8px 0 20px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:#6c552d;font:26px Georgia,serif}#success>.eyebrow{margin-bottom:10px}#success>p:not(.eyebrow){font-size:12px;line-height:1.6}#success .selection{margin-top:18px}#success .primary{margin-top:18px}#success .change-help{margin-bottom:0}#success #another{display:flex;color:var(--muted)}
.craft{max-width:1224px;margin:0 auto 65px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;padding:45px 4%;gap:12%}.craft-monogram{display:flex;justify-content:center}.craft-monogram img{width:180px;height:180px;object-fit:contain;opacity:.8;mix-blend-mode:multiply}.craft h2,.visit h2{font:400 39px/1.12 Georgia,serif;letter-spacing:-1px;margin:0 0 18px}.craft p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted);max-width:460px}.craft .eyebrow{margin-bottom:15px}.visit{max-width:1224px;margin:0 auto 65px;padding:0 4%;display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.visit address{font-style:normal;font-size:13px;line-height:1.9;color:var(--muted)}.visit-actions{display:flex;align-items:center;gap:20px;margin-top:15px}.outline-link{display:inline-flex;align-items:center;min-height:43px;border:1px solid var(--line);padding:11px 17px;text-decoration:none;font-size:12px}.hours h3{font-size:13px;margin:9px 0 18px}.hours p{display:flex;justify-content:space-between;font-size:12px;line-height:1.6;margin:10px 0;color:var(--muted);gap:20px}.hours p span:last-child{white-space:nowrap}.hours .story-link{margin-top:12px}footer{border-top:1px solid var(--line);max-width:1360px;margin:auto;padding:28px 5%;display:flex;align-items:center;gap:30px;font-size:11px;color:var(--muted)}footer>span:first-child{font-weight:700;letter-spacing:1.5px;color:var(--ink);font-size:12px}footer small{display:block;font-size:7px;letter-spacing:3px;margin-top:4px}footer p{font:italic 15px Georgia,serif;margin-right:auto}.copyright{font-size:9px}.privacy-page{max-width:700px;padding:36px 22px;margin:auto}.privacy-page h1{font:38px/1.15 Georgia,serif;margin:45px 0 25px}.privacy-page p{font-size:15px;line-height:1.8}.privacy-page hr{border:0;border-top:1px solid var(--line);margin:30px 0}
@media(min-width:1000px){.booking{min-height:630px}.booking-heading{margin-bottom:4px}.booking .field-label:first-of-type{margin-top:7px}}
@media(max-width:850px){.arrival{gap:4%;padding-left:4%;padding-right:4%}.booking{padding:22px}.brand-story h1{font-size:48px}.brand-story{min-height:590px}.brand-art{height:260px;margin-left:0}.brand-art img{width:210px;height:210px}.craft,.visit{margin-left:4%;margin-right:4%;gap:7%}.label-with-help>span:last-child:not(:first-child){max-width:145px}footer{gap:20px}.copyright{display:none}}
@media(max-width:650px){.site-header{height:62px;padding:0 21px}.brand{gap:10px}.brand img{width:34px;height:34px}.brand>span{font-size:12px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:3.5px}.site-header nav{gap:22px;font-size:11px}.location-nav{display:none}.arrival{display:flex;flex-direction:column;padding:24px 20px 34px;gap:0}.brand-story{min-height:0;padding:0 0 22px;width:100%;overflow:hidden}.brand-story .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:12px}.brand-story h1{font-size:43px;letter-spacing:-1.4px;margin-bottom:12px;max-width:100%;position:relative;z-index:1}.intro{font-size:12px;line-height:1.65;max-width:260px;position:relative;z-index:1}.signature,.brand-story>.story-link{display:none}.brand-art{position:absolute;right:-30px;top:15px;width:170px;height:170px;opacity:.1;z-index:0;margin:0;pointer-events:none}.brand-art img{width:170px;height:170px}.art-frame{display:none}.booking{width:100%;padding:21px 18px 19px;scroll-margin-top:10px}.booking h2{font-size:29px}.booking-heading{gap:9px}.booking-heading p{font-size:11px}.section-number{font-size:8px}.steps{display:none}.booking-heading{margin-bottom:18px}.continue{margin-top:12px}.field-label{margin:13px 0 7px}.booking .field-label:first-of-type{margin-top:0}.barber-options{gap:6px}.barber-options button{font-size:11px;padding:9px 12px;min-height:42px}.label-with-help>span:last-child:not(:first-child){font-size:9px;max-width:158px}.slots button{font-size:11px}.craft{display:block;margin:0 20px 34px;padding:30px 0;position:relative}.craft-monogram{display:none}.craft h2,.visit h2{font-size:32px;margin-bottom:14px}.craft p:not(.eyebrow){font-size:13px;margin-bottom:10px}.craft .eyebrow{font-size:8px}.visit{display:block;margin:0 20px 34px;padding:0}.visit .eyebrow{font-size:8px;margin-bottom:15px}.visit address{font-size:12px}.hours{margin-top:26px;padding-top:19px;border-top:1px solid var(--line)}.hours p{font-size:12px}.hours .story-link{margin-top:7px}.visit-actions{gap:15px}.outline-link{font-size:11px}.booking h3{font-size:26px}.consent{font-size:10px;line-height:1.7}footer{padding:22px 20px;gap:16px;flex-wrap:wrap}footer p{font-size:12px}footer a{font-size:10px}.privacy-page h1{font-size:32px}}
@media(max-width:350px){.site-header{padding:0 14px}.arrival{padding:19px 12px 28px}.brand-story h1{font-size:39px}.brand-story .intro{font-size:11px;max-width:235px}.brand-story{padding-bottom:18px}.booking{padding:18px 13px}.booking h2{font-size:27px}.booking-heading p{font-size:10px}.booking-seal{font-size:17px}.label-with-help>span:last-child:not(:first-child){max-width:130px}.barber-options button{padding:8px 10px;font-size:10px}.day-button,.date-picker{font-size:11px}.date-picker{gap:5px}.slots{gap:5px}.slots button{font-size:10px}.craft,.visit{margin-left:14px;margin-right:14px}footer p{display:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.service-choices{display:grid;grid-template-columns:1fr 1.65fr .85fr;gap:6px}.service-choices button{min-height:45px;padding:10px 8px;background:transparent;border:1px solid var(--line);color:var(--ink);font-size:13px;line-height:1.4}.service-choices button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:#fff8e9}.service-choices button:disabled{opacity:.4}.other-service,.drink-other-field{margin-top:8px}
.steps{display:none}.booking-heading{margin-bottom:18px}
@media(max-width:650px){.arrival{padding-top:16px}.brand-story{padding-bottom:16px}.brand-story>.eyebrow{display:none}.brand-story h1{font-size:39px;margin-bottom:8px}.booking-heading{margin-bottom:12px}}
@media(max-width:350px){.arrival{padding-top:12px}.brand-story{padding-bottom:12px}.brand-story h1{font-size:34px}}
