
/* SiteOficial — final mobile/tablet reading polish. Desktop layout is preserved. */

/* Footer metrics: clear separators instead of bullet characters. */
.footer-tagline{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:0!important;
  color:#fff!important;
}
.footer-tagline .footer-stat{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  padding:0 14px!important;
  white-space:nowrap!important;
}
.footer-tagline .footer-stat + .footer-stat{
  border-left:1px solid rgba(255,255,255,.38)!important;
}
.footer-cnpj{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  text-align:center!important;
}
.footer-owner,.footer-cnpj-id{display:block!important}

@media (max-width:768px){
  /* The reading column is centered on phones/tablets; data tables and CRM rows remain functional. */
  .hero-fore,
  .hero-italic-line,
  .journey-intro,
  .va-center,
  .profiles-section .container>div:first-child,
  .what-text,
  .why-text,
  .cta-hammer,
  .cta-hammer .container{
    text-align:center!important;
  }

  section h1,section h2,section h3,section h4,section h5,section h6,
  section p,
  section:not(#cockpit) li,
  .s-kicker,.s-headline,.s-body,
  .stage-content,.stage-tag,.stage-title,.stage-body,
  .profile-card,.profile-card h4,.profile-card p,
  .va-step,.va-step strong,.va-step p,
  .faq-q,.faq-a,
  .cta-hammer-eyebrow,.cta-hammer-title,.cta-hammer-sub,.cta-hammer-note{
    text-align:center!important;
  }

  /* Titles use the phone width instead of breaking artificially early. */
  .hero-main-title{
    max-width:18ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    text-wrap:balance!important;
  }
  .hero-tagline{
    max-width:40ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    line-height:1.56!important;
  }
  .hero-badge{
    width:max-content!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .hero-italic-line{margin-left:auto!important;margin-right:auto!important}

  .s-kicker{margin-left:auto!important;margin-right:auto!important}
  .s-headline,
  .what-text .s-headline,
  .why-text .s-headline{
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    text-wrap:balance!important;
  }
  .s-body{
    max-width:42ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    line-height:1.58!important;
    text-align:center!important;
  }

  /* Slightly tighter body copy for long-form mobile reading. */
  section p,section:not(#cockpit) li,
  .stage-body,.stage-detail-list li,.faq-a,
  .why-text>p,.profile-card p,.va-step p{
    line-height:1.58!important;
  }

  /* Concept and editorial lists. */
  .what-points li{
    justify-content:center!important;
    text-align:center!important;
  }
  .what-points li>span{display:block!important;text-align:center!important}

  .divs-grid-3>*,.va-grid-3>*,.va-grid-2>*,
  .receive-grid>*,.live-grid>*,.time-grid>*,.who-grid>*,.age-grid>*,
  .real-grid>*,.cal-grid>*,.trans-grid>*,.vw-grid>*,.notfor-grid>*,
  .rules-grid>*,.err-grid>*{
    text-align:center!important;
  }
  .divs-grid-3 h3,.va-grid-3 h3,.va-grid-2 h3,
  .receive-grid h3,.live-grid h3,.time-grid h3,.who-grid h3,
  .cal-grid h3,.vw-grid h3,
  .divs-grid-3 p,.va-grid-3 p,.va-grid-2 p,.receive-grid p,.live-grid p,
  .time-grid p,.who-grid p,.age-grid p,.real-grid p,.cal-grid p,
  .trans-grid p,.vw-grid p,.notfor-grid p,.rules-grid p,.err-grid p{
    text-align:center!important;
  }
  .div-card .div-badge,
  .stage-tag{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Journey/timeline keeps its visual rail, but all copy is centered. */
  .stage-content{padding-left:2px!important;padding-right:2px!important}
  .stage-detail-list li{text-align:center!important}
  .stage-callout,.stage-callout p{text-align:center!important}
  .va-step{text-align:center!important}

  /* Athlete profile text centered; searchable CRM rows stay left-aligned for fast scanning. */
  .profile-card{text-align:center!important}
  #perfis .profiles-grid>div>h3,
  #perfis .profiles-grid>div>p,
  #perfis .profile-card h4,
  #perfis .profile-card p{text-align:center!important}

  /* Search tool copy. */
  #busca .busca-copy,
  #busca .busca-copy p,
  #busca .busca-feats li,
  #busca .busca-gate-note{text-align:center!important}
  #busca .busca-feats li{justify-content:center!important}

  /* Documents / eligibility: center the explanatory copy while retaining the visual marker rail. */
  #documentos .container>div:nth-child(2)>div,
  #elegibilidade .container>div:nth-child(2)>div,
  #elegibilidade .container>div:nth-child(3),
  #elegibilidade .elig-official-note{
    text-align:center!important;
  }
  #documentos .container>div:nth-child(2) strong,
  #documentos .container>div:nth-child(2) p,
  #elegibilidade .container>div:nth-child(2) p,
  #elegibilidade .elig-official-note{text-align:center!important}

  /* Work section: narrative centered; numeric wage table remains tabular. */
  #trabalhar .work-rule-card,
  #trabalhar .work-rule-card h3,
  #trabalhar .work-rule-card p,
  #trabalhar .wage-panel-head,
  #trabalhar .wage-panel-head h3,
  #trabalhar .wage-panel-head p,
  #trabalhar .work-quote-v10,
  #trabalhar .work-quote-v10 p{text-align:center!important}
  #trabalhar .work-rule-card ul{text-align:center!important}
  #trabalhar .work-rule-card li{
    text-align:center!important;
    padding-left:0!important;
  }
  #trabalhar .work-rule-card li:before{
    position:static!important;
    display:inline-block!important;
    margin-right:7px!important;
    vertical-align:middle!important;
  }
  #trabalhar .wage-table-v10 th:first-child,
  #trabalhar .wage-table-v10 td:first-child{text-align:left!important}
  #trabalhar .wage-table-v10 th:not(:first-child),
  #trabalhar .wage-table-v10 td:not(:first-child){text-align:right!important}

  /* Cost rows keep item/value alignment because that is easier to compare. */
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:first-child{text-align:left!important}
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(2){text-align:right!important}
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(3){text-align:center!important}

  /* Media + FAQ + final CTA. */
  #midia .vaa-inline-video+div,
  #midia .vaa-inline-video+div h3,
  #midia .vaa-inline-video+div p{text-align:center!important}
  .faq-item summary{position:relative!important;text-align:center!important}
  .faq-q{width:100%!important;padding-left:28px!important;padding-right:28px!important}
  .faq-a{text-align:center!important}
  .cta-hammer-sub{margin-left:auto!important;margin-right:auto!important}
  .cta-hammer-note{text-align:center!important}

  /* Compact sticky action bar on current iPhone widths (not only sub-390px devices). */
  .sticky-bar{
    flex-direction:row!important;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;
    gap:8px!important;
  }
  .sticky-bar-copy{display:none!important}
  .sticky-bar-buttons{
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
  }
  .sticky-bar-buttons .sticky-bar-btn{
    min-height:46px!important;
    justify-content:center!important;
    padding:8px 10px!important;
    font-size:11px!important;
    letter-spacing:.55px!important;
    text-align:center!important;
  }
  .sticky-bar-buttons .sticky-bar-btn:last-child{display:none!important}
  .sidenav-toggle{bottom:calc(76px + env(safe-area-inset-bottom))!important}

  /* Footer: deliberate 2x2 metric layout, no awkward wraps. */
  .footer{padding-bottom:32px!important}
  .footer-content{text-align:center!important}
  .footer-brand{text-align:center!important}
  .footer-tagline{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:min(100%,390px)!important;
    max-width:390px!important;
    margin:18px auto 24px!important;
    color:#fff!important;
    font-size:12px!important;
    line-height:1.35!important;
    letter-spacing:.35px!important;
  }
  .footer-tagline .footer-stat{
    min-height:38px!important;
    padding:7px 10px!important;
    color:#fff!important;
    white-space:normal!important;
    text-align:center!important;
  }
  .footer-tagline .footer-stat + .footer-stat{border-left:0!important}
  .footer-tagline .footer-stat:nth-child(even){border-left:1px solid rgba(255,255,255,.38)!important}
  .footer-tagline .footer-stat:nth-child(n+3){padding-top:8px!important}
  .footer-desc{
    text-align:center!important;
    line-height:1.58!important;
    max-width:38ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .footer-contact,.footer-contact a{text-align:center!important;justify-content:center!important}
  .footer-cnpj{
    display:flex!important;
    flex-direction:column!important;
    gap:4px!important;
    margin-top:18px!important;
    text-align:center!important;
    line-height:1.45!important;
  }
  .footer-owner{white-space:nowrap!important}
  .footer-cnpj-id{white-space:nowrap!important}
  .footer-copyright{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:clamp(8.8px,2.45vw,10.5px)!important;
    letter-spacing:0!important;
  }
  .launch-legal,.launch-legal p,.launch-legal div{text-align:center!important}
}

@media (max-width:420px){
  .hero-main-title{max-width:19ch!important}
  .s-headline{max-width:100%!important}
  .footer-tagline{width:100%!important}
  .footer-tagline .footer-stat{font-size:11.5px!important;padding-left:7px!important;padding-right:7px!important}
  .footer-owner,.footer-cnpj-id{font-size:12.5px!important}
}



/* Critical mobile fixes — athlete ticker, centered editorial copy, clean concept bullets. */
.age-unit{
  font-family:'Barlow Condensed',sans-serif;
  font-size:.42em;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-left:.18em;
  vertical-align:.12em;
}
@keyframes vaa-ticker-mobile-px{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(var(--vaa-ticker-shift,-50%),0,0)}
}
@media (max-width:768px){
  /* The athlete destination ticker must remain visible and moving on phones. */
  .urgency-bar{display:block!important;visibility:visible!important;overflow:hidden!important}
  .urgency-viewport{
    display:block!important;visibility:visible!important;opacity:1!important;
    min-height:48px!important;height:auto!important;overflow:hidden!important;
  }
  .urgency-track{
    display:flex!important;width:max-content!important;min-width:max-content!important;
    min-height:48px!important;visibility:visible!important;opacity:1!important;
    flex-wrap:nowrap!important;will-change:transform!important;
  }
  .urgency-track.vaa-mobile-ticker{
    animation:vaa-ticker-mobile-px var(--vaa-ticker-duration,240s) linear infinite!important;
    animation-play-state:running!important;
  }
  .urgency-item{
    display:inline-flex!important;visibility:visible!important;opacity:1!important;
    min-height:48px!important;align-items:center!important;flex:0 0 auto!important;
  }
  .urgency-flag,.urgency-name,.urgency-dest,.urgency-league,.urgency-sep{
    visibility:visible!important;opacity:1!important;
  }

  /* Red decorative dot no longer fits the centered concept list on phones. */
  #o-que-e .what-points li::before{display:none!important;content:none!important}
  #o-que-e .what-points li{gap:0!important;padding-left:0!important;padding-right:0!important}
  #o-que-e .what-points li>span{width:100%!important;margin:0 auto!important}

  /* Earlier high-specificity desktop rules were winning over the final centered mobile layout. */
  #transferencia .trans-grid>div,
  #transferencia .trans-grid>div>p:first-child,
  #transferencia .trans-grid>div>p:last-child{
    text-align:center!important;
  }
  #transferencia .trans-grid>div>p:last-child{
    margin-left:auto!important;margin-right:auto!important;
  }

  #moradia .live-grid>div,
  #moradia .live-grid>div>div:first-child,
  #moradia .live-grid h3,
  #moradia .live-grid p,
  #moradia .live-grid ul,
  #moradia .live-grid li{
    text-align:center!important;
  }
  #moradia .live-grid p,
  #moradia .live-grid ul{
    margin-left:auto!important;margin-right:auto!important;
  }
}
@media (max-width:768px) and (prefers-reduced-motion:reduce){
  .urgency-track.vaa-mobile-ticker{animation:none!important;transform:none!important}
  .urgency-viewport{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}



/* Final mobile audit: narrative copy centered; decorative list dots removed only on mobile. */
@media (max-width:768px){
  /* Center every narrative section by inheritance, then preserve data/UI exceptions below. */
  section:not(#cockpit):not(#custos){text-align:center!important;}
  section:not(#cockpit):not(#custos) [style*="text-align:left"],
  section:not(#cockpit):not(#custos) [style*="text-align: left"]{text-align:center!important;}

  /* Remaining high-specificity text that was still able to stay left-aligned. */
  .stage-num-col,.stage-num,.stage-tag,.stage-callout-tag,
  #trabalhar .wage-note-v10,
  #mitos .myths-grid,#mitos .myth-myth,#mitos .myth-truth,
  #historias .hist-card-body,#historias .hist-card-name-v2,
  #historias .hist-card-info-row,#historias .hist-card-info-row span{
    text-align:center!important;
  }
  .stage-num-col{align-items:center!important;}
  #historias .hist-card-info-row{justify-content:center!important;}
  #historias .hist-card-info-row span{flex:0 1 auto!important;}

  /* Remove the red/green decorative dots that look displaced with centered mobile copy. */
  #o-que-e .what-points li::before,
  .cal-grid ul li::before,
  .work-grid ul li::before,
  .live-grid ul li::before,
  #trabalhar .work-rule-card li::before{
    display:none!important;
    content:none!important;
  }
  .cal-grid ul,.work-grid ul,.live-grid ul,#trabalhar .work-rule-card ul{
    list-style:none!important;
    padding-left:0!important;
  }
  .cal-grid ul li,.work-grid ul li,.live-grid ul li,#trabalhar .work-rule-card li{
    padding-left:0!important;
    padding-right:0!important;
    text-align:center!important;
  }

  /* Search preview remains a realistic UI: its internal mock rows stay left-aligned. */
  #busca .busca-mock,#busca .busca-mock *{text-align:left!important;}
  #busca .busca-mock-top{justify-content:flex-start!important;}

  /* Data tables keep comparison-friendly alignment instead of forced centering. */
  #trabalhar .wage-table-v10 th:first-child,
  #trabalhar .wage-table-v10 td:first-child{text-align:left!important;}
  #trabalhar .wage-table-v10 th:not(:first-child),
  #trabalhar .wage-table-v10 td:not(:first-child){text-align:right!important;}
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:first-child{text-align:left!important;}
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(2){text-align:right!important;}
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(3){text-align:center!important;}
}



