/* =========================================
   DESIGN TOKENS & VARIABLES
   ========================================= */
:root {
    /* Colors */
    --bg-base: #FFFFFF; /* Pure crisp white */
    --bg-alt: #F8F9FB; /* Subtle cool-white */
    --primary-accent: #C6973F; /* Rich gold */
    --primary-accent-hover: #D4A843;
    --secondary-accent: #0D1F3C; /* Deep navy */
    --secondary-accent-dark: #0A172D;
    --text-primary: #0D1F3C; /* Deep navy for headings */
    --text-body: #2E3A4E; /* Dark slate for body */
    --text-light: #6C7A92;
    
    /* Glassmorphism */
    --glass-bg: rgba(255, 255, 255, 0.60);
    --glass-border: 1px solid rgba(255, 255, 255, 0.6);
    --glass-shadow: 0 8px 32px rgba(13, 31, 60, 0.10);
    --glass-shadow-hover: 0 16px 48px rgba(13, 31, 60, 0.15);
    --glass-blur: blur(18px);

    /* Typography */
    --font-primary: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    
    /* Layout & Spacing */
    --container-width: 1200px;
    --radius-sm: 12px; /* Inputs */
    --radius-md: 50px; /* Pill buttons */
    --radius-lg: 24px; /* Cards */
    
    /* Transitions */
    --transition-smooth: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* =========================================
   RESET & BASE STYLES
   ========================================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-primary);
    background-color: var(--bg-base);
    color: var(--text-body);
    line-height: 1.6;
    overflow-x: hidden;
    position: relative;
    font-weight: 400; /* Clean light body */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1 0 auto;
}

footer {
    flex-shrink: 0;
}

/* Subtle background texture */
body::before {
    content: '';
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
    z-index: -1;
    background-image: radial-gradient(rgba(13, 31, 60, 0.04) 1px, transparent 1px);
    background-size: 24px 24px;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--text-primary);
    font-weight: 800; /* Bold heavy headings */
    line-height: 1.2;
}

h1 { font-size: clamp(3rem, 5vw, 4.5rem); letter-spacing: -0.03em; }
h2 { font-size: clamp(2.2rem, 3.5vw, 3.2rem); letter-spacing: -0.02em; margin-bottom: 1rem; }
h3 { font-size: 1.5rem; margin-bottom: 0.75rem; letter-spacing: -0.01em; }

p { margin-bottom: 1rem; font-size: 1.05rem; }
a { color: inherit; text-decoration: none; transition: var(--transition-smooth); }
ul { list-style: none; }

.container {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 5%;
    position: relative;
    z-index: 1;
}

.section {
    padding: 7rem 0;
}
.section-light {
    background-color: var(--bg-alt);
    position: relative;
}
.text-center { text-align: center; }

/* =========================================
   COMPONENTS
   ========================================= */

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.875rem 2.25rem;
    font-weight: 600;
    border-radius: var(--radius-md); /* Pill buttons */
    cursor: pointer;
    transition: var(--transition-smooth);
    font-size: 1rem;
    border: none;
    outline: none;
    letter-spacing: 0.02em;
}
.btn-small {
    padding: 0.6rem 1.5rem;
    font-size: 0.9rem;
}

.btn-primary {
    background-color: var(--primary-accent);
    color: #fff;
    box-shadow: 0 4px 14px rgba(198, 151, 63, 0.3);
}
.btn-primary:hover {
    background-color: var(--primary-accent-hover);
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(198, 151, 63, 0.4), 0 0 15px rgba(198, 151, 63, 0.2);
}

.btn-secondary {
    background-color: transparent;
    color: var(--text-primary);
    border: 2px solid rgba(13, 31, 60, 0.15);
}
.btn-secondary:hover {
    background-color: var(--bg-base);
    transform: translateY(-4px);
    box-shadow: var(--glass-shadow);
    border-color: var(--primary-accent);
    color: var(--primary-accent);
}

/* Glass Card */
.glass-card {
    background: var(--glass-bg);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: var(--glass-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--glass-shadow);
    padding: 3rem 2.5rem;
    transition: var(--transition-smooth);
    position: relative;
}
.glass-card::after {
    /* Subtle inner border to enhance glass edge */
    content: '';
    position: absolute;
    inset: 0;
    border-radius: var(--radius-lg);
    border: 1px solid rgba(255, 255, 255, 0.9);
    pointer-events: none;
    z-index: 10;
}
.glass-card::before {
    /* Gold border glow on hover */
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: calc(var(--radius-lg) + 1px);
    background: linear-gradient(135deg, var(--primary-accent) 0%, transparent 100%);
    opacity: 0;
    transition: var(--transition-smooth);
    z-index: -1;
}

.glass-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--glass-shadow-hover);
}
.glass-card:hover::before {
    opacity: 1;
}

/* Badge */
.badge {
    display: inline-block;
    padding: 0.4rem 1rem;
    background-color: rgba(198, 151, 63, 0.1);
    color: var(--primary-accent);
    border-radius: var(--radius-md);
    font-size: 0.85rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border: 1px solid rgba(198, 151, 63, 0.2);
}

/* =========================================
   HEADER & NAV
   ========================================= */
.header {
    position: fixed;
    top: 24px;
    left: 50%;
    transform: translateX(-50%);
    width: 92%;
    max-width: 1024px;
    z-index: 1000;
    transition: all 0.4s ease;
    background: rgba(255,255,255,0.25);
    backdrop-filter: blur(40px) saturate(180%) brightness(1.15) contrast(0.95);
    -webkit-backdrop-filter: blur(40px) saturate(180%) brightness(1.15) contrast(0.95);
    border: none;
    border-radius: 999px;
    padding: 14px 32px;
    box-shadow:
        inset 0 1.5px 0 rgba(255,255,255,1),
        inset 0 -1px 0 rgba(255,255,255,0.25),
        inset 1px 0 0 rgba(255,255,255,0.30),
        inset -1px 0 0 rgba(255,255,255,0.30),
        0 2px 4px rgba(0,0,0,0.04),
        0 8px 24px rgba(0,0,0,0.06),
        0 24px 48px rgba(0,0,0,0.08);
}
.header::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.55) 0%,
        rgba(255,255,255,0.05) 40%,
        rgba(255,255,255,0) 60%,
        rgba(255,255,255,0.10) 100%
    );
    pointer-events: none;
    z-index: 1;
}
.header::after {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 999px;
    background: linear-gradient(
        to bottom,
        rgba(255,255,255,0.20) 0%,
        rgba(255,255,255,0) 50%
    );
    pointer-events: none;
    z-index: 1;
}
.header.scrolled {
    padding: 12px 32px;
    backdrop-filter: blur(60px) saturate(200%) brightness(1.18);
    -webkit-backdrop-filter: blur(60px) saturate(200%) brightness(1.18);
    box-shadow:
        inset 0 1.5px 0 rgba(255,255,255,1),
        inset 0 -1px 0 rgba(255,255,255,0.30),
        inset 1px 0 0 rgba(255,255,255,0.35),
        inset -1px 0 0 rgba(255,255,255,0.35),
        0 4px 8px rgba(0,0,0,0.06),
        0 16px 40px rgba(0,0,0,0.10),
        0 32px 64px rgba(0,0,0,0.10);
}

.header-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
}

.logo {
    display: flex;
    align-items: center;
    z-index: 1100;
    position: relative;
    text-decoration: none;
    color: #0D1F3C;
    font-weight: 700;
}

.header-logo-img {
    max-height: 48px;
    width: auto;
    object-fit: contain;
    transition: all 0.3s ease;
}

.header.scrolled .header-logo-img {
    max-height: 38px;
}

.drawer-logo-img {
    height: 56px;
    width: auto;
    object-fit: contain;
    margin-bottom: 12px;
}

.nav {
    display: flex;
    align-items: center;
    gap: 32px;
}

.nav-link {
    font-weight: 500;
    font-size: 14px;
    position: relative;
    color: #0D1F3C;
    padding: 0.5rem 0;
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: color 0.2s ease;
}
.nav-link:hover, .nav-link.active {
    color: #D4A843;
}
.nav-link.active::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 4px;
    background-color: #D4A843;
    border-radius: 50%;
}

/* Dropdown */
.nav-dropdown {
    position: relative;
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    margin-top: 8px;
    left: 50%;
    transform: translateX(-50%);
    min-width: 260px;
    background: #FFFFFF;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(13, 31, 60, 0.08);
    border-radius: 20px;
    box-shadow: 0 16px 48px rgba(13, 31, 60, 0.14);
    padding: 16px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 1001;
}
.nav-dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
}
.dropdown-item {
    display: block;
    padding: 10px 16px;
    color: #0D1F3C;
    font-weight: 500;
    font-size: 14px;
    border-radius: 12px;
    transition: all 0.2s ease;
    text-decoration: none;
}
.dropdown-item:hover {
    background-color: rgba(212, 168, 67, 0.10);
    color: #D4A843;
}

/* Header CTA Button & Actions */
.header-right-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}

.btn-cta {
    background: #D4A843;
    color: #FFFFFF;
    font-weight: 700;
    border-radius: 999px;
    padding: 9px 20px;
    transition: all 0.4s ease;
    border: 1px solid rgba(255,255,255,0.50);
    box-shadow:
        inset 0 1.5px 0 rgba(255,255,255,0.70),
        inset 0 -1px 0 rgba(0,0,0,0.10),
        0 2px 8px rgba(212,168,67,0.30);
    cursor: pointer;
    font-size: 13px;
    text-decoration: none;
    display: inline-block;
    position: relative;
    overflow: hidden;
}
.btn-cta::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 50%;
    background: linear-gradient(
        to bottom,
        rgba(255,255,255,0.25),
        rgba(255,255,255,0)
    );
    border-radius: 999px 999px 0 0;
    pointer-events: none;
}
.btn-cta:hover {
    background-color: #B8860B;
    transform: scale(1.03);
    color: #FFFFFF;
}

/* Mobile Toggle */
.mobile-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1100;
}

@media (max-width: 991px) {
    .header {
        width: calc(100% - 32px);
        max-width: none;
    }
    .header-container {
        gap: 16px;
    }
    .nav {
        display: none !important;
    }
    .mobile-toggle {
        display: flex !important;
    }
}

/* Full Screen Overlay Menu */
.mobile-drawer {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    z-index: 1050;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}
.mobile-drawer.open {
    opacity: 1;
    visibility: visible;
}
.drawer-header {
    position: absolute;
    top: 24px;
    right: 24px;
}
.drawer-close {
    background: none;
    border: none;
    font-size: 2.8rem;
    color: #D4A843;
    cursor: pointer;
    line-height: 1;
    font-weight: 300;
}
.drawer-nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}
.drawer-link {
    font-size: 20px;
    font-weight: 600;
    color: #0D1F3C;
    display: block;
    text-decoration: none;
    transition: color 0.2s ease;
}
.drawer-link:hover {
    color: #D4A843;
}
.drawer-subnav {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    margin-top: -0.5rem;
}
.drawer-sublink {
    font-size: 16px;
    font-weight: 500;
    color: #2E3A4E;
    text-decoration: none;
}
.drawer-sublink:hover {
    color: #D4A843;
}

/* =========================================
   HERO SECTION V11
   ========================================= */
.hero-v11 {
    display: flex;
    align-items: center;
    position: relative;
    padding-top: 140px;
    padding-bottom: 80px;
    overflow: hidden;
    background-color: #FFFFFF;
}

.hero-bg-v11 {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: #FFFFFF;
    z-index: 0;
}

.hero-texture-v11 {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
    z-index: 1;
    background-image: radial-gradient(#000000 1.5px, transparent 1.5px);
    background-size: 24px 24px;
    opacity: 0.03;
}

.blob-v11 {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}
.blob-navy-v11 {
    width: 600px;
    height: 600px;
    background: rgba(13, 31, 60, 0.05);
    filter: blur(140px);
    bottom: -10%;
    left: -10%;
}
.blob-gold-v11 {
    width: 500px;
    height: 500px;
    background: rgba(212, 168, 67, 0.06);
    filter: blur(120px);
    top: -5%;
    right: -10%;
}

.hero-container-v11 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: center;
    position: relative;
    z-index: 2;
    width: 100%;
}

