/* ==========================================================================
   Burger Wale — Design Enhancement Layer
   Additive polish over the original theme. Non-destructive: only touches
   color, type, shadow, motion, hover & focus — never structural layout.
   ========================================================================== */
:root{
  --enh-accent:#ffa726;
  --enh-accent-2:#ff6b35;
  --enh-accent-grad:linear-gradient(135deg,#ffb347 0%,#ff6b35 100%);
  --enh-ink:#eef1f4;
  --enh-muted:#b6bcc6;
  --enh-surface:#1c2026;
  --enh-surface-2:#23282f;
  --enh-border:rgba(255,255,255,.08);
  --enh-ring:rgba(255,167,38,.55);
  --enh-shadow:0 10px 30px -8px rgba(0,0,0,.55);
  --enh-shadow-lg:0 22px 50px -12px rgba(0,0,0,.7);
  --enh-ease:cubic-bezier(.22,.61,.36,1);
}

/* ---- Global smoothing -------------------------------------------------- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
::selection{background:var(--enh-accent);color:#150d02}
img{max-width:100%}

/* Refined scrollbar (desktop) */
@media (pointer:fine){
  *{scrollbar-width:thin;scrollbar-color:var(--enh-accent) #14171b}
  ::-webkit-scrollbar{width:11px;height:11px}
  ::-webkit-scrollbar-track{background:#14171b}
  ::-webkit-scrollbar-thumb{background:linear-gradient(var(--enh-accent),var(--enh-accent-2));border-radius:20px;border:2px solid #14171b}
}

/* Keyboard focus visibility (a11y) */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,
.elementor-button:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--enh-ring)!important;outline-offset:3px!important;border-radius:6px;
}

/* ---- Typography polish ------------------------------------------------- */
p{letter-spacing:.1px;line-height:1.75}
h1,h2,h3,h4,h5{letter-spacing:.2px}
.enh-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---- Buttons: unified premium feel ------------------------------------ */
a.elementor-button,.elementor-button,.btn,.btn-primary,
input[type="submit"],button.btn,.wpcf7-submit,.ts-btn{
  transition:transform .25s var(--enh-ease),box-shadow .25s var(--enh-ease),
             background-color .25s var(--enh-ease),filter .25s var(--enh-ease)!important;
  will-change:transform;
}
a.elementor-button:hover,.elementor-button:hover,.btn:hover,.btn-primary:hover,
input[type="submit"]:hover,.wpcf7-submit:hover,.ts-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 34px -8px rgba(255,107,53,.55)!important;
  filter:saturate(1.08) brightness(1.04);
}
a.elementor-button:active,.elementor-button:active,.btn:active,.wpcf7-submit:active{transform:translateY(-1px)}
/* Primary CTAs get the warm gradient + guaranteed contrast */
.btn-primary,.wpcf7-submit,.btn-submit,.elementor-button.elementor-button-primary{
  background-image:var(--enh-accent-grad)!important;
  color:#20140a!important;font-weight:700!important;letter-spacing:.4px;
  border:none!important;box-shadow:0 8px 22px -8px rgba(255,107,53,.5)!important;
}

/* ---- Links / nav ------------------------------------------------------- */
.nav-link{position:relative;transition:color .25s var(--enh-ease)}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;
  background:var(--enh-accent-grad);border-radius:2px;transition:right .3s var(--enh-ease)}
.nav-link:hover,.nav-link.active{color:var(--enh-accent)!important}
.nav-link:hover::after,.nav-link.active::after{right:0}

/* ---- Header: solidify on scroll --------------------------------------- */
header.header{transition:background-color .35s var(--enh-ease),box-shadow .35s var(--enh-ease),backdrop-filter .35s var(--enh-ease)}
header.header.enh-scrolled{
  background:rgba(17,20,24,.82)!important;
  -webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);
  box-shadow:0 8px 30px -10px rgba(0,0,0,.6);
}

/* ---- Image cards & gallery hover -------------------------------------- */
.elementor-widget-image img,.ts-foodmenu img,.gallery img,.ts-chef img,figure img{
  transition:transform .5s var(--enh-ease),filter .5s var(--enh-ease);
}
.elementor-widget-image:hover img,figure.wp-caption:hover img,
.e-gallery-item:hover img,.elementor-gallery-item:hover img{transform:scale(1.05)}

