:root {
    --lux-bg: #090b12;
    --lux-bg-soft: #101522;
    --lux-panel: rgba(15, 21, 34, 0.78);
    --lux-panel-strong: rgba(16, 23, 37, 0.9);
    --lux-line: rgba(255, 255, 255, 0.14);
    --lux-line-soft: rgba(255, 255, 255, 0.08);
    --lux-text: #f3f7ff;
    --lux-text-muted: #b5bfd4;
    --lux-red: #e3495e;
    --lux-gold: #d3b170;
    --lux-ice: #76cbff;
    --lux-shadow: 0 16px 42px rgba(2, 4, 12, 0.55);
}

/* -----------------------------
   Home (index.html)
------------------------------ */
body.ui-refresh {
    background:
        radial-gradient(1200px 640px at 0% 0%, rgba(227, 73, 94, 0.12), transparent 60%),
        radial-gradient(900px 600px at 100% 8%, rgba(118, 203, 255, 0.11), transparent 64%),
        linear-gradient(180deg, #090b12 0%, #0a0f19 55%, #090c14 100%);
    color: var(--lux-text);
    font-family: "Manrope", "Noto Sans", sans-serif;
}

body.ui-refresh main,
body.ui-refresh main > section:not(.hero) {
    background: transparent;
}

body.ui-refresh h1,
body.ui-refresh h2,
body.ui-refresh h3,
body.ui-refresh h4,
body.ui-refresh .section-title,
body.ui-refresh .card-title {
    font-family: "Playfair Display", "DM Serif Display", serif;
    color: var(--lux-text);
    letter-spacing: 0.01em;
}

body.ui-refresh p,
body.ui-refresh li,
body.ui-refresh span,
body.ui-refresh .text-secondary {
    color: var(--lux-text-muted) !important;
}

body.ui-refresh a,
body.ui-refresh button {
    transition: color 0.25s ease, border-color 0.25s ease, background-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

body.ui-refresh .ecosystem-navbar,
body.ui-refresh .navbar {
    background: rgba(9, 12, 19, 0.72) !important;
    border-bottom: 1px solid rgba(211, 177, 112, 0.25);
    backdrop-filter: blur(12px);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.42);
}

body.ui-refresh .navbar.navbar-scrolled {
    background: rgba(8, 11, 17, 0.92) !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.54);
}

body.ui-refresh .navbar .nav-link,
body.ui-refresh .nav-shortcuts-toggle,
body.ui-refresh .dropdown-item {
    color: var(--lux-text) !important;
}

body.ui-refresh .navbar .nav-link:hover,
body.ui-refresh .navbar .nav-link:focus-visible,
body.ui-refresh .nav-shortcuts-toggle:hover,
body.ui-refresh .dropdown-item:hover,
body.ui-refresh .dropdown-item:focus-visible {
    color: #fff !important;
    text-shadow: 0 0 14px rgba(118, 203, 255, 0.4);
}

body.ui-refresh .dropdown-menu {
    background: rgba(10, 14, 23, 0.98) !important;
    border: 1px solid rgba(211, 177, 112, 0.24) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6) !important;
}

body.ui-refresh #home.hero {
    padding-top: clamp(78px, 10vh, 118px);
    padding-bottom: clamp(66px, 9vh, 102px);
}

body.ui-refresh .hero-bg-overlay {
    background:
        radial-gradient(640px 340px at 12% 20%, rgba(227, 73, 94, 0.2), transparent 68%),
        radial-gradient(620px 350px at 84% 18%, rgba(118, 203, 255, 0.2), transparent 72%),
        linear-gradient(180deg, rgba(4, 6, 10, 0.78) 0%, rgba(8, 10, 16, 0.88) 100%);
}

body.ui-refresh .hero-glass {
    background: linear-gradient(150deg, rgba(10, 14, 24, 0.84), rgba(12, 18, 29, 0.74));
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.56),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    border-radius: 30px;
    padding: clamp(28px, 4vw, 48px) !important;
}

body.ui-refresh #home .hero-glass h1 {
    font-size: clamp(2.4rem, 5.4vw, 4.5rem);
    line-height: 1.06;
    text-wrap: balance;
    color: #f5f9ff;
}

body.ui-refresh #home .hero-skyblue-line {
    color: var(--lux-ice) !important;
    text-shadow: 0 0 18px rgba(118, 203, 255, 0.36);
}

body.ui-refresh #home .hero-glass .lead {
    color: #ced8eb !important;
    max-width: 64ch;
    font-size: clamp(1rem, 1.8vw, 1.14rem);
    line-height: 1.75;
}

body.ui-refresh #home .hero-points li {
    color: #d5def0 !important;
}

