*{
    padding: 0px;
    margin: 0px;
    text-decoration: none;
    list-style: none;
    box-sizing: border-box;
    font-family: "Source Sans 3", sans-serif;}
    :root {
    --color-green:#10750e;
    --color-black : #061b08;
    --color-green-opacity:#10750e;
    --color-grey : #494949;
    --c-p : 30px
}
html {
    width: 100%;
    height: 100% !important;
    overflow-x: hidden;
}
body{
width: 100%;
height: 100%;
}
a {
    color: var(--color-black);
}
/* start navbar */
nav {
    width: 100%;
    height: 80px;
    background-color: var(--color-black);
    border-bottom: 2px dotted var(--color-green);
    position: fixed;
    z-index: 2;
}
nav .logo {
    color: var(--color-green);
    height: 80px;
    line-height: 80px;
    padding: 10px 25px;
    font-weight: bold;
}
nav ul {
    float: right;
    margin-right: 20px;
}
nav ul li {
    display:  inline-block;
    line-height: 80px;
    margin: 0px 5px;
}
nav ul li a { 
    color: white;
    font-size: 18px;
    text-transform: capitalize;
    padding: 10px;
    border-radius: 10px 5px;
}
nav ul li a.active , li a:hover {
    color: var(--color-green);
    transition: 0.5s;
}
nav .checkbtn {

font-size: 30px;
color: var(--color-green);
float: right;
line-height: 80px;
margin-right: 20px;
cursor: pointer;
display: none;
}
nav #check {
display: none;
}
@media (max-width:952px){
    nav label.logo {
        height: 75px;
        padding-left: 50px;
    }
    nav ul li a {
        font-size: 10px;
    }
}
@media (max-width:852px){
nav .checkbtn {
display: block;
margin-top: 5px;
}
nav .checkbtn > img.menu {
    height: 65px;
    line-height: 80px;
    filter: opacity(0.8) drop-shadow(0 0 0 var(--color-green));
}
nav ul {
    position: fixed ;
    width: 100%;
    height: 100vh;
    background-color: var(--color-black);
    top: 80px;
    left: -100%;
    text-align: center;
    transition: all 0.5s ease;
}
nav ul li {
display: block;
margin: 50px 0px;
line-height: 30px;
}
nav ul li a {
    font-size: 20px;
    color: white;
}
nav ul li a:hover , nav a.active {
background: none;
color: var(--color-green-opacity);
}
#check:checked ~ ul {
    left: 0px;
}
} 
/* end navbar */
/* start section splach */
body .box-splach {
width: 100%;
position: relative;

}
body .box-splach img {

    height: 320px;
    margin-top: 80px;
    width: 100%;

}
body .box-splach .screen-up {
    position: absolute;
    width: 100%;
    height: 400px;
    left: 0px;
    right: 0px;
    top: 0px;
    background-color: #061b0857;
}
body .box-splach .textsplach  {
    position: absolute;
    left: 10px;
    top: 50%;
    color: white;
    font-size: 32px;
    font-weight: bold;
}
body .box-splach  .textsplach .text-small {
font-size: 16px;
text-transform: uppercase;
}
/* end section splach */

/* start media */
@media (min-width:950px){
   body nav ul li a {
        color: white;
    }
    body .box-splach > img {
        height: 450px;
    }
    body .box-splach .textsplach    {
        left: 60px;
    }
    body .box-splach .textsplach .text   {
        font-size: 40px;
    }
    body .box-splach .screen-up {
        height:100%;
    }


    body div.content-page-1 , body div.content-page-2 {
        margin: 60px 75px;
        
    }
    body div.content-page-2 {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
    }
    body div.content-page-2 .image-box {
        width: 50%;

    }
    body div.content-page-2 .image-box > img {
        width: 450px;
        height: 350px;
        margin-left: 30px;
    }
    
footer .box-info-footer{
display: flex;
justify-content: space-evenly;
align-items: center;
}
footer .box-info-footer .info-paragraph{
    width: 400px;
}
footer .copy-right {
    text-align: center;
}
body .card-group-pay {
    justify-content: center;
}
body .card-group-pay .card-pay{
    width: 400px;
}
body .card-group-pay .card-pay .title h3 {
    font-size: 24px !important;
}
body .card-group-pay .card-pay .price .total , body .card-group-pay .card-pay .price symbol {
    font-size: 56px !important;
}
body .card-group-pay .card-pay .info-price {
    font-size: 18px !important;
}
body .card-group-pay .card-pay .row .icon{
    font-size: 24px;
}
body .card-group-pay .card-pay .row .text{
    font-size: 18px;
}
body .box-info-price  {
    align-items: center;
    justify-content: center;
}
body .box-info-price .symbol{
font-size: 54px !important;
}
body .contact-message .containear-contect {
    width: 50% !important;
}
body .inverse {
    flex-direction: row !important;
}
body .m-r {
    margin-right: 15px !important;
}
body .row {
flex-direction: row !important;
align-items: flex-start !important;
}
body div.note-box {
    margin: 60px 75px !important;
}
body div.image-row{
    display: flex;
    flex-direction: row-reverse !important;
    justify-content: space-between !important;
    align-items: center !important;
    }

}
/* end media */

