/* ==================================================
   THEME – CONSULTE E COMPRE
   Baseado em Bootstrap 5.3 (CSS Variables)
================================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* ------------------------------
   CORES DA MARCA
------------------------------ */
:root {
    --bs-font-sans-serif: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    /* Brand */
    --brand-primary: #E5C10E;
    --brand-secondary: #F25C5C;
    --brand-accent: #FFEAEA;

    /* Neutros */
    --brand-light: #f8f9fa;
    --brand-dark: #0b1320;

    /* Texto */
    --brand-text: #212529;
    --brand-muted: #6c757d;

    /* Links */
    --brand-link: var(--brand-light);
    --brand-link-hover: #cc5500;

    /* ------------------------------
        MAPEAMENTO BOOTSTRAP
    ------------------------------ */
    --bs-primary: var(--brand-primary);
    --bs-primary-rgba: rgba(229, 193, 14, 0.6);
    --bs-secondary: var(--brand-secondary);
    --bs-tertiary-rgba: rgba(255, 0, 0, 0.03);
    --bs-warning: var(--brand-accent);
    --bs-light: var(--brand-light);
    --bs-dark: var(--brand-dark);

    --bs-body-bg: #FFF;
    --bs-body-color: var(--brand-text);

    --bs-link-color: var(--brand-link);
    --bs-link-hover-color: var(--brand-link-hover);

    --swiper-theme-color: var(--brand-secondary);
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    box-shadow: none !important;
    outline: none !important;
}

.btn-outline-primary {
    --bs-btn-color: #fff;
    --bs-btn-border-color: var(--brand-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--brand-primary);
    --bs-btn-hover-border-color: var(--brand-primary);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--brand-primary);
    --bs-btn-active-border-color: var(--brand-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--brand-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--brand-primary);
    --bs-gradient: none;
}
/* ------------------------------
   DARK MODE (Bootstrap 5.3)
------------------------------ */
[data-bs-theme="dark"] {
    --bs-body-bg: var(--brand-secondary);
    --bs-body-color: #f8f9fa;

    --bs-primary: #ff9f43;
    --bs-secondary: #1b263b;

    --bs-link-color: #ffb703;
    --bs-link-hover-color: #ffd166;
}

/* ------------------------------
   UTILITÁRIOS DA MARCA
------------------------------ */
.border-brand-35 {
    border-width: 35px !important;
}
.border-primary {
    border-color: var(--brand-primary) !important;
}
.bg-brand {
    background-color: var(--brand-primary) !important;
}

.bg-brand-dark {
    background-color: var(--brand-secondary) !important;
}

.text-brand {
    color: var(--brand-primary) !important;
}

.text-brand-secondary {
    color: var(--brand-secondary) !important;
}

.text-brand-muted {
    color: var(--brand-muted) !important;
}

.bg-brand-muted {
    background: var(--brand-muted) !important;
}

.bg-primary-rgba {
    background: var(--bs-primary-rgba);
}

.bg-tertiary-rgba {
    background: var(--bs-tertiary-rgba);
}

/* ------------------------------
   GRADIENTES
------------------------------ */
.bg-brand-gradient {
    background: linear-gradient(135deg,
            var(--brand-primary),
            var(--brand-secondary));
}

/* ------------------------------
   BOTÕES (ajuste fino opcional)
------------------------------ */
.btn {
    transition: all 0.2s ease-in-out;
}

.btn:active {
    color: var(--brand-light) !important;
    background-color: var(--brand-secondary) !important;
}

.btn-primary {
    --bs-btn-bg: var(--brand-primary);
    --bs-btn-border-color: var(--brand-primary);
    --bs-btn-hover-bg: #e65f00;
    --bs-btn-hover-border-color: #e65f00;
}

.btn-secondary {
    --bs-btn-bg: var(--brand-secondary);
    --bs-btn-border-color: var(--brand-secondary);
    --bs-btn-hover-bg: #e65f00;
    --bs-btn-hover-border-color: #e65f00;
}

.btn-link {
    --bs-btn-color: var(--bs-dark);
}

.icon-link-transform {
    --bs-icon-link-transform: translate3d(0, -.125rem, 0);
}

.material-symbols-outlined {
    font-size: 20px;
    font-variation-settings:
        'FILL' 0,
        'wght' 400,
        'GRAD' 0,
        'opsz' 20;
    display: flex;
}

@media (min-width: 576px) {
    .material-symbols-outlined {
        font-size: 24px;
    }
}

/* Ícone Estrela + Cor Primária */
.material-symbols-outlined.icon-star {
    font-variation-settings: 'FILL' 1;
    color: var(--bs-primary);
}

.texto-2-colunas {
    column-count: 1;
    column-gap: 2rem; /* espaço entre as colunas */
}

@media (min-width: 576px) {
    .texto-2-colunas {
        column-count: 2;
    }
}

/* Limitador de linhas */
.truncate {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: var(--bs-line-clamp, 3);
    -webkit-line-clamp: var(--bs-line-clamp, 3);
}