/* Left Column Text */
.badge-v11.shimmer-badge-v11 {
    display: inline-flex;
    align-items: center;
    background: #FFFFFF;
    border: 1.5px solid var(--primary-accent);
    color: var(--primary-accent);
    padding: 0.45rem 1.25rem;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin-bottom: 2rem;
    position: relative;
    overflow: hidden;
}
.shimmer-badge-v11::after {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 50%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(212,168,67,0.4), transparent);
    animation: shimmer-v11 3s infinite linear;
}
@keyframes shimmer-v11 {
    100% { left: 200%; }
}

.hero-content-v11 h1 {
    font-size: clamp(3rem, 4.5vw, 4.25rem); /* roughly 68px */
    font-weight: 800;
    line-height: 1.1;
    color: var(--secondary-accent);
    margin-bottom: 1.5rem;
    letter-spacing: -1.5px;
}

/* Text Carousel V11 */
.text-carousel-v11 {
    display: inline-block;
    position: relative;
    vertical-align: bottom;
    height: 1.1em;
    width: 100%;
}
.carousel-word-v11 {
    position: absolute;
    left: 0;
    bottom: 0;
    color: var(--primary-accent);
    font-style: italic;
    font-weight: 800;
    opacity: 0;
    transform: translateY(15px);
    animation: carousel-cycle-v11 10s infinite cubic-bezier(0.4, 0, 0.2, 1);
    white-space: nowrap;
}
.carousel-word-v11:nth-child(1) { animation-delay: 0s; }
.carousel-word-v11:nth-child(2) { animation-delay: 2.5s; }
.carousel-word-v11:nth-child(3) { animation-delay: 5s; }
.carousel-word-v11:nth-child(4) { animation-delay: 7.5s; }

@keyframes carousel-cycle-v11 {
    0% { opacity: 0; transform: translateY(15px); }
    5% { opacity: 1; transform: translateY(0); }
    20% { opacity: 1; transform: translateY(0); }
    25% { opacity: 0; transform: translateY(-15px); }
    100% { opacity: 0; transform: translateY(-15px); }
}

.hero-content-v11 p {
    font-size: 1.0625rem; /* 17px */
    font-weight: 400;
    color: var(--text-body);
    margin-bottom: 2.5rem;
    max-width: 90%;
    line-height: 1.6;
}

/* Buttons */
.hero-actions-v11 {
    display: flex;
    gap: 16px;
    margin-bottom: 2rem;
    align-items: center;
}
.btn-v11 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    border-radius: 50px;
    padding: 16px 36px;
    font-size: 1rem;
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none;
}
.btn-gold-v11 {
    background-color: var(--primary-accent);
    color: #FFFFFF;
}
.btn-gold-v11:hover {
    background-color: #B8860B;
    box-shadow: 0 0 28px rgba(212, 168, 67, 0.45);
    transform: scale(1.03);
    color: #FFFFFF;
}
.btn-navy-outline-v11 {
    background-color: transparent;
    border: 2px solid var(--secondary-accent);
    color: var(--secondary-accent);
}
.btn-navy-outline-v11:hover {
    background-color: var(--secondary-accent);
    color: #FFFFFF;
    transform: scale(1.03);
}

/* Trust Strip */
.trust-row-v11 {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    white-space: nowrap;
    gap: 0.6rem;
    margin-top: 32px;
}
@media (min-width: 992px) {
    .trust-row-v11 {
        font-size: 0.85rem;
    }
}
@media (min-width: 1200px) {
    .trust-row-v11 {
        font-size: 1rem;
    }
}
.trust-item-v11 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}
.trust-num-v11, .trust-suffix-v11 {
    color: var(--secondary-accent);
    font-weight: 800;
}
.trust-label-v11 {
    color: var(--text-body);
    font-weight: 600;
}
.trust-dot-v11 {
    color: var(--primary-accent);
    font-weight: bold;
}

/* Right Column Visual Showcase */
.hero-visual-v11 {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: flex-end;
}
.glass-carousel-v11 {
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.55);
    box-shadow: 0 24px 64px rgba(13,31,60,0.13);
    border-radius: 28px;
    padding: 24px;
    width: 100%;
    max-width: 580px;
    aspect-ratio: 1/1;
    position: relative;
    z-index: 10;
}
.border-shimmer-v11 {
    animation: border-pulse-v11 3s infinite alternate ease-in-out;
}
@keyframes border-pulse-v11 {
    0% { border-color: rgba(212,168,67,0.15); }
    100% { border-color: rgba(212,168,67,0.40); }
}
.float-v11 {
    animation: float-card-v11 4s infinite alternate ease-in-out;
}
@keyframes float-card-v11 {
    0% { transform: translateY(0); }
    100% { transform: translateY(-8px); }
}

.carousel-container-v11 {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
    background: transparent;
}
.carousel-img-v11 {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s cubic-bezier(0.4, 0, 0.2, 1);
}
.carousel-img-v11:first-child {
    opacity: 1;
}

/* Custom Image Cropping Alignments */
.carousel-img-v11:nth-child(2) {
    object-position: center 15%;
}
.carousel-img-v11:nth-child(3) {
    object-position: center 20%;
}
.carousel-img-v11:nth-child(4) {
    object-position: top center;
}

.carousel-dots-v11 {
    position: absolute;
    bottom: 36px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 10;
}
.dot-v11 {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(212,168,67,0.4);
    transition: all 0.3s ease;
}
.dot-v11.active {
    background: rgba(212,168,67,1);
    transform: scale(1.3);
}

/* Floating Overlay Badges */
.overlay-badge-v11 {
    position: absolute;
    background: rgba(255, 255, 255, 0.70);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 50px;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 20;
    box-shadow: 0 12px 30px rgba(13,31,60,0.08);
}
.bottom-left-badge-v11 {
    bottom: -20px;
    left: -30px;
    animation: 
        badge-bounce 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards 0.8s,
        float-badge-1 3s ease-in-out infinite alternate 1.6s;
    opacity: 0;
    transform: scale(0);
}
.top-right-badge-v11 {
    top: -20px;
    right: -20px;
    animation: 
        badge-bounce 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards 1s,
        float-badge-2 3.5s ease-in-out infinite alternate 1.8s;
    opacity: 0;
    transform: scale(0);
}

.gold-icon-v11 { color: var(--primary-accent); font-size: 1.1rem; }
.badge-text-v11 { color: var(--secondary-accent); font-weight: 700; font-size: 0.9rem; }
.gold-dot-v11 { width: 6px; height: 6px; border-radius: 50%; background: var(--primary-accent); }

@keyframes badge-bounce {
    0% { opacity: 0; transform: scale(0); }
    70% { opacity: 1; transform: scale(1.05); }
    100% { opacity: 1; transform: scale(1); }
}
@keyframes float-badge-1 {
    0% { transform: scale(1) translateY(0); }
    100% { transform: scale(1) translateY(-8px); }
}
@keyframes float-badge-2 {
    0% { transform: scale(1) translateY(0); }
    100% { transform: scale(1) translateY(6px); }
}

@media (max-width: 991px) {
    .hero-v11 {
        padding-top: 10rem;
    }
    .hero-container-v11 {
        grid-template-columns: 1fr;
        gap: 3.5rem;
    }
    .hero-content-v11 h1 {
        font-size: 42px; /* Set to specifically 42px on mobile */
    }
    .trust-row-v11 {
        flex-wrap: wrap; /* Wraps to two lines */
        white-space: normal;
    }
    .hero-visual-v11 {
        justify-content: center;
    }
    .glass-carousel-v11 {
        margin: 0 auto;
    }
    .bottom-left-badge-v11 {
        left: -10px;
    }
    .top-right-badge-v11 {
        right: -10px;
    }
}
/* =========================================
   WHY TRUST US SECTION
   ========================================= */
.trust-features-section {
    padding: 6rem 0;
    background-color: #FFFFFF;
    position: relative;
    overflow: hidden;
}

.trust-features-bg {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(13, 31, 60, 0.5) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: 0.05;
    pointer-events: none;
    z-index: 0;
}

.trust-features-section h2 {
    color: var(--secondary-accent);
}

.trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    position: relative;
    z-index: 10;
}

.trust-card {
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 20px;
    padding: 36px 24px;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.trust-card:hover {
    background: rgba(13, 31, 60, 0.02);
    transform: translateY(-8px);
    box-shadow: 0 16px 40px rgba(13, 31, 60, 0.06);
}

.trust-card-top {
    margin-bottom: 6px;
    color: var(--primary-accent);
    transition: all 0.3s ease;
}

.trust-card:hover .trust-card-top {
    text-shadow: 0 0 15px rgba(212, 168, 67, 0.3);
    transform: scale(1.05);
}

.trust-card-num {
    font-size: 40px;
    font-weight: 800;
    line-height: 1;
}

.trust-card-suffix {
    font-size: 24px;
    font-weight: 800;
    vertical-align: super;
}

.trust-card-icon {
    margin-bottom: 20px;
    color: var(--secondary-accent);
    opacity: 0.7;
}

.trust-card-title {
    color: var(--secondary-accent);
    font-size: 1.15rem;
    font-weight: 800;
    margin-bottom: 12px;
}

.trust-card-desc {
    color: var(--text-body);
    font-size: 0.95rem;
    line-height: 1.5;
    margin: 0;
}

@media (max-width: 991px) {
    .trust-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 576px) {
    .trust-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================
   SERVICES
   ========================================= */
.section-bg-grey {
    background-color: #F4F6FA;
}

.section-header {
    margin-bottom: 4.5rem;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
}

.heading-with-underline {
    position: relative;
    padding-bottom: 24px;
}
.heading-with-underline::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 4px;
    background-color: var(--primary-accent);
    border-radius: 4px;
}

/* Editorial Magazine Layout */
.editorial-services {
    display: flex;
    flex-direction: column;
    gap: 7rem;
    margin-top: 5rem;
}

.service-editorial-row {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 5rem;
    align-items: center;
}
.service-editorial-row.reverse {
    grid-template-columns: 0.85fr 1.15fr;
}
.service-editorial-row.reverse .service-content-col {
    grid-row: 1;
    grid-column: 1;
}
.service-editorial-row.reverse .service-image-col {
    grid-row: 1;
    grid-column: 2;
}

.service-content-col {
    padding: 2rem 0;
}

.ba-container {
    position: relative;
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 12px;
    overflow: hidden;
    --pos: 50%;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
    transform: translateZ(0); /* force hw acceleration */
}
.ba-container img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}
.ba-before {
    clip-path: polygon(0 0, var(--pos) 0, var(--pos) 100%, 0 100%);
    z-index: 2;
}

/* Fake raw filters */
.raw-filter-portrait { filter: saturate(0.6) contrast(0.85); }
.raw-filter-event { filter: brightness(0.8) contrast(0.75) sepia(20%); }
.raw-filter-newborn { filter: hue-rotate(-10deg) saturate(1.4) contrast(0.8); }
.raw-filter-product { filter: brightness(0.7) contrast(0.85); }
.raw-filter-ghost { filter: contrast(0.7) saturate(0.8); }
.raw-filter-bg { filter: brightness(0.8) sepia(20%) contrast(75%); }
.raw-filter-realestate { filter: brightness(0.6) saturate(0.6) contrast(0.9); }
.raw-filter-hero { filter: brightness(0.7) contrast(0.8); }

.ba-slider {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: ew-resize;
    z-index: 10;
    margin: 0;
}
.ba-slider-line {
    position: absolute;
    top: 0; bottom: 0;
    left: var(--pos);
    width: 3px;
    background: #fff;
    transform: translateX(-50%);
    z-index: 5;
    pointer-events: none;
    box-shadow: 0 0 12px rgba(13,31,60,0.5);
}
.ba-slider-button {
    position: absolute;
    top: 50%; left: var(--pos);
    transform: translate(-50%, -50%);
    width: 48px; height: 48px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 6;
    box-shadow: 0 4px 16px rgba(13,31,60,0.25);
    color: var(--secondary-accent);
    font-weight: 800;
}
.ba-slider-button::after {
    content: '↔';
    font-size: 18px;
    letter-spacing: -2px;
}
.ba-label {
    position: absolute;
    top: 1.5rem;
    padding: 0.5rem 1.25rem;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 800;
    color: var(--text-primary);
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 4;
    pointer-events: none;
    border: 1px solid rgba(255,255,255,1);
    box-shadow: 0 4px 12px rgba(13,31,60,0.08);
}
.ba-label-before { left: 1.5rem; }
.ba-label-after { right: 1.5rem; }

