.nav-hamburger{display:none;}

*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:    #2d7a2d;
  --bgd:   #1a4a1a;
  --or:    #e8610a;
  --ol:    #f5a623;
  --gold:  #d4a017;
  --bk:    #0a0a0a;
  --cr:    #fff8f0;
  --P:'Press Start 2P',monospace;
  --V:'VT323',monospace;
}
body{background:var(--bg);font-family:var(--P);min-height:100vh;}

/* CHECKERBOARDS */
.checker{height:48px;background-image:linear-gradient(45deg,#2d7a2d 25%,transparent 25%),linear-gradient(-45deg,#2d7a2d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2d7a2d 75%),linear-gradient(-45deg,transparent 75%,#2d7a2d 75%),linear-gradient(45deg,#1e4d1e 25%,transparent 25%),linear-gradient(-45deg,#1e4d1e 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1e4d1e 75%),linear-gradient(-45deg,transparent 75%,#1e4d1e 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#1e4d1e;}
.checker-to-orange{height:48px;background-image:linear-gradient(45deg,#2d7a2d 25%,transparent 25%),linear-gradient(-45deg,#2d7a2d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2d7a2d 75%),linear-gradient(-45deg,transparent 75%,#2d7a2d 75%),linear-gradient(45deg,#e8610a 25%,transparent 25%),linear-gradient(-45deg,#e8610a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8610a 75%),linear-gradient(-45deg,transparent 75%,#e8610a 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#e8610a;}
.checker-to-gold{height:48px;background-image:linear-gradient(45deg,#e8610a 25%,transparent 25%),linear-gradient(-45deg,#e8610a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8610a 75%),linear-gradient(-45deg,transparent 75%,#e8610a 75%),linear-gradient(45deg,#f5a623 25%,transparent 25%),linear-gradient(-45deg,#f5a623 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f5a623 75%),linear-gradient(-45deg,transparent 75%,#f5a623 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#f5a623;}
.checker-to-green{height:48px;background-image:linear-gradient(45deg,#f5a623 25%,transparent 25%),linear-gradient(-45deg,#f5a623 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f5a623 75%),linear-gradient(-45deg,transparent 75%,#f5a623 75%),linear-gradient(45deg,#2d7a2d 25%,transparent 25%),linear-gradient(-45deg,#2d7a2d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2d7a2d 75%),linear-gradient(-45deg,transparent 75%,#2d7a2d 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#2d7a2d;}
.checker-to-navgreen{height:48px;background-image:linear-gradient(45deg,#0a0a0a 25%,transparent 25%),linear-gradient(-45deg,#0a0a0a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#0a0a0a 75%),linear-gradient(-45deg,transparent 75%,#0a0a0a 75%),linear-gradient(45deg,#1e4d1e 25%,transparent 25%),linear-gradient(-45deg,#1e4d1e 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1e4d1e 75%),linear-gradient(-45deg,transparent 75%,#1e4d1e 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#1e4d1e;}

/* NAV */
nav{background:#1e4d1e;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:15px;color:var(--cr);letter-spacing:1px;flex-shrink:0;text-shadow:3px 3px 0 #000;}
.nav-logo img{width:44px;height:44px;image-rendering:pixelated;border-radius:4px;object-fit:cover;}
.nav-links{display:flex;gap:128px;list-style:none;}
.nav-links a{font-size:15px;color:var(--cr);text-decoration:none;letter-spacing:1px;transition:color .15s;text-shadow:3px 3px 0 #000;}
.nav-links a:hover{color:var(--ol)}
.nav-studio{font-family:'Archivo Black',sans-serif;font-size:28px;color:var(--cr);text-decoration:none;letter-spacing:-1px;flex-shrink:0;transition:color .15s;}
.nav-studio:hover{color:var(--ol)}

/* HERO */
.hero{background:var(--bg);text-align:center;padding:10px 10px 0;}
.logo-img{max-width:540px;width:100%;display:block;margin:0 auto -20px;image-rendering:pixelated;}
.tagline{font-family:var(--V);font-size:clamp(24px,4vw,40px);color:var(--cr);letter-spacing:1px;margin-bottom:-10px;text-shadow:3px 3px 0 var(--bk);}
.lep-wrap{margin:0 auto;max-width:320px;line-height:0;}
.lep-wrap img{width:100%;height:auto;image-rendering:pixelated;}
.btn-wrap{padding:4px 10px 22px;}
.order-btn{font-family:var(--P);font-size:clamp(12px,2vw,17px);background:var(--ol);color:var(--cr);border:4px solid var(--or);border-radius:12px;padding:10px 30px;letter-spacing:2px;text-decoration:none;display:inline-block;box-shadow:0 6px 0 var(--or),0 9px 0 var(--bk);transition:transform .1s,box-shadow .1s;text-shadow:3px 3px 0 var(--bk);}
.order-btn:hover{transform:translateY(4px);box-shadow:0 2px 0 var(--or),0 5px 0 var(--bk);}
.hours{font-family:var(--P);font-size:clamp(15px,1.8vw,30px);color:var(--cr);letter-spacing:2px;padding:10px 20px 20px;text-shadow:3px 3px 0 var(--bk);line-height:1;}

/* TICKER */
.ticker{background:var(--bk);padding:12px 0;overflow:hidden;white-space:nowrap;border-bottom:15px solid var(--bg);}
.ticker-inner{display:inline-block;animation:tick 25s linear infinite;font-size:13px;color:var(--gold);letter-spacing:1px;text-shadow:2px 2px 0 var(--or);}
@keyframes tick{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}

/* MENU */
.menu{background:var(--or);padding:30px 30px;}
.menu-title{font-size:clamp(20px,4vw,30px);color:var(--ol);text-align:center;letter-spacing:4px;margin-bottom:4px;text-shadow:3px 3px 0 var(--bk);}
.menu-category{margin-bottom:30px;}
.menu-cat-title{font-size:14px;color:var(--cr);margin-bottom:16px;text-shadow:2px 2px 0 var(--bk);}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:30px;}
.menu-card{background:var(--ol);border:4px solid var(--cr);border-radius:20px;padding:18px 16px;box-shadow:0 6px 0 var(--cr),0 14px 0 var(--bk);transition:transform .1s,box-shadow .1s;cursor:pointer;}
.menu-card:hover{transform:translateY(4px);box-shadow:0 5px 0 var(--cr),0 10px 0 var(--bk);}
.menu-card:active{transform:translateY(4px);box-shadow:0 5px 0 var(--cr),0 10px 0 var(--bk);}
.menu-card-name{font-size:12px;color:var(--cr);margin-bottom:10px;line-height:1;text-shadow:2px 2px 0 var(--bk);}
.menu-card-desc{font-family:var(--V);font-size:18px;font-weight:bold;color:var(--bk);margin-bottom:10px;line-height:1.2;text-transform:uppercase;}
.menu-card-price{font-size:13px;color:var(--bk);text-shadow:2px 2px 0 var(--cr);}
.menu-badge{display:inline-block;font-size:8px;background:var(--bk);color:var(--or);padding:4px 8px;margin-top:8px;border-radius:20px;}

/* GALLERY */
.gallery{background:var(--ol);padding:30px 30px;}
.gallery-title{font-size:clamp(14px,2vw,22px);color:var(--bk);text-align:center;letter-spacing:3px;margin-bottom:32px;text-shadow:3px 3px 0 var(--or);}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:310px 310px 310px;gap:24px;}
.gallery-grid .g1{grid-column:1;grid-row:1/3;}
.gallery-grid .g2{grid-column:2;grid-row:1;}
.gallery-grid .g3{grid-column:3;grid-row:1;}
.gallery-grid .g4{grid-column:2/4;grid-row:2;}
.gallery-grid .g5{grid-column:1;grid-row:3;}
.gallery-grid .g6{grid-column:2/4;grid-row:3;}
.gallery-grid > img{width:100%;height:100%;object-fit:cover;display:block;border:10px solid var(--bgd);box-shadow:8px 8px 0 var(--bk);transition:transform .3s;border-radius:20px;}
.gallery-grid > img:hover{transform:scale(1.02);}
.gallery-item{position:relative;width:100%;height:100%;}
.gallery-item > img{width:100%;height:100%;object-fit:cover;display:block;border:10px solid var(--bgd);box-shadow:8px 8px 0 var(--bk);transition:transform .3s;border-radius:20px;}
.gallery-item > img:hover{transform:scale(1.02);}
.ig-sticker{position:absolute;top:-12px;left:-12px;background:transparent !important;border:none !important;outline:none;padding:0;margin:0;line-height:0;display:block;text-decoration:none;transform:rotate(-8deg);transition:transform .2s;z-index:10;filter:drop-shadow(3px 3px 6px rgba(0,0,0,0.4));}
.ig-sticker:hover{transform:rotate(-4deg) scale(1.1);}
.ig-sticker-icon{width:140px;height:140px;display:block;background:transparent !important;border:none !important;box-shadow:none !important;border-radius:0 !important;}
.ig-sticker-text{display:none;}
.ig-sticker-handle{display:none;}

/* ABOUT */
.about{background:var(--bg);padding:60px 30px;}
.about-title{font-size:clamp(14px,2vw,22px);color:var(--ol);text-align:center;letter-spacing:3px;margin-bottom:40px;text-shadow:3px 3px 0 var(--bk);}
.about-story{font-family:var(--V);font-size:clamp(22px,3vw,32px);color:var(--cr);line-height:1.6;max-width:800px;margin:0 auto 48px;text-align:center;border-left:4px solid var(--or);border-right:4px solid var(--or);padding:0 24px;}
.about-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;max-width:1100px;margin:0 auto 40px;}
.about-box{background:var(--bgd);border:3px solid var(--or);border-radius:16px;padding:20px 16px;box-shadow:4px 4px 0 var(--bk);}
.about-box-label{font-size:7px;color:var(--or);letter-spacing:2px;margin-bottom:10px;display:block;}
.about-box-text{font-family:var(--V);font-size:18px;color:var(--cr);line-height:1.6;}
.about-tioc{text-align:center;font-family:var(--V);font-size:clamp(30px,4vw,50px);color:var(--ol);letter-spacing:6px;text-shadow:3px 3px 0 var(--bk);padding-top:20px;border-top:3px solid var(--or);max-width:800px;margin:0 auto;}

/* FIND US */
.findus{background:var(--bk);padding:60px 30px;}
.findus-title{font-size:clamp(14px,2vw,22px);color:var(--ol);text-align:center;letter-spacing:3px;margin-bottom:40px;text-shadow:3px 3px 0 var(--or);}
.findus-inner{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1100px;margin:0 auto;align-items:start;}
.findus-map{border:6px solid var(--or);border-radius:16px;overflow:hidden;box-shadow:6px 6px 0 var(--or);line-height:0;}
.findus-map iframe{width:100%;height:420px;border:none;display:block;}
.findus-info{display:flex;flex-direction:column;gap:24px;}
.findus-block-label{font-size:8px;color:var(--or);letter-spacing:2px;margin-bottom:8px;}
.findus-block-text{font-family:var(--V);font-size:20px;color:var(--cr);line-height:1.8;}
.findus-block-text a{color:var(--ol);text-decoration:none;}
.findus-block-text a:hover{color:var(--cr);}
.findus-btn{display:block;font-family:var(--P);font-size:9px;background:var(--or);color:var(--bk);border:3px solid var(--ol);border-radius:10px;padding:12px 20px;text-decoration:none;letter-spacing:1px;box-shadow:0 4px 0 var(--gold),0 6px 0 var(--bk);transition:transform .1s,box-shadow .1s;text-align:center;margin-bottom:10px;}
.findus-btn:hover{transform:translateY(3px);box-shadow:0 1px 0 var(--gold),0 3px 0 var(--bk);}
.findus-btn.secondary{background:var(--bgd);color:var(--cr);border-color:var(--or);opacity:0.6;cursor:default;}

/* FOOTER */
footer{background:#1e4d1e;padding:48px 30px 32px;text-align:center;}
.footer-logo{font-size:clamp(14px,2vw,20px);color:var(--or);text-shadow:3px 3px 0 var(--bk);letter-spacing:2px;margin-bottom:8px;}
.footer-tagline{font-family:var(--V);font-size:clamp(20px,3vw,28px);color:var(--cr);letter-spacing:3px;margin-bottom:32px;text-shadow:2px 2px 0 var(--bk);}
.footer-links{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:28px;}
.footer-link{font-size:8px;color:var(--cr);text-decoration:none;letter-spacing:1px;transition:color .15s;}
.footer-link:hover{color:var(--ol)}
.footer-icons{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:28px;flex-wrap:wrap;}
.footer-icons img{image-rendering:pixelated;width:36px;height:auto;filter:drop-shadow(2px 2px 0 var(--bk));}
.footer-copy{font-size:6px;color:#3a6a3a;letter-spacing:1px;line-height:2.5;margin-bottom:16px;}
.footer-studio{font-size:7px;color:#3a6a3a;padding-top:16px;border-top:1px solid #2a5a2a;}
.footer-studio a{color:#4a8a4a;text-decoration:none;transition:color .15s;}
.footer-studio a:hover{color:var(--ol)}

.checker-to-black{height:48px;background-image:linear-gradient(45deg,#2d7a2d 25%,transparent 25%),linear-gradient(-45deg,#2d7a2d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2d7a2d 75%),linear-gradient(-45deg,transparent 75%,#2d7a2d 75%),linear-gradient(45deg,#0a0a0a 25%,transparent 25%),linear-gradient(-45deg,#0a0a0a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#0a0a0a 75%),linear-gradient(-45deg,transparent 75%,#0a0a0a 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#0a0a0a;}

/* ── RESPONSIVE ── */

/* MOBILE — up to 767px */
@media(max-width:767px){
  #menu, #about, #findus, #gallery { scroll-margin-top: 50px; }

  /* NAV */
  nav{padding:10px 16px;flex-wrap:wrap;}
  .nav-logo{font-size:11px;}
  .nav-logo img{width:36px;height:36px;}
  .nav-studio{font-size:16px;}
  .nav-hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:4px;background:none;border:none;flex-shrink:0;}
  .nav-hamburger span{display:block;width:24px;height:3px;background:var(--cr);border-radius:2px;transition:all .3s;}
  .nav-hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
  .nav-hamburger.open span:nth-child(2){opacity:0;}
  .nav-hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
  .nav-links{display:none;width:100%;flex-direction:column;gap:0;background:#1e4d1e;padding:8px 0;margin-top:8px;border-top:2px solid var(--or);}
  .nav-links.open{display:flex;}
  .nav-links li{list-style:none;}
  .nav-links a{display:block;padding:12px 16px;font-size:12px;border-bottom:1px solid #2a5a2a;}

  /* HERO */
  .hero{padding:20px 16px 0;}
  .logo-img{max-width:100%;margin:0 auto 8px;}
  .tagline{font-size:28px;margin-bottom:8px;}
  .lep-wrap{max-width:220px;}
  .btn-wrap{padding:16px 10px;}
  .order-btn{font-size:11px;padding:12px 24px;}
  .hours{font-size:10px;letter-spacing:0px;padding:12px 10px 20px;line-height:2;text-align:center;}

  /* TICKER */
  .ticker-inner{font-size:10px;}

  /* CHECKERBOARDS */
.checker,.checker-to-orange,.checker-to-gold,.checker-to-green,.checker-to-navgreen,
  /* MENU */
  .menu{padding:24px 16px;}
  .menu-title{font-size:18px;margin-bottom:16px;}
  .menu-cat-title{font-size:11px;}
  .menu-grid{grid-template-columns:1fr;gap:16px;}
  .menu-card{padding:14px 12px;}
  .menu-card-name{font-size:10px;}
  .menu-card-desc{font-size:16px;}
  .menu-card-price{font-size:12px;}

  /* GALLERY */
  .gallery{padding:24px 12px;}
  .gallery-title{font-size:14px;margin-bottom:20px;}
  .gallery-grid{grid-template-columns:1fr;grid-template-rows:240px 240px 240px 240px 240px 240px;gap:12px;}
  .gallery-grid .g1{grid-column:1;grid-row:1;}
  .gallery-grid .g2{grid-column:1;grid-row:2;}
  .gallery-grid .g3{grid-column:1;grid-row:3;}
  .gallery-grid .g4{grid-column:1;grid-row:4;}
  .gallery-grid .g5{grid-column:1;grid-row:5;}
  .gallery-grid .g6{grid-column:1;grid-row:6;}
  .ig-sticker-icon{width:80px;height:80px;}

  /* ABOUT */
  .about{padding:40px 16px;}
  .about-title{font-size:14px;}
  .about-story{font-size:20px;padding:0 12px;border-left:3px solid var(--or);border-right:3px solid var(--or);}
  .about-grid{grid-template-columns:1fr;gap:12px;}
  .about-box{background:var(--bgd);border:3px solid var(--or);border-radius:16px;padding:16px 14px;box-shadow:4px 4px 0 var(--bk);}
  .about-box-label{font-size:7px;color:var(--or);letter-spacing:2px;margin-bottom:8px;display:block;}
  .about-box-text{font-family:var(--V);font-size:17px;color:var(--cr);line-height:1.6;}
  .about-tioc{font-size:22px;letter-spacing:3px;}

  /* FIND US */
  .findus{padding:40px 16px;}
  .findus-title{font-size:14px;}
  .findus-inner{grid-template-columns:1fr;gap:24px;}
  .findus-map iframe{height:280px;}
  .findus-block-text{font-size:17px;}
  .findus-btn{font-size:8px;padding:10px 16px;}

  /* FOOTER */
  footer{padding:36px 16px 24px;}
  .footer-logo{font-size:14px;}
  .footer-tagline{font-size:18px;}
  .footer-icons img{width:28px;}
}

/* TABLET — 768px to 1023px */
@media(min-width:768px) and (max-width:1023px){
  .nav-links{gap:40px;}
  .nav-links a{font-size:12px;}
  .nav-studio{font-size:22px;}
  .lep-wrap{max-width:260px;}
  .hours{font-size:16px;}
  .menu{padding:32px 24px;}
  .menu-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;}
  .gallery{padding:32px 20px;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:260px 260px 260px 260px;gap:16px;}
  .gallery-grid .g1{grid-column:1;grid-row:1/3;}
  .gallery-grid .g2{grid-column:2;grid-row:1;}
  .gallery-grid .g3{grid-column:2;grid-row:2;}
  .gallery-grid .g4{grid-column:1/3;grid-row:3;}
  .gallery-grid .g5{grid-column:1;grid-row:4;}
  .gallery-grid .g6{grid-column:2;grid-row:4;}
  .about{padding:48px 24px;}
  .about-grid{grid-template-columns:repeat(2,1fr);}
  .findus{padding:48px 24px;}
  .findus-inner{grid-template-columns:1fr;gap:28px;}
  .findus-map iframe{height:360px;}
}

/* SCROLL OFFSET FOR STICKY NAV */
#menu, #about, #findus, #gallery {
  scroll-margin-top: 70px;
}

/* DESKTOP — 1024px and above */
@media(min-width:1024px){
  .menu{padding:40px 60px;}
  .gallery{padding:40px 60px;}
  .about{padding:60px 80px;}
  .findus{padding:60px 80px;}
  footer{padding:60px 80px 40px;}
  .menu-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));}
  .about-grid{grid-template-columns:repeat(3,1fr);}
}

.checker-to-black{height:48px;background-image:linear-gradient(45deg,#2d7a2d 25%,transparent 25%),linear-gradient(-45deg,#2d7a2d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2d7a2d 75%),linear-gradient(-45deg,transparent 75%,#2d7a2d 75%),linear-gradient(45deg,#0a0a0a 25%,transparent 25%),linear-gradient(-45deg,#0a0a0a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#0a0a0a 75%),linear-gradient(-45deg,transparent 75%,#0a0a0a 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0px,0 32px,0 48px,16px 16px,-16px 32px;background-color:#0a0a0a;}