body {
    font-family: 'Poppins', sans-serif;
    box-sizing: border-box;
}

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

.container {
    max-width: 1200px;
}

.button {
    display: inline-block;
    white-space: normal;
    word-break: break-words;
    text-align: center;
    text-decoration: none;
}

.h1-responsive {
    font-size: 2.5rem; /* Default for desktop */
}

@media (min-width: 768px) and (max-width: 1023px) {
    .h1-responsive {
        font-size: 2.2rem; /* Tablet */
    }
}

@media (max-width: 767px) {
    .h1-responsive {
        font-size: 1.8rem; /* Mobile */
    }
}

h1 {
    font-size: 2.5rem;
}

@media (min-width: 768px) {
    h1 {
        font-size: 3.5rem;
    }
}

@media (min-width: 1024px) {
    h1 {
        font-size: 4.5rem;
    }
}

h2 {
    font-size: 2rem;
}

@media (min-width: 768px) {
    h2 {
        font-size: 3rem;
    }
}

@media (min-width: 1024px) {
    h2 {
        font-size: 3.5rem;
    }
}

h3 {
    font-size: 1.5rem;
}

@media (min-width: 768px) {
    h3 {
        font-size: 1.8rem;
    }
}

@media (min-width: 1024px) {
    h3 {
        font-size: 2rem;
    }
}

.timeline-container {
    position: relative;
    padding-left: 2rem;
}

.timeline-line {
    position: absolute;
    left: 1.5rem;
    top: 0;
    bottom: 0;
    width: 2px;
    background-color: #d1d5db; /* gray-300 */
}

.timeline-item {
    position: relative;
}

.timeline-item:nth-child(odd) {
    grid-column: 1;
}

.timeline-item:nth-child(even) {
    grid-column: 2;
}

@media (max-width: 767px) {
    .timeline-item:nth-child(odd),
    .timeline-item:nth-child(even) {
        grid-column: 1;
        text-align: left;
        padding-right: 0;
        padding-left: 3rem;
    }
}

.timeline-dot {
    position: absolute;
    left: 1rem;
    top: 0.25rem;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    border: 2px solid white;
    z-index: 10;
}

@media (min-width: 768px) {
    .timeline-item:nth-child(odd) .timeline-dot {
        left: auto;
        right: 1rem;
    }
    .timeline-item:nth-child(even) .timeline-dot {
        left: 1rem;
        right: auto;
    }
    .timeline-item:nth-child(odd) {
        text-align: right;
        padding-right: 3rem;
        padding-left: 0;
    }
    .timeline-item:nth-child(even) {
        text-align: left;
        padding-left: 3rem;
        padding-right: 0;
    }
    .timeline-line {
        left: 50%;
        transform: translateX(-50%);
    }
}

.service-card {
    height: 100%;
}

.tab-btn {
    position: relative;
    padding-bottom: 0.75rem;
    margin-bottom: -1px; /* To overlap with border-b of parent */
}

.tab-underline {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0%;
    height: 2px;
    background-color: #10b981; /* green-500 */
    transition: width 0s ease-in-out;
}

.tab-btn.active-tab .tab-underline {
    width: 100%;
    transition: width 0s ease-in-out;
}

.button-outline {
    border: 1px solid #10b981; /* green-500 */
    color: #10b981;
    padding: 0.75rem 1.5rem;
    border-radius: 9999px;
    transition: background-color 0.3s, color 0.3s;
}

.button-outline:hover, .button-outline.active {
    background-color: #10b981;
    color: white;
}

.faq-question i {
    transform: rotate(0deg);
}

.faq-question.active i {
    transform: rotate(180deg);
}

.word-break-all {
    word-break: break-all;
}
/* Parent container styling */
.legalFoldBox {
    padding-top: 30px; /* Top padding for the legal content box */
    padding-left: 20px; /* Left padding for the legal content box */
    padding-right: 20px; /* Right padding for the legal content box */
    /* Optional: Add max-width and margin: auto for better readability on large screens */
    /* max-width: 960px; */
    /* margin-left: auto; */
    /* margin-right: auto; */
}

/* Heading 1 styling */
.legalFoldBox h1 {
    word-break: break-all;
    font-size: 26px; /* Moderate size for main headings */
    font-weight: 700; /* Bold weight */
    line-height: 1.3; /* Improved readability */
    margin-top: 0; /* Remove default top margin for the first heading */
    margin-bottom: 20px; /* Space below the heading */
}

/* Heading 2 styling */
.legalFoldBox h2 {
    word-break: break-all;
    font-size: 22px; /* Smaller than h1 */
    font-weight: 600; /* Slightly less bold or same as h1 */
    line-height: 1.4;
    margin-top: 25px; /* Space above the heading */
    margin-bottom: 15px; /* Space below the heading */
}

/* Heading 3 styling */
.legalFoldBox h3 {
    word-break: break-all;
    font-size: 19px; /* Smaller than h2 */
    font-weight: 600;
    line-height: 1.4;
    margin-top: 20px;
    margin-bottom: 10px;
}

/* Heading 4 styling */
.legalFoldBox h4 {
    word-break: break-all;
    font-size: 17px; /* Closer to body text, but distinct */
    font-weight: 600;
    line-height: 1.5;
    margin-top: 18px;
    margin-bottom: 8px;
}

/* Heading 5 styling */
.legalFoldBox h5 {
    font-size: 16px; /* Similar to body text, but bold */
    font-weight: 600;
    line-height: 1.5;
    margin-top: 15px;
    margin-bottom: 5px;
}

/* Paragraph styling */
.legalFoldBox p {
    font-size: 16px; /* Standard body text size */
    line-height: 1.6; /* Good for readability */
    margin-top: 0; /* Remove default top margin */
    margin-bottom: 15px; /* Space between paragraphs */
}

/* Unordered list styling */
.legalFoldBox ul {
    list-style-type: disc; /* Default bullet points */
    margin-top: 0; /* Remove default top margin */
    margin-bottom: 15px; /* Space below the list */
    padding-left: 25px; /* Indent for bullet points */
}

/* List item styling */
.legalFoldBox li {
    font-size: 16px; /* Consistent with paragraph font size */
    line-height: 1.6; /* Consistent with paragraph line height */
    margin-bottom: 8px; /* Space between list items */
}

/* Optional: Remove bottom margin from the last child of a paragraph or list */
.legalFoldBox p:last-child,
.legalFoldBox ul:last-child,
.legalFoldBox li:last-child {
    margin-bottom: 0;
}
#how-it-works .w-full p {
     margin: 0 50px;
}
@media (max-width:576px) {
    #how-it-works .w-full p {
        margin: 0 20px;
    }
    #how-it-works h3 {
        margin: 0 10px;
    }
}
section {
    overflow: hidden;
}