:root {
    --color-bg: #050508;
    --color-surface: rgba(255, 255, 255, 0.02);
    --color-surface-hover: rgba(255, 255, 255, 0.05);
    --color-primary: #584691;
    /* Royal Purple */
    --color-primary-light: #927DFC;
    /* Lavender Accent */
    --color-secondary: #927DFC;
    /* Lavender Accent */
    --color-text: #ffffff;
    --color-text-muted: #b5b5b5;
    /* Brighter for higher contrast compliance */
    --color-border: rgba(255, 255, 255, 0.06);

    --font-heading: 'Outfit', sans-serif;
    --font-body: 'Inter', sans-serif;

    --radius-bento: 16px;
    --ease-expo: cubic-bezier(0.19, 1, 0.22, 1);
    --ease-fluid: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Screen Reader Only - Utility */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    cursor: none;
    scroll-behavior: smooth;
    background-color: var(--color-bg);
    color: var(--color-text);
    font-family: var(--font-body);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}

.hidden-svg {
    position: absolute;
    width: 0;
    height: 0;
    pointer-events: none;
}

/* Accessible Hidden SEO Elements */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

h1,
h2,
h3,
h4 {
    font-family: var(--font-heading);
    letter-spacing: -0.01em;
    font-weight: 800;
}

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

img {
    max-width: 100%;
    display: block;
}

.container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 4vw;
}

/* Custom Dual Layer Cursor */
.cursor-dot,
.cursor-ring {
    position: fixed;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 99999;
    border-radius: 50%;
    will-change: transform;
}

.cursor-dot {
    width: 6px;
    height: 6px;
    background-color: var(--color-secondary);
}

.cursor-ring {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(0, 240, 255, 0.3);
    transition: width 0.3s, height 0.3s, background-color 0.3s;
}

.cursor-hover .cursor-ring {
    width: 70px;
    height: 70px;
    background-color: rgba(0, 240, 255, 0.05);
    border-color: rgba(0, 240, 255, 0.8);
}

/* Text & Colors */
.text-gradient,
.gradient-text {
    background: linear-gradient(135deg, var(--color-primary-light), var(--color-secondary));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.stroke-text {
    color: transparent;
    -webkit-text-stroke: 1px rgba(255, 255, 255, 0.2);
}

.text-primary {
    color: var(--color-secondary) !important;
}

/* Moving Mesh Background */
.mesh-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -10;
    background: radial-gradient(circle at top right, rgba(138, 43, 226, 0.08), transparent 40%), radial-gradient(circle at bottom left, rgba(0, 240, 255, 0.05), transparent 45%);
    background-size: 200% 200%;
    animation: meshFlow 20s ease infinite alternate;
    will-change: transform;
    transform: translateZ(0);
}

@keyframes meshFlow {
    0% {
        background-position: 0% 0%;
    }

    100% {
        background-position: 100% 100%;
    }
}

/* Logo Container */
.top-logo-container {
    position: absolute;
    top: 3rem;
    left: 4vw;
    z-index: 1000;
}

/* Exterior Social Floating */
.floating-socials {
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    z-index: 90;
}

.floating-socials a {
    width: 44px;
    height: 44px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--color-border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
    color: var(--color-text-muted);
    transition: all 0.3s;
}

.floating-socials a svg {
    width: 18px;
    height: 18px;
}

.floating-socials a:hover {
    color: var(--color-secondary);
    border-color: rgba(0, 240, 255, 0.3);
    background: rgba(0, 240, 255, 0.05);
}

/* Segmented Floating Glass Dock */
.segmented-dock {
    position: fixed;
    top: 20px;
    bottom: auto;
    left: 50%;
    transform: translateX(-50%) translateZ(0);
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    will-change: transform;
}

.nav-hamburger {
    display: none;
}

/* Desktop restoration: children become direct flex items */
.nav-desktop-links {
    display: contents;
}

/* Hide mobile-specific tray on desktop */
.nav-tray {
    display: none;
}

.seg-pill {
    background: rgba(15, 15, 15, 0.75);
    backdrop-filter: blur(35px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 100px;
    padding: 0.4rem 1.7rem;
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.1), 0 10px 40px rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
}

.seg-logo {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    justify-content: center;
}

.seg-logo img {
    display: block;
}

/* Replaced by .logo-img */
.seg-links {
    gap: 0.2rem;
    padding: 0.3rem 0.8rem;
}

.seg-link {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s var(--ease-expo);
    position: relative;
    padding: 0.5rem 1.2rem;
    border-radius: 100px;
}

.seg-link:hover {
    background: rgba(138, 43, 226, 0.15);
    color: #fff;
    text-shadow: 0 0 8px rgba(168, 85, 247, 0.6);
}

.seg-link.active {
    color: #fff;
}

.seg-social {
    gap: 0.8rem;
    padding: 0.3rem 1rem;
}

.seg-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    color: rgba(255, 255, 255, 0.7);
    transition: color 0.3s;
    padding: 0.3rem;
    border-radius: 50%;
}

.seg-icon svg {
    width: 18px;
    height: 18px;
}

.seg-icon:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.05);
}

.logo-img {
    height: 38px;
    width: auto;
    object-fit: contain;
    padding-right: 1.25rem;
    /* Equivalent to pr-5 for a bit more air next to Home */
    display: flex;
    align-items: center;
    filter: drop-shadow(0 0 12px rgba(146, 125, 252, 0.4));
    transition: all 0.3s ease;
}

.logo-img:hover {
    transform: scale(1.05);
}

.seg-divider {
    width: 1px;
    height: 20px;
    background: rgba(255, 255, 255, 0.15);
}

.contact-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary-light), var(--color-secondary));
    box-shadow: 0 0 10px var(--color-secondary);
    transition: transform 0.3s var(--ease-expo);
}

.contact-dot:hover {
    transform: scale(1.2);
}