body.ui-refresh #home .hero-actions .btn {
    min-height: 48px;
    border-radius: 999px;
    letter-spacing: 0.02em;
}

body.ui-refresh #home .hero-actions .btn.btn-corporate {
    background: linear-gradient(130deg, var(--lux-red), #b2364a);
    border-color: rgba(227, 73, 94, 0.68);
    color: #fff;
    box-shadow: 0 8px 24px rgba(227, 73, 94, 0.28);
}

body.ui-refresh #home .hero-actions .btn.btn-corporate:hover,
body.ui-refresh #home .hero-actions .btn.btn-corporate:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(227, 73, 94, 0.35), 0 0 0 1px rgba(227, 73, 94, 0.45);
}

body.ui-refresh #home .hero-actions .btn.btn-outline-primary {
    background: rgba(118, 203, 255, 0.08);
    border-color: rgba(118, 203, 255, 0.56);
    color: #dff3ff;
}

body.ui-refresh #home .hero-actions .btn.btn-outline-primary:hover,
body.ui-refresh #home .hero-actions .btn.btn-outline-primary:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(118, 203, 255, 0.2), 0 0 0 1px rgba(118, 203, 255, 0.42);
    background: rgba(118, 203, 255, 0.14);
}

body.ui-refresh #home .hero-badge {
    background: rgba(118, 203, 255, 0.12);
    border: 1px solid rgba(118, 203, 255, 0.36);
    color: #d9f2ff;
}

body.ui-refresh #home .hero-kpi {
    background: rgba(12, 17, 27, 0.72) !important;
    border: 1px solid rgba(211, 177, 112, 0.28) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}

body.ui-refresh #home .hero-kpi strong {
    color: #f7f2e6 !important;
}

body.ui-refresh #home .hero-kpi span {
    color: #cfd8ea !important;
}

body.ui-refresh #signboard-categories.category-gallery-section {
    padding-top: clamp(54px, 8vw, 90px);
    padding-bottom: clamp(48px, 7vw, 84px);
}

body.ui-refresh #signboard-categories .category-gallery-header h2 {
    color: #f7fbff;
    font-size: clamp(1.8rem, 3.4vw, 2.7rem);
    letter-spacing: 0.02em;
}

body.ui-refresh #signboard-categories .category-gallery-card {
    background: linear-gradient(168deg, rgba(18, 25, 39, 0.88), rgba(11, 16, 27, 0.9));
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: var(--lux-shadow);
    border-radius: 20px;
}

body.ui-refresh #signboard-categories .category-gallery-media {
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(5, 9, 15, 0.68);
}

body.ui-refresh #signboard-categories .category-gallery-media img {
    object-fit: cover;
    object-position: center;
    transition: transform 0.35s ease, filter 0.35s ease;
}

body.ui-refresh #signboard-categories .category-gallery-title {
    color: #f8fbff !important;
    font-weight: 700;
    letter-spacing: 0.015em;
    text-shadow: 0 8px 22px rgba(0, 0, 0, 0.75);
}

body.ui-refresh #signboard-categories .category-gallery-link:hover .category-gallery-card,
body.ui-refresh #signboard-categories .category-gallery-link:focus-visible .category-gallery-card {
    transform: translateY(-8px);
    border-color: rgba(118, 203, 255, 0.48);
    box-shadow: 0 24px 46px rgba(0, 0, 0, 0.52), 0 0 0 1px rgba(118, 203, 255, 0.26);
}

body.ui-refresh #signboard-categories .category-gallery-link:hover .category-gallery-media img,
body.ui-refresh #signboard-categories .category-gallery-link:focus-visible .category-gallery-media img {
    transform: scale(1.06);
    filter: saturate(1.12) contrast(1.04);
}

body.ui-refresh .category-spotlight-shell,
body.ui-refresh .why-choose-led-card,
body.ui-refresh .installation-card,
body.ui-refresh .team-card,
body.ui-refresh .workshop-card,
body.ui-refresh .strength-pill,
body.ui-refresh .workflow-brand-card,
body.ui-refresh .questions-banner-card {
    background: var(--lux-panel) !important;
    border: 1px solid var(--lux-line) !important;
    box-shadow: var(--lux-shadow) !important;
}

body.ui-refresh .reveal {
    will-change: transform, opacity;
}

