/* Table of Contents
----------------------------------


/*------------------------------ (00)-Global CSS ------------------------------*/
/*      
0- Global CSS    
1- Heading CSS    
2- Button CSS   
3- Logo Area CSS 
4- Page Title CSS  
5- Header Area CSS 
6- Footer Area CSS
7- Scroll-Top Area CSS
8- Form CSS
9- Dark Form CSS
10- Swiper Pagination CSS
11- Swiper Navigation CSS
12- Sidebar Heading CSS
13- Sidebar CSS
*/

/*------------------------------ (01)-Home ------------------------------*/
/*
1- Home Slider
2- Offer Home
3- Product Slider & Shop Home
4- Service Slider
5- Counter
6- Why Choose Us
7- Banner
8- Faq Home
9- Testimonials
10- Get Quote Home
11- Newsletter
12- Blogs
13- Clients Slider
*/

/*------------------------------ (02)-About ------------------------------*/

/*--------------- PAGES ---------------*/
/*
1- About Us
2- Team
3- Team Single
4- Testimonials
5- Faqs
6- Awards
*/

/*------------------------------ (03)-Pages ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Tab Information
02- Page Single
03- Page Sidebar
04- Custom Form
*/

/*--------------- PAGES ---------------*/
/*
1- Gallery
2- Feature
3- Offer
4- Before & After
5- Pricing
6- Work Process
7- Not Found
8- Privacy Policy
9- Terms & Condition
10- Careers
11- Career Single
12- Career Form
13- Get A Quote
14- Clients
*/

/*------------------------------ (04)-Service ------------------------------*/
/*
1- Services
2- Service Single
*/

/*------------------------------ (05)-Project ------------------------------*/
/*
1- projects
2- projects Single
*/

/*------------------------------ (06)-Blog ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Blog-Item 
02- Comment 
03- Pages-No
*/

/*--------------- PAGES ---------------*/
/*
1- Blog Grid
2- Blog List
3- Blog Single 
*/


/*------------------------------ (07)-Shop ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Filter
02- Shop Header
03- Quantity Box
04- Product-Item
05- Shop-Title
06- Cart-Summary
07- Radio Button
08- Account-Form   
*/

/*--------------- PAGES ---------------*/
/*
1- Shop Grid 
2- Shop Standard
3- Product Single
4- Wishlist
5- Cart
6- Checkout
7- Login
8- Register 
*/

/*------------------------------ (08)-Contact ------------------------------*/



/*------------------------------ (00)- Global CSS (Start) ------------------------------*/

/*----- 0- Global CSS -----*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');


:root{      
    --main-color: #015880;
    --secondary-color: #8B5DFF; 
    --accent-color: #b6013d;
    --black: #000; 
    --white: #fff;
    --light-grey: #E6E6E6;
    --grey: #666; 
    --custom-bg: rgba(0, 0, 0, 0.8);
    --border-radius-1: 0.5rem;
    --border-radius-2: 1rem;
    --border-radius-3: 5rem;
    --border: 0.1rem solid rgba(0, 0, 0, 0.1);
    --custom-border: 0.5rem solid var(--main-color);
    --box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
    --custom-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}

*{
    font-family: "Roboto", serif;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0; 
    text-decoration: none;
    
    border: none;
    outline: none;
}

*:not(.project-item){
    -webkit-transition: all 0.2s linear;
            transition: all 0.2s linear;
}

*::-moz-selection{
    color: var(--white);
    background-color: var(--main-color);
}

*::selection{
    color: var(--white);
    background-color: var(--main-color);
}

body{
    background: #f2f3f8;
    overflow-x: hidden;
}

html{
    font-size: 62.5%;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 7rem;
}

section{
    padding: 3rem 5%;
}

::-webkit-scrollbar{
    width: 0.8rem;
}

::-webkit-scrollbar-track{
    background: var(--black);
}

::-webkit-scrollbar-thumb{
    border-radius: var(--border-radius-2);
    background: var(--main-color);
}

p{
    font-size: 1.6rem;
    line-height: 1.7;
    color: var(--grey);
}

img{
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
        object-fit: cover;
}

/*----- 1- Heading CSS -----*/
.heading{
   
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.heading .sub{
    letter-spacing: 0.2rem;
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--main-color);
    margin-bottom: 0.5rem;
}

.heading h2{
    text-align: center;
    font-size: 4rem;  
    font-weight: bold;
    color: var(--black);
    text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.2);
    letter-spacing: 0.1rem;
    line-height: 1.2;
}

.linear-bg .heading h2{
    color: var(--white);
}

/*----- 2- Button CSS -----*/
.btn{
    display: inline-block;
    font-size: 1.6rem;
    padding: 1.5rem 3rem;
    text-align: center;
    text-transform: uppercase;
    color: var(--white);     
    background-color: var(--main-color);
    cursor: pointer;
    border-radius: var(--border-radius-2);
}

.btn:hover{
    background-color: var(--accent-color);
}

/*----- 3- Logo Area CSS -----*/  
.logo{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    z-index: 100000;
}

.logo img{
    height: 6.5rem;
    width: auto;
}

.logo h3 {
    font-size: 2.5rem;
    padding-bottom: 0.2rem;
    color: var(--black);
}

.logo p {
    font-size: 1.4rem;
    font-weight: 500;
    color: var(--grey);
    line-height: 1;
}

/*----- 4- Page Title CSS -----*/
.page-title{
 
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    text-align: center;
    padding: 0rem 5%;
    padding-top: 14rem;
    min-height: 36rem;
}

.page-title .title h2{
    color: var(--white);
    font-size: 5rem;
    font-weight: 600;
    text-transform: uppercase;
}

.page-title .link{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    margin: 0 auto;
    font-size: 1.8rem;
    padding: 1rem 2.5rem;
    background: var(--main-color);
    border-radius: var(--border-radius-2);
}

.page-title .link a{
    font-weight: 600; 
    color: var(--white);
}

.page-title .link a:hover{
    color: var(--black);
}

.page-title .link i{
    color: var(--white);
}

.page-title .link span{
    font-weight: 500;
    color: var(--white);
}

/*----- 5- Header Area CSS -----*/
.header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.header .header-1{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    background-color: var(--white);
    padding: 1.5rem 5%;
    height: 8rem;
}

.header.active .header-1{
    display: none;
}

.header .header-contacts{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem;
    list-style-type: none;
}

.header .header-contacts li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    gap: 0.7rem;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--black);
}

.header .header-contacts li i{
    font-size: 1.6rem;
    color: var(--main-color);
}

.header .header-contacts span{
    text-transform: none;
}

.header .icon-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.header .icon-container .icon {
    font-size: 2rem;
    color: var(--black);
    cursor: pointer;
}

.header .icon-container .icon:hover {
    color: var(--main-color);
}

.header .search-container {
    position: absolute;
    top: 100%;
    right: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 2rem;
    background: var(--white);
    width: 40rem;
    padding: 1.5rem 2rem;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    opacity: 0;
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transition: -webkit-transform 0.3s ease;
    -moz-transition: -webkit-transform 0.3s ease;
    -ms-transition: -webkit-transform 0.3s ease;
    -o-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -webkit-border-radius: 50rem;
    -moz-border-radius: 50rem;
    -ms-border-radius: 50rem;
    -o-border-radius: 50rem;
    border-radius: 50rem;
    -webkit-transform: translateX(300%);
    -moz-transform: translateX(300%);
    -ms-transform: translateX(300%);
    -o-transform: translateX(300%);
    transform: translateX(300%);
}

.header .search-container.active {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.header .search-container input {
    width: 100%;
    height: 100%;
    background: transparent;
    color: var(--black);
    font-size: 1.8rem;
    text-transform: none;
}

.header .search-container button {
    color: var(--black);
    background-color: transparent;
    font-size: 2rem;
    padding-right: 0.5rem;
    padding-left: 1rem;
}

.header .search-container button:hover {
    color: var(--main-color);
    cursor: pointer;
}

.header .header-2{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 7rem;
    padding: 0 5%;
    background: var(--main-color);
    position: relative;
}

.header.active .header-2{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.header #menu-btn{
    position: absolute;
    right: 5%;
    top: 50%;
    -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    cursor: pointer;
    display: none;
    font-size: 2rem;
    color: var(--white);
}

.header .navbar{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    gap: 2.5rem;
}

.mobile-menu{
    display: none;
}

.header .container{
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem;
}

.header .dropdown-menu{
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .navbar .nav-btn{
    display: inline-block;
    font-size: 2.2rem; 
    color: var(--white);
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    background: none;
    gap: 0.5rem;
        -webkit-transition: all 0.5s;
            -moz-transition: all 0.5s;
            -o-transition: all 0.5s;
            transition: all 0.5s;
}

.header .navbar .nav-btn i {
    font-size: 1.4rem;
    margin-left: 0.5rem;
    margin-top: 0.5rem;
}

.header .navbar .nav-btn:hover{
    color: var(--black);
}

.header .dropdown-content{
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--white);
    width: 25rem;
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: none;
    -webkit-transition:  all 0.5s;
    -moz-transition:  all 0.5s;
    -o-transition:  all 0.5s;
    transition:  all 0.5s;
    z-index: 1000;
}

.header .dropdown-menu:hover button{
    color: var(--black);
}

.header .dropdown-menu:hover .dropdown-content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 0.4rem solid var(--main-color);
}

.header .dropdown-content a{
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--black);
    padding: 1rem 1.5rem;
    cursor: pointer;
}

.header .dropdown-content a:hover{
    color: var(--white);
    background: var(--main-color);
}

.header .dropdown-content .side-dropdown {
    color: var(--white);
    font-size: 1.2rem;
    padding-right: 1.5rem;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .dropdown-content .side-dropdown .dropdown-content {
    left: 20rem;
    top: 0;
    display: none !important;
    border-top: none;
    border-bottom: var(--custom-border);
}

.header .dropdown-content .side-dropdown:hover .dropdown-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex !important;
}

.header .dropdown-content button {
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--black);
    padding: 1rem 1.5rem;
    cursor: pointer;
    overflow: hidden;
    background-color: transparent;
}

.header .dropdown-content .side-dropdown {
    position: relative;
    color: var(--black);
}

.header .dropdown-content .side-dropdown:hover button {
    color: var(--white);
}

.header .dropdown-content .side-dropdown:hover {
    color: var(--white);
    background: var(--main-color);
}

/*----- 6- Footer Area CSS -----*/
.footer{
    background: var(--black);
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.8)), url("../../assets/images/Background/Footer.jpg");
    background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.8)), url("../../assets/images/Background/Footer.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.footer .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 3rem;
    padding: 3rem 5%;
}

.footer-item .logo h3 {
    color: var(--white);
}

.footer-item .logo p {
    line-height: 1;
}

.footer-item h2{ 
    color: var(--white);
    font-size: 2.5rem;
    font-weight: 600;
    letter-spacing: 0.2rem;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
    position: relative;
}

.footer-item h2:before{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 10rem;
    height: 2px;
    content: "";
    background-color: var(--main-color);
    -webkit-transform: translateX(0%); 
            transform: translateX(0%);
}

.footer-item > p{
    padding: 1.5rem 0;
    font-size: 1.6rem;
} 

.footer-item p{
    color: var(--white); 
    line-height: 1.5;
    font-weight: 500;
}

.footer-item .input-field {
    margin-bottom: 1rem;
    border-radius: var(--border-radius-2);
}

.footer-item .dark-form .alert {
    min-height: 3.5rem;
    display: block;
    font-size: 2rem;
    color: var(--main-color);
    padding-top: 1rem;
}

