:root{--ink:#160c08;--ink-2:#21110b;--red:#7e160f;--red-bright:#a3291d;--gold:#d1a54a;--cream:#f7ead2;--muted:#cbbba5;--line:rgba(209,165,74,.25);--shadow:0 24px 70px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--ink);color:var(--cream);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.65}body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.075;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");z-index:20}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;background:var(--gold);color:var(--ink);padding:10px 16px;z-index:100;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:absolute;top:0;left:0;right:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.14);background:linear-gradient(#120a07cc,transparent)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;font-family:"Rye",serif;font-size:1rem;color:var(--gold);box-shadow:inset 0 0 0 4px rgba(209,165,74,.08)}.brand strong{display:block;font-family:"Rye",serif;font-size:1.24rem;line-height:1;color:#fff;font-weight:400;letter-spacing:.03em}.brand small{display:block;margin-top:5px;text-transform:uppercase;letter-spacing:.23em;color:var(--gold);font-size:.62rem}.nav-links{display:flex;gap:30px;align-items:center}.nav-links a{font-size:.86rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:#f8eddc;transition:.2s}.nav-links a:hover,.nav-links a:focus-visible{color:var(--gold)}.menu-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-toggle span:not(.sr-only){display:block;width:25px;height:2px;margin:5px;background:var(--cream)}
.hero{position:relative;min-height:760px;height:100svh;max-height:960px;display:flex;align-items:center;overflow:hidden;background:#0d0908}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,8,5,.96) 0%,rgba(20,10,7,.73) 42%,rgba(20,10,7,.17) 75%),linear-gradient(0deg,rgba(17,9,6,.8),transparent 45%)}.hero-content{position:relative;padding-top:90px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-size:.78rem;font-weight:700}.eyebrow span{color:var(--red-bright);padding:0 7px}h1,h2,h3{font-family:"Rye",serif;font-weight:400;margin:0;line-height:1.12}h1{font-size:clamp(3.5rem,8vw,7rem);max-width:900px;color:#fff;text-shadow:0 6px 28px rgba(0,0,0,.7)}h1 em{font-style:normal;color:var(--gold)}h2{font-size:clamp(2.3rem,5vw,4.25rem);color:#fff}h3{font-size:1.75rem;color:#fff}.hero-copy{font-size:1.2rem;max-width:560px;color:#eadbc8;margin:24px 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 24px;border:1px solid var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;transition:.2s}.button-primary{background:var(--red);color:#fff;border-color:var(--red)}.button-primary:hover,.button-primary:focus-visible{background:var(--red-bright);transform:translateY(-2px)}.button-ghost:hover,.button-ghost:focus-visible{background:var(--gold);color:var(--ink)}.scroll-note{position:absolute;right:5vw;bottom:35px;font-size:.68rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);writing-mode:vertical-rl}.scroll-note span{color:var(--gold);font-size:1rem;margin-top:10px}
.welcome{background:#f0e1c7;color:#342116;position:relative}.welcome::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:16px;background:linear-gradient(135deg,transparent 8px,var(--ink) 0) 0 0/16px 16px repeat-x}.welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.welcome h2{color:#2a1710}.welcome-copy>p{font-size:1.12rem;line-height:1.9;margin-top:0}.promise-row{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;padding-top:23px;border-top:1px solid #9d8263}.promise-row span{font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;color:var(--red)}
.menu{background:var(--ink)}.centered{text-align:center}.section-intro{max-width:670px;text-align:center;margin:20px auto 55px;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.menu-card{position:relative;background:linear-gradient(160deg,#2a1710,#1c0f0a);border:1px solid var(--line);padding:38px 30px;overflow:hidden}.menu-card.featured{border-top:3px solid var(--red-bright)}.menu-icon{position:absolute;right:20px;top:12px;font-family:"Rye",serif;font-size:4.5rem;line-height:1;color:rgba(209,165,74,.08)}.card-label{text-transform:uppercase;color:var(--gold);font-size:.7rem;letter-spacing:.19em;font-weight:700;margin:0 0 5px}.menu-card>p:not(.card-label){color:var(--muted);min-height:78px}.menu-card ul{list-style:none;padding:20px 0 0;margin:22px 0 0;border-top:1px solid var(--line)}.menu-card li{padding:10px 0;border-bottom:1px dashed rgba(209,165,74,.16)}.menu-card li span,.menu-card li small{display:block}.menu-card li span{color:#fff;font-weight:600}.menu-card li small{color:#9e8a77;font-size:.76rem}.bar-banner{margin-top:22px;padding:38px 48px;display:grid;grid-template-columns:100px 1fr;gap:28px;align-items:center;background:linear-gradient(90deg,rgba(74,8,8,.93),rgba(24,10,9,.95)),repeating-linear-gradient(90deg,#111 0 2px,#222 2px 4px);border:1px solid #8c2b1f}.bar-banner p{margin:8px 0;color:#ddcdbd}.bar-banner .kicker{color:var(--gold)}.bar-monogram{display:grid;place-items:center;width:88px;height:88px;border:1px solid var(--gold);border-radius:50%;font-family:"Rye",serif;font-size:3rem;color:var(--gold)}
.story{background:#26130d;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.story-panel{min-height:480px;padding:45px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(126,22,15,.78),rgba(30,13,8,.88)),url("mill-gin-exterior.jpeg") center/cover;border:1px solid var(--gold);box-shadow:var(--shadow)}.story-number{font-size:.8rem;letter-spacing:.2em;color:var(--gold)}.story-number strong{font-family:"Rye",serif;font-size:2.3rem;font-weight:400;color:#fff}.story blockquote{font-family:"Rye",serif;font-size:1.55rem;line-height:1.45;margin:0;color:#fff}.story-copy p:not(.kicker):not(.signature){color:#d2c1af;font-size:1.06rem}.signature{font-family:"Rye",serif;color:var(--gold);font-size:1.25rem;margin-top:28px}
.hours{background:#f0e1c7;color:#342116}.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:stretch}.hours h2{color:#2a1710}.hours-table{margin-top:35px;border-top:2px solid #2a1710}.hours-table div{display:flex;justify-content:space-between;gap:24px;padding:17px 0;border-bottom:1px solid #b19b7e}.hours-table strong{color:var(--red)}.hours-note{font-size:.82rem;color:#725e49}.location-card{position:relative;background:var(--ink-2);color:var(--cream);padding:55px;overflow:hidden;border:1px solid var(--gold)}.location-card h3{font-size:2rem;margin-top:8px}.location-card>p:not(.card-label){color:var(--muted);margin:8px 0 30px}.location-lines{position:absolute;right:-20px;bottom:-10px;transform:rotate(-20deg);opacity:.1}.location-lines span{display:block;width:260px;height:2px;background:var(--gold);margin:25px}
.contact{background:linear-gradient(rgba(20,10,7,.84),rgba(20,10,7,.91)),url("mill-gin-exterior.jpeg") center 46%/cover fixed;text-align:center}.contact-inner{max-width:760px}.contact-inner>p:not(.kicker){color:#ddcdbd;font-size:1.08rem}.text-link{display:inline-block;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;margin-top:20px}.text-link span{margin-left:8px}
footer{padding:45px 0;background:#0e0705;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner>p{color:#8f7e6e;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.footer-brand .brand-mark{width:42px;height:42px}.footer-brand strong{font-size:1rem}
@media (max-width:900px){.nav-links{position:absolute;top:88px;left:0;right:0;background:#160c08ee;border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;padding:18px 30px}.nav-links.open{display:flex}.nav-links a{padding:9px 0}.menu-toggle{display:block}.welcome-grid,.story-grid,.hours-grid{grid-template-columns:1fr;gap:45px}.menu-grid{grid-template-columns:1fr}.menu-card>p:not(.card-label){min-height:0}.story-panel{min-height:380px}.footer-inner{flex-direction:column;text-align:center}.bar-banner{grid-template-columns:1fr;text-align:center}.bar-monogram{margin:auto}}
@media (max-width:600px){.shell{width:min(100% - 28px,1160px)}.section{padding:78px 0}.hero{min-height:700px}.hero>img{object-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(16,8,5,.94),rgba(20,10,7,.5)),linear-gradient(0deg,rgba(17,9,6,.9),transparent 50%)}h1{font-size:3.35rem}.hero-copy{font-size:1rem}.hero-actions{align-items:stretch;flex-direction:column;width:100%}.scroll-note{display:none}.welcome-grid{gap:24px}.promise-row{gap:14px}.menu-card{padding:32px 22px}.bar-banner{padding:32px 22px}.story-panel{padding:30px}.location-card{padding:38px 25px}.hours-table div{flex-direction:column;gap:2px}.footer-inner>p{margin:0}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Expanded menu, using the existing restaurant theme. */
.menu-sections{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 32px}.menu-card{scroll-margin-top:28px}.menu-card li small{font-size:.875rem;color:var(--muted);line-height:1.6;margin-top:4px}.menu-subheading{text-align:center;margin:62px 0 0;scroll-margin-top:30px}.lunch-intro{margin-bottom:30px}.cocktail-grid{grid-template-columns:1fr}.cocktail-grid .menu-card ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px}.cocktail-grid .menu-card>p:not(.card-label){min-height:0}.menu-sections .button{font-size:.875rem}.menu-card h3{overflow-wrap:break-word}@media(max-width:900px){.cocktail-grid .menu-card ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.cocktail-grid .menu-card ul{grid-template-columns:1fr}.menu-sections{gap:8px}.menu-sections .button{padding:0 16px}}

.menu-card li span{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.menu-price{flex:none;color:var(--gold);font-size:.875rem;font-weight:600;white-space:nowrap}

.family-hours-note{display:block;margin-top:8px;font-size:.9rem;line-height:1.5;color:#725e49;max-width:340px}

/* Employment pages reuse the restaurant palette and type. */
.team-page .site-header{position:relative;background:var(--ink-2)}.application-shell{max-width:850px}.team-page h1{font-size:clamp(2.4rem,6vw,4.25rem)}.application-shell>p{color:var(--muted)}.application-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}fieldset{border:1px solid var(--line);padding:24px;margin:28px 0}legend{color:var(--gold);padding:0 10px;font-weight:700}label{display:block;font-weight:600;margin-bottom:18px}input,select,textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid var(--gold);border-radius:2px;background:var(--ink-2);color:var(--cream);font:inherit;font-size:16px}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.check-label{display:flex;align-items:flex-start;gap:12px}.check-label input{width:22px;height:22px;flex:none}.application-trap{position:absolute;left:-10000px}.team-page button{cursor:pointer;font-family:inherit}.team-page button:disabled{opacity:.6;cursor:wait}#application-status{white-space:pre-wrap}.applicant-record{padding:24px;border:1px solid var(--line);margin:24px 0;overflow-wrap:anywhere}.applicant-record dd{white-space:pre-wrap;margin:4px 0 18px}.applicant-record dt{color:var(--gold);font-weight:700}@media(max-width:600px){.application-grid{grid-template-columns:1fr}fieldset{padding:18px}.team-page .section{padding:45px 0}}

/* Private application records print in plain black on white. */
@media print {
  @page { margin: 0.6in; }
  body.applicants-page,
  .applicants-page * {
    background: #fff !important;
    background-image: none !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    border-color: #000 !important;
  }
  body.applicants-page { font-family: Arial, sans-serif; font-size: 10pt; line-height: 1.4; }
  body.applicants-page::before,
  .applicants-page *::before,
  .applicants-page *::after { display: none !important; }
  .applicants-page .shell { width: 100%; max-width: none; margin: 0; }
  .applicants-page .section { padding: 0; }
  .applicants-page h1 { font-family: Arial, sans-serif; font-size: 22pt; }
  .applicants-page h2 { font-family: Arial, sans-serif; font-size: 18pt; break-after: avoid; }
  .applicants-page .kicker { font-size: 9pt; }
  .applicants-page .applicant-record { border: 0; padding: 0; margin: 20pt 0 0; }
  .applicants-page .applicant-record + .applicant-record { break-before: page; }
  .applicants-page dt { break-after: avoid; }
  .applicants-page dd { margin: 3pt 0 10pt; orphans: 3; widows: 3; }
  .applicants-page main > a { display: none; }
}
