/* ==========================================================================
   1. Google Fonts Link (Always Keep at the very top)
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap');

/* ==========================================================================
   2. Design System Tokens & Global Settings
   ========================================================================== */
:root {
    --background: #050402;
    /* Perfect deep matte black match */
    --foreground: #ffffff;
    --primary: #d4af37;
    /* Premium Metallic Gold */
    --primary-foreground: #000000;
    --muted-foreground: #a3a19d;
}

body {
    background-color: var(--background);
    color: var(--foreground);
    font-family: 'Inter', sans-serif;
}

/* ==========================================================================
   3. Premium Navigation Bar (Header) Styling
   ========================================================================== */
.custom-navbar {
    background-color: var(--background);
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid rgba(212, 175, 55, 0.15);
    /* Clean thin divider line */
}

/* Metallic Gold Circle with Soft Ambient Neon Glow */
.logo-circle {
    width: 62px;
    height: 62px;
    background: radial-gradient(circle, #f3c63f 0%, var(--primary) 100%);
    border-radius: 50%;
    box-shadow: 0 0 25px 6px rgba(212, 175, 55, 0.45);
}

/* Circle Inside Character 'S' Styling */
.logo-letter {
    font-size: 38px;
    font-weight: 700;
    color: #030201;
    font-family: 'Times New Roman', 'Georgia', serif;
    line-height: 1;
    transform: translateY(-2px);
    /* Visual vertical centering adjustment */
}

/* 'S Gold' Title - Sharp Serif Typography Layout */
.logo-title {
    font-family: 'Times New Roman', 'Georgia', serif;
    font-size: 38px;
    font-weight: 700;
    color: var(--primary);
    line-height: 1.05;
    letter-spacing: 0.2px;
}

/* 'Cash for Gold' Subtitle Layout */
.logo-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #8c8882;
    letter-spacing: 0.5px;
    margin-top: 2px !important;
}

.navbar-nav .nav-link {
    font-size: 16px;
    font-weight: 500;
    color: #ffffff !important;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
}

.navbar-nav .nav-link:hover {
    color: var(--primary) !important;
}

.contact-link {
    transition: opacity 0.3s ease;
}

.contact-link:hover {
    opacity: 0.85;
}

/* ==========================================================================
   4. Hero Section Core Layout (1:1 Tailwind Emulation Map)
   ========================================================================== */
.hero-section-wrapper {
    min-height: 100vh !important;
}