.service-icon-circle {
    width: 60px;
    height: 60px;
    background-color: var(--secondary-accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    box-shadow: 0 6px 15px rgba(13, 31, 60, 0.15);
}
.gold-icon {
    color: var(--primary-accent);
}

.editorial-services h3 {
    color: var(--text-primary);
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.service-desc {
    color: #5C6A82;
    font-size: 1.05rem;
    line-height: 1.7;
    margin-bottom: 2rem;
}

.service-features {
    margin-bottom: 2.5rem;
}
.service-features li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
    font-size: 0.95rem;
    color: var(--text-body); 
    font-weight: 500;
}
.check-icon {
    color: var(--primary-accent);
    font-weight: bold;
    font-size: 1.1rem;
    line-height: 1;
    margin-top: 1px;
}

@media (max-width: 992px) {
    .editorial-services {
        gap: 5rem;
    }
    .service-editorial-row {
        grid-template-columns: 1fr !important;
        gap: 3rem;
    }
    .service-editorial-row.reverse .service-content-col {
        grid-row: 2;
        grid-column: 1;
    }
    .service-editorial-row.reverse .service-image-col {
        grid-row: 1;
        grid-column: 1;
    }
    .ba-container {
        aspect-ratio: 16/9;
    }
}

/* =========================================
   PORTFOLIO

   ========================================= */
.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
}

.portfolio-item {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    aspect-ratio: 4/3;
    cursor: pointer;
    box-shadow: var(--glass-shadow);
    border: 4px solid #FFFFFF;
}

.portfolio-image-placeholder {
    width: 100%;
    height: 100%;
    background-color: #f0f2f5;
    background-position: center;
    background-size: cover;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.portfolio-item:hover .portfolio-image-placeholder {
    transform: scale(1.05);
}

.img-1 { background-image: url('https://images.unsplash.com/photo-1515886657613-9f3515b0c78f?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80'); }
.img-2 { background-image: url('https://images.unsplash.com/photo-1526045612212-70caf35c14df?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80'); }
.img-3 { background-image: url('https://images.unsplash.com/photo-1534528741775-53994a69daeb?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80'); }
.img-4 { background-image: url('https://images.unsplash.com/photo-1469334031218-e382a71b716b?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80'); }

.portfolio-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(13, 31, 60, 0.8) 0%, rgba(13, 31, 60, 0) 60%);
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    opacity: 0;
    transition: var(--transition-smooth);
}

.portfolio-item:hover .portfolio-overlay {
    opacity: 1;
}

.portfolio-overlay h4 {
    color: #fff;
    font-size: 1.6rem;
    margin-bottom: 0.25rem;
    transform: translateY(20px);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.portfolio-overlay span {
    color: var(--primary-accent);
    font-weight: 600;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    transform: translateY(20px);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.05s;
}

.portfolio-item:hover .portfolio-overlay h4,
.portfolio-item:hover .portfolio-overlay span {
    transform: translateY(0);
}

/* =========================================
   TESTIMONIALS SECTION (FRAMER)
   ========================================= */
.testimonials-swiper-section.framer-layout {
    padding: 7rem 0 6rem 0;
    background-color: #FFFFFF;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.testimonial-blob {
    position: absolute;
    filter: blur(120px);
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}
.blob-navy {
    background: rgba(13,31,60,0.04);
    width: 600px;
    height: 600px;
    top: 5%;
    left: -150px;
}
.blob-gold {
    background: rgba(212,168,67,0.05);
    width: 600px;
    height: 600px;
    bottom: 5%;
    right: -150px;
}

.testimonials-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 80px; /* 80px horizontal padding on desktop */
    position: relative;
    z-index: 10;
}

.testimonial-eyebrow {
    color: #D4A843;
    letter-spacing: 0.25em;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    display: block;
    margin-bottom: 12px;
}

.testimonial-main-heading {
    color: #0D1F3C;
    font-size: 52px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
}

.testimonial-bar-wrapper {
    height: 3px;
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 20px 0;
}
.testimonial-animated-bar {
    width: 0px; 
    height: 100%;
    background-color: #D4A843;
    border-radius: 4px;
    transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.testimonial-subtext {
    color: var(--text-body);
    font-size: 16px;
    margin: 0;
}

/* Base Wrapper for Arrows */
.framer-swiper-wrapper {
    position: relative;
    width: 100%;
}

.testimonial-swiper {
    width: 100%;
    padding: 20px 0 60px 0; /* Room for dots and active shadow */
}

/* Slide Setup */
.swiper-slide.framer-slide {
    height: auto;
    display: flex;
    /* Removed explicit pixel width to let Swiper's slidesPerView math precisely calculate thirds of the 1200 container - gaps */
}

/* Card Styling */
.testimonial-card-inner.framer-card {
    width: 100%;
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 8px 32px rgba(13,31,60,0.08);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    position: relative;
    cursor: grab;
}

.testimonial-card-inner.framer-card:active {
    cursor: grabbing;
}

.framer-quote-mark {
    position: absolute;
    top: 24px;
    left: 32px;
    font-family: Georgia, serif;
    font-size: 72px;
    line-height: 0.8;
    color: #D4A843;
    opacity: 0.25;
    z-index: 0;
    pointer-events: none;
}

.stars-row.framer-stars {
    display: flex;
    gap: 2px;
    position: relative;
    z-index: 1;
}

.quote-text.framer-quote {
    color: #0D1F3C;
    font-size: 15px;
    line-height: 1.75;
    font-style: normal;
    font-weight: 400;
    margin-top: 16px;
    margin-bottom: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex-grow: 1;
    position: relative;
    z-index: 1;
}

.card-divider.framer-divider {
    width: 100%;
    height: 1px;
    background: rgba(13,31,60,0.07);
    margin-bottom: 20px;
}

.author-row.framer-author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.client-avatar.framer-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #D4A843;
}

.client-meta {
    flex-grow: 1;
}

.client-name.framer-name {
    color: #0D1F3C;
    font-size: 15px;
    font-weight: 800;
    margin: 0 0 2px 0;
}

.client-role.framer-role {
    color: #D4A843;
    font-size: 13px;
    font-weight: 400;
    margin: 0;
}

.framer-verified {
    display: flex;
    align-items: center;
    gap: 4px;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 50px;
    padding: 4px 12px;
    border: 1px solid rgba(255,255,255,0.5);
    margin-left: auto; /* Push to far right */
}
.framer-verified .verified-text {
    color: var(--text-body);
    font-size: 11px;
    font-weight: 600;
}

/* Active Highlight & Hover Logic */
.swiper-slide-active .testimonial-card-inner.framer-card {
    transform: scale(1.03);
    background: rgba(255, 255, 255, 0.65);
    box-shadow: 0 12px 48px rgba(13,31,60,0.12);
    border: 1px solid rgba(212,168,67,0.30);
}

.swiper-slide.framer-slide:hover .testimonial-card-inner.framer-card {
    transform: translateY(-10px);
    box-shadow: 0 20px 56px rgba(13,31,60,0.14);
    border: 1px solid rgba(212,168,67,0.35);
}
.swiper-slide-active.framer-slide:hover .testimonial-card-inner.framer-card {
    transform: translateY(-10px) scale(1.03);
}

/* Framer Arrows */
.framer-arrow {
    width: 48px !important;
    height: 48px !important;
    background: rgba(255,255,255,0.65) !important;
    backdrop-filter: blur(12px) !important;
    border-radius: 50% !important;
    color: #0D1F3C !important;
    border: 1px solid rgba(255,255,255,0.5);
    box-shadow: 0 4px 15px rgba(13,31,60,0.05);
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 20;
    margin-top: -15px; /* offset the padding-bottom 60px of the wrapper visually */
}
.framer-arrow:hover {
    background: #D4A843 !important;
    color: #FFFFFF !important;
}
.framer-arrow::after {
    display: none; 
}

/* Position outside the card track */
.swiper-button-prev.framer-arrow {
    left: -60px;
}
.swiper-button-next.framer-arrow {
    right: -60px;
}

/* Pagination Dots */
.swiper-pagination-bullet {
    background: #0D1F3C !important;
    opacity: 0.15 !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 3px !important; /* 6px gap via margin */
    transition: all 0.3s ease !important;
}
.swiper-pagination-bullet-active {
    background: #D4A843 !important;
    opacity: 1 !important;
    width: 24px !important;
    border-radius: 10px !important;
}

@media (max-width: 1024px) {
    .testimonials-container {
        padding: 0 40px; /* Tablet horizontal padding */
    }
    .swiper-button-prev.framer-arrow { left: -20px; }
    .swiper-button-next.framer-arrow { right: -20px; }
}

@media (max-width: 768px) {
    .testimonials-container {
        padding: 0 20px; /* Mobile horizontal padding */
    }
    .testimonial-main-heading { font-size: 38px; }
    .framer-arrow { display: none !important; } /* Hide arrows on touch */
}

/* =========================================
   PREMIUM CTA SECTION
   ========================================= */
.premium-cta-section {
    background-color: #0D1F3C;
    padding: 8rem 0;
    position: relative;
    overflow: hidden;
    width: 100vw;
    margin-left: calc(-50vw + 50%); /* ensure full width spanning */
}

.cta-background-noise {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: radial-gradient(rgba(212,168,67,0.3) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: 0.05;
    z-index: 1;
    pointer-events: none;
}

.cta-gold-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(212,168,67,0.18) 0%, rgba(212,168,67,0) 70%);
    border-radius: 50%;
    filter: blur(80px);
    z-index: 1;
    pointer-events: none;
}

.premium-cta-section .container {
    position: relative;
    z-index: 10;
}

.cta-eyebrow {
    display: inline-block;
    background: rgba(212,168,67,0.15);
    color: #D4A843;
    padding: 6px 16px;
    border-radius: 40px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 24px;
    border: 1px solid rgba(212,168,67,0.3);
}

.cta-main-heading {
    color: #FFFFFF;
    font-size: 52px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 16px 0;
}

.premium-cta-section .cta-subtext {
    color: rgba(255,255,255,0.7);
    font-size: 18px;
    max-width: 600px;
    margin: 0 auto 40px auto;
}

.cta-inline-form {
    display: flex;
    justify-content: center;
    gap: 12px;
    max-width: 550px;
    margin: 0 auto;
}

.cta-email-input {
    flex-grow: 1;
    background: rgba(255,255,255,0.06); /* Dark glass */
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 40px;
    padding: 0 24px;
    color: #FFFFFF;
    font-size: 16px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: border-color 0.3s ease, background 0.3s ease;
    height: 56px;
    outline: none;
}

.cta-email-input::placeholder {
    color: rgba(255,255,255,0.4);
}

.cta-email-input:focus {
    border-color: #D4A843;
    background: rgba(255,255,255,0.10);
    box-shadow: 0 0 12px rgba(212,168,67,0.15);
}

.cta-submit-btn {
    background: #D4A843;
    color: #FFFFFF;
    border: none;
    border-radius: 40px;
    padding: 0 32px;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.3s ease;
    height: 56px;
    white-space: nowrap;
}

.cta-submit-btn:hover {
    background: #EAC064; /* Brighter gold */
    box-shadow: 0 0 24px rgba(212,168,67,0.5);
    transform: translateY(-2px);
}

@media (max-width: 600px) {
    .cta-inline-form {
        flex-direction: column;
        width: 100%;
        max-width: 400px;
    }
    .cta-main-heading {
        font-size: 36px;
    }
}

/* =========================================
   FOOTER (PREMIUM DEEP NAVY)
   ========================================= */
.footer.premium-footer {
    background-color: #080F1E;
    border-top: 1px solid rgba(212,168,67,0.2);
    padding: 80px 0 32px 0;
    color: #FFFFFF;
    position: relative;
    z-index: 10;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1.5fr 1.5fr 2fr;
    gap: 40px;
    margin-bottom: 64px;
}

.footer-logo {
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 16px 0;
}

.footer-tagline {
    color: #94A3B8; /* Slate grey */
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 24px 0;
    max-width: 280px;
}

.social-links {
    display: flex;
    gap: 16px;
}