.footer-item .info p{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.footer-item .info a{ 
    font-size: 1.8rem;
    color: var(--white);
}

.footer-item .links p:hover a{
    color: var(--main-color);
}

.footer-item .links p i{
    color: var(--main-color);
    font-size: 1.5rem;
}

.footer-item .connect {
    padding-bottom: 1rem;
}

.footer-item .connect p {
    margin-bottom: 0.5rem !important;
}

.footer-item .connect i {
    font-size: 1.6rem;
    color: var(--main-color);
    height: 3.3rem;
    width: 3.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.footer-item .social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    margin-top: 1.5rem;
}

.footer-item .social a {
    height: 4rem;
    width: 4rem;
    padding: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.footer-item .social a i {
    color: var(--white);
    font-size: 1.7rem;
}

.footer-item .social a:hover {
    background-color: var(--accent-color);
}

.footer-item .gmail {
    text-transform: none;
}

 

/* =========================================
   FOOTER BOTTOM - PREMIUM FINAL
========================================= */

.footer .content.footer-bottom{
    position: relative;

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 2.2rem 0;

    border-top: 0.1rem solid rgba(255,255,255,0.08);

    text-align: center;
}

/* texto centralizado */
.footer .footer-copy{
    width: 100%;
}

.footer .footer-copy p{
    margin: 0;

    font-size: 1.7rem;

    color: rgba(255,255,255,0.78);

    line-height: 1.6;
}

.footer .footer-copy p span{
    color: var(--main-color);

    font-weight: 700;
}

/* créditos */
.footer .footer-credit{
    position: absolute;

    right: 7rem; /* afasta do botão TOP */

    top: 50%;

    transform: translateY(-50%);

    display: flex;

    align-items: center;
}

/* logo */
.footer .footer-credit img{
    width: 8rem;

    opacity: 0.55;

    transition: all 0.3s ease;
}

.footer .footer-credit img:hover{
    opacity: 1;

    transform: translateY(-2px);
}

/* responsivo */
@media (max-width: 768px){

    .footer .content.footer-bottom{
        flex-direction: column;

        gap: 1.5rem;

        padding-bottom: 3rem;
    }

    .footer .footer-credit{
        position: relative;

        right: auto;
        top: auto;

        transform: none;
    }

}

/*----- 7- Scroll-Top Area CSS -----*/
.scroll-top{
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    height: 5.5rem;
    width: 5.5rem;
    font-size: 2rem;
    padding: 1rem;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    color: var(--white);
    background-color: var(--main-color);
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    z-index: 900;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
}

.scroll-top:hover{
    cursor: pointer;
    background-color: var(--accent-color);
}

/*----- 8- Form CSS -----*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    color: var(--black) !important;
    -webkit-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}
  
.form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}
  
.form .box{
    width: 100%;
    background-color: transparent;
    font-size: 1.6rem;
    color: var(--black);
    padding: 1rem 1.5rem; 
    border: 0.15rem solid rgba(0, 0, 0, 0.1);
    border-radius: var(--border-radius-2);
    text-transform: none;
}

.form .box::-webkit-input-placeholder{
    
}

.form .box::-moz-placeholder{
    
}

.form .box:-ms-input-placeholder{
    
}

.form .box::placeholder{
    
}

.form .box:focus{
    border-color: var(--main-color);
}

.form textarea{
    resize: none;
    height: 20rem;
}

.form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1rem;
}

/*----- 9- Dark Form CSS -----*/
.dark-form input:-webkit-autofill,
.dark-form input:-webkit-autofill:hover,
.dark-form input:-webkit-autofill:focus,
.dark-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}

.dark-form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dark-form .input-field{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
            flex: 1 1 20rem; 
    border: 1.5px solid var(--white);
    border-radius: var(--border-radius-2);
    padding: 1.5rem;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.dark-form .input-field:hover{
    border-color: var(--main-color);
}

.dark-form .input-field label {
    color: var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .box{
    width: 100%;
    font-size: 1.6rem;
    color: var(--white);
    background-color: transparent;
    text-transform: none;
}

.dark-form .box::-webkit-input-placeholder{
    
    color: var(--white);
}

.dark-form .box::-moz-placeholder{
    
    color: var(--white);
}

.dark-form .box:-ms-input-placeholder{
    
    color: var(--white);
}

.dark-form .box::placeholder{
    
    color: var(--white);
}

.dark-form textarea{
    height: 15rem;
    resize: none;
}

.dark-form .text-area {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.dark-form .checkbox-label {
    color: var(--white);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
  
.dark-form .checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}
  
.dark-form .checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}
  
.dark-form .checkbox-label input:checked ~ 
.checkbox-indicator {
    background: var(--main-color);
    outline-color: var(--main-color);
}
  
.dark-form .checkbox-indicator:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 0.2rem;
    width: 0.3rem;
    height: 0.8rem;
    border: solid var(--light-grey);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    display: none;
}

.dark-form .checkbox-label input:checked ~ 
.checkbox-indicator:after {
    display: initial;
}

.dark-form .extra-services{
    padding-top: 1rem;
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

.dark-form .select option{
    color: var(--grey);
}

.dark-form .select{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
            flex: 1 1 20rem;
    border: 0.15rem solid var(--white);
    border-radius: var(--border-radius-2);
    width: 100%;
}
  
.dark-form .select-container{
    height: 100%;
    min-width: 100%;
    position: relative;
}

.dark-form .select-box{
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    color: var(--white);
    background-color: transparent;
    padding: 1.5rem;
    font-size: 1.6rem;
    padding-left: 4.5rem;
}

.dark-form .select-container label{
    position: absolute;
    height: 100%;
    top: 0;
    left: 1.5rem;
    color: var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .select-container .icon-container{
    width: 4rem;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: -1;
}

.dark-form .select-container .icon-container i{
    font-size: 1.6rem;
    color: var(--white);
}

/*----- 10- Swiper Pagination CSS -----*/
.swiper-pagination-bullet{ 
    height: 1.2rem;
    width: 1.2rem;
    border-radius: 0;
    background: var(--white);
    opacity: 0.7;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

.swiper-pagination-bullet-active{
    width: 3rem;
    background: var(--main-color) !important;
    opacity: 0.9;
    border-radius: var(--border-radius-2);
}

/*----- 11- Swiper Navigation CSS -----*/
.swiper-button-next,
.swiper-button-prev{
    background-color: rgba(255, 255, 255, 0.4);
    font-size: 1rem;
    height: 5.5rem;
    width: 5.5rem;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.swiper-button-next{
    right: 1rem;
}

.swiper-button-prev{
    left: 1rem;
}

.swiper-button-next::after,
.swiper-button-prev::after{
    font-size: 2rem;
    font-weight: bold;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center; 
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
  
.swiper-button-next:hover,
.swiper-button-prev:hover{
    background-color: var(--main-color);
}

/*----- 12- Sidebar Heading CSS -----*/
.sidebar-heading h2{
    position: relative;
    font-size: 3rem; 
    font-weight: 500;
    word-spacing: 1px; 
    color: var(--black);
    letter-spacing: 0.1rem;
    line-height: 1;
    margin-bottom: 1.5rem;
    padding-bottom: 1.2rem;
}

.sidebar-heading h2:before{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 10rem;
    height: 2px;
    background-color: var(--main-color);
}

/*----- 13- Sidebar CSS -----*/
/*
1- Search
2- Category
3- Recent Items
4- Tags
*/

.sidebar{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 28rem; 
        flex: 1 1 28rem;  
}

.sidebar .sidebar-item{
    margin-bottom: 1.5rem;
    background-color: var(--white);
    border-top: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    padding: 1.5rem;
}

/*-- 1- Search --*/
.sidebar .search .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.sidebar .search .input-box input{
    width: 100%;
    padding: 1.5rem; 
    overflow: hidden;
    border: 0.1rem solid rgba(0, 0, 0, 0.5);
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
}

.sidebar .search .input-box input:focus{ 
    border-color: var(--main-color);
}

.sidebar .search .input-box button{
    color: var(--white);
    background-color: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 2rem;
    font-size: 1.8rem;
    cursor: pointer;
}

.sidebar .search .input-box button:hover{
    background-color: var(--main-color);
}

/*-- 2- Category --*/ 
.sidebar .category a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.5rem 0rem;
    border-bottom: 0.15rem solid rgba(0, 0, 0, 0.1);
}

.sidebar .category a:last-child{
    margin-bottom: 0;
}

.sidebar .category a span{
    font-size: 1.7rem;
    color: var(--black);
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.sidebar .category a span i{
    font-size: 1.8rem;
    color: var(--main-color);
}

.sidebar .category a p{
    font-size: 1.5rem;
}

.sidebar .category a:hover span,
.sidebar .category a:hover p{
    color: var(--main-color);
}

/*-- 3- Post Items --*/
.sidebar .post-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.sidebar .post-item:last-child{
    margin-bottom: 0;
}

.sidebar .post-item img{
    height: 8rem;
    width: 8rem;
    border-radius: var(--border-radius-2);
}

.sidebar .recent-posts .post-item img{
    width: 10rem;
}

.sidebar .post-item a{
    display: inline-block;
    font-size: 2rem;
    font-weight: 600;
    color: var(--black);
}

.sidebar .recent-posts .post-item a{
    font-size: 1.8rem;
}

.sidebar .post-item a:hover{
    color: var(--main-color);
}

.sidebar .post-item .price p{
    padding-top: 0.5rem;
    font-size: 1.7rem;
    font-weight: bold;
    color: var(--main-color);
}

.sidebar .post-item .price span{
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--grey);
    text-decoration: line-through;
    padding-left: 0.2rem;
}

/*-- 4- Tags --*/
.sidebar .tags .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.5rem;
}

.sidebar .tag-item{
    color: var(--white);
    background-color: var(--main-color);
    font-size: 1.8rem;
    padding: 1rem 1.2rem;
    border-radius: var(--border-radius-2);
}

.sidebar .tag-item:hover{
    background-color: var(--accent-color);
    cursor: pointer;
}

/*------------------------------ (00)- Global CSS (End) ------------------------------*/



/*------------------------------ (01)- Home (Start) ------------------------------*/
/*===== 1- HOME SLIDER (VERSÃO FINAL PREMIUM) =====*/

.home{
    padding: 0;
    position: relative;
}

.home-slider{
    position: relative;
    overflow: hidden;
}

/* setas aparecem no hover */
.home-slider .swiper-button-next,
.home-slider .swiper-button-prev{
    opacity: 0;
    transition: 0.3s ease;
}

.home-slider:hover .swiper-button-next,
.home-slider:hover .swiper-button-prev{
    opacity: 1;
}

/* slide */
.home-item{
    height: 70rem;
    position: relative;
}

/* overlay + alinhamento */
.home-item .content{ 
    padding: 10rem 5%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;

    /* overlay premium */
    background: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.45) 30%,
        rgba(0, 0, 0, 0.15) 60%,
        transparent 100%
    );
}

/* container texto */
.home-item .content .text{
    max-width: 58rem;
    text-align: left;
}

/* subtitulo */
.home-item .content h5{
    display: flex;
    font-size: 1.7rem;
    font-weight: 600;
     
    justify-content: flex-start;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 1rem;
    opacity: 0.9;
	letter-spacing: 0.05rem;
	color: rgba(255,255,255,0.85);
	
	
}

 
 

/* titulo principal */
.home-item .content h3{
    font-size: 5.4rem;
    font-weight: 700;
    margin-bottom: 2rem;
    color: var(--white);
    letter-spacing: 0.05rem;
    line-height: 1.2;
    text-align: left;

    /* 🔥 acabamento premium */
    text-shadow: 0 3px 15px rgba(0,0,0,0.6);
}

/* descrição */
.home-item .content p {
    font-size: 1.9rem;
    color: var(--white);
    margin-bottom: 2.5rem;
    text-align: left;
    line-height: 1.6;

    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
}

/* botão */
.home-item .btn{
    display: inline-block;
    padding: 1.2rem 2.8rem;
    font-size: 1.6rem;
    border-radius: 6px;
    background: var(--main-color);
    color: #fff;
    transition: 0.3s ease;
}

.home-item .btn:hover{
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.3);
}


/* imagem */
.home-item img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*----- 2- Offer Home ------*/
.offer.main {
    padding-bottom: 1rem;
}

/*==================================================
  SHOP / SERVIÇOS - VERSÃO PREMIUM FINAL
==================================================*/

.shop-slider{
    overflow: hidden;
    padding: 1rem 0.5rem;
}

/* ===== SECTION ===== */
.shop.home-shop{
    display: block;

    padding: 7rem 0;

    position: relative;

    background:
    linear-gradient(
        135deg,
        rgba(10,10,10,0.96) 0%,
        rgba(18,18,18,0.93) 45%,
        rgba(28,28,28,0.90) 100%
    );

    overflow: hidden;
}

/* glow sutil */
.shop.home-shop::before{
    content: "";

    position: absolute;

    top: -20%;
    left: -10%;

    width: 45rem;
    height: 45rem;

    background: rgba(0, 119, 182, 0.08);

    border-radius: 50%;

    filter: blur(90px);

    pointer-events: none;
}

/* ===== HEADING ===== */
.home-shop .heading{
    margin-bottom: 5rem;
    position: relative;
    z-index: 2;
}

.home-shop .heading .sub{
    color: var(--main-color);

    font-size: 2rem;
    font-weight: 700;

    letter-spacing: 0.25rem;

    text-transform: uppercase;

    margin-bottom: 1rem;
}

.home-shop .heading h2{
    color: var(--white);

    font-size: 5rem;
    font-weight: 800;

    line-height: 1.2;

    text-shadow: 0 4px 18px rgba(0,0,0,0.35);
}

/* ===== CARD ===== */
.home-shop .product-item{
    position: relative;

    background: rgba(255,255,255,0.03);

    border-radius: 1.8rem;

    overflow: hidden;

    transition: all 0.35s ease;

    border: 1px solid rgba(255,255,255,0.06);

    backdrop-filter: blur(5px);

    box-shadow:
        0 10px 30px rgba(0,0,0,0.18);
}

/* hover premium */
/* hover glow azul */
.home-shop .product-item:hover{
    border-color: rgba(0, 119, 182, 0.35);

    box-shadow:
        0 22px 45px rgba(0,0,0,0.35),
        0 0 25px rgba(0,119,182,0.12);
}

/* ===== IMAGEM ===== */
.home-shop .product-item .image{
    position: relative;

    overflow: hidden;

    border-radius: 1.8rem;

    height: 26rem;
}

.home-shop .product-item .image::after{
    content: "";

    position: absolute;

    inset: 0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,0.35),
        rgba(0,0,0,0.05)
    );
}

