/* R1C shared visual language. No transaction or game-state rules live here. */
:root {
  --pitchory-shell-wide: 1720px;
  --pitchory-shell-content: 1380px;
  --pitchory-shell-reading: 820px;
  --pitchory-selected: #f5f7f4;
  --pitchory-hover: rgba(245,247,244,.76);
  --container: var(--pitchory-shell-wide);
}
.pitchory-shell-wide { max-width: var(--pitchory-shell-wide); margin-inline: auto; }
.pitchory-shell-content { max-width: var(--pitchory-shell-content); margin-inline: auto; }
.pitchory-shell-reading { max-width: var(--pitchory-shell-reading); margin-inline: auto; }

/* Typography: keep the condensed display face, rely on scale rather than 900 weight. */
.pitchory-main h1,
.pitchory-main .pitchory-hero h1,
.pitchory-main .pitchory-detail-hero h1,
.pitchory-main .pitchory-directory-hero h1,
.pitchory-main .pitchory-cart-hero h1,
.pitchory-main .pitchory-checkout-hero h1,
.pitchory-main .pitchory-play-page__hero h1,
.pitchory-main .pitchory-account-hero h1,
.pitchory-main .pitchory-predictor__hero h1 { font-weight: 700; }
.pitchory-main h2,
.pitchory-main .pitchory-section-heading h2,
.pitchory-main .pitchory-predictor__section-head h2,
.pitchory-main .pitchory-predictor__state h2 { font-weight: 650; }
.pitchory-main h3,
.pitchory-main .pitchory-directory-card__meta h2,
.pitchory-main .pitchory-play-page__card h3,
.pitchory-main .pitchory-account-box__identity > strong { font-weight: 650; }
.pitchory-main p,
.pitchory-main li { font-weight: 400; }
.pitchory-main .pitchory-kicker,
.pitchory-main .pitchory-eyebrow,
.pitchory-main small,
.pitchory-main dt { font-weight: 600; }
.pitchory-main .pitchory-button,
.pitchory-main button.button,
.pitchory-main a.button,
.pitchory-main .pitchory-directory-tabs a { font-weight: 650; }

/* Wide page shell with intentional narrower reading/form surfaces. */
@media (min-width: 1181px) {
  .pitchory-play-page__grid,
  .pitchory-directory-grid,
  .pitchory-direct-tiers,
  .pitchory-predictor__layout,
  .pitchory-account-page .woocommerce { width: 100%; }
  .pitchory-checkout-page .woocommerce form.checkout { max-width: var(--pitchory-shell-content); }
  .pitchory-account-page .woocommerce:not(:has(.woocommerce-MyAccount-navigation)) { max-width: 970px; }
  .pitchory-rewards { max-width: 100%; }
}