/* Glowing Action Button */
.btn-glow {
    position: relative;
    display: inline-flex;
    padding: 1.25rem 3rem;
    background: transparent;
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100px;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 1.1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    overflow: hidden;
    transition: all 0.3s;
}

.btn-glow::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--color-primary), var(--color-secondary));
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s;
}

.btn-glow:hover {
    border-color: transparent;
    box-shadow: 0 0 30px rgba(0, 240, 255, 0.4);
    transform: translateY(-3px);
}

.btn-glow:hover::before {
    opacity: 1;
}

.btn-glow-large {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 1.6rem 4.5rem;
    background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
    border-radius: 100px;
    font-family: var(--font-heading);
    font-weight: 800;
    font-size: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    color: #fff;
    box-shadow: 0 15px 50px rgba(138, 43, 226, 0.6);
    transition: transform 0.3s, box-shadow 0.3s;
    border: none;
}

.btn-glow-large:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 60px rgba(0, 240, 255, 0.8);
}

/* --- Hero Layout & Typography --- */
.hero {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 6.5rem;
    position: relative;
    overflow: hidden;
}

.hero-massive-title {
    font-size: clamp(3.8rem, 9.5vw, 11rem);
    line-height: 0.88;
    text-transform: uppercase;
    margin-bottom: 2.2rem;
    display: flex;
    flex-direction: column;
}

.hero-desc {
    font-size: clamp(1.1rem, 1.8vw, 1.35rem);
    color: rgba(255, 255, 255, 0.7);
    max-width: 700px;
    margin-bottom: 3.5rem;
    font-weight: 300;
    line-height: 1.6;
}

/* --- Background Particle Canvas --- */
#hero-canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

/* --- Glowing Background Orbs --- */
.hero-orb-1,
.hero-orb-2,
.hero-orb-3 {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
    will-change: transform;
}

.hero-orb-1 {
    width: min(700px, 90vw);
    height: min(700px, 90vw);
    background: radial-gradient(circle, rgba(88, 70, 145, 0.22) 0%, transparent 70%);
    top: -20%;
    right: -15%;
    animation: orbFloat1 14s ease-in-out infinite;
}

.hero-orb-2 {
    width: min(500px, 70vw);
    height: min(500px, 70vw);
    background: radial-gradient(circle, rgba(0, 240, 255, 0.08) 0%, transparent 70%);
    bottom: 5%;
    left: -10%;
    animation: orbFloat2 18s ease-in-out infinite;
}

.hero-orb-3 {
    width: min(300px, 50vw);
    height: min(300px, 50vw);
    background: radial-gradient(circle, rgba(146, 125, 252, 0.12) 0%, transparent 70%);
    top: 60%;
    right: 20%;
    animation: orbFloat3 10s ease-in-out infinite;
}

@keyframes orbFloat1 {

    0%,
    100% {
        transform: translate(0, 0) scale(1);
    }

    33% {
        transform: translate(-30px, 20px) scale(1.05);
    }

    66% {
        transform: translate(20px, -15px) scale(0.97);
    }
}

@keyframes orbFloat2 {

    0%,
    100% {
        transform: translate(0, 0) scale(1);
    }

    50% {
        transform: translate(25px, -30px) scale(1.08);
    }
}

@keyframes orbFloat3 {

    0%,
    100% {
        transform: translate(0, 0) scale(1);
    }

    50% {
        transform: translate(-15px, 20px) scale(1.1);
    }
}


/* Bento Grids */
.section-padding {
    padding: 8rem 0;
}

/* --- Services Recovery: Floating Tech-Stack --- */
.font-mono {
    font-family: 'JetBrains Mono', monospace;
}

@keyframes breathe {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.7;
    }

    50% {
        transform: scale(1.05);
        opacity: 1;
    }
}

.skill-floating {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: 0.4rem 0.8rem;
    border-radius: 9999px;
    font-size: 10px;
    font-weight: 700;
    font-family: 'JetBrains Mono', monospace;
    color: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.4s var(--ease-expo);
    animation: breathe 4s ease-in-out infinite;
    animation-delay: calc(var(--stagger) * 5s);
    cursor: default;
    white-space: nowrap;
}

/* Interactive Focus: Card Dims, Skill Pops */
.group:hover .skill-floating {
    opacity: 0.3;
    filter: blur(1px);
    transform: scale(0.95);
}

.skill-floating:hover {
    opacity: 1 !important;
    filter: blur(0) !important;
    transform: scale(1.15) translateY(-2px) !important;
    background: rgba(168, 85, 247, 0.1);
    border-color: #a855f7;
    color: #fff;
    box-shadow: 0 0 20px rgba(168, 85, 247, 0.4);
    z-index: 10;
}

/* Cleaned up Redundant Recovery Styles */
.bento-section {
    background: #0D0D0D;
    position: relative;
    overflow: hidden;
}

.bento-grid {
    display: grid;
    gap: 2.5rem;
}

.grid-4 {
    grid-template-columns: repeat(4, 1fr);
}





.skill-chip:hover {
    background: rgba(168, 85, 247, 0.1);
    color: #fff;
    border-color: rgba(168, 85, 247, 0.4);
    box-shadow: 0 0 15px rgba(168, 85, 247, 0.2);
    transform: translateY(-2px);
}

.clean-list li {
    display: flex;
    align-items: center;
    font-size: 0.95rem;
    color: var(--color-text-muted);
    position: relative;
    padding-left: 1.2rem;
}

.clean-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--color-secondary);
    box-shadow: 0 0 5px var(--color-secondary);
}

/* CONTINUOUS SCROLL: Why Us + Team */
.continuous-flow-wrapper {
    background: linear-gradient(180deg, transparent 0%, #08070d 15%, #08070d 85%, transparent 100%);
    position: relative;
    padding: 4rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.02);
}

.liquid-section {
    padding: 4rem 0;
    position: relative;
}

.padding-bottom-large {
    padding-bottom: 8rem;
}

.container-split {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 4rem;
    align-items: center;
}

.massive-split-heading {
    /* Handled by Tailwind utilities in index.html */
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.8);
}