body .btn-section {
    display: flex;
    justify-content: center;
    margin: 30px auto;
    background-color: var(--color-green);
    width: fit-content;
    color: white;
    border-radius: 5px;

}
body .btn-section > span {
    margin-right: 5px;
}
button {
    margin-top: 5px;
    display: block;
    padding: 14px 21px;
    background-color: var(--color-green);
    border: none;
    font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif!important;
    font-weight: bold;
    font-size: 14px;
    color: white;
    cursor: pointer;   
     border-radius: 5px;

}
/*  start section content  */

body .content-page-1 ,body .content-page-2  {
    margin: 16px;
}

body .content-page-1 .text-content , body .content-page-2 .textbox {
line-height: 1.8em;
font-size: 18px;
text-align: justify;
padding: 0px 16px ;
} 
body .content-page-2 .image-box ,body .content-page-2 .image-box img {
    width: 320px;
}
body .textbox .title-textbox {
    font-size: 20px;
    color: var(--color-green);
    font-weight: bold;
    font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif;
}
body .bg-content {
    padding: 16px 10px;
    background-color: #f2f2f2;
    border-radius: 25px;
}
body .textbox >h2 
{
    font-size: 20px;
}
/*  end section content  */


/* start section pay */

body .card-group-pay {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;

}
body .card-group-pay .card-pay {
    margin: 30px;
padding: 10px;
background-color: #f2f2f2;
box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
border-bottom: 3px solid var(--color-green);
cursor: pointer;
transition: all 0.5s ease-in-out;

}
body .card-group-pay .card-pay:hover {
    position: relative;
    top: 10px;
}
body .card-group-pay .card-pay .title > h3 {
    font-size: 24px;
    font-weight: bold;
    color: var(--color-black);
    text-align: center;
}
body .card-group-pay .card-pay .price {
    margin-top: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
}
body .card-group-pay .card-pay .price .total {
    font-size: 48px;
    color: var(--color-black);
    font-weight: bold;
}
body .card-group-pay .card-pay .price .symbol {
    font-size: 32px;
    color: var(--color-green);
    font-weight: bold;
}
body .card-group-pay .card-pay .button-contact  {
display: flex;
align-items: center;
justify-content: center;
}
body .card-group-pay .card-pay .button-contact .btn-contact  {

    background-color: transparent;
    border-radius: 25px;
    border: 3px solid var(--color-green);
    color: var(--color-green);
    transition: all 0.5s;
}

body .card-group-pay .card-pay .button-contact .btn-contact:hover {
    border: 3px solid white;
    background-color: var(--color-green);
    color: white;
}
body .card-group-pay .card-pay .info-price {
    color: var(--color-grey);
    font-size: 16px;
    text-align: center;
    margin:16px 0px ;
}
body .card-group-pay .card-pay .column-property {
    margin: 16px 0px;
    display: flex;
    flex-direction: column;
}
body .card-group-pay .card-pay .column-property .row {
    display: flex;
}
body .card-group-pay .card-pay .column-property .row .icon {
    margin-right: 10px;
    color: var(--color-green);
}
body .card-group-pay .card-pay .column-property .row .text {
    color: var(--color-black);
    font-weight: 400;
}
/* end section pay */
/* start section info-price */

    body .box-info-price {
        display: flex;
    }
    body .box-info-price .symbol {
        font-size: 32px;
        color: var(--color-green);
        margin-right: 10px;
    }
    body .box-info-price .info {
        font-size: 16px;
        color: var(--color-grey);
    }

/* end section info-price */


/* start section contact float */