.home-shop .product-item .image img{
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.home-shop .product-item:hover .image img{
    transform: scale(1.04);
}

/* ===== CONTEÚDO ===== */
.home-shop .product-item .content{
    padding: 2.2rem 1.5rem 1.8rem;

    text-align: center;
}

/* título */
.home-shop .product-item h3{
    color: var(--white);

    font-size: 2rem;
    font-weight: 700;

    line-height: 1.45;

    transition: 0.3s ease;

    min-height: 5.8rem;
}

.home-shop .product-item:hover h3{
    color: #ffffff;
}

/* descrição */
.home-shop .product-item p{
    color: rgba(255,255,255,0.72);

    font-size: 1.55rem;

    line-height: 1.7;

    margin-top: 1rem;
}

/* remove underline */
.home-shop .product-item a{
    text-decoration: none;
}

/* ===== RESPONSIVO ===== */

@media (max-width: 991px){

    .home-shop .heading h2{
        font-size: 4rem;
    }

    .home-shop .product-item .image{
        height: 24rem;
    }

}

@media (max-width: 768px){

    .shop.home-shop{
        padding: 5rem 0;
    }

    .home-shop .heading{
        margin-bottom: 3.5rem;
    }

    .home-shop .heading h2{
        font-size: 3.2rem;
    }

    .home-shop .heading .sub{
        font-size: 1.6rem;
    }

    .home-shop .product-item .image{
        height: 23rem;
    }

    .home-shop .product-item h3{
        font-size: 1.9rem;
    }

}

/*----- 4- Service Slider -----*/
.service-slider{
    overflow: hidden;
    padding: 0.5rem;
}

.services.main {
    padding: 2rem 0;
}

/*----- 5- Counter -----*/
.counting {
    padding: 4rem 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3rem;
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6)), url("../../assets/images/Background/Counter.jpg");
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6)), url("../../assets/images/Background/Counter.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.counting .box {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
    flex: 1 1 25rem;
    padding: 3rem 2rem;
    text-align: center;
}

.counting .box i {
    width: 9rem;
    height: 9rem;
    margin: 0 auto;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    background: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    font-size: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 1.5rem;
}

.counting .box .count {
    color: var(--white);
    font-size: 4.5rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.counting .box h3 {
    font-size: 1.8rem;
    color: var(--white);
    font-weight: 400;
}

/*----- 6- Why Choose Us -----*/
.whyUs {
    padding: 0;
}

.whyUs .content {
    padding: 3rem 5%;
    text-align: center;
}

.whyUs .whyUs-points {
    list-style-type: none;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

.whyUs .whyUs-points li {
    background-color: var(--black);
    position: relative;
    padding: 3rem 2rem;
    padding-top: 7rem;
    margin-top: 2rem;
    border-radius: var(--border-radius-2);
}

.whyUs .whyUs-points li .icon {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, -2.3rem);
        transform: translate(-50%, -2.3rem);
    width: 8rem;
    height: 8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.whyUs .whyUs-points li i {
    font-size: 3.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
}

.whyUs .whyUs-points li h5 {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--white);
    padding-bottom: 1rem;
}

.whyUs .whyUs-points li p {
    color: var(--light-grey);
}

/*----- 7- Banner -----*/
.banner{
    padding: 8rem 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    background: url("../../assets/images/Background/Banner.jpg");
    background-position: left;
    background-size: cover;
}

.banner .content{
    width: 70rem;
    text-align: center;
}

.banner .heading{
    padding-bottom: 0;
}

.banner h2{
    font-size: 5rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--white);
    padding-bottom: 2rem;
    letter-spacing: 0.1rem;
}

/*----- 8- Faq Home -----*/
.faq.main {
    padding: 0;
}

.faq.main .heading {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.faq.main .heading h2 {
    text-align: left;
}

.faq.main .box-container {
    gap: 0;
    background-color: var(--black);
}

.faq.main .accordion-container {
    padding: 3rem 5%;
    padding-right: 3rem;
}

.faq.main .accordion .accordion-heading {
    background-color: var(--white);
}

.faq.main .accordion.active .accordion-heading {
    background-color: var(--main-color);
}

.faq.main .image {
    height: 58rem;
    border-radius: 0;
}

/*----- 9- Testimonials -----*/
.testimonial-bg{
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Testimonials.jpg");
    background:         linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Testimonials.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

/*----- 10- Get Quote Home -----*/
.get-quote.main {
    padding: 0;
}

/*----- 11- Newsletter -----*/
.newsletter-subscribe{
    padding: 8rem 5%;
    padding-bottom: 6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url("../../assets/images/Background/Newsletter.jpg");
    background-position: center;
    background-size: cover;
}

.newsletter-subscribe .content{
    width: 70rem;
}

.newsletter-subscribe h2{
    font-size: 4.5rem;
    font-weight: 600;
    color: var(--white);
}

.newsletter-subscribe p{
    letter-spacing: 0.15rem;
    font-weight: 500;
    color: var(--white);
    padding-top: 1rem;
    padding-bottom: 3rem;
}

.newsletter-subscribe .box-container {
    max-width: 60rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    padding: 0.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
}

.newsletter-subscribe input{
    padding: 0rem 1.5rem;
    width: 100%;
    color: var(--black);
    background-color: var(--white);
    text-transform: none;
    font-size: 1.5rem;
}

.newsletter-form .alert {
    min-height: 3.5rem;
    display: block;
    font-size: 2rem;
    color: var(--white);
    padding-top: 1rem;
    -webkit-transition: none;
    transition: none;
}

/*----- 12- Blogs -----*/
.blog.main .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 13- Clients Slider -----*/
.home-clients{
    background-color: rgba(0, 0, 0, 0.05);
}

.clients .client-slider{
    overflow: hidden;
}

/*==================================================
  ABOUT SECTION - FINAL BRABA VERSION
==================================================*/

.about{
    display: flex;
    align-items: center;
    gap: 4.5rem;

    padding: 7rem 0;

    flex-wrap: wrap;
}

/*==================================================
  FOTO
==================================================*/

.about .image{
    flex: 1 1 44rem;

    position: relative;

    min-height: 46rem;

    border-radius: 2rem;
    overflow: hidden;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.10);
}

.about .image img{
    width: 100%;
    height: 100%;

    object-fit: cover;
    display: block;

    transition: 0.4s ease;
}

.about .image:hover img{
    transform: scale(1.03);
}

/* overlay suave */
.about .image::before{
    content: "";

    position: absolute;
    inset: 0;

    background: linear-gradient(
        to top,
        rgba(0,0,0,0.22),
        rgba(0,0,0,0.03),
        transparent
    );

    z-index: 1;
}

/*==================================================
  SELO
==================================================*/

.about .experience{
    position: absolute;

    left: 2rem;
    bottom: 2rem;

    z-index: 2;
}

.about .experience .experience-content{
    display: flex;
    align-items: center;
    gap: 1rem;

    background: rgba(0,95,135,0.92);

    padding: 1.1rem 1.6rem;

    border-radius: 1rem;

    backdrop-filter: blur(10px);

    color: #fff;

    box-shadow:
        0 10px 25px rgba(0,0,0,0.18);
}

.about .experience i{
    font-size: 1.8rem;
}

.about .experience span{
    font-size: 1.4rem;
    font-weight: 600;
}

/*==================================================
  CONTEÚDO
==================================================*/

.about .content{
    flex: 1 1 48rem;
}

/* heading */
 

/* subtítulo */
.about .heading .sub{
    font-size: 1.6rem;
    font-weight: 700;

    letter-spacing: 0.08rem;
    text-transform: uppercase;

    color: var(--main-color);

    margin-bottom: 1rem;
}

/* título principal */
.about .heading h2{
    font-size: 3.0rem;
   
    font-weight: 800;

    color: #111827;

    max-width: 58rem;

    margin-bottom: 1.8rem;

    letter-spacing: -0.02em;
}

/*==================================================
  TEXTO
==================================================*/

.about .about-text{
    margin-bottom: 2.2rem;
}

.about .about-text p{
    font-size: 1.65rem;
    line-height: 1.8;

    color: #4b5563;

    margin-bottom: 1.6rem;
}

/*==================================================
  FEATURES
==================================================*/

.about .about-features{
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.8rem;

    margin-bottom: 2.8rem;
}

/* item */
.about .about-features .item{
    background: #fff;

    border-radius: 1.5rem;

    padding: 2rem 1.8rem;

    box-shadow:
        0 8px 25px rgba(0,0,0,0.05);

    transition: 0.3s ease;
}

.about .about-features .item:hover{
    transform: translateY(-5px);

    box-shadow:
        0 15px 35px rgba(0,0,0,0.08);
}

/* ícones */
.about .about-features i{
    width: 5.2rem;
    height: 5.2rem;

    border-radius: 1.3rem;

    background: linear-gradient(
        135deg,
        #005f87,
        #0077aa
    );

    color: #fff;

    font-size: 1.9rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 1.3rem;

    box-shadow:
        0 10px 20px rgba(0,95,135,0.18);
}

/* título feature */
.about .item-content h3{
    font-size: 1.9rem;
    font-weight: 700;

    color: #111827;

    margin-bottom: 0.7rem;

    line-height: 1.3;
}

/* descrição */
.about .item-content span{
    font-size: 1.45rem;
    line-height: 1.7;

    color: #6b7280;
}

/*==================================================
  BOTÃO
==================================================*/

.about .btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 1.3rem 2.8rem;

    border-radius: 0.9rem;

    background: var(--main-color);

    color: #fff;

    font-size: 1.55rem;
    font-weight: 600;

    transition: 0.3s ease;
}