.whyus-right {
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

.whyus-point {
    display: flex;
    gap: 2rem;
}

.wp-icon {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-light);
    flex-shrink: 0;
    margin-top: 5px;
}

.wp-icon svg {
    width: 36px;
    height: 36px;
    stroke-width: 1.5;
}

.wp-content h3 {
    font-size: 1.8rem;
    margin-bottom: 0.8rem;
    font-weight: 600;
}

.wp-content p {
    color: var(--color-text-muted);
    font-size: 1.15rem;
    line-height: 1.6;
}

/* Continuous Scroll Team Component */
.team-card-minimal {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.tc-image {
    width: 100%;
    aspect-ratio: 1 / 1.05;
    overflow: hidden;
    border-radius: 20px;
    position: relative;
    margin-bottom: 1.5rem;
    background: #111;
}

.tc-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 30%;
}

.team-card-minimal .tc-image {
    flex-shrink: 0;
}

/* Action Bar below role */
.tc-action-bar {
    display: flex;
    gap: 0.8rem;
    margin-top: 0.8rem;
    justify-content: center;
}

.tc-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--color-text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.tc-btn svg {
    width: 18px;
    height: 18px;
}

.tc-btn:hover {
    background: rgba(138, 43, 226, 0.15);
    border-color: rgba(138, 43, 226, 0.5);
    color: #fff;
    box-shadow: 0 0 15px rgba(138, 43, 226, 0.4);
}

.team-card-minimal h4 {
    font-size: 1.5rem;
    margin-bottom: 0.3rem;
}

.team-card-minimal .role {
    color: var(--color-text-muted);
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    min-height: 2.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
}

/* =============================================
   PREMIUM PROJECT INTAKE SECTION
============================================= */

/* Section Wrapper */
.intake-section-wrap {
    background: #030305;
    padding: 9.6rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.04);
}

/* Ambient Mesh Background Orbs */
.contact-mesh-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.mesh-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    opacity: 0;
    animation: orbPulse 8s ease-in-out infinite;
}

.mesh-orb-1 {
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(138, 43, 226, 0.18) 0%, transparent 70%);
    top: -10%;
    left: -15%;
    animation-delay: 0s;
    opacity: 1;
}

.mesh-orb-2 {
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(0, 100, 255, 0.12) 0%, transparent 70%);
    bottom: -10%;
    right: -10%;
    animation-delay: 3s;
    opacity: 1;
}

.mesh-orb-3 {
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.07) 0%, transparent 70%);
    top: 40%;
    left: 40%;
    animation-delay: 5s;
    opacity: 0.7;
}

@keyframes orbPulse {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.12);
    }
}

/* MW Watermark */
.contact-watermark {
    position: absolute;
    top: 45%;
    left: -5%;
    transform: translateY(-50%);
    font-family: var(--font-heading);
    font-weight: 900;
    font-size: 32vw;
    color: rgba(255, 255, 255, 0.018);
    pointer-events: none;
    line-height: 0.8;
    letter-spacing: -2vw;
    z-index: 1;
}

/* Two-Column Grid */
.intake-grid {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 6rem;
    align-items: start;
    position: relative;
    z-index: 5;
}

/* ---- LEFT COLUMN ---- */
.intake-left {
    padding-top: 1rem;
}

.intake-eyebrow {
    font-family: var(--font-body);
    font-size: 0.75rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--color-primary-light);
    margin-bottom: 1.5rem;
    opacity: 0.9;
}

.intake-heading {
    /* Handled by Tailwind utilities in index.html */
}

/* Checklist */
.intake-checklist {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2.2rem;
    margin-bottom: 4rem;
}

.intake-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 1.2rem;
}

.check-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(138, 43, 226, 0.12);
    border: 1px solid rgba(138, 43, 226, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
}

.check-icon svg {
    width: 15px;
    height: 15px;
    color: var(--color-primary-light);
}

.intake-checklist li div strong {
    display: block;
    font-family: var(--font-heading);
    font-size: 0.9rem;
    letter-spacing: 1px;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
}

.intake-checklist li div p {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.45);
    line-height: 1.5;
    font-weight: 300;
    margin: 0;
}

/* Contact Info Block */
.intake-contact-block {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding-top: 2rem;
}

.intake-comms-label {
    display: block;
    font-size: 0.7rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 0.7rem;
    font-family: var(--font-body);
}

.intake-email {
    font-family: var(--font-heading);
    font-size: clamp(1.1rem, 2.2vw, 1.6rem);
    font-weight: 700;
    color: #fff;
    display: inline-block;
    transition: color 0.3s;
}

.intake-email:hover {
    color: var(--color-primary-light);
}

/* ---- RIGHT COLUMN — Form Card ---- */
.intake-right {
    position: relative;
}

.intake-form-card {
    background: rgba(255, 255, 255, 0.025);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 24px;
    padding: 3rem;
    backdrop-filter: blur(20px);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

/* Form Layout */
.clean-form {
    display: flex;
    flex-direction: column;
}

.clean-form .form-row {
    display: flex;
    gap: 1.2rem;
}

.intake-field-group {
    margin-bottom: 1.8rem;
}

.intake-label {
    display: block;
    font-family: var(--font-body);
    font-size: 0.72rem;
    letter-spacing: 2.5px;
    color: rgba(255, 255, 255, 0.45);
    margin-bottom: 1rem;
    text-transform: uppercase;
}

/* Inputs */
.clean-form input,
.clean-form textarea {
    width: 100%;
    padding: 1.1rem 1.3rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
    font-family: var(--font-body);
    font-size: 0.95rem;
    outline: none;
    transition: border-color 0.3s, background 0.3s, box-shadow 0.3s;
}

.clean-form input:focus,
.clean-form textarea:focus {
    border-color: rgba(138, 43, 226, 1);
    background: rgba(138, 43, 226, 0.08);
    /* Slightly darker for better contrast */
    box-shadow: 0 0 20px rgba(138, 43, 226, 0.35);
    /* Premium purple glow */
}

.clean-form input::placeholder,
.clean-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.35);
}

