/* =========================================================
   JOBMINT TERMS & CONDITIONS
========================================================= */


/* =========================================================
   LEGAL HERO
========================================================= */

.legal-hero{
    position:relative;
    overflow:hidden;
    padding:145px 0 85px;
    background:linear-gradient(135deg,#f5f9ff 0%,#edf4ff 100%);
    border-bottom:1px solid #e8eef7;
}

.legal-hero::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    border-radius:50%;
    border:1px solid rgba(37,99,235,.08);
    right:-180px;
    top:-220px;
}

.legal-hero::after{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    border-radius:50%;
    background:rgba(37,99,235,.04);
    left:-150px;
    bottom:-180px;
}

.legal-hero .container{
    position:relative;
    z-index:2;
}

.legal-hero-content{
    max-width:850px;
}

.legal-hero h1{
    margin:20px 0 15px;
    font-size:54px;
    line-height:1.15;
    font-weight:800;
    color:#172033;
}

.legal-hero-content > p{
    max-width:700px;
    margin:0;
    color:#697588;
    font-size:17px;
    line-height:1.8;
}

.legal-updated{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:25px;
    padding:10px 16px;
    border-radius:30px;
    background:#fff;
    border:1px solid #e3eaf4;
    color:#707b8d;
    font-size:13px;
}

.legal-updated i{
    color:#2563eb;
}

.legal-updated strong{
    color:#172033;
}


/* =========================================================
   LEGAL SECTION
========================================================= */

.legal-section{
    padding:90px 0 110px;
    background:#fff;
}


/* =========================================================
   SIDEBAR
========================================================= */

.legal-sidebar{
    position:sticky;
    top:100px;
    padding:25px;
    background:#f7f9fc;
    border:1px solid #e7edf5;
    border-radius:20px;
}

.legal-sidebar h6{
    margin:0 0 18px;
    padding-bottom:15px;
    border-bottom:1px solid #e1e7f0;
    font-size:15px;
    font-weight:750;
    color:#172033;
}

.legal-sidebar a{
    display:block;
    padding:9px 12px;
    margin:3px 0;
    border-radius:8px;
    color:#6d788a;
    text-decoration:none;
    font-size:13px;
    line-height:1.4;
    transition:.25s;
}

.legal-sidebar a:hover{
    color:#2563eb;
    background:#edf4ff;
    padding-left:16px;
}


/* =========================================================
   LEGAL CONTENT
========================================================= */

.legal-content{
    max-width:850px;
}

.legal-block{
    position:relative;
    padding:0 0 50px;
    margin-bottom:50px;
    border-bottom:1px solid #e9edf4;
    scroll-margin-top:100px;
}

.legal-block:last-child{
    border-bottom:0;
}

.legal-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:28px;
    margin-bottom:15px;
    border-radius:8px;
    background:#edf4ff;
    color:#2563eb;
    font-size:11px;
    font-weight:800;
    letter-spacing:.5px;
}

.legal-block h2{
    margin:0 0 18px;
    font-size:30px;
    line-height:1.3;
    font-weight:800;
    color:#172033;
}

.legal-block > p{
    margin:0 0 15px;
    color:#697588;
    font-size:15px;
    line-height:1.9;
}


/* =========================================================
   LEGAL LIST
========================================================= */

.legal-list{
    list-style:none;
    padding:5px 0 0;
    margin:20px 0 0;
}

.legal-list li{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:10px 0;
    color:#697588;
    font-size:14px;
    line-height:1.7;
}

.legal-list li i{
    flex:0 0 auto;
    margin-top:4px;
    color:#22a06b;
    font-size:15px;
}


/* =========================================================
   LEGAL NOTE
========================================================= */

.legal-note{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-top:25px;
    padding:20px;
    border-radius:15px;
    background:#f3f7ff;
    border:1px solid #e1ebff;
}

.legal-note > i{
    flex:0 0 auto;
    color:#2563eb;
    font-size:21px;
    margin-top:2px;
}

