/* ================================================================
   CBEZT GLOBAL STYLESHEET v3.1
   PT Cipta Aneka Selera · #ServingTheBezt
================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,600&display=swap');

/* ── VARIABLES ───────────────────────────────────────────────── */
:root {
  --cbz-blue:        #1565C0;
  --cbz-blue-dk:     #0D47A1;
  --cbz-blue-lt:     #1976D2;
  --cbz-blue-pale:   #E3F2FD;
  --cbz-blue-xp:     #F0F7FF;
  --cbz-orange:      #F57C00;
  --cbz-orange-lt:   #FF9800;
  --cbz-yellow:      #FFC107;
  --cbz-yellow-lt:   #FFD54F;
  --cbz-yellow-bg:   #FFF8E1;
  --cbz-dark:        #0A1929;
  --cbz-dark2:       #132F4C;
  --cbz-gray:        #546E7A;
  --cbz-gray-lt:     #78909C;
  --cbz-white:       #FFFFFF;
  --cbz-cream:       #FAFCFF;

  --font-display: 'Bebas Neue', cursive;
  --font-body:    'Plus Jakarta Sans', sans-serif;

  --radius-sm:  8px;
  --radius:     14px;
  --radius-lg:  22px;
  --radius-xl:  32px;
  --radius-2xl: 48px;

  --shadow-sm:  0 2px 8px rgba(21,101,192,.08);
  --shadow:     0 8px 32px rgba(21,101,192,.12);
  --shadow-lg:  0 20px 60px rgba(21,101,192,.18);
  --shadow-xl:  0 32px 80px rgba(21,101,192,.22);
  --shadow-o:   0 8px 28px rgba(245,124,0,.28);
  --shadow-y:   0 8px 28px rgba(255,193,7,.32);
  --shadow-dark:0 20px 60px rgba(10,25,41,.35);

  --ease:       cubic-bezier(.4, 0, .2, 1);
  --ease-spring:cubic-bezier(.34, 1.56, .64, 1);
  --transition: .25s var(--ease);
  --transition-slow: .5s var(--ease);
}

/* ── RESET ───────────────────────────────────────────────────── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; -webkit-text-size-adjust:100%; }
body { font-family:var(--font-body); background:var(--cbz-cream); color:var(--cbz-dark);
       overflow-x:hidden; line-height:1.6; -webkit-font-smoothing:antialiased; }
img, video { max-width:100%; display:block; }
a { text-decoration:none; color:inherit; }
button { cursor:pointer; border:none; background:none; font-family:inherit; }
input, select, textarea { font-family:inherit; }
ul { list-style:none; }

/* ── TYPOGRAPHY UTILITIES ────────────────────────────────────── */
.font-display { font-family:var(--font-display) !important; }

