*, *::before, *::after { box-sizing:border-box }
html, body { margin:0; padding:0 }
body {
  background:var(--sand);
  color:var(--ink);
  font-family:var(--f-display);   
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img { display:block; max-width:100%; height:auto }
a { color:inherit; text-decoration:none }
a:hover { color:var(--hover) }         
h1, h2, h3, h4, h5, h6 { margin:0; font-weight:400 }
p, ul, ol, figure { margin:0 }
ul, ol { padding:0; list-style:none }
button { font-family:var(--f-body); cursor:pointer }
input { font-family:var(--f-body); background:var(--card) }
::selection { background:#F3C21A; color:#201B14 }

:focus-visible { outline:2px solid var(--mango); outline-offset:2px }

.ed-sr {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

.ed-skip {
  position:absolute; left:-9999px; z-index:100;
  background:var(--structure); color:var(--ivory);
  font:700 12px/1 var(--f-body); letter-spacing:.1em; text-transform:uppercase;
  padding:14px 18px;
}
.ed-skip:focus { left:12px; top:12px; color:var(--ivory) }

.ed-wrap { max-width:var(--wrap); margin:0 auto; padding:0 var(--gutter) }

.ed-band { border-top:1px solid var(--structure); margin-top:40px; padding-top:20px }

.ed-sw {
  flex:none; display:block; width:7px; height:7px;
  background:var(--accent);
}
.ed-sw--lg { width:8px; height:8px }
.ed-sw--sm { width:5px; height:5px; margin-top:7px }

.ed-kicker {
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-kicker-row { display:flex; align-items:center; gap:7px }

.ed-eyebrow {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-eyebrow-row { display:flex; align-items:center; gap:8px }

.ed-pill {
  display:inline-block;
  background:var(--accent); color:var(--accent-ink);
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:5px 7px;
}

.ed-byline {
  font:400 10px/1 var(--f-body);
  letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-byline--lg { font-size:10.5px }

.ed-shares {
  display:inline-flex; align-items:center; gap:4px;
  margin-left:8px;
  white-space:nowrap;
  color:var(--text-faint);
}

.ed-shares__i {
  width:1em; height:1em; flex:none;
  fill:currentColor;
  position:relative; top:.06em;
}

.ed-cta {
  display:inline-block;
  background:var(--mango); color:var(--on-mango);
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:12px 20px; border:0;
}
.ed-cta:hover { background:var(--mango-hover); color:var(--on-mango) }
.ed-cta:active { background:var(--mango-active) }

.ed-more {
  display:block;
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--more-c, var(--hover));
  padding:13px 0 0;
}

.ed-chips { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px }
.ed-chip {
  font:400 10px/1 var(--f-body);
  letter-spacing:.1em; text-transform:uppercase;
  padding:7px 9px;
  background:var(--accent-tint); color:var(--accent-text);
}
.ed-chip:hover { color:var(--accent-text); filter:brightness(.96) }
.ed-chip--outline { background:none; border:1px solid var(--rule-dark); color:var(--ivory) }
.ed-chip--outline:hover { color:var(--ivory); border-color:var(--text-faint) }
.ed-chip--panel { background:var(--panel); color:var(--ink); letter-spacing:.08em }
.ed-chip--panel:hover { color:var(--ink) }

.ed-chip--all { background:none; color:var(--text-2) }
.ed-chip--all:hover { color:var(--ink) }

.ed-avatar {
  flex:none; width:34px; height:34px; border-radius:50%;
  background:var(--panel); color:var(--text-2);
  font:700 11px/34px var(--f-body); text-align:center;
}
.ed-avatar--sm { width:30px; height:30px; font-size:10px; line-height:30px }

.ed-avatar--img { object-fit:cover; display:block }

.ed-flag-breaking {
  font:700 9px/1 var(--f-body);
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--sig-drop); margin-right:5px;
}

.ed-flag {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-faint);
}

.ed-hl { font-weight:400; background:var(--accent-tint) }

.ed-up   { color:var(--sig-growth) }
.ed-down { color:var(--sig-drop) }

.ed-img { width:100%; object-fit:cover; background:var(--panel); display:block }
.ed-img--16x9  { aspect-ratio:16/9 }
.ed-img--16x10 { aspect-ratio:16/10 }
.ed-dark .ed-img { background:var(--structure) }

.ed-card { display:block }
.ed-card__label {
  display:block; margin-top:12px;
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-card__title {
  font:400 24px/1.17 var(--f-display);   
  letter-spacing:-.01em; color:var(--ink-hard);
  margin-top:8px; text-wrap:pretty;
}

.ed-card__dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px; text-wrap:pretty;
}
.ed-dark .ed-card__title { color:var(--ivory-2) }
.ed-dark .ed-card__dek   { color:var(--border-alt) }
.ed-dark .ed-card__label { color:var(--text-faint) }

.ed-card__dek,
.ed-row__dek,
.ed-hero__dek,
.ed-split__dek,
.ed-sponsor__dek,
.se-row__dek {
  
  display:-webkit-box !important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ed-row {
  display:grid; grid-template-columns:212px minmax(0,1fr); gap:18px;
  padding:18px 0; border-bottom:1px solid var(--border);
}
.ed-row__title {
  display:block;
  font:400 24px/1.17 var(--f-display);
  letter-spacing:-.012em; color:var(--ink-hard);
  margin-top:8px; text-wrap:pretty;
}
.ed-row__dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px; text-wrap:pretty;
}
.ed-row .ed-byline { margin-top:10px; display:block }

.ed-hlist__item {
  display:block;
  font:400 16px/1.25 var(--f-display); color:var(--ink-hard);
  padding:14px 0; border-bottom:1px solid var(--border);
}
.ed-hlist__item--compact { font-size:15px; line-height:1.3; padding:12px 0 }
.ed-hlist__item:last-child { border-bottom:0 }

.ed-rail-h {
  font:600 28px/1.29 var(--f-display);
  letter-spacing:-.01em; color:var(--ink);
  padding-bottom:14px; border-bottom:1px solid var(--structure);
}

.ed-band-title {
  font:600 28px/1.14 var(--f-display);
  letter-spacing:-.015em; margin-top:10px; color:var(--ink);
}
.ed-band-dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px;
}
.ed-dark .ed-band-title { color:var(--ivory-2) }
.ed-dark .ed-band-dek   { color:var(--border-alt) }

.ed-nl { background:var(--panel); padding:16px }
.ed-nl__h {
  font:700 15.5px/1.25 var(--f-body);   
  letter-spacing:-.01em; color:var(--ink-hard);
}
.ed-nl__dek { font:400 12.5px/1.45 var(--f-body); color:var(--text-2); margin-top:6px }
.ed-nl__form { display:flex; margin-top:12px }   
.ed-nl__input {
  flex:1; min-width:0;
  border:1px solid var(--border-alt); border-right:0;
  padding:9px 10px; font-size:12px; color:var(--ink);
}
.ed-nl__btn {
  flex:none; border:0;
  background:var(--mango); color:var(--on-mango);
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  padding:0 14px;
}
.ed-nl__btn:hover { background:var(--mango-hover) }
.ed-nl__fine { font:400 10px/1.4 var(--f-body); color:var(--text-faint); margin-top:10px }
.ed-nl__fine a { text-decoration:underline }

@media (max-width:1100px) {
  .ed-row { grid-template-columns:180px minmax(0,1fr); gap:16px }
  .ed-row__title { font-size:21px }
}
@media (max-width:780px) {
  :root { --gutter:18px }
  .ed-row { grid-template-columns:120px minmax(0,1fr); gap:14px; padding:14px 0 }
  .ed-row__title { font-size:18px; line-height:1.2; margin-top:6px }
  .ed-row__dek { display:none !important }   
  .ed-card__title { font-size:20px }
  .ed-card__dek { font-size:15px; margin-top:10px }
  .ed-band { margin-top:30px; padding-top:16px }
  .ed-band-title { font-size:24px }
  .ed-band-dek { font-size:15px }
  .ed-rail-h { font-size:23px; line-height:1.2; padding-bottom:12px }
  .ed-hlist__item { font-size:15px; padding:12px 0 }
}

.ed-nl__pot {
	position:absolute;
	left:-9999px;
	width:1px;
	height:1px;
	opacity:0;
	pointer-events:none;
}

.ed-nl__msg {
	margin:10px 0 0;
	font:400 14px/1.45 var(--f-body), Arial, sans-serif;
	color:var(--ink-soft, #5A554A);
}
.ed-nl__msg--err { color:#B0381C; }

.ed-nl__done { margin-top:14px; }
.ed-nl__done-h {
	margin:0;
	font:700 17px/1.4 var(--f-body), Arial, sans-serif;
	color:var(--ink-hard, #1C1A16);
	
	overflow-wrap:anywhere;
}
.ed-nl__done-d {
	margin:8px 0 0;
	font:400 14px/1.5 var(--f-body), Arial, sans-serif;
	color:var(--ink-soft, #5A554A);
}
.ed-nl__done-e { font-weight:700; }

.ed-nl__btn[disabled] { opacity:.6; cursor:default; }

.ed-lock {
  display:inline-block;
  width:.85em;
  height:auto;
  margin-left:.45em;
  vertical-align:baseline;
  transform:translateY(.06em);
  flex:none;
}
