/*
Theme Name: Funky Yard Child
Theme URI: https://www.funkyyardgrill.co.uk/
Description: Child theme for Funky Yard Grill
Author: Funky Yard Grill
Template: gloreya
Version: 1.0.0
Text Domain: funky-yard-child
*/

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800;900&family=Poppins:wght@400;500;600;700;800&display=swap');

/* =========================================================
   FUNKY YARD CHILD THEME — MASTER STYLESHEET
   Single merged source of truth
   ========================================================= */

/* =========================================================
   1. TOKENS / VARIABLES
   ========================================================= */
:root{
  --fyg-black:#050505;
  --fyg-black-soft:#090909;
  --fyg-black-card:#0d0d0d;
  --fyg-panel:#080808;
  --fyg-panel-2:#101010;
  --fyg-panel-3:#171717;

  --fyg-white:#f7f3ee;
  --fyg-white-soft:#ddd5cc;
  --fyg-white-muted:#a99e92;

  --fyg-orange:#ff7a1a;
  --fyg-orange-2:#ff5f00;
  --fyg-orange-3:#ff9a4d;
  --fyg-orange-soft:rgba(255,122,26,.14);
  --fyg-orange-line:rgba(255,122,26,.26);

  --fyg-gold:#ffb35d;
  --fyg-gold-2:#ffd08b;
  --fyg-gold-soft:rgba(255,179,93,.14);
  --fyg-gold-line:rgba(255,179,93,.24);

  --space-1:8px;
  --space-2:12px;
  --space-3:16px;
  --space-4:20px;
  --space-5:24px;
  --space-6:32px;
  --space-7:40px;
  --space-8:56px;
  --space-9:72px;
  --space-10:96px;

  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:24px;
  --radius-xl:28px;
  --radius-pill:999px;

  --shadow-soft:0 10px 24px rgba(0,0,0,.25);
  --shadow-card:0 18px 38px rgba(0,0,0,.34);
  --shadow-deep:0 28px 70px rgba(0,0,0,.62);
  --shadow-orange:0 0 24px rgba(255,122,26,.16);

  --fyg-font-display:"Cinzel", serif;
  --fyg-font-body:"Poppins", sans-serif;

  --fs-body:18px;
  --fs-body-sm:16px;
  --fs-small:14px;
  --fs-h1:clamp(46px, 6vw, 88px);
  --fs-h2:clamp(36px, 4.6vw, 62px);
  --fs-h3:clamp(28px, 2.8vw, 42px);
  --fs-h4:clamp(22px, 2vw, 30px);

  --fyg-container:1280px;
  --fyg-container-wide:1360px;
  --fyg-gutter-desktop:24px;
  --fyg-gutter-tablet:20px;
  --fyg-gutter-mobile:16px;

  --section-space-desktop:clamp(56px, 7vw, 96px);
  --section-space-tablet:56px;
  --section-space-mobile:36px;

  --header-height-desktop:88px;
  --header-height-mobile:62px;
}

/* =========================================================
   2. RESET / BASE
   ========================================================= */
*, *::before, *::after{box-sizing:border-box;}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  max-width:100%;
  overflow-x:hidden;
}

body{
  margin:0;
  background:var(--fyg-black);
  color:var(--fyg-white);
  font-family:var(--fyg-font-body);
  font-size:var(--fs-body);
  line-height:1.55;
  font-weight:400;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  max-width:100%;
  overflow-x:hidden;
  position:relative;
}

body, #page, .site, .site-content, .content-area, .site-main{
  background:var(--fyg-black) !important;
  color:var(--fyg-white) !important;
}

.site,
.site-content,
.content-area,
.elementor,
.elementor-section,
.elementor-container,
.elementor-widget,
.elementor-widget-wrap{
  max-width:100%;
}

.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap{
  min-width:0;
}

img, svg, video, canvas{
  display:block;
  max-width:100%;
  height:auto;
}

iframe{
  max-width:100%;
  border:0;
}

a{
  color:inherit;
  text-decoration:none;
  transition:color .2s ease, opacity .2s ease;
}

a:hover{opacity:.96;}

ul, ol{margin:0 0 var(--space-4);padding-left:1.2em;}
p:last-child, ul:last-child, ol:last-child{margin-bottom:0;}

/* =========================================================
   3. TYPOGRAPHY — FYG PREMIUM FONT SYSTEM
   Poppins = clean app-style body/UI
   Cinzel = premium display headings only
   ========================================================= */

:root{
  --fyg-font-body:"Poppins", Arial, sans-serif;
  --fyg-font-display:"Cinzel", Georgia, serif;

  --fs-body:17px;
  --fs-body-sm:15.5px;
  --fs-small:13px;

  --fs-h1:clamp(42px, 6vw, 78px);
  --fs-h2:clamp(32px, 4.4vw, 56px);
  --fs-h3:clamp(24px, 2.8vw, 36px);
  --fs-h4:clamp(20px, 2vw, 28px);

  --fs-nav:14px;
  --fs-button:13px;
  --fs-kicker:12px;
}

/* -------------------------
   Global body/UI font
   ------------------------- */
body,
p, li, dd, dt, blockquote, figcaption,
span, div,
input, select, textarea,
label,
table, th, td,
nav, nav a,
.menu, .menu a,
.main-navigation a,
.elementor,
.elementor *,
.wpb_wrapper,
.wpb_wrapper *,
.woocommerce,
.woocommerce *,
.wpc-menu,
.wpc-menu *{
  font-family:var(--fyg-font-body) !important;
}

/* -------------------------
   Premium display headings
   ------------------------- */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.banner-area h1,
.banner-area h2,
.page-banner-area h1,
.page-banner-area h2,
.page-title-area h1,
.page-title-area h2,
.page-header h1,
.page-header h2,
.fy-title,
.fyg-title,
.fyg-glitch-title,
.fy-gallery-hero__title,
.fy-gallery-intro__card h2,
.fy-gallery-heading__eyebrow,
.fy-gallery-heading__title{
  font-family:var(--fyg-font-display) !important;
  color:var(--fyg-white);
  font-weight:700;
  line-height:1.04;
  margin-top:0;
  margin-bottom:.55em;
  letter-spacing:.025em;
}

/* -------------------------
   Heading scale
   ------------------------- */
h1,
.elementor h1,
.wpb_wrapper h1,
.fy-hero-title{
  font-size:var(--fs-h1) !important;
}

h2,
.elementor h2,
.wpb_wrapper h2,
.fy-title{
  font-size:var(--fs-h2) !important;
}

h3,
.elementor h3,
.wpb_wrapper h3{
  font-size:var(--fs-h3) !important;
}

h4,
.elementor h4,
.wpb_wrapper h4{
  font-size:var(--fs-h4) !important;
}

/* -------------------------
   Body copy
   ------------------------- */
body{
  font-size:var(--fs-body);
  line-height:1.6;
}

p, li, dd, dt, blockquote, figcaption,
.elementor-widget-text-editor p,
.wpb_text_column p,
.woocommerce p,
.wpc-menu p{
  font-size:var(--fs-body) !important;
  line-height:1.65 !important;
  font-weight:400;
  color:var(--fyg-white-soft);
  margin:0 0 var(--space-3);
}

/* -------------------------
   Small text / meta
   ------------------------- */
small,
.fy-micro,
.fy-meta,
.wp-caption-text,
.elementor-widget-text-editor small{
  font-size:var(--fs-small) !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.72);
}

/* -------------------------
   Kicker / eyebrow text
   ------------------------- */
.fy-kicker,
.fyg-kicker,
.fy-eyebrow,
.fyg-eyebrow{
  font-family:var(--fyg-font-body) !important;
  font-size:var(--fs-kicker) !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
}

/* -------------------------
   Navigation
   ------------------------- */
nav a,
.fy-header-nav a,
.fy-mobile-nav a,
.menu a,
.main-navigation a{
  font-family:var(--fyg-font-body) !important;
  font-size:var(--fs-nav) !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase;
}

/* -------------------------
   Buttons / CTAs
   ------------------------- */
button,
[type="button"],
[type="submit"],
.elementor-button,
.elementor a.elementor-button-link,
.fyg-btn,
.fy-order-btn,
.fy-header-order-btn,
.fy-mh-order,
.fy-mobile-order-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.single_add_to_cart_button{
  font-family:var(--fyg-font-body) !important;
  font-size:var(--fs-button) !important;
  font-weight:900 !important;
  line-height:1.1 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}

/* -------------------------
   Homepage custom HTML override
   Stops Elementor HTML widgets using random fonts
   ------------------------- */
.home .elementor-widget-html,
.home .elementor-widget-html *{
  font-family:var(--fyg-font-body) !important;
}

.home .elementor-widget-html h1,
.home .elementor-widget-html h2,
.home .elementor-widget-html h3,
.home .elementor-widget-html h4,
.home .elementor-widget-html .fy-title,
.home .elementor-widget-html .fyg-title,
.home .elementor-widget-html .fy-hero-title{
  font-family:var(--fyg-font-display) !important;
}

/* -------------------------
   Tablet typography
   ------------------------- */
@media (max-width:1100px){
  :root{
    --fs-body:16px;
    --fs-body-sm:15px;
    --fs-small:12.5px;

    --fs-h1:clamp(38px, 7vw, 66px);
    --fs-h2:clamp(30px, 5.5vw, 48px);
    --fs-h3:clamp(23px, 3.5vw, 32px);
    --fs-h4:clamp(19px, 2.6vw, 25px);

    --fs-nav:13px;
    --fs-button:12px;
  }
}

/* -------------------------
   Mobile typography
   ------------------------- */
@media (max-width:767px){
  :root{
    --fs-body:15.5px;
    --fs-body-sm:14.5px;
    --fs-small:12px;

    --fs-h1:clamp(34px, 11vw, 52px);
    --fs-h2:clamp(28px, 9vw, 42px);
    --fs-h3:clamp(22px, 7vw, 30px);
    --fs-h4:clamp(18px, 5vw, 24px);

    --fs-nav:12px;
    --fs-button:11.5px;
    --fs-kicker:11px;
  }

  p, li, dd, dt, blockquote, figcaption,
  .elementor-widget-text-editor p,
  .wpb_text_column p{
    line-height:1.58 !important;
  }

  h1, h2, h3, h4,
  .elementor-heading-title,
  .fy-title,
  .fyg-title{
    letter-spacing:.018em !important;
  }
}


/* =========================================================
   4. LAYOUT / CONTAINERS
   ========================================================= */
.fyg-container,
.fy-container{
  width:100%;
  max-width:var(--fyg-container);
  margin-inline:auto;
  padding-left:20px;
  padding-right:20px;
}

.fyg-container--wide{
  width:100%;
  max-width:var(--fyg-container-wide);
  margin-inline:auto;
  padding-left:20px;
  padding-right:20px;
}

.fy-fullwidth{
  width:100%;
  margin:0;
  padding:0;
}

section, .elementor-section, .vc_row{
  position:relative;
}

@media (max-width: 767px){
  .fyg-container,
  .fy-container,
  .fyg-container--wide{
    padding-left:14px;
    padding-right:14px;
  }
}

/* =========================================================
   GLOBAL SECTION HEADER SYSTEM — FINAL UNIFORM VERSION
   Use across homepage sections
   ========================================================= */

.fy-section,
.fyg-section-intro,
.fy-love-luxe__intro,
.fyg-services-heat__intro{
  max-width:820px;
  margin:0 auto 26px;
  text-align:center;
}

.fy-kicker,
.fyg-kicker,
.fy-love-luxe__eyebrow,
.fyg-services-heat__eyebrow{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  margin:0 auto 16px !important;

  font-family:var(--fyg-font-display, "Cinzel", Georgia, serif) !important;
  font-size:clamp(13px, 1.2vw, 17px) !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;

  color:#ff9440 !important;
  text-shadow:0 0 14px rgba(255,122,26,.18);
}

.fy-kicker::before,
.fy-kicker::after,
.fyg-kicker::before,
.fyg-kicker::after,
.fy-love-luxe__eyebrow::before,
.fy-love-luxe__eyebrow::after,
.fyg-services-heat__eyebrow::before,
.fyg-services-heat__eyebrow::after{
  content:"";
  width:44px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,122,26,.85), transparent);
}

.fy-title,
.fyg-title,
.fy-love-luxe__title,
.fyg-services-heat__title{
  margin:0 !important;
  font-family:var(--fyg-font-display, "Cinzel", Georgia, serif) !important;
  font-size:clamp(32px, 4.4vw, 60px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
  color:#fff5ee !important;
  text-shadow:0 12px 28px rgba(0,0,0,.42);
}

.fy-title span,
.fyg-title span,
.fy-love-luxe__title span,
.fyg-services-heat__title span{
  color:#ff7a1a !important;
  text-shadow:0 0 16px rgba(255,122,26,.16);
}

.fy-text,
.fyg-text,
.fy-love-luxe__subtitle,
.fyg-services-heat__text{
  max-width:760px;
  margin:12px auto 0 !important;

  font-family:var(--fyg-font-body, "Poppins", Arial, sans-serif) !important;
  font-size:clamp(16px, 1.45vw, 19px) !important;
  font-weight:400 !important;
  line-height:1.7 !important;

  color:rgba(255,244,234,.82) !important;
}

@media(max-width:767px){
  .fy-section,
  .fyg-section-intro,
  .fy-love-luxe__intro,
  .fyg-services-heat__intro{
    margin-bottom:18px;
  }

  .fy-kicker,
  .fyg-kicker,
  .fy-love-luxe__eyebrow,
  .fyg-services-heat__eyebrow{
    margin-bottom:14px !important;
    font-size:12px !important;
    letter-spacing:.18em !important;
  }

  .fy-kicker::before,
  .fy-kicker::after,
  .fyg-kicker::before,
  .fyg-kicker::after,
  .fy-love-luxe__eyebrow::before,
  .fy-love-luxe__eyebrow::after,
  .fyg-services-heat__eyebrow::before,
  .fyg-services-heat__eyebrow::after{
    width:24px;
  }

  .fy-title,
  .fyg-title,
  .fy-love-luxe__title,
  .fyg-services-heat__title{
    font-size:clamp(28px, 8.8vw, 40px) !important;
    line-height:1.1 !important;
  }

  .fy-text,
  .fyg-text,
  .fy-love-luxe__subtitle,
  .fyg-services-heat__text{
    font-size:15px !important;
    line-height:1.68 !important;
  }
}


/* =========================================================
   6. GLOBAL DIVIDER
   ========================================================= */
.fy-divider{
  position:relative;
  width:100%;
  max-width:1240px;
  height:12px;
  margin:16px auto;
  padding-left:14px;
  padding-right:14px;
}

.fy-divider::before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  height:1px;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,122,26,.14) 12%,
    rgba(255,122,26,.82) 50%,
    rgba(255,122,26,.14) 88%,
    transparent 100%
  );
  box-shadow:0 0 10px rgba(255,122,26,.10);
}

.fy-divider::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:8px;
  height:8px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #ffe2b2 0%, #ffcb78 28%, #ff8a2f 66%, #ff6d1f 100%);
  box-shadow:
    0 0 0 3px rgba(255,122,26,.05),
    0 0 10px rgba(255,122,26,.18);
}

/* =========================================================
   7. GLOBAL BUTTON / CTA SYSTEM
   ========================================================= */