/* Gallery tiles: clip zoom + reveal overlay */
.elementor-gallery-item,.e-gallery-item,.gallery-item{overflow:hidden;border-radius:14px}
.elementor-gallery-item__overlay{transition:opacity .35s var(--enh-ease),backdrop-filter .35s var(--enh-ease)!important}

/* ---- Menu / team / testimonial cards: lift on hover ------------------- */
.ts-foodmenu-item,.ts-menu-item,.food-menu-item,.ts-chef-item,.xs-review-item,
.elementor-widget-ts-foodmenu .menu-item,.ts-team-member,.testimonial-item,.blog-post,.post-item{
  transition:transform .3s var(--enh-ease),box-shadow .3s var(--enh-ease);
}
.ts-foodmenu-item:hover,.ts-menu-item:hover,.ts-chef-item:hover,.xs-review-item:hover,
.ts-team-member:hover,.testimonial-item:hover,.blog-post:hover,.post-item:hover{
  transform:translateY(-6px);box-shadow:var(--enh-shadow-lg);
}

/* ---- Scroll reveal ----------------------------------------------------- */
.enh-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--enh-ease),transform .7s var(--enh-ease)}
.enh-reveal.enh-in{opacity:1;transform:none}

/* ---- Rebuilt Instagram grid (replaces dead API feed) ------------------ */
.enh-ig{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;max-width:1200px;margin:0 auto;padding:0 16px}
.enh-ig a{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;border-radius:14px;
  box-shadow:var(--enh-shadow);transform:translateZ(0)}
.enh-ig img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--enh-ease)}
.enh-ig a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(255,107,53,.55));
  opacity:0;transition:opacity .35s var(--enh-ease)}
.enh-ig a::before{content:"\f16d";font-family:"font-awesome","FontAwesome",sans-serif;position:absolute;inset:0;
  display:grid;place-items:center;color:#fff;font-size:30px;opacity:0;transform:scale(.6);
  transition:opacity .35s var(--enh-ease),transform .35s var(--enh-ease);z-index:2}
.enh-ig a:hover img{transform:scale(1.12)}
.enh-ig a:hover::after{opacity:1}
.enh-ig a:hover::before{opacity:1;transform:scale(1)}
@media(max-width:1024px){.enh-ig{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.enh-ig{grid-template-columns:repeat(3,1fr);gap:6px}}

/* ---- Contact form: friendly states ------------------------------------ */
.wpcf7-form .ts-input:focus{border-color:var(--enh-accent)!important;box-shadow:0 0 0 3px rgba(255,167,38,.18)!important;outline:none!important}
.enh-form-alert{margin-top:14px;padding:14px 18px;border-radius:12px;font-weight:600;display:none}
.enh-form-alert.enh-show{display:block;animation:enhPop .4s var(--enh-ease)}
.enh-form-alert.ok{background:rgba(46,160,88,.15);color:#7ee2a0;border:1px solid rgba(46,160,88,.4)}
.enh-form-alert.err{background:rgba(230,57,70,.15);color:#ff8b93;border:1px solid rgba(230,57,70,.4)}
@keyframes enhPop{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Comments-disabled notice on blog posts */
.enh-note{background:var(--enh-surface);border:1px solid var(--enh-border);border-left:3px solid var(--enh-accent);
  border-radius:10px;padding:16px 20px;color:var(--enh-muted);margin:18px 0}
.enh-note a{color:var(--enh-accent);font-weight:600;text-decoration:none}
.enh-note a:hover{text-decoration:underline}

/* ---- Back-to-top button ------------------------------------------------ */
#enh-top{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border:none;cursor:pointer;
  border-radius:50%;background:var(--enh-accent-grad);color:#20140a;font-size:20px;font-weight:800;
  display:grid;place-items:center;box-shadow:0 10px 26px -6px rgba(255,107,53,.6);z-index:9999;
  opacity:0;pointer-events:none;transform:translateY(14px) scale(.9);
  transition:opacity .3s var(--enh-ease),transform .3s var(--enh-ease)}
#enh-top.enh-show{opacity:1;pointer-events:auto;transform:none}
#enh-top:hover{transform:translateY(-3px) scale(1.05)}

/* ---- Reduced motion ---------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.001ms!important;animation-duration:.001ms!important}
  .enh-reveal{opacity:1;transform:none}
}