/* Absolute Positioning & Layout Utilities */
.inset-0 {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.z-0 {
    z-index: 0;
}

.z-10 {
    z-index: 10;
}

.shrink-0 {
    flex-shrink: 0;
}

.inline-flex {
    display: inline-flex;
}

/* Background Hero Image Layer with Mask Opacity-30 */
.hero-bg-img {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
    opacity: 0.30;
}

/* Smooth Background Gradient Mask Overlay */
.bg-custom-gradient {
    background: linear-gradient(90deg,
            var(--background) 0%,
            rgba(5, 4, 2, 0.90) 45%,
            rgba(5, 4, 2, 0.70) 100%);
}

/* Structural Max-Width Rules */
.max-w-3xl {
    max-width: 48rem;
}

.max-w-2xl {
    max-width: 42rem;
}

.max-w-lg {
    max-width: 32rem;
}

/* Precise Tailwind Margin Spacing Adaptations */
.mb-8-custom {
    margin-bottom: 2rem !important;
}

.mt-16-custom {
    margin-top: 4rem !important;
}

/* Custom Serif Font Stack */
.font-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* High-Impact Hero Typography Details */
.text-hero-big {
    font-size: 115px;
    line-height: 0.9;
    letter-spacing: -0.025em;
    margin-left: -5px !important;
}

.text-3xl {
    font-size: 1.875rem;
}

.text-2xl {
    font-size: 1.5rem;
}

.text-xl {
    font-size: 1.25rem;
}

.text-lg {
    font-size: 1.125rem;
}

.text-sm {
    font-size: 0.875rem;
}

.leading-none {
    line-height: 1 !important;
}

.leading-relaxed {
    line-height: 1.625;
}

.tracking-wide {
    letter-spacing: 0.05em !important;
}

.drop-shadow-lg {
    filter: drop-shadow(0 10px 8px rgba(0, 0, 0, 0.6)) drop-shadow(0 4px 3px rgba(0, 0, 0, 0.4));
}

/* Helper Utilities mapped from original properties */
.text-primary {
    color: var(--primary) !important;
}

.text-foreground {
    color: var(--foreground) !important;
}

.text-muted-foreground {
    color: #9d8d6c !important;
}

.bg-primary {
    background-color: var(--primary) !important;
}

.text-primary-foreground {
    color: var(--primary-foreground) !important;
}

.bg-green-600 {
    background-color: #16a34a !important;
}

/* Buttons Custom Interactions */
.py-2-5 {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

.hover-bg-primary-dark:hover {
    background-color: #bfa032 !important;
    transition: background-color 0.2s ease-in-out;
}

.hover-bg-green-700:hover {
    background-color: #15803d !important;
    transition: background-color 0.2s ease-in-out;
}

.btn-gallery-outline {
    border: 1px solid var(--primary);
    background-color: transparent;
    transition: all 0.2s ease-in-out;
}

.hover-bg-primary-light:hover {
    background-color: rgba(212, 175, 55, 0.1) !important;
    color: var(--primary) !important;
}

/* Footer Stats Metric Matrix Grid */
.grid-cols-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* ==========================================================================
   5. Global Responsive Breakpoints (Mobile & Tablet Layout Optimization)
   ========================================================================== */
@media (max-width: 1199.98px) {
    .text-hero-big {
        font-size: 84px;
    }

    /* Fallback to md:text-8xl specs */
    .text-3xl {
        font-size: 1.5rem;
    }

    /* md:text-4xl specs */
}

@media (max-width: 991.98px) {
    .navbar-collapse {
        background-color: #0c0a07;
        /* Dark overlay drawer box for mobile view */
        padding: 25px;
        border-radius: 12px;
        margin-top: 15px;
        border: 1px solid rgba(212, 175, 55, 0.2);
    }

    .navbar-nav {
        gap: 10px !important;
    }
}

@media (max-width: 767.98px) {
    .text-hero-big {
        font-size: 60px;
    }

    /* Mobile text-6xl scaling specs */
    .text-3xl {
        font-size: 1.35rem;
    }

    .text-2xl {
        font-size: 1.25rem;
    }

    .text-xl {
        font-size: 1.1rem;
    }
}

/* ==========================================================================
   Button Adjustments (1:1 Match from image_10c9c0.png)
   ========================================================================== */

/* Call Us Button Custom Palette Styling */
.btn-custom-phone {
    background-color: #dfa10d !important; /* Exact warm golden yellow tone from the image */
    border-radius: 12px !important;       /* Soft smooth curved corners match */
    min-width: 280px;                    /* Maintains corporate proportion width */
    transition: all 0.25s ease-in-out;
}

.btn-custom-phone:hover {
    background-color: #c78f0b !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(223, 161, 13, 0.2);
}

/* WhatsApp Button Custom Palette Styling */
.btn-custom-whatsapp {
    background-color: #00aa4b !important; /* Exact energetic brand green match */
    border-radius: 12px !important;       /* Consistent corner behavior */
    min-width: 280px;
    transition: all 0.25s ease-in-out;
}

.btn-custom-whatsapp:hover {
    background-color: #00913f !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 170, 75, 0.2);
}

/* Custom Vector Stroke Weights adjustment for minimal phone icon layout */
.line-icon-stroke {
    -webkit-text-stroke: 0.5px currentColor; /* Ensures clear thin silhouette layout */
}

/* ==========================================================================
   Premium Gallery Button (1:1 Match from image_10b6a0.png)
   ========================================================================== */
.btn-gallery-premium-outline {
    font-family: 'Inter', sans-serif;
    font-size: 18px !important;                 /* Exact comfortable text scale */
    font-weight: 500 !important;                /* Clean medium font weight */
    color: #dfa10d !important;                  /* Matching precise golden typography tone */
    background-color: transparent !important;   /* No solid color backdrop filling */
    border: 1.5px solid #dfa10d !important;     /* Thin premium high-fidelity outline stroke */
    border-radius: 10px !important;             /* Smooth exact matching layout border radius */
    padding: 0.65rem 2.2rem !important;        /* Perfect padding proportion metrics */
    min-width: 200px;                           /* Professional desktop block width standard */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Smooth Premium Interactions */
.btn-gallery-premium-outline:hover {
    color: #ffffff !important;
    background-color: rgba(223, 161, 13, 0.12) !important; /* Premium light gold ambient glow hover tint */
    border-color: #dfa10d !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(223, 161, 13, 0.15);
}

/* Mobile fluid scaling alignment adjustments */
@media (max-width: 575.98px) {
    .btn-gallery-premium-outline {
        width: 100% !important;                 /* Fills full container span fluidly on screens */
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }
}

/* ==========================================================================
   Analytics Bottom Statistics Row Setup
   ========================================================================== */
.mt-16 {
    margin-top: 4rem !important; /* Mapped to Tailwind mt-16 */
}

.max-w-lg {
    max-width: 32rem !important; /* Standard Tailwind max-w-lg layout boundary */
}

/* 3 Column Balanced Metric Grid Layout */
.grid {
    display: grid !important;
}

.grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.gap-8 {
    gap: 2rem !important; /* Grid gap matching utility tokens */
}

/* Base Typography Controls */
.font-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

.font-bold {
    font-weight: 700 !important;
}

.text-primary {
    color: #dfa10d !important; /* Gold Palette Token */
}

.text-muted-foreground {
    color: #a3a19d !important; /* Muted corporate text grey color */
}

.text-sm {
    font-size: 0.875rem !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

/* Base text sizing rule for mobile view */
.text-3xl {
    font-size: 1.875rem !important;
    line-height: 2.25rem !important;
}

/* ==========================================================================
   Responsive Scaling Fixes for MD (Tablets) & LG (Desktops)
   ========================================================================== */
@media (min-width: 768px) {
    .md\:text-4xl {
        font-size: 2.25rem !important;
        line-height: 2.5rem !important;
    }
}

/* ==========================================================================
   Services Layout System - 1:1 Color Fix (From image_0e8371.png)
   ========================================================================== */

/* Main Section Wrapper Settings */
.services-section-wrapper {
    background-color: #16120e !important;   /* Exact dark chocolate-bronze section background from image */
    padding-top: 5.5rem !important;
    padding-bottom: 6rem !important;
}

.services-main-header {
    margin-bottom: 4rem !important;
}

/* Header Text Color Systems */
.service-top-badge {
    font-family: 'Inter', sans-serif;
    color: #dfa10d !important;              /* High accuracy warm gold badge text */
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    margin-bottom: 0.6rem !important;
}

.service-main-title {
    font-size: 44px !important;
    font-weight: 700 !important;
    color: #ffffff !important;              /* High contrast solid white header */
    margin-bottom: 1.2rem !important;
}

.service-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px !important;
    color: #9d8d6c !important;              /* Muted paragraph description tone match */
    max-width: 620px;
    line-height: 1.6 !important;
}

/* 1:1 Matching Card Boxes Configuration */
.premium-service-card {
    background-color: #1f1a14 !important;   /* Exact dark warm-brown grid card container fill from image */
    border: 1px solid rgba(223, 161, 13, 0.12) !important; /* Premium subtle card outline stroke */
    border-radius: 14px !important;         /* Smooth rounded contours */
    padding: 2.2rem 1.8rem !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Smooth micro interactions focus hover trigger */
.premium-service-card:hover {
    border-color: rgba(223, 161, 13, 0.4) !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4) !important;
}

/* Compact Filled Square Icon Box Layout */
.service-icon-box {
    width: 44px !important;
    height: 44px !important;
    background-color: rgba(223, 161, 13, 0.08) !important; /* Tinted square background fill */
    border-radius: 8px !important;
    margin-bottom: 1.6rem !important;
}

/* Content Element Styles inside the cards */
.card-service-title {
    font-size: 21px !important;
    font-weight: 700 !important;
    color: #f5eee0 !important;              /* Title remains clear crisp white */
    margin-bottom: 0.8rem !important;
}

.card-service-desc {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px !important;
    color: #9d8d6c !important;              /* Exact low-opacity text tone for seamless uniform layout */
    line-height: 1.55 !important;
}

/* Font Family Helper */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* Responsive constraints scaling override */
@media (max-width: 767.98px) {
    .service-main-title { font-size: 32px !important; }
    .premium-service-card { padding: 1.8rem 1.5rem !important; }
}

/* ==========================================================================
   About Premium Layout Section - 1:1 Match (From image_0e130c.png)
   ========================================================================== */
.about-premium-section {
    background-color: #0b0907 !important; /* Exact deep rich dark layout color matrix */
    padding-top: 1.5rem !important;
    padding-bottom: 6.5rem !important;
}

/* Master Grid Alignments Controls */
.container-custom-about {
    max-width: 1230px !important;
}

.custom-about-row {
    --bs-gutter-x: 4rem !important; /* Forces uniform spacing between col-6 structures */
}

/* Left Side Feature Block Asset Spec */
.left-img-column {
    padding-right: 2rem !important;
}

.about-image-layout-container {
    position: relative;
    display: inline-block;
    width: 100%;
}

.main-feature-img {
    border-radius: 12px !important; /* Smooth curvature edges */
    width: 100% !important;
    height: auto !important;
    display: block;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.6) !important;
}

/* 1:1 Floating Overlapping Gold Badge Block Rules */
.floating-excellence-badge {
    position: absolute !important;
    bottom: -18px !important;        /* Pulls box down to snap layout alignment border */
    right: -25px !important;          /* Positions exactly like image_0e130c.png */
    background-color: #dfa10d !important; /* Vibrant golden block color */
    border-radius: 10px !important;
    width: 155px !important;
    height: 115px !important;
    padding: 1.2rem !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.5) !important;
    z-index: 10;
}

.badge-stat-number {
    font-size: 38px !important;
    font-weight: 700 !important;
    color: #0c0a07 !important;       /* High-contrast background dark text metric */
    line-height: 1 !important;
    margin-bottom: 2px !important;
}

.badge-stat-label {
    font-family: 'Inter', sans-serif;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #0c0a07 !important;
    line-height: 1.2 !important;
}

/* Right Side Text Block Specifications */
.right-text-column {
    padding-left: 2rem !important;
}

.about-top-badge {
    font-family: 'Inter', sans-serif;
    color: #dfa10d !important;      /* Accent corporate golden identifier tracking badge */
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    margin-bottom: 0.8rem !important;
}

.about-main-title {
    font-size: 44px !important;     /* Heavy layout display title serif matching */
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.18 !important;
    margin-bottom: 2rem !important;
}

.about-paragraph {
    font-family: 'Inter', sans-serif;
    font-size: 15.5px !important;
    color: #9d8d6c !important;    
    line-height: 1.65 !important;
    margin-bottom: 1.4rem !important;
}

.mb-4-custom {
    margin-bottom: 2.2rem !important;
}

/* Precise 2-Column Grid Matrix Row for Checklist */
.feature-checklist-matrix {
    margin-top: 1rem !important;
}

.checklist-col {
    margin-bottom: 1.1rem !important; /* Perfect row element vertical spacing gap */
}

.checklist-item {
    display: flex !important;
    align-items: center !important;
    text-align: left !important;
}

.checklist-icon-wrap {
    display: inline-flex !important;
    align-items: center !important;
    margin-right: 12px !important; /* Gap control between gold tick icon and label text */
    flex-shrink: 0;
}

.checklist-text {
    font-family: 'Inter', sans-serif;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #ffffff !important;      /* Pure layout high-focus white text */
    line-height: 1.2 !important;
}

/* Serif typeface logic mapping setup */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* ==========================================================================
   Responsive Adaptations (Mobile & Tablet Breakpoints)
   ========================================================================== */
@media (max-width: 991.98px) {
    .about-premium-section { padding-top: 4.5rem !important; padding-bottom: 5.5rem !important; }
    .custom-about-row { --bs-gutter-x: 1.5rem !important; }
    .left-img-column, .right-text-column { padding-left: 15px !important; padding-right: 15px !important; }
    .about-main-title { font-size: 34px !important; margin-bottom: 1.5rem !important; }
    .about-image-layout-container { margin-bottom: 3.5rem !important; }
    .floating-excellence-badge {
        right: 25px !important;
        bottom: -25px !important;
    }
}

/* ==========================================================================
   Premium Golden CTA Banner Section - 1:1 Match (From image_0e0b2b.png)
   ========================================================================== */
.gold-cta-banner-section {
    background-color: #dfa10d !important;   /* Exact solid vibrant golden identity fill from screenshot */
    padding-top: 5rem !important;
    padding-bottom: 5.5rem !important;
    position: relative;
    width: 100% !important;
}

/* Master Typography Overrule Setup */
.cta-master-title {
    font-size: 50px !important;              /* Heavy weight fluid display metrics font scale */
    font-weight: 700 !important;
    color: #0b0907 !important;              /* Intense deep dark contrast fill typography text label */
    letter-spacing: -0.01em !important;
    margin-bottom: 1.2rem !important;
    line-height: 1.15 !important;
}

.cta-supporting-text {
    font-family: 'Inter', sans-serif;
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #12100c !important;              /* Perfectly readable low contrast primary secondary body tone */
    max-width: 660px !important;             /* Controlled breakpoint constraints layout boundary */
    line-height: 1.6 !important;
    margin-bottom: 2.2rem !important;
}

/* Button Layout Wrapper Matrix Controls */
.cta-actions-wrapper {
    margin-top: 1.8rem !important;
}

/* 1. Solid Dark Master Action Button Style */
.btn-cta-master-dark {
    font-family: 'Inter', sans-serif;
    background-color: #050402 !important;    /* Absolute black block body background fill */
    color: #dfa10d !important;              /* Inner high focus golden accent vector text label */
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 0.75rem 1.6rem !important;     /* Horizontal content expansion rules pad */
    border-radius: 8px !important;           /* Accurate sharp geometric tracking corner curve */
    border: 1px solid #050402 !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.btn-cta-master-dark:hover {
    background-color: #12100c !important;
    color: #ffffff !important;               /* Shifts focus text clean layout to pure white on cursor */
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25) !important;
}

