/* maringa.net — folha única. Sem dependências externas, sem fontes remotas. */

:root{
  --tinta:#1f1c18;
  --tinta-suave:#5a5348;
  --terra:#6b4a2f;
  --terra-claro:#8a6543;
  --creme:#f7f4ec;
  --creme-fundo:#fbf9f3;
  --linha:#ddd5c4;
  --musgo:#4c5a45;
  --largura:1080px;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--creme-fundo);
  color:var(--tinta);
  font:400 1.0625rem/1.65 var(--serif);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%}
a{color:var(--terra);text-decoration:none}
a:hover{color:var(--terra-claro)}
a:focus-visible,button:focus-visible{outline:2px solid var(--terra);outline-offset:3px}
h1,h2,h3{font-weight:600;letter-spacing:-.01em;line-height:1.15;margin:0}
p{margin:0 0 1rem}
.wrap{width:min(100% - 2.5rem,var(--largura));margin-inline:auto}

.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem .75rem;border:1px solid var(--linha);z-index:10}

/* ── topo ───────────────────────────────────────────── */
.topo{
  position:sticky;top:0;z-index:5;
  background:color-mix(in srgb,var(--creme-fundo) 88%,transparent);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--linha);
}
.topo__linha{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0}
.marca{
  display:inline-flex;align-items:center;gap:.5rem;
  font:600 1.05rem/1 var(--sans);letter-spacing:.06em;color:var(--tinta);
}
.marca__tld{color:var(--tinta-suave);font-weight:400}
.marca__ponto{
  width:.6rem;height:.6rem;border-radius:50%;
  background:var(--terra);box-shadow:0 0 0 3px color-mix(in srgb,var(--terra) 18%,transparent);
}
.nav{display:flex;gap:1.35rem;font:500 .875rem/1 var(--sans);letter-spacing:.04em;text-transform:uppercase}
.nav a{color:var(--tinta-suave);padding:.35rem 0;border-bottom:1px solid transparent}
.nav a:hover{color:var(--terra);border-bottom-color:var(--terra)}

