
        
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('../fonts/montserrat-variable.woff2') format('woff2');
}

        :root {
            --primary: hsl(25, 95%, 45%);
            --primary-hover: hsl(25, 95%, 38%);
            --bg-base: hsl(30, 20%, 97%);
            --bg-surface: hsl(0, 0%, 100%);
            --text-main: hsl(24, 70%, 12%);
            --text-muted: hsl(24, 15%, 45%);
            --border-color: hsl(24, 25%, 91%);
            --radius: 10px;
            --font-heading: 'Montserrat', system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
            --font-body: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
        }
        
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
        
        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: var(--font-body);
            color: var(--text-main);
            background-color: var(--bg-base);
            line-height: 1.5;
            -webkit-font-smoothing: antialiased;
        }
        
        .font-display, h1, h2, h3, h4, h5, h6 {
            font-family: var(--font-heading);
        }

        a {
            color: inherit;
            text-decoration: none;
        }

        /* Smart Grid System (Hybrid Drag & Drop) */
        .smart-grid-container {
            display: grid;
            grid-template-columns: repeat(12, 1fr);
            gap: 1.25rem;
            align-items: start;
            position: relative;
            width: 100%;
        }
        .grid-col-12 { grid-column: span 12; width: 100%; }
        .grid-col-8  { grid-column: span 8; }
        .grid-col-6  { grid-column: span 6; }
        .grid-col-4  { grid-column: span 4; }
        .grid-col-3  { grid-column: span 3; }
        .grid-col-auto { grid-column: auto; }

        @media (max-width: 768px) {
            .smart-grid-container {
                display: flex !important;
                flex-direction: column !important;
                gap: 1rem !important;
            }
            .smart-grid-container > * {
                grid-column: span 12 !important;
                width: 100% !important;
                max-width: 100% !important;
            }
        }

        /* Dropdown Navigation Menu */
        .nav-dropdown, .nav-item-dropdown {
            position: relative;
            display: inline-flex;
            align-items: center;
        }
        .nav-dropdown-menu {
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            position: absolute;
            top: 100%;
            left: 0;
            min-width: 180px;
            background: #ffffff;
            border: 1px solid rgba(0, 0, 0, 0.08);
            border-radius: 6px;
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15);
            padding: 6px 0;
            z-index: 1100;
            list-style: none;
            margin: 4px 0 0;
            text-align: left;
            transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
            transition-delay: 250ms;
            transform: translateY(4px);
            display: block;
        }
        .nav-dropdown-menu::before {
            content: "";
            position: absolute;
            top: -12px;
            left: 0;
            right: 0;
            height: 12px;
            background: transparent;
        }
        .nav-dropdown:hover > .nav-dropdown-menu,
        .nav-item-dropdown:hover > .nav-dropdown-menu,
        .nav-dropdown:focus-within > .nav-dropdown-menu,
        .nav-item-dropdown:focus-within > .nav-dropdown-menu,
        .nav-dropdown-menu:hover {
            opacity: 1 !important;
            visibility: visible !important;
            pointer-events: auto !important;
            transition-delay: 0s !important;
            transform: translateY(0) !important;
        }
        .nav-dropdown-menu a, .nav-dropdown-item a {
            display: block;
            padding: 8px 16px;
            color: #1e293b;
            font-size: 0.88rem;
            text-decoration: none;
            transition: background 0.15s, color 0.15s;
            white-space: nowrap;
        }
        .nav-dropdown-menu a:hover, .nav-dropdown-item a:hover {
            background: #f1f5f9;
            color: var(--primary);
        }

        /* Universal Responsive Visibility */
        @media (max-width: 640px) {
            .hide-on-mobile { display: none !important; }
        }
        @media (min-width: 641px) and (max-width: 1024px) {
            .hide-on-tablet { display: none !important; }
        }
        @media (min-width: 1025px) {
            .hide-on-desktop { display: none !important; }
        }
        @media (min-width: 1440px) {
            .hide-on-widescreen { display: none !important; }
        }

        /* Advanced Gallery Layouts */
        .gallery-fullwidth { width: 100% !important; max-width: 100% !important; padding-left: 1rem !important; padding-right: 1rem !important; }
        .gallery-layout-masonry { column-count: 3; column-gap: 1.25rem; }
        @media (max-width: 768px) { .gallery-layout-masonry { column-count: 1; } }
        .gallery-layout-masonry .gallery-masonry-item { break-inside: avoid; margin-bottom: 1.25rem; overflow: hidden; border-radius: var(--radius); }
        .gallery-layout-thumbnails { display: flex; flex-direction: column; gap: 12px; }
        .gallery-thumbnails-strip { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; }
        .gallery-thumb-item { width: 76px; height: 54px; flex-shrink: 0; border-radius: 4px; cursor: pointer; opacity: 0.65; transition: all 0.15s; border: 2px solid transparent; object-fit: cover; }
        .gallery-thumb-item.active, .gallery-thumb-item:hover { opacity: 1; border-color: var(--primary); }
        .gallery-layout-list { display: flex; flex-direction: column; gap: 1.5rem; }

        /* Unified Slider */
        .site-slider-block { position: relative; user-select: none; width: 100%; }
        .site-slider-fullwidth { width: 100% !important; max-width: 100% !important; }
    