.social-links a {
    color: #94A3B8;
    transition: color 0.2s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.social-links a:hover {
    color: #D4A843;
    transform: translateY(-2px);
}

.footer-heading {
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 20px 0;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.footer-col {
    display: flex;
    flex-direction: column;
}

.footer-link {
    color: #cbd5e1; /* Light grey */
    font-size: 15px;
    text-decoration: none;
    margin-bottom: 14px;
    transition: color 0.2s ease, transform 0.2s ease;
    width: fit-content;
}

.footer-link:hover {
    color: #D4A843;
    transform: translateX(4px);
}

.footer-col-main-link {
    color: #cbd5e1;
    font-size: 16px;
    text-decoration: none;
    margin-bottom: 8px;
    transition: color 0.2s ease;
    font-weight: 500;
}
.footer-col-main-link:hover {
    color: #D4A843;
}

.footer-subtext {
    color: #94A3B8;
    font-size: 13px;
    margin: 0 0 24px 0;
}

.footer-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(212,168,67,0.1);
    border: 1px solid rgba(212,168,67,0.3);
    padding: 6px 14px;
    border-radius: 40px;
    width: fit-content;
}

.footer-badge span {
    color: #D4A843;
    font-size: 12px;
    font-weight: 600;
}

.footer-bottom-bar {
    border-top: 1px solid rgba(212,168,67,0.15); /* Thin gold divider */
    padding-top: 32px;
    text-align: center;
}

.footer-bottom-bar p {
    color: #64748B; /* Small grey */
    font-size: 13px;
    margin: 0;
}

@media (max-width: 1024px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 60px 40px;
    }
}

@media (max-width: 600px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

/* =========================================
   SAAS SERVICES REDESIGN (V12)
   ========================================= */
.services-v12 {
    position: relative;
    padding: 8rem 0;
    overflow: hidden;
    background-color: #F4F6FA;
}

.blob-v12 {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
    opacity: 0.05;
}
.blob-navy-v12 {
    width: 600px;
    height: 600px;
    background: #0D1F3C;
    filter: blur(140px);
    bottom: -10%;
    left: -10%;
}
.blob-gold-v12 {
    width: 500px;
    height: 500px;
    background: #D4A843;
    filter: blur(120px);
    top: -5%;
    right: -10%;
}

.services-v12 .container {
    position: relative;
    z-index: 10;
    max-width: 1200px;
    padding: 0 80px; /* Specific padding requested */
}
@media (max-width: 1024px) {
    .services-v12 .container { padding: 0 40px; }
}
@media (max-width: 768px) {
    .services-v12 .container { padding: 0 20px; }
}

.services-eyebrow {
    color: #D4A843;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 12px;
    display: inline-block;
}
.services-heading {
    color: #0D1F3C;
    font-size: 52px;
    font-weight: 800;
    margin-bottom: 24px;
    line-height: 1.1;
}
.services-underline {
    position: relative;
    width: 60px;
    height: 4px;
    background-color: #D4A843;
    border-radius: 4px;
    margin: 0 auto 24px auto;
}
.services-subtext {
    color: #6C7A92;
    font-size: 16px;
    max-width: 600px;
    margin: 0 auto 60px auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media (max-width: 768px) {
    .services-heading { font-size: 38px; }
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
@media (max-width: 1024px) {
    .services-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .services-grid { grid-template-columns: 1fr; }
}

.service-card-v12 {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.65);
    box-shadow: 0 8px 32px rgba(13,31,60,0.08);
    border-radius: 24px;
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    position: relative;
}

.service-card-v12:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 56px rgba(13,31,60,0.14);
    border: 1px solid rgba(212,168,67,0.35);
}

.service-card-v12:hover .sc-image-header img {
    transform: scale(1.05); /* Slight scale on hover */
}

/* Make featured card border always visible */
.card-featured-border {
    border: 1px solid rgba(212,168,67,0.30);
}

.sc-image-header {
    height: 220px;
    width: 100%;
    position: relative;
    overflow: hidden; /* Constraints image scale */
}

.sc-image-header .ba-container {
    height: 100%;
    width: 100%;
    border-radius: 0;
    box-shadow: none;
    aspect-ratio: auto;
}
.sc-image-header .ba-label {
    top: 16px;
    padding: 6px 14px;
    font-size: 11px;
    font-weight: 700;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.85); /* Whiter glass */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #0D1F3C;
    border: 1px solid rgba(212,168,67,0.20);
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.sc-image-header .ba-slider-button {
    width: 28px; /* Slightly smaller handle */
    height: 28px;
}
.sc-image-header .ba-slider-button::after {
    font-size: 12px;
}

.sc-image-header img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: transform 0.4s ease; /* For hover scale */
}

.sc-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.sc-top-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sc-icon {
    color: #0D1F3C;
}

.sc-tag {
    background: rgba(212,168,67,0.15);
    color: #D4A843;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 20px;
    letter-spacing: 0.05em;
}

.sc-content h3 {
    color: #0D1F3C;
    font-size: 20px;
    font-weight: 800;
    margin: 10px 0 8px 0;
}

