/* =========================================================
   OMISSO FC — estilos
   Paleta extraída do escudo e do manto oficial do time
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Anton&family=Barlow+Condensed:wght@500;600;700&family=Barlow:wght@400;500;600;700&display=swap');

:root{
  --ink:#150f0e;
  --ink-soft:#241715;
  --maroon-deep:#3d0c10;
  --maroon:#7c1119;
  --maroon-bright:#a4171f;
  --maroon-glow:#c9222b;
  --gold:#cda43a;
  --gold-soft:#e6c877;
  --paper:#ece3cc;
  --paper-dim:#ddd0ac;
  --green:#12602f;
  --green-bright:#1a8a44;
  --line: rgba(236,227,204,.14);

  --font-display: 'Anton', sans-serif;
  --font-tag: 'Barlow Condensed', sans-serif;
  --font-body: 'Barlow', sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; }
h1,h2,h3{ margin:0; font-family:var(--font-display); font-weight:400; letter-spacing:.01em; }
p{ margin:0 0 1em; }
.container{
  width:min(1180px, 92%);
  margin-inline:auto;
}

/* grain texture used on dark sections */
.grain{ position:relative; }
.grain::before{
  content:"";
  position:absolute; inset:0;
  pointer-events:none;
  opacity:.5;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/></svg>");
}

/* =========== TICKER =========== */
.ticker-bar{
  background:var(--ink);
  color:var(--paper-dim);
  border-bottom:1px solid var(--line);
  overflow:hidden;
  white-space:nowrap;
  font-family:var(--font-tag);
  font-size:.92rem;
  letter-spacing:.03em;
}
.ticker-track{
  display:inline-flex;
  gap:3.5rem;
  padding:.5rem 0;
  animation:ticker 32s linear infinite;
}
.ticker-track span{ display:inline-flex; align-items:center; gap:.5rem; }
.ticker-track b{ color:var(--gold-soft); font-weight:700; }
.dot{ color:var(--maroon-bright); }
@keyframes ticker{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
  .ticker-track{ animation:none; }
}

/* =========== NAV =========== */
.site-nav{
  position:sticky; top:0; z-index:40;
  background:var(--maroon-deep);
  border-bottom:2px solid var(--gold);
}
.nav-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:.65rem 0;
}
.brand{ display:flex; align-items:center; gap:.6rem; color:var(--paper); text-decoration:none; }
.brand img{ height:40px; width:auto; }
.brand-word{ font-family:var(--font-display); font-size:1.15rem; letter-spacing:.03em; color:var(--paper); }
.brand-word em{ font-style:normal; color:var(--gold-soft); }

.nav-links{
  display:flex; gap:1.6rem; list-style:none; margin:0; padding:0;
  font-family:var(--font-tag); font-size:1.02rem; letter-spacing:.02em;
}
.nav-links a{
  color:var(--paper-dim); text-decoration:none; padding:.3rem 0;
  border-bottom:2px solid transparent;
  transition:color .2s, border-color .2s;
}
.nav-links a:hover{ color:var(--gold-soft); border-color:var(--gold); }

.nav-toggle{ display:none; background:none; border:1px solid var(--line); color:var(--paper); padding:.4rem .6rem; font-size:1.2rem; border-radius:4px; }

@media (max-width:860px){
  .nav-links{
    position:absolute; top:100%; left:0; right:0;
    background:var(--maroon-deep);
    flex-direction:column; gap:0;
    max-height:0; overflow:hidden;
    border-bottom:2px solid var(--gold);
    transition:max-height .3s ease;
  }
  .nav-links.open{ max-height:400px; }
  .nav-links a{ padding:.85rem 6%; border-bottom:1px solid var(--line); width:100%; }
  .nav-toggle{ display:inline-block; }
}

/* =========== HERO =========== */
.hero{
  position:relative;
  min-height:92vh;
  display:flex; align-items:flex-end;
  background:
    linear-gradient(180deg, rgba(21,15,14,.35) 0%, rgba(21,15,14,.55) 45%, rgba(21,15,14,.96) 92%),
    url("../img/hero-time.jpg") center 25%/cover no-repeat;
}
.hero-inner{
  position:relative; z-index:2;
  padding-block: 3.5rem 3rem;
  width:100%;
}
.hero-crest{
  height:104px; width:auto;
  filter: drop-shadow(0 6px 18px rgba(0,0,0,.55));
  margin-bottom:1.1rem;
}
.hero-eyebrow{
  font-family:var(--font-tag);
  color:var(--gold-soft);
  font-size:1.05rem;
  letter-spacing:.06em;
  margin-bottom:.4rem;
}
.hero h1{
  color:var(--paper);
  font-size:clamp(3rem, 9vw, 6.6rem);
  line-height:.92;
  text-shadow:0 8px 30px rgba(0,0,0,.5);
}
.hero h1 span{ color:var(--maroon-glow); -webkit-text-stroke:1.5px var(--gold-soft); }
.hero-sub{
  max-width:46ch;
  color:var(--paper-dim);
  font-size:1.18rem;
  margin-top:1.1rem;
}
.hero-stats{
  display:flex; flex-wrap:wrap; gap:0;
  margin-top:2.2rem;
  border-top:1px solid var(--line);
  padding-top:1.4rem;
}
.hero-stats div{
  padding:0 1.8rem 0 0; margin-right:1.8rem;
  border-right:1px solid var(--line);
}
.hero-stats div:last-child{ border-right:none; }
.hero-stats b{
  display:block; font-family:var(--font-display);
  font-size:2rem; color:var(--gold-soft); line-height:1;
}
.hero-stats span{
  font-family:var(--font-tag); color:var(--paper-dim); font-size:.95rem; letter-spacing:.02em;
}

