/* Shared page art and competitive routes. Never changes the home or app navigation. */
.it-site {
  --it-ink: #0a1016;
  --it-paper: #f3f0e7;
  --it-lime: #c7ff30;
  --it-muted: #b7c0c8;
  --it-line: #2b3540;
  --it-gutter: clamp(20px, 3.2vw, 50px);
  --it-display: 'Anton', Impact, 'Arial Narrow', sans-serif;
}

/* All page heroes share the home typography without becoming another full-screen landing. */
.it-site .it-page-hero {
  --it-hero-bg: var(--it-ink);
  --it-hero-text: var(--it-paper);
  --it-hero-muted: #d0d5d9;
  position: relative;
  min-height: 290px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  isolation: isolate;
  border: 0;
  border-bottom: 1px solid var(--it-line);
  background: var(--it-hero-bg);
  color: var(--it-hero-text);
}
.it-site .it-page-hero--light,
.it-site .it-page-hero--paper {
  --it-hero-bg: var(--it-paper);
  --it-hero-text: var(--it-ink);
  --it-hero-muted: #414b53;
  border-bottom-color: #d0d0c8;
}
.it-site .it-page-hero__art { position: absolute; z-index: -1; inset: 0 0 0 39%; margin: 0; overflow: hidden; pointer-events: none; }
.it-site .it-page-hero__art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 66% 43%; }
.it-site .it-page-hero__art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--it-hero-bg) 0%, transparent 58%); pointer-events: none; }
.it-site .it-page-hero[data-art="team"] .it-page-hero__art img { object-position: 55% 42%; }
.it-site .it-page-hero[data-art="deadlock"] .it-page-hero__art img { object-position: 67% 39%; }
.it-site .it-page-hero[data-art="omen"] .it-page-hero__art img { object-position: 51% 42%; }
.it-site .it-page-hero[data-art="iso"] .it-page-hero__art img { object-position: 60% top; }
.it-site .it-page-hero[data-art="gekko"] .it-page-hero__art img { object-position: 61% top; }
.it-site .it-page-hero[data-art="reyna"] .it-page-hero__art img { object-position: 64% top; }
.it-site .it-page-hero[data-art="none"] { min-height: 210px; }
.it-site .it-page-hero[data-art="none"] .it-page-hero__copy { width: min(100%, 990px); }
.it-site .it-page-hero__inner.wrap { position: relative; display: flex; align-items: center; width: 100%; max-width: 1536px; min-height: inherit; margin: 0 auto; padding: 38px var(--it-gutter); }
.it-site .it-page-hero__copy { width: min(68%, 960px); min-width: 0; }
.it-site .it-page-hero__copy h1 { margin: 0; color: var(--it-hero-text); font: 400 clamp(54px, 5.1vw, 80px)/1.06 var(--it-display); letter-spacing: -.015em; text-transform: uppercase; text-wrap: balance; }
.it-site .it-page-hero__copy h1 :is(span, em) { color: var(--it-lime); font-style: normal; }
.it-site .it-page-hero__copy > p { max-width: 700px; margin: 15px 0 0; color: var(--it-hero-muted); font: 400 clamp(16px, 1.35vw, 20px)/1.55 var(--font-body, Arial, sans-serif); text-wrap: pretty; }
.it-site .it-page-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 22px; }
.it-site .it-page-hero__actions:empty { display: none; }
.it-site .it-page-hero__actions :is(a, button) { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 12px 21px; border: 1px solid var(--it-lime); border-radius: 3px; background: var(--it-lime); color: var(--it-ink); font: 750 15px/1.3 var(--font-body, Arial, sans-serif); white-space: normal; text-decoration: none; box-shadow: none; }
.it-site .it-page-hero__actions :is(a, button):focus-visible { outline: 3px solid var(--it-hero-text); outline-offset: 4px; }
.it-site .it-page-hero__actions :is(a, button):disabled { opacity: .55; cursor: not-allowed; }
.it-site .it-page-hero .it-page-hero__actions :is(.btn-line, .competitive-button-secondary, .competitive-secondary) { border-color: var(--it-hero-text); background: transparent; color: var(--it-hero-text); }

