/*
Template Name: Architex
Template URI: 
Description: Architecture & Interior Design HTML Template 
Author: RH Tech Santa Catarina
Author URI: 
Version: 1.0
*/
/*--
    - Google Font Import 
-----------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap");
/*--
    - Common CSS 
-----------------------------------------*/
html,
body {
    height: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    scroll-behavior: smooth;
}

/* Editorial cards on the homepage. */
.insights-section {
    position: relative;
    overflow: hidden;
    padding: 118px 0 68px;
    background:
        radial-gradient(circle at 7% 10%, rgba(191, 216, 192, .3), transparent 24%),
        linear-gradient(180deg, #f8fbf8 0%, #ffffff 70%);
}
.insights-section::before {
    position: absolute;
    top: 62px;
    right: -84px;
    width: 278px;
    height: 278px;
    border: 1px solid rgba(44, 92, 60, .11);
    border-radius: 50%;
    box-shadow: 0 0 0 38px rgba(44, 92, 60, .035), 0 0 0 76px rgba(44, 92, 60, .02);
    content: '';
}
.insights-section .container {
    position: relative;
    z-index: 1;
}
.insights-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 45px;
    margin-bottom: 48px;
}
.insights-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
    color: #50815c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}
.insights-kicker i {
    font-size: 18px;
}
.insights-heading h2 {
    max-width: 635px;
    margin: 0;
    color: #183b27;
    font-size: clamp(34px, 3.4vw, 54px);
    font-weight: 500;
    line-height: 1.08;
}
.insights-heading h2 strong {
    color: #4f885d;
    font-weight: 750;
}
.insights-heading > p {
    max-width: 330px;
    margin: 0 0 3px;
    color: #687b6e;
    font-size: 16px;
    line-height: 1.65;
}
.insight-card {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #dfebe1;
    border-radius: 21px;
    background: #fff;
    box-shadow: 0 14px 28px rgba(29, 69, 43, .07);
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.insight-card-overlay-link {
    position: absolute;
    z-index: 3;
    inset: 0;
    border-radius: inherit;
}
.insight-card:hover {
    transform: translateY(-9px);
    border-color: rgba(71, 126, 83, .45);
    box-shadow: 0 24px 40px rgba(29, 69, 43, .15);
}
.insight-card-image {
    position: relative;
    height: 215px;
    overflow: hidden;
    background: #dce8de;
}
.insight-card-image::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(145deg, rgba(17, 52, 31, .04), rgba(17, 52, 31, .29));
    content: '';
    pointer-events: none;
}
.insight-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s ease;
}
.insight-card:hover .insight-card-image img {
    transform: scale(1.065);
}
.insights-section.insights-motion-ready .insight-card {
    opacity: 0;
    transition: opacity .62s ease var(--insight-delay), transform .72s cubic-bezier(.2, .8, .2, 1) var(--insight-delay), box-shadow .35s ease, border-color .35s ease;
}
.insights-section.insights-motion-ready .insight-card.from-right { transform: translate3d(74px, 0, 0) rotate(1.2deg); }
.insights-section.insights-motion-ready .insight-card.from-left { transform: translate3d(-60px, 0, 0) rotate(-1deg); }
.insights-section.insights-motion-ready .insight-card.from-bottom { transform: translate3d(0, 58px, 0); }
.insights-section.insights-motion-ready.is-visible .insight-card {
    opacity: 1;
    transform: translate3d(0, 0, 0) rotate(0);
}

/* News is managed in the administration portal and presented as a practical HR digest. */
.news-section {
    padding: 78px 0 96px;
    background:
        radial-gradient(circle at 8% 8%, rgba(39, 109, 58, 0.34) 0%, rgba(39, 109, 58, 0) 30%),
        linear-gradient(135deg, #b8d8be 0%, #d0e5d3 62%, #afd2b7 100%);
    border-top: 1px solid #7eb38b;
    border-bottom: 1px solid #7eb38b;
}
.news-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 48px;
    margin-bottom: 45px;
}
.news-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #dd7430;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.news-heading h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #193b29;
    font-family: "Poppins", sans-serif;
    font-size: clamp(35px, 3.6vw, 55px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.055em;
}
.news-heading h2 strong { color: #d97531; font-weight: 700; }
.news-heading > p { max-width: 370px; margin: 0 0 5px; color: #6a7c70; font-size: 16px; line-height: 1.65; }
.news-grid > div { margin-bottom: 26px; }
.news-card {
    display: flex;
    min-height: 292px;
    height: 100%;
    flex-direction: column;
    padding: 28px;
    overflow: visible;
    border: 1px solid #dde9df;
    border-radius: 18px;
    background: linear-gradient(135deg, #fff 0%, #f8fcf8 100%);
    box-shadow: 0 13px 28px rgba(28, 74, 42, .055);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.news-card:hover { border-color: #d98a55; box-shadow: 0 21px 35px rgba(28, 74, 42, .11); transform: translateY(-5px); }
.news-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 25px; }
.news-card-top span {
    display: inline-block;
    max-width: calc(100% - 53px);
    padding: 7px 10px;
    overflow: visible;
    border-radius: 999px;
    background: #e9f4ea;
    color: #397449;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    line-height: 1.4;
    text-transform: uppercase;
    white-space: normal;
}
.news-card-top i { display: inline-flex; align-items: center; justify-content: center; width: 41px; height: 41px; flex: 0 0 41px; border-radius: 12px; background: #fff1e7; color: #df7c37; font-size: 21px; }
.news-card h3 { margin: 0 0 12px; overflow: visible; color: #24402f; font-family: "Poppins", sans-serif; font-size: 22px; font-weight: 650; line-height: 1.25; letter-spacing: -.025em; }
.news-card p { margin: 0; overflow: visible; color: #65776b; font-size: 14px; line-height: 1.62; }
.news-card-open { display: inline-flex; align-items: center; align-self: flex-start; gap: 7px; margin-top: auto; padding: 21px 0 0; border: 0; background: transparent; color: #c96525; cursor: pointer; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 800; line-height: 1.3; text-align: left; }
.news-card-open:hover { color: #173d28; }
.news-card-open:focus-visible { border-radius: 4px; outline: 3px solid rgba(216, 117, 49, .36); outline-offset: 4px; }
.news-modal { box-sizing: border-box; width: min(900px, calc(100% - 48px)); max-width: 900px; height: min(790px, calc(100dvh - 48px)); max-height: calc(100dvh - 48px); margin: auto; padding: 0; border: 0; border-radius: 24px; background: #fff; box-shadow: 0 32px 80px rgba(12, 42, 25, .34); color: #23402f; overflow: hidden; }
.news-modal::backdrop { background: rgba(14, 42, 27, .63); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.news-modal-shell { position: relative; box-sizing: border-box; height: 100%; max-height: none; overflow-y: auto; padding: 48px; scrollbar-color: #4d8158 rgba(218, 235, 220, .72); scrollbar-gutter: stable; scrollbar-width: thin; background: radial-gradient(circle at 98% 0%, rgba(204, 230, 209, .9) 0%, rgba(204, 230, 209, 0) 34%), linear-gradient(135deg, #fff 0%, #f5faf5 100%); }
.news-modal-shell::-webkit-scrollbar { width: 10px; }
.news-modal-shell::-webkit-scrollbar-track { margin: 18px 0; border-radius: 999px; background: rgba(218, 235, 220, .72); }
.news-modal-shell::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background: #4d8158; background-clip: padding-box; }
.news-modal-shell::-webkit-scrollbar-thumb:hover { background: #255d3b; }
.news-modal-close { position: absolute; top: 22px; right: 22px; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0; border: 1px solid #d9e6da; border-radius: 12px; background: rgba(255, 255, 255, .9); color: #365c43; cursor: pointer; font-size: 23px; transition: background .2s ease, color .2s ease, transform .2s ease; }
.news-modal-close:hover { background: #285f3d; color: #fff; transform: rotate(90deg); }
.news-modal-close:focus-visible, .news-modal-source:focus-visible { outline: 3px solid rgba(216, 117, 49, .38); outline-offset: 3px; }
.news-modal-heading { display: flex; align-items: center; gap: 15px; padding-right: 50px; }
.news-modal-icon { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; flex: 0 0 54px; border-radius: 16px; background: linear-gradient(135deg, #fceddf, #fff3e8); color: #d67331; font-size: 28px; }
.news-modal-kicker { display: block; color: #397449; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.news-modal-heading p { margin: 4px 0 0; color: #758579; font-size: 13px; line-height: 1.45; }
.news-modal h2 { max-width: 560px; margin: 29px 0 19px; color: #1f3e2b; font-family: "Poppins", sans-serif; font-size: clamp(28px, 4vw, 39px); font-weight: 650; line-height: 1.1; letter-spacing: -.045em; }
.news-modal-copy { color: #5d7163; font-size: 16px; line-height: 1.75; }
.news-modal-copy p { margin: 0 0 15px; }
.news-modal-copy p:last-child { margin-bottom: 0; }
.news-modal-copy h3 { margin: 29px 0 10px; color: #285239; font-family: "Poppins", sans-serif; font-size: 20px; font-weight: 700; line-height: 1.25; letter-spacing: -.025em; }
.news-modal-copy h3:first-child { margin-top: 0; }
.news-modal-copy > section:first-child h3 { margin-top: 0; }
.news-modal-copy ul { display: grid; gap: 8px; margin: 0 0 18px; padding: 0; list-style: none; }
.news-modal-copy li { position: relative; padding-left: 22px; }
.news-modal-copy li::before { position: absolute; top: .73em; left: 1px; width: 8px; height: 8px; border: 2px solid #d77a37; border-radius: 50%; content: ""; transform: translateY(-50%); }
.news-modal-source { display: inline-flex; align-items: center; gap: 9px; margin-top: 28px; padding: 13px 17px; border-radius: 10px; background: #255d3b; box-shadow: 0 10px 20px rgba(28, 77, 46, .16); color: #fff; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 800; transition: background .2s ease, box-shadow .2s ease, transform .2s ease; }
.news-modal-source:hover { background: #19462c; box-shadow: 0 14px 25px rgba(28, 77, 46, .24); color: #fff; transform: translateY(-2px); }
body.news-modal-open,
body.job-modal-open { overflow: hidden; }
.job-modal .news-modal-icon { background: linear-gradient(135deg, #e6f2e9, #f4faf6); color: #2d6a46; }
.job-modal-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; padding: 0; list-style: none; }
.job-modal-meta:empty { display: none; }
.job-modal-meta li { padding: 6px 12px; border-radius: 999px; background: #e8f2ea; color: #2d6244; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 600; }
.job-modal .news-modal-copy li::before { border-color: #2d6a46; }
.newsletter-box {
    display: grid;
    grid-template-columns: minmax(250px, .75fr) minmax(0, 1.7fr);
    gap: 54px;
    align-items: center;
    margin-top: 42px;
    padding: 38px 42px;
    border-radius: 20px;
    background: linear-gradient(118deg, #173e2a 0%, #286143 62%, #3c7652 100%);
    box-shadow: 0 20px 40px rgba(22, 65, 40, .16);
}
.newsletter-copy > span { color: #f4a35e; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.newsletter-copy h3 { max-width: 280px; margin: 12px 0 0; color: #fff; font-family: "Poppins", sans-serif; font-size: 30px; font-weight: 600; line-height: 1.15; letter-spacing: -.04em; }
.newsletter-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px; }
.newsletter-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.newsletter-form input[type="text"], .newsletter-form input[type="email"] { min-width: 0; height: 52px; padding: 0 16px; border: 1px solid rgba(255,255,255,.33); border-radius: 10px; outline: 0; background: rgba(255,255,255,.97); color: #274734; font-size: 14px; transition: box-shadow .2s ease, border-color .2s ease; }
.newsletter-form input[type="text"]:focus, .newsletter-form input[type="email"]:focus { border-color: #eea461; box-shadow: 0 0 0 3px rgba(239, 151, 70, .22); }
.newsletter-form label { grid-column: 1 / -1; display: flex; align-items: center; gap: 9px; margin: 2px 0 0; color: rgba(244, 253, 246, .9); font-size: 12px; }
.newsletter-form label input { width: 15px; height: 15px; accent-color: #ef9746; }
.newsletter-form button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-width: 206px; height: 54px; padding: 0 24px; border: 1px solid rgba(255, 218, 178, .58); border-radius: 11px; background: linear-gradient(135deg, #f3a04d, #df6f2d); box-shadow: 0 12px 24px rgba(63, 32, 14, .25); color: #fff; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 800; transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.newsletter-form button:hover { filter: brightness(1.06); transform: translateY(-2px); box-shadow: 0 16px 28px rgba(63, 32, 14, .32); }
.newsletter-form button:disabled { cursor: wait; opacity: .72; transform: none; }
.newsletter-form small { grid-column: 1 / -1; min-height: 18px; color: #f5efe3; font-size: 12px; }
.newsletter-form small.is-error { color: #ffd0bd; }
.newsletter-form small.is-success { color: #d4f3c9; }
@media (max-width: 991px) { .news-heading { display: block; } .news-heading > p { margin-top: 20px; } .newsletter-box { grid-template-columns: 1fr; gap: 25px; } }
@media (max-width: 575px) { .news-section { padding: 75px 0 62px; } .news-card { min-height: 0; } .newsletter-box { padding: 30px 22px; } .newsletter-form, .newsletter-fields { grid-template-columns: 1fr; } .newsletter-form label, .newsletter-form small { grid-column: auto; } .newsletter-form button { width: 100%; } }
@media (max-width: 575px) { .news-modal { width: calc(100% - 24px); height: calc(100dvh - 24px); max-height: calc(100dvh - 24px); border-radius: 18px; } .news-modal-shell { padding: 74px 25px 29px; } .news-modal-close { top: 18px; right: 18px; } .news-modal-heading { gap: 12px; } .news-modal-icon { width: 47px; height: 47px; flex-basis: 47px; border-radius: 13px; font-size: 24px; } .news-modal h2 { margin-top: 24px; font-size: 29px; } .news-modal-copy { font-size: 15px; line-height: 1.68; } .news-modal-copy h3 { margin-top: 25px; font-size: 19px; } }
.insight-card-badge {
    position: absolute;
    z-index: 1;
    top: 15px;
    right: 15px;
    padding: 7px 11px;
    border-radius: 999px;
    background: linear-gradient(135deg, #f29a45, #df702d);
    box-shadow: 0 7px 17px rgba(185, 83, 23, .3);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .25px;
    text-transform: uppercase;
}
.insight-card:not(.insight-card-featured) .insight-card-badge {
    background: rgba(30, 84, 48, .92);
}
.insight-card-content {
    display: flex;
    flex: 1;
    min-height: 275px;
    flex-direction: column;
    padding: 25px 24px 23px;
}
.insights-section .row > [class*="col-"] {
    display: flex;
}
.insight-card-category {
    margin-bottom: 8px;
    color: #bc493e;
    font-size: 12px;
    font-weight: 700;
}
.insight-card:not(.insight-card-featured) .insight-card-category {
    color: #4b875a;
}
.insight-card h3 {
    margin: 0 0 12px;
    color: #273a2d;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
}
.insight-card p {
    margin: 0;
    color: #65766a;
    font-size: 14px;
    line-height: 1.55;
}
.insight-card-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    padding-top: 20px;
    color: #3d794b;
    font-size: 13px;
    font-weight: 800;
}
.insight-card-link i {
    font-size: 17px;
    transition: transform .25s ease;
}
.insight-card:hover .insight-card-link i {
    transform: translateX(5px);
}
@media (max-width: 991px) {
    .insights-section {
        padding: 84px 0 55px;
    }
    .insights-heading {
        display: block;
        margin-bottom: 36px;
    }
    .insights-heading > p {
        margin-top: 18px;
    }
    .insight-card {
        margin-bottom: 26px;
    }
}
@media (max-width: 575px) {
    .insights-section {
        padding-top: 68px;
    }
    .insights-heading h2 {
        font-size: 34px;
    }
    .insight-card-image {
        height: 205px;
    }
}

@media (max-width: 991px) {
    .recruitment-pcd {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 18px;
    }
    .recruitment-pcd-image img {
        min-height: 300px;
    }
    .recruitment-pcd-content {
        padding: 6px 8px 14px;
    }
}

body {
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    position: relative;
    z-index: 1;
    background: #FFF;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    position: relative;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    margin: 0;
}

h1 {
    font-size: 55px;
    line-height: 65px;
    color: #171717;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    h1 {
        font-size: 50px;
        line-height: 60px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    h1 {
        font-size: 45px;
        line-height: 55px;
    }
}
@media (max-width: 767px) {
    h1 {
        font-size: 40px;
        line-height: 50px;
    }
}

h2 {
    font-size: 50px;
}
@media (max-width: 767px) {
    h2 {
        font-size: 40px;
    }
}

h3 {
    font-size: 35px;
}
@media (max-width: 767px) {
    h3 {
        font-size: 24px;
    }
}

a {
    text-decoration: none;
    cursor: pointer;
    font-size: 12px;
    font-weight: 400;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    color: #171717;
}
a:hover {
    color: #171717;
}

p {
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    position: relative;
    color: #878787;
}

button,
input,
textarea,
a:hover,
a:focus,
a:visited {
    text-decoration: none;
    outline: none;
    outline-width: 0 !important;
}

input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
    color: transparent;
}

img {
    display: inline-block;
    max-width: 100%;
}

i,
span,
a {
    display: inline-block;
}

ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

li {
    display: inline-block;
}

table,
th,
tr,
td {
    border: 1px solid #ddd;
}

th,
tr,
td {
    padding: 10px;
}

hr {
    border-top: 1px solid rgba(135, 135, 135, 0.25);
}

.fix {
    overflow: hidden;
}

.auto-container {
    position: static;
    max-width: 1200px;
    padding: 0 80px;
    margin: 0 auto;
}

.border-top {
    border-top: 1px solid rgba(135, 135, 135, 0.25);
}

.border-bottom {
    border-bottom: 1px solid rgba(135, 135, 135, 0.25);
}

/*Section Padding CSS*/
.section-padding {
    padding: 120px 0;
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-padding {
        padding: 100px 10px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .section-padding {
        padding: 60px 30px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .section-padding {
        padding: 60px 10px;
    }
}
@media (max-width: 575px) {
    .section-padding {
        padding: 30px 10px;
    }
}
/*Margin & Padding */
.pt-0 {
    padding-top: 0;
}

.pb-0 {
    padding-bottom: 0;
}

.pt-20 {
    padding-top: 20px;
}

.pb-20 {
    padding-bottom: 20px;
}

.pt-30 {
    padding-top: 30px;
}

.pb-30 {
    padding-bottom: 30px;
}

.pt-40 {
    padding-top: 40px;
}

.pb-40 {
    padding-bottom: 40px;
}

.pt-50 {
    padding-top: 50px;
}

.pb-50 {
    padding-bottom: 50px;
}

.pt-60 {
    padding-top: 60px;
}

.pb-60 {
    padding-bottom: 60px;
}

.pt-70 {
    padding-top: 70px;
}

.pb-70 {
    padding-bottom: 70px;
}

.pt-80 {
    padding-top: 80px;
}

.pb-80 {
    padding-bottom: 80px;
}

.pt-90 {
    padding-top: 90px;
}

.pb-90 {
    padding-bottom: 90px;
}

.pt-100 {
    padding-top: 100px;
}

.pb-100 {
    padding-bottom: 100px;
}

.pt-120 {
    padding-top: 120px;
}

.pb-120 {
    padding-bottom: 120px;
}

.pt-150 {
    padding-top: 150px;
}

.pb-150 {
    padding-bottom: 150px;
}

.pt-180 {
    padding-top: 180px;
}

.pb-180 {
    padding-bottom: 180px;
}

.mt-10 {
    margin-top: 10px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mt-30 {
    margin-top: 30px;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mt-40 {
    margin-top: 40px;
}

.mb-30 {
    margin-bottom: 40px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-50 {
    margin-bottom: 50px;
}

.mt-60 {
    margin-top: 60px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mt-70 {
    margin-top: 70px;
}

.mb-70 {
    margin-bottom: 70px;
}

.mt-80 {
    margin-top: 80px;
}

.mb-80 {
    margin-bottom: 80px;
}

.mt-90 {
    margin-top: 90px;
}

.mb-90 {
    margin-bottom: 90px;
}

.mt-100 {
    margin-top: 100px;
}

.mb-100 {
    margin-bottom: 100px;
}

.mt-120 {
    margin-top: 120px;
}

.mb-120 {
    margin-bottom: 120px;
}

.mt-150 {
    margin-top: 150px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-20 {
    margin-left: 20px;
}

.ml-30 {
    margin-left: 30px;
}

.ml-40 {
    margin-left: 40px;
}

.ml-50 {
    margin-left: 50px;
}

.mr-10 {
    margin-right: 10px;
}

.mr-20 {
    margin-right: 20px;
}

.mr-30 {
    margin-right: 30px;
}

.mr-40 {
    margin-right: 40px;
}

.mr-50 {
    margin-right: 50px;
}

.pt-50 {
    padding-top: 50px;
}

.pb-50 {
    padding-bottom: 50px;
}

.pl-50 {
    padding-left: 50px;
}

.pr-50 {
    padding-right: 50px;
}

.pl-60 {
    padding-left: 60px;
}

.pr-60 {
    padding-right: 60px;
}

.pl-100 {
    padding-left: 100px;
}

.pr-50 {
    padding-right: 100px;
}

.ml-auto {
    margin-left: auto !important;
}

.mr-auto {
    margin-right: auto !important;
}

/*Section Title */
.section-title {
    position: relative;
    margin-bottom: 30px;
}
@media (max-width: 767px) {
    .section-title {
        margin-bottom: 0;
    }
}

.section-title h1 {
    font-size: 55px;
    line-height: 65px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-title h1 {
        font-size: 50px;
        line-height: 55px;
    }
}
@media (max-width: 767px) {
    .section-title h1 {
        font-size: 34px;
        line-height: 44px;
    }
}

.section-title h2 {
    font-size: 50px;
    font-weight: 400;
    line-height: 60px;
    color: #171717;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-title h2 {
        font-size: 40px;
        line-height: 50px;
        margin: 0;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .section-title h2 {
        font-size: 40px;
        line-height: 50px;
        margin: 0;
    }
}
@media (max-width: 767px) {
    .section-title h2 {
        font-size: 27px;
        line-height: 37px;
        margin: 20px 0;
    }
}

.section-title h3 {
    font-size: 36px;
    line-height: 40px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-title h3 {
        font-size: 30px;
        line-height: 30px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .section-title h3 {
        font-size: 36px;
        line-height: 40px;
    }
}
@media (max-width: 767px) {
    .section-title h3 {
        font-size: 24px;
        line-height: 30px;
    }
}

.section-title h6 {
    color: #8b8b8b;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.section-title p {
    color: #878787;
    font-size: 20px;
    font-weight: 400;
    position: relative;
    padding-left: 90px;
    line-height: 25px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-title p {
        text-align: center;
        padding-left: 0 !important;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .section-title p {
        text-align: center;
        padding-left: 0 !important;
    }
}
@media (max-width: 767px) {
    .section-title p {
        text-align: center;
        padding-left: 0 !important;
    }
}

.section-title p:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 40px;
    height: 2px;
    background: #878787;
    margin-top: -1px;
}

/*Button Style */
.theme-btn, .bordered-btn {
    display: inline-block;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(120deg, #176343 0%, #3f874d 100%);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    padding: 16px 40px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(12, 67, 39, 0.22);
    -webkit-transition: transform 0.25s ease, box-shadow 0.25s ease, color 0.25s ease;
    transition: transform 0.25s ease, box-shadow 0.25s ease, color 0.25s ease;
}
.theme-btn::before, .bordered-btn::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -55%;
    left: -72%;
    width: 46%;
    height: 210%;
    background: rgba(255, 255, 255, 0.28);
    transform: skewX(-24deg);
    transition: left 0.6s ease;
}
.theme-btn:hover, .bordered-btn:hover {
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 15px 28px rgba(12, 67, 39, 0.32);
}
.theme-btn:hover::before, .bordered-btn:hover::before {
    left: 132%;
}
.theme-btn:focus-visible, .bordered-btn:focus-visible {
    color: #fff;
    outline: 3px solid rgba(112, 190, 129, 0.7);
    outline-offset: 3px;
}
.theme-btn:active, .bordered-btn:active {
    transform: translateY(-1px);
    box-shadow: 0 7px 14px rgba(12, 67, 39, 0.25);
}
@media (prefers-reduced-motion: reduce) {
    .theme-btn, .bordered-btn, .theme-btn::before, .bordered-btn::before {
        transition: none;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .theme-btn, .bordered-btn {
        padding: 12px 24px;
    }
}

.bordered-btn {
    background: transparent;
    border-color: #eee;
    color: #eee;
}
.bordered-btn:hover {
    color: #fff;
}

/*Form Style CSS */
input,
textarea,
select {
    width: 100%;
    background: transparent;
    border: 1px solid #eee;
    padding: 13px 20px;
    font-size: 14px;
    letter-spacing: 1px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

textarea {
    height: 200px;
}

input[type=submit],
button[type=submit] {
    border: none;
    border-radius: 0;
    display: inline-block;
    background: #171717;
    color: #fff;
    padding: 15px 45px;
    width: auto;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    cursor: pointer;
    font-size: 15px;
}

input[type=submit]:hover,
button[type=submit]:hover {
    background: #171717;
    color: #fff;
}

input::placeholder,
textarea::placeholder {
    font-size: 15px;
    font-weight: 400;
}

input.form-control {
    padding: 12px 20px;
    line-height: 1.2;
}

/*Bootstrap CSS*/
.container-fluid {
    padding: 0 20px;
}

.container {
    max-width: 1200px;
}

.navbar-toggler-icon {
    background-image: none;
}

.btn:focus, .btn:active {
    outline: none !important;
    box-shadow: none;
}

/* Bacground Color & Overlay CSS 
============== */
.white-bg {
    background: #fff;
}

.dark-bg {
    background: #0c3b2e;
}

.gray-bg {
    background: #F5F5F3;
}

.bg-cover {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
}

.overlay {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-color: #171717;
    opacity: 0.4;
    top: 0;
    left: 0;
    z-index: -1;
}

.overlay.active {
    position: fixed;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
    content: "";
    background-color: #000;
    z-index: 99;
    opacity: 0.5;
    visibility: visible;
}

.text-black {
    color: #171717 !important;
}

.text-white {
    color: #fff !important;
}

.fix {
    overflow: hidden;
}

/* Preloader*/
.preloader {
    background-color: #fff;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    position: fixed;
    z-index: 9999999;
}

.spinner {
    width: 60px;
    height: 60px;
    top: 30%;
    position: relative;
    margin: 100px auto;
}

.double-bounce1,
.double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #171717;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-animation: sk-bounce 2s infinite ease-in-out;
    animation: sk-bounce 2s infinite ease-in-out;
}

.double-bounce2 {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

@-webkit-keyframes sk-bounce {
    0%, 100% {
        -webkit-transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
    }
}
@keyframes sk-bounce {
    0%, 100% {
        transform: scale(0);
        -webkit-transform: scale(0);
    }
    50% {
        transform: scale(1);
        -webkit-transform: scale(1);
    }
}
.cursor-outer {
    margin-left: -20px;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    border: 1px solid #ddd;
    box-sizing: border-box;
    z-index: 10000000;
    opacity: 0.5;
    transition: all 0.08s ease-out;
}

.mouseCursor {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    border-radius: 50%;
    transform: translateZ(0);
    visibility: hidden;
    text-align: center;
}
@media (max-width: 767px) {
    .mouseCursor {
        display: none;
    }
}

.cursor-inner {
    margin-left: -3px;
    margin-top: -3px;
    width: 6px;
    height: 6px;
    z-index: 10000001;
    background-color: #000;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.cursor-inner span {
    color: #fff;
    line-height: 80px;
    opacity: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 12px;
}

.cursor-inner.cursor-big span {
    opacity: 1;
}

.mouseCursor.cursor-big {
    width: 80px;
    height: 80px;
}

.mouseCursor.cursor-big.cursor-outer {
    display: none;
}

.tp-cursor-point-area {
    cursor: none;
}

/* Off Canvas Menu CSS
======================*/
.header-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .header-btn {
        display: none;
    }
}
@media (max-width: 767px) {
    .header-btn {
        display: none;
    }
}

.menu-trigger span {
    background-color: #333;
    display: block;
    height: 1px;
    margin: 8px auto;
    margin-left: 5px;
    width: 30px;
    transition: all 0.1s;
}

.menu-trigger span:nth-child(2) {
    margin-left: 0px;
}

.menu-trigger:hover span:nth-child(2) {
    margin-left: 5px;
}

.header-area.absolute-header .menu-trigger span {
    background: #fff;
}

.menu-trigger span:nth-child(2) {
    margin-left: 0px;
}

.off-canvas-menu {
    position: fixed;
    top: 0;
    right: -320px;
    background: #fff;
    box-shadow: -6px -3px 16px -8px rgba(0, 0, 0, 0.25);
    width: 350px;
    padding: 50px;
    height: 100%;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}

.off-canvas-menu.show-off-canvas-menu {
    right: 0;
    opacity: 1;
    visibility: visible;
}

.off-canvas-menu p {
    font-size: 16px;
    color: #b4afaf;
    font-weight: 400;
    position: absolute;
    bottom: 15px;
    opacity: 0.5;
}

.menu-close {
    position: absolute;
    right: 25px;
    top: 25px;
    color: #777;
    padding: 7px;
    cursor: pointer;
    font-size: 30px;
    font-weight: 300;
}

.menu-close:hover {
    color: #333;
}

.extra-info {
    background: #141417 none repeat scroll 0 0;
    height: 100%;
    padding: 40px;
    position: fixed;
    right: 0;
    top: 0;
    -webkit-transition: all 0.7s ease 0s;
    -o-transition: all 0.7s ease 0s;
    transition: all 0.7s ease 0s;
    width: 400px;
    z-index: 999;
    overflow-y: scroll;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    opacity: 0;
    visibility: hidden;
}

.extra-info.active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
}

.close-icon {
    margin-top: 0;
    text-align: right;
}

.close-icon > button {
    background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
    border: 0 none;
    cursor: pointer;
    font-size: 20px;
    padding: 0;
}

.close-icon > button i {
    color: #fff;
    font-size: 30px;
}

.side-info {
    border-top: 1px solid #333;
    padding-top: 20px;
}

.contact-list h4 {
    color: #fff;
    font-weight: 400;
    font-size: 20px;
    margin-bottom: 20px;
}

.contact-list p {
    color: #fff;
    margin: 0;
    margin-bottom: 15px;
    line-height: 30px;
    font-size: 15px;
}

.contact-list p i {
    float: left;
    margin-top: 6px;
    width: 25px;
}

.contact-list p span {
    display: block;
    overflow: hidden;
}

.offcanvas-overly {
    position: fixed;
    background: #000;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 99;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.offcanvas-overly.active {
    opacity: 0.5;
    visibility: visible;
}

.extra-info .site-logo-2 {
    width: 220px;
    text-align: center;
    margin-top: 20px;
}

.social-area-wrap a i {
    font-size: 20px;
}

.social-area-wrap a {
    width: 40px;
    height: 40px;
    background: #18222B;
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 10px;
}

.social-area-wrap a:hover {
    background: #ddd;
}

.explore-btn {
    width: 170px;
    height: 170px;
    border: 1px solid #171717;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 30px;
    position: absolute;
    right: 100px;
    top: 120px;
    transition: 0.4s;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .explore-btn {
        top: 80px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .explore-btn {
        display: none;
    }
}
@media (max-width: 767px) {
    .explore-btn {
        display: none;
    }
}

.explore-btn a {
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
    color: #171717;
    margin-top: 20px;
    text-align: center;
}

.explore-btn i {
    font-size: 25px;
    transform: rotate(-45deg);
    margin-left: 10px;
    display: block;
    margin-top: 10px;
}

.explore-btn:after {
    position: absolute;
    content: "";
    top: 20px;
    left: 50%;
    width: 15px;
    height: 15px;
    background: #444;
    border-radius: 50%;
    margin-left: -7px;
}

.circle-button {
    position: relative;
    display: inline-block;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .circle-button {
        display: none;
    }
}
@media (max-width: 767px) {
    .circle-button {
        display: none;
    }
}

.circle-button.in-bord:before {
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border: 1px solid #eee;
    border-radius: 50%;
}

.circle-button .rotate-circle svg {
    width: 210px;
    fill: #1d1d1d;
}

.circle-button .arrow {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-20px) translateY(-20px);
    -ms-transform: translateX(-20px) translateY(-20px);
    transform: translateX(-20px) translateY(-20px);
    display: inline-block;
    width: 0;
    height: 0;
}

.circle-button .arrow svg {
    width: 40px;
    height: 40px;
}

.circle-button .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.circle-button .in-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.circle-button.no-animate .rotate-circle {
    -webkit-animation: none;
    animation: none;
}

.rotate-circle {
    -webkit-animation-name: rotateCircle;
    animation-name: rotateCircle;
    -webkit-animation-duration: 20s;
    animation-duration: 20s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
}

.fz-30 {
    font-size: 30px !important;
}

.text-u {
    text-transform: uppercase !important;
}

.hover-this .hover-anim {
    pointer-events: none;
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear;
}

.rotate-circle {
    -webkit-animation-name: rotateCircle;
    animation-name: rotateCircle;
    -webkit-animation-duration: 20s;
    animation-duration: 20s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
}

@-webkit-keyframes rotateCircle {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes rotateCircle {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
.header-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    opacity: 1;
    visibility: visible;
    width: 100%;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    animation: 0.5s ease-in-out 0s normal none 1 running fadeInDown;
    z-index: 999;
}

.header-area .navigation {
    height: 90px;
    position: relative;
    z-index: 9;
    display: flex;
    align-items: center;
}
.header-area .header-inner-box {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header-area .main-menu {
    margin-left: auto;
}
.header-area .header-inner-box .logo {
    height: 90px;
    display: flex;
    align-items: center;
    padding-right: 30px;
    font-size: 30px;
    font-weight: 500;
    color: #171717;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.logo a {
    font-size: 30px;
    font-weight: 400;
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    letter-spacing: 3px;
}

.main-menu ul {
    line-height: 1;
}
.main-menu ul > li {
    display: inline-block;
    line-height: 1;
    position: relative;
}
.main-menu ul > li > a {
    display: inline-block;
    font-size: 16px;
    text-transform: capitalize;
    line-height: 1;
    padding: 35px 0;
    overflow: hidden;
    margin-right: 30px;
}
.main-menu ul > li > a i {
    margin-left: 5px;
}
.header-actions {
    position: static;
    align-items: center;
    gap: 10px;
    margin-left: 88px;
}
.header-access {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-right: 4px;
}
.header-access-pipe {
    color: rgba(239, 253, 242, .42);
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
    user-select: none;
}
.header-sticky .header-access-pipe { color: rgba(23, 57, 39, .28); }
body.page-curriculo .header-sticky .header-access-pipe,
body.page-cliente .header-sticky .header-access-pipe { color: rgba(239, 253, 242, .42); }
.header-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 43px;
    padding: 0 16px;
    border: 1px solid rgba(239, 253, 242, 0.72);
    border-radius: 99px;
    background: transparent;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
    transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.header-action-cv {
    border-color: rgba(239, 253, 242, 0.46);
    background: rgba(11, 52, 32, 0.32);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
    color: #f4c896;
}
.header-action-cv:hover {
    background: rgba(18, 72, 44, 0.55);
    color: #f7d4a8;
    transform: translateY(-2px);
}
.header-action-cv i {
    font-size: 16px;
    color: inherit;
}
.header-action-jobs {
    border-color: #f39a59;
    background: linear-gradient(135deg, #df6726, #ef8a3c);
    box-shadow: 0 10px 23px rgba(115, 48, 13, 0.34);
    color: #fff;
}
.header-action-jobs:hover {
    border-color: #ffc38c;
    background: linear-gradient(135deg, #eb742d, #f49a48);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 15px 28px rgba(115, 48, 13, 0.42);
}
.header-action-jobs i {
    font-size: 15px;
    transition: transform 0.25s ease;
}
.header-action-jobs:hover i {
    transform: translateX(3px);
}
.main-menu ul > li:hover > ul {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.main-menu ul > li > ul {
    position: absolute;
    top: 100%;
    width: 230px;
    background-color: #171717;
    left: 0;
    z-index: 999;
    box-shadow: 0 13px 35px -12px rgba(35, 35, 35, 0.15);
    visibility: hidden;
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.5s ease-in-out;
    padding: 10px 0px;
}
.main-menu ul > li > ul li {
    display: block;
}
.main-menu ul > li > ul li a {
    display: block;
    color: #eee;
    padding: 12px 25px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.main-menu ul > li > ul li a:hover {
    color: #fff;
}
.main-menu ul > li > ul ul {
    left: 100%;
    top: 0;
}

/* Editorial dropdown for the HR solutions navigation. */
.main-menu ul > li.solutions-menu > .solutions-submenu {
    width: 330px;
    left: -24px;
    top: calc(100% - 14px);
    padding: 16px;
    border: 1px solid rgba(207, 239, 216, 0.25);
    border-radius: 5px 22px 5px 22px;
    background: linear-gradient(145deg, rgba(8, 42, 30, 0.97), rgba(20, 88, 60, 0.96));
    box-shadow: 0 22px 52px rgba(3, 26, 18, 0.3);
    backdrop-filter: blur(13px);
    -webkit-backdrop-filter: blur(13px);
}
.main-menu ul > li.solutions-menu > .solutions-submenu::before {
    content: "";
    position: absolute;
    top: -7px;
    left: 56px;
    width: 14px;
    height: 14px;
    transform: rotate(45deg);
    border-top: 1px solid rgba(207, 239, 216, 0.25);
    border-left: 1px solid rgba(207, 239, 216, 0.25);
    background: #0b452f;
}
.main-menu ul > li.solutions-menu > .solutions-submenu .solutions-submenu-heading {
    padding: 4px 10px 14px;
    margin-bottom: 6px;
    border-bottom: 1px solid rgba(220, 246, 225, 0.16);
}
.main-menu ul > li.solutions-menu > .solutions-submenu .solutions-submenu-heading span,
.main-menu ul > li.solutions-menu > .solutions-submenu .solutions-submenu-heading small {
    display: block;
}
.main-menu ul > li.solutions-menu > .solutions-submenu .solutions-submenu-heading span {
    color: #f4fff6;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.main-menu ul > li.solutions-menu > .solutions-submenu .solutions-submenu-heading small {
    margin-top: 4px;
    color: rgba(219, 244, 225, 0.66);
    font-size: 12px;
    line-height: 1.4;
}
.main-menu ul > li.solutions-menu > .solutions-submenu li a {
    min-height: 44px;
    padding: 10px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(244, 255, 246, 0.9);
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.035em;
    line-height: 1.25;
    text-transform: none;
    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}
.main-menu ul > li.solutions-menu > .solutions-submenu li a i {
    margin-left: auto;
    color: #a5d8b0;
    font-size: 15px;
    transform: rotate(45deg);
    transition: transform 0.25s ease;
}
.main-menu ul > li.solutions-menu > .solutions-submenu li a:hover {
    transform: translateX(4px);
    background: rgba(221, 248, 226, 0.12);
    color: #fff;
}
.main-menu ul > li.solutions-menu > .solutions-submenu li a:hover i {
    transform: rotate(0);
}
.main-menu ul > li.solutions-menu > .solutions-submenu .rh-tech-menu-item {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(242, 176, 113, 0.3);
}
.main-menu ul > li.solutions-menu > .solutions-submenu .rh-tech-menu-item a {
    background: linear-gradient(90deg, rgba(222, 128, 56, 0.24), rgba(222, 128, 56, 0.06));
    color: #ffe0bf;
    font-weight: 700;
}
.main-menu ul > li.solutions-menu > .solutions-submenu .rh-tech-menu-item a i {
    color: #f2a460;
    transform: rotate(0);
}
.main-menu ul > li.solutions-menu > .solutions-submenu .rh-tech-menu-item a:hover {
    background: linear-gradient(90deg, rgba(222, 128, 56, 0.4), rgba(222, 128, 56, 0.13));
}

/* Branded confirmation shown before leaving for RH Tech. */
.swal2-popup.rh-tech-alert {
    width: min(560px, calc(100% - 32px));
    padding: 46px 44px 40px;
    overflow: hidden;
    border: 1px solid rgba(50, 112, 75, .18);
    border-radius: 8px 30px 8px 30px;
    background:
        radial-gradient(circle at 100% 0, rgba(227, 139, 68, .16), transparent 34%),
        linear-gradient(145deg, #fbfdf9, #f0f7f1);
    box-shadow: 0 26px 65px rgba(6, 42, 26, .28);
}
.swal2-popup.rh-tech-alert::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #1d563c 0%, #4f8a61 58%, #e28a45 100%);
    content: "";
}
.swal2-title.rh-tech-alert-title {
    max-width: 430px;
    margin: 0 auto 17px;
    color: #183d2b;
    font-family: "Poppins", sans-serif;
    font-size: 29px;
    font-weight: 650;
    line-height: 1.18;
    letter-spacing: -.035em;
}
.swal2-html-container.rh-tech-alert-copy {
    max-width: 440px;
    margin: 0 auto;
    color: #557062;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    line-height: 1.65;
}
.swal2-actions.rh-tech-alert-actions {
    gap: 11px;
    margin: 29px 0 0;
}
.rh-tech-alert-confirm,
.rh-tech-alert-cancel {
    min-height: 48px;
    margin: 0 !important;
    padding: 0 19px;
    border: 0;
    border-radius: 8px 16px 8px 16px;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.rh-tech-alert-confirm {
    background: linear-gradient(135deg, #df843f, #c96e30);
    color: #fff;
    box-shadow: 0 11px 20px rgba(201, 110, 48, .25);
}
.rh-tech-alert-confirm i { margin-left: 6px; font-size: 16px; vertical-align: -1px; }
.rh-tech-alert-cancel {
    border: 1px solid rgba(31, 82, 56, .28);
    background: transparent;
    color: #27583c;
}
.rh-tech-alert-confirm:hover,
.rh-tech-alert-cancel:hover { transform: translateY(-2px); }
.rh-tech-alert-confirm:hover { background: linear-gradient(135deg, #ed9552, #d97937); box-shadow: 0 14px 24px rgba(201, 110, 48, .3); }
.rh-tech-alert-cancel:hover { background: rgba(44, 104, 67, .08); }
@media (max-width: 575px) {
    .swal2-popup.rh-tech-alert { padding: 39px 23px 29px; }
    .swal2-title.rh-tech-alert-title { font-size: 24px; }
    .swal2-actions.rh-tech-alert-actions { flex-direction: column-reverse; width: 100%; }
    .rh-tech-alert-confirm, .rh-tech-alert-cancel { width: 100%; }
}

.mobile-nav {
    position: fixed;
    right: -380px;
    top: 0;
    width: 320px;
    height: 100vh;
    scroll-behavior: smooth;
    overflow-y: scroll;
    transition: right 0.5s ease-in;
    background-color: #171717;
    padding: 20px;
    z-index: 9999;
    box-shadow: 0 13px 35px -12px rgba(35, 35, 35, 0.15);
    /* Vertical Menu Style */
}
.mobile-nav.show {
    right: 0px;
}
.mobile-nav .close-nav {
    border: 0;
    background: transparent;
    color: #fff;
    border-radius: 30px;
    font-size: 30px;
    position: absolute;
    left: 20px;
    top: 10px;
}
.mobile-nav .sidebar-nav {
    margin-top: 60px;
}
.mobile-nav .sidebar-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: transparent;
}
.mobile-nav .sidebar-nav .metismenu {
    display: flex;
    flex-direction: column;
}
.mobile-nav .sidebar-nav .metismenu > li {
    position: relative;
    display: flex;
    flex-direction: column;
}
.mobile-nav .sidebar-nav .metismenu a {
    position: relative;
    display: block;
    padding: 10px 15px;
    transition: all 0.3s ease-out;
    text-decoration: none;
    color: #fff;
    outline-width: 0;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 1px solid #333;
}
.mobile-nav .sidebar-nav .metismenu ul li {
    display: block;
}
.mobile-nav .sidebar-nav .metismenu ul a {
    padding: 10px 15px 10px 35px;
    position: relative;
}
.mobile-nav .sidebar-nav .metismenu ul a:hover {
    padding-left: 40px;
}
.mobile-nav .sidebar-nav .metismenu ul a:hover::before {
    background-color: #fff;
}
.mobile-nav .sidebar-nav .metismenu ul a::before {
    position: absolute;
    left: 15px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid #fff;
    content: "";
    top: 50%;
    transition: all 0.3s ease-in-out;
    transform: translateY(-50%);
}
.mobile-nav .sidebar-nav .metismenu ul ul {
    list-style-type: circle !important;
}
.mobile-nav .sidebar-nav .metismenu ul ul a {
    padding: 10px 15px 10px 45px;
}
.mobile-nav .sidebar-nav .metismenu a:hover,
.mobile-nav .sidebar-nav .metismenu a:focus,
.mobile-nav .sidebar-nav .metismenu a:active {
    text-decoration: none;
    color: #f8f9fa;
    background: #171717;
}

.header-area .container {
    background: #fff;
}

.header-area.absolute-header .container {
    background: transparent;
}

#hamburger {
    color: #171717;
    font-size: 32px;
    line-height: 1;
    text-align: right;
    display: none;
}
#hamburger i {
    cursor: pointer;
}
@media (max-width: 1199px) {
    #hamburger {
        display: block;
    }
}

.header-area.absolute-header #hamburger {
    color: #fff;
}

.action-bar {
    margin-top: 60px;
    padding-left: 20px;
}

.action-bar a {
    color: #fff;
    display: block;
    margin-top: 12px;
    font-size: 15px;
}

.action-bar a i {
    margin-right: 10px;
}

.action-bar .theme-btn, .action-bar .bordered-btn {
    margin-top: 30px;
    display: inline-block;
}

.header-area.absolute-header {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 99;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.header-area.absolute-header .navigation {
    background: inherit;
}

.header-area.absolute-header .logo {
    color: #fff;
}

.header-area.absolute-header .main-menu ul > li > a {
    color: #fff;
}

.header-area.absolute-header {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 99;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.header-area.absolute-header .logo {
    color: #fff;
}

.hero-area {
    position: relative;
}

.hero-area-inner {
    padding: 120px 0 90px;
}
@media (max-width: 767px) {
    .hero-area-inner {
        padding: 120px 0 60px;
    }
}

.slider-bg {
    height: 700px;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .slider-bg {
        min-height: 500px;
    }
}

.circle-shape-wrap {
    position: absolute;
    top: 150px;
    right: 50px;
    z-index: 9;
    animation: rotation 30s infinite linear;
    width: 200px;
}

.circle-shape-wrap img {
    animation: rotation 30s infinite linear;
}

@keyframes rotation {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.homepage-slides .owl-nav button.owl-prev,
.homepage-slides .owl-nav button.owl-next {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 58px;
    height: 58px;
    border: 1px solid rgba(234, 253, 237, 0.42);
    background: rgba(12, 59, 39, 0.32);
    color: #fff;
    font-size: 22px;
    line-height: 1;
    transform: translateY(-50%);
    transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.homepage-slides .owl-nav button.owl-prev {
    right: auto;
    bottom: auto;
    left: 0;
    border-left: 0;
    border-radius: 0 12px 12px 0;
}
.homepage-slides .owl-nav button.owl-next {
    left: auto;
    right: 0;
    bottom: auto;
    border-right: 0;
    border-radius: 12px 0 0 12px;
}
.homepage-slides .owl-nav button.owl-prev:hover,
.homepage-slides .owl-nav button.owl-next:hover {
    background: #df873f;
    border-color: #df873f;
    transform: translateY(-50%) scale(1.04);
}

.feature_item {
    display: flex;
    align-items: center;
    height: 100px;
    background: #171717;
}
.feature_item h5 {
    color: #fff;
    font-size: 24px;
    font-weight: 400;
    margin-right: 60px;
}
@media (max-width: 767px) {
    .feature_item h5 {
        font-size: 24px;
    }
}
.feature_item img {
    display: inline-block;
}

h5.slick-slide img {
    width: 24px;
    margin-right: 10px;
}

#home-2 .single-slide-item, #home-3 .single-slide-item {
    background-image: url(../img/slider/slide-1.jpg);
    background-size: cover;
    background-position: center;
    background-color: #ddd;
    color: #fff;
    width: 100%;
    height: 700px;
    display: table;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    #home-2 .single-slide-item, #home-3 .single-slide-item {
        height: 600px;
    }
}
#home-2 .single-slide-item .hero-area-content, #home-3 .single-slide-item .hero-area-content {
    display: table-cell;
    vertical-align: middle;
}
#home-2 .single-slide-item h1, #home-3 .single-slide-item h1 {
    color: #fff;
    font-size: 90px;
    font-weight: 500;
    line-height: 100px;
    margin: 30px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    #home-2 .single-slide-item h1, #home-3 .single-slide-item h1 {
        font-size: 75px;
        line-height: 85px;
    }
}
@media (max-width: 767px) {
    #home-2 .single-slide-item h1, #home-3 .single-slide-item h1 {
        font-size: 40px;
        line-height: 50px;
    }
}
@media only screen and (min-width: 540px) and (max-width: 767px) {
    #home-2 .single-slide-item h1, #home-3 .single-slide-item h1 {
        font-size: 50px;
        line-height: 60px;
    }
}
#home-2 .single-slide-item p, #home-3 .single-slide-item p {
    color: #ccc7c7;
    font-size: 16px;
    line-height: 30px;
}
#home-2 .hero-area-bg-3, #home-3 .hero-area-bg-3 {
    background-image: url(../img/slider/slide-3.jpg);
}
#home-2 .hero-area-bg-4, #home-3 .hero-area-bg-4 {
    background-image: url(../img/slider/slide-4.jpg);
}
#home-2 .hero-area-bg-5, #home-3 .hero-area-bg-5 {
    background-image: url(../img/slider/slide-5.jpg);
}
#home-2 .hero-area-bg-6, #home-3 .hero-area-bg-6 {
    background-image: url(../img/slider/slide-6.jpg);
}

#home-3 .single-slide-item h1 {
    text-transform: uppercase;
    font-size: 90px;
    line-height: 100px;
}
@media (max-width: 767px) {
    #home-3 .single-slide-item h1 {
        font-size: 60px;
        line-height: 70px;
    }
}

#home-3 .single-slide-item {
    height: 790px;
}
#home-3 .home-slide-talentos {
    background-position: right center;
}
#home-3 .home-slide-equipe {
    background-position: 72% center;
}

#home-3 .single-slide-item .overlay {
    background: linear-gradient(90deg, rgba(16, 72, 47, 0.92) 0%, rgba(18, 76, 51, 0.72) 45%, rgba(17, 65, 44, 0.28) 75%, rgba(12, 48, 32, 0.12) 100%);
    opacity: 1;
}
#home-3 .single-slide-item .container {
    position: relative;
    z-index: 2;
}
#home-3 .single-slide-item .container::before {
    position: absolute;
    top: 48px;
    bottom: 38px;
    left: -46px;
    width: 1px;
    background: linear-gradient(180deg, rgba(242, 176, 113, 0), rgba(242, 176, 113, .58) 28%, rgba(182, 222, 164, .32) 70%, rgba(182, 222, 164, 0));
    content: "";
}
#home-3 .home-hero-kicker {
    display: flex;
    align-items: center;
    gap: 13px;
    color: #f1bf82;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .19em;
    text-transform: uppercase;
}
#home-3 .home-hero-kicker::before {
    width: 38px;
    height: 2px;
    background: #e59b52;
    box-shadow: 0 3px 10px rgba(229, 155, 82, .24);
    content: "";
}
#home-3 .home-hero-kicker + .section-title h1 { margin-top: 24px; }
#home-3 .promo-slide .overlay {
    background:
        linear-gradient(180deg, rgba(6, 57, 38, 0.8) 0%, rgba(8, 71, 46, 0.34) 88px, rgba(8, 71, 46, 0) 155px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(251, 253, 251, 0.94) 43%, rgba(248, 252, 249, 0.22) 68%, rgba(248, 252, 249, 0) 100%);
}
#home-3 .promo-slide .hero-area-content {
    padding-top: 145px;
}
#home-3 .promo-slide h1 {
    max-width: 740px;
    margin: 18px 0 20px;
    color: #162d20;
    font-family: "Poppins", sans-serif;
    font-size: 70px;
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.05em;
    text-transform: none;
}
#home-3 .promo-slide .promo-eyebrow {
    display: inline-block;
    color: #e59b52;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
}
#home-3 .promo-slide .promo-description {
    max-width: 510px;
    margin-bottom: 30px;
    color: #596c60;
    font-size: 18px;
    line-height: 1.65;
}
#home-3 .promo-slide .theme-btn {
    padding: 18px 28px;
    border-radius: 3px 18px 3px 18px;
    background: linear-gradient(135deg, #176343, #4d9565);
    box-shadow: 0 13px 28px rgba(9, 69, 43, 0.2);
}
#home-3 .promo-slide .theme-btn:hover {
    background: linear-gradient(135deg, #1d6742, #4b9361);
}
#home-3 .promo-slide .promo-title-main,
#home-3 .promo-slide .promo-title-highlight {
    display: block;
}
#home-3 .promo-slide .promo-title-highlight {
    color: #3b8a5b;
}

@media (max-width: 767px) {
    #home-3 .single-slide-item {
        height: 625px;
    }
    #home-3 .single-slide-item .container::before {
        left: -14px;
    }
    #home-3 .promo-slide .hero-area-content {
        padding-top: 132px;
    }
    #home-3 .promo-slide h1 {
        font-size: 43px;
        line-height: 1.12;
    }
    #home-3 .promo-slide .promo-description {
        font-size: 16px;
    }
}

.single-service-wrapper {
    background: #fff;
    padding: 40px;
    text-align: center;
    margin-bottom: 30px;
}
.single-service-wrapper h5 {
    font-size: 22px;
    margin: 30px 0;
}

.single-service-inner {
    display: flex;
    align-items: center;
}

.service-icon img {
    width: 50px;
    height: 50px;
}

.icon-wrap {
    width: 45px;
}

.service-title {
    padding-left: 30px;
}

.single-service {
    padding: 0 45px;
    margin-bottom: 60px;
}

.single-service p {
    margin-top: 20px;
}

#service-3 .single-service-wrap {
    max-width: calc(100% - 60px);
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    #service-3 .single-service-wrap {
        max-width: calc(100% - 60px);
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    #service-3 .single-service-wrap {
        max-width: calc(100% - 60px);
    }
}
@media (max-width: 767px) {
    #service-3 .single-service-wrap {
        max-width: calc(100% - 10px);
    }
}
#service-3 .single-service-inner {
    border-top: 1px solid #eee;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
}
@media (max-width: 767px) {
    #service-3 .single-service-inner {
        flex-direction: column;
        align-items: start;
        padding: 30px;
    }
}
#service-3 .single-service-inner:last-child {
    border-bottom: 1px solid #eee;
}
#service-3 .single-service-inner .service-icon {
    width: 90px;
    margin-right: 30px;
}
@media (max-width: 767px) {
    #service-3 .single-service-inner .service-icon {
        margin-bottom: 30px;
    }
}
#service-3 .single-service-inner h5 {
    font-size: 24px;
    font-weight: 400;
    color: #171717;
    margin-right: 30px;
    width: 150px;
}
@media (max-width: 767px) {
    #service-3 .single-service-inner h5 {
        font-size: 24px;
        line-height: 34px;
    }
}
#service-3 .single-service-inner p {
    margin: 37px 0;
    padding-right: 0px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    #service-3 .single-service-inner p {
        margin: 20px 0;
    }
}
@media (max-width: 767px) {
    #service-3 .single-service-inner p {
        padding-right: 75px;
    }
}
#service-3 .single-service-inner .details-link {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
}
#service-3 .single-service-inner .details-link i {
    font-size: 30px;
    transform: rotate(-45deg);
    transition: 0.3s;
}
#service-3 .single-service-inner .details-link:hover i {
    transform: rotate(0);
}
#service-3 .single-service-inner:hover h5 {
    color: #333;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    #service-3 .service-content-wrap {
        margin-top: 60px;
    }
}
@media (max-width: 767px) {
    #service-3 .service-content-wrap {
        margin-top: 40px;
    }
}
#service-3 .service-content-wrap p {
    margin: 40px 0;
}
#service-3 .service-bg {
    position: relative;
}
#service-3 .service-bg .more-service-btn {
    position: absolute;
    bottom: 0;
    left: 0;
    background: #fff;
    color: #171717;
    padding: 20px;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
}
#service-3 .service-bg .more-service-btn:hover {
    color: #056251;
}
#service-3 .service-icon img {
    width: inherit;
    height: inherit;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    #service-3 .service-icon img {
        width: 40px;
    }
}
@media (max-width: 767px) {
    #service-3 .service-icon img {
        width: 50px;
    }
}
#service-3 .more-service-btn i {
    font-size: 25px;
    transform: rotate(-45deg);
    margin-left: 10px;
}

/* Featured vacancies: a clear path from the site to recruiting contact. */
.featured-jobs-section {
    padding: 110px 0;
    background:
        radial-gradient(circle at 92% 8%, rgba(32, 105, 53, 0.38) 0%, rgba(32, 105, 53, 0) 31%),
        linear-gradient(135deg, #b3d5ba 0%, #cce3cf 56%, #a9cfb1 100%);
    border-top: 1px solid #78ad85;
}
.featured-jobs-heading {
    margin-bottom: 42px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
}
.featured-jobs-kicker {
    padding: 7px 13px;
    border: 1px solid #d7e7da;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #377d57;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
}
.featured-jobs-kicker i {
    font-size: 14px;
}
.featured-jobs-heading h2 {
    max-width: 650px;
    margin-top: 18px;
    color: #173a28;
    font-family: "Poppins", sans-serif;
    font-size: 47px;
    font-weight: 400;
    line-height: 1.13;
    letter-spacing: -0.045em;
}
.featured-jobs-heading h2 strong {
    font-weight: 700;
}
.featured-jobs-all {
    min-width: 205px;
    padding: 13px 18px;
    border: 1px solid #4a9067;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #276d49;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}
.featured-jobs-all i {
    font-size: 18px;
}
.featured-jobs-all:hover {
    transform: translateY(-3px);
    background: #1b6844;
    color: #fff;
}
.featured-job-card {
    min-height: 286px;
    margin-bottom: 24px;
    padding: 27px 24px 20px;
    border: 1px solid #dbe8de;
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 10px 24px rgba(23, 75, 47, 0.035);
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.featured-job-card:hover {
    transform: translateY(-7px);
    border-color: #9bc4a5;
    box-shadow: 0 18px 34px rgba(23, 75, 47, 0.12);
}
.featured-job-tag {
    width: max-content;
    padding: 5px 11px;
    border-radius: 999px;
    background: #e6f2e9;
    color: #41805b;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
}
.featured-job-card h3 {
    margin: 20px 0 10px;
    color: #1c3729;
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.025em;
}
.featured-job-card p {
    margin: 0;
    color: #708077;
    font-size: 14px;
    line-height: 1.62;
}
.featured-job-footer {
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid #e6eee8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #718078;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
}
.featured-job-footer span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.featured-job-footer span i {
    color: #4c9566;
    font-size: 16px;
}
.featured-job-footer a {
    width: 30px;
    height: 30px;
    border: 1px solid #cfe1d3;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #347d53;
    font-size: 17px;
    transition: background 0.25s ease, color 0.25s ease;
}
.featured-job-footer a:hover {
    background: #1b6844;
    color: #fff;
}
.home-about-section {
    background: #fff;
    border-top: 1px solid #e7eee8;
}
.home-about-section .about-bg-wrapper {
    position: relative;
    padding: 14px 0 0 14px;
}
.home-about-section .about-bg-wrapper::before {
    content: "";
    position: absolute;
    inset: 0 28px 28px 0;
    border-radius: 5px 36px 5px 5px;
    background: linear-gradient(135deg, #0d4a30 0%, #7aac84 100%);
}
.home-about-section .about-bg-wrapper::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 14px 0 0 14px;
    pointer-events: none;
    border-radius: 3px 29px 3px 3px;
    background: linear-gradient(135deg, rgba(9, 68, 43, 0.08) 0%, rgba(9, 68, 43, 0) 58%);
}
.home-about-section .about-bg-wrapper img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    border-radius: 3px 29px 3px 3px;
    box-shadow: 0 18px 36px rgba(18, 72, 46, 0.12);
    filter: saturate(1.04) contrast(1.03);
    transition: transform 0.45s ease, filter 0.45s ease;
}
.home-about-section .about-bg-wrapper:hover img {
    transform: scale(1.018);
    filter: saturate(1.1) contrast(1.04);
}
.home-about-section .about-image-message {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 5%;
    width: 38%;
    margin: 0;
    transform: translateY(-50%);
    padding: 20px 18px 21px;
    border: 1px solid rgba(221, 241, 221, 0.28);
    border-radius: 3px 20px 3px 20px;
    background: rgba(18, 79, 50, 0.66);
    box-shadow: 0 12px 25px rgba(9, 52, 33, 0.2);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(16px, 1.5vw, 20px);
    line-height: 1.22;
    text-align: left;
    backdrop-filter: blur(5px);
}
.home-about-section .about-image-message span,
.home-about-section .about-image-message strong {
    display: block;
}
.home-about-section .about-image-message span {
    margin-bottom: 4px;
    color: #d6ead8;
    font-size: 0.72em;
    font-weight: 600;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}
.home-about-section .about-image-message strong {
    font-size: 1.36em;
    font-weight: 700;
    letter-spacing: -0.045em;
}
.home-about-section .about-content-wrap {
    margin-left: 42px;
}
.home-about-section .about-content-wrap .section-title::before {
    content: "NOSSO COMPROMISSO";
    display: block;
    color: #347855;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.19em;
}
.home-about-section .about-content-wrap .section-title h2 {
    max-width: 590px;
    margin: 13px 0 25px;
    color: #143d2a;
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -0.045em;
}
.home-about-section .about-content-wrap .section-title::after {
    content: "";
    display: block;
    width: 54px;
    height: 3px;
    margin-top: -12px;
    border-radius: 3px;
    background: linear-gradient(90deg, #1c6642, #8fc29c);
}
.home-about-section .about-content-wrap > p {
    max-width: 560px;
    margin-top: 30px;
    color: #65756b;
    font-size: 16px;
    line-height: 1.72;
}
@media (max-width: 767px) {
    .featured-jobs-section {
        padding: 65px 0 42px;
    }
    .featured-jobs-heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .featured-jobs-heading h2 {
        font-size: 34px;
    }
    .featured-jobs-all {
        min-width: 0;
    }
    .featured-job-card {
        min-height: 0;
    }
    .home-about-section .about-bg-wrapper {
        margin-top: 35px;
    }
    .home-about-section .about-image-message {
        right: 5%;
        width: 45%;
        padding: 14px 13px 15px;
        font-size: clamp(13px, 3.5vw, 17px);
    }
    .home-about-section .about-content-wrap {
        margin-left: 0;
    }
    .home-about-section .about-content-wrap .section-title h2 {
        font-size: 34px;
        line-height: 1.2;
    }
}

/* Refined service cards for the RH solutions overview. */
#service-3 {
    position: relative;
    overflow: hidden;
    background: radial-gradient(circle at 88% 18%, #eff7f1 0%, rgba(239, 247, 241, 0) 31%);
}
#service-3 .single-service-inner {
    border-color: #dfe9e2;
    padding: 15px 16px;
    margin-left: -16px;
    border-radius: 18px;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
#service-3 .single-service-inner:hover {
    background: #ffffff;
    box-shadow: 0 15px 32px rgba(20, 69, 44, 0.1);
    transform: translateX(8px);
    color: inherit;
    text-decoration: none;
}
#service-3 .single-service-inner:focus-visible {
    outline: 3px solid rgba(47, 128, 84, 0.45);
    outline-offset: 3px;
}
#service-3 .single-service-inner .service-icon {
    width: 58px;
    height: 58px;
    min-width: 58px;
    margin-right: 32px;
    border: 0;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0b442d 0%, #287850 100%);
    color: #fff;
    transition: background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}
#service-3 .single-service-inner .service-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
#service-3 .single-service-inner:hover .service-icon {
    background: linear-gradient(135deg, #123e2b 0%, #5d9a70 100%);
    color: #fff;
    box-shadow: 0 12px 24px rgba(20, 89, 56, 0.28);
}
#service-3 .single-service-inner h5 {
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.02em;
    color: #173927;
}
#service-3 .single-service-inner p {
    font-size: 15px;
    line-height: 1.6;
    color: #66746b;
}
#service-3 .service-content-wrap .section-title h6 {
    color: #337653;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    letter-spacing: 0.22em;
}
#service-3 .service-content-wrap .section-title h2 {
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.04em;
    color: #163d29;
}
#service-3 .service-content-wrap > p {
    font-size: 16px;
    line-height: 1.7;
    color: #65736a;
}
#service-3 .service-bg {
    margin-top: 50px;
    padding: 12px 0 0 12px;
}
#service-3 .service-bg::before {
    content: "";
    position: absolute;
    inset: 0 28px 28px 0;
    border-radius: 4px 32px 4px 4px;
    background: linear-gradient(135deg, #0e4a30 0%, #65a378 100%);
}
#service-3 .service-bg::after {
    content: "";
    position: absolute;
    inset: 12px 0 0 12px;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(11, 65, 41, 0.32) 0%, rgba(11, 65, 41, 0.04) 65%);
}
#service-3 .service-bg img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    object-position: center;
    border-radius: 3px 28px 3px 3px;
    filter: saturate(0.82) contrast(1.04);
    transition: transform 0.45s ease, filter 0.45s ease;
}
#service-3 .service-bg:hover img {
    transform: scale(1.025);
    filter: saturate(0.94) contrast(1.05);
}
#service-3 .service-bg img.service-rh-vector,
#service-3 .service-bg:hover img.service-rh-vector {
    filter: none;
    transform: none;
}
#service-3 .service-bg .more-service-btn {
    z-index: 2;
    bottom: -1px;
    left: 12px;
    padding: 17px 22px;
    border-radius: 0 14px 0 0;
    background: linear-gradient(135deg, #0e4a30 0%, #2f8054 100%);
    color: #fff;
    box-shadow: 0 10px 22px rgba(14, 74, 48, 0.2);
}
#service-3 .service-bg .more-service-btn:hover {
    color: #fff;
    background: linear-gradient(135deg, #123e2b 0%, #67a57a 100%);
}
@media (max-width: 767px) {
    #service-3 .single-service-inner {
        transform: none;
    }
    #service-3 .single-service-inner:hover {
        transform: none;
    }
    #service-3 .single-service-inner .service-icon {
        margin-right: 0;
        margin-bottom: 18px;
    }
    #service-3 .single-service-inner p {
        padding-right: 0;
    }
    #service-3 .service-content-wrap .section-title h2 {
        font-size: 34px;
        line-height: 1.25;
    }
    #service-3 .service-bg {
        margin-top: 35px;
    }
}

.about-content-wrap {
    max-width: calc(100% - 40px);
}
#home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper {
    position: relative;
    padding: 13px 0 0 13px;
}
#home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper::before {
    content: "";
    position: absolute;
    inset: 0 24px 24px 0;
    border-radius: 4px 34px 4px 4px;
    background: linear-gradient(135deg, #123f2c 0%, #6faa7d 100%);
}
#home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 13px 0 0 13px;
    pointer-events: none;
    border-radius: 3px 28px 3px 3px;
    background: linear-gradient(135deg, rgba(7, 52, 34, 0.1) 0%, rgba(15, 89, 57, 0.02) 56%, rgba(112, 164, 122, 0.05) 100%);
}
#home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    min-height: 0;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    object-position: center;
    border-radius: 3px 28px 3px 3px;
    filter: saturate(0.98) contrast(1.02);
    transition: transform 0.45s ease, filter 0.45s ease;
}
#home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper:hover img {
    transform: scale(1.02);
    filter: saturate(1.04) contrast(1.03);
}
#home-3 + .service-section + .counter-section + .about-section .services-diagram-wrapper {
    min-height: 360px;
    padding: 0;
}
#home-3 + .service-section + .counter-section + .about-section .services-diagram-wrapper::before,
#home-3 + .service-section + .counter-section + .about-section .services-diagram-wrapper::after {
    display: none;
}
.hr-services-orbit {
    position: relative;
    width: 100%;
    min-height: 360px;
    overflow: hidden;
    border: 1px solid #d9e8dc;
    border-radius: 10px 42px 10px 42px;
    background:
        radial-gradient(circle at 50% 50%, rgba(213, 235, 218, 0.75) 0%, rgba(213, 235, 218, 0.2) 34%, rgba(255, 255, 255, 0) 35%),
        linear-gradient(135deg, #fbfdfb 0%, #edf6ef 100%);
}
.hr-services-orbit::before,
.hr-services-orbit::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    border: 1px solid rgba(43, 118, 78, 0.2);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.hr-services-orbit::before {
    width: 224px;
    height: 224px;
}
.hr-services-orbit::after {
    width: 298px;
    height: 298px;
    border-style: dashed;
}
.orbit-center {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 50%;
    width: 142px;
    height: 142px;
    padding: 22px 12px;
    border: 7px solid #dceee0;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: translate(-50%, -50%);
    background: linear-gradient(145deg, #0c4a30 0%, #26734b 100%);
    box-shadow: 0 14px 30px rgba(12, 74, 48, 0.25);
    color: #fff;
    text-align: center;
}
.orbit-center span {
    margin-bottom: 4px;
    color: #b9e1c1;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
}
.orbit-center strong {
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.05;
}
.orbit-center small {
    margin-top: 7px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 10px;
    line-height: 1.25;
}
.orbit-node {
    position: absolute;
    z-index: 3;
    width: 122px;
    min-height: 78px;
    padding: 13px 12px;
    border: 1px solid rgba(21, 90, 57, 0.14);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 10px 22px rgba(18, 74, 48, 0.1);
    color: #174832;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.orbit-node:hover {
    transform: scale(1.06);
    box-shadow: 0 15px 28px rgba(18, 74, 48, 0.18);
}
.orbit-node span {
    margin-bottom: 4px;
    color: #4b9870;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.1em;
}
.orbit-node strong {
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
}
.orbit-node-1 {
    left: 50%;
    top: 12px;
    transform: translateX(-50%);
}
.orbit-node-2 {
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
}
.orbit-node-3 {
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
}
.orbit-node-4 {
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
}
.orbit-node-1:hover,
.orbit-node-3:hover {
    transform: translateX(-50%) scale(1.06);
}
.orbit-node-2:hover,
.orbit-node-4:hover {
    transform: translateY(-50%) scale(1.06);
}
#home-3 + .service-section + .counter-section + .about-section .about-content-wrap {
    margin-left: 42px;
}
#home-3 + .service-section + .counter-section + .about-section .about-content-wrap .section-title h2 {
    max-width: 590px;
    margin: 13px 0 25px;
    color: #143d2a;
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -0.045em;
}
#home-3 + .service-section + .counter-section + .about-section .about-content-wrap .section-title::before {
    content: "NOSSO COMPROMISSO";
    display: block;
    color: #347855;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.19em;
}
#home-3 + .service-section + .counter-section + .about-section .about-content-wrap .section-title::after {
    content: "";
    display: block;
    width: 54px;
    height: 3px;
    margin-top: -12px;
    border-radius: 3px;
    background: linear-gradient(90deg, #1c6642, #8fc29c);
}
#home-3 + .service-section + .counter-section + .about-section .about-content-wrap > p {
    max-width: 560px;
    margin-top: 30px;
    color: #65756b;
    font-size: 16px;
    line-height: 1.72;
}
@media (max-width: 767px) {
    .about-content-wrap {
        max-width: calc(100% - 0px);
        text-align: center;
    }
    #home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper {
        margin-top: 35px;
    }
    #home-3 + .service-section + .counter-section + .about-section .about-content-wrap {
        margin-left: 0;
    }
    #home-3 + .service-section + .counter-section + .about-section .about-content-wrap .section-title h2 {
        font-size: 34px;
        line-height: 1.2;
    }
    #home-3 + .service-section + .counter-section + .about-section .about-bg-wrapper img {
        min-height: 0;
    }
    #home-3 + .service-section + .counter-section + .about-section .services-diagram-wrapper {
        min-height: 330px;
    }
    .hr-services-orbit {
        min-height: 330px;
    }
    .hr-services-orbit::before {
        width: 190px;
        height: 190px;
    }
    .hr-services-orbit::after {
        width: 254px;
        height: 254px;
    }
    .orbit-node {
        width: 104px;
        min-height: 68px;
        padding: 10px 8px;
    }
    .orbit-node strong {
        font-size: 9px;
    }
    .orbit-center {
        width: 126px;
        height: 126px;
    }
}

.about-content-wrap .theme-btn, .about-content-wrap .bordered-btn {
    margin-top: 20px;
}

.about-img-wrapper {
    max-width: calc(100% - 50px);
}
.recruitment-photo-card {
    position: relative;
    isolation: isolate;
    padding: 12px 0 0 12px;
}
.recruitment-photo-card::before {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 88%;
    height: 91%;
    border: 1px solid rgba(21, 81, 46, 0.9);
    border-radius: 4px 35px 4px 4px;
    background: linear-gradient(135deg, #1b633d, #4c8c5d);
    content: "";
}
.recruitment-photo-card > img {
    display: block;
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    border-radius: 3px 26px 3px 3px;
    box-shadow: 0 18px 34px rgba(19, 76, 43, 0.18);
}
.recruitment-solution .col-xl-6,
.recruitment-solution .col-lg-6 {
    display: flex;
}
.recruitment-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: center;
}
.recruitment-content .section-title h2 {
    max-width: 520px;
    margin: 0;
    color: #183c29;
    font-family: "Poppins", sans-serif;
    font-size: clamp(38px, 3.4vw, 54px);
    font-weight: 650;
    line-height: 1.08;
    letter-spacing: -0.055em;
}
.recruitment-content .section-title h6 {
    max-width: 550px;
    margin: 24px 0 0 !important;
    color: #698072;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.recruitment-content > p {
    max-width: 510px;
    margin: 24px 0 0;
    color: #64746a;
    font-size: 16px;
    line-height: 1.75;
}
.recruitment-solution-cta {
    align-self: flex-start;
    margin-top: 28px;
}
.bpo-solution-row {
    align-items: center;
}
.bpo-solution-row .bpo-solution-photo-card {
    width: 100%;
    max-width: 100%;
}
.bpo-solution-row .bpo-solution-photo-card img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: center;
    border-radius: 4px 28px 4px 4px;
    box-shadow: 0 18px 34px rgba(19, 76, 43, 0.16);
}
@media (max-width: 767px) {
    .about-img-wrapper {
        max-width: calc(100% - 0px);
        text-align: center;
    }
    .recruitment-solution .col-xl-6,
    .recruitment-solution .col-lg-6 {
        display: block;
    }
    .recruitment-content {
        display: block;
    }
    .recruitment-content .section-title h2 {
        font-size: 36px;
        line-height: 1.12;
    }
}

.progress-bar-area {
    margin-top: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .about-content-wrapper {
        margin-top: 60px;
    }
}
@media (max-width: 767px) {
    .about-content-wrapper {
        margin-top: 60px;
    }
}

.about-author {
    position: relative;
    padding-left: 50px;
    display: inline-block;
    margin-top: 20px;
}
.about-author::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 35px;
    height: 2px;
    background: #ddd;
}
.about-author p {
    margin: 0;
}

.feature_wrap {
    position: relative;
    z-index: 1;
}
.feature_wrap:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #171717;
    opacity: 0.5;
}

.feature_item {
    display: flex;
    align-items: center;
    height: 400px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .feature_item {
        height: 300px;
    }
}
@media (max-width: 767px) {
    .feature_item {
        height: 200px;
    }
}
.feature_item h5 {
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 100px;
    font-weight: 600;
    text-transform: uppercase;
    margin-right: 60px;
    color: transparent;
    -webkit-text-stroke: 0.8px #FFFBFB;
    -webkit-text-stroke-width: 1px;
    letter-spacing: -2px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .feature_item h5 {
        font-size: 80px;
    }
}
@media (max-width: 767px) {
    .feature_item h5 {
        font-size: 40px;
    }
}

.slick-list {
    z-index: 1;
}

.project-section {
    position: relative;
}

.single-project-wrapper {
    display: block;
    min-height: 550px;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
@media (max-width: 767px) {
    .single-project-wrapper {
        margin-bottom: 60px;
    }
}

.project-info-inner {
    position: absolute;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform 0.5s linear;
    transition: -webkit-transform 0.5s linear;
    -o-transition: transform 0.5s linear;
    transition: transform 0.5s linear;
    transition: transform 0.5s linear, -webkit-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    -o-transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 35px 35px 0 35px;
}
.project-info-inner p {
    margin: 25px 0;
}
.project-info-inner h6 {
    color: #444;
    margin: 17px 0;
}

.portfolio-content {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40%;
    background-color: #fff;
    padding: 20px 10px;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform 0.5s linear;
    transition: -webkit-transform 0.5s linear;
    -o-transition: transform 0.5s linear;
    transition: transform 0.5s linear;
    transition: transform 0.5s linear, -webkit-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    -o-transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.single-project-wrapper:hover .project-info-inner {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: 0.15s;
    -o-transition-delay: 0.15s;
    transition-delay: 0.15s;
}

/* Portfolio # 03 */
.project-bg {
    background-image: url(../img/project/project-1-1.jpg);
}

.project-bg-2 {
    background-image: url(../img/project/project-1-2.jpg);
}

.project-bg-3 {
    background-image: url(../img/project/project-1-3.jpg);
}

.project-bg-4 {
    background-image: url(../img/project/project-1-4.jpg);
}

.project-bg-5 {
    background-image: url(../img/project/project-1-5.jpg);
}

.project-bg-6 {
    background-image: url(../img/project/project-1-6.jpg);
}

.single-project-item.bg-cover {
    height: 500px;
}

.single-project-item {
    position: relative;
    z-index: 1;
    border-bottom: 4px solid #333;
}

.single-project-item:after {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #222;
    opacity: 0.3;
    z-index: -1;
    content: "";
}

.single-project-item:hover {
    border-bottom: 4px solid #171717;
}

.project-inner .hover-info {
    position: absolute;
    left: 0;
    bottom: 20px;
    transform: translateY(50px);
    width: 100%;
    z-index: 2;
    padding: 35px 40px 35px 38px;
    max-width: 500px;
    transition: all ease 0.3s;
    transition-delay: 0.07s;
}

.single-project-item:hover .hover-info {
    opacity: 1;
    transform: translateY(0);
}

.project-inner:after {
    content: " ";
    width: 100%;
    height: 100%;
    background-color: #252531;
    display: block;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0px;
    transition: all ease 0.3s;
}

.single-project-item:hover .project-inner:after {
    opacity: 0.6;
}

.hover-info h4 {
    font-size: 24px;
    color: #fff;
    margin-bottom: 15px;
    transform: translateY(0px);
    transition: 0.3s;
}

.hover-info h4 span {
    display: block;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
    margin: 5px 0;
    opacity: 0;
    transform: translateY(-200px);
}

.hover-info a {
    color: #fff;
    font-size: 16px;
}

.project-inner .project-icon {
    position: absolute;
    right: 0;
    top: 0;
    opacity: 0;
    z-index: 2;
    transition: all ease 0.3s;
    font-size: 30px;
    cursor: pointer;
    background: #171717;
    color: #fff;
    padding: 15px;
    transform: translate3d(0, -100%, 0);
    transition: 0.3s;
}

.single-project-item:hover .project-icon {
    opacity: 1;
    transform: translate(0, 0);
}

.single-project-item:hover .hover-info h4 {
    color: #FFF;
    transform: translateY(20px);
}

.single-project-item:hover .hover-info h4 span {
    opacity: 1;
    transform: translateY(0);
}

.project-area .section-title {
    margin-bottom: 50px;
}

.project-slider-two .owl-nav button.owl-prev,
.project-slider-two .owl-nav button.owl-next {
    width: 50px;
    height: 50px;
    border: 2px solid;
    font-size: 20px;
    font-weight: 100;
    line-height: 16px;
    position: absolute;
    left: 15px;
    top: 50%;
    margin-top: -25px;
    color: #fff;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
}

.project-slider-two .owl-nav button.owl-next {
    left: auto;
    right: 15px;
}

.project-slider-two .owl-nav button.owl-prev:hover,
.project-slider-two .owl-nav button.owl-next:hover {
    background: #171717;
    color: #fff;
    border-color: #171717;
}

.project-details {
    max-width: calc(100% - 60px);
}
@media (max-width: 767px) {
    .project-details {
        max-width: calc(100% - 0px);
        text-align: justify;
    }
}

.project-info-wrap {
    margin-top: 80px;
}
@media (max-width: 767px) {
    .project-info-wrap {
        margin-top: 40px;
    }
}

.project-details h2 {
    margin-bottom: 20px;
}

.project-info h6 {
    font-size: 16px;
    text-transform: uppercase;
}

.project-details-img img {
    margin-bottom: 30px;
}

.project-details-wrapper .single-counter-box {
    text-align: left;
}

.project-details-wrapper .single-counter-box .counter-number span {
    font-size: 50px;
    font-weight: 500;
    line-height: 1.3;
}

.project-details-wrapper .single-counter-box p.counter-number {
    border-bottom: 1px solid #ddd;
}

.project-details-wrapper h3 {
    margin-bottom: 20px;
}

.single-counter-box {
    text-align: center;
    margin-bottom: 60px;
}
.single-counter-box .counter-number span {
    font-size: 70px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 1px;
    color: #171717;
}
@media (max-width: 767px) {
    .single-counter-box .counter-number span {
        font-size: 50px;
    }
}
.single-counter-box p.counter-number {
    font-size: 40px;
}
.single-counter-box h6 {
    font-size: 18px;
    font-weight: 500;
}

/* Layered glass treatment for the home metrics section. */
.home-counter-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 440px;
    padding: 0 !important;
    display: flex;
    align-items: center;
    background-color: #082f22;
    background-image:
        linear-gradient(90deg, rgba(4, 42, 28, 0.24) 0%, rgba(7, 62, 40, 0.08) 48%, rgba(4, 42, 28, 0.24) 100%),
        url("/site/img/conteudo/fundo-indicadores-rh.png");
    background-position: center;
    background-size: cover;
}
.home-counter-section::before,
.home-counter-section::after {
    content: "";
    position: absolute;
    z-index: 0;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(12px);
    opacity: 0.72;
    animation: home-counter-light 7s ease-in-out infinite alternate;
}
.home-counter-section::before {
    top: -180px;
    left: 8%;
    background: radial-gradient(circle, rgba(182, 238, 166, 0.28) 0%, rgba(93, 184, 116, 0.1) 34%, transparent 70%);
}
.home-counter-section::after {
    right: -90px;
    bottom: -190px;
    background: radial-gradient(circle, rgba(220, 248, 173, 0.3) 0%, rgba(88, 174, 106, 0.1) 35%, transparent 70%);
    animation-delay: -3.5s;
}
@keyframes home-counter-light {
    from { transform: translate3d(-20px, -8px, 0) scale(0.92); opacity: 0.42; }
    to { transform: translate3d(28px, 20px, 0) scale(1.12); opacity: 0.82; }
}
.home-counter-section .container {
    position: relative;
    z-index: 1;
    width: 100%;
}
.home-counter-section .single-counter-box {
    min-height: 150px;
    margin-bottom: 0;
    padding: 22px 18px;
    border: 0;
    border-radius: 0;
    background: radial-gradient(ellipse at center, rgba(211, 246, 220, 0.14) 0%, rgba(211, 246, 220, 0) 72%);
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: transform 0.3s ease, background 0.3s ease;
}
.home-counter-section .single-counter-box:hover {
    transform: translateY(-5px);
    background: radial-gradient(ellipse at center, rgba(211, 246, 220, 0.22) 0%, rgba(211, 246, 220, 0) 72%);
}
.home-counter-section .row > div {
    position: relative;
}
.home-counter-section .row > div:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 76px;
    transform: translateY(-50%);
    background: linear-gradient(to bottom, transparent, rgba(215, 246, 222, 0.48), transparent);
}
.home-counter-section .single-counter-box .counter-number {
    margin-bottom: 12px;
}
.home-counter-section .single-counter-box .counter-number span {
    font-size: 58px;
    font-weight: 500;
    letter-spacing: -0.035em;
    text-shadow: 0 3px 20px rgba(0, 0, 0, 0.2);
    font-variant-numeric: tabular-nums;
}
.home-counter-section .single-counter-box h6 {
    color: rgba(255, 255, 255, 0.88) !important;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.015em;
}
@media (max-width: 767px) {
    .home-counter-section {
        min-height: auto;
        padding: 58px 10px 40px !important;
        display: block;
    }
    .home-counter-section .single-counter-box {
        min-height: auto;
        margin-bottom: 18px;
    }
    .home-counter-section .row > div:not(:last-child)::after {
        display: none;
    }
    .home-counter-section .single-counter-box .counter-number span {
        font-size: 52px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .home-counter-section::before,
    .home-counter-section::after {
        animation: none;
    }
}
@media (max-width: 767px) {
    .single-counter-box h6 {
        font-size: 16px;
    }
}

.counter-wrapper-two {
    margin-top: 50px;
}
.counter-wrapper-two .counter-number span {
    font-size: 50px;
    font-weight: 600;
    line-height: 1;
}
.counter-wrapper-two h6 {
    font-size: 18px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .counter-wrapper-two h6 {
        font-size: 16px;
    }
}

.quote-icon {
    margin-bottom: 30px;
}

.testimonial-content p {
    font-size: 30px;
    line-height: 1.5;
}
@media (max-width: 767px) {
    .testimonial-content p {
        font-size: 24px;
    }
}

.testimonial-author {
    margin-top: 30px;
}
.testimonial-author img {
    width: 70px !important;
    height: 70px !important;
}
.testimonial-author h6 {
    color: #fff;
    font-size: 18px;
    margin-top: 30px;
}
.testimonial-author h6 span {
    display: block;
    opacity: 0.5;
    font-size: 90%;
    margin-top: 5px;
}

.testimonial-two .testimonial-author h6 {
    color: inherit;
    font-size: 18px;
    margin-top: 30px;
}

#testimonial-3 .single-testimonial-item {
    border: 1px solid #333;
    padding: 40px 35px;
}
#testimonial-3 .testimonial-rating i {
    font-size: 16px;
    color: #eee;
    margin-bottom: 25px;
}
#testimonial-3 .testimonial-content {
    margin-top: 20px;
}
#testimonial-3 .testimonial-content p {
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    color: #eee;
}
#testimonial-3 .testimonial-author {
    display: flex;
    align-items: center;
    margin-top: 50px;
}
#testimonial-3 .testimonial-thumb img {
    border-radius: 50%;
}
#testimonial-3 .testimonial-title {
    padding-left: 15px;
}
#testimonial-3 .testimonial-title h5 {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: #eee;
}
#testimonial-3 .testimonial-title p {
    font-size: 15px;
    font-weight: 400;
    line-height: 25px;
}
#testimonial-3 .testimonial-carousel .owl-stage-outer {
    margin: -15px;
    padding: 15px;
}
#testimonial-3 .testimonial-carousel .owl-dots button.owl-dot span {
    width: 17px;
    height: 8px;
    background: #333;
    margin-right: 10px;
    margin-top: 20px;
    transition: 0.3s;
}
#testimonial-3 .testimonial-carousel .owl-dots button.owl-dot.active span {
    width: 45px;
    height: 8px;
    background: #fff;
}
#testimonial-3 .testimonial-carousel .owl-dots {
    text-align: center;
    margin-top: 50px;
}

.single-testimonial-item img {
    width: inherit !important;
}

.contact-section {
    display: flex;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact-section {
        display: inherit;
    }
}
@media (max-width: 767px) {
    .contact-section {
        display: inherit;
    }
}

.contact-bg {
    width: 50%;
    height: auto;
    position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact-bg {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .contact-bg {
        width: 100%;
    }
}

.contact-form-wrap {
    width: 50%;
    padding: 80px 100px 60px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact-form-wrap {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .contact-form-wrap {
        width: 100%;
        padding: 25px;
    }
}
.contact-form-wrap h3 {
    font-size: 40px;
    line-height: 45px;
}
.contact-form-wrap input, .contact-form-wrap textarea {
    background: #fff;
    margin-bottom: 15px;
    border: none;
}
.contact-form-wrap input[type=submit] {
    background: #171717;
    color: #fff;
}

.contact-page .contact-form {
    border: 1px solid #eee;
    padding: 60px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact-page .contact-form {
        margin-top: 60px;
    }
}
@media (max-width: 767px) {
    .contact-page .contact-form {
        margin-top: 60px;
        padding: 30px;
    }
}
.contact-page .contact-form form {
    margin-top: 70px;
}
.contact-page .contact-form label {
    color: #171717;
    margin-bottom: 8px;
}
.contact-page .contact-form input, .contact-page .contact-form textarea {
    border-radius: 0;
    margin-bottom: 20px;
    border: 1px solid #eee;
    padding: 15px 20px;
}
.contact-page .contact-form textarea {
    height: 200px;
}
.contact-page .contact-form button[type=submit] {
    background: #171717 !important;
    border: 1px solid #171717;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.contact-page .contact-page.google-map iframe {
    width: 100%;
    height: 785px;
    filter: grayscale(1);
}

.single-contact-info {
    border: 1px solid #eee;
    text-align: center;
    padding: 60px 70px;
    margin-bottom: 30px;
}
.single-contact-info p {
    margin: 0;
}
.single-contact-info .contact-icon {
    height: 80px;
    width: 80px;
    background: #171717;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.single-blog {
    position: relative;
    margin-bottom: 120px;
}
.single-blog img {
    width: 100%;
}
.single-blog .blog-content {
    position: absolute;
    bottom: 0px;
    left: 20px;
    right: 20px;
    background: #fff;
    padding: 20px 40px;
    transform: translateY(50%);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    box-shadow: 0px 15px 30px rgba(0, 0, 0, 0.1);
}
.single-blog .blog-content span a {
    text-transform: uppercase;
    font-size: 14px;
    opacity: 0.5;
}
.single-blog .blog-content h3 a {
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
    margin: 10px 0;
}
.single-blog .blog-content .blog-date p {
    font-size: 14px;
    margin: 0;
}
.single-blog .blog-content a.read-more {
    position: absolute;
    bottom: 40px;
    opacity: 0;
    transform: translateY(50%);
    transition: all 0.4s ease-in-out;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #171717;
}
.single-blog:hover .blog-content span a {
    opacity: 0;
    transform: translateY(-200%);
}
.single-blog:hover .blog-content h3 a {
    transform: translateY(-22px);
}
.single-blog:hover .blog-date p {
    opacity: 0;
}
.single-blog:hover .blog-content a.read-more {
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

.single-blog-wrap {
    background: #fff;
    margin-bottom: 60px;
}
.single-blog-wrap span {
    border: 1px solid #eee;
    padding: 8px 12px;
    margin-bottom: 20px;
}
.single-blog-wrap .blog-content {
    padding: 35px;
    border: 1px solid #eee;
    border-top: none;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .single-blog-wrap .blog-content {
        padding: 25px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .single-blog-wrap .blog-content {
        padding: 25px;
    }
}
.single-blog-wrap h3 a {
    font-size: 24px;
    font-weight: 500;
    line-height: 34px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .single-blog-wrap h3 a {
        font-size: 20px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .single-blog-wrap h3 a {
        font-size: 20px;
    }
}
@media (max-width: 767px) {
    .single-blog-wrap h3 a {
        font-size: 18px;
    }
}
.single-blog-wrap .details-link {
    width: 50px;
    height: 50px;
    border: 1px solid #eee;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 30px;
    transform: rotate(-45deg);
    font-size: 22px;
}
.single-blog-wrap:hover h3 a {
    color: #171717;
}
.single-blog-wrap:hover .details-link {
    background: #171717;
    border-color: #171717;
    color: #fff;
}

.blog-page .pagination {
    margin-top: 30px;
    justify-content: center;
}

.blog-page .page-link {
    margin-right: 15px;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eee;
    border-color: #eee;
    color: #171717;
}

.blog-page .page-item:first-child .page-link {
    display: block;
    border: none;
    display: inline-flex;
}

.blog-page .active > .page-link, .page-link.active {
    border-radius: 0;
    margin-right: 15px;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #171717;
    border-color: #171717;
    color: #fff;
}

.blog-page .page-item:last-child .page-link {
    border-radius: 0;
}

.blog-meta-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}
.blog-meta-wrap .blog-meta p {
    font-size: 16px;
    font-weight: 500;
    margin: 0;
    margin-right: 15px;
}
@media (max-width: 767px) {
    .blog-meta-wrap .blog-meta p {
        font-size: 14px;
    }
}
.blog-meta-wrap .blog-meta p i {
    font-size: 18px;
    margin-right: 10px;
    color: #171717;
}

.blog-content-wrap {
    max-width: calc(100% - 15px);
}
@media (max-width: 767px) {
    .blog-content-wrap {
        max-width: calc(100% - 0px);
    }
}
.blog-content-wrap h2 {
    font-size: 36px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .blog-content-wrap h2 {
        font-size: 30px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-content-wrap h2 {
        font-size: 28px;
    }
}
@media (max-width: 767px) {
    .blog-content-wrap h2 {
        font-size: 24px;
    }
}
.blog-content-wrap p {
    margin: 30px 0;
    text-align: justify;
}
@media (max-width: 767px) {
    .blog-content-wrap p {
        font-size: 17px;
    }
}
.blog-content-wrap .social-icon i {
    font-size: 18px;
    color: #fff;
    margin-right: 10px;
    background: #171717;
    border-color: #171717;
    border-radius: 50%;
    padding: 10px;
}
.blog-content-wrap .social-icon i:hover {
    background: #fff;
    border-color: #fff;
    color: #171717;
}

.blog-quote-wrap {
    background: #eee;
    padding: 40px 50px;
    display: flex;
    align-items: start;
    justify-content: space-around;
    height: 250px;
    margin-bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .blog-quote-wrap {
        padding: 40px 35px;
    }
}
@media (max-width: 767px) {
    .blog-quote-wrap {
        flex-direction: column;
        padding: 30px;
        height: auto;
    }
}
.blog-quote-wrap .quote-icon {
    width: 100px;
}
.blog-quote-wrap .quote-icon i {
    font-size: 45px;
}
.blog-quote-wrap .blog-quote-text {
    padding-left: 50px;
}
@media (max-width: 767px) {
    .blog-quote-wrap .blog-quote-text {
        padding-left: 0;
    }
}
.blog-quote-wrap .blog-quote-text p {
    font-size: 17px;
    font-weight: 500;
    margin: 0;
}
@media (max-width: 767px) {
    .blog-quote-wrap .blog-quote-text p {
        margin-top: 20px;
        font-size: 17px;
    }
}
.blog-quote-wrap h6.blog-author {
    font-size: 18px;
    font-weight: 600;
    position: relative;
    padding-left: 80px;
    margin-top: 30px;
}
@media (max-width: 767px) {
    .blog-quote-wrap h6.blog-author {
        padding-left: 0px;
    }
}
.blog-quote-wrap h6.blog-author:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 60px;
    height: 2px;
    background: #061815;
    margin-top: -1px;
}
@media (max-width: 767px) {
    .blog-quote-wrap h6.blog-author:before {
        display: none;
    }
}
.blog-quote-wrap h6.blog-author span {
    font-weight: 400;
}
.blog-quote-wrap h2 {
    margin: 30px 0;
}

.blog-tag-wrap span {
    background: #fff;
    padding: 10px 16px;
    margin-left: 15px;
}

.pagination-wrap {
    padding: 35px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 60px;
}

.pagination-wrap a {
    font-size: 16px;
    color: #061815;
    display: flex;
    align-items: center;
}

.pagination-wrap a i {
    font-size: 25px;
    margin-right: 15px;
}

.single-comments-wrap {
    background: #eee;
    padding: 35px 25px;
    margin: 35px 0px;
    position: relative;
}
.single-comments-wrap .single-comments-inner {
    display: flex;
}
@media (max-width: 767px) {
    .single-comments-wrap .single-comments-inner {
        flex-direction: column;
    }
}
.single-comments-wrap .single-comments-inner .comments-autor-thumb {
    flex: 0 0 130px;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .single-comments-wrap .single-comments-inner .comments-autor-thumb {
        flex: 0 0 140px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .single-comments-wrap .single-comments-inner .comments-autor-thumb {
        flex: 0 0 140px;
    }
}
.single-comments-wrap .single-comments-inner .comments-content {
    padding-left: 25px;
}
@media (max-width: 767px) {
    .single-comments-wrap .single-comments-inner .comments-content {
        padding-left: 0;
        margin-top: 20px;
    }
}
.single-comments-wrap .single-comments-inner .comments-content h6 {
    font-size: 20px;
}
.single-comments-wrap .single-comments-inner .comments-content p.comments-date {
    font-size: 16px;
    color: #171717;
    font-weight: 500;
    text-decoration: underline;
    margin: 14px 0;
}
.single-comments-wrap a.reply-btn {
    background: #171717;
    color: #fff;
    padding: 6px 15px;
    position: absolute;
    top: 35px;
    right: 55px;
    font-size: 16px;
}
@media (max-width: 767px) {
    .single-comments-wrap a.reply-btn {
        right: 25px;
    }
}
.single-comments-wrap a.reply-btn:hover {
    background: #171717;
    color: #fff;
}

.comments-form-wrap {
    background: #fff;
    padding: 35px;
}
.comments-form-wrap h3 {
    margin: 0 0 30px;
}
.comments-form-wrap .comments-form input,
.comments-form-wrap .comments-form textarea {
    border: none;
    border-bottom: 1px solid #eee;
    margin-bottom: 30px;
}
.comments-form-wrap .comments-form textarea {
    height: 130px;
}

.blog-sidebar h5 {
    font-size: 24px;
    margin-bottom: 25px;
}

.search-bar-wrap {
    background: #eee;
    padding: 35px;
}
.search-bar-wrap input {
    border: none;
    background: #fff;
    padding: 15px;
    border-radius: 0;
}
.search-bar-wrap i {
    font-size: 18px;
    background: #171717;
    border: 0;
    padding: 15px;
    color: #fff;
    display: flex;
    align-items: center;
}
.search-bar-wrap i:hover {
    cursor: pointer;
}

.blog-category {
    background: #fff;
    margin: 30px 0;
    padding: 35px;
}

.blog-category ul li {
    display: block;
}

.blog-category ul li a {
    font-size: 17px;
    font-weight: 500;
    color: #061815;
    margin-bottom: 25px;
}
.blog-category ul li a:hover {
    color: #FFB966;
}

.blog-category ul li i {
    margin-right: 15px;
}

.recent-post-wrap {
    margin: 30px 0;
    background: #fff;
    padding: 35px;
}
@media (max-width: 767px) {
    .recent-post-wrap {
        padding: 30px;
    }
}

.single-recent-post {
    padding: 25px 0;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #eee;
}

.recent-post-thumbs {
    flex: 0 0 90px;
}

.recent-post-content {
    padding-left: 15px;
}
.recent-post-content p {
    color: #171717;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .recent-post-content p {
        margin: 0;
    }
}
@media (max-width: 767px) {
    .recent-post-content p {
        margin: 0;
        font-size: 16px;
    }
}
.recent-post-content a h6 {
    font-size: 18px;
    color: #061815;
}
@media (max-width: 767px) {
    .recent-post-content a h6 {
        font-size: 16px;
        line-height: 20px;
    }
}
.recent-post-content a h6:hover {
    color: #171717;
}

.popular-tag-wrap {
    background: #fff;
    margin: 30px 0;
    padding: 35px;
}
.popular-tag-wrap span {
    font-size: 16px;
    font-weight: 500;
    background: #eee;
    color: #061815;
    padding: 10px 15px;
    margin: 5px;
}
.popular-tag-wrap span:hover {
    background: #171717;
    color: #fff;
    cursor: pointer;
}

.question-wrap {
    background: #171717;
    padding: 35px;
}
.question-wrap h5 {
    color: #fff;
}
.question-wrap p {
    color: #fff;
    margin-bottom: 30px;
}
.question-wrap .contact-info {
    display: flex;
    align-items: center;
    color: #fff;
    margin: 15px 0;
}
.question-wrap .contact-info .contact-icon {
    margin: 0;
}
.question-wrap .contact-info h4 {
    padding-left: 25px;
}

.contact-area.bg-none:before {
    display: none;
}

.footer-area {
    background: #0c3b2e;
    color: #fff;
    position: relative;
}
.footer-area .logo {
    height: 90px;
    display: flex;
    align-items: center;
    padding-right: 30px;
    font-size: 30px;
    font-weight: 500;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 4px;
}
.footer-area h5 {
    font-size: 22px;
    font-weight: 500;
    color: #fff;
    margin: 20px 0;
}
.footer-area p {
    font-size: 16px;
    margin-top: 18px;
    color: #9BA2AD;
}
.footer-area ul li a {
    font-size: 16px;
    display: block;
    color: #9BA2AD;
    padding: 10px 0;
    position: relative;
}
@media (max-width: 767px) {
    .footer-area ul li a {
        padding: 6px 0;
    }
}
.footer-area ul li a:hover {
    opacity: 0.5;
}

.contact-info p {
    margin-bottom: 10px;
}

.subscribe-form {
    position: relative;
}
.subscribe-form button {
    padding: 18px 40px;
    font-size: 17px;
    line-height: 13px;
    background: #F35C27;
    color: #fff;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
    border: 0;
    cursor: pointer;
}
.subscribe-form input {
    border: 0;
    background: #fff;
}
.subscribe-form input::placeholder {
    color: #797A7E;
    font-size: 16px;
}

.footer-up {
    padding: 80px 0;
}
.footer-up .social-area i {
    color: #eee;
    font-size: 20px;
    margin-right: 10px;
}

.footer-bottom {
    font-size: 15px;
    font-weight: 400;
    padding: 20px 0;
    background: #171717;
}
.footer-bottom p {
    margin: 0;
    color: #fff;
    font-size: 15px;
}

/* Modern, layered footer treatment for the site. */
.site-footer {
    overflow: hidden;
    background-color: #082f22;
    background-image:
        linear-gradient(100deg, rgba(4, 38, 26, 0.96) 0%, rgba(8, 67, 43, 0.89) 54%, rgba(4, 38, 26, 0.82) 100%),
        radial-gradient(circle at 10% 0%, rgba(110, 183, 128, 0.24) 0%, rgba(110, 183, 128, 0) 30%),
        url("/site/img/conteudo/fundo-rodape-rh.jpg");
    background-position: center;
    background-size: cover;
}
.site-footer::before {
    content: "";
    position: absolute;
    width: 430px;
    height: 430px;
    right: -180px;
    bottom: -285px;
    border: 1px solid rgba(223, 245, 226, 0.15);
    border-radius: 50%;
    box-shadow: 0 0 0 55px rgba(223, 245, 226, 0.035), 0 0 0 110px rgba(223, 245, 226, 0.02);
}
.site-footer .footer-up {
    position: relative;
    z-index: 1;
    padding: 76px 0 62px;
}
.site-footer .footer-brand img {
    margin-bottom: 14px;
}
.site-footer .footer-brand p {
    max-width: 295px;
    margin-top: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.78;
    color: rgba(239, 249, 241, 0.82);
}
.site-footer .footer-rh-tech-link {
    position: relative;
    display: inline-flex;
    max-width: 100%;
    flex-direction: column;
    gap: 3px;
    margin-top: 21px;
    padding: 12px 43px 12px 14px;
    border: 1px solid rgba(241, 160, 91, 0.48);
    border-radius: 11px 20px 11px 20px;
    background: linear-gradient(105deg, rgba(228, 137, 65, 0.21), rgba(229, 247, 231, 0.07));
    box-shadow: inset 0 1px 0 rgba(255, 242, 224, 0.12);
    color: #fff;
    text-decoration: none;
    transition: border-color 0.22s ease, background 0.22s ease, transform 0.22s ease;
}
.site-footer .footer-rh-tech-link span {
    color: #f2b575;
    font-family: "Poppins", sans-serif;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.14em;
    line-height: 1.25;
    text-transform: uppercase;
}
.site-footer .footer-rh-tech-link strong {
    color: #f7fbf7;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 650;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.site-footer .footer-rh-tech-link i {
    position: absolute;
    top: 50%;
    right: 14px;
    color: #f4b270;
    font-size: 17px;
    transform: translateY(-50%);
    transition: transform 0.22s ease;
}
.site-footer .footer-rh-tech-link:hover {
    border-color: rgba(255, 196, 133, 0.84);
    background: linear-gradient(105deg, rgba(228, 137, 65, 0.34), rgba(229, 247, 231, 0.12));
    color: #fff;
    transform: translateY(-2px);
}
.site-footer .footer-rh-tech-link:hover i { transform: translate(3px, -50%); }
.site-footer .footer-column {
    position: relative;
}
.site-footer h5 {
    margin: 8px 0 19px;
    padding-bottom: 13px;
    border-bottom: 1px solid rgba(224, 245, 228, 0.16);
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 0.01em;
}
.site-footer h5::after {
    content: "";
    position: absolute;
    left: 0;
    top: 39px;
    width: 34px;
    height: 2px;
    border-radius: 2px;
    background: #93c9a1;
}
.site-footer p,
.site-footer ul li a {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    color: rgba(235, 247, 238, 0.82);
}
.site-footer ul li a {
    width: max-content;
    padding: 7px 0;
    transition: color 0.25s ease, transform 0.25s ease;
}
.site-footer ul li a:hover {
    opacity: 1;
    color: #fff;
    transform: translateX(5px);
}
.site-footer .footer-links-list > li { display: block; }
.site-footer .footer-solutions-item { padding: 4px 0; }
.site-footer .footer-solutions-toggle {
    display: inline-flex;
    align-items: center;
    padding: 5px 0;
    border: 0;
    border-bottom: 1px solid transparent;
    background: transparent;
    color: rgba(235, 247, 238, 0.82);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    transition: color .2s ease, border-color .2s ease;
}
.site-footer .footer-solutions-toggle:hover,
.site-footer .footer-solutions-toggle[aria-expanded="true"] {
    border-color: #f1a05b;
    color: #ffd3ad;
}
.site-footer .footer-solutions-menu {
    display: grid;
    gap: 6px;
    width: min(300px, calc(100vw - 36px));
    margin: 10px 0 8px;
    padding: 9px;
    border: 1px solid rgba(209, 239, 215, .2);
    border-radius: 14px;
    background: rgba(5, 35, 24, .42);
    box-shadow: inset 0 1px 0 rgba(241, 255, 243, .08);
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
}
.site-footer .footer-solutions-menu[hidden] { display: none; }
.site-footer .footer-solutions-menu li a {
    display: flex;
    align-items: center;
    gap: 7px;
    width: 100%;
    min-height: 36px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: rgba(225, 247, 229, .06);
    color: rgba(237, 250, 240, .88);
    font-size: 12px;
    line-height: 1.45;
    white-space: nowrap;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.site-footer .footer-solutions-menu li a:hover {
    border-color: rgba(242, 160, 91, .45);
    background: rgba(242, 160, 91, .14);
    transform: translateX(2px);
}
.site-footer .footer-solutions-menu li a i { margin-left: auto; color: #f3a15a; font-size: 13px; transition: transform .2s ease; }
.site-footer .footer-solutions-menu li a:hover i { transform: translateX(3px); }
.site-footer .company-email a,
.site-footer .phone-number a {
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
.site-footer .company-email a {
    display: inline-block;
    margin-top: 16px;
    border-bottom: 1px solid rgba(147, 201, 161, 0.8);
}
.site-footer .phone-number p {
    margin-top: 14px;
}
.site-footer .footer-whatsapp-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
    color: #f7a464;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}
.site-footer .footer-whatsapp-link i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border: 1px solid rgba(247, 164, 100, 0.72);
    border-radius: 50%;
    color: #f7a464;
    font-size: 16px;
}
.site-footer .footer-whatsapp-link:hover {
    color: #ffbd82;
    transform: translateX(3px);
}
.site-footer .social-area a {
    display: flex;
    align-items: center;
    gap: 10px;
    width: max-content;
    padding: 7px 0;
    font-family: "Poppins", sans-serif;
}
.site-footer .social-area i {
    width: 28px;
    height: 28px;
    margin: 0;
    border: 1px solid rgba(224, 245, 228, 0.2);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #dff1e3;
    font-size: 15px;
    transition: background 0.25s ease, border-color 0.25s ease;
}
.site-footer .social-area a:hover i {
    border-color: #96cfa5;
    background: rgba(151, 207, 165, 0.18);
}
.footer-bottom {
    border-top: 1px solid rgba(227, 244, 231, 0.1);
    background: linear-gradient(90deg, #061f17, #092b20);
}
.footer-bottom p {
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: rgba(238, 249, 240, 0.87);
}
@media (max-width: 991px) {
    .site-footer .footer-column {
        margin-top: 38px;
    }
}
@media (max-width: 767px) {
    .site-footer .footer-up {
        padding: 58px 0 45px;
    }
    .site-footer .footer-column {
        margin-top: 32px;
    }
    .footer-bottom p,
    p.privacy {
        text-align: center;
    }
    .footer-bottom .privacy {
        margin-top: 8px;
    }
}

p.privacy {
    text-align: right;
}

.company-email a {
    color: #f6f6f6;
    font-size: 16px;
    font-weight: 400;
    text-decoration: underline;
    margin-top: 10px;
}
.company-email a:hover {
    color: #fff;
}

.phone-number p {
    font-size: 16px;
    color: #fff;
}

.phone-number a {
    font-size: 16px;
    color: #fff;
}

ul.port-menu {
    list-style: none;
    padding: 0;
    margin-right: 10px;
}
@media only screen and (min-width: 540px) and (max-width: 767px) {
    ul.port-menu {
        float: left;
    }
}
@media (max-width: 767px) {
    ul.port-menu {
        float: left;
    }
}
ul.port-menu.recent {
    float: none;
}

ul.port-menu li {
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    padding: 20px;
    color: #444;
    cursor: pointer;
}
@media only screen and (min-width: 540px) and (max-width: 767px) {
    ul.port-menu li {
        padding: 10px;
    }
}
@media (max-width: 767px) {
    ul.port-menu li {
        padding: 10px;
    }
}
ul.port-menu li:hover {
    color: #171717;
}

.portfolio-list {
    overflow: hidden;
    margin-left: -1%;
    margin-top: 20px;
}

.single-portfolio-item {
    float: left;
    width: 31.5%;
    height: auto;
    background-size: cover;
    background-position: center;
    background-color: #eee;
    position: relative;
    margin-left: 1%;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
    transition: 0.3s;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .single-portfolio-item {
        width: 46%;
    }
}
@media only screen and (min-width: 540px) and (max-width: 767px) {
    .single-portfolio-item {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .single-portfolio-item {
        width: 100%;
        margin-bottom: 30px;
    }
}
.single-portfolio-item .portfolio-details {
    position: absolute;
    bottom: 20px;
    left: 20px;
    transform: translateY(50px);
    transition: all ease 0.3s;
    opacity: 0;
    visibility: hidden;
}
.single-portfolio-item .portfolio-details span {
    background: #fff;
    padding: 10px;
    border-radius: 0;
    font-size: 14px;
}
.single-portfolio-item .portfolio-details h5 {
    background: #fff;
    display: block;
    padding: 10px 20px;
    margin: 10px 0;
}
.single-portfolio-item:hover .portfolio-details {
    transform: translateY(0);
    visibility: visible;
    opacity: 1;
}

.portfolio-title h3 {
    font-size: 40px;
    margin-top: 20px;
}

.portfolio-title h6 {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 3px;
    color: #8b8b8b;
    margin-top: 10px;
}

.single-portfolio-wrapper {
    margin-bottom: 60px;
}

.team-info h5 {
    font-size: 24px;
    margin-top: 15px;
}

.team-info p {
    font-size: 16px;
    margin: 0;
}

.social-icon {
    font-size: 18px;
}

.social-icon a i {
    font-size: 18px;
    margin-right: 10px;
    color: #777;
    margin-top: 5px;
}

.social-icon span {
    margin-right: 10px;
    color: #878787;
    margin-top: 5px;
}

.single-team-item {
    margin-bottom: 60px;
}

.cta-area {
    position: relative;
    z-index: 1;
    height: 500px;
}
.cta-area h2 {
    font-size: 80px;
    font-weight: 500;
    line-height: 90px;
}
.contact-cta {
    min-height: 470px;
    height: auto;
    overflow: hidden;
    background-position: center;
}
.contact-cta .overlay {
    z-index: 1;
    opacity: 1;
    background:
        radial-gradient(circle at 82% 24%, rgba(126, 183, 106, .3), transparent 28%),
        linear-gradient(90deg, rgba(5, 36, 22, .97) 0%, rgba(10, 65, 38, .92) 49%, rgba(14, 75, 45, .76) 100%);
}
.contact-cta::before {
    z-index: 1;
    position: absolute;
    top: -120px;
    right: -70px;
    width: 390px;
    height: 390px;
    border: 1px solid rgba(202, 234, 192, .2);
    border-radius: 50%;
    box-shadow: 0 0 0 42px rgba(202, 234, 192, .055), 0 0 0 84px rgba(202, 234, 192, .03);
    content: "";
    pointer-events: none;
}
.contact-cta .container { position: relative; z-index: 2; }
.contact-cta-content {
    max-width: 850px;
    margin: 0 auto 28px;
}
.contact-cta-content > span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: #cbeebf;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .19em;
}
.contact-cta-content > span::before,
.contact-cta-content > span::after {
    width: 25px;
    height: 1px;
    background: #f29a45;
    content: "";
}
.contact-cta .contact-cta-content h2 {
    margin: 0;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(37px, 4.2vw, 61px);
    font-weight: 650;
    line-height: 1.08;
    letter-spacing: -.055em;
}
.contact-cta .contact-cta-content p {
    max-width: 720px;
    margin: 20px auto 0;
    color: rgba(239, 250, 239, .88);
    font-size: 18px;
    line-height: 1.58;
}
.contact-cta .contact-cta-button {
    padding: 17px 28px;
    border: 1px solid rgba(255, 211, 174, .72);
    background: linear-gradient(135deg, #f29a45, #df702d);
    box-shadow: 0 15px 28px rgba(4, 31, 18, .3);
}
.contact-cta .contact-cta-button:hover {
    border-color: #fff0e4;
    background: linear-gradient(135deg, #f7ae68, #e87b38);
    transform: translateY(-3px);
}
@media (max-width: 767px) {
    .contact-cta { min-height: 430px; padding: 68px 0; }
    .contact-cta .contact-cta-content h2 { font-size: 36px; line-height: 1.13; }
    .contact-cta .contact-cta-content p { font-size: 16px; }
}
@media (max-width: 767px) {
    .cta-area h2 {
        font-size: 45px;
        line-height: 50px;
    }
}

.single-client {
    display: flex;
    align-items: center;
    justify-content: space-around;
    width: 215px;
    margin-left: 30px;
}
.single-client img {
    max-width: inherit;
    opacity: 0.5;
}

.client-area .owl-dots {
    display: none;
}

.breadcrumb-area {

}

.breadcrumb-area {
    height: 480px;
    background-size: cover;
    background-position: center bottom;
    background-color: #ddd;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
}
.breadcrumb-area .breadcrumb-title {
    position: relative;
    z-index: 999;
}
.breadcrumb-area .breadcrumb-title h1 {
    font-size: 65px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #fff;
    margin: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .breadcrumb-area .breadcrumb-title h1 {
        font-size: 50px;
    }
}
@media only screen and (min-width: 540px) and (max-width: 767px) {
    .breadcrumb-area .breadcrumb-title h1 {
        font-size: 40px;
    }
}
@media (max-width: 767px) {
    .breadcrumb-area .breadcrumb-title h1 {
        font-size: 40px;
    }
}

.service-bg {
    background-image: url(../img/breadcrumb/service.jpg);
}

.contact-bread-bg {
    background-image: url(../img/breadcrumb/contact-bg.jpg);
}

.faq-bg {
    background-image: url(../img/breadcrumb/faq.jpg);
    background-position: center;
}

/* Contact page: dedicated carousel and an easier-to-scan contact form. */
.contact-hero {
    position: relative;
    min-height: 640px;
    overflow: hidden;
    background-color: #123523;
    background-position: center;
    background-size: cover;
    color: #fff;
}
.contact-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(7, 39, 24, .96) 0%, rgba(13, 58, 36, .83) 38%, rgba(14, 56, 35, .23) 72%, rgba(13, 43, 28, .07) 100%);
}
.contact-hero .container {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 640px;
}
.contact-hero-content {
    max-width: 640px;
    padding-top: 76px;
}
.contact-hero-content > span,
.contact-eyebrow,
.contact-form-heading > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #c3ebb5;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
}
.contact-hero-content > span::before,
.contact-eyebrow::before {
    width: 31px;
    height: 1px;
    background: currentColor;
    content: "";
}
.contact-hero h1 {
    max-width: 620px;
    margin: 18px 0;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(44px, 5vw, 76px);
    font-weight: 650;
    line-height: 1.05;
    letter-spacing: -.06em;
}
.contact-hero p {
    max-width: 540px;
    margin: 0 0 29px;
    color: rgba(241, 250, 242, .84);
    font-size: 17px;
    line-height: 1.68;
}
.contact-hero-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 15px 20px;
    border: 1px solid rgba(225, 248, 227, .45);
    border-radius: 9px;
    background: rgba(255, 255, 255, .12);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
.contact-hero-link:hover {
    border-color: #f4a25e;
    background: #df702d;
    color: #fff;
    transform: translateY(-3px);
}
.contact-hero-slides .owl-nav button.owl-prev,
.contact-hero-slides .owl-nav button.owl-next {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 0 12px 12px 0;
    background: rgba(10, 50, 31, .34);
    color: #fff;
    font-size: 24px;
    transform: translateY(-50%);
    transition: background .2s ease;
}
.contact-hero-slides .owl-nav button.owl-prev { left: 0; }
.contact-hero-slides .owl-nav button.owl-next { right: 0; border-radius: 12px 0 0 12px; }
.contact-hero-slides .owl-nav button:hover { background: #df702d; }
.contact-hero-slides .owl-dots {
    position: absolute;
    right: 7.5%;
    bottom: 32px;
    z-index: 2;
}
.contact-hero-slides .owl-dot {
    width: 24px;
    height: 3px;
    margin-left: 7px;
    border: 0;
    border-radius: 99px;
    background: rgba(255, 255, 255, .42);
}
.contact-hero-slides .owl-dot.active { background: #f18a43; }
.contact-page-modern {
    position: relative;
    overflow: hidden;
    padding-bottom: 65px;
    background: linear-gradient(180deg, #fff 0%, #f7fbf8 100%);
}
.contact-page-modern::before {
    position: absolute;
    top: -120px;
    right: -100px;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(55, 112, 68, .13);
    border-radius: 50%;
    box-shadow: 0 0 0 42px rgba(55, 112, 68, .035), 0 0 0 84px rgba(55, 112, 68, .02);
    content: "";
}
.contact-page-modern .container { position: relative; z-index: 1; }
.contact-layout {
    display: grid;
    grid-template-columns: minmax(270px, .75fr) minmax(0, 1.25fr);
    gap: 70px;
    align-items: start;
}
.contact-intro { padding: 45px 0 0; }
.contact-intro h2 {
    margin: 16px 0 18px;
    color: #173b28;
    font-family: "Poppins", sans-serif;
    font-size: clamp(32px, 3vw, 48px);
    font-weight: 650;
    line-height: 1.1;
    letter-spacing: -.05em;
}
.contact-intro > p {
    margin: 0;
    color: #66796c;
    font-size: 16px;
    line-height: 1.72;
}
.contact-direct-links {
    display: grid;
    gap: 12px;
    margin-top: 32px;
}
.contact-direct-links a {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    border: 1px solid #dbeade;
    border-radius: 12px;
    background: rgba(255, 255, 255, .7);
    color: #456c51;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.contact-direct-links a:hover {
    border-color: #86ba91;
    box-shadow: 0 10px 22px rgba(27, 81, 43, .1);
    color: #2c723f;
    transform: translateX(4px);
}
.contact-direct-links i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: #e6f2e8;
    color: #397e4a;
    font-size: 21px;
}
.contact-direct-links span { display: flex; flex-direction: column; font-size: 13px; }
.contact-direct-links strong { color: #244732; font-family: "Poppins", sans-serif; font-size: 13px; }
.contact-page-modern .contact-form {
    padding: 42px;
    border: 1px solid #dbe9de;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 22px 48px rgba(28, 77, 43, .09);
}
.contact-form-heading h3 {
    margin: 10px 0 5px;
    color: #1c3d29;
    font-family: "Poppins", sans-serif;
    font-size: 31px;
    font-weight: 650;
    letter-spacing: -.04em;
}
.contact-form-heading p { margin: 0; color: #7a8d7e; font-size: 13px; }
.contact-page-modern .contact-form form { margin-top: 30px; }
.contact-page-modern .contact-form label {
    margin: 0 0 8px;
    color: #31513c;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
}
.contact-field {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 21px;
    border: 1px solid #dbe8dd;
    border-radius: 10px;
    background: #fbfdfb;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.contact-field:focus-within {
    border-color: #6da17a;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(74, 141, 89, .11);
}
.contact-field > i {
    width: 45px;
    flex: 0 0 45px;
    color: #5c9568;
    font-size: 19px;
    text-align: center;
}
.contact-page-modern .contact-form input,
.contact-page-modern .contact-form select,
.contact-page-modern .contact-form textarea {
    width: 100%;
    margin: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #274634;
    font-size: 14px;
}
.contact-page-modern .contact-form input,
.contact-page-modern .contact-form select { height: 55px; padding: 0 17px 0 0; }
.contact-page-modern .contact-form select {
    cursor: pointer;
    appearance: auto;
    -webkit-appearance: auto;
}
.contact-field-message { align-items: flex-start; }
.contact-field-message > i { padding-top: 17px; }
.contact-page-modern .contact-form textarea { min-height: 136px; padding: 16px 17px 16px 0; resize: vertical; }
.contact-form-status { min-height: 21px; margin: -4px 0 8px; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 600; }
.contact-form-status span { display: none; }
#msg-processando { color: #557787; }
#msg-erro { color: #b4473f; }
#msg-sucesso { color: #2d7a43; }
.contact-submit-row { display: flex; align-items: center; gap: 17px; }
.contact-submit-row .theme-btn { padding: 15px 21px; }
.contact-submit-row small { color: #809183; font-size: 11px; line-height: 1.45; }
.contact-info-modern { padding-top: 10px; background: #f7fbf8; }
.contact-info-modern .single-contact-info {
    position: relative;
    overflow: hidden;
    min-height: 205px;
    margin-bottom: 25px;
    padding: 30px 29px;
    border: 1px solid #dceade;
    border-radius: 20px;
    background: linear-gradient(145deg, #fff 0%, #fbfdfb 100%);
    text-align: left;
    box-shadow: 0 15px 30px rgba(29, 75, 42, .055);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.contact-info-modern .single-contact-info::after {
    position: absolute;
    right: -45px;
    bottom: -64px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(239, 151, 70, .15), rgba(239, 151, 70, 0) 69%);
    content: "";
    pointer-events: none;
    transition: transform .3s ease;
}
.contact-info-modern .single-contact-info:hover {
    transform: translateY(-6px);
    border-color: #b8d7be;
    box-shadow: 0 22px 42px rgba(29, 75, 42, .12);
}
.contact-info-modern .single-contact-info:hover::after { transform: scale(1.22); }
.contact-info-modern .contact-info-label {
    display: flex;
    align-items: center;
    gap: 12px;
}
.contact-info-modern .contact-icon {
    width: 45px;
    height: 45px;
    margin: 0;
    border: 1px solid #d7eadb;
    border-radius: 14px;
    background: linear-gradient(145deg, #f0f8f1, #dcefe0);
    color: #2d7943;
    font-size: 23px;
    transition: background .25s ease, color .25s ease, transform .25s ease;
}
.contact-info-modern .contact-card-location .contact-icon {
    border-color: #b8dce4;
    background: linear-gradient(145deg, #eef9fb, #d9eff3);
    color: #16839a;
}
.contact-info-modern .contact-card-email .contact-icon {
    border-color: #f4d2ae;
    background: linear-gradient(145deg, #fff5eb, #fde3c6);
    color: #d9762d;
}
.contact-info-modern .contact-card-whatsapp .contact-icon {
    border-color: #bde5ca;
    background: linear-gradient(145deg, #effbf2, #d9f3e1);
    color: #259e54;
}
.contact-info-modern .contact-card-location:hover .contact-icon {
    background: #16839a;
    border-color: #16839a;
    color: #fff;
}
.contact-info-modern .contact-card-email:hover .contact-icon {
    background: #d9762d;
    border-color: #d9762d;
    color: #fff;
}
.contact-info-modern .contact-card-whatsapp:hover .contact-icon {
    background: #259e54;
    border-color: #259e54;
    color: #fff;
}
.contact-info-modern .single-contact-info:hover .contact-icon { transform: rotate(-6deg) scale(1.06); background: linear-gradient(145deg, #ec9d55, #df742f); border-color: #eb9a50; color: #fff; }
.contact-info-modern .contact-card-location:hover .contact-icon,
.contact-info-modern .contact-card-email:hover .contact-icon,
.contact-info-modern .contact-card-whatsapp:hover .contact-icon { background-image: none; }
.contact-info-modern .contact-card-location:hover .contact-icon { background-color: #16839a; }
.contact-info-modern .contact-card-email:hover .contact-icon { background-color: #d9762d; }
.contact-info-modern .contact-card-whatsapp:hover .contact-icon { background-color: #259e54; }
.contact-info-modern .contact-info-label > span { color: #477f55; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; }
.contact-info-modern .single-contact-info p { position: relative; z-index: 1; max-width: 300px; margin: 25px 0 0; color: #496653; font-size: 15px; line-height: 1.58; }
.contact-info-modern .single-contact-info a { display: inline-flex; align-items: center; min-height: 28px; color: #235f3a; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 700; transition: color .2s ease; }
.contact-info-modern .single-contact-info a:hover { color: #df702d; }
@media (max-width: 991px) {
    .contact-layout { grid-template-columns: 1fr; gap: 34px; }
    .contact-intro { padding-top: 0; }
}
@media (max-width: 767px) {
    .contact-hero, .contact-hero .container { min-height: 590px; }
    .contact-hero-content { padding-top: 78px; }
    .contact-hero h1 { font-size: 44px; }
    .contact-hero p { font-size: 15px; }
    .contact-hero-slides .owl-nav { display: none; }
    .contact-page-modern .contact-form { padding: 29px 22px; }
    .contact-submit-row { display: block; }
    .contact-submit-row small { display: block; margin-top: 13px; }
}

.price-bg {
    background-image: url(../img/breadcrumb/price.jpg);
    background-position: center;
}

.port-standard {
    background-image: url(../img/breadcrumb/portfolio-standard.jpg);
    background-position: center;
}

.port-gallery {
    background-image: url(../img/breadcrumb/portfolio-gallery.jpg);
    background-position: center;
}

.port-slider {
    background-image: url(../img/breadcrumb/portfolio-slider.jpg);
    background-position: center;
}

.breadcrumb-area.port-list-layout .breadcrumb-title h1 {
    font-size: 55px;
}
@media (max-width: 767px) {
    .breadcrumb-area.port-list-layout .breadcrumb-title h1 {
        font-size: 40px;
    }
}

.port-details {
    background-image: url(../img/breadcrumb/portfolio-slider.jpg);
    background-position: center;
}

.cp-custom-accordion .accordion-items {
    margin-bottom: 20px;
}

.cp-custom-accordion .accordion-buttons {
    position: relative;
    width: 100%;
    padding: 30px 0px 30px 30px;
    background-color: #fff;
    text-align: left;
    font-weight: 400;
    font-size: 24px;
    color: #171717;
    border: none;
    border-bottom: 1px solid #eee;
}

.cp-custom-accordion .accordion-buttons span {
    font-size: 15px;
    margin-right: 15px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .cp-custom-accordion .accordion-buttons {
        padding: 25px 28px;
        padding-left: 60px;
        font-size: 16px;
    }
}
@media (max-width: 767px) {
    .cp-custom-accordion .accordion-buttons {
        padding-right: 50px;
        font-size: 15px;
        line-height: 25px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .cp-custom-accordion .accordion-buttons {
        font-size: 15px;
    }
}
.cp-custom-accordion .accordion-buttons::after {
    position: absolute;
    content: "\f061";
    font-family: "Line Awesome Free";
    top: 35%;
    transform: rotate(-90deg);
    right: 30px;
    font-size: 24px;
    font-weight: 500;
    opacity: 1;
    color: #333;
}

@media (max-width: 767px) {
    .cp-custom-accordion .accordion-buttons::after {
        top: 35px;
        right: 25px;
        font-size: 16px;
    }
}
.cp-custom-accordion .accordion-buttons.collapsed::after {
    content: "\f061";
    transform: rotate(90deg);
}

.cp-custom-accordion .collapsed {
    position: relative;
    z-index: 99;
}

.cp-custom-accordion .accordion-body {
    background-color: #fff;
    color: #878787;
    padding: 20px 0;
    padding-left: 30px;
    position: relative;
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    z-index: 1;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .cp-custom-accordion .accordion-body {
        font-size: 14px;
        padding-right: 25px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .cp-custom-accordion .accordion-body {
        font-size: 14px;
        padding-right: 30px;
        padding-bottom: 50px;
    }
}
@media (max-width: 767px) {
    .cp-custom-accordion .accordion-body {
        font-size: 13px;
        padding-right: 30px;
        padding-left: 30px;
    }
}
.single-price-item {
    background: #fff;
    text-align: center;
    padding: 30px 50px;
    margin-top: 50px;
    border: 5px solid #eee;
    transition: 0.3s;
}
.single-price-item h5 {
    font-size: 30px;
    font-weight: 400;
    position: relative;
    margin: 20px 0;
}
.single-price-item h5:before {
    position: absolute;
    content: "";
    width: 54px;
    height: 2px;
    bottom: -10px;
    left: 0;
    right: 0;
    background: #171717;
    margin: 0 auto;
}
.single-price-item p {
    margin: 40px 0px;
}
.single-price-item .bordered-btn {
    color: #333;
    border-color: #333;
}

.price-box {
    margin-top: 60px;
}
.price-box h3 span {
    font-size: 16px;
}

.price-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.price-list ul li {
    display: block;
    margin: 20px 0;
    color: #878787;
    font-size: 16px;
    position: relative;
    padding-left: 20px;
    transition: 0.3s;
}

.contato-bread-bg {
    background: linear-gradient(rgba(0, 255, 0, 0.2), rgba(0, 255, 0, 0.2)),
        url(../img/conteudo/30.jpg) center/cover no-repeat;
}

.sobre-bread-bg {
    background: linear-gradient(rgba(0, 255, 0, 0.2), rgba(0, 255, 0, 0.2)),
        url(../img/conteudo/33.jpg) center/cover no-repeat;
}
.about-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 620px;
    overflow: hidden;
    background-position: center;
    background-size: cover;
}
.about-hero::before {
    position: absolute;
    z-index: 0;
    inset: 0;
    background:
        radial-gradient(circle at 22% 52%, rgba(126, 177, 116, .22) 0, rgba(126, 177, 116, 0) 31%),
        linear-gradient(90deg, rgba(5, 31, 19, .92) 0%, rgba(10, 51, 31, .83) 27%, rgba(16, 67, 42, .57) 47%, rgba(13, 50, 33, .22) 68%, rgba(7, 31, 21, .06) 100%);
    content: "";
}
.about-hero::after {
    position: absolute;
    z-index: 0;
    inset: 0 auto 0 0;
    width: min(52%, 880px);
    background-image:
        radial-gradient(circle, rgba(202, 229, 182, .24) 1px, transparent 1.5px),
        linear-gradient(90deg, rgba(239, 155, 82, .6), rgba(239, 155, 82, 0) 43%);
    background-position: 26px 32px, 0 calc(100% - 64px);
    background-size: 24px 24px, 100% 1px;
    background-repeat: repeat, no-repeat;
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, .84), transparent 92%);
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, .84), transparent 92%);
    pointer-events: none;
    content: "";
}
.about-hero .container { position: relative; z-index: 1; }
.about-hero-content { max-width: 620px; padding-top: 82px; }
.about-hero-content > span { display: inline-flex; align-items: center; gap: 11px; margin-bottom: 20px; color: #f2b071; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .18em; }
.about-hero-content > span::before { width: 35px; height: 1px; background: #ef9b52; content: ""; }
.about-hero-content h1 { margin: 0 0 20px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(46px, 5vw, 74px); font-weight: 650; line-height: 1.04; letter-spacing: -.055em; }
.about-hero-content p { max-width: 510px; margin: 0; color: rgba(244, 253, 246, .9); font-size: 17px; line-height: 1.65; }
.about-slides .owl-nav button.owl-prev, .about-slides .owl-nav button.owl-next { position: absolute; z-index: 2; top: 50%; width: 58px; height: 58px; border: 1px solid rgba(234, 253, 237, .42); background: rgba(12, 59, 39, .32); color: #fff; font-size: 22px; transform: translateY(-50%); transition: background .25s ease; }
.about-slides .owl-nav button.owl-prev { left: 0; border-left: 0; border-radius: 0 12px 12px 0; }
.about-slides .owl-nav button.owl-next { right: 0; border-right: 0; border-radius: 12px 0 0 12px; }
.about-slides .owl-nav button:hover { background: #de8038; }
@media (max-width: 767px) {
    .about-hero { min-height: 520px; }
    .about-hero-content { max-width: 430px; padding-top: 68px; }
    .about-hero-content h1 { font-size: 43px; }
    .about-hero-content p { font-size: 15px; }
    .about-slides .owl-nav { display: none; }
}

.about-history-section {
    position: relative;
    overflow: hidden;
    padding: 58px 0 96px;
    background: radial-gradient(circle at 4% 44%, rgba(207, 232, 211, .52), transparent 22%), linear-gradient(180deg, #fff 0%, #f8fbf8 100%);
}
.about-history-section::after {
    position: absolute;
    top: 104px;
    right: -154px;
    width: 370px;
    height: 370px;
    border: 1px solid rgba(47, 106, 72, .1);
    border-radius: 50%;
    box-shadow: 0 0 0 32px rgba(47, 106, 72, .035), 0 0 0 64px rgba(47, 106, 72, .02);
    content: "";
    pointer-events: none;
}
.about-history-section .container { position: relative; z-index: 1; }
.about-history-section .row { align-items: center !important; }
.about-history-section .about-content-wrap { max-width: 610px; margin: 0; padding-right: 36px; }
.about-history-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: #c96f31;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
}
.about-history-eyebrow::before { width: 34px; height: 1px; background: #d98444; content: ""; }
.about-history-section .section-title h2 {
    max-width: 590px;
    margin: 18px 0 27px;
    color: #173e2b;
    font-family: "Poppins", sans-serif;
    font-size: clamp(42px, 4.15vw, 62px);
    font-weight: 650;
    line-height: 1.06;
    letter-spacing: -.052em;
}
.about-history-section .about-history-copy p {
    max-width: 560px;
    margin: 0 0 18px;
    color: #607267;
    font-family: "Poppins", sans-serif;
    font-size: 15.5px;
    line-height: 1.82;
    text-align: justify !important;
    text-justify: inter-word;
    hyphens: auto;
}
.about-history-section .about-history-copy p:last-child { margin-bottom: 0; }
.about-history-layout {
    max-width: 900px;
    margin: 0 auto;
}
.about-history-visual-eyebrow { margin: 0 0 12px; }
.about-history-title h2 { margin: 0 0 24px !important; }
.about-history-layout .about-content-wrap {
    max-width: none;
    margin: 34px 0 0;
    padding: 0;
}
.about-history-layout .section-title h2 { max-width: none; }
.about-history-layout .about-history-copy {
    max-width: 900px;
}
.about-history-layout .about-history-copy p {
    max-width: none;
    font-size: 16px;
    line-height: 1.85;
}
.about-history-visual {
    position: relative;
    max-width: 472px;
    margin-left: auto;
    padding: 14px 0 0 14px;
}
.about-history-visual::before {
    position: absolute;
    inset: 0 28px 30px 0;
    border-radius: 5px 38px 5px 5px;
    background: linear-gradient(135deg, #143f2b 0%, #6f9e78 100%);
    content: "";
}
.about-history-visual::after {
    position: absolute;
    z-index: 1;
    inset: 14px 0 0 14px;
    border-radius: 3px 32px 3px 3px;
    border: 1px solid rgba(249, 255, 250, .46);
    background: linear-gradient(126deg, rgba(255, 255, 255, .3) 0%, rgba(255, 255, 255, .11) 25%, rgba(255, 255, 255, .025) 52%, rgba(222, 243, 226, .08) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72), inset -1px 0 rgba(255, 255, 255, .2), inset 18px 0 30px rgba(255, 255, 255, .055);
    content: "";
    pointer-events: none;
}
.about-history-visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: center;
    border-radius: 3px 32px 3px 3px;
    box-shadow: 0 24px 44px rgba(17, 61, 40, .15);
    filter: saturate(.95) contrast(1.04);
    transition: transform .45s ease, filter .45s ease;
}
.about-history-visual:hover img { transform: translateY(-5px); filter: saturate(1.04) contrast(1.05); }
.about-history-layout .about-history-visual {
    max-width: none;
    margin: 0;
    padding: 14px 0 0 14px;
}
.about-history-layout .about-history-visual::before { inset: 0 34px 34px 0; }
.about-history-layout .about-history-visual::after { inset: 14px 0 0 14px; }
.about-history-layout .about-history-visual img {
    aspect-ratio: 16 / 8;
    object-position: center;
}
@media (max-width: 991px) {
    .about-history-section { padding: 58px 0 82px; }
    .about-history-section .about-content-wrap { padding-right: 18px; }
    .about-history-visual { max-width: 410px; }
    .about-history-layout { max-width: 720px; }
    .about-history-layout .about-content-wrap { padding: 0; }
}
@media (max-width: 767px) {
    .about-history-section { padding: 46px 0 64px; }
    .about-history-section .about-content-wrap { max-width: none; padding-right: 0; text-align: left; }
    .about-history-section .section-title h2 { margin-bottom: 22px; font-size: 39px; }
    .about-history-section .about-history-copy p { font-size: 15px; line-height: 1.74; text-align: left; }
    .about-history-visual { max-width: 460px; margin: 38px auto 0; }
    .about-history-layout { max-width: none; }
    .about-history-layout .about-history-visual { margin: 0; }
    .about-history-layout .about-content-wrap { margin-top: 28px; }
    .about-history-layout .about-history-copy p { font-size: 15px; text-align: justify; }
    .about-history-layout .about-history-visual img { aspect-ratio: 16 / 10; }
}

.solucoes-bread-bg {
    background: linear-gradient(rgba(0, 255, 0, 0.2), rgba(0, 255, 0, 0.2)),
        url(../img/conteudo/53.jpg) center/cover no-repeat;
}

/* Editorial opening for the solutions page, aligned with the Home image proportions. */
.solucoes-editorial-hero {
    position: relative;
    overflow: hidden;
    padding: 154px 0 86px;
    background:
        radial-gradient(circle at 85% 10%, rgba(124, 182, 133, 0.25), transparent 28%),
        linear-gradient(118deg, #0e3627 0%, #1d563c 56%, #437b56 100%);
}
.solucoes-editorial-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.34;
    background-image: radial-gradient(circle, rgba(222, 245, 224, 0.45) 1px, transparent 1.5px);
    background-size: 22px 22px;
    mask-image: linear-gradient(90deg, #000, transparent 68%);
}
.solucoes-editorial-hero .container {
    position: relative;
    z-index: 1;
}
.solucoes-editorial-copy {
    padding: 28px 24px 28px 0;
    color: #fff;
}
.solucoes-editorial-copy > span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #d4efd9;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
}
.solucoes-editorial-copy > span::before {
    width: 28px;
    height: 1px;
    background: #99d6a6;
    content: "";
}
.solucoes-editorial-copy h1 {
    max-width: 460px;
    margin: 18px 0 20px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(43px, 4vw, 64px);
    font-weight: 600;
    line-height: 1.03;
    letter-spacing: -0.055em;
    text-transform: uppercase;
}
.solucoes-editorial-copy p {
    max-width: 410px;
    margin: 0;
    color: rgba(242, 252, 244, 0.82);
    font-size: 16px;
    line-height: 1.7;
}
.solucoes-editorial-image {
    position: relative;
    padding: 13px 0 0 13px;
}
.solucoes-editorial-image::before {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 85%;
    height: 92%;
    border-radius: 4px 40px 4px 4px;
    background: linear-gradient(135deg, #b7dfbd, #4f9a64);
    content: "";
}
.solucoes-editorial-image img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    border-radius: 3px 32px 3px 3px;
    box-shadow: 0 22px 45px rgba(3, 27, 17, 0.3);
}
@media (max-width: 991px) {
    .solucoes-editorial-hero {
        padding: 132px 0 70px;
    }
    .solucoes-editorial-copy {
        padding-right: 0;
    }
    .solucoes-editorial-image {
        max-width: 680px;
        margin-top: 25px;
    }
}
@media (max-width: 767px) {
    .solucoes-editorial-hero {
        padding: 118px 0 56px;
    }
    .solucoes-editorial-copy h1 {
        font-size: 40px;
    }
    .solucoes-editorial-copy p {
        font-size: 15px;
    }
}

/* Full-size solutions carousel, matching the visual scale of the Home hero. */
.solutions-hero-slide {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 690px;
    padding: 132px 0 72px;
    background-position: center;
    background-size: cover;
}
.solutions-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 8% 86%, rgba(163, 218, 171, 0.18), transparent 31%),
        linear-gradient(90deg, rgba(5, 42, 28, 0.92) 0%, rgba(10, 56, 37, 0.79) 36%, rgba(11, 50, 34, 0.18) 68%, rgba(7, 35, 24, 0.16) 100%);
}
.solutions-hero-overlay::before {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(137, 199, 149, 0.28) 1.5px, transparent 2px);
    background-size: 26px 26px;
    content: "";
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.42) 30%, transparent 65%);
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.42) 30%, transparent 65%);
}
.solutions-hero-slide .container {
    position: relative;
    z-index: 1;
}
.solutions-hero-copy {
    max-width: 650px;
    color: #fff;
}
.solutions-hero-copy > span {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    color: #cdebd3;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
}
.solutions-hero-copy > span::before {
    width: 38px;
    height: 1px;
    background: #a9d7af;
    content: "";
}
.solutions-hero-copy h1 {
    margin: 0;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(40px, 3.6vw, 58px);
    font-weight: 600;
    line-height: 1.03;
    letter-spacing: -0.06em;
    text-transform: uppercase;
    text-shadow: 0 3px 18px rgba(2, 25, 15, 0.2);
}
.solutions-hero-copy p {
    max-width: 510px;
    margin: 28px 0 32px;
    color: rgba(245, 253, 246, 0.9);
    font-size: 17px;
    line-height: 1.7;
}
.solutions-hero-copy .theme-btn {
    padding: 17px 29px;
}
.solutions-slides .owl-nav button.owl-prev,
.solutions-slides .owl-nav button.owl-next {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 62px;
    height: 62px;
    border: 1px solid rgba(239, 255, 241, 0.42);
    background: rgba(12, 59, 39, 0.35);
    color: #fff;
    font-size: 22px;
    transform: translateY(-50%);
    transition: background 0.25s ease, color 0.25s ease;
}
.solutions-slides .owl-nav button.owl-prev {
    left: 0;
    border-left: 0;
    border-radius: 0 13px 13px 0;
}
.solutions-slides .owl-nav button.owl-next {
    right: 0;
    border-right: 0;
    border-radius: 13px 0 0 13px;
}
.solutions-slides .owl-nav button.owl-prev:hover,
.solutions-slides .owl-nav button.owl-next:hover {
    background: #4c9560;
    color: #fff;
}
@media (max-width: 767px) {
    .solutions-hero-slide {
        min-height: 570px;
        padding: 125px 0 65px;
        background-position: 64% center;
    }
    .solutions-hero-copy h1 {
        font-size: 36px;
    }
    .solutions-hero-copy p {
        max-width: 420px;
        font-size: 15px;
    }
    .solutions-slides .owl-nav {
        display: none;
    }
}

/* Dedicated careers page. */
.jobs-hero {
    position: relative;
    overflow: hidden;
    min-height: 690px;
    padding: 185px 0 100px;
    background-color: #143b29;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
@media (min-width: 768px) {
    .jobs-hero {
        height: 690px;
    }
}
.jobs-hero::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(5, 39, 25, 0.92) 0%, rgba(10, 61, 37, 0.78) 38%, rgba(11, 53, 34, 0.25) 67%, rgba(7, 35, 23, 0.08) 100%);
    content: "";
}
.jobs-hero-content {
    position: relative;
    z-index: 1;
    max-width: 700px;
    color: #fff;
}
.jobs-hero-content > span,
.jobs-page-heading > div > span {
    color: #a8d9b1;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
}
.jobs-hero h1 {
    max-width: 690px;
    margin: 16px 0 20px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(43px, 5vw, 70px);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -0.055em;
}
.jobs-hero p {
    max-width: 550px;
    margin: 0;
    color: rgba(244, 253, 246, 0.84);
    font-size: 17px;
    line-height: 1.7;
}
.jobs-slides .owl-nav button.owl-prev,
.jobs-slides .owl-nav button.owl-next {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 58px;
    height: 58px;
    border: 1px solid rgba(234, 253, 237, 0.42);
    background: rgba(12, 59, 39, 0.32);
    color: #fff;
    font-size: 22px;
    transform: translateY(-50%);
    transition: background 0.25s ease;
}
.jobs-slides .owl-nav button.owl-prev {
    left: 0;
    border-left: 0;
    border-radius: 0 12px 12px 0;
}
.jobs-slides .owl-nav button.owl-next {
    right: 0;
    border-right: 0;
    border-radius: 12px 0 0 12px;
}
.jobs-slides .owl-nav button:hover {
    background: #4d9561;
}
.jobs-recruitment {
    position: relative;
    z-index: 3;
    margin-top: 0;
    padding: 0 0 120px;
    scroll-margin-top: 90px;
    background: #fff;
}
.recruitment-process {
    position: relative;
    overflow: hidden;
    z-index: 2;
    transform: translateY(-105px);
    margin-bottom: -29px;
    padding: 38px 42px 34px;
    border: 1px solid rgba(143, 202, 155, 0.45);
    border-radius: 4px 36px 4px 36px;
    background:
        radial-gradient(circle at 90% 10%, rgba(135, 204, 151, 0.24), transparent 27%),
        linear-gradient(120deg, #113c28, #286947 65%, #3e8055);
    box-shadow: 0 26px 54px rgba(9, 54, 31, 0.24);
}
.recruitment-process::before {
    position: absolute;
    right: -95px;
    bottom: -125px;
    width: 310px;
    height: 310px;
    border: 1px solid rgba(207, 239, 214, 0.2);
    border-radius: 50%;
    box-shadow: 0 0 0 34px rgba(207, 239, 214, 0.07), 0 0 0 85px rgba(207, 239, 214, 0.035);
    content: "";
}
.recruitment-process-heading {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 31px;
}
.recruitment-process-heading span {
    color: #c4eccb;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
}
.recruitment-process-heading p {
    margin: 0;
    color: rgba(234, 249, 237, 0.78);
    font-size: 14px;
}
.recruitment-process-steps {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}
.recruitment-process-step {
    position: relative;
    min-width: 0;
    padding: 13px 7px 11px;
    border: 1px solid rgba(211, 241, 217, 0.16);
    border-radius: 12px;
    background: rgba(7, 52, 33, 0.17);
    text-align: center;
}
.recruitment-process-step:not(:last-child)::after {
    position: absolute;
    top: 29px;
    left: calc(50% + 34px);
    width: calc(100% - 45px);
    height: 1px;
    background: linear-gradient(90deg, #8fc89b, rgba(205, 239, 211, 0.7));
    content: "";
}
.process-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 59px;
    height: 59px;
    margin-bottom: 14px;
    border: 1px solid rgba(201, 238, 207, 0.72);
    border-radius: 50%;
    background: rgba(241, 255, 244, 0.12);
    box-shadow: 0 8px 18px rgba(2, 39, 22, 0.2);
    color: #d6f4dc;
    font-size: 28px;
}
.recruitment-process-step strong,
.recruitment-process-step small {
    display: block;
}
.recruitment-process-step strong {
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}
.recruitment-process-step small {
    margin-top: 5px;
    color: rgba(224, 245, 228, 0.7);
    font-size: 11px;
    line-height: 1.35;
}
.jobs-recruitment-copy {
    max-width: none;
}
.jobs-recruitment-copy > span {
    color: #3c7c51;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.17em;
}
.jobs-recruitment-copy h2 {
    max-width: 670px;
    margin: 16px 0 24px;
    color: #163b29;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 3.2vw, 50px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -0.05em;
}
.recruitment-copy-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
    padding-top: 27px;
    border-top: 1px solid #dbe9de;
}
.recruitment-copy-columns p {
    margin: 0;
    color: #68786e;
    font-size: 16px;
    line-height: 1.72;
}
.recruitment-copy-columns p + p {
    padding-left: 32px;
    border-left: 1px solid #dbe9de;
}
.recruitment-pcd {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: 56px;
    align-items: center;
    margin-top: 76px;
    padding: 23px;
    border: 1px solid #d6e7d9;
    border-radius: 24px;
    background: linear-gradient(135deg, #f7fbf7, #eef7ef);
    box-shadow: 0 18px 38px rgba(29, 82, 46, .07);
    scroll-margin-top: 105px;
}
.recruitment-pcd-image {
    overflow: hidden;
    border-radius: 17px;
    box-shadow: 0 16px 29px rgba(24, 66, 38, .15);
}
.recruitment-pcd-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 370px;
    object-fit: cover;
}
.recruitment-pcd-content {
    padding: 17px 30px 17px 0;
}
.recruitment-pcd-content > span {
    color: #4d875a;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .17em;
}
.recruitment-pcd h2 {
    max-width: 600px;
    margin: 12px 0 17px;
    color: #173c29;
    font-family: "Poppins", sans-serif;
    font-size: clamp(28px, 2.65vw, 41px);
    font-weight: 650;
    line-height: 1.13;
    letter-spacing: -.045em;
}
.recruitment-pcd-content > p {
    max-width: 610px;
    margin: 0;
    color: #627669;
    font-size: 16px;
    line-height: 1.67;
}
.recruitment-pcd-points {
    display: grid;
    gap: 12px;
    margin: 24px 0;
}
.recruitment-pcd-points > div {
    display: flex;
    align-items: center;
    gap: 12px;
}
.recruitment-pcd-points i {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 11px;
    background: #dceee0;
    color: #397b4b;
    font-size: 20px;
}
.recruitment-pcd-points span {
    display: flex;
    flex-direction: column;
    color: #728276;
    font-size: 13px;
    line-height: 1.4;
}
.recruitment-pcd-points strong {
    color: #244632;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
}
.recruitment-pcd-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 18px;
    border-radius: 10px;
    background: linear-gradient(135deg, #235f3b, #4e8c59);
    box-shadow: 0 9px 18px rgba(28, 82, 44, .17);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    transition: transform .25s ease, box-shadow .25s ease;
}
.recruitment-pcd-link:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 13px 25px rgba(28, 82, 44, .25);
}
.recruitment-pcd-link i {
    transition: transform .25s ease;
}
.recruitment-pcd-link:hover i {
    transform: translateX(4px);
}
.recruitment-programs {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 28px;
    margin: 58px 0;
    padding: 32px 36px;
    border: 1px solid #d9e8db;
    border-radius: 22px;
    background:
        radial-gradient(circle at 93% 12%, rgba(224, 146, 69, 0.16), transparent 22%),
        linear-gradient(120deg, #f4faf5 0%, #ffffff 54%, #edf6ef 100%);
    box-shadow: 0 18px 40px rgba(29, 77, 46, 0.08);
}
.recruitment-programs-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(135deg, #1b5737, #4e9060);
    box-shadow: 0 12px 22px rgba(26, 79, 48, 0.2);
    color: #f1faee;
    font-size: 31px;
}
.recruitment-programs-copy > span {
    display: block;
    margin-bottom: 7px;
    color: #c87332;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.17em;
}
.recruitment-programs h2 {
    margin: 0 0 9px;
    color: #173c29;
    font-family: "Poppins", sans-serif;
    font-size: 26px;
    font-weight: 600;
    line-height: 1.25;
}
.recruitment-programs p {
    max-width: 790px;
    margin: 0;
    color: #607568;
    font-size: 15px;
    line-height: 1.65;
}
.recruitment-programs-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 18px;
    border-radius: 10px;
    background: #de8038;
    box-shadow: 0 10px 20px rgba(192, 103, 39, 0.2);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.recruitment-programs-link:hover {
    transform: translateY(-2px);
    background: #c86b2c;
    box-shadow: 0 14px 25px rgba(192, 103, 39, 0.28);
    color: #fff;
}
.recruitment-programs-link i { transition: transform 0.2s ease; }
.recruitment-programs-link:hover i { transform: translateX(4px); }
.recruitment-guarantee {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 25px;
    margin-top: 62px;
    padding: 26px 30px;
    border: 1px solid #bfddc5;
    border-radius: 18px;
    background: linear-gradient(105deg, #eef8ef 0%, #f8fcf8 56%, #e5f2e7 100%);
    box-shadow: 0 18px 36px rgba(27, 83, 45, 0.08);
}
.recruitment-guarantee-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 57px;
    height: 57px;
    border-radius: 16px;
    background: linear-gradient(135deg, #1d5b39, #4c8d5b);
    box-shadow: 0 10px 20px rgba(29, 91, 57, 0.2);
    color: #e5f8e7;
    font-size: 28px;
}
.recruitment-guarantee > div > span {
    display: block;
    margin-bottom: 4px;
    color: #438252;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.18em;
}
.recruitment-guarantee h3 {
    margin: 0 0 4px;
    color: #173e29;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;
}
.recruitment-guarantee p {
    margin: 0;
    color: #61786a;
    font-size: 15px;
    line-height: 1.55;
}
.recruitment-guarantee-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #235f3a;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}
.recruitment-guarantee-link i {
    transition: transform 0.2s ease;
}
.recruitment-guarantee-link:hover {
    color: #4d8d5a;
}
.recruitment-guarantee-link:hover i {
    transform: translateX(4px);
}
.recruitment-value {
    position: relative;
    overflow: hidden;
    padding: 116px 0 124px;
    background:
        radial-gradient(circle at 12% 10%, rgba(115, 189, 134, 0.26), transparent 26%),
        radial-gradient(circle at 95% 110%, rgba(112, 184, 128, 0.2), transparent 31%),
        linear-gradient(125deg, #0b3321 0%, #174c32 52%, #286447 100%);
}
.recruitment-value::before {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(207, 238, 214, 0.18) 1px, transparent 1px);
    background-size: 22px 22px;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.68), transparent 73%);
    content: "";
}
.recruitment-value-heading,
.recruitment-value-grid {
    position: relative;
    z-index: 1;
}
.recruitment-value-heading {
    max-width: 860px;
    margin: 0 auto 49px;
    text-align: center;
}
.recruitment-value-heading > span {
    color: #b9e6c2;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
}
.recruitment-value-heading h2 {
    margin: 14px 0 17px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(32px, 3.1vw, 51px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -0.05em;
}
.recruitment-value-heading h2 em {
    color: #a9dfb3;
    font-style: normal;
}
.recruitment-value-heading p {
    max-width: 680px;
    margin: 0 auto;
    color: rgba(233, 249, 237, 0.8);
    font-size: 17px;
    line-height: 1.7;
}
.recruitment-value-grid {
    margin: -15px;
}
.recruitment-value-grid > div {
    padding: 15px;
}
.recruitment-value-card {
    --value-accent: #9be1b2;
    --value-accent-strong: #e2f9e8;
    height: 100%;
    min-height: 245px;
    padding: 31px 29px 27px;
    border: 1px solid rgba(204, 238, 211, 0.22);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.035));
    box-shadow: 0 18px 34px rgba(2, 29, 17, 0.16);
    transition: transform 0.35s ease, border-color 0.35s ease, background 0.35s ease, box-shadow 0.35s ease, opacity 0.55s ease;
}
.recruitment-value-grid > div:nth-child(2) .recruitment-value-card {
    --value-accent: #9bd8ee;
    --value-accent-strong: #e4f7ff;
}
.recruitment-value-grid > div:nth-child(3) .recruitment-value-card {
    --value-accent: #f4ce7d;
    --value-accent-strong: #fff1c8;
}
.recruitment-value-grid > div:nth-child(4) .recruitment-value-card {
    --value-accent: #f0aa89;
    --value-accent-strong: #ffe1d3;
}
.recruitment-value.is-animated:not(.is-visible) .recruitment-value-card {
    opacity: 0;
    transform: translateY(26px) scale(0.98);
}
.recruitment-value.is-visible .recruitment-value-grid > div:nth-child(1) .recruitment-value-card { transition-delay: 0.05s; }
.recruitment-value.is-visible .recruitment-value-grid > div:nth-child(2) .recruitment-value-card { transition-delay: 0.13s; }
.recruitment-value.is-visible .recruitment-value-grid > div:nth-child(3) .recruitment-value-card { transition-delay: 0.21s; }
.recruitment-value.is-visible .recruitment-value-grid > div:nth-child(4) .recruitment-value-card { transition-delay: 0.29s; }
.recruitment-value-card:hover {
    border-color: color-mix(in srgb, var(--value-accent) 72%, transparent);
    background: linear-gradient(145deg, color-mix(in srgb, var(--value-accent) 18%, transparent), rgba(255, 255, 255, 0.06));
    box-shadow: 0 24px 42px rgba(2, 29, 17, 0.28);
    transform: translateY(-8px);
}
.recruitment-value-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 23px;
    border: 1px solid color-mix(in srgb, var(--value-accent) 62%, transparent);
    border-radius: 14px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--value-accent) 36%, transparent), color-mix(in srgb, var(--value-accent) 12%, transparent));
    box-shadow: 0 8px 20px color-mix(in srgb, var(--value-accent) 17%, transparent), inset 0 1px 0 rgba(255, 255, 255, 0.16);
    color: var(--value-accent-strong);
    font-size: 25px;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.recruitment-value.is-visible .recruitment-value-icon {
    animation: recruitment-icon-float 3.8s ease-in-out infinite;
}
.recruitment-value-grid > div:nth-child(2) .recruitment-value-icon { animation-delay: 0.35s; }
.recruitment-value-grid > div:nth-child(3) .recruitment-value-icon { animation-delay: 0.7s; }
.recruitment-value-grid > div:nth-child(4) .recruitment-value-icon { animation-delay: 1.05s; }
.recruitment-value-card:hover .recruitment-value-icon {
    transform: rotate(-7deg) scale(1.1);
    box-shadow: 0 11px 25px color-mix(in srgb, var(--value-accent) 32%, transparent), inset 0 1px 0 rgba(255, 255, 255, 0.25);
}
@keyframes recruitment-icon-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}
.recruitment-value-card h3 {
    margin: 0 0 11px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.28;
}
.recruitment-value-card p {
    margin: 0;
    color: rgba(230, 247, 234, 0.77);
    font-size: 15px;
    line-height: 1.62;
}
.recruitment-data {
    padding: 118px 0 124px;
    background:
        radial-gradient(circle at 90% 8%, rgba(104, 169, 119, 0.13), transparent 24%),
        linear-gradient(125deg, #071d13 0%, #0c2b1c 54%, #103923 100%);
}
.recruitment-data-heading {
    max-width: 760px;
    margin-bottom: 52px;
}
.recruitment-data-heading > span {
    color: #9edcab;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
}
.recruitment-data-heading h2 {
    max-width: 690px;
    margin: 14px 0 17px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(35px, 3.4vw, 56px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.055em;
}
.recruitment-data-heading p {
    max-width: 660px;
    margin: 0;
    color: rgba(223, 242, 228, 0.76);
    font-size: 18px;
    line-height: 1.65;
}
.recruitment-data-grid {
    margin: -9px;
}
.recruitment-data-grid > div {
    padding: 9px;
}
.recruitment-data-card {
    height: 100%;
    min-height: 205px;
    padding: 34px 32px 28px;
    border: 1px solid rgba(210, 238, 216, 0.16);
    border-radius: 19px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.018));
    box-shadow: 0 18px 36px rgba(0, 17, 9, 0.15);
    transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease, opacity 0.55s ease;
}
.recruitment-data.is-animated:not(.is-visible) .recruitment-data-card {
    opacity: 0;
    transform: translateY(24px);
}
.recruitment-data.is-visible .recruitment-data-grid > div:nth-child(1) .recruitment-data-card { transition-delay: 0.04s; }
.recruitment-data.is-visible .recruitment-data-grid > div:nth-child(2) .recruitment-data-card { transition-delay: 0.11s; }
.recruitment-data.is-visible .recruitment-data-grid > div:nth-child(3) .recruitment-data-card { transition-delay: 0.18s; }
.recruitment-data.is-visible .recruitment-data-grid > div:nth-child(4) .recruitment-data-card { transition-delay: 0.25s; }
.recruitment-data-card:hover {
    border-color: rgba(158, 220, 171, 0.42);
    background: linear-gradient(135deg, rgba(126, 194, 143, 0.16), rgba(255, 255, 255, 0.045));
    transform: translateY(-6px);
}
.recruitment-data-card strong {
    display: block;
    margin-bottom: 12px;
    color: #a8e0b3;
    font-family: "Poppins", sans-serif;
    font-size: clamp(38px, 3.25vw, 57px);
    font-weight: 600;
    line-height: 0.98;
    letter-spacing: -0.06em;
}
.recruitment-data-card p {
    max-width: 450px;
    margin: 0 0 19px;
    color: rgba(228, 245, 232, 0.82);
    font-size: 17px;
    line-height: 1.5;
}
.recruitment-data-card a,
.recruitment-data-card > span {
    color: #acd8b4;
    font-size: 13px;
}
.recruitment-data-card a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.recruitment-data-card a:hover {
    color: #e4f8e8;
}
.recruitment-data-card-guarantee {
    border-color: rgba(167, 226, 179, 0.35);
    background: linear-gradient(135deg, rgba(76, 143, 91, 0.36), rgba(18, 69, 40, 0.2));
}
.recruitment-data-card-guarantee strong {
    color: #d4f3d9;
}
@media (prefers-reduced-motion: reduce) {
    .recruitment-value-card,
    .recruitment-value-icon {
        transition: none;
        animation: none !important;
    }
}
.jobs-recruitment-image {
    position: relative;
    margin-left: 35px;
    padding: 13px 0 0 13px;
}
.jobs-recruitment-image::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 88%;
    height: 91%;
    border-radius: 4px 35px 4px 4px;
    background: linear-gradient(135deg, #1b633d, #4c8c5d);
    content: "";
}
.jobs-recruitment-image img {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    border-radius: 3px 26px 3px 3px;
    box-shadow: 0 18px 34px rgba(19, 76, 43, 0.16);
}
.jobs-page {
    background: #fbfdfb;
}
.jobs-page-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 48px;
}
.jobs-page-heading h2 {
    margin: 12px 0 0;
    color: #173b29;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 3vw, 48px);
    font-weight: 600;
    letter-spacing: -0.045em;
}
.jobs-page-heading > p {
    max-width: 420px;
    margin: 0;
    color: #6c7c71;
    font-size: 16px;
    line-height: 1.7;
}
.jobs-listing-layout {
    display: grid;
    grid-template-columns: 256px minmax(0, 1fr);
    align-items: start;
    gap: 42px;
}
.jobs-filters {
    position: sticky;
    top: 30px;
    max-height: calc(100vh - 60px);
    overflow-x: hidden;
    overflow-y: auto;
    border: 1px solid #dce9df;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(18, 67, 42, 0.055);
}
.jobs-filters-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 22px 18px;
    border-bottom: 1px solid #e5eee7;
}
.jobs-filters-heading h3 {
    margin: 0;
    color: #193f2a;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 600;
}
.jobs-filters-heading button {
    border: 0;
    background: transparent;
    color: #408154;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
}
.jobs-filters-heading button:hover {
    color: #1f5a36;
    text-decoration: underline;
}
.jobs-filter-group {
    padding: 23px 22px;
    border-bottom: 1px solid #e5eee7;
}
.jobs-filter-group > span {
    display: block;
    margin-bottom: 16px;
    color: #285b3c;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.1em;
}
.jobs-filter-group label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 13px;
    color: #65776b;
    cursor: pointer;
    font-size: 14px;
    line-height: 1.35;
}
.jobs-filter-group label:last-child {
    margin-bottom: 0;
}
.jobs-filter-group > label:not(.jobs-filter-search) input {
    position: absolute;
    opacity: 0;
}
.jobs-filter-group > label:not(.jobs-filter-search) i {
    position: relative;
    display: inline-flex;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border: 1px solid #c8d8cc;
    border-radius: 5px;
    background: #fff;
    transition: background 0.2s ease, border-color 0.2s ease;
}
.jobs-filter-group > label:not(.jobs-filter-search) input:checked + i {
    border-color: #3f8353;
    background: #3f8353;
}
.jobs-filter-group > label:not(.jobs-filter-search) input:checked + i::after {
    position: absolute;
    top: 2px;
    left: 5px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    content: "";
}
.jobs-filter-group > label:not(.jobs-filter-search):has(input:checked) {
    color: #1c5734;
    font-weight: 600;
}
.jobs-filter-search {
    position: relative;
    display: block !important;
    margin: 0 !important;
}
.jobs-filter-search input {
    width: 100%;
    height: 42px;
    padding: 0 38px 0 12px;
    border: 1px solid #cbdccf;
    border-radius: 8px;
    outline: 0;
    background: #fff;
    color: #20462f;
    font-size: 13px;
}
.jobs-filter-search input:focus {
    border-color: #4b8a5a;
    box-shadow: 0 0 0 3px rgba(75, 138, 90, 0.1);
}
.jobs-filter-search > i {
    position: absolute;
    top: 12px;
    right: 12px;
    color: #679275;
    font-size: 18px;
}
.jobs-pcd-toggle {
    display: grid;
    grid-template-columns: 1.25fr 0.8fr 0.8fr;
}
.jobs-pcd-toggle label {
    display: block;
    margin: 0;
}
.jobs-pcd-toggle input {
    position: absolute;
    opacity: 0;
}
.jobs-pcd-toggle span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 5px;
    border: 1px solid #cbdccf;
    border-right: 0;
    background: #fff;
    color: #6b7e70;
    font-size: 12px;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}
.jobs-pcd-toggle label:first-child span {
    border-radius: 8px 0 0 8px;
}
.jobs-pcd-toggle label:last-child span {
    border-right: 1px solid #cbdccf;
    border-radius: 0 8px 8px 0;
}
.jobs-pcd-toggle input:checked + span {
    border-color: #3f8353;
    background: #e8f4ea;
    color: #215d38;
    font-weight: 700;
}
.jobs-pcd-toggle label:has(input:checked) + label span {
    border-left-color: #3f8353;
}
.jobs-filter-tip {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border-bottom: 0;
    background: #f6faf7;
}
.jobs-filter-tip > i {
    margin-top: 1px;
    color: #4d9561;
    font-size: 19px;
}
.jobs-filter-tip p {
    margin: 0;
    color: #718178;
    font-size: 12px;
    line-height: 1.55;
}
.jobs-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.8fr) auto;
    align-items: stretch;
    max-width: 100%;
    margin-bottom: 13px;
    border: 1px solid #cdded1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 14px 27px rgba(28, 85, 52, 0.07);
    overflow: hidden;
}
.jobs-search-field {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 0 21px;
    border-right: 1px solid #e4ece6;
    color: #347550;
}
.jobs-search-field i {
    flex: 0 0 auto;
    font-size: 21px;
}
.jobs-search-field input {
    width: 100%;
    min-width: 0;
    height: 68px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #1b3c2a;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
}
.jobs-search-field input::placeholder {
    color: #839187;
}
.jobs-search-submit {
    margin: 8px;
    padding: 0 24px;
    border-radius: 10px;
    white-space: nowrap;
}
.jobs-search-submit i {
    margin-left: 7px;
    font-size: 15px;
}
.jobs-search-status {
    margin: 0 0 26px;
    color: #7b8b80;
    font-size: 13px;
}
.jobs-search-status span {
    color: #286c43;
    font-family: "Poppins", sans-serif;
    font-weight: 700;
}
.jobs-search-empty {
    padding: 58px 25px;
    border: 1px dashed #c6d9ca;
    border-radius: 16px;
    background: #fff;
    color: #718178;
    text-align: center;
}
.jobs-search-empty i {
    color: #4a8b5b;
    font-size: 36px;
}
.jobs-search-empty h3 {
    margin: 12px 0 6px;
    color: #214731;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 600;
}
.jobs-search-empty p {
    margin: 0;
}
.jobs-talent-callout {
    padding: 0 0 118px;
    background: #fbfcfa;
}
.jobs-talent-callout-card {
    position: relative;
    min-height: 610px;
    overflow: visible;
    border-radius: 8px 44px 8px 8px;
    background: linear-gradient(135deg, #f2f5f1, #fff);
    box-shadow: 0 22px 42px rgba(21, 62, 43, .1);
}
.jobs-talent-callout-card::before {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(90deg, rgba(12, 57, 37, .94) 0%, rgba(25, 83, 55, .72) 14%, rgba(49, 112, 78, .24) 31%, rgba(49, 112, 78, 0) 48%), linear-gradient(270deg, rgba(12, 57, 37, .94) 0%, rgba(25, 83, 55, .72) 14%, rgba(49, 112, 78, .24) 31%, rgba(49, 112, 78, 0) 48%);
    content: "";
    pointer-events: none;
}
.jobs-talent-callout-card::after {
    position: absolute;
    z-index: 3;
    inset: -12px;
    border-radius: 0;
    background: linear-gradient(#527f5c 0 0) left top / 305px 12px no-repeat, linear-gradient(#d88742 0 0) left top / 12px 270px no-repeat, linear-gradient(#d88742 0 0) right bottom / 305px 12px no-repeat, linear-gradient(#527f5c 0 0) right bottom / 12px 270px no-repeat, linear-gradient(#d88742 0 0) right top / 305px 12px no-repeat, linear-gradient(#527f5c 0 0) right top / 12px 270px no-repeat, linear-gradient(#527f5c 0 0) left bottom / 305px 12px no-repeat, linear-gradient(#d88742 0 0) left bottom / 12px 270px no-repeat;
    content: "";
    pointer-events: none;
}
.jobs-talent-callout-card > img {
    display: block;
    position: relative;
    z-index: 0;
    width: 100%;
    height: 610px;
    object-fit: contain;
    object-position: center;
    border-radius: 8px 44px 8px 8px;
    filter: saturate(.92) contrast(1.02);
}
.jobs-talent-sign {
    position: absolute;
    z-index: 2;
    top: 37%;
    left: 50%;
    width: min(30%, 360px);
    padding: 7px 14px 9px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    box-shadow: none;
    color: #fff;
    text-align: center;
    text-shadow: 0 2px 12px rgba(10, 42, 27, .62);
    transform: translateX(-50%);
}
.jobs-talent-sign > span {
    display: block;
    margin-bottom: 4px;
    color: #c96f31;
    font-family: "Poppins", sans-serif;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .17em;
}
.jobs-talent-sign h2 {
    margin: 0 0 8px;
    color: #1d5a3a;
    font-family: "Poppins", sans-serif;
    font-size: clamp(20px, 1.65vw, 25px);
    font-weight: 650;
    line-height: 1.08;
    letter-spacing: -.04em;
}
.jobs-talent-button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 13px;
    border-radius: 3px 10px 3px 3px;
    background: linear-gradient(135deg, #c96f31, #e5984b);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
    transition: transform .25s ease, box-shadow .25s ease;
}
.jobs-talent-button:hover { color: #fff; box-shadow: 0 10px 20px rgba(201, 111, 49, .26); transform: translateY(-2px); }
@media (max-width: 767px) {
    .jobs-talent-callout { padding-bottom: 78px; }
    .jobs-talent-callout-card, .jobs-talent-callout-card > img { min-height: 500px; height: 500px; }
    .jobs-talent-callout-card::after { inset: -8px; background-size: 170px 8px, 8px 150px, 170px 8px, 8px 150px, 170px 8px, 8px 150px, 170px 8px, 8px 150px; }
    .jobs-talent-sign { top: 39%; width: min(58%, 290px); padding: 7px; }
    .jobs-talent-sign h2 { margin-bottom: 8px; font-size: 20px; }
}

.jobs-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 8px 0 37px;
}
.jobs-pagination[hidden] {
    display: none;
}
.jobs-pagination button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 8px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #426653;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.jobs-pagination button:hover:not(:disabled) {
    background: #e5f1e8;
    color: #205a37;
    transform: translateY(-2px);
}
.jobs-pagination button:disabled {
    border-color: transparent;
    background: transparent;
    color: #b8c8bb;
    cursor: not-allowed;
    opacity: .72;
}
.jobs-pagination-previous,
.jobs-pagination-next {
    gap: 4px;
    margin: 0 8px;
}
.jobs-pagination-previous i,
.jobs-pagination-next i {
    font-size: 18px;
}
.jobs-pagination-page.is-active {
    background: linear-gradient(135deg, #235f3b, #4a8c59);
    box-shadow: 0 7px 15px rgba(30, 91, 52, 0.18);
    color: #fff;
}
.job-listing-card {
    display: flex;
    flex-direction: column;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 32px;
    border: 1px solid #dce9df;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(18, 67, 42, 0.05);
    cursor: pointer;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.job-listing-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 38px rgba(18, 67, 42, 0.11);
}
.job-listing-tag {
    display: inline-block;
    padding: 5px 11px;
    border-radius: 99px;
    background: #e6f2e9;
    color: #327250;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
}
.job-listing-card h2 {
    margin: 20px 0 12px;
    color: #173b29;
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-weight: 600;
}
.job-listing-card > p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    flex-grow: 1;
    min-height: 54px;
    margin: 0;
    overflow: hidden;
    color: #728178;
    font-size: 15px;
    line-height: 1.65;
}
.job-listing-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid #e5eee7;
    color: #688073;
    font-size: 14px;
}
.job-listing-footer i {
    margin-right: 4px;
    color: #417c56;
}
.job-listing-footer a,
.job-listing-open {
    display: inline-flex;
    align-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: #24633f;
    cursor: pointer;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
}
.job-listing-footer a i,
.job-listing-open i {
    margin-left: 7px;
    transition: transform 0.2s ease;
}
.job-listing-footer a:hover i,
.job-listing-open:hover i {
    transform: translateX(4px);
}
.job-listing-open:focus-visible {
    border-radius: 4px;
    outline: 3px solid rgba(36, 99, 63, .28);
    outline-offset: 4px;
}
@media (max-width: 767px) {
    .jobs-hero {
        min-height: 570px;
        padding: 140px 0 76px;
    }
    .jobs-recruitment {
        margin-top: 0;
        padding: 70px 0;
    }
    .recruitment-process {
        transform: none;
        margin-bottom: 52px;
    }
    .jobs-hero h1 {
        font-size: 41px;
    }
    .jobs-slides .owl-nav {
        display: none;
    }
    .recruitment-value {
        padding: 74px 0 80px;
    }
    .recruitment-data {
        padding: 78px 0 84px;
    }
    .recruitment-data-heading {
        margin-bottom: 31px;
    }
    .recruitment-data-heading p {
        font-size: 16px;
    }
    .recruitment-data-card {
        min-height: 0;
        padding: 28px 24px 25px;
    }
    .recruitment-value-heading {
        margin-bottom: 30px;
        text-align: left;
    }
    .recruitment-value-heading p {
        margin-left: 0;
    }
    .recruitment-value-card {
        min-height: 0;
    }
    .recruitment-guarantee {
        grid-template-columns: auto 1fr;
        gap: 18px;
        margin-top: 42px;
        padding: 23px;
    }
    .recruitment-programs {
        grid-template-columns: auto 1fr;
        gap: 20px;
        padding: 27px;
    }
    .recruitment-programs-link {
        grid-column: 1 / -1;
        justify-self: start;
    }
    .recruitment-guarantee-link {
        grid-column: 1 / -1;
    }
    .jobs-page-heading {
        display: block;
        margin-bottom: 35px;
    }
    .jobs-page-heading > p {
        margin-top: 15px;
    }
    .jobs-listing-layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .jobs-filters {
        position: static;
        max-height: none;
    }
    .jobs-filter-group {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 14px;
    }
    .jobs-filter-group > span {
        grid-column: 1 / -1;
    }
    .jobs-filter-tip {
        display: flex;
    }
    .jobs-filter-search {
        grid-column: 1 / -1;
    }
    .jobs-pcd-toggle {
        grid-column: 1 / -1;
    }
    .jobs-search-form {
        grid-template-columns: 1fr;
        border-radius: 13px;
    }
    .jobs-search-field {
        padding: 0 17px;
        border-right: 0;
        border-bottom: 1px solid #e4ece6;
    }
    .jobs-search-field input {
        height: 58px;
    }
    .jobs-search-submit {
        min-height: 52px;
    }
    .jobs-pagination {
        gap: 3px;
        margin-bottom: 29px;
    }
    .jobs-pagination-previous,
    .jobs-pagination-next {
        margin: 0 2px;
    }
    .jobs-pagination-previous span,
    .jobs-pagination-next span {
        display: none;
    }
    .recruitment-process {
        margin-bottom: 48px;
        padding: 28px 22px;
    }
    .recruitment-process-heading {
        display: block;
    }
    .recruitment-process-heading p {
        margin-top: 8px;
    }
    .recruitment-process-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 25px 16px;
    }
    .recruitment-process-step:not(:last-child)::after {
        display: none;
    }
    .recruitment-copy-columns {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .recruitment-copy-columns p + p {
        padding: 18px 0 0;
        border-top: 1px solid #dbe9de;
        border-left: 0;
    }
    .job-listing-card {
        padding: 25px;
    }
    .job-listing-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Mission, vision and values use a native visual rather than a stock infographic. */
.mvv-section { position: relative; overflow: hidden; padding: 112px 0 102px; background: linear-gradient(180deg, #ffffff 0%, #f4f9f3 100%); }
.mvv-section::before { content: ""; position: absolute; top: -220px; right: -180px; width: 480px; height: 480px; border: 1px solid rgba(62, 112, 74, .09); border-radius: 50%; box-shadow: 0 0 0 42px rgba(62, 112, 74, .035), 0 0 0 84px rgba(62, 112, 74, .02); }
.mvv-section .container { position: relative; z-index: 1; }
.mvv-heading { margin-bottom: 62px; }
.mvv-heading > span { display: inline-block; color: #cf7530; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.mvv-heading h2 { margin: 10px 0 0; color: #163d28; font-family: "Poppins", sans-serif; font-size: clamp(36px, 4vw, 56px); font-weight: 650; letter-spacing: -.055em; line-height: 1.04; }
.mvv-heading h2 strong { color: #3d9051; font-weight: inherit; }
.mvv-card { display: flex; height: 100%; padding: 0 28px 22px; align-items: center; flex-direction: column; text-align: center; }
.mvv-orbit { position: relative; display: grid; width: 212px; height: 212px; margin: 0 auto 29px; place-items: center; border-radius: 50%; background: repeating-conic-gradient(from -45deg, #23834a 0deg 77deg, transparent 77deg 90deg); filter: drop-shadow(0 18px 18px rgba(20, 104, 53, .22)); }
.mvv-card-2 .mvv-orbit { background: repeating-conic-gradient(from -45deg, #5ca14f 0deg 77deg, transparent 77deg 90deg); }
.mvv-card-3 .mvv-orbit { background: repeating-conic-gradient(from -45deg, #1e5c37 0deg 77deg, transparent 77deg 90deg); }
.mvv-icon { display: grid; width: 116px; height: 116px; place-items: center; border: 10px solid #edf8e9; border-radius: 50%; background: linear-gradient(145deg, #fff 0%, #eef8eb 100%); box-shadow: 0 10px 24px rgba(16, 81, 38, .2); }
.mvv-icon i { color: #167443; font-size: 48px; }
.mvv-card-2 .mvv-icon i { color: #4b913e; }
.mvv-card-3 .mvv-icon i { color: #164c2e; }
.mvv-card h3 { min-height: 34px; margin: 0; color: #163e27; font-family: "Poppins", sans-serif; font-size: 27px; font-weight: 700; letter-spacing: -.045em; }
.mvv-line { width: 2px; height: 37px; margin: 15px auto 18px; background: linear-gradient(#2f8c4e, #e8893d); }
.mvv-line::after { display: block; width: 9px; height: 9px; margin: 34px 0 0 -3.5px; border: 2px solid #fff; border-radius: 50%; background: #e38435; box-shadow: 0 2px 8px rgba(207, 102, 24, .4); content: ""; }
.mvv-copy { max-width: 310px; margin: 0 auto; color: #41664d; font-size: 15px; line-height: 1.72; text-align: justify; text-align-last: left; }
.mvv-copy p { margin: 0; }
@media (max-width: 991px) { .mvv-card { margin-bottom: 48px; } }
@media (max-width: 575px) { .mvv-section { padding: 78px 0 38px; } .mvv-heading { margin-bottom: 45px; } .mvv-orbit { width: 184px; height: 184px; } .mvv-icon { width: 104px; height: 104px; } }

/* Dedicated BPO payroll page. */
.bpo-hero { position: relative; overflow: hidden; display: flex; align-items: center; min-height: 555px; padding: 160px 0 92px; background: radial-gradient(circle at 82% 20%, rgba(126, 186, 107, .38), transparent 27%), radial-gradient(circle at 14% 95%, rgba(208, 138, 67, .16), transparent 25%), linear-gradient(120deg, #082d1e, #195836 58%, #3d7b4b); }
.bpo-hero::before { position: absolute; inset: 0; background-image: radial-gradient(rgba(217, 244, 217, .19) 1px, transparent 1px); background-size: 23px 23px; content: ""; mask-image: linear-gradient(90deg, #000, rgba(0, 0, 0, .42), transparent); -webkit-mask-image: linear-gradient(90deg, #000, rgba(0, 0, 0, .42), transparent); }
.bpo-hero::after { position: absolute; right: 8%; bottom: -175px; width: 430px; height: 430px; border: 1px solid rgba(219, 247, 220, .2); border-radius: 50%; box-shadow: 0 0 0 37px rgba(219, 247, 220, .06), 0 0 0 86px rgba(219, 247, 220, .035); content: ""; }
.bpo-hero .container { position: relative; z-index: 3; }
.bpo-hero-copy { max-width: 655px; color: #fff; }
.bpo-hero-copy > span, .bpo-intro-copy > span, .bpo-scope-heading > span, .bpo-journey-card span { display: flex; align-items: center; gap: 12px; color: #f1bf82; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.bpo-hero-copy > span::before, .bpo-intro-copy > span::before, .bpo-scope-heading > span::before, .bpo-journey-card span::before { width: 38px; height: 2px; background: #e59b52; content: ""; }
.bpo-hero h1 { max-width: 670px; margin: 22px 0 0; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(44px, 5vw, 70px); font-weight: 650; letter-spacing: -.065em; line-height: 1.01; }
.bpo-hero-title-dp { line-height: 1.12 !important; }
.bpo-hero-title-dp span { display: inline-block; }
.bpo-hero p { max-width: 555px; margin: 25px 0 32px; color: rgba(244, 255, 246, .88); font-size: 17px; line-height: 1.72; }
.bpo-hero .theme-btn { background: #dc9047; box-shadow: 0 15px 28px rgba(7, 36, 22, .27); }
.bpo-hero .theme-btn:hover { background: #efaa62; }
.bpo-hero--carousel { background-position: center; background-repeat: no-repeat; background-size: cover; }
.bpo-hero--carousel::before {
    z-index: 1;
    background-image:
        radial-gradient(circle at 24% 50%, rgba(124, 177, 112, .2) 0, rgba(124, 177, 112, 0) 31%),
        linear-gradient(90deg, rgba(4, 32, 19, .92) 0%, rgba(8, 49, 29, .84) 29%, rgba(16, 68, 41, .57) 49%, rgba(8, 42, 26, .31) 70%, rgba(5, 29, 18, .12) 100%);
    background-position: center, center;
    background-size: auto, auto;
    background-repeat: no-repeat, no-repeat;
    mask-image: none;
    -webkit-mask-image: none;
}
.bpo-hero-dots {
    position: absolute;
    z-index: 2;
    inset: 0;
    background-image: radial-gradient(circle, rgba(220, 244, 213, .22) 1px, transparent 1.5px);
    background-position: 25px 30px;
    background-size: 24px 24px;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .92) 27%, rgba(0, 0, 0, .5) 47%, transparent 66%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .92) 27%, rgba(0, 0, 0, .5) 47%, transparent 66%);
    pointer-events: none;
}
.bpo-hero--carousel .container::before {
    position: absolute;
    top: 48px;
    bottom: 38px;
    left: -46px;
    width: 1px;
    background: linear-gradient(180deg, rgba(242, 176, 113, 0), rgba(242, 176, 113, .58) 28%, rgba(182, 222, 164, .32) 70%, rgba(182, 222, 164, 0));
    content: "";
}
.bpo-hero--carousel::after { z-index: 1; }
.bpo-hero-slide-face { background-position: 68% 0; }
.bpo-hero-slide-desk { background-position: 72% 8%; }
.bpo-hero-carousel .owl-nav button.owl-prev, .bpo-hero-carousel .owl-nav button.owl-next { position: absolute; z-index: 4; top: 50%; width: 58px; height: 58px; border: 1px solid rgba(234, 253, 237, .42); background: rgba(12, 59, 39, .48); color: #fff; font-size: 22px; transform: translateY(-50%); transition: background .25s ease, border-color .25s ease; }
.bpo-hero-carousel .owl-nav button.owl-prev { left: 0; border-left: 0; border-radius: 0 12px 12px 0; }
.bpo-hero-carousel .owl-nav button.owl-next { right: 0; border-right: 0; border-radius: 12px 0 0 12px; }
.bpo-hero-carousel .owl-nav button:hover { border-color: #e49a52; background: #de8038; }
.bpo-page { overflow: hidden; background: #fff; }
.bpo-intro { position: relative; padding: 68px 0 130px; }
.bpo-intro-layout { max-width: 1110px; margin: 0 auto; }
.bpo-intro-heading { max-width: 800px; margin: 0 auto 48px; text-align: center; }
.bpo-intro-heading > span { display: inline-flex; align-items: center; gap: 12px; color: #c87938; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.bpo-intro-heading > span::before, .bpo-intro-heading > span::after { width: 31px; height: 2px; background: #d98a43; content: ""; }
.bpo-intro-heading h2 { margin: 17px 0 12px; color: #163d28; font-family: "Poppins", sans-serif; font-size: clamp(35px, 3.7vw, 52px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.bpo-intro-heading p { max-width: 620px; margin: 0 auto; color: #64746a; font-size: 16px; line-height: 1.7; }
.bpo-image-frame { position: relative; isolation: isolate; max-width: 1110px; margin: 0 auto; padding: 13px 0 0 13px; }
.bpo-image-frame::before { position: absolute; z-index: -1; top: 0; left: 0; width: 87%; height: 90%; border-radius: 4px 42px 4px 4px; background: linear-gradient(135deg, #174d30, #629663); content: ""; }
.bpo-image-frame img { display: block; width: 100%; height: auto; border-radius: 3px 30px 3px 3px; box-shadow: 0 25px 42px rgba(22, 72, 44, .19); }
.bpo-image-label { position: absolute; right: -12px; bottom: 28px; display: inline-flex; align-items: center; gap: 10px; padding: 14px 19px; border: 1px solid rgba(255, 255, 255, .42); border-radius: 3px 18px 3px 3px; background: rgba(17, 67, 42, .92); box-shadow: 0 14px 28px rgba(13, 55, 34, .23); color: #fff; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 650; }
.bpo-image-label i { color: #efb16e; font-size: 20px; }
.bpo-intro-copy { display: grid; max-width: 1110px; margin: 0 auto; padding: 66px 0 0; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 68px; }
.bpo-intro-copy-title > span { color: #c87938; }
.bpo-intro-copy h2 { max-width: 510px; margin: 20px 0 0; color: #163d28; font-family: "Poppins", sans-serif; font-size: clamp(35px, 3.4vw, 51px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.bpo-intro-copy-body { padding-top: 8px; }
.bpo-intro-copy p { margin: 0 0 17px; color: #587061; font-size: 16px; line-height: 1.8; text-align: justify; text-align-last: left; }
.bpo-inline-link { display: inline-flex; align-items: center; gap: 11px; margin-top: 16px; color: #2d7044; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 700; }
.bpo-inline-link i { transition: transform .22s ease; }
.bpo-inline-link:hover { color: #d5843d; }
.bpo-inline-link:hover i { transform: translateX(5px); }
.bpo-scope { position: relative; padding: 106px 0 112px; background: linear-gradient(115deg, #0d3925, #276943 61%, #51835b); }
.bpo-scope::before { position: absolute; top: 0; right: 0; width: 39%; height: 100%; background: radial-gradient(circle at 90% 20%, rgba(238, 181, 105, .22), transparent 13%), radial-gradient(circle at 66% 77%, rgba(187, 235, 188, .2), transparent 28%); content: ""; }
.bpo-scope .container { position: relative; z-index: 1; }
.bpo-scope-heading { max-width: 740px; margin: 0 auto 46px; text-align: center; }
.bpo-scope-heading > span { justify-content: center; color: #f0be82; }
.bpo-scope-heading h2 { margin: 19px 0 0; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.5vw, 51px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.bpo-scope-heading h2 em { color: #bfe3b4; font-style: normal; }
.bpo-scope-card { position: relative; height: 100%; min-height: 280px; padding: 31px 28px; border: 1px solid rgba(226, 248, 225, .21); border-radius: 18px; background: rgba(255, 255, 255, .075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); transition: transform .25s ease, background .25s ease; }
.bpo-scope-card:hover { background: rgba(255, 255, 255, .13); transform: translateY(-8px); }
.bpo-scope-card > i { display: inline-grid; width: 52px; height: 52px; margin-bottom: 26px; place-items: center; border: 1px solid rgba(242, 188, 122, .48); border-radius: 15px; background: rgba(235, 163, 87, .16); color: #f2bd7e; font-size: 26px; }
.bpo-scope-card h3 { margin: 0 0 12px; color: #fff; font-family: "Poppins", sans-serif; font-size: 20px; font-weight: 650; letter-spacing: -.035em; }
.bpo-scope-card p { margin: 0; color: rgba(235, 249, 236, .76); font-size: 14px; line-height: 1.7; }
.bpo-modes { position: relative; background: #f6faf4; }
.bpo-modes-heading { max-width: 810px; margin: 0 auto 50px; text-align: center; }
.bpo-modes-heading > span { color: #c87938; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.bpo-modes-heading h2 { margin: 17px 0; color: #183d29; font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.4vw, 50px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.bpo-modes-heading h2 em { color: #5c9460; font-style: normal; }
.bpo-modes-heading p { margin: 0; color: #617669; font-size: 16px; line-height: 1.75; }
.bpo-mode-card { display: flex; height: calc(100% - 24px); gap: 25px; margin-bottom: 24px; padding: 31px 33px; border: 1px solid #d8e7d6; border-radius: 4px 24px 4px 24px; background: #fff; box-shadow: 0 16px 30px rgba(32, 82, 48, .06); transition: transform .25s ease, box-shadow .25s ease; }
.bpo-mode-card:hover { box-shadow: 0 23px 38px rgba(32, 82, 48, .12); transform: translateY(-5px); }
.bpo-mode-icon { display: inline-grid; width: 48px; height: 48px; flex: 0 0 48px; place-items: center; border: 1px solid #b7d3b3; border-radius: 14px; background: linear-gradient(135deg, #eaf4e8, #d7ead4); color: #2d7044; font-size: 23px; box-shadow: 0 8px 15px rgba(41, 101, 54, .1); transition: transform .25s ease, background .25s ease, color .25s ease; }
.bpo-mode-card:hover .bpo-mode-icon { background: linear-gradient(135deg, #d88943, #e7a45b); color: #fff; transform: rotate(-6deg) scale(1.06); }
.bpo-mode-card h3 { margin: 0 0 9px; color: #224531; font-family: "Poppins", sans-serif; font-size: 21px; font-weight: 650; letter-spacing: -.035em; }
.bpo-mode-card p { margin: 0; color: #607466; font-size: 14px; line-height: 1.75; }
.bpo-technology { position: relative; overflow: hidden; background: linear-gradient(125deg, #0b3422, #1e5a39 58%, #47794c); }
.bpo-technology::before { position: absolute; top: -210px; right: -100px; width: 550px; height: 550px; border: 1px solid rgba(217, 245, 215, .16); border-radius: 50%; box-shadow: 0 0 0 46px rgba(217, 245, 215, .045), 0 0 0 104px rgba(217, 245, 215, .025); content: ""; }
.bpo-technology::after { position: absolute; bottom: 0; left: 0; width: 47%; height: 100%; background-image: radial-gradient(rgba(215, 244, 214, .15) 1px, transparent 1px); background-size: 21px 21px; mask-image: linear-gradient(90deg, #000, transparent); -webkit-mask-image: linear-gradient(90deg, #000, transparent); content: ""; }
.bpo-technology .container { position: relative; z-index: 1; }
.bpo-technology-intro { display: grid; max-width: 1110px; margin: 0 auto 50px; grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr); gap: 68px; }
.bpo-technology-intro > div > span, .bpo-technology-main > span { display: flex; align-items: center; gap: 11px; color: #efbb78; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.bpo-technology-intro > div > span::before, .bpo-technology-main > span::before { width: 35px; height: 2px; background: #dd9148; content: ""; }
.bpo-technology-intro h2 { max-width: 590px; margin: 18px 0 0; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.45vw, 51px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.bpo-technology-intro h2 em { color: #b9e0ae; font-style: normal; }
.bpo-technology-intro > p { align-self: end; margin: 0; color: rgba(238, 251, 238, .82); font-size: 16px; line-height: 1.8; text-align: justify; text-align-last: left; }
.bpo-technology-grid { display: grid; max-width: 1110px; margin: 0 auto; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 24px; }
.bpo-technology-main { position: relative; min-height: 100%; padding: 40px; border: 1px solid rgba(227, 248, 225, .25); border-radius: 5px 34px 5px 34px; background: linear-gradient(145deg, rgba(245, 255, 244, .13), rgba(255, 255, 255, .045)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
.bpo-technology-main-icon { display: inline-grid; width: 58px; height: 58px; margin-bottom: 29px; place-items: center; border: 1px solid rgba(239, 187, 120, .55); border-radius: 17px; background: rgba(231, 154, 76, .14); color: #f2bb7a; font-size: 29px; }
.bpo-technology-main h3 { margin: 18px 0 18px; color: #fff; font-family: "Poppins", sans-serif; font-size: 28px; font-weight: 650; letter-spacing: -.045em; line-height: 1.18; }
.bpo-technology-main p { margin: 0; color: rgba(238, 251, 238, .78); font-size: 15px; line-height: 1.78; }
.bpo-technology-link { display: inline-flex; align-items: center; gap: 11px; margin-top: 28px; color: #f1ba78; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 700; }
.bpo-technology-link i { transition: transform .22s ease; }
.bpo-technology-link:hover { color: #fff; }
.bpo-technology-link:hover i { transform: translateX(5px); }
.bpo-technology-list { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.bpo-technology-list article { padding: 31px 27px; border: 1px solid rgba(227, 248, 225, .18); border-radius: 18px; background: rgba(255, 255, 255, .065); transition: background .25s ease, transform .25s ease; }
.bpo-technology-list article:hover { background: rgba(255, 255, 255, .12); transform: translateY(-5px); }
.bpo-technology-list i { display: inline-grid; width: 44px; height: 44px; margin-bottom: 23px; place-items: center; border-radius: 13px; background: rgba(180, 224, 174, .15); color: #c7e9be; font-size: 22px; }
.bpo-technology-list h3 { margin: 0 0 10px; color: #fff; font-family: "Poppins", sans-serif; font-size: 19px; font-weight: 650; letter-spacing: -.035em; }
.bpo-technology-list p { margin: 0; color: rgba(238, 251, 238, .76); font-size: 13px; line-height: 1.75; }
.bpo-rhtech-suite { display: grid; max-width: 1110px; margin: 26px auto 0; padding: 20px; border: 1px solid rgba(237, 182, 113, .34); border-radius: 6px 34px 6px 34px; background: linear-gradient(105deg, rgba(220, 139, 65, .16), rgba(255, 255, 255, .055)); grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr); gap: 38px; align-items: center; }
.bpo-rhtech-visual { position: relative; min-height: 376px; margin: 0; overflow: hidden; border: 1px solid rgba(231, 248, 228, .35); border-radius: 4px 28px 4px 28px; background: linear-gradient(135deg, #f8fcf7, #e6f1e3); box-shadow: 0 18px 30px rgba(4, 32, 17, .22); }
.bpo-rhtech-visual::before { position: absolute; z-index: 1; top: 13px; left: 13px; width: 52px; height: 52px; border-top: 2px solid #e5a15d; border-left: 2px solid #e5a15d; content: ""; pointer-events: none; }
.bpo-rhtech-visual img { display: block; width: 100%; height: 100%; padding: 12px; object-fit: contain; object-position: center; }
.bpo-rhtech-visual figcaption { position: absolute; z-index: 1; right: 0; bottom: 17px; display: inline-flex; align-items: center; gap: 9px; padding: 10px 16px; border: 1px solid rgba(232, 248, 229, .25); border-right: 0; border-radius: 10px 0 0 10px; background: rgba(13, 58, 34, .88); box-shadow: 0 10px 20px rgba(5, 28, 15, .22); color: #fff; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 650; }
.bpo-rhtech-visual figcaption i { color: #efb774; font-size: 17px; }
.bpo-rhtech-suite-content { min-width: 0; padding: 12px 8px 12px 0; }
.bpo-rhtech-suite-copy > span { display: flex; align-items: center; gap: 10px; color: #efbc7b; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.4; text-transform: uppercase; }
.bpo-rhtech-suite-copy > span::before { width: 28px; height: 2px; flex: 0 0 28px; background: #e09a55; content: ""; }
.bpo-rhtech-suite-copy h3 { margin: 17px 0 14px; color: #fff; font-family: "Poppins", sans-serif; font-size: 27px; font-weight: 650; letter-spacing: -.045em; line-height: 1.18; }
.bpo-rhtech-suite-copy p { margin: 0; color: rgba(242, 253, 241, .81); font-size: 14px; line-height: 1.78; }
.bpo-rhtech-products { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.bpo-rhtech-products article { display: flex; gap: 14px; padding: 17px 15px; border: 1px solid rgba(226, 248, 225, .16); border-radius: 13px; background: rgba(8, 42, 26, .18); }
.bpo-rhtech-products i { display: inline-grid; width: 37px; height: 37px; flex: 0 0 37px; place-items: center; border-radius: 10px; background: rgba(228, 148, 75, .17); color: #f0b878; font-size: 20px; }
.bpo-gesth-product > img { width: 37px; height: 37px; flex: 0 0 37px; padding: 7px; border: 1px solid rgba(239, 187, 120, .42); border-radius: 10px; background: rgba(228, 148, 75, .17); filter: brightness(0) invert(1); object-fit: contain; }
.bpo-rhtech-products h4 { margin: 0 0 5px; color: #fff; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 650; letter-spacing: -.02em; line-height: 1.3; }
.bpo-rhtech-products p { margin: 0; color: rgba(239, 251, 238, .72); font-size: 12px; line-height: 1.6; }
.bpo-technology-modules { display: flex; max-width: 1110px; margin: 38px auto 0; gap: 9px; flex-wrap: wrap; }
.bpo-technology-modules span { padding: 9px 13px; border: 1px solid rgba(229, 248, 225, .2); border-radius: 999px; background: rgba(255, 255, 255, .06); color: rgba(244, 255, 243, .89); font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 600; }
.bpo-journey { padding: 110px 0; background: #f6faf4; }
.bpo-journey-card { display: flex; align-items: center; justify-content: space-between; gap: 45px; padding: 48px 58px; border: 1px solid #d6e6d4; border-radius: 5px 40px 5px 40px; background: linear-gradient(120deg, #fff, #eef6ed); box-shadow: 0 22px 45px rgba(28, 78, 45, .08); }
.bpo-journey-card > div { max-width: 720px; }
.bpo-journey-card span { color: #c87938; }
.bpo-journey-card h2 { margin: 16px 0; color: #193f2a; font-family: "Poppins", sans-serif; font-size: clamp(31px, 3vw, 45px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.bpo-journey-card p { margin: 0; color: #617669; font-size: 16px; line-height: 1.75; }
.bpo-journey-card .theme-btn { flex: 0 0 auto; background: #d98a43; box-shadow: 0 12px 22px rgba(184, 107, 42, .18); white-space: nowrap; }
.bpo-journey-card .theme-btn:hover { background: #b96d2e; }
.bpo-process-section { padding: 0 0 110px; background: #fff; }
.bpo-process { overflow: hidden; border: 1px solid #d7e6d4; border-radius: 7px 34px 7px 34px; background: #fff; box-shadow: 0 16px 35px rgba(26, 72, 42, .065); transition: box-shadow .3s ease, border-color .3s ease; }
.bpo-process[data-bpo-process-animating], .bpo-process-step[data-bpo-process-animating], .bpo-process-topic[data-bpo-process-animating] { transition: height .28s ease, box-shadow .3s ease, border-color .3s ease; }
.bpo-process[open] { border-color: #c5dcc3; box-shadow: 0 25px 48px rgba(27, 77, 43, .11); }
.bpo-process summary { list-style: none; }
.bpo-process summary::-webkit-details-marker { display: none; }
.bpo-process-summary { display: grid; grid-template-columns: 54px minmax(0, 1fr) 48px; align-items: center; gap: 20px; padding: 27px 31px; cursor: pointer; transition: background .25s ease; }
.bpo-process-summary:hover { background: #f7fbf5; }
.bpo-process-summary:focus-visible, .bpo-process-step > summary:focus-visible, .bpo-process-topic > summary:focus-visible { outline: 2px solid #d68c46; outline-offset: -2px; }
.bpo-process-summary-icon { display: grid; width: 54px; height: 54px; place-items: center; border-radius: 16px; background: linear-gradient(145deg, #1c5435, #397b4b); box-shadow: 0 10px 18px rgba(27, 78, 43, .16); color: #f3c085; font-size: 25px; }
.bpo-process-summary-copy { min-width: 0; }
.bpo-process-summary-title { display: block; color: #1d442e; font-family: "Poppins", sans-serif; font-size: clamp(19px, 2.05vw, 26px); font-weight: 650; letter-spacing: -.045em; line-height: 1.2; }
.bpo-process-summary-description { display: block; margin-top: 5px; color: #6d7d72; font-size: 14px; line-height: 1.5; }
.bpo-process-toggle, .bpo-process-step-toggle, .bpo-process-topic-toggle { position: relative; display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border: 1px solid #cbdcc9; border-radius: 50%; background: #f2f8f0; color: transparent; font-size: 0; transition: background .25s ease, border-color .25s ease, transform .25s ease; }
.bpo-process-toggle::before, .bpo-process-toggle::after, .bpo-process-step-toggle::before, .bpo-process-step-toggle::after, .bpo-process-topic-toggle::before, .bpo-process-topic-toggle::after { position: absolute; width: 13px; height: 2px; border-radius: 2px; background: #39754a; content: ""; transition: transform .25s ease; }
.bpo-process-toggle::after, .bpo-process-step-toggle::after, .bpo-process-topic-toggle::after { transform: rotate(90deg); }
.bpo-process[open] > .bpo-process-summary .bpo-process-toggle, .bpo-process-step[open] > summary .bpo-process-step-toggle, .bpo-process-topic[open] > summary .bpo-process-topic-toggle { border-color: #d58d49; background: #fff3e8; }
.bpo-process[open] > .bpo-process-summary .bpo-process-toggle::after, .bpo-process-step[open] > summary .bpo-process-step-toggle::after, .bpo-process-topic[open] > summary .bpo-process-topic-toggle::after { transform: rotate(90deg) scaleX(0); }
.bpo-process-panel { padding: 16px 48px 52px; }
.bpo-process-intro { max-width: 790px; padding: 30px 0 39px; }
.bpo-process-intro > span, .bpo-process-cta span { display: flex; align-items: center; gap: 10px; color: #c67a3b; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.bpo-process-intro > span::before, .bpo-process-cta span::before { width: 28px; height: 2px; background: #d88b43; content: ""; }
.bpo-process-intro h2 { margin: 15px 0 13px; color: #1d462e; font-family: "Poppins", sans-serif; font-size: clamp(30px, 3.25vw, 45px); font-weight: 650; letter-spacing: -.06em; line-height: 1.1; }
.bpo-process-intro h2 em { color: #c87938; font-style: normal; }
.bpo-process-intro p { max-width: 730px; margin: 0; color: #65776b; font-size: 16px; line-height: 1.78; }
.bpo-process-steps { border-top: 1px solid #e0ebdd; }
.bpo-process-step { overflow: hidden; border-bottom: 1px solid #e0ebdd; }
.bpo-process-step > summary { display: grid; grid-template-columns: 48px minmax(0, 1fr) 34px; align-items: center; gap: 17px; padding: 21px 20px 21px 10px; cursor: pointer; transition: background .22s ease; }
.bpo-process-step > summary:hover, .bpo-process-step[open] > summary { background: #f7fbf5; }
.bpo-process-step-number { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 14px; background: #edf5ea; color: #39764a; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 800; }
.bpo-process-step-summary { display: block; min-width: 0; }
.bpo-process-step-title { display: block; color: #254c33; font-family: "Poppins", sans-serif; font-size: 17px; font-weight: 650; letter-spacing: -.03em; line-height: 1.3; }
.bpo-process-step-summary > span:last-child { display: block; margin-top: 3px; color: #718076; font-size: 13px; line-height: 1.5; }
.bpo-process-step-panel { padding: 3px 56px 30px 75px; color: #637469; font-size: 14px; line-height: 1.75; }
.bpo-process-step-panel > p, .bpo-process-topic-panel > p { margin: 0 0 14px; }
.bpo-process-step-panel > p:last-child, .bpo-process-topic-panel > p:last-child { margin-bottom: 0; }
.bpo-process-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 18px 0; padding: 0; gap: 9px 25px; list-style: none; }
.bpo-process-list li { position: relative; padding-left: 20px; color: #56705e; }
.bpo-process-list li::before { position: absolute; top: .68em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: #d58b46; box-shadow: 0 0 0 4px #fff1e4; content: ""; }
.bpo-process-topics { display: grid; margin-top: 35px; gap: 12px; }
.bpo-process-topic { overflow: hidden; border: 1px solid #dce8da; border-radius: 12px; background: #fbfdf9; }
.bpo-process-topic > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 22px; cursor: pointer; transition: background .22s ease; }
.bpo-process-topic > summary:hover, .bpo-process-topic[open] > summary { background: #f2f8ef; }
.bpo-process-topic > summary > span { display: flex; min-width: 0; align-items: center; gap: 12px; }
.bpo-process-topic > summary > span > i { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border-radius: 11px; background: #e8f2e6; color: #3e7b4d; font-size: 18px; }
.bpo-process-topic-title { color: #264b34; font-family: "Poppins", sans-serif; font-size: 16px; font-weight: 650; letter-spacing: -.025em; }
.bpo-process-topic-panel { padding: 3px 72px 29px; color: #62746a; font-size: 14px; line-height: 1.75; }
.bpo-process-responsibilities { display: grid; grid-template-columns: 1fr 1fr; margin: 20px 0 17px; gap: 16px; }
.bpo-process-responsibilities article { padding: 20px; border-left: 3px solid #d38a45; border-radius: 0 10px 10px 0; background: #f5f9f3; }
.bpo-process-responsibilities article:last-child { border-color: #448054; background: #eef6ec; }
.bpo-process-responsibilities article > span { color: #53705d; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .1em; line-height: 1.4; }
.bpo-process-responsibilities ul { margin: 13px 0 0; padding-left: 18px; }
.bpo-process-responsibilities li { margin-bottom: 7px; }
.bpo-process-note { display: flex; align-items: flex-start; gap: 9px; margin-top: 19px !important; padding: 12px 14px; border-radius: 8px; background: #fff5e9; color: #87613e; font-size: 12px; line-height: 1.6; }
.bpo-process-note i { margin-top: 2px; color: #d18339; font-size: 16px; }
.bpo-process-flow { display: grid; margin: 20px 0 0; padding: 0; gap: 0; list-style: none; counter-reset: bpo-flow; }
.bpo-process-flow li { position: relative; padding: 0 0 17px 45px; color: #466252; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 600; }
.bpo-process-flow li::before { position: absolute; z-index: 1; top: 0; left: 0; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: #38774a; color: #fff; content: counter(bpo-flow, decimal-leading-zero); counter-increment: bpo-flow; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; }
.bpo-process-flow li::after { position: absolute; top: 28px; bottom: 0; left: 13px; width: 2px; background: #cfe1cd; content: ""; }
.bpo-process-flow li:last-child { padding-bottom: 0; }
.bpo-process-flow li:last-child::after { display: none; }
.bpo-process-cta { display: flex; align-items: center; justify-content: space-between; gap: 35px; margin-top: 43px; padding: 35px 38px; border-radius: 7px 28px 7px 28px; background: linear-gradient(120deg, #1d4a30, #467d52); box-shadow: 0 17px 31px rgba(21, 72, 38, .14); }
.bpo-process-cta > div { max-width: 720px; }
.bpo-process-cta h3 { margin: 12px 0 8px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(22px, 2.45vw, 32px); font-weight: 650; letter-spacing: -.05em; line-height: 1.16; }
.bpo-process-cta p { margin: 0; color: rgba(241, 252, 241, .82); font-size: 14px; line-height: 1.65; }
.bpo-process-cta .theme-btn { flex: 0 0 auto; background: #d58b45; box-shadow: 0 10px 20px rgba(9, 43, 25, .22); white-space: nowrap; }
.bpo-process-cta .theme-btn:hover { background: #f0aa62; color: #173c27; }
@media (prefers-reduced-motion: reduce) { .bpo-process, .bpo-process *, .bpo-process::before, .bpo-process::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
@media (max-width: 991px) { .bpo-process-section { padding-bottom: 84px; } .bpo-process-panel { padding-right: 30px; padding-left: 30px; } .bpo-process-step-panel { padding-right: 35px; } }
@media (max-width: 767px) { .bpo-process-section { padding-bottom: 72px; } .bpo-process-summary { grid-template-columns: 45px minmax(0, 1fr) 34px; gap: 14px; padding: 20px 17px; } .bpo-process-summary-icon { width: 45px; height: 45px; border-radius: 13px; font-size: 21px; } .bpo-process-summary-description { font-size: 12px; } .bpo-process-panel { padding: 8px 18px 32px; } .bpo-process-intro { padding: 27px 4px 29px; } .bpo-process-intro p { font-size: 15px; } .bpo-process-step > summary { grid-template-columns: 40px minmax(0, 1fr) 30px; gap: 12px; padding: 17px 7px; } .bpo-process-step-number { width: 40px; height: 40px; border-radius: 12px; font-size: 11px; } .bpo-process-step-title { font-size: 15px; } .bpo-process-step-summary > span:last-child { font-size: 12px; } .bpo-process-step-panel { padding: 2px 9px 25px 52px; font-size: 13px; } .bpo-process-list { grid-template-columns: 1fr; gap: 8px; } .bpo-process-topic { border-radius: 10px; } .bpo-process-topic > summary { padding: 17px 15px; } .bpo-process-topic-title { font-size: 14px; } .bpo-process-topic-panel { padding: 2px 17px 24px; font-size: 13px; } .bpo-process-responsibilities { grid-template-columns: 1fr; } .bpo-process-cta { align-items: flex-start; flex-direction: column; gap: 23px; margin-top: 30px; padding: 27px 23px; } .bpo-process-cta .theme-btn { width: 100%; text-align: center; } }
.bpo-compare { position: relative; overflow: hidden; padding: 112px 0; background: linear-gradient(135deg, #f3f8f1 0%, #fff 54%, #f7fbf5 100%); }
.bpo-compare::before { position: absolute; top: -170px; right: -130px; width: 460px; height: 460px; border: 1px solid rgba(55, 113, 68, .14); border-radius: 50%; box-shadow: 0 0 0 45px rgba(55, 113, 68, .045), 0 0 0 94px rgba(55, 113, 68, .025); content: ""; }
.bpo-compare-layout { position: relative; display: grid; grid-template-columns: minmax(270px, .82fr) minmax(540px, 1.18fr); align-items: center; gap: 82px; }
.bpo-compare-copy > span { display: flex; align-items: center; gap: 11px; color: #c87938; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.bpo-compare-copy > span::before { width: 32px; height: 2px; background: #d98a43; content: ""; }
.bpo-compare-copy h2 { margin: 17px 0; color: #183d29; font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.55vw, 50px); font-weight: 650; letter-spacing: -.06em; line-height: 1.08; }
.bpo-compare-copy h2 em { color: #c87938; font-style: normal; }
.bpo-compare-copy > p { max-width: 430px; margin: 0; color: #637669; font-size: 16px; line-height: 1.75; }
.bpo-compare-stat { display: flex; max-width: 390px; align-items: flex-start; gap: 12px; margin: 28px 0; color: #446253; font-size: 13px; font-weight: 600; line-height: 1.55; }
.bpo-compare-stat i { color: #d88841; font-size: 22px; }
.bpo-compare-cta { display: inline-flex; align-items: center; gap: 10px; padding: 13px 17px; border-radius: 999px; background: #244d33; box-shadow: 0 11px 21px rgba(29, 74, 43, .16); color: #fff; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; transition: transform .25s ease, background .25s ease; }
.bpo-compare-cta:hover { background: #d4833d; color: #fff; transform: translateX(4px); }
.bpo-compare-board { position: relative; padding: 27px; border: 1px solid #d8e6d5; border-radius: 8px 34px 8px 34px; background: rgba(255, 255, 255, .91); box-shadow: 0 25px 52px rgba(32, 80, 46, .1); }
.bpo-compare-board-head { display: grid; grid-template-columns: 1fr 42px 1fr; margin: 0 12px 13px; color: #718176; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.bpo-compare-board-head span:last-child { grid-column: 3; color: #3c7a4a; }
.bpo-compare-showcase { display: grid; grid-template-columns: 58px minmax(0, 1fr) 100px; align-items: center; gap: 15px; margin-bottom: 19px; padding: 16px; border: 1px solid #d7e8d5; border-radius: 13px; background: linear-gradient(118deg, #edf6eb, #fbfdf9); transition: border-color .3s ease, box-shadow .3s ease; }
.bpo-compare-showcase-icon { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 17px; background: #2f7444; box-shadow: 0 10px 18px rgba(30, 99, 49, .18); color: #fff; font-size: 28px; transition: transform .32s ease, background .32s ease; }
.bpo-compare-showcase-copy { min-width: 0; transition: opacity .16s ease, transform .16s ease; }
.bpo-compare-showcase-copy > span { color: #bd7438; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.bpo-compare-showcase h3 { margin: 5px 0 4px; color: #1d4b2d; font-family: "Poppins", sans-serif; font-size: 19px; font-weight: 700; letter-spacing: -.04em; line-height: 1.17; }
.bpo-compare-showcase p { margin: 0; color: #607367; font-size: 12px; line-height: 1.55; }
.bpo-compare-showcase-progress { display: grid; grid-template-columns: 18px minmax(0, 1fr) 18px; align-items: center; gap: 7px; color: #63806a; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; }
.bpo-compare-showcase-progress > div { height: 5px; overflow: hidden; border-radius: 999px; background: #d4e5d2; }
.bpo-compare-showcase-progress i { display: block; width: 16.67%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #da9349, #3f8350); transition: width .58s cubic-bezier(.2, .8, .2, 1); }
.bpo-compare-board.is-changing .bpo-compare-showcase-copy { opacity: 0; transform: translateY(5px); }
.bpo-compare-board.is-changing .bpo-compare-showcase-icon { background: #d18742; transform: rotate(-9deg) scale(.9); }
.bpo-compare-list { display: grid; gap: 9px; }
.bpo-compare-row { display: grid; grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr); width: 100%; align-items: stretch; padding: 0; border: 0; background: transparent; cursor: pointer; text-align: left; }
.bpo-compare-pain, .bpo-compare-gain { display: flex; min-height: 59px; align-items: center; gap: 10px; padding: 12px 13px; border: 1px solid #e1e9df; border-radius: 10px; color: #56675c; font-size: 13px; font-weight: 600; line-height: 1.32; transition: border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease; }
.bpo-compare-pain i, .bpo-compare-gain i { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 8px; font-size: 15px; }
.bpo-compare-pain i { background: #fff1e8; color: #c77b4d; }
.bpo-compare-gain { border-color: #cddfcb; background: #f2f8f0; color: #2f6240; }
.bpo-compare-gain i { background: #37764a; color: #fff; }
.bpo-compare-arrow { display: grid; place-items: center; color: #c98243; font-size: 18px; transition: transform .25s ease, color .25s ease; }
.bpo-compare-row:hover .bpo-compare-pain, .bpo-compare-row:focus-visible .bpo-compare-pain, .bpo-compare-row.is-active .bpo-compare-pain { border-color: #e5b58a; background: #fff9f4; color: #8a5734; }
.bpo-compare-row:hover .bpo-compare-gain, .bpo-compare-row:focus-visible .bpo-compare-gain, .bpo-compare-row.is-active .bpo-compare-gain { border-color: #4a8a58; background: #e7f2e5; box-shadow: 0 8px 17px rgba(38, 101, 54, .1); transform: translateX(3px); }
.bpo-compare-row:hover .bpo-compare-arrow, .bpo-compare-row:focus-visible .bpo-compare-arrow, .bpo-compare-row.is-active .bpo-compare-arrow { color: #397d4a; transform: translateX(3px); }
.bpo-compare-row:focus-visible { outline: 2px solid #d98a43; outline-offset: 4px; border-radius: 10px; }
.bpo-compare-hint { display: flex; align-items: center; gap: 8px; margin: 19px 4px 0; color: #77877b; font-size: 11px; }
.bpo-compare-hint i { color: #d1803c; font-size: 16px; }
@media (max-width: 991px) { .bpo-compare { padding: 84px 0; } .bpo-compare-layout { grid-template-columns: 1fr; gap: 44px; } .bpo-compare-copy > p { max-width: 610px; } }
@media (max-width: 575px) { .bpo-compare { padding: 70px 0; } .bpo-compare-board { padding: 20px 14px; border-radius: 6px 24px 6px 24px; } .bpo-compare-board-head { display: none; } .bpo-compare-showcase { grid-template-columns: 48px minmax(0, 1fr); gap: 12px; padding: 13px; } .bpo-compare-showcase-icon { width: 48px; height: 48px; border-radius: 14px; font-size: 23px; } .bpo-compare-showcase h3 { font-size: 16px; } .bpo-compare-showcase p { display: none; } .bpo-compare-showcase-progress { grid-column: 1 / -1; } .bpo-compare-row { grid-template-columns: 1fr; gap: 0; } .bpo-compare-arrow { display: none; } .bpo-compare-pain, .bpo-compare-gain { min-height: 0; padding: 11px 12px; font-size: 12px; } .bpo-compare-pain { border-radius: 9px 9px 0 0; } .bpo-compare-gain { border-top: 0; border-radius: 0 0 9px 9px; } .bpo-compare-row.is-active .bpo-compare-gain, .bpo-compare-row:hover .bpo-compare-gain { transform: none; } .bpo-compare-hint { margin: 16px 2px 0; } }
@media (max-width: 991px) { .bpo-hero { min-height: 500px; } .bpo-intro { padding: 58px 0 85px; } .bpo-intro-heading { margin-bottom: 38px; } .bpo-intro-copy { padding: 52px 0 0; gap: 38px; } .bpo-image-frame { margin: 0 auto; } .bpo-scope-card { min-height: 245px; margin-bottom: 24px; } .bpo-technology-intro { gap: 38px; } .bpo-technology-grid, .bpo-rhtech-suite { grid-template-columns: 1fr; } .bpo-technology-main { min-height: auto; } .bpo-journey-card { align-items: flex-start; flex-direction: column; } }
@media (max-width: 767px) { .bpo-hero-carousel .owl-nav { display: none; } .bpo-intro-copy, .bpo-technology-intro { grid-template-columns: 1fr; gap: 24px; } .bpo-intro-copy-body { padding-top: 0; } .bpo-modes-heading { margin-bottom: 35px; } .bpo-technology-intro { margin-bottom: 34px; } .bpo-technology-list, .bpo-rhtech-products { grid-template-columns: 1fr; } }
@media (max-width: 575px) { .bpo-hero { min-height: 520px; padding: 140px 0 70px; } .bpo-hero h1 { font-size: 42px; } .bpo-hero p { font-size: 15px; } .bpo-intro { padding: 52px 0 72px; } .bpo-intro-heading { margin-bottom: 31px; } .bpo-intro-heading h2 { font-size: 35px; } .bpo-intro-heading p { font-size: 15px; } .bpo-image-frame { padding: 8px 0 0 8px; } .bpo-image-label { right: 0; bottom: 13px; padding: 11px 13px; font-size: 10px; } .bpo-intro-copy { display: block; padding-top: 42px; } .bpo-intro-copy h2 { font-size: 35px; } .bpo-intro-copy-body { padding-top: 24px; } .bpo-intro-copy p { font-size: 15px; } .bpo-scope { padding: 75px 0 55px; } .bpo-modes { padding: 72px 0 48px; } .bpo-mode-card { gap: 17px; padding: 25px 20px; } .bpo-technology { padding: 72px 0; } .bpo-technology-main, .bpo-rhtech-suite { padding: 29px 24px; } .bpo-technology-main h3, .bpo-rhtech-suite-copy h3 { font-size: 25px; } .bpo-technology-list article { padding: 25px 21px; } .bpo-technology-modules { margin-top: 25px; } .bpo-journey { padding: 72px 0; } .bpo-journey-card { gap: 27px; padding: 34px 26px; } .bpo-journey-card .theme-btn { width: 100%; text-align: center; } }

@media (max-width: 991px) {
    .bpo-rhtech-suite { padding: 20px; }
    .bpo-rhtech-visual { min-height: 420px; }
    .bpo-rhtech-suite-content { padding: 12px 8px; }
}

@media (max-width: 575px) {
    .bpo-rhtech-suite { padding: 14px; }
    .bpo-rhtech-visual { min-height: 285px; }
    .bpo-rhtech-visual img { padding: 8px; }
    .bpo-rhtech-visual figcaption { bottom: 10px; padding: 9px 12px; font-size: 9px; }
    .bpo-rhtech-suite-content { padding: 17px 10px 10px; }
}

/* Cursos */
.courses-page { background: #fbfcf8; color: #193b2a; }
.courses-hero { position: relative; min-height: 660px; overflow: hidden; background-position: center; background-size: cover; }
.courses-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8, 40, 26, .95) 0%, rgba(13, 59, 37, .86) 40%, rgba(13, 59, 37, .36) 66%, rgba(13, 59, 37, .08) 100%); }
.courses-hero::after { position: absolute; top: 0; bottom: 0; left: 0; width: 47%; background-image: radial-gradient(rgba(228, 176, 108, .4) 1px, transparent 1px); background-size: 22px 22px; content: ""; opacity: .37; pointer-events: none; }
.courses-hero-container { position: relative; z-index: 1; display: flex; min-height: 660px; align-items: center; }
.courses-hero-copy { width: min(650px, 100%); padding: 105px 0 45px; color: #fff; }
.courses-eyebrow, .courses-catalog-heading > span, .courses-learning-copy > span, .courses-contact-card span { display: flex; align-items: center; gap: 11px; color: #f0b575; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.35; text-transform: uppercase; }
.courses-eyebrow::before, .courses-catalog-heading > span::before, .courses-learning-copy > span::before, .courses-contact-card span::before { width: 34px; height: 2px; background: #db944d; content: ""; flex: 0 0 34px; }
.courses-hero h1 { margin: 21px 0 24px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(43px, 5.1vw, 74px); font-weight: 650; letter-spacing: -.065em; line-height: 1.03; }
.courses-hero h2 { margin: 21px 0 24px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(43px, 5.1vw, 74px); font-weight: 650; letter-spacing: -.065em; line-height: 1.03; }
.courses-hero p { max-width: 600px; margin: 0; color: rgba(247, 252, 246, .88); font-size: 17px; line-height: 1.72; }
.courses-hero-button { display: inline-flex; align-items: center; gap: 13px; margin-top: 31px; background: #d48b42; box-shadow: 0 14px 24px rgba(0, 0, 0, .22); }
.courses-hero-button:hover { background: #eeaf69; color: #143323; }
.courses-hero-carousel { background-image: none !important; }
.courses-hero-carousel::after { z-index: 1; }
.courses-hero-slide { position: absolute; inset: 0; display: flex; align-items: stretch; background-position: center; background-size: cover; opacity: 0; transform: scale(1.025); transition: opacity .7s ease, transform 7.5s ease, visibility 0s linear .7s; visibility: hidden; }
.courses-hero-slide.is-active { opacity: 1; transform: scale(1); transition: opacity .7s ease, transform 7.5s ease; visibility: visible; }
.courses-hero-slide .courses-hero-overlay { z-index: 0; }
.courses-hero-slide .courses-hero-container { width: 100%; z-index: 2; }
.courses-hero-controls { position: absolute; z-index: 5; bottom: 32px; left: 50%; display: flex; align-items: center; gap: 15px; transform: translateX(-50%); }
.courses-hero-control, .courses-hero-dots button { border: 0; cursor: pointer; }
.courses-hero-control { display: inline-flex; width: 39px; height: 39px; align-items: center; justify-content: center; border: 1px solid rgba(255, 255, 255, .46); border-radius: 50%; background: rgba(9, 38, 25, .34); color: #fff; font-size: 19px; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.courses-hero-control:hover { border-color: #e6a159; background: #d48b42; transform: translateY(-2px); }
.courses-hero-dots { display: flex; align-items: center; gap: 8px; }
.courses-hero-dots button { width: 8px; height: 8px; padding: 0; border-radius: 50%; background: rgba(255, 255, 255, .44); transition: width .25s ease, background .25s ease; }
.courses-hero-dots button.is-active { width: 27px; border-radius: 999px; background: #e6a159; }
.courses-catalog { padding: 112px 0 92px; background: linear-gradient(180deg, #fbfcf8, #f1f7ef); }
.courses-catalog-heading { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.courses-catalog-heading > span { justify-content: center; }
.courses-catalog-heading h2 { margin: 16px 0 14px; color: #1d412d; font-family: "Poppins", sans-serif; font-size: clamp(34px, 4vw, 52px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.courses-catalog-heading p { max-width: 590px; margin: 0 auto; color: #687b6d; font-size: 16px; line-height: 1.75; }
.courses-catalog-list { display: grid; gap: 30px; }
.courses-featured-card { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(260px, .75fr); overflow: hidden; border: 1px solid #d7e6d6; border-radius: 8px 36px 8px 36px; background: #fff; box-shadow: 0 22px 50px rgba(24, 67, 40, .1); }
.courses-featured-card__tag { display: flex; grid-column: 1 / -1; align-items: center; gap: 9px; padding: 15px 35px; background: linear-gradient(90deg, #224c33, #477852); color: #eff9ef; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 650; letter-spacing: .03em; }
.courses-featured-card__tag i { color: #f0b575; font-size: 18px; }
.courses-featured-card__content { padding: 42px 46px 44px; }
.courses-card-eyebrow { color: #ce7c38; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.courses-featured-card h3 { margin: 14px 0 16px; color: #1c3d2a; font-family: "Poppins", sans-serif; font-size: clamp(29px, 3vw, 42px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.courses-featured-card__content > p { max-width: 650px; margin: 0; color: #617569; font-size: 15px; line-height: 1.75; }
.courses-featured-card ul { display: grid; margin: 25px 0 0; padding: 0; gap: 11px; list-style: none; }
.courses-featured-card li { display: flex; align-items: flex-start; gap: 10px; color: #345542; font-size: 14px; line-height: 1.55; }
.courses-featured-card li i { margin-top: 2px; color: #d98a43; font-size: 17px; }
.courses-featured-card__aside { display: flex; flex-direction: column; justify-content: center; padding: 40px; border-left: 1px solid #d9e7d8; background: linear-gradient(145deg, #edf6eb, #dcebd9); }
.courses-featured-card__aside > i { display: grid; width: 56px; height: 56px; margin-bottom: 20px; place-items: center; border-radius: 16px; background: #244c33; box-shadow: 0 12px 18px rgba(25, 70, 41, .15); color: #f0b575; font-size: 28px; }
.courses-featured-card__aside span { color: #244c33; font-family: "Poppins", sans-serif; font-size: 21px; font-weight: 650; letter-spacing: -.035em; }
.courses-featured-card__aside p { margin: 11px 0 25px; color: #657967; font-size: 14px; line-height: 1.65; }
.courses-button { display: inline-flex; align-items: center; gap: 9px; width: max-content; padding: 11px 16px; border-radius: 999px; background: #d58d46; color: #fff; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; transition: transform .2s ease, background .2s ease; }
.courses-button:hover { background: #b96e2f; color: #fff; transform: translateX(4px); }
.courses-featured-card--legislation { border-color: #ead9c8; }
.courses-featured-card--legislation .courses-featured-card__tag { background: linear-gradient(90deg, #70472c, #ad713e); }
.courses-featured-card--legislation .courses-card-eyebrow { color: #a7602c; }
.courses-featured-card--legislation .courses-featured-card__aside { border-left-color: #ead9c8; background: linear-gradient(145deg, #fbf2e8, #f0dfcc); }
.courses-featured-card--legislation .courses-featured-card__aside > i { background: #754a2c; color: #f8ddb5; }
.courses-featured-card--legislation .courses-featured-card__aside span { color: #6b4329; }
.courses-featured-card--legislation .courses-button { background: #b8753d; }
.courses-featured-card--legislation .courses-button:hover { background: #955a2d; }
.courses-learning { padding: 105px 0; background: #fff; }
.courses-learning-copy { padding-right: 48px; }
.courses-learning-copy h2 { margin: 17px 0; color: #1c3e2b; font-family: "Poppins", sans-serif; font-size: clamp(32px, 3.4vw, 48px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.courses-learning-copy p { margin: 0; color: #647669; font-size: 16px; line-height: 1.8; }
.courses-learning-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.courses-learning-grid article { min-height: 220px; padding: 27px 23px; border: 1px solid #dbe8d9; border-radius: 15px; background: #fbfdf9; transition: transform .25s ease, box-shadow .25s ease; }
.courses-learning-grid article:hover { box-shadow: 0 16px 28px rgba(37, 75, 48, .12); transform: translateY(-6px); }
.courses-learning-grid i { display: grid; width: 42px; height: 42px; margin-bottom: 22px; place-items: center; border-radius: 12px; background: #e4f0e1; color: #27603d; font-size: 21px; }
.courses-learning-grid h3 { margin: 0 0 10px; color: #254331; font-family: "Poppins", sans-serif; font-size: 18px; font-weight: 650; letter-spacing: -.035em; line-height: 1.2; }
.courses-learning-grid p { margin: 0; color: #687a6b; font-size: 13px; line-height: 1.65; }
.courses-contact { padding: 0 0 110px; background: #fff; }
.courses-contact-card { display: flex; align-items: center; justify-content: space-between; gap: 38px; padding: 44px 55px; border-radius: 8px 38px 8px 38px; background: linear-gradient(112deg, #193d2a, #4f8059); box-shadow: 0 20px 38px rgba(15, 57, 31, .18); }
.courses-contact-card h2 { margin: 15px 0 10px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(28px, 3vw, 43px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.courses-contact-card p { max-width: 680px; margin: 0; color: rgba(243, 253, 242, .83); font-size: 15px; line-height: 1.72; }
.courses-contact-card .theme-btn { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; background: #d48b42; white-space: nowrap; }
.courses-contact-card .theme-btn:hover { background: #f0ad64; color: #173724; }
@media (max-width: 991px) { .courses-hero, .courses-hero-container { min-height: 550px; } .courses-featured-card { grid-template-columns: 1fr; } .courses-featured-card__aside { border-top: 1px solid #d9e7d8; border-left: 0; } .courses-featured-card--legislation .courses-featured-card__aside { border-top-color: #ead9c8; } .courses-learning-copy { margin-bottom: 38px; padding-right: 0; } }
@media (max-width: 767px) { .courses-hero, .courses-hero-container { min-height: 560px; } .courses-hero-copy { padding: 110px 0 82px; } .courses-hero h1, .courses-hero h2 { font-size: 45px; } .courses-hero p { font-size: 15px; } .courses-hero-controls { bottom: 25px; } .courses-catalog, .courses-learning { padding: 74px 0; } .courses-featured-card__tag { padding: 14px 22px; } .courses-featured-card__content, .courses-featured-card__aside { padding: 30px 25px; } .courses-learning-grid { grid-template-columns: 1fr; } .courses-learning-grid article { min-height: 0; } .courses-contact { padding-bottom: 75px; } .courses-contact-card { align-items: flex-start; flex-direction: column; padding: 36px 26px; } .courses-contact-card .theme-btn { width: 100%; justify-content: center; } .courses-hero::after { width: 65%; } }

/* Cargos e salarios */
.cs-page { --cs-ink: #143a29; --cs-deep: #0b2f20; --cs-green: #39784c; --cs-mint: #e8f1e5; --cs-sand: #f7efe4; --cs-gold: #d58b43; overflow: hidden; background: #fbfcf9; color: var(--cs-ink); }
.cs-page *, .cs-page *::before, .cs-page *::after { box-sizing: border-box; }
.cs-hero { position: relative; overflow: hidden; padding: 188px 0 94px; background: radial-gradient(circle at 77% 18%, rgba(102, 170, 112, .24), transparent 30%), linear-gradient(125deg, #0b2e20 0%, #123d29 53%, #1e5436 100%); }
.cs-hero::before { position: absolute; inset: 0; background-image: radial-gradient(rgba(223, 186, 125, .34) 1px, transparent 1px); background-position: -3px -3px; background-size: 22px 22px; content: ""; mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .8) 45%, transparent 77%); opacity: .42; pointer-events: none; }
.cs-hero::after { position: absolute; right: -120px; bottom: -210px; width: 560px; height: 560px; border: 1px solid rgba(219, 242, 219, .15); border-radius: 50%; box-shadow: 0 0 0 42px rgba(219, 242, 219, .05), 0 0 0 110px rgba(219, 242, 219, .025); content: ""; pointer-events: none; }
.cs-hero .container { position: relative; z-index: 1; }
.cs-hero-copy { max-width: 690px; color: #fff; }
.cs-eyebrow { display: inline-flex; align-items: center; gap: 11px; color: #efb472; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .17em; line-height: 1.4; text-transform: uppercase; }
.cs-eyebrow::before { width: 35px; height: 2px; background: currentColor; content: ""; flex: 0 0 35px; }
.cs-eyebrow--dark { color: #b96f32; }
.cs-hero h1 { max-width: 690px; margin: 19px 0 22px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(45px, 5.05vw, 76px); font-weight: 650; letter-spacing: -.065em; line-height: 1.02; }
.cs-hero-copy > p { max-width: 575px; margin: 0; color: rgba(243, 252, 245, .86); font-size: 17px; line-height: 1.72; }
.cs-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 23px; margin-top: 31px; }
.cs-hero-cta { display: inline-flex; align-items: center; gap: 11px; background: var(--cs-gold); box-shadow: 0 16px 28px rgba(0, 0, 0, .2); }
.cs-hero-cta:hover { background: #ecac67; color: #173c2a; }
.cs-text-link { display: inline-flex; align-items: center; gap: 9px; padding: 8px 0; border-bottom: 1px solid rgba(235, 247, 236, .42); color: #eef9ef; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; }
.cs-text-link:hover { border-color: #efb472; color: #efb472; }
.cs-text-link i { font-size: 17px; transition: transform .2s ease; }
.cs-text-link:hover i { transform: translateY(3px); }
.cs-hero-points { display: flex; flex-wrap: wrap; gap: 13px 23px; margin: 35px 0 0; padding: 0; color: rgba(239, 251, 241, .86); font-size: 12px; font-weight: 600; list-style: none; }
.cs-hero-points li { display: inline-flex; align-items: center; gap: 7px; }
.cs-hero-points i { color: #f0b575; font-size: 16px; }
.cs-hero-visual { position: relative; min-height: 498px; margin: 0 0 0 10px; overflow: hidden; border: 1px solid rgba(241, 253, 242, .28); border-radius: 12px 48px 12px 48px; background: #284c39; box-shadow: 20px 23px 0 rgba(117, 165, 112, .24), 0 26px 53px rgba(4, 30, 18, .28); }
.cs-hero-visual::after { position: absolute; inset: 0; background: linear-gradient(125deg, rgba(8, 47, 29, .2) 0%, transparent 50%, rgba(8, 47, 29, .2) 100%); content: ""; pointer-events: none; }
.cs-hero-visual img { width: 100%; height: 498px; object-fit: cover; object-position: 70% 50%; }
.cs-hero-visual figcaption { position: absolute; z-index: 2; right: 19px; bottom: 18px; left: 19px; display: grid; grid-template-columns: 39px minmax(0, 1fr); align-items: center; gap: 11px; padding: 13px 14px; border: 1px solid rgba(239, 252, 240, .24); border-radius: 12px; background: rgba(8, 43, 27, .77); backdrop-filter: blur(10px); color: #eaf6ea; font-size: 10px; line-height: 1.38; }
.cs-hero-visual figcaption strong { display: block; margin-bottom: 2px; color: #fff; font-family: "Poppins", sans-serif; font-size: 11px; }
.cs-hero-visual-icon { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 10px; background: #d48a43; color: #fff; font-size: 20px; }
.cs-visual-badge { position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(238, 251, 239, .38); border-radius: 999px; background: rgba(21, 68, 43, .84); box-shadow: 0 10px 20px rgba(3, 31, 17, .2); color: #fff; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 700; letter-spacing: .02em; }
.cs-visual-badge i { color: #efb472; font-size: 16px; }
.cs-visual-badge--top { top: 25px; left: -34px; }
.cs-visual-badge--bottom { right: -29px; bottom: 105px; }
.cs-intro { position: relative; overflow: hidden; padding: 112px 0 104px; background: radial-gradient(circle at 92% 4%, rgba(225, 239, 223, .72), transparent 29rem), #fbfcf9; }
.cs-intro::before { position: absolute; right: -148px; bottom: -220px; width: 470px; height: 470px; border: 1px solid rgba(50, 111, 66, .1); border-radius: 50%; box-shadow: 0 0 0 42px rgba(50, 111, 66, .035); content: ""; pointer-events: none; }
.cs-intro .container { position: relative; z-index: 1; }
.cs-section-heading h2, .cs-process-heading h2, .cs-market h2, .cs-cta h2 { margin: 16px 0 0; color: var(--cs-ink); font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.7vw, 55px); font-weight: 650; letter-spacing: -.06em; line-height: 1.07; }
.cs-section-heading--split { display: grid; grid-template-columns: minmax(0, 1.13fr) minmax(290px, .75fr); align-items: center; gap: clamp(48px, 5vw, 72px); margin-bottom: 48px; }
.cs-section-heading--split h2 { max-width: 670px; text-wrap: balance; }
.cs-section-heading--split > p, .cs-process-heading > p { max-width: 470px; margin: 0; padding-left: 25px; border-left: 1px solid #d8e5d7; color: #617667; font-size: 16px; line-height: 1.78; }
.cs-process-heading > p { padding-left: 0; border-left: 0; }
.cs-signal-grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(0, 1.18fr) minmax(0, .96fr); align-items: stretch; gap: 18px; }
.cs-signal-card { position: relative; display: flex; min-height: 282px; flex-direction: column; padding: 30px 28px 28px; border: 1px solid #dce8db; border-radius: 10px 27px 10px 27px; background: #fff; box-shadow: 0 16px 30px rgba(28, 67, 40, .055); }
.cs-signal-icon { display: grid; width: 43px; height: 43px; flex: 0 0 43px; place-items: center; margin-bottom: 20px; border-radius: 13px; background: #e8f2e6; color: #2b7643; font-size: 22px; }
.cs-signal-card h3 { min-height: 87px; margin: 0 0 9px; color: #234b34; font-family: "Poppins", sans-serif; font-size: 20px; font-weight: 650; letter-spacing: -.04em; line-height: 1.2; }
.cs-signal-card p { margin: 0; color: #65776a; font-size: 13px; line-height: 1.7; }
.cs-signal-card--featured { overflow: hidden; padding-right: 88px; border-color: #245b39; background: linear-gradient(132deg, #153e2a, #2f7146); box-shadow: 0 20px 36px rgba(22, 78, 42, .22); }
.cs-signal-card--featured::before { position: absolute; top: -71px; right: -84px; width: 245px; height: 245px; border: 1px solid rgba(211, 240, 215, .18); border-radius: 50%; box-shadow: 0 0 0 34px rgba(211, 240, 215, .06); content: ""; }
.cs-signal-card--featured .cs-signal-kicker { position: relative; z-index: 1; display: flex; min-height: 43px; align-items: center; gap: 9px; margin-bottom: 20px; color: #f0b575; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.cs-signal-card--featured .cs-signal-kicker::before { width: 25px; height: 2px; background: #efb472; content: ""; flex: 0 0 25px; }
.cs-signal-card--featured h3, .cs-signal-card--featured p { position: relative; z-index: 1; }
.cs-signal-card--featured h3 { color: #fff; font-size: 24px; }
.cs-signal-card--featured p { color: rgba(237, 249, 239, .79); }
.cs-signal-featured-icon { position: absolute; right: 25px; bottom: 25px; color: rgba(234, 249, 234, .36); font-size: 52px; }
.cs-focus { position: relative; padding: 114px 0; background: linear-gradient(180deg, #edf4eb, #e6f0e4); }
.cs-focus::before { position: absolute; top: 0; right: 8%; width: 290px; height: 180px; border-right: 1px solid rgba(42, 102, 58, .12); border-bottom: 1px solid rgba(42, 102, 58, .12); border-radius: 0 0 0 180px; content: ""; }
.cs-section-heading--center { position: relative; z-index: 1; max-width: 780px; margin: 0 auto 48px; text-align: center; }
.cs-section-heading--center .cs-eyebrow { justify-content: center; }
.cs-section-heading--center h2 { margin-right: auto; margin-left: auto; }
.cs-section-heading--center > p { max-width: 580px; margin: 17px auto 0; color: #637768; font-size: 15px; line-height: 1.7; }
.cs-focus-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(280px, .83fr) minmax(0, 1.17fr); align-items: stretch; max-width: 1080px; margin: 0 auto; gap: 26px; }
.cs-focus-nav { display: grid; height: 100%; align-content: stretch; grid-template-rows: repeat(4, minmax(0, 1fr)); gap: 9px; }
.cs-focus-tab { display: grid; grid-template-columns: 40px minmax(0, 1fr) 18px; align-items: center; gap: 13px; width: 100%; min-height: 0; height: 100%; padding: 15px 17px; border: 1px solid #cfdfce; border-radius: 10px; background: rgba(255, 255, 255, .56); color: #456551; cursor: pointer; text-align: left; transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s ease; }
.cs-focus-tab-icon { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid #d0e1cf; border-radius: 13px 13px 13px 5px; background: #edf5eb; color: #347245; font-size: 21px; transition: border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease; }
.cs-focus-tab strong { color: #264b35; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 650; letter-spacing: -.025em; }
.cs-focus-tab > i { color: #b7793f; font-size: 18px; transition: transform .2s ease; }
.cs-focus-tab:hover, .cs-focus-tab:focus-visible, .cs-focus-tab.is-active { border-color: #2d7347; background: #fff; box-shadow: 0 12px 22px rgba(33, 89, 49, .11); outline: 0; transform: translateX(4px); }
.cs-focus-tab.is-active { background: #1c5838; }
.cs-focus-tab.is-active .cs-focus-tab-icon { border-color: rgba(242, 250, 241, .22); background: rgba(239, 250, 240, .12); color: #efb575; }
.cs-focus-tab.is-active strong { color: #fff; }
.cs-focus-tab.is-active > i { color: #eab171; transform: translateX(3px); }
.cs-focus-panel { position: relative; min-height: 383px; overflow: hidden; padding: 44px 49px; border-radius: 11px 42px 11px 42px; background: linear-gradient(138deg, #123b29, #2e7046); box-shadow: 0 23px 42px rgba(25, 75, 42, .2); color: #fff; animation: cs-panel-enter .38s ease both; }
.cs-focus-panel[hidden] { display: none; }
.cs-focus-panel::before { position: absolute; right: -97px; bottom: -104px; width: 280px; height: 280px; border: 1px solid rgba(233, 250, 236, .16); border-radius: 50%; box-shadow: 0 0 0 38px rgba(233, 250, 236, .05); content: ""; }
.cs-focus-panel::after { position: absolute; top: 0; right: 0; width: 42%; height: 100%; background: linear-gradient(135deg, transparent, rgba(236, 250, 237, .08)); content: ""; pointer-events: none; }
.cs-focus-panel-icon { position: absolute; z-index: 1; top: 40px; right: 42px; display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid rgba(237, 252, 239, .24); border-radius: 19px; background: rgba(236, 250, 237, .11); color: #f0b575; font-size: 30px; }
.cs-panel-index, .cs-focus-panel h3, .cs-focus-panel p, .cs-focus-panel ul { position: relative; z-index: 1; }
.cs-panel-index { display: block; color: #edb372; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.cs-focus-panel h3 { max-width: 540px; margin: 16px 0 13px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(27px, 2.6vw, 39px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.cs-focus-panel p { max-width: 530px; margin: 0; color: rgba(237, 250, 239, .82); font-size: 14px; line-height: 1.72; }
.cs-focus-panel ul { display: grid; margin: 25px 0 0; padding: 0; gap: 8px; list-style: none; }
.cs-focus-panel li { display: flex; align-items: center; gap: 9px; color: #f1f8f1; font-size: 12px; font-weight: 600; }
.cs-focus-panel li i { color: #efb472; font-size: 17px; }
@keyframes cs-panel-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.cs-process { padding: 113px 0 109px; background: #fff; }
.cs-process-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .7fr); align-items: end; gap: 65px; margin-bottom: 53px; }
.cs-process-heading h2 { max-width: 680px; }
.cs-process-list { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 0; padding: 0; list-style: none; }
.cs-process-list::before { position: absolute; top: 34px; right: 13%; left: 13%; height: 1px; background: linear-gradient(90deg, #d6934e, #7ca880, #d6934e); content: ""; }
.cs-process-list li { position: relative; z-index: 1; min-height: 227px; padding: 0 21px 21px; }
.cs-process-number { display: grid; width: 69px; height: 69px; margin-bottom: 21px; place-items: center; border: 7px solid #fff; border-radius: 50%; background: #e7f1e5; box-shadow: 0 0 0 1px #c6dbc7; color: #2d7145; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 800; }
.cs-process-list li > i { display: inline-block; margin-bottom: 13px; color: #c67a3d; font-size: 25px; }
.cs-process-list h3 { margin: 0 0 8px; color: #254b35; font-family: "Poppins", sans-serif; font-size: 18px; font-weight: 650; letter-spacing: -.035em; line-height: 1.2; }
.cs-process-list p { margin: 0; color: #6a7b6d; font-size: 13px; line-height: 1.68; }
.cs-market { display: flex; align-items: center; padding: 64px 0; background: #fff; }
.cs-market > .container { display: flex; width: 100%; justify-content: center; }
.cs-market-shell { display: grid; width: 100%; max-width: 1170px; grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); margin: 0 auto; overflow: hidden; border-radius: 9px 46px 9px 46px; background: #0f3827; box-shadow: 0 24px 46px rgba(19, 65, 36, .18); }
.cs-market-image { min-height: 408px; background: linear-gradient(90deg, rgba(255, 255, 255, .08), rgba(30, 79, 47, .1)), url('/site/img/conteudo/cargos-salarios-progressao-profissional-clara.png') center / cover no-repeat; }
.cs-market-copy { position: relative; padding: 57px 57px 49px; overflow: hidden; }
.cs-market-copy::before { position: absolute; top: -85px; right: -94px; width: 270px; height: 270px; border: 1px solid rgba(232, 250, 234, .13); border-radius: 50%; box-shadow: 0 0 0 37px rgba(232, 250, 234, .05); content: ""; }
.cs-market-copy > * { position: relative; z-index: 1; }
.cs-market-copy .cs-eyebrow { color: #efb472; }
.cs-market h2 { max-width: 590px; margin-top: 17px; color: #fff; font-size: clamp(31px, 3.1vw, 45px); }
.cs-market-copy > p { max-width: 590px; margin: 16px 0 0; color: rgba(235, 249, 237, .8); font-size: 15px; line-height: 1.76; }
.cs-market-pillars { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 27px; }
.cs-market-pillars span { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid rgba(231, 249, 234, .18); border-radius: 999px; background: rgba(229, 248, 232, .09); color: #eaf7ec; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 650; }
.cs-market-pillars i { color: #efb472; font-size: 15px; }
.cs-cta { padding: 52px 0 113px; background: #fbfcf9; }
.cs-cta-card { position: relative; display: grid; min-height: 350px; grid-template-columns: minmax(0, 1fr) minmax(250px, .42fr); align-items: center; gap: 58px; overflow: hidden; padding: 46px 57px; border: 1px solid #cde1cc; border-radius: 9px 42px 9px 42px; background: linear-gradient(112deg, #edf5eb, #e0eddf); }
.cs-cta-card::after { position: absolute; right: -86px; bottom: -116px; width: 310px; height: 310px; border: 1px solid rgba(37, 107, 55, .16); border-radius: 50%; box-shadow: 0 0 0 38px rgba(37, 107, 55, .045), 0 0 0 92px rgba(37, 107, 55, .025); content: ""; }
.cs-cta-card > * { position: relative; z-index: 1; }
.cs-cta-card .cs-eyebrow { color: #a96430; }
.cs-cta-copy { max-width: 760px; }
.cs-cta h2 { max-width: 720px; margin-top: 15px; color: #18442e; font-size: clamp(30px, 3.25vw, 47px); }
.cs-cta-card p { max-width: 690px; margin: 13px 0 0; color: #536c5b; font-size: 15px; line-height: 1.7; }
.cs-cta-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin: 24px 0 0; padding: 0; list-style: none; }
.cs-cta-benefits li { display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: center; gap: 8px; min-height: 55px; padding: 9px 10px; border: 1px solid rgba(86, 136, 89, .24); border-radius: 11px; background: rgba(255, 255, 255, .52); color: #617568; font-size: 10px; line-height: 1.25; }
.cs-cta-benefits i { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; background: #e4f0e1; color: #2d7147; font-size: 16px; }
.cs-cta-benefits strong { display: block; margin-bottom: 2px; color: #244c34; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 750; letter-spacing: -.01em; }
.cs-cta-card .theme-btn { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; background: #cc803c; white-space: nowrap; }
.cs-cta-button { min-width: 258px; justify-content: center; justify-self: end; padding: 15px 20px; box-shadow: 0 14px 25px rgba(136, 80, 35, .22); }
.cs-cta-card .theme-btn:hover { background: #e7a660; color: #183d2b; }
@media (max-width: 991px) { .cs-hero { padding: 164px 0 88px; } .cs-hero-copy { max-width: 660px; } .cs-hero-visual { max-width: 560px; margin: 55px auto 0; } .cs-section-heading--split, .cs-process-heading { grid-template-columns: 1fr; gap: 19px; } .cs-section-heading--split > p, .cs-process-heading > p { max-width: 590px; margin-bottom: 0; } .cs-signal-grid { grid-template-columns: 1fr 1fr; } .cs-signal-card--featured { grid-column: 1 / -1; min-height: 204px; } .cs-focus-layout { grid-template-columns: 1fr; max-width: 720px; } .cs-focus-nav { grid-template-columns: 1fr 1fr; } .cs-focus-tab:hover, .cs-focus-tab:focus-visible, .cs-focus-tab.is-active { transform: none; } .cs-process-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 21px; } .cs-process-list::before { display: none; } .cs-process-list li { min-height: 0; padding: 0 7px 0 0; } .cs-market-shell { grid-template-columns: 1fr; } .cs-market-image { min-height: 300px; } }
@media (max-width: 767px) { .cs-hero { padding: 138px 0 73px; } .cs-hero h1 { font-size: clamp(42px, 11vw, 59px); } .cs-hero-copy > p { font-size: 15px; } .cs-hero-actions { gap: 17px; margin-top: 27px; } .cs-hero-points { gap: 10px 15px; margin-top: 29px; } .cs-hero-visual { min-height: 384px; margin-top: 43px; border-radius: 8px 32px 8px 32px; box-shadow: 12px 15px 0 rgba(117, 165, 112, .22), 0 22px 40px rgba(4, 30, 18, .24); } .cs-hero-visual img { height: 384px; } .cs-visual-badge { display: none; } .cs-intro, .cs-focus, .cs-process { padding: 74px 0; } .cs-section-heading h2, .cs-process-heading h2, .cs-market h2, .cs-cta h2 { font-size: 35px; } .cs-section-heading--split { margin-bottom: 33px; } .cs-signal-grid { grid-template-columns: 1fr; } .cs-signal-card, .cs-signal-card--featured { grid-column: auto; min-height: 0; padding: 27px 24px; } .cs-signal-card--featured { padding-right: 74px; } .cs-section-heading--center { margin-bottom: 33px; text-align: left; } .cs-section-heading--center .cs-eyebrow { justify-content: flex-start; } .cs-section-heading--center h2 { margin-right: 0; margin-left: 0; } .cs-section-heading--center > p { margin-left: 0; text-align: left; } .cs-focus-nav { grid-template-columns: 1fr; } .cs-focus-tab { min-height: 69px; } .cs-focus-panel { min-height: 0; padding: 34px 25px 32px; border-radius: 8px 31px 8px 31px; } .cs-focus-panel-icon { top: 26px; right: 21px; width: 49px; height: 49px; border-radius: 14px; font-size: 23px; } .cs-focus-panel h3 { padding-right: 43px; font-size: 28px; } .cs-focus-panel p { font-size: 13px; } .cs-process-heading { margin-bottom: 36px; } .cs-process-list { grid-template-columns: 1fr; gap: 29px; } .cs-process-list li { display: grid; grid-template-columns: 69px minmax(0, 1fr); column-gap: 17px; align-items: start; padding: 0; } .cs-process-number { grid-row: span 3; margin: 0; } .cs-process-list li > i { margin: 3px 0 9px; } .cs-process-list h3, .cs-process-list p { grid-column: 2; } .cs-process-list h3 { margin-top: -10px; } .cs-market { padding: 54px 0; } .cs-market-image { min-height: 225px; } .cs-market-copy { padding: 36px 25px 33px; } .cs-market-shell { border-radius: 8px 32px 8px 32px; } .cs-market-pillars { display: grid; grid-template-columns: 1fr; } .cs-market-pillars span { width: max-content; max-width: 100%; } .cs-cta { padding-bottom: 74px; } .cs-cta-card { align-items: flex-start; flex-direction: column; gap: 25px; padding: 36px 26px; border-radius: 8px 31px 8px 31px; } .cs-cta-card .theme-btn { width: 100%; justify-content: center; } }
@media (max-width: 767px) { .cs-section-heading--split > p { padding-left: 0; border-left: 0; } .cs-signal-card h3 { min-height: 0; } .cs-signal-card--featured .cs-signal-kicker { min-height: 0; } }
@media (max-width: 420px) { .cs-hero-actions { align-items: flex-start; flex-direction: column; } .cs-hero-cta { width: 100%; justify-content: center; } .cs-hero-points { display: grid; grid-template-columns: 1fr; } .cs-hero-visual figcaption { right: 11px; bottom: 11px; left: 11px; } .cs-focus-panel h3 { padding-right: 30px; font-size: 25px; } }
@media (max-width: 991px) { .cs-cta-card { grid-template-columns: 1fr; gap: 31px; } .cs-cta-button { justify-self: start; } }
@media (max-width: 767px) { .cs-cta { padding: 54px 0 74px; } .cs-cta-card { min-height: 0; align-items: stretch; gap: 27px; padding: 36px 26px; } .cs-cta-benefits { grid-template-columns: 1fr; gap: 8px; margin-top: 22px; } .cs-cta-benefits li { min-height: 52px; } .cs-cta-button { width: 100%; justify-self: stretch; } }
@media (max-width: 991px) { .cs-focus-nav { height: auto; align-content: start; grid-template-rows: none; } .cs-focus-tab { min-height: 77px; height: auto; } }
@media (max-width: 767px) { .cs-focus-tab { min-height: 69px; } }
@media (prefers-reduced-motion: reduce) { .cs-page *, .cs-page *::before, .cs-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* Cargos e salarios: hero em carrossel */
.cs-hero.cs-hero-carousel { min-height: 630px; height: 630px; padding: 0; background: #103927; }
.cs-hero-carousel::before { z-index: 3; right: auto; width: 48%; background-image: radial-gradient(rgba(228, 176, 108, .4) 1px, transparent 1px); background-position: 0 0; background-size: 22px 22px; mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .75) 67%, transparent 100%); opacity: .32; }
.cs-hero-carousel::after { display: none; }
.cs-hero-slide { position: absolute; inset: 0; display: flex; align-items: stretch; background-position: 65% center; background-size: cover; background-repeat: no-repeat; opacity: 0; transform: scale(1.025); transition: opacity .7s ease, transform 7.5s ease, visibility 0s linear .7s; visibility: hidden; }
.cs-hero-slide--career { background-position: 65% 32%; }
.cs-hero-slide.is-active { opacity: 1; transform: scale(1); transition: opacity .7s ease, transform 7.5s ease; visibility: visible; }
.cs-hero-slide-overlay { position: absolute; z-index: 0; inset: 0; background: linear-gradient(90deg, rgba(7, 41, 25, .98) 0%, rgba(10, 55, 34, .91) 37%, rgba(14, 57, 36, .55) 58%, rgba(11, 41, 26, .1) 100%); }
.cs-hero-carousel .cs-hero-container { position: relative; z-index: 1; display: flex; width: 100%; min-height: 630px; height: 630px; align-items: flex-start; box-sizing: border-box; padding-top: 160px; padding-bottom: 88px; }
.cs-hero-carousel .cs-hero-copy { width: min(100%, 690px); max-width: 690px; margin: 0; padding: 0; }
.cs-hero-carousel .cs-hero-copy h1, .cs-hero-carousel .cs-hero-copy h2 { max-width: 680px; margin: 14px 0 17px; color: #fff; font-size: clamp(2.65rem, 3.75vw, 3.65rem); line-height: 1.03; letter-spacing: -.055em; }
.cs-hero-carousel .cs-hero-copy > p { max-width: 555px; font-size: .98rem; line-height: 1.58; }
.cs-hero-carousel .cs-hero-actions { margin-top: 22px; }
.cs-hero-carousel .cs-hero-controls { position: absolute; z-index: 7; inset: 0; display: block; pointer-events: none; }
.cs-hero-carousel .cs-hero-control, .cs-hero-carousel .cs-hero-dots { pointer-events: auto; }
.cs-hero-carousel .cs-hero-control { position: absolute; top: 50%; display: inline-flex; width: 58px; height: 58px; align-items: center; justify-content: center; padding: 0; border: 1px solid rgba(234, 253, 237, .42); border-radius: 0; background: rgba(12, 59, 39, .32); color: #fff; cursor: pointer; font-size: 22px; transform: translateY(-50%); transition: background .25s ease, border-color .25s ease; }
.cs-hero-carousel [data-cs-hero-prev] { left: 0; border-left: 0; border-radius: 0 12px 12px 0; }
.cs-hero-carousel [data-cs-hero-next] { right: 0; border-right: 0; border-radius: 12px 0 0 12px; }
.cs-hero-carousel .cs-hero-control:hover, .cs-hero-carousel .cs-hero-control:focus-visible { border-color: #e6a159; background: #d48b42; outline: 0; }
.cs-hero-dots { position: absolute; bottom: 32px; left: max(30px, calc((100% - 1140px) / 2)); display: flex; align-items: center; gap: 8px; }
.cs-hero-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .44); cursor: pointer; transition: width .25s ease, background .25s ease; }
.cs-hero-dots button.is-active { width: 28px; border-radius: 999px; background: #e6a159; }
.cs-hero-dots button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (max-width: 991px) { .cs-hero.cs-hero-carousel, .cs-hero-carousel .cs-hero-container { min-height: 600px; height: 600px; } .cs-hero-carousel .cs-hero-container { padding-top: 145px; padding-bottom: 88px; } .cs-hero-carousel .cs-hero-copy h1, .cs-hero-carousel .cs-hero-copy h2 { font-size: clamp(2.5rem, 6.15vw, 3.4rem); } }
@media (max-width: 767px) { .cs-hero.cs-hero-carousel, .cs-hero-carousel .cs-hero-container { min-height: 610px; height: 610px; } .cs-hero-slide { background-position: 63% center; } .cs-hero-slide--career { background-position: 63% 32%; } .cs-hero-slide-overlay { background: linear-gradient(90deg, rgba(7, 40, 24, .97) 0%, rgba(10, 51, 31, .88) 59%, rgba(8, 44, 27, .62) 100%); } .cs-hero-carousel .cs-hero-container { padding-top: 128px; padding-bottom: 92px; } .cs-hero-carousel .cs-hero-copy h1, .cs-hero-carousel .cs-hero-copy h2 { font-size: clamp(2.25rem, 9.7vw, 2.8rem); } .cs-hero-carousel .cs-hero-control { display: none; } .cs-hero-dots { bottom: 23px; left: 50%; transform: translateX(-50%); } }

/* Cargos e salarios: roteiro de implantacao */
.cs-roadmap { position: relative; overflow: hidden; background: linear-gradient(180deg, #fff 0%, #f3f8f1 100%); }
.cs-roadmap::before { position: absolute; top: 0; right: -165px; width: 520px; height: 520px; border: 1px solid rgba(43, 115, 67, .1); border-radius: 50%; box-shadow: 0 0 0 41px rgba(43, 115, 67, .035), 0 0 0 104px rgba(43, 115, 67, .018); content: ""; pointer-events: none; }
.cs-roadmap .container { position: relative; z-index: 1; }
.cs-roadmap .cs-process-heading { margin-bottom: 44px; }
.cs-roadmap-board { position: relative; overflow: hidden; padding: 27px 27px 25px; border: 1px solid #d3e3d2; border-radius: 12px 40px 12px 40px; background: rgba(255, 255, 255, .78); box-shadow: 0 23px 45px rgba(30, 75, 42, .09); }
.cs-roadmap-board::before { position: absolute; top: 99px; right: 10%; left: 10%; height: 1px; background: linear-gradient(90deg, transparent, #d99a57 12%, #86b18b 45%, #d99a57 78%, transparent); content: ""; opacity: .55; }
.cs-roadmap-steps { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 16px 13px; margin: 0; padding: 0; list-style: none; }
.cs-roadmap-steps li { min-width: 0; grid-column: span 2; }
.cs-roadmap-steps li:nth-child(6) { grid-column: 2 / span 2; }
.cs-roadmap-steps li:nth-child(7) { grid-column: 4 / span 2; }
.cs-roadmap-steps li:nth-child(8) { grid-column: 6 / span 2; }
.cs-roadmap-steps li:nth-child(9) { grid-column: 8 / span 2; }
.cs-roadmap-step { position: relative; display: flex; width: 100%; min-height: 158px; align-items: center; flex-direction: column; justify-content: center; gap: 10px; padding: 25px 11px 15px; border: 1px solid #d7e5d6; border-radius: 11px; background: #fff; color: #2b5139; cursor: pointer; text-align: center; transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s ease; }
.cs-roadmap-step:hover, .cs-roadmap-step:focus-visible { border-color: #79a67d; box-shadow: 0 13px 24px rgba(33, 88, 47, .12); outline: 0; transform: translateY(-4px); }
.cs-roadmap-step.is-active { border-color: #286941; background: linear-gradient(150deg, #1d5738, #33774a); box-shadow: 0 15px 27px rgba(24, 86, 42, .22); color: #fff; transform: translateY(-4px); }
.cs-roadmap-number { position: absolute; top: 10px; right: 11px; color: #be763a; font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 800; letter-spacing: .08em; }
.cs-roadmap-step.is-active .cs-roadmap-number { color: #efb473; }
.cs-roadmap-icon { display: grid; width: 49px; height: 49px; place-items: center; border: 1px solid #cfe0ce; border-radius: 15px; background: #eff6ed; color: #347245; font-size: 26px; transition: background .25s ease, border-color .25s ease, color .25s ease; }
.cs-roadmap-step.is-active .cs-roadmap-icon { border-color: rgba(239, 249, 240, .24); background: rgba(238, 249, 239, .12); color: #f2ba7b; }
.cs-roadmap-step strong { display: block; min-height: 34px; color: inherit; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: -.02em; line-height: 1.12; }
.cs-roadmap-detail { position: relative; z-index: 1; display: grid; grid-template-columns: 54px minmax(0, 1fr); align-items: center; gap: 16px; margin-top: 20px; padding: 19px 22px; border-radius: 10px; background: linear-gradient(100deg, #173f2b, #276a43); box-shadow: 0 13px 24px rgba(24, 72, 39, .17); color: #fff; }
.cs-roadmap-detail-icon { display: grid; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(240, 249, 240, .21); border-radius: 15px; background: rgba(240, 249, 240, .1); color: #efb473; font-size: 27px; }
.cs-roadmap-detail-index { display: block; margin-bottom: 4px; color: #edb372; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.cs-roadmap-detail h3 { margin: 0 0 3px; color: #fff; font-family: "Poppins", sans-serif; font-size: 17px; font-weight: 650; letter-spacing: -.025em; line-height: 1.2; }
.cs-roadmap-detail p { max-width: 820px; margin: 0; color: rgba(237, 250, 239, .8); font-size: 12px; line-height: 1.58; }
@media (max-width: 991px) { .cs-roadmap-board { padding: 23px 20px 20px; } .cs-roadmap-board::before { display: none; } .cs-roadmap-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; } .cs-roadmap-steps li, .cs-roadmap-steps li:nth-child(6), .cs-roadmap-steps li:nth-child(7), .cs-roadmap-steps li:nth-child(8), .cs-roadmap-steps li:nth-child(9) { grid-column: auto; } .cs-roadmap-step { min-height: 148px; } }
@media (max-width: 767px) { .cs-roadmap .cs-process-heading { margin-bottom: 33px; } .cs-roadmap-board { padding: 14px; border-radius: 9px 28px 9px 28px; } .cs-roadmap-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .cs-roadmap-step { min-height: 137px; gap: 8px; padding: 23px 8px 12px; } .cs-roadmap-icon { width: 43px; height: 43px; border-radius: 13px; font-size: 23px; } .cs-roadmap-step strong { min-height: 31px; font-size: 11px; } .cs-roadmap-detail { grid-template-columns: 43px minmax(0, 1fr); gap: 12px; margin-top: 13px; padding: 16px; } .cs-roadmap-detail-icon { width: 43px; height: 43px; border-radius: 13px; font-size: 22px; } .cs-roadmap-detail h3 { font-size: 15px; } .cs-roadmap-detail p { font-size: 11px; line-height: 1.55; } }
@media (max-width: 420px) { .cs-roadmap-steps { grid-template-columns: 1fr; } .cs-roadmap-step { min-height: 0; flex-direction: row; justify-content: flex-start; gap: 12px; padding: 14px 17px 14px 15px; text-align: left; } .cs-roadmap-step strong { min-height: 0; } .cs-roadmap-number { top: 9px; right: 11px; } }

/* Cargos e salarios: roteiro com fluxo leve e icones duotone. */
.cs-roadmap { background: radial-gradient(circle at 14% 76%, rgba(210, 228, 207, .38), transparent 30%), linear-gradient(180deg, #fff 0%, #f4f8f2 100%); }
.cs-roadmap::before { top: 92px; right: -190px; width: 550px; height: 550px; border-color: rgba(47, 110, 67, .08); box-shadow: 0 0 0 46px rgba(47, 110, 67, .025), 0 0 0 110px rgba(47, 110, 67, .014); }
.cs-roadmap .cs-process-heading { margin-bottom: 46px; }
.cs-roadmap-board { isolation: isolate; padding: 31px 27px 28px; border: 1px solid rgba(105, 153, 111, .25); border-radius: 24px 54px 24px 54px; background: linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(243, 248, 241, .9)); box-shadow: 0 24px 56px rgba(28, 75, 42, .08); }
.cs-roadmap-board::before { z-index: 0; inset: 0; top: auto; right: auto; left: auto; width: auto; height: auto; border: 0; border-radius: 0; background-image: radial-gradient(circle, rgba(61, 116, 72, .13) 1px, transparent 1.2px); background-size: 20px 20px; box-shadow: none; opacity: .43; }
.cs-roadmap-flow { position: absolute; z-index: 0; display: block; height: 2px; border-radius: 999px; background: linear-gradient(90deg, transparent, rgba(217, 154, 87, .8) 9%, rgba(106, 156, 111, .55) 43%, rgba(217, 154, 87, .8) 76%, transparent); pointer-events: none; }
.cs-roadmap-flow--top { top: 88px; right: 9.5%; left: 9.5%; }
.cs-roadmap-flow--bottom { top: 276px; right: 19.5%; left: 19.5%; }
.cs-roadmap-steps { z-index: 1; gap: 30px 13px; }
.cs-roadmap-step { isolation: isolate; min-height: 158px; gap: 11px; padding: 19px 8px 10px; border: 0; border-radius: 20px; background: transparent; color: #294d35; }
.cs-roadmap-step::before { position: absolute; z-index: 0; top: 10px; left: 50%; width: 90px; height: 90px; border-radius: 29px 29px 29px 10px; background: linear-gradient(145deg, rgba(224, 239, 221, .95), rgba(247, 239, 226, .8)); content: ""; opacity: 0; transform: translateX(-50%) scale(.82); transition: opacity .25s ease, transform .25s ease; }
.cs-roadmap-step > * { position: relative; z-index: 1; }
.cs-roadmap-step:hover, .cs-roadmap-step:focus-visible { border: 0; background: transparent; box-shadow: none; color: #214a31; outline: 0; transform: translateY(-3px); }
.cs-roadmap-step:hover::before, .cs-roadmap-step:focus-visible::before, .cs-roadmap-step.is-active::before { opacity: 1; transform: translateX(-50%) scale(1); }
.cs-roadmap-step.is-active { border: 0; background: transparent; box-shadow: none; color: #1d4b31; transform: none; }
.cs-roadmap-number { top: 7px; right: 9px; display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid rgba(209, 168, 111, .35); border-radius: 50%; background: rgba(255, 255, 255, .86); color: #ad743f; font-size: 8px; letter-spacing: .02em; transition: border-color .25s ease, background .25s ease, color .25s ease; }
.cs-roadmap-step.is-active .cs-roadmap-number { border-color: rgba(47, 112, 71, .28); background: #2f7047; color: #fff5e8; }
.cs-roadmap-icon { width: 66px; height: 66px; border: 1px solid #cfdfcd; border-radius: 22px 22px 22px 7px; background: linear-gradient(145deg, #fff, #eaf4e7); box-shadow: 0 10px 20px rgba(36, 89, 48, .11); color: #2d7048; font-size: 30px; transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, color .25s ease, transform .25s ease; }
.cs-roadmap-icon i { --fa-primary-color: #2d7048; --fa-secondary-color: #d79b59; --fa-secondary-opacity: .7; }
.cs-roadmap-step:hover .cs-roadmap-icon, .cs-roadmap-step:focus-visible .cs-roadmap-icon { border-color: #a7c9a8; box-shadow: 0 14px 25px rgba(36, 89, 48, .16); transform: translateY(-3px); }
.cs-roadmap-step.is-active .cs-roadmap-icon { border-color: #296e45; background: linear-gradient(145deg, #1e5738, #387b4d); box-shadow: 0 15px 27px rgba(25, 79, 43, .22); color: #fff; transform: translateY(-4px); }
.cs-roadmap-step.is-active .cs-roadmap-icon i { --fa-primary-color: #fff8ee; --fa-secondary-color: #efb879; --fa-secondary-opacity: 1; }
.cs-roadmap-step strong { min-height: 36px; max-width: 152px; color: inherit; font-size: 12px; font-weight: 700; letter-spacing: -.025em; line-height: 1.18; transition: color .25s ease; }
.cs-roadmap-step.is-active strong { color: #1f5937; font-weight: 800; }
.cs-roadmap-detail { z-index: 1; max-width: 900px; grid-template-columns: 58px minmax(0, 1fr); gap: 16px; margin: 28px auto 0; padding: 18px 21px; border: 1px solid rgba(42, 105, 66, .18); border-radius: 18px 36px 18px 36px; background: linear-gradient(108deg, #173f2b, #2c6843); box-shadow: 0 15px 30px rgba(26, 75, 39, .14); }
.cs-roadmap-detail-icon { width: 58px; height: 58px; border-color: rgba(245, 249, 241, .23); border-radius: 20px 20px 20px 7px; background: rgba(246, 250, 243, .1); color: #efb474; font-size: 29px; }
.cs-roadmap-detail-icon i { --fa-primary-color: #fff7ea; --fa-secondary-color: #efb474; --fa-secondary-opacity: 1; }
.cs-roadmap-detail-index { margin-bottom: 3px; color: #f0bc7e; font-size: 9px; }
.cs-roadmap-detail h3 { margin-bottom: 3px; font-size: 17px; font-weight: 700; }
.cs-roadmap-detail p { font-size: 12px; }
@media (max-width: 991px) { .cs-roadmap-board { padding: 28px 18px 24px; } .cs-roadmap-flow { display: none; } .cs-roadmap-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 23px 10px; } .cs-roadmap-steps li, .cs-roadmap-steps li:nth-child(6), .cs-roadmap-steps li:nth-child(7), .cs-roadmap-steps li:nth-child(8), .cs-roadmap-steps li:nth-child(9) { grid-column: auto; } .cs-roadmap-step { min-height: 149px; } }
@media (max-width: 767px) { .cs-roadmap .cs-process-heading { margin-bottom: 33px; } .cs-roadmap-board { padding: 20px 8px 18px; border-radius: 18px 35px 18px 35px; } .cs-roadmap-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px 4px; } .cs-roadmap-step { min-height: 137px; gap: 9px; padding: 16px 5px 8px; } .cs-roadmap-step::before { top: 6px; width: 76px; height: 76px; border-radius: 24px 24px 24px 8px; } .cs-roadmap-number { top: 3px; right: 5px; width: 21px; height: 21px; font-size: 7px; } .cs-roadmap-icon { width: 54px; height: 54px; border-radius: 18px 18px 18px 6px; font-size: 25px; } .cs-roadmap-step strong { min-height: 31px; max-width: 136px; font-size: 11px; } .cs-roadmap-detail { grid-template-columns: 46px minmax(0, 1fr); gap: 12px; margin-top: 21px; padding: 15px; border-radius: 15px 28px 15px 28px; } .cs-roadmap-detail-icon { width: 46px; height: 46px; border-radius: 15px 15px 15px 5px; font-size: 23px; } .cs-roadmap-detail h3 { font-size: 15px; } .cs-roadmap-detail p { font-size: 11px; line-height: 1.55; } }
@media (max-width: 420px) { .cs-roadmap-steps { grid-template-columns: 1fr; gap: 7px; } .cs-roadmap-step { min-height: 80px; flex-direction: row; justify-content: flex-start; gap: 13px; padding: 13px 39px 13px 15px; text-align: left; transform: none; } .cs-roadmap-step::before { top: 3px; left: 8px; width: 74px; height: 74px; transform: scale(.82); } .cs-roadmap-step:hover::before, .cs-roadmap-step:focus-visible::before, .cs-roadmap-step.is-active::before { transform: scale(1); } .cs-roadmap-step:hover, .cs-roadmap-step:focus-visible { transform: none; } .cs-roadmap-icon { flex: 0 0 51px; width: 51px; height: 51px; } .cs-roadmap-step strong { min-height: 0; max-width: 210px; } .cs-roadmap-number { top: 10px; right: 11px; } }

/* Cargos e salarios: roteiro de implantacao refinado */
.cs-roadmap-board { padding: 32px 28px 29px; border-color: rgba(93, 146, 100, .28); border-radius: 24px 58px 24px 58px; background: linear-gradient(138deg, rgba(255, 255, 255, .98), rgba(239, 247, 237, .9)); box-shadow: 0 26px 58px rgba(27, 76, 41, .1); }
.cs-roadmap-flow { height: 1px; background: linear-gradient(90deg, transparent, rgba(215, 143, 66, .76) 12%, rgba(95, 151, 101, .58) 48%, rgba(215, 143, 66, .76) 84%, transparent); opacity: .78; }
.cs-roadmap-flow--top { top: 111px; right: 8%; left: 8%; }
.cs-roadmap-flow--bottom { top: 320px; right: 18%; left: 18%; }
.cs-roadmap-steps { gap: 31px 16px; }
.cs-roadmap-step { min-height: 172px; gap: 13px; padding: 23px 15px 18px; border: 1px solid rgba(101, 151, 107, .28); border-radius: 18px 30px 18px 30px; background: rgba(255, 255, 255, .85); box-shadow: 0 12px 23px rgba(35, 88, 47, .07); color: #294d35; transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, color .25s ease, transform .25s ease; }
.cs-roadmap-step::before { inset: 0; width: auto; height: auto; border-radius: inherit; background: linear-gradient(135deg, rgba(227, 241, 224, .82), transparent 58%); opacity: 0; transform: none; }
.cs-roadmap-step:hover, .cs-roadmap-step:focus-visible { border-color: #8eb892; background: #fff; box-shadow: 0 18px 28px rgba(32, 87, 44, .14); color: #1f4f32; transform: translateY(-5px); }
.cs-roadmap-step:hover::before, .cs-roadmap-step:focus-visible::before, .cs-roadmap-step.is-active::before { opacity: 1; transform: none; }
.cs-roadmap-step.is-active { border-color: #245e3a; background: linear-gradient(145deg, #1a5134, #36764a); box-shadow: 0 18px 31px rgba(25, 82, 42, .25); color: #fff; transform: translateY(-5px); }
.cs-roadmap-icon { display: grid; width: 61px; height: 61px; flex: 0 0 61px; place-items: center; border-color: #c4dcc2; border-radius: 18px 18px 18px 7px; background: linear-gradient(145deg, #fbfdf9, #e5f1e2); box-shadow: 0 9px 18px rgba(35, 87, 47, .1); color: #2d7048; font-size: 29px; }
.cs-roadmap-step:hover .cs-roadmap-icon, .cs-roadmap-step:focus-visible .cs-roadmap-icon { border-color: #84ae88; background: #f5faf2; box-shadow: 0 12px 20px rgba(35, 87, 47, .14); transform: translateY(-2px); }
.cs-roadmap-step.is-active .cs-roadmap-icon { border-color: rgba(238, 250, 239, .28); background: rgba(239, 250, 240, .13); box-shadow: 0 10px 20px rgba(11, 52, 29, .2); color: #f0b575; transform: none; }
.cs-roadmap-step strong { min-height: 34px; max-width: 174px; color: inherit; font-size: 12px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2; }
.cs-roadmap-step.is-active strong { color: #fff; font-weight: 750; }
.cs-roadmap-detail { max-width: 1010px; grid-template-columns: 63px minmax(0, 1fr) auto; gap: 18px; margin-top: 30px; padding: 20px 23px; border: 1px solid rgba(30, 88, 48, .24); border-radius: 19px 39px 19px 39px; background: linear-gradient(112deg, #153f2b, #2e7047); box-shadow: 0 18px 33px rgba(24, 74, 39, .18); }
.cs-roadmap-detail-icon { width: 63px; height: 63px; border-color: rgba(246, 251, 245, .23); border-radius: 19px 19px 19px 7px; background: rgba(244, 250, 243, .1); color: #efb474; font-size: 30px; }
.cs-roadmap-detail-index { margin-bottom: 4px; color: #f2be7c; font-size: 9px; letter-spacing: .15em; }
.cs-roadmap-detail h3 { margin-bottom: 4px; font-size: 19px; font-weight: 700; }
.cs-roadmap-detail p { font-size: 12px; line-height: 1.6; }
.cs-roadmap-detail-hint { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(241, 248, 239, .18); border-radius: 999px; background: rgba(243, 249, 241, .09); color: rgba(242, 250, 241, .82); font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 650; white-space: nowrap; }
.cs-roadmap-detail-hint i { color: #efb474; font-size: 15px; }
@media (max-width: 991px) { .cs-roadmap-board { padding: 27px 18px 24px; } .cs-roadmap-flow { display: none; } .cs-roadmap-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } .cs-roadmap-steps li, .cs-roadmap-steps li:nth-child(6), .cs-roadmap-steps li:nth-child(7), .cs-roadmap-steps li:nth-child(8), .cs-roadmap-steps li:nth-child(9) { grid-column: auto; } .cs-roadmap-step { min-height: 159px; padding: 20px 10px 15px; } .cs-roadmap-detail { max-width: none; grid-template-columns: 57px minmax(0, 1fr); padding: 18px; } .cs-roadmap-detail-icon { width: 57px; height: 57px; font-size: 27px; } .cs-roadmap-detail-hint { display: none; } }
@media (max-width: 767px) { .cs-roadmap-board { padding: 19px 9px 18px; border-radius: 18px 37px 18px 37px; } .cs-roadmap-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; } .cs-roadmap-step { min-height: 144px; gap: 10px; padding: 17px 7px 12px; border-radius: 15px 24px 15px 24px; } .cs-roadmap-icon { width: 53px; height: 53px; flex-basis: 53px; border-radius: 16px 16px 16px 6px; font-size: 25px; } .cs-roadmap-step strong { min-height: 29px; max-width: 138px; font-size: 11px; } .cs-roadmap-detail { grid-template-columns: 48px minmax(0, 1fr); gap: 12px; margin-top: 19px; padding: 15px; border-radius: 15px 29px 15px 29px; } .cs-roadmap-detail-icon { width: 48px; height: 48px; border-radius: 15px 15px 15px 5px; font-size: 23px; } .cs-roadmap-detail h3 { font-size: 15px; } .cs-roadmap-detail p { font-size: 11px; line-height: 1.55; } }
@media (max-width: 420px) { .cs-roadmap-steps { grid-template-columns: 1fr; gap: 9px; } .cs-roadmap-step { min-height: 86px; flex-direction: row; justify-content: flex-start; gap: 13px; padding: 13px 17px; border-radius: 14px 22px 14px 22px; text-align: left; transform: none; } .cs-roadmap-step:hover, .cs-roadmap-step:focus-visible, .cs-roadmap-step.is-active { transform: none; } .cs-roadmap-icon { width: 50px; height: 50px; flex-basis: 50px; } .cs-roadmap-step strong { min-height: 0; max-width: 220px; text-align: left; } }

/* Auditoria de folha de pagamento */
.pa-page { --pa-ink: #163d2a; --pa-deep: #092d1e; --pa-green: #38764b; --pa-mint: #edf5ea; --pa-sand: #f6eee3; --pa-gold: #d58b44; overflow: hidden; background: #fbfdf9; color: var(--pa-ink); }
.pa-page *, .pa-page *::before, .pa-page *::after { box-sizing: border-box; }
.pa-hero-carousel { position: relative; background: var(--pa-deep); }
.pa-hero { position: relative; display: flex; min-height: 684px; overflow: hidden; align-items: stretch; background-color: var(--pa-deep); background-position: center; background-repeat: no-repeat; background-size: cover; }
.pa-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5, 30, 20, .98) 0%, rgba(8, 43, 29, .92) 35%, rgba(9, 42, 28, .61) 60%, rgba(7, 33, 22, .14) 100%); }
.pa-hero::after { position: absolute; z-index: 1; top: 0; bottom: 0; left: 0; width: 47%; background-image: radial-gradient(rgba(227, 177, 111, .35) 1px, transparent 1px); background-size: 22px 22px; content: ""; opacity: .35; pointer-events: none; }
.pa-hero-container { position: relative; z-index: 2; display: flex; width: 100%; min-height: 684px; align-items: center; }
.pa-hero-copy { width: min(660px, 100%); padding: 126px 0 74px; color: #fff; }
.pa-eyebrow { display: flex; align-items: center; gap: 11px; color: #bf7438; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.35; text-transform: uppercase; }
.pa-eyebrow::before { width: 34px; height: 2px; flex: 0 0 34px; background: #d88b43; content: ""; }
.pa-eyebrow--light { color: #f0b474; }
.pa-eyebrow--light::before { background: #edb372; }
.pa-hero h1, .pa-hero h2 { max-width: 650px; margin: 19px 0 20px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(45px, 4.85vw, 70px); font-weight: 650; letter-spacing: -.067em; line-height: 1.03; }
.pa-hero p { max-width: 575px; margin: 0; color: rgba(243, 251, 242, .86); font-size: 17px; line-height: 1.72; }
.pa-hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 30px; }
.pa-hero-cta { display: inline-flex; align-items: center; gap: 11px; background: #d58b44; box-shadow: 0 14px 25px rgba(0, 0, 0, .24); }
.pa-hero-cta:hover { background: #efad67; color: #153824; }
.pa-hero-link { display: inline-flex; align-items: center; gap: 9px; border-bottom: 1px solid rgba(242, 250, 241, .45); color: #f4faf2; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 650; line-height: 1.8; transition: border-color .22s ease, color .22s ease, transform .22s ease; }
.pa-hero-link:hover { border-color: #f0b575; color: #f0b575; transform: translateX(3px); }
.pa-hero-carousel .owl-nav button.owl-prev, .pa-hero-carousel .owl-nav button.owl-next { position: absolute; z-index: 4; top: 50%; width: 58px; height: 58px; border: 1px solid rgba(234, 253, 237, .42); background: rgba(12, 59, 39, .48); color: #fff; font-size: 22px; transform: translateY(-50%); transition: background .25s ease, border-color .25s ease; }
.pa-hero-carousel .owl-nav button.owl-prev { left: 0; border-left: 0; border-radius: 0 12px 12px 0; }
.pa-hero-carousel .owl-nav button.owl-next { right: 0; border-right: 0; border-radius: 12px 0 0 12px; }
.pa-hero-carousel .owl-nav button:hover { border-color: #e49a52; background: #de8038; }
.pa-intro { position: relative; padding: 116px 0 110px; background: linear-gradient(145deg, #fff 0%, #fbfdf9 57%, #f1f7ee 100%); }
.pa-intro::before { position: absolute; top: -180px; right: -160px; width: 500px; height: 500px; border: 1px solid rgba(57, 119, 75, .1); border-radius: 50%; box-shadow: 0 0 0 43px rgba(57, 119, 75, .035), 0 0 0 105px rgba(57, 119, 75, .018); content: ""; }
.pa-intro-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(320px, .93fr) minmax(0, 1.07fr); align-items: center; gap: clamp(48px, 7vw, 92px); }
.pa-intro-visual { position: relative; min-height: 483px; margin: 0; overflow: hidden; border-radius: 10px 44px 10px 44px; background: #dcebd8; box-shadow: 18px 20px 0 rgba(72, 133, 82, .13), 0 27px 48px rgba(27, 76, 41, .13); }
.pa-intro-visual::before { position: absolute; z-index: 1; top: 13px; left: 13px; width: 55px; height: 55px; border-top: 2px solid #e1a05a; border-left: 2px solid #e1a05a; content: ""; pointer-events: none; }
.pa-intro-visual img { display: block; width: 100%; height: 483px; object-fit: cover; object-position: 34% center; }
.pa-intro-visual figcaption { position: absolute; z-index: 2; right: 0; bottom: 20px; display: inline-flex; align-items: center; gap: 9px; padding: 11px 17px; border: 1px solid rgba(239, 250, 238, .24); border-right: 0; border-radius: 10px 0 0 10px; background: rgba(15, 57, 35, .9); box-shadow: 0 11px 20px rgba(5, 27, 16, .2); color: #fff; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 650; }
.pa-intro-visual figcaption i { color: #efb474; font-size: 18px; }
.pa-intro-copy { max-width: 585px; }
.pa-intro-copy h2, .pa-section-heading h2, .pa-method h2, .pa-cta h2 { margin: 17px 0 16px; color: var(--pa-ink); font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.55vw, 51px); font-weight: 650; letter-spacing: -.06em; line-height: 1.08; }
.pa-intro-copy h2 em { color: #c87a3b; font-style: normal; }
.pa-intro-copy > p { margin: 0 0 14px; color: #607368; font-size: 15px; line-height: 1.8; }
.pa-intro-highlights { display: grid; margin: 25px 0; padding: 0; gap: 10px; list-style: none; }
.pa-intro-highlights li { display: flex; align-items: center; gap: 10px; color: #385743; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 650; }
.pa-intro-highlights i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; background: #edf5ea; color: #3b7a4d; font-size: 15px; }
.pa-inline-link { display: inline-flex; align-items: center; gap: 9px; color: #23603a; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 750; transition: color .2s ease, transform .2s ease; }
.pa-inline-link:hover { color: #c87938; transform: translateX(4px); }
.pa-scope { position: relative; overflow: hidden; padding: 112px 0; background: #eff6ed; }
.pa-scope::before { position: absolute; right: -180px; bottom: -165px; width: 530px; height: 530px; border: 1px solid rgba(45, 113, 65, .1); border-radius: 50%; box-shadow: 0 0 0 48px rgba(45, 113, 65, .035), 0 0 0 106px rgba(45, 113, 65, .018); content: ""; }
.pa-section-heading { position: relative; z-index: 1; }
.pa-section-heading--split { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(310px, .72fr); align-items: end; gap: clamp(48px, 6vw, 84px); margin-bottom: 50px; }
.pa-section-heading--split h2 { max-width: 720px; margin-bottom: 0; text-wrap: balance; }
.pa-section-heading--split > p { max-width: 470px; margin: 0; padding: 2px 0 2px 25px; border-left: 1px solid #c9dcc7; color: #5f7565; font-size: 16px; line-height: 1.78; }
.pa-section-heading--center { max-width: 780px; margin: 0 auto 48px; text-align: center; }
.pa-section-heading--center .pa-eyebrow { justify-content: center; }
.pa-section-heading--center h2 { margin-right: auto; margin-left: auto; }
.pa-section-heading--center p { max-width: 630px; margin: 0 auto; color: #63766a; font-size: 15px; line-height: 1.75; }
.pa-scope-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(300px, .83fr) minmax(0, 1.17fr); align-items: stretch; max-width: 1110px; margin: 0 auto; gap: 25px; }
.pa-scope-tabs { display: grid; align-content: stretch; gap: 10px; }
.pa-scope-tab { display: grid; grid-template-columns: 42px minmax(0, 1fr) 19px; align-items: center; gap: 13px; width: 100%; min-height: 80px; padding: 13px 17px; border: 1px solid #cfe0cd; border-radius: 13px; background: rgba(255, 255, 255, .66); color: #355642; cursor: pointer; text-align: left; transition: border-color .24s ease, background .24s ease, box-shadow .24s ease, transform .24s ease; }
.pa-scope-tab > i:first-child { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #e6f1e4; color: #36794a; font-size: 21px; transition: background .24s ease, color .24s ease; }
.pa-scope-tab span { display: block; min-width: 0; }
.pa-scope-tab small { display: block; margin-bottom: 3px; color: #b9773d; font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.pa-scope-tab strong { display: block; color: #254c34; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 650; letter-spacing: -.025em; line-height: 1.18; transition: color .24s ease; }
.pa-scope-tab-arrow { color: #ba7a3f; font-size: 17px; transition: transform .24s ease, color .24s ease; }
.pa-scope-tab:hover, .pa-scope-tab:focus-visible { border-color: #8db68f; background: #fff; box-shadow: 0 12px 22px rgba(32, 82, 43, .1); outline: 0; transform: translateX(4px); }
.pa-scope-tab.is-active { border-color: #225d3a; background: linear-gradient(130deg, #1a5034, #347846); box-shadow: 0 15px 28px rgba(25, 77, 40, .18); }
.pa-scope-tab.is-active > i:first-child { background: rgba(239, 250, 239, .13); color: #f0b575; }
.pa-scope-tab.is-active small { color: #edb373; }
.pa-scope-tab.is-active strong { color: #fff; }
.pa-scope-tab.is-active .pa-scope-tab-arrow { color: #edb373; transform: translateX(3px); }
.pa-scope-panel { position: relative; display: flex; min-height: 444px; flex-direction: column; justify-content: space-between; overflow: hidden; padding: 43px 46px 39px; border-radius: 15px 49px 15px 49px; background: linear-gradient(138deg, #0f3927, #2d7145); box-shadow: 0 24px 46px rgba(22, 77, 40, .21); color: #fff; transition: opacity .13s ease, transform .13s ease; }
.pa-scope-panel::before { position: absolute; top: -103px; right: -100px; width: 315px; height: 315px; border: 1px solid rgba(233, 249, 234, .15); border-radius: 50%; box-shadow: 0 0 0 41px rgba(233, 249, 234, .05); content: ""; }
.pa-scope-panel::after { position: absolute; right: 0; bottom: 0; width: 44%; height: 60%; background: linear-gradient(135deg, transparent, rgba(235, 249, 235, .08)); content: ""; }
.pa-scope-panel.is-changing { opacity: .5; transform: translateY(5px); }
.pa-scope-panel-symbol { position: absolute; z-index: 1; top: 38px; right: 42px; display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid rgba(239, 251, 239, .25); border-radius: 19px 19px 19px 7px; background: rgba(239, 251, 239, .1); color: #efb474; font-size: 29px; }
.pa-scope-panel-copy, .pa-scope-checklist, .pa-scope-outcome { position: relative; z-index: 1; }
.pa-scope-panel-copy { max-width: 555px; padding-right: 65px; }
.pa-scope-panel-copy > span { color: #efb474; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.pa-scope-panel h3 { max-width: 540px; margin: 16px 0 13px; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(27px, 2.7vw, 39px); font-weight: 650; letter-spacing: -.055em; line-height: 1.1; }
.pa-scope-panel p { max-width: 530px; margin: 0; color: rgba(237, 250, 239, .82); font-size: 14px; line-height: 1.72; }
.pa-scope-checklist { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 27px 0 20px; padding: 0; gap: 9px; list-style: none; }
.pa-scope-checklist li { display: flex; min-height: 68px; align-items: flex-start; gap: 7px; padding: 12px 10px; border: 1px solid rgba(237, 250, 239, .15); border-radius: 11px; background: rgba(8, 42, 25, .14); color: rgba(246, 252, 246, .94); font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 600; line-height: 1.48; }
.pa-scope-checklist i { margin-top: 1px; color: #efb474; font-size: 14px; }
.pa-scope-outcome { display: inline-flex; width: max-content; max-width: 100%; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 999px; background: rgba(237, 250, 238, .1); color: #eff8ef; font-size: 11px; font-weight: 600; line-height: 1.4; }
.pa-scope-outcome i { color: #efb474; font-size: 16px; }
.pa-signals { padding: 112px 0; background: #fff; }
.pa-signal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pa-signal-card { min-height: 240px; padding: 31px 29px; border: 1px solid #dae7d8; border-radius: 13px 30px 13px 30px; background: linear-gradient(145deg, #fff, #f8fbf7); box-shadow: 0 15px 28px rgba(26, 77, 40, .055); }
.pa-signal-card > span { display: grid; width: 45px; height: 45px; place-items: center; margin-bottom: 22px; border-radius: 14px; background: #e8f2e6; color: #347747; font-size: 22px; }
.pa-signal-card h3 { margin: 0 0 10px; color: #214a32; font-family: "Poppins", sans-serif; font-size: 20px; font-weight: 650; letter-spacing: -.04em; line-height: 1.18; }
.pa-signal-card p { margin: 0; color: #66786c; font-size: 13px; line-height: 1.7; }
.pa-signal-card--featured { border-color: #276440; background: linear-gradient(138deg, #173f2b, #347648); box-shadow: 0 20px 35px rgba(25, 78, 41, .18); }
.pa-signal-card--featured > span { background: rgba(238, 249, 238, .12); color: #efb575; }
.pa-signal-card--featured h3 { color: #fff; }
.pa-signal-card--featured p { color: rgba(239, 250, 239, .8); }
.pa-method { position: relative; overflow: hidden; padding: 0 0 112px; background: #fff; }
.pa-method-shell { position: relative; display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); align-items: stretch; overflow: hidden; border-radius: 15px 48px 15px 48px; background: linear-gradient(120deg, #123d2a, #2d7046); box-shadow: 0 25px 49px rgba(22, 73, 39, .19); }
.pa-method-shell::before { position: absolute; top: -115px; left: -105px; width: 390px; height: 390px; border: 1px solid rgba(235, 249, 235, .15); border-radius: 50%; box-shadow: 0 0 0 42px rgba(235, 249, 235, .045); content: ""; }
.pa-method-copy { position: relative; z-index: 1; padding: 58px 54px; }
.pa-method h2 { color: #fff; }
.pa-method-copy p { max-width: 540px; margin: 0; color: rgba(239, 251, 239, .82); font-size: 15px; line-height: 1.78; }
.pa-method-steps { position: relative; z-index: 1; display: grid; margin: 0; padding: 32px; gap: 10px; list-style: none; background: rgba(4, 33, 20, .12); }
.pa-method-steps li { display: grid; grid-template-columns: 47px minmax(0, 1fr); align-items: center; gap: 14px; padding: 16px 17px; border: 1px solid rgba(237, 250, 238, .16); border-radius: 12px; background: rgba(247, 252, 246, .08); }
.pa-method-steps li > span { display: grid; width: 47px; height: 47px; place-items: center; border-radius: 14px 14px 14px 5px; background: rgba(237, 178, 114, .15); color: #f0b675; font-size: 23px; }
.pa-method-steps strong { display: block; margin-bottom: 4px; color: #fff; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 700; letter-spacing: -.025em; }
.pa-method-steps p { margin: 0; color: rgba(240, 251, 240, .76); font-size: 12px; line-height: 1.58; }
.pa-cta { padding: 0 0 112px; background: #fff; }
.pa-cta-card { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 42px; overflow: hidden; padding: 50px 56px; border: 1px solid #cfe2cd; border-radius: 14px 43px 14px 43px; background: linear-gradient(114deg, #edf6eb, #dcebd9); }
.pa-cta-card::after { position: absolute; right: -86px; bottom: -116px; width: 310px; height: 310px; border: 1px solid rgba(40, 105, 60, .15); border-radius: 50%; box-shadow: 0 0 0 38px rgba(40, 105, 60, .045), 0 0 0 91px rgba(40, 105, 60, .025); content: ""; }
.pa-cta-card > * { position: relative; z-index: 1; }
.pa-cta-card h2 { max-width: 720px; margin-bottom: 12px; }
.pa-cta-card p { margin: 0; color: #5d7263; font-size: 15px; line-height: 1.7; }
.pa-cta-button { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; background: #ce803b; box-shadow: 0 12px 21px rgba(180, 105, 39, .18); white-space: nowrap; }
.pa-cta-button:hover { background: #e5a35d; color: #173b27; }
@media (max-width: 991px) { .pa-hero, .pa-hero-container { min-height: 620px; } .pa-hero-copy { padding-top: 132px; } .pa-intro { padding: 88px 0; } .pa-intro-layout, .pa-scope-layout, .pa-method-shell { grid-template-columns: 1fr; gap: 45px; } .pa-intro-visual { max-width: 610px; margin: 0 auto; } .pa-intro-copy { max-width: 670px; margin: 0 auto; } .pa-section-heading--split { grid-template-columns: 1fr; align-items: start; gap: 21px; } .pa-section-heading--split > p { max-width: 620px; margin: 0; } .pa-scope-tabs { grid-template-columns: 1fr 1fr; } .pa-scope-panel { min-height: 390px; } .pa-signal-grid { grid-template-columns: 1fr 1fr; } .pa-signal-card--featured { grid-column: 1 / -1; } .pa-method-copy { padding: 50px 48px 25px; } .pa-method-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 26px; } .pa-method-steps li { grid-template-columns: 1fr; align-items: start; } .pa-cta-card { padding: 45px 47px; } }
@media (max-width: 767px) { .pa-hero, .pa-hero-container { min-height: 610px; } .pa-hero-overlay { background: linear-gradient(90deg, rgba(5, 30, 20, .97), rgba(8, 43, 29, .86) 67%, rgba(7, 33, 22, .54)); } .pa-hero::after { width: 70%; } .pa-hero-copy { padding: 120px 0 84px; } .pa-hero h1, .pa-hero h2 { font-size: clamp(40px, 10.4vw, 53px); } .pa-hero p { font-size: 15px; } .pa-hero-actions { align-items: flex-start; flex-direction: column; gap: 17px; margin-top: 26px; } .pa-hero-controls { bottom: 20px; left: 50%; gap: 8px; padding: 5px 6px; transform: translateX(-50%); } .pa-hero-control { width: 38px; height: 38px; font-size: 16px; } .pa-hero-count { min-width: 34px; } .pa-intro, .pa-scope, .pa-signals { padding: 74px 0; } .pa-intro-layout { gap: 38px; } .pa-intro-visual, .pa-intro-visual img { min-height: 370px; height: 370px; } .pa-intro-visual { border-radius: 9px 33px 9px 33px; } .pa-intro-visual figcaption { right: 0; bottom: 13px; padding: 9px 12px; font-size: 10px; } .pa-intro-copy h2, .pa-section-heading h2, .pa-method h2, .pa-cta h2 { font-size: 35px; } .pa-section-heading--split { margin-bottom: 34px; } .pa-section-heading--split > p { padding: 0; border-left: 0; font-size: 15px; } .pa-scope-tabs { grid-template-columns: 1fr; } .pa-scope-tab { min-height: 71px; } .pa-scope-tab:hover, .pa-scope-tab:focus-visible { transform: none; } .pa-scope-panel { min-height: 0; padding: 33px 24px 28px; border-radius: 12px 34px 12px 34px; } .pa-scope-panel-symbol { top: 25px; right: 20px; width: 49px; height: 49px; border-radius: 15px 15px 15px 5px; font-size: 23px; } .pa-scope-panel-copy { padding-right: 44px; } .pa-scope-panel h3 { font-size: 28px; } .pa-scope-panel p { font-size: 13px; } .pa-scope-checklist { grid-template-columns: 1fr; margin: 23px 0 17px; } .pa-scope-checklist li { min-height: 0; padding: 10px 11px; } .pa-scope-outcome { width: 100%; border-radius: 10px; font-size: 10px; } .pa-section-heading--center { margin-bottom: 34px; text-align: left; } .pa-section-heading--center .pa-eyebrow { justify-content: flex-start; } .pa-section-heading--center h2, .pa-section-heading--center p { margin-right: 0; margin-left: 0; text-align: left; } .pa-signal-grid { grid-template-columns: 1fr; } .pa-signal-card--featured { grid-column: auto; } .pa-signal-card { min-height: 0; padding: 28px 24px; } .pa-method { padding-bottom: 74px; } .pa-method-shell { border-radius: 12px 35px 12px 35px; } .pa-method-copy { padding: 37px 25px 20px; } .pa-method-steps { grid-template-columns: 1fr; padding: 24px; } .pa-method-steps li { grid-template-columns: 44px minmax(0, 1fr); } .pa-method-steps li > span { width: 44px; height: 44px; font-size: 21px; } .pa-cta { padding-bottom: 74px; } .pa-cta-card { align-items: flex-start; flex-direction: column; gap: 25px; padding: 36px 26px; border-radius: 12px 34px 12px 34px; } .pa-cta-button { width: 100%; justify-content: center; } }
@media (max-width: 420px) { .pa-hero h1, .pa-hero h2 { font-size: 39px; } .pa-hero-cta { width: 100%; justify-content: center; } .pa-hero-link { margin-left: 3px; } .pa-intro-visual, .pa-intro-visual img { min-height: 315px; height: 315px; } .pa-intro-visual img { object-position: 27% center; } .pa-intro-highlights li { align-items: flex-start; font-size: 11px; line-height: 1.45; } .pa-scope-tab { grid-template-columns: 39px minmax(0, 1fr) 17px; gap: 10px; padding: 12px; } .pa-scope-tab > i:first-child { width: 39px; height: 39px; font-size: 19px; } .pa-scope-tab strong { font-size: 13px; } .pa-scope-panel-copy { padding-right: 29px; } .pa-scope-panel h3 { font-size: 25px; } .pa-method-copy { padding: 33px 22px 18px; } .pa-method-steps { padding: 18px; } }
@media (prefers-reduced-motion: reduce) { .pa-page *, .pa-page *::before, .pa-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
@media (max-width: 767px) { .pa-hero-carousel .owl-nav { display: none; } }

/* Consultoria HCM Senior */
.hcm-page { --hcm-ink: #173c2a; --hcm-deep: #092d1f; --hcm-green: #35764b; --hcm-olive: #739648; --hcm-mint: #edf6eb; --hcm-gold: #d58b44; overflow: hidden; background: #fbfdf9; color: var(--hcm-ink); }
.hcm-page *, .hcm-page *::before, .hcm-page *::after { box-sizing: border-box; }
.hcm-hero-carousel { position: relative; background: var(--hcm-deep); }
.hcm-hero { position: relative; display: flex; min-height: 665px; overflow: hidden; align-items: stretch; background-color: var(--hcm-deep); background-position: center; background-repeat: no-repeat; background-size: cover; }
.hcm-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4, 29, 19, .98) 0%, rgba(8, 45, 29, .94) 35%, rgba(9, 48, 31, .68) 59%, rgba(7, 34, 23, .2) 100%); }
.hcm-hero::after { position: absolute; top: 0; bottom: 0; left: 0; width: 48%; background-image: radial-gradient(rgba(229, 177, 108, .33) 1px, transparent 1px); background-size: 22px 22px; content: ""; opacity: .35; pointer-events: none; }
.hcm-hero-container { position: relative; z-index: 1; display: flex; min-height: 665px; align-items: center; justify-content: flex-start; }
.hcm-hero-copy { width: min(615px, 100%); padding: 148px 0 72px; color: #fff; }
.hcm-eyebrow { display: flex; align-items: center; gap: 11px; color: #bd7439; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.35; text-transform: uppercase; }
.hcm-eyebrow::before { width: 34px; height: 2px; flex: 0 0 34px; background: #d99149; content: ""; }
.hcm-eyebrow--light { color: #f0b575; }
.hcm-eyebrow--light::before { background: #efb474; }
.hcm-hero h1, .hcm-hero h2 { max-width: 620px; margin: 18px 0; color: #fff; font-family: "Poppins", sans-serif; font-size: clamp(44px, 4.25vw, 63px); font-weight: 650; letter-spacing: -.064em; line-height: 1.04; }
.hcm-hero p { max-width: 540px; margin: 0; color: rgba(242, 251, 242, .87); font-size: 16px; line-height: 1.7; }
.hcm-hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 27px; }
.hcm-hero-cta { display: inline-flex; align-items: center; gap: 11px; background: var(--hcm-gold); box-shadow: 0 14px 25px rgba(0, 0, 0, .24); }
.hcm-hero-cta:hover { background: #edaa63; color: #153824; }
.hcm-hero-link { display: inline-flex; align-items: center; gap: 9px; border-bottom: 1px solid rgba(243, 250, 242, .44); color: #f3faf2; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 650; line-height: 1.8; transition: border-color .22s ease, color .22s ease, transform .22s ease; }
.hcm-hero-link:hover { border-color: #f0b575; color: #f0b575; transform: translateX(3px); }
.hcm-hero-carousel .owl-nav button.owl-prev, .hcm-hero-carousel .owl-nav button.owl-next { position: absolute; z-index: 4; top: 50%; width: 58px; height: 58px; border: 1px solid rgba(234, 253, 237, .42); background: rgba(12, 59, 39, .48); color: #fff; font-size: 22px; transform: translateY(-50%); transition: background .25s ease, border-color .25s ease; }
.hcm-hero-carousel .owl-nav button.owl-prev { left: 0; border-left: 0; border-radius: 0 12px 12px 0; }
.hcm-hero-carousel .owl-nav button.owl-next { right: 0; border-right: 0; border-radius: 12px 0 0 12px; }
.hcm-hero-carousel .owl-nav button:hover { border-color: #e49a52; background: #de8038; }
.hcm-hero-points { display: flex; flex-wrap: wrap; margin: 21px 0 0; padding: 0; gap: 10px 17px; list-style: none; }
.hcm-hero-points li { display: inline-flex; align-items: center; gap: 7px; color: rgba(240, 250, 240, .86); font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 600; }
.hcm-hero-points i { color: #efb474; font-size: 16px; }
.hcm-hero-badge { display: grid; grid-template-columns: 43px auto minmax(0, 1fr); width: min(100%, 610px); align-items: center; gap: 11px; margin-top: 20px; padding: 10px 14px; border: 1px solid rgba(160, 188, 120, .48); border-radius: 14px 28px 14px 28px; background: rgba(9, 47, 30, .76); box-shadow: inset 4px 0 0 var(--hcm-olive), 0 14px 28px rgba(3, 24, 15, .19); color: #fff; backdrop-filter: blur(7px); }
.hcm-hero-badge > i { display: grid; width: 43px; height: 43px; place-items: center; border: 1px solid rgba(185, 213, 145, .31); border-radius: 13px 13px 13px 5px; background: rgba(115, 150, 72, .22); color: #dceec0; font-size: 22px; }
.hcm-hero-badge > div { min-width: 0; }
.hcm-hero-badge span { display: block; color: #edb373; font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 800; letter-spacing: .14em; line-height: 1.3; }
.hcm-hero-badge strong { display: block; margin-top: 3px; color: #fff; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 650; letter-spacing: -.03em; line-height: 1.1; }
.hcm-hero-badge p { min-width: 0; margin: 0; padding-left: 12px; border-left: 1px solid rgba(239, 249, 239, .18); color: rgba(239, 250, 239, .76); font-size: 10px; line-height: 1.45; }
.hcm-intro { position: relative; padding: 116px 0 112px; overflow: hidden; background: linear-gradient(145deg, #fff 0%, #fbfdf9 54%, #eff7ed 100%); }
.hcm-intro::before { position: absolute; top: -190px; right: -175px; width: 520px; height: 520px; border: 1px solid rgba(45, 110, 66, .1); border-radius: 50%; box-shadow: 0 0 0 46px rgba(45, 110, 66, .035), 0 0 0 108px rgba(45, 110, 66, .018); content: ""; }
.hcm-intro-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(320px, .96fr) minmax(360px, 1.04fr); align-items: stretch; gap: clamp(50px, 7vw, 95px); }
.hcm-intro-copy { max-width: 585px; }
.hcm-intro-copy h2, .hcm-section-heading h2, .hcm-channel h2, .hcm-cta h2 { margin: 17px 0 16px; color: var(--hcm-ink); font-family: "Poppins", sans-serif; font-size: clamp(34px, 3.55vw, 51px); font-weight: 650; letter-spacing: -.06em; line-height: 1.08; }
.hcm-intro-copy h2 em { color: #c97a3c; font-style: normal; }
.hcm-intro-copy > p { margin: 0 0 14px; color: #607469; font-size: 15px; line-height: 1.8; }
.hcm-intro-highlights { display: grid; margin: 25px 0 0; padding: 0; gap: 10px; list-style: none; }
.hcm-intro-highlights li { display: flex; align-items: center; gap: 10px; color: #365741; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 650; }
.hcm-intro-highlights i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; background: #edf5ea; color: var(--hcm-olive); font-size: 15px; }
.hcm-intro-visual { width: 100%; max-width: 620px; align-self: center; justify-self: center; margin: 0; }
.hcm-intro-visual img { display: block; width: 100%; height: auto; }
.hcm-system-map { position: relative; isolation: isolate; min-height: 552px; overflow: hidden; padding: 27px; border: 1px solid #c7ddc5; border-radius: 18px 54px 18px 54px; background: radial-gradient(circle at 50% 47%, #f9fcf8 0%, #edf5ea 43%, #dfeedd 100%); box-shadow: 19px 21px 0 rgba(72, 133, 82, .13), 0 30px 52px rgba(27, 76, 41, .12); }
.hcm-system-map::before { position: absolute; z-index: 0; inset: 0; background-image: radial-gradient(rgba(48, 108, 65, .17) 1.1px, transparent 1.25px); background-size: 20px 20px; content: ""; opacity: .5; pointer-events: none; }
.hcm-system-map::after { position: absolute; z-index: 0; top: -104px; right: -87px; width: 315px; height: 315px; border: 1px solid rgba(50, 109, 65, .12); border-radius: 50%; box-shadow: 0 0 0 45px rgba(50, 109, 65, .035), 0 0 0 102px rgba(50, 109, 65, .018); content: ""; }
.hcm-system-map-head { position: relative; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hcm-system-map-label { display: inline-flex; align-items: center; gap: 7px; color: #b57038; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .14em; line-height: 1.25; }
.hcm-system-map-label i { font-size: 16px; }
.hcm-system-map-state { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid rgba(58, 116, 73, .14); border-radius: 999px; background: rgba(255, 255, 255, .62); color: #567362; font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 700; white-space: nowrap; }
.hcm-system-map-state i { color: var(--hcm-olive); font-size: 8px; animation: hcm-system-map-pulse 2.8s ease-in-out infinite; }
.hcm-system-map-orbit { position: absolute; z-index: 1; top: 50%; left: 50%; border: 1px solid rgba(47, 109, 64, .15); border-radius: 50%; pointer-events: none; transform: translate(-50%, -48%); }
.hcm-system-map-orbit--outer { width: min(82%, 420px); aspect-ratio: 1; box-shadow: 0 0 0 35px rgba(50, 111, 67, .035), 0 0 0 77px rgba(50, 111, 67, .018); }
.hcm-system-map-orbit--inner { width: min(46%, 238px); aspect-ratio: 1; border-color: rgba(47, 109, 64, .19); background: rgba(255, 255, 255, .17); }
.hcm-system-map-connectors { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.hcm-system-map-connectors path { fill: none; stroke: rgba(65, 126, 79, .62); stroke-width: 2.4; stroke-dasharray: 5 9; stroke-linecap: round; animation: hcm-system-map-flow 9s linear infinite; }
.hcm-system-map-connectors path:nth-child(2) { animation-delay: -2.3s; }
.hcm-system-map-connectors path:nth-child(3) { animation-delay: -4.6s; }
.hcm-system-map-connectors path:nth-child(4) { animation-delay: -6.9s; }
.hcm-system-map-node { position: absolute; z-index: 3; display: grid; grid-template-columns: 47px minmax(0, 1fr); width: min(192px, calc(50% - 96px)); min-height: 86px; align-items: center; gap: 11px; padding: 11px; border: 1px solid rgba(94, 141, 100, .29); border-radius: 15px 20px 15px 7px; background: rgba(255, 255, 255, .84); box-shadow: 0 12px 23px rgba(33, 83, 43, .09); transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease; }
.hcm-system-map-node:hover { border-color: rgba(47, 112, 66, .55); box-shadow: 0 16px 27px rgba(33, 83, 43, .15); transform: translateY(-4px); }
.hcm-system-map-node-icon { display: grid; width: 47px; height: 47px; place-items: center; border-radius: 14px 14px 14px 5px; background: linear-gradient(145deg, #e3f1e2, #f7fbf6); box-shadow: inset 0 0 0 1px rgba(115, 150, 72, .16); color: var(--hcm-olive); font-size: 23px; }
.hcm-system-map-node-copy { display: grid; gap: 3px; min-width: 0; }
.hcm-system-map-node-copy strong { color: #214b32; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 750; letter-spacing: -.025em; line-height: 1.1; }
.hcm-system-map-node-copy small { color: #698074; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 600; line-height: 1.35; }
.hcm-system-map-node--people { top: 102px; left: 27px; }
.hcm-system-map-node--process { top: 102px; right: 27px; }
.hcm-system-map-node--data { bottom: 96px; left: 27px; }
.hcm-system-map-node--systems { right: 27px; bottom: 96px; }
.hcm-system-map-node--process .hcm-system-map-node-icon { background: linear-gradient(145deg, #fff2e4, #fffaf2); color: #bd7132; }
.hcm-system-map-node--data .hcm-system-map-node-icon { background: linear-gradient(145deg, #e5f2ed, #f6fbf8); color: #3a8172; }
.hcm-system-map-node--systems .hcm-system-map-node-icon { background: linear-gradient(145deg, #edf0f9, #fafbff); color: #526eb0; }
.hcm-system-map-core { position: absolute; z-index: 4; top: 50%; left: 50%; display: flex; width: 154px; height: 154px; align-items: center; justify-content: center; flex-direction: column; border: 1px solid rgba(235, 250, 236, .3); border-radius: 45px 45px 19px 45px; background: linear-gradient(145deg, #123d29, #36794a); box-shadow: 0 18px 34px rgba(25, 77, 40, .26), inset 0 1px 0 rgba(255, 255, 255, .12); color: #fff; text-align: center; transform: translate(-50%, -48%); }
.hcm-system-map-core::before { position: absolute; inset: 11px; border: 1px solid rgba(238, 250, 238, .11); border-radius: 34px 34px 13px 34px; content: ""; }
.hcm-system-map-core > * { position: relative; z-index: 1; }
.hcm-system-map-core > span { color: #efb474; font-family: "Poppins", sans-serif; font-size: 7px; font-weight: 800; letter-spacing: .11em; }
.hcm-system-map-core i { margin: 7px 0 5px; color: #f0b575; font-size: 31px; }
.hcm-system-map-core strong { color: #fff; font-family: "Poppins", sans-serif; font-size: 19px; font-weight: 700; letter-spacing: -.04em; line-height: .95; }
.hcm-system-map-core small { margin-top: 7px; color: rgba(238, 250, 238, .72); font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 600; }
.hcm-system-map-caption { position: absolute; z-index: 3; right: 27px; bottom: 25px; left: 27px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 13px; border: 1px solid rgba(81, 132, 88, .19); border-radius: 10px; background: rgba(247, 252, 246, .7); color: #536f5d; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 650; line-height: 1.42; text-align: center; }
.hcm-system-map-caption i { flex: 0 0 auto; color: #4b985d; font-size: 16px; }
@keyframes hcm-system-map-flow { to { stroke-dashoffset: -84; } }
@keyframes hcm-system-map-pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .45; transform: scale(.66); } }
.hcm-expertise { position: relative; overflow: hidden; padding: 112px 0; background: #eff6ed; }
.hcm-expertise::before { position: absolute; right: -160px; bottom: -175px; width: 530px; height: 530px; border: 1px solid rgba(44, 111, 65, .1); border-radius: 50%; box-shadow: 0 0 0 48px rgba(44, 111, 65, .035), 0 0 0 106px rgba(44, 111, 65, .018); content: ""; }
.hcm-section-heading { position: relative; z-index: 1; }
.hcm-section-heading--split { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(310px, .72fr); align-items: end; gap: clamp(48px, 6vw, 84px); margin-bottom: 50px; }
.hcm-section-heading--split h2 { max-width: 710px; margin-bottom: 0; text-wrap: balance; }
.hcm-section-heading--split > p { max-width: 470px; margin: 0; padding: 2px 0 2px 25px; border-left: 1px solid #c9dcc7; color: #5f7565; font-size: 16px; line-height: 1.78; }
.hcm-section-heading--center { max-width: 780px; margin: 0 auto 48px; text-align: center; }
.hcm-section-heading--center .hcm-eyebrow { justify-content: center; }
.hcm-section-heading--center h2 { margin-right: auto; margin-left: auto; }
.hcm-section-heading--center p { max-width: 630px; margin: 0 auto; color: #63766a; font-size: 15px; line-height: 1.75; }
.hcm-expertise-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(300px, .83fr) minmax(0, 1.17fr); align-items: stretch; max-width: 1110px; margin: 0 auto; gap: 25px; }
.hcm-expertise-tabs { display: grid; grid-template-rows: repeat(5, minmax(0, 1fr)); align-content: stretch; gap: 10px; }
.hcm-expertise-tab { display: grid; grid-template-columns: 42px minmax(0, 1fr) 19px; width: 100%; min-height: 0; height: 100%; align-items: center; gap: 13px; padding: 13px 17px; border: 1px solid #cfe0cd; border-radius: 13px; background: rgba(255, 255, 255, .68); color: #355642; cursor: pointer; text-align: left; transition: border-color .24s ease, background .24s ease, box-shadow .24s ease, transform .24s ease; }
.hcm-expertise-tab > i:first-child { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #e6f1e4; color: #36794a; font-size: 21px; transition: background .24s ease, color .24s ease; }
.hcm-expertise-tab span { display: block; min-width: 0; }
.hcm-expertise-tab small { display: block; margin-bottom: 3px; color: #b9773d; font-family: "Poppins", sans-serif; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.hcm-expertise-tab strong { display: block; color: #254c34; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 650; letter-spacing: -.025em; line-height: 1.18; transition: color .24s ease; }
.hcm-expertise-tab-arrow { color: #ba7a3f; font-size: 17px; transition: transform .24s ease, color .24s ease; }
.hcm-expertise-tab:hover, .hcm-expertise-tab:focus-visible { border-color: #8db68f; background: #fff; box-shadow: 0 12px 22px rgba(32, 82, 43, .1); outline: 0; transform: translateX(4px); }
.hcm-expertise-tab.is-active { border-color: var(--hcm-olive); background: linear-gradient(130deg, #1a5034, var(--hcm-olive)); box-shadow: 0 15px 28px rgba(25, 77, 40, .18); }
.hcm-expertise-tab.is-active > i:first-child { background: rgba(239, 250, 239, .13); color: #f0b575; }
.hcm-expertise-tab.is-active small { color: #edb373; }
.hcm-expertise-tab.is-active strong { color: #fff; }
.hcm-expertise-tab.is-active .hcm-expertise-tab-arrow { color: #edb373; transform: translateX(3px); }
.hcm-expertise-panel { position: relative; display: grid; grid-template-rows: 218px minmax(0, 1fr) auto; height: 548px; min-height: 548px; overflow: hidden; padding: 43px 46px 39px; border-radius: 15px 49px 15px 49px; background: linear-gradient(138deg, #0f3927, #2d7145); box-shadow: 0 24px 46px rgba(22, 77, 40, .21); color: #fff; transition: opacity .13s ease, transform .13s ease; }
.hcm-expertise-panel::before { position: absolute; top: -103px; right: -100px; width: 315px; height: 315px; border: 1px solid rgba(233, 249, 234, .15); border-radius: 50%; box-shadow: 0 0 0 41px rgba(233, 249, 234, .05); content: ""; }
.hcm-expertise-panel::after { position: absolute; right: 0; bottom: 0; width: 44%; height: 60%; background: linear-gradient(135deg, transparent, rgba(235, 249, 235, .08)); content: ""; }
.hcm-expertise-panel.is-changing { opacity: .52; transform: translateY(5px); }
.hcm-expertise-panel-symbol { position: absolute; z-index: 1; top: 38px; right: 42px; display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid rgba(239, 251, 239, .25); border-radius: 19px 19px 19px 7px; background: rgba(239, 251, 239, .1); color: #efb474; font-size: 29px; }
.hcm-expertise-panel-copy, .hcm-expertise-checklist, .hcm-expertise-outcome { position: relative; z-index: 1; }
.hcm-expertise-panel-copy { max-width: 555px; min-height: 0; padding-right: 65px; }
.hcm-expertise-panel-copy > span { color: #efb474; font-family: "Poppins", sans-serif; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.hcm-expertise-panel h3 { max-width: 540px; min-height: 114px; margin: 14px 0 12px; color: #fff; font-family: "Poppins", sans-serif; font-size: 35px; font-weight: 650; letter-spacing: -.055em; line-height: 1.08; }
.hcm-expertise-panel p { max-width: 530px; min-height: 72px; margin: 0; color: rgba(237, 250, 239, .82); font-size: 14px; line-height: 1.72; }
.hcm-expertise-checklist { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-self: center; margin: 0; padding: 0; gap: 9px; list-style: none; }
.hcm-expertise-checklist li { display: flex; min-height: 70px; align-items: flex-start; gap: 7px; padding: 12px 10px; border: 1px solid rgba(237, 250, 239, .15); border-radius: 11px; background: rgba(8, 42, 25, .14); color: rgba(246, 252, 246, .94); font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 600; line-height: 1.48; }
.hcm-expertise-checklist i { margin-top: 1px; color: #efb474; font-size: 14px; }
.hcm-expertise-outcome { display: inline-flex; width: max-content; max-width: 100%; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 999px; background: rgba(237, 250, 238, .1); color: #eff8ef; font-size: 11px; font-weight: 600; line-height: 1.4; }
.hcm-expertise-outcome i { color: #efb474; font-size: 16px; }
.hcm-channel { padding: 0 0 112px; background: #eff6ed; }
.hcm-channel-shell { position: relative; display: grid; grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr); overflow: hidden; border-radius: 15px 49px 15px 49px; background: linear-gradient(118deg, #123d2a, #2f7147); box-shadow: 0 25px 49px rgba(22, 73, 39, .19); }
.hcm-channel-shell::before { position: absolute; top: -115px; left: -105px; width: 390px; height: 390px; border: 1px solid rgba(235, 249, 235, .15); border-radius: 50%; box-shadow: 0 0 0 42px rgba(235, 249, 235, .045); content: ""; }
.hcm-channel-copy { position: relative; z-index: 1; padding: 58px 54px; }
.hcm-channel h2 { color: #fff; }
.hcm-channel-copy p { max-width: 520px; margin: 0; color: rgba(239, 251, 239, .82); font-size: 15px; line-height: 1.78; }
.hcm-channel-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 26px; border-bottom: 1px solid rgba(241, 250, 240, .42); color: #fff; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; line-height: 1.75; transition: color .2s ease, border-color .2s ease, transform .2s ease; }
.hcm-channel-link:hover { border-color: #efb474; color: #efb474; transform: translateX(3px); }
.hcm-channel-grid { position: relative; z-index: 1; display: grid; align-content: center; padding: 32px; gap: 10px; background: rgba(4, 33, 20, .12); }
.hcm-channel-grid article { display: grid; grid-template-columns: 49px minmax(0, 1fr); align-items: center; gap: 14px; padding: 16px 17px; border: 1px solid rgba(237, 250, 238, .16); border-radius: 12px; background: rgba(247, 252, 246, .08); }
.hcm-channel-grid article > span { display: grid; width: 49px; height: 49px; place-items: center; border-radius: 14px 14px 14px 5px; background: rgba(237, 178, 114, .15); color: #f0b675; font-size: 23px; }
.hcm-channel-grid h3 { margin: 0 0 4px; color: #fff; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 700; letter-spacing: -.025em; }
.hcm-channel-grid p { margin: 0; color: rgba(240, 251, 240, .76); font-size: 12px; line-height: 1.58; }
.hcm-method { position: relative; padding: 112px 0; background: #fff; }
.hcm-method::after { position: absolute; right: -160px; bottom: -180px; width: 520px; height: 520px; border: 1px solid rgba(48, 108, 65, .08); border-radius: 50%; box-shadow: 0 0 0 42px rgba(48, 108, 65, .03); content: ""; pointer-events: none; }
.hcm-method .container { position: relative; z-index: 1; }
.hcm-method-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; gap: 16px; list-style: none; }
.hcm-method-grid li { min-height: 237px; padding: 27px 24px; border: 1px solid #d9e7d7; border-radius: 13px 30px 13px 30px; background: linear-gradient(145deg, #fff, #f7fbf6); box-shadow: 0 14px 27px rgba(26, 77, 40, .055); }
.hcm-method-grid li > span { display: grid; width: 45px; height: 45px; place-items: center; margin-bottom: 21px; border-radius: 14px; background: #e8f2e6; color: var(--hcm-olive); font-size: 22px; }
.hcm-method-grid strong { display: block; margin-bottom: 9px; color: #214a32; font-family: "Poppins", sans-serif; font-size: 17px; font-weight: 650; letter-spacing: -.035em; line-height: 1.18; }
.hcm-method-grid p { margin: 0; color: #67796d; font-size: 13px; line-height: 1.68; }
.hcm-cta { padding: 0 0 112px; background: #fff; }
.hcm-cta-card { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 42px; overflow: hidden; padding: 51px 56px; border: 1px solid #cfe2cd; border-radius: 14px 43px 14px 43px; background: linear-gradient(114deg, #edf6eb, #dcebd9); }
.hcm-cta-card::after { position: absolute; right: -86px; bottom: -116px; width: 310px; height: 310px; border: 1px solid rgba(40, 105, 60, .15); border-radius: 50%; box-shadow: 0 0 0 38px rgba(40, 105, 60, .045), 0 0 0 91px rgba(40, 105, 60, .025); content: ""; }
.hcm-cta-card > * { position: relative; z-index: 1; }
.hcm-cta-card h2 { max-width: 720px; margin-bottom: 12px; }
.hcm-cta-card p { max-width: 670px; margin: 0; color: #5d7263; font-size: 15px; line-height: 1.7; }
.hcm-cta-button { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; background: #ce803b; box-shadow: 0 12px 21px rgba(180, 105, 39, .18); white-space: nowrap; }
.hcm-cta-button:hover { background: #e5a35d; color: #173b27; }
@media (max-width: 991px) { .hcm-hero, .hcm-hero-container { min-height: 640px; } .hcm-hero-copy { padding-top: 132px; } .hcm-hero-badge { display: none; } .hcm-intro { padding: 88px 0; } .hcm-intro-layout, .hcm-channel-shell { grid-template-columns: 1fr; gap: 45px; } .hcm-intro-copy { max-width: 670px; margin: 0 auto; } .hcm-system-map { max-width: 620px; width: 100%; margin: 0 auto; } .hcm-section-heading--split { grid-template-columns: 1fr; align-items: start; gap: 21px; } .hcm-section-heading--split > p { max-width: 620px; margin: 0; } .hcm-expertise-layout { grid-template-columns: 1fr; max-width: 720px; } .hcm-expertise-tabs { grid-template-columns: 1fr 1fr; } .hcm-expertise-panel { min-height: 405px; } .hcm-channel-copy { padding: 50px 48px 25px; } .hcm-channel-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 26px; } .hcm-channel-grid article { grid-template-columns: 1fr; align-items: start; } .hcm-method-grid { grid-template-columns: 1fr 1fr; } .hcm-cta-card { padding: 45px 47px; } }
@media (max-width: 767px) { .hcm-hero, .hcm-hero-container { min-height: 620px; } .hcm-hero-overlay { background: linear-gradient(90deg, rgba(5, 30, 20, .97), rgba(8, 43, 29, .86) 67%, rgba(7, 33, 22, .55)); } .hcm-hero::after { width: 70%; } .hcm-hero-copy { padding: 120px 0 82px; } .hcm-hero h1 { font-size: clamp(40px, 10.4vw, 53px); } .hcm-hero p { font-size: 15px; } .hcm-hero-actions { align-items: flex-start; flex-direction: column; gap: 17px; margin-top: 26px; } .hcm-hero-points { display: grid; grid-template-columns: 1fr; gap: 8px; } .hcm-intro, .hcm-expertise, .hcm-method { padding: 74px 0; } .hcm-intro-layout { gap: 38px; } .hcm-intro-copy h2, .hcm-section-heading h2, .hcm-channel h2, .hcm-cta h2 { font-size: 35px; } .hcm-system-map { min-height: 370px; border-radius: 12px 35px 12px 35px; box-shadow: 11px 14px 0 rgba(72, 133, 82, .11), 0 20px 38px rgba(27, 76, 41, .1); } .hcm-system-map-core { width: 96px; height: 96px; border-radius: 29px 29px 29px 10px; } .hcm-system-map-core i { font-size: 23px; } .hcm-system-map-core strong { font-size: 13px; } .hcm-system-map-node { width: 83px; min-height: 63px; padding: 8px; } .hcm-system-map-node i { font-size: 19px; } .hcm-system-map-node span { font-size: 9px; } .hcm-system-map-node--people { top: 77px; left: 6%; } .hcm-system-map-node--process { top: 77px; right: 6%; } .hcm-system-map-node--data { bottom: 63px; left: 6%; } .hcm-system-map-node--systems { right: 6%; bottom: 63px; } .hcm-system-map-caption { right: 18px; bottom: 18px; left: 18px; font-size: 10px; } .hcm-section-heading--split { margin-bottom: 34px; } .hcm-section-heading--split > p { padding: 0; border-left: 0; font-size: 15px; } .hcm-expertise-tabs { grid-template-columns: 1fr; } .hcm-expertise-tab { min-height: 72px; } .hcm-expertise-tab:hover, .hcm-expertise-tab:focus-visible { transform: none; } .hcm-expertise-panel { min-height: 0; padding: 33px 24px 28px; border-radius: 12px 34px 12px 34px; } .hcm-expertise-panel-symbol { top: 25px; right: 20px; width: 49px; height: 49px; border-radius: 15px 15px 15px 5px; font-size: 23px; } .hcm-expertise-panel-copy { padding-right: 44px; } .hcm-expertise-panel h3 { font-size: 28px; } .hcm-expertise-panel p { font-size: 13px; } .hcm-expertise-checklist { grid-template-columns: 1fr; margin: 23px 0 17px; } .hcm-expertise-checklist li { min-height: 0; padding: 10px 11px; } .hcm-expertise-outcome { width: 100%; border-radius: 10px; font-size: 10px; } .hcm-channel { padding-bottom: 74px; } .hcm-channel-shell { border-radius: 12px 35px 12px 35px; } .hcm-channel-copy { padding: 37px 25px 20px; } .hcm-channel-grid { grid-template-columns: 1fr; padding: 24px; } .hcm-channel-grid article { grid-template-columns: 44px minmax(0, 1fr); } .hcm-channel-grid article > span { width: 44px; height: 44px; font-size: 21px; } .hcm-section-heading--center { margin-bottom: 34px; text-align: left; } .hcm-section-heading--center .hcm-eyebrow { justify-content: flex-start; } .hcm-section-heading--center h2, .hcm-section-heading--center p { margin-right: 0; margin-left: 0; text-align: left; } .hcm-method-grid { grid-template-columns: 1fr; } .hcm-method-grid li { min-height: 0; padding: 27px 24px; } .hcm-cta { padding-bottom: 74px; } .hcm-cta-card { align-items: flex-start; flex-direction: column; gap: 25px; padding: 36px 26px; border-radius: 12px 34px 12px 34px; } .hcm-cta-button { width: 100%; justify-content: center; } }
@media (max-width: 420px) { .hcm-hero h1 { font-size: 39px; } .hcm-hero-cta { width: 100%; justify-content: center; } .hcm-hero-link { margin-left: 3px; } .hcm-intro-highlights li { align-items: flex-start; font-size: 11px; line-height: 1.45; } .hcm-system-map { min-height: 348px; } .hcm-system-map-label { top: 19px; left: 20px; font-size: 8px; } .hcm-system-map-node { width: 75px; } .hcm-system-map-node--people { left: 4%; } .hcm-system-map-node--process { right: 4%; } .hcm-system-map-node--data { left: 4%; } .hcm-system-map-node--systems { right: 4%; } .hcm-expertise-tab { grid-template-columns: 39px minmax(0, 1fr) 17px; gap: 10px; padding: 12px; } .hcm-expertise-tab > i:first-child { width: 39px; height: 39px; font-size: 19px; } .hcm-expertise-tab strong { font-size: 13px; } .hcm-expertise-panel-copy { padding-right: 29px; } .hcm-expertise-panel h3 { font-size: 25px; } }
@media (max-width: 767px) { .hcm-hero-carousel .owl-nav { display: none; } .hcm-hero h1, .hcm-hero h2 { font-size: clamp(40px, 10.4vw, 53px); } }
@media (max-width: 420px) { .hcm-hero h1, .hcm-hero h2 { font-size: 39px; } }
@media (max-width: 767px) {
    .hcm-system-map { min-height: 590px; padding: 20px; border-radius: 14px 40px 14px 40px; box-shadow: 12px 15px 0 rgba(72, 133, 82, .11), 0 22px 39px rgba(27, 76, 41, .11); }
    .hcm-system-map-head { align-items: flex-start; }
    .hcm-system-map-label { max-width: 205px; font-size: 8px; }
    .hcm-system-map-state { padding: 6px 8px; font-size: 7px; }
    .hcm-system-map::after { top: -116px; right: -143px; }
    .hcm-system-map-orbit { top: 32%; transform: translate(-50%, -50%); }
    .hcm-system-map-orbit--outer { width: 245px; box-shadow: 0 0 0 25px rgba(50, 111, 67, .035), 0 0 0 54px rgba(50, 111, 67, .018); }
    .hcm-system-map-orbit--inner { width: 145px; }
    .hcm-system-map-connectors { display: none; }
    .hcm-system-map-core { top: 32%; width: 122px; height: 122px; border-radius: 36px 36px 15px 36px; transform: translate(-50%, -50%); }
    .hcm-system-map-core::before { inset: 9px; border-radius: 27px 27px 11px 27px; }
    .hcm-system-map-core > span { font-size: 6px; }
    .hcm-system-map-core i { margin: 5px 0 4px; font-size: 25px; }
    .hcm-system-map-core strong { font-size: 16px; }
    .hcm-system-map-core small { margin-top: 5px; font-size: 7px; }
    .hcm-system-map-node { grid-template-columns: 39px minmax(0, 1fr); width: calc(50% - 29px); min-height: 78px; gap: 8px; padding: 9px; border-radius: 12px 16px 12px 5px; }
    .hcm-system-map-node-icon { width: 39px; height: 39px; border-radius: 12px 12px 12px 4px; font-size: 19px; }
    .hcm-system-map-node-copy { gap: 2px; }
    .hcm-system-map-node-copy strong { font-size: 11px; }
    .hcm-system-map-node-copy small { font-size: 8px; line-height: 1.25; }
    .hcm-system-map-node--people { top: 276px; left: 16px; }
    .hcm-system-map-node--process { top: 276px; right: 16px; }
    .hcm-system-map-node--data { bottom: 74px; left: 16px; }
    .hcm-system-map-node--systems { right: 16px; bottom: 74px; }
    .hcm-system-map-caption { right: 16px; bottom: 17px; left: 16px; gap: 6px; padding: 8px 10px; font-size: 9px; }
    .hcm-system-map-caption i { font-size: 14px; }
}
@media (max-width: 420px) {
    .hcm-system-map { min-height: 576px; padding: 18px 14px; }
    .hcm-system-map-label { max-width: 224px; font-size: 7px; letter-spacing: .11em; }
    .hcm-system-map-state { display: none; }
    .hcm-system-map-core { width: 114px; height: 114px; }
    .hcm-system-map-core i { font-size: 23px; }
    .hcm-system-map-core strong { font-size: 15px; }
    .hcm-system-map-node { grid-template-columns: 35px minmax(0, 1fr); width: calc(50% - 24px); min-height: 74px; gap: 7px; padding: 8px; }
    .hcm-system-map-node-icon { width: 35px; height: 35px; font-size: 17px; }
    .hcm-system-map-node-copy strong { font-size: 10px; }
    .hcm-system-map-node-copy small { font-size: 7px; }
    .hcm-system-map-node--people { top: 269px; left: 12px; }
    .hcm-system-map-node--process { top: 269px; right: 12px; }
    .hcm-system-map-node--data { bottom: 71px; left: 12px; }
    .hcm-system-map-node--systems { right: 12px; bottom: 71px; }
    .hcm-system-map-caption { right: 12px; bottom: 14px; left: 12px; font-size: 8px; }
}
@media (max-width: 991px) {
    .hcm-expertise-tabs { grid-template-rows: none; grid-auto-rows: minmax(86px, auto); }
    .hcm-expertise-tab { min-height: 86px; height: auto; }
    .hcm-expertise-panel { grid-template-rows: 210px minmax(0, 1fr) auto; height: 530px; min-height: 530px; }
}
@media (max-width: 767px) {
    .hcm-expertise-tabs { grid-template-rows: none; grid-auto-rows: auto; }
    .hcm-expertise-tab { min-height: 72px; }
    .hcm-expertise-panel { display: flex; height: auto; min-height: 0; flex-direction: column; justify-content: space-between; }
    .hcm-expertise-panel-copy { min-height: 0; }
    .hcm-expertise-panel h3 { min-height: 0; font-size: 28px; }
    .hcm-expertise-panel p { min-height: 0; }
    .hcm-expertise-checklist { align-self: stretch; margin: 23px 0 17px; }
    .hcm-expertise-checklist li { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) { .hcm-page *, .hcm-page *::before, .hcm-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

body.page-curriculo .header-area,
body.page-curriculo .header-area.header-sticky {
    background: linear-gradient(135deg, #0b442d 0%, #1a5538 100%);
    box-shadow: 0 10px 28px rgba(11, 68, 45, .22);
}
body.page-curriculo .header-area .container,
body.page-curriculo .header-area.header-sticky .container {
    background: transparent;
}
body.page-curriculo .header-area .main-menu ul > li > a,
body.page-curriculo .header-area.header-sticky .main-menu ul > li > a,
body.page-curriculo .header-area.header-sticky #hamburger {
    color: #fff;
}
.cv-hero {
    position: relative;
    overflow: hidden;
    padding: 128px 0 92px;
    background:
        radial-gradient(circle at 88% 12%, rgba(103, 165, 122, .38) 0%, rgba(11, 68, 45, 0) 42%),
        linear-gradient(135deg, #0b442d 0%, #164f34 48%, #255d3b 100%);
    color: #fff;
}
.cv-hero .container,
.cv-page .container { max-width: 1280px; }
.cv-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #e7f4ea;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.cv-hero h1 {
    max-width: 920px;
    margin: 16px 0 12px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(32px, 4.4vw, 50px);
    font-weight: 650;
    line-height: 1.12;
    letter-spacing: -.045em;
}
.cv-hero h1 strong { color: #f4c896; }
.cv-hero p { max-width: 720px; margin: 0; color: rgba(239, 248, 241, .88); font-size: 17px; line-height: 1.7; }
.cv-hero-access { margin-top: 18px; }
.cv-hero-access a { color: #f4c896; font-weight: 700; }
.cv-cadastro-hero { padding-bottom: 112px; }
.cv-cadastro-hero-grid { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(330px, .66fr); align-items: center; gap: 52px; }
.cv-cadastro-copy { max-width: 760px; }
.cv-cadastro-copy .cv-hero-lead { max-width: 690px; }
.cv-cadastro-flow { display: flex; flex-wrap: wrap; gap: 9px; margin: 24px 0 0; padding: 0; list-style: none; }
.cv-cadastro-flow li {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border: 1px solid rgba(234, 247, 237, .18);
    border-radius: 999px;
    background: rgba(7, 47, 29, .2);
    color: #eaf4ed;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 700;
}
.cv-cadastro-flow i { color: #f4c896; font-size: 13px; }
.cv-hero-access-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 27px 28px 24px;
    border: 1px solid rgba(237, 248, 240, .26);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .13), rgba(6, 48, 28, .2));
    box-shadow: 0 18px 34px rgba(7, 45, 27, .18);
    backdrop-filter: blur(12px);
}
.cv-hero-access-card::after {
    position: absolute;
    right: -54px;
    bottom: -76px;
    width: 176px;
    height: 176px;
    border: 1px solid rgba(244, 200, 150, .22);
    border-radius: 50%;
    content: "";
}
.cv-hero-access-card > * { position: relative; z-index: 1; }
.cv-hero-access-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #f4c896;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.cv-hero-access-eyebrow i { font-size: 14px; }
.cv-hero-access-card h2 {
    margin: 12px 0 10px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 650;
    line-height: 1.22;
    letter-spacing: -.035em;
}
.cv-hero-access-card p { margin: 0; color: rgba(237, 247, 239, .86); font-size: 13px; line-height: 1.65; }
.cv-hero-access-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 45px;
    margin-top: 21px;
    padding: 11px 14px;
    border: 1px solid #f4c896;
    border-radius: 11px;
    background: #f4c896;
    box-shadow: 0 9px 18px rgba(6, 43, 25, .2);
    color: #173927;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cv-hero-access-button:hover { background: #ffe0b7; border-color: #ffe0b7; box-shadow: 0 13px 22px rgba(6, 43, 25, .28); color: #173927; text-decoration: none; transform: translateY(-2px); }
.cv-hero-access-button i { font-size: 15px; transition: transform .2s ease; }
.cv-hero-access-button:hover i { transform: translateX(3px); }
.cv-hero-access-tip { display: flex; align-items: flex-start; gap: 7px; margin-top: 13px; color: #d9ebde; font-size: 11px; line-height: 1.45; }
.cv-hero-access-tip i { margin-top: 1px; color: #f4c896; font-size: 13px; }
.cv-hero-access-actions { display: flex; align-items: center; gap: 14px; }
.cv-hero-access-actions .cv-hero-access-button { flex: 1; }
.cv-hero-access-logout { margin-top: 0; color: #f4c896; font-family: "Poppins", sans-serif; font-size: 11px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.cv-hero-access-logout:hover { color: #ffe0b7; text-decoration: underline; }
.cv-page.cv-cadastro-page { margin-top: -44px; }
body.page-curriculo { background: #f7fbf8; }
.cv-page {
    position: relative;
    z-index: 2;
    padding: 0 0 92px;
    margin-top: -64px;
    background: transparent;
}
.cv-shell { display: grid; gap: 18px; }
.cv-job-banner {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 22px;
    border: 1px solid #d7eadb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(23, 57, 39, .08);
}
.cv-job-banner span { padding: 6px 10px; border-radius: 999px; background: #255d3b; color: #fff; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cv-job-banner strong { display: block; color: #173927; font-size: 18px; }
.cv-job-banner small { color: #65766b; }
.cv-job-banner a { margin-left: auto; color: #c96525; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 800; }
.cv-form, .cv-success {
    padding: 28px 42px 40px;
    border: 1px solid #dfe9e2;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 22px 48px rgba(23, 57, 39, .12);
}
.cv-stepper {
    margin: 0 0 28px;
    padding: 0 0 22px;
    border-bottom: 1px solid #e6eee8;
}
.cv-progress-meta { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.cv-progress-meta span { color: #5d7163; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.cv-progress-meta strong { color: #173927; font-size: 15px; }
.cv-steps {
    display: flex;
    margin: 0 0 16px;
    padding: 0;
    list-style: none;
}
.cv-steps li {
    position: relative;
    flex: 1;
    min-width: 0;
}
.cv-steps li:not(:last-child)::after {
    position: absolute;
    top: 17px;
    left: calc(50% + 22px);
    right: calc(-50% + 22px);
    height: 2px;
    background: #d7e3db;
    content: "";
}
.cv-steps li.is-done:not(:last-child)::after { background: #255d3b; }
.cv-steps button {
    display: flex;
    position: relative;
    z-index: 1;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #7a8a7e;
    cursor: pointer;
    text-align: center;
}
.cv-steps button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 2px solid #d3e1d7;
    border-radius: 50%;
    background: #fff;
    color: #5d7163;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 800;
}
.cv-steps button em {
    overflow: hidden;
    max-width: 100%;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cv-steps li.is-done button { color: #173927; }
.cv-steps li.is-done button span {
    border-color: #255d3b;
    background: #255d3b;
    color: #fff;
    font-size: 0;
}
.cv-steps li.is-done button span::before {
    font-size: 15px;
    font-weight: 800;
    content: "✓";
}
.cv-steps li.is-active button { color: #173927; cursor: default; }
.cv-steps li.is-active button span {
    border-color: #255d3b;
    background: #255d3b;
    color: #fff;
    box-shadow: 0 0 0 5px rgba(37, 93, 59, .14);
}
.cv-steps li.is-active button em { font-weight: 800; }
.cv-steps li:not(.is-done):not(.is-active) button { cursor: default; }
.cv-steps li.is-done button:hover span { background: #1d4c30; }
.cv-progress-track { height: 4px; overflow: hidden; border-radius: 999px; background: #e6efe8; }
.cv-progress-track span { display: block; width: 25%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #255d3b, #67a57a); transition: width .28s ease; }
.cv-panel[hidden], .cv-form[hidden], .cv-success[hidden], .cv-stepper[hidden], .cv-field[hidden], .cv-empty[hidden], .cv-access[hidden], [data-cv-show-when][hidden] { display: none !important; }
.cv-form h2, .cv-success h2 { margin: 0 0 20px; color: #173927; font-family: "Poppins", sans-serif; font-size: 30px; }
.cv-form p, .cv-success p { margin: 0 0 24px; color: #65766b; }
.cv-form h2 + p, .cv-success h2 + p { margin-top: -8px; }
.cv-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 24px; }
.cv-field, .cv-card label { display: grid; gap: 7px; color: #2d4a38; font-size: 13px; font-weight: 700; }
.cv-field-full { grid-column: 1 / -1; }
.cv-field input, .cv-field select, .cv-field textarea, .cv-card input, .cv-card select, .cv-card textarea { width: 100%; padding: 13px 15px; border: 1px solid #d5e3d9; border-radius: 12px; background: #fbfefc; color: #23402f; }
.cv-field input::placeholder,
.cv-field textarea::placeholder,
.cv-card input::placeholder,
.cv-card textarea::placeholder {
    color: #9aa99f;
    opacity: 1;
}
.cv-field input:focus, .cv-field select:focus, .cv-field textarea:focus, .cv-card input:focus, .cv-card select:focus, .cv-card textarea:focus { border-color: #67a57a; outline: 3px solid rgba(47, 128, 84, .16); }
.cv-form select,
.cv-card select {
    -webkit-appearance: none;
    appearance: none;
    min-height: 48px;
    padding-right: 42px;
    background-color: #fbfefc;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2323402f' d='M1.41.59 6 5.17 10.59.59 12 2 6 8 0 2z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 12px 8px;
    cursor: pointer;
    font-family: inherit;
    font-size: 15px;
    font-weight: 500;
}
.cv-form select:disabled,
.cv-card select:disabled {
    cursor: not-allowed;
    opacity: .6;
}
.cv-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.cv-extract { display: grid; gap: 14px; margin: 0 0 24px; padding: 22px; border: 1px solid #d7eadc; border-radius: 18px; background: #f4faf6; }
.cv-form > .cv-extract { margin-bottom: 28px; }
.cv-extract-copy strong { display: block; margin: 0 0 6px; color: #173927; font-family: "Poppins", sans-serif; font-size: 18px; }
.cv-extract-copy p { margin: 0; color: #4f6457; }
.cv-extract .cv-upload { margin: 0; }
.cv-extract .theme-btn { justify-self: start; }
.cv-extract-status { margin: 0; min-height: 1.2em; color: #255d3b; font-size: 14px; font-weight: 600; }
.cv-extract-status.is-error { color: #b42318; }
.cv-extract.is-loading { opacity: .72; pointer-events: none; }
.cv-extract-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(16, 36, 24, .58);
}
.cv-extract-modal[hidden] { display: none; }
.cv-extract-modal-card {
    width: min(440px, 100%);
    padding: 28px 24px 22px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 24px 60px rgba(23, 57, 39, .22);
    text-align: center;
}
.cv-extract-modal-icon {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin: 0 auto 14px;
    padding: 10px;
    border-radius: 18px;
    background: #173927;
    overflow: hidden;
}
.cv-extract-modal-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    mix-blend-mode: screen;
}
.cv-extract-modal-card h3 { margin: 0 0 8px; color: #173927; font-family: "Poppins", sans-serif; font-size: 20px; }
.cv-extract-modal-card p { margin: 0 0 18px; color: #4f6457; font-size: 14px; line-height: 1.5; }
.cv-extract-progress {
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: #e6efe8;
}
.cv-extract-progress span {
    display: block;
    height: 100%;
    width: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, #2f8054, #67a57a);
    transition: width .28s ease;
}
.cv-extract-modal-card strong { display: block; margin: 8px 0 16px; color: #255d3b; font-size: 15px; }
.cv-extract-phases { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; text-align: left; }
.cv-extract-phases li {
    position: relative;
    padding-left: 22px;
    color: #8a9b90;
    font-size: 13px;
    font-weight: 600;
}
.cv-extract-phases li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #d5e3d9;
}
.cv-extract-phases li.is-active { color: #255d3b; }
.cv-extract-phases li.is-active::before { background: #2f8054; }
.cv-extract-phases li.is-done { color: #438058; }
.cv-extract-phases li.is-done::before { background: #67a57a; }
.cv-extract-modal-card .theme-btn { margin: 16px auto 0; }
.cv-extract-modal.is-error .cv-extract-modal-icon { background: #173927; }
.cv-form textarea[name="resumo"],
.cv-form textarea[data-field="descricao"] {
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}
.cv-preview-timeline p,
.cv-preview-section p,
.cv-preview section p {
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}
.cv-cargos-list { display: grid; gap: 10px; }
.cv-card-cargo { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; margin: 0; padding: 8px 10px; }
.cv-card-cargo input { margin: 0; }
.cv-card-cargo:only-child .cv-remove { visibility: hidden; pointer-events: none; }
.cv-cargos .cv-add { justify-self: start; padding: 4px 0; }
.cv-repeat { margin: 8px 0 28px; }
.cv-repeat-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.cv-repeat-head h3 { margin: 0 0 4px; color: #285239; font-size: 18px; }
.cv-repeat-head small { display: block; color: #65766b; font-size: 13px; font-weight: 500; }
.cv-add, .cv-back, .cv-quiet { border: 0; background: transparent; color: #c96525; cursor: pointer; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 800; }
.cv-card { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 14px; padding: 18px; border: 1px solid #e4eee6; border-radius: 16px; background: #f8fbf8; }
.cv-card-head { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; margin-bottom: 4px; }
.cv-card-head strong { color: #173927; font-family: "Poppins", sans-serif; font-size: 14px; }
.cv-card--compact { grid-template-columns: 1fr 1fr auto; align-items: end; }
.cv-card--compact .cv-remove { position: static; margin-bottom: 10px; }
.cv-remove { position: static; border: 0; background: transparent; color: #7a8a7e; cursor: pointer; font-size: 22px; line-height: 1; }
.cv-upload { display: grid; gap: 8px; padding: 28px; border: 1px dashed #c9ddd0; border-radius: 16px; background: #f6faf7; text-align: center; cursor: pointer; }
.cv-upload input { display: none; }
.cv-upload span { color: #173927; font-weight: 700; }
.cv-check { display: flex; gap: 10px; align-items: flex-start; margin-top: 18px; color: #4f6457; }
.cv-check input { margin-top: 4px; }
.cv-form label.cv-check {
    display: inline-flex;
    align-items: flex-start;
    justify-content: flex-start;
    width: fit-content;
    max-width: 100%;
    gap: 10px;
}
.cv-form label.cv-check input {
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    flex: 0 0 18px;
    margin: 3px 0 0;
    padding: 0;
    border-radius: 5px;
    accent-color: #255d3b;
    cursor: pointer;
}
.cv-form label.cv-check span { flex: 0 1 auto; line-height: 1.55; }
.cv-card label.cv-check {
    display: inline-flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-self: start;
    gap: 10px;
    margin: 2px 0 4px;
    color: #2d4a38;
    cursor: pointer;
}
.cv-card label.cv-check input {
    width: 18px;
    height: 18px;
    min-width: 18px;
    flex: 0 0 18px;
    margin: 0;
    padding: 0;
    border-radius: 5px;
    accent-color: #255d3b;
    cursor: pointer;
}
.cv-card label.cv-check span { line-height: 1.35; }
.cv-check-inline { grid-column: 1 / -1; margin: 0; }
.cv-hint { margin-top: 16px; font-size: 13px; }
.cv-actions { display: flex; gap: 12px; justify-content: flex-end; margin-top: 32px; }
.cv-status { min-height: 24px; margin: 12px 0 0; color: #255d3b; }
.cv-status.is-error { color: #b42318; }
.cv-status a { color: #c96525; font-weight: 800; }
.cv-empty {
    display: grid;
    justify-items: start;
    gap: 8px;
    margin-bottom: 14px;
    padding: 28px 24px;
    border: 1px dashed #c9ddd0;
    border-radius: 18px;
    background: #f6faf7;
}
.cv-empty i { color: #255d3b; font-size: 28px; }
.cv-empty strong { color: #173927; font-family: "Poppins", sans-serif; }
.cv-empty p { margin: 0; color: #65766b; }
.cv-empty--quiet { padding: 16px 18px; background: #fbfefc; }
.cv-add-secondary { background: #255d3b; }
.cv-timeline { position: relative; margin: 0 0 8px; padding-left: 22px; }
.cv-timeline::before {
    position: absolute;
    top: 12px;
    bottom: 12px;
    left: 5px;
    width: 2px;
    background: #d7eadb;
    content: "";
}
.cv-timeline .cv-card { position: relative; }
.cv-timeline .cv-card::before {
    position: absolute;
    top: 22px;
    left: -22px;
    width: 12px;
    height: 12px;
    border: 2px solid #255d3b;
    border-radius: 50%;
    background: #fff;
    content: "";
}
.cv-access {
    margin: 28px 0 8px;
    padding: 22px;
    border: 1px solid #e4eee6;
    border-radius: 16px;
    background: #f8fbf8;
}
.cv-access h3 { margin: 0 0 6px; color: #173927; font-size: 18px; }
.cv-access p { margin: 0 0 16px; }
.cv-preview {
    padding: 18px 18px 8px;
    border: 1px solid #e6eee8;
    border-radius: 16px;
    background: #fbfefc;
}
.cv-shell > .cv-preview, .cv-form.cv-form--access {
    padding: 32px 38px;
    border: 1px solid #dfe9e2;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 22px 48px rgba(23, 57, 39, .12);
}
.cv-preview-actions { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; }
.cv-profile-actions {
    position: relative;
    z-index: 3;
    width: fit-content;
    max-width: 100%;
    gap: 10px;
    margin: 2px 0 22px;
    padding: 9px;
    border: 1px solid rgba(230, 244, 233, .25);
    border-radius: 18px;
    background: rgba(12, 62, 39, .42);
    box-shadow: 0 14px 30px rgba(8, 45, 27, .16);
    backdrop-filter: blur(12px);
}
.cv-profile-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    gap: 9px;
    padding: 11px 15px;
    border: 1px solid transparent;
    border-radius: 11px;
    color: #edf6ef;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}
.cv-profile-action:hover {
    color: #fff;
    text-decoration: none;
    transform: translateY(-2px);
}
.cv-profile-action:focus-visible {
    outline: 3px solid rgba(244, 200, 150, .8);
    outline-offset: 3px;
}
.cv-profile-action > i { font-size: 17px; }
.cv-profile-action > i:last-child { margin-left: 4px; font-size: 14px; transition: transform .2s ease; }
.cv-profile-action--primary {
    border-color: #f4c896;
    background: #f4c896;
    box-shadow: 0 8px 18px rgba(8, 45, 27, .18);
    color: #173927;
}
.cv-profile-action--primary:hover {
    background: #ffe0b7;
    border-color: #ffe0b7;
    color: #173927;
    box-shadow: 0 12px 22px rgba(8, 45, 27, .26);
}
.cv-profile-action--primary:hover > i:last-child { transform: translateX(3px); }
.cv-profile-action--secondary { border-color: rgba(239, 248, 241, .46); background: rgba(255, 255, 255, .08); }
.cv-profile-action--secondary:hover { border-color: rgba(239, 248, 241, .78); background: rgba(255, 255, 255, .16); }
.cv-profile-action--quiet { color: #f4c896; }
.cv-profile-action--quiet:hover { background: rgba(255, 255, 255, .1); color: #ffe0b7; }
.cv-preview-head { margin-bottom: 22px; padding-bottom: 18px; border-bottom: 1px solid #e6eee8; }
.cv-preview-head h2 { margin: 0 0 6px; color: #173927; font-family: "Poppins", sans-serif; font-size: 28px; }
.cv-preview-role { margin: 0 0 6px; color: #255d3b; font-weight: 700; }
.cv-preview-meta, .cv-preview-empty { color: #65766b; }
.cv-preview section { margin-top: 22px; }
.cv-preview h3 { margin: 0 0 10px; color: #173927; font-size: 16px; letter-spacing: .04em; text-transform: uppercase; }
.cv-preview-dl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; margin: 0; }
.cv-preview-dl div { display: grid; gap: 2px; }
.cv-preview-dl dt { color: #7a8a7e; font-size: 12px; font-weight: 700; }
.cv-preview-dl dd { margin: 0; color: #23402f; }
.cv-preview-timeline, .cv-preview-list, .cv-preview-chips { margin: 0; padding: 0; list-style: none; }
.cv-preview-timeline li, .cv-preview-list li { margin: 0 0 14px; padding-left: 16px; border-left: 3px solid #67a57a; }
.cv-preview-timeline strong, .cv-preview-list strong { display: block; color: #173927; }
.cv-preview-timeline span, .cv-preview-list span { color: #65766b; font-size: 13px; }
.cv-preview-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cv-preview-chips li { padding: 6px 10px; border-radius: 999px; background: #eef7f0; color: #173927; font-size: 13px; font-weight: 700; }
.cv-preview-file { margin-top: 12px; color: #255d3b; font-weight: 700; }
.cv-preview-links { display: grid; gap: 4px; margin: 12px 0 0; }
.cv-preview-links a { color: #c96525; word-break: break-all; }
.cv-shell > .cv-preview.cv-profile {
    overflow: hidden;
    padding: 0;
    border-color: #dce8df;
    background: #fff;
    box-shadow: 0 24px 56px rgba(23, 57, 39, .12);
}
.cv-profile .cv-preview-head {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    margin: 0;
    padding: 38px 42px 34px;
    border: 0;
    background:
        radial-gradient(circle at 84% 14%, rgba(111, 180, 129, .48) 0%, rgba(54, 116, 72, 0) 33%),
        linear-gradient(135deg, #143c28 0%, #20563a 56%, #2d6845 100%);
}
.cv-profile .cv-preview-head::before,
.cv-profile .cv-preview-head::after {
    position: absolute;
    border: 1px solid rgba(244, 200, 150, .24);
    border-radius: 50%;
    content: "";
}
.cv-profile .cv-preview-head::before { top: -112px; right: -58px; width: 286px; height: 286px; }
.cv-profile .cv-preview-head::after { right: 118px; bottom: -116px; width: 218px; height: 218px; }
.cv-profile .cv-preview-head > * { position: relative; z-index: 1; }
.cv-profile-intro { display: flex; align-items: center; gap: 20px; }
.cv-preview-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    flex: 0 0 72px;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 22px;
    background: linear-gradient(135deg, #f9dab0, #f4c896);
    box-shadow: 0 12px 24px rgba(8, 45, 27, .2);
    color: #173927;
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.04em;
}
.cv-profile .cv-preview-kicker {
    display: block;
    margin-bottom: 7px;
    color: #f4c896;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.cv-profile .cv-preview-head h2 {
    margin: 0;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(28px, 3.1vw, 40px);
    font-weight: 650;
    line-height: 1.1;
    letter-spacing: -.045em;
}
.cv-profile .cv-preview-role { margin: 8px 0 0; color: #d9eedf; font-size: 15px; font-weight: 700; }
.cv-preview-contact { display: flex; flex-wrap: wrap; gap: 9px; margin: 0; }
.cv-preview-contact span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid rgba(234, 247, 237, .18);
    border-radius: 999px;
    background: rgba(8, 45, 27, .22);
    color: #e8f4eb;
    font-size: 12px;
    line-height: 1.2;
}
.cv-preview-contact i { color: #f4c896; font-size: 14px; }
.cv-preview-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.38fr) minmax(275px, .78fr);
    gap: 24px;
    padding: 30px 34px 38px;
    background: linear-gradient(135deg, #fff 0%, #fbfdfb 58%, #f5faf6 100%);
}
.cv-preview-main, .cv-preview-side { display: grid; align-content: start; gap: 18px; }
.cv-profile .cv-preview-section {
    margin: 0;
    padding: 23px;
    border: 1px solid #e1ebe3;
    border-radius: 18px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 10px 22px rgba(23, 57, 39, .035);
}
.cv-profile .cv-preview-section--summary {
    border-color: #f1ddc1;
    background: linear-gradient(135deg, #fffaf4, #fdf7ee);
}
.cv-preview-section-heading { display: flex; align-items: center; gap: 11px; margin-bottom: 17px; }
.cv-preview-section-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: 11px;
    background: #eaf4ec;
    color: #2d6845;
    font-size: 17px;
}
.cv-preview-section--summary .cv-preview-section-icon { background: #fae9d4; color: #bd692d; }
.cv-profile .cv-preview-section h3 {
    margin: 0;
    color: #1e422c;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.025em;
    text-transform: none;
}
.cv-profile .cv-preview-section > p { margin: 0; color: #5e7264; font-size: 14px; line-height: 1.75; }
.cv-profile .cv-preview-dl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.cv-profile .cv-preview-dl div {
    gap: 4px;
    padding: 11px 12px;
    border: 1px solid #e5eee7;
    border-radius: 11px;
    background: #fff;
}
.cv-profile .cv-preview-dl dt { color: #728378; font-family: "Poppins", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.cv-profile .cv-preview-dl dd { color: #244331; font-size: 14px; font-weight: 600; line-height: 1.45; }
.cv-preview-side .cv-preview-dl { grid-template-columns: 1fr; }
.cv-profile .cv-preview-timeline { display: grid; gap: 0; margin: 0; padding: 3px 0 0 4px; }
.cv-profile .cv-preview-timeline li {
    position: relative;
    margin: 0;
    padding: 0 0 21px 28px;
    border: 0;
}
.cv-profile .cv-preview-timeline li:last-child { padding-bottom: 0; }
.cv-profile .cv-preview-timeline li::before {
    position: absolute;
    top: 4px;
    left: 0;
    width: 12px;
    height: 12px;
    border: 3px solid #eff6f0;
    border-radius: 50%;
    background: #438058;
    box-shadow: 0 0 0 1px #79a98a;
    content: "";
}
.cv-profile .cv-preview-timeline li:not(:last-child)::after {
    position: absolute;
    top: 19px;
    bottom: 0;
    left: 5px;
    width: 2px;
    background: linear-gradient(#8bb69a, #dceade);
    content: "";
}
.cv-profile .cv-preview-timeline strong, .cv-profile .cv-preview-list strong { color: #1e422c; font-family: "Poppins", sans-serif; font-size: 14px; font-weight: 700; line-height: 1.4; }
.cv-profile .cv-preview-timeline span, .cv-profile .cv-preview-list span { display: block; margin-top: 4px; color: #738478; font-size: 12px; line-height: 1.5; }
.cv-profile .cv-preview-timeline p { margin: 9px 0 0; color: #536a5b; font-size: 13px; line-height: 1.65; text-align: justify; text-justify: inter-word; hyphens: auto; }
.cv-profile .cv-preview-list { display: grid; gap: 9px; }
.cv-profile .cv-preview-list li {
    margin: 0;
    padding: 13px 14px;
    border: 1px solid #e3ece5;
    border-left: 0;
    border-radius: 12px;
    background: #fbfdfb;
}
.cv-profile .cv-preview-chips { gap: 8px; }
.cv-profile .cv-preview-chips li { padding: 7px 10px; border: 1px solid #dcebdd; background: #eef7f0; color: #285239; font-size: 12px; }
.cv-profile .cv-preview-empty { margin: 0; padding: 13px 14px; border: 1px dashed #cbded0; border-radius: 11px; background: #fbfefc; color: #738478; font-size: 13px; }
.cv-profile .cv-preview-links { gap: 8px; margin: 15px 0 0; }
.cv-profile .cv-preview-links a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border-radius: 10px;
    background: #f4f9f5;
    color: #2d6845;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}
.cv-profile .cv-preview-links a:hover { background: #e7f2e9; color: #1e4f31; }
.cv-profile .cv-preview-file {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 15px 0 0;
    padding: 10px 11px;
    border-radius: 10px;
    background: #f9f0e6;
    color: #9c572a;
    font-size: 12px;
    font-weight: 700;
}
.cv-profile .cv-preview-file i { font-size: 16px; }
.cv-login-hero { padding-bottom: 154px; }
.cv-login-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); align-items: end; gap: 42px; }
.cv-login-hero-copy { max-width: 670px; }
.cv-login-hero-points {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.cv-login-hero-points li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 13px;
    border: 1px solid rgba(236, 248, 239, .17);
    border-radius: 12px;
    background: rgba(6, 48, 28, .2);
    color: #e8f4eb;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 700;
}
.cv-login-hero-points i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: rgba(244, 200, 150, .16);
    color: #f4c896;
    font-size: 15px;
}
.cv-login-page { margin-top: -116px; }
.cv-login-card {
    display: grid;
    grid-template-columns: minmax(310px, .9fr) minmax(0, 1fr);
    overflow: hidden;
    width: min(100%, 1020px);
    margin: 0 auto;
    border: 1px solid #d5e4d8;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 64px rgba(18, 64, 39, .16), 0 2px 0 rgba(255, 255, 255, .7) inset;
    animation: cv-login-rise .45s ease both;
}
.cv-login-aside {
    position: relative;
    overflow: hidden;
    display: flex;
    min-height: 520px;
    flex-direction: column;
    justify-content: space-between;
    padding: 44px 40px 32px;
    background:
        radial-gradient(circle at 88% 8%, rgba(168, 214, 168, .28) 0%, rgba(47, 111, 67, 0) 32%),
        linear-gradient(160deg, #123826 0%, #1d5234 54%, #2f6d45 100%);
    color: #fff;
}
.cv-login-aside::before,
.cv-login-aside::after {
    position: absolute;
    border: 1px solid rgba(244, 200, 150, .22);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}
.cv-login-aside::before { top: -96px; right: -104px; width: 260px; height: 260px; }
.cv-login-aside::after { bottom: -126px; left: -88px; width: 248px; height: 248px; }
.cv-login-aside-content, .cv-login-aside-footer { position: relative; z-index: 1; }
.cv-login-aside-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 28px;
    border: 1px solid rgba(244, 200, 150, .42);
    border-radius: 16px;
    background: rgba(255, 255, 255, .08);
    box-shadow: 0 10px 22px rgba(8, 32, 18, .18);
    color: #f4c896;
    font-size: 24px;
}
.cv-login-aside-kicker, .cv-login-form-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #f4c896;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.cv-login-aside-kicker::before, .cv-login-form-kicker::before {
    width: 22px;
    height: 2px;
    background: currentColor;
    content: "";
}
.cv-login-aside h2 {
    margin: 12px 0 14px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 650;
    line-height: 1.14;
    letter-spacing: -.045em;
}
.cv-login-aside p { margin: 0; max-width: 34ch; color: rgba(238, 248, 240, .86); font-size: 15px; line-height: 1.7; }
.cv-login-aside ul { display: grid; gap: 10px; margin: 28px 0 0; padding: 0; list-style: none; }
.cv-login-aside li {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 11px 13px;
    border: 1px solid rgba(232, 247, 233, .14);
    border-radius: 14px;
    background: rgba(255, 255, 255, .06);
    color: #eef7f0;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}
.cv-login-aside li i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    margin-top: 0;
    border-radius: 50%;
    background: rgba(244, 200, 150, .18);
    color: #f4c896;
    font-size: 12px;
}
.cv-login-aside .cv-login-aside-footer {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    gap: 8px;
    margin-top: 28px;
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(7, 28, 16, .22);
    color: #dceee1;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 700;
}
.cv-login-aside-footer i { color: #f4c896; font-size: 14px; }
.cv-form.cv-login-form {
    display: flex;
    min-height: 520px;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    padding: 48px 52px;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, #fbfefb 0%, #fff 42%) !important;
    box-shadow: none !important;
}
.cv-login-form-icon {
    display: none;
}
.cv-login-form--portal .cv-login-form-icon {
    display: none;
}
.cv-login-form-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    margin: 0 auto 18px;
    padding: 0;
    border: 0;
    background: transparent;
}
.cv-login-form-logo img {
    display: block;
    width: 64px;
    height: 64px;
    object-fit: contain;
}
.cv-login-form-logo::after {
    margin-top: 6px;
    color: #2a4a36;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .18em;
    content: "GESTH";
}
.cv-login-form .cv-login-form-kicker { justify-content: flex-start; width: auto; color: #5d8f6a; }
.cv-login-form--portal .cv-login-form-kicker { justify-content: center; width: 100%; color: #c87938; }
.cv-login-form h2 { margin: 10px 0 0; color: #163d28; font-size: 32px; letter-spacing: -.045em; text-align: left; }
.cv-login-form--portal h2 { text-align: center; }
.cv-login-form .cv-login-form-copy { margin: 0 0 28px; color: #718176; font-size: 14px; line-height: 1.65; }
.cv-login-form .cv-grid { grid-template-columns: 1fr; gap: 17px; }
.cv-login-form .cv-field { gap: 8px; color: #2d4a38; }
.cv-login-field-label { display: inline-flex; align-items: center; gap: 7px; }
.cv-login-field-label i { color: #4f885f; font-size: 15px; }
.cv-login-form .cv-field input {
    min-height: 53px;
    padding: 14px 16px;
    border-color: #d6e4d9;
    border-radius: 13px;
    background: #fbfdfb;
    font-size: 15px;
}
.cv-login-form .cv-field input::placeholder { color: #a5b4a9; }
.cv-login-form .cv-field input:focus { border-color: #4f8b61; background: #fff; box-shadow: 0 0 0 4px rgba(79, 139, 97, .13); }
.cv-login-form .cv-status {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 20px;
    padding: 11px 13px;
    border: 1px solid #f1c9c4;
    border-radius: 11px;
    background: #fff5f3;
    color: #a4382f;
    font-size: 13px;
    line-height: 1.45;
}
.cv-login-form .cv-status i { margin-top: 2px; font-size: 16px; }
.cv-login-form .cv-status.is-ok {
    border-color: #cfe6d4;
    background: #f3faf5;
    color: #255d3b;
}
.cv-login-forgot-wrap { margin: 10px 0 0; text-align: right; }
.cv-login-forgot { color: #c56c31; font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 800; text-decoration: none; }
.cv-login-forgot:hover { color: #a95625; text-decoration: underline; }
.cv-login-actions { margin-top: 28px; }
.cv-login-form--portal { align-items: center; justify-content: flex-start; padding-top: 34px !important; text-align: center; }
.cv-login-form--portal .cv-login-actions { width: min(100%, 320px); margin-top: 26px; }
.cv-login-form--portal .cv-login-register { width: min(100%, 320px); padding-top: 18px; border-top: 1px solid #e4eee6; }
.cv-login-form .theme-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 54px;
    gap: 11px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #1d4d30, #2f6a42);
    box-shadow: 0 14px 26px rgba(37, 93, 59, .24);
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .01em;
    text-decoration: none;
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cv-login-form .theme-btn:hover { background: linear-gradient(135deg, #1d4d30, #2f6a42); box-shadow: 0 16px 28px rgba(37, 93, 59, .28); color: #fff; transform: translateY(-2px); }
.cv-login-form .theme-btn i { font-size: 16px; transition: transform .2s ease; }
.cv-login-form .theme-btn:hover i { transform: translateX(3px); }
.cv-login-register { margin: 22px 0 0 !important; color: #7a8b7f !important; font-size: 12px !important; line-height: 1.5 !important; text-align: center; }
.cv-login-register a { color: #c56c31; font-family: "Poppins", sans-serif; font-weight: 800; text-decoration: none; }
.cv-login-register a:hover { color: #a95625; text-decoration: underline; }
.cv-login-register i { margin-left: 3px; font-size: 13px; }
.cv-cliente-atalhos { display: grid; gap: 12px; margin-top: 8px; }
.cv-cliente-painel .cv-hero-access-button { box-shadow: none; }
.cv-cliente-painel .cv-cliente-atalho-secundario {
    background: #fff;
    color: #176343;
    border-color: #176343;
}
.cv-cliente-painel .cv-cliente-atalho-secundario:hover {
    background: #176343;
    border-color: #176343;
    color: #fff;
}
@keyframes cv-login-rise {
    from { opacity: 0; transform: translateY(16px); }
    to { opacity: 1; transform: translateY(0); }
}
.cv-success { text-align: center; }
.cv-success i { color: #2f8054; font-size: 54px; }
.cv-success-actions { display: flex; gap: 18px; justify-content: center; align-items: center; flex-wrap: wrap; }
@media (max-width: 991px) {
    .cv-hero { padding: 118px 0 78px; }
    .cv-page { margin-top: -48px; }
    .cv-form, .cv-success { padding: 24px 24px 32px; }
    .cv-preview-layout { grid-template-columns: 1fr; }
    .cv-preview-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cv-preview-side .cv-preview-section:last-child { grid-column: 1 / -1; }
    .cv-login-hero { padding-bottom: 136px; }
    .cv-login-hero-grid { grid-template-columns: 1fr; gap: 24px; }
    .cv-login-hero-points { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cv-login-hero-points li { align-items: flex-start; }
    .cv-login-card { grid-template-columns: 1fr; max-width: 680px; }
    .cv-login-aside { display: none; }
    .cv-form.cv-login-form { min-height: 0; }
    .cv-cadastro-hero { padding-bottom: 96px; }
    .cv-cadastro-hero-grid { grid-template-columns: 1fr; gap: 28px; }
    .cv-hero-access-card { max-width: 680px; }
    .cv-page.cv-cadastro-page { margin-top: -34px; }
}
@media (max-width: 767px) {
    .cv-hero { padding: 108px 0 68px; }
    .cv-hero h1 { font-size: 30px; }
    .cv-grid, .cv-card, .cv-card--compact, .cv-job-banner, .cv-preview-dl { grid-template-columns: 1fr; display: grid; }
    .cv-repeat-head { flex-direction: column; }
    .cv-job-banner a { margin-left: 0; }
    .cv-form, .cv-success { padding: 20px 16px 28px; }
    .cv-progress-meta { flex-direction: column; }
    .cv-steps button em { font-size: 11px; }
    .cv-steps li:not(:last-child)::after { left: calc(50% + 18px); right: calc(-50% + 18px); }
    .cv-profile-actions { width: 100%; }
    .cv-profile-action { flex: 1 1 auto; }
    .cv-profile .cv-preview-head { padding: 30px 24px 28px; }
    .cv-preview-layout { padding: 20px; }
    .cv-preview-side { grid-template-columns: 1fr; }
    .cv-preview-side .cv-preview-section:last-child { grid-column: auto; }
    .cv-profile .cv-preview-dl { grid-template-columns: 1fr; }
    .cv-login-hero { padding: 98px 0 104px; }
    .cv-login-hero-points { display: none; }
    .cv-login-page { margin-top: -56px; }
    .cv-login-card { border-radius: 22px; }
    .cv-form.cv-login-form { padding: 32px 24px; }
    .cv-login-form h2 { font-size: 27px; }
    .cv-cadastro-hero { padding: 96px 0 78px; }
    .cv-cadastro-flow { gap: 7px; margin-top: 19px; }
    .cv-cadastro-flow li { font-size: 9px; }
    .cv-hero-access-card { padding: 22px 20px; border-radius: 17px; }
    .cv-hero-access-card h2 { font-size: 20px; }
    .cv-hero-access-actions { align-items: stretch; flex-direction: column; gap: 0; }
    .cv-hero-access-actions .cv-hero-access-button { flex: 0 0 auto; }
    .cv-hero-access-logout { align-self: center; margin-top: 14px; }
    .cv-page.cv-cadastro-page { margin-top: -28px; }
}
@media (max-width: 575px) {
    .cv-profile-actions { display: grid; grid-template-columns: 1fr; }
    .cv-profile-action { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .cv-login-card { animation: none; }
}