body .contact-message {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    z-index: 2;
    background-color: #0000005b;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.5s;
}
body .contact-message .containear-contect {
    padding: 10px 20px;
    background-color: white;
    border-radius: 10px;
    width: 100%;
    margin: 10px 20px;
}
body .contact-message .containear-contect form {
display: flex;
flex-direction: column;
}
body .contact-message .containear-contect form label {
text-align: center;
font-weight: bold;
font-size: 16px;
margin-bottom: 10px;
}
body .contact-message .containear-contect form input , textarea {
    margin-bottom: 10px;
    padding: 10px;
    border: none;
    background-color: #EBF1F1;
}
body .contact-message .containear-contect  .fa-circle-xmark {
    font-size: 24px;
    color: var(--color-green);
    cursor: pointer;
}
body .ds {
display: none;
}
/* end section contact float */
body .coment {
    font-weight: bold;
    color: var(--color-green);
    font-size: 18
    px;
}

body .row {
    display: flex;
    flex-direction: row;
}
body .row .icon-title {
    margin-right: 5px;
    font-size: 24px;
    color: var(--color-green);
}

/* start contact float*/
body .contact-me {
    position: fixed;
    bottom: 20px;
    right: 20px;
    transition: all 0.5s ease;
    animation: grow 2s  ease;
}
body .contact-me .contact-text {
    padding: 10px 20px;
    border-radius: 35px;
    background-color: var(--color-green);
    color: white;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
}
body .textstart {
    text-align: start !important;
}
/* end contact float*/

/* start note box*/

body div.note-box
{
    display: flex;
    padding: 5px;
    background-color: #1aa81832;
    margin: 10px 16px;
    border-radius: 10px;
    line-height: 1.8em;
    font-style: italic;
}

body div.note-box .icon-note {
    margin-right: 5px;
    color: var(--color-green);
} 

/* end note box*/


/* start section you-need-question */

body div.helper-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
body div.helper-box .text-qu {
    margin-top: 15px;
    font-size: 16px;
    font-weight: bold;
    color: var(--color-black);
}
body div.helper-box  .button-contact {
    padding: 10px;
    margin-top: 5px;
    background-color: var(--color-green);
    font-weight: bold;
    color: white;
    border-radius: 35px;
    cursor: pointer;

}
body .bg-none{
    background-color: transparent;
}
body .large {
    font-size: 18px !important;
}
body .border {
    border-radius: 10px;
}
body .text-content {
    line-height: 1.8em;
    font-size: 18px;
}
body .bold {
    font-weight: bold;
    color: var(--color-green);
}
body .bold-only {
    font-weight: bold;
}
body .pd {
    padding: 10px 23px;
}
body div.image-row{
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
body div.image-row > img{
    width: 350px;
    height: 350px;
}
body div.italic {
    font-style: italic;
}
body  .small {
    font-size: 17px !important;
}
/* end section you-need-question */





/* start footer */
footer {
    margin-top: 30px;
    background-color: #f2f2f2;
    padding: 10px;

}
footer .box-info-footer .parent-info-contact {
    display: flex;
    flex-direction: column;
}
footer .box-info-footer .parent-info-contact .logo img {
    height: 100px;
}
footer .box-info-footer .parent-info-contact .number-box {
    display: flex;
    flex-direction: row;
}
footer .box-info-footer .parent-info-contact .number-box > i {
    color: var(--color-green);
}
footer .box-info-footer .parent-info-contact .number-box > div {
    color: var(--color-black);
    margin-left: 10px;
    font-weight: bold;
}
footer .box-info-footer .parent-info-contact .btn_whatsapp {
padding: 10px;
width: fit-content;
background-color: var(--color-green-opacity);
display: flex;
flex-direction: row;
color: white;
border-radius: 25px;
cursor: pointer;
margin: 5px 0px;
}
footer .box-info-footer .parent-info-contact .btn_whatsapp > i {
    font-size: 24px;
}
footer .box-info-footer .parent-info-contact .btn_whatsapp .text-whatsapp {
margin-left: 10px;
}
footer .box-info-footer .parent-info-contact .email-contact {
    display: flex;
    flex-direction: row;
}
footer .box-info-footer .parent-info-contact .email-contact > i {
color: var(--color-grey);
font-size: 24px;
}
footer .box-info-footer .parent-info-contact .email-contact .text-email{
    color: var(--color-grey);
    margin-left: 10px;

}
footer  .box-info-footer .services {
    margin: 10px 0px;
    font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
    
}
footer .footer-title {
color: var(--color-black);
font-size: 19px;
}
footer  .box-info-footer .services .box {
    padding: 10px;
    line-height: 1.8em;
}
footer  .box-info-footer .services .box div{
    font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif!important;

}
footer  .box-info-footer .services .box div a {
    color: var(--color-grey);
}
footer  .box-info-footer .information {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--c-p);
}
footer  .box-info-footer .information .box {
    padding: 10px;
    line-height: 1.8em;
}
footer  .box-info-footer .information .box div {
    font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif!important;

}
footer  .box-info-footer .information .box div a {    color: var(--color-grey);
}
footer .box-info-footer .info-paragraph {
    line-height: 1.8em;
    font-size: 14px;
    text-align: center;
}
footer .copy-right {
    padding: 10px;
} 
/* end footer */

