/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.4.1785393685
Updated: 2026-07-30 06:41:25

*/

/* ==========================================================
   FORSETY LEGAL - SINGLE AGREEMENT
========================================================== */

.agreement-single{
    background:#f7f9fc;
    padding:50px 20px 80px;
}

.agreement-container{
    max-width:1200px;
    margin:0 auto;
}

/* BACK LINK */

.agreement-back{

    display:inline-flex;

    align-items:center;

    gap:8px;

    font-size:16px;

    font-weight:600;

    color:#143d74;
}

.agreement-back:hover{
    color:#2fa866;
}

/* HEADER */

.agreement-header{
    margin-bottom:50px;
}

.agreement-header .agreement-title{
    margin:0 0 20px;
    font-size:38px;
    font-weight:700;
    line-height:1.2;
    color:#143d74;
}

.agreement-summary{
    font-size:19px;
    color:#555;
    line-height:1.8;
    margin-bottom:30px;
}

/* BADGES */

.agreement-tags{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:30px;
}

.agreement-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 14px;
    border-radius:30px;
    font-size:14px;
    font-weight:600;
}

.agreement-practice{
    background:#e8f0ff;
    color:#143d74;
}

.agreement-type{
    background:#eaf8ef;
    color:#23824d;
}

.agreement-language{
    background:#f2f3f5;
    color:#555;
}

/* BUTTONS */

.agreement-actions{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
}

.agreement-button{
    display:inline-block;
    min-width:180px;
    text-align:center;
    padding:12px 24px;
    border-radius:8px;
    background:#143d74;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:.25s;
}

.agreement-button:hover{
    background:#0f2f58;
    color:#fff;
}

.agreement-button-secondary{
    background:#2fa866;
}

.agreement-button-secondary:hover{
    background:#23824d;
}
.agreement-header{
    border-bottom:1px solid #e8ebef;
    padding-bottom:40px;
}

/* CONTENT CARDS */

.agreement-info-card,
.agreement-content-card{

    background:#fff;

    border-radius:14px;

    padding:35px;

    margin-bottom:45px;

    border:1px solid #e7e7e7;

    box-shadow:0 12px 40px rgba(20,61,116,.08);
}

.agreement-info-card h2,
.agreement-content-card h2{

    margin-top:0;

    margin-bottom:25px;

    color:#143d74;

    font-size:30px;
}

/* TABLE */

.agreement-table{
    width:100%;
    border-collapse:collapse;
}

.agreement-table th,
.agreement-table td{
    padding:18px;
    border-bottom:1px solid #ececec;
    text-align:left;
}

.agreement-table th{
    width:220px;
    font-size:15px;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:#143d74;
    font-weight:700;
    background:#f9fbfd;
}

.agreement-table tr:last-child th,
.agreement-table tr:last-child td{
    border-bottom:none;
}

/* CONTENT */

.agreement-content{
    color:#444;
    line-height:1.9;
    font-size:17px;
}

.agreement-content p:last-child{
    margin-bottom:0;
}

/* MOBILE */

@media (max-width:768px){

    .agreement-single{
        padding:40px 20px;
    }

    .agreement-header .agreement-title{
        font-size:34px;
    }

    .agreement-actions{
        flex-direction:column;
    }

    .agreement-button{
        width:100%;
    }

    .agreement-table th,
    .agreement-table td{
        display:block;
        width:100%;
    }

    .agreement-table th{
        border-bottom:none;
    }

}
/* ==========================================================
   FORSETY LEGAL - AGREEMENT LIBRARY
========================================================== */

.agreement-archive{
    background:#f7f9fc;
    padding:80px 20px;
}

.agreement-container{
    max-width:1280px;
    margin:0 auto;
}

/* HEADER */

.agreement-archive-header{
    text-align:center;
    margin-bottom:60px;
}

.agreement-archive-header h1{
    margin:0 0 20px;
    color:#143d74;
    font-size:46px;
    line-height:1.2;
    font-weight:700;
}

.archive-intro{
    max-width:760px;
    margin:0 auto;
    color:#666;
    font-size:20px;
    line-height:1.8;
}

/* GRID */

.agreement-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(420px,1fr));

    gap:40px;
}

/* CARD */

.agreement-card{

    display:flex;
    flex-direction:column;

    background:#fff;

    padding:35px;

    border:1px solid #e7e7e7;

    border-radius:14px;

    box-shadow:0 8px 24px rgba(0,0,0,.06);

    transition:.35s;
}

.agreement-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 42px rgba(0,0,0,.12);
}

/* TITLE */

.agreement-title{

    margin:0 0 18px;
}

.agreement-title a{

    color:#143d74;

    text-decoration:none;

    font-size:32px;

    line-height:1.2;

    font-weight:700;
}

.agreement-title a:hover{

    color:#2fa866;
}

/* DESCRIPTION */

.agreement-excerpt{

    color:#555;

    line-height:1.8;

    font-size:16px;

    margin-bottom:25px;
}

/* BADGES */

.agreement-tags{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-bottom:30px;
}

.agreement-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 16px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    white-space:nowrap;
}

.agreement-practice{

    background:#e8f0ff;

    color:#143d74;
}