.line-clamp-1 { --bs-line-clamp: 1; }
.line-clamp-2 { --bs-line-clamp: 2; }
.line-clamp-3 { --bs-line-clamp: 3; }
.line-clamp-4 { --bs-line-clamp: 4; }
.line-clamp-5 { --bs-line-clamp: 5; }
.line-clamp-6 { --bs-line-clamp: 6; }

@media (min-width: 576px) {
    .line-clamp-sm-1 { --bs-line-clamp: 1; }
    .line-clamp-sm-2 { --bs-line-clamp: 2; }
    .line-clamp-sm-3 { --bs-line-clamp: 3; }
    .line-clamp-sm-4 { --bs-line-clamp: 4; }
    .line-clamp-sm-5 { --bs-line-clamp: 5; }
    .line-clamp-sm-6 { --bs-line-clamp: 6; }
}

@media (min-width: 768px) {
    .line-clamp-md-1 { --bs-line-clamp: 1; }
    .line-clamp-md-2 { --bs-line-clamp: 2; }
    .line-clamp-md-3 { --bs-line-clamp: 3; }
    .line-clamp-md-4 { --bs-line-clamp: 4; }
    .line-clamp-md-5 { --bs-line-clamp: 5; }
    .line-clamp-md-6 { --bs-line-clamp: 6; }
}

@media (min-width: 992px) {
    .line-clamp-lg-1 { --bs-line-clamp: 1; }
    .line-clamp-lg-2 { --bs-line-clamp: 2; }
    .line-clamp-lg-3 { --bs-line-clamp: 3; }
    .line-clamp-lg-4 { --bs-line-clamp: 4; }
    .line-clamp-lg-5 { --bs-line-clamp: 5; }
    .line-clamp-lg-6 { --bs-line-clamp: 6; }
}

@media (min-width: 1200px) {
    .line-clamp-xl-1 { --bs-line-clamp: 1; }
    .line-clamp-xl-2 { --bs-line-clamp: 2; }
    .line-clamp-xl-3 { --bs-line-clamp: 3; }
    .line-clamp-xl-4 { --bs-line-clamp: 4; }
    .line-clamp-xl-5 { --bs-line-clamp: 5; }
    .line-clamp-xl-6 { --bs-line-clamp: 6; }
}

@media (min-width: 1400px) {
    .line-clamp-xxl-1 { --bs-line-clamp: 1; }
    .line-clamp-xxl-2 { --bs-line-clamp: 2; }
    .line-clamp-xxl-3 { --bs-line-clamp: 3; }
    .line-clamp-xxl-4 { --bs-line-clamp: 4; }
    .line-clamp-xxl-5 { --bs-line-clamp: 5; }
    .line-clamp-xxl-6 { --bs-line-clamp: 6; }
}

.w-md-100 {
    width: 100% !important;
}

/* Base */
body {
    font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    color: #212529;
}

/* Header */
.site-header .navbar-brand {
    font-size: 1.25rem;
}

.site-header .navbar-brand .logotipo-header {
    width: 120px;
}
@media (min-width: 576px) {
    .site-header .navbar-brand .logotipo-header {
        width: 176px;
    }
}

.site-header .navbar-nav {
    background: var(--brand-dark);
}
@media (min-width: 992px) {
    .site-header .navbar-nav {
        background: transparent;
    }
}

.nav-link {
    font-weight: 500;
    transition: all 0.3s ease-in-out;
}

.site-header .nav-link.text-dark {
    color: rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important;
}
@media (min-width: 992px) {
    .site-header .nav-link.text-dark {
        color: rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important;
    }
}

.nav-link:hover,
.nav-link.active,
.nav-link.text-dark.active {
    font-weight: 600;
    position: relative;
    color: var(--bs-primary) !important;
}

.nav-link.active::after {
    display: none;
}

/* HERO - BANNER */
#hero-home {
    height: 100dvh;
}

@media (min-width: 576px) {
    #hero-home {
        height: 100dvh;
    }
}

#hero-home .hero-title {
    font-size: clamp(2.2rem, 4vw, 4.5rem);
}

#hero-home .hero-subtitle {
    font-size: clamp(1.2rem, 4vw, 2.5rem);
}
.containerHero .btn-link {
    --bs-btn-color: var(--bs-light);
}

.containerHero input:focus,
.containerHero select:focus {
    border-color: transparent !important;
    box-shadow: none !important;
}

/* HERO-INTERNAS */
#hero-internas .hero-title {
    font-size: clamp(1.8rem, 4vw, 3.5rem);
}


#hero-internas .hero-parallax-img {
    will-change: transform;
    transition: transform 0.1s linear;
}


/* Footer */
footer .logotipo-footer {
    width: 250px;
}
@media (min-width: 576px) {
    footer .logotipo-footer {
        width: 320px;
    }
}

footer a:hover {
    text-decoration: underline;
}

/* Evita CLS */
img:not(.logotipo-header, .logotipo-footer) {
    max-width: 100%;
    height: auto;
    display: block;
}