.inline-arrow-vector {
    margin-left: 8px !important;            /* Precise space offset control next to link text */
    transition: transform 0.2s ease;
}

.btn-cta-master-dark:hover .inline-arrow-vector {
    transform: translateX(3px);             /* Micro interaction link transition hint */
}

/* 2. Translucent/Outlined Secondary Communication Button Style */
.btn-cta-secondary-outline {
    font-family: 'Inter', sans-serif;
    background-color: transparent !important;
    color: #050402 !important;              /* Pure tracking deep block label color matching */
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 0.75rem 1.6rem !important;
    border-radius: 8px !important;
    border: 1px solid #050402 !important;    /* Thin clean stroke matching perimeter */
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.btn-cta-secondary-outline:hover {
    background-color: rgba(5, 4, 2, 0.06) !important; /* Extremely soft hover backdrop tint layer */
    transform: translateY(-2px);
}

.inline-phone-vector {
    margin-right: 8px !important;           /* Left side trailing phone icon bounding offset box */
}

/* Utility Class serif fallback mapping */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* ==========================================================================
   Fluid Responsive Constraints (Mobile Adjustments)
   ========================================================================== */
@media (max-width: 767.98px) {
    .gold-cta-banner-section { padding-top: 4rem !important; padding-bottom: 4rem !important; }
    .cta-master-title { font-size: 32px !important; }
    .cta-supporting-text { font-size: 14.5px !important; }
    .btn-cta-master-dark, .btn-cta-secondary-outline {
        width: 100% !important;              /* Stack layers full block fluid scale across devices */
        max-width: 290px;
    }
}

/* ==========================================================================
   Premium Brand Footer Layout System - 1:1 Match (From image_0e04a8.png)
   ========================================================================== */
.premium-master-footer {
    background-color: #12100c !important;   /* Exact deep dark warm-chocolate base backdrop fill from image */
    padding-top: 5rem !important;
    padding-bottom: 2.5rem !important;
    border-top: 1px solid rgba(223, 161, 13, 0.05) !important;
    width: 100% !important;
}

.footer-layout-container {
    max-width: 1230px !important;
}

/* Brand Meta Header Display Layouts */
.footer-brand-meta {
    gap: 12px !important;
}

.footer-logo-circle {
    width: 44px !important;
    height: 44px !important;
    background-color: #dfa10d !important;   /* Vibrant operational golden fill token */
    border-radius: 50% !important;           /* Precise circular tracking geometric shell */
    box-shadow: 0 4px 14px rgba(223, 161, 13, 0.2) !important;
}

.logo-inner-glyph {
    font-family: 'Times New Roman', 'Georgia', serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #0c0a07 !important;              /* High contrast deep charcoal dark color character code */
}

.footer-brand-title {
    font-family: 'Times New Roman', 'Georgia', serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #dfa10d !important;              /* Consistent identity gold brand rendering tracking title */
}

.footer-intro-paragraph {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px !important;
    color: #8c857b !important;              /* Precise low contrast muted paragraph typeface tint */
    line-height: 1.65 !important;
    margin-top: 1.2rem !important;
}

/* General Inner Core Grid Column Formatting Header Controls */
.footer-column-headline {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #dfa10d !important;              /* Column headers locked to brand gold */
    margin-bottom: 1.8rem !important;
    letter-spacing: 0.02em !important;
}

/* Hyperlinks Text Components Tree Matrices Layout */
.footer-links-list li {
    margin-bottom: 0.9rem !important;       /* Clean incremental spacing layout gaps block */
}

.footer-links-list li a {
    font-family: 'Inter', sans-serif;
    font-size: 15px !important;
    color: #8c857b !important;              /* Base idle element anchor tracking link palette */
    text-decoration: none !important;
    transition: color 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.footer-links-list li a:hover {
    color: #ffffff !important;               /* Hover transitions text directly to crisp solid white */
}

/* Info Contact Nodes Component Layout Rows */
.contact-meta-row {
    font-family: 'Inter', sans-serif;
}

.contact-vector-icon-wrap {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
}

.contact-string-label {
    font-size: 14.5px !important;
    color: #8c857b !important;              /* Labels align cleanly to matching typography grids */
    line-height: 1.5 !important;
}

.contact-interactive-anchor {
    text-decoration: none !important;
    transition: color 0.22s ease !important;
}

.contact-interactive-anchor:hover {
    color: #ffffff !important;
}

/* Horizontal Partition Layout Splitting Grid Line Rules */
.footer-horizontal-divider {
    background-color: rgba(140, 133, 123, 0.12) !important; /* Low density subtle dividing stroke line */
    border: 0 !important;
    height: 1px !important;
    margin-top: 4rem !important;
    margin-bottom: 1.8rem !important;
}

/* Copyright Bottom Bar Module Elements */
.copyright-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    color: #9d8d6c !important;              /* Deeper layout visibility tint for system notice block */
    letter-spacing: 0.02em !important;
}

/* Custom Serif Helper Logic */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* Custom Styles for Static Footer Services List */
.footer-static-list li {
    font-family: 'Inter', sans-serif;
    font-size: 15px !important;
    color: #8c857b !important; /* Perfect low contrast text palette matching image_0e04a8.png */
    margin-bottom: 0.9rem !important;
    font-weight: 500;
    cursor: default; /* Disables the pointer hand cursor feel */
}

/* ==========================================================================
   Responsive Adaptations Tree Controls (Mobile View Balancing)
   ========================================================================== */
@media (max-width: 991.98px) {
    .premium-master-footer { padding-top: 4rem !important; padding-bottom: 2rem !important; }
    .footer-column-headline { margin-bottom: 1.2rem !important; margin-top: 1rem !important; }
    .footer-horizontal-divider { margin-top: 2.5rem !important; }
}

/* ==========================================================================
   Premium Contact Page Hero Header Banner - 1:1 Match (From image_0df520.png)
   ========================================================================== */
.contact-hero-banner-section {
    background-color: #0c0a07 !important; /* Absolute dark chocolate luxury base fill */
    padding-top: 1.5rem !important;
    padding-bottom: 2rem !important;
    width: 100% !important;
}

/* Accent Badge Tracker Node */
.contact-top-badge {
    font-family: 'Inter', sans-serif;
    color: #dfa10d !important;      /* Identity golden branding accent */
    font-size: 13.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    margin-bottom: 0.9rem !important;
}

/* Master Core Heading Layout System */
.contact-main-title {
    font-size: 54px !important;     /* True visual weight display title text metric */
    font-weight: 700 !important;
    color: #ffffff !important;      /* Sharp crisp high-contrast off-white glyph tracking */
    line-height: 1.15 !important;
    margin-bottom: 1.4rem !important;
    letter-spacing: -0.01em !important;
}

/* Fluid Secondary Text Container Constraints */
.contact-supporting-text {
    font-family: 'Inter', sans-serif;
    font-size: 15.5px !important;
    color: #9d8d6c!important;      /* Dark low contrast matte warm grey tone */
    max-width: 630px !important;     /* Line wrap box width bounding rule matching snapshot */
    line-height: 1.65 !important;
}

/* Global Class Custom Font Fallback Mapping */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}