button,
[type="button"],
[type="submit"],
.elementor-button,
.elementor a.elementor-button-link,
.fyg-btn,
.fy-order-btn,
.fyg-grid-order-btn,
.fy-signature-order-btn,
.fy-love3__cta a,
.fy-reviews-luxe__button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button,
.fy-back-to-menu,
.fy-mh-order,
.fy-header-order-btn,
.fy-mobile-order-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:var(--fyg-font-display) !important;
  font-weight:700;
  text-decoration:none !important;
  border:none;
  cursor:pointer;
  border-radius:999px;
  color:#111 !important;
  background:linear-gradient(
    90deg,
    #b94800 0%,
    #cc5500 35%,
    #e36a1a 68%,
    #f0c45a 100%
  ) !important;
  box-shadow:0 4px 12px rgba(204,85,0,0.32);
  transition:
    transform .22s ease,
    filter .22s ease,
    box-shadow .22s ease,
    color .22s ease;
}

button,
.elementor-button,
.fyg-btn,
.fy-order-btn,
.fy-header-order-btn,
.fy-signature-order-btn,
.woocommerce a.button,
.woocommerce button.button,
.single_add_to_cart_button{
  color:#111 !important;
}

.fy-btn--dark,
.fy-btn--ghost{
  color:#fff !important;
}

@media (min-width: 992px){
  button,
  [type="button"],
  [type="submit"],
  .elementor-button,
  .elementor a.elementor-button-link,
  .fyg-btn,
  .fy-order-btn,
  .fyg-grid-order-btn,
  .fy-signature-order-btn,
  .fy-love3__cta a,
  .fy-reviews-luxe__button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit,
  .single_add_to_cart_button,
  .fy-back-to-menu,
  .fy-header-order-btn{
    min-height:60px;
    padding:0 34px;
    font-size:14px;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
}

@media (max-width: 991.98px){
  button,
  [type="button"],
  [type="submit"],
  .elementor-button,
  .elementor a.elementor-button-link,
  .fyg-btn,
  .fy-order-btn,
  .fyg-grid-order-btn,
  .fy-signature-order-btn,
  .fy-love3__cta a,
  .fy-reviews-luxe__button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit,
  .single_add_to_cart_button,
  .fy-back-to-menu{
    min-height:48px;
    padding:0 20px;
    font-size:14px;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
}

button:hover,
button:focus,
[type="button"]:hover,
[type="button"]:focus,
[type="submit"]:hover,
[type="submit"]:focus,
.elementor-button:hover,
.elementor-button:focus,
.elementor a.elementor-button-link:hover,
.elementor a.elementor-button-link:focus,
.fyg-btn:hover,
.fyg-btn:focus,
.fy-order-btn:hover,
.fy-order-btn:focus,
.fyg-grid-order-btn:hover,
.fyg-grid-order-btn:focus,
.fy-signature-order-btn:hover,
.fy-signature-order-btn:focus,
.fy-love3__cta a:hover,
.fy-love3__cta a:focus,
.fy-reviews-luxe__button:hover,
.fy-reviews-luxe__button:focus,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.woocommerce button.button:hover,
.woocommerce button.button:focus,
.woocommerce input.button:hover,
.woocommerce input.button:focus,
.woocommerce #respond input#submit:hover,
.woocommerce #respond input#submit:focus,
.single_add_to_cart_button:hover,
.single_add_to_cart_button:focus,
.fy-back-to-menu:hover,
.fy-back-to-menu:focus,
.fy-mh-order:hover,
.fy-mh-order:focus,
.fy-header-order-btn:hover,
.fy-header-order-btn:focus,
.fy-mobile-order-btn:hover,
.fy-mobile-order-btn:focus{
  transform:translateY(-2px);
  filter:brightness(1.05);
  box-shadow:0 6px 18px rgba(204,85,0,0.42);
  color:#111 !important;
}

button:active,
.elementor-button:active{
  transform:translateY(0);
  box-shadow:0 2px 6px rgba(204,85,0,0.24);
}

.fy-btn-row,
.fy-actions,
.fy-hero-v3__actions,
.fy-contact-hero-actions,
.fyg-cta-row,
.wp-block-buttons{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:14px;
  width:100%;
}

.fy-btn-center{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
}

.fy-btn-center .fy-order-btn{
  display:inline-flex;
  margin:0 auto;
}

.elementor-widget-button .elementor-widget-container,
.elementor-button-wrapper{
  text-align:center !important;
}

.fy-hero-v3__actions{
  width:100%;
}

.fy-mh-order,
.fy-mobile-order-btn{
  min-height:auto;
  padding:0 16px;
  font-size:12px;
}

a.added_to_cart,
.added_to_cart,
.view-cart,
.wpc-view-product,
.woocommerce-LoopProduct-link{
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  color:inherit !important;
}

/* =========================================================
   8. GLOBAL CARD SYSTEM
   ========================================================= */
.fy-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  padding:24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.015) 24%, rgba(255,255,255,.01) 100%),
    linear-gradient(145deg, #121212 0%, #0a0a0a 55%, #101010 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 20px 50px rgba(0,0,0,.6);
  transition:all .3s ease;
}

.fy-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,122,26,.10) 0%, transparent 8%),
    radial-gradient(circle at 100% 0%, rgba(255,122,26,.08), transparent 24%),
    radial-gradient(circle at 0% 100%, rgba(255,179,93,.05), transparent 25%);
  opacity:.95;
}

.fy-card:hover{
  transform:translateY(-8px);
  border-color:rgba(255,122,26,.22);
  box-shadow:
    0 28px 70px rgba(0,0,0,.75),
    0 0 24px rgba(255,122,26,.08);
}

/* =========================================================
   10. FOOTER
   ========================================================= */
.fy-footer-delivery{
  background:linear-gradient(180deg, #ff9b3b 0%, #ff7a1a 60%, #f56600 100%);
  padding:24px 18px;
  text-align:center;
}

.fy-footer-delivery p{
  margin:0;
  font-size:18px;
  font-weight:600;
  line-height:1.6;
  letter-spacing:.04em;
  color:#1b0d00;
}

.fy-footer-delivery strong{
  color:#111;
  font-weight:800;
}

.fy-footer-delivery span{
  margin:0 10px;
  color:rgba(0,0,0,.45);
  font-weight:700;
}

.fy-footer{
  background:#070707;
  color:#f3eee4;
}

.fy-footer-container{
  max-width:1200px;
  margin:0 auto;
  padding:72px 24px 52px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:64px;
}

.fy-footer-brand img{
  width:170px;
  margin-bottom:18px;
}

.fy-footer-brand p{
  font-size:18px;
  line-height:1.7;
  color:#f3eee4;
}

.fy-footer-brand span{
  color:#ffb15c;
  font-weight:600;
}

.fy-footer h4{
  font-family:var(--fyg-font-display) !important;
  font-size:19px;
  margin-bottom:18px;
  color:#ff7a1a;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.fy-footer ul{
  list-style:none;
  padding:0;
  margin:0;
}

.fy-footer ul li{
  margin-bottom:14px;
}

.fy-footer a{
  color:#f3eee4;
  font-size:17px;
  text-decoration:none;
  line-height:1.6;
}

.fy-footer a:hover{
  color:#ff9b3b;
}

.fy-footer-social-wrap{
  margin-top:28px;
}

.fy-footer-social-label{
  font-size:13px;
  letter-spacing:.2em;
  text-transform:uppercase;
  margin-bottom:16px;
  color:#ffb15c;
  font-family:var(--fyg-font-display) !important;
}

.fy-footer-social{
  display:flex;
  gap:20px;
}

.fy-social{
  width:56px;
  height:56px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  font-weight:800;
  letter-spacing:.14em;
  color:#fff;
  text-decoration:none;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.fy-social.ig{
  background:radial-gradient(circle at 30% 30%,#ff9af0,#ff2ec4 45%,#b800ff 85%);
  box-shadow:0 0 26px rgba(255,46,196,.7);
}

.fy-social.tt{
  background:radial-gradient(circle at 30% 30%,#42fff4,#00f2ea 60%,#009c99);
  box-shadow:0 0 22px rgba(0,242,234,.55);
}

.fy-social.wa{
  background:radial-gradient(circle at 30% 30%,#6bff8d,#2fdc6c 60%,#1fa855);
  box-shadow:0 0 22px rgba(76,255,119,.5);
}

.fy-social:hover{
  transform:translateY(-5px) scale(1.12);
  filter:brightness(1.08);
}

.fy-footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding:22px 12px;
  text-align:center;
}

.fy-footer-bottom p{
  font-size:15px;
  color:rgba(243,238,228,.6);
}

@media(max-width:900px){
  .fy-footer-container{
    grid-template-columns:1fr;
    gap:44px;
    text-align:center;
  }

  .fy-footer-brand img{
    margin-inline:auto;
  }

  .fy-footer-social{
    justify-content:center;
  }
}

/* =========================================================
   11. GLOBAL PAGE BANNER SYSTEM
   Cleaned + Tight + Consistent
   ========================================================= */

.banner-area,
.page-banner-area,
.page-title-area,
.page-header,
.banner-bg{
  position:relative !important;
  overflow:hidden !important;
  margin-bottom:0 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,122,26,.10) 0%, transparent 26%),
    linear-gradient(180deg, #050505 0%, #0a0a0a 52%, #050505 100%) !important;
  border-top:1px solid rgba(255,122,26,.10) !important;
  border-bottom:1px solid rgba(255,122,26,.12) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    inset 0 -1px 0 rgba(255,255,255,.02) !important;
}

.banner-area .container,
.page-banner-area .container,
.page-title-area .container,
.page-header .container,
.banner-bg .container{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding:16px 16px 14px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

.banner-area h1,
.banner-area h2,
.banner-area .title,
.page-banner-area h1,
.page-banner-area h2,
.page-banner-area .title,
.page-title-area h1,
.page-title-area h2,
.page-title-area .title,
.page-header h1,
.page-header h2,
.page-header .title,
.banner-bg h1,
.banner-bg h2,
.banner-bg .title{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
  font-family:var(--fyg-font-display) !important;
  font-size:clamp(32px, 4.4vw, 58px) !important;
  font-weight:700 !important;
  line-height:1.02 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  color:var(--fyg-gold) !important;
  text-shadow:
    0 10px 24px rgba(0,0,0,.35),
    0 0 18px rgba(255,122,26,.10) !important;
}

.banner-area h1::after,
.banner-area h2::after,
.banner-area .title::after,
.page-banner-area h1::after,
.page-banner-area h2::after,
.page-banner-area .title::after,
.page-title-area h1::after,
.page-title-area h2::after,
.page-title-area .title::after,
.page-header h1::after,
.page-header h2::after,
.page-header .title::after,
.banner-bg h1::after,
.banner-bg h2::after,
.banner-bg .title::after{
  content:"" !important;
  display:block !important;
  width:64px !important;
  height:2px !important;
  margin:12px auto 0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, rgba(255,179,93,0), rgba(255,122,26,.95), rgba(255,179,93,0)) !important;
  box-shadow:0 0 14px rgba(255,122,26,.18) !important;
}

.banner-area .breadcrumbs,
.page-banner-area .breadcrumbs,
.page-title-area .breadcrumbs,
.page-header .breadcrumbs,
.banner-bg .breadcrumbs,
.banner-area .breadcrumb,
.page-banner-area .breadcrumb,
.page-title-area .breadcrumb,
.page-header .breadcrumb,
.banner-bg .breadcrumb{
  display:none !important;
}

/* =========================================================
   11B. GLOBAL BANNER → CONTENT JOIN
   ========================================================= */

html, body{
  margin-top:0 !important;
  padding-top:0 !important;
}

#main-content,
.main-container,
.site-main,
.content-area{
  margin-top:0 !important;
  padding-top:0 !important;
}

#main-content > .container,
.main-container > .container,
.site-main > .container,
.content-area > .container{
  margin-top:0 !important;
  padding-top:0 !important;
}

#main-content .elementor-top-section:first-of-type,
.main-container .elementor-top-section:first-of-type,
.site-main .elementor-top-section:first-of-type,
.content-area .elementor-top-section:first-of-type{
  margin-top:0 !important;
  padding-top:0 !important;
}

#main-content .vc_row:first-of-type,
.main-container .vc_row:first-of-type,
.site-main .vc_row:first-of-type,
.content-area .vc_row:first-of-type{
  margin-top:0 !important;
  padding-top:0 !important;
}

#main-content > *:first-child,
.main-container > *:first-child,
.site-main > *:first-child,
.content-area > *:first-child{
  margin-top:0 !important;
  padding-top:0 !important;
}

@media (max-width: 767.98px){
  .banner-area .container,
  .page-banner-area .container,
  .page-title-area .container,
  .page-header .container,
  .banner-bg .container{
    padding:10px 14px 12px !important;
  }

  .banner-area h1,
  .banner-area h2,
  .banner-area .title,
  .page-banner-area h1,
  .page-banner-area h2,
  .page-banner-area .title,
  .page-title-area h1,
  .page-title-area h2,
  .page-title-area .title,
  .page-header h1,
  .page-header h2,
  .page-header .title,
  .banner-bg h1,
  .banner-bg h2,
  .banner-bg .title{
    font-size:clamp(28px, 8vw, 40px) !important;
    line-height:1 !important;
    letter-spacing:.03em !important;
  }

  .banner-area h1::after,
  .banner-area h2::after,
  .banner-area .title::after,
  .page-banner-area h1::after,
  .page-banner-area h2::after,
  .page-banner-area .title::after,
  .page-title-area h1::after,
  .page-title-area h2::after,
  .page-title-area .title::after,
  .page-header h1::after,
  .page-header h2::after,
  .page-header .title::after,
  .banner-bg h1::after,
  .banner-bg h2::after,
  .banner-bg .title::after{
    width:52px !important;
    margin:10px auto 0 !important;
  }
}

/* =========================================================
   12. GALLERY / EVENTS PAGE
   ========================================================= */

body:has(.fy-gallery-page) .banner-area,
body:has(.fy-gallery-page) .page-banner-area,
body:has(.fy-gallery-page) .page-title-area,
body:has(.fy-gallery-page) .page-header,
body:has(.fy-gallery-page) .banner-bg{
  display:none !important;
}

body:has(.fy-gallery-page) .main-container,
body:has(.fy-gallery-page) #main-content{
  margin-top:0 !important;
  padding-top:0 !important;
}

.fy-gallery-page,
.fy-gallery-page *{
  box-sizing:border-box;
}

.fy-gallery-page{
  --fy-bg:#050505;
  --fy-bg-2:#0b0b0b;
  --fy-panel:#101010;
  --fy-panel-2:#171717;
  --fy-text:#fff8f0;
  --fy-text-soft:rgba(255,248,240,.80);
  --fy-text-faint:rgba(255,248,240,.58);
  --fy-orange:#ff7a1a;
  --fy-orange-deep:#e8680f;
  --fy-orange-soft:#ffb26f;
  --fy-gold:#d4af37;
  --fy-line:rgba(255,255,255,.08);
  --fy-line-strong:rgba(255,122,26,.18);
  --fy-shadow:0 20px 60px rgba(0,0,0,.45);
  --fy-radius:28px;
  --fy-radius-sm:20px;
  --fy-shell:1240px;
  color:var(--fy-text);
  background:
    radial-gradient(circle at 20% 0%, rgba(255,122,26,.08), transparent 26%),
    radial-gradient(circle at 90% 10%, rgba(255,122,26,.05), transparent 20%),
    linear-gradient(180deg, #050505 0%, #090909 38%, #050505 100%);
}

.fy-gallery-shell{
  width:min(100% - 32px, var(--fy-shell));
  margin:0 auto;
}

.fy-gallery-hero{
  position:relative;
  min-height:92vh;
  overflow:hidden;
  isolation:isolate;
  background:#050505;
  border-bottom:1px solid rgba(255,122,26,.14);
}

.fy-gallery-hero__bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-color:#050505;
  background-image:url('https://www.funkyyardgrill.co.uk/wp-content/uploads/2026/04/Screenshot_20260413_142551_WhatsApp-e1776087234950.jpg');
  background-repeat:no-repeat;
  background-size:contain;
  background-position:right center;
  transform:none;
}

.fy-gallery-hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.84) 28%, rgba(0,0,0,.52) 52%, rgba(0,0,0,.16) 72%, rgba(0,0,0,.28) 100%),
    linear-gradient(180deg, rgba(0,0,0,.22) 0%, rgba(0,0,0,.06) 28%, rgba(0,0,0,.20) 68%, rgba(0,0,0,.82) 100%);
}

