/* =========================================================
   TERMS & CONDITIONS
========================================================= */

.terms-page {

    background: #f8f9fc;

    color: #343942;

}


/* =========================================================
   SIDEBAR
========================================================= */

.terms-sidebar {

    position: sticky;

    top: 25px;

    overflow: hidden;

    border: 1px solid #e2e5ea;

    border-radius: 18px;

    background: #fff;

    box-shadow:
        0 15px 40px rgba(35,40,55,.06);

}


.terms-sidebar-title {

    display: flex;

    align-items: center;

    gap: 11px;

    padding: 20px 22px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            #7146e8,
            #8c51ed
        );

    font-size: 17px;

    font-weight: 700;

}


.terms-sidebar-title i {

    font-size: 18px;

}


.terms-sidebar-list {

    padding: 10px 0;

}


.terms-sidebar-list a {

    display: flex;

    align-items: center;

    padding: 10px 22px;

    border-left: 3px solid transparent;

    color: #69737e;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    transition:
        all .25s ease;

}


.terms-sidebar-list a:hover {

    padding-left: 27px;

    border-left-color: #7146e8;

    color: #7146e8;

    background: #f7f4ff;

}


.terms-sidebar-contact {

    margin: 12px;

    padding: 18px;

    border-radius: 13px;

    background: #f7f4ff;

}


.terms-sidebar-icon {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 12px;

    border-radius: 11px;

    background: #7146e8;

    color: #fff;

}


.terms-sidebar-contact strong {

    display: block;

    color: #30343c;

    font-size: 14px;

}


.terms-sidebar-contact p {

    margin: 5px 0 10px;

    color: #7a838d;

    font-size: 12px;

    line-height: 1.5;

}


.terms-sidebar-contact a {

    display: flex;

    align-items: center;

    justify-content: space-between;

    color: #7146e8;

    text-decoration: none;

    font-size: 12px;

    font-weight: 700;

}


/* =========================================================
   INTRO
========================================================= */

.terms-intro-card {

    display: flex;

    align-items: center;

    gap: 24px;

    margin-bottom: 28px;

    padding: 30px;

    border: 1px solid #e2ddf0;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            #f4f0ff,
            #fff
        );

}


.terms-intro-icon {

    width: 72px;

    height: 72px;

    flex: 0 0 72px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 18px;

    background: #7146e8;

    color: #fff;

    font-size: 27px;

    box-shadow:
        0 12px 28px rgba(113,70,232,.2);

}


.terms-kicker {

    display: block;

    color: #7146e8;

    font-size: 11px;

    font-weight: 900;

    letter-spacing: 2px;

}


.terms-intro-card h2 {

    margin: 7px 0;

    color: #242830;

    font-size: 29px;

    line-height: 1.2;

    font-weight: 700;

}


.terms-intro-card h2 span {

    color: #7146e8;

}


.terms-intro-card p {

    margin: 0;

    color: #737d88;

    font-size: 14px;

}


/* =========================================================
   SECTION
========================================================= */

.terms-section {

    display: grid;

    grid-template-columns: 55px 1fr;

    gap: 20px;

    margin-bottom: 25px;

    padding: 32px;

    border: 1px solid #e1e4e9;

    border-radius: 18px;

    background: #fff;

    box-shadow:
        0 10px 30px rgba(35,40,55,.035);

    scroll-margin-top: 30px;

}


.terms-section-number {

    width: 45px;

    height: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 13px;

    background: #f0ebff;

    color: #7146e8;

    font-size: 12px;

    font-weight: 900;

}


.terms-section-body h2 {

    margin: 3px 0 18px;

    color: #242830;

    font-size: 27px;

    line-height: 1.25;

    font-weight: 700;

}


.terms-section-body p {

    margin-bottom: 15px;

    color: #69737e;

    font-size: 15px;

    line-height: 1.8;

}


.terms-section-body p:last-child {

    margin-bottom: 0;

}


/* =========================================================
   LIST
========================================================= */

.terms-list {

    margin: 20px 0 0;

    padding: 0;

    list-style: none;

}


.terms-list li {

    display: flex;

    align-items: flex-start;

    gap: 11px;

    margin-bottom: 13px;

    color: #69737e;

    font-size: 14px;

    line-height: 1.7;

}


.terms-list li i {

    flex: 0 0 14px;

    margin-top: 6px;

    color: #7146e8;

    font-size: 10px;

}


/* =========================================================
   HIGHLIGHT
========================================================= */

.terms-highlight {

    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-top: 22px;

    padding: 18px;

    border-left: 4px solid #7146e8;

    border-radius: 10px;

    background: #f7f4ff;

}


.terms-highlight i {

    color: #7146e8;

    font-size: 19px;

}


.terms-highlight p {

    margin: 0;

}


/* =========================================================
   INFORMATION GRID
========================================================= */

.terms-info-grid {

    display: grid;

    grid-template-columns:
        repeat(2,1fr);

    gap: 15px;

    margin-top: 24px;

}


.terms-info-grid > div {

    padding: 22px;

    border: 1px solid #e5e7eb;

    border-radius: 14px;

    background: #fbfbfc;

    transition: all .3s ease;

}


.terms-info-grid > div:hover {

    transform: translateY(-5px);

    border-color: #dcd4ef;

    box-shadow:
        0 15px 30px rgba(40,45,65,.07);

}


.terms-info-grid i {

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 13px;

    border-radius: 11px;

    background: #f0ebff;

    color: #7146e8;

}


.terms-info-grid h3 {

    margin-bottom: 7px;

    color: #30353c;

    font-size: 16px;

    font-weight: 700;

}