/* ==========================================================================
   Mobile Responsive Text Optimization Trees
   ========================================================================== */
@media (max-width: 767.98px) {
    .contact-hero-banner-section {
        padding-top: 4rem !important;
        padding-bottom: 1.5rem !important;
    }
    .contact-main-title {
        font-size: 36px !important; /* Scaled down perfectly to avoid overflow breakpoints */
    }
    .contact-supporting-text {
        font-size: 14.5px !important;
    }
}

/* ==========================================================================
   Exact Contact Bento Architecture Matrix System (From image_0d9f27.png)
   ========================================================================== */
.contact-bento-grid-section {
    background-color: #0c0a07 !important; /* Exact deep dark setup background token */
    padding-top: 1rem !important;
    padding-bottom: 4rem !important;
    width: 100% !important;
}

.container-custom-contact-bento {
    max-width: 1445px;
}

/* Structural Bento Modular Container Block styling */
.bento-contact-card {
    background-color: #34270a !important;   /* Exact warm dark brown box fill color */
    border: 1px solid #2b2216 !important;   /* Extremely subtle low-contrast inner border path */
    border-radius: 14px !important;         /* Sleek uniform curves matching image layout */
    padding: 2.5rem 2.2rem !important;      /* Generous inner space block allocation */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
    transition: border-color 0.25s ease, transform 0.25s ease !important;
}