/* Final requested cleanup: remove rhetorical micro-labels on every viewport. */
.s-kicker,
[data-i18n$="-kicker"],
.cta-hammer-eyebrow,
.div-tag,
.stage-tag,
.stage-callout-tag,
[data-i18n="who1-tag"],
[data-i18n="who2-tag"],
[data-i18n="who3-tag"],
[data-i18n="age1-tag"],
[data-i18n="age2-tag"],
[data-i18n="age3-tag"]{
  display:none!important;
}

/* Age ranges: number and unit are one aligned typographic unit on desktop and mobile. */
.age-grid>div>div:first-child{
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:.20em!important;
  flex-wrap:nowrap!important;
  margin-bottom:18px!important;
}
.age-unit{
  font-family:'Playfair Display',serif!important;
  font-size:.44em!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:inherit!important;
  margin:0!important;
  vertical-align:baseline!important;
  white-space:nowrap!important;
}

/* Athlete ticker: vertical touch gestures must never restart, pause or drag the animation. */
@media (hover:none), (pointer:coarse){
  .urgency-bar:hover .urgency-track{animation-play-state:running!important;}
}
@media (max-width:768px){
  .urgency-viewport{
    touch-action:pan-y!important;
    overscroll-behavior-x:none!important;
    -webkit-user-select:none!important;
    user-select:none!important;
  }
  .urgency-track,.urgency-item{pointer-events:none!important;}

  /* Floating navigation stays lower on the hero; once the sticky CTA appears it sits just above it. */
  .sidenav-toggle{
    top:auto!important;
    bottom:12px!important;
    left:12px!important;
  }
  body.sticky-ativa .sidenav-toggle{bottom:76px!important;}

  /* Smaller/lower floating contact icon so it never masks editorial copy. */
  .whatsapp-float{
    width:46px!important;
    height:46px!important;
    right:12px!important;
    bottom:10px!important;
  }
  .whatsapp-float svg{width:23px!important;height:23px!important;}

  /* Costs: compact, deliberate mobile rows instead of a squeezed 3-column desktop table. */
  #custos .container>div:first-child{padding-left:4px!important;padding-right:4px!important;}
  #custos .s-headline{
    max-width:9.5em!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:clamp(40px,11.5vw,52px)!important;
    line-height:.98!important;
  }
  #custos .s-body{
    max-width:34em!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:16px!important;
    line-height:1.56!important;
  }
  #custos .container>div:nth-child(2){
    margin-top:32px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  #custos .container>div:nth-child(2)>div:first-child{display:none!important;}
  #custos .container>div:nth-child(2)>div:not(:first-child){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    column-gap:14px!important;
    row-gap:6px!important;
    align-items:start!important;
    padding:19px 0!important;
    background:transparent!important;
    border-left:0!important;
    border-right:0!important;
    border-top:0!important;
    border-bottom:1px solid var(--border)!important;
  }
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:first-child{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    text-align:left!important;
  }
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:first-child strong{
    display:block!important;
    font-size:15px!important;
    line-height:1.3!important;
  }
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:first-child span{
    display:block!important;
    margin-top:5px!important;
    font-size:12.5px!important;
    line-height:1.4!important;
  }
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(2){
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    text-align:right!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1.3!important;
  }
  #custos .container>div:nth-child(2)>div:not(:first-child)>div:nth-child(3){
    grid-column:1 / -1!important;
    grid-row:2!important;
    text-align:left!important;
    color:var(--gray-2)!important;
    font-size:12.5px!important;
    line-height:1.4!important;
    margin-top:1px!important;
  }
  #custos .container>div:nth-child(2)>div:last-child{border-bottom:0!important;}
  #custos .container>div:nth-child(3){margin-top:22px!important;}
}