.terms-info-grid p {

    margin: 0;

    font-size: 12px;

    line-height: 1.65;

}


/* =========================================================
   RESPONSIBILITIES
========================================================= */

.terms-responsibility-list {

    display: grid;

    gap: 13px;

    margin-top: 24px;

}


.terms-responsibility-list > div {

    display: flex;

    align-items: flex-start;

    gap: 15px;

    padding: 18px;

    border: 1px solid #e5e7eb;

    border-radius: 13px;

    background: #fbfbfc;

    transition: all .3s ease;

}


.terms-responsibility-list > div:hover {

    transform: translateX(5px);

    background: #faf8ff;

    border-color: #ddd5f0;

}


.terms-responsibility-icon {

    width: 43px;

    height: 43px;

    flex: 0 0 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 11px;

    background: #f0ebff;

    color: #7146e8;

}


.terms-responsibility-list h3 {

    margin-bottom: 5px;

    color: #30353d;

    font-size: 15px;

    font-weight: 700;

}


.terms-responsibility-list p {

    margin: 0;

    font-size: 13px;

    line-height: 1.6;

}


/* =========================================================
   INTELLECTUAL PROPERTY
========================================================= */

.terms-ip-card {

    display: flex;

    align-items: center;

    gap: 15px;

    margin-top: 22px;

    padding: 20px;

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            #f5f1ff,
            #faf9ff
        );

}


.terms-ip-icon {

    width: 50px;

    height: 50px;

    flex: 0 0 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 13px;

    background: #7146e8;

    color: #fff;

    font-size: 20px;

}


.terms-ip-card strong {

    display: block;

    color: #30353d;

    font-size: 14px;

}


.terms-ip-card span {

    display: block;

    margin-top: 4px;

    color: #747e89;

    font-size: 12px;

}


/* =========================================================
   PRIVACY LINK
========================================================= */

.terms-policy-link {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    margin-top: 10px;

    padding: 11px 17px;

    border-radius: 8px;

    background: #f0ebff;

    color: #7146e8;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition: all .3s ease;

}


.terms-policy-link:hover {

    color: #fff;

    background: #7146e8;

    transform: translateY(-2px);

}


/* =========================================================
   WARNING
========================================================= */

.terms-warning {

    display: flex;

    align-items: flex-start;

    gap: 15px;

    margin-top: 23px;

    padding: 20px;

    border-radius: 13px;

    background: #fff8ed;

}


.terms-warning > i {

    margin-top: 3px;

    color: #d99124;

    font-size: 20px;

}


.terms-warning strong {

    display: block;

    margin-bottom: 6px;

    color: #59461e;

    font-size: 14px;

}


.terms-warning p {

    margin: 0;

    color: #756544;

    font-size: 13px;

}


/* =========================================================
   UPDATE CARD
========================================================= */

.terms-update-card {

    display: flex;

    align-items: center;

    gap: 14px;

    margin-top: 23px;

    padding: 18px;

    border-radius: 13px;

    background: #f7f4ff;

}


.terms-update-card > i {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 11px;

    background: #7146e8;

    color: #fff;

}


.terms-update-card strong {

    display: block;

    color: #30353d;

    font-size: 14px;

}


.terms-update-card span {

    display: block;

    margin-top: 3px;

    color: #78818b;

    font-size: 12px;

}


/* =========================================================
   CONTACT
========================================================= */

.terms-contact-card {

    display: flex;

    align-items: flex-start;

    gap: 18px;

    margin-top: 25px;

    padding: 25px;

    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            #f4efff,
            #faf9ff
        );

}


.terms-contact-icon {

    width: 60px;

    height: 60px;

    flex: 0 0 60px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 16px;

    background: #7146e8;

    color: #fff;

    font-size: 22px;

}


.terms-contact-card span {

    color: #7146e8;

    font-size: 9px;

    font-weight: 900;

    letter-spacing: 1.5px;

}


.terms-contact-card h3 {

    margin: 5px 0 6px;

    color: #30353d;

    font-size: 20px;

    font-weight: 700;

}


.terms-contact-card p {

    margin-bottom: 12px;

    font-size: 13px;

}


.terms-contact-card a {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #7146e8;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

}


.terms-final-note {

    display: flex;

    align-items: flex-start;

    gap: 11px;

    margin-top: 22px;

    padding: 17px;

    border-radius: 11px;

    background: #f5f6f8;

}


.terms-final-note i {

    margin-top: 3px;

    color: #7146e8;

}


.terms-final-note p {

    margin: 0;

    color: #6d7680;

    font-size: 12px;

    line-height: 1.6;

}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

    .terms-sidebar {

        position: relative;

        top: auto;

    }

    .terms-sidebar-list {

        display: grid;

        grid-template-columns:
            repeat(2,1fr);

    }

}


@media (max-width: 767.98px) {

    .terms-section {

        grid-template-columns: 1fr;

        gap: 15px;

        padding: 24px 20px;

    }

    .terms-section-number {

        width: 40px;

        height: 40px;

    }

    .terms-section-body h2 {

        font-size: 24px;

    }

    .terms-section-body p {

        font-size: 14px;

    }

    .terms-intro-card {

        align-items: flex-start;

        padding: 23px;

    }

    .terms-intro-card h2 {

        font-size: 24px;

    }

    .terms-info-grid {

        grid-template-columns: 1fr;

    }

}


@media (max-width: 575.98px) {

    .terms-sidebar-list {

        grid-template-columns: 1fr;

    }

    .terms-intro-card {

        flex-direction: column;

    }

    .terms-intro-icon {

        width: 58px;

        height: 58px;

        flex-basis: 58px;

    }

    .terms-contact-card {

        flex-direction: column;

    }

}