/* Tiny Custom Icon Container Box Frame */
.bento-icon-box {
    width: 42px !important;
    height: 42px !important;
    background-color: transparent !important;
    border: 1px solid rgba(223, 161, 13, 0.25) !important; /* Muted yellow accent tracking border */
    border-radius: 8px !important;          /* Perfect modern square round tracking curve */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Card Content Typography Core Parameters */
.bento-card-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #f5eedf !important;              /* High contrast crisp elegant off-white text character */
    margin-bottom: 0.7rem !important;
    letter-spacing: 0.01em !important;
}

.bento-card-text {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px !important;
    color: #9d8d6c !important;              /* Distinct muted dark-beige tone value text colors */
    line-height: 1.6 !important;
    margin-bottom: 0px !important;
}

/* Active Highlight Action Links Elements styling */
.bento-interactive-link {
    font-family: 'Inter', sans-serif;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #dfa10d !important;              /* Pure operational brand golden link tint */
    text-decoration: none !important;
    letter-spacing: 0.02em !important;
    margin-top: 1.2rem !important;
    display: inline-block;
    transition: color 0.2s ease !important;
}

.bento-interactive-link:hover {
    color: #ffffff !important;
}

/* General serif mapping override */
.text-serif {
    font-family: 'Times New Roman', 'Georgia', serif !important;
}
/* ==========================================================================
   Premium Contact Page Map Frame Layout - 1:1 Match (From image_0d8f6a.png)
   ========================================================================== */