.about .btn:hover{
    transform: translateY(-3px);

    box-shadow:
        0 15px 30px rgba(0,95,135,0.20);
}

/*==================================================
  RESPONSIVO
==================================================*/

@media (max-width: 991px){

    .about{
        gap: 4rem;
    }

    .about .heading h2{
        font-size: 3rem;
    }

    .about .about-features{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px){

    .about{
        padding: 6rem 0;
    }

    .about .image{
        min-height: 34rem;
    }

    .about .heading h2{
        font-size: 2.7rem;
    }

    .about .about-text p{
        font-size: 1.55rem;
    }
}

@media (max-width: 450px){

    .about{
        gap: 3rem;
    }

    .about .heading h2{
        font-size: 2.3rem;
    }

    .about .heading .sub{
        font-size: 1.4rem;
    }

    .about .about-text p{
        font-size: 1.45rem;
        line-height: 1.7;
    }

    .about .experience{
        left: 1.5rem;
        bottom: 1.5rem;
    }

    .about .experience .experience-content{
        padding: 1rem 1.3rem;
    }

    .about .experience span{
        font-size: 1.25rem;
    }
}





/*----- 2- Team -----*/
.team .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

.team-item {
    position: relative;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 46rem;
    border-radius: var(--border-radius-2);
}

.team-item .content{
    position: absolute;
    bottom: 0;
    left: 0%;
    height: 100%;
    width: 100%; 
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.9));
    background:         linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.9));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -ms-grid-row-align: flex-end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 3rem;
    outline: 0.1rem solid rgba(255, 255, 255, 0.4);
    outline-offset: -1.5rem;
}

.team-item h3{
    font-size: 2.6rem;
    font-weight: 600;
    color: var(--white);
}

.team-item h3:hover{
    color: var(--main-color);
}

.team-item p{
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--main-color);
}

.team-item .icon-container{
    -webkit-transition: all 0.4s ease-in-out 0s;
    -moz-transition: all 0.4s ease-in-out 0s;
    -o-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 0, 100% 94%, 70% 100%, 30% 100%, 0 94%, 0 0);
        clip-path: polygon(30% 0%, 70% 0%, 100% 0, 100% 94%, 70% 100%, 30% 100%, 0 94%, 0 0);
    margin-bottom: 0.5rem;
}

.team-item .icon-container .link {
    -webkit-transform: translateY(100%);
        transform: translateY(100%);
}

.team-item .icon-container:hover .link {
    -webkit-transform: translateY(0);
        transform: translateY(0);
}

.team-item .icon-container a{
    height: 4rem;
    width: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;  
    font-size: 1.7rem;
    color: var(--white);
    background: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.team-item .icon-container a:hover{
    color: var(--main-color);
    background: var(--white);
}

/*----- 3- Team Single -----*/
.team-single .team-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 3rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    padding: 2rem;
}

.team-single .image{ 
    width: 40rem;
    height: 50rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.team-single .information{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
        flex: 1 1 50rem;
}

.team-single .information h3{
    color: var(--black);
    font-size: 3rem;
    font-weight: 600;
    padding-bottom: 0.5rem;
}

.team-single .information h5{
    color: var(--main-color);
    text-transform: uppercase;
    font-size: 1.8rem;
    font-weight: 600;
    padding-bottom: 1.5rem;
}

.team-single .information .team-about{
    padding-top: 1.5rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.team-single .text{
    font-size: 1.6rem;
    letter-spacing: 0.2px;
    font-weight: 400;
    color: var(--grey);
    line-height: 1.7;
}

.team-single .team-personal-info{
    padding-top: 2rem;
    padding-bottom: 1rem;
}

.team-single .team-personal-info li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding-bottom: 1.5rem;
}

.team-single .team-personal-info i{
    font-size: 1.6rem;
    color: var(--main-color);
    padding-right: 0.5rem;
}

.team-single .team-personal-info h6{
    font-size: 2rem;
    color: var(--black);
}

.team-single .team-personal-info span{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--grey);
    text-transform: none;
}

.team-single .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.team-single .icon-container a{
    height: 4.2rem;
    width: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;  
    font-size: 1.7rem;
    padding: 1rem;
    color: var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.team-single .icon-container a:hover{
    background: var(--accent-color);
}

.team-single .page-info{
    background-color: transparent;
    box-shadow: none;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
}

.team-single .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding-top: 2rem;
}

.team-single h4{
    font-size: 3rem;
    font-weight: 500;
    color: var(--black);
    padding-bottom: 0.5rem;
}

.team-single .sub-section{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 42rem;
            flex: 1 1 42rem;
}

.team-single .skills .box{
    padding: 1rem 0;
}

.team-single .skills .box h3{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.7rem 0;
    font-size: 1.7rem;
    color: var(--black);
    font-weight: 400;
}

.team-single .skills .box .progress-bar{
    width: 100%;
    background: var(--black);
    overflow: hidden;
    border-radius: var(--border-radius-2);
    height: 1.2rem;
}
 
.team-single .skills .box .progress-bar span{
    display: block;
    height: 100%;
    background-color: var(--main-color);
}

/*----- 4- Testimonials -----*/
.testimonial-slider{
    overflow: hidden;
    position: relative;
    padding-bottom: 4rem;
}

.testimonial .swiper-pagination-bullet{
    background: var(--black);
    opacity: 0.9;
}

.testi-item{
    text-align: center;
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

.testi-item .intro {
    padding: 2.5rem 2rem;
    min-height: 12rem;
    background: var(--main-color);
    -webkit-clip-path: ellipse(80% 100% at 50% 0%);
        clip-path: ellipse(80% 100% at 50% 0%);
}

.testi-item h4{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.testi-item h6{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--white);
}

.testi-item .image {
    -webkit-transform: translateY(-3rem);
        transform: translateY(-3rem);
    height: 8rem;
    width: 8rem;
    margin: 0 auto;
    margin-bottom: -3rem;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.testi-item .info {
    padding: 2rem;
}

.testi-item p {
    color: var(--light-grey);
}

.testi-item .rating {
    padding: 2rem 0;
}

.testi-item .rating i {
    font-size: 1.8rem;
    color: var(--main-color);
}

/*----- 5- Faqs -----*/
.faq .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
}

.accordion-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55rem;
        flex: 1 1 55rem;
}

.accordion{
    margin-bottom: 1.5rem;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-2);
} 
 
.accordion:last-child{
    margin-bottom: 0rem;
}  

.accordion .accordion-heading{
    padding: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    background-color: var(--black);
}

.accordion.active .accordion-heading {
    background-color: var(--main-color);
}

.accordion .accordion-heading i{
    height: 4rem;
    width: 4rem;
    color: var(--white);
    background-color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.accordion.active .accordion-heading i {
    background: var(--black);
}

.accordion .accordion-heading h3{
    color: var(--main-color);
}

.accordion.active .accordion-heading h3{
    color: var(--black);
}

.accordion.active .accordion-content{
    display: block;
}

.accordion-content{
    padding: 2rem;
    font-size: 1.5rem;
    line-height: 2;
    color: var(--grey);
    background-color: var(--white);
    display: none;
}

.faq .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem;
        flex: 1 1 30rem;
    height: 53rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

/*----- 6- Awards -----*/
.award .box-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(28rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(28rem, 1fr));
    gap: 2rem;
}

.award-item {
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

/*------------------------------ (02)-About (End) ------------------------------*/



/*------------------------------ (03)-Pages (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Tab Informatin -----*/
.tab-buttons{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style-type: none;
    gap: 1rem;
    margin-bottom: 2rem;
}

.tab-buttons .button{
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1.5rem 3rem;
    color: var(--white);
    background-color: var(--main-color);
    text-transform: uppercase;
    text-align: center;
    border-radius: var(--border-radius-2);
}

.tab-buttons .button:hover,
.tab-buttons .button.active{
    background-color: var(--black);
    cursor: pointer;
}

.tab-section{
    display: none;
}

.tab-section.active{
    display: block;
    margin-top: 2rem;
}

/*----- 02- Page Single -----*/
.page-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

.page-single .sidebar .sidebar-item{
    margin-bottom: 0;
}

.page-info{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem; 
        flex: 1 1 75rem;
}

.page-info .image{
    height: 40rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.page-info .image img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.page-info .content{
    padding-top: 2rem;
}

.page-info .main-heading{
    display: inline-block;
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--black);
    text-shadow: 1px 1px 8px rgba(0,0,0, 0.2);
    padding-bottom: 1rem;
}

.page-info .important{
    color: var(--black) !important;
    font-weight: 600;
}

.page-info p{
    padding-bottom: 1rem;
}

.page-info .page-gallery{ 
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    padding: 2rem 0;
}
  
.page-info .page-gallery img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

.page-info .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--black);
    padding-bottom: 0.5rem;
}

.page-info .sub-section{
    padding-top: 2rem;
}

.page-info .sub-section p{
    margin-bottom: -1rem;
}

.page-info .sub-section ul{
    list-style: none;
}