/* =========== SECTION SCAFFOLDING =========== */
section{ padding:5.5rem 0; }
.section-dark{ background:var(--ink); color:var(--paper); }
.section-maroon{ background:var(--maroon-deep); color:var(--paper); }
.kicker{
  font-family:var(--font-tag);
  color:var(--maroon-bright);
  letter-spacing:.04em;
  font-size:1.05rem;
  margin-bottom:.5rem;
}
.section-dark .kicker, .section-maroon .kicker{ color:var(--gold-soft); }
.section-title{
  font-size:clamp(2.1rem, 4.4vw, 3.3rem);
  max-width:16ch;
  margin-bottom:1.1rem;
}
.section-lede{
  max-width:62ch;
  font-size:1.12rem;
  color:#4a3c34;
}
.section-dark .section-lede, .section-maroon .section-lede{ color:var(--paper-dim); }

/* =========== HISTÓRIA =========== */
.historia{
  display:grid;
  grid-template-columns: 1.05fr 1fr;
  gap:3.2rem;
  align-items:center;
}
.historia-figure{ position:relative; }
.historia-figure img{
  border:6px solid var(--paper);
  outline:1px solid var(--maroon-deep);
  box-shadow:0 18px 40px -14px rgba(20,10,8,.5);
}
.historia-figure figcaption{
  font-family:var(--font-tag);
  font-size:.95rem;
  color:#6b5c50;
  margin-top:.6rem;
}
@media (max-width:900px){
  .historia{ grid-template-columns:1fr; }
}

/* =========== ELENCO =========== */
.elenco-grid{
  margin-top:2.6rem;
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(230px, 1fr));
  gap:1.2rem;
}
.player-card{
  position:relative;
  background:linear-gradient(160deg, var(--maroon) 0%, var(--maroon-deep) 100%);
  border:1px solid rgba(205,164,58,.35);
  padding:1.4rem 1.3rem 1.2rem;
  min-height:190px;
  overflow:hidden;
}
.player-card::after{
  content:attr(data-num);
  position:absolute;
  right:-.15em; bottom:-.28em;
  font-family:var(--font-display);
  font-size:6.4rem;
  color:rgba(236,227,204,.09);
  line-height:1;
  pointer-events:none;
}
.player-tag{
  display:inline-block;
  font-family:var(--font-tag);
  font-size:.82rem;
  letter-spacing:.05em;
  color:var(--ink);
  background:var(--gold-soft);
  padding:.15rem .55rem;
  margin-bottom:.9rem;
}
.player-card h3{
  font-size:1.5rem;
  color:var(--paper);
  line-height:1.05;
  position:relative; z-index:1;
}
.player-card .nick{
  display:block;
  font-family:var(--font-tag);
  color:var(--gold-soft);
  font-size:1rem;
  margin-top:.25rem;
}
.player-card .num{
  font-family:var(--font-display);
  font-size:1.1rem;
  color:var(--paper-dim);
  margin-top:.8rem;
  position:relative; z-index:1;
}
.player-card.featured{
  grid-column:span 2;
  display:grid;
  grid-template-columns:120px 1fr;
  gap:1.1rem;
  align-items:center;
  min-height:auto;
  padding:1rem;
}
.player-card.featured img{
  width:120px; height:120px; object-fit:cover;
  border:2px solid var(--gold);
}
@media (max-width:560px){
  .player-card.featured{ grid-column:span 1; grid-template-columns:90px 1fr; }
  .player-card.featured img{ width:90px; height:90px; }
}

/* =========== PATROCÍNIO =========== */
.sponsor-block{
  background:
    linear-gradient(120deg, rgba(18,96,47,.94), rgba(10,58,29,.97)),
    url("../img/corrida.jpg") center 20%/cover no-repeat;
  color:var(--paper);
}
.sponsor-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2.6rem;
  align-items:center;
}
.sponsor-card{
  background:rgba(21,15,14,.55);
  border:1px solid rgba(236,227,204,.25);
  padding:2.2rem;
  backdrop-filter:blur(2px);
}
.sponsor-logo{
  background:var(--paper);
  display:inline-block;
  padding:.6rem .9rem;
  margin-bottom:1.2rem;
}
.sponsor-logo img{ height:54px; width:auto; }
.sponsor-card h2{ font-size:2.1rem; color:var(--paper); margin-bottom:.8rem; }
.sponsor-card p{ color:var(--paper-dim); }
.sponsor-card .highlight{ color:var(--gold-soft); font-weight:700; }
@media (max-width:860px){
  .sponsor-inner{ grid-template-columns:1fr; }
}

