/* =========================================================
   HUMANAS JA / PASSO 6F.3
   CURADORIA DE LEITURA E QA VISUAL
   ========================================================= */

/* ---------------------------------------------------------
   REGRA CURATORIAL
   - Anton apenas para hero, grandes chamadas e secoes principais
   - Cards/listagens usam Space Grotesk ou Inter
   - Mais respiro, line-height e menos esmagamento
   --------------------------------------------------------- */


/* ---------------------------------------------------------
   TIPOGRAFIA DE LEITURA
   --------------------------------------------------------- */

body,
p,
li,
small,
span,
label,
input,
select,
button {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

.collection-card-content h3,
.collection-material-body h3,
.adapted-card-body h3,
.kit-card-content h3,
.related-card h3,
.material-related-card h3,
.result-card h3,
.explore-result-card h3 {
    font-family: "Space Grotesk", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
    word-spacing: .01em !important;
    line-height: 1.02 !important;
    color: #141414 !important;
    text-wrap: balance;
}

.collection-card-content p,
.collection-material-body p,
.adapted-card-body p,
.kit-card-content p,
.related-card p,
.material-related-card p,
.result-card p,
.explore-result-card p,
.material-intro p,
.collection-detail-copy > p {
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #4e4943 !important;
}


/* ---------------------------------------------------------
   COLECOES - CARDS
   --------------------------------------------------------- */

.collections-grid {
    gap: 26px !important;
}

.collection-card {
    grid-template-columns: 330px 1fr !important;
    min-height: 405px !important;
    background: #e8e2d7 !important;
    align-items: stretch !important;
}

.collection-card-image {
    min-height: 405px !important;
    overflow: hidden !important;
}

.collection-card-content {
    padding: 28px 28px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 0 !important;
}

.collection-card-content > span {
    color: #5b4797 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .06em !important;
}

.collection-card-content h3 {
    margin: 14px 0 14px !important;
    font-size: clamp(29px, 2.35vw, 38px) !important;
    max-width: 94% !important;
}

.collection-card-content p {
    margin: 0 0 16px !important;
    max-width: 95% !important;
}

.collection-card-meta {
    margin-top: auto !important;
    padding-top: 16px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
    align-items: start !important;
}

.collection-card-meta span {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    color: #635c55 !important;
}

.collection-card-link {
    margin-top: 14px !important;
    font-size: 10px !important;
    letter-spacing: .05em !important;
}


/* ---------------------------------------------------------
   COLECOES - TITULOS DE SECOES
   --------------------------------------------------------- */

.collections-heading h2,
.collection-materials-heading h2,
.collection-manifest-copy h2,
.collections-closing h2,
.collection-detail-copy h1 {
    letter-spacing: -.03em !important;
    word-spacing: 0 !important;
    line-height: .9 !important;
    text-wrap: balance;
}

.collections-heading p,
.collection-materials-heading p,
.collections-closing p {
    max-width: 430px !important;
}

.collection-detail-copy h1 {
    max-width: 720px !important;
    font-size: clamp(54px, 5vw, 80px) !important;
}

.collection-detail-copy > p {
    max-width: 700px !important;
}

.collection-detail-meta {
    margin-top: 32px !important;
}

.collection-detail-meta strong {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
}


/* ---------------------------------------------------------
   MATERIALS DENTRO DE COLECOES
   --------------------------------------------------------- */

.collection-materials-grid {
    gap: 24px !important;
}

.collection-material-image {
    height: 300px !important;
}

.collection-material-body {
    padding-top: 16px !important;
}

.collection-material-body small {
    font-size: 10px !important;
    letter-spacing: .06em !important;
}

.collection-material-body h3 {
    margin: 10px 0 10px !important;
    font-size: 25px !important;
    max-width: 94% !important;
}

.collection-material-body a {
    font-size: 10px !important;
    letter-spacing: .05em !important;
}


/* ---------------------------------------------------------
   ADAPTADAS
   --------------------------------------------------------- */

.adapted-library-heading h2,
.adapted-pair-copy h2,
.adapted-principle h2,
.adaptation-heading h2,
.adapted-closing h2 {
    letter-spacing: -.03em !important;
    word-spacing: 0 !important;
    line-height: .9 !important;
    text-wrap: balance;
}

.adapted-card {
    min-height: auto !important;
}

.adapted-card-body {
    padding-top: 16px !important;
}

.adapted-card-body > small {
    font-size: 10px !important;
    letter-spacing: .05em !important;
}

.adapted-card-body h3 {
    margin: 8px 0 10px !important;
    font-size: 24px !important;
    max-width: 96% !important;
}

.adapted-card-body p {
    margin: 0 0 12px !important;
    max-width: 96% !important;
}

.adapted-card-footer {
    padding-top: 14px !important;
}

.adapted-card-footer span,
.adapted-card-footer a {
    font-size: 10px !important;
}

.adapted-pair-copy {
    padding: 58px 56px !important;
}

.adapted-pair-copy h2 {
    font-size: clamp(40px, 3.7vw, 54px) !important;
    max-width: 92% !important;
}

.adapted-pair-copy p {
    font-size: 15px !important;
    line-height: 1.6 !important;
    max-width: 95% !important;
}


/* ---------------------------------------------------------
   MATERIAL / PAGINA INDIVIDUAL
   --------------------------------------------------------- */

.material-intro h1,
.preview-section h2,
.use-section h2,
.paired-material h2,
.related-heading h2,
.material-info-panel h2 {
    letter-spacing: -.03em !important;
    word-spacing: 0 !important;
    line-height: .91 !important;
    text-wrap: balance;
}

.material-intro h1 {
    max-width: 760px !important;
    font-size: clamp(50px, 4.8vw, 78px) !important;
}

.material-info-panel h2,
.preview-section h2,
.use-section h2,
.paired-material h2 {
    font-size: clamp(34px, 3.2vw, 46px) !important;
}

.related-heading h2 {
    font-size: clamp(42px, 4vw, 58px) !important;
}

.cover-overlay strong {
    font-size: clamp(34px, 3.4vw, 48px) !important;
    line-height: .92 !important;
    letter-spacing: -.02em !important;
}

.preview-section p,
.use-section p,
.paired-material p,
.material-info-panel p {
    font-size: 15px !important;
    line-height: 1.62 !important;
}


/* ---------------------------------------------------------
   EXPLORAR / RESULTADOS
   --------------------------------------------------------- */

.result-card,
.explore-result-card,
.material-card {
    overflow: hidden !important;
}

.result-card h3,
.explore-result-card h3,
.material-card h3 {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 24px !important;
    line-height: 1.04 !important;
    letter-spacing: -.025em !important;
}

.result-card p,
.explore-result-card p,
.material-card p {
    font-size: 14px !important;
    line-height: 1.58 !important;
}


/* ---------------------------------------------------------
   KITS
   --------------------------------------------------------- */

.kit-card-content h3,
.kit-detail-copy h1,
.kit-sequence-copy h2,
.kits-section-heading h2,
.kit-materials-heading h2 {
    text-wrap: balance;
}

.kit-card-content h3 {
    font-size: 28px !important;
    line-height: 1.02 !important;
}

.kit-card-content p {
    font-size: 14px !important;
    line-height: 1.58 !important;
}

.kit-detail-copy h1 {
    font-size: clamp(52px, 4.9vw, 78px) !important;
    line-height: .9 !important;
}

.kit-detail-copy p {
    font-size: 15px !important;
    line-height: 1.62 !important;
}


/* ---------------------------------------------------------
   RESPONSIVIDADE
   --------------------------------------------------------- */

@media (max-width: 1200px) {
    .collection-card {
        grid-template-columns: 300px 1fr !important;
    }

    .collection-card-content h3 {
        font-size: 34px !important;
    }
}

@media (max-width: 980px) {
    .collection-card {
        grid-template-columns: 1fr !important;
        min-height: auto !important;
    }

    .collection-card-image {
        min-height: 320px !important;
    }

    .collection-card-content {
        min-height: 260px !important;
    }

    .collection-card-content h3 {
        font-size: 30px !important;
    }

    .collection-card-meta {
        grid-template-columns: 1fr !important;
    }

    .collection-materials-grid {
        grid-template-columns: repeat(2,1fr) !important;
    }
}

@media (max-width: 780px) {
    .collection-materials-grid {
        grid-template-columns: 1fr !important;
    }

    .collection-material-body h3,
    .adapted-card-body h3,
    .kit-card-content h3,
    .result-card h3,
    .explore-result-card h3,
    .material-card h3 {
        font-size: 22px !important;
    }

    .collection-card-content h3 {
        font-size: 28px !important;
    }

    .collection-detail-copy h1,
    .kit-detail-copy h1,
    .material-intro h1 {
        font-size: 52px !important;
    }

    .adapted-pair-copy {
        padding: 42px 24px !important;
    }
}

@media (max-width: 480px) {
    .collection-card-content h3 {
        font-size: 26px !important;
    }

    .collection-detail-copy h1,
    .kit-detail-copy h1,
    .material-intro h1 {
        font-size: 46px !important;
    }

    .adapted-pair-copy h2,
    .collections-closing h2,
    .collection-manifest-copy h2,
    .related-heading h2 {
        font-size: 38px !important;
    }
}