/* ============================================
   RESPONSIVE STYLES
   Mobile-first approach with breakpoints
   Desktop: > 800px | Mobile: ≤ 800px
   ============================================ */

/* ========== MOBILE/TABLET (max-width: 800px) ========== */
@media screen and (max-width: 800px) {
    :root {
        --spacing-3xl: 80px;
        --spacing-4xl: 100px;
    }
    
    h1 { font-size: 42px; }
    h2 { font-size: 36px; }
    h3 { font-size: 28px; }
    
    .container {
        padding: 0 var(--spacing-lg);
    }
    
    /* Header - Logo maior e centralizada */
    .nav {
        position: relative;
        padding: var(--spacing-sm) var(--spacing-md);
        min-height: 75px;
    }
    
    .nav__logo {
        order: 2;
        flex: 1;
        justify-content: center;
        max-width: 100%;
    }
    
    .nav__logo a {
        flex-direction: row;
        text-align: center;
        gap: 8px;
        align-items: center;
        justify-content: center;
    }
    
    .logo-img {
        max-height: 70px;
        width: auto;
        height: auto;
    }
    
    .logo-img-completa {
        max-height: 75px;
        width: auto;
        height: auto;
        max-width: 90%;
        object-fit: contain;
    }
    
    .nav__toggle {
        display: flex;
        order: 1;
        padding: 8px;
        min-width: 44px;
        align-items: center;
        justify-content: center;
    }
    
    .btn--mobile-cta {
        display: flex;
        order: 3;
        width: 44px;
        height: 44px;
        min-width: 44px;
        background: var(--color-primary);
        color: var(--color-white);
        border-radius: 50%;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        box-shadow: var(--shadow-md);
        flex-shrink: 0;
    }
    
    .btn--mobile-cta:active {
        transform: scale(0.95);
    }
    
    .nav__menu {
        position: fixed;
        top: 75px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 75px);
        background: var(--color-white);
        flex-direction: column;
        align-items: stretch;
        padding: var(--spacing-lg);
        gap: 0;
        box-shadow: var(--shadow-lg);
        transition: left var(--transition-smooth);
        z-index: 999;
        overflow-y: auto;
    }
    
    .nav__menu.active {
        left: 0;
    }
    
    /* Hero - Mobile/Tablet (≤800px) */
    .hero {
        padding: calc(75px + var(--spacing-2xl)) 0 var(--spacing-2xl);
        min-height: auto;
        position: relative;
        background: linear-gradient(180deg, #F8F9FB 0%, var(--color-white) 100%);
    }
    
    .hero__content {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .hero__image {
        order: -1;
        margin: 0 calc(-1 * var(--spacing-md));
        border-radius: 0;
    }
    
    .hero__img {
        width: 100%;
        height: 280px;
        object-fit: cover;
        object-position: center;
        border-radius: 0;
    }
    
    /* Proposta */
    .proposta__content {
        grid-template-columns: 1fr;
    }
    
    .proposta__form-wrapper {
        position: static;
    }
    
    /* Sobre Resumo */
    .sobre-resumo__content {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .sobre-resumo__image {
        order: -1;
    }
    
    /* Timeline */
    .timeline::before {
        left: 30px;
    }
    
    .timeline__item {
        padding-left: 80px;
    }
    
    .timeline__number {
        width: 60px;
        height: 60px;
        font-size: 22px;
    }
    
    /* Footer */
    .footer__content {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-2xl);
    }
}

/* ========== MOBILE (max-width: 767px) ========== */
@media screen and (max-width: 767px) {
    :root {
        --spacing-lg: 24px;
        --spacing-xl: 40px;
        --spacing-2xl: 60px;
        --spacing-3xl: 60px;
        --spacing-4xl: 80px;
    }
    
    h1 { font-size: 32px; }
    h2 { font-size: 28px; }
    h3 { font-size: 24px; }
    h4 { font-size: 20px; }
    
    .container {
        padding: 0 var(--spacing-md);
    }
    
    .section-padding {
        padding: var(--spacing-3xl) 0;
    }
    
    /* Header ajustes específicos mobile pequeno */
    .logo-text {
        font-size: 14px;
    }
    
    /* Menu items */
    .nav__item {
        width: 100%;
        border-bottom: 1px solid var(--color-gray-200);
    }
    
    .nav__item--cta {
        border-bottom: none;
        margin-top: var(--spacing-md);
    }
    
    .nav__item--cta .btn {
        width: 100%;
        text-align: center;
        padding: var(--spacing-md);
    }
    
    .nav__link {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
        padding: var(--spacing-md);
        font-size: 16px;
        text-align: left;
        justify-content: flex-start;
    }
    
    .nav__link i {
        font-size: 18px;
        width: 24px;
        text-align: center;
    }
        font-size: 12px;
    }
    
    .btn--header {
        width: 100%;
        margin-top: var(--spacing-md);
        padding: var(--spacing-md);
        text-align: center;
    }
    
    /* ========== HERO MOBILE AJUSTES (≤767px) ========== */
    .hero {
        padding: calc(75px + var(--spacing-2xl)) 0 var(--spacing-2xl);
    }
    
    .hero__title {
        font-size: 28px;
        line-height: 1.2;
    }
    
    .hero__subtitle {
        font-size: 16px;
        line-height: 1.5;
    }
    
    .hero__badge {
        font-size: 11px;
        padding: 6px 14px;
    }
    
    .hero__features {
        gap: var(--spacing-sm);
    }
    
    .feature-badge {
        font-size: 14px;
        gap: 10px;
    }
    
    .feature-badge i {
        font-size: 16px;
    }
    
    .hero__cta {
        flex-direction: column;
        align-items: stretch;
    }
    
    .hero__cta .btn {
        width: 100%;
        justify-content: center;
    }
    
    .ps-block {
        flex-direction: row;
        gap: 12px;
    }
    
    .ps-block__icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
    
    .ps-block__title {
        font-size: 15px;
    }
    
    .ps-block__text {
        font-size: 14px;
    }
    
    .hero__img {
        min-height: 350px;
    }
    
    .hero__method-desc {
        font-size: 20px;
    }
    
    .hero__subtitle {
        font-size: 16px;
    }
    
    .hero__narrative {
        padding: var(--spacing-md);
    }
    
    .hero__narrative p {
        font-size: 15px;
    }
    
    .hero__cta {
        flex-direction: column;
        gap: var(--spacing-sm);
    }
    
    .hero__cta .btn {
        width: 100%;
        justify-content: center;
    }
    
    /* ========== CLIENTES FAIXA ========== */
    .clientes-faixa {
        padding: var(--spacing-xl) 0;
    }
    
    .clientes-faixa__title {
        font-size: 14px;
        margin-bottom: var(--spacing-lg);
    }
    
    .clientes-faixa__logos {
        gap: var(--spacing-lg);
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .cliente-nome {
        font-size: 16px;
        padding: var(--spacing-sm) var(--spacing-md);
    }
    
    /* ========== ENTREGAS GRID ========== */
    .entregas__grid {
        grid-template-columns: 1fr;
    }
    
    .entrega-card {
        padding: var(--spacing-lg);
    }
    
    /* ========== TIMELINE MOBILE ========== */
    .timeline::before {
        left: 20px;
    }
    
    .timeline__item {
        padding-left: 60px;
        margin-bottom: var(--spacing-2xl);
    }
    
    .timeline__number {
        width: 40px;
        height: 40px;
        font-size: 16px;
        font-weight: 700;
    }
    
    .timeline__title {
        font-size: 20px;
    }
    
    .timeline__desc {
        font-size: 15px;
    }
    
    /* ========== PÚBLICO/PARA QUEM ========== */
    .publico__grid {
        grid-template-columns: 1fr;
    }
    
    .publico-card {
        padding: var(--spacing-lg);
    }
    
    /* ========== DIFERENCIAIS ========== */
    .diferenciais__grid {
        grid-template-columns: 1fr;
    }
    
    .diferencial-card {
        padding: var(--spacing-lg);
    }
    
    /* ========== CTA INTERMEDIÁRIO ========== */
    .cta-intermediario {
        padding: var(--spacing-3xl) 0;
    }
    
    .cta-intermediario__title {
        font-size: 24px;
    }
    
    .cta-intermediario__subtitle {
        font-size: 16px;
    }
    
    /* ========== SOBRE RESUMO ========== */
    .sobre-resumo__highlights {
        gap: var(--spacing-sm);
    }
    
    .highlight-item {
        padding: 12px;
        font-size: 14px;
    }
    
    .highlight-item i {
        font-size: 20px;
    }
    
    /* ========== FORM ========== */
    .form-card {
        padding: var(--spacing-lg);
    }
    
    .form-card__title {
        font-size: 24px;
    }
    
    .form__input,
    .form__label {
        font-size: 15px;
    }
    
    /* ========== FOOTER ========== */
    .footer {
        padding: var(--spacing-3xl) 0 var(--spacing-lg);
    }
    
    .footer__content {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .footer__col {
        text-align: left;
    }
    
    .footer__logo-img {
        width: 250px;  /* Largura fixa 250px em mobile */
        height: auto;  /* Altura proporcional */
        max-width: 100%;  /* Não ultrapassa container em telas pequenas */
    }
    
    /* ========== BUTTONS ========== */
    .btn--large {
        padding: 16px 28px;
        font-size: 16px;
    }
    
    .btn--full {
        width: 100%;
    }
    
    /* ========== CIDADES ATENDIDAS ========== */
    .cidades-cloud {
        gap: 8px;
        padding: var(--spacing-md);
    }
    
    .cidade-tag {
        font-size: 12px;
        padding: 6px 12px;
    }
    
    .cidade-tag--xl {
        font-size: 18px;
        padding: 10px 20px;
    }
    
    .cidade-tag--lg {
        font-size: 14px;
        padding: 8px 16px;
    }
    
    .cidades-cta {
        padding: var(--spacing-lg);
    }
    
    .cidades-cta__text {
        font-size: 16px;
    }
    
    /* ========== TRILHAS TIMELINE ========== */
    .trilhas-timeline {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .trilhas-timeline::before {
        display: none;
    }
    
    .trilha-timeline__number {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }
    
    .trilha-timeline__icon {
        width: 56px;
        height: 56px;
        font-size: 24px;
    }
    
    .trilha-timeline__title {
        font-size: 16px;
    }
    
    .trilha-timeline__topics li {
        font-size: 13px;
    }
    
    .trilha-timeline__content {
        min-height: auto;
        padding: var(--spacing-md);
    }
    
    .trilha-timeline-item--destaque .trilha-timeline__content {
        transform: scale(1);
        box-shadow: var(--shadow-md);
    }
    
    /* ========== FORMATOS PLANOS ========== */
    .formatos-planos {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .formato-plano--destaque {
        transform: scale(1);
    }
    
    .formato-plano__icon {
        width: 80px;
        height: 80px;
        font-size: 36px;
    }
    
    .formato-plano__title {
        font-size: 24px;
    }
    
    /* ========== PALESTRA DESTAQUE ========== */
    .palestra-destaque__img {
        max-height: 300px;
    }
    
    /* ========== SERVIDORES DESTAQUE ========== */
    .servidores-destaque__img {
        max-height: 250px;
    }
    
    /* ========== PROGRAMAS CARDS ========== */
    .programas-cards {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* ========== INCLUÍDO CARDS ========== */
    .incluido-cards {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* ========== BACK TO TOP ========== */
    .back-to-top {
        bottom: 20px;
        right: 20px;
        width: 45px;
        height: 45px;
        font-size: 18px;
    }
    
    /* ========== COOKIE CONSENT ========== */
    .cookie-consent__content {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-md);
    }
    
    .cookie-consent__content .btn--small {
        width: 100%;
    }
}

/* ========== PEQUENOS AJUSTES PARA TELAS MUITO PEQUENAS ========== */
@media screen and (max-width: 375px) {
    .hero__method-name {
        font-size: 28px;
    }
    
    .hero__method-desc {
        font-size: 18px;
    }
    
    .timeline__item {
        padding-left: 50px;
    }
    
    .timeline__number {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }
    
    .cliente-nome {
        font-size: 16px;
    }
}

/* ========== LANDSCAPE MODE (Mobile) ========== */
@media screen and (max-width: 900px) and (max-height: 500px) and (orientation: landscape) {
    .hero {
        min-height: auto;
        padding: calc(70px + var(--spacing-lg)) 0 var(--spacing-2xl);
    }
    
    .nav__menu {
        height: auto;
        max-height: calc(100vh - 70px);
    }
}

/* ========== TABLET LANDSCAPE (768px - 1024px) ========== */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    /* Hero pode manter 2 colunas em tablets maiores */
    .hero__content {
        grid-template-columns: 1fr 1fr;
        gap: var(--spacing-2xl);
    }
    
    .hero__image {
        order: 0;
    }
    
    /* Entregas: 2 colunas */
    .entregas__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Público: 2 colunas */
    .publico__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Diferenciais: 2 colunas */
    .diferenciais__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Formatos Planos: 4 colunas em tablet */
    .formatos-planos {
        grid-template-columns: repeat(4, 1fr);
        gap: var(--spacing-lg);
    }
    
    /* Trilhas Timeline: 4 colunas em tablet */
    .trilhas-timeline {
        grid-template-columns: repeat(4, 1fr);
        gap: var(--spacing-lg);
    }
    
    .trilha-timeline__content {
        padding: var(--spacing-lg);
        min-height: 350px;
    }
    
    .trilha-timeline__icon {
        width: 56px;
        height: 56px;
        font-size: 24px;
    }
    
    .trilha-timeline__title {
        font-size: 16px;
    }
    
    .trilha-timeline__topics li {
        font-size: 13px;
    }
    
    /* ========== PROGRAMAS E INCLUÍDO CARDS (TABLET) ========== */
    .programas-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-lg);
    }
    
    .incluido-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-lg);
    }
}