@keyframes grow {

from {
transform: scale(0);
} to {
transform: scale(1);
}
}






img{max-width:100%;height:auto}
img.logo{width:auto!important;}
footer .box-info-footer .parent-info-contact .logo img, nav .checkbtn>img.menu { width: auto !important; }
footer a, .box-info-footer a { padding: 15px !important; display: inline-block; min-width: 48px; min-height: 48px; }

body div.content-page-2 .image-box > img { object-fit: cover; }
body .content-page-1 .image-box img, body .content-page-2 .image-box img { object-fit: cover; }

nav { color: #ffffff; }
nav ul li a.active, li a:hover { color: #4ade80 !important; }

body .box-splach img { object-fit: cover; }

/* SUPER UNIFIED BANNERS FIX */
section.box-splach {
    height: 500px !important;
    width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    padding: 0 !important;
    display: block !important;
    background-color: transparent !important;
}
section.box-splach > a {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}
section.box-splach img.splachimags, body .box-splach img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    max-height: 500px !important;
    margin-top: 0 !important;
    display: block !important;
}
section.box-splach .screen-up {
    display: none !important; /* Hide the green overlay overlaying the banner */
}


/* ========================================================= */
/* PREMIUM 2024 REDESIGN - MODERN UI/UX INJECTION            */
/* ========================================================= */

/* 1. Global Typography and Spacing */
body {
    line-height: 1.6 !important;
    font-family: 'Inter', 'Outfit', 'Montserrat', 'Source Sans 3', sans-serif !important;
    color: #444444 !important;
    background-color: #fdfdfd !important;
}

/* 2. Modern Navbar */
nav .navbar-top {
    background-color: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-bottom: 1px solid rgba(0,0,0,0.03) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}
nav .logo {
    color: #10750e !important;
    font-weight: 800 !important;
    text-shadow: none !important;
}
nav ul li a {
    color: #333333 !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
}
nav ul li a:hover, nav ul li a.active {
    color: #10750e !important;
    background-color: rgba(16, 117, 14, 0.08) !important;
    text-shadow: none !important;
}

/* 3. Cards & Service Blocks (Shadows and Rounded Corners) */
body .card, body .card-lens, body .right-section, body .contact-message .containear-contect, .box-parameter-coockies .card-box {
    border: none !important;
    border-image: none !important;
    border-radius: 16px !important;
    background-color: #ffffff !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06) !important;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease !important;
}
body .card:hover, body .card-lens:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 40px rgba(16, 117, 14, 0.12) !important;
    background-color: #ffffff !important;
}
body .card .image-background img {
    border-radius: 16px !important;
}
body .card-group .card .image-background {
    border-radius: 16px !important;
}

/* 4. Modern Buttons */
button, .btn_whatsapp, .button {
    border-radius: 50px !important; /* Pill shape */
    background-color: #10750e !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 8px 20px rgba(16, 117, 14, 0.25) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease !important;
    border: none !important;
}
button:hover, .btn_whatsapp:hover, .button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 25px rgba(16, 117, 14, 0.35) !important;
    background-color: #0d5c0b !important;
    color: #ffffff !important;
}

/* 5. Fix text colors and readability */
body .card-group .card .body-card > p, body .lens_show .card-lens .card-paragraph {
    color: #555555 !important;
}
body .title-card h4 span, body .card-group .card .title-card h4 span {
    color: #222222 !important;
    text-shadow: none !important; 
    font-size: 22px !important;
}
/* Titles & Headers */
h1, h2, h3, h4, .title, .title-main, .title-contact, .name-company {
    color: #111111 !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
}
.title-main::after, .title-main::before {
    border-radius: 50px !important;
}
nav .navbar-bottom {
    background-color: #0d5c0b !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
}