.page-info .sub-section ul li{
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.page-info .sub-section ul i{ 
    color: var(--main-color);
    font-size: 1.4rem;
    height: 1.8rem;
    width: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/*----- 03- Page Sidebar -----*/
.page-sidebar{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem; 
        flex: 1 1 25rem;  
    padding: 4rem;
    background: var(--black);
    border-top: 0.4rem solid var(--main-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

.page-sidebar .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 2rem;
    line-height: 1;
}

.page-sidebar .detail-item{
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.page-sidebar .detail-item:last-child{
    padding-bottom: 0;
}

.page-sidebar .detail-item i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    font-size: 1.8rem;
    color: var(--main-color);
}

.page-sidebar .detail-item h3{
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1;
    padding-bottom: 0.5rem;
}

.page-sidebar .detail-item .detail-content p{
    font-weight: 400;
    color: var(--light-grey);
    line-height: 1.3;
}

.page-sidebar .website,
.page-sidebar .gmail{
    text-transform: none;
}

.page-sidebar .btn{
    margin-top: 3rem;
}

/*----- 04- Custom Form -----*/
.custom-form{
    padding: 2rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.custom-form .image {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
}

.custom-form .box-container {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 70rem;
        flex: 1 1 70rem;
}

.custom-form form{
    padding: 4rem;
    background-color: var(--black);
    text-align: center;
}

.custom-form .alert {
    font-size: 2rem;
    color: var(--main-color);
    padding-left: 1rem;
}

.custom-form ::-webkit-calendar-picker-indicator {
    -webkit-filter: invert(1);
            filter: invert(1);
}

/*--------------- PAGES ---------------*/

/*----- 1- Gallery -----*/
.gallery .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    -ms-grid-rows: auto;
        grid-template-rows: auto;
    gap: 1.5rem;
    grid-template-areas: 
    'gallery-1 gallery-2 gallery-3 gallery-3'
    'gallery-4 gallery-4 gallery-3 gallery-3'
    'gallery-5 gallery-6 gallery-6 gallery-7'
}

.gallery-item{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    position: relative;
    cursor: pointer;
    overflow: hidden;
    border-radius: var(--border-radius-2);
    height: 24rem;
}

/* Assign grid areas to Each Category Box */
.gallery-1 {
    grid-area: gallery-1;
}

.gallery-2 {
    grid-area: gallery-2;
}

.gallery-3 {
    grid-area: gallery-3;
    height: auto;
}

.gallery-4 {
    grid-area: gallery-4;
}

.gallery-5 {
    grid-area: gallery-5;
}

.gallery-6 {
    grid-area: gallery-6;
}

.gallery-7 {
    grid-area: gallery-7;
}

.gallery-item .content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center; 
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    position: absolute;
    left: 10%;
    top: 10%;
    opacity: 0;
    width: 80%;
    height: 80%;
    border-radius: var(--border-radius-2);
    z-index: 1;
    -webkit-transition: all 0.4s ease-in-out 0s;
    -moz-transition: all 0.4s ease-in-out 0s;
    -o-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
    background-color: rgba(217, 22, 86, 0.9);
}

.gallery-item:hover .content{
    opacity: 1;
}

.gallery-item a i{
    scale: 0;
    font-size: 4rem;
    color: var(--white);
}

.gallery-item:hover a i{
    scale: 1;
}

/*----- 2- Features -----*/
.features .box-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

.feature-item {
    cursor: pointer;
    text-align: center;
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    padding: 4rem 2rem;
    padding-top: 8rem;
    margin-top: 2.5rem;
    position: relative;
}

.feature-item i {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, -2.5rem);
    transform: translate(-50%, -2.5rem);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    width: 8rem;
    height: 8.5rem;
    padding: 1.5rem;
    font-size: 3rem;
    color: var(--white);
    background-color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.feature-item h3 {
    font-size: 2.3rem;
    color: var(--white);
    margin-bottom: 1rem;
}

.feature-item p {
    color: var(--light-grey);
}

/*----- 3- Offer -----*/
.offer {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

.offer-item {
    display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    height: 22rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
    background-color: var(--black);
}

.offer-item .offer-details {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 2rem;
    border-right: 0.15rem dotted var(--main-color);
}

.offer-item h3 {
    font-size: 2.4rem;
    color: var(--white);
    margin-bottom: 1rem;
}

.offer-item p {
    color: var(--white);
    margin-bottom: 1rem;
}

.offer-item .btn {
    padding: 1.5rem 2rem;
}

.offer-item .offer-discount {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

.offer-item h6 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--light-grey);
}

.offer-item h4 {
    font-weight: 700;
    font-size: 3.6rem;
    color: var(--main-color);
}

/*----- 4- Before & After -----*/
.before-after {
    text-align: center;
}

.before-after .images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.5rem;
    max-width: 70rem;
    margin: 0 auto;
    margin-bottom: 2rem;
}

.before-after .before-image,
.before-after .after-image {
    position: relative;
    width: 50%;
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

.before-after h4 {
    position: absolute;
    bottom: 1.5rem;
    left: 1.5rem;
    width: 10rem;
    padding: 1.5rem;
    background-color: var(--main-color);
    border-radius: var(--border-radius-2);
    color: var(--white);
    font-size: 1.8rem;
}

.before-after h2 {
    font-size: 3.5rem;
    margin-bottom: 1rem;
}

/*----- 5- Pricing -----*/
.pricing .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(33rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(33rem, 1fr));
    gap: 1.5rem;
}

.pricing .plan-item{
    position: relative;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 58rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.pricing .plan-item .plan-content{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: var(--custom-bg);
    text-align: center;
}

.pricing .plan-item .intro {
    width: 100%;
    height: 14rem;
    padding: 2rem;
    padding-bottom: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: var(--main-color);
    -webkit-clip-path: ellipse(80% 100% at 50% 0%);
        clip-path: ellipse(80% 100% at 50% 0%);
}

.pricing .plan-item h3 {
    color: var(--white);
    font-size: 3.5rem;
    font-weight: 500;
    line-height: 1.4;
    padding-bottom: 1rem;
}

.pricing .plan-item h3 span {
    color: transparent;
    -webkit-text-stroke: 1px var(--white);
}

.pricing .plan-item .icon{
    width: 7rem;
    height: 7rem;
    margin: 0 auto;
    font-size: 3.5rem;
    padding: 1rem;
    -webkit-transform: translateY(-4rem);
        transform: translateY(-4rem);
    margin-bottom: -2.5rem;
    background: var(--white);
    color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pricing .plan-item .price {
    color: var(--white);
    font-size: 5rem;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pricing .plan-item .price p {
    color: var(--light-grey);
    margin-bottom: 0.5rem;
}

.pricing .plan-item ul{ 
    padding: 1.5rem 0rem;
    list-style: none;
    margin: 2rem 0;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.3);
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.3);
}
    
.pricing .plan-item ul li{
    padding: 0.8rem 0;
    font-size: 1.8rem;
    color: var(--light-grey);
}

/*----- 6- Work Process -----*/
.process .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
}

.process-item{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    text-align: center;
    overflow: hidden;
    padding: 4rem 2rem;
    background-color: var(--black);
    border-radius: var(--border-radius-2);
}

.process-item .intro {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.process-item h6 {
    width: 8rem;
    height: 8rem;
    font-size: 3.5rem;
    padding: 1.5rem 2rem;
    font-weight: 900;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background-color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.process-item i {
    font-size: 5rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    -webkit-transform: translateX(-2rem);
        transform: translateX(-2rem);
}

.process-item h3{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding: 1rem 0;
}

.process-item p{
    color: var(--light-grey);
}

/*----- 7- Not Found ------*/
.not-found {
    text-align: center;
}

.not-found img {
    width: 50rem;
}

.not-found h2 {
    font-size: 3rem;
    margin: 1.5rem 0;
}

.not-found .btn {
    margin-top: 1.5rem;
}

/*----- 8- Privacy Policy -----*/
.policy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3rem;
}

.policy .policy-tab-buttons {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
    flex: 1 1 15rem;
    overflow: hidden;
    border-left: 0.5rem solid var(--black);
}

.policy .category {
    display: block;
    padding: 2rem 2.5rem;
    font-size: 1.7rem;
    color: var(--white);
    background: var(--main-color);
    font-weight: 500;
    margin-bottom: 0.5rem;
    border-top-right-radius: var(--border-radius-2);
    border-bottom-right-radius: var(--border-radius-2);
}

.policy .category:hover {
    background-color: var(--accent-color);
}

.policy .category:last-child {
    margin-bottom: 0%;
}

.policy .policy-tabs {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 70rem;
    flex: 1 1 70rem;
}

.policy-item {
    margin-bottom: 1.5rem;
}

.policy-item h3 {
    padding-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    font-size: 2.5rem;
    color: var(--black);
}

.policy-item p {
    font-size: 1.5rem;
    line-height: 2;
    color: var(--grey);
}

.policy-item ul {
    list-style: none;
    padding-left: 1rem;
}

.policy-item ul li {
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.policy-item ul i {
    color: var(--main-color);
    font-size: 1.2rem;
    height: 1.8rem;
    width: 1rem;
    padding-top: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/*----- 9- Terms & Condition -----*/


/*----- 10- Careers -----*/
.career{
    padding: 0;
}

.career .career-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
    padding: 3rem 5%;
}

.career .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
}

.career-intro .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.career-intro .heading h2{
    text-align: left;
}

.career .content p{
    padding-bottom: 1rem;
}

.career .career-features{
    padding-top: 0.5rem;
}

.career .career-features li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding-bottom: 1rem;
    font-size: 1.6rem;
}

.career .career-features i{
    color: var(--main-color);
}

.career .career-features span{
    color: var(--grey);
}

.career .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
    height: 45rem;
    overflow: hidden;
    border-radius: var(--border-radius-2);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.career-benefits{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(30rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    gap: 3rem;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.7)), url("../../assets/images/Background/Career.jpg");
    background:         linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.7)), url("../../assets/images/Background/Career.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    padding: 6rem 5%;
    text-align: center;
}

.career-benefits .benefit-item i{
    height: 8rem;
    width: 8rem;
    font-size: 3rem;
    margin: 0rem auto;
    margin-bottom: 1.5rem;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.career-benefits .benefit-item h3{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.career-benefits .benefit-item p{
    color: var(--light-grey);
}

.career-positions{
    padding: 3rem 5%;
}

.career-positions .box-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.position-item{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 40rem;
        flex: 1 1 40rem;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-top: var(--custom-border);
    border-radius: var(--border-radius-2);
    padding: 3rem;
    padding-top: 6rem;
    gap: 2rem;
    position: relative;
    margin-top: 2rem;
}

.position-item > span{
    position: absolute;
    top: 0%;
    left: 3rem;
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--white);
    background-color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    width: 7rem;
    height: 7rem;
    -webkit-transform: translateY(-2.2rem);
        transform: translateY(-2.2rem);
    text-align: center;
}

.position-item h3{
    font-size: 2.5rem;
    color: var(--black);
}

.position-item h3:hover{
    color: var(--main-color);
}

.position-item .details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
    margin: 2rem 0;
}

.position-item h5{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.position-item h5 i{
    font-size: 1.6rem;
    color: var(--main-color);
}

.position-item h5 span{
    font-size: 1.8rem;
    font-weight: 400;
    color: var(--grey);
}

/*----- 11- Career Single -----*/



/*----- 12- Career Form -----*/


/*----- 13- Get A Quote -----*/



/*----- 14- Clients -----*/
.clients .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 3rem;
}

.client-item{
    width: 20rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

/*------------------------------ (03)-Pages (End) ------------------------------*/



/*------------------------------ (04)-Service (Start) ------------------------------*/
/*==================================================
  SERVICES - FINAL PREMIUM VERSION
==================================================*/

/* container */
.services .swiper-slide{
    height: auto;
}

/* remove estilo padrão do link */
.services a{
    text-decoration: none;
    color: inherit;
    display: block;
}

/* card */
.service-item{
    position: relative;
    background: #ffffff;

    border-radius: 1.8rem;
    overflow: hidden;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.08),
        0 2px 10px rgba(0,0,0,0.04);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;

    cursor: pointer;
}

/* hover */
.service-item:hover{
    transform: translateY(-10px);

    box-shadow:
        0 20px 45px rgba(0,0,0,0.12),
        0 5px 15px rgba(0,0,0,0.05);
}

/* imagem */
.service-item img{
    width: 100%;
    height: 24rem;

    object-fit: cover;
    display: block;

    transition: transform 0.5s ease;
}

/* zoom suave */
.service-item:hover img{
    transform: scale(1.04);
}

/* conteúdo */
.service-item .content{
    position: relative;

    background: #fff;

    padding:
        4.5rem
        2rem
        2.5rem;

    text-align: center;
}

/* ícone */
.service-item i{
    position: absolute;

    top: -3rem;
    left: 50%;

    transform: translateX(-50%);

    width: 6rem;
    height: 6rem;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #005f87,
        #0077aa
    );

    color: #fff;
    font-size: 2.2rem;

    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow:
        0 10px 25px rgba(0,95,135,0.30),
        0 3px 10px rgba(0,0,0,0.12);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

/* hover ícone */
.service-item:hover i{
    transform:
        translateX(-50%)
        scale(1.08);

    box-shadow:
        0 15px 30px rgba(0,95,135,0.40),
        0 5px 15px rgba(0,0,0,0.15);
}

/* título */
.service-item h3{
    font-size: 1.95rem;
    font-weight: 700;

    color: #111827;

    line-height: 1.35;

    margin-bottom: 1.2rem;

    transition: color 0.3s ease;
}

/* hover título */
.service-item:hover h3{
    color: var(--main-color);
}

/* descrição */
.service-item p{
    font-size: 1.45rem;
    line-height: 1.7;

    color: #6b7280;

    max-width: 28rem;
    margin: 0 auto;

    transition: color 0.3s ease;
}

/* hover descrição */
.service-item:hover p{
    color: #4b5563;
}