.contact-map-wrapper-section {
    background-color: #0c0a07 !important; /* Continuous premium deep dark chocolate base fill */
    padding-top: 1rem !important;
    padding-bottom: 6rem !important;
    width: 100% !important;
}

.container-custom-contact-map {
    max-width: 1445px;
}

/* Outer Border Structure Frame Wrapper */
.map-bento-outer-frame {
    background-color: #1a150f !important;   /* Soft matte brown structural frame container background */
    border: 1px solid #2b2216 !important;   /* Ambient alignment low contrast boundary rule */
    border-radius: 14px !important;         /* Matches structural curved boundary architecture layout */
    padding: 12px !important;               /* Inner matte cushion grid wrapper */
    overflow: hidden;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.3) !important;
}

/* Embedded Google Maps Canvas Adjustment Pipeline */
.map-bento-outer-frame iframe {
    border-radius: 10px !important;         /* Smooth edge tracking layout flow */
    filter: grayscale(0.1) contrast(1.05) !important; /* Preserves vivid map clarity with sleek layout aesthetics */
    display: block;
}

/* Absolute Floating Bottom Overlay Panel Box Structure */
.map-absolute-info-bar {
    position: absolute !important;
    bottom: 24px !important;                /* Anchored floating space rules setup */
    left: 24px !important;
    right: 24px !important;
    background-color: #110e0a !important;   /* Solid pure dark absolute bar fill palette color */
    border: 1px solid rgba(223, 161, 13, 0.12) !important; /* Super fine golden internal lining */
    border-radius: 10px !important;
    padding: 1.5rem 2rem !important;        /* Wide spatial padding structure matching snapshot design */
    z-index: 10;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5) !important;
}

