/* --- Global Styles --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #0a0a0a; 
    font-family: 'Montserrat', sans-serif;
    color: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
    overflow-x: hidden;
}

a { text-decoration: none; transition: all 0.3s ease; }
ul { list-style: none; }

/* --- Monitor Container (Desktop) --- */
.monitor-container {
    width: 100%;
    max-width: 1200px;
    height: 95vh; 
    min-height: 700px;
    border-radius: 16px;
    border: 1px solid #00bef1; 
    box-shadow: 0 0 40px rgba(0, 190, 241, 0.15);
    padding: 25px 40px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    z-index: 1;
}

.bg-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, #151515 0%, #0a0a0a 100%);
    z-index: -1; 
}

.bg-overlay.bg-home {
    background: 
        linear-gradient(to bottom, rgba(10, 10, 10, 0.3) 0%, rgba(10, 10, 10, 0.8) 60%, #0a0a0a 100%),
        url('../img/background-luxo.png') top center/cover no-repeat;
}

/* --- Header & Navegação --- */
header {
    display: flex;
    justify-content: flex-end; 
    align-items: center;
    width: 100%;
    height: 60px;
}

.menu-toggle { display: none !important; }

.nav-pill {
    display: flex;
    gap: 10px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 8px 20px;
    border-radius: 50px;
    backdrop-filter: blur(10px);
}

.nav-pill a {
    color: #aaaaaa;
    font-size: 0.85rem;
    font-weight: 500;
    padding: 8px 14px;
    border-radius: 30px;
}

.nav-pill a:hover { color: #ffffff; }
.nav-pill a.active { color: #00bef1; background: rgba(0, 190, 241, 0.1); }

/* --- Main Content --- */
main {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    overflow-y: auto;
    width: 100%;
}
main::-webkit-scrollbar { display: none; }

.logo img {
    height: auto;
    width: 100%;
    max-width: 450px;
    max-height: 30vh;
    object-fit: contain;
}

.hero-text h1 { font-family: 'Playfair Display', serif; font-size: 3rem; line-height: 1.2; margin-bottom: 20px; }
.highlight { color: #00bef1; text-shadow: 0 0 20px rgba(0, 190, 241, 0.4); }
.subtitle { font-size: 1rem; letter-spacing: 3px; color: #888888; margin-bottom: 30px; }

/* Botões Gerais */
.cta-buttons { display: flex; justify-content: center; flex-wrap: wrap; gap: 20px; width: 100%; }
.btn-glow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 30px;
    border-radius: 50px;
    font-weight: 600;
    background: linear-gradient(135deg, #00bef1 0%, #007799 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 0 15px rgba(0, 190, 241, 0.4);
    transition: 0.3s;
    white-space: nowrap;
}

/* Footer */
footer { padding-top: 15px; border-top: 1px solid rgba(255, 255, 255, 0.1); margin-top: auto; width: 100%; }
.footer-content { display: flex; justify-content: center; align-items: center; gap: 20px; }
.footer-socials { display: flex; gap: 15px; border-left: 1px solid rgba(255, 255, 255, 0.1); padding-left: 20px; }
.footer-socials a { color: #666666 !important; font-size: 1.1rem; }

/* ========================================== */
/* VERSÃO MOBILE (AJUSTE BOTÕES PREENCHIDOS)  */
/* ========================================== */
@media (max-width: 768px) {
    /* CORREÇÃO DO SCROLL E CORTE NO TOPO */
    body { 
        padding: 10px; 
        align-items: flex-start; /* <-- ESTA É A CORREÇÃO CHAVE */
    }

    .monitor-container {
        padding: 20px 15px !important;
        height: auto !important;
        min-height: 92vh !important;
        width: 100% !important;
        margin: 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* LIMPEZA DE PADDING */
    .services-wrapper, .portfolio-wrapper, .about-wrapper, .contact-wrapper {
        padding-right: 0 !important; 
        padding-left: 0 !important;
        margin: 0 auto !important;
        width: 100% !important;
    }

    header {
        width: 100% !important;
        justify-content: flex-end !important;
        height: 40px !important;
        margin-bottom: 20px !important;
    }

    .menu-toggle { display: block !important; color: white !important; font-size: 1.8rem; }

    /* MENU SANDUÍCHE */
    .nav-pill {
        position: absolute !important;
        top: 50px !important;
        right: 0 !important;
        flex-direction: column !important;
        background: rgba(10, 10, 10, 0.98) !important;
        border: 1px solid rgba(0, 190, 241, 0.5) !important;
        width: 180px !important;
        padding: 10px !important;
        display: none;
        z-index: 1000;
    }
    .nav-pill.active-menu { display: flex !important; }

    .hero-text h1 { font-size: 1.6rem !important; }

    /* TABELAS */
    .price-table {
        display: table !important;
        width: 100% !important;
        table-layout: fixed !important;
        margin: 0 auto 20px auto !important;
    }
    .price-table th, .price-table td {
        font-size: 0.62rem !important;
        padding: 8px 2px !important;
        word-wrap: break-word !important;
    }

    /* AJUSTE PARA 3 COLUNAS (FOTOGRAFIA) */
    .price-table th:nth-child(1), .price-table td:nth-child(1) { width: 33% !important; }
    .price-table th:nth-child(2), .price-table td:nth-child(2) { width: 29% !important; }
    .price-table th:nth-child(3), .price-table td:nth-child(3) { width: 38% !important; white-space: nowrap; }

    /* AJUSTE PARA 4 COLUNAS (VÍDEO) */
    .price-table th:nth-child(1), .price-table td:nth-child(1) { width: 25% !important; }
    .price-table th:nth-child(2), .price-table td:nth-child(2) { width: 22% !important; }
    .price-table th:nth-child(3), .price-table td:nth-child(3) { width: 22% !important; }
    .price-table th:nth-child(4), .price-table td:nth-child(4) { width: 31% !important; }

    /* BOTÕES (PREENCHIDOS E PROPORCIONAIS) */
    .btn-glow { 
        width: 100% !important; 
        max-width: 260px !important; /* Reduzi a largura para o texto preencher melhor */
        justify-content: center !important;
        white-space: nowrap !important;
        font-size: 0.95rem !important; /* Aumentei o texto para ganhar presença */
        padding: 12px 10px !important; /* Reduzi a altura para ficar mais "justo" ao texto */
        gap: 8px !important;
    }

    .btn-glow i { font-size: 1rem !important; } /* Ícone ligeiramente maior também */
}