html, body {
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
}

*, *::before, *::after {
    box-sizing: border-box;
}

.header-title {
    font-size: clamp(1.8rem, 5vw, 2.5rem); /* Desktop */
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-title {
        font-size: clamp(1.8rem, 4vw, 2.2rem); /* Tablet */
    }
}

#platforms img {
    object-fit: contain !important; 
}
.flex-card-info {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}
.flex-card-info .flex-card-info-div {
    width: 400px;
}
@media (max-width: 767px) {
    .header-title {
        font-size: clamp(1.25rem, 5vw, 1.5rem); /* Mobile */
    }
    .site-name {
        font-size: clamp(1.25rem, 4vw, 1.5rem); /* Mobile site name */
    }
}

/* Animations */
.animate-fade-in-left {
    opacity: 0;
    transform: translateX(-50px);
    animation: fadeInLeft 1s ease-out forwards;
}

.animate-fade-in-right {
    opacity: 0;
    transform: translateX(50px);
    animation: fadeInRight 1s ease-out forwards;
}

.animate-fade-in-bottom {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInBottom 1s ease-out forwards;
    animation-delay: 0.5s;
}

.animate-fade-in-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-fade-in-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes fadeInLeft {
    from { opacity: 0; transform: translateX(-50px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeInRight {
    from { opacity: 0; transform: translateX(50px); }
    to { opacity: 1; transform: translateX(0); }
}

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

.faq-answer {
    transition: max-height 0.5s ease-in-out;
}

.faq-answer.open {
    max-height: 200px; /* Adjust as needed for content height */
}

.icon-chevron.rotate {
    transform: rotate(180deg);
}

.word-break-all {
    word-break: break-all;
}
/* Parent container padding and max-width for readability */
.secureTermsHub {
    padding: 40px 30px; /* Top/bottom and left/right padding */
    max-width: 960px; /* Optional: Sets a maximum width for content */
    margin: 0 auto; /* Optional: Centers the container on wide screens */
}

/* Heading styles */
.secureTermsHub h1 {
    font-size: 2rem; /* Approximately 32px if root font-size is 16px */
    font-weight: 700; /* Bold */
    line-height: 1.2;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.secureTermsHub h2 {
    font-size: 1.75rem; /* Approximately 28px */
    font-weight: 700;
    line-height: 1.25;
    margin-top: 2rem;
    margin-bottom: 0.9rem;
}

.secureTermsHub h3 {
    font-size: 1.5rem; /* Approximately 24px */
    font-weight: 600; /* Semi-bold */
    line-height: 1.3;
    margin-top: 1.75rem;
    margin-bottom: 0.8rem;
}

.secureTermsHub h4 {
    font-size: 1.25rem; /* Approximately 20px */
    font-weight: 600;
    line-height: 1.4;
    margin-top: 1.5rem;
    margin-bottom: 0.7rem;
}

.secureTermsHub h5 {
    font-size: 1.1rem; /* Approximately 17.6px */
    font-weight: 500; /* Medium weight */
    line-height: 1.5;
    margin-top: 1.25rem;
    margin-bottom: 0.6rem;
}

/* Paragraph styles */
.secureTermsHub p {
    font-size: 1rem; /* Base font size, typically 16px */
    line-height: 1.6; /* Good for readability */
    margin-bottom: 1em; /* Space between paragraphs */
}

/* List styles */
.secureTermsHub ul {
    list-style-type: disc; /* Default bullet points */
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    padding-left: 2.5em; /* Indentation for bullet points */
}

.secureTermsHub li {
    font-size: 1rem; /* Inherit or set explicitly */
    line-height: 1.6;
    margin-bottom: 0.5rem; /* Space between list items */
}
