.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; }
}