.agreement-type{

    background:#eaf8ef;

    color:#23824d;
}

.agreement-language{

    background:#f2f3f5;

    color:#555;
}

/* BUTTONS */

.agreement-card-buttons{

    margin-top:auto;

    display:flex;

    flex-wrap:wrap;

    gap:14px;
}

.agreement-button{

    display:inline-block;

    padding:13px 22px;

    background:#143d74;

    color:#fff;

    text-decoration:none;

    border-radius:8px;

    font-weight:600;

    transition:.25s;
}

.agreement-button:hover{

    background:#0f2f58;

    color:#fff;
}

.agreement-button-secondary{

    background:#2fa866;
}

.agreement-button-secondary:hover{

    background:#23824d;
}

/* READ MORE */

.agreement-read-more{

    display:inline-block;

    margin-top:25px;

    color:#143d74;

    font-weight:700;

    text-decoration:none;
}

.agreement-read-more:hover{

    color:#2fa866;
}

/* PAGINATION */

.agreement-pagination{

    margin-top:60px;

    text-align:center;
}

/* MOBILE */

@media (max-width:768px){

    .agreement-archive{

        padding:50px 20px;
    }

    .agreement-grid{

        grid-template-columns:1fr;
    }

    .agreement-card{

        padding:25px;
    }

    .agreement-title a{

        font-size:26px;
    }

    .archive-intro{

        font-size:18px;
    }

}
/* SEARCH */

.agreement-search{

    margin:45px auto 0;

    max-width:700px;
}

#agreement-search{

    width:100%;

    padding:18px 22px;

    font-size:18px;

    border:1px solid #d8dce2;

    border-radius:10px;

    outline:none;

    transition:.25s;

    background:#fff;
}

#agreement-search:focus{

    border-color:#143d74;

    box-shadow:0 0 0 4px rgba(20,61,116,.08);
}
.agreement-filters{
    margin:25px 0 40px;
    display:flex;
    justify-content:center;
}

#practice-filter{
    width:320px;
    padding:14px 18px;
    border:1px solid #d8dde6;
    border-radius:10px;
    font-size:16px;
    background:#fff;
}
#type-filter{

    width:320px;

    padding:14px 18px;

    border:1px solid #d8dde6;

    border-radius:10px;

    font-size:16px;

    background:#fff;

    margin-left:15px;

}
#language-filter{

    width:320px;

    padding:14px 18px;

    border:1px solid #d8dde6;

    border-radius:10px;

    font-size:16px;

    background:#fff;

    margin-left:15px;

}
.agreement-no-results{

    text-align:center;

    background:#fff;

    padding:60px 30px;

    border-radius:14px;

    box-shadow:0 8px 24px rgba(0,0,0,.06);

    margin:40px auto;

    max-width:700px;

}

.agreement-no-results h3{

    color:#143d74;

    font-size:32px;

    margin-bottom:15px;

}

.agreement-no-results p{

    color:#666;

    font-size:18px;

    margin:0;

}
/* RESET FILTERS BUTTON */

.agreement-reset-button{

    margin-left:15px;

    padding:14px 28px;

    background:#143d74;

    color:#fff;

    border:none;

    border-radius:10px;

    cursor:pointer;

    font-size:16px;

    font-weight:600;

    transition:.25s;

}

.agreement-reset-button:hover{

    background:#0f2f58;

}
#sort-filter{

    width:220px;

    padding:14px 18px;

    border:1px solid #d8dde6;

    border-radius:10px;

    font-size:16px;

    background:#fff;

    margin-left:15px;

}
.agreement-filters{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    align-items:center;
}

#practice-filter,
#type-filter,
#language-filter,
#sort-filter{
    width:220px;
    min-width:220px;
}

.agreement-reset-button{
    margin-left:0;
    white-space:nowrap;
}
/* ==========================================================
   AGREEMENT PAGINATION
========================================================== */

.agreement-pagination{

    margin:60px 0 60px;

    display:flex;

    justify-content:center;

}

.agreement-pagination .nav-links{

    display:flex;

    align-items:center;

    gap:12px;

}

.agreement-pagination a,
.agreement-pagination span{

    display:flex;

    align-items:center;

    justify-content:center;

    min-width:46px;

    height:46px;

    padding:0 16px;

    border-radius:10px;

    text-decoration:none;

    font-size:16px;

    font-weight:600;

    transition:.25s;

}

.agreement-pagination a{

    background:#ffffff;

    color:#143d74;

    border:1px solid #d8dde6;

}

.agreement-pagination a:hover{

    background:#143d74;

    color:#ffffff;

    border-color:#143d74;

    transform:translateY(-2px);

}

.agreement-pagination .current{

    background:#143d74;

    color:#ffffff;

    border:1px solid #143d74;

}

.agreement-pagination .dots{

    border:none;

    background:transparent;

    color:#777;

    min-width:auto;

    padding:0;

}

@media (max-width:768px){

    .agreement-pagination{

        margin:40px 0 10px;

    }

    .agreement-pagination a,
    .agreement-pagination span{

        min-width:40px;

        height:40px;

        font-size:15px;

    }

}