/* ================================================================
   Clube Atlético Juventus — Design System 2026 / v0.9.0
   Camada visual canônica. Esta folha é carregada DEPOIS das bases.
   Objetivos: uma única hierarquia, nenhum texto em outline/wireframe,
   heroes consistentes e densidade premium sem sufocar o conteúdo.
   ================================================================ */

:root{
  --display:Sora,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --hero-max:1180px;
}

/* -------- Tipografia global -------- */
body.juventus-2026{font-family:var(--body)}
.juventus-2026 h1,.juventus-2026 h2,.juventus-2026 h3{font-family:var(--display)}
.juventus-2026 .eyebrow,.juventus-2026 .kicker{font-family:var(--body);font-weight:780;letter-spacing:.28em}

/* Regra definitiva: nenhum outline/wireframe em títulos do portal. */
.juventus-2026 .section-title span,
.juventus-2026 .news-hero h1 span{
  color:var(--gren2)!important;
  -webkit-text-stroke:0!important;
  text-stroke:0!important;
  text-shadow:0 14px 42px rgba(155,0,87,.14)!important;
  opacity:1!important;
}

/* Headlines de seção: forte, moderna, mas sem dominar uma dobra inteira. */
.juventus-2026 .section-title{
  margin:0 0 28px;
  max-width:900px;
  font-size:clamp(45px,5vw,72px);
  line-height:.88;
  font-weight:800;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.052em;
}
.juventus-2026 .section-title span{display:block;font-weight:760;letter-spacing:-.055em}
.juventus-2026 .lead{margin:-10px 0 38px;max-width:760px;font-size:16px;line-height:1.72}

/* -------- Home hero --------
   Mantém cinema e respiro. O título é explicitamente 2 linhas no desktop. */
body.home.juventus-2026 .hero{
  min-height:clamp(640px,79svh,780px);
  display:grid;
  place-items:center;
}
body.home.juventus-2026 .hero-content{
  width:min(1100px,calc(100% - 48px));
  max-width:none;
  padding:104px 0 58px;
}
body.home.juventus-2026 .hero h1{
  margin:17px auto 0;
  max-width:1040px;
  font-size:clamp(62px,6.85vw,108px);
  line-height:.89;
  font-weight:800;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.058em;
  text-shadow:0 18px 56px rgba(0,0,0,.42);
}
body.home.juventus-2026 .hero h1 .hero-line{display:block;white-space:nowrap;font-weight:800;letter-spacing:-.058em}
body.home.juventus-2026 .hero p{max-width:680px;margin:23px auto 28px;font-size:16px;line-height:1.62}
body.home.juventus-2026 .hero .actions{gap:12px}
body.home.juventus-2026 .hero .scroll{bottom:18px}

/* Ritmo da Home: suficiente para respirar sem parecer conteúdo espalhado. */
body.home.juventus-2026 main>section{padding-top:84px;padding-bottom:84px}
body.home.juventus-2026 main>.quick{padding-top:38px;padding-bottom:70px}
body.home.juventus-2026 #modalidades,
body.home.juventus-2026 #conselhos,
body.home.juventus-2026 #servicos{scroll-margin-top:90px}

/* -------- Hero interno fotográfico -------- */
.juventus-2026 .page-hero,
.juventus-2026 .page-hero.compact,
.juventus-2026 .page-hero--editorial,
.juventus-2026 .page-hero--sport{
  position:relative;
  min-height:clamp(360px,43svh,455px);
  padding:112px 0 42px;
  display:flex;
  align-items:flex-end;
  background-size:cover;
  background-repeat:no-repeat;
}
.juventus-2026 .page-hero--editorial:before,
.juventus-2026 .page-hero--sport:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.80) 0%,rgba(0,0,0,.56) 45%,rgba(0,0,0,.18) 78%,rgba(0,0,0,.30) 100%);
}
.juventus-2026 .page-hero-content{
  position:relative;
  z-index:2;
  width:min(var(--hero-max),calc(100% - 48px));
  margin-inline:auto;
  text-align:left;
}
.juventus-2026 .page-hero-content .breadcrumb,
.juventus-2026 .page-hero-content .kicker,
.juventus-2026 .page-hero-content h1,
.juventus-2026 .page-hero-content p{margin-left:0;margin-right:auto;text-align:left}
.juventus-2026 .page-hero .kicker{margin-top:14px!important}
.juventus-2026 .page-hero h1{
  margin-top:12px;
  max-width:800px;
  font-size:clamp(54px,5.8vw,82px);
  line-height:.88;
  font-weight:800;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.054em;
  text-shadow:0 16px 48px rgba(0,0,0,.38);
}
.juventus-2026 .page-hero p{max-width:640px;margin-top:14px;font-size:15.5px;line-height:1.62}

/* -------- Variações do hero full-bleed -------- */
.juventus-2026 .page-hero--services:before,
.juventus-2026 .page-hero--council:before{
  background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.66) 42%,rgba(0,0,0,.30) 72%,rgba(0,0,0,.42) 100%);
}
.juventus-2026 .page-hero--services h1,
.juventus-2026 .page-hero--council h1{max-width:880px}
.juventus-2026 .page-hero--long-title h1{
  max-width:930px;
  font-size:clamp(48px,5.15vw,74px);
}
.juventus-2026 .page-hero--council-deliberativo:before{
  background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.68) 44%,rgba(0,0,0,.32) 74%,rgba(0,0,0,.46) 100%);
}