/* =========== RESULTADOS =========== */
.results-grid{
  margin-top:2.6rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1.8rem;
}
.result-card{
  background:var(--ink-soft);
  border:1px solid var(--line);
}
.result-card img{ width:100%; }
.result-card .cap{
  padding:1rem 1.2rem 1.3rem;
  font-family:var(--font-tag);
  color:var(--paper-dim);
  font-size:1rem;
}
.result-card .cap b{ color:var(--gold-soft); font-family:var(--font-body); }
@media (max-width:860px){ .results-grid{ grid-template-columns:1fr; } }

.artilheiros{
  margin-top:2.6rem;
  background:var(--ink-soft);
  border:1px solid var(--line);
  padding:1.8rem 2rem;
}
.artilheiros h3{
  font-family:var(--font-tag); font-weight:700; font-size:1.15rem;
  color:var(--gold-soft); letter-spacing:.03em; margin-bottom:1rem;
}
.artilheiros ol{
  list-style:none; margin:0; padding:0;
  display:grid; gap:.55rem;
}
.artilheiros li{
  display:flex; align-items:center; gap:.9rem;
  font-family:var(--font-body); color:var(--paper-dim);
  border-bottom:1px dashed var(--line);
  padding-bottom:.55rem;
}
.artilheiros .pos{
  font-family:var(--font-display); color:var(--maroon-glow);
  width:1.6em;
}
.artilheiros .name{ flex:1; color:var(--paper); }
.artilheiros .goals{ font-family:var(--font-display); color:var(--gold-soft); }
.artilheiros .note{
  margin-top:1.1rem; font-size:.88rem; color:#a99a87; font-family:var(--font-tag);
}

/* =========== ESCALAÇÃO =========== */
.escalacao-wrap{
  margin-top:2.6rem;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:2.4rem;
  align-items:center;
}
.escalacao-wrap img{ border:1px solid var(--maroon-deep); }
.escalacao-notes{ display:grid; gap:1.4rem; }
.note-item{ border-left:3px solid var(--maroon); padding-left:1rem; }
.note-item b{ display:block; font-family:var(--font-tag); font-size:1.05rem; color:var(--maroon); margin-bottom:.2rem;}
@media (max-width:900px){ .escalacao-wrap{ grid-template-columns:1fr; } }

/* =========== GALERIA / RESENHA =========== */
.gallery{
  margin-top:2.6rem;
  columns:3 260px;
  column-gap:1rem;
}
.gallery figure{
  margin:0 0 1rem;
  break-inside:avoid;
  position:relative;
  overflow:hidden;
}
.gallery img{ width:100%; display:block; transition:transform .5s ease; }
.gallery figure:hover img{ transform:scale(1.045); }
.gallery figcaption{
  position:absolute; left:0; right:0; bottom:0;
  padding:.9rem 1rem .7rem;
  background:linear-gradient(0deg, rgba(0,0,0,.78), rgba(0,0,0,0));
  color:var(--paper);
  font-family:var(--font-tag);
  font-size:.95rem;
}

/* =========== VÍDEO =========== */
.video-wrap{
  margin-top:2.2rem;
  border:6px solid var(--maroon-deep);
  max-width:900px;
}
.video-wrap video{ width:100%; display:block; background:#000; }

/* =========== FOOTER =========== */
footer{
  background:var(--ink);
  color:var(--paper-dim);
  padding:3.4rem 0 2rem;
  border-top:3px solid var(--gold);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:2.4rem;
}
.footer-brand{ display:flex; align-items:center; gap:.8rem; margin-bottom:1rem; }
.footer-brand img{ height:52px; }
.footer-brand span{ font-family:var(--font-display); font-size:1.4rem; color:var(--paper); }
footer h4{
  font-family:var(--font-tag); color:var(--gold-soft); font-size:1.05rem;
  letter-spacing:.03em; margin-bottom:.8rem;
}
footer p, footer li{ font-size:.96rem; }
footer ul{ list-style:none; margin:0; padding:0; display:grid; gap:.5rem; }
.footer-bottom{
  margin-top:2.6rem; padding-top:1.4rem; border-top:1px solid var(--line);
  font-family:var(--font-tag); font-size:.85rem; color:#8a7c6e;
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem;
}
@media (max-width:760px){ .footer-grid{ grid-template-columns:1fr; } }

/* utility */
.btn{
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--font-tag); letter-spacing:.03em;
  background:var(--gold); color:var(--ink);
  padding:.75rem 1.4rem; text-decoration:none;
  border:none; font-size:1.02rem;
  transition:background .2s, transform .2s;
}
.btn:hover{ background:var(--gold-soft); transform:translateY(-2px); }
