/* International page ------------------------------------------------------ */
.nav a.on{color:#fff;border-color:var(--red)}
.ihero{background:#0f0f0f}
.flagwall{position:absolute;inset:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-auto-rows:74px;gap:4px;opacity:.22;filter:saturate(.9);transform:rotate(-6deg) scale(1.25);pointer-events:none}
.flagwall img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.ihero::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(15,15,15,.97) 0%,rgba(15,15,15,.9) 45%,rgba(163,15,28,.55) 100%),linear-gradient(rgba(15,15,15,0),rgba(15,15,15,.7));pointer-events:none}
.ihero .hero-inner{z-index:1}
.chip.flag{display:inline-flex;align-items:center;gap:8px;padding-left:9px}
.chip.flag img{width:24px;height:18px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.25)}
.chip.on.flag::before{content:""}
.chip.on.flag img{box-shadow:0 0 0 2px #fff}

.k-mens{background:var(--ink-3)} .k-womens{background:#b0287f} .k-sevens{background:#0e8a9b}

/* competition strip */
.comps{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:none;margin:0 -18px 10px;padding-left:18px;padding-right:18px}
.comps::-webkit-scrollbar{display:none}
.comp{flex:none;width:210px;background:#fff;border-radius:var(--r);padding:12px 14px;box-shadow:var(--shadow);border-top:6px solid var(--accent,var(--ink));text-align:left;font:inherit;color:inherit;border-left:0;border-right:0;border-bottom:0;position:relative}
.comp .ck{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--grey)}
.comp h3{font-size:19px;font-weight:800;margin:4px 0 6px;color:var(--ink);line-height:1}
.comp .cd{font-size:12.5px;color:var(--grey)}
.comp .st{position:absolute;right:12px;top:12px;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:11px;padding:2px 8px;border-radius:999px;background:var(--cream);color:var(--ink-3)}
.comp .st.live{background:var(--red);color:#fff}
.comp .st.soon{background:var(--ink);color:#fff}
.comp.on{outline:2px solid var(--ink);outline-offset:2px}
.comp.done{opacity:.55}

/* fixture cards */
.fx{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#fff;border-radius:14px;padding:12px 14px;margin-bottom:8px;box-shadow:var(--shadow);border-left:5px solid var(--accent,var(--ink-3))}
.fx.past{opacity:.55}
.fx.now{outline:2px solid var(--red);outline-offset:2px}
.fx .row{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}
.team{display:flex;align-items:center;gap:10px;min-width:0}
.team.away{flex-direction:row-reverse;text-align:right}
.team img{width:44px;height:33px;object-fit:cover;border-radius:5px;box-shadow:0 0 0 1px var(--sand-2);flex:none}
.team b{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:21px;letter-spacing:.2px;color:var(--ink);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team.fav b{color:var(--red)}
.kick{text-align:center;min-width:92px}
.fx .kick{margin:0;color:inherit;letter-spacing:0}
.fx .when{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:1.5px;font-size:11px;color:var(--grey)}
.fx .ko{font-family:var(--disp);font-weight:900;font-size:26px;line-height:1;color:var(--ink);margin-top:2px}
.fx .ko.tbc{font-size:14px;color:var(--grey-2);letter-spacing:1px;margin-top:6px}
.fx .uae{font-size:10.5px;color:var(--grey-2);text-transform:uppercase;letter-spacing:1.5px;font-weight:600;margin-top:2px}
.fx .meta{margin-top:8px}
.fx .check{align-self:center}
.tag.comp-tag{color:#fff;border-color:transparent}
.tag.w{background:#f8e6f1;color:#8a1f63;border-color:#efc3dd}
.tag.m{background:var(--cream);color:var(--ink-3)}
.fx .cnt{font-size:12px;color:var(--red);font-weight:700;margin-top:4px}
@media (max-width:560px){
  .team b{font-size:17px}
  .team img{width:34px;height:26px}
  .fx .ko{font-size:22px}
  .kick{min-width:74px}
}

/* sevens round card */
.fx.sevens .row{grid-template-columns:auto 1fr auto}
.fx.sevens .host{display:flex;align-items:center;gap:12px}
.fx.sevens .host img{width:56px;height:42px;border-radius:6px;object-fit:cover;box-shadow:0 0 0 1px var(--sand-2)}
.fx.sevens h4{font-family:var(--disp);text-transform:uppercase;font-weight:800;font-size:21px;margin:0;color:var(--ink);line-height:1}
.fx.sevens .sub7{font-size:13px;color:var(--grey);margin-top:3px}

/* next up tweaks */
.nu .vs{display:flex;align-items:center;gap:8px;margin:8px 0 4px}
.nu .vs img{width:30px;height:22px;object-fit:cover;border-radius:3px}
.nu .vs span{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:22px;line-height:1}
.nu .vs i{font-family:var(--disp);font-weight:700;color:var(--sand);font-style:normal;font-size:13px;letter-spacing:2px;margin:0 4px}
.nu.first .vs i{color:#ffd6d8}

/* RWC banner */
.rwc{margin-top:36px}
.rwc-card{position:relative;overflow:hidden;background:linear-gradient(115deg,#0d5b3a 0%,#0b3d29 60%,#c9a227 140%);color:#fff;border-radius:var(--r);padding:26px 26px 24px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;box-shadow:var(--shadow)}
.rwc-card::after{content:"2027";position:absolute;right:-8px;bottom:-40px;font-family:var(--disp);font-weight:900;font-size:180px;color:rgba(255,255,255,.06);line-height:1}
.rwc-card .kick{color:#ffd54a;text-align:left;min-width:0}
.rwc-card h2{font-size:38px;font-weight:900;margin-bottom:6px}
.rwc-card p{margin:0;color:#dfe9e3;max-width:560px}
.rwc-card .days{font-family:var(--disp);font-weight:900;font-size:72px;line-height:.9;text-align:center}
.rwc-card .days small{display:block;font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#ffd54a;margin-top:6px}
@media (max-width:560px){.rwc-card{grid-template-columns:1fr}.rwc-card .days{text-align:left}}
.srcnote{margin-top:22px}
@media (max-width:560px){
  .team{flex-direction:column;align-items:flex-start;gap:6px}
  .team.away{align-items:flex-end;text-align:right}
  .team b{white-space:normal;font-size:16px;line-height:1.05}
  .team img{width:38px;height:28px}
  .fx .row{gap:6px}
}