/* swiper espaço */
.service-slider{
    padding-bottom: 1rem;
}

/*==================================================
  RESPONSIVO
==================================================*/

@media (max-width: 991px){

    .service-item img{
        height: 22rem;
    }

    .service-item .content{
        padding:
            4.2rem
            1.8rem
            2.2rem;
    }

    .service-item h3{
        font-size: 1.8rem;
    }

    .service-item p{
        font-size: 1.4rem;
    }
}

@media (max-width: 768px){

    .service-item{
        border-radius: 1.5rem;
    }

    .service-item img{
        height: 20rem;
    }

    .service-item i{
        width: 5.5rem;
        height: 5.5rem;

        font-size: 2rem;
    }

    .service-item h3{
        font-size: 1.7rem;
    }

    .service-item p{
        font-size: 1.35rem;
        line-height: 1.6;
    }
}

@media (max-width: 450px){

    .service-item img{
        height: 18rem;
    }

    .service-item .content{
        padding:
            4rem
            1.5rem
            2rem;
    }

    .service-item h3{
        font-size: 1.6rem;
    }

    .service-item p{
        font-size: 1.3rem;
    }
}

/*----- 2- Service Single -----*/

/* Guidelines */
.service-single .guideline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1rem;
}

.service-single .guideline .service-gallery,
.service-single .guideline .box-container {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 27rem;
        flex: 1 1 27rem;
    padding: 0%;
}

.service-single .guideline a img {
    width: 100%;
    height: 25rem;
}

.service-single .guideline .btn {
    width: 100%;
    margin-top: 1rem;
}

/* Service Price */
.service-single .service-price {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(15rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
    gap: 1rem;
    padding-top: 2rem;
}

.service-single .price-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    padding: 2rem;
    font-size: 1.6rem;
    color: var(--light-grey);
    border-radius: var(--border-radius-2);
}

.service-single .price-item span {
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--main-color);
    margin-bottom: 0.5rem;
}

/* Service Faq */
.service-single .faq .accordion-container{
    padding-top: 0.5rem;
}

/*------------------------------ (04)-Service (End) ------------------------------*/



/*------------------------------ (05)-Project (Start) ------------------------------*/

/*----- 1- projects -----*/
.projects .tab-buttons{
    -webkit-box-pack: center; 
    -ms-flex-pack: center;
    justify-content: center;
}

.project-item{
    width: 33.3%;
    padding: 0.6rem;
}

.projects-content{
    height: 38rem;
    position: relative;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.project-item .content{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1rem;
    text-align: center;
}

.project-item .text {
    width: 100%;
    padding: 2rem 1rem;
    padding-top: 4.5rem;
    background: var(--black);
    border-radius: var(--border-radius-2);
    text-align: center;
}

.project-item h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
}

.project-item h3:hover {
    color: var(--main-color);
}

.project-item p{
    font-weight: 500;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--main-color);
    margin-top: 0.5rem;
}

.project-item .view{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--main-color);
    margin: 0 auto;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    width: 5rem;
    height: 5rem;
    padding: 1rem;
    -webkit-transform: translateY(3.5rem);
        transform: translateY(3.5rem);
}

.project-item a i{
    font-size: 2.2rem;
    color: var(--white);
}

.project-item .view:hover {
    background-color: var(--accent-color);
}

/*----- 2- projects Single -----*/


/*------------------------------ (05)-Project (End) ------------------------------*/



/*------------------------------ (06)-Blog (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/*==================================================
  BLOG / NOTÍCIAS - VERSÃO PREMIUM FINAL
==================================================*/

.blog{
    position: relative;
}

/* grid */
.blog .box-container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(38rem, 1fr));
    gap: 2.5rem;
}

/* ===== CARD ===== */
.blog-item{
    position: relative;

    overflow: hidden;

    border-radius: 2rem;

    background: #111;

    border: 1px solid rgba(255,255,255,0.06);

    transition: all 0.35s ease;

    box-shadow:
        0 12px 30px rgba(0,0,0,0.14);
}

/* hover premium */
.blog-item:hover{
    transform: translateY(-10px);

    border-color: rgba(0,119,182,0.25);

    box-shadow:
        0 25px 45px rgba(0,0,0,0.25),
        0 0 25px rgba(0,119,182,0.08);
}

/* ===== IMAGEM ===== */
.blog-item .image{
    position: relative;

    height: 38rem;

    overflow: hidden;
}

.blog-item .image img{
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.blog-item:hover .image img{
    transform: scale(1.05);
}

/* overlay */
.blog-item .content{
    position: absolute;

    inset: 0;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    padding: 2.2rem;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,0.92) 0%,
        rgba(0,0,0,0.65) 45%,
        rgba(0,0,0,0.15) 100%
    );
}

/* ===== DATA ===== */
.blog-item .date{
    width: 8.2rem;
    height: 8.2rem;

    background: var(--main-color);

    border-radius: 1.6rem;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    color: var(--white);

    font-weight: 700;

    line-height: 1;

    box-shadow:
        0 10px 25px rgba(0,119,182,0.28);

    backdrop-filter: blur(5px);
}

.blog-item .date span{
    font-size: 3rem;
    font-weight: 800;

    margin-bottom: 0.5rem;
}

.blog-item .date{
    font-size: 1.7rem;
    text-transform: lowercase;
}

/* ===== TEXTO ===== */
.blog-item .text{
    width: 100%;
}

/* título */
.blog-item .main-heading{
    display: block;

    color: var(--white);

    font-size: 2rem;
    font-weight: 700;

    line-height: 1.3;

    transition: 0.3s ease;

    text-shadow:
        0 3px 12px rgba(0,0,0,0.35);
}

.blog-item:hover .main-heading{
    color: #ffffff;
}

/* descrição */
.blog-item p{
    margin-top: 1.2rem;

    color: rgba(255,255,255,0.78);

    font-size: 1.6rem;

    line-height: 1.7;
}

/* remove underline */
.blog-item a{
    text-decoration: none;
}

/* efeito glow */
.blog-item::before{
    content: "";

    position: absolute;

    top: -30%;
    right: -20%;

    width: 30rem;
    height: 30rem;

    background: rgba(0,119,182,0.06);

    border-radius: 50%;

    filter: blur(90px);

    opacity: 0;

    transition: 0.4s ease;

    z-index: 1;
}

.blog-item:hover::before{
    opacity: 1;
}

/* garante conteúdo acima */
.blog-item .content{
    z-index: 2;
}

/* ===== RESPONSIVO ===== */

@media (max-width: 991px){

    .blog .box-container{
        grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    }

    .blog-item .image{
        height: 34rem;
    }

    .blog-item .main-heading{
        font-size: 2.5rem;
    }

}

@media (max-width: 768px){

    .blog-item .image{
        height: 30rem;
    }

    .blog-item .main-heading{
        font-size: 2.2rem;
    }

    .blog-item .date{
        width: 7rem;
        height: 7rem;
    }

    .blog-item .date span{
        font-size: 2.5rem;
    }

}

/*----- 02- Comments -----*/
.comment-item{
    padding-bottom: 1rem;
}

.comment-item:last-child{
    padding-bottom: 0;
}

.comment{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    gap: 2rem;
    padding-bottom: 2rem;
}

.comment .comment-image{
    height: 10rem;
    width: 10rem;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
}

.comment .comment-content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.comment .comment-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
}

.comment h3{
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--black);
}

.comment h6{
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--main-color);
}

.comment .text{
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    line-height: 1.5;
}

.comment .icon-item{
    display: inline-block;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: var(--border-radius-2);
    padding: 0.7rem 1.5rem;
    cursor: pointer;
}

.comment .icon-item:hover{
    background-color: var(--black);
}

.comment .icon-item i{
    color: var(--white);
    font-size: 1.5rem;
    padding-right: 0.5rem
}

.comment .icon-item span{
    color: var(--white);
    font-size: 1.6rem;
}

.comment.reply{
    margin-left: 12rem;
}

.comment.reply .comment-content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
}

/*----- 03- Pages-No -----*/
.pages-no{
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2rem;
}

.pages-no .container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.pages-no .item{
    color: var(--white);
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 5rem;
    width: 5rem;
    font-size: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--border-radius-3);
}

.pages-no .item.active,
.pages-no .item:hover{
    cursor: pointer;
    background-color: var(--main-color);
}