.fy-gallery-hero__grain{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:.08;
  background-image:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.20) 0 1px, transparent 1px),
    radial-gradient(circle at 80% 30%, rgba(255,255,255,.15) 0 1px, transparent 1px),
    radial-gradient(circle at 50% 80%, rgba(255,255,255,.12) 0 1px, transparent 1px);
  background-size:180px 180px, 220px 220px, 260px 260px;
  mix-blend-mode:soft-light;
}

.fy-gallery-hero__smoke{
  position:absolute;
  inset:auto auto 0 0;
  width:72vw;
  height:54vh;
  z-index:2;
  pointer-events:none;
  filter:blur(22px);
  opacity:.34;
  transform:translate3d(0,0,0);
}

.fy-gallery-hero__smoke::before,
.fy-gallery-hero__smoke::after{
  content:"";
  position:absolute;
  inset:0;
  background-repeat:no-repeat;
  border-radius:999px;
}

.fy-gallery-hero__smoke--one{
  left:-10%;
  bottom:8%;
  animation:fySmokeDriftOne 16s linear infinite;
}

.fy-gallery-hero__smoke--one::before{
  background:
    radial-gradient(ellipse at 18% 60%, rgba(255,255,255,.34) 0%, rgba(255,255,255,.18) 18%, rgba(255,255,255,.06) 38%, transparent 58%),
    radial-gradient(ellipse at 34% 42%, rgba(255,255,255,.26) 0%, rgba(255,255,255,.12) 18%, rgba(255,255,255,.04) 36%, transparent 56%),
    radial-gradient(ellipse at 52% 52%, rgba(255,255,255,.24) 0%, rgba(255,255,255,.11) 18%, rgba(255,255,255,.04) 36%, transparent 54%),
    radial-gradient(ellipse at 72% 40%, rgba(255,255,255,.16) 0%, rgba(255,255,255,.08) 16%, rgba(255,255,255,.03) 34%, transparent 52%);
}

.fy-gallery-hero__smoke--one::after{
  transform:scale(1.08) translateY(-10px);
  opacity:.75;
  background:
    radial-gradient(ellipse at 20% 48%, rgba(255,255,255,.12) 0%, rgba(255,255,255,.06) 20%, transparent 44%),
    radial-gradient(ellipse at 43% 50%, rgba(255,255,255,.10) 0%, rgba(255,255,255,.05) 18%, transparent 40%),
    radial-gradient(ellipse at 69% 38%, rgba(255,255,255,.10) 0%, rgba(255,255,255,.05) 18%, transparent 40%);
}

.fy-gallery-hero__smoke--two{
  left:24%;
  bottom:20%;
  width:58vw;
  height:42vh;
  opacity:.20;
  animation:fySmokeDriftTwo 20s linear infinite;
}

.fy-gallery-hero__smoke--two::before{
  background:
    radial-gradient(ellipse at 16% 56%, rgba(255,255,255,.20) 0%, rgba(255,255,255,.10) 18%, rgba(255,255,255,.03) 34%, transparent 52%),
    radial-gradient(ellipse at 42% 36%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 18%, rgba(255,255,255,.03) 34%, transparent 50%),
    radial-gradient(ellipse at 68% 50%, rgba(255,255,255,.15) 0%, rgba(255,255,255,.07) 18%, rgba(255,255,255,.02) 30%, transparent 48%);
}

.fy-gallery-hero__smoke--two::after{
  transform:scale(1.12) translateY(-12px);
  opacity:.65;
  background:
    radial-gradient(ellipse at 28% 44%, rgba(255,255,255,.08) 0%, rgba(255,255,255,.04) 20%, transparent 40%),
    radial-gradient(ellipse at 62% 42%, rgba(255,255,255,.08) 0%, rgba(255,255,255,.04) 18%, transparent 36%);
}

@keyframes fySmokeDriftOne{
  0%{transform:translate3d(-4%, 8%, 0) scale(1);opacity:.18;}
  18%{opacity:.34;}
  50%{transform:translate3d(14%, -8%, 0) scale(1.08);opacity:.30;}
  82%{opacity:.20;}
  100%{transform:translate3d(28%, -18%, 0) scale(1.14);opacity:.10;}
}

@keyframes fySmokeDriftTwo{
  0%{transform:translate3d(0, 10%, 0) scale(.96);opacity:.10;}
  25%{opacity:.22;}
  55%{transform:translate3d(14%, -6%, 0) scale(1.06);opacity:.18;}
  100%{transform:translate3d(28%, -16%, 0) scale(1.14);opacity:.08;}
}

.fy-gallery-hero__inner{
  position:relative;
  z-index:5;
  width:min(100% - 32px, 1240px);
  margin:0 auto;
  min-height:92vh;
  display:grid;
  grid-template-columns:minmax(0, 560px) 1fr;
  align-items:center;
  gap:32px;
  padding:120px 0 100px;
}

.fy-gallery-hero__content{
  max-width:560px;
}

.fy-gallery-hero__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--fy-orange-soft);
}

.fy-gallery-hero__eyebrow::before,
.fy-gallery-hero__eyebrow::after{
  content:"";
  display:block;
  width:92px;
  max-width:18vw;
  height:1px;
  background:linear-gradient(90deg, rgba(255,178,111,.16) 0%, rgba(255,122,26,.85) 100%);
}

.fy-gallery-hero__title{
  margin:0;
  font-family:var(--fyg-font-display) !important;
  font-size:clamp(44px, 7vw, 86px);
  line-height:.95;
  letter-spacing:.01em;
  color:#fff7ef;
  text-shadow:0 3px 20px rgba(0,0,0,.35);
}

.fy-gallery-hero__text{
  margin:22px 0 0;
  max-width:560px;
  font-size:18px;
  line-height:1.7;
  color:var(--fy-text-soft);
}

.fy-gallery-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
}

.fy-gallery-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 24px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  letter-spacing:.03em;
  transition:transform .28s ease, box-shadow .28s ease, background .28s ease, color .28s ease, border-color .28s ease;
}

.fy-gallery-btn:hover{
  transform:translateY(-2px);
}

.fy-gallery-btn--primary{
  color:#111;
  background:linear-gradient(180deg, #ff9a47 0%, var(--fy-orange) 55%, var(--fy-orange-deep) 100%);
  box-shadow:
    0 14px 34px rgba(255,122,26,.26),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.16);
}

.fy-gallery-btn--ghost{
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.03);
  backdrop-filter:blur(8px);
}

.fy-gallery-hero__badgeWrap{
  display:flex;
  justify-content:flex-end;
  align-items:flex-end;
}

.fy-gallery-hero__badge{
  position:relative;
  width:min(100%, 350px);
  opacity:0;
  transform:translateX(60px) rotate(-4deg);
  transition:opacity .7s ease, transform .9s cubic-bezier(.2,.8,.2,1);
  filter:drop-shadow(0 24px 36px rgba(0,0,0,.32));
}

.fy-gallery-hero__badge.is-visible{
  opacity:1;
  transform:translateX(0) rotate(-4deg);
}

.fy-gallery-hero__badge::before{
  content:"";
  position:absolute;
  inset:0;
  clip-path:polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);
  background:linear-gradient(180deg, #ff9f52 0%, var(--fy-orange) 58%, #dc600e 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20), inset 0 -1px 0 rgba(0,0,0,.14);
}

.fy-gallery-hero__badge::after{
  content:"";
  position:absolute;
  inset:10px;
  clip-path:polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);
  border:1px solid rgba(0,0,0,.12);
  pointer-events:none;
}

.fy-gallery-hero__badgeInner{
  position:relative;
  z-index:2;
  padding:28px 28px 26px;
  transform:rotate(4deg);
  color:#121212;
}

.fy-gallery-hero__badgeKicker{
  display:block;
  margin-bottom:10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(17,17,17,.74);
}

.fy-gallery-hero__badgeTitle{
  margin:0 0 10px;
  font-family:var(--fyg-font-display) !important;
  font-size:32px;
  line-height:1;
  color:#18110d;
}

.fy-gallery-hero__badgeText{
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:rgba(17,17,17,.82);
}

.fy-gallery-hero__bottomFade{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:160px;
  z-index:4;
  background:linear-gradient(180deg, rgba(5,5,5,0) 0%, #050505 86%);
  pointer-events:none;
}

.fy-gallery-intro{
  position:relative;
  padding:10px 0 28px;
  margin-top:-40px;
  z-index:6;
}

.fy-gallery-intro__grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
}

.fy-gallery-intro__card{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:30px 28px;
  box-shadow:var(--shadow-card);
  border:1px solid rgba(255,255,255,.08);
}

.fy-gallery-intro__card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 85% 15%, rgba(255,122,26,.10), transparent 30%);
}

.fy-gallery-intro__card--dark{
  background:linear-gradient(180deg, rgba(16,16,16,.98) 0%, rgba(7,7,7,.98) 100%);
}

.fy-gallery-intro__card--accent{
  background:linear-gradient(180deg, rgba(255,122,26,.97) 0%, rgba(231,100,18,.96) 100%);
  color:#151515;
  border-color:rgba(255,255,255,.12);
}

.fy-gallery-intro__label{
  display:inline-block;
  margin-bottom:12px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#ffbb82;
}

.fy-gallery-intro__card--accent .fy-gallery-intro__label{
  color:rgba(17,17,17,.74);
}

.fy-gallery-intro__card h2{
  margin:0 0 16px;
  font-family:var(--fyg-font-display) !important;
  line-height:1.03;
  letter-spacing:.01em;
}

.fy-gallery-intro__card--dark h2{
  font-size:clamp(36px, 4.8vw, 58px);
  color:rgba(255,255,255,.92);
  text-shadow:0 2px 12px rgba(0,0,0,.35);
}

.fy-gallery-intro__card--accent h2{
  font-size:clamp(34px, 4.2vw, 52px);
  color:#18110d;
}

.fy-gallery-intro__card p{
  margin:0;
  max-width:60ch;
  font-size:15px;
  line-height:1.8;
  color:rgba(255,248,240,.80);
}

.fy-gallery-intro__card--accent p{
  color:rgba(17,17,17,.84);
}

.fy-gallery-heading{
  position:relative;
  padding:28px 0 18px;
}

.fy-gallery-heading__inner{
  text-align:center;
}

.fy-gallery-heading__eyebrow{
  display:block;
  margin-bottom:8px;
  font-family:var(--fyg-font-display) !important;
  font-size:clamp(28px, 3vw, 46px);
  color:#d4af37;
  line-height:1;
}

.fy-gallery-heading__title{
  margin:0;
  font-family:var(--fyg-font-display) !important;
  font-size:clamp(54px, 7vw, 92px);
  line-height:.9;
  color:rgba(255,255,255,.28);
  letter-spacing:.01em;
}

#fy-gallery-masonry{
  display:block;
  height:1px;
  margin-top:0;
}

.elementor-widget-gloreya-masonary-gallery{
  position:relative;
  padding-top:8px;
  padding-bottom:64px;
}

.elementor-widget-gloreya-masonary-gallery .elementor-widget-container{
  width:min(100% - 32px, 1240px);
  margin:0 auto;
}

.elementor-widget-gloreya-masonary-gallery .ts-masonry{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:stretch;
}

.elementor-widget-gloreya-masonary-gallery .ts-masonary-item{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:#111;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 40px rgba(0,0,0,.28);
  transition:transform .4s ease, box-shadow .4s ease, border-color .4s ease;
  height:clamp(260px, 30vw, 360px);
}

.elementor-widget-gloreya-masonary-gallery .ts-masonary-item:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 54px rgba(0,0,0,.40);
  border-color:rgba(255,122,26,.24);
}

.elementor-widget-gloreya-masonary-gallery .ts-gallery-popup{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:24px;
  text-decoration:none;
}

.elementor-widget-gloreya-masonary-gallery .ts-gallery-popup::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,.16) 62%, rgba(0,0,0,.52) 100%);
  opacity:.72;
  pointer-events:none;
  transition:opacity .35s ease;
}

.elementor-widget-gloreya-masonary-gallery .ts-masonary-item:hover .ts-gallery-popup::after{
  opacity:.9;
}

.elementor-widget-gloreya-masonary-gallery .ts-gallery-popup img{
  display:block;
  width:100%;
  height:100% !important;
  object-fit:cover;
  object-position:center center;
  border-radius:24px;
  transform:scale(1);
  transition:transform .65s ease, filter .4s ease;
}

.elementor-widget-gloreya-masonary-gallery .ts-masonary-item:hover .ts-gallery-popup img{
  transform:scale(1.05);
  filter:saturate(1.04) contrast(1.03);
}

.elementor-widget-gloreya-masonary-gallery .ts-masonary-item:nth-child(1),
.elementor-widget-gloreya-masonary-gallery .ts-masonary-item:nth-child(5){
  grid-column:auto;
}

