    *{
        margin:0;
        padding:0;
        box-sizing:border-box;
        }

        html{
        scroll-behavior:smooth;
        }

        body{
        font-family:'Poppins', sans-serif;
        background:#f5f1eb;
        color:#222;
        overflow-x:hidden;
        }

        header{
        position:fixed;
        top:0;
        left:0;
        width:100%;
        z-index:999;
        padding: 3px 10%;
        display:flex;
        align-items:center;
        justify-content:space-between;
        background:rgba(0,0,0,0.65);
        backdrop-filter:blur(8px);
        border-bottom:1px solid rgba(255,255,255,0.08);
        }

        .logo img{
        width:190px;
        object-fit: contain;
        }

        nav{
        display:flex;
        gap:35px;
        }

        nav a{
        color:#fff;
        text-decoration:none;
        font-size:16px;
        transition:.3s;
        font-weight:500;
        }

        nav a:hover{
        color:#b97a3d;
        }

        .hero{
        width:100%;
        min-height:100vh;
        background:
        linear-gradient(to right, rgba(0,0,0,0.92) 35%, rgba(0,0,0,0.45)),
        url('assets/Cama de madeira/cama2.jpg');
        background-size:cover;
        background-position:center;
        display:flex;
        align-items:center;
        padding:120px 7%;
        }

        .hero-content{
        max-width:650px;
        color:#fff;
        margin-top: 50px;
        }

        .hero-logo{
        width:240px;
        margin-bottom:30px;
        }

        .hero h1{
        font-family:'Cormorant Garamond', serif;
        font-size:78px;
        line-height:1.05;
        margin-bottom:25px;
        font-weight:600;
        }

        .hero span{
        color:#b97a3d;
        }

        .hero p{
        font-size:20px;
        color:#ddd;
        line-height:1.9;
        margin-bottom:40px;
        }

        .btn{
        display:inline-flex;
        align-items:center;
        gap:12px;
        background:#b97a3d;
        color:#fff;
        text-decoration:none;
        padding:18px 38px;
        border-radius:8px;
        transition:.3s;
        font-weight:600;
        }

        .btn:hover{
        transform:translateY(-4px);
        background:#9d622b;
        }

        section{
        padding:110px 7%;
        }

        .about{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:70px;
        align-items:center;
        }

        .about small{
        color:#b97a3d;
        letter-spacing:3px;
        font-weight:600;
        text-transform:uppercase;
        }

        .about h2{
        font-family:'Cormorant Garamond', serif;
        font-size:65px;
        line-height:1.1;
        margin:20px 0;
        color:#2a1a10;
        }

        .about p{
        color:#666;
        line-height:2;
        font-size:18px;
        margin-bottom:20px;
        }

        .about img{
        width:100%;
        border-radius:25px;
        box-shadow:0 20px 40px rgba(0,0,0,0.15);
        }

        .services-title{
        text-align:center;
        margin-bottom:70px;
        }

        .services-title h2{
        font-family:'Cormorant Garamond', serif;
        font-size:60px;
        color:#2a1a10;
        }

        .services-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
        gap:30px;
        }

        .card{
        background:#fff;
        padding:40px;
        border-radius:22px;
        transition:.4s;
        box-shadow:0 10px 30px rgba(0,0,0,0.08);
        }

        .card:hover{
        transform:translateY(-10px);
        }

        .card i{
        font-size:42px;
        color:#b97a3d;
        margin-bottom:25px;
        }

        .card h3{
        margin-bottom:18px;
        color:#2a1a10;
        font-size:26px;
        }

        .card p{
        color:#666;
        line-height:1.8;
        }

        .portfolio-categories{
        display:flex;
        gap:15px;
        flex-wrap:wrap;
        justify-content:center;
        margin-bottom:60px;
        }

        .portfolio-categories button{
        border:none;
        background:#fff;
        padding:14px 24px;
        border-radius:40px;
        cursor:pointer;
        transition:.3s;
        font-weight:500;
        border:1px solid rgba(0,0,0,0.08);
        font-family:'Poppins', sans-serif;
        }
        
        /* Menu Mobile Styles */
        .menu-btn {
        display: none;
        color: #fff;
        font-size: 26px;
        cursor: pointer;
        transition: 0.3s;
        }

        .mobile-menu {
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        height: 100vh;
        background: rgba(17, 17, 17, 0.98);
        backdrop-filter: blur(10px);
        z-index: 10000;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        transition: 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
        }

        .mobile-menu.active {
        right: 0;
        }

        .mobile-menu .close-btn {
        position: absolute;
        top: 30px;
        right: 7%;
        color: #fff;
        font-size: 35px;
        cursor: pointer;
        }

        .mobile-nav-links {
        display: flex;
        flex-direction: column;
        gap: 30px;
        text-align: center;
        }

        .mobile-nav-links a {
        color: #fff;
        text-decoration: none;
        font-size: 24px;
        font-weight: 500;
        transition: 0.3s;
        }

        .mobile-nav-links a:hover {
        color: #b97a3d;
        }

        .portfolio-categories button:hover,
        .portfolio-categories .active{
        background:#b97a3d;
        color:#fff;
        }

        .portfolio-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
        gap:30px;
        }

        .portfolio-card{
        position:relative;
        overflow:hidden;
        border-radius:24px;
        height:480px;
        box-shadow:0 15px 35px rgba(0,0,0,0.12);
        }

        .portfolio-card img{
        width:100%;
        height:100%;
        object-fit:cover;
        transition:.7s;
        }

        .portfolio-card:hover img{
        transform:scale(1.08);
        }

        .portfolio-overlay{
        position:absolute;
        inset:0;
        background:linear-gradient(
            to top,
            rgba(0,0,0,0.92),
            rgba(0,0,0,0.2)
        );

        display:flex;
        flex-direction:column;
        justify-content:flex-end;
        padding:35px;
        }

        .portfolio-overlay small{
        color:#d6a36a;
        letter-spacing:2px;
        margin-bottom:10px;
        text-transform:uppercase;
        font-size:13px;
        font-weight:600;
        }

        .portfolio-overlay h3{
        color:#fff;
        font-size:34px;
        font-family:'Cormorant Garamond', serif;
        margin-bottom:15px;
        }

        .portfolio-text{
        color:#ddd;
        line-height:1.8;
        font-size:15px;
        }

        .portfolio-buttons{
        display:flex;
        gap:12px;
        margin-top:25px;
        flex-wrap:wrap;
        }

        .category-btn{
        background:rgba(255,255,255,0.12);
        border:1px solid rgba(255,255,255,0.2);
        color:#fff;
        text-decoration:none;
        padding:12px 20px;
        border-radius:8px;
        transition:.3s;
        font-size:14px;
        backdrop-filter:blur(4px);
        }

        .category-btn:hover{
        background:#fff;
        color:#111;
        }

        .whatsapp-btn{
        background:#25d366;
        color:#fff;
        text-decoration:none;
        padding:12px 20px;
        border-radius:8px;
        display:flex;
        align-items:center;
        gap:8px;
        transition:.3s;
        font-size:14px;
        font-weight:600;
        }

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

        footer{
        background:#111;
        color:#fff;
        padding:70px 7% 30px;
        }

        .footer-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
        gap:40px;
        }

        .footer-logo img{
        width: 245px;
        margin-bottom: -25px;
        }

        footer h3{
        margin-bottom:20px;
        color:#b97a3d;
        }

        footer p,
        footer a{
        color:#ccc;
        text-decoration:none;
        line-height:2;
        }

        .social a{
        display:block;
        margin-bottom:10px;
        transition:.3s;
        }

        .social a:hover{
        color:#fff;
        transform:translateX(5px);
        }

        .copy{
        margin-top:50px;
        border-top:1px solid #333;
        padding-top:25px;
        text-align:center;
        color:#777;
        }

        .whatsapp{
        position:fixed;
        bottom:25px;
        right:25px;
        width:65px;
        height:65px;
        border-radius:50%;
        background:#25d366;
        display:flex;
        align-items:center;
        justify-content:center;
        color:#fff;
        font-size:30px;
        text-decoration:none;
        z-index:999;
        box-shadow:0 10px 25px rgba(0,0,0,0.2);
        }

        @media(max-width:980px){

        nav{
            display:none;
        }
        
        .menu-btn {
            display: block;
        }

        .hero h1{
            font-size:52px;
        }

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

        }

        @media(max-width:768px){

        .hero{
            padding-top:160px;
        }

        .hero h1{
            font-size:44px;
        }

        .about h2,
        .services-title h2{
            font-size:42px;
        }

        .hero-logo{
            width:180px;
        }

        }


        .modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5); /* Fundo escuro semi-transparente */
    }

    /* Caixa do modal */
    .modal-conteudo {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    }

    /* Botão de fechar */
    .fechar {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    }

    .fechar:hover, .fechar:focus {
    color: black;
    cursor: pointer;
    }

    /* Estilização para o Modal de Adegas */
    .modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 1000;
    align-items: center;
    justify-content: center;
    padding: 20px;
    }
    .adega-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.85);
    backdrop-filter: blur(5px);
    }
    .adega-modal-content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #fff;
    width: 100%;
    max-width: 1100px;
    max-height: 95vh;
    overflow-y: auto;
    border-radius: 15px;
    padding: 20px;
    z-index: 1001;
    }

    @media (min-width: 768px) {
    .adega-modal-content {
        padding: 40px;
        border-radius: 20px;
    }
    }

    .adega-info {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #eee;
    }

    .adega-main-image {
    width: 100%;
    }

    #currentImage {
    max-width: 100%;
    height: auto;
    }

    .swiper-button-next, 
    .swiper-button-prev {
    color: #b97a3d; /* Cor do seu tema */
    z-index: 1010;
    background: rgba(255,255,255,0.8);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    &::after { font-size: 30px; font-weight: bold; }
    }

    .swiper {
    width: 100%;
    height: 300px;
    }

    @media (min-width: 768px) {
    .swiper {
        height: 500px;
    }
    }

    .swiper-slide {
        display: flex;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        position: relative;
        background: #fff; /* Garante fundo branco caso a imagem seja menor */
    }

    .swiper-img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    }

    /* Estilos de Filtragem e Animação */
        .portfolio-card.hidden {
        display: none;
        }

        .portfolio-card.reveal {
        animation: revealItem 0.6s ease-out forwards;
        }

        @keyframes revealItem {
        0% { opacity: 0; transform: scale(0.9) translateY(20px); }
        100% { opacity: 1; transform: scale(1) translateY(0); }
        }

        /* Efeito de destaque temporário (borda) */
        .portfolio-card.highlight-active {
        outline: 5px solid #b97a3d;
        outline-offset: 8px;
        z-index: 10;
        transition: outline 0.3s ease;
        }