/* Interactive Tags */
.intake-tag-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.intake-tag {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 0.6rem 1.4rem;
    border-radius: 100px;
    color: rgba(255, 255, 255, 0.55);
    font-family: var(--font-body);
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    outline: none;
    letter-spacing: 0.3px;
}

.intake-tag:hover {
    border-color: rgba(138, 43, 226, 0.5);
    background: rgba(138, 43, 226, 0.1);
    color: #fff;
    transform: translateY(-2px);
}

.intake-tag.active {
    background: linear-gradient(135deg, rgba(138, 43, 226, 0.3), rgba(0, 180, 255, 0.15));
    border-color: rgba(138, 43, 226, 1);
    color: #fff;
    box-shadow: 0 0 18px rgba(138, 43, 226, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

/* File Dropzone */
.file-dropzone {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.8rem 1rem;
    border: 1px dashed rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.02);
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
}

.file-dropzone:hover {
    border-color: rgba(138, 43, 226, 0.45);
    background: rgba(138, 43, 226, 0.04);
}

.file-dropzone.drag-over {
    border-color: rgba(138, 43, 226, 0.85);
    background: rgba(138, 43, 226, 0.09);
}

.dropzone-text {
    font-family: var(--font-body);
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.4);
}

.dropzone-text strong {
    color: rgba(255, 255, 255, 0.65);
    font-weight: 500;
}

.dropzone-filename {
    font-size: 0.78rem;
    color: var(--color-primary-light);
    margin-top: 0.1rem;
}

/* Submit Row */
.intake-submit-row {
    margin-top: 2.5rem;
    display: flex;
    align-items: center;
}

/* Elite TRANSMIT Button */
.btn-transmit {
    display: inline-flex;
    align-items: center;
    gap: 0.85rem;
    background: linear-gradient(160deg, #ffffff 0%, #e8e8e8 100%);
    color: #050505;
    border: none;
    padding: 1.1rem 2.6rem;
    font-family: var(--font-heading);
    font-size: 0.88rem;
    font-weight: 800;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    border-radius: 100px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
    box-shadow: 0 6px 30px rgba(255, 255, 255, 0.18), 0 2px 8px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.12);
}

.btn-transmit::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(138, 43, 226, 0.14), rgba(0, 220, 255, 0.1));
    opacity: 0;
    transition: opacity 0.4s ease;
}

.btn-transmit:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 55px rgba(255, 255, 255, 0.25), 0 2px 8px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.2);
}

.btn-transmit:hover::after {
    opacity: 1;
}

.btn-transmit span {
    position: relative;
    z-index: 1;
}

.btn-transmit svg {
    position: relative;
    z-index: 1;
    transition: transform 0.3s ease;
}

.btn-transmit:hover svg {
    transform: translateX(5px);
}

/* WhatsApp Contact Link */
.intake-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-family: var(--font-heading);
    font-size: clamp(1rem, 1.8vw, 1.3rem);
    font-weight: 700;
    color: #fff;
    transition: color 0.3s;
    margin-top: 0.1rem;
}

.intake-whatsapp:hover {
    color: #25D366;
}

.whatsapp-icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(37, 211, 102, 0.1);
    border: 1px solid rgba(37, 211, 102, 0.3);
    color: #25D366;
    transition: background 0.3s, box-shadow 0.3s;
}

.whatsapp-icon svg {
    width: 16px;
    height: 16px;
}

.intake-whatsapp:hover .whatsapp-icon {
    background: rgba(37, 211, 102, 0.18);
    box-shadow: 0 0 12px rgba(37, 211, 102, 0.3);
}

/* Footer Policy Links */
.footer-policy-link {
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
    transition: color 0.3s;
    font-size: inherit;
}

.footer-policy-link:hover {
    color: rgba(255, 255, 255, 0.85);
}

/* Responsive */






/* Total Footer Rewrite (Strip Mode) */
.footer-strip {
    background: #050505 radial-gradient(circle at center, rgba(146, 125, 252, 0.08), transparent 70%) !important;
    padding: 32px 0;
    position: relative;
    border-top: none;
    /* Replaced by gradient line pseudo-element */
    color: rgba(255, 255, 255, 0.6);
    font-family: var(--font-body);
}

.footer-strip::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 1px;
    background: linear-gradient(90deg, transparent, #927DFC, #60EFFF, transparent);
    opacity: 0.3;
}

.footer-watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-heading);
    font-size: clamp(6rem, 15vw, 12rem);
    font-weight: 900;
    color: white;
    opacity: 0.03;
    pointer-events: none;
    white-space: nowrap;
    z-index: 0;
    text-transform: uppercase;
    letter-spacing: -5px;
}



.strip-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.strip-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr 1.1fr;
    gap: 3rem;
    align-items: start;
}

.strip-brand-title {
    font-family: var(--font-heading);
    font-size: 1.3rem;
    /* Compact */
    font-weight: 700;
    /* Standardized to bold */
    color: #fff;
    margin-bottom: 0.8rem;
    letter-spacing: -0.5px;
}

.strip-contact-info {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    font-size: 0.75rem;
    margin-bottom: 1.2rem;
}

.strip-email-link,
.strip-whatsapp-text {
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    transition: all 0.3s ease;
}

.strip-email-link:hover {
    color: var(--color-primary);
    text-shadow: 0 0 8px rgba(146, 125, 252, 0.4);
}


.strip-social-row {
    display: flex;
    gap: 1.2rem;
}

.strip-social-icon {
    color: rgba(255, 255, 255, 0.4);
    transition: all 0.4s var(--ease-expo);
}

.strip-social-icon:hover {
    color: #fff;
    transform: translateY(-5px);
    filter: drop-shadow(0 0 5px rgba(146, 125, 252, 0.5));
}


/* Nav Column */
.strip-heading {
    font-family: var(--font-heading);
    font-size: 0.75rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 1.2rem;
    letter-spacing: 2px;
}