/* Shared linked-card treatment; the destination itself fills the surface. */
.pitchory-directory-card a,
.pitchory-play-page__card[href] { cursor: pointer; }
.pitchory-directory-card:hover,
.pitchory-directory-card:focus-within,
.pitchory-play-page__card[href]:hover,
.pitchory-play-page__card[href]:focus-visible { border-color: var(--pitchory-hover); box-shadow: 0 18px 38px rgba(0,0,0,.36); }
.pitchory-directory-card a:focus-visible,
.pitchory-play-page__card[href]:focus-visible { outline: 3px solid #fff; outline-offset: -4px; }
.pitchory-directory-card__cta { font-weight: 600; }
.pitchory-play-page__card[href] { color: inherit; text-decoration: none; }
.pitchory-play-page__card .pitchory-button { pointer-events: none; }

/* Direct P1/P2: two balanced zones, one fully interactive native label. */
.pitchory-direct-tier {
  display: grid;
  grid-template-columns: minmax(0,32%) minmax(0,1fr);
  align-items: center;
  column-gap: clamp(28px,3.5vw,68px);
  min-height: 248px;
  padding: 22px clamp(23px,2.5vw,44px);
}
.pitchory-direct-tier__visual { width: 100%; min-width: 0; flex: none; justify-self: center; }
.pitchory-direct-tier__visual .pitchory-box-visual { width: clamp(112px,10vw,155px); }
.pitchory-direct-tier__copy { align-self: center; justify-self: start; gap: 5px; }
.pitchory-direct-tier__copy small { line-height: 1.35; font-weight: 600; }
.pitchory-direct-tier__copy strong { margin-top: 3px; font-weight: 700; }
.pitchory-direct-tier__copy > span { margin-top: 9px; font-weight: 700; }
.pitchory-direct-tiers:has(input:checked) .pitchory-direct-tier:not(:has(input:checked)) { opacity: 1; filter: none; background: radial-gradient(circle at 27% 45%,#183835,#0d2430 65%); }
.pitchory-direct-tier:not(:has(input:checked)) .pitchory-direct-tier__copy strong { color: #f5f7f4; }
.pitchory-direct-tier:not(:has(input:checked)) .pitchory-direct-tier__copy > span { color: #d5f651; }
.pitchory-direct-tier:hover { border-color: var(--pitchory-hover); }
.pitchory-direct-tier.is-selected,
.pitchory-direct-tier:has(input:checked) { border: 3px solid var(--pitchory-selected); box-shadow: 0 15px 35px #0008; }
.pitchory-direct-tier__check { background: #fff; color: #071521; }
.pitchory-direct-tier:has(input:focus-visible) { outline: 3px solid #fff; outline-offset: 3px; }

/* Rewards, account and commerce share the same calmer type and border rhythm. */
.pitchory-rewards__ticket,
.pitchory-account-summary__card,
.pitchory-account-box,
.pitchory-account-draw,
.pitchory-predictor__match { border-color: rgba(210,230,222,.35); }
.pitchory-account-page .woocommerce-MyAccount-navigation a:focus-visible,
.pitchory-cart-page a:focus-visible,
.pitchory-checkout-page a:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.pitchory-cart-page .woocommerce .woocommerce-Price-amount,
.pitchory-checkout-page .woocommerce table.shop_table .order-total td { font-weight: 700; }

@media (min-width: 768px) and (max-width: 1180px) {
  .pitchory-direct-tier { column-gap: clamp(18px,2vw,34px); padding: 18px 20px; min-height: 210px; }
  .pitchory-direct-tier__visual .pitchory-box-visual { width: clamp(92px,10vw,125px); }
  .pitchory-direct-tier__copy strong { font-size: clamp(37px,4vw,52px); }
}
@media (max-width: 767px) {
  :root { --gutter: 18px; }
  .pitchory-play-page__main { padding-block: 40px 64px; }
  .pitchory-play-page__card { min-height: 0; padding: 21px; }
  .pitchory-play-page__card-art,
  .pitchory-play-page__score { height: 125px; }
  .pitchory-play-page__card-art img { height: 118px; }
  .pitchory-play-page__score { font-size: 72px; }
  .pitchory-play-page__score small { font-size: 42px; }
  .pitchory-directory-grid--club,
  .pitchory-directory-grid--nation { gap: 10px; }
  .pitchory-directory-card__meta { padding: 12px; }
  .pitchory-directory-card__cta { padding: 10px 12px; }
  .pitchory-direct-tiers { grid-template-columns: 1fr; gap: 11px; }
  .pitchory-direct-tier { grid-template-columns: 29% minmax(0,1fr); column-gap: 18px; min-height: 145px; padding: 12px 22px; }
  .pitchory-direct-tier__visual { height: auto; align-self: center; }
  .pitchory-direct-tier__visual .pitchory-box-visual { width: 82px; }
  .pitchory-direct-tier__copy strong { font-size: 38px; }
  .pitchory-direct-tier__copy > span { font-size: 23px; margin-top: 5px; }
  .pitchory-direct-tier__copy small { font-size: 8px; }
  .pitchory-predictor__main { padding-block: 30px 64px; }
  .pitchory-account-hero .pitchory-container { padding-block: 36px; }
  .pitchory-account-body { padding-bottom: 60px; }
}
@media (max-width: 380px) {
  .pitchory-direct-tier { grid-template-columns: 27% minmax(0,1fr); gap: 12px; padding-inline: 13px; }
  .pitchory-direct-tier__visual .pitchory-box-visual { width: 73px; }
}
