/* components.css: Botões, cards, formulários, quadros, métricas, subquadros */
/*
=================================================================
Mapa de seções
- Quadros e containers (.quadro, .quadro-delimiter, texto/imagem)
- Cartões de métricas (.quadro-metricas, .metrica)
- Subquadros e variações (.subquadro, .header-line, .header-inline, .desc-indent)
- Áreas de projetos (Soluções) (.areas-projetos-grid, .area_projeto)
- Botões básicos (.button, button)
- Formulários reutilizáveis (.form-contato, .input-field, .textarea-field)
- Responsividade (breakpoints)
=================================================================
*/

/* ==================== Cards principais (quadros) ==================== */
.quadro {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    margin-bottom: 0;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    box-sizing: border-box;
}

/* ===== Container interno para limitar largura do conteúdo dos quadros ===== */
.quadro-delimiter {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: inherit;
    gap: inherit;
    align-items: inherit;
    justify-content: inherit;
}

.quadro-texto {
    flex: 1;
    text-align: left;
}

.quadro-imagem {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.quadro-imagem img {
    max-width: 100%;
    height: auto;
}

.quadro-metricas {
    border: 3px solid var(--color-highlight1);
    border-radius: 16px;
    padding: 20px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #fff;
    justify-content: center;
    max-width: 420px;
    width: 100%;
}

.metrica {
    display: flex;
    flex-direction: column;
    min-width: 120px;
}

.subquadro {
    background: var(--color-highlight1);
    color: #111;
    padding: 20px;
    border-radius: 8px;
    flex: 1;
    min-width: 120px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    text-align: center;
}

/* Variações e padrões usados em páginas */
.subquadro.header-line {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.subquadro .header-inline {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    width: 100%;
}
.subquadro .desc-indent {
    text-align: left;
    margin-left: 62px;
}

/* ================= Cartões de áreas de projetos (Soluções) ================ */
.areas-projetos-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
    max-width: 1200px;
    width: 100%;
}
.area_projeto {
    background: var(--color-light2);
    color: var(--color-background-blue);
    border-radius: 12px;
    text-align: center;
    padding: 24px;
    width: 250px;
}
.area_projeto .area-desc { margin-top: 8px; }

.button, button {
    background: var(--color-highlight1);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 10px 24px;
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s;
}

.button:hover, button:hover {
    background: #0055a5;
}

/* ======================= Formulários reutilizáveis ======================= */
.form-contato {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.form-contato label { font-weight: 600; }
.input-field {
    padding: 7px;
    border-radius: 5px;
    border: 1px solid #ccc;
    width: 32vw;
    max-width: 90%;
    font-size: 1.1em;
    box-sizing: border-box;
}
.textarea-field {
    padding: 7px;
    border-radius: 5px;
    border: 1px solid #ccc;
    min-height: 120px;
    width: 32vw;
    max-width: 90%;
    font-size: 1.1em;
    box-sizing: border-box;
}

/* ============================= Responsivo ============================= */
@media (max-width: 768px) {
    .quadro { margin-left: 0; margin-right: 0; }
    .quadro-delimiter { padding: 0 12px; }
    .input-field, .textarea-field { width: 100%; max-width: 100%; }
    .quadro-metricas { max-width: 100%; }
    .areas-projetos-grid { gap: 16px; }
    .area_projeto { width: calc(50% - 16px); min-width: 150px; }
}
@media (max-width: 480px) {
    .quadro-delimiter { padding: 0 10px; }
}
@media (max-width: 480px) {
    .area_projeto { width: 100%; }
}