.strip-nav-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    /* Professional gap (gap-3/4 feel) */
    align-items: flex-start;
}


.strip-nav-list a {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.72rem;
    font-weight: 500;
    /* Medium Weight */
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    /* Tracking-Widest */
    transition: all 0.4s var(--ease-expo);
    position: relative;
    padding-bottom: 4px;
}

.strip-nav-list a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: linear-gradient(90deg, #927DFC, #60EFFF);
    transition: width 0.4s var(--ease-expo);
}

.strip-nav-list a:hover {
    color: #fff;
    text-shadow: 0 0 10px rgba(146, 125, 252, 0.3);
}

.strip-nav-list a:hover::after {
    width: 100%;
}



/* Subscribe Column */
.strip-subtext {
    font-size: 0.7rem;
    margin-bottom: 1.2rem;
    opacity: 0.6;
    letter-spacing: 1px;
}

.subscribe-form {
    margin-bottom: 1rem;
}

.strip-input-row {
    display: flex;
    gap: 0;
    background: rgba(255, 255, 255, 0.03);
    /* Lighter glass */
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    /* More modern rounding */
    padding: 5px;
    max-width: 448px;
    transition: all 0.4s var(--ease-expo);
    backdrop-filter: blur(15px);
}

.strip-input-row:focus-within {
    border-color: rgba(146, 125, 252, 0.6);
    box-shadow: 0 0 15px rgba(146, 125, 252, 0.2);
}



.strip-input-row input {
    flex: 1;
    background: transparent;
    border: none;
    padding: 0.6rem 1rem;
    color: #fff;
    font-size: 0.75rem;
    outline: none;
}

.strip-btn-connect {
    display: none;
    /* Removed from input row */
}

.send-btn {
    background: linear-gradient(135deg, #927DFC, #60EFFF);
    border: none;
    width: 34px;
    height: 34px;
    border-radius: 4px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s var(--ease-expo);
    flex-shrink: 0;
}

.send-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 0 15px rgba(146, 125, 252, 0.5);
}

.send-btn svg {
    width: 14px;
    height: 14px;
}

.footer-cta-wrapper {
    margin-top: 1.5rem;
    width: 100%;
    display: flex;
    justify-content: center;
}

.btn-connect-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 448px;
    background: linear-gradient(135deg, #6366f1, #2563eb);
    /* Vibrant Purple/Blue */
    color: white;
    padding: 1.1rem;
    border-radius: 8px;
    /* Slightly more rounded */
    font-family: var(--font-heading);
    font-weight: 800;
    text-decoration: none !important;
    letter-spacing: 2.5px;
    font-size: 0.85rem;
    transition: all 0.4s var(--ease-expo);
    box-shadow: 0 10px 40px rgba(37, 99, 235, 0.25);
    animation: btnPulseGlow 4s ease-in-out infinite;
    text-transform: uppercase;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.btn-connect-footer:hover {
    transform: translateY(-4px) scale(1.01);
    box-shadow: 0 20px 50px rgba(99, 102, 241, 0.45);
    filter: brightness(1.15);
}

@keyframes btnPulseGlow {

    0%,
    100% {
        box-shadow: 0 0 15px rgba(37, 99, 235, 0.2), 0 10px 40px rgba(37, 99, 235, 0.1);
    }

    50% {
        box-shadow: 0 0 35px rgba(99, 102, 241, 0.5), 0 10px 40px rgba(99, 102, 241, 0.2);
    }
}



/* Footer Bottom */
.strip-bottom-bar {
    margin-top: 4rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.strip-bottom-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
}

.copyright-info {
    font-size: 0.65rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.3);
    letter-spacing: 1px;
}

.legal-links {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.legal-links a {
    font-size: 0.65rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none !important;
    transition: color 0.3s ease;
}

.legal-links a:hover {
    color: #fff;
}

.legal-sep {
    color: rgba(255, 255, 255, 0.1);
    font-size: 0.7rem;
}





/* Animations */
.reveal-text .block {
    opacity: 0;
    transform: translateY(100%);
    animation: slideUp 1.2s var(--ease-expo) forwards;
}

.reveal-text .block:nth-child(2) {
    animation-delay: 0.1s;
}

.reveal-text .block:nth-child(3) {
    animation-delay: 0.2s;
}

.reveal-fade {
    opacity: 0;
    transform: translateY(40px);
    transition: all 1.2s var(--ease-expo);
    will-change: transform, opacity;
}

.reveal-fade.is-revealed {
    opacity: 1;
    transform: translateY(0);
}

@keyframes slideUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* NEW FOOTER 3-COLUMN STRUCTURE */
.footer-3col-grid {
    display: grid;
    grid-template-columns: 1.5fr 1.2fr 1.5fr;
    gap: 2rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    padding-bottom: 1.5rem;
    align-items: start;
}

.footer-col-new h4 {
    color: white;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1rem;
    opacity: 0.7;
}

.col-brand .footer-massive-heading {
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 2.8vw, 2.4rem);
    line-height: 1.1;
    margin-bottom: 1rem;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: -1px;
    text-align: left;
}