/* -----------------------------
   Gallery pages
------------------------------ */
body.premium-gallery {
    background:
        radial-gradient(900px 520px at 10% -10%, rgba(227, 73, 94, 0.15), transparent 65%),
        radial-gradient(900px 520px at 92% -12%, rgba(118, 203, 255, 0.14), transparent 66%),
        linear-gradient(180deg, #090c14 0%, #0b101a 100%);
    color: var(--lux-text);
    font-family: "Manrope", sans-serif;
}

body.premium-gallery .site-header {
    border-bottom: 1px solid rgba(211, 177, 112, 0.3);
    background: rgba(8, 11, 18, 0.64);
    backdrop-filter: blur(10px);
}

body.premium-gallery .site-nav a {
    color: #ecf3ff;
}

body.premium-gallery .site-nav a.is-active,
body.premium-gallery .site-nav a:hover,
body.premium-gallery .site-nav a:focus-visible {
    color: #fff;
    text-shadow: 0 0 14px rgba(118, 203, 255, 0.36);
}

body.premium-gallery .query-box strong {
    color: #f4f8ff;
}

body.premium-gallery .query-box a {
    color: var(--lux-gold);
}

body.premium-gallery .gallery-shell {
    padding-top: clamp(32px, 5vw, 56px);
    padding-bottom: clamp(36px, 5vw, 60px);
}

body.premium-gallery .gallery-hero h1 {
    color: #f6faff;
    font-family: "Playfair Display", "Cormorant Garamond", serif;
    letter-spacing: 0.01em;
}

body.premium-gallery .gallery-hero p {
    color: #bec9de;
}

body.premium-gallery .filter-chip {
    border-color: rgba(211, 177, 112, 0.42);
    background: rgba(13, 19, 31, 0.78);
    color: #e4d2ae;
}

body.premium-gallery .filter-chip:hover,
body.premium-gallery .filter-chip:focus-visible {
    border-color: rgba(118, 203, 255, 0.6);
    color: #e8f7ff;
    box-shadow: 0 12px 24px rgba(118, 203, 255, 0.18);
}

body.premium-gallery .filter-chip.is-active {
    background: linear-gradient(130deg, #dc4864, #af334b);
    color: #fff;
    border-color: rgba(227, 73, 94, 0.65);
    box-shadow: 0 14px 24px rgba(227, 73, 94, 0.26);
}

body.premium-gallery .gallery-card {
    border: 1px solid var(--lux-line);
    background: linear-gradient(160deg, rgba(14, 20, 33, 0.92), rgba(10, 15, 25, 0.9));
    box-shadow: var(--lux-shadow);
}

body.premium-gallery .gallery-card:hover,
body.premium-gallery .gallery-card:focus-visible {
    transform: translateY(-6px);
    border-color: rgba(118, 203, 255, 0.5);
    box-shadow: 0 22px 44px rgba(0, 0, 0, 0.54), 0 0 0 1px rgba(118, 203, 255, 0.18);
}

body.premium-gallery .gallery-card img {
    border-radius: 10px;
    object-fit: cover;
    filter: saturate(1.05);
}

body.premium-gallery .gallery-caption {
    color: #f2f7ff;
    background: rgba(10, 15, 24, 0.8);
    border-top: 1px solid var(--lux-line-soft);
}

body.premium-gallery .empty-state {
    border-color: rgba(118, 203, 255, 0.36);
    background: rgba(14, 20, 33, 0.68);
    color: #c9d4e8;
}

body.premium-gallery .lightbox {
    background: rgba(6, 9, 15, 0.86);
    backdrop-filter: blur(6px);
}

body.premium-gallery .lightbox-panel {
    background: linear-gradient(160deg, rgba(12, 18, 29, 0.96), rgba(9, 14, 24, 0.96));
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.6);
    border-radius: 16px;
}

body.premium-gallery .lightbox-meta {
    border-top: 1px solid var(--lux-line-soft);
}

body.premium-gallery .lightbox-title {
    color: #f7fbff;
}

body.premium-gallery .lightbox-subtitle,
body.premium-gallery .lightbox-count {
    color: #c6d2e8;
}

body.premium-gallery .lightbox-btn {
    background: rgba(14, 21, 34, 0.74);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: #f3f7ff;
}

body.premium-gallery .lightbox-btn:hover,
body.premium-gallery .lightbox-btn:focus-visible {
    border-color: rgba(118, 203, 255, 0.65);
    box-shadow: 0 10px 18px rgba(118, 203, 255, 0.2);
}

/* -----------------------------
   Mobile polish
------------------------------ */
@media (max-width: 991.98px) {
    body.ui-refresh .hero-glass {
        border-radius: 22px;
        padding: 24px 18px !important;
    }

    body.ui-refresh #home .hero-actions .btn {
        width: 100%;
    }

    body.ui-refresh #signboard-categories .category-gallery-grid {
        gap: 18px;
    }
}

@media (max-width: 767.98px) {
    body.premium-gallery .site-header-inner {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    body.premium-gallery .query-box {
        text-align: left;
    }

    body.premium-gallery .gallery-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}