.pages-no .numbers{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

/*--------------- PAGES ---------------*/
.blog-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Blog Grid -----*/
.blog.grid{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.5rem;
}

.blog-container.grid .blog-items{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Blog List -----*/
.blog.list{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.blog-container.list .blog-item{
    width: 100%;
    margin-bottom: 1rem;
}

.blog-container.list .blog-item .image{
    height: 30rem;
}

/*----- 3- Blog Single -----*/
/*
1- Blog Info
2- Comments
3- Leave A Reply
*/

.blog-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

/*-- 1- Blog Info --*/ 
.blog-info .image{
    position: relative;
}

.blog-info .date {
    position: absolute;
    right: 2rem;
    top: 2rem;
    font-size: 2rem;
    color: var(--white);
    background: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    width: 8rem;
    height: 8rem;
    padding: 1.5rem;
    text-align: center;
}

.blog-info .date span {
    font-size: 2.5rem;
    font-weight: 600;
    font-family: none;
}

.blog-info .details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    padding-bottom: 2rem;
}

.blog-info .details h5{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-info .details h5 i{
    font-size: 1.8rem;
    color: var(--main-color);
}

.blog-info .details h5 span{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--grey);
}

.blog-info .important{
    padding: 2rem;
    font-size: 1.8rem;
    font-weight: 600;
    font-style: italic;
    line-height: 1.8;
    color: var(--light-grey) !important; 
    background-color: var(--main-color);
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center;
    border-radius: var(--border-radius-2);
}

.blog-info .important i{
    height: 7rem;
    width: 7rem;
    font-size: 3.2rem;
    color: var(--white);
    margin: 0 auto;
    margin-bottom: 1.5rem;
    background: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.blog-info .important .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
}

.blog-info .important .intro span{
    height: 0.2rem;
    width: 2rem;
    background-color: var(--white);
}

.blog-info .important .intro h6{
    font-size: 2rem;
    color: var(--white);
    font-style: normal;
}

.blog-info .end-details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding-top: 2rem;
    padding-bottom: 1rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
}
  
.blog-info .tags, 
.blog-info .share{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-info .tags span{
    color: var(--white);
    background-color: var(--main-color);
    border-radius: var(--border-radius-2);
    font-size: 1.6rem;
    padding: 0.8rem 2rem;
}

.blog-info .tags span:hover{
    background-color: var(--accent-color);
}

.blog-info .share h3{
    color: var(--black);
    font-size: 1.6rem;
    padding-right: 1rem;
}

.blog-info .share i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    color: var(--grey);
    font-size: 1.6rem;
}
  
.blog-info .share i:hover{
    color: var(--main-color);
    cursor: pointer;
}
   
/*-- 2- Comments --*/
.blog-single .comments{
    margin: 4rem 0;
    overflow: hidden;
} 

.blog-single .comments h4{  
    font-size: 2.5rem; 
    color: var(--black); 
    padding-bottom: 2rem;
} 

/*-- 3- Leave A Reply --*/
.blog-single .leave-reply h3{
    font-size: 2.5rem; 
    color: var(--black); 
    padding-bottom: 2rem;
}

/*------------------------------ (06)-Blog (End) ------------------------------*/



/*------------------------------ (07)-Shop (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Filter -----*/
.filter .box-container{
    padding-top: 4rem;
}

.filter .slider{
    height: 5px;
    position: relative;
    background: #ddd;
    border-radius: 5px;
}

.filter .slider .progress{
    height: 100%;
    left: 25%;
    right: 25%;
    position: absolute;
    border-radius: 5px;
    background: var(--main-color);
    -webkit-transition: none;
            transition: none;
}

.range-input{
    position: relative;
    -webkit-transition: none;
            transition: none;
}

.range-input input{
    position: absolute;
    width: 100%;
    height: 5px;
    top: -5px;
    background: none;
    pointer-events: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="range"]::-webkit-slider-thumb{
    height: 17px;
    width: 17px;
    border-radius: 50%;
    background: var(--main-color);
    pointer-events: auto;
    -webkit-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

input[type="range"]::-moz-range-thumb{
    height: 17px;
    width: 17px;
    border: none;
    border-radius: 50%;
    background: var(--main-color);
    pointer-events: auto;
    -moz-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

.price-wrap{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    color: #242424;
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 400;
    margin-bottom: 0px;
    margin-top: 3rem;
}

.filter .price-input{
    width: 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 0.1rem solid rgba(0, 0, 0, 0.2);
    padding: 0.5rem;
    border-radius: var(--border-radius-2);
}

.filter .price-input .field{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.2rem;
    width: 100%;
    height: 3rem;
}

.filter .field input{
    width: 100%;
    height: 100%;
    outline: none;
    font-size: 1.5rem;
    text-align: center;
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
            appearance: textfield;
    color: var(--black);
    background-color: transparent;
}

.filter input[type="number"]::-webkit-outer-spin-button,
.filter input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.filter .price-input .separator{
    width: 10rem;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/*----- 02- Shop Header -----*/
.shop .intro{
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox; 
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify; 
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center; 
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
    gap: 1rem;
    border-radius: var(--border-radius-2);
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 1rem 1.5rem;
}

.shop .intro .showing{
    font-size: 1.6rem;
    color: var(--grey);
}

.shop .intro .styles{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.shop .intro .styles a{
    font-size: 2rem;
    color: var(--black);
}

.shop .intro .styles a:hover{
    color: var(--main-color);
}

.shop .intro .sorting-type label{
    font-size: 1.6rem;
    color: var(--black);
    margin-right: 0.5rem;
}

.shop .intro .sorting-type select{
    font-size: 1.4rem;
    color: var(--grey);
    background-color: transparent;
    border: var(--border);
    padding: 1rem;
}

/*----- 03- Quantity Box -----*/
.quantity.buttons_added {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #ccc;
    border-radius: var(--border-radius-2);
    overflow: hidden;
    height: 4rem;
    width: 12rem;
    margin: 0 auto;
}

.quantity.buttons_added .minus,
.quantity.buttons_added .plus {
    width: 4rem;
    color: var(--black);
    cursor:pointer;
    background-color: transparent;
}

.quantity.buttons_added .minus:hover,
.quantity.buttons_added .plus:hover {
    background: var(--main-color); 
    color: var(--white);
}

.quantity .input-text.qty {
    padding: 0 1rem;
    text-align: center;
    background-color: transparent;  
    border-right: 1px solid #ccc; 
    border-left: 1px solid #ccc; 
} 
  
.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; 
}
    
.quantity.buttons_added .minus:focus,
.quantity.buttons_added .plus:focus {
    outline: none; 
}

/*----- 04- product-item -----*/
.product-item{
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-2);
} 

.product-item .image {
    width: 100%;
    height: 25rem;
    position: relative;
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

.product-item .options{
    position: absolute;
    top: 0rem;
    left: 0rem;
    height: 100%;
    width: 100%;
    padding: 3rem 1.5rem;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.9));
        background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.9));
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    gap: 1rem;
    border-bottom: 0.2rem solid var(--main-color);
    border-radius: var(--border-radius-2);
    opacity: 0;
}

.product-item:hover .options{
    opacity: 1;
}

.product-item .options a{
    height: 4.5rem;
    width: 4.5rem;
    padding: 1rem;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
    scale: 1;
}

.product-item .options a:hover {
    background-color: var(--accent-color);
}

.product-item .content{
    padding: 2rem;
    text-align: center;
}

.product-item .rating i{
    font-size: 1.4rem;
    padding-bottom: 0.5rem;
    color: var(--main-color);
}

.product-item h3{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--black);
    padding-bottom: 0.5rem;
}

.product-item h3:hover{
    color: var(--main-color);
}

.product-item p{
    padding-bottom: 1rem;
}

.product-item .price{
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
}

.product-item .price span{ 
    font-size: 1.5rem;
    font-weight: 400;
    text-decoration: line-through;
    color: var(--grey);
    padding-left: 0.2rem;
}

/*----- 05- Shop-Title -----*/
.shoplist-title{
    background-color: var(--main-color);
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 1.5rem;
    margin-bottom: 1rem;
}

.shoplist-title h3{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 10rem;
        flex: 1 1 10rem;
    font-size: 2rem;
    text-align: center;
}

.shoplist-title h3.product-heading{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: left;
}

/*----- 06- Cart-Summary -----*/
.summary-list{
    padding-top: 1rem;
} 

.summary-item{
    display: -webkit-box;
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 1.5rem;
    font-size: 2rem;
    color: var(--black); 
} 

.summary-item .name{
    font-weight: 600;
}

.summary-item .value{
    font-weight: 500;
    color: var(--main-color);
}

/*----- 07- Radio Button -----*/
.payment input:checked + label, 
.payment label:hover{ 
    color: var(--main-color);
}
  
.payment input[type="radio"] {
    position: absolute;
    opacity: 0;
}
  
.payment input[type="radio"] + 
.radio-label:before {
    content: '';
    background: #f4f4f4;
    border-radius: 100%;
    border: 0.1rem solid var(--grey);
    display: inline-block;
    width: 1.6rem;
    height: 1.6rem;
    position: relative;
    top: 0;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
    -webkit-transition: all 250ms ease;
            transition: all 250ms ease;
}
  
.payment input[type="radio"]:checked + 
.radio-label:before {
    background-color: var(--main-color);
    -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
            box-shadow: inset 0 0 0 4px #f4f4f4;
    outline: none;
    border-color: var(--main-color);
}

/*----- 08- Account-Form -----*/
.account-form{
    max-width: 45rem;
    padding: 5rem;
    background: var(--black);
    border-top: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    margin: 0rem auto;
    text-align: center;
    position: relative;
}

.account-form input:-webkit-autofill,
.account-form input:-webkit-autofill:hover,
.account-form input:-webkit-autofill:focus,
.account-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}
  
.account-form h3{ 
    font-size: 3.5rem;
    line-height: 1.3;
    font-weight: 500;
    padding-bottom: 1.5rem;
    color: var(--white);
    text-transform: uppercase;
}

.account-form .box{
    width: 100%;
    font-size: 1.6rem;
    color: var(--white);
    background-color: transparent;
    border: 0.15rem solid var(--white);
    padding: 1.2rem;
    text-transform: none;
    margin: 0.7rem 0;
}

.account-form .box::-webkit-input-placeholder{
    
    color: var(--white);
}
.account-form .box::-moz-placeholder{
    
    color: var(--white);
}
.account-form .box:-ms-input-placeholder{
    
    color: var(--white);
}
.account-form .box::placeholder{
    
    color: var(--white);
}

.account-form .box:focus{
    border-color: var(--main-color);
}

.account-form p{
    padding-top: 2rem;
    color: var(--white);
    text-align: center;
    padding-bottom: 1rem;
}

.account-form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1.5rem;
}

.account-form .link{
    font-size: 1.5rem;
    color: var(--main-color);
}

.account-form .link:hover{
    text-decoration: underline;
}

.account-form .checkbox-label {
    color: var(--grey);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    line-height: 1.4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
  
.account-form .checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}
  
.account-form .checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}
  
.account-form .checkbox-label input:checked ~ 
.checkbox-indicator {
    background: var(--main-color);
    outline-color: var(--main-color);
}
  
.account-form .checkbox-indicator:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 0.2rem;
    width: 0.3rem;
    height: 0.8rem;
    border: solid var(--light-grey);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    display: none;
}

.account-form .checkbox-label input:checked ~ 
.checkbox-indicator:after {
    display: initial;
}

/*--------------- PAGES ---------------*/
.shop{
    display: -webkit-box; 
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.shop .shop-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Shop Grid -----*/
.shop .product-container.grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Shop Standard -----*/
.shop .product-container.list{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
}

.shop .product-container.list .product-item{
    width: 100%;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.shop .product-container.list .product-item .image{
    height: 100%;
}

.shop .product-container.list .product-item img{
    height: 100%;
}

.shop .product-container.list .product-item .content{
    text-align: left;
    padding: 1.5rem;
}

/*----- 3- Product Single -----*/
.product-single .product-des{
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 2rem;
    margin-bottom: 3.5rem;
    border-radius: var(--border-radius-2);
}

.product-single .product-des .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center; 
    -ms-flex-pack: center;
    justify-content: center; 
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 2rem;
}

.product-single .product-des .box-container .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-single .product-des .box-container .image-container{
    max-width: 50rem;
}

.product-single .product-des .box-container .image-container .main{
    width: 100%;
    height: 40rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
    overflow: hidden;
}

.product-single .product-des .box-container .image .change-btns{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(8rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.product-single .product-des .box-container .image .change-btns img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    cursor: pointer;   
    border-radius: var(--border-radius-2);
}

.product-single .product-des .image .change-btns img:hover,
.product-single .product-des .image .change-btns img.active{
    border: 0.4rem solid var(--main-color);
}

.product-single .product-des .box-container .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 45rem;
        flex: 1 1 45rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-single .product-des .box-container .content .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 1rem;
}

.product-single .product-des .box-container .content .intro .rating{
    color: var(--main-color);
    font-size: 1.6rem;
}

.product-single .product-des .box-container .content .intro span{
    color: var(--black);
    font-size: 2rem;
    font-weight: 500;
    padding-left: 1rem;
}

.product-single .product-des .box-container .content h3{
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--black);
    padding-bottom: 1rem;
}

.product-single .product-des .box-container .content .price{
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
}

.product-single .product-des .box-container .content .price span{
    color: var(--grey);
    font-weight: lighter;
    text-decoration: line-through;
}

.product-single .product-des .box-container .content p{
    padding: 2rem 0;
    margin: 2rem 0;
    font-weight: 400;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.product-single .box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
}

.product-single .qty{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0;
    gap: 1rem;
    width: 15rem;
}

.product-single .product-des .box-container .content .btn{
    margin: 2rem 0;
}

.product-single .categories,
.product-single .tags,
.product-single .color,
.product-single .size {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 0;
}

.product-single .qty h4,
.product-single .categories h4,
.product-single .tags h4,
.product-single .color h4,
.product-single .size h4 {
    font-size: 1.8rem;
    color: var(--black);
    font-weight: 600;
}

.product-single .categories a,
.product-single .tags a{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--main-color);
    padding: 0 0.5rem;
}

.product-single .categories a:hover,
.product-single .tags a:hover {
    color: var(--black);
}

.product-single .color a {
    display: inline-block;
    height: 1.2rem;
    width: 1.2rem;
    margin: 0 0.3rem;
    border-radius: var(--border-radius-2);
}

.product-single .color a.first {
    margin-left: 1rem;
    background-color: #000;
}

.product-single .color a.second {
    background-color: #666;
}

.product-single .color a.third {
    background-color: #015880;
}

.product-single .color a.fourth {
    background-color: #8B5DFF;
}

.product-single .color a.fifth{
    background-color: #fdb712;
}

.product-single .color a.sixth {
    background-color: #62c2ac;
}

.product-single .size a {
    display: inline-block;
    padding: 0.5rem 1rem;
    margin: 0 0.5rem;
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--black);
    border-radius: var(--border-radius-2);
    border: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.product-single .size a:hover {
    color: var(--white);
    background-color: var(--main-color);
    border-color: var(--main-color);
}