.footer-contact-list {
    list-style: none;
    margin-bottom: 1.2rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.footer-contact-list a {
    font-size: 1.1rem;
    color: var(--color-text-muted);
    transition: color 0.3s;
    font-family: var(--font-body);
}

.footer-contact-list a:hover {
    color: var(--color-primary-light);
}

.footer-social-icons {
    display: flex;
    gap: 1.5rem;
}

.new-glow {
    border-color: rgba(138, 43, 226, 0.4);
    box-shadow: 0 0 15px rgba(138, 43, 226, 0.15);
    transition: all 0.3s ease;
}

.new-glow:hover {
    box-shadow: 0 0 25px rgba(0, 240, 255, 0.4);
    border-color: rgba(0, 240, 255, 0.6);
}

.quick-access-nav {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.col-subscribe .subscribe-subtext {
    color: var(--color-text-muted);
    font-size: 0.85rem;
    margin-bottom: 1.2rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    opacity: 0.8;
    font-family: var(--font-body);
}

.subscribe-form {
    margin-bottom: 1.2rem;
}

.subscribe-form .input-wrap {
    position: relative;
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 100px;
    padding: 0.3rem 0.3rem 0.3rem 1.2rem;
    transition: all 0.4s var(--ease-expo);
    backdrop-filter: blur(10px);
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.02);
}

.subscribe-form .input-wrap:focus-within {
    border-color: rgba(0, 240, 255, 0.4);
    background: rgba(255, 255, 255, 0.05);
    box-shadow: 0 0 20px rgba(0, 240, 255, 0.1);
}

.subscribe-form input {
    flex: 1;
    background: transparent !important;
    border: none;
    outline: none;
    color: #fff !important;
    font-family: var(--font-body);
    font-size: 0.85rem;
    padding-right: 0.5rem;
}

/* Chrome/Safari Autofill Fix */
.subscribe-form input:-webkit-autofill,
.subscribe-form input:-webkit-autofill:hover,
.subscribe-form input:-webkit-autofill:focus,
.subscribe-form input:-webkit-autofill:active {
    -webkit-text-fill-color: #fff !important;
    -webkit-box-shadow: 0 0 0 30px #050508 inset !important;
    /* Matches theme dark background */
    transition: background-color 5000s ease-in-out 0s;
}

.subscribe-form input::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

.subscribe-form .send-btn {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.3s var(--ease-expo);
    box-shadow: 0 4px 15px rgba(146, 125, 252, 0.4);
}

.subscribe-form .send-btn svg {
    width: 14px;
    height: 14px;
}

.subscribe-form .send-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 0 20px rgba(146, 125, 252, 0.8);
    filter: brightness(1.2);
}

.subscribe-status {
    margin-top: 0.8rem;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    opacity: 0;
    transform: translateY(-5px);
    transition: all 0.3s var(--ease-expo);
    height: 0;
    overflow: hidden;
}

.subscribe-status.visible {
    opacity: 1;
    transform: translateY(0);
    height: auto;
    margin-top: 0.8rem;
}

.subscribe-status.success {
    color: #00ff88;
}

.subscribe-status.error {
    color: #ff4444;
}

.btn-subscribe-cta {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 2.2rem !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    width: max-content !important;
    margin-top: 1.5rem;
    background: linear-gradient(135deg, var(--color-primary), #927DFC) !important;
    border: none;
    border-radius: 100px;
    color: #fff !important;
    box-shadow: 0 10px 25px rgba(146, 125, 252, 0.3);
    transition: all 0.4s var(--ease-expo);
}

.btn-subscribe-cta:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 15px 40px rgba(146, 125, 252, 0.5);
    filter: brightness(1.1);
}



/* Social Icons Refinement for Sleek Footer */
.footer-social-icons-sleek {
    display: flex;
    gap: 1rem;
    margin-top: 1rem;
}



/* Media Queries */








/* Standalone Document Experience (Policy Pages) */
.doc-page-body {
    background: #000 !important;
    cursor: default !important;
}

.doc-mesh-bg {
    position: fixed;
    inset: 0;
    z-index: -1;
    background: radial-gradient(circle at top left, rgba(138, 43, 226, 0.08), transparent 50%),
        radial-gradient(circle at bottom right, rgba(0, 240, 255, 0.05), transparent 50%);
    pointer-events: none;
}

/* Floating Navigation */
.doc-nav-back {
    position: fixed;
    top: 2rem;
    left: 2rem;
    z-index: 1000;
    padding: 0.8rem 1.5rem;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 100px;
    backdrop-filter: blur(15px);
    color: #fff;
    font-family: var(--font-heading);
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 0.8rem;
    transition: all 0.3s var(--ease-expo);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.doc-nav-back:hover {
    background: rgba(255, 255, 255, 0.08);
    transform: translateX(-5px);
    border-color: rgba(255, 255, 255, 0.2);
}

/* Document Header */
.doc-header {
    padding-top: 8rem;
    margin-bottom: 5rem;
    text-align: left;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.doc-badge-group {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.doc-badge {
    padding: 0.4rem 1rem;
    border-radius: 100px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-family: var(--font-body);
}

.badge-purple {
    background: rgba(138, 43, 226, 0.15);
    color: var(--color-primary-light);
    border: 1px solid rgba(138, 43, 226, 0.3);
}

.badge-cyan {
    background: rgba(0, 240, 255, 0.1);
    color: var(--color-secondary);
    border: 1px solid rgba(0, 240, 255, 0.2);
}

.doc-title {
    font-size: clamp(3rem, 7vw, 6rem);
    line-height: 1;
    margin-bottom: 1rem;
    text-transform: uppercase;
    font-weight: 900;
    color: #fff;
}

.doc-subtitle {
    font-size: 1.1rem;
    color: var(--color-text-muted);
    font-weight: 300;
    letter-spacing: 1px;
}

/* Content Cards */
.doc-content {
    max-width: 900px;
    margin: 0 auto 8rem auto;
    display: grid;
    gap: 2.5rem;
}

.doc-card {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 20px;
    padding: 3rem;
    backdrop-filter: blur(10px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
    transition: transform 0.3s var(--ease-expo);
}

.doc-card:hover {
    border-color: rgba(255, 255, 255, 0.1);
}

.doc-card h3 {
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 1.2rem;
}

.doc-card p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 300;
    margin-bottom: 1.5rem;
}

.doc-card ul {
    list-style: none;
    padding-left: 0;
}

.doc-card li {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.95rem;
    line-height: 1.6;
}

.doc-card li::before {
    content: '→';
    color: var(--color-primary-light);
    font-weight: 700;
}

/* Eligibility Checker (Refund Page Only) */
.eligibility-checker {
    background: linear-gradient(135deg, rgba(138, 43, 226, 0.08), rgba(0, 240, 255, 0.05));
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 3rem;
    margin-bottom: 4rem;
}

.checker-title {
    font-size: 1.2rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 2rem;
    color: #fff;
}

.checklist-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.2rem;
    cursor: pointer;
    user-select: none;
}

.checker-box {
    width: 22px;
    height: 22px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}

.checklist-item.active .checker-box {
    background: var(--color-primary-light);
    border-color: var(--color-primary-light);
}

.checklist-item svg {
    width: 14px;
    height: 14px;
    color: #fff;
    opacity: 0;
    transition: opacity 0.3s;
}

.checklist-item.active svg {
    opacity: 1;
}

.checklist-text {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.6);
    transition: color 0.3s;
}

.checklist-item.active .checklist-text {
    color: #fff;
}

.checker-feedback {
    margin-top: 2.5rem;
    padding: 1.5rem;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
    font-size: 0.9rem;
    color: var(--color-text-muted);
    opacity: 0;
    transition: opacity 0.4s;
}

.checker-feedback.visible {
    opacity: 1;
}

/* Bottom Action Section */
.doc-bottom-section {
    max-width: 900px;
    margin: 0 auto;
    padding: 6rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    text-align: center;
}

.doc-bottom-section h4 {
    font-size: 2.5rem;
    margin-bottom: 3rem;
}

.doc-action-group {
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
    align-items: center;
}

/* Branded WhatsApp Button */
.btn-doc-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 2.4rem;
    border-radius: 100px;
    background: #fff;
    color: #000;
    font-family: var(--font-heading);
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-size: 0.85rem;
    transition: all 0.3s var(--ease-expo);
}