@media (max-width:1180px){
  .fy-gallery-hero__inner{
    grid-template-columns:minmax(0, 1fr);
    align-items:end;
    gap:26px;
    padding:110px 0 84px;
  }

  .fy-gallery-hero__content{
    max-width:100%;
  }

  .fy-gallery-hero__badgeWrap{
    justify-content:flex-start;
  }

  .fy-gallery-hero__badge{
    width:min(100%, 360px);
  }

  .fy-gallery-intro__grid{
    grid-template-columns:1fr;
  }

  .elementor-widget-gloreya-masonary-gallery .elementor-widget-container{
    width:min(100% - 32px, 1240px);
  }

  .elementor-widget-gloreya-masonary-gallery .ts-masonry{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .elementor-widget-gloreya-masonary-gallery .ts-masonary-item{
    height:320px;
  }
}

@media (max-width:767.98px){
  .fy-gallery-shell{
    width:min(100% - 20px, 1240px);
  }

  .fy-gallery-hero{
    min-height:auto;
  }

  .fy-gallery-hero__bg{
    background-size:contain;
    background-position:center top;
  }

  .fy-gallery-hero__overlay{
    background:linear-gradient(180deg, rgba(0,0,0,.46) 0%, rgba(0,0,0,.16) 18%, rgba(0,0,0,.68) 54%, rgba(0,0,0,.92) 100%);
  }

  .fy-gallery-hero__inner{
    width:min(100% - 20px, 1240px);
    min-height:auto;
    padding:34px 0 54px;
    gap:20px;
    display:block;
  }

  .fy-gallery-hero__content{
    max-width:100%;
    margin-top:0;
  }

  .fy-gallery-hero__eyebrow{
    justify-content:center;
    margin:18px 0 14px;
  }

  .fy-gallery-hero__eyebrow::before,
  .fy-gallery-hero__eyebrow::after{
    width:84px;
    max-width:20vw;
  }

  .fy-gallery-hero__title{
    font-size:clamp(36px, 12vw, 58px);
    line-height:.95;
    text-align:left;
  }

  .fy-gallery-hero__text{
    margin-top:18px;
    font-size:15px;
    line-height:1.65;
  }

  .fy-gallery-hero__actions{
    gap:10px;
    margin-top:22px;
  }

  .fy-gallery-btn{
    min-height:50px;
    width:100%;
  }

  .fy-gallery-hero__badgeWrap{
    justify-content:center !important;
    align-items:center !important;
  }

  .fy-gallery-hero__badge{
    width:100%;
    max-width:320px;
    margin-left:auto !important;
    margin-right:auto !important;
    margin-top:18px;
    transform:translateY(16px) rotate(-4deg);
  }

  .fy-gallery-hero__badge.is-visible{
    transform:translateY(0) rotate(-4deg);
  }

  .fy-gallery-hero__badgeInner{
    padding:22px 22px 20px;
  }

  .fy-gallery-hero__badgeTitle{
    font-size:26px;
  }

  .fy-gallery-hero__smoke{
    width:120vw;
    height:40vh;
    left:-26%;
    bottom:32%;
    opacity:.20;
    filter:blur(20px);
  }

  .fy-gallery-hero__smoke--two{
    left:-6%;
    bottom:46%;
    width:110vw;
    height:28vh;
    opacity:.10;
  }

  .fy-gallery-intro{
    margin-top:-8px;
    padding-top:0;
    padding-bottom:20px;
  }

  .fy-gallery-intro__card{
    padding:24px 20px;
    border-radius:22px;
  }

  .fy-gallery-intro__card--dark h2{
    font-size:clamp(32px, 9vw, 46px);
    color:#fff;
  }

  .fy-gallery-intro__card--accent h2{
    font-size:clamp(30px, 8.5vw, 42px);
  }

  .fy-gallery-heading{
    padding:18px 0 12px;
  }

  .fy-gallery-heading__eyebrow{
    font-size:clamp(22px, 7vw, 34px);
  }

  .fy-gallery-heading__title{
    font-size:clamp(40px, 14vw, 62px);
    color:rgba(255,255,255,.22);
  }

  .elementor-widget-gloreya-masonary-gallery{
    padding-top:4px;
    padding-bottom:40px;
  }

  .elementor-widget-gloreya-masonary-gallery .elementor-widget-container{
    width:min(100% - 20px, 1240px);
  }

  .elementor-widget-gloreya-masonary-gallery .ts-masonry{
    grid-template-columns:1fr;
    gap:14px;
  }

  .elementor-widget-gloreya-masonary-gallery .ts-masonary-item{
    height:260px;
    border-radius:18px;
  }

  .elementor-widget-gloreya-masonary-gallery .ts-gallery-popup,
  .elementor-widget-gloreya-masonary-gallery .ts-gallery-popup img{
    border-radius:18px;
  }
}

/* =========================================================
   YARD MENU – PAGE 4979
   MASTER REPLACEMENT BLOCK
   ========================================================= */

body.page-id-4979 .elementor-widget-wpc-menu-tab,
body.page-id-4979 .elementor-widget-wpc-menu-tab *{
  box-sizing:border-box;
}

/* ---------------------------------------------------------
   WRAPPERS
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-tab-wrapper,
body.page-id-4979 .wpc-food-tab-wrapper.wpc-nav-shortcode,
body.page-id-4979 .elementor-widget-wpc-menu-tab .elementor-widget-container,
body.page-id-4979 .wpc-tab-content{
  overflow:visible !important;
}

body.page-id-4979 .wpc-food-tab-wrapper{
  position:relative;
  z-index:2;
}

body.page-id-4979 .wpc-tab-content{
  position:relative !important;
  z-index:1 !important;
}

/* ---------------------------------------------------------
   DESKTOP CATEGORY NAV
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px 22px !important;
  margin:0 0 34px !important;
  padding:0 0 18px !important;
  list-style:none !important;
  border:none !important;
  position:relative !important;
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:min(780px, 92%);
  height:2px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    rgba(255,122,26,0) 0%,
    rgba(255,122,26,.75) 18%,
    rgba(255,177,95,.95) 50%,
    rgba(255,122,26,.75) 82%,
    rgba(255,122,26,0) 100%
  );
  box-shadow:0 0 14px rgba(255,122,26,.18);
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li{
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  flex:0 0 auto !important;
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li:not(:last-child)::before{
  content:"";
  position:absolute;
  right:-12px;
  top:50%;
  transform:translateY(-50%);
  width:1px;
  height:18px;
  background:linear-gradient(
    180deg,
    rgba(255,122,26,0) 0%,
    rgba(255,122,26,.26) 50%,
    rgba(255,122,26,0) 100%
  );
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 8px !important;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  color:#ff8c27 !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  font-weight:800 !important;
  font-size:clamp(18px, 1.25vw, 22px) !important;
  line-height:1 !important;
  letter-spacing:.03em !important;
  transition:all .22s ease !important;
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li a:hover{
  color:#ffb15f !important;
  text-shadow:0 0 10px rgba(255,140,39,.20);
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.active a,
body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.current a,
body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.ui-tabs-active a{
  color:#ffffff !important;
}

body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.active::after,
body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.current::after,
body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.ui-tabs-active::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-14px;
  transform:translateX(-50%) rotate(45deg);
  width:14px;
  height:14px;
  background:#ffffff;
  border-radius:2px;
  box-shadow:0 0 0 4px rgba(0,0,0,.82);
}

/* ---------------------------------------------------------
   CARD BASE
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-menu-item.wpc-row{
  position:relative !important;
  margin:0 !important;
  padding:24px !important;
  border-radius:24px !important;
  border:1px solid rgba(255,122,26,.14) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.01) 100%),
    linear-gradient(180deg, rgba(15,15,15,.98) 0%, rgba(8,8,8,.98) 100%) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.03),
    inset 0 0 0 1px rgba(255,140,39,.02) !important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease !important;
}

body.page-id-4979 .wpc-food-menu-item.wpc-row:hover{
  transform:translateY(-3px);
  border-color:rgba(255,140,39,.26) !important;
  box-shadow:
    0 24px 48px rgba(0,0,0,.42),
    0 0 22px rgba(255,122,26,.08),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

body.page-id-4979 .wpc-food-menu-item.wpc-row::before{
  content:"";
  position:absolute;
  left:0;
  top:18px;
  bottom:18px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,122,26,0) 0%,
    rgba(255,122,26,.70) 50%,
    rgba(255,122,26,0) 100%
  );
  opacity:.68;
}

body.page-id-4979 .wpc-food-menu-item .wpc-col-md-4,
body.page-id-4979 .wpc-food-menu-item .wpc-col-md-8,
body.page-id-4979 .wpc-food-menu-item .wpc-col-sm-12,
body.page-id-4979 .wpc-food-menu-item .wpc-col-12{
  padding:0 !important;
}

/* ---------------------------------------------------------
   IMAGES
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-menu-thumb{
  border-radius:18px !important;
  overflow:hidden !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.page-id-4979 .wpc-food-menu-thumb img{
  display:block !important;
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:contain !important;
  border-radius:18px !important;
  background:#0b0b0b !important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,140,39,.08) inset !important;
}

/* ---------------------------------------------------------
   CONTENT
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-inner-content{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:12px !important;
  height:100% !important;
}

body.page-id-4979 .wpc-food-inner-content h3,
body.page-id-4979 .wpc-food-inner-content .wpc-post-title,
body.page-id-4979 .wpc-food-inner-content .wpc-food-title{
  color:#f7f0e8 !important;
  margin:0 !important;
  line-height:1.05 !important;
}

body.page-id-4979 .wpc-food-inner-content p{
  color:rgba(255,248,242,.84) !important;
  margin:0 !important;
  line-height:1.45 !important;
}

body.page-id-4979 .wpc-price,
body.page-id-4979 .wpc-food-price,
body.page-id-4979 .price{
  color:#ff962f !important;
  font-weight:800 !important;
  text-shadow:0 0 12px rgba(255,122,26,.10);
}

body.page-id-4979 .wpc-food-inner-content .wpc-dots,
body.page-id-4979 .wpc-food-inner-content .wpc-dot,
body.page-id-4979 .wpc-food-inner-content .dots{
  opacity:.26 !important;
}

/* ---------------------------------------------------------
   TAGS
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-inner-content .wpc-tag-wrap,
body.page-id-4979 .wpc-food-inner-content .wpc-tags,
body.page-id-4979 .wpc-food-inner-content .wpc-menu-tag-wrap,
body.page-id-4979 .wpc-food-inner-content .wpc-food-tags,
body.page-id-4979 .wpc-food-inner-content [class*="tag-wrap"],
body.page-id-4979 .wpc-food-inner-content [class*="food-tags"],
body.page-id-4979 .wpc-food-menu-item [class*="tag-wrap"],
body.page-id-4979 .wpc-food-menu-item [class*="food-tags"]{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  padding:0 !important;
  margin:0 0 8px !important;
  background:transparent !important;
  background-image:none !important;
  background-color:transparent !important;
  border:none !important;
  outline:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  width:auto !important;
  max-width:100% !important;
  min-height:0 !important;
}

body.page-id-4979 .wpc-food-inner-content .wpc-tag-wrap::before,
body.page-id-4979 .wpc-food-inner-content .wpc-tag-wrap::after,
body.page-id-4979 .wpc-food-inner-content .wpc-tags::before,
body.page-id-4979 .wpc-food-inner-content .wpc-tags::after,
body.page-id-4979 .wpc-food-inner-content .wpc-menu-tag-wrap::before,
body.page-id-4979 .wpc-food-inner-content .wpc-menu-tag-wrap::after,
body.page-id-4979 .wpc-food-inner-content .wpc-food-tags::before,
body.page-id-4979 .wpc-food-inner-content .wpc-food-tags::after{
  display:none !important;
  content:none !important;
}

body.page-id-4979 .wpc-menu-tag,
body.page-id-4979 .wpc-food-inner-content .wpc-tag,
body.page-id-4979 .wpc-food-inner-content .tag{
  padding:4px 9px !important;
  border-radius:999px !important;
  background:rgba(255,140,34,.06) !important;
  color:#ffb869 !important;
  border:1px solid rgba(255,140,34,.16) !important;
  box-shadow:none !important;
  font-weight:700 !important;
  font-size:10px !important;
  letter-spacing:.03em !important;
  width:auto !important;
  max-width:none !important;
}

/* ---------------------------------------------------------
   HIDE EXTRA VIEW CART LINK
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-menu-item .added_to_cart,
body.page-id-4979 .wpc-food-menu-item a.added_to_cart,
body.page-id-4979 .wpc-food-menu-item .wc-forward,
body.page-id-4979 .wpc-food-menu-item a.wc-forward{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* ---------------------------------------------------------
   CART BUTTON ON MENU CARD
   --------------------------------------------------------- */
body.page-id-4979 .wpc-food-menu-item .add_to_cart_button,
body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart,
body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart,
body.page-id-4979 .wpc-food-menu-item a[class*="cart"],
body.page-id-4979 .wpc-food-menu-item button[class*="cart"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  border:none !important;
  border-radius:50% !important;
  background:linear-gradient(180deg, #ff942d 0%, #ff7a1a 100%) !important;
  color:#17110c !important;
  box-shadow:
    0 10px 20px rgba(255,122,26,.24),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    filter .22s ease !important;
}

body.page-id-4979 .wpc-food-menu-item .add_to_cart_button:hover,
body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart:hover,
body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart:hover,
body.page-id-4979 .wpc-food-menu-item a[class*="cart"]:hover,
body.page-id-4979 .wpc-food-menu-item button[class*="cart"]:hover{
  transform:translateY(-2px) scale(1.03) !important;
  box-shadow:
    0 14px 28px rgba(255,122,26,.34),
    0 0 18px rgba(255,140,39,.16),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
  filter:brightness(1.03) !important;
}

body.page-id-4979 .wpc-food-menu-item .add_to_cart_button i,
body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart i,
body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart i,
body.page-id-4979 .wpc-food-menu-item a[class*="cart"] i,
body.page-id-4979 .wpc-food-menu-item button[class*="cart"] i{
  font-size:17px !important;
  line-height:1 !important;
}

/* =========================================================
   YARD MENU FIX — EQUAL CARDS WITHOUT CUTTING PRICE/TEXT
   Replace previous equal-title/price fix with this
   ========================================================= */

/* Equal desktop card size, but allow internal content to show */
@media (min-width:768px){
  body.page-id-4979 .wpc-food-menu-item.wpc-row{
    min-height:260px !important;
    height:260px !important;
    display:flex !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
}

/* Make inner content a proper vertical layout */
body.page-id-4979 .wpc-food-inner-content{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  min-height:100% !important;
  padding-right:72px !important;
  overflow:visible !important;
}

/* Keep title consistent without clipping */
body.page-id-4979 .wpc-food-inner-content h3,
body.page-id-4979 .wpc-food-inner-content .wpc-post-title,
body.page-id-4979 .wpc-food-inner-content .wpc-food-title{
  font-size:28px !important;
  line-height:1.05 !important;
  min-height:60px !important;
  margin:0 0 4px !important;
  overflow:visible !important;
}

/* Force price visible */
body.page-id-4979 .wpc-food-menu-item .wpc-price,
body.page-id-4979 .wpc-food-menu-item .wpc-food-price,
body.page-id-4979 .wpc-food-menu-item .price{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:4 !important;
  margin:0 0 8px !important;
  padding:0 !important;
  color:#ff7a1a !important;
  font-size:26px !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  overflow:visible !important;
}

/* Description visible, but tidy */
body.page-id-4979 .wpc-food-inner-content p{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  max-height:none !important;
  overflow:visible !important;
  margin:0 !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

/* Pin basket/tick button without affecting text */
body.page-id-4979 .wpc-food-menu-item .add_to_cart_button,
body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart,
body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart,
body.page-id-4979 .wpc-food-menu-item a[class*="cart"],
body.page-id-4979 .wpc-food-menu-item button[class*="cart"]{
  position:absolute !important;
  right:20px !important;
  bottom:20px !important;
  z-index:9 !important;
  margin:0 !important;
  transform:none !important;
}

/* Stop tick/cart hover moving */
body.page-id-4979 .wpc-food-menu-item .add_to_cart_button:hover,
body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart:hover,
body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart:hover,
body.page-id-4979 .wpc-food-menu-item a[class*="cart"]:hover,
body.page-id-4979 .wpc-food-menu-item button[class*="cart"]:hover{
  transform:none !important;
}

/* Mobile: natural height, no clipping */
@media (max-width:767px){
  body.page-id-4979 .wpc-food-menu-item.wpc-row{
    height:auto !important;
    min-height:auto !important;
    overflow:visible !important;
  }

  body.page-id-4979 .wpc-food-inner-content{
    padding-right:62px !important;
    min-height:auto !important;
  }

  body.page-id-4979 .wpc-food-inner-content h3,
  body.page-id-4979 .wpc-food-inner-content .wpc-post-title,
  body.page-id-4979 .wpc-food-inner-content .wpc-food-title{
    font-size:25px !important;
    min-height:auto !important;
  }

  body.page-id-4979 .wpc-food-menu-item .wpc-price,
  body.page-id-4979 .wpc-food-menu-item .wpc-food-price,
  body.page-id-4979 .wpc-food-menu-item .price{
    font-size:24px !important;
  }

  body.page-id-4979 .wpc-food-menu-item .add_to_cart_button,
  body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart,
  body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart,
  body.page-id-4979 .wpc-food-menu-item a[class*="cart"],
  body.page-id-4979 .wpc-food-menu-item button[class*="cart"]{
    right:16px !important;
    bottom:16px !important;
  }
}

/* ---------------------------------------------------------
   DESKTOP LAYOUT
   real structure:
   .wpc-food-block-tab-item > .wpc-row > .wpc-col-lg-6
   --------------------------------------------------------- */
@media (min-width:992px){

  body.page-id-4979 .main-container > .container{
    max-width:1360px !important;
    width:100% !important;
  }

  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:30px !important;
    margin:0 !important;
  }

  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-lg-6,
  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-md-6,
  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-sm-12{
    width:100% !important;
    max-width:100% !important;
    flex:none !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-lg-6 > .wpc-food-menu-item,
  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-md-6 > .wpc-food-menu-item,
  body.page-id-4979 .wpc-food-block-tab-item > .wpc-row > .wpc-col-sm-12 > .wpc-food-menu-item{
    width:100% !important;
    min-height:340px !important;
    margin:0 !important;
  }

  body.page-id-4979 .wpc-food-menu-item.wpc-row{
    display:grid !important;
    grid-template-columns:240px minmax(0, 1fr) !important;
    column-gap:30px !important;
    align-items:start !important;
    min-height:340px !important;
    padding:24px !important;
  }

  body.page-id-4979 .wpc-food-menu-item .wpc-col-md-4{
    width:auto !important;
    max-width:none !important;
    flex:none !important;
    min-width:0 !important;
  }

  body.page-id-4979 .wpc-food-menu-item .wpc-col-md-8{
    width:auto !important;
    max-width:none !important;
    flex:none !important;
    min-width:0 !important;
  }

  body.page-id-4979 .wpc-food-menu-thumb{
    width:240px !important;
    min-width:240px !important;
    max-width:240px !important;
    margin:0 !important;
  }

  body.page-id-4979 .wpc-food-menu-thumb img{
    width:240px !important;
    height:240px !important;
    min-height:240px !important;
    max-width:240px !important;
  }

  body.page-id-4979 .wpc-food-inner-content{
    min-height:240px !important;
    height:100% !important;
    justify-content:flex-start !important;
    align-self:stretch !important;
    gap:12px !important;
    padding-top:2px !important;
  }

  body.page-id-4979 .wpc-food-inner-content p{
    display:-webkit-box !important;
    -webkit-line-clamp:4 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    max-width:100% !important;
  }

  body.page-id-4979 .wpc-food-menu-item .add_to_cart_button,
  body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart,
  body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart,
  body.page-id-4979 .wpc-food-menu-item a[class*="cart"],
  body.page-id-4979 .wpc-food-menu-item button[class*="cart"]{
    margin-top:auto !important;
    align-self:flex-end !important;
  }
}

/* ---------------------------------------------------------
   MOBILE / TABLET CATEGORY NAV
   --------------------------------------------------------- */
@media (max-width:991.98px){

  body.page-id-4979,
  body.page-id-4979 #page,
  body.page-id-4979 #content,
  body.page-id-4979 .main-container,
  body.page-id-4979 .container,
  body.page-id-4979 .row,
  body.page-id-4979 .single-content,
  body.page-id-4979 .entry-content,
  body.page-id-4979 .post-body,
  body.page-id-4979 .elementor,
  body.page-id-4979 .elementor-section,
  body.page-id-4979 .elementor-container,
  body.page-id-4979 .elementor-column,
  body.page-id-4979 .elementor-widget-wrap,
  body.page-id-4979 .elementor-widget-container,
  body.page-id-4979 .wpc-food-tab-wrapper,
  body.page-id-4979 .wpc-tab-content{
    overflow:visible !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    position:sticky !important;
    top:88px !important;
    z-index:990 !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
    padding:12px !important;
    margin:0 0 18px !important;
    background:linear-gradient(180deg, rgba(10,10,10,.96) 0%, rgba(7,7,7,.96) 100%) !important;
    border-top:1px solid rgba(255,140,34,.10) !important;
    border-bottom:1px solid rgba(255,140,34,.14) !important;
    box-shadow:
      0 10px 24px rgba(0,0,0,.42),
      inset 0 1px 0 rgba(255,255,255,.02) !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav::after{
    display:none !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li{
    width:100% !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li::before{
    display:none !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li a{
    width:100% !important;
    min-height:44px !important;
    justify-content:center !important;
    padding:10px 12px !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.02) !important;
    border:1px solid rgba(255,140,34,.14) !important;
    color:#ff9a39 !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:.01em !important;
    font-weight:800 !important;
    text-align:center !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.active a,
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.current a,
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.ui-tabs-active a{
    background:linear-gradient(180deg, rgba(255,140,34,.16) 0%, rgba(255,122,26,.10) 100%) !important;
    border-color:rgba(255,140,34,.34) !important;
    color:#fff4e8 !important;
    box-shadow:
      0 6px 18px rgba(255,122,26,.10),
      inset 0 1px 0 rgba(255,255,255,.04) !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.active::after,
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.current::after,
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li.ui-tabs-active::after{
    display:none !important;
  }

  body.page-id-4979 .wpc-tab-content{
    padding-top:10px !important;
  }

  body.page-id-4979 .wpc-food-menu-item.wpc-row{
    display:block !important;
    padding:14px !important;
    margin:0 0 18px !important;
    border-radius:20px !important;
    height:auto !important;
    min-height:unset !important;
  }

  body.page-id-4979 .wpc-food-menu-item .wpc-col-md-4,
  body.page-id-4979 .wpc-food-menu-item .wpc-col-md-8,
  body.page-id-4979 .wpc-food-menu-item .wpc-col-sm-12,
  body.page-id-4979 .wpc-food-menu-item .wpc-col-12{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    margin-right:0 !important;
  }

  body.page-id-4979 .wpc-food-menu-thumb{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 14px !important;
  }

  body.page-id-4979 .wpc-food-menu-thumb img{
    width:100% !important;
    height:auto !important;
    min-height:unset !important;
    max-width:100% !important;
    aspect-ratio:1 / 1 !important;
  }

  body.page-id-4979 .wpc-food-inner-content{
    gap:12px !important;
  }

  body.page-id-4979 .wpc-food-inner-content p{
    font-size:17px !important;
    line-height:1.45 !important;
  }

  body.page-id-4979 .wpc-price,
  body.page-id-4979 .wpc-food-price,
  body.page-id-4979 .price{
    font-size:clamp(22px, 4vw, 28px) !important;
  }

  body.page-id-4979 .wpc-food-menu-item .add_to_cart_button,
  body.page-id-4979 .wpc-food-menu-item .ajax_add_to_cart,
  body.page-id-4979 .wpc-food-menu-item .wpc-menu-cart,
  body.page-id-4979 .wpc-food-menu-item a[class*="cart"],
  body.page-id-4979 .wpc-food-menu-item button[class*="cart"]{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
  }
}

@media (max-width:575.98px){
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:92px !important;
    padding:10px !important;
    gap:9px !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav li a{
    min-height:42px !important;
    font-size:17px !important;
    padding:9px 10px !important;
  }

  body.page-id-4979 .wpc-food-menu-item.wpc-row{
    padding:12px !important;
  }
}


-
/* =========================================================
   FOOTER
   ========================================================= */
html body #moderncart-slide-out-modal .moderncart-slide-out-footer{
  flex:0 0 auto !important;
  position:relative !important;
  padding:14px 14px calc(14px + env(safe-area-inset-bottom)) !important;
  background:linear-gradient(180deg,#f7f1e8 0%, #eee4d7 100%) !important;
  border-top:1px solid rgba(255,122,26,.16) !important;
  box-shadow:0 -10px 22px rgba(0,0,0,.06) !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-totals,
html body #moderncart-slide-out-modal .moderncart-totals{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  margin:0 0 14px !important;
  padding:0 !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-total-row,
html body #moderncart-slide-out-modal .moderncart-totals-row,
html body #moderncart-slide-out-modal .cart-subtotal,
html body #moderncart-slide-out-modal .shipping,
html body #moderncart-slide-out-modal .order-total{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:12px 2px !important;
  margin:0 !important;
  color:#171717 !important;
  font-size:15px !important;
  font-weight:800 !important;
  border-bottom:1px solid rgba(0,0,0,.07) !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-total-row:last-child,
html body #moderncart-slide-out-modal .moderncart-totals-row:last-child,
html body #moderncart-slide-out-modal .order-total{
  border-bottom:none !important;
  font-size:17px !important;
  font-weight:900 !important;
}

html body #moderncart-slide-out-modal .moderncart-checkout-button,
html body #moderncart-slide-out-modal .moderncart-proceed-to-checkout,
html body #moderncart-slide-out-modal a.checkout-button,
html body #moderncart-slide-out-modal .button.checkout{
  width:100% !important;
  min-height:56px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:none !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,var(--fy-orange-2) 0%, var(--fy-orange) 100%) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:18px !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  box-shadow:
    0 14px 24px rgba(255,122,26,.24),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px){
  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
  html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
  html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
  html body #moderncart-slide-out-modal.moderncart-slide-right{
    width:100vw !important;
    min-width:100vw !important;
    max-width:100vw !important;
    height:100dvh !important;
  }

  html body #moderncart-slide-out-modal .moderncart-default-slide-out,
  html body #moderncart-slide-out-modal .moderncart-panel{
    height:100dvh !important;
    min-height:100dvh !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-header{
    padding:12px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-header-close{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-header-title span{
    font-size:15px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-cart-inner,
  html body #moderncart-slide-out-modal .moderncart-slide-out-cart-data{
    padding:10px 10px 14px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item{
    padding:14px !important;
    border-radius:21px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-container{
    grid-template-columns:78px minmax(0,1fr) 46px !important;
    gap:12px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-image img{
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    border-radius:16px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item__details{
    margin:0 0 6px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-product-name a,
  html body #moderncart-slide-out-modal .moderncart-cart-item-product-link a{
    font-size:17px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-actions--pricing{
    margin:0 0 8px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-price,
  html body #moderncart-slide-out-modal .moderncart-price .amount,
  html body #moderncart-slide-out-modal .moderncart-price .woocommerce-Price-amount{
    font-size:15px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-actions-remove{
    min-height:30px !important;
    padding:0 12px !important;
    margin-top:3px !important;
    font-size:10px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-quantity-selector{
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    margin-right:-2px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-quantity{
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    border-radius:18px 16px 16px 18px !important;
    gap:7px !important;
    padding:7px 0 !important;
  }

  html body #moderncart-slide-out-modal .quantity__button--up,
  html body #moderncart-slide-out-modal .quantity__button--down{
    width:31px !important;
    height:31px !important;
    min-width:31px !important;
    min-height:31px !important;
    max-width:31px !important;
    max-height:31px !important;
    border-radius:12px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-quantity__input{
    width:31px !important;
    min-width:31px !important;
    max-width:31px !important;
    height:18px !important;
    min-height:18px !important;
    max-height:18px !important;
    font-size:13px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-footer{
    padding:12px 12px calc(12px + env(safe-area-inset-bottom)) !important;
  }

  html body #moderncart-slide-out-modal .moderncart-checkout-button,
  html body #moderncart-slide-out-modal .moderncart-proceed-to-checkout,
  html body #moderncart-slide-out-modal a.checkout-button,
  html body #moderncart-slide-out-modal .button.checkout{
    min-height:54px !important;
    font-size:17px !important;
    border-radius:17px !important;
  }
}


/* ====================================================
   YARD THEME – WOOCOMMERCE CHECKOUT
   FINAL VERSION
   Desktop Readable · Mobile Full Width · High Contrast
   ==================================================== */


/* ====================================================
   1. PAGE BACKGROUND
   ==================================================== */

.woocommerce-checkout {
    background: radial-gradient(circle at top, #0f0f0f 0%, #000 70%);
    padding: 80px 20px;
    color: #f5f5f5;
}


/* ====================================================
   2. MAIN CHECKOUT CARD (DESKTOP)
   ==================================================== */

.woocommerce-checkout form.checkout {
    background: #0b0b0b;
    border-radius: 26px;
    padding: 40px;
    border: 1px solid rgba(255,153,51,.45);
    max-width: 1100px;
    margin: 0 auto;
    box-shadow:
        0 0 0 1px rgba(255,153,51,.35),
        0 20px 60px rgba(0,0,0,.85),
        0 0 45px rgba(255,153,51,.18);
}


/* ====================================================
   3. HEADINGS & LABELS (DESKTOP LARGER)
   ==================================================== */

.woocommerce-checkout h3 {
    color: #ffb366;
    text-transform: uppercase;
    letter-spacing: 1.4px;
    margin-bottom: 22px;
    font-size: 22px;
}

.woocommerce-checkout label {
    color: #ffb366;
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 8px;
}


/* ====================================================
   4. FORM INPUTS (BIGGER DESKTOP TEXT)
   ==================================================== */

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout textarea,
.woocommerce-checkout select {
    background: #121212;
    border: 1px solid rgba(255,153,51,.35);
    border-radius: 10px;
    color: #ffffff;
    padding: 16px 18px;
    font-size: 16px;
}

.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: #a9a9a9;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
    border-color: #ff9933;
    box-shadow: 0 0 0 2px rgba(255,153,51,.35);
    outline: none;
}


/* ====================================================
   5. ORDER REVIEW TABLE (READABLE DESKTOP)
   ==================================================== */

.woocommerce-checkout-review-order table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 14px;
}

.woocommerce-checkout-review-order tr {
    background: #111;
    border-radius: 12px;
}

.woocommerce-checkout-review-order th,
.woocommerce-checkout-review-order td {
    padding: 16px 18px;
    border: none;
    color: #f2f2f2;
    font-size: 15px;
}

.woocommerce-checkout-review-order .order-total td {
    font-size: 19px;
    font-weight: 700;
    color: #ff9933;
}


/* ====================================================
   6. PAYMENT METHODS (CARDS)
   ==================================================== */

.wc_payment_methods {
    list-style: none;
    padding: 0;
    margin: 0;
}

.wc_payment_methods li {
    background: #0f0f0f;
    border: 1px solid rgba(255,153,51,.35);
    border-radius: 14px;
    padding: 18px;
    margin-bottom: 16px;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.wc_payment_methods li:hover {
    border-color: #ff9933;
    box-shadow: 0 0 0 1px rgba(255,153,51,.45);
}

.wc_payment_methods li label {
    color: #ffffff;
    font-weight: 600;
    font-size: 16px;
    cursor: pointer;
}

.wc_payment_methods input[type="radio"] {
    accent-color: #ff9933;
}


/* ====================================================
   7. ACTIVE PAYMENT METHOD
   ==================================================== */

.wc_payment_methods li:has(input:checked) {
    border-color: #ff9933;
    box-shadow:
        0 0 0 1px rgba(255,153,51,.6),
        0 0 28px rgba(255,153,51,.35);
}


/* ====================================================
   8. PAYMENT DESCRIPTION (LIGHT PANEL – BLACK TEXT)
   ==================================================== */

.payment_box {
    background: #ebe7e3;
    border: 1px solid rgba(255,153,51,.5);
    border-radius: 10px;
    margin-top: 14px;
    padding: 16px 18px;
}

.payment_box p {
    color: #000000 !important;
    font-size: 15px;
    line-height: 1.7;
}


/* ====================================================
   9. PRIVACY / PERSONAL DATA TEXT (FORCED BLACK)
   ==================================================== */

.woocommerce-privacy-policy-text,
.woocommerce-privacy-policy-text p {
    color: #000000 !important;
    font-size: 15px;
    line-height: 1.7;
    opacity: 1 !important;
}

.woocommerce-privacy-policy-text a {
    color: #ff7a18;
    font-weight: 600;
}


/* ====================================================
   10. TERMS & CONDITIONS LINE
   ==================================================== */

.woocommerce-terms-and-conditions-wrapper label {
    color: #ff7a18;
    font-weight: 600;
    font-size: 15px;
}


/* ====================================================
   11. PRIMARY CTA – PLACE ORDER BUTTON
   ==================================================== */

#place_order,
.woocommerce-checkout button.button {
    background: linear-gradient(90deg, #ff7a18, #ff9933);
    color: #000000;
    border-radius: 999px;
    padding: 20px 36px;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: .4px;
    border: none;
    box-shadow: 0 10px 28px rgba(255,140,0,.45);
    transition: transform .2s ease, box-shadow .2s ease;
}

#place_order:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 40px rgba(255,140,0,.65);
}


/* ====================================================
   12. MOBILE – FULL WIDTH (NO THIN STRIP)
   ==================================================== */


@media (max-width: 768px) {

    .woocommerce-checkout {
        padding: 30px 10px;
    }

    .woocommerce-checkout form.checkout {
        max-width: 100%;
        width: 100%;
        padding: 22px;
        border-radius: 18px;
    }

    .woocommerce-checkout h3 {
        font-size: 18px;
    }

    .woocommerce-checkout input,
    .woocommerce-checkout textarea,
    .woocommerce-checkout select {
        font-size: 16px;
    }

    .wc_payment_methods li {
        padding: 16px;
    }

    #place_order {
        width: 100%;
        text-align: center;
    }
}

/* =========================================================
   FYG FINAL MASTER
   HEADER / NAV / YARD MENU STICKY / MODERNCART
   Single source of truth
   ========================================================= */

/* =========================================================
   1. HEADER / NAV
   ========================================================= */
.fy-site-header{
  position:-webkit-sticky !important;
  position:sticky !important;
  top:0 !important;
  z-index:99999 !important;
  width:100%;
  background:linear-gradient(180deg, rgba(8,8,8,.97) 0%, rgba(10,10,10,.95) 100%);
  border-bottom:1px solid rgba(255,255,255,.06);
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:
    background .24s ease,
    box-shadow .24s ease,
    border-color .24s ease;
}

.admin-bar .fy-site-header{
  top:32px !important;
}

.fy-site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:3px;
  background:linear-gradient(
    90deg,
    rgba(255,122,26,.03) 0%,
    rgba(255,122,26,.48) 18%,
    rgba(255,183,77,.92) 50%,
    rgba(255,122,26,.48) 82%,
    rgba(255,122,26,.03) 100%
  );
  box-shadow:
    0 0 18px rgba(255,122,26,.26),
    0 4px 18px rgba(255,122,26,.10);
  pointer-events:none;
}

.fy-site-header.is-scrolled{
  box-shadow:0 16px 38px rgba(0,0,0,.28);
}

.fy-header-inner{
  max-width:1400px;
  min-height:96px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  position:relative;
  transition:
    min-height .24s ease,
    padding .24s ease,
    gap .24s ease;
}

.fy-header-logo{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  min-width:0;
}

.fy-header-logo img{
  display:block;
  height:88px;
  width:auto;
  max-width:100%;
  object-fit:contain;
  transition:
    height .24s ease,
    transform .24s ease;
}

.fy-header-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:34px;
}

.fy-header-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  color:#fff;
  text-decoration:none;
  font-size:16px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  line-height:1;
  transition:
    color .22s ease,
    transform .22s ease,
    text-shadow .22s ease;
}

.fy-header-nav a:hover,
.fy-header-nav a:focus-visible{
  color:#ff9d2f;
  transform:translateY(-1px);
  text-shadow:0 0 12px rgba(255,122,26,.18);
  outline:none;
}

.fy-header-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-10px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, #ff7a1a, transparent);
  opacity:0;
  transform:scaleX(.4);
  transition:
    opacity .22s ease,
    transform .22s ease;
}

.fy-header-nav a:hover::after,
.fy-header-nav a:focus-visible::after,
.fy-header-nav a[aria-current="page"]::after,
.fy-header-nav .current-menu-item > a::after,
.fy-header-nav .current_page_item > a::after,
.fy-header-nav .current-menu-ancestor > a::after{
  opacity:1 !important;
  transform:scaleX(1) !important;
}

.fy-header-nav a[aria-current="page"],
.fy-header-nav .current-menu-item > a,
.fy-header-nav .current_page_item > a,
.fy-header-nav .current-menu-ancestor > a{
  color:#ffb15f !important;
  text-shadow:0 0 14px rgba(255,122,26,.22);
}

.fy-header-cta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.fy-header-order-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 28px;
  border-radius:999px;
  text-decoration:none !important;
  color:#111 !important;
  font-size:14px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:linear-gradient(90deg, #d86600 0%, #ff7a1a 55%, #ffcb5c 100%) !important;
  border:1px solid rgba(255,190,92,.32);
  box-shadow:
    0 10px 24px rgba(255,95,0,.24),
    inset 0 1px 0 rgba(255,255,255,.18);
  transition:
    min-height .24s ease,
    padding .24s ease,
    transform .22s ease,
    box-shadow .22s ease,
    filter .22s ease;
}

.fy-header-order-btn:hover,
.fy-header-order-btn:focus-visible{
  transform:translateY(-2px);
  box-shadow:
    0 14px 30px rgba(255,95,0,.30),
    inset 0 1px 0 rgba(255,255,255,.20);
  filter:brightness(1.04);
  outline:none;
}

/* mobile header controls */
.fy-header-mobile-actions{
  display:none;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
}

.fy-mh-order{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 16px;
  border-radius:999px;
  text-decoration:none !important;
  color:#111 !important;
  font-size:12px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
  background:linear-gradient(90deg, #d86600 0%, #ff7a1a 55%, #ffcb5c 100%) !important;
  border:1px solid rgba(255,190,92,.28);
  box-shadow:
    0 8px 20px rgba(255,95,0,.22),
    inset 0 1px 0 rgba(255,255,255,.18);
}

.fy-mh-toggle{
  appearance:none;
  -webkit-appearance:none;
  width:54px;
  height:54px;
  border:1px solid rgba(255,190,92,.24);
  border-radius:18px;
  background:linear-gradient(180deg, #ff7a1a 0%, #ffb74d 100%);
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0;
  cursor:pointer;
  box-shadow:
    0 10px 22px rgba(255,95,0,.22),
    inset 0 1px 0 rgba(255,255,255,.18);
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    filter .2s ease;
}

.fy-mh-toggle:hover,
.fy-mh-toggle:focus-visible{
  transform:translateY(-1px);
  box-shadow:
    0 12px 26px rgba(255,95,0,.28),
    inset 0 1px 0 rgba(255,255,255,.20);
  filter:brightness(1.03);
  outline:none;
}

.fy-mh-toggle span{
  display:block;
  width:22px;
  height:3px;
  border-radius:999px;
  background:#fff;
  transition:
    transform .22s ease,
    opacity .22s ease;
}

body.fy-menu-open .fy-mh-toggle span:nth-child(1){
  transform:translateY(9px) rotate(45deg);
}
body.fy-menu-open .fy-mh-toggle span:nth-child(2){
  opacity:0;
}
body.fy-menu-open .fy-mh-toggle span:nth-child(3){
  transform:translateY(-9px) rotate(-45deg);
}

/* mobile panel */
#fy-mobile-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.56);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:
    opacity .24s ease,
    visibility .24s ease;
  z-index:99998;
}

#fy-mobile-panel{
  position:fixed;
  top:0;
  right:0;
  width:min(88vw, 380px);
  max-width:380px;
  height:100dvh;
  background:linear-gradient(180deg, #111 0%, #090909 100%);
  border-left:1px solid rgba(255,255,255,.06);
  box-shadow:-24px 0 48px rgba(0,0,0,.36);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  z-index:99999;
  transform:translateX(100%);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:
    transform .30s ease,
    opacity .22s ease,
    visibility .22s ease;
}

body.fy-menu-open #fy-mobile-overlay{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

body.fy-menu-open #fy-mobile-panel{
  transform:translateX(0);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.fy-mobile-panel-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:calc(env(safe-area-inset-top, 0px) + 18px) 18px 16px;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}

.fy-mobile-panel-logo{
  display:inline-flex;
  align-items:center;
  max-width:calc(100% - 64px);
}

.fy-mobile-panel-logo img{
  display:block;
  height:66px;
  width:auto;
  max-width:100%;
}

#fy-mobile-close{
  appearance:none;
  -webkit-appearance:none;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.03);
  color:#fff;
  font-size:30px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

.fy-mobile-nav{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:18px;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}

.fy-mobile-nav a{
  display:flex;
  align-items:center;
  min-height:56px;
  padding:0 18px;
  border-radius:18px;
  color:#fff;
  text-decoration:none;
  font-size:15px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.05);
  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease;
}

.fy-mobile-nav a:hover,
.fy-mobile-nav a:focus-visible{
  transform:translateX(3px);
  background:rgba(255,122,26,.08);
  border-color:rgba(255,122,26,.24);
  outline:none;
}

.fy-mobile-order-btn{
  justify-content:center;
  margin-top:10px;
  min-height:58px !important;
  color:#111 !important;
  background:linear-gradient(90deg, #d86600 0%, #ff7a1a 55%, #ffcb5c 100%) !important;
  border:1px solid rgba(255,190,92,.28) !important;
}

/* desktop shrink */
@media (min-width:1101px){
  .fy-site-header.is-scrolled{
    background:linear-gradient(180deg, rgba(8,8,8,.985) 0%, rgba(10,10,10,.97) 100%);
    box-shadow:0 18px 42px rgba(0,0,0,.30);
  }

  .fy-site-header.is-scrolled .fy-header-inner{
    min-height:78px;
    padding:0 24px;
    gap:20px;
  }

  .fy-site-header.is-scrolled .fy-header-logo img{
    height:72px;
  }

  .fy-site-header.is-scrolled .fy-header-order-btn{
    min-height:50px;
    padding:0 24px;
  }

  .fy-site-header.is-scrolled .fy-header-nav a{
    font-size:15px;
  }
}

/* responsive */
@media (max-width:1100px){
  .fy-site-header.is-scrolled{
    box-shadow:0 12px 28px rgba(0,0,0,.24);
  }

  .fy-header-inner{
    min-height:84px;
    padding:0 14px;
    gap:14px;
  }

  .fy-header-logo img{
    height:70px;
  }

  .fy-header-nav,
  .fy-header-cta{
    display:none;
  }

  .fy-header-mobile-actions{
    display:flex;
  }
}

@media (max-width:782px){
  .admin-bar .fy-site-header{
    top:46px !important;
  }

  .fy-header-inner{
    min-height:82px;
    padding:0 14px;
  }

  .fy-header-logo img{
    height:66px;
  }

  .fy-mh-order{
    min-height:48px;
    padding:0 14px;
    font-size:11px;
  }

  .fy-mh-toggle{
    width:52px;
    height:52px;
  }
}

@media (max-width:560px){
  .fy-header-inner{
    padding:0 12px;
    gap:10px;
  }

  .fy-header-logo img{
    height:60px;
  }

  .fy-mh-order{
    min-height:46px;
    padding:0 12px;
    font-size:10px;
    letter-spacing:.08em;
  }

  .fy-mh-toggle{
    width:50px;
    height:50px;
  }

  #fy-mobile-panel{
    width:min(92vw, 360px);
  }

  .fy-mobile-panel-logo img{
    height:60px;
  }
}

@media (max-width:390px){
  .fy-header-logo img{
    height:56px;
  }

  .fy-mh-order{
    font-size:10px;
    min-height:44px;
    padding:0 10px;
  }
}

/* =========================================================
   2. YARD MENU STICKY CATEGORY BAR
   ========================================================= */

/* desktop */
@media (min-width:992px){
  body.page-id-4979 .site-content,
  body.page-id-4979 #content,
  body.page-id-4979 .main-container,
  body.page-id-4979 #main-content,
  body.page-id-4979 .entry-content,
  body.page-id-4979 .wpc-food-tab-wrapper,
  body.page-id-4979 .wpc-tab-content,
  body.page-id-4979 .wpc-food-menu-main-wrapper,
  body.page-id-4979 .wpc-menu-page{
    overflow:visible !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper{
    position:relative !important;
    z-index:40 !important;
    padding-top:0 !important;
    margin-top:0 !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    position:-webkit-sticky !important;
    position:sticky !important;
    top:96px !important;
    z-index:9990 !important;
    margin:0 0 28px !important;
    padding:14px 0 18px !important;
    background:linear-gradient(180deg, rgba(8,8,8,.96) 0%, rgba(8,8,8,.92) 100%) !important;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:128px !important;
  }

  body.page-id-4979 .wpc-tab-content{
    padding-top:10px !important;
  }
}

/* mobile */
@media (max-width:991.98px){
  body.page-id-4979 .wpc-food-tab-wrapper,
  body.page-id-4979 .wpc-tab-content,
  body.page-id-4979 .wpc-food-menu-main-wrapper,
  body.page-id-4979 .wpc-menu-page,
  body.page-id-4979 .main-container,
  body.page-id-4979 #main-content,
  body.page-id-4979 .entry-content{
    overflow:visible !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper{
    position:relative !important;
    z-index:50 !important;
    margin-top:0 !important;
    padding-top:0 !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    position:-webkit-sticky !important;
    position:sticky !important;
    top:82px !important;
    z-index:9990 !important;
    margin:0 0 16px !important;
    padding:10px !important;
    background:linear-gradient(180deg, rgba(10,10,10,.96) 0%, rgba(7,7,7,.96) 100%) !important;
    border-top:1px solid rgba(255,140,34,.10) !important;
    border-bottom:1px solid rgba(255,140,34,.16) !important;
    box-shadow:
      0 10px 24px rgba(0,0,0,.38),
      inset 0 1px 0 rgba(255,255,255,.02) !important;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:128px !important;
  }

  body.page-id-4979 .wpc-tab-content{
    padding-top:12px !important;
  }
}

@media (max-width:782px){
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:92px !important;
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:138px !important;
  }
}

@media (max-width:575.98px){
  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:84px !important;
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top:130px !important;
  }
}

/* =========================================================
   3. MODERNCART
   ========================================================= */
html body #moderncart-slide-out-modal,
html body #moderncart-slide-out-modal.moderncart-modal,
html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
html body #moderncart-slide-out-modal.moderncart-slide-right{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  left:auto !important;
  bottom:0 !important;
  height:100dvh !important;
  margin:0 !important;
  padding:0 !important;
  border:none !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden !important;
  z-index:999999 !important;
}

@media (min-width:768px){
  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
  html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
  html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
  html body #moderncart-slide-out-modal.moderncart-slide-right{
    width:470px !important;
    min-width:470px !important;
    max-width:470px !important;
  }
}

@media (max-width:767px){
  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
  html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
  html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
  html body #moderncart-slide-out-modal.moderncart-slide-right{
    width:100vw !important;
    min-width:100vw !important;
    max-width:100vw !important;
  }
}

html body #moderncart-slide-out-modal .moderncart-default-slide-out,
html body #moderncart-slide-out-modal .moderncart-panel{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  height:100dvh !important;
  min-height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,122,26,.08) 0%, transparent 30%),
    linear-gradient(180deg,#f2ece3 0%, #e8dfd2 100%) !important;
  box-shadow:-18px 0 40px rgba(0,0,0,.22) !important;
}

html body .moderncart-overlay,
html body .moderncart-modal-overlay{
  background:rgba(0,0,0,.46) !important;
  backdrop-filter:blur(3px) !important;
}

/* cart header */
html body #moderncart-slide-out-modal .moderncart-slide-out-header{
  flex:0 0 auto !important;
  display:block !important;
  padding:12px 16px !important;
  background:linear-gradient(180deg,#fffdfa 0%, #f5ede2 100%) !important;
  border-bottom:1px solid rgba(255,122,26,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 8px 20px rgba(0,0,0,.04) !important;
  opacity:1 !important;
  visibility:visible !important;
  position:relative !important;
  z-index:3 !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-heading{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-title,
html body #moderncart-slide-out-modal .moderncart-slide-out-header-title *{
  opacity:1 !important;
  visibility:visible !important;
  color:#1a2236 !important;
  -webkit-text-fill-color:#1a2236 !important;
  background:none !important;
  text-shadow:none !important;
  filter:none !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-title span{
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-close{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  border:none !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#1a0f08,#2a160a) !important;
  color:#ffb96b !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-quantity{
  margin-left:auto !important;
  min-width:30px !important;
  height:30px !important;
  padding:0 8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:10px !important;
  color:#d85b00 !important;
  background:rgba(255,122,26,.08) !important;
  border:1px solid rgba(255,122,26,.24) !important;
  font-size:12px !important;
  font-weight:900 !important;
}

/* cart scroll area */
html body #moderncart-slide-out-modal .moderncart-slide-out-cart{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-cart-inner,
html body #moderncart-slide-out-modal .moderncart-slide-out-cart-data{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  padding:14px !important;
  margin:0 !important;
  background:linear-gradient(180deg,#f1ede7 0%, #ebe6de 100%) !important;
}

/* cart item */
html body #moderncart-slide-out-modal .moderncart-cart-item{
  margin:0 0 14px !important;
  padding:16px !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,122,26,.07) 0%, transparent 38%),
    linear-gradient(180deg,#fffdf9 0%, #f4eadf 100%) !important;
  border:1px solid rgba(255,122,26,.20) !important;
  box-shadow:
    0 16px 28px rgba(0,0,0,.08),
    0 0 0 1px rgba(255,255,255,.55) inset !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-container{
  display:grid !important;
  grid-template-columns:90px minmax(0,1fr) 54px !important;
  gap:14px !important;
  align-items:center !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-image,
html body #moderncart-slide-out-modal .moderncart-cart-item-image a,
html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail,
html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail a{
  display:block !important;
  width:90px !important;
  min-width:90px !important;
  max-width:90px !important;
  height:90px !important;
  min-height:90px !important;
  max-height:90px !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-image img,
html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail img{
  display:block !important;
  width:90px !important;
  height:90px !important;
  min-width:90px !important;
  min-height:90px !important;
  max-width:90px !important;
  max-height:90px !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:18px !important;
  border:1px solid rgba(255,122,26,.13) !important;
  background:#f2f2f2 !important;
  box-shadow:0 12px 20px rgba(0,0,0,.16) !important;
  opacity:1 !important;
  visibility:visible !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-product,
html body #moderncart-slide-out-modal .moderncart-cart-item__details{
  min-width:0 !important;
  overflow:hidden !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-product-name a,
html body #moderncart-slide-out-modal .moderncart-cart-item-product-link a{
  color:#171717 !important;
  text-decoration:none !important;
  font-size:18px !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  display:block !important;
}

html body #moderncart-slide-out-modal .moderncart-price,
html body #moderncart-slide-out-modal .moderncart-price .amount,
html body #moderncart-slide-out-modal .moderncart-price .woocommerce-Price-amount{
  color:#181818 !important;
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-actions-remove{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:34px !important;
  padding:0 14px !important;
  margin:2px 0 0 !important;
  border:none !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#2a1707 0%, #1a0f06 100%) !important;
  color:#ffb96b !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

/* quantity rail */
html body #moderncart-slide-out-modal .moderncart-cart-item-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  align-self:stretch !important;
  height:100% !important;
  min-height:0 !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-quantity-selector{
  width:54px !important;
  min-width:54px !important;
  max-width:54px !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-item-quantity{
  width:54px !important;
  min-width:54px !important;
  max-width:54px !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding:10px 0 !important;
  border-radius:20px 18px 18px 20px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.86) 0%, rgba(247,237,224,.96) 100%) !important;
}

html body #moderncart-slide-out-modal .quantity__button--up,
html body #moderncart-slide-out-modal .quantity__button--down{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:none !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#ffab50 0%, #ff8422 100%) !important;
}

html body #moderncart-slide-out-modal .moderncart-quantity__input{
  width:38px !important;
  min-width:38px !important;
  max-width:38px !important;
  height:22px !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#2a2a2f !important;
}

/* footer */
html body #moderncart-slide-out-modal .moderncart-slide-out-footer{
  flex:0 0 auto !important;
  margin-top:auto !important;
  padding:14px 14px calc(14px + env(safe-area-inset-bottom)) !important;
  background:linear-gradient(180deg,#f7f1e8 0%, #eee4d7 100%) !important;
  border-top:1px solid rgba(255,122,26,.16) !important;
  box-shadow:0 -10px 22px rgba(0,0,0,.06) !important;
}

html body #moderncart-slide-out-modal .moderncart-cart-totals,
html body #moderncart-slide-out-modal .moderncart-totals,
html body #moderncart-slide-out-modal .cart_totals,
html body #moderncart-slide-out-modal .shop_table,
html body #moderncart-slide-out-modal .shop_table td,
html body #moderncart-slide-out-modal .shop_table th{
  color:#171717 !important;
  opacity:1 !important;
  visibility:visible !important;
}

html body #moderncart-slide-out-modal .moderncart-checkout-button,
html body #moderncart-slide-out-modal .moderncart-proceed-to-checkout,
html body #moderncart-slide-out-modal a.checkout-button,
html body #moderncart-slide-out-modal .button.checkout{
  width:100% !important;
  min-height:56px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:none !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#ff9f43 0%, #ff7a1a 100%) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:18px !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  box-shadow:
    0 14px 24px rgba(255,122,26,.24),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* mobile cart */
@media (max-width:767px){
  html body #moderncart-slide-out-modal .moderncart-cart-item-container{
    grid-template-columns:72px minmax(0,1fr) 42px !important;
    gap:10px !important;
    align-items:center !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-image,
  html body #moderncart-slide-out-modal .moderncart-cart-item-image a,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail a{
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
    height:72px !important;
    min-height:72px !important;
    max-height:72px !important;
    flex:0 0 72px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-image img,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail img{
    width:72px !important;
    height:72px !important;
    min-width:72px !important;
    min-height:72px !important;
    max-width:72px !important;
    max-height:72px !important;
    border-radius:16px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-product-name a,
  html body #moderncart-slide-out-modal .moderncart-cart-item-product-link a{
    font-size:16px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-quantity-selector{
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-quantity{
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
  }

  html body #moderncart-slide-out-modal .quantity__button--up,
  html body #moderncart-slide-out-modal .quantity__button--down{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-quantity__input{
    width:28px !important;
    min-width:28px !important;
    max-width:28px !important;
    font-size:12px !important;
  }
}

/* =========================================================
   FYG EMERGENCY RECOVERY
   Desktop sticky category bar + cart scroll/footer restore
   Paste at very bottom of style.css
   ========================================================= */

/* -------------------------
   1. DESKTOP YARD MENU CATEGORY BAR STICKY
   ------------------------- */
@media (min-width: 992px){

  body.page-id-4979 .wpc-food-tab-wrapper,
  body.page-id-4979 .wpc-tab-content,
  body.page-id-4979 .wpc-food-menu-main-wrapper,
  body.page-id-4979 .wpc-menu-page,
  body.page-id-4979 .main-container,
  body.page-id-4979 #main-content,
  body.page-id-4979 .entry-content,
  body.page-id-4979 .site-content{
    overflow: visible !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper{
    position: relative !important;
    z-index: 40 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 96px !important;
    z-index: 9990 !important;
    margin: 0 0 28px !important;
    padding: 14px 0 18px !important;
    background: linear-gradient(180deg, rgba(8,8,8,.96) 0%, rgba(8,8,8,.92) 100%) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top: 128px !important;
  }

  body.page-id-4979 .wpc-tab-content{
    padding-top: 10px !important;
  }
}

/* -------------------------
   2. KEEP SITE HEADER STICKY
   ------------------------- */
.fy-site-header{
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
}

.admin-bar .fy-site-header{
  top: 32px !important;
}

@media (max-width: 782px){
  .admin-bar .fy-site-header{
    top: 46px !important;
  }
}

/* -------------------------
   3. MODERNCART DRAWER: RESTORE PROPER HEIGHT / SCROLL / FOOTER
   ------------------------- */
html body #moderncart-slide-out-modal,
html body #moderncart-slide-out-modal.moderncart-modal,
html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
html body #moderncart-slide-out-modal.moderncart-slide-right{
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: 0 !important;
  height: 100dvh !important;
  overflow: hidden !important;
  z-index: 999999 !important;
}

@media (min-width: 768px){
  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
  html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
  html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
  html body #moderncart-slide-out-modal.moderncart-slide-right{
    width: 470px !important;
    min-width: 470px !important;
    max-width: 470px !important;
  }
}

@media (max-width: 767px){
  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout,
  html body #moderncart-slide-out-modal.moderncart-recommendation-style-style1,
  html body #moderncart-slide-out-modal.moderncart-cart-theme-style1,
  html body #moderncart-slide-out-modal.moderncart-slide-right{
    width: 100vw !important;
    min-width: 100vw !important;
    max-width: 100vw !important;
  }
}

html body #moderncart-slide-out-modal .moderncart-default-slide-out,
html body #moderncart-slide-out-modal .moderncart-panel{
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  margin: 0 !important;
}

/* header stays visible */
html body #moderncart-slide-out-modal .moderncart-slide-out-header{
  flex: 0 0 auto !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: linear-gradient(180deg,#fffdfa 0%, #f5ede2 100%) !important;
  border-bottom: 1px solid rgba(255,122,26,.18) !important;
  padding: 12px 16px !important;
  position: relative !important;
  z-index: 3 !important;
}

/* body scrolls */
html body #moderncart-slide-out-modal .moderncart-slide-out-cart{
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-cart-inner,
html body #moderncart-slide-out-modal .moderncart-slide-out-cart-data{
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 14px !important;
  margin: 0 !important;
  background: linear-gradient(180deg,#f1ede7 0%, #ebe6de 100%) !important;
}

/* footer always visible */
html body #moderncart-slide-out-modal .moderncart-slide-out-footer{
  flex: 0 0 auto !important;
  display: block !important;
  margin-top: auto !important;
  padding: 14px 14px calc(14px + env(safe-area-inset-bottom)) !important;
  background: linear-gradient(180deg,#f7f1e8 0%, #eee4d7 100%) !important;
  border-top: 1px solid rgba(255,122,26,.16) !important;
  box-shadow: 0 -10px 22px rgba(0,0,0,.06) !important;
  position: relative !important;
  z-index: 3 !important;
}

/* totals readable */
html body #moderncart-slide-out-modal .moderncart-cart-totals,
html body #moderncart-slide-out-modal .moderncart-totals,
html body #moderncart-slide-out-modal .cart_totals,
html body #moderncart-slide-out-modal .shop_table,
html body #moderncart-slide-out-modal .shop_table td,
html body #moderncart-slide-out-modal .shop_table th{
  color: #171717 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* proceed button fully visible */
html body #moderncart-slide-out-modal .moderncart-checkout-button,
html body #moderncart-slide-out-modal .moderncart-proceed-to-checkout,
html body #moderncart-slide-out-modal a.checkout-button,
html body #moderncart-slide-out-modal .button.checkout{
  width: 100% !important;
  min-height: 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg,#ff9f43 0%, #ff7a1a 100%) !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
  box-shadow:
    0 14px 24px rgba(255,122,26,.24),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* item cards still styled */
html body #moderncart-slide-out-modal .moderncart-cart-item{
  margin: 0 0 14px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,122,26,.07) 0%, transparent 38%),
    linear-gradient(180deg,#fffdf9 0%, #f4eadf 100%) !important;
  border: 1px solid rgba(255,122,26,.20) !important;
  box-shadow:
    0 16px 28px rgba(0,0,0,.08),
    0 0 0 1px rgba(255,255,255,.55) inset !important;
}

/* desktop title one line */
@media (min-width: 768px){
  html body #moderncart-slide-out-modal .moderncart-cart-item-product-name a,
  html body #moderncart-slide-out-modal .moderncart-cart-item-product-link a{
    font-size: 18px !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    max-width: 100% !important;
  }
}

/* mobile images restored */
@media (max-width: 767px){
  html body #moderncart-slide-out-modal .moderncart-cart-item-container{
    grid-template-columns: 72px minmax(0,1fr) 42px !important;
    gap: 10px !important;
    align-items: center !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-image,
  html body #moderncart-slide-out-modal .moderncart-cart-item-image a,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail a{
    display: block !important;
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    overflow: hidden !important;
    opacity: 1 !important;
    visibility: visible !important;
    flex: 0 0 72px !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-image img,
  html body #moderncart-slide-out-modal .moderncart-cart-item-thumbnail img{
    display: block !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 16px !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: #f2f2f2 !important;
  }
}

