/* Tipografia base dos cards. :where() zera a especificidade, então qualquer
   ajuste feito em Personalizar > Tipografia prevalece sobre estes valores. */
:where(.gpt-pill){font-size:.75em;line-height:1.4}
:where(.gpt-card-title){font-size:1.15em;line-height:1.3}
:where(.gpt-card-title--under){font-size:1em;line-height:1.35}
:where(.gpt-card-excerpt){font-size:.875em;line-height:1.55}
:where(.gpt-card-date){font-size:.75em}
:where(.gpt-card-meta){font-size:.8em}
:where(.gpt-related-title){font-size:1.35em}

.gpt-grid-wrap{--gpt-r:32px;--gpt-card-bg:var(--base-3,#fff);--gpt-line:var(--base,#e8e8ec);--gpt-muted:var(--contrast-2,#6b7280);--gpt-ink:var(--contrast,#111827);--gpt-pill:var(--base-2,#f3f4f6);--gpt-accent:var(--accent,#111827);width:100%}
.gpt-grid{display:grid;gap:20px;margin:0 0 28px}
.gpt-grid--featured{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.gpt-grid--overlay{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}

.gpt-card{position:relative;min-width:0;height:100%}
.gpt-card--featured{background:var(--gpt-card-bg);border:1px solid var(--gpt-line);border-radius:var(--gpt-r);padding:18px 18px 64px;display:flex;flex-direction:column;height:100%}
.gpt-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.gpt-pills{display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.gpt-pill{display:inline-block;padding:.35em .8em;border-radius:999px;background:var(--gpt-pill);color:var(--gpt-ink);text-decoration:none;white-space:nowrap}
.gpt-pill:hover{background:var(--gpt-line)}

.gpt-card-title{margin:0 0 14px}
.gpt-card-title a{color:var(--gpt-ink);text-decoration:none}
.gpt-card-title a:hover{text-decoration:underline}
.gpt-card-title--under{margin:12px 0 0}

.gpt-card-media{display:block;position:relative;border-radius:24px;overflow:hidden;aspect-ratio:16/10;background:var(--gpt-pill);width:100%;max-width:100%}
.gpt-thumb{width:100%;height:100%;object-fit:cover;display:block}
.gpt-thumb--empty{display:block;width:100%;height:100%}

.gpt-card-excerpt{color:var(--gpt-muted);margin:14px 0 0;padding-right:52px;flex:1 1 auto}

.gpt-arrow{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:999px;background:var(--gpt-card-bg);border:1px solid var(--gpt-line);display:flex;align-items:center;justify-content:center;color:var(--gpt-ink);transition:background .2s,color .2s}
.gpt-card-go{position:absolute;right:14px;bottom:14px;width:42px;height:42px;z-index:3}
.gpt-card-go .gpt-arrow{right:0;bottom:0;width:42px;height:42px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.gpt-card-go:hover .gpt-arrow{background:var(--gpt-accent);color:var(--gpt-card-bg)}

.gpt-pills--over{position:absolute;left:12px;bottom:12px;z-index:2;line-height:normal}
.gpt-pills--over .gpt-pill{background:var(--gpt-card-bg);opacity:.94}
.gpt-media-box{position:relative;border-radius:28px;overflow:hidden;line-height:0}
.gpt-card--overlay .gpt-card-media{aspect-ratio:4/3;border-radius:0}
.gpt-card--overlay .gpt-card-go{right:12px;bottom:12px;width:40px;height:40px}
.gpt-card--overlay .gpt-card-go .gpt-arrow{width:40px;height:40px}

.gpt-card--boxed{background:var(--gpt-card-bg);border:1px solid var(--gpt-line);border-radius:var(--gpt-r);padding:14px 14px 62px;display:flex;flex-direction:column}
.gpt-card--boxed .gpt-media-box{border-radius:24px}
.gpt-card--boxed .gpt-card-title--under{margin:14px 0 0;padding-right:8px;flex:0 0 auto}
.gpt-card--boxed .gpt-card-excerpt{margin:8px 0 0;padding-right:52px;flex:1 1 auto}
.gpt-card--boxed .gpt-card-go{right:14px;bottom:14px;width:40px;height:40px}

.gpt-grid--row{grid-template-columns:minmax(0,1fr)}
.gpt-card--row{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:20px;background:var(--gpt-card-bg);border:1px solid var(--gpt-line);border-radius:var(--gpt-r);padding:14px;align-items:stretch}
.gpt-card--row .gpt-media-box{height:100%;min-height:210px;border-radius:24px}
.gpt-card--row .gpt-card-media{aspect-ratio:auto;height:100%;border-radius:0}
.gpt-card-body{position:relative;display:flex;flex-direction:column;padding:4px 60px 44px 0}
.gpt-card--row .gpt-card-title{margin-bottom:10px}
.gpt-card--row .gpt-card-excerpt{padding-right:0;margin-top:0}
.gpt-card-date{display:block;color:var(--gpt-muted);margin-top:10px}
.gpt-card-meta .gpt-card-date{margin-top:0}
.gpt-card-meta{display:flex;gap:16px;align-items:center;margin-top:14px;color:var(--gpt-muted)}
.gpt-meta-item{display:inline-flex;align-items:center;gap:6px}
.gpt-meta-item svg{display:block}

.gpt-arrow svg{display:block;width:16px;height:16px;flex:0 0 auto}

.gpt-related{margin:44px 0 0;--gpt-r:32px;--gpt-card-bg:var(--base-3,#fff);--gpt-line:var(--base,#e8e8ec);--gpt-muted:var(--contrast-2,#6b7280);--gpt-ink:var(--contrast,#111827);--gpt-pill:var(--base-2,#f3f4f6);--gpt-accent:var(--accent,#111827)}
.gpt-related-title{margin:0 0 18px;color:var(--gpt-ink)}
.gpt-related .gpt-grid{margin-bottom:0}

@media (max-width:768px){
.gpt-grid-wrap{padding-left:16px;padding-right:16px}
.gpt-grid{gap:16px}
.gpt-grid--featured,.gpt-grid--overlay,.gpt-grid--row{grid-template-columns:minmax(0,1fr)}
.gpt-card--overlay .gpt-card-media{aspect-ratio:16/10}
.gpt-card--row{grid-template-columns:minmax(0,1fr)}
.gpt-card--row .gpt-media-box{min-height:0}
.gpt-card--row .gpt-card-media{aspect-ratio:16/10}
.gpt-card-body{padding:8px 56px 44px 0}
.gpt-card--featured{padding:16px 16px 60px}
}
@media (max-width:520px){
.gpt-card-excerpt{padding-right:0;margin-bottom:8px}
}
@media (prefers-reduced-motion:reduce){
.gpt-arrow{transition:none}
}
