:root {
    --dark-bg: #050B32;
    --dark-surface: #092052;
    --dark-card: #0b1a4a;
    --teal: #097CAC;
    --teal-light: #3ba8d4;
    --teal-glow: rgba(9, 124, 172, 0.3);
    --accent-gradient: linear-gradient(135deg, #097CAC, #3ba8d4, #06b6d4);
}
* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    background-color: var(--dark-bg);
    color: #ffffff;
    font-family: 'Poppins', sans-serif;
    overflow-x: hidden;
}
@keyframes lineDrop {
    0% { top: -50%; }
    100% { top: 150%; }
}
@keyframes particleFloat {
    0%, 100% { opacity: 0; transform: translateY(0) scale(1); }
    25% { opacity: 0.6; }
    50% { opacity: 0.8; transform: translateY(-40px) scale(1.5); }
    75% { opacity: 0.4; }
}

.terms-page {
    p { margin-bottom: 0; }

    .bg-lines {
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        pointer-events: none;
        z-index: 0;
        overflow: hidden;
    }
    .bg-lines .line {
        position: absolute;
        width: 1px;
        height: 100%;
        top: 0;
        background: linear-gradient(180deg, transparent, rgba(9,124,172,0.08), transparent);
    }
    .bg-lines .line::after {
        content: '';
        display: block;
        position: absolute;
        top: -50%;
        left: 0;
        width: 100%;
        height: 15vh;
        background: linear-gradient(180deg, transparent, var(--teal-glow), transparent);
        animation: lineDrop 6s ease-in-out infinite;
    }
    .bg-lines .line:nth-child(1) { left: 10%; }
    .bg-lines .line:nth-child(1)::after { animation-delay: 0s; animation-duration: 7s; }
    .bg-lines .line:nth-child(2) { left: 30%; }
    .bg-lines .line:nth-child(2)::after { animation-delay: 1.5s; animation-duration: 8s; }
    .bg-lines .line:nth-child(3) { left: 50%; }
    .bg-lines .line:nth-child(3)::after { animation-delay: 3s; animation-duration: 6s; }
    .bg-lines .line:nth-child(4) { left: 70%; }
    .bg-lines .line:nth-child(4)::after { animation-delay: 4.5s; animation-duration: 9s; }
    .bg-lines .line:nth-child(5) { left: 90%; }
    .bg-lines .line:nth-child(5)::after { animation-delay: 2s; animation-duration: 7.5s; }

    .particles {
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        pointer-events: none;
        z-index: 0;
    }
    .particle {
        position: absolute;
        width: 4px; height: 4px;
        background: var(--teal);
        border-radius: 50%;
        opacity: 0;
        animation: particleFloat 8s ease-in-out infinite;
    }
    .particle:nth-child(1) { left: 15%; top: 20%; animation-delay: 0s; }
    .particle:nth-child(2) { left: 45%; top: 60%; animation-delay: 2s; }
    .particle:nth-child(3) { left: 75%; top: 30%; animation-delay: 4s; }
    .particle:nth-child(4) { left: 25%; top: 80%; animation-delay: 1s; }
    .particle:nth-child(5) { left: 85%; top: 70%; animation-delay: 3s; }
    .particle:nth-child(6) { left: 55%; top: 10%; animation-delay: 5s; }
    .particle:nth-child(7) { left: 5%;  top: 50%; animation-delay: 1.5s; }
    .particle:nth-child(8) { left: 65%; top: 90%; animation-delay: 3.5s; }

    .z-1 { position: relative; z-index: 1; }

    .section-label {
        display: inline-block;
        font-size: 0.75rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 3px;
        color: var(--teal-light);
        margin-bottom: 12px;
        padding: 6px 16px;
        border: 1px solid rgba(9,124,172,0.3);
        border-radius: 50px;
    }
    .hero-highlight-gradient {
        background: linear-gradient(90deg, #097CAC 0%, #06b6d4 40%, #3b82f6 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        font-style: italic;
    }
    h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
        font-family: "poppins_700" !important;
    }

    /* ===== Hero ===== */
    .hero-section {
        padding: 100px 0 60px;
        position: relative;
        overflow: visible;
        text-align: center;
    }
    .hero-glow {
        position: absolute;
        width: 600px; height: 600px;
        border-radius: 50%;
        filter: blur(150px);
        opacity: 0.15;
        pointer-events: none;
    }
    .hero-glow-1 { background: var(--teal); top: -150px; left: -100px; }
    .hero-glow-2 { background: #6366f1; bottom: -200px; right: -100px; }
    .hero-title {
        font-size: 3.5rem;
        font-weight: 900;
        line-height: 1.2;
        margin-bottom: 16px;
        padding-bottom: 4px;
    }
    .hero-desc {
        font-size: 1.1rem;
        color: #94a3b8;
        line-height: 1.7;
        max-width: 600px;
        margin: 0 auto;
    }

    /* ===== Terms Content Section (light) ===== */
    .terms-content-section {
        padding: 60px 0 80px;
        background: #f0f7fb;
        border-top: 1px solid #d6e8f0;
        position: relative;
    }
    .terms-card {
        background: #ffffff;
        border: 1px solid rgba(9,124,172,0.12);
        border-radius: 20px;
        padding: 48px 48px;
        box-shadow: 0 4px 20px rgba(9,124,172,0.06);
        margin: 0 auto;
    }
    .terms-card h2 {
        font-size: 1.25rem;
        font-weight: 700;
        color: #050B32;
        margin-top: 32px;
        margin-bottom: 12px;
        padding-bottom: 8px;
        border-bottom: 2px solid rgba(9,124,172,0.12);
    }
    .terms-card h2:first-child {
        margin-top: 0;
    }
    .terms-card h2 strong {
        font-weight: 700;
    }
    .terms-card p {
        color: #4b5563;
        font-size: 0.88rem;
        line-height: 1.75;
        margin-bottom: 12px;
    }
    .terms-card p:last-child {
        margin-bottom: 0;
    }
    .terms-card div {
        color: #4b5563;
        font-size: 0.88rem;
        line-height: 1.75;
    }
    .terms-card a {
        color: var(--teal);
        text-decoration: none;
        font-weight: 600;
        transition: color 0.2s;
    }
    .terms-card a:hover {
        color: var(--teal-light);
        text-decoration: underline;
    }

    /* ======== iPad (801px - 1320px) ======== */
    @media (min-width: 801px) and (max-width: 1320px) {
        .hero-section { padding: 80px 0 50px; }
        .hero-title { font-size: 2.8rem; }
        .hero-desc { font-size: 1rem; }

        .terms-content-section { padding: 50px 0 60px; }
        .terms-card { padding: 36px 32px; }
        .terms-card h2 { font-size: 1.15rem; margin-top: 28px; }
        .terms-card p { font-size: 0.85rem; }
    }

    /* ======== Mobile (max-width: 800px) ======== */
    @media (max-width: 800px) {
        .container { padding-left: 15px !important; padding-right: 15px !important; }

        .hero-section { padding: 80px 0 40px; }
        .hero-title { font-size: 2.2rem; }
        .hero-desc { font-size: 0.95rem; }

        .terms-content-section { padding: 30px 0 50px; }
        .terms-card { padding: 28px 22px; border-radius: 14px; }
        .terms-card h2 { font-size: 1.05rem; margin-top: 24px; margin-bottom: 10px; }
        .terms-card p { font-size: 0.82rem; line-height: 1.7; margin-bottom: 10px; }
        .terms-card div { font-size: 0.82rem; }
    }

    /* ======== Small Mobile (max-width: 576px) ======== */
    @media (max-width: 576px) {
        .hero-section { padding: 40px 0 30px; }
        .hero-title { font-size: 1.8rem; }
        .hero-desc { font-size: 0.9rem; }
        .section-label { font-size: 0.65rem; letter-spacing: 2px; padding: 4px 12px; }

        .terms-content-section { padding: 20px 0 40px; }
        .terms-card { padding: 22px 16px; border-radius: 12px; }
        .terms-card h2 { font-size: 0.98rem; margin-top: 22px; margin-bottom: 8px; padding-bottom: 6px; }
        .terms-card p { font-size: 0.78rem; line-height: 1.65; margin-bottom: 8px; }
        .terms-card div { font-size: 0.78rem; }
    }
}