/* ============================================================
   gb-polish.css — additive UI polish layer (loaded LAST).
   Pure enhancement: no layout restructuring, no concept change.
   Remove this one <link> in header.php to fully revert.
   Brand accent: #f97316 (orange).
   (2026-10-28)
============================================================ */

/* ---- 1. Smooth interactions (honours reduced-motion) ---- */
@media (prefers-reduced-motion: no-preference){
  a, button, .btn,
  .bb-tour-card, .bb-trend-card, .bb-why-card, .bb-bnr-card, .bb-sm-card,
  [class*="bb-"][class*="card"]{
    transition: transform .22s cubic-bezier(.22,.61,.36,1),
                box-shadow .22s ease, border-color .22s ease,
                background-color .2s ease, color .2s ease, filter .2s ease;
  }
}

/* ---- 2. Card hover-lift + deeper shadow (pointer + desktop only) ---- */
@media (hover:hover) and (min-width: 992px){
  .bb-tour-card:hover, .bb-trend-card:hover, .bb-why-card:hover,
  .bb-bnr-card:hover, .bb-sm-card:hover,
  [class*="bb-"][class*="card"]:hover{
    transform: translateY(-6px);
    box-shadow: 0 18px 40px -12px rgba(15,23,42,.28);
  }
  /* 2b. gentle image zoom inside the picture cards */
  .bb-tour-card, .bb-bnr-card{ overflow: hidden; }
  .bb-tour-card img, .bb-bnr-card img{
    transition: transform .5s cubic-bezier(.22,.61,.36,1); will-change: transform;
  }
  .bb-tour-card:hover img, .bb-bnr-card:hover img{ transform: scale(1.06); }
}

/* ---- 3. Button hover + press feedback ---- */
@media (hover:hover){ .btn:hover{ filter: brightness(1.04); } }
.btn:active{ transform: translateY(1px); }

/* ---- 4. Accessible keyboard focus rings (a11y, keyboard only) ---- */
a:focus-visible, button:focus-visible, .btn:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
[tabindex]:focus-visible{
  outline: 3px solid rgba(249,115,22,.55);
  outline-offset: 2px; border-radius: 8px;
}
:focus:not(:focus-visible){ outline: none; }

/* ---- 5. Refined custom scrollbar (desktop) ---- */
@media (min-width: 992px){
  html{ scrollbar-color: #f9a24a #eef0f3; }
  ::-webkit-scrollbar{ width: 11px; height: 11px; }
  ::-webkit-scrollbar-track{ background:#eef0f3; }
  ::-webkit-scrollbar-thumb{ background:#f9a24a; border-radius:8px; border:2px solid #eef0f3; }
  ::-webkit-scrollbar-thumb:hover{ background:#f97316; }
}

/* ---- 6. Minimal, universally-safe mobile safeguard ---- */
@media (max-width: 575.98px){
  /* stop stray wide children causing horizontal page scroll */
  html, body{ overflow-x: hidden; }
}

/* ---- 7. Premium solid CTAs: depth + top-gloss + lift (brand colours kept) ---- */
.btn-success, .btn-danger, .btn-warning, .btn-primary, .btn-info, .btn-dark,
.bb-mega-all{
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 6px 16px -7px rgba(15,23,42,.5);
}
@media (hover:hover){
  .btn-success:hover, .btn-danger:hover, .btn-warning:hover, .btn-primary:hover,
  .btn-info:hover, .btn-dark:hover, .bb-mega-all:hover{
    transform: translateY(-2px);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 24px -8px rgba(15,23,42,.55);
    filter: brightness(1.05);
  }
}
.btn-success:active, .btn-danger:active, .btn-warning:active, .btn-primary:active,
.btn-info:active, .btn-dark:active, .bb-mega-all:active{
  transform: translateY(0);
  box-shadow: inset 0 2px 5px rgba(0,0,0,.2);
}
/* give the home mega "View All" a touch of depth too */
.bb-mega-all{ box-shadow: 0 6px 16px -7px rgba(249,115,22,.6); }