/* Gradient text */
.cbz-text-gradient {
  background: linear-gradient(135deg, var(--cbz-blue), var(--cbz-orange));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.cbz-text-gradient-yellow {
  background: linear-gradient(135deg, var(--cbz-yellow), var(--cbz-orange));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.cbz-text-gradient-blue {
  background: linear-gradient(135deg, #42A5F5, var(--cbz-blue-dk));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── LAYOUT ──────────────────────────────────────────────────── */
.cbz-container { max-width:1200px; margin:0 auto; padding:0 5vw; }
.cbz-section    { padding:100px 0; }
.cbz-section-sm { padding:70px 0; }

/* ── SECTION HEADER ──────────────────────────────────────────── */
.cbz-section-label {
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.73rem; font-weight:800; letter-spacing:.18em;
  text-transform:uppercase; color:var(--cbz-orange); margin-bottom:.8rem;
}
.cbz-section-label::before {
  content:''; width:24px; height:3px; background:currentColor;
  border-radius:2px; flex-shrink:0;
}
.cbz-section-title {
  font-family:var(--font-display);
  font-size:clamp(34px,6vw,64px);
  line-height:1.02; letter-spacing:.03em; margin-bottom:.6rem;
}
.cbz-section-sub {
  color:var(--cbz-gray); font-size:1.05rem; font-weight:500;
  line-height:1.7; max-width:580px;
}
.text-center .cbz-section-sub { margin:0 auto; }

/* ── BUTTONS ─────────────────────────────────────────────────── */
.cbz-btn {
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--font-body); font-weight:700; font-size:.9rem;
  letter-spacing:.02em; padding:.8rem 2rem; border-radius:50px;
  transition:all var(--transition); cursor:pointer; border:none;
  white-space:nowrap; position:relative; overflow:hidden;
}
.cbz-btn::after {
  content:''; position:absolute; inset:0;
  background:rgba(255,255,255,.12); opacity:0;
  transition:opacity var(--transition);
}
.cbz-btn:hover::after { opacity:1; }

.cbz-btn-primary { background:var(--cbz-blue); color:#fff; box-shadow:var(--shadow); }
.cbz-btn-primary:hover { background:var(--cbz-blue-dk); transform:translateY(-2px); box-shadow:var(--shadow-lg); }

.cbz-btn-orange { background:var(--cbz-orange); color:#fff; box-shadow:var(--shadow-o); }
.cbz-btn-orange:hover { background:var(--cbz-orange-lt); transform:translateY(-2px); }

.cbz-btn-yellow { background:var(--cbz-yellow); color:var(--cbz-dark); box-shadow:var(--shadow-y); font-weight:800; }
.cbz-btn-yellow:hover { background:var(--cbz-yellow-lt); transform:translateY(-2px); }

.cbz-btn-outline { border:2px solid var(--cbz-blue); color:var(--cbz-blue); background:transparent; }
.cbz-btn-outline:hover { background:var(--cbz-blue); color:#fff; transform:translateY(-2px); }

.cbz-btn-outline-white { border:2px solid rgba(255,255,255,.4); color:#fff; background:transparent; }
.cbz-btn-outline-white:hover { background:rgba(255,255,255,.15); border-color:rgba(255,255,255,.8); }

.cbz-btn-ghost { color:var(--cbz-blue); background:var(--cbz-blue-xp); border:none; }
.cbz-btn-ghost:hover { background:var(--cbz-blue-pale); transform:translateY(-1px); }

.cbz-btn-lg { padding:1rem 2.6rem; font-size:1rem; }
.cbz-btn-sm { padding:.45rem 1.15rem; font-size:.82rem; }
.cbz-btn-xs { padding:.3rem .8rem; font-size:.75rem; }

/* ── BADGES ──────────────────────────────────────────────────── */
.cbz-badge {
  display:inline-flex; align-items:center; gap:.35rem;
  font-size:.72rem; font-weight:800; letter-spacing:.05em;
  text-transform:uppercase; padding:.3rem .85rem; border-radius:50px;
}
.cbz-badge-blue   { background:var(--cbz-blue-pale); color:var(--cbz-blue); }
.cbz-badge-orange { background:#FFF3E0; color:var(--cbz-orange); }
.cbz-badge-yellow { background:var(--cbz-yellow-bg); color:#F57F17; }
.cbz-badge-green  { background:#E8F5E9; color:#2E7D32; }
.cbz-badge-white  { background:rgba(255,255,255,.15); color:#fff; }
.cbz-badge-dark   { background:rgba(10,25,41,.08); color:var(--cbz-dark); }

/* ── CARDS ───────────────────────────────────────────────────── */
.cbz-card {
  background:#fff; border-radius:var(--radius-lg);
  border:1.5px solid rgba(21,101,192,.09);
  transition:all var(--transition); overflow:hidden;
}
.cbz-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-6px); border-color:rgba(21,101,192,.2); }

/* Glass card */
.cbz-glass {
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.2);
  border-radius:var(--radius-lg);
  transition:all var(--transition);
}
.cbz-glass:hover { background:rgba(255,255,255,.2); transform:translateY(-4px); }

/* Dark glass */
.cbz-glass-dark {
  background:rgba(10,25,41,.6);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius-lg);
}

/* ── FORMS ───────────────────────────────────────────────────── */
.cbz-input {
  width:100%; padding:.75rem 1.1rem;
  border:1.5px solid rgba(21,101,192,.15);
  border-radius:var(--radius); font-family:var(--font-body);
  font-size:.9rem; color:var(--cbz-dark); background:#fff;
  outline:none; transition:all var(--transition);
}
.cbz-input:focus { border-color:var(--cbz-blue); box-shadow:0 0 0 3px rgba(21,101,192,.1); }
.cbz-input::placeholder { color:var(--cbz-gray-lt); }
.cbz-label {
  display:block; font-size:.78rem; font-weight:800; color:var(--cbz-dark);
  letter-spacing:.04em; text-transform:uppercase; margin-bottom:.4rem;
}

/* ── NAVBAR ──────────────────────────────────────────────────── */
.cbz-nav { position:fixed; top:0; left:0; right:0; z-index:1000; height:72px; transition:all var(--transition); }
.cbz-nav.scrolled { background:rgba(255,255,255,.96) !important; backdrop-filter:blur(24px); box-shadow:0 2px 24px rgba(21,101,192,.1); }

/* ── STATS STRIP ─────────────────────────────────────────────── */
.cbz-stats-strip { background:var(--cbz-blue-dk); }
.cbz-stat-item {
  flex:1; padding:2.4rem 1.5rem; text-align:center;
  border-right:1px solid rgba(255,255,255,.07);
  transition:background var(--transition);
}
.cbz-stat-item:last-child { border-right:none; }
.cbz-stat-item:hover { background:rgba(255,193,7,.08); }
.cbz-stat-num {
  font-family:var(--font-display); font-size:2.8rem;
  color:var(--cbz-yellow); letter-spacing:.04em; line-height:1; margin-bottom:.3rem;
}
.cbz-stat-label { font-size:.82rem; color:rgba(255,255,255,.55); font-weight:600; }

/* ── MENU CARD ───────────────────────────────────────────────── */
.cbz-menu-card {
  background:#fff; border-radius:var(--radius-lg); overflow:hidden;
  border:2px solid transparent; transition:all var(--transition);
}
.cbz-menu-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); border-color:var(--cbz-yellow); }
.cbz-menu-card-img {
  aspect-ratio:1; overflow:hidden; position:relative;
  background:linear-gradient(135deg, var(--cbz-blue-pale), var(--cbz-yellow-bg));
  display:flex; align-items:center; justify-content:center;
}
.cbz-menu-card-img img { width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease); }
.cbz-menu-card:hover .cbz-menu-card-img img { transform:scale(1.07); }
.cbz-menu-card-body { padding:1.2rem; }
.cbz-menu-card-name { font-weight:800; font-size:.98rem; color:var(--cbz-dark); margin-bottom:.25rem; }
.cbz-menu-card-price { font-family:var(--font-display); font-size:1.4rem; color:var(--cbz-blue); letter-spacing:.04em; }

/* ── OUTLET CARD ─────────────────────────────────────────────── */
.cbz-outlet-card { background:#fff; border-radius:var(--radius-lg); overflow:hidden; border:1.5px solid rgba(21,101,192,.09); transition:all var(--transition); }
.cbz-outlet-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.cbz-outlet-head { background:linear-gradient(135deg, var(--cbz-blue-dk), var(--cbz-blue)); padding:1.2rem 1.5rem; display:flex; align-items:center; gap:.9rem; }
.cbz-outlet-icon { width:44px; height:44px; border-radius:10px; background:rgba(255,255,255,.15); display:flex; align-items:center; justify-content:center; font-size:1.4rem; flex-shrink:0; overflow:hidden; }
.cbz-outlet-code { font-size:.7rem; font-weight:800; color:rgba(255,255,255,.65); letter-spacing:.1em; text-transform:uppercase; }
.cbz-outlet-name { font-weight:800; color:#fff; font-size:.98rem; }
.cbz-outlet-body { padding:1.2rem 1.5rem; }
.cbz-outlet-row { display:flex; gap:.6rem; font-size:.84rem; color:var(--cbz-gray); margin-bottom:.4rem; align-items:flex-start; font-weight:500; }

/* ── TESTIMONIAL ─────────────────────────────────────────────── */
.cbz-testi-card { border-radius:var(--radius-lg); padding:2rem; transition:all var(--transition); }

/* ── FAQ ─────────────────────────────────────────────────────── */
.cbz-faq-item { background:#fff; border-radius:var(--radius); border:1.5px solid rgba(21,101,192,.09); overflow:visible; transition:border-color var(--transition),box-shadow var(--transition); }
.cbz-faq-item.open { border-color:var(--cbz-blue); }
.cbz-faq-q { width:100%; text-align:left; padding:1.2rem 1.5rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; font-weight:700; font-size:.95rem; color:var(--cbz-dark); cursor:pointer; transition:background var(--transition); }
.cbz-faq-q:hover { background:var(--cbz-blue-xp); }
.cbz-faq-q.open { color:var(--cbz-blue); }
.cbz-faq-arrow { width:28px; height:28px; border-radius:50%; background:var(--cbz-blue-pale); color:var(--cbz-blue); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:.75rem; transition:all var(--transition); }
.cbz-faq-q.open .cbz-faq-arrow { background:var(--cbz-blue); color:#fff; transform:rotate(180deg); }
.cbz-faq-body { height:0; overflow:hidden; transition:height .32s cubic-bezier(.4,0,.2,1),padding .28s cubic-bezier(.4,0,.2,1); padding:0 1.5rem; }
.cbz-faq-body.open { padding:0 1.5rem 1.3rem; }
.cbz-faq-body p { font-size:.9rem; color:var(--cbz-gray); line-height:1.75; }

/* ── FOOTER ──────────────────────────────────────────────────── */
.cbz-footer { background:var(--cbz-dark); color:#fff; }
.cbz-footer-link { font-size:.87rem; color:rgba(255,255,255,.45); transition:color var(--transition); display:inline-block; }
.cbz-footer-link:hover { color:#fff; }
.cbz-social-btn { width:38px; height:38px; border-radius:10px; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-size:1.1rem; transition:all var(--transition); }
.cbz-social-btn:hover { background:var(--cbz-blue); color:#fff; transform:translateY(-2px); }

/* ── FLOAT BUTTONS ───────────────────────────────────────────── */
.cbz-wa-float {
  position:fixed; bottom:24px; right:24px; z-index:500;
  display:flex; align-items:center; gap:.65rem;
  background:#25D366; color:#fff; padding:.8rem 1.5rem;
  border-radius:50px; font-family:var(--font-body); font-weight:700; font-size:.88rem;
  box-shadow:0 6px 24px rgba(37,211,102,.35); transition:all var(--transition);
  animation:fadeSlideLeft .8s 1s ease both;
}
.cbz-wa-float:hover { transform:translateY(-3px); box-shadow:0 10px 32px rgba(37,211,102,.45); }

.cbz-back-top {
  position:fixed; bottom:90px; right:24px; z-index:500;
  width:48px; height:48px; border-radius:50%;
  background:var(--cbz-blue); color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 24px rgba(21,101,192,.30); transition:all .25s cubic-bezier(.4,0,.2,1);
  opacity:0; pointer-events:none; transform:translateY(16px);
}
.cbz-back-top.show { opacity:1; pointer-events:auto; transform:translateY(0); }
.cbz-back-top:hover { background:var(--cbz-blue-dk); transform:translateY(-3px); box-shadow:0 12px 32px rgba(21,101,192,.38); }

/* ── WAVE DIVIDERS ───────────────────────────────────────────── */
.cbz-wave-bottom {
  position:absolute; bottom:-1px; left:0; right:0;
  overflow:hidden; line-height:0;
}
.cbz-wave-bottom svg { display:block; width:100%; }

/* ── HIGHLIGHT CARD (penghargaan) ───────────────────────────── */
.cbz-award-card {
  background:#fff; border-radius:var(--radius-lg);
  border:2px solid var(--cbz-blue-pale);
  padding:1.5rem; text-align:center;
  transition:all var(--transition);
  position:relative; overflow:hidden;
}
.cbz-award-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--cbz-blue), var(--cbz-orange));
}
.cbz-award-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); border-color:var(--cbz-blue); }
.cbz-award-year { font-family:var(--font-display); font-size:2.5rem; color:var(--cbz-blue); letter-spacing:.04em; line-height:1; }
.cbz-award-title { font-weight:800; font-size:.9rem; color:var(--cbz-dark); margin:.4rem 0 .25rem; }
.cbz-award-org { font-size:.78rem; color:var(--cbz-gray); font-weight:600; }

/* ── PLATFORM CARD (GrabFood/GoFood) ─────────────────────────── */
.cbz-platform-card {
  border-radius:var(--radius-xl); padding:2rem 1.5rem;
  text-align:center; border:2px solid transparent;
  transition:all var(--transition-slow); cursor:pointer;
  position:relative; overflow:hidden;
}
.cbz-platform-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-xl); }

/* ── GALLERY ─────────────────────────────────────────────────── */
.cbz-gallery-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  grid-template-rows:repeat(3, minmax(0, 1fr));
  gap:12px;
}
.cbz-gallery-grid .cbz-gallery-item:first-child {
  grid-column:span 2; grid-row:span 2;
}
.cbz-gallery-item {
  border-radius:var(--radius-lg); overflow:hidden;
  position:relative; background:var(--cbz-blue-pale);
  min-height:0;
}
.cbz-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.cbz-gallery-item:hover img { transform:scale(1.06); }
.cbz-gallery-item::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(13,71,161,.5) 0%, transparent 60%);
  opacity:0; transition:opacity var(--transition);
}
.cbz-gallery-item:hover::after { opacity:1; }

/* ── TRUST BADGES ────────────────────────────────────────────── */
.cbz-trust-item {
  display:flex; align-items:center; gap:.75rem;
  padding:.75rem 1.5rem; border-radius:50px;
  background:#fff; border:1.5px solid rgba(21,101,192,.1);
  font-weight:700; font-size:.85rem; color:var(--cbz-dark);
  white-space:nowrap; transition:all var(--transition);
}
.cbz-trust-item:hover { box-shadow:var(--shadow); border-color:var(--cbz-blue); }

/* ── SCROLL INDICATOR ────────────────────────────────────────── */
.cbz-scroll-indicator {
  display:flex; flex-direction:column; align-items:center; gap:.4rem;
  color:rgba(10,25,41,.45); font-size:.72rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; cursor:pointer;
  transition:color var(--transition);
}
.cbz-scroll-indicator:hover { color:var(--cbz-blue); }
.cbz-scroll-mouse {
  width:22px; height:36px; border:2px solid currentColor;
  border-radius:11px; display:flex; justify-content:center; padding-top:6px;
}
.cbz-scroll-wheel {
  width:3px; height:6px; background:currentColor; border-radius:2px;
  animation:scrollWheel 1.6s ease-in-out infinite;
}
@keyframes scrollWheel {
  0%   { transform:translateY(0); opacity:1; }
  100% { transform:translateY(10px); opacity:0; }
}

/* ── ANIMATIONS ──────────────────────────────────────────────── */
@keyframes fadeSlideDown  { from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeSlideUp    { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeSlideLeft  { from{opacity:0;transform:translateX(20px)} to{opacity:1;transform:translateX(0)} }
@keyframes fadeSlideRight { from{opacity:0;transform:translateX(-20px)} to{opacity:1;transform:translateX(0)} }
@keyframes floatY    { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes floatYSlow{ 0%,100%{transform:translateY(0) rotate(-2deg)} 50%{transform:translateY(-8px) rotate(2deg)} }
@keyframes pulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.04)} }
@keyframes shimmer { 0%{background-position:-200% 0} 100%{background-position:200% 0} }
@keyframes spinSlow { to{transform:rotate(360deg)} }
@keyframes bounceIn { 0%{transform:scale(.8);opacity:0} 60%{transform:scale(1.05)} 100%{transform:scale(1);opacity:1} }
@keyframes glow {
  0%,100% { box-shadow:0 0 20px rgba(21,101,192,.3); }
  50%      { box-shadow:0 0 40px rgba(21,101,192,.6); }
}

.cbz-float     { animation:floatY 3s ease-in-out infinite; }
.cbz-float-2   { animation:floatY 3.5s .5s ease-in-out infinite; }
.cbz-float-3   { animation:floatYSlow 4s ease-in-out infinite; }
.cbz-pulse     { animation:pulse 2.5s ease-in-out infinite; }
.cbz-spin-slow { animation:spinSlow 20s linear infinite; }
.cbz-glow      { animation:glow 2.5s ease-in-out infinite; }

/* Scroll reveal */
.cbz-reveal       { opacity:0; transform:translateY(30px); transition:opacity .65s var(--ease), transform .65s var(--ease); }
.cbz-reveal-left  { opacity:0; transform:translateX(-30px); transition:opacity .65s var(--ease), transform .65s var(--ease); }
.cbz-reveal-right { opacity:0; transform:translateX(30px); transition:opacity .65s var(--ease), transform .65s var(--ease); }
.cbz-reveal-zoom  { opacity:0; transform:scale(.9); transition:opacity .6s var(--ease), transform .6s var(--ease-spring); }
.cbz-reveal.visible, .cbz-reveal-left.visible, .cbz-reveal-right.visible, .cbz-reveal-zoom.visible {
  opacity:1; transform:none;
}
.delay-100{transition-delay:.1s!important} .delay-200{transition-delay:.2s!important}
.delay-300{transition-delay:.3s!important} .delay-400{transition-delay:.4s!important}
.delay-500{transition-delay:.5s!important} .delay-600{transition-delay:.6s!important}

/* ── STRIPES DECORATION ──────────────────────────────────────── */
.cbz-stripes {
  background:repeating-linear-gradient(-45deg,rgba(255,193,7,.15),rgba(255,193,7,.15) 8px,transparent 8px,transparent 20px);
}
.cbz-stripes-dark {
  background:repeating-linear-gradient(-45deg,rgba(255,255,255,.04),rgba(255,255,255,.04) 8px,transparent 8px,transparent 20px);
}

/* ── SKELETON ────────────────────────────────────────────────── */
.cbz-skeleton {
  background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);
  background-size:200% 100%; animation:shimmer 1.5s infinite; border-radius:var(--radius-sm);
}