/* ========== DESKTOP LARGO (min-width: 1440px) ========== */
@media screen and (min-width: 1440px) {
    .container {
        max-width: 1400px;
    }
    
    /* Entregas: até 3 colunas */
    .entregas__grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    /* Diferenciais: até 3 colunas */
    .diferenciais__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* ========== DARK MODE SUPPORT (Opcional) ========== */
@media (prefers-color-scheme: dark) {
    /* Pode adicionar suporte a dark mode se desejado */
}

/* ========== ANIMATIONS ========== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

/* ========================================
   RESPONSIVE STYLES - SUBPÁGINAS
   ======================================== */

/* ========== TABLET - SUBPÁGINAS (max-width: 1024px) ========== */
@media screen and (max-width: 1024px) {
    /* Page Hero */
    .page-hero {
        padding: calc(80px + var(--spacing-2xl)) 0 var(--spacing-2xl);
    }
    
    .page-hero__title {
        font-size: clamp(32px, 5vw, 42px);
    }
    
    .page-hero__subtitle {
        font-size: 18px;
    }
    
    /* Sobre Bio */
    .sobre-bio__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .sobre-bio__image {
        max-width: 400px;
        margin: 0 auto;
    }
    
    .sobre-bio__stats {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--spacing-md);
    }
    
    /* Formação */
    .formacao-grid {
        grid-template-columns: 1fr;
    }
    
    /* Atuação */
    .atuacao-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Planos */
    .planos-grid {
        grid-template-columns: 1fr;
    }
    
    /* Cronograma */
    .cronograma-trimestral {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Process Steps */
    .process-steps {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Target Cards */
    .target-cards {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Palestras Grid */
    .palestras-grid {
        grid-template-columns: 1fr;
    }
    
    /* Resultados Grid */
    .resultados-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Content Two Cols */
    .content-two-cols {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .content-two-cols__image {
        order: -1;
    }
    
    .image-placeholder {
        height: 350px;
    }
    
    /* Formulário Proposta */
    .form-proposta__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .form-proposta__info {
        position: static;
    }
    
    .form-proposta__form {
        padding: var(--spacing-xl);
    }
    
    .proposta-form {
        grid-template-columns: 1fr;
    }
    
    .form-group,
    .form-group--half,
    .form-group--full {
        grid-column: span 1;
    }
    
    /* Dra. Destaque */
    .dra-destaque__grid {
        grid-template-columns: 150px 1fr;
        gap: var(--spacing-lg);
    }
    
    .dra-destaque__foto {
        width: 150px;
        height: 150px;
    }
    
    .dra-destaque__creds {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ========== MOBILE - SUBPÁGINAS (max-width: 767px) ========== */
@media screen and (max-width: 767px) {
    /* Page Hero */
    .page-hero {
        padding: calc(75px + var(--spacing-xl)) 0 var(--spacing-xl);
    }
    
    .page-hero__badge {
        font-size: 11px;
        padding: 6px 16px;
    }
    
    .page-hero__title {
        font-size: clamp(28px, 7vw, 36px);
    }
    
    .page-hero__subtitle {
        font-size: 16px;
    }
    
    .page-hero__actions {
        flex-direction: column;
        align-items: stretch;
        margin-top: var(--spacing-xl);
    }
    
    .page-hero__actions .btn {
        width: 100%;
        min-width: auto;
    }
    
    /* Content Cards */
    .content-card,
    .service-card,
    .target-card {
        padding: var(--spacing-lg);
    }
    
    .content-card__icon,
    .service-card__icon {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }
    
    /* Timeline */
    .timeline::before {
        left: 15px;
    }
    
    .timeline-item {
        padding-left: 50px;
        margin-bottom: var(--spacing-2xl);
    }
    
    .timeline-marker {
        left: 7px;
        width: 18px;
        height: 18px;
        border: 3px solid var(--color-white);
    }
    
    .timeline-content {
        padding: var(--spacing-lg);
    }
    
    .timeline-content h3 {
        font-size: 18px;
    }
    
    .timeline-institution {
        font-size: 14px;
    }
    
    .timeline-focus {
        font-size: 14px;
    }
    
    /* Why Grid */
    .why-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* Deliverables */
    .deliverables-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    /* Process Steps */
    .process-steps {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* Infográfico Mobile */
    .infografico-container {
        padding: var(--spacing-md);
        border-radius: var(--radius-lg);
    }
    
    .infografico-img {
        border-radius: var(--radius-md);
    }
    
    .process-step {
        padding: var(--spacing-xl);
    }
    
    /* Target Cards */
    .target-cards {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* Palestras Grid */
    .palestras-grid {
        grid-template-columns: 1fr;
    }
    
    .palestra-card__content {
        padding: var(--spacing-lg);
    }
    
    /* Resultados Grid */
    .resultados-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-md);
    }
    
    /* Metodologia Features */
    .metodologia-features {
        gap: var(--spacing-md);
    }
    
    .feature-box {
        padding: var(--spacing-md);
    }
    
    /* Content Two Cols */
    .content-two-cols {
        grid-template-columns: 1fr;
        gap: var(--spacing-xl);
    }
    
    .content-two-cols__image {
        order: -1;
    }
    
    .image-placeholder {
        height: 300px;
    }
    
    .image-placeholder i {
        font-size: 48px;
    }
    
    .image-placeholder p {
        font-size: 14px;
    }
    
    /* CTA Section */
    .cta-section__title {
        font-size: clamp(28px, 6vw, 36px);
    }
    
    .cta-section__text {
        font-size: 16px;
    }
    
    .cta-section__buttons {
        flex-direction: column;
        align-items: stretch;
    }
    
    .cta-section__buttons .btn {
        width: 100%;
    }
    
    /* Process Steps */
    .process-steps {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    /* Cronograma */
    .cronograma-trimestral {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .trimestre-card {
        padding: var(--spacing-lg);
    }
    
    /* Planos */
    .planos-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .plano-card {
        padding: var(--spacing-lg);
    }
    
    /* Sobre Bio */
    .sobre-bio__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-xl);
    }
    
    .sobre-bio__image {
        max-width: 100%;
    }
    
    .sobre-bio__title {
        font-size: 28px;
    }
    
    .sobre-bio__text {
        font-size: 16px;
    }
    
    .sobre-bio__stats {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    .stat-box {
        padding: var(--spacing-md);
    }
    
    .stat-box__number {
        font-size: 36px;
    }
    
    /* Formação */
    .formacao-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .formacao-card {
        padding: var(--spacing-lg);
    }
    
    /* Atuação */
    .atuacao-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .atuacao-card {
        padding: var(--spacing-lg);
    }
    
    /* Publicações */
    .publicacoes-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    /* Diferenciais */
    .diferenciais-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    .diferencial-item {
        padding: var(--spacing-lg);
    }
    
    .diferencial-item i {
        font-size: 36px;
    }
    
    /* CTA Final */
    .cta-final {
        padding: var(--spacing-3xl) 0;
    }
    
    .cta-final h2 {
        font-size: clamp(28px, 6vw, 36px);
    }
    
    .cta-final p {
        font-size: 16px;
    }
    
    .cta-final__actions {
        flex-direction: column;
        align-items: stretch;
    }
    
    .cta-final__actions .btn {
        width: 100%;
    }
    
    /* Contato Rápido */
    .contato-rapido-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .contato-quick-card {
        padding: var(--spacing-lg);
    }
    
    .contato-quick-card__icon {
        width: 64px;
        height: 64px;
        font-size: 28px;
    }
    
    /* Formulário Proposta */
    .form-proposta__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-xl);
    }
    
    .form-proposta__info {
        position: static;
    }
    
    .form-proposta__title {
        font-size: 28px;
    }
    
    .form-proposta__form {
        padding: var(--spacing-lg);
    }
    
    .proposta-form {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    .form-group,
    .form-group--half,
    .form-group--full {
        grid-column: span 1;
    }
    
    /* FAQ */
    .faq-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }
    
    .faq-item {
        padding: var(--spacing-md);
    }
    
    /* CTA WhatsApp Fixo */
    .cta-whatsapp__content {
        flex-direction: column;
        text-align: center;
        gap: var(--spacing-lg);
    }
    
    .cta-whatsapp__text h3 {
        font-size: 24px;
    }
    
    .cta-whatsapp__text p {
        font-size: 15px;
    }
    
    /* Alert NR-1 */
    .alert-nr1 {
        flex-direction: column;
        padding: var(--spacing-lg);
    }
    
    .alert-nr1__icon {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }
    
    /* Dra. Destaque */
    .dra-destaque {
        padding: var(--spacing-lg);
    }
    
    .dra-destaque__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
        text-align: center;
    }
    
    .dra-destaque__foto {
        width: 140px;
        height: 140px;
        margin: 0 auto;
    }
    
    .dra-destaque__creds {
        grid-template-columns: 1fr;
        gap: var(--spacing-sm);
    }
    
    .dra-destaque__cred {
        justify-content: center;
    }
    
    .dra-destaque__livros {
        flex-direction: column;
    }
}

@keyframes slideInFromLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ========== PRINT STYLES ========== */
@media print {
    .header,
    .nav__toggle,
    .btn--mobile-cta,
    .back-to-top,
    .cookie-consent,
    .form-card {
        display: none !important;
    }
    
    body {
        font-size: 12pt;
    }
    
    h1 { font-size: 24pt; }
    h2 { font-size: 20pt; }
    h3 { font-size: 16pt; }
    
    .hero,
    .section-padding {
        padding: 20pt 0;
    }
    
    a[href]:after {
        content: " (" attr(href) ")";
    }
}

/* ========== ACCESSIBILITY IMPROVEMENTS ========== */

/* Focus visible para navegação por teclado */
:focus-visible {
    outline: 3px solid var(--color-azul);
    outline-offset: 2px;
}

/* Melhor contraste para links */
a:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Skip to content link para screen readers */
.skip-to-content {
    position: absolute;
    top: -100px;
    left: 0;
    background: var(--color-primary);
    color: var(--color-white);
    padding: var(--spacing-sm) var(--spacing-md);
    z-index: 10000;
    transition: top var(--transition-smooth);
}

.skip-to-content:focus {
    top: 0;
}

/* Reduzir movimento para usuários com preferência */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
