/* Tirunelveli Sweets – main styles */
:root {
  --halwa-gold: #d97706;
  --halwa-amber: #b45309;
  --halwa-saffron: #ea580c;
  --halwa-cream: #fffbeb;
  --halwa-warm: #fef3c7;
  --halwa-brown: #78350f;
  --halwa-maroon: #881337;
}

* { box-sizing: border-box; }
body { font-family: 'Plus Jakarta Sans', -apple-system, sans-serif; color: #212529; overflow-x: hidden; background: #fff; }

/* Global link color – website theme (brown/gold) instead of blue */
a, a:link, a:visited { color: var(--halwa-brown); text-decoration: none; }
a:hover, a:active { color: var(--halwa-gold); text-decoration: none; }
/* Footer links stay light on dark background */
.site-footer a, .site-footer a:link, .site-footer a:visited { color: rgba(255,255,255,.85); }
.site-footer a:hover, .site-footer a:active { color: #fff; }
/* Nav bar links stay white */
.nav-bar-teal a, .top-bar a, .top-bar-mobile a { color: inherit; }
/* Bootstrap alert-link and btn-link in content */
.alert-link, .content-block .btn-link { color: var(--halwa-brown) !important; }
.alert-link:hover, .content-block .btn-link:hover { color: var(--halwa-gold) !important; }

.section { min-height: 50vh; }
.section-hidden { display: none !important; }

/* Top bar */
.top-bar { background: linear-gradient(90deg, #1a1a2e 0%, #16213e 100%); color: rgba(255,255,255,.9); font-size: 0.875rem; }
.top-bar a { color: inherit; text-decoration: none; }

/* Main header */
.main-header { background: #fff; box-shadow: 0 2px 12px rgba(0,0,0,.06); position: sticky; top: 0; z-index: 1030; }
.logo-sweets { display: inline-flex; align-items: center; gap: 0.5rem; text-decoration: none; color: #212529; font-weight: 700; font-size: 1.4rem; }
.logo-icon-sweets { width: 42px; height: 42px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.25rem; background: linear-gradient(135deg, var(--halwa-gold) 0%, var(--halwa-amber) 100%); color: #fff; }
.logo-sweets .logo-name { color: var(--halwa-brown); margin-right: 0.2rem; }
.logo-sweets .logo-tag { color: var(--halwa-gold); font-weight: 600; }
.dukaan-search { display: flex; align-items: center; background: var(--halwa-warm); border-radius: 10px; overflow: hidden; border: 1px solid rgba(217,119,6,.2); }
.dukaan-search .form-control { border: none; background: transparent; }
.dukaan-search .btn-dukaan-search { background: var(--halwa-gold); color: #fff; border: none; padding: 0.5rem 1rem; }
.header-icon-cart { position: relative; }
.cart-badge { position: absolute; top: -4px; right: -4px; background: var(--halwa-maroon); color: #fff; font-size: 0.7rem; min-width: 18px; height: 18px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.header-currency { max-width: 90px; }
/* Header actions: cart, login, logout – site theme color (no Bootstrap blue) */
.main-header .header-actions .header-nav-link,
.main-header .header-actions .header-nav-link:link,
.main-header .header-actions .header-nav-link:visited,
.main-header .header-actions .header-nav-link:focus {
  color: var(--halwa-brown);
  text-decoration: none;
  padding: 0;
  background: transparent;
  border: none;
}
.main-header .header-actions .header-nav-link:hover,
.main-header .header-actions .header-nav-link:active {
  color: var(--halwa-gold);
  text-decoration: none;
  background: transparent;
}
.main-header .header-actions .header-icon.header-nav-link {
  color: var(--halwa-brown);
}
.main-header .header-actions .header-icon.header-nav-link:hover {
  color: var(--halwa-gold);
}
.main-header .header-actions .user-email {
  color: var(--halwa-brown);
}
.main-header .header-actions .header-sep {
  color: var(--halwa-amber);
}

/* Hamburger */
.hamburger-btn { border: none; background: transparent; padding: 0.5rem; }
.hamburger-bar { display: block; width: 24px; height: 2px; background: var(--halwa-brown); margin: 5px 0; border-radius: 1px; }
.mobile-nav-links { list-style: none; padding: 0; margin: 0; }
.mobile-nav-links a { display: block; padding: 0.6rem 1rem; color: #212529; text-decoration: none; }
.mobile-nav-links a:hover { background: var(--halwa-warm); color: var(--halwa-amber); }

/* Teal nav */
.nav-bar-teal { background: linear-gradient(90deg, var(--halwa-amber) 0%, var(--halwa-gold) 100%); }
.nav-bar-teal .nav-links-teal { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0.25rem; }
.nav-bar-teal .nav-links-teal a { color: #fff; text-decoration: none; padding: 0.4rem 0.75rem; border-radius: 6px; font-weight: 500; }
.nav-bar-teal .nav-links-teal a:hover { background: rgba(255,255,255,.2); }
.btn-categories { background: rgba(255,255,255,.2); color: #fff; border: none; padding: 0.4rem 0.8rem; border-radius: 6px; }
.top-bar-mobile { background: var(--halwa-gold); color: #fff; font-size: 0.875rem; }
.top-bar-mobile a { color: inherit; text-decoration: none; }

/* ========== Home page layout & spacing ========== */
.home-page { padding-bottom: 2rem; }
.home-section { margin-bottom: 0; }
.home-hero-slider { margin-bottom: 0; }
.home-static-hero { padding: 3.5rem 0; }
.home-static-hero .hero-dukaan { border-radius: 20px; overflow: hidden; }
.home-categories { padding: 4rem 0 4.5rem; }
.home-categories .section-head { margin-bottom: 2.75rem; }
.home-specials { padding: 4rem 0 5rem; }
.home-specials .section-head { margin-bottom: 2.5rem; }
.home-specials .container { max-width: 1140px; }
#homeFeatured { margin-top: 0.5rem; }
@media (min-width: 768px) {
  .home-static-hero { padding: 4rem 0; }
  .home-categories { padding: 5rem 0 5rem; }
  .home-specials { padding: 5rem 0 6rem; }
  #homeFeatured { margin-top: 0; }
}
@media (max-width: 767px) {
  .home-static-hero { padding: 2.5rem 0; }
  .home-categories { padding: 3rem 0 3.5rem; }
  .home-specials { padding: 3rem 0 4rem; }
}

/* Hero slider */
#heroSlider.hero-slider-sweets .carousel-item { min-height: 420px; }
#heroSlider.hero-slider-sweets .hero-slide { position: relative; min-height: 420px; background-size: cover; background-position: center; background-repeat: no-repeat; }
#heroSlider.hero-slider-sweets .hero-slide-1 { background-image: linear-gradient(90deg, rgba(255,251,235,.92) 0%, rgba(254,243,199,.85) 45%, rgba(217,119,6,.25) 100%), url('https://images.unsplash.com/photo-1563805042-7684c019e1cb?w=1200'); }
#heroSlider.hero-slider-sweets .hero-slide-2 { background-image: linear-gradient(90deg, rgba(120,53,15,.88) 0%, rgba(120,53,15,.6) 50%, transparent 100%), url('https://images.unsplash.com/photo-1599487488170-d11ec9c172f0?w=1200'); }
#heroSlider.hero-slider-sweets .hero-slide-3 { background-image: linear-gradient(90deg, rgba(180,83,9,.88) 0%, rgba(120,53,15,.6) 50%, transparent 100%), url('https://images.unsplash.com/photo-1606890737304-57a1ca8a5b62?w=1200'); }
#heroSlider.hero-slider-sweets .hero-slide-4 { background-image: linear-gradient(90deg, rgba(217,119,6,.9) 0%, rgba(180,83,9,.7) 50%, transparent 100%), url('https://images.unsplash.com/photo-1556909212-d5b604d0c90d?w=1200'); }
#heroSlider.hero-slider-sweets .hero-slide-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,251,235,.4) 0%, transparent 60%); }
#heroSlider.hero-slider-sweets .hero-slide-2 .hero-slide-overlay,
#heroSlider.hero-slider-sweets .hero-slide-3 .hero-slide-overlay,
#heroSlider.hero-slider-sweets .hero-slide-4 .hero-slide-overlay { background: linear-gradient(90deg, rgba(0,0,0,.35) 0%, transparent 55%); }
#heroSlider.hero-slider-sweets .hero-slide-caption { position: relative; z-index: 2; padding: 4rem 1rem; text-align: left; max-width: 560px; }
#heroSlider.hero-slider-sweets .hero-slide-badge { display: inline-block; background: rgba(120,53,15,.2); color: var(--halwa-brown); padding: 0.35rem 0.85rem; border-radius: 50px; font-size: 0.8rem; font-weight: 600; margin-bottom: 1rem; }
#heroSlider.hero-slider-sweets .hero-slide-2 .hero-slide-badge,
#heroSlider.hero-slider-sweets .hero-slide-3 .hero-slide-badge,
#heroSlider.hero-slider-sweets .hero-slide-4 .hero-slide-badge { background: rgba(255,255,255,.25); color: #fff; }
#heroSlider.hero-slider-sweets .hero-slide-title { font-weight: 700; font-size: clamp(1.75rem, 4.5vw, 2.75rem); color: var(--halwa-brown); margin-bottom: 0.75rem; }
#heroSlider.hero-slider-sweets .hero-slide-2 .hero-slide-title,
#heroSlider.hero-slider-sweets .hero-slide-3 .hero-slide-title,
#heroSlider.hero-slider-sweets .hero-slide-4 .hero-slide-title { color: #fff; }
#heroSlider.hero-slider-sweets .hero-slide-desc { color: var(--halwa-brown); font-size: 1.05rem; margin-bottom: 1.5rem; }
#heroSlider.hero-slider-sweets .hero-slide-2 .hero-slide-desc,
#heroSlider.hero-slider-sweets .hero-slide-3 .hero-slide-desc,
#heroSlider.hero-slider-sweets .hero-slide-4 .hero-slide-desc { color: rgba(255,255,255,.95); }
#heroSlider.hero-slider-sweets .carousel-control-prev,
#heroSlider.hero-slider-sweets .carousel-control-next { width: 48px; height: 48px; background: rgba(255,255,255,.25); border-radius: 50%; top: 50%; transform: translateY(-50%); opacity: 1; border: none; }
#heroSlider.hero-slider-sweets .carousel-control-prev { left: 1rem; }
#heroSlider.hero-slider-sweets .carousel-control-next { right: 1rem; }
#heroSlider.hero-slider-sweets .carousel-indicators button { width: 10px; height: 10px; border-radius: 50%; background: rgba(255,255,255,.5); border: none; }
#heroSlider.hero-slider-sweets .carousel-indicators button.active { background: var(--halwa-gold); }
@media (max-width: 768px) {
  #heroSlider.hero-slider-sweets .carousel-item,
  #heroSlider.hero-slider-sweets .hero-slide { min-height: 320px; }
  #heroSlider.hero-slider-sweets .hero-slide-caption { text-align: center; padding: 2.5rem 1rem; max-width: 100%; }
}

/* Static hero */
.hero-sweets .hero-main-sweets { background: linear-gradient(135deg, var(--halwa-cream) 0%, var(--halwa-warm) 50%, #fde68a 100%); box-shadow: 0 8px 32px rgba(120,53,15,.12); }
.hero-main-banner { position: relative; border-radius: 16px; overflow: hidden; min-height: 280px; display: flex; align-items: center; padding: 2.5rem 2rem; }
.hero-main-bg { position: absolute; inset: 0; background: linear-gradient(90deg, var(--halwa-cream) 0%, rgba(255,251,235,.95) 50%, transparent 100%); }
.hero-main-content { position: relative; z-index: 2; }
.hero-badge { display: inline-block; background: rgba(120,53,15,.15); color: var(--halwa-brown); padding: 0.35rem 0.9rem; border-radius: 50px; font-size: 0.8rem; font-weight: 600; margin-bottom: 0.85rem; letter-spacing: 0.02em; }
.hero-main-title { color: var(--halwa-brown); font-size: 1.85rem; font-weight: 800; line-height: 1.25; }
.hero-sub { display: block; font-size: 0.95rem; color: var(--halwa-amber); margin-top: 0.35rem; font-weight: 500; }
.hero-main-img { position: absolute; right: 2rem; top: 50%; transform: translateY(-50%); max-height: 200px; border-radius: 12px; box-shadow: 0 8px 24px rgba(0,0,0,.1); }
.btn-sweets-primary { background: var(--halwa-gold); color: #fff; border: none; padding: 0.6rem 1.5rem; border-radius: 10px; font-weight: 600; text-decoration: none; display: inline-block; transition: background 0.2s, transform 0.2s; box-shadow: 0 4px 14px rgba(217,119,6,.35); }
.btn-sweets-primary:hover { background: var(--halwa-amber); color: #fff; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(217,119,6,.4); }
.hero-side-banner { padding: 1.75rem; border-radius: 14px; color: #fff; min-height: 140px; display: flex; flex-direction: column; justify-content: center; box-shadow: 0 6px 24px rgba(0,0,0,.15); transition: transform 0.25s, box-shadow 0.25s; }
.hero-side-banner:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,.2); }
.hero-side-sweets { background: linear-gradient(135deg, var(--halwa-amber) 0%, var(--halwa-brown) 100%); }
.hero-side-banner h3 { font-size: 1.15rem; font-weight: 700; margin-bottom: 0.35rem; }
.hero-side-banner p { margin-bottom: 0.75rem; }
.btn-sweets-outline { background: transparent; color: #fff; border: 2px solid rgba(255,255,255,.9); padding: 0.4rem 0.9rem; border-radius: 8px; font-weight: 600; font-size: 0.9rem; text-decoration: none; display: inline-block; transition: all 0.2s; }
.btn-sweets-outline:hover { background: #fff; color: var(--halwa-amber); }

/* Category section */
.category-section { padding: 3.5rem 0 4rem; position: relative; overflow: hidden; }
.category-section-bg { position: absolute; inset: 0; background: linear-gradient(180deg, var(--halwa-cream) 0%, rgba(254,243,199,.4) 50%, #fff 100%); pointer-events: none; }
.category-section-sweets .section-head .section-title-dukaan { font-size: 1.95rem; font-weight: 800; }
.category-section-badge { display: inline-block; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.15em; color: var(--halwa-amber); margin-bottom: 0.5rem; }
.category-title-ornament { width: 56px; height: 4px; margin: 0.85rem auto 0; background: linear-gradient(90deg, transparent, var(--halwa-gold), transparent); border-radius: 2px; }
.category-card { display: block; text-align: center; padding: 2.25rem 1.5rem; border-radius: 20px; text-decoration: none; color: inherit; height: 100%; position: relative; overflow: hidden; border: none; transition: transform 0.35s ease, box-shadow 0.35s ease; box-shadow: 0 4px 20px rgba(120,53,15,.08); background: #fff; }
.category-card:hover { transform: translateY(-10px); box-shadow: 0 24px 48px rgba(217,119,6,.2); }
.category-card-icon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 68px; height: 68px; border-radius: 18px; color: #fff; font-size: 1.75rem; margin-bottom: 1.1rem; background: linear-gradient(145deg, var(--halwa-gold) 0%, var(--halwa-amber) 100%); box-shadow: 0 8px 24px rgba(217,119,6,.25); }
.category-card-title { position: relative; font-size: 1.2rem; font-weight: 800; color: var(--halwa-brown); margin-bottom: 0.45rem; }
.category-card-desc { position: relative; font-size: 0.875rem; color: #78716c; margin-bottom: 1rem; }
.category-card-cta { position: relative; display: inline-flex; align-items: center; gap: 0.35rem; font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--halwa-gold); }
.category-card-bg { position: absolute; inset: 0; border-radius: inherit; opacity: 0.35; }
.category-card-all .category-card-bg { background: linear-gradient(135deg, var(--halwa-cream) 0%, var(--halwa-warm) 100%); }
.category-card-halwa .category-card-bg { background: linear-gradient(135deg, #fef3c7 0%, #fde68a 50%, rgba(217,119,6,.2) 100%); }
.category-card-palaharam .category-card-bg { background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 50%, rgba(180,83,9,.15) 100%); }
.category-card-gifts .category-card-bg { background: linear-gradient(135deg, #fef2f2 0%, #fecaca 40%, rgba(136,19,55,.12) 100%); }

/* Category pills (products page) */
.category-strip { padding: 1rem 1.25rem; background: linear-gradient(90deg, rgba(255,251,235,.5) 0%, transparent 100%); border-radius: 12px; }
.category-strip-label { letter-spacing: 0.06em; color: var(--halwa-brown); font-weight: 700; }
.category-pill { display: inline-flex; align-items: center; padding: 0.55rem 1.25rem; border-radius: 50px; font-weight: 700; font-size: 0.9rem; text-decoration: none; color: var(--halwa-brown); background: #fff; border: 2px solid var(--halwa-warm); transition: all 0.25s ease; }
.category-pill:hover { background: var(--halwa-warm); color: var(--halwa-amber); border-color: var(--halwa-gold); transform: translateY(-2px); }
.category-pill-sweets.active { background: linear-gradient(135deg, var(--halwa-gold) 0%, var(--halwa-amber) 100%); color: #fff; border-color: transparent; }

/* Content & section titles */
.content-block { padding: 3rem 0; }
.section-head { text-align: center; margin-bottom: 2.5rem; }
.section-title { font-size: 1.75rem; font-weight: 700; }
.section-title-sweets { color: var(--halwa-brown) !important; }
.section-title-dukaan { font-size: 1.5rem; font-weight: 700; color: #111; }
.section-subtitle { color: #6c757d; }
.deals-countdown { display: flex; gap: 1rem; flex-wrap: wrap; font-size: 0.9rem; color: #555; }
.deals-countdown span { font-weight: 600; color: #111; }

/* Products page search & filters (section-products = products.php wrapper) */
#section-products .search-box.search-box-inline,
.content-block .search-box.search-box-inline { display: flex; align-items: center; gap: 0.5rem; background: var(--halwa-cream); border: 2px solid var(--halwa-warm); border-radius: 12px; padding: 0.5rem 1rem; min-height: 48px; }
#section-products .search-box.search-box-inline:focus-within,
.content-block .search-box.search-box-inline:focus-within { border-color: var(--halwa-gold); box-shadow: 0 0 0 3px rgba(217,119,6,.15); }
#section-products .search-box.search-box-inline i,
.content-block .search-box.search-box-inline i { color: var(--halwa-amber); font-size: 1.15rem; flex-shrink: 0; }
#section-products .search-box.search-box-inline .form-control,
.content-block .search-box.search-box-inline .form-control { flex: 1; min-width: 0; border: none; background: transparent; }
#section-products .form-select,
.content-block .form-select.form-select-lg { border: 2px solid var(--halwa-warm); border-radius: 12px; background: var(--halwa-cream); color: var(--halwa-brown); font-weight: 500; }
#section-products .form-select:focus,
.content-block .form-select.form-select-lg:focus { border-color: var(--halwa-gold); box-shadow: 0 0 0 3px rgba(217,119,6,.15); }

/* Products page pagination */
#section-products .pagination .page-link { color: var(--halwa-brown); border-color: var(--halwa-warm); background: #fff; }
#section-products .pagination .page-link:hover { color: var(--halwa-gold); background: var(--halwa-cream); border-color: var(--halwa-gold); }
#section-products .pagination .page-item.active .page-link { background: var(--halwa-gold); border-color: var(--halwa-gold); color: #fff; }

/* Products empty state */
.products-empty-state { padding: 3rem 1.5rem !important; }
.products-empty-icon { width: 80px; height: 80px; margin: 0 auto 1rem; border-radius: 50%; background: var(--halwa-cream); border: 2px solid var(--halwa-warm); display: inline-flex; align-items: center; justify-content: center; font-size: 2.25rem; color: var(--halwa-amber); }
.products-empty-title { font-size: 1.35rem; font-weight: 700; color: var(--halwa-brown); margin-bottom: 0.35rem; }
.products-empty-desc { color: #78716c; font-size: 0.95rem; margin: 0; }

/* Product cards */
.product-card { border: none; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,.06); transition: transform .25s, box-shadow .25s; }
.product-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(0,0,0,.12); }
.product-card .card-img-top { height: 220px; object-fit: cover; background: #f8f9fa; }
.product-card .card-title { font-weight: 600; font-size: 1rem; }
.product-card .card-title a { color: var(--halwa-brown); }
.product-card .card-title a:hover { color: var(--halwa-gold); }
.product-card .price { font-weight: 700; color: var(--halwa-gold); font-size: 1.1rem; }
.product-card .price .sale { color: #dc3545; text-decoration: line-through; font-size: .9rem; margin-right: 0.35rem; }

/* Feature blocks */
.features-dukaan { padding: 0 0 1.5rem; }
.feature-block { background: #fff; border: 1px solid #e9ecef; border-radius: 0; padding: 1.5rem; text-align: center; height: 100%; }
.feature-block-icon { font-size: 2rem; color: var(--halwa-gold); margin-bottom: 0.5rem; }
.feature-block h6 { font-weight: 600; margin-bottom: 0.35rem; }
.feature-sweets .feature-block-icon { color: var(--halwa-gold) !important; }

/* Cart & checkout */
.cart-list .cart-item { display: flex; justify-content: space-between; align-items: center; padding: 1.25rem 0; border-bottom: 1px solid #eee; }
.cart-footer { margin-top: 2rem; padding-top: 1.5rem; border-top: 2px solid #eee; }
.cart-amount { color: var(--halwa-gold); }
.empty-state { text-align: center; padding: 4rem 2rem; }
.empty-state i { font-size: 4rem; color: #dee2e6; }
.checkout-card, .order-summary-card { background: #fff; border: 1px solid #eee; border-radius: 12px; padding: 1.5rem; margin-bottom: 1.5rem; }
.order-summary-card { position: sticky; top: 100px; box-shadow: 0 4px 20px rgba(0,0,0,.08); }

/* Admin */
.admin-sidebar { background: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%); border-radius: 16px; padding: 1.5rem; }
.admin-sidebar .sidebar-title { color: rgba(255,255,255,.6); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 1rem; }
.admin-sidebar .nav-link { color: rgba(255,255,255,.85); border-radius: 10px; padding: 0.65rem 0.75rem; margin-bottom: 2px; }
.admin-sidebar .nav-link:hover { background: rgba(255,255,255,.1); color: #fff; }
.admin-sidebar .nav-link.active { background: var(--halwa-gold); color: #fff; }
.admin-card { background: #fff; border-radius: 12px; padding: 1.5rem; box-shadow: 0 2px 12px rgba(0,0,0,.06); margin-bottom: 1.5rem; }
.admin-card h5 { margin-bottom: 1rem; }
.table-orders td { vertical-align: middle; }

/* Footer */
.site-footer { margin-top: 4rem; color: rgba(255,255,255,.85); }
.site-footer .footer-main { background: linear-gradient(180deg, var(--halwa-brown) 0%, #92400e 50%, var(--halwa-amber) 100%); padding: 0 0 1rem; }
.footer-brand { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 700; font-size: 1.5rem; color: #fff; margin-bottom: 1rem; }
.footer-brand-sweets .logo-icon-sweets { background: rgba(255,255,255,.25); }
.footer-desc { color: rgba(255,255,255,.7); font-size: 0.95rem; line-height: 1.6; }
.footer-heading { font-size: 0.9rem; font-weight: 700; color: #fff; margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 0.05em; }
.site-footer nav .footer-heading { font-size: 0.85rem; }
.site-footer .list-unstyled { margin: 0; padding: 0; list-style: none; }
.site-footer .list-unstyled a { color: rgba(255,255,255,.85); text-decoration: none; }
.site-footer .list-unstyled a:hover { color: #fff; }
.footer-bottom { background: rgba(0,0,0,.2); }
.footer-bottom a { color: rgba(255,255,255,.8); }
.footer-bottom a:hover { color: #fff; }
.footer-sep { margin: 0 0.35rem; opacity: 0.8; }

/* Contact page */
.contact-card { background: var(--halwa-cream); border: 1px solid var(--halwa-warm); }
.contact-icon { width: 48px; height: 48px; min-width: 48px; background: linear-gradient(135deg, var(--halwa-gold), var(--halwa-amber)); color: #fff; font-size: 1.25rem; }
.contact-form-card { background: #fff; border: 1px solid #eee; }
.contact-form-card .form-control { border: 2px solid var(--halwa-warm); border-radius: 8px; }
.contact-form-card .form-control:focus { border-color: var(--halwa-gold); box-shadow: 0 0 0 3px rgba(217,119,6,.15); }
.map-wrap { background: #eee; min-height: 320px; }
.map-wrap iframe { display: block; min-height: 320px; height: 380px; }
@media (min-width: 992px) { .map-wrap iframe { height: 100%; min-height: 360px; } }

/* Legal pages (Privacy, Terms) */
.legal-page h1 { color: var(--halwa-brown); font-weight: 800; }
.legal-page section h2 { color: var(--halwa-brown); }
.legal-page ul { padding-left: 1.25rem; }
.legal-page li { margin-bottom: 0.35rem; }

.btn-primary { background: var(--halwa-gold); border-color: var(--halwa-gold); }
.btn-primary:hover { background: var(--halwa-amber); border-color: var(--halwa-amber); }

/* Force header nav links to theme color (override Bootstrap blue) */
.main-header .header-actions a:not(.header-nav-link) { color: var(--halwa-brown); }
.main-header .header-actions a:not(.header-nav-link):hover { color: var(--halwa-gold); }
.main-header { --bs-link-color: var(--halwa-brown); --bs-link-hover-color: var(--halwa-gold); }
.main-header .header-actions a { color: var(--halwa-brown); }
.main-header .header-actions a:hover { color: var(--halwa-gold); }