/* Route-local primitives: shared data states and existing forms remain intact. */
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main {
  --competitive-bg: var(--it-ink);
  --competitive-panel: #0c141c;
  --competitive-panel-soft: #111b24;
  --competitive-surface: #0c141c;
  --competitive-surface-2: #111b24;
  --competitive-border: var(--it-line);
  --competitive-line: var(--it-line);
  --competitive-line-soft: rgba(243, 240, 231, .1);
  --competitive-text: var(--it-paper);
  --competitive-muted: var(--it-muted);
  --competitive-dim: #929da8;
  --competitive-lime: var(--it-lime);
  --cp-bg: var(--it-ink);
  --cp-panel: #0c141c;
  --cp-panel-2: #111b24;
  --cp-line: var(--it-line);
  --cp-text: var(--it-paper);
  --cp-muted: var(--it-muted);
  --cp-lime: var(--it-lime);
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 0 50px;
  background: var(--it-ink);
  color: var(--it-paper);
}
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main::before { display: none; }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main > .wrap { width: 100%; max-width: 1536px; margin-inline: auto; padding-inline: var(--it-gutter); }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(.competitive-button, .competitive-primary, .competitive-secondary, .play-primary-action, .play-secondary-action) { min-height: 46px; padding: 11px 18px; border-radius: 3px; font: 750 14px/1.35 var(--font-body, Arial, sans-serif); white-space: normal; text-decoration: none; box-shadow: none; }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(.competitive-button-primary, .competitive-primary, .play-primary-action) { border-color: var(--it-lime); background: var(--it-lime); color: var(--it-ink); }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(a, button, input, select, textarea):focus-visible { outline: 3px solid var(--it-lime); outline-offset: 3px; }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(input, select, textarea) { border-radius: 3px; font-size: 14px; line-height: 1.4; }
.it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(.competitive-section-heading h2, .competitive-panel h2, .competitive-section-title h2) { color: inherit; font: 400 clamp(25px, 2.3vw, 34px)/1.15 var(--it-display); letter-spacing: 0; text-transform: uppercase; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-section-heading { min-height: 63px; padding: 18px 23px; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-section-heading > span { font-size: 11px; line-height: 1.5; letter-spacing: 0; text-transform: none; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state { min-height: 265px; align-items: center; text-align: center; background: transparent; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state strong { font: 400 clamp(25px, 2.6vw, 36px)/1.2 var(--it-display); }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state p { font-size: 16px; line-height: 1.55; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state > div { justify-content: center; gap: 12px; }
.it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state-compact { min-height: 180px; padding: 30px; }

/* GIOCA — pale controls, dark activity, clear separation of discovery and creation. */
.it-site[data-page="lfg"] .cplay-filters.wrap { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) 180px; align-items: end; gap: 22px; width: 100%; max-width: none; margin: 0; padding: 20px max(var(--it-gutter), calc((100% - 1436px) / 2)); background: var(--it-paper); color: var(--it-ink); }
.it-site[data-page="lfg"] .cplay-filters label { gap: 7px; padding: 0; border: 0; background: transparent; }
.it-site[data-page="lfg"] .cplay-filters label > span { color: var(--it-ink); font: 750 11px/1.4 var(--font-body, Arial, sans-serif); letter-spacing: .03em; }
.it-site[data-page="lfg"] .cplay-filters select { min-height: 42px; padding: 9px 30px 9px 12px; border: 1px solid #bfc3c3; border-radius: 3px; background: #fcfbf7; color: var(--it-ink); color-scheme: light; font-size: 14px; }
.it-site[data-page="lfg"] .cplay-filter-reset { min-height: 43px; min-width: 0; margin: 0; padding: 8px 13px; border: 0; border-left: 1px solid #c3c7c4; background: none; color: var(--it-ink); font-size: 13px; }
.it-site[data-page="lfg"] .cplay-filters :is(select, button):focus-visible { outline-color: var(--it-ink); }
.it-site[data-page="lfg"] .play-discovery-layout { grid-template-columns: minmax(0, 2.15fr) minmax(310px, 1fr); gap: 24px; padding-top: 24px; }
.it-site[data-page="lfg"] :is(.play-open-lobbies, .play-create-panel) { border: 1px solid var(--it-line); border-radius: 3px; background: #0b131a; }
.it-site[data-page="lfg"] .play-open-lobbies > header { min-height: 75px; padding: 20px 24px; }
.it-site[data-page="lfg"] .play-open-lobbies > header :is(h2, strong) { font: 400 29px/1.15 var(--it-display); text-transform: uppercase; }
.it-site[data-page="lfg"] .play-open-lobbies > header small { color: var(--it-muted); font-size: 12px; }
.it-site[data-page="lfg"] .play-empty-lobbies { min-height: 340px; padding: 34px 28px; gap: 14px; }
.it-site[data-page="lfg"] .play-empty-lobbies > svg { width: 60px; height: 60px; margin-bottom: 4px; color: #8995a0; }
.it-site[data-page="lfg"] .play-empty-lobbies h2 { font: 400 31px/1.15 var(--it-display); text-transform: uppercase; }
.it-site[data-page="lfg"] .play-empty-lobbies p { max-width: 530px; font-size: 15px; }
.it-site[data-page="lfg"] .play-empty-lobbies :is(a, button) { display: inline-flex; justify-content: center; align-items: center; min-height: 46px; margin-top: 6px; padding: 12px 25px; border: 1px solid var(--it-lime); border-radius: 3px; background: var(--it-lime); color: var(--it-ink); font: 750 14px/1.3 var(--font-body, Arial, sans-serif); text-decoration: none; }
.it-site[data-page="lfg"] .play-empty-lobbies > small { font-size: 12px; line-height: 1.5; }
.it-site[data-page="lfg"] .play-create-panel { padding: 24px; }
.it-site[data-page="lfg"] .play-create-panel h2 { margin: 0 0 10px; font: 400 30px/1.15 var(--it-display); text-transform: uppercase; }
.it-site[data-page="lfg"] .play-create-panel > p { font-size: 13px; line-height: 1.5; }
.it-site[data-page="lfg"] .play-create-panel label { font: 650 11px/1.4 var(--font-body, Arial, sans-serif); letter-spacing: .03em; }
.it-site[data-page="lfg"] .play-create-panel :is(select, textarea) { min-height: 44px; padding: 10px 12px; }
.it-site[data-page="lfg"] .cplay-login-state { gap: 14px; padding: 25px 16px; border: 1px solid var(--it-line); background: #0a1016; }
.it-site[data-page="lfg"] .cplay-login-state > strong { font-size: 16px; line-height: 1.45; }
.it-site[data-page="lfg"] .cplay-login-state > p { color: var(--it-muted); font-size: 14px; line-height: 1.55; }
.it-site[data-page="lfg"] .cplay-login-state > .play-primary-action { width: 100%; }
.it-site[data-page="lfg"] .play-create-trust strong { font: 650 13px/1.4 var(--font-body, Arial, sans-serif); }
.it-site[data-page="lfg"] .play-create-trust small { font-size: 12px; line-height: 1.5; }
.it-site[data-page="lfg"] .play-lobby-card { grid-template-columns: minmax(125px, 1.15fr) minmax(120px, 1fr) 56px 75px 80px 80px; gap: 13px; padding: 18px; }
.it-site[data-page="lfg"] .play-lobby-card strong { font: 650 14px/1.4 var(--font-body, Arial, sans-serif); }
.it-site[data-page="lfg"] .play-lobby-card small { font-size: 12px; line-height: 1.4; }
.it-site[data-page="lfg"] .play-lobby-card > button { font: 750 12px/1.3 var(--font-body, Arial, sans-serif); }
.it-site[data-page="lfg"] .cplay-discovery-footer { padding-top: 24px; gap: 22px; }
.it-site[data-page="lfg"] .cplay-discovery-footer > article { padding: 20px; border-radius: 3px; background: #0b131a; }
.it-site[data-page="lfg"] .cplay-footer-heading h2 { font: 400 24px/1.2 var(--it-display); text-transform: uppercase; }
.it-site[data-page="lfg"] :is(.cplay-footer-heading p, .cplay-footer-empty) { font-size: 12px; line-height: 1.5; }
.it-site[data-page="lfg"] .play-loading, .it-site[data-page="lfg"] .play-error { min-height: 500px; padding: 70px var(--it-gutter); }

/* TEAM — persistent roster and public directory, not the instant-play lobby. */
.it-site[data-page="team"] .competitive-team-layout { grid-template-columns: minmax(0, 1.65fr) minmax(310px, 1fr); gap: 24px; padding-top: 26px; }
.it-site[data-page="team"] .competitive-team-primary { gap: 22px; }
.it-site[data-page="team"] :is(.competitive-team-overview, .competitive-team-welcome, .competitive-team-directory, .competitive-roster, .competitive-team-requests, .competitive-team-matches) { border: 1px solid var(--it-line); border-radius: 3px; background: #0b131a; }
.it-site[data-page="team"] .competitive-team-welcome { min-height: 190px; padding: 28px; gap: 22px; }
.it-site[data-page="team"] .competitive-team-welcome h2 { font: 400 clamp(28px, 2.65vw, 39px)/1.17 var(--it-display); }
.it-site[data-page="team"] .competitive-team-welcome p { font-size: 15px; line-height: 1.55; }
.it-site[data-page="team"] .competitive-team-mark { border-radius: 3px; color: var(--it-lime); background: #141f25; }
.it-site[data-page="team"] .competitive-team-directory .competitive-empty-state { border: 0; min-height: 240px; }
.it-site[data-page="team"] .competitive-team-directory .competitive-empty-state strong { font-family: var(--font-body, Arial, sans-serif); font-weight: 700; font-size: 24px; }
.it-site[data-page="team"] .competitive-team-rail { display: grid; gap: 16px; padding: 0; border: 0; }
.it-site[data-page="team"] .competitive-team-rail > section { padding: 23px; border: 1px solid var(--it-line); border-radius: 3px; background: #0b131a; }
.it-site[data-page="team"] .competitive-team-rail > section:first-child { border-color: var(--it-lime); }
.it-site[data-page="team"] .competitive-team-rail h2 { margin-bottom: 13px; color: var(--it-paper); font: 400 27px/1.2 var(--it-display); text-transform: uppercase; }
.it-site[data-page="team"] .competitive-team-rail :is(p, dd) { font-size: 14px; line-height: 1.6; }
.it-site[data-page="team"] .competitive-team-rail .competitive-button { width: 100%; margin-top: 15px; }
.it-site[data-page="team"] .competitive-team-rail :is(input, select) { min-height: 45px; }
.it-site[data-page="team"] .competitive-team-list article { padding: 20px 23px; gap: 18px; }
.it-site[data-page="team"] .competitive-team-list article > div:nth-child(2) strong { font: 650 19px/1.35 var(--font-body, Arial, sans-serif); }
.it-site[data-page="team"] .competitive-team-list article > div:nth-child(2) span { font-size: 12px; }
.it-site[data-page="team"] .competitive-team-identity h2 { font: 400 38px/1.1 var(--it-display); }
.it-site[data-page="team"] .competitive-roster-row { min-height: 68px; font-size: 14px; }

/* TORNEI — the content is pale; the practical participation rail stays dark. */
.it-site[data-page="eventi"] .competitive-tournament-layout { grid-template-columns: minmax(0, 1.9fr) minmax(320px, 1fr); align-items: stretch; gap: 0; padding-top: 0; }
.it-site[data-page="eventi"] .competitive-tournament-primary {
  --competitive-text: var(--it-ink);
  --competitive-muted: #42515d;
  --competitive-dim: #56636d;
  --competitive-line: #cbd0ce;
  --competitive-line-soft: #dce0dc;
  --competitive-surface: #f8f6f0;
  --competitive-surface-2: #ebece3;
  --competitive-lime: #334700;
  gap: 22px;
  padding: 26px 24px 30px 0;
  background: var(--it-paper);
  color: var(--it-ink);
  box-shadow: calc(-1 * var(--it-gutter)) 0 var(--it-paper);
}
.it-site[data-page="eventi"] .competitive-tournament-primary > section { border: 1px solid #dde0d7; border-radius: 3px; background: #f8f6f0; overflow: hidden; }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state { min-height: 290px; border: 0; padding: 42px 28px; }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state strong { color: var(--it-ink); text-transform: uppercase; }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state-compact { min-height: 160px; padding: 28px; }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state-compact strong { font: 650 21px/1.35 var(--font-body, Arial, sans-serif); text-transform: none; }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-button-primary { background: var(--it-lime); border-color: #a5d422; color: var(--it-ink); }
.it-site[data-page="eventi"] .competitive-tournament-primary .competitive-button-secondary { border-color: var(--it-ink); background: transparent; color: var(--it-ink); }
.it-site[data-page="eventi"] .competitive-tournament-primary :is(a, button):focus-visible { outline-color: var(--it-ink); }
.it-site[data-page="eventi"] .competitive-tournament-feature { min-height: 350px; border: 0; background: #f8f6f0; }
.it-site[data-page="eventi"] .competitive-tournament-feature-copy { padding: 28px; }
.it-site[data-page="eventi"] .competitive-tournament-feature-copy h2 { font: 400 40px/1.15 var(--it-display); text-transform: uppercase; }
.it-site[data-page="eventi"] .competitive-tournament-feature-copy > p { font-size: 15px; }
.it-site[data-page="eventi"] .competitive-tournament-row { background: transparent; padding-inline: 22px; }
.it-site[data-page="eventi"] .competitive-tournament-rail { position: static; display: block; align-self: start; padding: 30px 0 30px 28px; border-left: 1px solid var(--it-line); background: var(--it-ink); }
.it-site[data-page="eventi"] .competitive-tournament-rail > section { display: block; padding: 0 0 28px; }
.it-site[data-page="eventi"] .competitive-tournament-rail > section + section { padding-top: 28px; }
.it-site[data-page="eventi"] .competitive-tournament-rail > section > p { margin-top: 17px; }
.it-site[data-page="eventi"] .competitive-tournament-rail > section > a { display: inline-block; margin-top: 17px; }
.it-site[data-page="eventi"] .competitive-tournament-rail h2 { color: var(--it-paper); font: 400 31px/1.2 var(--it-display); text-transform: uppercase; }
.it-site[data-page="eventi"] .competitive-tournament-rail ol { margin-top: 19px; }
.it-site[data-page="eventi"] .competitive-tournament-rail li { min-height: 94px; align-content: start; gap: 6px; padding: 19px 0 19px 51px; }
.it-site[data-page="eventi"] .competitive-tournament-rail li::before { width: 33px; height: 38px; color: var(--it-paper); font: 400 23px/1 var(--it-display); }
.it-site[data-page="eventi"] .competitive-tournament-rail li strong { font-size: 16px; }
.it-site[data-page="eventi"] .competitive-tournament-rail :is(li span, p, a) { font-size: 14px; line-height: 1.55; }

/* CLIP — a readable editorial list; no changes to playback or reaction mechanics. */
.it-site[data-page="clips"] .match-clips-layout { width: 100%; max-width: 1536px; margin: 26px auto 0; padding-inline: var(--it-gutter); grid-template-columns: minmax(0, 2.1fr) minmax(310px, 1fr); gap: 24px; }
.it-site[data-page="clips"] :is(.match-clips-main, .competitive-panel) { border-radius: 3px; background: #0b131a; }
.it-site[data-page="clips"] .competitive-tabs { min-height: 63px; padding-inline: 22px; gap: 22px; }
.it-site[data-page="clips"] .competitive-tabs button { min-height: 62px; font: 600 16px/1.3 var(--font-body, Arial, sans-serif); }
.it-site[data-page="clips"] .competitive-tabs button[data-active="true"] { color: var(--it-paper); }
.it-site[data-page="clips"] .competitive-tabs button::after { height: 3px; background: var(--it-lime); }
.it-site[data-page="clips"] .competitive-empty { min-height: 365px; padding: 38px; gap: 15px; }
.it-site[data-page="clips"] .competitive-empty > span { color: #97a2ab; }
.it-site[data-page="clips"] .competitive-empty h2 { font: 650 27px/1.3 var(--font-body, Arial, sans-serif); }
.it-site[data-page="clips"] .competitive-empty p { max-width: 550px; font-size: 16px; line-height: 1.55; }
.it-site[data-page="clips"] .competitive-panel { padding: 24px; }
.it-site[data-page="clips"] .competitive-panel h2 { font: 650 25px/1.25 var(--font-body, Arial, sans-serif); text-transform: none; }
.it-site[data-page="clips"] .competitive-panel-head { padding-bottom: 15px; border-bottom: 1px solid var(--it-line); }
.it-site[data-page="clips"] .competitive-panel-head button { min-height: 40px; font-size: 12px; }
.it-site[data-page="clips"] .compact-empty { padding-block: 20px; }
.it-site[data-page="clips"] .compact-empty strong { font-size: 16px; }
.it-site[data-page="clips"] .compact-empty span { font-size: 14px; line-height: 1.6; }
.it-site[data-page="clips"] .compact-empty .competitive-primary { margin-top: 12px; }
.it-site[data-page="clips"] .match-clip-uploader label { font-size: 11px; }
.it-site[data-page="clips"] .match-clip-uploader input:not([type="file"]), .it-site[data-page="clips"] .match-clip-uploader select { min-height: 44px; }
.it-site[data-page="clips"] .match-clip-copy h2 { font: 650 25px/1.2 var(--font-body, Arial, sans-serif); }
.it-site[data-page="clips"] .match-clip-copy p { font-size: 14px; }
.it-site[data-page="clips"] .match-clip-context { min-height: 55px; font-size: 12px; }
.it-site[data-page="clips"] .match-clip-actions > button { min-height: 42px; border-radius: 3px; font-size: 13px; }

/* PROFILO — public welcome and authenticated identity share one visual system. */
.it-site[data-page="profilo"] .competitive-profile.competitive-page { width: 100%; max-width: none; margin: 0; padding: 0 0 28px; background: var(--it-ink); color: var(--it-paper); }
.it-site[data-page="profilo"] .competitive-profile-login-callout { min-height: 156px; margin: 0; padding: 30px max(var(--it-gutter), calc((100% - 1436px) / 2)); border: 0; border-radius: 0; background: var(--it-paper); color: var(--it-ink); }
.it-site[data-page="profilo"] .competitive-profile-login-callout > div { max-width: 950px; }
.it-site[data-page="profilo"] .competitive-profile-login-callout span { color: #54604d; font-size: 11px; }
.it-site[data-page="profilo"] .competitive-profile-login-callout strong { color: var(--it-ink); font: 400 clamp(28px, 3vw, 42px)/1.2 var(--it-display); text-transform: uppercase; }
.it-site[data-page="profilo"] .competitive-profile-login-callout p { max-width: 900px; color: #39434b; font-size: 16px; line-height: 1.55; }
.it-site[data-page="profilo"] .competitive-profile-login-callout .competitive-button { flex-shrink: 0; border-color: var(--it-ink); background: var(--it-ink); color: var(--it-paper); }
.it-site[data-page="profilo"] .competitive-profile-login-callout .competitive-button:focus-visible { outline-color: var(--it-ink); }
.it-site[data-page="profilo"] .competitive-profile-summary { width: 100%; max-width: 1536px; margin: 0 auto; padding: 36px var(--it-gutter); gap: 0; }
.it-site[data-page="profilo"] .competitive-profile-summary article { min-height: 180px; padding: 6px 32px; border: 0; border-left: 1px solid var(--it-line); background: none; }
.it-site[data-page="profilo"] .competitive-profile-summary article:first-child { padding-left: 0; border-left: 0; }
.it-site[data-page="profilo"] .competitive-profile-summary article:last-child { padding-right: 0; }
.it-site[data-page="profilo"] .competitive-profile-summary article > span { color: var(--it-lime); font: 400 26px/1.2 var(--it-display); letter-spacing: 0; }
.it-site[data-page="profilo"] .competitive-profile-summary article > strong { margin-top: 10px; color: var(--it-paper); font: 650 17px/1.35 var(--font-body, Arial, sans-serif); }
.it-site[data-page="profilo"] .competitive-profile-summary article p { min-height: 0; margin: 15px 0; color: var(--it-muted); font-size: 15px; line-height: 1.6; }
.it-site[data-page="profilo"] .competitive-profile-summary button { min-height: 42px; font-size: 13px; }
.it-site[data-page="profilo"] :is(.competitive-identity-bar, .competitive-verification-note, .competitive-history-panel) { width: calc(100% - 2 * var(--it-gutter)); max-width: 1436px; margin-inline: auto; }
.it-site[data-page="profilo"] .competitive-identity-bar { margin-top: 26px; border-radius: 3px; background: #0c151d; }
.it-site[data-page="profilo"] .competitive-identity-bar > :is(label, div) { padding: 20px 16px; }
.it-site[data-page="profilo"] .competitive-identity-bar label { font-size: 11px; }
.it-site[data-page="profilo"] .competitive-identity-bar :is(input, select) { min-height: 45px; font-size: 14px; }
.it-site[data-page="profilo"] .competitive-verification button { min-height: 43px; background: var(--it-lime); border-color: var(--it-lime); border-radius: 3px; color: var(--it-ink); font-size: 13px; }
.it-site[data-page="profilo"] .competitive-verification-note { margin-top: 14px; background: #101a22; font-size: 13px; line-height: 1.55; }
.it-site[data-page="profilo"] .competitive-history-panel { margin-top: 24px; border-radius: 3px; background: #0b131a; }
.it-site[data-page="profilo"] .competitive-history-row { min-height: 61px; font-size: 14px; }
.it-site[data-page="profilo"] .competitive-history-head { font-size: 11px; }
.it-site[data-page="profilo"] .competitive-history-empty { min-height: 190px; }
.it-site[data-page="profilo"] .competitive-history-empty span { font-size: 14px; }

@media (hover: hover) and (pointer: fine) {
  .it-site .it-page-hero__actions :is(a, button):not(:disabled):hover { background: #dbff79; border-color: #dbff79; color: var(--it-ink); }
  .it-site .it-page-hero .it-page-hero__actions :is(.btn-line, .competitive-button-secondary, .competitive-secondary):not(:disabled):hover { background: var(--it-hero-text); border-color: var(--it-hero-text); color: var(--it-hero-bg); }
  .it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(.competitive-button-primary, .competitive-primary, .play-primary-action):not(:disabled):hover { background: #dcff7b; border-color: #dcff7b; color: var(--it-ink); }
}

@media (max-width: 1180px) {
  .it-site .it-page-hero__copy { width: 73%; }
  .it-site .it-page-hero__copy h1 { font-size: clamp(49px, 5.4vw, 64px); }
  .it-site[data-page="lfg"] .cplay-filters.wrap { gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .it-site[data-page="lfg"] .cplay-filter-reset { grid-column: 1 / -1; justify-self: end; min-height: 35px; border-left: 0; }
  .it-site[data-page="lfg"] .play-discovery-layout { grid-template-columns: minmax(0, 1.65fr) minmax(290px, 1fr); gap: 18px; }
  .it-site[data-page="lfg"] .play-lobby-card { grid-template-columns: minmax(130px, 1fr) minmax(110px, 1fr) 65px; }
  .it-site[data-page="lfg"] .play-lobby-card .play-lobby-voice { display: flex; }
  .it-site[data-page="team"] .competitive-team-layout { grid-template-columns: minmax(0, 1.5fr) 310px; gap: 18px; }
  .it-site[data-page="eventi"] .competitive-tournament-layout { grid-template-columns: minmax(0, 1.6fr) 320px; }
  .it-site[data-page="eventi"] .competitive-tournament-rail { padding-left: 23px; }
  .it-site[data-page="eventi"] .competitive-tournament-feature { grid-template-columns: 1fr; }
  .it-site[data-page="eventi"] .competitive-tournament-feature figure { min-height: 210px; max-height: 260px; border-left: 0; }
  .it-site[data-page="clips"] .match-clips-layout { grid-template-columns: minmax(0, 1.7fr) 310px; gap: 18px; }
  .it-site[data-page="clips"] .match-clips-aside { grid-template-columns: 1fr; }
  .it-site[data-page="clips"] .match-clip-row { grid-template-columns: 1fr; grid-template-areas: 'context' 'media' 'copy'; gap: 16px; }
  .it-site[data-page="profilo"] .competitive-profile-summary article { padding-inline: 22px; }
  .it-site[data-page="profilo"] .competitive-identity-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 850px) {
  .it-site .it-page-hero { min-height: 280px; }
  .it-site .it-page-hero__art { inset-inline-start: 26%; }
  .it-site .it-page-hero__art::after { background: linear-gradient(90deg, var(--it-hero-bg), transparent 78%); }
  .it-site .it-page-hero__copy { width: min(82%, 630px); }
  .it-site .it-page-hero__copy h1 { font-size: 51px; }
  .it-site .it-page-hero__copy > p { max-width: 520px; font-size: 17px; }
  .it-site[data-page="lfg"] .play-discovery-layout,
  .it-site[data-page="team"] .competitive-team-layout,
  .it-site[data-page="eventi"] .competitive-tournament-layout,
  .it-site[data-page="clips"] .match-clips-layout { grid-template-columns: 1fr; }
  .it-site[data-page="lfg"] .play-create-panel { max-width: none; }
  .it-site[data-page="lfg"] .play-empty-lobbies { min-height: 280px; }
  .it-site[data-page="team"] .competitive-team-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .it-site[data-page="team"] .competitive-team-rail > section:first-child { grid-column: 1 / -1; }
  .it-site[data-page="eventi"] .competitive-tournament-primary { padding: 24px 0; box-shadow: calc(-1 * var(--it-gutter)) 0 var(--it-paper), var(--it-gutter) 0 var(--it-paper); }
  .it-site[data-page="eventi"] .competitive-tournament-rail { display: grid; grid-template-columns: 1.3fr 1fr; gap: 30px; padding: 30px 0; border-left: 0; }
  .it-site[data-page="clips"] .match-clips-aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .it-site[data-page="clips"] .competitive-empty { min-height: 300px; }
  .it-site[data-page="profilo"] .competitive-profile-login-callout { align-items: flex-start; flex-direction: column; gap: 22px; }
  .it-site[data-page="profilo"] .competitive-profile-summary { grid-template-columns: 1fr; padding-block: 22px; }
  .it-site[data-page="profilo"] .competitive-profile-summary article,
  .it-site[data-page="profilo"] .competitive-profile-summary article:first-child,
  .it-site[data-page="profilo"] .competitive-profile-summary article:last-child { min-height: 0; padding: 25px 0; border: 0; border-bottom: 1px solid var(--it-line); }
  .it-site[data-page="profilo"] .competitive-profile-summary article:last-child { border-bottom: 0; }
}

@media (max-width: 560px) {
  .it-site .it-page-hero { min-height: 360px; }
  .it-site .it-page-hero__art { inset: 0 0 20% 0; }
  .it-site .it-page-hero__art img { object-position: 66% 38%; }
  .it-site .it-page-hero__art::after { background: linear-gradient(0deg, var(--it-hero-bg), transparent 95%), linear-gradient(90deg, var(--it-hero-bg), transparent 55%); }
  .it-site .it-page-hero__inner.wrap { align-items: flex-end; padding-top: 125px; padding-bottom: 30px; }
  .it-site .it-page-hero__copy { width: 100%; }
  .it-site .it-page-hero__copy h1 { font-size: clamp(41px, 10.8vw, 55px); line-height: 1.1; text-wrap: balance; }
  .it-site .it-page-hero__copy > p { margin-top: 15px; font-size: 16px; line-height: 1.5; }
  .it-site .it-page-hero__actions { margin-top: 19px; }
  .it-site .it-page-hero__actions :is(a, button) { min-height: 47px; padding-inline: 18px; font-size: 14px; }
  .it-site .it-page-hero[data-art="none"] { min-height: 190px; }
  .it-site .it-page-hero[data-art="none"] .it-page-hero__inner.wrap { padding-top: 30px; }
  .it-site[data-page="lfg"] .cplay-filters.wrap { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: 18px; gap: 16px; }
  .it-site[data-page="lfg"] .cplay-filter-reset { justify-self: stretch; }
  .it-site[data-page="lfg"] .play-discovery-layout { padding-top: 18px; }
  .it-site[data-page="lfg"] .play-open-lobbies > header { padding: 18px; }
  .it-site[data-page="lfg"] .play-open-lobbies > header :is(h2, strong) { font-size: 26px; }
  .it-site[data-page="lfg"] .play-empty-lobbies { min-height: 285px; padding: 27px 20px; }
  .it-site[data-page="lfg"] .play-empty-lobbies h2 { font-size: 28px; }
  .it-site[data-page="lfg"] .play-empty-lobbies p { font-size: 14px; }
  .it-site[data-page="lfg"] .play-create-panel { padding: 22px 19px; }
  .it-site[data-page="lfg"] .play-lobby-card { grid-template-columns: minmax(0, 1fr) 82px; padding: 17px; gap: 13px; }
  .it-site[data-page="lfg"] .play-lobby-host, .it-site[data-page="lfg"] .play-lobby-info { grid-column: 1; }
  .it-site[data-page="lfg"] .play-lobby-size { grid-column: 2; grid-row: 1; }
  .it-site[data-page="lfg"] .cplay-discovery-footer { grid-template-columns: 1fr; }
  .it-site[data-page="team"] .competitive-team-welcome { align-items: flex-start; flex-direction: column; padding: 24px; gap: 17px; }
  .it-site[data-page="team"] .competitive-team-welcome h2 { font-size: 30px; }
  .it-site[data-page="team"] .competitive-team-rail { grid-template-columns: 1fr; }
  .it-site[data-page="team"] .competitive-team-list article { flex-wrap: wrap; padding: 20px; gap: 14px; }
  .it-site[data-page="team"] .competitive-team-list article .competitive-button { width: 100%; }
  .it-site[data-page="team"] .competitive-roster-row { font-size: 12px; }
  .it-site:is([data-page="team"], [data-page="eventi"]) .competitive-section-heading { align-items: flex-start; flex-direction: column; gap: 8px; padding: 19px; }
  .it-site:is([data-page="team"], [data-page="eventi"]) .competitive-section-heading > span { max-width: none; text-align: left; }
  .it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state { padding: 28px 20px; }
  .it-site:is([data-page="team"], [data-page="eventi"]) .competitive-empty-state p { font-size: 14px; }
  .it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state { min-height: 270px; padding: 30px 20px; }
  .it-site[data-page="eventi"] .competitive-tournament-primary .competitive-empty-state-compact { min-height: 160px; }
  .it-site[data-page="eventi"] .competitive-empty-state > div { width: 100%; }
  .it-site[data-page="eventi"] .competitive-empty-state .competitive-button { width: 100%; }
  .it-site[data-page="eventi"] .competitive-tournament-rail { grid-template-columns: 1fr; gap: 16px; }
  .it-site[data-page="eventi"] .competitive-tournament-rail h2 { font-size: 29px; }
  .it-site[data-page="eventi"] .competitive-tournament-feature-copy { padding: 22px; }
  .it-site[data-page="eventi"] .competitive-tournament-feature-copy h2 { font-size: 34px; }
  .it-site[data-page="eventi"] .competitive-tournament-row { padding-inline: 19px; }
  .it-site[data-page="clips"] .competitive-tabs { padding-inline: 14px; gap: 15px; overflow-x: auto; }
  .it-site[data-page="clips"] .competitive-tabs button { font-size: 13px; white-space: nowrap; }
  .it-site[data-page="clips"] .competitive-empty { min-height: 290px; padding: 29px 19px; }
  .it-site[data-page="clips"] .competitive-empty h2 { font-size: 23px; }
  .it-site[data-page="clips"] .competitive-empty p { font-size: 14px; }
  .it-site[data-page="clips"] .match-clips-aside { grid-template-columns: 1fr; }
  .it-site[data-page="clips"] .competitive-panel { padding: 22px 19px; }
  .it-site[data-page="clips"] .competitive-panel h2 { font-size: 23px; }
  .it-site[data-page="clips"] .match-clip-copy h2 { font-size: 23px; }
  .it-site[data-page="profilo"] .competitive-profile-login-callout { padding-block: 29px; }
  .it-site[data-page="profilo"] .competitive-profile-login-callout strong { font-size: 31px; }
  .it-site[data-page="profilo"] .competitive-profile-login-callout p { font-size: 15px; }
  .it-site[data-page="profilo"] .competitive-profile-login-callout .competitive-button { width: 100%; }
  .it-site[data-page="profilo"] .competitive-identity-bar { grid-template-columns: 1fr; }
  .it-site[data-page="profilo"] .competitive-identity-bar > :is(label, div) { min-height: 100px; padding: 20px; border-right: 0; }
  .it-site[data-page="profilo"] .competitive-verification { grid-column: auto; }
  .it-site[data-page="profilo"] .competitive-verification-note { align-items: flex-start; flex-direction: column; gap: 8px; padding: 18px; }
  .it-site[data-page="profilo"] .competitive-section-title { align-items: flex-start; flex-direction: column; gap: 15px; }
  .it-site[data-page="profilo"] .competitive-history-row { min-height: 83px; padding: 18px; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .it-site .it-page-hero *, .it-site .it-page-hero *::after { animation: none !important; transition: none !important; }
  .it-site:is([data-page="lfg"], [data-page="team"], [data-page="eventi"], [data-page="clips"], [data-page="profilo"]) main :is(a, button, input, select, textarea) { transition: none !important; }
}
