:root{--red:#b30d16;--blue:#302d80;--ink:#12121a;--cream:#f6f3ed;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink)}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px 5%;background:#fff;border-bottom:4px solid var(--red)}.brand{display:flex;align-items:center;gap:10px;color:var(--blue);text-decoration:none;font-weight:900}.brand img{width:52px;height:52px;object-fit:contain}.brand span{letter-spacing:.04em}nav{display:flex;align-items:center;gap:20px}nav a{text-decoration:none;color:var(--ink);font-weight:800;font-size:.9rem}.nav-toggle{display:none}.btn{display:inline-block;background:var(--red);color:#fff!important;padding:14px 20px;border:0;text-decoration:none;font-weight:900;letter-spacing:.04em;cursor:pointer}.btn.secondary{background:var(--blue)}.hero{min-height:650px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:6vw;padding:70px 7%;background:linear-gradient(120deg,#11111a,#25223f);color:#fff}.hero h1{font-size:clamp(3rem,7vw,6.7rem);line-height:.88;margin:10px 0 25px;text-transform:uppercase}.hero-visual{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:28px;filter:brightness(.62);box-shadow:0 20px 60px #0008}.hero-logo{position:relative;z-index:2;width:58%;max-width:340px;border-radius:50%;box-shadow:0 12px 40px #0008}.sample-badge{position:absolute;z-index:3;left:18px;right:18px;bottom:18px;background:#12121ad9;color:#fff;padding:10px 12px;text-align:center;font-size:.7rem;font-weight:900;letter-spacing:.08em;border-left:4px solid var(--red)}.eyebrow{color:#d61c29;font-weight:900;letter-spacing:.18em;font-size:.8rem}.hero .eyebrow,.dark .eyebrow{color:#ff3946}.hero p:not(.eyebrow){font-size:1.2rem;max-width:650px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:30px}.text-link{color:#fff;font-weight:800}.quick{display:grid;grid-template-columns:repeat(3,1fr);background:var(--blue);color:#fff}.quick div{padding:24px 7%;display:flex;flex-direction:column;border-right:1px solid #ffffff33}.quick a{color:#fff}.section{padding:80px 7%}.section h2{font-size:clamp(2.3rem,5vw,4.5rem);margin:5px 0 15px;text-transform:uppercase}.lead{font-size:1.15rem;max-width:720px}.food-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0 10px}.food-gallery figure{margin:0;background:#fff;box-shadow:0 10px 28px #0002;overflow:hidden}.food-gallery img{width:100%;height:280px;object-fit:cover;display:block}.food-gallery figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;color:var(--blue);font-weight:900;text-transform:uppercase}.food-gallery figcaption span{font-size:.7rem;color:#777;letter-spacing:.06em}.photo-note{font-size:.85rem;opacity:.66;margin:0 0 30px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:35px 0}.cards article{background:#fff;padding:28px;border-top:6px solid var(--red);box-shadow:0 8px 25px #0000000d}.cards h3{color:var(--blue);font-size:1.25rem}.cards b{color:var(--red)}details{background:#fff;padding:20px}summary{font-weight:900;cursor:pointer}.full-menu{columns:2;column-gap:40px;margin-top:20px}.menu-group{break-inside:avoid;margin-bottom:30px}.menu-group h3{color:var(--blue);border-bottom:3px solid var(--red);padding-bottom:5px}.menu-item{margin:0 0 12px}.menu-item strong{display:block}.order{text-align:center;background:#fff}.order h2{color:var(--blue)}.muted{opacity:.65}.dark{background:var(--ink);color:#fff}.gameday-photo{position:relative;background:linear-gradient(90deg,#11111aee,#11111aaa),url("assets/sportsbar-placeholder.jpg") center 42%/cover no-repeat;min-height:520px;display:flex;align-items:center}.gameday-content{max-width:780px}.sample-caption{font-size:.75rem;opacity:.68;margin-top:14px}.banner{margin-top:30px;padding:24px;border:3px solid var(--red);font-weight:900;text-align:center;font-size:1.5rem}.hiring{background:#e9e7f3}.hiring form{max-width:850px;margin-top:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:7px;font-weight:800;margin-bottom:18px}input,select,textarea{padding:13px;border:1px solid #bbb;font:inherit;background:#fff}.form-note{font-size:.85rem;opacity:.65}.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.contact a:not(.btn){color:var(--red);font-weight:900}.map-placeholder{min-height:280px;background:var(--blue);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:2rem;border:10px solid #fff;box-shadow:0 10px 30px #0002}.map-placeholder span{font-size:1rem}footer{padding:35px 7%;background:#fff;display:flex;align-items:center;gap:15px}footer img{width:55px}@media(max-width:850px){nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}.nav-toggle{display:block;border:0;background:none;font-size:1.6rem}.brand span{display:none}.hero{grid-template-columns:1fr;text-align:center;min-height:auto}.hero-visual{min-height:390px;margin-top:12px}.hero-logo{max-width:240px}.food-gallery{grid-template-columns:1fr}.food-gallery img{height:260px}.actions{justify-content:center}.quick,.cards,.contact{grid-template-columns:1fr}.quick div{border-right:0;border-bottom:1px solid #ffffff33}.form-grid{grid-template-columns:1fr}.full-menu{columns:1}}

.hours-list{display:grid;grid-template-columns:minmax(110px,1fr) auto;gap:.45rem 1.5rem;max-width:360px;margin:0 0 1.25rem}.hours-list span:nth-child(odd){font-weight:700}.hours-list span:nth-child(even){text-align:right;white-space:nowrap}

.hero-video{background:#111}

/* Full-screen homepage video */
.hero{position:relative;min-height:calc(100vh - 80px);display:flex;align-items:center;padding:72px 7%;overflow:hidden;background:#0b0b12;color:#fff}
.hero-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,5,12,.88) 0%,rgba(5,5,12,.66) 45%,rgba(5,5,12,.26) 78%,rgba(5,5,12,.42) 100%)}
.hero-copy{position:relative;z-index:2;max-width:820px;text-shadow:0 3px 20px rgba(0,0,0,.5)}
.hero .hero-logo{width:170px;max-width:28vw;border-radius:50%;box-shadow:0 10px 36px #0009;margin-bottom:16px}
.hero .sample-badge{position:static;display:inline-block;margin-top:26px;background:#12121acc;border-left:4px solid var(--red);padding:9px 12px;font-size:.68rem;text-shadow:none}
.hero-visual,.hero-photo{display:none}

/* Game-day sports package marks */
.gameday-content{max-width:1000px;width:100%}
.sports-packages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:30px 0 12px}
.sports-packages article{min-height:145px;background:#fff;border:2px solid rgba(255,255,255,.16);border-bottom:5px solid var(--red);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;box-shadow:0 10px 28px #0005}
.sports-packages img{display:block;max-width:100%;height:92px;object-fit:contain}
.sports-packages span{margin-top:8px;color:#20202b;font-weight:900;font-size:.8rem;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.sports-note{font-size:.78rem;opacity:.72;margin:8px 0 0}

@media(max-width:850px){
  .hero{min-height:calc(100svh - 72px);text-align:left;padding:58px 7% 46px}
  .hero-overlay{background:linear-gradient(90deg,rgba(5,5,12,.84),rgba(5,5,12,.48))}
  .hero .hero-logo{width:130px;max-width:38vw}
  .sports-packages{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:480px){.sports-packages{grid-template-columns:1fr 1fr}.sports-packages article{min-height:120px}.sports-packages img{height:70px}}

/* Shorter cinematic homepage video hero */
.hero{min-height:560px;height:68vh;max-height:680px}
@media(max-width:850px){.hero{min-height:500px;height:64svh;max-height:620px}}
@media(max-width:480px){.hero{min-height:460px;height:60svh;max-height:560px}}

/* Center only the content over the homepage video; preserve the master design */
.hero{justify-content:center;text-align:center}
.hero-copy{width:min(820px,100%);margin:0 auto;display:flex;flex-direction:column;align-items:center}
.hero-copy p{margin-left:auto;margin-right:auto}
.hero .hero-logo{margin-left:auto;margin-right:auto}
.hero .actions{justify-content:center}
@media(max-width:850px){.hero{text-align:center}.hero-copy{margin:0 auto}.hero .actions{justify-content:center}}

/* Requested minor hero adjustment: move only the existing hero MVP logo down ~0.5 inch (48px). */
.hero .hero-logo{transform:translateY(48px)}

/* Requested adjustment: move only hero MVP logo an additional 1/8 inch (~12px) down */
.hero .hero-logo{transform:translateY(60px)}

/* Keep the approved hero MVP logo position locked; move only the Madison Heights line down to clear it. */
.hero .eyebrow{margin-top:72px}

/* Requested adjustment: move only the existing hero MVP logo farther down; all other styling remains unchanged. */
.hero .hero-logo{transform:translateY(72px)}

/* Minor adjustment: move only the existing hero MVP logo a little farther down. */
.hero .hero-logo{transform:translateY(84px)}

/* Minor approved hero spacing adjustment: move only the hero MVP logo and Madison Heights line slightly lower. */
.hero .hero-logo{transform:translateY(96px)}
.hero .eyebrow{margin-top:84px}

/* Approved master minor fix: lift only the hero action row so the buttons clear the blue section below. */
.hero .actions{transform:translateY(-24px)}

/* Minor approved spacing adjustment: move only the Features section slightly down to create breathing room below the hero buttons. */
.quick{margin-top:18px}

/* Requested master adjustment: extend only the bottom of the hero by about 1/2 inch (48px), preserving existing hero content positions. */
.hero{min-height:608px;height:calc(68vh + 48px);max-height:728px}
.hero-copy{transform:translateY(-24px)}
@media(max-width:850px){.hero{min-height:548px;height:calc(64svh + 48px);max-height:668px}}
@media(max-width:480px){.hero{min-height:508px;height:calc(60svh + 48px);max-height:608px}}

/* Requested minor hero spacing adjustment: move only the neighborhood description and hero buttons slightly upward. */
.hero-copy > p:not(.eyebrow){transform:translateY(-12px)}
.hero .actions{transform:translateY(-36px)}

/* Requested minor adjustment: move only the two-line neighborhood description and hero button row upward together. */
.hero-copy > p:not(.eyebrow){transform:translateY(-24px)}
.hero .actions{transform:translateY(-48px)}

/* Requested minor adjustment: remove the gap between the Hero and Features section only. */
.quick{margin-top:0}

/* Requested minor adjustment: move only the Menu section upward, tighter to the Features section. */
#menu{padding-top:40px}

/* Requested minor adjustment: move only the Game Day section upward, closer to the Menu area. */
#gameday{padding-top:40px}

/* Requested minor adjustment: compact only the Now Hiring section text and form controls. */
#hiring{padding-top:52px;padding-bottom:52px}
#hiring h2{font-size:clamp(2rem,4vw,3.5rem);margin-bottom:10px}
#hiring > p:not(.eyebrow){font-size:.95rem;margin-top:6px;margin-bottom:12px}
#hiring form{margin-top:20px}
#hiring .form-grid{gap:12px}
#hiring label{gap:5px;margin-bottom:12px;font-size:.9rem}
#hiring input,#hiring select,#hiring textarea{padding:9px;font-size:.9rem}
#hiring textarea{min-height:64px}
#hiring .btn{padding:11px 17px;font-size:.9rem}
#hiring .form-note{font-size:.78rem;margin-bottom:0}

/* Requested Game Day image update only: four supplied DIRECTV graphics at matching display size. */
#gameday .sports-packages article{overflow:hidden}
#gameday .sports-packages img{width:100%;height:180px;object-fit:contain}
@media(max-width:850px){#gameday .sports-packages img{height:160px}}
@media(max-width:480px){#gameday .sports-packages img{height:120px}}

/* Game Day centered layout — requested adjustment only */
#gameday .gameday-content{margin-left:auto;margin-right:auto;text-align:center}
#gameday .lead{margin-left:auto;margin-right:auto}
#gameday .sports-note{margin-left:auto;margin-right:auto}
#gameday .sample-caption{margin-left:auto;margin-right:auto}

/* MVP navigation behavior: land on the hero and smoothly scroll to sections. */
html { scroll-behavior: smooth; }
#home { min-height: calc(100vh - 80px); scroll-margin-top: 80px; }
#menu, #order, #gameday, #specials, #hiring, #contact { scroll-margin-top: 80px; }
@media (max-width: 850px) {
  #home { min-height: calc(100vh - 80px); }
}

/* Ordering service cards */
.order-options{max-width:1050px;margin:34px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.order-card{position:relative;min-height:190px;padding:28px 18px 22px;background:#fff;border:2px solid #e5e5e5;border-radius:14px;box-shadow:0 10px 28px #00000014;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.order-card[href]:hover{transform:translateY(-4px);box-shadow:0 15px 34px #00000022;border-color:#bbb}.order-card strong{font-size:1.05rem}.order-card small{font-size:.82rem;color:#666;font-weight:700}.brand-logo{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:1.7rem;font-weight:900;line-height:1;letter-spacing:-.04em}.toast-card{border-top:6px solid #f5633b}.toast-logo{color:#f5633b;font-size:2rem;letter-spacing:-.06em}.order-badge{position:absolute;top:12px;right:12px;background:#f5633b;color:#fff;border-radius:999px;padding:5px 8px;font-size:.58rem;font-weight:900;letter-spacing:.08em}.doordash-card{border-top:6px solid #eb1700}.doordash-logo{color:#eb1700}.dd-mark{display:inline-grid;place-items:center;margin-right:7px;width:31px;height:25px;border:4px solid #eb1700;border-left-width:9px;border-radius:4px 14px 14px 4px;font-size:0}.grubhub-card{border-top:6px solid #f63440}.grubhub-logo{color:#f63440;letter-spacing:-.06em}.ubereats-card{border-top:6px solid #06c167}.ubereats-logo{color:#111;letter-spacing:-.06em}.ubereats-logo em{color:#06c167;font-style:normal;margin-left:6px}.coming-soon{background:#fafafa}.coming-soon small{display:inline-block;background:#111;color:#fff;border-radius:999px;padding:6px 10px;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem}@media(max-width:900px){.order-options{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.order-options{grid-template-columns:1fr}.order-card{min-height:165px}}

/* Specials & Events: approved MVP promotional flyers */
.specials-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px;align-items:start}
.specials-gallery figure{margin:0;background:#fff;box-shadow:0 10px 28px #0002;overflow:hidden}
.specials-gallery img{display:block;width:100%;height:auto;object-fit:contain}
.specials-gallery figcaption{padding:15px;text-align:center;color:var(--blue);font-weight:900;text-transform:uppercase}
@media(max-width:850px){.specials-gallery{grid-template-columns:1fr;max-width:550px;margin-left:auto;margin-right:auto}}

/* October 10 refinement: equal-size Specials flyers and tighter vertical rhythm. */
.specials-gallery{align-items:stretch;gap:16px;margin-top:20px}
.specials-gallery figure{display:flex;flex-direction:column;min-width:0}
.specials-gallery img{width:100%;height:clamp(300px,35vw,490px);object-fit:contain;object-position:center;background:#f5f5f5}
.specials-gallery figcaption{margin-top:auto;padding:12px}
.section{padding-top:52px;padding-bottom:52px}
.section h2{margin-bottom:10px}
.food-gallery{margin-top:22px}
.cards{margin-top:22px;margin-bottom:22px}
.order-options{margin-top:20px}
.hero{min-height:570px;height:calc(68vh + 12px);max-height:690px}
@media(max-width:850px){
 .section{padding-top:42px;padding-bottom:42px}
 .hero{min-height:530px;height:calc(64svh + 30px);max-height:650px}
 .specials-gallery img{height:auto;aspect-ratio:4/5;object-fit:contain}
}
@media(max-width:480px){.hero{min-height:500px;height:calc(60svh + 35px);max-height:590px}}

/* October 10: compact scrolling layout and prominent Google directions link. */
#home.hero{min-height:540px;height:clamp(540px,65vh,640px);max-height:640px;padding-top:44px;padding-bottom:40px}
.section{padding-top:34px;padding-bottom:34px}
#menu,#gameday,#hiring{padding-top:34px;padding-bottom:34px}
.section h2{margin-top:5px;margin-bottom:8px}
.section .lead{margin-top:8px;margin-bottom:12px}
.food-gallery{margin-top:14px;gap:14px}
.cards{margin-top:14px;margin-bottom:14px;gap:14px}
.order-options{margin-top:14px;gap:14px}
.sports-packages{margin-top:16px;margin-bottom:14px;gap:12px}
.banner{margin-top:14px;padding:14px}
.specials-gallery{margin-top:14px;gap:14px}
#hiring form{margin-top:12px}
.quick{margin-top:0}
.quick div{padding-top:14px;padding-bottom:14px}
.contact{gap:24px}
.contact .map-directions{min-height:215px;text-decoration:none;cursor:pointer;padding:18px;text-align:center}
.contact .map-directions .map-action{display:block;margin-top:15px;font-size:1rem;text-decoration:underline;font-weight:800;color:#fff}
.contact .directions-link{display:inline-block;max-width:100%;text-align:center;line-height:1.4}
footer{padding-top:20px;padding-bottom:20px}
@media(max-width:850px){
 #home.hero{min-height:510px;height:clamp(510px,65svh,610px);max-height:610px;padding-top:35px;padding-bottom:30px}
 .section,#menu,#gameday,#hiring{padding-top:28px;padding-bottom:28px}
 .contact{gap:18px}
 .specials-gallery{gap:14px}
}
@media(max-width:480px){
 #home.hero{min-height:490px;height:clamp(490px,65svh,570px);max-height:570px}
 .section,#menu,#gameday,#hiring{padding-top:24px;padding-bottom:24px}
 .contact .map-directions{min-height:170px}
}

/* Final contact cleanup: remove redundant phone strip, compact contact, two Google actions. */
#contact.contact{padding-top:22px;padding-bottom:22px;gap:16px;align-items:center}
#contact.contact>div:first-child p{margin-top:5px;margin-bottom:7px}
#contact.contact h2{margin-bottom:7px}
#contact .compact-hours{font-weight:700;margin:3px 0 8px}
.google-link-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
.google-link-card{display:flex;justify-content:center;align-items:center;min-height:110px;padding:18px 14px;background:#123a78;color:white;border-radius:12px;text-align:center;text-decoration:none;box-shadow:0 5px 16px #0002;line-height:1.4}
.google-link-card:hover,.google-link-card:focus-visible{background:#a71e2b;color:white}
.google-link-card strong{font-size:clamp(.9rem,1.3vw,1.12rem)}
@media(max-width:850px){#contact.contact{padding-top:18px;padding-bottom:18px}.google-link-cards{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.google-link-cards{grid-template-columns:1fr}.google-link-card{min-height:64px;padding:12px}}

/* Final header and contact refinements */
header{padding-top:10px;padding-bottom:10px;min-height:88px}
header .brand img{width:68px;height:68px}
header .brand span{font-size:1.1rem;letter-spacing:.025em}
header nav a{font-size:.96rem}
#contact .google-link-card,#contact .google-link-card strong{color:#fff!important}
#contact .google-link-card{flex-direction:column;gap:9px;background:#123a78;border:2px solid #e2eafa;transition:background .2s ease,transform .2s ease}
#contact .google-link-card:hover,#contact .google-link-card:focus-visible{background:#244e92;transform:translateY(-2px)}
.google-g-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;font-family:Arial,sans-serif;font-size:31px;font-weight:900;line-height:1;color:#4285f4;box-shadow:0 2px 8px #0003}
#contact a.call-now-link{display:inline-block;background:#b30d16;color:#fff!important;text-decoration:none;padding:11px 16px;border-radius:8px;font-size:1.05rem}
#contact a.call-now-link:hover,#contact a.call-now-link:focus-visible{background:#8d0810}
@media(max-width:850px){header{min-height:88px}header .brand img{width:64px;height:64px}nav{top:88px}}
@media(max-width:480px){header .brand img{width:60px;height:60px}.google-g-icon{width:36px;height:36px;font-size:27px}}

/* Full food menu PDF button */
.menu-pdf-actions{text-align:center;margin:20px auto 24px;}
.menu-pdf-button{display:inline-flex;align-items:center;justify-content:center;background:#c91e32;color:#fff!important;border:2px solid #fff;border-radius:8px;padding:15px 22px;font-weight:800;letter-spacing:.03em;text-decoration:none;box-shadow:0 3px 12px #0002;}
.menu-pdf-button:hover{background:#a91527;color:#fff!important;}
