/* ------- abertura: texto a mandar, sem fotografia grande por baixo ------- */
.crt-abertura{padding:var(--passo-5) 0 var(--passo-4)}
.crt-abertura__grelha{display:grid;grid-template-columns:1.55fr 1fr;gap:var(--passo-5);align-items:end}
.crt-abertura h1{margin-bottom:var(--passo-3);max-width:13em}
.crt-abertura__texto{font-size:1.16rem;line-height:1.55;max-width:36em;margin-bottom:var(--passo-3)}
.crt-abertura__accoes{display:flex;flex-wrap:wrap;gap:var(--passo-2)}
.crt-abertura__vitrine{border-left:1px solid var(--pergaminho);padding-left:var(--passo-3)}
.crt-abertura__icones{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 var(--passo-2);padding:0;list-style:none}
.crt-abertura__icones li{margin:0}
.crt-abertura__icones img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.crt-abertura__nota{font-size:.85rem;color:var(--pedra);margin:0}

/* ------- vitrine de generos ------- */
.crt-generos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--passo-3)}
.crt-genero{background:var(--pergaminho);padding:var(--passo-3);display:flex;flex-direction:column;gap:10px}
.crt-genero__topo{display:flex;align-items:center;gap:12px}
.crt-genero__sinal{width:34px;height:34px;flex:0 0 34px;color:var(--violeta)}
.crt-genero__sinal svg{width:34px;height:34px}
.crt-genero h3{margin:0;font-size:1.24rem}
.crt-genero p{font-size:.95rem;margin:0;color:var(--grafite)}
.crt-genero__conta{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--pedra);font-weight:600}
.crt-genero__ir{margin-top:auto;padding-top:10px}

/* ------- mostra de jogos: primeira ficha inteira, depois duas a duas ------- */
.crt-mostra{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--passo-4) var(--passo-3);margin:0;padding:0;list-style:none}
.crt-mostra>li{margin:0;min-width:0}
.crt-mostra>li:first-child{grid-column:1 / -1}
.crt-ficha{display:flex;flex-direction:column;gap:14px;height:100%}
.crt-ficha__quadro{position:relative;overflow:hidden;background:var(--pergaminho)}
.crt-ficha__quadro img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
.crt-mostra>li:first-child .crt-ficha{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--passo-4);align-items:center}
.crt-mostra>li:first-child .crt-ficha__quadro img{aspect-ratio:4/3}
.crt-mostra>li:first-child .crt-ficha h3{font-size:1.7rem}
.crt-mostra__nua{align-self:start}
.crt-ficha--nua{background:var(--pergaminho);padding:var(--passo-3);gap:10px}
.crt-ficha__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--pedra);font-weight:600}
.crt-ficha h3{margin:0;font-size:1.24rem}
.crt-ficha h3 a{color:var(--tinta);text-decoration:none;box-shadow:inset 0 -1px 0 var(--azul-vivo)}
.crt-ficha h3 a:hover{color:var(--violeta);box-shadow:inset 0 -2px 0 var(--violeta)}
.crt-ficha p{margin:0;font-size:.98rem}
.crt-ficha__classe{font-family:var(--letra-titulo);font-size:1.05rem;color:var(--tinta);white-space:nowrap}
.crt-ficha__cabeca{display:flex;align-items:center;gap:12px}
.crt-ficha__icone{width:52px;height:52px;flex:0 0 52px}

/* ------- tabelas ------- */
.crt-quadro{margin:0 0 var(--passo-2)}
.crt-quadro__rolo{overflow-x:auto}
.crt-quadro table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:640px}
.crt-quadro caption{text-align:left;font-family:var(--letra-titulo);font-size:1.12rem;color:var(--tinta);padding-bottom:12px}
.crt-quadro th,.crt-quadro td{text-align:left;padding:13px 14px;vertical-align:top}
.crt-quadro thead th{font-family:var(--letra-corpo);font-weight:600;font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:var(--pedra);border-bottom:2px solid var(--azul-vivo)}
.crt-quadro tbody tr:nth-child(odd){background:var(--pergaminho)}
.crt-quadro tbody th{font-weight:600;color:var(--tinta)}
.crt-quadro tbody th a{color:var(--tinta);text-decoration-color:var(--azul-vivo);display:inline-block;padding:4px 0}
.crt-quadro tbody th a:hover{color:var(--violeta)}
.crt-legenda{font-size:.88rem;color:var(--pedra);max-width:46em;margin:0}