.sc-desc {
    color: #6C7A92;
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 16px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-line-clamp: 2; /* Safari */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sc-features {
    list-style: none;
    margin: 0 0 24px 0;
    padding: 0;
    flex-grow: 1;
}

.sc-features li {
    font-size: 13px;
    color: #6C7A92;
    margin-bottom: 6px; /* tighter spacing */
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.4;
    font-weight: 500;
}

.sc-features svg {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-top: 1px;
}

.btn-card-full {
    width: 100%;
    display: block;
    background-color: #D4A843;
    color: #FFFFFF;
    font-weight: 700;
    border-radius: 12px;
    padding: 12px;
    font-size: 14px;
    text-align: center;
    border: none;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(212, 168, 67, 0.2);
    text-decoration: none;
}

.service-card-v12:hover .btn-card-full {
    background-color: #B8860B;
    box-shadow: 0 6px 20px rgba(212, 168, 67, 0.35);
}

.raw-filter-newborn-v12 {
    filter: hue-rotate(-10deg) saturate(1.4) contrast(0.8);
}
.raw-filter-product-v12 {
    filter: brightness(0.7) contrast(0.85);
}

/* =========================================
   AGENCY SERVICES REDESIGN (V13)
   ========================================= */
.services-v13 {
    position: relative;
    padding: 8rem 0;
    overflow: hidden;
    background-color: #FFFFFF;
}

.blob-v13 {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
    opacity: 0.05;
}
.blob-navy-v13 {
    width: 600px;
    height: 600px;
    background: #0D1F3C;
    filter: blur(140px);
    bottom: -10%;
    left: -10%;
}
.blob-gold-v13 {
    width: 500px;
    height: 500px;
    background: #D4A843;
    filter: blur(120px);
    top: -5%;
    right: -10%;
}

.services-v13 .container {
    position: relative;
    z-index: 10;
    max-width: 1200px;
    padding: 0 80px;
}
@media (max-width: 1024px) {
    .services-v13 .container { padding: 0 40px; }
}
@media (max-width: 768px) {
    .services-v13 .container { padding: 0 20px; }
}

.services-eyebrow-v13 {
    color: #D4A843;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 12px;
    display: inline-block;
}
.services-heading-v13 {
    color: #0D1F3C;
    font-size: 52px;
    font-weight: 800;
    margin-bottom: 24px;
    line-height: 1.1;
}
.services-underline-v13 {
    position: relative;
    width: 60px;
    height: 4px;
    background-color: #D4A843;
    border-radius: 4px;
    margin: 0 auto 24px auto;
}
.services-subtext-v13 {
    color: #6C7A92;
    font-size: 16px;
    max-width: 650px;
    margin: 0 auto 80px auto;
}

/* Row Layout */
.services-list-v13 {
    display: flex;
    flex-direction: column;
}

.service-row-v13 {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 80px;
    align-items: center;
    padding: 80px 0;
}
.service-row-v13.reverse {
    grid-template-columns: 0.9fr 1.1fr;
}
.service-row-v13.reverse .sc-image-v13 {
    grid-row: 1;
    grid-column: 2;
}
.service-row-v13.reverse .sc-text-v13 {
    grid-row: 1;
    grid-column: 1;
}

.service-divider-v13 {
    height: 1px;
    width: 100%;
    background-color: rgba(13,31,60,0.06);
}

@media (max-width: 991px) {
    .service-row-v13 {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 60px 0;
    }
    .service-row-v13.reverse {
        grid-template-columns: 1fr;
    }
    .service-row-v13.reverse .sc-image-v13 { grid-column: 1; grid-row: auto; }
    .service-row-v13.reverse .sc-text-v13 { grid-column: 1; grid-row: auto; }
    .service-row-v13 .sc-text-v13 { padding: 50px 0 20px 0; }
    .service-row-v13 .sc-num-bg-v13 { top: 0px; left: 0px; font-size: 110px; }
}

/* Image Side */
.sc-image-v13 {
    position: relative;
    border-radius: 12px;
    box-shadow: 0 24px 60px rgba(212,168,67,0.15), 0 8px 24px rgba(13,31,60,0.10);
    overflow: hidden;
    aspect-ratio: 1/1;
    width: 100%;
}

.sc-image-v13 .ba-container {
    height: 100%;
    width: 100%;
    border-radius: 0;
    box-shadow: none;
}

.sc-image-v13 .ba-label {
    top: 24px;
    padding: 6px 16px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #0D1F3C;
    border: 1px solid rgba(255,255,255,0.8);
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}
.sc-image-v13 .ba-label-before { left: 24px; }
.sc-image-v13 .ba-label-after { right: 24px; left: auto; }

/* Text Side */
.sc-text-v13 {
    padding: 40px 0;
    position: relative;
    z-index: 5;
}

.sc-num-bg-v13 {
    position: absolute;
    top: -20px;
    left: -20px;
    font-size: 140px; /* Made slightly bigger for scale */
    font-weight: 900;
    color: #0D1F3C;
    opacity: 0.04; /* Extra subtle */
    line-height: 0.8;
    z-index: -1;
    pointer-events: none;
    letter-spacing: -0.05em;
}

.sc-icon-circle-v13 {
    margin-bottom: 20px;
}
.sc-icon-circle-v13 svg {
    color: #D4A843;
    width: 24px;
    height: 24px;
}

.sc-text-v13 h3 {
    color: #0D1F3C;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 16px;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.sc-text-v13 p.sc-desc-v13 {
    color: #6C7A92;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sc-features-v13 {
    list-style: none;
    padding: 0;
    margin: 0 0 32px 0;
}

.sc-features-v13 li {
    font-size: 14px;
    color: #6C7A92;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 500;
}
.sc-features-v13 svg {
    color: #D4A843;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.cta-link-v13 {
    display: inline-flex;
    align-items: center;
    color: #D4A843;
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    transition: all 0.2s ease;
}
.cta-link-v13 .cta-arrow {
    margin-left: 6px;
    font-size: 18px;
    transition: transform 0.2s ease;
}
.cta-link-v13:hover {
    color: #B8860B;
}
.cta-link-v13:hover .cta-arrow {
    transform: translateX(4px);
}

/* Animations */
.slide-in-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: all 0.7s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.slide-in-right {
    opacity: 0;
    transform: translateX(40px);
    transition: all 0.7s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.slide-in-left.visible, .slide-in-right.visible {
    opacity: 1;
    transform: translateX(0);
}

.slide-in-bottom {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.7s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.slide-in-bottom.visible {
    opacity: 1;
    transform: translateY(0);
}

/* =========================================
   INFINITE SCROLL TESTIMONIALS (V14)
   ========================================= */
.testimonials-v14 {
    position: relative;
    padding: 100px 0;
    background-color: #FFFFFF;
    overflow: hidden;
}

.testi-blob-v14 {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}
.testi-blob-navy-v14 {
    width: 500px;
    height: 500px;
    background: rgba(13,31,60,0.04);
    filter: blur(100px);
    bottom: -10%;
    left: -10%;
}
.testi-blob-gold-v14 {
    width: 400px;
    height: 400px;
    background: rgba(212,168,67,0.05);
    filter: blur(80px);
    top: 5%;
    right: -5%;
}

.testi-header-v14 {
    text-align: center;
    margin-bottom: 72px;
    position: relative;
    z-index: 10;
}
.testi-eyebrow-v14 {
    color: #D4A843;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    margin-bottom: 16px;
    display: inline-block;
}
.testi-heading-v14 {
    color: #0D1F3C;
    font-size: 52px;
    font-weight: 800;
    margin: 0;
}

/* Tracking System */
.testi-slider-v14 {
    position: relative;
    width: 100vw;
    left: calc(-50vw + 50%);
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 20px 0;
    z-index: 10;
    
    /* Left and Right edge fade mask */
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 12%, black 88%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, black 12%, black 88%, transparent 100%);
    opacity: 0;
    animation: fadeInTrack 0.8s ease forwards;
}

.testi-row-v14 {
    display: flex;
    overflow: visible;
}

.testi-track-v14 {
    display: flex;
    gap: 20px;
    width: max-content;
    will-change: transform;
    transform: translateZ(0); /* Hardware acceleration */
}

/* The animations */
.track-left .testi-track-v14 {
    animation: scrollLeft 45s linear infinite;
}
.track-right .testi-track-v14 {
    animation: scrollRight 35s linear infinite;
}

/* Pause on hover */
.track-left:hover .testi-track-v14,
.track-right:hover .testi-track-v14 {
    animation-play-state: paused;
}

@keyframes scrollLeft {
    0% { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-50%, 0, 0); } /* Move by 50% since we duplicate 1 time */
}
@keyframes scrollRight {
    0% { transform: translate3d(-50%, 0, 0); }
    100% { transform: translate3d(0, 0, 0); }
}

/* Individual Card */
.testi-card-v14 {
    width: 360px;
    flex-shrink: 0;
    background: linear-gradient(145deg, rgba(255,255,255,1) 0%, rgba(248,249,251,1) 100%);
    border: 1px solid rgba(13,31,60,0.07);
    box-shadow: 0 2px 8px rgba(13,31,60,0.04), 0 8px 24px rgba(13,31,60,0.07);
    border-radius: 20px;
    padding: 28px;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    position: relative;
}
.testi-card-v14:hover {
    box-shadow: 0 12px 30px rgba(13,31,60,0.12);
    border: 1px solid rgba(212,168,67,0.30);
    transform: translateY(-4px); /* Slight lift feels good */
}

.tc-top-v14 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.tc-user-v14 {
    display: flex;
    align-items: center;
    gap: 12px;
}
.tc-avatar-v14 {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #D4A843;
    outline: 2px solid rgba(212,168,67,0.25);
    outline-offset: 2px;
    margin-left: 2px;
    margin-top: 2px;
}
.tc-meta-v14 {
    display: flex;
    flex-direction: column;
}
.tc-name-v14 {
    color: #0D1F3C;
    font-size: 14px;
    font-weight: 700;
}
.tc-role-v14 {
    color: #D4A843;
    font-size: 12px;
    font-weight: 500;
}
.tc-stars-v14 {
    display: flex;
    gap: 4px;
}
.tc-stars-v14 svg {
    color: #D4A843;
    width: 15px;
    height: 15px;
}

.tc-quote-v14 {
    color: #1E2D42;
    font-size: 14.5px;
    line-height: 1.75;
    font-weight: 400;
    margin: 0 0 24px 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex-grow: 1;
    position: relative;
    z-index: 10;
}

.tc-badge-v14 {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    background: rgba(212,168,67,0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(212,168,67,0.20);
    border-radius: 50px;
    width: fit-content;
}
.tc-badge-v14 svg {
    width: 12px;
    height: 12px;
    color: #D4A843;
}
.tc-badge-v14 span {
    color: #D4A843;
    font-size: 11px;
    font-weight: 500;
}

@keyframes fadeInTrack {
    to { opacity: 1; }
}
.testi-subtext-v14 {
    color: #6C7A92;
    font-size: 16px;
    max-width: 500px;
    margin: 16px auto 0;
    line-height: 1.6;
}
.tc-bg-quote-v14 {
    position: absolute;
    font-size: 100px;
    color: rgba(212,168,67,0.06);
    top: 12px;
    left: 16px;
    font-family: Georgia, serif;
    line-height: 1;
    pointer-events: none;
    z-index: 0;
}

/* =========================================
   SERVICES HUB (SERVICES/INDEX)
   ========================================= */
.hub-hero { position: relative; padding: 120px 0 80px 0; background: #FFFFFF; text-align: center; }
.hub-blob-v1 { width: 500px; height: 500px; background: rgba(13,31,60,0.05); filter: blur(100px); position: absolute; border-radius: 50%; bottom: -10%; left: -10%; z-index: 0; pointer-events: none; }
.hub-blob-v2 { width: 400px; height: 400px; background: rgba(212,168,67,0.06); filter: blur(80px); position: absolute; border-radius: 50%; top: -5%; right: -5%; z-index: 0; pointer-events: none; }

.hub-hero-container { position: relative; z-index: 10; max-width: 800px; margin: 0 auto; }
.hub-eyebrow { color: #D4A843; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.25em; margin-bottom: 16px; display: inline-block; }
.hub-heading { color: #0D1F3C; font-size: 56px; font-weight: 800; line-height: 1.1; margin-bottom: 24px; }
.hub-subtext { color: #6C7A92; font-size: 17px; line-height: 1.6; margin-bottom: 32px; }

.hub-grid-section { background: #FFFFFF; padding: 0 0 120px 0; position: relative; z-index: 10; }
.hub-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; max-width: 1200px; margin: 0 auto; padding: 0 80px; }
@media(max-width: 1024px) { .hub-grid { grid-template-columns: repeat(2, 1fr); padding: 0 40px; } }
@media(max-width: 768px) { .hub-grid { grid-template-columns: 1fr; padding: 0 20px; } }

.hub-card { display: flex; flex-direction: column; background: rgba(255,255,255,0.6); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.65); box-shadow: 0 8px 32px rgba(13,31,60,0.08); border-radius: 24px; overflow: hidden; text-decoration: none; transition: all 0.3s ease; }
.hub-card:hover { transform: translateY(-8px); box-shadow: 0 16px 40px rgba(13,31,60,0.12); border: 1px solid rgba(212,168,67,0.4); }
.hub-card:hover .hub-img-inner { transform: scale(1.05); }

.hub-img { height: 200px; overflow: hidden; position: relative; }
.hub-img-inner { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
/* Quick BA static fallback for grid if image missing slider */

.hub-content { padding: 24px; display: flex; flex-direction: column; flex-grow: 1; }
.hub-icon { width: 44px; height: 44px; background: #0D1F3C; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.hub-icon svg { color: #D4A843; width: 20px; height: 20px; }
.hub-title { color: #0D1F3C; font-size: 20px; font-weight: 800; margin-bottom: 8px; }
.hub-desc { color: #6C7A92; font-size: 14px; line-height: 1.6; margin-bottom: 16px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.hub-features { list-style: none; padding: 0; margin: 0 0 20px 0; flex-grow: 1; }
.hub-features li { display: flex; align-items: flex-start; gap: 8px; color: #6C7A92; font-size: 13px; margin-bottom: 6px; }
.hub-features svg { color: #D4A843; width: 14px; height: 14px; flex-shrink: 0; margin-top: 2px; }
.hub-cta { color: #D4A843; font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; display: inline-flex; align-items: center; gap: 4px; }

/* =========================================
   INDIVIDUAL SERVICE TEMPLATE 
   ========================================= */
.sp-hero { padding: 120px 0 60px 0; background: #FFFFFF; }
.sp-hero-container { max-width: 1200px; margin: 0 auto; padding: 0 80px; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
@media(max-width: 991px) { .sp-hero-container { grid-template-columns: 1fr; padding: 0 40px; } }
@media(max-width: 768px) { .sp-hero-container { padding: 0 20px; } }

.sp-breadcrumb { color: #6C7A92; font-size: 13px; font-weight: 500; margin-bottom: 24px; display: flex; align-items: center; gap: 8px; }
.sp-breadcrumb a { color: #0D1F3C; text-decoration: none; }
.sp-breadcrumb svg { color: #D4A843; width: 12px; height: 12px; }
.sp-eyebrow { border: 1px solid #D4A843; color: #D4A843; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; padding: 4px 12px; border-radius: 50px; display: inline-block; margin-bottom: 16px; }
.sp-title { color: #0D1F3C; font-size: 52px; font-weight: 800; line-height: 1.1; margin-bottom: 20px; }
.sp-subtext { color: #6C7A92; font-size: 17px; line-height: 1.6; margin-bottom: 32px; }
.sp-btn-row { display: flex; gap: 16px; align-items: center; margin-bottom: 32px; }
.sp-btn-outline { background: transparent; color: #0D1F3C; border: 1px solid #0D1F3C; }
.sp-btn-outline:hover { background: #0D1F3C; color: #FFFFFF; }
.sp-trust { display: flex; align-items: center; gap: 8px; color: #6C7A92; font-size: 13px; font-weight: 500; }
.sp-trust span { display: inline-flex; align-items: center; gap: 8px; }
.sp-trust-dot { width: 4px; height: 4px; background: #D4A843; border-radius: 50%; }

.sp-hero-img { position: relative; border-radius: 24px; box-shadow: 0 24px 60px rgba(13,31,60,0.1); overflow: hidden; }
.sp-hero-img .ba-container { height: 460px; border-radius: 0; box-shadow: none; width: 100%; aspect-ratio: auto; }
.sp-badge { position: absolute; bottom: 24px; right: 24px; background: rgba(255,255,255,0.7); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.8); border-radius: 50px; padding: 8px 16px; display: flex; align-items: center; gap: 8px; z-index: 20; color: #0D1F3C; font-size: 13px; font-weight: 600; box-shadow: 0 8px 24px rgba(0,0,0,0.1); }
.sp-badge span { color: #D4A843; }

/* Included Grid */
.sp-included { padding: 80px 0; background: #FFFFFF; }
.sp-inc-container { max-width: 1200px; margin: 0 auto; padding: 0 80px; }
@media(max-width: 1024px) { .sp-inc-container { padding: 0 40px; } }
@media(max-width: 768px) { .sp-inc-container { padding: 0 20px; } }
.sp-section-heading { color: #0D1F3C; font-size: 40px; font-weight: 800; text-align: center; margin-bottom: 48px; }
.sp-inc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media(max-width: 768px) { .sp-inc-grid { grid-template-columns: 1fr; } }
.sp-inc-card { background: rgba(255,255,255,0.8); border: 1px solid rgba(13,31,60,0.06); padding: 32px; border-radius: 20px; }
/* .sp-inc-card svg replaced inline */
.sp-inc-card h4 { color: #0D1F3C; font-size: 17px; font-weight: 700; margin-bottom: 8px; }
.sp-inc-card p { color: #6C7A92; font-size: 14px; line-height: 1.6; }

/* Gallery */
.sp-gallery { padding: 80px 0; background: #F8F9FB; }
.sp-gal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1200px; margin: 0 auto; padding: 0 80px; }
@media(max-width: 1024px) { .sp-gal-grid { grid-template-columns: repeat(2, 1fr); padding: 0 40px; } }
@media(max-width: 768px) { .sp-gal-grid { grid-template-columns: 1fr; padding: 0 20px; } }
.sp-gal-item { border-radius: 20px; box-shadow: 0 12px 32px rgba(212,168,67,0.08); overflow: hidden; position: relative; }
.sp-gal-item .ba-container { height: 340px; border-radius: 0; box-shadow: none; width: 100%; aspect-ratio: auto; }

/* Process */
.sp-process { padding: 80px 0; background: #FFFFFF; }
.sp-proc-flex { display: flex; align-items: flex-start; max-width: 1200px; margin: 0 auto; padding: 0 80px; position: relative; }
.sp-proc-line { position: absolute; top: 24px; left: 80px; right: 80px; height: 1px; border-top: 1px dashed #D4A843; z-index: 0; }
.sp-proc-step { flex: 1; position: relative; z-index: 10; padding: 0 16px; }
.sp-proc-num { width: 48px; height: 48px; border-radius: 50%; background: #D4A843; color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 800; margin-bottom: 16px; border: 4px solid #FFFFFF; }
.sp-proc-step h4 { color: #0D1F3C; font-size: 18px; font-weight: 700; margin-bottom: 8px; }
.sp-proc-step p { color: #6C7A92; font-size: 14px; line-height: 1.6; }
@media(max-width: 768px) {
    .sp-proc-flex { flex-direction: column; padding: 0 20px; gap: 32px; }
    .sp-proc-line { left: 44px; top: 0; bottom: 0; width: 1px; height: auto; border-top: none; border-left: 1px dashed #D4A843; }
}

/* Pricing */
.sp-pricing { padding: 80px 0; background: #0D1F3C; }
.sp-pricing .sp-section-heading { color: #FFFFFF; }
.sp-price-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; max-width: 800px; margin: 0 auto; padding: 0 80px; }
@media(max-width: 991px) { .sp-price-grid { grid-template-columns: 1fr; padding: 0 40px; } }
.sp-price-card { background: rgba(255,255,255,0.08); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.12); border-radius: 20px; padding: 40px 32px; display: flex; flex-direction: column; }
.sp-price-card.popular { border: 2px solid #D4A843; transform: scale(1.05); }
.sp-price-plan { color: #FFFFFF; font-size: 20px; font-weight: 700; margin-bottom: 16px; text-align: center; }
.sp-price-amt { color: #D4A843; font-size: 48px; font-weight: 800; text-align: center; margin-bottom: 32px; }
.sp-price-amt span { font-size: 16px; color: #9AA6B8; font-weight: 500; }
.sp-price-features { list-style: none; padding: 0; margin: 0 0 32px 0; flex-grow: 1; }
.sp-price-features li { display: flex; align-items: flex-start; gap: 8px; color: #9AA6B8; font-size: 14px; margin-bottom: 12px; }
.sp-price-features svg { color: #D4A843; width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; }
.sp-price-card .btn { width: 100%; text-align: center; justify-content: center; }

/* FAQ */
.sp-faq { padding: 80px 0; background: #FFFFFF; }
.sp-faq-container { max-width: 800px; margin: 0 auto; padding: 0 40px; }
.sp-faq-item { border-bottom: 1px solid rgba(13,31,60,0.07); }
.sp-faq-item:first-child { border-top: 1px solid rgba(13,31,60,0.07); }
.sp-faq-q { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 24px 0; background: none; border: none; cursor: pointer; text-align: left; }
.sp-faq-q h4 { color: #0D1F3C; font-size: 16px; font-weight: 700; margin: 0; transition: color 0.3s; }
.sp-faq-icon { color: #D4A843; transition: transform 0.3s; }
.sp-faq-a { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; }
.sp-faq-a p { color: #6C7A92; font-size: 15px; line-height: 1.6; margin: 0 0 24px 0; }
.sp-faq-item.active .sp-faq-q h4 { color: #D4A843; }
.sp-faq-item.active .sp-faq-icon { transform: rotate(45deg); }

/* Related */
.sp-related { padding: 80px 0; background: #F8F9FB; }


.nav-link.active-gold { color: #D4A843; position: relative; }
.nav-link.active-gold::after { content: ''; position: absolute; bottom: -8px; left: 50%; width: 4px; height: 4px; margin-left: -2px; background: #D4A843; border-radius: 50%; }

/* =========================================
   SERVICES HUB V2 (ALTERNATING ROWS)
   ========================================= */
.spg-hero { position: relative; padding: 120px 0 80px 0; background: #FFFFFF; text-align: center; }
.spg-blob { position: absolute; z-index: 0; border-radius: 50%; pointer-events: none; opacity: 0.05; filter: blur(100px); }
.spg-blob-navy { background: #0D1F3C; width: 600px; height: 600px; bottom: 0; left: -10%; }
.spg-blob-gold { background: #D4A843; width: 500px; height: 500px; top: -10%; right: -5%; }

.spg-hero-container { position: relative; z-index: 10; padding: 0 40px; display: flex; flex-direction: column; align-items: center; }
.spg-eyebrow { border: 1.5px solid #D4A843; color: #D4A843; font-size: 13px; font-weight: 700; text-transform: uppercase; background: #FFFFFF; border-radius: 999px; padding: 6px 20px; display: inline-block; margin-bottom: 24px; letter-spacing: 0.05em; }
.spg-heading { color: #0D1F3C; font-size: 64px; font-weight: 900; line-height: 1.1; margin-bottom: 24px; max-width: 800px; }
@media(max-width: 768px) { .spg-heading { font-size: 48px; } }
.spg-subtext { color: #5A6A7E; font-size: 18px; line-height: 1.6; max-width: 520px; margin-bottom: 40px; }
.spg-cta { padding: 16px 40px; }
.spg-trust-strip { margin-top: 32px; color: #5A6A7E; font-size: 14px; font-weight: 500; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center; }
.spg-trust-strip span { display: inline-flex; align-items: center; gap: 8px; }

.spg-list-section { padding: 40px 0 120px 0; background: #FFFFFF; position: relative; z-index: 10; }
.spg-section-label { text-align: center; color: #D4A843; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.25em; margin-bottom: 60px; }

.spg-container { max-width: 1100px; margin: 0 auto; padding: 0 80px; display: flex; flex-direction: column; gap: 100px; }
@media(max-width: 991px) { .spg-container { padding: 0 40px; gap: 80px; } }
@media(max-width: 768px) { .spg-container { padding: 0 20px; gap: 60px; } }

.spg-row { display: flex; align-items: center; gap: 60px; }
.spg-row.reverse { flex-direction: row-reverse; }

.spg-img-col { flex: 1; border-radius: 20px; overflow: hidden; aspect-ratio: 1 / 1; height: auto; position: relative; box-shadow: 0 20px 60px rgba(212,168,67,0.12), 0 8px 24px rgba(13,31,60,0.08); }
.spg-img-col img { width: 100%; height: 100%; object-fit: cover; }

.spg-text-col { flex: 1; position: relative; padding: 40px 0; }
.spg-number { position: absolute; top: -30px; left: -20px; font-size: 120px; font-weight: 900; color: rgba(13,31,60,0.05); line-height: 1; z-index: 0; pointer-events: none; }
.spg-row.reverse .spg-number { left: auto; right: -20px; }
.spg-text-inner { position: relative; z-index: 10; }

.spg-row-title { color: #0D1F3C; font-size: 36px; font-weight: 800; margin-bottom: 16px; }
.spg-row-desc { color: #5A6A7E; font-size: 16px; line-height: 1.75; margin-bottom: 24px; }
.spg-bullets { list-style: none; padding: 0; margin: 0 0 32px 0; }
.spg-bullets li { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 12px; color: #5A6A7E; font-size: 14px; }
.spg-bullets svg { color: #D4A843; width: 16px; height: 16px; flex-shrink: 0; margin-top: 4px; }
.spg-row-cta { color: #D4A843; font-size: 15px; font-weight: 800; display: inline-flex; align-items: center; gap: 4px; text-decoration: none; transition: transform 0.3s ease; }
.spg-row-cta:hover span { transform: translateX(4px); }
.spg-row-cta span { display: inline-block; transition: transform 0.3s ease; }

@media(max-width: 991px) {
    .spg-row, .spg-row.reverse { flex-direction: column; gap: 40px; }
    .spg-img-col { width: 100%; aspect-ratio: 1 / 1; height: auto; }
    .spg-text-col { padding: 0 20px; }
    .spg-number { top: -20px; }
}

/* Scroll Animations */
.fade-obs { opacity: 0; transition: all 0.7s cubic-bezier(0.25, 1, 0.5, 1); will-change: transform, opacity; }
.slide-in-left { transform: translateX(-40px); }
.slide-in-right { transform: translateX(40px); }
.slide-in-up { transform: translateY(40px); }
.fade-obs.visible { opacity: 1; transform: translate(0, 0); }


/* =========================================
   BENTO GRID PORTFOLIO
   ========================================= */
.bento-section { padding: 120px 0; position: relative; background: #FFFFFF; overflow: hidden; }
.bento-eyebrow { color: #D4A843; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.25em; margin-bottom: 24px; }
.bento-heading { color: #0D1F3C; font-size: 52px; font-weight: 800; line-height: 1.1; margin-bottom: 16px; }
.bento-subtext { color: #5A6A7E; font-size: 16px; line-height: 1.6; max-width: 600px; margin: 0 auto; }

.bento-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 300px;
    gap: 16px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 80px;
}

@media(max-width: 991px) {
    .bento-grid { grid-template-columns: 1fr; grid-auto-rows: 250px; padding: 0 40px; }
    .bento-card { grid-column: span 1 !important; grid-row: span 1 !important; }
}
@media(max-width: 768px) {
    .bento-heading { font-size: 36px; }
    .bento-grid { padding: 0 20px; gap: 12px; }
}

.bento-card-1 { grid-column: span 2; grid-row: span 1; }
.bento-card-2 { grid-column: span 1; grid-row: span 2; }
.bento-card-3 { grid-column: span 1; grid-row: span 1; }
.bento-card-4 { grid-column: span 2; grid-row: span 1; }
.bento-card-5 { grid-column: span 1; grid-row: span 1; }
.bento-card-6 { grid-column: span 2; grid-row: span 1; }

.bento-card {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    display: block;
    text-decoration: none;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.bento-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    display: block;
}

.bento-pill {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 50px;
    padding: 6px 14px;
    color: #0D1F3C;
    font-size: 12px;
    font-weight: 700;
    z-index: 5;
    transition: opacity 0.3s ease;
}

.bento-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(13, 31, 60, 0.55);
    opacity: 0;
    transition: opacity 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.bento-overlay-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transform: translateY(10px);
    transition: transform 0.3s ease;
}

.bento-overlay-label { color: #D4A843; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.2em; margin-bottom: 8px; }
.bento-overlay-icon { color: #FFFFFF; font-size: 14px; font-weight: 600; display: flex; align-items: center; gap: 6px; }

.bento-card:hover img { transform: scale(1.05); }
.bento-card:hover .bento-overlay { opacity: 1; }
.bento-card:hover .bento-overlay-content { transform: translateY(0); }
.bento-card:hover .bento-pill { opacity: 0; }

/* =========================================
   PRICING PAGE - LIGHT PREMIUM THEME
========================================= */

.pricing-page-wrapper {
    background-color: #FFFFFF;
    position: relative;
    overflow: hidden;
}

/* Atmospheric Blobs */
.pricing-blob-navy {
    position: absolute;
    bottom: -10%;
    left: -10%;
    width: 600px;
    height: 600px;
    background: rgba(13,31,60,0.04);
    filter: blur(100px);
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}
.pricing-blob-gold {
    position: absolute;
    top: 5%;
    right: -10%;
    width: 500px;
    height: 500px;
    background: rgba(212,168,67,0.05);
    filter: blur(80px);
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}

/* Hero */
.pricing-hero {
    padding: 160px 20px 80px 20px;
    text-align: center;
    position: relative;
    z-index: 10;
}
.pricing-eyebrow {
    display: inline-block;
    border: 1px solid rgba(212,168,67,0.4);
    color: #D4A843;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 6px 16px;
    border-radius: 50px;
    margin-bottom: 24px;
}
.pricing-heading {
    font-size: 64px;
    color: #0D1F3C;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 24px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.pricing-subtext {
    font-size: 17px;
    color: #64748B;
    line-height: 1.6;
    max-width: 520px;
    margin: 0 auto 40px auto;
}
.pricing-trust-strip {
    margin-top: 40px;
    font-size: 14px;
    color: #64748B;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.pricing-trust-strip span {
    color: #D4A843;
}

/* Pricing Table */
.pricing-table-section {
    padding: 80px 20px;
    position: relative;
    z-index: 10;
    text-align: center;
}
.pt-eyebrow {
    color: #D4A843;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 16px;
}
.pt-heading {
    font-size: 48px;
    color: #0D1F3C;
    font-weight: 700;
    margin-bottom: 16px;
}
.pt-subtext {
    font-size: 16px;
    color: #64748B;
    margin-bottom: 60px;
}

.pt-container {
    background: #FFFFFF;
    border: 1px solid rgba(13,31,60,0.08);
    box-shadow: 0 8px 40px rgba(13,31,60,0.07);
    border-radius: 24px;
    padding: 48px;
    max-width: 900px;
    margin: 0 auto;
    text-align: left;
}
.pt-table {
    width: 100%;
    border-collapse: collapse;
}
.pt-header {
    background: #0D1F3C;
}
.pt-header th {
    padding: 16px 24px;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}
.pt-header th:first-child { border-radius: 16px 0 0 16px; }
.pt-header th:last-child { border-radius: 0 16px 16px 0; }
.pt-header th.pt-rush-col { color: #D4A843; }

.pt-row {
    border-bottom: 1px solid rgba(13,31,60,0.05);
}
.pt-row:last-child {
    border-bottom: none;
}
.pt-row:nth-child(odd) {
    background: #FFFFFF;
}
.pt-row:nth-child(even) {
    background: #F8F9FB;
}
.pt-row:last-child td:first-child { border-radius: 0 0 0 16px; }
.pt-row:last-child td:last-child { border-radius: 0 0 16px 0; }

.pt-row td {
    padding: 18px 24px;
}
.pt-service-name {
    color: #0D1F3C;
    font-weight: 700;
    font-size: 15px;
}
.pt-std-price {
    color: #64748B;
    font-size: 15px;
}
.pt-rush-price {
    color: #D4A843;
    font-weight: 700;
    font-size: 15px;
}

.pt-note {
    font-size: 13px;
    color: #9AA6B8;
    text-align: center;
    margin-top: 24px;
}

/* Delivery Cards */
.pricing-cards-section {
    background: #F4F6FA;
    padding: 120px 20px;
    position: relative;
    z-index: 10;
}
.pc-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    max-width: 1000px;
    margin: 0 auto;
}
.pc-card {
    background: rgba(255,255,255,0.60);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.65);
    box-shadow: 0 8px 32px rgba(13,31,60,0.08);
    border-radius: 24px;
    padding: 40px;
    position: relative;
}
.pc-icon-wrap {
    width: 64px;
    height: 64px;
    background: #0D1F3C;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    color: #D4A843;
}
.pc-label {
    font-size: 22px;
    color: #0D1F3C;
    font-weight: 700;
    margin-bottom: 12px;
}
.pc-pill {
    display: inline-block;
    border: 1px solid #D4A843;
    color: #D4A843;
    font-size: 12px;
    font-weight: 800;
    border-radius: 999px;
    padding: 6px 16px;
    margin-bottom: 24px;
}
.pc-pill.solid {
    background: #D4A843;
    color: #FFFFFF;
}
.pc-desc {
    color: #64748B;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 32px;
}
.pc-features {
    list-style: none;
    padding: 0;
    margin: 0 0 40px 0;
}
.pc-features li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    color: #64748B;
    font-size: 15px;
}
.pc-features li svg {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin-top: 2px;
}
.pc-fast-badge {
    position: absolute;
    top: 24px;
    right: 24px;
    background: #D4A843;
    color: #FFFFFF;
    font-size: 11px;
    font-weight: 800;
    padding: 6px 12px;
    border-radius: 50px;
    text-transform: uppercase;
}

/* Bulk Discount Section */
.pricing-bulk-section {
    padding: 120px 20px;
    position: relative;
    z-index: 10;
    text-align: center;
    background: #FFFFFF;
}
.pb-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    max-width: 1200px;
    margin: 60px auto 0 auto;
    align-items: stretch;
}
.pb-card {
    background: rgba(255,255,255,0.60);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(13,31,60,0.06);
    box-shadow: 0 8px 32px rgba(13,31,60,0.04);
    border-radius: 24px;
    padding: 40px 32px;
    text-align: left;
    display: flex;
    flex-direction: column;
}
.pb-card.featured {
    border: 1px solid rgba(212,168,67,0.40);
    transform: scale(1.03);
    box-shadow: 0 12px 48px rgba(13,31,60,0.08);
    background: #FFFFFF;
    z-index: 2;
}
.pb-label {
    font-size: 20px;
    color: #0D1F3C;
    font-weight: 700;
    margin-bottom: 16px;
}
.pb-badge {
    display: inline-block;
    background: #D4A843;
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 700;
    padding: 8px 20px;
    border-radius: 999px;
    margin-bottom: 24px;
}
.pb-badge.navy {
    background: #0D1F3C;
}
.pb-desc {
    color: #64748B;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 32px;
}

/* Payment Timeline */
.pricing-payment-section {
    background: #F4F6FA;
    padding: 120px 20px;
    position: relative;
    z-index: 10;
    text-align: center;
}
.pay-timeline {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: 60px auto 0 auto;
    position: relative;
    padding-top: 24px;
}
.pay-line {
    position: absolute;
    top: 52px;
    left: 10%;
    right: 10%;
    height: 2px;
    border-top: 2px dashed rgba(212,168,67,0.4);
    z-index: 0;
}
.pay-step {
    flex: 1;
    position: relative;
    z-index: 1;
    padding: 0 16px;
}
.pay-circle {
    width: 56px;
    height: 56px;
    background: #FFFFFF;
    border: 2px solid #D4A843;
    color: #D4A843;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    margin: 0 auto 24px auto;
}
.pay-step h4 {
    font-size: 18px;
    color: #0D1F3C;
    font-weight: 700;
    margin-bottom: 12px;
}
.pay-step p {
    font-size: 14px;
    color: #64748B;
    line-height: 1.6;
}

/* FAQs */
.pricing-faq-section {
    background: #FFFFFF;
    padding: 120px 20px;
    position: relative;
    z-index: 10;
}
.p-faq-container {
    max-width: 700px;
    margin: 0 auto;
}
.p-faq-item {
    border-bottom: 1px solid rgba(13,31,60,0.08);
    overflow: hidden;
}
.p-faq-item:first-child {
    border-top: 1px solid rgba(13,31,60,0.08);
}
.p-faq-q {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 24px 0;
    font-size: 18px;
    color: #0D1F3C;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: color 0.3s;
}
.p-faq-item.active .p-faq-q {
    color: #D4A843;
}
.p-faq-icon {
    color: #D4A843;
    transition: transform 0.3s;
}
.p-faq-item.active .p-faq-icon {
    transform: rotate(45deg);
}
.p-faq-a {
    max-height: 0;
    transition: max-height 0.3s ease-out;
}
.p-faq-a p {
    padding-bottom: 24px;
    color: #64748B;
    font-size: 16px;
    line-height: 1.7;
}

/* =========================================
   CONTACT PAGE STYLES
   ========================================= */

.contact-page {
    background-color: #FFFFFF;
    position: relative;
}

/* Background Blobs */
.contact-blob {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
    filter: blur(140px);
}
.blob-navy-contact {
    width: 600px;
    height: 600px;
    background: rgba(13, 31, 60, 0.04);
    bottom: 0;
    left: -200px;
}
.blob-gold-contact {
    width: 500px;
    height: 500px;
    background: rgba(212, 168, 67, 0.05);
    top: 100px;
    right: -150px;
}

/* Hero Section */
.contact-hero {
    padding-top: 140px;
    padding-bottom: 72px;
    text-align: center;
    position: relative;
    z-index: 2;
}
.contact-hero .badge {
    border: 1px solid var(--primary-accent);
    color: var(--primary-accent);
    background: transparent;
}
.contact-hero h1 {
    font-size: clamp(2.5rem, 5vw, 3.5rem);
    color: var(--secondary-accent);
    margin-bottom: 1.5rem;
    letter-spacing: -0.02em;
}
.contact-hero p {
    color: var(--text-body);
    font-size: 1.0625rem;
    max-width: 480px;
    margin: 0 auto;
}

/* Main Layout */
.contact-main {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 80px 100px;
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 60px;
    position: relative;
    z-index: 2;
}

/* Form Styling */
.contact-form-card {
    background: rgba(255, 255, 255, 0.70);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.80);
    border-top: 2px solid rgba(212, 168, 67, 0.35);
    box-shadow: 
        0 4px 16px rgba(13, 31, 60, 0.06),
        0 16px 48px rgba(13, 31, 60, 0.09);
    border-radius: 28px;
    padding: 52px;
}
.contact-form-card::before,
.contact-form-card::after {
    display: none;
}

.form-grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-label {
    font-size: 11px;
    font-weight: 700;
    color: #0D1F3C;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.form-input, 
.form-select {
    height: 52px;
}

.form-input, 
.form-select, 
.form-textarea {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.90);
    border: 1.5px solid rgba(13, 31, 60, 0.10);
    border-radius: 14px;
    padding: 0 18px;
    font-family: inherit;
    font-size: 15px;
    color: #1A2B4A;
    transition: all 0.25s ease;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form-textarea {
    min-height: 160px;
    padding: 16px 18px;
}

.form-input::placeholder,
.form-textarea::placeholder {
    color: rgba(46, 58, 78, 0.40);
}

.form-input:hover, 
.form-select:hover, 
.form-textarea:hover {
    border-color: rgba(13, 31, 60, 0.22);
}

.form-input:focus, 
.form-select:focus, 
.form-textarea:focus {
    border-color: #D4A843;
    box-shadow: 0 0 0 4px rgba(212, 168, 67, 0.08);
    background-color: #FFFFFF;
}

.form-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23D4A843' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 18px center;
    padding-right: 40px;
}

/* Pill Toggle */
.pill-toggle-group {
    display: inline-flex;
    background: rgba(13, 31, 60, 0.06);
    border-radius: 999px;
    padding: 4px;
    width: 100%;
}

.pill-btn {
    flex: 1;
    padding: 12px 20px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
    background: transparent;
    color: #0D1F3C;
    border: none;
}

.pill-btn.active {
    background: #D4A843;
    color: #FFFFFF;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(212, 168, 67, 0.30);
}

/* Submit Button */
.btn-submit {
    width: 100%;
    height: 56px;
    background-color: #D4A843;
    color: #FFFFFF;
    padding: 0 18px;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.01em;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.30);
    box-shadow: 
        inset 0 1px 0 rgba(255, 255, 255, 0.25),
        0 4px 16px rgba(212, 168, 67, 0.25);
    cursor: pointer;
    transition: all 0.25s ease;
    margin-top: 10px;
}

.btn-submit:hover {
    background-color: #B8860B;
    box-shadow: 0 8px 24px rgba(212, 168, 67, 0.40);
    transform: translateY(-1px);
}

.btn-submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Success State */
.contact-success-state {
    display: none;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 40px 0;
    animation: fadeIn 0.5s ease forwards;
}

.success-icon {
    width: 64px;
    height: 64px;
    background: rgba(212, 168, 67, 0.1);
    color: var(--primary-accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
}

.success-icon svg {
    width: 32px;
    height: 32px;
}

.success-title {
    font-size: 28px;
    font-weight: 700;
    color: var(--secondary-accent);
    margin-bottom: 12px;
}

.success-text {
    font-size: 16px;
    color: var(--text-body);
    margin-bottom: 8px;
}

.success-note {
    font-size: 13px;
    color: var(--text-light);
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Right Panel Info */
.contact-info-panel {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.info-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: #FFFFFF;
    border: 1px solid rgba(13, 31, 60, 0.07);
    box-shadow: 0 2px 12px rgba(13, 31, 60, 0.06);
    border-radius: 20px;
    padding: 24px;
    transition: all 0.25s ease;
}
.info-card::before,
.info-card::after {
    display: none;
}
.info-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(13, 31, 60, 0.10);
}

.info-card-icon {
    width: 48px;
    height: 48px;
    background: #0D1F3C;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.info-card-icon svg {
    width: 22px;
    height: 22px;
    color: #D4A843;
}

.info-card-content {
    display: flex;
    flex-direction: column;
}

.info-label {
    font-size: 15px;
    font-weight: 700;
    color: #0D1F3C;
    margin-bottom: 4px;
}

.info-value {
    font-size: 15px;
    color: var(--text-body);
    margin-bottom: 4px;
}

.info-value.gold {
    color: var(--primary-accent);
    font-weight: 600;
}

.info-note {
    font-size: 13px;
    color: #2E3A4E;
}

/* Trust Block */
.trust-block {
    background: #FFFFFF;
    border: 1px solid rgba(13, 31, 60, 0.07);
    border-left: 3px solid #D4A843;
    box-shadow: 0 2px 12px rgba(13, 31, 60, 0.06);
    border-radius: 20px;
    padding: 24px;
    transition: all 0.25s ease;
}
.trust-block::before,
.trust-block::after {
    display: none;
}
.trust-block:hover {
    transform: none;
    box-shadow: 0 2px 12px rgba(13, 31, 60, 0.06);
}

.trust-block h4 {
    font-size: 16px;
    font-weight: 700;
    color: #0D1F3C;
    margin-bottom: 16px;
}

.trust-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #2E3A4E;
    line-height: 1.6;
}

.trust-item svg {
    color: var(--primary-accent);
    flex-shrink: 0;
}

/* Social Follow */
.social-follow {
    margin-top: 8px;
}

.social-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--text-light);
    margin-bottom: 12px;
    display: block;
}

.social-icons {
    display: flex;
    gap: 16px;
}

.social-icon-link {
    color: var(--secondary-accent);
    transition: color 0.2s ease;
}

.social-icon-link:hover {
    color: var(--primary-accent);
}

/* FAQ Strip */
.faq-strip {
    background-color: #F4F6FA;
    padding: 80px 0;
    position: relative;
    z-index: 1;
}

.faq-strip-container {
    max-width: 900px;
    margin: 0 auto;
}

.faq-strip h2 {
    font-size: 36px;
    text-align: center;
    margin-bottom: 48px;
}

.faq-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.faq-card {
    background: #FFFFFF;
    padding: 32px;
    border-radius: 20px;
    border: 1px solid rgba(13, 31, 60, 0.07);
    box-shadow: 0 2px 16px rgba(13, 31, 60, 0.06);
    text-align: center;
    transition: all 0.25s ease;
}

.faq-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(13, 31, 60, 0.10);
}

.faq-icon-box {
    width: 48px;
    height: 48px;
    background: #0D1F3C;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.faq-icon-box svg {
    width: 22px;
    height: 22px;
    color: #D4A843;
}

.faq-card h3 {
    color: #0D1F3C;
    font-size: 17px;
    font-weight: 700;
    margin: 16px 0 8px;
}

.faq-card p {
    font-size: 14px;
    color: #2E3A4E;
    line-height: 1.65;
}

/* Bottom Banner */
.contact-bottom-cta {
    background: var(--secondary-accent);
    padding: 100px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
    color: #FFFFFF;
}

.cta-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(212, 168, 67, 0.12) 0%, transparent 70%);
    filter: blur(80px);
    pointer-events: none;
    z-index: 0;
}

.contact-bottom-cta h2 {
    color: #FFFFFF;
    font-size: 50px;
    line-height: 1.1;
    margin-bottom: 16px;
    position: relative;
    z-index: 2;
}

.contact-bottom-cta p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    margin-bottom: 40px;
    position: relative;
    z-index: 2;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    gap: 16px;
    position: relative;
    z-index: 2;
}

.cta-buttons .btn-secondary {
    background: transparent !important;
    border: 1.5px solid rgba(255,255,255,0.40) !important;
    color: #FFFFFF !important;
    transition: all 0.25s ease;
}

.cta-buttons .btn-secondary:hover {
    background: rgba(255,255,255,0.10) !important;
    transform: none;
    box-shadow: none;
}

/* Spinner */
.spinner {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: #fff;
    animation: spin 0.8s linear infinite;
    margin-right: 10px;
    vertical-align: middle;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Responsiveness Extensions */
@media (max-width: 991px) {
    .contact-main {
        grid-template-columns: 1fr;
        padding: 0 40px 80px;
        gap: 40px;
    }
    .faq-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .contact-hero { padding-top: 120px; }
    .contact-hero h1 { font-size: 40px; }
    .contact-main { padding: 0 20px 60px; }
    .contact-form-card { padding: 24px; }
    .form-row { grid-template-columns: 1fr; }
    .faq-grid { grid-template-columns: 1fr; }
    .contact-bottom-cta h2 { font-size: 32px; }
    .cta-buttons { flex-direction: column; align-items: center; }
}

/* Responsiveness */
@media (max-width: 991px) {
    .pricing-heading { font-size: 44px; }
    .pt-container { padding: 32px 24px; overflow-x: auto; }
    .pc-grid { grid-template-columns: 1fr; }
    .pb-grid { grid-template-columns: 1fr; }
    .pb-card.featured { transform: none; }
    .pay-timeline { flex-direction: column; gap: 40px; }
    .pay-line { 
        top: 0; bottom: 0; left: 50%; right: auto; 
        height: auto; width: 2px; 
        border-top: none; border-left: 2px dashed rgba(212,168,67,0.4); 
    }
}
@media (max-width: 768px) {
    .pricing-heading { font-size: 36px; }
    .pt-heading { font-size: 36px; }
}

/* =========================================
   WORDPRESS BLOG OVERRIDES
   ========================================= */

/* Font for entire blog */
body.blog,
body.archive,
body.single-post {
    font-family: 'Plus Jakarta Sans', 'Outfit', sans-serif;
    background-color: #FFFFFF;
}

/* ================== ARTICLES LISTING PAGE ================== */

/* Page header */
.blog .page-header,
.archive .page-header {
    padding: 100px 40px 60px;
    background: #FFFFFF;
    text-align: center;
}

/* Eyebrow label */
.blog .page-header::before,
.archive .page-header::before {
    content: "ARTICLES";
    color: #D4A843;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.10em;
    font-weight: 700;
    display: block;
    margin-bottom: 16px;
}

/* Page title */
.blog .page-title,
.archive .page-title {
    font-size: 52px;
    font-weight: 800;
    color: #0D1F3C;
    line-height: 1.1;
    margin: 0;
}

/* Posts container */
.blog .site-main,
.archive .site-main {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 80px 100px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

/* Each post card */
.blog .post, 
.archive .post,
.blog .type-post,
.archive .type-post {
    background: #FFFFFF;
    border: 1px solid rgba(13,31,60,0.08);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(13,31,60,0.06);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.blog .post:hover, 
.archive .post:hover,
.blog .type-post:hover,
.archive .type-post:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 48px rgba(13,31,60,0.12);
    border-color: rgba(212,168,67,0.30);
}

/* Post thumbnail */
.blog .post-thumbnail,
.archive .post-thumbnail {
    width: 100%;
    height: 220px;
    overflow: hidden;
    margin: 0;
}

.blog .post-thumbnail img,
.archive .post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    border-radius: 0;
}

.blog .post:hover .post-thumbnail img,
.archive .post:hover .post-thumbnail img,
.blog .type-post:hover .post-thumbnail img,
.archive .type-post:hover .post-thumbnail img {
    transform: scale(1.05);
}

/* Card Content Wrapper */
.blog .entry-header,
.archive .entry-header,
.blog .entry-content,
.archive .entry-content,
.blog .entry-summary,
.archive .entry-summary {
    padding: 0 24px;
}
.blog .entry-header,
.archive .entry-header {
    padding-top: 24px;
}

/* Category pill */
.cat-links a {
    background: rgba(212,168,67,0.10);
    color: #D4A843;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 999px;
    text-decoration: none;
    display: inline-block;
    margin-bottom: 12px;
}

/* Post title */
.blog .entry-title,
.archive .entry-title {
    font-size: 20px;
    font-weight: 700;
    color: #0D1F3C;
    line-height: 1.3;
    margin: 0 0 12px 0;
}

.blog .entry-title a,
.archive .entry-title a {
    color: #0D1F3C;
    text-decoration: none;
    transition: color 0.2s ease;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover {
    color: #D4A843;
}

/* Excerpt */
.blog .entry-content p, 
.archive .entry-content p,
.blog .entry-summary p,
.archive .entry-summary p {
    font-size: 14px;
    color: #5A6A7E;
    line-height: 1.70;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 24px;
}

/* Post meta */
.blog .entry-meta,
.archive .entry-meta {
    font-size: 12px;
    color: #8A96A6;
    display: flex;
    gap: 12px;
    padding: 0 24px;
    margin-bottom: 16px;
}

/* Read more link */
.blog a.more-link,
.archive a.more-link {
    color: #D4A843;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    padding: 0 24px 24px;
    display: inline-block;
    margin-top: auto;
    transition: all 0.3s ease;
}

.blog a.more-link::after,
.archive a.more-link::after {
    content: " \2192";
    display: inline-block;
    transition: transform 0.3s ease;
}

.blog a.more-link:hover::after,
.archive a.more-link:hover::after {
    transform: translateX(4px);
}

/* Pagination */
.page-numbers {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    border: 1px solid rgba(13,31,60,0.12);
    font-size: 14px;
    font-weight: 600;
    color: #0D1F3C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
    margin: 0 4px;
}

.page-numbers.current {
    background: #D4A843;
    color: #FFFFFF;
    border-color: #D4A843;
}

a.page-numbers:hover {
    border-color: #D4A843;
    color: #D4A843;
}

/* ================== SINGLE ARTICLE PAGE ================== */

/* Article header */
.single-post .entry-header {
    max-width: 780px;
    margin: 0 auto;
    padding: 100px 40px 48px;
    text-align: center;
}

/* Article title */
.single-post .entry-title {
    font-size: 48px;
    font-weight: 800;
    color: #0D1F3C;
    line-height: 1.15;
    margin-bottom: 24px;
}

/* Featured image */
.single-post .post-thumbnail img,
.single-post .wp-block-post-featured-image img {
    width: 100%;
    height: 480px;
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 16px 60px rgba(13,31,60,0.12);
    max-width: 900px;
    margin: 0 auto 60px;
    display: block;
}

/* Article body */
.single-post .entry-content {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 40px 80px;
    font-size: 17px;
    line-height: 1.80;
    color: #2E3A4E;
}

/* Headings inside content */
.single-post .entry-content h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0D1F3C;
    margin: 48px 0 20px;
}

.single-post .entry-content h3 {
    font-size: 24px;
    font-weight: 700;
    color: #0D1F3C;
    margin: 36px 0 16px;
}

/* Links inside content */
.single-post .entry-content a {
    color: #D4A843;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s ease;
}

.single-post .entry-content a:hover {
    color: #B8860B;
}

/* Blockquote */
.single-post .entry-content blockquote,
.single-post .wp-block-quote {
    border-left: 3px solid #D4A843;
    padding: 16px 24px;
    background: rgba(212,168,67,0.05);
    border-radius: 0 12px 12px 0;
    font-size: 18px;
    font-style: italic;
    color: #0D1F3C;
    margin: 32px 0;
}

/* Images inside content */
.single-post .entry-content img {
    width: 100%;
    height: auto;
    border-radius: 16px;
    margin: 32px 0;
    box-shadow: 0 8px 32px rgba(13,31,60,0.10);
    display: block;
}

/* Post navigation */
.post-navigation {
    max-width: 720px;
    margin: 0 auto 80px;
    padding: 32px 40px;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(13,31,60,0.08);
    border-bottom: 1px solid rgba(13,31,60,0.08);
}

.post-navigation a {
    color: #D4A843;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.post-navigation a:hover {
    color: #B8860B;
}

/* ================== RESPONSIVE ================== */
@media (max-width: 768px) {
    .blog .site-main,
    .archive .site-main {
        grid-template-columns: 1fr;
        padding: 0 20px 80px;
    }
    
    .single-post .entry-title {
        font-size: 32px;
    }
    
    .single-post .entry-content {
        font-size: 16px;
        padding: 0 20px 60px;
    }
    
    .single-post .post-thumbnail img,
    .single-post .wp-block-post-featured-image img {
        height: 280px;
        border-radius: 16px;
        margin-bottom: 40px;
    }
    
    .post-navigation {
        flex-direction: column;
        gap: 20px;
        padding: 24px 20px;
    }
}

/* =========================================
   TERMS OF SERVICE PAGE
   ========================================= */
.terms-hero {
    padding-top: 180px;
    padding-bottom: 60px;
    text-align: center;
}
.terms-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 5%;
    background: #FFFFFF;
    border-radius: 24px;
    box-shadow: 0 4px 20px rgba(13,31,60,0.05);
    border: 1px solid rgba(13,31,60,0.04);
    margin-bottom: 80px;
}
.terms-content h2 {
    font-size: 24px;
    margin-top: 48px;
    margin-bottom: 24px;
    color: var(--secondary-accent);
}
.terms-content p, .terms-content ul {
    margin-bottom: 20px;
    color: var(--text-body);
    font-size: 16px;
    line-height: 1.8;
}
.terms-content ul {
    padding-left: 24px;
    list-style-type: disc;
}
.terms-content ul li {
    margin-bottom: 8px;
}
.terms-content hr {
    border: none;
    height: 1px;
    background: rgba(13,31,60,0.1);
    margin: 40px 0;
}
.terms-meta {
    font-size: 15px;
    color: var(--text-light);
    margin-bottom: 40px;
    line-height: 1.8;
}
.terms-meta strong {
    color: var(--secondary-accent);
}

/* Tool & Services Dropdown Enhancements */
.dropdown-tool-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px 16px;
    text-decoration: none;
    border-radius: 14px;
    transition: background 0.2s ease;
}

.dropdown-tool-item:hover {
    background: rgba(212, 168, 67, 0.08);
}

.dropdown-tool-icon {
    background: rgba(212, 168, 67, 0.10);
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.dropdown-tool-text {
    display: flex;
    flex-direction: column;
}

.dropdown-tool-title {
    color: #0D1F3C;
    font-weight: 700;
    font-size: 15px;
}

.dropdown-tool-desc {
    color: #5A6A7E;
    font-size: 13px;
    line-height: 1.4;
    margin-top: 2px;
    max-width: 180px;
}