.legal-note strong{
    display:block;
    margin-bottom:5px;
    color:#172033;
    font-size:14px;
}

.legal-note p{
    margin:0;
    color:#6d788a;
    font-size:13px;
    line-height:1.7;
}

.legal-note.warning{
    background:#fffaf0;
    border-color:#f9e7b5;
}

.legal-note.warning > i{
    color:#f59e0b;
}


/* =========================================================
   LEGAL HIGHLIGHT
========================================================= */

.legal-highlight{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-top:25px;
    padding:22px;
    border-radius:16px;
    background:linear-gradient(135deg,#f4f8ff,#edf4ff);
    border:1px solid #dfeaff;
}

.legal-highlight > i{
    flex:0 0 auto;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#fff;
    color:#2563eb;
    font-size:18px;
}

.legal-highlight strong{
    display:block;
    color:#172033;
    font-size:14px;
    margin-bottom:5px;
}

.legal-highlight span{
    display:block;
    color:#6d788a;
    font-size:13px;
    line-height:1.7;
}


/* =========================================================
   RESPONSIBILITY CARDS
========================================================= */

.responsibility-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    margin-top:25px;
}

.responsibility-card{
    padding:22px;
    border:1px solid #e7edf5;
    border-radius:16px;
    background:#fff;
    transition:.3s;
}

.responsibility-card:hover{
    transform:translateY(-4px);
    border-color:#dce8ff;
    box-shadow:0 15px 35px rgba(30,73,140,.07);
}

.responsibility-card > i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:45px;
    height:45px;
    margin-bottom:15px;
    border-radius:12px;
    background:#edf4ff;
    color:#2563eb;
    font-size:18px;
}

.responsibility-card h5{
    margin:0 0 8px;
    color:#172033;
    font-size:15px;
    font-weight:750;
}

.responsibility-card p{
    margin:0;
    color:#737e90;
    font-size:13px;
    line-height:1.7;
}


/* =========================================================
   CONTACT DETAILS
========================================================= */

.legal-contact{
    padding-bottom:30px;
}

.contact-details{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    margin-top:25px;
}

.contact-detail-item{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:20px;
    background:#f8faff;
    border:1px solid #e7edf5;
    border-radius:16px;
}

.contact-detail-item:last-child{
    grid-column:1 / -1;
}

.contact-detail-icon{
    width:43px;
    height:43px;
    flex:0 0 43px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#edf4ff;
    color:#2563eb;
}

.contact-detail-item span{
    display:block;
    margin-bottom:4px;
    color:#8993a4;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.6px;
    font-weight:700;
}

.contact-detail-item a,
.contact-detail-item strong{
    display:block;
    color:#172033;
    text-decoration:none;
    font-size:13px;
    line-height:1.6;
}

.contact-detail-item a:hover{
    color:#2563eb;
}


/* =========================================================
   FINAL CTA
========================================================= */

.terms-final-cta{
    display:flex;
    align-items:center;
    gap:20px;
    padding:28px;
    margin-top:10px;
    border-radius:20px;
    background:linear-gradient(
        135deg,
        #f2f7ff,
        #edf4ff
    );
    border:1px solid #dfe9fa;
}

.terms-cta-icon{
    width:60px;
    height:60px;
    flex:0 0 60px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:#2563eb;
    color:#fff;
    font-size:25px;
}

.terms-final-cta h3{
    margin:0 0 5px;
    color:#172033;
    font-size:20px;
    font-weight:800;
}

.terms-final-cta p{
    margin:0;
    color:#707b8d;
    font-size:13px;
    line-height:1.7;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:991px){

    .legal-hero{
        padding:125px 0 70px;
    }

    .legal-hero h1{
        font-size:46px;
    }

    .legal-sidebar{
        position:relative;
        top:0;
    }

    .legal-sidebar a{
        display:inline-block;
        margin:3px 2px;
    }

    .legal-sidebar h6{
        margin-bottom:12px;
    }

    .legal-section{
        padding:70px 0 90px;
    }

}