/* Inner Text Meta Elements Configuration Trees */
.map-bar-title {
    font-family: 'Inter', sans-serif;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;              /* High visibility crisp typography string */
    letter-spacing: 0.01em !important;
    margin-bottom: 3px !important;
}

.map-bar-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    color: #8c857b !important;              /* Medium muted dark-beige tone color value */
}

/* Redirect Action Trigger elements styling */
.map-get-directions-btn {
    font-family: 'Inter', sans-serif;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #dfa10d !important;              /* True premium yellow identity tint label */
    text-decoration: none !important;
    letter-spacing: 0.02em !important;
    transition: color 0.2s ease, text-decoration 0.2s ease !important;
}

.map-get-directions-btn:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

/* ==========================================================================
   Responsive Adaptability Overrides for Mobile Viewports
   ========================================================================== */
@media (max-width: 767.98px) {
    .map-absolute-info-bar {
        position: relative !important;      /* Disables absolute overlay layout mode on mobile to avoid viewport overflow */
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin-top: 15px !important;
        padding: 1.25rem 1.5rem !important;
    }
    .map-bento-outer-frame iframe {
        height: 320px !important;           /* Optimizes viewport scale metrics ratio tracking cleanly */
    }
}

/* ==========================================================================
   Custom Heavy Spatial Padding Utilities for Contact Container 
   ========================================================================== */
.px-custom-full {
    padding-left: 0rem !important;   /* Deep horizontal inner cushion padding space */
    padding-right: 5rem !important;
}

.py-custom-full {
    padding-top: 1.5rem !important;  /* Elevated vertical matrix bounding space */
    padding-bottom: 6.5rem !important;
}

/* ==========================================================================
   Fluid Mobile / Tablet Responsiveness Adjustments
   ========================================================================== */
@media (max-width: 1199.98px) {
    .px-custom-full {
        padding-left: 3rem !important;
        padding-right: 3rem !important;
    }
    .py-custom-full {
        padding-top: 4.5rem !important;
        padding-bottom: 4.5rem !important;
    }
}

@media (max-width: 767.98px) {
    .px-custom-full {
        padding-left: 1.25rem !important; /* Mobile grid standard size constraints optimization */
        padding-right: 1.25rem !important;
    }
    .py-custom-full {
        padding-top: 3.5rem !important;   /* Compact but spacious look for smart screen views */
        padding-bottom: 3.5rem !important;
    }
}

/* ==========================================================================
   Gallery CSS Core - Interactive Hover Architecture (From image_0cab63.png)
   ========================================================================== */
/* ==========================================================================
   Premium Interactive Gallery Layout Core Tokens
   ========================================================================== */
.premium-gallery-grid-section {
    background-color: #0c0a07 !important;
    padding-top: 3rem !important;
    padding-bottom: 5rem !important;
    width: 100% !important;
}

.gallery-filter-btn {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    background-color: transparent !important;
    border: 1px solid #2b2216 !important;
    border-radius: 6px !important;
    padding: 0.5rem 1.1rem !important;
    transition: all 0.25s ease !important;
}

.gallery-filter-btn:hover, .gallery-filter-btn.active {
    background-color: #dfa10d !important;
    border-color: #dfa10d !important;
    color: #0c0a07 !important;
    font-weight: 600 !important;
}

.gallery-add-photo-btn {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    background-color: #dfa10d !important;
    border: none !important;
    border-radius: 6px !important;
    color: #0c0a07 !important;
    padding: 0.6rem 1.3rem !important;
}

/* Premium Card Structural Block Layer configuration */
.gallery-premium-card {
    background-color: #1a150f !important;
    border: 1px solid #2b2216 !important;
    border-radius: 12px !important;
    overflow: hidden;
    position: relative !important;
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.3) !important;
    transition: transform 0.3s ease !important;
}

.gallery-premium-card:hover {
    transform: translateY(-5px) !important;
}

.gallery-image-canvas {
    position: relative !important;
    overflow: hidden;
    background-color: #000000;
    cursor: pointer;
}

.gallery-image-canvas img {
    object-fit: cover !important;
    height: 340px !important;
    transition: transform 0.4s ease !important;
    display: block;
}

/* --- OVERLAY MASK ENGINE --- */
.gallery-overlay-backdrop-mask {
    position: absolute !important;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(12, 10, 7, 0.75) !important; 
    opacity: 0;
    transition: opacity 0.3s ease !important;
    z-index: 4;
}

.gallery-premium-card:hover .gallery-overlay-backdrop-mask {
    opacity: 1 !important;
}

.gallery-premium-card:hover .gallery-image-canvas img {
    transform: scale(1.04) !important;
}

.gallery-zoom-trigger-icon {
    width: 48px; height: 48px;
    background-color: rgba(26, 21, 15, 0.9) !important;
    border: 1px solid rgba(223, 161, 13, 0.4) !important;
    border-radius: 50% !important;
    display: flex; align-items: center; justify-content: center;
}

.gallery-bi-icon {
    color: #dfa10d !important;
    font-size: 20px !important;
}

