/* Shared tournament-series system: World Cup, Asian Cup and Japan Challenge. */
.yf-tournament-page{--yf-series-width:1100px;--yf-series-pad:clamp(4.5rem,7vw,7rem);background:var(--youfo-paper);color:var(--youfo-navy);overflow:clip}
.yf-tournament-page :is(.world-cup-container,.inner,.jc-container){width:min(var(--yf-series-width),calc(100% - 48px));margin-inline:auto}
.yf-tournament-hero{position:relative;display:flex;align-items:center;justify-content:flex-start;min-height:clamp(560px,70vh,720px);padding:0!important;color:#fff;text-align:left;background-size:cover;background-repeat:no-repeat}
.yf-tournament-hero__content{position:relative;z-index:2;width:min(var(--yf-series-width),calc(100% - 48px))!important;max-width:none!important;margin-inline:auto!important;padding:clamp(7rem,12vh,9rem) 0 clamp(4rem,8vh,6rem)!important;text-align:left!important}
.yf-tournament-hero__title{max-width:900px;margin:0 0 1.25rem!important;color:#fff!important;font-size:clamp(3.2rem,6vw,5.6rem)!important;font-weight:900!important;line-height:.95!important;letter-spacing:-.045em!important;word-break:keep-all!important;overflow-wrap:normal!important;text-wrap:balance}
.yf-tournament-hero__lead{max-width:680px!important;margin:1.2rem 0 0!important;color:#fff!important;font-size:clamp(1rem,1.65vw,1.3rem)!important;line-height:1.8!important;text-shadow:0 2px 18px rgba(3,10,24,.55)}
.yf-tournament-hero__buttons,.yf-tournament-page .jc-buttons,.yf-tournament-page .asian-hero__buttons{display:flex!important;flex-wrap:wrap!important;gap:14px!important;margin-top:2rem!important}.yf-tournament-hero__button,.yf-tournament-page .jc-buttons .jc-btn,.yf-tournament-page .asian-hero__buttons .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:190px!important;min-height:54px!important;padding:0 26px!important;border:1px solid transparent!important;border-radius:999px!important;color:#fff!important;font-size:.85rem!important;font-weight:800!important;line-height:1!important;text-decoration:none!important;transition:transform .25s ease,background .25s ease,border-color .25s ease!important}.yf-tournament-hero__button--primary,.yf-tournament-page .jc-buttons .jc-btn--primary,.yf-tournament-page .asian-hero__buttons .btn-primary{background:var(--youfo-red)!important;border-color:var(--youfo-red)!important}.yf-tournament-hero__button--secondary,.yf-tournament-page .jc-buttons .jc-btn--secondary,.yf-tournament-page .asian-hero__buttons .btn-secondary{background:rgba(7,20,46,.12)!important;border-color:rgba(255,255,255,.62)!important}.yf-tournament-hero__button:hover,.yf-tournament-page .jc-buttons .jc-btn:hover,.yf-tournament-page .asian-hero__buttons .btn:hover{transform:translateY(-2px)!important}.yf-tournament-hero__button:focus-visible,.yf-tournament-page .jc-buttons .jc-btn:focus-visible,.yf-tournament-page .asian-hero__buttons .btn:focus-visible{outline:3px solid #fff!important;outline-offset:4px!important}
.yf-tournament-hero :is(.world-cup-breadcrumb,.world-cup-hero__subtitle,.asian-hero__eyebrow,.jc-badge,.jc-hero__catch){color:#fff!important;text-align:left!important}.yf-tournament-hero .world-cup-breadcrumb{margin-bottom:1.2rem!important}.yf-tournament-hero .world-cup-hero__divider{margin:1.3rem 0!important}
.yf-tournament-page--world .world-cup-hero{background-position:center 48%!important}.yf-tournament-page--asia .asian-hero__bg img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 82%!important}.yf-tournament-page--japan .jc-hero__bg{background-position:center 52%!important}
.yf-tournament-page :is(.world-cup-section,.asian-cup-page .section,.jc-section){padding-block:var(--yf-series-pad)!important}
.yf-tournament-page :is(.world-cup-section,.section,.jc-section){background:var(--youfo-paper)!important;color:var(--youfo-navy)!important}.yf-tournament-page :is(.world-cup-section,.section,.jc-section) :is(h1,h2,h3,h4,p,li,dt,dd,span,strong){color:inherit}
.yf-tournament-page :is(.world-cup-section-title,.section-heading__title,.jc-section__head h2){max-width:880px!important;margin-top:0!important;font-size:clamp(1.9rem,3vw,3rem)!important;line-height:1.16!important;letter-spacing:-.025em!important;word-break:keep-all!important;overflow-wrap:normal!important;text-wrap:balance}
.yf-tournament-page :is(.section-heading,.jc-section__head){margin-bottom:clamp(2rem,4vw,3rem)!important}
.yf-tournament-page .yf-tournament-section-heading{display:flex!important;flex-direction:column!important;align-items:flex-start!important;max-width:880px!important;margin:0 0 clamp(2rem,4vw,3rem)!important;text-align:left!important}.yf-tournament-page .yf-tournament-section-heading .section-heading__sub{width:auto!important;margin:0 0 .75rem!important;color:var(--youfo-red)!important;font-size:.72rem!important;font-weight:900!important;line-height:1.2!important;letter-spacing:.16em!important;text-align:left!important}.yf-tournament-page .yf-tournament-section-heading .section-heading__title{width:auto!important;margin:0!important;color:var(--youfo-navy)!important;text-align:left!important}
.yf-tournament-page--world .world-cup-section :is(.world-cup-overview__text,.world-cup-intro p,.world-cup-highlight-card__text,.world-cup-news-item,.world-cup-news-item__date,.world-cup-news-item__title,.world-cup-news-item__arrow,.world-cup-news-empty){color:var(--youfo-navy)!important}.yf-tournament-page--world .world-cup-news-list{border-top-color:var(--youfo-line)!important}.yf-tournament-page--world .world-cup-news-item{border-bottom-color:var(--youfo-line)!important}.yf-tournament-page--world .world-cup-news-item__arrow{color:var(--youfo-red)!important}.yf-tournament-page--world .world-cup-news-more a{border-color:var(--youfo-navy)!important;background:transparent!important;color:var(--youfo-navy)!important}
.yf-tournament-page .world-cup-section-title{justify-content:flex-start!important;margin-bottom:clamp(2rem,4vw,3rem)!important;text-align:left!important;color:var(--youfo-navy)!important}.yf-tournament-page .world-cup-section-title:after{display:none}.yf-tournament-page .world-cup-section-title:before{width:42px;max-width:none;background:var(--youfo-red)}

/* Tournament edition cards: media and information never share a positioning context. */
.yf-tournament-page :is(.world-cup-editions,.asian-history__grid,.jc-editions-grid){display:grid!important;grid-template-columns:1fr!important;gap:0!important}
.yf-tournament-page :is(.world-cup-edition-card,.asian-history-card,.jc-edition-card){position:relative!important;display:grid!important;grid-template-columns:minmax(280px,38%) minmax(0,1fr)!important;min-height:0!important;height:auto!important;margin:0!important;border:0!important;border-top:1px solid var(--youfo-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;transform:none!important}
.yf-tournament-page :is(.world-cup-edition-card:last-child,.asian-history-card:last-child,.jc-edition-card:last-child){border-bottom:1px solid var(--youfo-line)!important}
.yf-tournament-page :is(.world-cup-edition-card__image,.asian-history-card__image,.jc-edition-card__media){position:relative!important;width:100%!important;min-width:0!important;min-height:280px!important;height:100%!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;overflow:hidden!important;background-size:cover!important;background-position:center!important}
.yf-tournament-page :is(.world-cup-edition-card__image,.asian-history-card__image,.jc-edition-card__media)>img{display:block!important;width:100%!important;height:100%!important;min-height:280px!important;object-fit:cover!important}
.yf-tournament-page :is(.world-cup-edition-card__body,.asian-history-card__body,.jc-edition-card__body){position:static!important;display:flex!important;flex:1 1 auto!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;min-height:0!important;height:auto!important;padding:clamp(1.5rem,4vw,3rem)!important;background:transparent!important;color:var(--youfo-navy)!important;overflow:visible!important;transform:none!important}
.yf-tournament-page :is(.world-cup-edition-card__meta,.asian-history-card__meta,.jc-edition-card__overlay){position:static!important;inset:auto!important;display:flex!important;flex-wrap:wrap!important;align-items:baseline!important;gap:.5rem 1rem!important;min-width:0!important;margin:0 0 1rem!important;padding:0!important;background:none!important;color:var(--youfo-navy)!important;overflow:visible!important;transform:none!important}
.yf-tournament-page :is(.world-cup-edition-card__year,.asian-history-card__meta .year,.jc-edition-card__year){position:static!important;margin:0!important;color:var(--youfo-red)!important;font-size:clamp(1rem,2vw,1.35rem)!important;font-weight:900!important;line-height:1.2!important;letter-spacing:.03em!important;transform:none!important}
.yf-tournament-page :is(.world-cup-edition-card__location,.asian-history-card__meta .place,.jc-edition-card__location){position:static!important;margin:0!important;color:var(--youfo-muted)!important;font-size:.82rem!important;font-weight:800!important;line-height:1.5!important;transform:none!important}
.yf-tournament-page :is(.asian-history-card__label,.world-cup-edition-card__status,.jc-edition-card__badge){position:static!important;inset:auto!important;order:-1;display:inline-flex!important;align-self:flex-start!important;width:auto!important;min-height:0!important;margin:0!important;padding:.35rem .55rem!important;border:1px solid var(--youfo-red)!important;border-radius:0!important;background:transparent!important;color:var(--youfo-red)!important;font-size:.62rem!important;line-height:1!important;box-shadow:none!important;transform:none!important}
.yf-tournament-page :is(.world-cup-edition-card__status,.jc-edition-card__badge){position:absolute!important;top:1rem!important;left:1rem!important;z-index:2;color:#fff!important;background:rgba(7,20,46,.78)!important;border-color:#fff!important}
.yf-tournament-page :is(.world-cup-edition-card__result,.world-cup-edition-card__description,.asian-history-card h3,.asian-history-card p,.asian-history-card a,.jc-edition-card__title,.jc-edition-card__desc,.jc-edition-card__footer){position:static!important;min-width:0!important;height:auto!important;transform:none!important;overflow:visible!important}
.yf-tournament-page :is(.world-cup-edition-card__description,.asian-history-card p,.jc-edition-card__desc){color:var(--youfo-navy)!important;line-height:1.8!important}
.yf-tournament-page :is(.world-cup-edition-card__button,.asian-history-card .text-link,.jc-edition-card__button){align-self:flex-start!important;width:auto!important;min-width:0!important;min-height:44px!important;margin-top:1rem!important;padding:.8rem 1rem!important;border:1px solid var(--youfo-navy)!important;border-radius:0!important;background:transparent!important;color:var(--youfo-navy)!important;box-shadow:none!important}
.yf-tournament-page .jc-edition-card__footer{margin-top:auto!important;padding-top:0!important}

@media(max-width:768px){
  .yf-tournament-page{--yf-series-pad:clamp(3.5rem,13vw,5rem)}
  .yf-tournament-page :is(.world-cup-container,.inner,.jc-container){width:calc(100% - 36px)}
  .yf-tournament-hero{min-height:620px!important}
  .yf-tournament-hero__content{width:calc(100% - 36px)!important;padding:7rem 0 3.5rem!important}
  .yf-tournament-hero__title{max-width:100%;font-size:clamp(2.55rem,12vw,3.7rem)!important;line-height:1!important;letter-spacing:-.04em!important}
  .yf-tournament-hero__lead{font-size:.98rem!important;line-height:1.75!important}
  .yf-tournament-hero__buttons,.yf-tournament-page .jc-buttons,.yf-tournament-page .asian-hero__buttons{flex-direction:column!important;width:100%!important}.yf-tournament-hero__button,.yf-tournament-page .jc-buttons .jc-btn,.yf-tournament-page .asian-hero__buttons .btn{width:100%!important;min-width:0!important}
  .yf-tournament-page--world .world-cup-hero{background-position:58% 48%!important}.yf-tournament-page--asia .asian-hero__bg img{object-position:58% 76%!important}.yf-tournament-page--japan .jc-hero__bg{background-position:58% 50%!important}
  .yf-tournament-page :is(.world-cup-section-title,.section-heading__title,.jc-section__head h2){max-width:100%!important;font-size:clamp(1.8rem,8vw,2.35rem)!important;line-height:1.2!important;letter-spacing:-.02em!important}
  .yf-tournament-page :is(.world-cup-edition-card,.asian-history-card,.jc-edition-card){grid-template-columns:1fr!important}
  .yf-tournament-page :is(.world-cup-edition-card__image,.asian-history-card__image,.jc-edition-card__media){height:230px!important;min-height:230px!important}
  .yf-tournament-page :is(.world-cup-edition-card__image,.asian-history-card__image,.jc-edition-card__media)>img{min-height:230px!important}
  .yf-tournament-page :is(.world-cup-edition-card__body,.asian-history-card__body,.jc-edition-card__body){padding:1.4rem 0 2rem!important}
}

/* World Cup 2026 editorial results. */
.wc2026-overview__lead{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:start;margin-bottom:3rem}.wc2026-overview__lead p{margin:0;color:var(--youfo-navy)!important;font-size:1rem;line-height:1.9}.wc2026-overview__lead p:first-child{font-size:clamp(1.5rem,2.7vw,2.6rem);font-weight:900;line-height:1.2}
.wc2026-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 3rem;border-top:2px solid var(--youfo-navy)}.wc2026-facts div{padding:1.25rem 0;border-bottom:1px solid var(--youfo-line)}.wc2026-facts div:not(:nth-child(3n+1)){padding-left:1.5rem;border-left:1px solid var(--youfo-line)}.wc2026-facts dt{color:var(--youfo-red);font-size:.65rem;font-weight:900;letter-spacing:.12em}.wc2026-facts dd{margin:.45rem 0 0;color:var(--youfo-navy);font-size:clamp(1.15rem,2vw,1.65rem);font-weight:900}
.wc2026-main-photo,.wc2026-japan figure,.wc2026-photo-layout figure{margin:0}.wc2026-main-photo img{width:100%;aspect-ratio:16/7;object-fit:cover;object-position:center 55%}.wc2026-main-photo figcaption,.wc2026-japan figcaption,.wc2026-photo-layout figcaption{margin-top:.6rem;color:var(--youfo-muted);font-size:.65rem;font-weight:900;letter-spacing:.12em}
.wc2026-source-links{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1.25rem}.wc2026-source-links a{display:inline-flex;gap:.35rem;align-items:center;padding-bottom:.25rem;border-bottom:1px solid var(--youfo-navy);color:var(--youfo-navy)!important;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-decoration:none}.wc2026-source-links a:hover,.wc2026-source-links a:focus-visible{border-color:var(--youfo-red);color:var(--youfo-red)!important}
.wc2026-section-lead,.wc2026-summary{max-width:760px;margin:0 0 2.5rem!important;color:var(--youfo-navy)!important;font-size:1rem;line-height:1.9}.wc2026-podium{margin:0;padding:0;border-top:2px solid var(--youfo-navy);list-style:none}.wc2026-podium li{display:grid;grid-template-columns:100px minmax(0,1fr) 100px;gap:1.5rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--youfo-line)}.wc2026-podium span{color:var(--youfo-red)!important;font-size:clamp(1.7rem,3vw,3rem);font-weight:900}.wc2026-podium strong{color:var(--youfo-navy)!important;font-size:clamp(1.15rem,2.1vw,1.8rem);line-height:1.3}.wc2026-podium small{color:var(--youfo-muted)!important;font-weight:900;text-align:right}
.wc2026-history-shift{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center;margin:4rem 0 2rem;padding:2rem 0;border-block:1px solid var(--youfo-line)}.wc2026-history-shift div{display:flex;flex-direction:column}.wc2026-history-shift small{color:var(--youfo-red)!important;font-weight:900;letter-spacing:.1em}.wc2026-history-shift strong{margin-top:.35rem;color:var(--youfo-navy)!important;font-size:clamp(1.7rem,3vw,3rem)}.wc2026-history-shift>span{color:var(--youfo-red)!important;font-size:2rem}
.wc2026-japan__layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}.wc2026-japan__results{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.wc2026-big-result{padding:1.5rem 0;border-top:2px solid var(--youfo-navy)}.wc2026-big-result small{color:var(--youfo-red)!important;font-size:.65rem;font-weight:900;letter-spacing:.12em}.wc2026-big-result strong{display:block;color:var(--youfo-navy)!important;font-size:clamp(4.5rem,9vw,8rem);font-weight:900;line-height:.85;letter-spacing:-.07em}.wc2026-big-result strong em{font-size:.42em;font-style:normal;letter-spacing:-.02em}.wc2026-big-result p{margin:.8rem 0 0!important;color:var(--youfo-navy)!important;font-weight:900;line-height:1.5}.wc2026-japan__results>p{grid-column:1/-1;margin:2rem 0!important;color:var(--youfo-navy)!important;line-height:1.9}.wc2026-japan figure img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 43%}.wc2026-japan__teams{grid-column:1/-1;margin:0;border-top:1px solid var(--youfo-line)}.wc2026-japan__teams div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--youfo-line)}.wc2026-japan__teams dt{color:var(--youfo-navy);font-weight:900}.wc2026-japan__teams dd{margin:0;color:var(--youfo-red);font-size:.75rem;font-weight:900}
.wc2026-format-flow{display:grid;grid-template-columns:1fr auto 1.4fr;gap:2rem;align-items:stretch;border-block:2px solid var(--youfo-navy);padding:2rem 0}.wc2026-format-flow__start,.wc2026-format-flow__routes>div{display:flex;flex-direction:column;justify-content:center;padding:1.5rem}.wc2026-format-flow__start{background:var(--youfo-navy);color:#fff}.wc2026-format-flow small{color:var(--youfo-red)!important;font-size:.65rem;font-weight:900;letter-spacing:.12em}.wc2026-format-flow__start small{color:#ff8c82!important}.wc2026-format-flow strong{font-size:clamp(1.25rem,2.3vw,2rem);line-height:1.15}.wc2026-format-flow__start strong,.wc2026-format-flow__start p{color:#fff!important}.wc2026-format-flow__start p{margin:.6rem 0 0}.wc2026-format-flow__arrow{align-self:center;color:var(--youfo-red)!important;font-size:2rem}.wc2026-format-flow__routes{display:grid;grid-template-columns:1fr 1fr}.wc2026-format-flow__routes>div{border-left:1px solid var(--youfo-line)}
.wc2026-photo-layout{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:6px}.wc2026-photo-layout figure{position:relative;overflow:hidden}.wc2026-photo-layout .is-main{grid-row:1/3}.wc2026-photo-layout img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}.wc2026-photo-layout .is-main img{object-position:center 45%}.wc2026-photo-layout figure:nth-child(2) img{object-position:center 55%}.wc2026-photo-layout figure:nth-child(3) img{object-position:center 43%}.wc2026-photo-layout figcaption{position:absolute;left:0;bottom:0;margin:0;padding:.6rem .8rem;background:var(--youfo-paper);color:var(--youfo-navy)}
@media(max-width:768px){.wc2026-overview__lead,.wc2026-japan__layout{grid-template-columns:1fr}.wc2026-facts{grid-template-columns:1fr 1fr}.wc2026-facts div:not(:nth-child(3n+1)){padding-left:0;border-left:0}.wc2026-facts div:nth-child(even){padding-left:1rem;border-left:1px solid var(--youfo-line)}.wc2026-main-photo img{aspect-ratio:4/3}.wc2026-podium li{grid-template-columns:62px minmax(0,1fr);gap:.8rem}.wc2026-podium small{grid-column:2;text-align:left}.wc2026-history-shift{grid-template-columns:1fr;gap:1rem}.wc2026-history-shift>span{transform:rotate(90deg);justify-self:start}.wc2026-japan__results{grid-template-columns:1fr 1fr}.wc2026-format-flow{grid-template-columns:1fr;gap:1rem}.wc2026-format-flow__arrow{transform:rotate(90deg);justify-self:center}.wc2026-format-flow__routes{grid-template-columns:1fr}.wc2026-format-flow__routes>div{border-left:0;border-top:1px solid var(--youfo-line)}.wc2026-photo-layout{grid-template-columns:1fr 1fr;grid-template-rows:auto}.wc2026-photo-layout .is-main{grid-column:1/-1;grid-row:auto}.wc2026-photo-layout img{min-height:190px;aspect-ratio:4/3}.wc2026-photo-layout .is-main img{aspect-ratio:4/3}}
@media(max-width:420px){.wc2026-japan__results{grid-template-columns:1fr}.wc2026-big-result strong{font-size:5.2rem}.wc2026-photo-layout{grid-template-columns:1fr}.wc2026-photo-layout .is-main{grid-column:auto}}

