:root{--ink:#11110f;--cream:#f0eee8;--paper:#f7f5ef;--gold:#c8a364;--muted:#a8a59d;--line:rgba(240,238,232,.17);--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:116px}body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body.viewer-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:118px;background:var(--ink);border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:5}.header-inner{justify-content:space-between}.brand-mark,.header-inner{height:100%;display:flex;align-items:center}.brand-mark{width:250px;flex-direction:column;justify-content:center;position:relative;line-height:1;color:var(--cream)}.brand-name{font:700 22px/1 var(--serif);letter-spacing:-1.2px;text-shadow:1px 1px var(--gold)}.brand-cross{color:var(--gold);font-size:18px;margin-bottom:2px}.brand-sub{font-size:7px;letter-spacing:3px;margin-top:4px;color:var(--gold)}.brand-image{height:246px;width:246px;max-width:none;object-fit:contain;transform:translateY(70px)}.main-nav{display:flex;align-items:center;gap:32px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.2px}.main-nav a:not(.nav-book){color:#d7d4cd;transition:color .2s}.footer-inner a:hover,.main-nav a:hover{color:var(--gold)}.nav-book{padding:14px 24px;color:var(--ink);background:var(--cream);min-width:84px;text-align:center;transition:background .2s}.nav-book:hover{background:var(--gold)}.hero-section{min-height:490px;height:min(72vh,650px);position:relative;display:flex;align-items:center;overflow:hidden;background-color:#080807;background-position:50%;background-size:cover}.hero-section:before{content:"";position:absolute;inset:0;opacity:.3;background:repeating-linear-gradient(90deg,transparent 0 11%,rgba(210,196,165,.035) 11.1% 11.3%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 50%)}.hero-section:after{display:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.04) 72%)}.hero-copy{position:relative;z-index:1;padding-top:4px}.eyebrow{text-transform:uppercase;font-size:9px;line-height:1.5;letter-spacing:2px;color:var(--gold);font-weight:700;margin:0 0 18px}.hero-copy .eyebrow{color:#d4c6a9}.hero-copy h1{font:400 clamp(54px,7.2vw,92px)/.96 var(--serif);letter-spacing:-4.3px;margin:0 0 30px;max-width:650px}.gold-button,.outline-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 19px;min-width:202px;color:var(--ink);background:var(--gold);text-transform:uppercase;letter-spacing:1px;font-weight:700;font-size:10px;transition:transform .2s,background .2s}.gold-button:hover{background:#dbb875;transform:translateY(-2px)}.gold-button span,.outline-button span{font-size:17px;line-height:10px}.hero-caption{position:absolute;z-index:1;right:5%;bottom:28px;color:#d7d4cd;font:italic 13px var(--serif);letter-spacing:.3px}.section-dark{background:var(--ink)}.section-container{max-width:1080px}.work-section{padding:54px 0 68px}.section-heading{margin-bottom:22px}.booking-intro h2,.facebook-inner h2,.section-heading h2{font:400 37px/1.08 var(--serif);letter-spacing:-1.3px;margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.gallery-item{padding:0;position:relative;overflow:hidden;border:0;background:#252522;aspect-ratio:1/1.03;cursor:zoom-in;text-align:left}.gallery-item img{display:block;height:100%;width:100%;object-fit:cover;transition:transform .45s}.gallery-item:hover img{transform:scale(1.035)}.gallery-zoom{position:absolute;right:12px;bottom:12px;width:32px;height:32px;display:grid;place-items:center;background:rgba(17,17,15,.82);color:var(--cream);font-size:17px;opacity:0;transition:opacity .2s}.gallery-item:focus-visible .gallery-zoom,.gallery-item:hover .gallery-zoom{opacity:1}.gallery-empty{min-height:160px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;border:1px solid var(--line);color:#bdb9b0}.gallery-empty p{margin:0;font:italic 19px var(--serif);color:var(--cream)}.gallery-empty a{font-size:11px;color:var(--gold)}.empty-rule{width:36px;height:1px;background:var(--gold)}.story-section{min-height:540px;display:grid;grid-template-columns:1fr 1fr;background:var(--cream);color:var(--ink)}.story-brand-panel{min-height:540px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--paper)}.story-brand-panel:after,.story-brand-panel:before{content:"";position:absolute;border:1px solid rgba(200,163,100,.4);border-radius:50%;width:410px;height:410px}.story-brand-panel:after{width:360px;height:360px;border-color:rgba(240,238,232,.16)}.story-emblem{z-index:1;width:260px;height:260px;border:2px solid var(--gold);outline:1px solid rgba(200,163,100,.48);outline-offset:8px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--cream);text-align:center;box-shadow:0 12px 45px #0008}.story-emblem>span{color:var(--gold);font-size:24px}.story-emblem strong{margin-top:7px;font:700 33px/.9 var(--serif);letter-spacing:1px;text-shadow:1px 1px var(--gold)}.story-emblem small{margin-top:15px;font-size:7px;letter-spacing:2.5px;color:#d5bd91}.story-logo-image{position:relative;z-index:1;width:min(96%,560px);max-height:500px;object-fit:contain;mix-blend-mode:multiply}.story-copy{display:flex;flex-direction:column;justify-content:center;padding:72px clamp(34px,7vw,105px);max-width:740px}.story-copy .eyebrow{margin-bottom:11px}.story-copy h2{font:400 clamp(36px,4vw,51px)/1.02 var(--serif);letter-spacing:-1.7px;margin:0 0 23px}.story-copy>p:not(.eyebrow){color:#55534d;font-size:13px;line-height:1.7;margin:0 0 13px}.story-copy .story-close{font:italic 18px/1.4 var(--serif)!important;color:#292823!important;margin-top:5px!important}.story-signoff{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid #d6d2c7;padding:13px 0 17px}.story-signoff strong{font:700 11px var(--serif)}.story-signoff span{font-size:9px;color:#827d70;letter-spacing:.4px}.hours-list{margin-top:10px}.hours-list>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #d6d2c7;font-size:10px;color:#77736a}.hours-list strong{color:#292823;font-weight:700}.facebook-section{padding:56px 0 48px;border-bottom:1px solid var(--line)}.facebook-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.facebook-inner h2{font-size:34px}.facebook-inner p:last-child{color:#a8a59d;font-size:12px;margin:10px 0 0}.facebook-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:25px}.facebook-post{min-height:142px;display:flex;background:#1c1c19;border:1px solid var(--line);color:var(--cream)}.facebook-post>img{width:38%;object-fit:cover}.facebook-post>div{display:flex;flex-direction:column;align-items:flex-start;padding:16px}.facebook-post time{color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:1px}.facebook-post p{margin:10px 0 auto;color:#d3d0c7;font-size:11px;line-height:1.5}.facebook-post span{margin-top:12px;font-size:9px;color:#a8a59d}.facebook-post:hover span{color:var(--gold)}.outline-button{background:transparent;border:1px solid var(--gold);color:var(--cream);padding:14px 17px;min-width:183px}.outline-button:hover{background:var(--gold);color:var(--ink)}.booking-section{padding:70px 0 78px}.booking-layout{max-width:1080px;display:grid;grid-template-columns:1fr;align-items:start;gap:24px}.booking-intro{padding-top:8px}.booking-intro h2{font-size:50px;letter-spacing:-2px}.booking-intro>p:last-child{color:#a8a59d;font-size:12px;line-height:1.6;max-width:280px;margin-top:18px}.booking-card{background:var(--cream);color:var(--ink);padding:clamp(24px,3vw,36px);width:100%;border:1px solid rgba(255,255,255,.7);border-radius:14px;box-shadow:0 20px 55px rgba(0,0,0,.22)}.booking-steps{display:flex;align-items:center;gap:10px;margin-bottom:24px;color:#aaa69c;font-weight:700;font-size:10px;letter-spacing:.6px}.booking-steps span{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:#e7e3da}.booking-steps span.active,.booking-steps span.done{color:#7c5f31}.booking-steps small{text-transform:uppercase;font-size:8px;letter-spacing:1px}.booking-steps i{height:1px;width:36px;background:#d5d0c5}.field-label{display:block;margin:0 0 6px;font-size:9px;font-weight:700;color:#302f2a}.field-label span{color:#88847a;font-weight:400}.booking-card input,.booking-card select,.booking-card textarea{display:block;width:100%;min-height:48px;border:1px solid #dedad1;border-radius:8px;background:#fbfaf7;padding:11px 13px;color:#25241f;font-size:12px;margin-bottom:16px;outline:none;transition:border-color .2s,box-shadow .2s}.booking-card input:focus,.booking-card select:focus,.booking-card textarea:focus{border-color:#a17b40;box-shadow:0 0 0 3px rgba(200,163,100,.2)}.booking-card :disabled{opacity:.6;cursor:not-allowed}.booking-card textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-date-time{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);gap:32px;margin:4px 0 20px}.date-picker-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-height:24px}.date-picker-heading .field-label{margin:0}.selected-date{color:#655234;font-size:11px;font-weight:700;text-align:right}.calendar-month{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;margin:2px 0 10px;text-align:center}.calendar-month strong{font:700 13px var(--sans)}.calendar-month button{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:#655234;font-size:23px;cursor:pointer}.calendar-month button:hover:not(:disabled){background:#e7e3da}.calendar-days,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.calendar-weekdays{margin-bottom:5px;color:#89847a;font-size:10px;font-weight:700}.calendar-weekdays span{padding:5px 0}.calendar-blank,.calendar-day{display:grid;place-items:center;width:100%;aspect-ratio:1}.calendar-day{border:0;border-radius:50%;background:transparent;color:#302f2a;font-size:12px;cursor:pointer}.calendar-day:hover:not(:disabled){background:#e7e3da}.calendar-day.selected{background:var(--ink);color:var(--cream)}.calendar-day:disabled{color:#c3bfb6;cursor:not-allowed}.calendar-hint{margin:13px 0 0;color:#858075;font-size:11px;line-height:1.5}.time-picker{min-width:0}.time-group{margin:3px 0 17px}.time-group-label{display:block;margin:0 0 8px;color:#858075;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.time-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-slot{min-height:40px;border:1px solid #dedad1;border-radius:8px;background:#fbfaf7;color:#302f2a;font-size:11px;cursor:pointer;transition:background .16s,border-color .16s,color .16s,transform .16s}.time-slot:hover{border-color:#b58e50;transform:translateY(-1px)}.time-slot.selected{border-color:var(--ink);background:var(--ink);color:var(--cream)}.calendar-day:focus-visible,.calendar-month button:focus-visible,.time-slot:focus-visible{outline:3px solid rgba(200,163,100,.55);outline-offset:2px}.submit-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border:0;border-radius:8px;background:var(--ink);color:var(--cream);font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;transition:background .2s,transform .2s}.submit-button:not(:disabled):hover{background:#494236}.submit-button span{font-size:17px}.submit-button:disabled{opacity:.45}.booking-note{text-align:center;color:#88847a;font-size:9px;margin:13px 0 0}.booking-note a{color:#655234;text-decoration:underline}.form-message{background:#f8e9e5;border-left:3px solid #aa4f38;padding:10px;color:#763320;font-size:11px}.booking-complete h3,.review-panel h3{font:400 29px var(--serif);margin:0 0 16px}.review-panel dl{margin-bottom:18px}.review-panel dl div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #d9d5cc;font-size:11px}.review-panel dt{color:#77736a}.review-panel dd{margin:0;font-weight:700;text-align:right}.text-button{display:block;margin:12px auto 0;padding:8px;border:0;background:transparent;color:#6d5733;text-decoration:underline;font-size:10px}.booking-complete{text-align:center;padding:20px 4px}.booking-complete .eyebrow{margin-top:18px}.booking-complete p:not(.eyebrow){color:#6a665e;font-size:12px}.checkmark{display:inline-grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#e0ead8;color:#47643d;font-size:22px}.site-footer{border-top:1px solid var(--line);background:var(--ink);padding:22px 0;color:#a7a39a}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;text-transform:uppercase;font-size:8px;letter-spacing:1px}.footer-inner>span{color:#716e68}.footer-inner>div{display:flex;gap:22px}.footer-brand{color:var(--cream)}.image-viewer{position:fixed;z-index:1000;inset:0;padding:54px 74px;background:rgba(0,0,0,.96);color:#fff}.image-viewer,.image-viewer figure{display:flex;align-items:center;justify-content:center}.image-viewer figure{flex-direction:column;width:100%;height:100%;margin:0}.image-viewer figure img{display:block;max-width:100%;max-height:calc(100% - 42px);object-fit:contain}.image-viewer figcaption{display:flex;justify-content:space-between;gap:25px;width:min(100%,880px);padding-top:12px;color:#d8d4cb;font-size:11px}.image-viewer figcaption span{color:#a9a49a}.viewer-arrow,.viewer-close{position:absolute;border:0;color:#fff;background:rgba(255,255,255,.12);display:grid;place-items:center;cursor:pointer}.viewer-close{right:24px;top:22px;height:44px;width:44px;font-size:30px}.viewer-arrow{top:50%;transform:translateY(-50%);height:54px;width:44px;font-size:40px;line-height:1}.viewer-prev{left:17px}.viewer-next{right:17px}.viewer-arrow:hover,.viewer-close:hover{background:rgba(200,163,100,.65)}@media (max-width:767px){html{scroll-padding-top:84px}.site-header{height:84px}.brand-mark{width:164px;transform:none;transform-origin:left center}.brand-image{height:174px;width:174px;transform:translateY(50px)}.main-nav{gap:15px;font-size:9px}.nav-book{padding:11px 15px;min-width:62px}.hero-section{min-height:490px;height:70vh;max-height:620px}.hero-section:after{display:none}.hero-copy h1{font-size:clamp(50px,13vw,72px);letter-spacing:-2.8px}.hero-caption{left:24px;right:auto;bottom:22px;font-size:12px}.work-section{padding:44px 0 48px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.section-heading h2{font-size:34px}.story-section{grid-template-columns:1fr}.story-brand-panel{min-height:310px}.story-logo-image{width:min(96%,380px);max-height:320px}.story-emblem{width:208px;height:208px}.story-emblem strong{font-size:27px}.story-brand-panel:before{width:330px;height:330px}.story-brand-panel:after{width:286px;height:286px}.story-copy{padding:45px 26px 48px}.story-copy h2{font-size:39px}.facebook-section{padding:42px 0}.facebook-inner{align-items:flex-start;flex-direction:column}.facebook-inner h2{font-size:31px}.facebook-posts{grid-template-columns:1fr}.facebook-post{min-height:125px}.booking-section{padding:48px 0 55px}.booking-layout{grid-template-columns:1fr;gap:24px}.booking-intro h2{font-size:43px}.booking-intro>p:last-child{margin-top:10px}.booking-card{padding:20px 16px}.booking-date-time{grid-template-columns:1fr;gap:24px}.time-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field-row{gap:9px}.footer-inner{flex-wrap:wrap;font-size:7px}.footer-credit{order:3;flex-basis:100%}.footer-inner>span:not(.footer-credit){order:4;flex-basis:100%}.footer-inner>div{gap:13px}.image-viewer{padding:52px 10px}.viewer-prev{left:6px}.viewer-next{right:6px}.viewer-arrow{width:36px;height:45px;background:rgba(0,0,0,.65)}.image-viewer figure img{max-width:calc(100% - 22px)}}@media (max-width:390px){.main-nav{gap:11px}.brand-mark{width:130px}.brand-image{height:148px;width:148px;transform:translateY(47px)}.brand-name{font-size:19px}.main-nav{font-size:8px}.field-row{grid-template-columns:1fr;gap:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}