.ns4-sport-context {
  --sport-accent: #178447;
  --sport-dark: #10251a;
  --sport-soft: #edf6f1;
}

.ns4-sport-context .ns4-sport-portal {
  box-sizing: border-box;
  clear: both;
  margin: 0 auto;
  max-width: 1240px;
  padding: 0 24px 64px;
  width: 100%;
}

.ns4-sport-context .ns4-sport-portal * { box-sizing: border-box; }
.ns4-sport-context .ns4-sport-portal a { color: inherit; text-decoration: none; }

.ns4-sport-head {
  border-bottom: 1px solid #d7ddd9;
  margin-bottom: 26px;
  padding: 32px 0 18px;
}

.ns4-sport-eyebrow,
.ns4-sport-kicker {
  color: var(--sport-accent);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .065em;
  margin: 0 0 7px;
  text-transform: uppercase;
}

.ns4-sport-head h1 { color: var(--sport-dark); font-size: clamp(38px, 5vw, 64px); line-height: .95; margin: 0; }
.ns4-sport-head p:last-child { color: #5a625d; font-size: 15px; margin: 10px 0 0; }
.ns4-sport-subnav {
  border-bottom: 1px solid #e5e5e5;
  margin: 0 -24px;
  overflow-x: auto;
  scrollbar-width: none;
}
.ns4-sport-subnav::-webkit-scrollbar { display: none; }
.ns4-sport-subnav-inner {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  min-width: max-content;
  padding: 0 24px;
}
.ns4-sport-subnav a {
  border-bottom: 4px solid transparent;
  color: #333;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 52px;
  margin: 0 22px;
  text-transform: uppercase;
}
.ns4-sport-subnav a:hover,
.ns4-sport-subnav a:focus-visible,
.ns4-sport-subnav a.is-active { border-bottom-color: var(--sport-accent); color: #222; }

.ns4-sport-hero { display: grid; gap: 22px; grid-template-columns: 1.45fr 1fr; }
.ns4-sport-story { min-width: 0; }
.ns4-sport-story-image { background: var(--sport-soft); display: block; overflow: hidden; position: relative; }
.ns4-sport-story-image img { aspect-ratio: 16 / 9; display: block; height: 100%; object-fit: cover; transition: transform .25s ease; width: 100%; }
.ns4-sport-story-image:hover img { transform: scale(1.015); }
.ns4-sport-image-fallback { align-items: center; aspect-ratio: 16 / 9; color: var(--sport-accent); display: flex; font-size: 26px; font-weight: 900; justify-content: center; letter-spacing: .12em; }
.ns4-sport-story-copy { padding-top: 12px; }
.ns4-sport-story h2 { color: #141816; font-size: 19px; line-height: 1.2; margin: 0; }
.ns4-sport-story h2 a:hover { color: var(--sport-accent); }
.ns4-sport-story p { color: #56605a; font-size: 16px; line-height: 1.5; margin: 12px 0 0; }
.ns4-sport-story.is-lead h2 { font-size: clamp(27px, 3.2vw, 43px); line-height: 1.05; }
.ns4-sport-story.is-lead .ns4-sport-story-image img,
.ns4-sport-story.is-lead .ns4-sport-image-fallback { aspect-ratio: 16 / 8.6; }
.ns4-sport-secondary { display: grid; gap: 18px; grid-template-columns: 1fr 1fr; }
.ns4-sport-secondary .ns4-sport-story { border-bottom: 1px solid #dce2de; padding-bottom: 13px; }

.ns4-sport-section-title { align-items: center; border-bottom: 1px solid #d7ddd9; display: flex; justify-content: space-between; margin-bottom: 18px; }
.ns4-sport-section-title h2 { border-bottom: 4px solid var(--sport-accent); color: var(--sport-dark); font-size: 25px; margin: 0 0 -1px; padding: 0 0 8px; }
.ns4-sport-section-title a { color: var(--sport-accent) !important; font-size: 13px; font-weight: 800; }
.ns4-sport-latest { margin-top: 42px; }
.ns4-sport-live { background: var(--sport-soft); margin-top: 34px; padding: 20px; }
.ns4-sport-live-grid { display: grid; gap: 10px; grid-template-columns: repeat(3, 1fr); }
.ns4-sport-live article { background: #fff; border-left: 4px solid var(--sport-accent); display: grid; gap: 5px; padding: 14px; }
.ns4-sport-live article span,
.ns4-sport-live article em { color: #657068; font-size: 11px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.ns4-sport-live article strong { color: var(--sport-dark); font-size: 14px; }
.ns4-sport-live article b { color: var(--sport-accent); padding: 0 5px; }
.ns4-sport-latest-grid { display: grid; gap: 22px; grid-template-columns: repeat(4, 1fr); }
.ns4-sport-story.is-latest h2 { font-size: 18px; }

.ns4-sport-focus { align-items: center; background: var(--sport-dark); color: #fff; display: grid; gap: 24px; grid-template-columns: 180px 1fr; margin-top: 28px; padding: 20px 24px; }
.ns4-sport-focus span { color: #8ed1ac; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ns4-sport-focus h2 { color: #fff; font-size: 25px; margin: 3px 0 0; }
.ns4-sport-focus ul { display: grid; gap: 8px; grid-template-columns: repeat(4, 1fr); list-style: none; margin: 0; padding: 0; }
.ns4-sport-focus li { border-left: 3px solid var(--sport-accent); font-size: 14px; font-weight: 700; padding: 7px 10px; }

.ns4-sport-vertical-grid { display: grid; gap: 34px 28px; grid-template-columns: 1fr 1fr; margin-top: 48px; }
.ns4-sport-vertical-posts { display: grid; gap: 14px; }
.ns4-sport-story.is-compact { align-items: center; border-bottom: 1px solid #e1e5e2; display: grid; gap: 15px; grid-template-columns: 140px 1fr; padding-bottom: 14px; }
.ns4-sport-story.is-compact .ns4-sport-story-copy { padding: 0; }
.ns4-sport-story.is-compact h2 { font-size: 16px; }
.ns4-sport-muted { color: #69736d; font-size: 14px; }
.ns4-sport-empty { background: var(--sport-soft); border-left: 5px solid var(--sport-accent); padding: 28px; }
.ns4-sport-empty h2 { color: var(--sport-dark); margin-top: 0; }

/* Existing category/article chrome remains red elsewhere and turns green only in Sport. */
.ns4-sport-context .mvp-widget-home-head:after,
.ns4-sport-context .mvp-cat-head:after,
.ns4-sport-context .mvp-post-cat { background-color: var(--sport-accent) !important; }
.ns4-sport-context .mvp-post-cat,
.ns4-sport-context .mvp-post-tags a:hover { color: var(--sport-accent) !important; }
body.ns4-sport-context #menu-meniu-principal > #menu-item-45711 > a { border-bottom-color: #ff005b !important; }

@media (max-width: 900px) {
  .ns4-sport-subnav-inner { justify-content: flex-start; }
  .ns4-sport-subnav a { margin: 0 16px; }
  .ns4-sport-hero { grid-template-columns: 1fr; }
  .ns4-sport-latest-grid { grid-template-columns: repeat(2, 1fr); }
  .ns4-sport-focus { grid-template-columns: 1fr; }
  .ns4-sport-live-grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .ns4-sport-context .ns4-sport-portal { padding: 0 15px 45px; }
  .ns4-sport-subnav { margin: 0 -15px; }
  .ns4-sport-subnav-inner { padding: 0 15px; }
  .ns4-sport-subnav a { font-size: 13px; line-height: 48px; margin: 0 14px; }
  .ns4-sport-head { padding-top: 24px; }
  .ns4-sport-head h1 { font-size: 42px; }
  .ns4-sport-secondary { gap: 16px 12px; }
  .ns4-sport-story.is-lead h2 { font-size: 29px; }
  .ns4-sport-story h2,
  .ns4-sport-story.is-latest h2 { font-size: 16px; }
  .ns4-sport-latest-grid,
  .ns4-sport-vertical-grid { grid-template-columns: 1fr; }
  .ns4-sport-focus ul { grid-template-columns: 1fr 1fr; }
  .ns4-sport-story.is-compact { grid-template-columns: 112px 1fr; }
}

.ns4-football-results{background:#0d1913;border-radius:4px;color:#fff;margin:38px 0;overflow:hidden;position:relative;box-shadow:0 16px 42px rgba(13,25,19,.16)}
.ns4-football-results:before{background:linear-gradient(90deg,var(--sport-accent),#66bd8b);content:"";height:5px;left:0;position:absolute;right:0;top:0}
.ns4-football-board-head{align-items:flex-end;background:radial-gradient(circle at 88% 10%,rgba(34,151,86,.22),transparent 38%);display:flex;justify-content:space-between;padding:30px 32px 23px}
.ns4-football-board-head h2{color:#fff;font-size:30px;line-height:1.05;margin:5px 0 6px}
.ns4-football-board-head p{color:#aebbb4;font-size:14px;margin:0}
.ns4-football-board-kicker{color:#61c58d;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.ns4-football-data-state{align-items:center;color:#b9c6bf;display:flex;font-size:12px;font-weight:700;gap:8px;white-space:nowrap}
.ns4-football-data-state i{background:#39bd77;border-radius:50%;box-shadow:0 0 0 5px rgba(57,189,119,.12);height:7px;width:7px}
.ns4-football-tabs{background:#14231b;border-bottom:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);display:flex;padding:0 22px}
.ns4-football-tabs button{-webkit-appearance:none;background:none;border:0;border-bottom:3px solid transparent;color:#9eaaa4;cursor:pointer;font:800 13px/1 Arial,sans-serif;letter-spacing:.04em;margin:0 9px;padding:18px 12px 15px;text-transform:uppercase}
.ns4-football-tabs button b{background:rgba(255,255,255,.1);border-radius:12px;color:#dbe2de;font-size:10px;margin-left:7px;padding:3px 7px}
.ns4-football-tabs button[aria-selected="true"]{border-bottom-color:#42c27b;color:#fff}
.ns4-football-tabs button[aria-selected="true"] b{background:#178447;color:#fff}
.ns4-football-panels{padding:24px 28px 28px}
.ns4-football-panel[hidden],.ns4-football-match[hidden]{display:none!important}
.ns4-football-match-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.ns4-football-match{background:#15261d;border:1px solid rgba(255,255,255,.08);border-radius:3px;padding:16px 17px;transition:border-color .2s,transform .2s}
.ns4-football-match:hover{border-color:rgba(78,197,130,.55);transform:translateY(-2px)}
.ns4-football-match>header{align-items:center;border-bottom:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;margin-bottom:13px;padding-bottom:10px}
.ns4-football-match>header span{color:#5fd28f;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.ns4-football-match>header time{color:#98a79f;font-size:11px;font-weight:700}
.ns4-football-team{align-items:center;display:grid;gap:10px;grid-template-columns:34px minmax(0,1fr) 30px;margin:8px 0}
.ns4-football-team i{align-items:center;background:#eff5f1;border:2px solid #fff;border-radius:50%;color:#163324;display:flex;font-size:10px;font-style:normal;font-weight:900;height:34px;justify-content:center;width:34px}
.ns4-football-team b{color:#fff;font-size:14px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ns4-football-team strong{background:#09110d;border-radius:3px;color:#fff;font-size:18px;line-height:30px;text-align:center}
.ns4-football-match>footer{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-top:12px;min-height:20px}
.ns4-football-match>footer em{border-radius:2px;font-size:10px;font-style:normal;font-weight:900;letter-spacing:.08em;padding:4px 7px;text-transform:uppercase}
.ns4-football-match>footer em.is-final{background:#fff;color:#111}
.ns4-football-match>footer em.is-scheduled{background:#178447;color:#fff}
.ns4-football-match>footer span{color:#7f8f87;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ns4-football-empty{align-items:center;display:flex;flex-direction:column;padding:50px 15px;text-align:center}
.ns4-football-empty>span{border:2px solid #3c5949;border-radius:50%;color:#58c486;font-size:30px;height:54px;line-height:45px;margin-bottom:12px;width:54px}
.ns4-football-empty strong{font-size:18px}.ns4-football-empty p{color:#899990;font-size:13px;margin:5px 0 0}
.ns4-football-more{background:transparent;border:1px solid #3a5b48;border-radius:3px;color:#fff;cursor:pointer;display:block;font-weight:800;margin:20px auto 0;padding:10px 18px}
.ns4-football-more:hover{background:#178447;border-color:#178447}
.ns4-football-standings{margin:34px 0}
.ns4-football-table-wrap{overflow-x:auto;border:1px solid #dce4df}
.ns4-football-standings table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.ns4-football-standings th,.ns4-football-standings td{padding:10px 12px;border-bottom:1px solid #e6ebe8;text-align:left}
.ns4-football-standings thead th{background:#f4f7f5;text-transform:uppercase;font-size:11px}
@media(max-width:900px){.ns4-football-match-grid{grid-template-columns:1fr}.ns4-football-board-head{align-items:flex-start;padding:25px 22px}.ns4-football-panels{padding:18px}.ns4-football-tabs{overflow-x:auto;padding:0 10px}.ns4-football-tabs button{white-space:nowrap}}
@media(max-width:600px){.ns4-football-results{border-radius:0;margin-left:-15px;margin-right:-15px}.ns4-football-board-head{display:block}.ns4-football-data-state{margin-top:15px}.ns4-football-board-head h2{font-size:25px}.ns4-football-tabs button{font-size:11px;margin:0;padding-left:10px;padding-right:10px}.ns4-football-panels{padding:14px 12px 18px}.ns4-football-match{padding:14px}.ns4-football-team b{white-space:normal}}