/* ------- perguntas ------- */
.crt-duvidas{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--passo-3) var(--passo-5);width:100%}
.crt-duvidas__item h3{margin-bottom:8px}
.crt-duvidas__item p{margin:0;font-size:.98rem}

/* ------- pagina de analise ------- */
.crt-analise{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--passo-5);align-items:start}
.crt-analise__texto h2{margin-top:var(--passo-4)}
.crt-analise__texto>h2:first-child{margin-top:0}
.crt-dados{background:var(--pergaminho);padding:var(--passo-3);position:sticky;top:var(--passo-2)}
.crt-dados h2{font-size:1.05rem;font-family:var(--letra-corpo);letter-spacing:.1em;text-transform:uppercase;color:var(--pedra);margin-bottom:var(--passo-2)}
.crt-dados dl{margin:0;display:grid;grid-template-columns:1fr;gap:12px}
.crt-dados dt{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;color:var(--pedra);font-weight:600}
.crt-dados dd{margin:2px 0 0;font-size:.96rem;color:var(--grafite)}
.crt-nota{display:flex;align-items:baseline;gap:12px;padding:var(--passo-2) 0 var(--passo-3);margin-bottom:var(--passo-2);border-bottom:1px solid var(--pergaminho)}
.crt-nota__valor{font-family:var(--letra-titulo);font-size:2.6rem;line-height:1;color:var(--violeta)}
.crt-nota__escala{font-size:.85rem;color:var(--pedra)}
.crt-galeria{display:grid;grid-template-columns:1fr 1fr;gap:var(--passo-2);margin:var(--passo-3) 0 var(--passo-4)}
.crt-galeria figure{margin:0}
.crt-galeria img{width:100%;height:auto}
.crt-galeria figcaption{font-size:.83rem;color:var(--pedra);padding-top:8px}
.crt-pontos{display:grid;grid-template-columns:1fr 1fr;gap:var(--passo-3) var(--passo-5);margin:var(--passo-3) 0 var(--passo-4)}
.crt-pontos h3{font-size:1.02rem;font-family:var(--letra-corpo);letter-spacing:.1em;text-transform:uppercase;color:var(--pedra)}
.crt-pontos ul{list-style:none;padding:0;margin:0}
.crt-pontos li{position:relative;padding-left:26px;margin-bottom:12px;font-size:.98rem}
.crt-pontos li::before{position:absolute;left:0;top:0;font-weight:600}
.crt-pontos--favor li::before{content:"+";color:var(--violeta)}
.crt-pontos--contra li::before{content:"–";color:var(--pedra)}
.crt-veredito{background:var(--pergaminho);padding:var(--passo-4);margin:var(--passo-4) 0}
.crt-veredito h2{margin-top:0}
.crt-veredito p:last-child{margin-bottom:0}
.crt-vizinhos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--passo-3)}
.crt-vizinho{display:flex;gap:12px;align-items:center}
.crt-vizinho img{width:56px;height:56px;flex:0 0 56px}
.crt-vizinho a{color:var(--tinta);text-decoration-color:var(--azul-vivo);font-weight:600;font-size:.98rem}
.crt-vizinho a:hover{color:var(--violeta)}
.crt-vizinho span{display:block;font-size:.8rem;color:var(--pedra);letter-spacing:.08em;text-transform:uppercase}