/* Specificity guard against legacy per-page responsive rules. */
html body.youfo-site-renewal .yf-tournament-page .yf-tournament-hero{box-sizing:border-box!important;height:640px!important;min-height:640px!important;max-height:640px!important}
html body.youfo-site-renewal .yf-tournament-page :is(.world-cup-section,.section,.jc-section){padding-inline:0!important}
html body.youfo-site-renewal .yf-tournament-page :is(.world-cup-container,.inner,.jc-container){width:min(var(--yf-series-width),calc(100% - 48px))!important;max-width:none!important;margin-inline:auto!important}
html body.youfo-site-renewal .yf-tournament-page :is(.world-cup-section-title,.section-heading__title,.jc-section__head h2){font-size:clamp(1.9rem,3vw,3rem)!important;line-height:1.16!important}
@media(max-width:768px){
  html body.youfo-site-renewal .yf-tournament-page .yf-tournament-hero{height:700px!important;min-height:700px!important;max-height:700px!important}
  html body.youfo-site-renewal .yf-tournament-page :is(.world-cup-container,.inner,.jc-container){width:calc(100% - 36px)!important}
  html body.youfo-site-renewal .yf-tournament-page :is(.world-cup-section-title,.section-heading__title,.jc-section__head h2){font-size:clamp(1.8rem,8vw,2.35rem)!important;line-height:1.2!important}
  html body.youfo-site-renewal .yf-tournament-page.yf-tournament-page--asia .section-heading__title:not(#yf-series-heading){font-size:clamp(1.8rem,8vw,2.35rem)!important;line-height:1.2!important}
}