@media(max-width:767px){

    .legal-hero{
        padding:105px 0 60px;
    }

    .legal-hero h1{
        font-size:36px;
    }

    .legal-hero-content > p{
        font-size:15px;
    }

    .legal-updated{
        flex-wrap:wrap;
    }

    .legal-section{
        padding:55px 0 70px;
    }

    .legal-block{
        padding-bottom:35px;
        margin-bottom:35px;
    }

    .legal-block h2{
        font-size:25px;
    }

    .legal-block > p{
        font-size:14px;
        line-height:1.8;
    }

    .responsibility-grid{
        grid-template-columns:1fr;
    }

    .contact-details{
        grid-template-columns:1fr;
    }

    .contact-detail-item:last-child{
        grid-column:auto;
    }

    .terms-final-cta{
        align-items:flex-start;
        padding:22px;
    }

}


@media(max-width:480px){

    .legal-hero h1{
        font-size:31px;
    }

    .legal-sidebar{
        padding:18px;
    }

    .legal-sidebar a{
        font-size:12px;
    }

    .legal-block h2{
        font-size:23px;
    }

    .legal-note,
    .legal-highlight{
        padding:17px;
    }

    .terms-final-cta{
        flex-direction:column;
    }

}

/* =========================================================
   TERMS - PART 2 FIX
========================================================= */

/* ---------- Common Part 2 Sections ---------- */

#responsibilities,
#third-party,
#disclaimer,
#liability,
#termination,
#changes,
#governing-law,
#contact{
    position:relative;
    width:100%;
    display:block;
    clear:both;
}


/* ---------- Responsibility Grid ---------- */

#responsibilities .responsibility-grid{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:25px;
}

#responsibilities .responsibility-card{
    width:100%;
    min-width:0;
    box-sizing:border-box;
    padding:22px;
    background:#fff;
    border:1px solid #e7edf5;
    border-radius:16px;
}

#responsibilities .responsibility-card h5{
    margin:0 0 8px;
    color:#172033;
    font-size:15px;
    line-height:1.4;
}

#responsibilities .responsibility-card p{
    margin:0;
    color:#737e90;
    font-size:13px;
    line-height:1.7;
}


/* ---------- Legal Notes ---------- */

#third-party .legal-note,
#disclaimer .legal-highlight,
#payments .legal-note{
    width:100%;
    box-sizing:border-box;
    display:flex;
    align-items:flex-start;
    gap:15px;
    clear:both;
}


/* ---------- Legal Highlight ---------- */

#disclaimer .disclaimer-box{
    margin-top:25px;
}

#disclaimer .disclaimer-box span{
    display:block;
    line-height:1.7;
}


/* ---------- Contact ---------- */

#contact .contact-details{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
    margin-top:25px;
}

#contact .contact-detail-item{
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:20px;
    background:#f8faff;
    border:1px solid #e7edf5;
    border-radius:16px;
}

#contact .contact-detail-item:last-child{
    grid-column:1 / -1;
}

#contact .contact-detail-item strong,
#contact .contact-detail-item a{
    overflow-wrap:anywhere;
    word-break:break-word;
}


/* ---------- Final CTA ---------- */

.terms-final-cta{
    width:100%;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    gap:20px;
    clear:both;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    #responsibilities .responsibility-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    #contact .contact-details{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    #responsibilities .responsibility-grid{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
    }

    #contact .contact-details{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
    }

    #contact .contact-detail-item:last-child{
        grid-column:auto;
    }

    .terms-final-cta{
        flex-direction:column;
        align-items:flex-start;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:480px){

    #responsibilities .responsibility-card{
        padding:18px;
    }

    #contact .contact-detail-item{
        padding:17px;
    }

    #third-party .legal-note,
    #disclaimer .legal-highlight,
    #payments .legal-note{
        padding:17px;
    }

}