/* ── SCROLLBAR ───────────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:var(--cbz-blue-xp); }
::-webkit-scrollbar-thumb { background:var(--cbz-blue); border-radius:6px; }

/* ── ALERTS ──────────────────────────────────────────────────── */
.cbz-alert { display:flex; align-items:flex-start; gap:.75rem; padding:1rem 1.2rem; border-radius:var(--radius); font-size:.9rem; font-weight:600; animation:fadeSlideDown .3s ease; }
.cbz-alert-success { background:#E8F5E9; color:#1B5E20; border:1px solid #A5D6A7; }
.cbz-alert-error   { background:#FFEBEE; color:#B71C1C; border:1px solid #EF9A9A; }
.cbz-alert-warning { background:#FFFDE7; color:#F57F17; border:1px solid #FFE082; }
.cbz-alert-info    { background:var(--cbz-blue-pale); color:var(--cbz-blue-dk); border:1px solid #90CAF9; }

/* ── PAGINATION ──────────────────────────────────────────────── */
.pagination { display:flex; gap:.35rem; flex-wrap:wrap; align-items:center; }
.pagination > * { min-width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:var(--radius-sm); font-size:.85rem; font-weight:700; transition:all var(--transition); padding:0 .5rem; }
.pagination a { background:#fff; color:var(--cbz-blue); border:1.5px solid var(--cbz-blue-pale); }
.pagination a:hover { background:var(--cbz-blue); color:#fff; border-color:var(--cbz-blue); }
.pagination span[aria-current="page"] > span, .pagination .active { background:var(--cbz-blue); color:#fff; border:1.5px solid var(--cbz-blue); }

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media(max-width:1024px){ :root{ --section-py:80px; } }
@media(max-width:768px){
  .cbz-wa-float .wa-label { display:none; }
  .cbz-wa-float { padding:.8rem; border-radius:50%; }
  .cbz-gallery-grid { grid-template-columns:repeat(2,1fr); }
  .cbz-gallery-grid .cbz-gallery-item:first-child { grid-column:span 1; grid-row:span 1; }
}
@media(max-width:480px){
  .cbz-gallery-grid { grid-template-columns:1fr 1fr; gap:8px; }
}
@media print {
  .cbz-nav, .cbz-wa-float, .cbz-back-top { display:none; }
}