/* =========================================================
   FYG DESKTOP STICKY HEADER + CART CLOSE ICON RECOVERY
   Paste at very bottom of style.css
   ========================================================= */

/* -------------------------
   1. DESKTOP STICKY HEADER RECOVERY
   ------------------------- */
@media (min-width: 992px){

  html,
  body,
  #page,
  .site,
  #content,
  .site-content,
  .main-container,
  #main-content,
  .entry-content,
  .elementor,
  .elementor-section-wrap,
  .elementor-widget-wrap,
  .vc_row,
  .wpb_wrapper{
    overflow: visible !important;
  }

  .fy-site-header{
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 99999 !important;
  }

  .admin-bar .fy-site-header{
    top: 32px !important;
  }

  /* keep Yard Menu category bar sticky under header on desktop */
  body.page-id-4979 .wpc-food-tab-wrapper,
  body.page-id-4979 .wpc-tab-content,
  body.page-id-4979 .wpc-food-menu-main-wrapper,
  body.page-id-4979 .wpc-menu-page,
  body.page-id-4979 .main-container,
  body.page-id-4979 #main-content,
  body.page-id-4979 .entry-content,
  body.page-id-4979 .site-content,
  body.page-id-4979 .elementor,
  body.page-id-4979 .elementor-section-wrap,
  body.page-id-4979 .elementor-widget-wrap,
  body.page-id-4979 .vc_row,
  body.page-id-4979 .wpb_wrapper{
    overflow: visible !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper{
    position: relative !important;
    z-index: 40 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 96px !important;
    z-index: 9990 !important;
    margin: 0 0 24px !important;
    padding: 14px 0 18px !important;
    background: linear-gradient(180deg, rgba(8,8,8,.96) 0%, rgba(8,8,8,.92) 100%) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  body.admin-bar.page-id-4979 .wpc-food-tab-wrapper > .wpc-nav{
    top: 128px !important;
  }
}

/* -------------------------
   2. CART CLOSE ARROW VISIBILITY
   ------------------------- */
html body #moderncart-slide-out-modal .moderncart-slide-out-header-close{
  background: linear-gradient(135deg, #1a0f08, #2a160a) !important;
  border: 1px solid rgba(255,122,26,.42) !important;
  color: #ffcc85 !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow:
    0 8px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 0 12px rgba(255,122,26,.12) !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header-close svg,
html body #moderncart-slide-out-modal .moderncart-slide-out-header-close svg path,
html body #moderncart-slide-out-modal .moderncart-slide-out-header-close i,
html body #moderncart-slide-out-modal .moderncart-slide-out-header-close::before{
  fill: #ffcc85 !important;
  color: #ffcc85 !important;
  stroke: #ffcc85 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* if plugin uses a plain dark circular back button */
html body #moderncart-slide-out-modal .moderncart-slide-out-header button,
html body #moderncart-slide-out-modal .moderncart-slide-out-header .back,
html body #moderncart-slide-out-modal .moderncart-slide-out-header .arrow-back{
  color: #ffcc85 !important;
}

html body #moderncart-slide-out-modal .moderncart-slide-out-header button svg,
html body #moderncart-slide-out-modal .moderncart-slide-out-header button svg path{
  fill: #ffcc85 !important;
  stroke: #ffcc85 !important;
}


/* =========================================================
   FYG STORE NOTICE — CLEAN RESPONSIVE VERSION
   Desktop / Tablet / Mobile
   ========================================================= */

.woocommerce-demo-store{
  padding-top:0 !important;
}

.woocommerce-store-notice,
p.demo_store,
body .woocommerce-store-notice{
  position:fixed !important;
  z-index:99990 !important;

  top:124px !important;
  right:20px !important;
  left:auto !important;
  bottom:auto !important;

  width:auto !important;
  max-width:min(380px, calc(100vw - 40px)) !important;

  margin:0 !important;
  padding:13px 48px 13px 18px !important;

  border-radius:999px !important;
  border:1px solid rgba(255,122,26,.34) !important;

  background:linear-gradient(180deg, rgba(16,16,16,.98), rgba(8,8,8,.96)) !important;
  color:#fff4e8 !important;

  font-family:"Poppins", Arial, sans-serif !important;
  font-size:13px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  text-align:left !important;

  box-shadow:
    0 18px 34px rgba(0,0,0,.46),
    0 0 18px rgba(255,122,26,.22),
    inset 0 1px 0 rgba(255,255,255,.05) !important;

  overflow:hidden !important;
  pointer-events:auto !important;
}

body.admin-bar .woocommerce-store-notice,
body.admin-bar p.demo_store{
  top:158px !important;
}

.woocommerce-store-notice::before,
p.demo_store::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:linear-gradient(180deg,#ff7a1a,#ffcb5c);
  pointer-events:none !important;
}

.woocommerce-store-notice::after,
p.demo_store::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  border:1px solid rgba(255,183,77,.14);
  pointer-events:none !important;
}

