:root {
    --lightt-color: #6fabc6;
    --dark-color: #0D1F32;
    --activities-loader-bar-color: #205a98;
    --events-loader-bar-color: #2462a4;
    --header-topper-text-color: #0D1F32;
    --header-text: #06121f;
    --header-2-text-color: #1a3d63;
    --header-bottom-text: #85733c;
    --staycation-text-color-1: #8c8269;
    --staycation-text-color-2: #6fabc6;
    --gold-color: var(--lightt-color);
    /* Descriptive Brand Alias */

    /* Neutral Palette */
    --white: #ffffff;
    --off-white: #f2f2f2;
    --light-ivory: #f4f1e9;
    --pure-black: #000000;
    --glass-background: rgba(13, 31, 50, 0.95);
    --glass-background-light: rgba(13, 31, 50, 0.7);

    /* Global Responsive Variables */
    --fs-logo: 3.2rem;
    --fs-phone: 3.2rem;

    /* Unified Font Sizing */
    --fs-display: 4rem;
    /* Large Hero Headings */
    --fs-h1: 3rem;
    /* Page/Section Main Headings */
    --fs-h2: 2.5rem;
    /* Secondary Section Headings */
    --fs-h3: 1.8rem;
    /* Card Titles / Component Headings */
    --fs-topper: 1.1rem;
    /* Small All-caps Category Labels */
    --fs-lead: 1.3rem;
    /* Lead/Introduction Paragraphs */
    --fs-body: 1.15rem;
    /* Standard Body Text */
    --fs-btn: 1rem;
    /* Button Text */
    --fs-small: 0.9rem;
    /* Minor UI elements */

    /* Stats Section Scaling */
    --fs-proof-count: clamp(2.2rem, 4.5vw, 3.2rem);
    --fs-proof-label: var(--fs-topper);

    /* Spacing & Layout */
    --section-pad: 80px 6vw;
    --mobile-section-pad: 50px 5vw;

    /* Breakpoints */
    --bp-tablet: 1024px;
    --bp-mobile: 768px;
    --bp-small-mobile: 480px;

    /* Hero Secondary Sections */
    --hero-mini-height: 60vh;
}

.hidden {
    display: none !important;
}

/* Global Page Title Section (Subpages) */
.hero-mini-refined {
    margin-top: 0;
    background: url('../Resource/jhari-poster.avif') center/cover fixed;
    height: var(--hero-mini-height);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.hero-overlay-dark {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(13, 31, 50, 0.4), rgba(13, 31, 50, 0.8));
    z-index: 0;
}

.hero-mini-refined h1 {
    position: relative;
    color: #fff;
    z-index: 1;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    text-transform: none;
    /* Allow Sentence Case */
    letter-spacing: 2px;
    font-weight: 500;
    font-family: 'Poiret One', cursive;
}

/* Global H1 Enforcement */
h1 {
    font-size: var(--fs-h1) !important;
}

@media (max-width: 1200px) {
    :root {
        --fs-display: 3.5rem;
        --fs-h1: 2.8rem;
        --fs-h2: 2.2rem;
        --fs-logo: 2.8rem;
        --fs-phone: 2.8rem;
        --fs-topper: 1rem;
    }
}

@media (max-width: 768px) {
    :root {
        --fs-display: 2.8rem;
        --fs-h1: 2.22rem;
        --fs-h2: 2rem;
        --fs-h3: 1.5rem;
        --fs-lead: 1.15rem;
        --fs-body: 1rem;
        --fs-logo: 2.2rem;
        --fs-phone: 2.2rem;
        --fs-topper: 0.9rem;
        --fs-body: 1rem;
        --fs-proof-count: clamp(1.8rem, 6vw, 2.5rem);
    }
}

@media (max-width: 480px) {
    :root {
        --fs-display: 2.2rem;
        --fs-h1: 1.9rem;
        --fs-h2: 1.8rem;
        --fs-h3: 1.3rem;
        --fs-logo: 1.8rem;
        --fs-phone: 1.8rem;
        --fs-topper: 0.85rem;
        --fs-proof-count: 1.8rem;
    }
}