/* Footer premium touch */
footer {
    background-color: #ffffff !important;
    border-top: 1px solid rgba(0,0,0,0.05) !important;
}
footer .footer-title {
    color: #111111 !important;
    font-weight: 800 !important;
}

/* Form inputs premium */
input, textarea {
    border-radius: 8px !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
    background-color: #f9f9f9 !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
}
input:focus, textarea:focus {
    outline: none !important;
    border-color: #10750e !important;
    box-shadow: 0 0 0 4px rgba(16, 117, 14, 0.1) !important;
}


/* ========================================================= */
/* FIX BANNER READABILITY (White text + strong shadow)       */
/* ========================================================= */
section.splach-top div.column-text-splach > h1, 
section.splach-top div.column-text-splach > span, 
section.box-splach .textsplach, 
section.box-splach .textsplach .text, 
section.box-splach .textsplach h1, 
section.box-splach .textsplach h2, 
section.box-splach .textsplach .text-small {
    color: #ffffff !important;
    text-shadow: 0px 2px 8px rgba(0,0,0,0.8), 0px 5px 25px rgba(0,0,0,0.6) !important;
}


/* ========================================================= */
/* PREMIUM UNIFICATION FOR ALL SUBPAGES (2024 UI)            */
/* ========================================================= */

/* 1. Global Navbar Unification */
body nav {
    background-color: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-bottom: 1px solid rgba(0,0,0,0.03) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}
body nav ul li a {
    color: #333333 !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
}
body nav ul li a:hover, body nav ul li a.active {
    color: #10750e !important;
    background-color: rgba(16, 117, 14, 0.08) !important;
    text-shadow: none !important;
}
body nav .logo {
    color: #10750e !important;
    font-weight: 800 !important;
}

/* 2. Premium Content Blocks */
body .card-pay, 
body .content-page-1, 
body .content-page-2, 
body .right-contact, 
body .containear-contect,
body .right-section,
body .box-info-price {
    border: none !important;
    border-radius: 16px !important;
    background-color: #ffffff !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06) !important;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease !important;
    padding: 30px !important;
    margin: 20px auto !important;
}
body .card-pay:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 40px rgba(16, 117, 14, 0.12) !important;
    background-color: #ffffff !important;
}

/* 3. Text & Typography within Content Blocks */
body .text-content, body .info-price, body .column-property .text, body .contact-paragraph, body .info-paragraph {
    color: #555555 !important;
    line-height: 1.8 !important;
    font-size: 16px !important;
}
body .card-pay .title h3 {
    font-weight: 800 !important;
    color: #111111 !important;
}
body .card-pay .price .total, body .card-pay .price .symbol {
    color: #10750e !important;
    font-weight: 800 !important;
}

/* 4. Contact Buttons & Utilities */
body .btn-contact {
    border-radius: 50px !important;
    padding: 15px 30px !important;
    margin-top: 20px !important;
    font-size: 16px !important;
    background-color: #10750e !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    border: none !important;
    box-shadow: 0 8px 20px rgba(16, 117, 14, 0.25) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease !important;
}
body .btn-contact:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 25px rgba(16, 117, 14, 0.35) !important;
    background-color: #0d5c0b !important;
}

/* 5. Subpage Body Background */
body {
    background-color: #f8f9fa !important;
}

/* 6. Fix for Image Boxes */
body .image-box img, body .left-section img, body .img-card {
    border-radius: 16px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06) !important;
}

/* 7. Fix contact page */
body .section-contact {
    background: transparent !important;
}
body .line-contact {
    background-color: rgba(0,0,0,0.1) !important;
}
body .contact-message .containear-contect form input, 
body .contact-message .containear-contect form textarea {
    border-radius: 8px !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
    background-color: #f9f9f9 !important;
    padding: 12px !important;
    margin-bottom: 15px !important;
    width: 100% !important;
    transition: all 0.3s ease !important;
}
body .contact-message .containear-contect form input:focus, 
body .contact-message .containear-contect form textarea:focus {
    outline: none !important;
    border-color: #10750e !important;
    box-shadow: 0 0 0 4px rgba(16, 117, 14, 0.1) !important;
}

/* 8. Fix mobile menu button color to match white background */
body nav .checkbtn > img.menu {
    filter: invert(1) brightness(0.5) sepia(1) hue-rotate(80deg) saturate(5) !important; /* roughly green */
}