/* Final mobile hero density: five visible photo rows on phones. */
@media (max-width:768px){
  .hero-photo-bg{
    grid-template-rows:repeat(5,minmax(0,1fr))!important;
    gap:3px!important;
    padding:3px!important;
  }
  .hero-bg-row{display:flex!important;gap:3px!important;}
  .hero-bg-row:nth-child(6){display:none!important;}
  .hero-bg-track{gap:3px!important;}
  .hero-bg-tile{height:100%!important;aspect-ratio:3/4!important;border-radius:4px!important;}
}

/* League metrics: keep labels and answers together and centered in all viewports. */
#ligas .div-stats{
  width:100%!important;
  align-items:center!important;
}
#ligas .div-stat{
  display:grid!important;
  grid-template-columns:max-content max-content!important;
  justify-content:center!important;
  align-items:baseline!important;
  column-gap:10px!important;
  width:100%!important;
  text-align:center!important;
}
#ligas .div-stat-key,
#ligas .div-stat-val{
  text-align:center!important;
}
@media (max-width:420px){
  #ligas .div-stat{column-gap:8px!important;}
}



/* Hard removal of the league metric the user explicitly rejected. */
#ligas [data-i18n="div-key-nivel"],
#ligas [data-i18n="div1-nivel"],
#ligas [data-i18n="div4-nivel"],
#ligas [data-i18n="div5-nivel"]{display:none!important}

