:root{
  --bg:#f8f9fa; --card:#fff; --muted:#6c757d;
}
body.dark{
  --bg:#0b0b0c; --card:#111214; --muted:#9aa0a6;
  background: var(--bg);
  color: #e6eef5;
}
.card { background: var(--card); }
.text-muted { color: var(--muted) !important; }



.product-card {
    transition: transform .25s, box-shadow .25s;
}
.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}
/* HERO */
.hero-outer { position:relative; margin-top: -1px; }
.hero-slide {
  height: 70vh;
  min-height: 420px;
  background-size: cover;
  background-position: center;
  position: relative;
  display:flex;
  align-items:center;
}
.hero-slide::after {
  content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.45), rgba(0,0,0,0.35));
}
.hero-content { position:relative; z-index:2; padding: 4rem 0; text-shadow: 0 6px 22px rgba(0,0,0,0.45); }
.carousel-fade .carousel-item { transition: opacity .9s ease-in-out; }


/* Product cards */
.product-card { border-radius: 12px; overflow:hidden; transition: transform .28s ease, box-shadow .28s ease; }
.product-card .card-img-top { transition: transform .45s ease; }
.product-card:hover { transform: translateY(-8px); box-shadow: 0 18px 40px rgba(0,0,0,0.12); }
.product-card:hover .card-img-top { transform: scale(1.08); }
.product-card .card-body { transition: background .2s ease; }
.product-price { font-size:1.05rem; letter-spacing: .4px; }
.product-cta { opacity:0; transform: translateY(6px); transition: all .22s ease; }
.product-card:hover .product-cta { opacity:1; transform: translateY(0); }


/* instagram-like squares */
.gallery-grid { column-count: 3; column-gap: 8px; }
.gallery-item { border-radius:8px; overflow:hidden; }
.gallery-item img { width:100%; height:100%; object-fit:cover; display:block; aspect-ratio: 1/1; transition: transform .3s; }
.gallery-item:hover img { transform: scale(1.07); }


footer.bg-dark { background: linear-gradient(180deg,#0f1720,#0b0f14); }
footer .bi { transition: transform .18s, color .18s; }
footer .bi:hover { transform: translateY(-3px); color: #25D366; }

/* ===========================================
   Global Background Theme — Soft Ivory + Green
   =========================================== */

body {
    background: var(--bg-ivory);
    color: var(--text-dark);
    font-family: "Inter", sans-serif;
}

:root {
    --bg-ivory: #FAF7F2;
    --bg-light: #FFFDF8;
    --brand-green: #2F8F3A;
    --brand-green-dark: #1F6A29;
    --text-dark: #2E2E2E;
    --text-muted: #6F6F6F;
    --border-soft: #E8E3DB;
}

/* NAVBAR */
.navbar {
    background: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--border-soft);
}

.navbar .nav-link {
    color: var(--text-dark) !important;
    font-weight: 500;
}
.navbar .nav-link:hover {
    color: var(--brand-green) !important;
}

/* BUTTON */
.btn-success,
.btn-brand {
    background: var(--brand-green);
    border-color: var(--brand-green);
}
.btn-success:hover,
.btn-brand:hover {
    background: var(--brand-green-dark);
}

/* CARD */
.card {
    border: 1px solid var(--border-soft);
    background: var(--bg-light);
    border-radius: 12px;
}

/* SECTION TITLE */
.section-title {
    font-size: 2rem;
    font-weight: 700;
    color: var(--brand-green-dark);
}

/* FOOTER */
footer {
    background: #2B2B2B;
    color: white;
}
.glass-nav {
    background: rgba(255, 255, 255, 0.75) !important;
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--border-soft);
}

.header-overlay {
    background: linear-gradient(
        rgba(0,0,0,0.45),
        rgba(0,0,0,0.15)
    );
}
