﻿:root {
            /* 60% PRIMARY */
            --color-primary:       #123e00;
            --color-primary-light: #1a5a00;
            --color-primary-dark:  #0a2a00;

            /* 30% SECONDARY */
            --color-secondary:       #F5F0E8;
            --color-secondary-dark:  #e8ddd0;
            --color-secondary-light: #faf8f4;

            /* 10% ACCENT */
            --color-accent:       #C9A84C;
            --color-accent-light: #dbb95c;
            --color-accent-dark:  #b8963c;

            /* SUPPORTING */
            --color-text:       #2C2C2C;
            --color-text-light: #666666;
            --color-white:      #FFFFFF;
            --color-bg:         #FAF8F4;

            /* GRADIENTS */
            --gradient-hero: linear-gradient(135deg, #123e00 0%, #1a5a00 50%, #0a2a00 100%);
            --gradient-gold: linear-gradient(135deg, #C9A84C 0%, #dbb95c 100%);

            /* SHADOWS */
            --shadow-sm:   0 2px 8px  rgba(18, 62, 0, 0.08);
            --shadow-md:   0 8px 30px rgba(18, 62, 0, 0.12);
            --shadow-lg:   0 15px 50px rgba(18, 62, 0, 0.20);
            --shadow-gold: 0 4px 20px rgba(201, 168, 76, 0.35);

            /* TYPOGRAPHY */
            --font-heading: Georgia, 'Times New Roman', serif;
            --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

            /* SPACING */
            --section-py: 80px;
            --border-radius: 12px;
            --border-radius-sm: 6px;
            --border-radius-lg: 20px;

            /* TRANSITIONS */
            --transition: 0.3s ease;
        }

        /* â”€â”€ Global Resets â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        *,
        *::before,
        *::after { box-sizing: border-box; }

        html { scroll-behavior: smooth; }

        body {
            font-family: var(--font-body);
            color: var(--color-text);
            background-color: var(--color-bg);
            padding-top: 75px; /* compensate for fixed navbar */
            overflow-x: hidden;
        }

        a { text-decoration: none; transition: color var(--transition); }
        img { max-width: 100%; height: auto; }

        /* â”€â”€ Navbar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .navbar-isp {
            background-color: var(--color-primary) !important;
            padding: 0.85rem 0;
            box-shadow: 0 2px 20px rgba(0, 0, 0, 0.25);
            transition: background-color var(--transition), box-shadow var(--transition);
        }

        /* Scrolled state applied via JS */
        .navbar-isp.scrolled {
            background-color: var(--color-primary-dark) !important;
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.40);
        }

        /* â”€â”€ Logo â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .navbar-isp .navbar-brand {
            display: flex;
            align-items: center;
            gap: 0.6rem;
            font-family: var(--font-heading);
            font-size: 1.55rem;
            font-weight: 700;
            letter-spacing: -0.5px;
            line-height: 1;
            color: var(--color-white) !important;
            text-decoration: none;
        }

        /* Logo image â€“ circular crop */
        .navbar-logo-img {
            width: 46px;
            height: 46px;
            border-radius: 50%;
            object-fit: cover;
            object-position: center top;   /* show icon portion */
            border: 2px solid var(--color-accent);
            box-shadow: 0 0 0 3px rgba(201,168,76,0.20);
            flex-shrink: 0;
            background: var(--color-white);
            transition: transform var(--transition), box-shadow var(--transition);
        }
        .navbar-isp .navbar-brand:hover .navbar-logo-img {
            transform: rotate(-5deg) scale(1.05);
            box-shadow: 0 0 0 4px rgba(201,168,76,0.40);
        }

        .navbar-isp .navbar-brand .brand-is {
            color: var(--color-white);
        }

        .navbar-isp .navbar-brand .brand-properties {
            color: var(--color-accent);
        }

        .navbar-isp .navbar-brand .brand-tagline {
            display: block;
            font-family: var(--font-body);
            font-size: 0.55rem;
            font-weight: 500;
            letter-spacing: 2.5px;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.65);
            line-height: 1;
            margin-top: 2px;
        }

        /* â”€â”€ Nav Links â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .navbar-isp .nav-link {
            color: rgba(255, 255, 255, 0.88) !important;
            font-size: 0.875rem;
            font-weight: 500;
            letter-spacing: 0.3px;
            padding: 0.45rem 0.9rem !important;
            border-radius: var(--border-radius-sm);
            position: relative;
            transition: color var(--transition), background-color var(--transition);
        }

        .navbar-isp .nav-link::after {
            content: '';
            position: absolute;
            bottom: 2px;
            left: 50%;
            transform: translateX(-50%) scaleX(0);
            width: calc(100% - 1.8rem);
            height: 2px;
            background: var(--color-accent);
            border-radius: 2px;
            transition: transform var(--transition);
        }

        .navbar-isp .nav-link:hover {
            color: var(--color-accent) !important;
        }

        .navbar-isp .nav-link:hover::after,
        .navbar-isp .nav-link.active::after {
            transform: translateX(-50%) scaleX(1);
        }

        .navbar-isp .nav-link.active {
            color: var(--color-accent) !important;
            font-weight: 600;
        }

        /* â”€â”€ Request Property Button â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .btn-request {
            background: var(--gradient-gold) !important;
            color: var(--color-primary-dark) !important;
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.4px;
            padding: 0.5rem 1.2rem !important;
            border-radius: 50px !important;
            border: none !important;
            box-shadow: var(--shadow-gold);
            transition: transform var(--transition), box-shadow var(--transition), filter var(--transition);
            white-space: nowrap;
        }

        .btn-request:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 28px rgba(201, 168, 76, 0.55);
            filter: brightness(1.08);
            color: var(--color-primary-dark) !important;
        }

        .btn-request:active {
            transform: translateY(0);
        }

        /* â”€â”€ Mobile Toggler â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .navbar-toggler {
            border-color: rgba(255, 255, 255, 0.3) !important;
            padding: 0.35rem 0.6rem;
        }

        .navbar-toggler-icon {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255%2C255%2C255%2C0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
        }

        /* â”€â”€ Announcement banner (optional) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .top-bar {
            background-color: var(--color-primary-dark);
            color: rgba(255, 255, 255, 0.75);
            font-size: 0.78rem;
            padding: 0.35rem 0;
            position: fixed;
            top: 75px;
            left: 0;
            right: 0;
            z-index: 1029;
        }

        .top-bar a {
            color: var(--color-accent);
        }

        .top-bar a:hover {
            color: var(--color-accent-light);
        }

        /* â”€â”€ Flash messages â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        .flash-container {
            position: fixed;
            top: 85px;
            right: 20px;
            z-index: 1060;
            min-width: 300px;
            max-width: 420px;
        }