/*
Theme Name: The Milkshake Shack Diner
Theme URI: https://themilkshakeshack.com
Author: The Milkshake Shack
Description: Custom retro diner restaurant theme with 32 editable milkshakes, branded food imagery, responsive menu and pricing.
Version: 4.0.0
Requires PHP: 8.0
Text Domain: milkshake-shack
*/
:root{--red:#b70e0d;--dark:#260d09;--cream:#fff8ed;--gold:#ffce8a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:Arial,Helvetica,sans-serif;color:#271510}img{max-width:100%}a{text-decoration:none}button{cursor:pointer}.wrap{width:min(1440px,94%);margin:auto}.awning{height:38px;background:repeating-linear-gradient(105deg,#c71312 0 50px,#fff4e9 50px 100px);box-shadow:0 4px 10px #1c0807aa;position:relative;z-index:5}.site-header{background:linear-gradient(90deg,#2d130b,#5b2c1b 50%,#2d130b);border-bottom:5px solid #b41613;position:relative;z-index:4;box-shadow:0 5px 16px #0007}.nav{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;color:white;font-weight:1000;font-size:23px;line-height:1.05;max-width:290px;text-shadow:2px 2px #900}.brand img{height:100px;width:110px;object-fit:contain;border-radius:8px}.navlinks{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.navlinks a{color:white;text-transform:uppercase;font-weight:900;padding:14px 17px;font-size:14px;border-radius:7px}.navlinks a:hover,.navlinks a:first-child{background:linear-gradient(#e4382b,#aa0708)}.mobile-toggle{display:none}.hero{background:radial-gradient(circle at 40% 20%,#8c3030,#1d080b 78%);color:white;overflow:hidden}.hero-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);align-items:center;min-height:440px;gap:0}.hero-photo{height:440px;overflow:hidden;display:flex;align-items:center}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-copy{text-align:center;padding:16px 8px 30px;text-shadow:3px 3px 1px #8c0506}.hero-kicker{font-size:12px;letter-spacing:2px;color:#ffdfd4;font-weight:900}.hero-number{font-size:clamp(95px,12vw,175px);font-weight:1000;line-height:.86;color:white;-webkit-text-stroke:3px #ad0708}.hero-copy h1{font-size:clamp(32px,4vw,59px);font-family:Georgia,serif;font-style:italic;line-height:1.02;margin:12px 0}.hero-copy p{font-weight:bold;line-height:1.5}.button{display:inline-block;background:#c50c0c;border:3px solid white;color:white;padding:13px 22px;border-radius:12px;font-weight:900;box-shadow:0 3px 0 #6b0707}.button:hover{background:#f02b20}.button.light{background:#af0a0a}.collections{background:#fff8ee;padding:12px 0 20px}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.collection{position:relative;display:flex;align-items:center;min-height:170px;overflow:hidden;border:4px solid white;border-radius:20px;background:linear-gradient(130deg,#6e0808,#ae0909);color:white;box-shadow:0 3px 8px #4a19194d}.collection img{width:48%;height:170px;object-fit:cover}.collection span{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:7px;text-align:center}.collection strong{font:italic bold clamp(23px,2.7vw,40px) Georgia,serif}.collection small{font-size:clamp(14px,1.5vw,23px);font-weight:900}.collection b{border:2px solid white;border-radius:8px;padding:9px 10px;font-size:11px;margin-top:10px}.features{padding:0 0 36px;background:#fff8ee}.features-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.food-feature{height:310px;position:relative;border-radius:20px;overflow:hidden;background:#a00808;color:white;display:flex}.food-feature img{width:56%;height:100%;object-fit:cover}.food-feature-copy{flex:1;text-align:center;padding:14px 8px;align-self:center}.food-feature h2,.highlights h2{font:italic bold clamp(30px,3.2vw,51px) Georgia,serif;margin:0 0 18px}.food-feature p{font-size:20px;font-weight:bold;line-height:1.5}.highlights{height:310px;border:8px solid #b30b0b;border-radius:20px;background:linear-gradient(#fffdf8,#ffefdc);padding:14px;text-align:center}.highlights h2{color:#9f0707;font-size:clamp(25px,2.8vw,40px)}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr)}.highlight-grid>div{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border-right:1px solid #4a3333}.highlight-grid>div:last-child{border:0}.highlight-grid span{font-size:45px}.highlight-grid strong{font-size:clamp(19px,2.2vw,30px);font-weight:1000}.highlight-grid b{font-size:18px}.menu-section{padding:75px 0;background:#fff8ef}.section-head{text-align:center;margin-bottom:30px}.section-head>span,.section-eyebrow{color:#b30c0c;font-size:14px;letter-spacing:3px;font-weight:900}.section-head h2,.about h2{font:italic bold clamp(35px,5vw,62px) Georgia,serif;color:#9d0808;margin:10px 0}.section-head p{font-size:18px}.pills{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-bottom:30px}.pill{border:2px solid #af1111;color:#9b0909;background:white;border-radius:25px;padding:11px 17px;font-weight:900}.pill.active,.pill:hover{background:#b30b0b;color:white}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product{background:white;border:1px solid #eed4c7;border-radius:16px;overflow:hidden;box-shadow:0 5px 17px #562e1a18;display:flex;flex-direction:column}.product.hidden{display:none}.product-image{height:220px;background:#f8e5df}.product-image img{width:100%;height:100%;object-fit:cover}.product-body{padding:17px;display:flex;flex-direction:column;flex:1}.product h3{font-size:20px;color:#8d0a0a;margin:0 0 10px}.product p{line-height:1.55;color:#54433d;font-size:14px;flex:1}.price{font-weight:900;color:#b20b0b;border-top:1px solid #f0e4de;padding-top:12px}.note{font-size:13px;color:#75625b;text-align:center;margin:25px auto}.sizes{background:#37140f;color:white;padding:65px 0}.sizes .section-head h2{color:#fff}.size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.size-card{border:2px solid #c6816e;border-radius:16px;background:#5d241a;text-align:center;padding:24px;display:flex;flex-direction:column;gap:10px}.size-card strong{font-size:28px}.size-card span{font-size:19px}.size-card b{color:#ffce8a}.toppings{text-align:center;margin:40px auto 0;max-width:850px}.toppings h3{font-size:28px}.toppings p{line-height:1.9}.about{padding:65px 0}.about-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:55px;align-items:center}.about-grid img{max-height:360px;width:100%;object-fit:contain}.about p{font-size:18px;line-height:1.7}.footer{background:#260f0b;color:white;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer h2{font:italic bold 32px Georgia,serif}.footer h3{color:#ffd4a4}.footer a{display:block;color:white;margin:10px 0}.small{font-size:13px;opacity:.7}.copyright{text-align:center;padding:20px;border-top:1px solid #674039;margin-top:35px;font-size:13px}section{scroll-margin-top:15px}@media(max-width:1100px){.collection-grid,.menu-grid{grid-template-columns:repeat(2,1fr)}.features-grid{grid-template-columns:1fr}.brand span{display:none}.navlinks a{padding:12px 9px}}@media(max-width:700px){.awning{height:24px;background:repeating-linear-gradient(105deg,#c71312 0 28px,#fff4e9 28px 56px)}.nav{min-height:85px}.brand img{height:75px;width:85px}.mobile-toggle{display:block;background:#bd1212;color:white;border:0;border-radius:8px;padding:12px;font-weight:900}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:#35150e;padding:10px 5%;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.navlinks a{text-align:center}.hero-layout{grid-template-columns:1fr}.hero-photo{height:260px}.hero-copy{padding:24px 15px 38px}.hero-number{font-size:100px}.hero-copy h1{font-size:42px}.collection-grid,.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.collection{min-height:125px}.collection img{height:130px;width:45%}.collection strong{font-size:20px}.collection small{font-size:13px}.collection b{font-size:9px;padding:6px}.food-feature{height:auto;min-height:220px}.food-feature img{width:46%}.food-feature h2{font-size:29px}.food-feature p{font-size:14px}.highlights{height:auto}.highlight-grid span{font-size:30px}.highlight-grid strong{font-size:17px}.highlight-grid b{font-size:14px}.product-image{height:160px}.product-body{padding:12px}.product h3{font-size:16px}.product p{font-size:12px}.size-grid{grid-template-columns:1fr}.about-grid,.footer-grid{grid-template-columns:1fr;gap:18px}.about-grid img{max-height:250px}.menu-section{padding:45px 0}}@media(max-width:400px){.collection-grid{grid-template-columns:1fr}.collection img{height:145px}.product-image{height:130px}}

/* V3: Official logo integrated as a single prominent badge, no duplicate title. */
.nav{min-height:128px}.brand{max-width:none;flex-shrink:0;padding:7px;background:#fffaf3;border:3px solid #6ab5b7;border-radius:15px;box-shadow:0 5px 0 #1b0e0b,0 0 0 2px #173e49}.brand img{display:block;width:205px;height:110px;object-fit:contain;border-radius:0}.navlinks a{padding:12px 11px}.product-image{height:290px;background:#2c1212}.product-image img{object-fit:cover;object-position:center}.product{border:2px solid #f0d8c9}.product h3{min-height:2.5em}.product-image img{transition:transform .25s}.product:hover .product-image img{transform:scale(1.035)}
@media(max-width:1100px){.brand img{width:165px;height:92px}.nav{min-height:105px}.product-image{height:250px}}
@media(max-width:700px){.brand img{width:120px;height:72px}.brand{padding:3px;border-width:2px}.nav{min-height:88px}.product-image{height:205px}.product h3{min-height:0}}
@media(max-width:400px){.product-image{height:170px}}

/* V4 approved red diner header: the desktop art is the exact approved preview. */
.awning{display:none!important}
.site-header{background:#3d1b11 url('assets/images/approved-diner-header.webp') center center / 100% 100% no-repeat!important;border-bottom:0!important;box-shadow:none!important}
.site-header .nav{position:relative;min-height:0!important;height:clamp(220px,23.48vw,390px);width:100%;max-width:none;margin:0;padding:0}
.site-header .brand{position:absolute;left:6%;top:12%;width:31%;height:78%;max-width:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;z-index:2}
.site-header .brand img{display:none!important}
.site-header .navlinks{position:absolute;left:37.5%;right:3%;top:38%;height:29%;display:flex;align-items:stretch;justify-content:space-around;gap:0;flex-wrap:nowrap}
.site-header .navlinks a{font-size:0!important;line-height:0!important;flex:1;padding:0!important;margin:0;background:transparent!important;border-radius:0;outline-offset:-5px}
.site-header .navlinks a:first-child{flex:.75}
.site-header .navlinks a:nth-child(3){flex:1.55}
.site-header .navlinks a:nth-child(5){flex:1.15}
.site-header .navlinks a:focus-visible{outline:3px solid #fff}
.site-header .mobile-toggle{display:none}
@media(max-width:700px){
.site-header{background:linear-gradient(90deg,#2b100b,#582719)!important;border-bottom:4px solid #ba1614!important}
.site-header .nav{height:110px;min-height:110px!important;width:94%;margin:auto;display:flex;justify-content:space-between}
.site-header .brand{position:static;width:200px;height:96px;display:flex;align-items:center;justify-content:center}
.site-header .brand img{display:block!important;width:170px;height:100px;object-fit:contain;border-radius:0}
.site-header .mobile-toggle{display:block;position:relative;z-index:10}
.site-header .navlinks{display:none;position:absolute;top:100%;left:-3.2%;right:-3.2%;height:auto;padding:10px 4%;background:#35150e;flex-direction:column;align-items:stretch;z-index:20}
.site-header .navlinks.open{display:flex}
.site-header .navlinks a{font-size:14px!important;line-height:1.5!important;padding:12px!important;text-align:center}
.site-header .navlinks a:first-child{background:#b50e0e!important}
}
