/* =====================================================================
   TENET EVENT PRODUCTION - Public Site Base Stylesheet
   Deep forest green + antique gold luxury theme
   ===================================================================== */

:root {
    --c-green-950: #050f0a;
    --c-green-900: #0b1f16;
    --c-green-800: #10291d;
    --c-green-700: #163826;
    --c-green-600: #1e4a32;
    --c-gold-300: #f0dca0;
    --c-gold-400: #e8c877;
    --c-gold-500: #d4af37;
    --c-gold-600: #b8942c;
    --c-cream-50: #faf8f2;
    --c-cream-100: #f2ede1;
    --c-ink: #17201a;
    --c-muted: #6f7d73;
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 22px;
    --font-display: 'Playfair Display', Georgia, serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-hindi: 'Hind', 'Noto Sans Devanagari', var(--font-body);
    --shadow-soft: 0 10px 40px rgba(6, 18, 13, 0.12);
    --shadow-gold: 0 8px 30px rgba(212, 175, 55, 0.25);
    --container-w: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--font-body);
    color: var(--c-ink);
    background: var(--c-cream-50);
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }

.container { max-width: var(--container-w); margin: 0 auto; padding: 0 20px; }

.gold-text { color: var(--c-gold-500); }
.eyebrow {
    font-size: 12px; letter-spacing: .18em; text-transform: uppercase;
    color: var(--c-gold-600); font-weight: 600;
}

h1, h2, h3, .font-display { font-family: var(--font-display); }

.btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 13px 28px; border-radius: 999px;
    font-size: 14px; font-weight: 600; cursor: pointer; border: none;
    transition: transform .18s ease, box-shadow .18s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-gold { background: linear-gradient(135deg, var(--c-gold-400), var(--c-gold-600)); color: #241c04; box-shadow: var(--shadow-gold); }
.btn-outline-light { background: transparent; border: 1.5px solid rgba(250,248,242,.4); color: var(--c-cream-50); }
.btn-outline-dark { background: transparent; border: 1.5px solid var(--c-green-800); color: var(--c-green-900); }
.btn-dark { background: var(--c-green-900); color: var(--c-cream-50); }
.btn-whatsapp { background: #25D366; color: #fff; }

.card {
    background: #fff; border-radius: var(--radius-md);
    box-shadow: var(--shadow-soft); border: 1px solid #eee7d6;
    padding: 24px;
}

.badge { display: inline-block; padding: 4px 12px; border-radius: 999px; font-size: 11.5px; font-weight: 700; letter-spacing: .03em; }
.badge-pending { background: #fdf1d6; color: #b8860b; }
.badge-confirmed, .badge-accepted, .badge-paid { background: #dff2e6; color: #2e7d4f; }
.badge-rejected, .badge-cancelled, .badge-failed { background: #fbe2df; color: #c0392b; }

/* Simple utility page header (used by track-booking, quotation-view etc.) */
.util-header {
    background: linear-gradient(150deg, var(--c-green-950), var(--c-green-800));
    color: var(--c-cream-50);
    padding: 26px 0;
}
.util-header .brand { display: flex; align-items: center; gap: 12px; }
.util-header .mark {
    width: 42px; height: 42px; border: 1.5px solid var(--c-gold-500); border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-family: var(--font-display); color: var(--c-gold-400); font-weight: 700; font-size: 18px;
}
.util-header .brand-name { font-family: var(--font-display); font-size: 17px; letter-spacing: .03em; }
.util-header .brand-name small { display: block; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--c-gold-400); font-family: var(--font-body); }

.util-body { padding: 40px 0 70px; min-height: 60vh; }

.sticky-cta {
    position: fixed; bottom: 0; left: 0; right: 0; z-index: 50;
    background: var(--c-green-950); display: none;
    padding: 10px 14px; gap: 8px;
}
.sticky-cta a { flex: 1; text-align: center; padding: 12px 8px; border-radius: 10px; font-size: 12.5px; font-weight: 700; }
@media (max-width: 780px) {
    .sticky-cta { display: flex; }
    body { padding-bottom: 62px; }
}

table.simple-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
table.simple-table th { text-align: left; padding: 10px 12px; background: var(--c-cream-100); color: var(--c-green-900); font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; }
table.simple-table td { padding: 10px 12px; border-bottom: 1px solid #efe9da; }

@media print {
    .no-print { display: none !important; }
    body { background: #fff; }
    .util-header { background: #fff !important; color: #000 !important; border-bottom: 2px solid #000; }
    .util-header .mark { color: #000; border-color: #000; }
    .util-header .brand-name small { color: #444; }
}