.gallery-meta-content-footer {
    padding: 1.6rem 1.5rem !important;
    background-color: #1a150f !important;
}

.gallery-asset-title {
    font-family: 'Inter', sans-serif;
    font-size: 16.5px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 5px !important;
}

.gallery-asset-category {
    font-family: 'Inter', sans-serif;
    font-size: 13px !important;
    color: #8c857b !important;
}

/* ==========================================================================
   Strict High-Z-Index Action Component Layout Properties
   ========================================================================== */
.gallery-delete-btn {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 36px !important;
    height: 36px !important;
    border: none !important;
    border-radius: 50% !important;
    background: #dc2626 !important;
    color: #ffffff !important;
    cursor: pointer !important;
    
    /* Forced layer prioritization check rules */
    z-index: 999999 !important;
    pointer-events: auto !important;

    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5) !important;
}

.gallery-premium-card:hover .gallery-delete-btn {
    opacity: 1 !important;
    visibility: visible !important;
}

.gallery-delete-btn:hover {
    background: #b91c1c !important;
    transform: scale(1.1) !important;
}

/* ==========================================================================
   Lightbox Overlay Window Custom Configurations
   ========================================================================== */
.gallery-lightbox-modal {
    background: rgba(0, 0, 0, 0.9) !important;
}

.gallery-lightbox-modal .modal-dialog {
    max-width: 95vw !important;
    margin: 1rem auto !important;
}

.gallery-lightbox-modal .modal-content {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.spec-lightbox-img {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 90vh !important;
    object-fit: contain !important;
    border-radius: 12px !important;
}

.gallery-modal-absolute-close {
    position: absolute !important;
    top: -12px !important;
    right: -12px !important;
    width: 32px !important;
    height: 32px !important;
    background-color: #dc2626 !important;   
    border: 2px solid #1a150f !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-size: 12px !important;
    z-index: 1055 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5) !important;
    transition: transform 0.2s ease !important;
}

.gallery-modal-absolute-close:hover {
    transform: scale(1.1) !important;
    background-color: #b91c1c !important;
}
/* ==========================================================================
   Dynamic Filter Animation States 
   ========================================================================== */
.gallery-item-node {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
                opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    opacity: 1;
    transform: scale(1);
}

/* Filter aaghi hide aagura card structures */
.gallery-item-node.g-filter-hide {
    opacity: 0 !important;
    transform: scale(0.8) !important;
    position: absolute !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: none !important;
}
/* ==========================================================================
   Premium Forms Core Styling Tokens (S Gold Branding Context)
   ========================================================================== */
.gallery-premium-form-card {
    background-color: #3a2d0f !important;
    border: 1px solid #2b2216 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4) !important;
}

.form-section-title {
    font-family: 'Inter', sans-serif;
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    letter-spacing: -0.5px;
}

.gallery-form-label {
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
}

.gallery-form-input, .gallery-form-select {
    width: 100% !important;
    background-color: #0c0a07 !important;
    border: 1px solid #2b2216 !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 0.75rem 1rem !important;
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    outline: none !important;
    transition: border-color 0.2s ease !important;
}

.gallery-form-input:focus, .gallery-form-select:focus {
    border-color: #dfa10d !important;
}

/* Custom Styled Premium File Input Node Elements */
.custom-file-upload-wrapper {
    position: relative !important;
    width: 100% !important;
}

.gallery-form-file-input {
    position: absolute !important;
    left: 0; top: 0; opacity: 0; width: 100%; height: 100%;
    cursor: pointer !important;
    z-index: 5;
}

.gallery-file-upload-trigger {
    background-color: #0c0a07 !important;
    border: 1px solid #2b2216 !important;
    color: #8c857b !important;
    border-radius: 6px !important;
    min-height: 47px !important;
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
}

.btn-file-browse {
    background-color: #2b2216 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 0.35rem 0.8rem !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
}

/* CTA Submissions System Action Components */
.btn-gallery-submit-gold {
    background-color: #dfa10d !important;
    color: #0c0a07 !important;
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 0.65rem 1.4rem !important;
    transition: transform 0.2s ease, background-color 0.2s ease !important;
}

.btn-gallery-submit-gold:hover {
    background-color: #f0b216 !important;
    transform: scale(1.02) !important;
}

.btn-gallery-cancel-dark {
    background-color: #0c0a07 !important;
    color: #ffffff !important;
    border: 1px solid #2b2216 !important;
    font-family: 'Inter', sans-serif;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    padding: 0.65rem 1.4rem !important;
    transition: background-color 0.2s ease !important;
}

.btn-gallery-cancel-dark:hover {
    background-color: #1a150f !important;
}

/* Existing Dynamic Filter Layout States */
.gallery-item-node {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    opacity: 1; transform: scale(1);
}
.gallery-item-node.g-filter-hide {
    opacity: 0 !important; transform: scale(0.8) !important;
    position: absolute !important; pointer-events: none !important;
    width: 0 !important; height: 0 !important; padding: 0 !important; margin: 0 !important;
    overflow: hidden !important; border: none !important;
}