/* Natural line wrapping in Portuguese, English and Spanish. */
h1,h2,h3,h4,h5,h6,
.hero-main-title,.s-headline,.stage-title,.cta-hammer-title,
.div-name,.profile-title,.faq-q{
  text-wrap:balance;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
p,li,li span,.stage-body,.stage-detail-list li,.stage-callout p,
.s-body,.div-desc,.footer-desc{
  text-wrap:pretty;
  word-break:normal!important;
  overflow-wrap:break-word;
  hyphens:none!important;
}

/* Roster always belongs to the athlete name, never the institution. */
.cockpit-row .ath-name-line{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
.cockpit-row .ath-name-line>.roster-link{flex:0 0 auto!important}
.cockpit-row .col-univ>.roster-link{display:none!important}

@media (max-width:768px){
  /* Journey: the step number no longer steals a full column from every paragraph/card. */
  #jornada .stage,#jornada .stage:nth-child(even){
    display:block!important;
    position:relative!important;
    padding:0 0 40px!important;
  }
  #jornada .stage:last-child{padding-bottom:0!important}
  #jornada .stage-image{display:none!important}
  #jornada .stage-num-col{
    position:absolute!important;
    top:0!important;
    left:0!important;
    width:48px!important;
    height:auto!important;
    display:block!important;
    z-index:2!important;
  }
  #jornada .stage-num{
    font-size:38px!important;
    line-height:1!important;
    text-align:left!important;
  }
  #jornada .stage-num-line{display:none!important}
  #jornada .stage-content{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
  }
  #jornada .stage-title{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0 auto 18px!important;
    padding:0 8px 0 56px!important;
    font-size:clamp(27px,7.4vw,32px)!important;
    line-height:1.08!important;
    text-align:center!important;
    text-wrap:balance!important;
  }
  /* Longer explanatory copy reads better as prose instead of a narrow centered poem. */
  #jornada .stage-body{
    width:min(100%,38ch)!important;
    max-width:none!important;
    margin:0 auto 22px!important;
    padding:0 4px!important;
    font-size:15.5px!important;
    line-height:1.58!important;
    text-align:left!important;
    text-wrap:pretty!important;
  }
  /* Detail boxes use the full mobile width instead of being trapped behind the number gutter. */
  #jornada .stage-detail-list{
    width:100%!important;
    max-width:none!important;
    margin:16px 0 0!important;
    padding:0!important;
    list-style:none!important;
  }
  #jornada .stage-detail-list li{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    padding:14px 16px!important;
    margin:0 0 10px!important;
    border-left:2px solid var(--gold)!important;
    border-radius:0 8px 8px 0!important;
    text-align:left!important;
    font-size:14.5px!important;
    line-height:1.56!important;
  }
  #jornada .stage-detail-list li::before{display:none!important;content:none!important}
  #jornada .stage-detail-list li>span{display:block!important;width:100%!important;text-align:left!important}
  #jornada .stage-callout{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin:16px 0 0!important;
    padding:16px!important;
  }
  #jornada .stage-callout p{
    margin:0!important;
    text-align:left!important;
    font-size:14.5px!important;
    line-height:1.56!important;
  }

  /* Mobile cockpit: roster stays visually attached to the athlete name. */
  #cockpit .cockpit-row .ath-name-line{justify-content:flex-start!important}
  #cockpit .cockpit-row .ath-name-line .roster-link{
    display:inline-flex!important;
    min-height:24px!important;
    padding:3px 7px!important;
    font-size:9px!important;
  }
}


