/*
Theme Name: BANGIN’ Takeaway
Author: BANGIN’
Description: Bespoke ordering-first WooCommerce theme for BANGIN’ Suffolk.
Version: 2.0.0
Text Domain: bangin
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--ink:#151515;--orange:#f34819;--cream:#f4ead8;--cream2:#f9f1e3;--muted:#61594d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px}body:before{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.12;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='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,h4,p{margin-top:0}.shell,.header-inner{max-width:1260px;margin:auto;padding-left:32px;padding-right:32px}.site-header{background:var(--ink);color:var(--cream2);border-bottom:6px solid var(--orange);position:relative;z-index:5}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:flex-start;position:relative;font-family:'Barlow Condensed',Impact,sans-serif;font-size:60px;line-height:.9;font-weight:900;letter-spacing:-2px}.crown{width:41px;height:43px;color:var(--orange);transform:rotate(10deg);margin-left:-3px;margin-top:-10px}.header-right{display:flex;align-items:center;gap:26px;font-size:12px;font-weight:800;letter-spacing:.08em}.tagline{white-space:nowrap}.header-order{background:var(--orange);padding:15px 18px;color:white}.header-order span{margin-left:18px}.header-cart{white-space:nowrap}.header-cart span{background:var(--cream);color:var(--ink);padding:4px 7px;margin-left:6px}.hero{background:var(--cream);overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.08fr .92fr;min-height:570px}.hero-copy{padding:70px 28px 52px 0;position:relative;z-index:2}.kicker{font-size:12px;letter-spacing:.18em;font-weight:900;color:var(--orange);margin-bottom:22px}.kicker-dot,.note-dot{display:inline-block;width:9px;height:9px;background:var(--orange);border-radius:50%;margin-right:7px}.hero h1,.order-head h2,.about-grid h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(70px,7.3vw,119px);line-height:.83;letter-spacing:-.027em;font-weight:900;margin:0 0 29px}.hero h1 em,.order-head h2 em,.about-grid h2 em{font-style:normal;color:var(--orange)}.hero-sub{font-size:18px;line-height:1.6;max-width:510px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 35px}.btn{font-size:13px;font-weight:900;letter-spacing:.04em;padding:19px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px}.btn-orange{background:var(--orange);color:#fff}.btn-outline{border:2px solid var(--ink)}.hero-meta{display:flex;gap:38px;font-size:12px;line-height:1.7}.hero-meta b{font-size:12px;letter-spacing:.08em}.hero-art{background:#f04a1a;position:relative;min-height:570px;display:flex;align-items:center;justify-content:center;isolation:isolate}.hero-art:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(145deg,transparent 0 24px,rgba(0,0,0,.025) 25px 26px)}.hero-art-top{position:absolute;top:29px;left:30px;color:#fff;font-family:'Barlow Condensed';font-weight:900;font-size:24px;letter-spacing:.09em}.hero-disc{width:min(84%,430px);aspect-ratio:1;border-radius:50%;background:#171717;transform:rotate(-9deg);box-shadow:19px 21px 0 rgba(0,0,0,.12);display:grid;place-items:center}.hero-disc-ring{width:90%;height:90%;border:2px dashed #f8e8ce;border-radius:50%;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:26px 12px;color:#fff}.art-top,.art-bottom{font-family:'Barlow Condensed';font-weight:900;letter-spacing:.15em;font-size:17px}.art-bottom{font-size:14px}.art-burger{width:250px;max-width:90%;height:205px;display:flex;flex-direction:column;align-items:center;justify-content:center;filter:drop-shadow(6px 10px 0 rgba(0,0,0,.24))}.art-burger i{display:block;flex-shrink:0}.bun-top{width:220px;height:76px;border-radius:110px 110px 22px 22px;background:linear-gradient(#ffc267,#d7852d);border:5px solid #c77a2a}.lettuce{width:238px;height:14px;background:#74a52d;border-radius:40%;margin-top:-3px}.cheese{width:224px;height:14px;background:#ffc331;transform:skewY(-3deg)}.patty{width:222px;height:26px;background:#5a2818;border-radius:12px;border-bottom:6px solid #37170f}.cheese.second{width:218px}.patty.second{width:222px;height:24px}.bun-bottom{width:220px;height:28px;background:#d99145;border-radius:6px 6px 30px 30px}.hero-stamp{position:absolute;right:18px;bottom:30px;color:#fff;font-family:'Barlow Condensed';font-size:35px;line-height:.82;font-weight:900;transform:rotate(9deg)}.hero-stamp span{font-size:42px}.ticker{background:var(--ink);color:var(--cream);padding:16px 0;font-family:'Barlow Condensed';font-size:24px;font-weight:900;letter-spacing:.08em;white-space:nowrap;overflow:hidden}.ticker .shell{display:flex;gap:22px;justify-content:center}.ticker span{color:var(--orange)}.order-section{padding-top:80px;padding-bottom:90px}.order-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.order-head .kicker{margin-bottom:15px}.order-head h2{font-size:clamp(56px,6vw,85px);margin-bottom:14px}.order-head p{font-size:17px;margin:0}.collection-note{border:2px solid var(--ink);padding:17px 20px;display:flex;align-items:flex-start;min-width:245px}.collection-note b,.collection-note small{display:block}.collection-note small{margin-top:5px;color:var(--muted)}.setup-note{padding:18px 20px;border-left:5px solid var(--orange);background:#fff7e9;margin-bottom:20px}.service-tabs{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink);margin-top:35px}.service-tabs button{background:transparent;color:var(--ink);border:0;padding:20px 24px;font-family:'Barlow Condensed';font-size:28px;font-weight:900;text-align:left;display:flex;align-items:center;gap:15px}.service-tabs button+button{border-left:2px solid var(--ink)}.service-tabs button.active{background:var(--ink);color:#fff}.service-tabs button span{font-family:'DM Sans';font-size:12px;color:var(--orange)}.service-tabs button small{margin-left:auto;font-size:17px;color:var(--orange)}.menu-panel{display:none}.menu-panel.active{display:block}.category-nav{display:flex;gap:9px;overflow-x:auto;padding:22px 0 25px;scrollbar-width:thin}.category-nav a{border:1px solid var(--ink);padding:11px 14px;font-size:12px;font-weight:800;white-space:nowrap}.category-nav a:hover{background:var(--orange);border-color:var(--orange);color:white}.menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px 38px}.menu-group{border-top:3px solid var(--ink);padding-top:15px;scroll-margin-top:30px}.menu-group h3{font-family:'Barlow Condensed';font-size:42px;line-height:1;margin-bottom:22px;font-weight:900;display:flex;justify-content:space-between}.menu-group h3 span{color:var(--orange)}.menu-item{display:flex;gap:15px;justify-content:space-between;border-bottom:1px dashed #a99b89;padding:0 0 18px;margin-bottom:18px}.menu-item h4{font-family:'Barlow Condensed';font-size:23px;line-height:1.05;margin-bottom:6px;font-weight:800}.menu-item p{font-size:13px;line-height:1.5;margin:0;color:#4b453e}.item-action{min-width:95px;display:flex;align-items:center;gap:10px;justify-content:flex-end}.item-action strong{color:var(--orange);white-space:nowrap;font-family:'Barlow Condensed';font-size:24px}.item-action a{background:var(--ink);color:white;font-size:22px;font-weight:800;display:grid;place-items:center;width:32px;height:32px}.empty-menu{color:var(--muted);font-size:13px}.basket-strip{margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 26px;background:var(--ink);color:#fff;font-family:'Barlow Condensed';font-size:24px;font-weight:900}.basket-strip b{color:var(--orange);font-size:15px}.about-section{background:var(--ink);color:var(--cream);padding:90px 0}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.about-grid h2{font-size:clamp(58px,6vw,88px);margin-bottom:0}.about-grid p{font-size:18px;line-height:1.65}.text-link{display:inline-block;color:var(--orange);font-weight:900;border-bottom:2px solid var(--orange);padding-bottom:9px;margin-top:15px}.info-section{display:grid;grid-template-columns:repeat(3,1fr);padding-top:70px;padding-bottom:70px;gap:25px}.info-tile{border-top:4px solid var(--orange);padding-top:18px}.info-tile span{color:var(--orange);font-weight:900}.info-tile h3{font-family:'Barlow Condensed';font-size:36px;margin:12px 0}.info-tile p{line-height:1.6}.allergen-section{border-top:2px solid var(--ink);padding-top:22px;padding-bottom:55px;font-size:13px;line-height:1.6}.allergen-section p{max-width:850px;margin-top:8px}.site-footer{background:var(--ink);color:var(--cream);padding:55px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer-logo{font-family:'Barlow Condensed';font-size:55px;font-weight:900}.footer-logo span{color:var(--orange)}.site-footer p,.site-footer small{font-size:13px;line-height:1.7;color:#c7bdae}.site-footer strong{font-size:12px;letter-spacing:.12em}.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{background:var(--orange)!important;color:#fff!important;border-radius:0!important}.woocommerce-page main:not(.hero){max-width:1180px;margin:45px auto;padding:0 25px}input,select,textarea{max-width:100%}@media(max-width:900px){.tagline{display:none}.hero-layout{grid-template-columns:1fr}.hero-copy{padding:55px 0}.hero-art{min-height:380px}.hero-disc{width:320px}.hero-disc-ring{padding:18px}.hero-stamp{font-size:25px}.order-head{align-items:start;flex-direction:column}.menu-columns{gap:28px}.about-grid{grid-template-columns:1fr;gap:25px}}@media(max-width:600px){.shell,.header-inner{padding-left:18px;padding-right:18px}.header-inner{height:73px;gap:10px}.brand{font-size:43px}.crown{width:30px;height:32px}.header-right{gap:10px}.header-order{padding:11px 10px;font-size:11px}.header-order span{display:none}.header-cart{font-size:11px}.hero-copy{padding:40px 0 36px}.hero h1{font-size:clamp(59px,14vw,86px)}.hero-sub{font-size:16px}.hero-actions{margin:22px 0}.btn{padding:16px;gap:12px;font-size:12px}.hero-meta{gap:20px}.hero-art{min-height:325px}.hero-disc{width:265px}.hero-disc-ring{padding:15px}.art-burger{transform:scale(.72);margin:-25px 0}.art-top,.art-bottom{font-size:12px}.hero-art-top{font-size:17px;top:17px;left:17px}.ticker{font-size:17px}.ticker .shell{width:max-content}.order-section{padding-top:48px;padding-bottom:60px}.order-head h2{font-size:58px}.order-head p{font-size:15px}.collection-note{width:100%}.service-tabs button{font-size:20px;padding:14px 10px;gap:6px;flex-wrap:wrap}.service-tabs button small{width:100%;margin-left:22px;font-size:13px}.menu-columns{grid-template-columns:1fr;gap:25px}.menu-group h3{font-size:36px}.menu-item h4{font-size:21px}.basket-strip{font-size:19px;padding:17px 13px}.about-section{padding:60px 0}.about-grid h2{font-size:62px}.about-grid p{font-size:16px}.info-section{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px}.footer-grid{grid-template-columns:1fr;gap:22px}}

/* Location & directions */
.location-section{background:#e9ddc8;border-top:5px solid var(--ink);border-bottom:5px solid var(--ink);padding:75px 0}.location-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:60px;align-items:center}.location-copy h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(70px,7vw,105px);line-height:.9;letter-spacing:-.02em;margin:0 0 22px}.location-copy h2 em{color:var(--orange);font-style:normal}.location-copy>p:not(.location-note){font-size:17px;line-height:1.6;max-width:420px;margin-bottom:28px}.location-detail{padding:15px 0;border-top:1px solid #ac9d87;display:grid;gap:7px}.location-detail span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#655747}.location-detail strong{font-size:17px;line-height:1.45}.location-directions{margin:23px 0 12px}.location-note{font-size:12px;color:#655747;line-height:1.5;max-width:400px}.location-map-wrap{background:#fff;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--orange);min-height:450px;display:flex;flex-direction:column}.location-map-wrap iframe{width:100%;min-height:450px;flex:1;border:0;display:block}.map-mobile-link{display:block;background:var(--ink);color:white;font-size:12px;font-weight:900;letter-spacing:.08em;text-align:center;padding:15px}.site-footer a:hover{color:var(--orange)}@media(max-width:850px){.location-grid{grid-template-columns:1fr;gap:28px}.location-section{padding:50px 0}.location-map-wrap,.location-map-wrap iframe{min-height:350px}}@media(max-width:600px){.location-copy h2{font-size:70px}.location-map-wrap,.location-map-wrap iframe{min-height:290px;box-shadow:5px 5px 0 var(--orange)}}

/* V6: Location section uses the same visual language as the main menu */
.location-section{background:var(--cream);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:76px 0}
.location-copy .kicker{margin-bottom:16px}
.location-copy h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(58px,6vw,85px);line-height:.88;font-weight:900;letter-spacing:-.027em;margin:0 0 22px}
.location-copy h2 em{font-style:normal;color:var(--orange)}
.location-detail{border-top:2px solid var(--ink);padding:17px 0}
.location-map-wrap{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--orange)}
.location-directions{font-family:'DM Sans',Arial,sans-serif}
@media(max-width:850px){.location-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:600px){.location-section{padding:50px 0}.location-copy h2{font-size:62px}.location-map-wrap{box-shadow:5px 5px 0 var(--orange)}}

.footer-logo{display:flex;align-items:flex-start;gap:3px}.footer-crown{width:38px;height:38px;color:var(--orange);transform:rotate(10deg);margin-top:1px;flex-shrink:0}@media(max-width:600px){.footer-crown{width:32px;height:32px}}