.woocommerce-store-notice a:not(.woocommerce-store-notice__dismiss-link),
p.demo_store a:not(.woocommerce-store-notice__dismiss-link){
  color:#ffb35d !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.woocommerce-store-notice__dismiss-link,
a.woocommerce-store-notice__dismiss-link{
  position:absolute !important;
  top:50% !important;
  right:10px !important;
  transform:translateY(-50%) !important;

  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:0 !important;
  margin:0 !important;

  border-radius:50% !important;
  background:linear-gradient(180deg,#ff9f43,#ff7a1a) !important;
  color:#111 !important;

  font-size:0 !important;
  text-decoration:none !important;

  z-index:3 !important;
}

.woocommerce-store-notice__dismiss-link::before,
a.woocommerce-store-notice__dismiss-link::before{
  content:"×";
  font-size:17px;
  font-weight:900;
  line-height:1;
  color:#111;
}

/* Tablet */
@media (max-width:1100px){
  .woocommerce-store-notice,
  p.demo_store,
  body .woocommerce-store-notice{
    top:108px !important;
    right:16px !important;
    max-width:min(340px, calc(100vw - 32px)) !important;
    font-size:12px !important;
    padding:12px 44px 12px 16px !important;
  }

  body.admin-bar .woocommerce-store-notice,
  body.admin-bar p.demo_store{
    top:154px !important;
  }
}

/* Mobile */
@media (max-width:768px){
  .woocommerce-store-notice,
  p.demo_store,
  body .woocommerce-store-notice{
    top:auto !important;
    left:10px !important;
    right:10px !important;
    bottom:12px !important;

    width:auto !important;
    max-width:none !important;

    padding:11px 42px 11px 14px !important;
    border-radius:18px !important;

    font-size:11.5px !important;
    line-height:1.35 !important;

    z-index:99990 !important;
  }

  body.admin-bar .woocommerce-store-notice,
  body.admin-bar p.demo_store{
    top:auto !important;
    bottom:12px !important;
  }

  .woocommerce-store-notice__dismiss-link,
  a.woocommerce-store-notice__dismiss-link{
    right:8px !important;
    width:26px !important;
    height:26px !important;
    min-width:26px !important;
    min-height:26px !important;
  }
}

/* Very small phones */
@media (max-width:390px){
  .woocommerce-store-notice,
  p.demo_store,
  body .woocommerce-store-notice{
    left:8px !important;
    right:8px !important;
    bottom:10px !important;
    font-size:11px !important;
    padding:10px 40px 10px 12px !important;
  }
}
/* =========================================================
   FYG GLOBAL MOBILE RESPONSIVE SAFETY LOCK
   Prevents sideways page overflow on live mobile devices
========================================================= */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

@media (max-width: 767px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  body,
  #page,
  .site,
  .site-content,
  .content-area,
  .elementor,
  .elementor-section,
  .elementor-container,
  .elementor-widget-wrap,
  .wpb-content-wrapper,
  .vc_row,
  .vc_column_container,
  .woocommerce,
  .woocommerce-page {
    max-width: 100%;
    overflow-x: hidden;
  }

  img,
  video,
  iframe {
    max-width: 100%;
    height: auto;
  }
}

/* =========================================================
   FYG MOBILE CART / BASKET CONTAINMENT FIX
========================================================= */

@media (max-width: 767px) {
  .woocommerce-cart,
  .woocommerce-checkout,
  .woocommerce-cart-form,
  .cart-collaterals,
  .cart_totals,
  .shop_table,
  .woocommerce table.shop_table {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .woocommerce-cart-form,
  .cart-collaterals {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .woocommerce table.shop_table {
    display: block;
  }

  .woocommerce table.shop_table tbody,
  .woocommerce table.shop_table tr,
  .woocommerce table.shop_table td {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
  }

  .woocommerce-cart-form .product-thumbnail img {
    max-width: 96px !important;
    height: auto !important;
  }

  .woocommerce-cart-form .product-name,
  .woocommerce-cart-form .product-price,
  .woocommerce-cart-form .product-quantity,
  .woocommerce-cart-form .product-remove {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}
/* =========================================================
   FYG MODERNCART MOBILE VIEWPORT LOCK
   Fixes slide-out cart being cut off / shifted sideways
========================================================= */

@media (max-width: 767px) {

  html body #moderncart-slide-out-modal,
  html body #moderncart-slide-out-modal.moderncart-slide-right,
  html body #moderncart-slide-out-modal.moderncart-modal,
  html body #moderncart-slide-out-modal.moderncart-cart-style-slideout {
    position: fixed !important;
    inset: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: 100dvh !important;
    max-height: 100dvh !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
    translate: none !important;

    overflow: hidden !important;
    z-index: 999999 !important;
  }

  html body #moderncart-slide-out-modal .moderncart-default-slide-out,
  html body #moderncart-slide-out-modal .moderncart-panel,
  html body #moderncart-slide-out-modal .moderncart-slide-out,
  html body #moderncart-slide-out-modal .moderncart-slide-out-wrapper {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: 100dvh !important;
    max-height: 100dvh !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
    translate: none !important;

    overflow: hidden !important;
  }

  html body #moderncart-slide-out-modal .moderncart-slide-out-cart-inner,
  html body #moderncart-slide-out-modal .moderncart-slide-out-cart-data {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body #moderncart-slide-out-modal .moderncart-cart-item-container {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 72px minmax(0, 1fr) 42px !important;
  }
}

/* =========================================================
   FYG — WOO ORDER RECEIVED / THANK YOU PAGE
   Clean consolidated version
   ========================================================= */

body.woocommerce-order-received .woocommerce-order{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:40px 20px 80px;
  color:#fff;
}

/* Success message */
body.woocommerce-order-received .woocommerce-thankyou-order-received{
  background:linear-gradient(135deg, rgba(255,122,26,.12), rgba(255,122,26,.03));
  border:1px solid rgba(255,122,26,.28);
  border-radius:24px;
  padding:24px 28px;
  margin-bottom:28px;
  font-size:20px;
  font-weight:600;
  box-shadow:0 10px 40px rgba(0,0,0,.45), 0 0 30px rgba(255,122,26,.08);
}

/* Top order tiles */
body.woocommerce-order-received .woocommerce-order-overview{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:18px !important;
  padding:0 !important;
  margin:0 0 54px !important;
  list-style:none !important;
}

body.woocommerce-order-received .woocommerce-order-overview li{
  float:none !important;
  flex:1 1 185px !important;
  max-width:220px !important;
  min-width:0 !important;
  margin:0 !important;
  background:#111 !important;
  border:1px solid rgba(255,122,26,.22) !important;
  border-radius:20px !important;
  padding:20px !important;
  min-height:130px !important;
  box-shadow:0 6px 24px rgba(0,0,0,.35) !important;
  color:#fff !important;
  word-break:break-word !important;
}

body.woocommerce-order-received .woocommerce-order-overview strong{
  display:block !important;
  margin-top:8px !important;
  font-size:24px !important;
  line-height:1.25 !important;
  color:#ff9a4d !important;
  word-break:break-word !important;
}

/* Headings */
body.woocommerce-order-received .woocommerce-order h2,
body.woocommerce-order-received .woocommerce-bacs-bank-details h2,
body.woocommerce-order-received .woocommerce-customer-details h2{
  font-size:clamp(38px,4vw,58px);
  color:#fff1de;
  margin:42px 0 24px;
  font-weight:800;
  letter-spacing:-1px;
  line-height:1;
}

/* Bank details */
body.woocommerce-order-received .woocommerce-bacs-bank-details{
  margin:34px 0 48px;
}

body.woocommerce-order-received .woocommerce-bacs-bank-details h3,
body.woocommerce-order-received .wc-bacs-bank-details-heading{
  color:#ff9a4d;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
  margin:0 0 18px;
  text-transform:uppercase;
}

body.woocommerce-order-received .wc-bacs-bank-details{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:16px !important;
  padding:0 !important;
  margin:18px 0 0 !important;
  list-style:none !important;
}

body.woocommerce-order-received .wc-bacs-bank-details li{
  background:#111 !important;
  border:1px solid rgba(255,122,26,.22) !important;
  border-radius:18px !important;
  padding:18px 20px !important;
  min-width:180px !important;
  color:#fff !important;
}

body.woocommerce-order-received .wc-bacs-bank-details strong{
  display:block !important;
  margin-top:6px !important;
  font-size:22px !important;
  color:#fff !important;
}

/* Order details table */
body.woocommerce-order-received table.shop_table.order_details{
  width:100% !important;
  max-width:100% !important;
  display:table !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  border:1px solid rgba(255,122,26,.55) !important;
  border-radius:22px !important;
  overflow:hidden !important;
  background:#0b0b0b !important;
  box-shadow:
    0 0 0 1px rgba(255,122,26,.18),
    0 18px 45px rgba(0,0,0,.45),
    0 0 28px rgba(255,122,26,.08) !important;
}

body.woocommerce-order-received table.shop_table.order_details thead,
body.woocommerce-order-received table.shop_table.order_details tbody,
body.woocommerce-order-received table.shop_table.order_details tfoot{
  display:table-row-group !important;
  width:100% !important;
}

body.woocommerce-order-received table.shop_table.order_details tr{
  display:table-row !important;
}

body.woocommerce-order-received table.shop_table.order_details th,
body.woocommerce-order-received table.shop_table.order_details td{
  display:table-cell !important;
  width:50% !important;
  padding:18px 16px !important;
  vertical-align:middle !important;
  text-align:center !important;
  border:1px solid rgba(255,122,26,.22) !important;
  background:#0b0b0b !important;
  color:#fff !important;
  white-space:normal !important;
  word-break:break-word !important;
}

body.woocommerce-order-received table.shop_table.order_details th,
body.woocommerce-order-received table.shop_table.order_details tfoot th{
  background:#151515 !important;
  color:#ff9a4d !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-weight:800 !important;
}

body.woocommerce-order-received table.shop_table.order_details tfoot td{
  font-weight:800 !important;
}

/* Customer details: desktop side by side */
@media (min-width:769px){

  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:"shipping billing" !important;
    gap:48px !important;
    align-items:start !important;
  }

  body.woocommerce-order-received .woocommerce-column--shipping-address{
    grid-area:shipping !important;
  }

  body.woocommerce-order-received .woocommerce-column--billing-address{
    grid-area:billing !important;
  }
}

body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column{
  float:none !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
}

body.woocommerce-order-received .woocommerce-customer-details address{
  background:#111;
  border-radius:22px;
  border:1px solid rgba(255,122,26,.18);
  padding:24px;
  line-height:1.8;
  box-shadow:0 8px 30px rgba(0,0,0,.35);
}

/* Mobile */
@media (max-width:768px){

  html,
  body{
    overflow-x:hidden !important;
  }

  body.woocommerce-order-received .woocommerce-order{
    max-width:100% !important;
    padding:26px 18px 60px !important;
    overflow:hidden !important;
  }

  body.woocommerce-order-received .woocommerce-thankyou-order-received{
    font-size:16px !important;
    padding:18px !important;
    border-radius:18px !important;
    margin-bottom:20px !important;
  }

  body.woocommerce-order-received .woocommerce-order-overview{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin-bottom:36px !important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li{
    max-width:100% !important;
    min-height:auto !important;
    padding:18px !important;
    border-radius:18px !important;
  }

  body.woocommerce-order-received .woocommerce-order-overview strong{
    font-size:22px !important;
  }

  body.woocommerce-order-received .woocommerce-order h2,
  body.woocommerce-order-received .woocommerce-bacs-bank-details h2,
  body.woocommerce-order-received .woocommerce-customer-details h2{
    font-size:clamp(38px, 10vw, 52px) !important;
    line-height:1.02 !important;
    text-align:center !important;
    letter-spacing:-.035em !important;
    padding:0 10px !important;
    margin:38px auto 20px !important;
    max-width:100% !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }

  body.woocommerce-order-received .woocommerce-bacs-bank-details{
    text-align:center !important;
    padding:0 !important;
    margin:34px 0 42px !important;
    overflow:hidden !important;
  }

  body.woocommerce-order-received .woocommerce-bacs-bank-details h3,
  body.woocommerce-order-received .wc-bacs-bank-details-heading{
    font-size:clamp(24px, 7vw, 34px) !important;
    line-height:1.05 !important;
    text-align:center !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }

  body.woocommerce-order-received .wc-bacs-bank-details{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  body.woocommerce-order-received .wc-bacs-bank-details li{
    min-width:0 !important;
    width:100% !important;
    padding:16px !important;
    text-align:left !important;
  }

  body.woocommerce-order-received .wc-bacs-bank-details strong{
    font-size:20px !important;
  }

  body.woocommerce-order-received table.shop_table.order_details th,
  body.woocommerce-order-received table.shop_table.order_details td{
    padding:16px 8px !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }

  body.woocommerce-order-received table.shop_table.order_details th,
  body.woocommerce-order-received table.shop_table.order_details tfoot th{
    font-size:13px !important;
    letter-spacing:.06em !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{
    display:block !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column{
    margin:0 0 28px !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details address{
    padding:18px !important;
    border-radius:18px !important;
    font-size:15px !important;
  }
}

/* =========================================================
   FYG EVENTS VIDEO SECTION
   ========================================================= */

/* EVENTS VIDEO WIDGET SECTION */
.fyg-events-video-wrap {
  max-width: 1040px !important;
  margin: 0 auto !important;
  padding: 0 20px 90px !important;
}

/* Make Elementor widget fill the same container */
.fyg-events-video-wrap .elementor-widget-container {
  width: 100% !important;
}

/* Style videos inside the existing Elementor widget */
.fyg-events-video-wrap video,
.fyg-events-video-wrap iframe {
  width: 100% !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 18px;
  border: 1px solid rgba(255,122,26,.35);
  box-shadow: 0 18px 35px rgba(0,0,0,.55);
}

/* If Elementor outputs multiple video items */
.fyg-events-video-wrap .elementor-grid,
.fyg-events-video-wrap .gallery,
.fyg-events-video-wrap .elementor-widget-container > div {
  gap: 18px !important;
}

/* Mobile */
@media (max-width: 767px) {
  .fyg-events-video-wrap {
    max-width: 100% !important;
    padding: 0 18px 70px !important;
  }

  .fyg-events-video-wrap video,
  .fyg-events-video-wrap iframe {
    border-radius: 16px;
  }
}