.btn-doc-whatsapp:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(138, 43, 226, 0.3);
}

.wa-logo-branded {
    width: 24px;
    height: 24px;
    fill: url(#wa-gradient);
}

/* Download PDF Button (Print Trigger) */
.doc-download-btn {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.6);
    padding: 0.8rem 1.8rem;
    border-radius: 100px;
    font-family: var(--font-body);
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s;
}

.doc-download-btn:hover {
    border-color: #fff;
    color: #fff;
    background: rgba(255, 255, 255, 0.05);
}

/* Print Media Queries */
@media print {
    body {
        background: #fff !important;
        color: #000 !important;
    }

    .doc-mesh-bg,
    .doc-nav-back,
    .doc-bottom-section,
    .eligibility-checker,
    .doc-badge-group {
        display: none !important;
    }

    .doc-header {
        padding-top: 0;
        margin-bottom: 2rem;
    }

    .doc-title {
        color: #000 !important;
        font-size: 2.5rem;
    }

    .doc-subtitle {
        color: #666 !important;
    }

    .doc-card {
        background: none !important;
        border: none !important;
        padding: 0 !important;
        box-shadow: none !important;
        margin-bottom: 2rem;
    }

    .doc-card h3 {
        color: #000 !important;
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }

    .doc-card p,
    .doc-card li {
        color: #333 !important;
        font-size: 11pt;
    }

    .doc-card li::before {
        color: #000 !important;
    }

    .doc-content {
        margin-bottom: 0 !important;
    }
}

@media (max-width: 768px) {
    .doc-header {
        padding-top: 6rem;
    }

    .doc-card {
        padding: 2rem;
    }

    .doc-nav-back {
        top: 1rem;
        left: 1rem;
        padding: 0.6rem 1.2rem;
    }
}



/* --- Global Success Capture UI/UX (Consolidated) --- */
@keyframes success-reveal {
    0% {
        opacity: 0;
        transform: translateY(40px) scale(0.95);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes pulse-cyan {

    0%,
    100% {
        box-shadow: 0 0 0 rgba(0, 240, 255, 0);
        border-color: rgba(0, 240, 255, 0.2);
    }

    50% {
        box-shadow: 0 0 40px rgba(0, 240, 255, 0.15);
        border-color: rgba(0, 240, 255, 0.5);
    }
}

@keyframes checkmark-draw {
    0% {
        stroke-dashoffset: 60;
        opacity: 0;
    }

    100% {
        stroke-dashoffset: 0;
        opacity: 1;
    }
}

.success-capture-box {
    padding: 3.5rem 2rem;
    background: rgba(0, 240, 255, 0.03) !important;
    border: 1px solid rgba(0, 240, 255, 0.2) !important;
    border-radius: 20px;
    text-align: center;
    backdrop-filter: blur(15px);
    animation: success-reveal 0.8s var(--ease-expo) forwards, pulse-cyan 4s ease-in-out infinite;
    position: relative;
    overflow: hidden;
}

.success-capture-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 1.8rem auto;
    color: var(--color-secondary);
    background: rgba(0, 240, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.success-capture-icon svg {
    width: 32px;
    height: 32px;
    stroke-dasharray: 60;
    stroke-dashoffset: 60;
    animation: checkmark-draw 1s var(--ease-expo) 0.3s forwards;
}

.success-capture-title {
    font-family: var(--font-heading);
    font-size: 1.8rem;
    font-weight: 900;
    color: #00f0ff;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 0.8rem;
    text-shadow: 0 0 25px rgba(0, 240, 255, 0.4);
}

.success-capture-text {
    font-size: 1.05rem;
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.6;
    max-width: 420px;
    margin: 0 auto;
    font-weight: 300;
}



/* --- Mobile Responsiveness Overhaul (max-width: 768px) --- */


/* Fix only Abdullah image crop — Moving content down */
.member3-img {
    object-position: center 10% !important;
    transform: translateY(0px) !important;
}

/* --- Advanced Testimonials Marquee & Premium UI --- */
.marquee-viewport {
    mask-image: linear-gradient(to right, transparent, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 1) 85%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 1) 85%, transparent);
    z-index: 10;
}

.marquee-track {
    animation: scroll-marquee 45s linear infinite;
    will-change: transform;
}

.marquee-track:hover {
    animation-play-state: paused;
}

@keyframes pulseGlow {

    0%,
    100% {
        opacity: 0.3;
        transform: translate(-50%, -50%) scale(1);
    }

    50% {
        opacity: 0.5;
        transform: translate(-50%, -50%) scale(1.1);
    }
}

.testimonial-bg-glow {
    background: radial-gradient(circle, rgba(168, 85, 247, 0.15) 0%, transparent 70%);
    animation: pulseGlow 8s ease-in-out infinite;
}

.avatar-initials {
    background: linear-gradient(135deg, #a855f7, #3b82f6);
    box-shadow: 0 0 15px rgba(168, 85, 247, 0.4);
}

.star-glow {
    text-shadow: 0 0 8px rgba(255, 223, 0, 0.6);
    color: #fbbf24;
}

.testimonial-card-v2 {
    transition: all 0.5s var(--ease-expo);
}

.testimonial-card-v2:hover {
    z-index: 50;
    transform: translateY(-5px);
}

.testimonial-card-v2 p {
    font-size: 1.1rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
}

.quote-icon {
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    font-size: 4rem;
    font-family: serif;
    line-height: 1;
    color: rgba(168, 85, 247, 0.1);
    pointer-events: none;
}

.testimonial-card-v2:hover {
    z-index: 50;
}

/* --- Section Content Visibility Optimization --- */
#services,
#whyus,
#team,
#testimonials,
#contact-section {
    content-visibility: auto;
    contain-intrinsic-size: 1px 1000px;
    /* Placeholder size for smoother scrolling */
}

/* GPU Acceleration */
.marquee-track,
.hero-massive-title,
.cursor-dot,
.cursor-ring {
    will-change: transform;
}

/* --- Section Differentiation (Texturing) --- */

/* 1. Difference Section: Tactical Grid */
.difference-section {
    position: relative;
    background-image:
        radial-gradient(rgba(146, 125, 252, 0.05) 1px, transparent 1px),
        radial-gradient(rgba(146, 125, 252, 0.05) 1px, transparent 1px);
    background-size: 40px 40px;
    background-position: 0 0, 20px 20px;
}

/* 2. Services Section: Radial Glow & Midnight Base */
#services {
    background-color: #0D0D0D !important;
    background-image: radial-gradient(circle at 50% 50%, rgba(88, 70, 145, 0.15) 0%, transparent 70%);
    position: relative;
    z-index: 1;
}