body .box-info-price .symbol { font-size: 24px !important; margin-right: 15px; display: flex; align-items: center; }
body .box-info-price { display: flex; align-items: center; justify-content: center; }
/* ========================================================= */
/* PREMIUM FOOTER 2024 & TEXT VISIBILITY FIXES               */
/* ========================================================= */

/* THIN FOOTER REORGANIZATION (ORIGINAL COLORS) */
footer, .box-info-footer { padding: 20px 10px !important; }
footer .box-info-footer { display: flex !important; flex-direction: row; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 20px; margin: 0 auto; max-width: 1200px; }
footer .box-info-footer > div { flex: 1; min-width: 200px; }
footer .parent-info-contact { align-items: flex-start !important; }
footer .parent-info-contact .logo img { width: 140px !important; height: auto !important; margin-bottom: 15px; }
footer .parent-info-contact .number-box, footer .parent-info-contact > a, footer .parent-info-contact .email-contact { display: flex !important; align-items: center; margin-bottom: 8px; text-decoration: none; width: 100%; }
footer .parent-info-contact i { color: var(--color-green); font-size: 18px; margin-right: 10px; width: 20px; text-align: center; }
footer .parent-info-contact .btn_whatsapp { border-radius: 20px; padding: 6px 15px; display: inline-flex; align-items: center; font-weight: bold; font-size: 14px; margin-bottom: 8px; }
footer .parent-info-contact .btn_whatsapp i { margin-right: 8px; }
footer .footer-title { font-size: 18px !important; font-weight: bold !important; margin-bottom: 15px !important; border-bottom: 2px solid var(--color-green); padding-bottom: 5px; display: inline-block; }
footer .services .box div, footer .information .box div { margin-bottom: 8px; }
footer .services a, footer .information a { transition: 0.3s; padding: 0 !important; min-height: auto !important; font-size: 14px; }
footer .info-paragraph { font-size: 13px !important; line-height: 1.6 !important; text-align: justify; width: 100% !important; }
footer .copy-right { margin-top: 30px; text-align: center; padding-top: 15px; font-size: 13px; width: 100%; }
footer .parent-info-contact i { color: var(--color-green); font-size: 22px; margin-right: 15px; width: 30px; text-align: center; }
footer .parent-info-contact .btn_whatsapp { background-color: #25D366; border-radius: 25px; padding: 10px 20px; display: flex; align-items: center; color: white !important; font-weight: bold; transition: 0.3s; }
footer .parent-info-contact .btn_whatsapp:hover { background-color: #1ebe5d; transform: translateY(-2px); }
footer .parent-info-contact .btn_whatsapp i { color: white; margin-right: 10px; }
footer .footer-title { color: white !important; font-size: 20px !important; font-weight: bold !important; margin-bottom: 25px !important; border-bottom: 2px solid var(--color-green); padding-bottom: 5px; display: inline-block; }
footer .services .box div, footer .information .box div { margin-bottom: 12px; }
footer .services a, footer .information a { color: #ccc !important; transition: 0.3s; padding: 0 !important; min-height: auto !important; font-size: 16px; }
footer .services a:hover, footer .information a:hover { color: var(--color-green) !important; padding-left: 8px !important; }
footer .info-paragraph { font-size: 15px !important; line-height: 1.8 !important; text-align: justify; color: #aaa !important; width: 100% !important; }
footer .copy-right { margin-top: 50px; text-align: center; padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.1); color: #888; width: 100%; }

/* FIX TEXT VISIBILITY (White on White) */
body article .right-section .paragraph { color: #494949 !important; text-shadow: none !important; opacity: 1 !important; visibility: visible !important; }
body .paragraph { color: #494949 !important; text-shadow: none !important; opacity: 1 !important; visibility: visible !important; }

/* PREMIUM CARDS FOR LEGAL PAGES */
body.privacy-policy .content, body .content { background-color: white; border-radius: 15px; padding: 40px; box-shadow: 0 10px 30px rgba(0,0,0,0.05); margin: 40px auto; max-width: 1000px; color: #333; }
body.privacy-policy h1, body .content h1 { color: var(--color-green); font-family: 'Outfit', sans-serif; font-weight: bold; font-size: 36px; border-bottom: 3px solid var(--color-green); padding-bottom: 10px; margin-bottom: 30px; }
body.privacy-policy h2, body .content h2 { color: var(--color-black); font-family: 'Outfit', sans-serif; font-size: 24px; margin-top: 30px; margin-bottom: 15px; }
body.privacy-policy ul, body .content ul { margin-left: 20px; line-height: 1.8; }
body.privacy-policy li, body .content li { margin-bottom: 10px; }

/* ========================================================= */
/* MODERN CLEAN FOOTER 2024 (WHITE / GREY)                   */
/* ========================================================= */
footer { background-color: #fafafa !important; color: #555 !important; padding: 60px 0 20px 0 !important; border-top: 1px solid #eaeaea; font-family: 'Outfit', sans-serif; }
footer .footer-container { display: flex !important; flex-direction: row; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 40px; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
footer .footer-col { flex: 1; min-width: 200px; }
footer .brand-col { flex: 1.2; }
footer .footer-logo { max-width: 120px; margin-bottom: 20px; }
footer .brand-col p { font-size: 14px; line-height: 1.6; color: #666; margin: 0; }
footer h4 { color: #222; font-size: 16px; font-weight: 600; margin-bottom: 25px; font-family: 'Outfit', sans-serif; }
footer ul { list-style: none; padding: 0; margin: 0; }
footer ul li { margin-bottom: 12px; }
footer ul li a { color: #666 !important; text-decoration: none; font-size: 14px; transition: color 0.3s; padding: 0 !important; }
footer ul li a:hover { color: var(--color-green) !important; padding-left: 5px !important; }
footer .contact-col .contact-item { display: flex; align-items: flex-start; margin-bottom: 15px; font-size: 14px; color: #666; }
footer .contact-col .contact-item i { color: var(--color-green); font-size: 16px; margin-right: 15px; margin-top: 3px; width: 16px; text-align: center; }
footer .contact-col .contact-item a { color: #666 !important; text-decoration: none; transition: color 0.3s; padding: 0 !important; }
footer .contact-col .contact-item a:hover { color: var(--color-green) !important; }
footer .contact-col .contact-item span { color: #666 !important; }
footer .footer-bottom { text-align: center; padding-top: 30px; margin-top: 40px; border-top: 1px solid #eaeaea; font-size: 13px; color: #999; }
footer .footer-bottom p { margin: 0; }

/* ========================================================= */
/* FIX FOOTER LINKS SPACING (OVERRIDE OLD ACCESSIBILITY CSS) */
/* ========================================================= */
footer ul li a, footer .contact-col .contact-item a, footer .brand-col a {
    min-height: 0 !important;
    padding: 0 !important;
    display: inline !important;
}
footer ul li {
    margin-bottom: 6px !important;
}
footer .contact-col .contact-item {
    margin-bottom: 10px !important;
}

/* ========================================================= */
/* LIGHTHOUSE ACCESSIBILITY & CONTRAST FIXES                 */
/* ========================================================= */
/* Fix card titles contrast */
body .card-group .card .title-card h3 span, 
.title-card h3 span, body .card-group .card .title-card h4 span {
    background-color: rgba(255, 255, 255, 0.95) !important;
    color: #222 !important;
    padding: 4px 10px !important;
    border-radius: 4px !important;
    text-shadow: none !important;
    display: inline-block;
}

/* Fix footer heading styling (h4 -> div) */
footer .footer-heading {
    color: #222;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 25px;
    font-family: 'Outfit', sans-serif;
}

/* Fix footer bottom contrast */
footer .footer-bottom {
    color: #555 !important;
}

/* ========================================================= */
/* CARD HOVER FIXES (IMAGE ON HOVER ONLY, NO SHIFT)          */
/* ========================================================= */
body .card-group .card {
    background-color: #fff !important;
}

body .card-group .card .image-background {
    opacity: 0 !important;
    transition: opacity 0.4s ease-in-out !important;
}

body .card-group .card:hover .image-background {
    opacity: 0.9 !important; /* Lighter opacity for better text readability */
}

body .card-group .card:hover {
    bottom: 0 !important; /* Prevent the 10px jump */
    transform: none !important; /* No layout shift */
    background-color: #fff !important; /* Override old green background */
    box-shadow: 0 10px 30px rgba(0,0,0,0.1); /* Smooth subtle shadow instead of moving */
}

/* Make sure title doesn't have border-radius shifting */
body .card-group .card .title-card h3 span, 
.title-card h3 span, body .card-group .card .title-card h4 span {
    background-color: rgba(255, 255, 255, 0.85) !important;
}

/* ========================================================= */
/* FIX IMAGE BEHIND WHITE BACKGROUND                         */
/* ========================================================= */
body .card-group .card .image-background {
    z-index: 0 !important; /* Bring above the white background */
}
body .card-group .card .icon-card,
body .card-group .card .title-card,
body .card-group .card .body-card {
    position: relative !important;
    z-index: 1 !important; /* Keep text above the image */
}

body .card-group .card:hover .body-card p { background-color: rgba(255,255,255,0.9); padding: 4px; border-radius: 4px; }
/* -- Correctifs Mobile & Z-index (Juin 2026) -- */
body .show-coockies-info { z-index: 99999 !important; }
body .box-parameter-coockies { z-index: 100000 !important; }
@media (max-width: 952px) {
    nav .navbar-top { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 0 15px !important; }
    nav label.logo, nav .logo { height: auto !important; padding: 0 !important; margin: 0 !important; }
    img.logo { height: 50px !important; width: auto !important; max-width: 200px !important; object-fit: contain !important; }
    nav .checkbtn > img.menu { height: 40px !important; width: auto !important; line-height: normal !important; }
    nav .checkbtn { margin: 0 !important; height: auto !important; display: flex !important; align-items: center !important; }
    nav .navbar-bottom { font-size: 11px !important; padding: 6px 5px !important; line-height: 1.4 !important; }
}
@media (max-width: 952px) {
    body .content-page-2, body .content-page-1, body article { display: flex !important; flex-direction: column !important; padding: 20px !important; margin: 10px !important; }
    body .content-page-2 .image-box, body .content-page-2 .textbox, body .left-section, body .right-section { width: 100% !important; margin: 10px 0 !important; padding: 0 !important; }
    body .content-page-2 .image-box img, body .left-section img { width: 100% !important; height: auto !important; object-fit: cover !important; border-radius: 12px !important; }
}

/* -- Correctifs client (Juin 2026) -- */
body .box-parameter-coockies .card-box .title {
    color: var(--color-black) !important;
}
body .box-parameter-coockies .card-box .content,
body .box-parameter-coockies .card-box .choose .row-check .text {
    color: var(--color-grey) !important;
}
body .box-parameter-coockies .card-box .choose {
    border-color: var(--color-grey) !important;
}
body .box-parameter-coockies .card-box .icon i {
    color: var(--color-black) !important;
}
@media (min-width: 950px) {
    body .section-2 {
        justify-content: space-evenly !important;
        align-items: center !important;
        margin-left: 0 !important;
    }
    body .section-contact {
        justify-content: space-evenly !important;
        align-items: center !important;
    }
    body .section-contact .card-image>img {
        margin-left: 0 !important;
    }
}

/* -- Correctif bouton paramètre cookies -- */
body .box-parameter-coockies .card-box .button-co > button {
    background: var(--color-green) !important;
    border: none !important;
    border-radius: 25px !important;
    color: #fff !important;
    padding: 12px 30px !important;
    box-shadow: none !important;
    display: inline-block !important;
    width: auto !important;
}

/* -- Correctif alignement texte section-2 -- */
@media (min-width: 950px) {
    body .section-2 .detials-section-center,
    body .section-2 .detials-section-center .info {
        text-align: left !important;
    }
}

/* -- Correctif taille et apparence des boutons bannière cookies -- */
body .show-coockies-info .coockies-buttons-row {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
    margin-top: 10px;
}
body .show-coockies-info .coockies-buttons-row > div {
    padding: 0 !important;
    margin: 0 !important;
}
body .show-coockies-info .coockies-buttons-row button {
    background: var(--color-green) !important;
    border: none !important;
    border-radius: 25px !important;
    color: #fff !important;
    padding: 12px 20px !important;
    box-shadow: none !important;
    width: 200px !important;
    text-align: center !important;
    font-size: 14px !important;
    margin: 0 !important;
}

/* -- Correctif espacement section contact (décoller l'image du texte) -- */
@media (min-width: 950px) {
    body .section-contact {
        gap: 50px !important;
    }
    body .section-contact .right-contact {
        width: 50% !important;
        margin: 0 !important;
    }
}

/* -- Correctif alignement section finale (Pas de petit ou grand projet) -- */
@media (min-width: 950px) {
    body .letter-final {
        justify-content: space-between !important;
        align-items: center !important; /* Aligner verticalement au centre */
        gap: 50px !important;
    }
    body .letter-final .section-rights {
        width: 45% !important;
    }
    body .letter-final .detials {
        width: 55% !important;
    }
}