/* -------- Conteúdo interno -------- */
.juventus-2026 .page-hero+main>section:first-child:not(.cta-final),
.juventus-2026 .page-hero+main>section:not(.cta-final),
.juventus-2026 .content-grid{gap:46px}
.juventus-2026 .prose h2{
  margin:0 0 20px;
  font-size:clamp(36px,4vw,52px);
  line-height:.96;
  font-weight:760;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.04em;
}
.juventus-2026 .prose h3{margin:34px 0 14px;font-size:25px;font-weight:720;font-style:normal;text-transform:uppercase;letter-spacing:-.03em}
.juventus-2026 .side-card h3,.juventus-2026 .service-card h2,.juventus-2026 .download-card h2{
  font-style:normal;
  text-transform:uppercase;
  font-weight:720;
  letter-spacing:-.032em;
}
.juventus-2026 .service-grid{gap:20px}
.juventus-2026 .service-card{min-height:260px;padding:29px}

/* Cards de mídia: proporções e cortes controlados. */
.juventus-2026 .sport-card{background-position:center 42%}
.juventus-2026 .sport-card.big{min-height:390px}
.juventus-2026 .news-image{aspect-ratio:16/9}
.juventus-2026 .photo-tile{background-position:center 45%}

/* -------- Blog/arquivo WordPress -------- */
.juventus-2026 .news-hero{
  min-height:clamp(480px,58svh,590px);
  padding:118px 0 58px;
}
.juventus-2026 .news-hero-inner{width:min(var(--hero-max),calc(100% - 48px));margin-inline:auto}
.juventus-2026 .news-hero h1{
  margin:14px 0 18px;
  max-width:900px;
  font-size:clamp(60px,7.2vw,102px);
  line-height:.87;
  font-weight:800;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.056em;
}
.juventus-2026 .news-hero h1 span{display:block}
.juventus-2026 .news-hero p{max-width:680px;font-size:16px;line-height:1.64}
.juventus-2026 .hero-search{margin-top:25px}
.juventus-2026 .featured-section,.juventus-2026 .news-section,.juventus-2026 .related-section{padding:68px 0}
.juventus-2026 .section-head{margin-bottom:28px}
.juventus-2026 .section-head h2,.juventus-2026 .related-section h2{
  font-size:clamp(42px,4.5vw,62px);
  line-height:.93;
  font-weight:780;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.045em;
}
.juventus-2026 .archive-hero,.juventus-2026 .single-hero{padding:116px 0 48px}
.juventus-2026 .archive-hero h1{
  margin:12px 0;
  font-size:clamp(54px,6.5vw,88px);
  line-height:.89;
  font-weight:800;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:-.05em;
}
.juventus-2026 .single-hero h1{
  margin:12px 0 16px;
  font-size:clamp(44px,5.4vw,74px);
  line-height:.95;
  font-weight:740;
  font-style:normal;
  text-transform:none;
  letter-spacing:-.045em;
}
.juventus-2026 .archive-description{max-width:680px;font-size:16px;line-height:1.7}
.juventus-2026 .single-layout{gap:50px;padding-top:48px;padding-bottom:68px}

/* -------- Responsividade -------- */
@media(max-width:980px){
}
@media(max-width:700px){
  .juventus-2026 .section-title{font-size:clamp(40px,12vw,58px);line-height:.91;margin-bottom:25px}
  .juventus-2026 .lead{margin-top:-7px}
  body.home.juventus-2026 .hero{min-height:clamp(560px,76svh,660px)}
  body.home.juventus-2026 .hero-content{width:calc(100% - 30px);padding:92px 0 44px}
  body.home.juventus-2026 .hero h1{font-size:clamp(48px,13.5vw,72px);line-height:.90;letter-spacing:-.052em}
  body.home.juventus-2026 .hero h1 .hero-line{white-space:normal}
  body.home.juventus-2026 .hero p{font-size:15px;margin:19px auto 23px}
  body.home.juventus-2026 main>section{padding-top:58px;padding-bottom:58px}

  .juventus-2026 .page-hero,.juventus-2026 .page-hero.compact,.juventus-2026 .page-hero--editorial,.juventus-2026 .page-hero--sport{
    min-height:auto;padding:94px 0 32px;
  }
  .juventus-2026 .page-hero-content{width:calc(100% - 30px)}
  .juventus-2026 .page-hero h1{font-size:clamp(45px,12.5vw,64px);line-height:.90}
  .juventus-2026 .page-hero p{font-size:15px;margin-top:12px}


  .juventus-2026 .page-hero+main>section:not(.cta-final){padding-top:50px;padding-bottom:50px}
  .juventus-2026 .content-grid{gap:30px}
  .juventus-2026 .service-card{min-height:240px;padding:25px}

  .juventus-2026 .news-hero{min-height:auto;padding:102px 0 44px}
  .juventus-2026 .news-hero-inner{width:calc(100% - 30px)}
  .juventus-2026 .news-hero h1{font-size:clamp(48px,13.5vw,70px);line-height:.90}
  .juventus-2026 .archive-hero,.juventus-2026 .single-hero{padding:102px 0 38px}
  .juventus-2026 .archive-hero h1{font-size:clamp(44px,12.5vw,64px)}
  .juventus-2026 .single-hero h1{font-size:clamp(38px,10.8vw,56px)}
  .juventus-2026 .featured-section,.juventus-2026 .news-section,.juventus-2026 .related-section{padding:52px 0}
}

@media(prefers-reduced-motion:reduce){
}