/*-- Related Products --*/
.related-items .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

/*-- Product Addtional Information --*/
.product-single .tab-info{
    margin-top: 4rem;
}

.product-info .additional-info .item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    padding-bottom: 1rem;
}

.product-info .additional-info h3{
    width: 20rem;
    font-size: 1.8rem;
    color: var(--black);
}

.product-info .additional-info span{
    font-size: 1.6rem;
    color: var(--grey);
}

.product-info h2{
    font-size: 3rem; 
    color: var(--black); 
    padding-bottom: 1rem;
}

.product-info .reviews{
    margin-bottom: 2rem;
} 

.product-info .leave-reply{
    width: 60rem;
} 

/*----- 4- Wishlist  ------*/
.wishlist-container{
    overflow-x: auto;
    overflow-y: hidden; 
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.wishlist-container::-webkit-scrollbar{
    height: 0.8rem;
}

.wishlist .container{
    min-width: 90rem;
}

.wishlist .box-container{
    padding: 0rem 1rem;
}

.wishlist-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.wishlist-item:last-child{
    border: none;
}

.wishlist-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
}

.wishlist-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem; 
        flex: 1 1 30rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.wishlist-item img{
    height: 8rem;
    width: 8rem;
    background-color: #f7f7f7;
    border-radius: var(--border-radius-2);
}

.wishlist-item .name{
    color: var(--black);
    font-weight: 600;
}

.wishlist-item .price{
    color: var(--grey);
    font-weight: 500;
}

.wishlist-item .status.in{
    color: green;
}

.wishlist-item .status.out{
    color: red;
}

.wishlist-item .action{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.wishlist-item a{
    font-size: 2rem;
    cursor: pointer;
}

.wishlist-item a:hover{
    color: var(--main-color);
}

.wishlist-item .delete{
    color: red;
}

.wishlist-item .cart{
    color: var(--black);
}

/*----- 5- Cart  ------*/
.shopping-cart{
    margin-bottom: 2rem;
    overflow-x: auto;
    overflow-y: hidden; 
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-top-left-radius: var(--border-radius-2);
    border-top-right-radius: var(--border-radius-2);
}

.cart .container{
    min-width: 90rem;
}

.shopping-cart::-webkit-scrollbar{
    height: 0.8rem;
}

.cart .box-container{
    padding: 0rem 1rem;
}

.cart-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.cart-item:last-child{
    border: none;
}

.cart-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 400;
}

.cart-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem; 
        flex: 1 1 25rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.cart-item img{
    height: 8rem;
    width: 8rem;
    background-color:#f7f7f7;
    border-radius: var(--border-radius-2);
}

.cart-item .name{
    color: var(--black);
    font-weight: 600;
}

.cart-item .price,
.cart-item .total{
    color: var(--grey);
}

.cart-item .icon{
    font-size: 2rem;
    cursor: pointer;
    color: red;
}

.cart-item .icon:hover{
    color: var(--main-color);
}

/*-- 2- Cart Total --*/
.cart .cart-summary{
    width: 40rem;
    padding: 1rem;
    margin-left: auto;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

.cart .cart-summary .btn{
    width: 100%;
    text-align: center;
    margin-top: 1rem;
}

/*----- 6- Checkout -----*/
/*
1- Payment Method
2- Cart Total
*/

.checkout{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 1.5rem;
}

.checkout .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.checkout h2{
    font-size: 3.5rem;
}

.checkout h2:before{
    left: 0;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
}

.checkout .box-1{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55rem;
        flex: 1 1 55rem;  
}

.checkout .box-2{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.checkout-item{
    margin-bottom: 1.5rem;
    padding: 2rem;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.checkout .box-1 .checkout-item:last-child{
    margin-bottom: 0;   
}

/*-- 1- Payment Method --*/
.payment-methods .payment{
    margin-bottom: 1.5rem;
}

.payment-methods .payment label{
    cursor: pointer;
    font-size: 2rem;
    font-weight: 500;
    color: var(--black);
    text-transform: uppercase;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.payment-body{ 
    display: none;
}

.payment-body.active{
    display: block;
}

.payment-methods .payment .payment-body p{
    font-size: 1.4rem;
    padding-top: 1rem;
}

.checkout .btn-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.checkout .btn{
    width: 100%;
    text-align: center;
}

/*----- 7- Login -----*/
.login form .info{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 2rem 0;
}
  
.login form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}
  
/*----- 8- Register -----*/
.register form .checkbox-label{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 2rem 0;
}
  
.register form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}

.register form label span{
    color: var(--main-color);
}

/*------------------------------ (07)-Shop (End) ------------------------------*/



/*------------------------------ (08)-Contact (Start) ------------------------------*/
.contact {
    padding: 0;
}

.contact .box-container{
    padding: 2rem 5%;
    position: relative;
}

.contact .box-container:before {
    content: "";
    position: absolute;
    bottom: 50%;
    left: 0%;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    width: 100%;
    height: 70%;
    z-index: -1;
    background-color: var(--main-color);
    -webkit-clip-path: polygon(0 20%, 100% 0%, 100% 80%, 0% 100%);
    clip-path: polygon(0 20%, 100% 0%, 100% 80%, 0% 100%);
}

.contact .box-container > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-2);
}

/*-- Contact Form --*/
.contact .heading {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.contact h2 {
    text-align: left;
    font-size: 3.5rem;
}

/*-- Contact Information --*/
.contact-info {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 35rem;
            flex: 1 1 35rem;
    padding: 3rem;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
}

.contact .contact-info .info-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.contact .contact-info .info-item .icon {
    width: 7rem;
    height: 7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
        clip-path: var(--custom-clip-path);
}

.contact .contact-info .info-item i {
    -webkit-text-stroke: 1.5px var(--white);
    color: transparent;
    font-size: 3rem;
}

.contact .contact-info .info-item h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--black);
    padding-bottom: 0.4rem;
}

.contact .contact-info .info-item p {
    color: var(--grey);
    line-height: 1.5;
}

.contact .contact-info .info-item p.gmail {
    text-transform: none;
}

/*-- Contact Form --*/
.contact form {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
    flex: 1 1 50rem;
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    padding: 3rem;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url(../../assets/images/Background/Contact.jpg);
        background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url(../../assets/images/Background/Contact.jpg);
}

.contact form .alert {
    font-size: 2rem;
    color: var(--main-color);
    padding-left: 1rem;
}

/*-- Google Map --*/
.contact .map {
    padding: 0 5%;
    padding-bottom: 2rem;
}

.contact iframe {
    width: 100%;
    min-height: 35rem;
    -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-2);
}

/*------------------------------ (06)-Contact (End) ------------------------------*/





/* =========================
   WHATSAPP FIXO - GAMENEST (FINAL)
   ========================= */

.gn-whatsapp-float {
  position: fixed;
  right: 18px;
  bottom: 88px;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

/* BOTÃO */
.gn-whatsapp-btn {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;

  display: flex;
  align-items: center;
  justify-content: center;

  position: relative;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);

  transition: transform .18s ease, box-shadow .18s ease;
}

/* CENTRALIZAÇÃO PERFEITA DO SVG */
.gn-whatsapp-btn svg {
  position: absolute;
  width: 30px;
  height: 30px;

  top: 50%;
  left: 50%;

  /* ajuste fino visual */
  transform: translate(-48%, -52%);
}

/* HOVER (PC) */
.gn-whatsapp-float:hover .gn-whatsapp-btn {
  transform: translateY(-3px) scale(1.04);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28);
}

/* CLICK */
.gn-whatsapp-float:active .gn-whatsapp-btn {
  transform: scale(0.96);
}

/* TOOLTIP (desktop) */
.gn-whatsapp-tooltip {
  position: absolute;
  right: 74px;
  top: 50%;
  transform: translateY(-50%);
  background: #111;
  color: #fff;
  font-size: 14px;
  padding: 10px 12px;
  border-radius: 10px;
  white-space: nowrap;

  opacity: 0;
  pointer-events: none;

  transition: opacity .18s ease, transform .18s ease;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
}

.gn-whatsapp-tooltip::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -6px;
  transform: translateY(-50%);
  border-width: 6px 0 6px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #111;
}

.gn-whatsapp-float:hover .gn-whatsapp-tooltip {
  opacity: 1;
  transform: translateY(-50%) translateX(-4px);
}

/* =========================
   ANIMAÇÃO SUAVE (CHAMA ATENÇÃO)
   ========================= */
.gn-whatsapp-btn {
  animation: gnPulse 2.5s infinite;
}


/* RODAPE */

.footer-grid{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
}

.footer-grid > div{
    padding:15px;
}

/* PC */
@media(min-width:992px){

    .footer-25{
        width:25%;
    }

}

/* Tablet */
@media(min-width:768px) and (max-width:991px){

    .footer-50{
        width:50%;
    }

}

/* Celular */
@media(max-width:767px){

    .footer-100{
        width:100%;
    }

}


.footer-grid{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:space-between;
}




/* ============================= */
/* ALERTS PREMIUM */
/* ============================= */

.alert{
    position: relative;
    padding: 22px 25px;
    margin-bottom: 25px;
    border-radius: 18px;
    overflow: hidden;

    backdrop-filter: blur(10px);

    font-size: 15px;
    font-weight: 500;
    line-height: 1.7;

    box-shadow:
    0 10px 30px rgba(0,0,0,0.08),
    inset 0 1px 0 rgba(255,255,255,0.15);

    transition: 0.3s ease;
}

.alert:hover{
    transform: translateY(-2px);
    box-shadow:
    0 14px 40px rgba(0,0,0,0.12),
    inset 0 1px 0 rgba(255,255,255,0.2);
}


/* Barra lateral brilhante */
.alert:before{
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:5px;
    height:100%;
    border-radius:10px;
}


/* Glow */
.alert:after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(
        135deg,
        rgba(255,255,255,0.15),
        rgba(255,255,255,0)
    );
    pointer-events:none;
}


/* ============================= */
/* SUCCESS */
/* ============================= */

.alert-success{
    background: linear-gradient(
        135deg,
        rgba(16,185,129,0.12),
        rgba(5,150,105,0.06)
    );

    border:1px solid rgba(16,185,129,0.25);

    color:#065f46;
}

.alert-success:before{
    background:#10b981;
    box-shadow:0 0 20px #10b981;
}


/* ============================= */
/* ERROR */
/* ============================= */

.alert-error{
    background: linear-gradient(
        135deg,
        rgba(239,68,68,0.12),
        rgba(185,28,28,0.06)
    );

    border:1px solid rgba(239,68,68,0.25);

    color:#7f1d1d;
}

.alert-error:before{
    background:#ef4444;
    box-shadow:0 0 20px #ef4444;
}


/* ============================= */
/* WARNING */
/* ============================= */

.alert-warning{
    background: linear-gradient(
        135deg,
        rgba(245,158,11,0.12),
        rgba(217,119,6,0.06)
    );

    border:1px solid rgba(245,158,11,0.25);

    color:#92400e;
}

.alert-warning:before{
    background:#f59e0b;
    box-shadow:0 0 20px #f59e0b;
}


/* ============================= */
/* INFO */
/* ============================= */

.alert-info{
    background: linear-gradient(
        135deg,
        rgba(59,130,246,0.12),
        rgba(37,99,235,0.06)
    );

    border:1px solid rgba(59,130,246,0.25);

    color:#1e3a8a;
}

.alert-info:before{
    background:#3b82f6;
    box-shadow:0 0 20px #3b82f6;
}


.blog-empty{
    width:100%;
}

.alert-flex{
    display:flex;
    align-items:center;
    gap:15px;
}

.alert-icon i{
    font-size:2.4rem;
    color:#ef4444;
}

.alert-text{
    font-size:1.7rem;
    line-height:1.7;
}