/* ── herói ──────────────────────────────────────────── */
.heroi{
  padding:clamp(3.5rem,9vw,7rem) 0 clamp(2.5rem,6vw,4.5rem);
  background:
    radial-gradient(120% 90% at 85% -10%,color-mix(in srgb,var(--terra) 9%,transparent),transparent 60%),
    linear-gradient(180deg,var(--creme) 0%,var(--creme-fundo) 78%);
  border-bottom:1px solid var(--linha);
}
.olho{
  font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;
  color:var(--terra);margin-bottom:1.4rem;
}
.heroi h1{
  font-size:clamp(2.9rem,7.2vw,5.1rem);
  font-weight:500;line-height:.98;letter-spacing:-.025em;margin-bottom:1rem;
}
.linha-fina{
  font-size:clamp(1.05rem,2.1vw,1.3rem);font-style:italic;color:var(--tinta-suave);
  margin-bottom:1.6rem;
}
.chamada{max-width:none;font-size:clamp(1.05rem,1.55vw,1.22rem);color:#2f2a24;margin-bottom:1.1rem}
.acoes{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}
.botao{
  display:inline-block;padding:.8rem 1.4rem;border:1px solid var(--terra);border-radius:2px;
  font:600 .9rem/1 var(--sans);letter-spacing:.03em;color:var(--terra);background:transparent;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.botao:hover{background:color-mix(in srgb,var(--terra) 8%,transparent);color:var(--terra)}
.botao--forte{background:var(--terra);color:#fff;border-color:var(--terra)}
.botao--forte:hover{background:#583a24;border-color:#583a24;color:#fff}
.nota{font:400 .82rem/1.5 var(--sans);color:var(--tinta-suave);margin:0}

/* ── secções ────────────────────────────────────────── */
section{padding:clamp(2.75rem,6vw,4.75rem) 0}
.titulo-secao{
  font:600 .8rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;
  color:var(--terra);margin-bottom:2rem;
}
.portas{border-bottom:1px solid var(--linha)}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.5rem}
.porta{
  padding:1.6rem 1.5rem 1.35rem;background:#fff;
  border:1px solid var(--linha);border-radius:3px;
  display:flex;flex-direction:column;
  box-shadow:0 1px 0 rgba(31,28,24,.03);
}
.porta h3{font-size:1.3rem;margin-bottom:.6rem}
.porta h3 a{color:var(--tinta)}
.porta h3 a:hover{color:var(--terra)}
.porta p{font-size:.97rem;color:var(--tinta-suave);margin-bottom:.9rem}
.porta__link{margin:auto 0 0;font:500 .84rem/1 var(--sans);letter-spacing:.02em}
.porta__link--mudo{color:var(--tinta-suave)}
.porta--futuro{background:
   linear-gradient(180deg,#fff,color-mix(in srgb,var(--creme) 65%,#fff));
   border-style:dashed;
}
.selo{
  display:inline-block;vertical-align:.15em;margin-left:.4rem;
  font:600 .62rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;
  color:var(--musgo);background:color-mix(in srgb,var(--musgo) 10%,transparent);
  border:1px solid color-mix(in srgb,var(--musgo) 26%,transparent);
  padding:.28rem .45rem;border-radius:2px;
}

/* ── montanha ──────────────────────────────────────────── */
.montanha{background:var(--creme);border-bottom:1px solid var(--linha)}
.montanha__grade{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.montanha__texto{max-width:52ch;color:#2f2a24}
.montanha__texto strong{font-weight:600}
.mapa{margin:0;border:1px solid var(--linha);background:#fff;border-radius:3px;overflow:hidden}
.mapa picture{display:block}
.mapa__link{display:block;line-height:0}
.mapa__link img{transition:opacity .18s ease}
.mapa__link:hover img{opacity:.9}
.mapa img{display:block;width:100%;height:auto}
.mapa figcaption{padding:.6rem .8rem;border-top:1px solid var(--linha);font:400 .74rem/1.5 var(--sans);color:#8b8272}





/* ── confiança ──────────────────────────────────────── */
.principios{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.75rem}
.principios h3{font-size:1.08rem;margin-bottom:.5rem}
.principios p{font-size:.95rem;color:var(--tinta-suave);margin:0}

/* ── rodapé ─────────────────────────────────────────── */
.rodape{background:#1f1c18;color:#d9d2c4;padding:2.2rem 0}
.rodape__linha{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem}
.rodape__marca{font:600 .95rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0}
.rodape nav{display:flex;gap:1.1rem;font:500 .82rem/1 var(--sans);letter-spacing:.04em}
.rodape a{color:#e9e2d4;border-bottom:1px solid transparent;padding-bottom:2px}
.rodape a:hover{color:#fff;border-bottom-color:#8a6543}
.rodape__licenca{margin:0 0 0 auto;font:400 .78rem/1.6 var(--sans);color:#a39a89;max-width:34ch}

/* ── ecrãs ──────────────────────────────────────────── */
@media (max-width:820px){
  .montanha__grade{grid-template-columns:1fr}
  .rodape__licenca{margin:0;max-width:none}
}
@media (max-width:560px){
  .nav{gap:.9rem;font-size:.8rem}
  .heroi h1{letter-spacing:-.02em}
  .porta{padding:1.4rem 1.25rem}
}

@media (prefers-color-scheme:dark){
  :root{
    --tinta:#ece6da;--tinta-suave:#b8b0a1;--creme:#1b1815;--creme-fundo:#141210;--linha:#332e27;
    --terra:#c08a5c;--terra-claro:#d69f70;
  }
  body{background:var(--creme-fundo);color:var(--tinta)}
  .topo{background:color-mix(in srgb,var(--creme-fundo) 90%,transparent)}
  .heroi{background:radial-gradient(120% 90% at 85% -10%,color-mix(in srgb,var(--terra) 12%,transparent),transparent 60%),linear-gradient(180deg,var(--creme) 0%,var(--creme-fundo) 78%)}
  .porta,.mapa{background:#1d1a17}
  .porta--futuro{background:linear-gradient(180deg,#1d1a17,#191614)}
  .chamada,.montanha__texto{color:#ddd5c8}
  .botao--forte{color:#141210}
  .rodape{background:#0f0d0b}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}

@media print{
  .topo,.acoes,.rodape nav{display:none}
  body{background:#fff;color:#000}
  .porta,.ficha{box-shadow:none}
}

/* ── faixa de imagem do herói (16:9) ─────────────────── */
.heroi__texto{max-width:none}
.heroi__prosa{margin-top:1.6rem;max-width:none}
.heroi__prosa .chamada:last-child{margin-bottom:0}
.heroi h1{margin-bottom:.9rem}
.heroi .nota{margin:.2rem 0 1.6rem}
.faixa{
  width:min(100% - 2.5rem,var(--largura));
  margin:2.75rem auto 0;
  background:#fff;border:1px solid var(--linha);border-radius:3px;overflow:hidden;
}
.faixa picture,.faixa img{display:block;width:100%;height:auto}
.faixa img{aspect-ratio:1195/672;object-fit:cover}
.faixa figcaption{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;
  padding:.7rem .95rem;border-top:1px solid var(--linha);
  font:400 .78rem/1.5 var(--sans);color:var(--tinta-suave);
}
.faixa figcaption span{color:#8b8272}

/* ── faixa de números ───────────────────────────────── */
.numeros{border-top:1px solid var(--linha);margin-top:2.5rem;padding-top:1.35rem}
.numeros__linha{display:flex;flex-wrap:wrap;align-items:baseline;gap:.9rem 2.6rem}
.numeros__dado{margin:0;display:flex;align-items:baseline;gap:.45rem}
.numeros__acoes{margin:0 0 0 auto;display:flex;flex-wrap:wrap;gap:.7rem}
.numeros strong{font:600 1.65rem/1 var(--serif);color:var(--terra)}
.numeros__dado>span{font:400 .85rem/1.3 var(--sans);color:var(--tinta-suave)}


.rodape__correcao{display:inline-block;margin-top:.4rem;color:#a39a89;font-size:.74rem}

@media (max-width:700px){
  .numeros__acoes{margin:0;width:100%}
  .faixa figcaption{font-size:.74rem}
}
@media (prefers-color-scheme:dark){
  .faixa{background:#1d1a17}
  .faixa figcaption span,.numeros__fonte{color:#8f8778}
}

/* ── selector de idioma (canto superior direito) ─────── */
.topo__linha{gap:1rem}
.marca{margin-right:auto}
.langs{display:flex;align-items:center;gap:.28rem;margin-left:.35rem}
.langs a{
  display:inline-block;padding:.24rem .38rem;border:1px solid var(--linha);border-radius:2px;
  font:600 .68rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;
  color:var(--tinta-suave);background:transparent;
}
.langs a:hover{color:var(--terra);border-color:var(--terra)}
.langs a[aria-current]{background:var(--terra);border-color:var(--terra);color:#fff}
@media (max-width:760px){
  .topo__linha{flex-wrap:wrap;row-gap:.45rem}
  .langs{order:3;width:100%;justify-content:flex-end;margin-left:0;padding-bottom:.35rem}
  .nav{order:2;margin-left:auto}
}