/* ------- listas numeradas ------- */
.crt-passos{list-style:none;counter-reset:passo;margin:0;padding:0}
.crt-passos>li{counter-increment:passo;margin:0 0 var(--passo-5);display:grid;grid-template-columns:82px minmax(0,1fr);gap:var(--passo-3)}
.crt-passos>li::before{content:counter(passo,decimal-leading-zero);font-family:var(--letra-titulo);font-size:2.4rem;line-height:1;color:var(--azul-vivo)}
.crt-passo__corpo h2{margin-bottom:6px}
.crt-passo__jogo{display:flex;align-items:center;gap:12px;margin-bottom:var(--passo-2)}
.crt-passo__jogo img{width:48px;height:48px;flex:0 0 48px}
.crt-passo__jogo a{font-weight:600;color:var(--tinta);text-decoration-color:var(--azul-vivo)}
.crt-passo__jogo a:hover{color:var(--violeta)}
.crt-passo__classe{font-size:.82rem;color:var(--pedra);display:block}

/* ------- confrontos ------- */
.crt-duelo{display:grid;grid-template-columns:1fr 1fr;gap:var(--passo-4);margin-bottom:var(--passo-4)}
.crt-duelo__lado{background:var(--pergaminho);padding:var(--passo-3);display:flex;gap:14px;align-items:center}
.crt-duelo__lado img{width:64px;height:64px;flex:0 0 64px}
.crt-duelo__lado h2{font-size:1.2rem;margin:0 0 4px}
.crt-duelo__lado p{margin:0;font-size:.86rem;color:var(--pedra)}
.crt-duelo__lado a{color:var(--tinta);text-decoration-color:var(--azul-vivo)}

/* ------- paginas de texto corrido ------- */
.crt-artigo{max-width:44em}
.crt-artigo h2{margin-top:var(--passo-4)}
.crt-artigo h3{margin-top:var(--passo-3)}
.crt-artigo ol.crt-numerada{padding-left:1.4em}
.crt-artigo ol.crt-numerada>li{margin-bottom:var(--passo-2)}
.crt-mapa{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--passo-4)}
.crt-mapa h2{font-size:1.1rem;font-family:var(--letra-corpo);letter-spacing:.1em;text-transform:uppercase;color:var(--pedra)}
.crt-mapa ul{list-style:none;padding:0;margin:0}
.crt-mapa li{margin-bottom:2px;font-size:.96rem}
.crt-mapa a{display:inline-block;padding:9px 0}
.crt-contactos{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--passo-5);align-items:start}
.crt-contactos__bloco{background:var(--pergaminho);padding:var(--passo-4)}
.crt-contactos__bloco p:last-child{margin-bottom:0}

/* ------- ecrãs estreitos ------- */
@media (max-width:1000px){
  .crt-analise{grid-template-columns:1fr}
  .crt-dados{position:static}
  .crt-generos{grid-template-columns:repeat(2,1fr)}
  .crt-mapa{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .crt-abertura__grelha{grid-template-columns:1fr;gap:var(--passo-4);align-items:start}
  .crt-abertura__vitrine{border-left:0;border-top:1px solid var(--pergaminho);padding-left:0;padding-top:var(--passo-3)}
  .crt-abertura__icones{grid-template-columns:repeat(8,1fr)}
  .crt-duvidas{grid-template-columns:1fr;gap:var(--passo-3)}
  .crt-vizinhos{grid-template-columns:1fr}
  .crt-vizinho{gap:14px}
  .crt-contactos{grid-template-columns:1fr}
  .crt-duelo{grid-template-columns:1fr}
}
@media (max-width:640px){
  .crt-mostra{grid-template-columns:1fr;gap:var(--passo-4)}
  .crt-mostra>li:first-child .crt-ficha{grid-template-columns:1fr;gap:var(--passo-2)}
  .crt-generos{grid-template-columns:1fr}
  .crt-galeria{grid-template-columns:1fr}
  .crt-pontos{grid-template-columns:1fr;gap:var(--passo-2)}
  .crt-passos>li{grid-template-columns:1fr;gap:10px}
  .crt-passos>li::before{font-size:1.8rem}
  .crt-mapa{grid-template-columns:1fr}
  .crt-abertura__icones{grid-template-columns:repeat(4,1fr)}
}