/* 3. Testimonials: Midnight Noise */
#testimonials {
    background-color: #0a0a0c !important;
    position: relative;
}

#testimonials::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.03;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    z-index: 1;
}

/* 4. Section Dividers: Team & Work (Contact) */
#team,
#contact-section {
    position: relative;
}

#team::before,
#contact-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 10%;
    width: 80%;
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(146, 125, 252, 0.3), transparent);
    z-index: 10;
}

@keyframes scroll-marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-50% - 1.5rem));
        /* Account for half the duplicated set + half gap */
    }
}


/* Adjust scroll marquee for mobile to go faster or slower if needed */


/* Reveal Animation Enhancement */
.reveal-fade {
    opacity: 0;
    transform: translateY(40px);
    transition: all 1s var(--ease-expo);
}

.reveal-fade.is-revealed {
    opacity: 1;
    transform: translateY(0);
}

/* --- REAL FLOWING ARC ARCHITECTURE --- */
#home { position: relative; overflow: hidden; background: #050510 !important; }
#gravity-glow {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  z-index: 0;
  pointer-events: none;
}

.arc-wrap {
  position: absolute;
  bottom: -55%;
  left: 50%;
  transform: translateX(-50%);
  width: 1800px;
  height: 1100px;
  border-radius: 50%;
  overflow: hidden;
  animation: arc-float 15s ease-in-out infinite;
}

.arc {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0deg,
    rgba(88, 70, 145, 0.0) 60deg,
    rgba(146, 125, 252, 0.6) 120deg,
    rgba(146, 125, 252, 0.9) 180deg,
    rgba(146, 125, 252, 0.6) 240deg,
    rgba(88, 70, 145, 0.0) 300deg,
    transparent 360deg
  );
  filter: blur(40px) drop-shadow(0 0 30px rgba(146, 125, 252, 0.5));
  mask-image: radial-gradient(ellipse at center, transparent 60%, black 62%);
  -webkit-mask-image: radial-gradient(ellipse at center, transparent 60%, black 62%);
  animation: moveFlow 25s linear infinite;
}

.arc2 {
  animation: moveFlow 40s linear infinite reverse;
  opacity: 0.5;
  filter: blur(60px) drop-shadow(0 0 50px rgba(146, 125, 252, 0.3));
}

.base {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,
    rgba(88, 70, 145, 0.4) 0%,
    rgba(146, 125, 252, 0.1) 40%,
    transparent 70%
  );
  filter: blur(120px);
}

@keyframes moveFlow {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@keyframes arc-float {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(-20px); }
}

/* ===== MOBILE RESPONSIVE ARC (OVAL FLOW) ===== */
@media (max-width: 768px) {
  .arc-wrap {
    width: 250vw;
    height: 250vw;
    bottom: 15%;
    filter: blur(15px);
    opacity: 1 !important;
    animation: arc-float-mobile 8s ease-in-out infinite;
  }
  
  .arc {
    filter: blur(10px) drop-shadow(0 0 35px rgba(146, 125, 252, 1));
    animation: moveFlow 8s linear infinite;
    opacity: 1;
  }
  
  .arc2 {
    animation: moveFlow 12s linear infinite reverse;
    filter: blur(25px) drop-shadow(0 0 45px rgba(146, 125, 252, 0.8));
    opacity: 0.8;
  }

  .base {
    background: radial-gradient(ellipse at center,
      rgba(88, 70, 145, 0.8) 0%,
      rgba(146, 125, 252, 0.5) 40%,
      transparent 70%
    );
    filter: blur(50px);
    opacity: 0.9;
  }

  @keyframes arc-float-mobile {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(-10px); }
  }
}
