@import url('https://fonts.googleapis.com/css2?family=Advent+Pro:wght@700&family=Basic&family=Engagement&family=Patua+One&family=Roboto:wght@400;700;900&family=Salsa&display=swap');

:root {
  --yellow:#fff000;
  --red:#ed0000;
  --dark:#070707;
  --page-width:1240px;
}
*{box-sizing:border-box}
html{min-height:100%;background:#2a1209 url('../images/site-bg.jpeg') center top/cover fixed no-repeat}
body{margin:0;min-height:100%;font-family:Roboto,Arial,sans-serif;color:#111;background:transparent}
a{color:inherit}
.site-shell{width:min(var(--page-width),calc(100% - 48px));margin:25px auto 0;box-shadow:0 0 1px rgba(0,0,0,.1)}
.topbar{height:31px;background:#050505;color:var(--yellow);font-size:12px;font-weight:700;display:flex;align-items:center;padding:0 20px}
.topbar-inner{display:flex;align-items:center;gap:13px;white-space:nowrap}
.topbar a{text-decoration:none;color:var(--yellow)}
.topbar .sep{opacity:.5}.tiny-icon{font-size:11px;opacity:.9}
.main-header{height:120px;background:#d6120f url('../images/header-bg.jpg') center/cover no-repeat;position:relative;border-bottom:0}
.logo-link{position:absolute;left:48px;top:8px;width:190px;height:164px;z-index:5;display:block}
.logo-link img{width:100%;height:auto;display:block;filter:drop-shadow(0 1px 0 rgba(255,255,255,.15))}
.nav{height:100%;display:flex;align-items:flex-start;justify-content:center;padding-top:35px;padding-left:180px}
.nav a{font-family:Salsa,Arial,sans-serif;color:#fff;text-decoration:none;font-size:17px;font-weight:700;text-shadow:2px 2px #000;margin:0 20px;position:relative;padding:0 0 18px;white-space:nowrap}
.nav a.active,.nav a:hover{color:var(--yellow)}
.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-36px;margin:auto;height:4px;background:var(--yellow);width:100%}
.mobile-toggle{display:none;position:absolute;right:18px;top:34px;width:52px;height:52px;background:url('../images/menu-button.png') center/contain no-repeat;border:0;cursor:pointer;z-index:8}
.pattern-band{height:91px;background-color:#000;background-image:url('../images/pattern-black.png');background-size:cover;background-position:center;position:relative}
.pattern-band.red{background-image:url('../images/pattern-black.png');background-color:#ef1616}
.pattern-band.logo-space{height:91px}
.content-panel{position:relative}
.page-footer{height:73px;background:#030303;color:#ddd;font-size:11px;display:flex;align-items:center;padding:0 20px;position:relative}
.page-footer a{color:#1f91d5;text-decoration:none}.page-footer .to-top{position:absolute;right:19px;top:17px;width:38px;height:38px;border-radius:4px;background:#f6f6f6;color:#777;display:grid;place-items:center;text-decoration:none;font-size:23px;line-height:1}

/* HOME */
.home-hero{height:426px;background:url('../images/hero.jpg') center/cover no-repeat;position:relative;overflow:hidden}
.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,0))}
.hero-copy{position:absolute;z-index:2;right:35px;top:40px;width:68%;text-align:center;color:#fff}
.hero-kicker{font-family:'Patua One',serif;font-size:37px;line-height:1.05;text-shadow:1px 2px 2px #333;margin-bottom:18px}
.hero-title{font-family:Engagement,cursive;color:#ffe900;font-size:91px;line-height:.95;text-shadow:1px 1px 1px rgba(0,0,0,.4);white-space:nowrap}
.home-intro{background:#fff;padding:25px 36px 22px;font-family:'Patua One',serif;font-size:18px;line-height:1.25}
.home-phone{background:#eb0000;color:#fff;text-align:center;padding:27px 20px 32px}
.home-phone .number{font-size:57px;line-height:1;color:var(--yellow);font-weight:900;letter-spacing:1px;margin-bottom:20px}
.home-phone .address{font-family:'Patua One',serif;font-size:20px}
.home-space{height:230px;background:transparent}
.home-info-wrap{background:#fff;padding:0 0 0;min-height:650px}
.home-info{width:100%;max-width:820px;margin:-2px auto 0;background:#020202;color:#fff;min-height:620px;text-align:center;padding:93px 100px 75px}
.hours-box{max-width:360px;margin:0 auto;color:#fff;font-family:'Patua One',serif}
.hours-box:before,.hours-box:after{content:"";display:block;height:1px;background:#c98672;margin:0 0 30px}
.hours-box:after{margin:30px 0 0}
.hours-title{color:var(--yellow);font-size:21px;margin-bottom:15px}.hours-lines{font-size:14px;line-height:1.7}
.home-info .desc{max-width:250px;margin:34px auto 0;color:#ff2020;text-shadow:1px 1px 0 #fff;font-family:'Patua One',serif;font-size:16px;line-height:1.12}
.home-info .desc:after{content:"";display:block;height:1px;background:#c98672;margin:31px -35px}
.home-info .eat{color:var(--yellow);font-family:'Patua One',serif;font-size:20px;margin-top:90px}

/* COMMON INNER PAGE */
.inner-main{background:rgba(255,255,255,.76);min-height:535px;padding:54px 70px 65px}
.inner-title{font-family:Roboto,Arial,sans-serif;font-weight:900;color:#3299d0;font-size:38px;text-transform:uppercase;text-align:center;margin:0 0 26px}
.inner-title:after{content:"";display:block;width:370px;height:1px;background:#ddd;margin:22px auto 0}
.about-copy{max-width:720px;margin:0 auto;text-align:center;font-family:'Patua One',serif;font-size:21px;line-height:1.36}
.about-copy p{margin:0 0 22px}.about-tagline{color:#f1da00;text-shadow:1px 1px #000;font-family:'Patua One',serif;font-size:21px;text-align:center;margin:30px auto 0;max-width:520px;text-transform:uppercase}
.contact-main{padding-top:40px;text-align:center}.contact-card{max-width:720px;margin:0 auto}.contact-card h2{font-family:'Patua One',serif;font-size:22px;color:#f00;line-height:1.2;margin:0 0 17px}.contact-card a{text-decoration:none;color:#f00}.map-wrap{margin:28px auto 5px;width:min(600px,100%);height:450px}.map-wrap iframe{width:100%;height:100%;border:0;display:block}

/* MENU */
.menu-top{background:rgba(0,0,0,.77);color:#fff;padding:30px 86px 38px;min-height:880px;font-size:13px;line-height:19px}
.menu-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px}
.menu-section{margin-bottom:30px}.menu-section h2,.menu-food h2,.deals-title{font-family:'Patua One',serif;color:#ff2a1d;text-shadow:1px 1px 0 #100;font-size:22px;margin:0 0 12px}.menu-section .sub{font-size:12px;font-weight:700;margin-bottom:12px}.price-grid{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:3px 10px;align-items:baseline;margin:7px 0 13px;font-size:12px}.price-grid .h{color:#fff600;font-weight:700;text-align:center}.price-grid .label{color:#fff600;font-weight:700}.price-grid .v{text-align:center;font-weight:700}.toppings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;line-height:1.35}.toppings.three{grid-template-columns:repeat(3,minmax(0,1fr));font-size:11px}.specialty .item{display:grid;grid-template-columns:25px 1fr;gap:4px;margin-bottom:7px;line-height:1.18}.specialty .name{font-weight:900}.specialty .desc{font-size:10.5px;font-style:italic}.gluten{text-align:center;margin-top:17px}.gluten h3{font-family:'Patua One',serif;color:#ff2a1d;font-size:20px;margin:0 0 5px}.gluten table{margin:auto;font-size:12px;color:#fff600;border-spacing:14px 1px}
.menu-food-area{background:#3d3d3d;color:#fff;padding:62px 42px 48px}.food-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.menu-food{font-size:13px;line-height:18px;margin-bottom:32px}.menu-food h2{margin-bottom:8px}.menu-food .note{font-size:11px;line-height:15px;margin:0 0 11px}.menu-food .row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin:6px 0}.menu-food .price{color:#fff600;font-weight:900;white-space:nowrap}.menu-food .small{font-size:10.5px;font-style:italic}.menu-food .sizes{display:grid;grid-template-columns:1fr 45px 45px;gap:6px;font-size:12px;line-height:17px;margin-bottom:8px}.menu-food .sizes .head{color:#fff600;font-weight:700}.legal{text-align:right;font-size:10px;margin-top:28px}.deals{margin-top:85px}.deals-title{margin-bottom:28px}.deals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0 25px;align-items:start}.deal-col{display:block}.deal-col .deal{margin-bottom:25px}.deal img{width:100%;max-width:300px;height:auto;display:block;margin:auto}.menu-callout{background:#f10b08;color:#fff;text-align:center;padding:24px 20px 20px}.menu-callout .eat{font-family:'Patua One',serif;font-size:22px}.menu-callout .number{color:var(--yellow);font-weight:900;font-size:52px;line-height:1.05;margin-top:9px}

@media (max-width:900px){
  .site-shell{width:100%;margin:0}.topbar{height:auto;min-height:34px;padding:7px 12px}.topbar-inner{gap:7px;font-size:10px;flex-wrap:wrap}.main-header{height:120px}.logo-link{left:18px;top:9px;width:145px;height:auto}.mobile-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:120px;background:#d90000;padding:8px 0 12px;z-index:20;height:auto;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{margin:0;padding:12px 22px;font-size:16px}.nav a.active:after{display:none}.pattern-band{height:74px}.home-hero{height:360px}.hero-copy{right:15px;top:70px;width:68%}.hero-kicker{font-size:25px}.hero-title{font-size:55px;white-space:normal}.home-phone .number{font-size:43px}.home-info{padding:60px 30px}.inner-main{padding:45px 25px}.about-copy{font-size:18px}.menu-top{padding:25px 25px}.menu-top-grid{grid-template-columns:1fr;gap:5px}.food-grid{grid-template-columns:1fr}.deals-grid{grid-template-columns:repeat(2,1fr);gap:18px}.menu-food-area{padding:35px 25px}.page-footer{font-size:9px}
}
@media (max-width:520px){
  .topbar .email{display:none}.logo-link{width:125px}.pattern-band{height:62px}.home-hero{height:300px}.hero-copy{width:76%;top:70px}.hero-kicker{font-size:19px}.hero-title{font-size:43px}.home-intro{font-size:15px;padding:20px}.home-phone .number{font-size:37px}.home-phone .address{font-size:16px}.home-space{height:70px}.home-info-wrap{min-height:0}.home-info{min-height:530px}.inner-title{font-size:31px}.inner-title:after{width:75%}.about-copy{font-size:16px}.contact-card h2{font-size:18px}.map-wrap{height:360px}.deals-grid{grid-template-columns:1fr}.menu-callout .number{font-size:39px}.menu-top{font-size:11px}.toppings.three{grid-template-columns:repeat(2,1fr)}
}

/* ===== Sky Hy static fidelity revision 2 ===== */
/* Original active-page marker sits above the red navigation bar. */
.nav a.active:after{display:none}
.nav a.active:before{content:"";position:absolute;left:0;right:0;top:-35px;margin:auto;height:4px;background:var(--yellow);width:100%}

/* HOME: faithful static recreation of the original Revolution Slider. */
.home-slider{height:426px;position:relative;overflow:hidden;background:#111}
.home-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s ease;background-position:center;background-size:cover;background-repeat:no-repeat}
.home-slide.active{opacity:1;visibility:visible}
.slide-welcome{background-image:url('../images/hero.jpg')}
.slide-welcome .hero-copy{right:35px;top:35px;width:68%}
.slide-welcome .hero-kicker{font-family:'Advent Pro','Patua One',sans-serif;font-size:55px;line-height:1.05;font-weight:700;margin-bottom:7px}
.slide-welcome .hero-title{font-size:104px;line-height:1.05}
.slide-loyalty{background-image:url('../images/slide-loyalty-bg.png');color:#fff}
.loyalty-card{position:absolute;left:25px;top:68px;width:38%;max-height:255px;object-fit:contain}
.loyalty-copy{position:absolute;left:52%;right:4%;top:205px;font-family:Basic,Arial,sans-serif;font-size:36px;line-height:1.08;text-align:center;text-shadow:1px 2px 4px #000}
.loyalty-copy strong{display:block;margin-top:17px;font-size:45px;line-height:1.05;color:var(--yellow)}
.loyalty-note{position:absolute;left:25px;bottom:26px;font-family:Basic,Arial,sans-serif;font-size:18px;text-shadow:1px 2px 3px #000}
.slide-hungry{background-image:url('../images/slide-hungry-bg.png');text-align:center}
.hungry-title{position:absolute;left:0;right:0;top:80px;font-family:Engagement,cursive;font-size:140px;line-height:1;color:var(--yellow);text-shadow:1px 2px 3px rgba(0,0,0,.5)}
.hungry-actions{position:absolute;left:0;right:0;bottom:70px;display:flex;justify-content:center;gap:30px}
.hungry-actions a{min-width:205px;padding:15px 30px;border-radius:30px;background:rgba(0,0,0,.75);font-weight:900;text-decoration:none;color:#fff;font-size:18px}
.home-hero{display:none}

.home-phone{padding:28px 20px 36px}
.home-phone .number a{text-decoration:none;color:inherit}
.home-phone .number{margin-bottom:15px}
.phone-rule{width:66%;height:4px;background:#fff;margin:0 auto 18px}

/* Button row: original page used a 25% black overlay on the restaurant background. */
.home-actions{height:180px;background:rgba(0,0,0,.25);display:flex;align-items:flex-start;justify-content:center;gap:80px;padding-top:47px}
.home-action-btn{width:230px;padding:17px 20px;border-radius:30px;background:linear-gradient(#69afe9,#4c99dc);box-shadow:inset 0 1px 0 rgba(255,255,255,.2);color:#fff;text-decoration:none;text-align:center;font-weight:700;font-size:15px}
.home-action-btn:hover{filter:brightness(1.05)}
.home-space,.home-info-wrap{display:none}

/* Opening-hours block: image background first, text over it, then black payment strip. */
.home-details{background:#000;padding:0 0 0}
.home-details-inner{min-height:420px;background:linear-gradient(rgba(0,0,0,.47),rgba(0,0,0,.47)),url('../images/home-pizza-bg.png') center/cover no-repeat;color:#fff;padding:54px 0 48px}
.home-details .hours-box{width:360px;max-width:calc(100% - 40px);margin:0 0 0 17%;font-family:'Patua One',serif;text-align:center}
.home-details .hours-box:before,.home-details .hours-box:after{background:#c98672}
.home-details .hours-title{font-size:24px}
.home-details .hours-lines{font-size:16px;font-weight:700;line-height:1.25;text-shadow:1px 1px 2px #000}
.home-details .desc{width:325px;max-width:calc(100% - 40px);margin:34px 0 0 16%;color:#ff1717;text-shadow:2px 2px #fff;font-family:'Patua One',serif;font-size:19px;line-height:1.05;text-align:center}
.home-details .desc:after{content:"";display:block;height:1px;background:#c98672;margin:30px -12px 0}
.home-eat{height:155px;background:#000;color:var(--yellow);font-family:'Patua One',serif;font-size:22px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.home-eat img{width:150px;height:auto;display:block}

/* MENU: lower menu area is the same translucent treatment as the original image-backed section. */
.menu-food-area{background:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),url('../images/menu-pizza-bg.png') center top/cover no-repeat;color:#fff}
.menu-food .price,.menu-food .sizes .head,.menu-food .note .price{color:var(--yellow)!important;font-weight:900}
.menu-food .note .addon{color:var(--yellow);font-weight:900}

@media (max-width:900px){
  .nav a.active:before{display:none}
  .home-slider{height:360px}
  .slide-welcome .hero-copy{right:15px;top:65px;width:68%}
  .slide-welcome .hero-kicker{font-size:30px}
  .slide-welcome .hero-title{font-size:60px;white-space:normal}
  .loyalty-card{width:43%;left:2%;top:80px}.loyalty-copy{left:45%;top:155px;font-size:25px}.loyalty-copy strong{font-size:30px}.loyalty-note{font-size:12px;left:15px}
  .hungry-title{font-size:95px}.hungry-actions{bottom:55px}.hungry-actions a{min-width:160px;font-size:14px}
  .home-actions{gap:30px;height:160px;padding-top:45px}.home-action-btn{width:200px}
  .home-details .hours-box,.home-details .desc{margin-left:auto;margin-right:auto}
}
@media (max-width:520px){
  .home-slider{height:300px}
  .slide-welcome .hero-copy{width:76%;top:65px}.slide-welcome .hero-kicker{font-size:21px}.slide-welcome .hero-title{font-size:45px}
  .loyalty-card{top:80px;width:45%}.loyalty-copy{top:145px;font-size:17px}.loyalty-copy strong{font-size:21px;margin-top:8px}.loyalty-note{font-size:9px;bottom:15px}
  .hungry-title{font-size:72px;top:70px}.hungry-actions{gap:12px;bottom:50px}.hungry-actions a{min-width:125px;padding:11px 12px;font-size:11px}
  .phone-rule{width:85%;height:3px}
  .home-actions{height:155px;gap:18px;padding:44px 18px 0}.home-action-btn{width:50%;font-size:12px;padding:14px 10px}
  .home-details-inner{min-height:500px;padding-top:50px}.home-details .hours-title{font-size:20px}.home-details .hours-lines{font-size:13px}.home-details .desc{font-size:16px}
}
/* Fine positioning against the supplied original screenshots. */
.nav a.active:before{left:-20px;right:-20px;width:auto}
.home-slider{height:450px}
.slide-welcome .hero-copy{inset:0;width:auto;text-align:left;right:auto;top:auto}
.slide-welcome .hero-kicker{position:absolute;left:38%;top:34px;width:53%;font-size:55px;line-height:65px;white-space:nowrap;text-align:left;margin:0}
.slide-welcome .hero-title{position:absolute;left:32.3%;top:107px;width:64%;font-size:120px;line-height:140px;white-space:nowrap;text-align:left}
@media (max-width:900px){
  .home-slider{height:360px}
  .slide-welcome .hero-kicker{left:34%;top:62px;width:62%;font-size:30px;line-height:36px}
  .slide-welcome .hero-title{left:31%;top:108px;width:66%;font-size:60px;line-height:68px;white-space:normal}
}
@media (max-width:520px){
  .home-slider{height:300px}
  .slide-welcome .hero-kicker{left:31%;top:62px;width:67%;font-size:21px;line-height:25px;white-space:normal}
  .slide-welcome .hero-title{left:29%;top:110px;width:69%;font-size:45px;line-height:50px}
}
/* User reference shows the restaurant/table body background visible through this lower menu panel. */
.menu-food-area{background:rgba(0,0,0,.75)}

/* ===== Slider source-code fidelity correction =====
   Based on original Revolution Slider desktop grid: 1240 x 450. */
/* Keep the text layer anchored to the full slide at every screen size. */
.slide-welcome .hero-copy{position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;text-align:left}
@media (min-width:901px){
  .home-slider{height:450px}

  /* Slide 1: use the original layer coordinates from Home.txt. */
  .slide-welcome .hero-kicker{position:absolute;left:471px;top:34px;width:650px;margin:0;white-space:nowrap;font-family:'Advent Pro',Arial,sans-serif;font-size:55px;line-height:65px;font-weight:700;letter-spacing:-2px;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .slide-welcome .hero-title{position:absolute;left:400px;top:107px;width:791px;margin:0;white-space:nowrap;font-family:Engagement,cursive;font-size:120px;line-height:140px;font-weight:400;letter-spacing:-2px;color:#ffee00;text-shadow:0 2px 5px rgba(0,0,0,.5)}

  /* Slide 2: reproduce original Revolution Slider layer positions. */
  .loyalty-card{position:absolute;left:26px;top:75px;width:595px;height:340px;max-height:none;object-fit:fill}
  .loyalty-line1{position:absolute;left:655px;top:220px;width:478px;height:54px;white-space:nowrap;font-family:Basic,Arial,sans-serif;font-size:50px;line-height:60px;font-weight:400;letter-spacing:-2px;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .loyalty-line1 span{color:yellow}
  .loyalty-line2{position:absolute;left:544px;top:324px;white-space:nowrap;font-family:Basic,Arial,sans-serif;font-size:60px;line-height:65px;font-weight:400;letter-spacing:-2px;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .loyalty-line2 span{color:yellow}
  .loyalty-line2 b{color:#fff;font:inherit}
  .loyalty-note{position:absolute;left:25px;bottom:auto;top:384px;width:393px;height:36px;white-space:nowrap;font-family:Basic,Arial,sans-serif;font-size:25px;line-height:35px;font-weight:400;letter-spacing:-2px;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .loyalty-note span{color:yellow}
}

/* Keep the loyalty line intact at every width; responsive sizes can shrink it, never split FREE*. */
.loyalty-line1,.loyalty-line2,.loyalty-note{white-space:nowrap}
@media (max-width:900px){
  .loyalty-copy{display:none}
  .loyalty-line1{position:absolute;left:45%;top:155px;font-family:Basic,Arial,sans-serif;font-size:25px;line-height:30px;letter-spacing:-1px;color:#fff;white-space:nowrap;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .loyalty-line1 span{color:yellow}
  .loyalty-line2{position:absolute;left:42%;top:200px;font-family:Basic,Arial,sans-serif;font-size:30px;line-height:34px;letter-spacing:-1px;color:#fff;white-space:nowrap;text-shadow:0 2px 5px rgba(0,0,0,.5)}
  .loyalty-line2 span{color:yellow}
  .loyalty-line2 b{color:#fff;font:inherit}
  .loyalty-note span{color:yellow}
}
@media (max-width:520px){
  .loyalty-line1{left:43%;top:143px;font-size:17px;line-height:21px}
  .loyalty-line2{left:39%;top:173px;font-size:21px;line-height:24px}
}