body.vaa-preloader-active{overflow:auto!important}.site-preloader{pointer-events:none!important}

/* Phase 2 rendering/accessibility */
section[id]:not(#inicio){content-visibility:auto;contain-intrinsic-size:800px 900px}
:focus-visible{outline:3px solid #d3a23b;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}


/* ==========================================================================
   2026-09-10 - Media section + mobile-first hardening
   Desktop structure is preserved; layout corrections are scoped.
   ========================================================================== */
.media-section{position:relative;overflow:hidden}
.media-section::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(1100px,100%);height:520px;pointer-events:none;background:radial-gradient(ellipse at center,rgba(201,33,54,.10),transparent 70%)}
.media-section .container{position:relative}
.media-intro{text-align:center;max-width:820px;margin:0 auto}
.media-intro .s-headline{margin-bottom:14px}
.media-intro .s-body{margin-left:auto;margin-right:auto}
.media-eyebrow{margin:0 0 13px;font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:800;letter-spacing:2.4px;text-transform:uppercase;color:var(--gold-light)}
.media-shell{max-width:920px;margin:44px auto 0;display:grid;gap:18px}
.media-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.media-card{min-width:0;overflow:hidden;background:var(--black-2);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.media-feature{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);align-items:stretch}
.media-video,.media-press-image{position:relative;display:block;width:100%;min-width:0;padding:0;border:0;overflow:hidden;background:#0c1220;cursor:pointer;text-decoration:none;color:#fff;aspect-ratio:16/9}
.media-feature .media-video{height:100%;aspect-ratio:auto;min-height:390px}
.media-video>img,.media-press-image>img{display:block;width:100%;height:100%;object-fit:cover}
.media-feature .media-video>img{object-position:center}
.media-video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.58));pointer-events:none}
.media-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(201,33,54,.96);box-shadow:0 14px 38px rgba(0,0,0,.5);transition:transform .2s ease,background .2s ease}
.media-play svg{margin-left:4px}.media-play-small{width:66px;height:66px}
.media-video:hover .media-play,.media-video:focus-visible .media-play{transform:translate(-50%,-50%) scale(1.05);background:var(--gold-light)}
.media-watch,.media-read{position:absolute;left:14px;right:14px;bottom:14px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.8)}
.media-card-body{padding:23px 24px 26px;text-align:left}
.media-feature .media-card-body{display:flex;flex-direction:column;justify-content:center;padding:34px 30px}
.media-source{margin-bottom:9px;font-family:'Barlow Condensed',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--gold-light)}
.media-card h3{margin:0 0 10px;font-family:'Playfair Display',serif;font-size:23px;line-height:1.24;color:var(--white)}
.media-feature h3{font-size:28px}
.media-card p{margin:0;font-size:14px;line-height:1.65;color:var(--gray)}
.media-press-image{aspect-ratio:16/9;background:#e7e9e7}
.media-press-image>img{object-position:center;object-fit:cover;transition:transform .25s ease}
.media-press-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(0,0,0,.62))}
.media-press-image:hover>img,.media-press-image:focus-visible>img{transform:scale(1.015)}
.media-read{z-index:1}
@media (max-width:900px){.media-feature{grid-template-columns:1fr}.media-feature .media-video{height:auto;min-height:0;aspect-ratio:16/9}.media-feature .media-card-body{padding:25px 24px 28px}}
@media (max-width:768px){
html,body{width:100%;max-width:100%;overflow-x:clip!important}
main,section,section>.container,.container,.what-grid,.why-grid,.profiles-grid,.journey-list,.media-shell,.media-secondary-grid,.media-card,.media-card-body,.hero-fore{min-width:0!important;max-width:100%}
img,video,iframe{max-width:100%}
.hero-photo-bg{overflow:hidden!important}
.hero-bg-row{width:100%!important;min-width:0!important;overflow:hidden!important;background:var(--black-2)!important}
.hero-bg-track{width:max-content!important;min-width:max-content!important;flex-wrap:nowrap!important;transform:translate3d(0,0,0);will-change:transform!important;backface-visibility:hidden!important}
.hero-bg-tile{flex:0 0 auto!important;min-width:0!important;background:var(--black-2)!important}.hero-bg-tile img{display:block!important}
#midia{padding-top:58px!important;padding-bottom:58px!important}
#midia .media-intro{text-align:center!important}#midia .media-eyebrow{text-align:center!important;font-size:10px!important;letter-spacing:1.8px!important}
#midia .media-intro .s-headline{font-size:clamp(34px,9.5vw,42px)!important;text-align:center!important}
#midia .media-intro .s-body{max-width:36ch!important;margin:0 auto!important;text-align:center!important}
#midia .media-shell{margin-top:30px!important;gap:14px!important}
#midia .media-secondary-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
#midia .media-feature{display:block!important}#midia .media-card{border-radius:11px!important}
#midia .media-video,#midia .media-press-image,#midia .media-feature .media-video{height:auto!important;min-height:0!important;aspect-ratio:16/10!important}
#midia .media-play{width:64px!important;height:64px!important}#midia .media-play-small{width:58px!important;height:58px!important}
#midia .media-card-body,#midia .media-feature .media-card-body{padding:18px 17px 21px!important;text-align:center!important}
#midia .media-source{text-align:center!important;font-size:10px!important;letter-spacing:1.55px!important}
#midia .media-card h3,#midia .media-feature h3{font-size:22px!important;line-height:1.24!important;text-align:center!important}
#midia .media-card p{font-size:14px!important;line-height:1.58!important;text-align:center!important}
#midia .media-watch,#midia .media-read{font-size:10px!important;letter-spacing:1.4px!important;bottom:11px!important}
.wage-table-scroll,.cockpit-table-wrap,[class*="table-scroll"]{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.hero-cta-row,.sticky-bar-buttons{min-width:0!important}
}
@media (max-width:420px){.container{padding-left:16px!important;padding-right:16px!important}#midia .media-video,#midia .media-press-image,#midia .media-feature .media-video{aspect-ratio:4/3!important}#midia .media-card h3,#midia .media-feature h3{font-size:21px!important}}


/* 2026-09-10 final publication QA: mobile footer and controls */
@media (max-width:768px){
  .footer-copyright{
    white-space:normal!important;
    font-size:11.5px!important;
    line-height:1.55!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .footer-contact a,.launch-legal a{min-height:44px;display:inline-flex!important;align-items:center;justify-content:center}
}
@media (hover:none), (pointer:coarse){
  .busca-pill,.ig-box,.guide-language{min-height:44px}
  .sidenav-toggle{min-width:44px;min-height:44px}
  .faq-item summary{min-height:48px}
}


/* === Final polish: symmetry, maps, post-grad and media === */
.notfor-grid{align-items:stretch}
.notfor-grid>div{display:flex;flex-direction:column;justify-content:center;min-height:246px;text-align:center;padding:24px!important}
.notfor-grid>div p:first-child{font-size:18px!important;line-height:1.28!important;margin-bottom:12px!important}
.notfor-grid>div p:last-child{max-width:34ch;margin:0 auto!important;line-height:1.72!important}

.work-rules-v10{align-items:stretch}
.work-rule-card{display:flex;flex-direction:column;justify-content:center;min-height:100%}
.work-rule-card h3{max-width:16ch;line-height:1.08!important}
.work-rule-card p{max-width:46ch;line-height:1.72!important}
.work-rule-card ul{max-width:46ch}
.work-rule-card li{line-height:1.62!important}
.wage-panel-head p{line-height:1.7!important;max-width:66ch}

.vaa-postgrad-section .vaa-section-intro{max-width:980px;margin:0 auto 30px;text-align:center}
.vaa-postgrad-section .s-body{max-width:880px;margin-left:auto;margin-right:auto}
.vaa-simple-route>h3{text-align:center;letter-spacing:.4px}
.vaa-work-route-grid{align-items:stretch}
.vaa-simple-route-card{min-height:100%;display:flex;flex-direction:column;justify-content:space-between}
.vaa-simple-route-card p{line-height:1.72}
.vaa-legal-note{line-height:1.78;text-align:center;max-width:980px;margin-left:auto;margin-right:auto}

.media-inline-note{margin-top:12px!important}
.media-inline-note a{color:var(--gold-light);font-weight:700;text-decoration:none}
.media-inline-note a:hover{text-decoration:underline}

.vaa-map{background:#dfeaf1}
.vaa-map-frame{background:linear-gradient(180deg,rgba(230,238,244,.96),rgba(221,232,239,.94));border:1px solid rgba(255,255,255,.08)}
.vaa-map .leaflet-control-zoom a{background:#fff;color:#0c1730;border-color:rgba(12,23,48,.15)}
.vaa-map .leaflet-popup-content-wrapper,.vaa-map .leaflet-popup-tip{background:#0d1832;color:#fff}
.vaa-map .leaflet-tooltip{background:#0d1832;color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 20px rgba(0,0,0,.18)}
.vaa-flag-marker-wrap{background:transparent;border:0}
.vaa-flag-marker{display:flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding:2px 4px;background:#fff;border:2px solid #c92136;border-radius:999px;box-shadow:0 10px 20px rgba(0,0,0,.18)}
.vaa-flag-marker img{display:block;width:22px;height:15px;object-fit:cover;border-radius:2px}

@media (max-width: 900px){
  .notfor-grid>div p:last-child,.work-rule-card p,.work-rule-card ul{max-width:none}
}


/* QA polish 2026-09-11 */
.vaa-simple-route-card .vaa-source-link{align-self:flex-start!important;min-width:0!important}
.vaa-country-flag-wrap{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1}
.vaa-country-flag-emoji{display:none;font-size:20px;line-height:1}
.vaa-flag-marker .vaa-country-flag-wrap{display:flex}
.vaa-flag-marker .vaa-country-flag{width:22px!important;height:15px!important;object-fit:cover}
@media(max-width:700px){.vaa-simple-route-card .vaa-source-link{min-height:44px!important;padding:0 14px!important}}
/* Final mobile touch-target QA */
@media(max-width:700px){
  .vaa-reach-tab{min-height:44px!important;padding-top:10px!important;padding-bottom:10px!important}
}

/* === 2026-09-11 approved final alignment === */
#trabalhar .work-rule-card h3{max-width:none!important;width:100%;line-height:1.12!important;letter-spacing:-.01em}
#trabalhar .work-rule-card{justify-content:flex-start!important}
#trabalhar .work-rule-card h3 em{white-space:nowrap}
@media(max-width:700px){
  #trabalhar .work-rule-card h3{font-size:30px!important;line-height:1.08!important}
}

/* === EN/ES editorial-layout polish: longer native copy without awkward spacing === */
html[lang^="en"] .notfor-grid>div p,
html[lang^="es"] .notfor-grid>div p{flex:0 0 auto!important}
html[lang^="en"] .notfor-grid>div,
html[lang^="es"] .notfor-grid>div{justify-content:center!important;gap:14px!important}
html[lang^="en"] .notfor-grid>div p:first-child,
html[lang^="es"] .notfor-grid>div p:first-child{min-height:0!important;margin:0!important;text-wrap:balance!important}
html[lang^="en"] .notfor-grid>div p:last-child,
html[lang^="es"] .notfor-grid>div p:last-child{margin:0 auto!important;text-wrap:pretty!important}

html[lang^="en"] #jornada .stage,
html[lang^="es"] #jornada .stage{grid-template-columns:84px minmax(0,1fr) 340px;gap:30px}
html[lang^="en"] #jornada .stage:nth-child(even),
html[lang^="es"] #jornada .stage:nth-child(even){grid-template-columns:340px minmax(0,1fr) 84px}
html[lang^="en"] #jornada .stage-title,
html[lang^="es"] #jornada .stage-title{font-size:clamp(28px,3.1vw,39px);line-height:1.06;text-wrap:balance}
html[lang^="en"] #jornada .stage-body,
html[lang^="es"] #jornada .stage-body{text-wrap:pretty}
html[lang^="en"] #jornada .stage-detail-list li,
html[lang^="es"] #jornada .stage-detail-list li{line-height:1.58}

html[lang^="en"] .trans-grid>div,
html[lang^="es"] .trans-grid>div{justify-content:flex-start!important}
html[lang^="en"] .trans-grid h3,
html[lang^="es"] .trans-grid h3{min-height:48px;display:flex;align-items:flex-end;justify-content:center;text-wrap:balance}
html[lang^="en"] .trans-grid p,
html[lang^="es"] .trans-grid p{flex:1!important;text-wrap:pretty}

html[lang^="en"] #busca .busca-cta-row>a,
html[lang^="es"] #busca .busca-cta-row>a{min-height:58px;padding-left:26px;padding-right:26px;text-align:center;justify-content:center}
html[lang^="en"] #busca .busca-cta-row,
html[lang^="es"] #busca .busca-cta-row{align-items:stretch}

html[lang^="en"] #cockpit .cockpit-table-header,
html[lang^="en"] #cockpit .cockpit-row{grid-template-columns:1.45fr 1.15fr 1.65fr .9fr}
html[lang^="es"] #cockpit .cockpit-table-header,
html[lang^="es"] #cockpit .cockpit-row{grid-template-columns:1.4fr 1.15fr 1.7fr .9fr}
html[lang^="en"] #cockpit .ath-position,
html[lang^="es"] #cockpit .ath-position{letter-spacing:.55px}

@media(max-width:1100px) and (min-width:769px){
  html[lang^="en"] #jornada .stage,
  html[lang^="es"] #jornada .stage{grid-template-columns:72px minmax(0,1fr) 280px;gap:24px}
  html[lang^="en"] #jornada .stage:nth-child(even),
  html[lang^="es"] #jornada .stage:nth-child(even){grid-template-columns:280px minmax(0,1fr) 72px}
  html[lang^="en"] #jornada .stage-title,
  html[lang^="es"] #jornada .stage-title{font-size:32px}
}
@media(max-width:768px){
  html[lang^="en"] #jornada .stage-title,
  html[lang^="es"] #jornada .stage-title{font-size:clamp(25px,7vw,30px)!important;padding-left:52px!important;padding-right:4px!important}
  html[lang^="en"] #jornada .stage-num,
  html[lang^="es"] #jornada .stage-num{font-size:36px!important}
  html[lang^="en"] .notfor-grid>div,
  html[lang^="es"] .notfor-grid>div{min-height:0!important;padding:24px 20px!important}
  html[lang^="en"] .trans-grid h3,
  html[lang^="es"] .trans-grid h3{min-height:0}
}

/* EN/ES mobile: translated step labels read as headings instead of narrow columns. */
@media(max-width:768px){
  html[lang^="en"] #jornada .stage-detail-list li,
  html[lang^="es"] #jornada .stage-detail-list li{display:block!important}
  html[lang^="en"] #jornada .stage-detail-list li>strong,
  html[lang^="es"] #jornada .stage-detail-list li>strong,
  html[lang^="en"] #jornada .stage-detail-list li>span>strong,
  html[lang^="es"] #jornada .stage-detail-list li>span>strong{display:block!important;margin:0 0 6px!important}
}


/* v7.2 — official league names with acronym underneath */
#ligas .div-name{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;line-height:1.08;margin-bottom:16px}
#ligas .div-full-name{display:block;font-family:'Barlow Condensed',sans-serif;font-size:clamp(20px,2.05vw,27px);font-weight:900;text-transform:none;letter-spacing:.01em;color:var(--white);text-wrap:balance}
#ligas .div-acronym{display:block;font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:800;letter-spacing:.08em;color:var(--gray-2)}
@media(max-width:720px){#ligas .div-full-name{font-size:22px}#ligas .div-acronym{font-size:17px}}
