/*
Theme Name: Logistics Now Editorial
Theme URI: https://logisticsnow.co.zm/
Author: Logistics Now / Halo Communications
Description: A premium editorial and advertising-led WordPress theme for Logistics Now, designed around generous white space, LN teal, strong typography, modular editorial franchises and high-value ad inventory.
Version: 1.4.56
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: logistics-now
*/

:root {
  --ln-teal: #078e98;
  --ln-teal-dark: #046a72;
  --ln-black: #111315;
  --ln-charcoal: #1f2a31;
  --ln-grey-900: #25282b;
  --ln-grey-700: #5f666b;
  --ln-grey-500: #92989c;
  --ln-grey-300: #d9dddf;
  --ln-grey-200: #e9ecee;
  --ln-grey-100: #f5f7f7;
  --ln-white: #ffffff;
  --ln-max: 1440px;
  --ln-content: 1180px;
  --ln-radius: 2px;
  --ln-gap: 32px;
  --ln-section-space: clamp(72px, 7vw, 108px);
  --ln-card-space: 24px;
  --ln-shadow: 0 8px 30px rgba(0,0,0,.05);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ln-white);
  color: var(--ln-black);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--ln-teal); }

.ln-wrap {
  width: min(calc(100% - 48px), var(--ln-content));
  margin-inline: auto;
}

/* Utility bar */
.ln-utility {
  background: var(--ln-black);
  color: rgba(255,255,255,.92);
  font-size: 12px;
  letter-spacing: .03em;
}
.ln-utility__inner {
  min-height: 34px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}
.ln-utility a { color: inherit; }
.ln-utility a:hover { color: #fff; }
.ln-utility__group { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }

/* Masthead */
.ln-masthead { border-bottom: 1px solid var(--ln-grey-200); }
.ln-masthead__inner {
  min-height: 122px;
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto minmax(260px, 1fr);
  align-items: center;
  gap: 32px;
}
.ln-brand { display: inline-flex; flex-direction: column; align-items: flex-start; }
.ln-brand__wordmark {
  font-size: clamp(34px, 4.2vw, 62px);
  line-height: .9;
  font-weight: 900;
  letter-spacing: -.05em;
}
.ln-brand__wordmark .now { color: var(--ln-teal); font-style: italic; font-weight: 800; }
.ln-brand__tagline {
  margin-top: 7px;
  font-size: 11px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--ln-grey-700);
}
.ln-ecosystem { display: flex; gap: 28px; align-items: center; justify-content: center; }
.ln-ecosystem a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 58px;
  color: var(--ln-grey-700);
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: .05em;
}
.ln-ecosystem__icon {
  color: var(--ln-teal);
  font-size: 22px;
  line-height: 1;
}
.ln-search { justify-self: end; width: min(100%, 320px); position: relative; }
.ln-search input {
  width: 100%;
  padding: 11px 42px 11px 14px;
  border: 1px solid var(--ln-grey-300);
  font: inherit;
  font-size: 13px;
  background: #fff;
}
.ln-search button {
  position: absolute; right: 0; top: 0; height: 100%; width: 42px;
  border: 0; background: transparent; cursor: pointer; font-size: 18px;
}

/* Main nav */
.ln-nav { border-bottom: 1px solid var(--ln-grey-200); background: #fff; position: sticky; top: 0; z-index: 30; }
body.admin-bar .ln-nav { top: 32px; }
.ln-nav__inner { display: flex; align-items: center; min-height: 54px; gap: 28px; }
.ln-nav .menu { list-style: none; display: flex; align-items: center; gap: 26px; padding: 0; margin: 0; flex: 1; }
.ln-nav .menu > li > a { font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: .02em; }
.ln-nav__search-mobile { display: none; }

/* Ad slots */
.ln-ad { margin-block: 48px 0; }
.ln-ad--hero { margin-block: 34px 0; }
.ln-ad__label { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--ln-grey-500); margin-bottom: 8px; }
.ln-ad__box {
  min-height: 110px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #f4f7f7, #edf1f1);
  border: 1px dashed #c9d0d2;
  color: var(--ln-grey-500);
  font-weight: 700;
  letter-spacing: .04em;
}
.ln-ad--hero .ln-ad__box { min-height: 180px; }
.ln-ad--sidebar { margin-top: 0; }
.ln-ad--sidebar .ln-ad__box { min-height: 600px; }
.ln-ad img { width: 100%; height: auto; }
.ln-ad .widget { margin: 0; }

/* Section language */
.ln-section { margin-top: var(--ln-section-space); }
.ln-section--tight { margin-top: 56px; }
.ln-section__head {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 26px;
}
.ln-section__title {
  margin: 0;
  color: var(--ln-teal-dark);
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.035em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ln-section__deck { color: var(--ln-grey-500); font-size: 13px; }
.ln-section__rule { height: 2px; background: var(--ln-teal); flex: 1; opacity: .85; }
.ln-section__link { color: var(--ln-teal-dark); font-size: 12px; font-weight: 700; white-space: nowrap; }

/* Top stories */
.ln-home-grid { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 42px; align-items: start; }
.ln-top-stories { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .85fr); gap: 28px; }
.ln-lead-card__image { aspect-ratio: 16/9; object-fit: cover; width: 100%; }
.ln-kicker { color: var(--ln-teal-dark); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; font-weight: 800; margin-bottom: 7px; }
.ln-lead-card h2 {
  margin: 10px 0 12px;
  font-size: clamp(32px, 3.2vw, 48px);
  line-height: .98;
  letter-spacing: -.045em;
  font-weight: 900;
}
.ln-lead-card p { color: var(--ln-grey-700); font-size: 18px; max-width: 64ch; }
.ln-btn {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--ln-teal); color: #fff; padding: 11px 18px;
  font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em;
}
.ln-btn:hover { background: var(--ln-teal-dark); color: #fff; }
.ln-story-stack { display: grid; gap: 0; }
.ln-story-stack article {
  display: grid; grid-template-columns: 140px 1fr; gap: 16px;
  padding: 0 0 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--ln-grey-200);
}
.ln-story-stack article:last-child { margin-bottom: 0; }
.ln-story-stack img { width: 140px; aspect-ratio: 4/3; object-fit: cover; }
.ln-story-stack h3 { margin: 0; font-size: 20px; line-height: 1.08; letter-spacing: -.025em; }

/* Card grids */
.ln-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.ln-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.ln-card img { width: 100%; aspect-ratio: 16/10; object-fit: cover; margin-bottom: 14px; }
.ln-card h3 { margin: 6px 0 0; font-size: 21px; line-height: 1.1; letter-spacing: -.025em; }
.ln-card p { margin: 8px 0 0; color: var(--ln-grey-700); font-size: 14px; }

/* Today carousel style */
.ln-today-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.ln-media-card { min-width: 0; }
.ln-media-card__thumb { position: relative; }
.ln-media-card__thumb img { width: 100%; aspect-ratio: 1.55/1; object-fit: cover; }
.ln-play {
  position: absolute; inset: 0; display: grid; place-items: center;
}
.ln-play span {
  width: 44px; height: 44px; border-radius: 50%; background: rgba(17,19,21,.82); color: #fff;
  display: grid; place-items: center; font-size: 16px;
}
.ln-media-card h3 { font-size: 17px; line-height: 1.1; margin: 8px 0 5px; }
.ln-media-card p { font-size: 13px; color: var(--ln-grey-700); margin: 0; }

/* Latest headlines */
.ln-headlines { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 34px; }
.ln-headline-item { padding: 0 0 14px; margin-bottom: 14px; border-bottom: 1px solid var(--ln-grey-200); }
.ln-headline-item h3 { margin: 4px 0 0; font-size: 16px; line-height: 1.18; }
.ln-date { color: var(--ln-grey-500); font-size: 11px; margin-top: 4px; }

/* Sidebar */
.ln-sidebar { display: grid; gap: 48px; }
.ln-sidebar__module { border-top: 2px solid var(--ln-teal); padding-top: 18px; }
.ln-sidebar__module h3 { margin: 0 0 18px; color: var(--ln-teal-dark); font-size: 17px; text-transform: uppercase; letter-spacing: -.02em; }
.ln-event { padding: 0 0 17px; margin-bottom: 17px; border-bottom: 1px solid var(--ln-grey-200); }
.ln-event__date { color: var(--ln-teal-dark); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.ln-event h4 { margin: 5px 0 2px; font-size: 15px; }
.ln-event p { margin: 0; font-size: 12px; color: var(--ln-grey-700); }
.ln-newsletter { background: var(--ln-grey-100); padding: 24px; }
.ln-newsletter h3 { margin-top: 0; color: var(--ln-teal-dark); }
.ln-newsletter input { width: 100%; border: 1px solid var(--ln-grey-300); padding: 12px; margin: 8px 0; font: inherit; }
.ln-promo-card { border: 1px solid var(--ln-grey-200); padding: 20px; }
.ln-promo-card h3 { color: var(--ln-teal-dark); margin-top: 0; }

/* Dark intelligence band */
.ln-intelligence {
  margin-top: var(--ln-section-space);
  background: var(--ln-charcoal);
  color: #fff;
  padding-block: clamp(68px, 7vw, 96px);
}
.ln-intelligence .ln-section__title { color: #fff; }
.ln-intelligence .ln-section__deck { color: rgba(255,255,255,.62); }
.ln-intelligence .ln-section__rule { background: var(--ln-teal); }
.ln-intelligence .ln-card p, .ln-intelligence .ln-date { color: rgba(255,255,255,.68); }
.ln-intelligence .ln-kicker { color: #55d3d8; }

/* Magazine */
.ln-magazine-panel {
  display: grid; grid-template-columns: 360px 1fr; gap: 54px; align-items: center;
  background: var(--ln-grey-100); padding: clamp(32px, 5vw, 68px);
}
.ln-magazine-panel__cover { aspect-ratio: 3/4; background: #dfe4e5; box-shadow: var(--ln-shadow); overflow: hidden; }
.ln-magazine-panel__cover img { width: 100%; height: 100%; object-fit: cover; }
.ln-magazine-panel h2 { font-size: clamp(42px, 5vw, 72px); line-height: .95; margin: 0 0 18px; letter-spacing: -.05em; }
.ln-magazine-panel p { color: var(--ln-grey-700); font-size: 18px; }
.ln-magazine-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.ln-btn--ghost { background: transparent; color: var(--ln-teal-dark); border: 1px solid var(--ln-teal); }
.ln-btn--ghost:hover { background: var(--ln-teal); color: #fff; }

/* Single article */
.ln-article { width: min(calc(100% - 48px), 860px); margin: 72px auto; }
.ln-article__kicker { color: var(--ln-teal-dark); text-transform: uppercase; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.ln-article h1 { font-size: clamp(46px, 6vw, 82px); line-height: .95; letter-spacing: -.055em; margin: 10px 0 22px; }
.ln-article__standfirst { font-size: 21px; color: var(--ln-grey-700); line-height: 1.45; }
.ln-article__meta { font-size: 13px; color: var(--ln-grey-500); margin: 18px 0 34px; }
.ln-article__hero { margin: 34px 0 46px; }
.ln-article__content { font-size: 18px; line-height: 1.72; }
.ln-article__content h2, .ln-article__content h3 { line-height: 1.08; letter-spacing: -.03em; margin-top: 1.7em; }
.ln-article__content a { color: var(--ln-teal-dark); text-decoration: underline; }

/* Footer */
.ln-footer { margin-top: var(--ln-section-space); background: var(--ln-black); color: #fff; padding: 58px 0 30px; }
.ln-footer__grid { display: grid; grid-template-columns: 1.2fr repeat(3, .7fr); gap: 40px; }
.ln-footer h4 { margin-top: 0; color: #fff; }
.ln-footer ul { list-style: none; margin: 0; padding: 0; }
.ln-footer li { margin: 8px 0; color: rgba(255,255,255,.68); font-size: 14px; }
.ln-footer__bottom { margin-top: 42px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.15); color: rgba(255,255,255,.5); font-size: 12px; }

/* Fallback placeholders */
.ln-placeholder { background: linear-gradient(135deg, #e7ecec, #f8fafa); border: 1px solid var(--ln-grey-200); }

@media (max-width: 1120px) {
  .ln-masthead__inner { grid-template-columns: 1fr auto; }
  .ln-ecosystem { display: none; }
  .ln-home-grid { grid-template-columns: 1fr; }
  .ln-sidebar { grid-template-columns: repeat(2, minmax(0,1fr)); align-items: start; }
  .ln-ad--sidebar .ln-ad__box { min-height: 300px; }
  .ln-today-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ln-grid-4 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 820px) {
  .ln-wrap { width: min(calc(100% - 28px), var(--ln-content)); }
  .ln-utility__inner { min-height: 38px; }
  .ln-utility__group:first-child a:nth-child(n+2) { display: none; }
  .ln-masthead__inner { min-height: 96px; grid-template-columns: 1fr auto; }
  .ln-search { display: none; }
  .ln-brand__tagline { font-size: 9px; letter-spacing: .2em; }
  .ln-nav__inner { overflow-x: auto; gap: 14px; }
  .ln-nav .menu { gap: 20px; min-width: max-content; }
  .ln-top-stories { grid-template-columns: 1fr; }
  .ln-story-stack { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
  .ln-story-stack article { grid-template-columns: 1fr; border-bottom: 0; padding-bottom: 0; }
  .ln-story-stack img { width: 100%; aspect-ratio: 16/10; }
  .ln-headlines { grid-template-columns: 1fr; }
  .ln-sidebar { grid-template-columns: 1fr; }
  .ln-magazine-panel { grid-template-columns: 1fr; }
  .ln-magazine-panel__cover { max-width: 360px; }
}

@media (max-width: 620px) {
  :root { --ln-section-space: 68px; }
  .ln-utility__group:last-child a:nth-child(-n+2) { display: none; }
  .ln-brand__wordmark { font-size: 38px; }
  .ln-nav { position: sticky; top: 0; }
  .ln-nav__inner { min-height: 48px; }
  .ln-nav .menu > li > a { font-size: 12px; }
  .ln-ad--hero { margin-top: 22px; }
  .ln-ad--hero .ln-ad__box { min-height: 110px; }
  .ln-section__head { gap: 10px; align-items: center; }
  .ln-section__deck { display: none; }
  .ln-section__link { display: none; }
  .ln-section__title { font-size: 23px; }
  .ln-lead-card h2 { font-size: 40px; }
  .ln-lead-card p { font-size: 16px; }
  .ln-story-stack { grid-template-columns: 1fr; }
  .ln-today-grid { display: flex; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
  .ln-media-card { flex: 0 0 76%; scroll-snap-align: start; }
  .ln-grid-4, .ln-grid-3 { grid-template-columns: 1fr; }
  .ln-footer__grid { grid-template-columns: 1fr 1fr; }
  .ln-article { width: min(calc(100% - 28px), 860px); margin-top: 48px; }
  .ln-article h1 { font-size: 46px; }
}

/* ===== v1.1 production cleanup ===== */
:root {
  --ln-content: 1320px;
  --ln-section-space: clamp(78px, 7vw, 118px);
}

.ln-masthead__inner {
  min-height: 134px;
  grid-template-columns: minmax(330px, 390px) minmax(390px, 1fr) minmax(250px, 290px);
  gap: 28px;
}
.ln-brand-wrap { min-width: 0; }
.ln-custom-logo a { display: inline-block; }
.ln-custom-logo .custom-logo {
  width: min(100%, 390px);
  max-height: 88px;
  object-fit: contain;
  object-position: left center;
}
.ln-ecosystem { gap: 18px; min-width: 0; }
.ln-ecosystem a { min-width: 54px; font-size: 9px; }
.ln-search { width: 100%; max-width: 290px; }

/* Advertising is image/customizer driven. Empty slots do not render. */
.ln-ad__creative { display: block; overflow: hidden; }
.ln-ad__creative img { display: block; width: 100%; height: auto; }
.ln-ad--sidebar .ln-ad__creative img { max-height: 600px; object-fit: contain; object-position: top center; }

/* Robust media fallback for missing/broken thumbnails. */
.ln-media {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(135deg, #eef3f3, #f8fafa);
  border: 1px solid var(--ln-grey-200);
}
.ln-card .ln-media { aspect-ratio: 16/10; margin-bottom: 16px; }
.ln-lead-card .ln-media { aspect-ratio: 16/9; }
.ln-story-stack .ln-media { width: 140px; aspect-ratio: 4/3; }
.ln-media-card .ln-media { aspect-ratio: 1.55/1; }
.ln-media__img { width: 100%; height: 100% !important; object-fit: cover; position: relative; z-index: 2; }
.ln-media__fallback {
  position: absolute; inset: 0; z-index: 1;
  display: grid; place-items: center;
  color: var(--ln-grey-500); font-weight: 900; letter-spacing: -.04em;
  font-size: clamp(18px, 2.2vw, 32px);
}
.ln-media__fallback .now { color: var(--ln-teal); font-style: italic; }
.ln-media.is-fallback .ln-media__fallback { z-index: 3; }

/* Remove old image assumptions now that media uses a frame. */
.ln-card img,
.ln-media-card__thumb img,
.ln-story-stack img { margin: 0; width: 100%; height: 100%; aspect-ratio: auto; }

.ln-archive { margin-top: clamp(72px, 7vw, 112px); }
.ln-archive .ln-section__head { margin-bottom: 38px; }
.ln-archive-grid { row-gap: 58px; }
.ln-archive-card h3 { font-size: clamp(22px, 2vw, 28px); line-height: 1.06; }
.ln-archive-card p { font-size: 15px; line-height: 1.6; }
.ln-pagination { margin-top: 64px; }

/* Give editorial modules more room to breathe. */
.ln-section__head { margin-bottom: 32px; }
.ln-grid-4 { gap: 34px; }
.ln-grid-3 { gap: 38px 34px; }
.ln-home-grid { gap: 54px; }
.ln-top-stories { gap: 34px; }
.ln-headlines { gap: 0 44px; }
.ln-sidebar { gap: 56px; }

/* Prevent long menus from crushing the header. */
.ln-nav__inner { overflow-x: auto; scrollbar-width: none; }
.ln-nav__inner::-webkit-scrollbar { display: none; }
.ln-nav .menu { min-width: max-content; }

@media (max-width: 1220px) {
  .ln-masthead__inner { grid-template-columns: minmax(320px, 1fr) auto; }
  .ln-ecosystem { display: none; }
  .ln-search { max-width: 320px; }
}

@media (max-width: 820px) {
  .ln-custom-logo .custom-logo { max-width: 310px; max-height: 72px; }
  .ln-story-stack .ln-media { width: 100%; aspect-ratio: 16/10; }
}

@media (max-width: 620px) {
  .ln-masthead__inner { grid-template-columns: 1fr; min-height: 104px; padding-block: 18px; }
  .ln-custom-logo .custom-logo { max-width: 280px; }
}

/* ===== v1.2 editorial architecture ===== */
.ln-custom-logo--direct { display:block; max-width:100%; }
.ln-custom-logo--direct img,
.ln-custom-logo img { display:block; width:auto; height:auto; max-height:78px; max-width:100%; object-fit:contain; }

.ln-ecosystem { grid-template-columns: repeat(4, minmax(78px,1fr)); }

.ln-more-top { margin-top: clamp(72px, 7vw, 108px); }
.ln-franchise { scroll-margin-top: 90px; }

.ln-ad { margin: clamp(58px, 6vw, 88px) auto; }
.ln-ad--hero { margin-top: 36px; margin-bottom: clamp(64px, 6vw, 88px); }
.ln-ad__label { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; color: var(--ln-grey-500); margin-bottom: 10px; }
.ln-ad__creative img { display:block; width:100%; max-height:260px; object-fit:cover; }
.ln-ad__box {
  min-height: 170px;
  border: 1px dashed var(--ln-grey-300);
  background: linear-gradient(135deg, #f8fafa, #eef2f2);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  color:var(--ln-grey-500);
}
.ln-ad__box strong { font-size:18px; color:var(--ln-grey-700); }
.ln-ad__box span { font-size:14px; }
.ln-ad__box small { font-size:10px; letter-spacing:.14em; }
.ln-ad--sidebar { margin: 0; }
.ln-ad--sidebar .ln-ad__box { min-height: 520px; }
.ln-ad--sidebar .ln-ad__creative img { max-height:none; aspect-ratio:1/2; object-fit:cover; }

.ln-card--media .ln-media-card__thumb { display:block; margin-bottom:14px; }

@media (max-width:1120px) {
  .ln-ecosystem { grid-template-columns: repeat(4, minmax(70px,1fr)); }
}
@media (max-width:820px) {
  .ln-ad--sidebar .ln-ad__box { min-height:260px; }
}

@media (max-width: 782px) {
  body.admin-bar .ln-nav { top: 46px; }
}


/* ===== v1.4 taxonomy + typography refinement ===== */
/* Editorial display type reduced ~20%; utility/navigation/body sizes intentionally unchanged. */
.ln-section__title { font-size: clamp(18px, 1.75vw, 26px); }
.ln-lead-card h2 { font-size: clamp(26px, 2.55vw, 38px); }
.ln-story-stack h3 { font-size: 16px; }
.ln-card h3 { font-size: 17px; line-height: 1.12; }
.ln-media-card h3 { font-size: 14px; }
.ln-headline-item h3 { font-size: 14px; line-height: 1.2; }
.ln-archive-card h3 { font-size: clamp(18px, 1.6vw, 22px); }
.ln-magazine-panel h2 { font-size: clamp(34px, 4vw, 58px); }
.ln-article h1 { font-size: clamp(37px, 4.8vw, 66px); line-height: .98; }
.ln-article__content h2 { font-size: clamp(26px, 3vw, 38px); }
.ln-article__content h3 { font-size: clamp(21px, 2.2vw, 30px); }

.ln-tv-card__media { position: relative; display: block; }
.ln-tv-card__play {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 44px; height: 44px; border-radius: 50%;
  display: grid; place-items: center; padding-left: 2px;
  background: rgba(17,19,21,.80); color: #fff; font-size: 15px; z-index: 4;
}

.ln-related { margin-top: clamp(72px, 7vw, 104px); }
.ln-related .ln-section__head { margin-bottom: 28px; }
.ln-related .ln-grid-4 { width: min(1160px, 100vw - 48px); margin-left: 50%; transform: translateX(-50%); }

@media (max-width: 820px) {
  .ln-related .ln-grid-4 { width: 100%; margin-left: 0; transform: none; grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .ln-section__title { font-size: 19px; }
  .ln-lead-card h2 { font-size: 32px; }
  .ln-card h3 { font-size: 17px; }
  .ln-article h1 { font-size: 37px; }
  .ln-related .ln-grid-4 { grid-template-columns: 1fr; }
}

/* ===== v1.4.1 TV, magazine controls, sticky brand + title rhythm ===== */
.ln-lead-card h2 { line-height: 1.06; }
.ln-story-stack h3 { line-height: 1.16; }
.ln-card h3 { line-height: 1.18; }
.ln-media-card h3 { line-height: 1.18; }
.ln-headline-item h3 { line-height: 1.24; }
.ln-archive-card h3 { line-height: 1.14; }
.ln-article h1 { line-height: 1.06; }
.ln-related .ln-card h3 { line-height: 1.18; }

.ln-magazine-panel__cover img { object-fit: contain; background: #fff; }

.ln-nav__inner { position: relative; }
.ln-nav__menu { min-width: 0; flex: 1; overflow-x: auto; scrollbar-width: none; }
.ln-nav__menu::-webkit-scrollbar { display: none; }
.ln-nav__menu .menu { min-width: max-content; }
.ln-sticky-brand {
  flex: 0 0 0;
  width: 0;
  opacity: 0;
  overflow: hidden;
  transform: translateY(-4px);
  transition: width .22s ease, flex-basis .22s ease, opacity .18s ease, transform .22s ease, margin-right .22s ease;
  white-space: nowrap;
  pointer-events: none;
}
.ln-sticky-brand img {
  display: block;
  width: auto;
  max-width: 168px;
  height: 30px;
  object-fit: contain;
  object-position: left center;
}
.ln-sticky-brand > span {
  display: inline-block;
  color: var(--ln-black);
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: 1;
}
.ln-sticky-brand .now { color: var(--ln-teal); font-style: italic; }
body.ln-scrolled .ln-sticky-brand {
  flex-basis: 168px;
  width: 168px;
  opacity: 1;
  transform: translateY(0);
  margin-right: 8px;
  pointer-events: auto;
}

.ln-tv-section .ln-tv-card__media { margin-bottom: 14px; }

@media (max-width: 900px) {
  body.ln-scrolled .ln-sticky-brand { flex-basis: 128px; width: 128px; }
  .ln-sticky-brand img { max-width: 128px; height: 26px; }
}
@media (max-width: 620px) {
  body.ln-scrolled .ln-sticky-brand { flex-basis: 104px; width: 104px; }
  .ln-sticky-brand img { max-width: 104px; height: 24px; }
  .ln-sticky-brand > span { font-size: 18px; }
}


/* ===== v1.4.2 magazine, signup and interaction refinements ===== */
/* Uploaded logo is always constrained by the theme, regardless of source dimensions. */
.ln-custom-logo .custom-logo { width: min(100%, 351px); max-height: 79px; }
.ln-custom-logo--direct img,
.ln-custom-logo img { max-height: 70px; max-width: 90%; }
.ln-sticky-brand img { max-width: 151px; height: 27px; }
body.ln-scrolled .ln-sticky-brand { flex-basis: 151px; width: 151px; }

.ln-hero-summary {
  display: -webkit-box;
  -webkit-line-clamp: var(--ln-hero-lines, 3);
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-clamp: var(--ln-hero-lines, 3);
}

.ln-magazine-mini__body { display: grid; grid-template-columns: 82px 1fr; gap: 14px; align-items: center; }
.ln-magazine-mini__body img { display:block; width:82px; aspect-ratio:3/4; object-fit:contain; background:#fff; box-shadow:var(--ln-shadow); }
.ln-magazine-mini__body strong { display:block; font-size:14px; line-height:1.25; margin-bottom:10px; }
.ln-magazine-mini .ln-btn { padding:8px 11px; font-size:10px; }

.ln-event { padding: 12px; margin: -12px -12px 5px; transition: background-color .18s ease; }
.ln-event:hover { background: var(--ln-grey-100); }

.ln-previous-issues { margin-top: clamp(36px, 4vw, 58px); }
.ln-section__head--compact { margin-bottom: 22px; }
.ln-issue-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.ln-issue-card img { width:100%; aspect-ratio:3/4; object-fit:contain; background:#fff; box-shadow:var(--ln-shadow); }
.ln-issue-card h4 { margin:10px 0 0; font-size:14px; line-height:1.25; }
.ln-issue-card__placeholder { aspect-ratio:3/4; display:grid; place-items:center; background:var(--ln-grey-100); border:1px solid var(--ln-grey-200); font-weight:900; }
.ln-issue-card__placeholder .now { color:var(--ln-teal); font-style:italic; }

.ln-magazine-reader { padding: clamp(36px,5vw,64px) 0 0; }
.ln-magazine-reader__bar { display:flex; justify-content:space-between; gap:24px; align-items:end; margin-bottom:24px; }
.ln-magazine-reader__bar h1 { margin:4px 0 0; font-size:clamp(28px,3.2vw,46px); line-height:1.05; letter-spacing:-.035em; }
.ln-magazine-reader__frame { height:min(82vh,1100px); min-height:680px; border:1px solid var(--ln-grey-200); background:var(--ln-grey-100); }
.ln-magazine-reader__frame iframe { width:100%; height:100%; border:0; display:block; background:#fff; }

.ln-subscribe-modal { position:fixed; inset:0; z-index:9999; opacity:0; transition:opacity .18s ease; }
.ln-subscribe-modal.is-open { opacity:1; }
.ln-subscribe-modal__backdrop { position:absolute; inset:0; background:rgba(17,19,21,.62); }
.ln-subscribe-modal__dialog { position:relative; z-index:2; width:min(calc(100% - 32px),520px); margin:12vh auto 0; background:#fff; padding:clamp(30px,5vw,48px); box-shadow:0 24px 70px rgba(0,0,0,.22); }
.ln-subscribe-modal__dialog h2 { margin:6px 0 12px; font-size:clamp(30px,4vw,46px); line-height:1.02; letter-spacing:-.04em; }
.ln-subscribe-modal__dialog p { color:var(--ln-grey-700); font-size:16px; line-height:1.5; }
.ln-subscribe-modal__dialog form { display:flex; gap:10px; margin-top:20px; }
.ln-subscribe-modal__dialog input { flex:1; min-width:0; border:1px solid var(--ln-grey-300); padding:12px 14px; font:inherit; }
.ln-subscribe-modal__close { position:absolute; top:12px; right:14px; border:0; background:transparent; font-size:30px; line-height:1; cursor:pointer; color:var(--ln-grey-700); }
.ln-subscribe-modal__later { margin-top:13px; padding:0; border:0; background:transparent; color:var(--ln-grey-500); font:inherit; font-size:12px; cursor:pointer; text-decoration:underline; }

@media (max-width:900px) {
  body.ln-scrolled .ln-sticky-brand { flex-basis:115px; width:115px; }
  .ln-sticky-brand img { max-width:115px; height:23px; }
  .ln-issue-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .ln-custom-logo .custom-logo { max-width:252px; max-height:65px; }
  .ln-custom-logo--direct img, .ln-custom-logo img { max-height:63px; }
  body.ln-scrolled .ln-sticky-brand { flex-basis:94px; width:94px; }
  .ln-sticky-brand img { max-width:94px; height:22px; }
  .ln-magazine-mini__body { grid-template-columns:70px 1fr; }
  .ln-magazine-mini__body img { width:70px; }
  .ln-magazine-reader__bar { align-items:start; flex-direction:column; }
  .ln-magazine-reader__frame { min-height:70vh; height:76vh; }
  .ln-subscribe-modal__dialog { margin-top:8vh; }
  .ln-subscribe-modal__dialog form { flex-direction:column; }
}


/* ===== v1.4.3 editorial density, Montserrat and article refinements ===== */
:root { --ln-section-space: clamp(63px, 5.7vw, 95px); }
body, button, input, select, textarea { font-family: "Montserrat", Arial, sans-serif; }
.ln-section--tight { margin-top: 50px; }
.ln-section__head { margin-bottom: 24px; }

/* Discovery area: More Articles lives beneath the hero so the sidebar no longer creates a dead white gap. */
.ln-home-main { min-width: 0; }
.ln-more-top--embedded { margin-top: 48px; }
.ln-more-top--embedded .ln-section__head { margin-bottom: 20px; }
.ln-more-top--embedded .ln-headlines { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 28px; }
.ln-more-top--embedded .ln-headline-item { padding: 15px 0; }

/* A larger, genuinely magazine-like sidebar current-edition module. */
.ln-magazine-mini__body { grid-template-columns: 118px minmax(0,1fr); gap: 16px; align-items: center; }
.ln-magazine-mini__body img { width:118px; }
.ln-magazine-mini__body strong { font-size:13px; line-height:1.35; }

/* Mailing list card and popup: stronger hierarchy, less repetitive copy. */
.ln-newsletter { background:#f2f7f7; border-top:4px solid var(--ln-teal); padding:26px; }
.ln-newsletter__eyebrow { color:var(--ln-teal-dark); font-size:10px; letter-spacing:.12em; font-weight:800; margin-bottom:8px; }
.ln-newsletter h3 { color:var(--ln-black); font-size:18px; line-height:1.15; margin:0 0 10px; letter-spacing:.01em; }
.ln-newsletter p { color:var(--ln-grey-700); font-size:13px; line-height:1.55; margin:0 0 12px; }
.ln-subscribe-modal__dialog { border-top:5px solid var(--ln-teal); }
.ln-subscribe-modal__dialog h2 { font-size:clamp(26px,3vw,38px); letter-spacing:-.025em; }

/* Single stories: smaller headline and calmer body scale. */
.ln-article { margin-top: 60px; }
.ln-article h1 { font-size:clamp(30px,3.35vw,46px); line-height:1.08; letter-spacing:-.04em; }
.ln-article__standfirst { font-size:18px; line-height:1.5; }
.ln-article__content { font-size:17px; line-height:1.68; }
.ln-article__content h2 { font-size:clamp(24px,2.5vw,32px); line-height:1.12; }
.ln-article__content h3 { font-size:clamp(20px,2vw,26px); line-height:1.14; }

/* Related franchise cards stay inside the article column and align as a single system. */
.ln-related { margin-top: clamp(58px,5.5vw,82px); }
.ln-related .ln-section__head { margin-bottom:24px; }
.ln-related .ln-grid-4 { width:100%; margin-left:0; transform:none; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:26px; align-items:start; }
.ln-related .ln-card { min-width:0; }
.ln-related .ln-card img, .ln-related .ln-card .ln-media { width:100%; aspect-ratio:16/10; object-fit:cover; }
.ln-related .ln-card h3 { margin-top:10px; }

/* Footer always uses the same uploaded masthead logo asset. */
.ln-footer__brand-logo { display:inline-block; background:#fff; padding:9px 12px; margin-bottom:12px; }
.ln-footer__brand-logo img { display:block; width:auto; max-width:280px; max-height:58px; object-fit:contain; }

@media (max-width:900px) {
  .ln-more-top--embedded .ln-headlines { grid-template-columns:1fr; }
  .ln-magazine-mini__body { grid-template-columns:100px minmax(0,1fr); }
  .ln-magazine-mini__body img { width:100px; }
  .ln-footer__brand-logo img { max-width:230px; max-height:52px; }
}
@media (max-width:620px) {
  :root { --ln-section-space: 58px; }
  .ln-more-top--embedded { margin-top:38px; }
  .ln-article h1 { font-size:30px; }
  .ln-article__content { font-size:16px; }
  .ln-related .ln-grid-4 { grid-template-columns:1fr; }
  .ln-magazine-mini__body { grid-template-columns:90px minmax(0,1fr); }
  .ln-magazine-mini__body img { width:90px; }
}


/* ===== v1.4.4 compact publisher masthead experiment ===== */
/* The main navigation is now the permanent site masthead. */
.ln-masthead { display: none !important; }

/* Premium homepage billboard sits between the utility strip and sticky navigation. */
.ln-header-ad {
  width: min(calc(100% - 48px), var(--ln-content));
  margin: 22px auto 24px;
}
.ln-header-ad.ln-ad--hero { margin-block: 22px 24px; }
.ln-header-ad .ln-ad__box { min-height: 150px; }

/* Permanent compact branded navigation. */
.ln-nav {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(255,255,255,.98);
  border-top: 1px solid var(--ln-grey-200);
  border-bottom: 1px solid var(--ln-grey-200);
  box-shadow: 0 1px 0 rgba(17,19,21,.02);
}
body.admin-bar .ln-nav { top: 32px; }
.ln-nav__inner {
  min-height: 66px;
  gap: 20px;
  overflow: visible;
}
.ln-sticky-brand,
body.ln-scrolled .ln-sticky-brand {
  flex: 0 0 142px;
  width: 142px;
  opacity: 1;
  overflow: visible;
  transform: none;
  margin-right: 2px;
  pointer-events: auto;
  transition: none;
}
.ln-sticky-brand img {
  display: block;
  width: auto;
  max-width: 142px;
  height: 28px;
  object-fit: contain;
  object-position: left center;
}
.ln-sticky-brand > span { font-size: 21px; }
.ln-nav__menu { flex: 1 1 auto; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.ln-nav__menu::-webkit-scrollbar { display: none; }
.ln-nav .menu { gap: 20px; min-width: max-content; }
.ln-nav .menu > li > a { font-size: 11px; letter-spacing: .025em; }

/* Search now lives in-line with the permanent navigation. */
.ln-nav__search {
  position: relative;
  flex: 0 0 205px;
  width: 205px;
}
.ln-nav__search input {
  width: 100%;
  height: 38px;
  border: 1px solid var(--ln-grey-300);
  background: #fff;
  padding: 9px 36px 9px 12px;
  font: inherit;
  font-size: 11px;
  outline: none;
}
.ln-nav__search input:focus { border-color: var(--ln-teal); }
.ln-nav__search button {
  position: absolute;
  right: 0;
  top: 0;
  width: 36px;
  height: 38px;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--ln-black);
  font-size: 17px;
}

/* With no oversized masthead, discovery starts more decisively below the nav. */
.ln-discovery { margin-top: 48px; }

@media (max-width: 1180px) {
  .ln-nav__inner { gap: 14px; }
  .ln-sticky-brand,
  body.ln-scrolled .ln-sticky-brand { flex-basis: 118px; width: 118px; }
  .ln-sticky-brand img { max-width: 118px; height: 24px; }
  .ln-nav .menu { gap: 17px; }
  .ln-nav__search { flex-basis: 165px; width: 165px; }
}

@media (max-width: 900px) {
  .ln-header-ad { width: min(calc(100% - 28px), var(--ln-content)); margin-block: 16px 18px; }
  .ln-header-ad .ln-ad__box { min-height: 110px; }
  .ln-nav__inner { min-height: 58px; overflow-x: auto; scrollbar-width: none; }
  .ln-sticky-brand,
  body.ln-scrolled .ln-sticky-brand { flex: 0 0 108px; width: 108px; }
  .ln-sticky-brand img { max-width: 108px; height: 23px; }
  .ln-nav__search { flex: 0 0 36px; width: 36px; }
  .ln-nav__search input {
    position: absolute;
    right: 0;
    top: 44px;
    width: 240px;
    opacity: 0;
    pointer-events: none;
    box-shadow: var(--ln-shadow);
  }
  .ln-nav__search:focus-within input { opacity: 1; pointer-events: auto; }
  .ln-nav__search button { position: static; width: 36px; }
}

@media (max-width: 782px) {
  body.admin-bar .ln-nav { top: 46px; }
}

@media (max-width: 620px) {
  .ln-utility { display: none; }
  .ln-header-ad { margin-top: 12px; }
  .ln-nav__inner { min-height: 54px; gap: 10px; }
  .ln-sticky-brand,
  body.ln-scrolled .ln-sticky-brand { flex: 0 0 96px; width: 96px; }
  .ln-sticky-brand img { max-width: 96px; height: 21px; }
  .ln-nav .menu { gap: 16px; }
  .ln-nav .menu > li > a { font-size: 10.5px; }
  .ln-discovery { margin-top: 38px; }
}

/* ===== v1.4.5 discovery, social, newsletter and house-ad refinements ===== */
/* Permanent navigation brand: 15% larger with a deliberate gap before the first menu item. */
.ln-nav__inner { gap: 22px; }
.ln-sticky-brand,
body.ln-scrolled .ln-sticky-brand { flex-basis: 163px; width: 163px; margin-right: 12px; }
.ln-sticky-brand img { max-width: 163px; height: 32px; }

/* Publication dates in the discovery area. */
.ln-discovery-date { margin-top: 6px; color: var(--ln-grey-500); font-size: 11px; line-height: 1.35; }
.ln-lead-card .ln-discovery-date { margin-top: -2px; margin-bottom: 10px; font-size: 12px; }

/* More Articles becomes a visual continuation of discovery with compact thumbnails. */
.ln-more-articles-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 28px; }
.ln-more-article-card {
  display: grid;
  grid-template-columns: 118px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  padding: 15px 0;
}
.ln-more-article-card__thumb { display:block; }
.ln-more-article-card__thumb .ln-media { width:118px; aspect-ratio: 4 / 3; }
.ln-more-article-card__thumb img { width:100%; height:100%; object-fit:cover; }
.ln-more-article-card__body { min-width:0; }
.ln-more-article-card h3 { margin:4px 0 0; font-size:15px; line-height:1.18; }

/* Large landscape mailing-list callout after More Articles. */
.ln-mailing-band {
  margin-top: 34px;
  padding: 28px 30px;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(360px,.9fr);
  align-items: center;
  gap: 34px;
  background: linear-gradient(120deg, #f0f5f5, #ffffff);
  border-top: 3px solid var(--ln-teal);
}
.ln-mailing-band h2 { margin:3px 0 8px; font-size:25px; line-height:1.04; letter-spacing:-.035em; }
.ln-mailing-band p { margin:0; color:var(--ln-grey-700); max-width:58ch; font-size:13px; }
.ln-mailing-band__form { display:flex; min-width:0; }
.ln-mailing-band__form input { min-width:0; flex:1; border:1px solid var(--ln-grey-300); border-right:0; padding:12px 14px; font:inherit; font-size:13px; background:#fff; }
.ln-mailing-band__form .ln-btn { flex:0 0 auto; }

/* Social presence in utility strip and footer. */
.ln-social-icons { display:flex; align-items:center; gap:7px; }
.ln-social-icons a,
.ln-article-share a,
.ln-article-share button,
.ln-selection-share button {
  width:28px; height:28px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid currentColor; background:transparent;
  font-size:10px; font-weight:800; line-height:1; text-decoration:none;
}
.ln-social-icons--utility { margin-left:10px; }
.ln-social-icons--utility a { color:rgba(255,255,255,.82); border-color:rgba(255,255,255,.32); }
.ln-social-icons--utility a:hover { color:#fff; border-color:#fff; }
.ln-social-icons--footer { margin-top:18px; }
.ln-social-icons--footer a { color:#fff; border-color:rgba(255,255,255,.3); }
.ln-footer__contact p { margin:7px 0; color:rgba(255,255,255,.65); font-size:13px; }
.ln-footer__contact a { color:inherit; }

/* Article sharing and highlight-to-share tool. */
.ln-article-share { display:flex; align-items:center; gap:8px; margin:-20px 0 30px; color:var(--ln-grey-600); }
.ln-article-share > span { margin-right:4px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.ln-article-share a,
.ln-article-share button { color:var(--ln-teal-dark); border-color:var(--ln-grey-300); cursor:pointer; font-family:inherit; }
.ln-article-share a:hover,
.ln-article-share button:hover { background:var(--ln-teal); color:#fff; border-color:var(--ln-teal); }
.ln-selection-share {
  position:fixed; z-index:1000; display:flex; gap:5px; padding:7px;
  background:#111315; border-radius:22px; box-shadow:0 8px 30px rgba(0,0,0,.22);
}
.ln-selection-share[hidden] { display:none !important; }
.ln-selection-share button { color:#fff; border-color:rgba(255,255,255,.26); cursor:pointer; }
.ln-selection-share button:hover { background:var(--ln-teal); border-color:var(--ln-teal); }

/* House ads should feel like internal promotion, not broken inventory. */
.ln-ad__creative { background:#fff; }
.ln-ad__creative img { width:100%; height:auto; object-fit:cover; }
.ln-ad--sidebar .ln-ad__creative img { aspect-ratio:1/2; object-fit:cover; }

@media (max-width:1180px) {
  .ln-sticky-brand, body.ln-scrolled .ln-sticky-brand { flex-basis:136px; width:136px; margin-right:8px; }
  .ln-sticky-brand img { max-width:136px; height:27px; }
}
@media (max-width:900px) {
  .ln-sticky-brand, body.ln-scrolled .ln-sticky-brand { flex-basis:122px; width:122px; margin-right:4px; }
  .ln-sticky-brand img { max-width:122px; height:25px; }
  .ln-mailing-band { grid-template-columns:1fr; gap:20px; }
  .ln-more-articles-grid { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .ln-sticky-brand, body.ln-scrolled .ln-sticky-brand { flex:0 0 108px; width:108px; }
  .ln-sticky-brand img { max-width:108px; height:23px; }
  .ln-more-article-card { grid-template-columns:92px minmax(0,1fr); }
  .ln-more-article-card__thumb .ln-media { width:92px; }
  .ln-mailing-band { padding:22px 20px; margin-top:28px; }
  .ln-mailing-band__form { display:grid; grid-template-columns:1fr; gap:8px; }
  .ln-mailing-band__form input { border-right:1px solid var(--ln-grey-300); }
  .ln-social-icons--utility { display:none; }
}

/* ===== v1.4.6 footer, sticky signup and advertise page ===== */
.ln-footer { background:#fff; color:var(--ln-black); padding:72px 0 0; border-top:1px solid var(--ln-grey-200); }
.ln-footer h4 { color:var(--ln-black); }
.ln-footer a { color:var(--ln-black); }
.ln-footer ul { list-style:none; padding:0; margin:0; }
.ln-footer li { margin:9px 0; }
.ln-footer__brand-logo { background:transparent; padding:0; margin-bottom:12px; }
.ln-footer__brand-logo img { max-width:280px; max-height:58px; }
.ln-footer .ln-brand__tagline { color:var(--ln-grey-600); }
.ln-footer__intro { max-width:48ch; color:var(--ln-grey-700); margin-top:18px; }
.ln-footer__contact p { color:var(--ln-grey-700); }
.ln-social-icons--footer a { color:var(--ln-teal-dark); border-color:var(--ln-grey-300); }
.ln-social-icons--footer a:hover { background:var(--ln-teal); color:#fff; border-color:var(--ln-teal); }
.ln-footer__bottom { margin-top:56px; padding:20px 0; background:#111315; color:#fff; font-size:12px; }

/* The compact sidebar subscription follows the reader through discovery and stops at More Articles. */
.ln-sidebar { align-self:stretch; }
.ln-newsletter--sticky { position:sticky; top:82px; z-index:2; }

/* Landscape signup has moved below Logistics Now Analysis. */
.ln-mailing-band--full { margin:42px 0 var(--ln-section-space); }

/* Advertise page */
.ln-advertise-page { background:#fff; }
.ln-advertise-hero { padding:clamp(64px,8vw,112px) 0; background:linear-gradient(135deg,#f4f8f8 0%,#fff 58%); }
.ln-advertise-hero__grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:64px; align-items:center; }
.ln-advertise-hero h1 { margin:8px 0 22px; font-size:clamp(48px,6vw,86px); line-height:.98; letter-spacing:-.055em; max-width:12ch; }
.ln-advertise-hero__lede { font-size:clamp(17px,1.7vw,22px); line-height:1.55; max-width:68ch; color:var(--ln-grey-700); }
.ln-advertise-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.ln-advertise-hero__card { background:#0d3440; color:#fff; padding:34px; }
.ln-advertise-hero__card span { display:block; color:var(--ln-teal); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.11em; margin-bottom:14px; }
.ln-advertise-hero__card strong { display:block; font-size:24px; line-height:1.18; }
.ln-advertise-hero__card p { color:rgba(255,255,255,.75); margin:18px 0 0; line-height:1.6; }
.ln-advertise-section { padding:clamp(62px,7vw,102px) 0; }
.ln-advertise-section--soft { background:#f5f7f7; }
.ln-opportunity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.ln-opportunity-grid article { border:1px solid var(--ln-grey-200); padding:28px; min-height:240px; background:#fff; }
.ln-opportunity-grid h3 { margin:0 0 12px; font-size:22px; line-height:1.1; }
.ln-opportunity-grid p { color:var(--ln-grey-700); font-size:14px; line-height:1.6; }
.ln-advertise-split { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start; }
.ln-advertise-split h2 { font-size:clamp(36px,4vw,58px); line-height:1; letter-spacing:-.045em; margin:8px 0 18px; }
.ln-advertise-split p { color:var(--ln-grey-700); line-height:1.75; font-size:16px; }
.ln-advertise-audience { background:#fff; padding:30px; border-top:0; }
.ln-advertise-audience h3 { margin-top:0; }
.ln-advertise-audience li { margin:13px 0; line-height:1.45; }
.ln-campaign-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.ln-campaign-steps > div { border-top:0; padding-top:18px; }
.ln-campaign-steps strong { color:var(--ln-teal); }
.ln-campaign-steps h3 { margin:24px 0 9px; font-size:20px; }
.ln-campaign-steps p { color:var(--ln-grey-700); font-size:14px; line-height:1.6; }
.ln-media-brief-gate { background:#0d3440; color:#fff; }
.ln-media-brief-gate__grid { display:grid; grid-template-columns:1fr minmax(360px,.75fr); gap:64px; align-items:center; }
.ln-media-brief-gate .ln-kicker { color:#6ad5d4; }
.ln-media-brief-gate h2 { margin:8px 0 16px; font-size:clamp(36px,4vw,58px); line-height:1; letter-spacing:-.04em; }
.ln-media-brief-gate p { color:rgba(255,255,255,.75); max-width:64ch; line-height:1.65; }
.ln-media-brief-gate__formwrap { background:#fff; color:var(--ln-black); padding:30px; }
.ln-media-brief-form { display:grid; gap:14px; }
.ln-media-brief-form label { display:grid; gap:6px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.ln-media-brief-form input { width:100%; padding:12px 13px; border:1px solid var(--ln-grey-300); font:inherit; font-size:14px; }
.ln-media-brief-form small { color:var(--ln-grey-600); line-height:1.5; }
.ln-form-error { margin-bottom:16px; padding:10px 12px; background:#fff0f0; color:#8a1f1f; font-size:13px; }
.ln-brief-success h3 { margin-top:0; font-size:28px; }

@media (max-width:980px) {
  .ln-newsletter--sticky { position:static; }
  .ln-advertise-hero__grid,.ln-advertise-split,.ln-media-brief-gate__grid { grid-template-columns:1fr; gap:34px; }
  .ln-opportunity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ln-campaign-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .ln-footer { padding-top:52px; }
  .ln-footer__bottom { margin-top:40px; }
  .ln-opportunity-grid,.ln-campaign-steps { grid-template-columns:1fr; }
  .ln-advertise-hero h1 { font-size:46px; }
  .ln-media-brief-gate__formwrap { padding:22px; }
}


/* ===== v1.4.7 sidebar flow, footer navigation and mailing-band refinements ===== */
/* Keep sidebar widgets compact rather than stretching grid rows; the signup can then
   become sticky and remains constrained by the discovery/More Articles parent. */
.ln-sidebar {
  align-self: stretch;
  align-content: start;
  align-items: start;
  grid-auto-rows: max-content;
}
.ln-newsletter--sticky {
  position: sticky;
  top: 82px;
  z-index: 3;
  align-self: start;
}

/* Landscape signup: no teal top rule, about 20% more vertical breathing room. */
.ln-mailing-band {
  border-top: 0;
  padding: 34px 30px;
}
.ln-mailing-band--full {
  border-top: 0;
}

/* Footer category/platform lists. */
.ln-footer__links { list-style:none; margin:0; padding:0; }
.ln-footer__links li { margin:9px 0; font-size:14px; }
.ln-footer__links a { color:var(--ln-grey-700); }
.ln-footer__links a:hover { color:var(--ln-teal-dark); }

@media (max-width:980px) {
  .ln-sidebar { align-content:start; grid-auto-rows:max-content; }
  .ln-newsletter--sticky { position:static; }
}
@media (max-width:620px) {
  .ln-mailing-band { padding:27px 20px; }
}

/* ===== v1.4.8 mailing-list capture ===== */
.ln-honeypot { position:absolute !important; left:-99999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.ln-consent-note { display:block; margin-top:9px; color:var(--ln-grey-500); font-size:10px; line-height:1.45; }
.ln-form-success { margin:0 0 10px; padding:10px 12px; background:#eef8f7; border-left:3px solid var(--ln-teal); color:var(--ln-teal-dark); font-size:12px; line-height:1.45; }
.ln-inline-consent { display:flex !important; grid-template-columns:auto 1fr; align-items:flex-start; gap:9px !important; text-transform:none !important; letter-spacing:0 !important; font-size:12px !important; font-weight:500 !important; line-height:1.45; }
.ln-inline-consent input { width:auto !important; margin-top:2px; }


/* ===== v1.4.10 mailing-list colour system =====
   Match the dark-teal / white / LN-teal palette used on the media brief gate.
   No layout or behaviour changes in this patch. */
:root { --ln-mail-dark:#0c3440; }

/* Sidebar signup */
.ln-newsletter {
  background: var(--ln-mail-dark);
  border-top-color: var(--ln-teal);
  color: #fff;
}
.ln-newsletter__eyebrow { color: #7fd4d8; }
.ln-newsletter h3 { color: #fff; }
.ln-newsletter p { color: rgba(255,255,255,.76); }
.ln-newsletter input {
  background:#fff;
  color:var(--ln-black);
  border-color:rgba(255,255,255,.34);
}
.ln-newsletter input::placeholder { color:#92989c; }
.ln-newsletter .ln-consent-note { color:rgba(255,255,255,.60); }
.ln-newsletter .ln-form-success {
  background:rgba(255,255,255,.10);
  color:#fff;
  border-left-color:#7fd4d8;
}

/* Landscape signup band */
.ln-mailing-band,
.ln-mailing-band--full {
  background: var(--ln-mail-dark);
  color:#fff;
}
.ln-mailing-band .ln-kicker { color:#7fd4d8; }
.ln-mailing-band h2 { color:#fff; }
.ln-mailing-band p { color:rgba(255,255,255,.76); }
.ln-mailing-band__form input {
  background:#fff;
  color:var(--ln-black);
  border-color:rgba(255,255,255,.34);
}
.ln-mailing-band__form input::placeholder { color:#92989c; }
.ln-mailing-band .ln-consent-note { color:rgba(255,255,255,.60); }
.ln-mailing-band .ln-form-success {
  background:rgba(255,255,255,.10);
  color:#fff;
  border-left-color:#7fd4d8;
}

/* Popup signup */
.ln-subscribe-modal__dialog {
  background: var(--ln-mail-dark);
  color:#fff;
  border-top-color:var(--ln-teal);
}
.ln-subscribe-modal__dialog .ln-kicker { color:#7fd4d8; }
.ln-subscribe-modal__dialog h2 { color:#fff; }
.ln-subscribe-modal__dialog p { color:rgba(255,255,255,.76); }
.ln-subscribe-modal__dialog input {
  background:#fff;
  color:var(--ln-black);
  border-color:rgba(255,255,255,.34);
}
.ln-subscribe-modal__dialog input::placeholder { color:#92989c; }
.ln-subscribe-modal__close { color:#fff; }
.ln-subscribe-modal__later { color:rgba(255,255,255,.65); }
.ln-subscribe-modal__dialog .ln-consent-note { color:rgba(255,255,255,.60); }
.ln-subscribe-modal__dialog .ln-form-success {
  background:rgba(255,255,255,.10);
  color:#fff;
  border-left-color:#7fd4d8;
}


/* ===== v1.4.11 TV feature layout, mega navigation and signup refinements ===== */
/* Flat CTA treatment: remove browser bevel/borders/shadows. */
.ln-btn,
button.ln-btn,
input[type="submit"].ln-btn {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
}

/* Sidebar mailing list: no accent rule above the card. */
.ln-newsletter { border-top: 0 !important; }

/* Logistics Now TV: one large lead tile plus two vertically stacked stories. */
.ln-tv-section {
  background: #f1f9f9;
  padding: clamp(28px, 3.5vw, 46px);
  margin-inline: 0;
}
.ln-tv-feature-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 28px;
  align-items: stretch;
}
.ln-tv-feature,
.ln-tv-side-card { min-width: 0; }
.ln-tv-feature .ln-tv-card__media { aspect-ratio: 16/9; overflow: hidden; }
.ln-tv-feature .ln-media,
.ln-tv-feature .ln-media img,
.ln-tv-side-card .ln-media,
.ln-tv-side-card .ln-media img { width: 100%; height: 100%; }
.ln-tv-feature .ln-media img,
.ln-tv-side-card .ln-media img { object-fit: cover; }
.ln-tv-feature .ln-kicker { margin-top: 13px; }
.ln-tv-feature h3 {
  margin: 7px 0 0;
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.08;
  letter-spacing: -.035em;
}
.ln-tv-side-stack { display: grid; grid-template-rows: 1fr 1fr; gap: 22px; }
.ln-tv-side-card { display: grid; align-content: start; }
.ln-tv-side-card .ln-tv-card__media { aspect-ratio: 16/8.2; overflow: hidden; }
.ln-tv-side-card .ln-kicker { margin-top: 9px; }
.ln-tv-side-card h3 { margin: 5px 0 0; font-size: 17px; line-height: 1.14; letter-spacing: -.02em; }

/* Full-width category mega menu. Its exact top edge is set in JS to the live nav bottom. */
.ln-nav { z-index: 900; }
.ln-mega-menu {
  position: fixed;
  z-index: 1100;
  left: 0;
  right: 0;
  top: var(--ln-mega-top, 66px);
  background: rgba(255,255,255,.995);
  border-top: 1px solid var(--ln-grey-200);
  border-bottom: 1px solid var(--ln-grey-200);
  box-shadow: 0 20px 42px rgba(17,19,21,.14);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity .14s ease, transform .14s ease, visibility .14s ease;
  pointer-events: none;
}
.ln-mega-menu.is-open { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.ln-mega-menu__inner { padding-block: 22px 22px; }
.ln-mega-panel__head { display:flex; align-items:center; gap:20px; margin-bottom:15px; }
.ln-mega-panel__head strong { color:var(--ln-teal-dark); font-size:19px; text-transform:uppercase; letter-spacing:-.02em; }
.ln-mega-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.ln-mega-card__image { display:block; aspect-ratio:16/9; overflow:hidden; background:var(--ln-grey-100); }
.ln-mega-card__image .ln-media,
.ln-mega-card__image img { width:100%; height:100%; }
.ln-mega-card__image img { object-fit:cover; }
.ln-mega-card h3 { margin:9px 0 0; font-size:14px; line-height:1.16; letter-spacing:-.015em; }
.ln-mega-card h3 a:hover { color:var(--ln-teal-dark); }
.ln-mega-panel__footer { display:flex; justify-content:flex-end; margin-top:18px; padding-top:14px; border-top:1px solid var(--ln-grey-200); }
.ln-mega-panel__footer a { color:var(--ln-teal-dark); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.02em; }
.ln-mega-panel__footer a:hover { color:var(--ln-teal); }
.ln-nav .menu > li > a[aria-expanded="true"] { color:var(--ln-teal-dark); }

/* More imposing mailing-list modal. */
.ln-subscribe-modal__dialog {
  width: min(calc(100% - 36px), 720px) !important;
  margin-top: 9vh !important;
  padding: clamp(36px, 5vw, 60px) !important;
  border-top: 0 !important;
  box-shadow: 0 32px 90px rgba(0,0,0,.34) !important;
}
.ln-subscribe-modal__dialog h2 { font-size: clamp(34px, 4.2vw, 54px) !important; max-width: 12ch; }
.ln-subscribe-modal__dialog p { max-width: 56ch; font-size: 16px; }

@media (max-width: 980px) {
  .ln-tv-section { margin-inline: 0; }
  .ln-tv-feature-grid { grid-template-columns: 1fr; }
  .ln-tv-side-stack { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .ln-mega-menu { display:none !important; }
}
@media (max-width: 620px) {
  .ln-tv-side-stack { grid-template-columns: 1fr; }
  .ln-subscribe-modal__dialog { width: min(calc(100% - 24px), 720px) !important; padding: 30px 24px !important; }
  .ln-subscribe-modal__dialog form { flex-direction: column; }
}

/* ===== v1.4.13 Logistics Now TV + Feature enquiry page ===== */
/* TV: latest post is the lead; four follow-up stories form a full-height horizontal stack. */
.ln-tv-feature-grid {
  grid-template-columns: minmax(0, 1.62fr) minmax(340px, .92fr);
  min-height: 520px;
}
.ln-tv-feature {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto auto;
  height: 100%;
}
.ln-tv-feature .ln-tv-card__media {
  aspect-ratio: auto;
  min-height: 0;
  height: 100%;
}
.ln-tv-side-stack {
  display: grid;
  grid-template-rows: repeat(4, minmax(0, 1fr));
  gap: 12px;
  height: 100%;
  min-height: 0;
}
.ln-tv-side-card {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  min-height: 0;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(13, 105, 111, .13);
}
.ln-tv-side-card:last-child { border-bottom: 0; padding-bottom: 0; }
.ln-tv-side-card .ln-tv-card__media {
  aspect-ratio: auto;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.ln-tv-side-card__copy { display:flex; flex-direction:column; justify-content:center; min-width:0; }
.ln-tv-side-card .ln-kicker { margin: 0 0 5px; }
.ln-tv-side-card h3 { margin:0; font-size:16px; line-height:1.15; letter-spacing:-.018em; }

/* Feature page */
.ln-feature-page { background:#fff; }
.ln-feature-hero { padding:clamp(68px,8vw,112px) 0; background:linear-gradient(135deg,#f1f8f8 0%,#fff 62%); }
.ln-feature-hero__grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr); gap:64px; align-items:center; }
.ln-feature-hero h1 { margin:8px 0 22px; max-width:13ch; font-size:clamp(46px,5.7vw,82px); line-height:.99; letter-spacing:-.052em; }
.ln-feature-hero__lede { max-width:68ch; color:var(--ln-grey-700); font-size:clamp(17px,1.55vw,21px); line-height:1.6; }
.ln-feature-hero__card { background:#0d3440; color:#fff; padding:34px; }
.ln-feature-hero__card > span { display:block; margin-bottom:14px; color:#6ad5d4; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.ln-feature-hero__card strong { display:block; font-size:25px; line-height:1.18; }
.ln-feature-hero__card p { margin:18px 0 0; color:rgba(255,255,255,.74); line-height:1.6; }
.ln-feature-section { padding:clamp(64px,7vw,104px) 0; }
.ln-feature-form-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr); gap:76px; align-items:start; }
.ln-feature-form-intro h2 { margin:7px 0 18px; font-size:clamp(34px,3.7vw,54px); line-height:1.03; letter-spacing:-.04em; }
.ln-feature-form-intro > p { color:var(--ln-grey-700); font-size:16px; line-height:1.7; }
.ln-feature-formats { display:grid; gap:1px; margin-top:34px; background:var(--ln-grey-200); border:1px solid var(--ln-grey-200); }
.ln-feature-formats > div { display:grid; grid-template-columns:72px 1fr; gap:18px; background:#fff; padding:18px 20px; }
.ln-feature-formats strong { color:var(--ln-teal-dark); }
.ln-feature-formats span { color:var(--ln-grey-700); font-size:14px; }
.ln-feature-form-wrap { background:#f4f8f8; padding:clamp(28px,3.6vw,46px); }
.ln-feature-form { display:grid; gap:16px; }
.ln-feature-form__two { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ln-feature-form label,
.ln-feature-platforms legend { display:grid; gap:7px; color:var(--ln-black); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.ln-feature-form input[type="text"],
.ln-feature-form input[type="tel"],
.ln-feature-form input[type="email"],
.ln-feature-form select,
.ln-feature-form textarea { width:100%; border:1px solid var(--ln-grey-300); background:#fff; padding:13px 14px; font:inherit; font-size:14px; text-transform:none; letter-spacing:0; }
.ln-feature-form textarea { resize:vertical; min-height:116px; }
.ln-feature-platforms { margin:3px 0; padding:0; border:0; }
.ln-feature-platforms__options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:3px; }
.ln-feature-platforms__options label { display:flex; align-items:center; gap:8px; border:1px solid var(--ln-grey-300); background:#fff; padding:12px; font-size:12px; font-weight:700; text-transform:none; letter-spacing:0; cursor:pointer; }
.ln-feature-platforms__options input { accent-color:var(--ln-teal); }
.ln-feature-other[hidden] { display:none !important; }
.ln-feature-form .ln-inline-consent { display:flex; grid-template-columns:auto 1fr; align-items:flex-start; flex-direction:row; gap:9px; font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; }
.ln-feature-form > small { color:var(--ln-grey-600); line-height:1.5; }
.ln-feature-success { background:#fff; padding:34px; border-top:4px solid var(--ln-teal); }
.ln-feature-success h3 { margin:7px 0 12px; font-size:32px; line-height:1.05; }
.ln-feature-success p { color:var(--ln-grey-700); line-height:1.65; margin-bottom:24px; }

@media (max-width:980px) {
  .ln-tv-feature-grid { min-height:0; grid-template-columns:1fr; }
  .ln-tv-feature .ln-tv-card__media { aspect-ratio:16/9; height:auto; }
  .ln-tv-side-stack { grid-template-columns:1fr 1fr; grid-template-rows:auto auto; height:auto; }
  .ln-tv-side-card { min-height:118px; }
  .ln-feature-hero__grid,.ln-feature-form-grid { grid-template-columns:1fr; gap:36px; }
}
@media (max-width:620px) {
  .ln-tv-side-stack { grid-template-columns:1fr; }
  .ln-tv-side-card { grid-template-columns:112px minmax(0,1fr); }
  .ln-feature-form__two,.ln-feature-platforms__options { grid-template-columns:1fr; }
  .ln-feature-form-wrap { padding:24px 20px; }
  .ln-feature-hero h1 { font-size:45px; }
}


/* ===== v1.4.15 Logistics Now TV gallery + focus player ===== */
.ln-tv-section {
  background: #f1f9f9;
  padding: clamp(28px, 3.5vw, 46px);
  margin-inline: 0;
}
.ln-tv-grid { align-items:start; }
.ln-tv-tile { min-width:0; }
.ln-tv-open,
.ln-tv-title-button {
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.ln-tv-open { display:block; width:100%; }
.ln-tv-title-button:hover { color:var(--ln-teal-dark); }
.ln-tv-tile .ln-tv-card__media {
  display:block;
  position:relative;
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  margin-bottom:14px;
  background:var(--ln-grey-100);
}
.ln-tv-tile .ln-tv-card__media .ln-media,
.ln-tv-tile .ln-tv-card__media img { width:100%; height:100%; }
.ln-tv-tile .ln-tv-card__media img { object-fit:cover; }
.ln-tv-tile .ln-tv-card__play {
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:rgba(17,19,21,.82);
  color:#fff;
  border-radius:50%;
  font-size:17px;
  transition:transform .18s ease, background .18s ease;
}
.ln-tv-tile:hover .ln-tv-card__play { transform:translate(-50%,-50%) scale(1.08); background:var(--ln-teal-dark); }
.ln-tv-tile h3 { margin:6px 0 0; font-size:17px; line-height:1.18; letter-spacing:-.02em; }

.ln-tv-modal[hidden] { display:none !important; }
.ln-tv-modal {
  position:fixed;
  inset:0;
  z-index:5000;
  display:grid;
  place-items:center;
  padding:clamp(18px,3vw,42px);
}
.ln-tv-modal__backdrop {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:rgba(8,18,22,.72);
  backdrop-filter:blur(4px);
  cursor:zoom-out;
}
.ln-tv-modal__dialog {
  position:relative;
  z-index:1;
  width:min(1050px, calc(100vw - 42px));
  max-height:calc(100vh - 42px);
  overflow:auto;
  background:#fff;
  border:12px solid #d9f1f1;
  box-shadow:0 34px 100px rgba(0,0,0,.36);
  transform-origin:center;
  will-change:transform, opacity;
}
.ln-tv-modal__close {
  position:absolute;
  z-index:4;
  right:14px;
  top:14px;
  width:40px;
  height:40px;
  border:0;
  border-radius:50%;
  background:rgba(17,19,21,.86);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.ln-tv-modal__content { background:#fff; }
.ln-tv-player-wrap { background:#071216; min-height:320px; display:grid; place-items:center; }
.ln-tv-player-wrap iframe,
.ln-tv-player-wrap video { width:100%; aspect-ratio:16/9; height:auto; display:block; border:0; }
.ln-tv-player-wrap audio { width:min(760px, calc(100% - 48px)); margin:70px auto; }
.ln-tv-player-fallback { width:100%; max-height:620px; object-fit:cover; display:block; }
.ln-tv-player-fallback--blank { aspect-ratio:16/9; background:#10252b; }
.ln-tv-no-embed { color:#fff; font-size:13px; text-align:center; padding:14px 20px 22px; }
.ln-tv-modal__details { padding:clamp(18px,2.4vw,30px); }
.ln-tv-modal__details h2 { margin:5px 0 6px; max-width:42ch; font-size:clamp(21px,2.15vw,30px); line-height:1.08; letter-spacing:-.03em; }
.ln-tv-modal__meta { color:var(--ln-grey-500); font-size:11px; margin-bottom:10px; }
.ln-tv-modal__details p { max-width:82ch; margin:0 0 18px; color:var(--ln-grey-700); font-size:13.5px; line-height:1.5; }
.ln-tv-related { border-top:1px solid var(--ln-grey-200); padding-top:16px; margin-top:8px; }
.ln-tv-related__head { color:var(--ln-teal-dark); font-size:14px; font-weight:800; letter-spacing:.015em; text-transform:uppercase; margin-bottom:12px; }
.ln-tv-related__grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.ln-tv-related__item { display:block; width:100%; min-width:0; color:var(--ln-black); text-decoration:none; text-align:left; background:none; border:0; padding:0; cursor:pointer; font:inherit; }
.ln-tv-related__media { display:block; width:100%; aspect-ratio:16/10; overflow:hidden; background:var(--ln-grey-100); margin-bottom:7px; }
.ln-tv-related__media .ln-media,
.ln-tv-related__media img { width:100%; height:100%; object-fit:cover; display:block; }
.ln-tv-related__title { display:block; font-size:12px; line-height:1.18; font-weight:750; letter-spacing:-.015em; }
.ln-tv-related__item:hover .ln-tv-related__title,
.ln-tv-related__item:focus-visible .ln-tv-related__title { color:var(--ln-teal-dark); }
.ln-tv-related__item:focus-visible { outline:2px solid var(--ln-teal-dark); outline-offset:3px; }
body.ln-tv-modal-open { overflow:hidden; }

@media (max-width:980px) {
  .ln-tv-section { margin-inline:0; }
  .ln-tv-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ln-tv-modal__dialog { border-width:8px; }
  .ln-tv-related__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .ln-tv-grid { grid-template-columns:1fr; }
  .ln-tv-modal { padding:10px; }
  .ln-tv-modal__dialog { width:100%; max-height:calc(100vh - 20px); border-width:6px; }
  .ln-tv-player-wrap { min-height:190px; }
  .ln-tv-modal__close { right:8px; top:8px; }
  .ln-tv-related__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .ln-tv-related__title { font-size:11px; }
}


/* v1.4.17 TV modal viewport fit + stronger zoom motion */
@media (min-width: 621px) {
  .ln-tv-modal { padding:14px 18px; }
  .ln-tv-modal__dialog {
    width:min(980px, calc(100vw - 36px));
    max-height:calc(100vh - 28px);
    overflow:hidden;
    border-width:10px;
  }
  .ln-tv-modal__content { display:block; }
  .ln-tv-player-wrap {
    min-height:0;
    height:clamp(280px, 43vh, 470px);
    overflow:hidden;
  }
  .ln-tv-player-wrap iframe,
  .ln-tv-player-wrap video {
    width:100%;
    height:100%;
    aspect-ratio:auto;
    object-fit:contain;
  }
  .ln-tv-player-fallback {
    width:100%;
    height:100%;
    max-height:none;
    object-fit:contain;
  }
  .ln-tv-modal__details { padding:14px 20px 16px; }
  .ln-tv-modal__details h2 {
    margin:3px 0 4px;
    max-width:58ch;
    font-size:clamp(18px,1.65vw,23px);
    line-height:1.08;
  }
  .ln-tv-modal__meta { margin-bottom:6px; }
  .ln-tv-modal__details p {
    margin:0 0 9px;
    font-size:12.5px;
    line-height:1.35;
    display:-webkit-box;
    -webkit-line-clamp:1;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .ln-tv-related { padding-top:10px; margin-top:4px; }
  .ln-tv-related__head { margin-bottom:8px; font-size:12.5px; }
  .ln-tv-related__grid { gap:10px; }
  .ln-tv-related__media { aspect-ratio:16/8.8; margin-bottom:5px; }
  .ln-tv-related__title {
    font-size:10.5px;
    line-height:1.14;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
}

@media (max-height: 760px) and (min-width: 621px) {
  .ln-tv-player-wrap { height:clamp(230px, 38vh, 330px); }
  .ln-tv-modal__details { padding:10px 16px 12px; }
  .ln-tv-modal__details h2 { font-size:18px; }
  .ln-tv-modal__details p { display:none; }
  .ln-tv-related__media { aspect-ratio:16/7.7; }
}


/* ===== v1.4.19 Events + Analysis-to-mailer spacing ===== */
.ln-event h4 a { color:var(--ln-black); text-decoration:none; }
.ln-event h4 a:hover { color:var(--ln-teal-dark); }
.ln-events-empty { font-size:13px; line-height:1.5; color:var(--ln-grey-600); }
.ln-events-page { padding:58px 0 86px; }
.ln-events-page__head { display:flex; align-items:end; gap:18px; margin-bottom:34px; }
.ln-events-page__head h1 { margin:0; font-size:clamp(34px,4vw,54px); line-height:1; letter-spacing:-.045em; }
.ln-events-page__head p { margin:0 0 4px; color:var(--ln-grey-600); }
.ln-events-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.ln-event-card { border-top:3px solid var(--ln-teal); padding-top:16px; }
.ln-event-card__media { display:block; aspect-ratio:16/10; overflow:hidden; background:var(--ln-grey-100); margin-bottom:14px; }
.ln-event-card__media img { width:100%; height:100%; object-fit:cover; }
.ln-event-card h2 { margin:6px 0 7px; font-size:21px; line-height:1.12; letter-spacing:-.025em; }
.ln-event-card h2 a { color:var(--ln-black); text-decoration:none; }
.ln-event-card__meta { color:var(--ln-grey-600); font-size:12px; line-height:1.45; }
.ln-event-card__excerpt { margin-top:12px; color:var(--ln-grey-700); font-size:13px; line-height:1.55; }
.ln-event-single { padding:60px 0 90px; }
.ln-event-single__inner { max-width:1000px; margin:0 auto; }
.ln-event-single h1 { max-width:16ch; margin:8px 0 16px; font-size:clamp(40px,5.2vw,72px); line-height:.98; letter-spacing:-.05em; }
.ln-event-single__meta { display:flex; flex-wrap:wrap; gap:12px 22px; margin-bottom:26px; color:var(--ln-grey-600); font-size:13px; }
.ln-event-single__media { margin:24px 0 32px; }
.ln-event-single__media img { width:100%; height:auto; display:block; }
.ln-event-single__content { max-width:760px; font-size:17px; line-height:1.7; }
@media (max-width:900px) { .ln-events-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .ln-events-grid { grid-template-columns:1fr; } .ln-events-page__head { display:block; } .ln-events-page__head p { margin-top:8px; } }


/* ===== v1.4.20 Event detail routing + presentation ===== */
.ln-event-single__details {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  gap:0;
  margin:22px 0 28px;
  border-top:1px solid var(--ln-grey-200);
  border-bottom:1px solid var(--ln-grey-200);
}
.ln-event-detail { padding:18px 22px 18px 0; margin-right:22px; border-right:1px solid var(--ln-grey-200); }
.ln-event-detail__label { display:block; margin-bottom:5px; color:var(--ln-teal-dark); font-size:10px; line-height:1; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.ln-event-detail strong { display:block; font-size:14px; line-height:1.35; }
.ln-event-detail--action { display:flex; align-items:center; border-right:0; margin-right:0; padding-right:0; }
.ln-event-single__content h2 { margin:0 0 18px; font-size:clamp(24px,2.6vw,34px); line-height:1.05; letter-spacing:-.03em; }
@media (max-width:900px) {
  .ln-event-single__details { grid-template-columns:1fr 1fr; }
  .ln-event-detail { border-right:0; border-bottom:1px solid var(--ln-grey-200); margin-right:0; padding-right:16px; }
  .ln-event-detail--action { border-bottom:0; }
}
@media (max-width:620px) {
  .ln-event-single__details { grid-template-columns:1fr; }
}


/* ===== v1.4.21 compact upcoming-events widget ===== */
.ln-event--with-thumb {
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:10px;
  margin:-10px -10px 9px;
}
.ln-event__thumb {
  display:block;
  width:92px;
  aspect-ratio:4/3;
  overflow:hidden;
  background:var(--ln-grey-100);
  text-decoration:none;
}
.ln-event__thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.ln-event__thumb-placeholder {
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:var(--ln-teal-dark);
  background:#edf8f8;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.ln-event__body { min-width:0; padding-top:1px; }
.ln-event--with-thumb .ln-event__date { font-size:10px; line-height:1.25; }
.ln-event--with-thumb h4 { margin:4px 0 3px; font-size:14px; line-height:1.18; letter-spacing:-.012em; }
.ln-event--with-thumb p { font-size:11px; line-height:1.35; }
@media (max-width:520px) {
  .ln-event--with-thumb { grid-template-columns:78px minmax(0,1fr); gap:11px; }
  .ln-event__thumb { width:78px; }
}


/* ===== v1.4.22 Consistent section rhythm ===== */
/* Match the Analysis → mailing-list gap to the standard franchise-to-franchise spacing. */
.ln-mailing-band--full {
  margin-top: var(--ln-section-space);
  margin-bottom: var(--ln-section-space);
}


/* v1.4.23 — homepage shortcode integration */
.ln-home-shortcode-slot {
  width: 100%;
}
.ln-home-shortcode-slot > :first-child { margin-top: 0; }
.ln-home-shortcode-slot > :last-child { margin-bottom: 0; }


/* ===== v1.4.25 alignment pass ===== */
.ln-tv-section{margin-inline:0!important;}

/* ===== v1.4.26 final alignment pass ===== */
.ln-directory-live-wrap{
  overflow:hidden;
}
/* Inset the TV background so its outer edges line up with the visual content grid. */
.ln-tv-section{
  width:calc(100% - 80px)!important;
  margin-left:40px!important;
  margin-right:40px!important;
}
@media (max-width:980px){
  .ln-tv-section{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* ===== v1.4.27 unified homepage grid alignment ===== */
/* Every major homepage panel should terminate on the same left/right grid lines as .ln-wrap.
   The TV section lives inside .ln-wrap, so its outer box must not use negative margins or content-box overflow. */
.ln-tv-section{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
}
.ln-tv-section > *{
  min-width:0;
}
@media (max-width:980px){
  .ln-tv-section{
    width:100%!important;
    margin-inline:0!important;
  }
}


/* ===== v1.4.28 Safari-safe TV grid alignment ===== */
/* Safari can retain an earlier logical negative margin when physical overrides are mixed.
   Remove that ambiguity completely and let the section occupy exactly its parent .ln-wrap width. */
.ln-tv-section {
  display:block!important;
  box-sizing:border-box!important;
  inline-size:auto!important;
  width:auto!important;
  max-inline-size:none!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline-start:0!important;
  margin-inline-end:0!important;
  overflow:visible;
}
@supports (-webkit-touch-callout:none) {
  .ln-tv-section {
    width:auto!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* ===== v1.4.29 Safari-proof TV panel alignment ===== */
/* Keep the section itself on the normal homepage grid. Put the coloured panel on
   an ordinary child box so Safari cannot expand it via historical section sizing rules. */
.ln-tv-section {
  background: transparent !important;
  padding: 0 !important;
  width: 100% !important;
  inline-size: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-inline: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
.ln-tv-section__inner {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: clamp(28px, 3.5vw, 46px);
  background: #f1f9f9;
  overflow: hidden;
}
@supports (-webkit-touch-callout: none) {
  .ln-tv-section,
  .ln-tv-section__inner {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media (max-width: 620px) {
  .ln-tv-section__inner { padding: 24px 18px; }
}

/* v1.4.30 form return anchors */
.ln-form-anchor,#feature-form,#media-brief{scroll-margin-top:140px}
.ln-form-anchor{display:block;height:0;overflow:hidden}


/* ===== v1.4.33 final staging QA ===== */
/* Header hierarchy */
@media (min-width: 981px){
  .ln-nav__inner{gap:22px!important}
  .ln-sticky-brand,body.ln-scrolled .ln-sticky-brand{margin-right:30px!important}
  .ln-nav .menu > li > a{font-size:12.1px!important}
}

/* Homepage typography and dates */
.ln-card h3,.ln-more-article-card h3,.ln-story-stack h3{line-height:1.27!important}
.ln-card-date{margin-top:7px;color:var(--ln-grey-500);font-size:11px;line-height:1.35}

/* Digital magazine mini module */
.ln-magazine-mini__body{grid-template-columns:136px minmax(0,1fr)!important}
.ln-magazine-mini__body img{width:136px!important}
@media(max-width:980px){.ln-magazine-mini__body{grid-template-columns:112px minmax(0,1fr)!important}.ln-magazine-mini__body img{width:112px!important}}

/* Footer refinements */
.ln-footer__intro{font-size:80%!important;line-height:1.55}
.ln-footer__contact p{line-height:1.55}

/* Genuine social marks: no circles or button chrome. */
.ln-social-icons a,.ln-article-share a,.ln-article-share button,.ln-selection-share button{
  width:32px!important;height:32px!important;border:0!important;border-radius:0!important;background:transparent!important;padding:5px!important;box-shadow:none!important;
}
.ln-social-icons svg,.ln-article-share svg,.ln-selection-share svg{display:block;width:100%;height:100%}
.ln-social-icons--footer a,.ln-article-share a,.ln-article-share button{color:var(--ln-teal-dark)!important}
.ln-social-icons--footer a:hover,.ln-article-share a:hover,.ln-article-share button:hover{color:var(--ln-teal)!important;background:transparent!important}
.ln-social-icons--utility a{color:#fff!important}
.ln-social-icons--utility a:hover{color:#fff!important;opacity:.78}
.ln-selection-share button{color:#fff!important}

/* ===== v1.4.34 final launch QA polish ===== */
/* Thumbnail fallback: quiet watermark-like LN polygon. */
.ln-media__fallback{background:#f7fbfb!important}
.ln-media__fallback>span:not(.ln-media__fallback-mark){display:none!important}
.ln-media__fallback-mark{position:relative;display:grid!important;place-items:center!important;width:78px;height:78px;margin:auto}
.ln-media__fallback-poly{position:absolute;inset:0;background:rgba(7,142,152,.065);clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%)}
.ln-media__fallback-ln{position:relative;z-index:1;color:rgba(7,142,152,.16);font-size:24px;font-weight:900;letter-spacing:.02em}

/* Mega-menu dates. */
.ln-mega-card__date{margin-top:6px;color:var(--ln-grey-500);font-size:10px;line-height:1.3}

/* Footer attribution split. */
.ln-footer__bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.ln-footer__platform-note{font-size:11px;line-height:1.45;text-align:right}
.ln-footer__platform-note a{color:inherit;text-decoration:none;transition:color .18s ease}
.ln-footer__platform-note a:hover{color:var(--ln-teal)}
@media(max-width:760px){.ln-footer__bottom-inner{align-items:flex-start;flex-direction:column;gap:7px}.ln-footer__platform-note{text-align:left}}

/* ===== v1.4.36 magazine cover presentation fix ===== */
/* Let the uploaded cover's own portrait ratio define the visible box.
   This prevents white side gutters caused by fitting a slightly narrower cover into a fixed 3:4 frame. */
.ln-magazine-panel__cover{
  aspect-ratio:auto!important;
  width:100%;
  max-width:360px;
  justify-self:start;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  line-height:0;
}
.ln-magazine-panel__cover img{
  display:block;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  box-shadow:var(--ln-shadow);
}
@media(max-width:980px){
  .ln-magazine-panel__cover{max-width:360px}
}


/* ===== v1.4.37 magazine cover crop fix ===== */
/* The current cover artwork is rendered inside a portrait media frame. Using a
   fixed magazine-like ratio with cover-fit trims any residual side gutters
   without introducing padding or a white wrapper. */
.ln-magazine-panel__cover{
  width:100%!important;
  max-width:360px!important;
  aspect-ratio:0.70!important;
  overflow:hidden!important;
  background:transparent!important;
  box-shadow:var(--ln-shadow)!important;
  line-height:0;
}
.ln-magazine-panel__cover img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
  box-shadow:none!important;
}


/* ===== v1.4.39 parametric corners + Logistics Now TV business player ===== */
:root { --ln-ui-radius: 0px; }
.ln-card,
.ln-media,
.ln-media img,
.ln-lead-card__image,
.ln-more-article-card__thumb,
.ln-event__thumb,
.ln-magazine-mini,
.ln-magazine-mini img,
.ln-tv-business,
.ln-tv-business__screen,
.ln-tv-business__screen iframe,
.ln-tv-business__screen video,
.ln-tv-business__rail-item,
.ln-tv-business__rail-media,
.ln-tv-sidebar-card,
.ln-tv-sidebar-card__media,
.ln-tv-sidebar-card__media img,
.ln-tv-modal__dialog,
.ln-tv-related__media,
.ln-ad img,
.ln-placeholder,
.ln-thumb-placeholder { border-radius: var(--ln-ui-radius) !important; }

.ln-tv-business {
  background: var(--ln-teal-dark);
  color: #fff;
  padding: clamp(30px,4vw,52px);
  overflow: hidden;
}
.ln-tv-business .ln-section__title { color:#fff; margin:0; }
.ln-tv-business__head { display:flex; justify-content:space-between; gap:28px; align-items:flex-end; margin-bottom:26px; }
.ln-tv-business__deck { margin-top:7px; color:rgba(255,255,255,.72); font-size:13px; }
.ln-tv-business__more { color:#fff; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.035em; white-space:nowrap; }
.ln-tv-business__more:hover { color:#bff0e7; }
.ln-tv-business__layout { display:grid; grid-template-columns:minmax(0,2.25fr) minmax(260px,.75fr); gap:28px; align-items:stretch; }
.ln-tv-business__player { min-width:0; }
.ln-tv-business__screen { width:100%; aspect-ratio:16/9; overflow:hidden; background:#061114; }
.ln-tv-business__screen iframe,
.ln-tv-business__screen video,
.ln-tv-business__screen img { width:100%; height:100%; object-fit:cover; display:block; border:0; }
.ln-tv-business__screen audio { width:calc(100% - 48px); margin:22% 24px 0; }
.ln-tv-business__copy { padding-top:16px; }
.ln-tv-business__label { color:#bff0e7; font-size:10px; line-height:1.2; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.ln-tv-business__copy h3 { margin:5px 0 4px; color:#fff; font-size:clamp(21px,2vw,30px); line-height:1.12; letter-spacing:-.025em; }
.ln-tv-business__meta { color:rgba(255,255,255,.62); font-size:11px; }
.ln-tv-business__rail { display:grid; grid-template-rows:repeat(4,minmax(0,1fr)); gap:10px; min-height:0; }
.ln-tv-business__rail-item { width:100%; display:grid; grid-template-columns:112px minmax(0,1fr); gap:12px; align-items:center; border:0; background:rgba(255,255,255,.065); color:#fff; padding:10px; font:inherit; text-align:left; cursor:pointer; transition:background .18s ease; }
.ln-tv-business__rail-item:hover { background:rgba(255,255,255,.13); }
.ln-tv-business__rail-media { position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:#0d3337; }
.ln-tv-business__rail-media .ln-media,
.ln-tv-business__rail-media img { width:100%; height:100%; object-fit:cover; }
.ln-tv-business__rail-media .ln-tv-card__play { width:32px; height:32px; font-size:11px; background:rgba(4,106,114,.9); }
.ln-tv-business__rail-copy { min-width:0; display:block; }
.ln-tv-business__rail-copy strong { display:block; color:#fff; font-size:13px; line-height:1.2; letter-spacing:-.015em; }
.ln-tv-business__rail-copy small { display:block; color:rgba(255,255,255,.58); font-size:10px; margin-top:5px; }

.ln-tv-sidebar-card { background:var(--ln-teal-dark); color:#fff; padding:18px !important; }
.ln-tv-sidebar-card__head { color:#fff; font-size:13px; font-weight:900; letter-spacing:.03em; margin-bottom:13px; }
.ln-tv-sidebar-card__media { position:relative; display:block; width:100%; aspect-ratio:16/9; overflow:hidden; border:0; padding:0; background:#071619; cursor:pointer; }
.ln-tv-sidebar-card__media .ln-media,
.ln-tv-sidebar-card__media img { width:100%; height:100%; object-fit:cover; }
.ln-tv-sidebar-card__play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:46px; height:46px; display:grid; place-items:center; background:rgba(255,255,255,.92); color:var(--ln-teal-dark); border-radius:50%; font-size:15px; }
.ln-tv-sidebar-card__title { display:block; width:100%; border:0; background:none; color:#fff; font:inherit; font-size:15px; font-weight:800; line-height:1.22; text-align:left; padding:12px 0 0; cursor:pointer; }
.ln-tv-sidebar-card__title:hover { color:#bff0e7; }
.ln-tv-sidebar-card__meta { color:rgba(255,255,255,.58); font-size:10px; margin-top:5px; }
.ln-tv-sidebar-card__more { display:block; margin:14px 0 0 auto; border:0; background:none; color:#fff; padding:0; font:inherit; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; cursor:pointer; }
.ln-tv-sidebar-card__more:hover { color:#bff0e7; }

@media (max-width:980px) {
  .ln-tv-business__layout { grid-template-columns:1fr; }
  .ln-tv-business__rail { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; }
}
@media (max-width:620px) {
  .ln-tv-business { padding:24px 18px; }
  .ln-tv-business__head { align-items:flex-start; flex-direction:column; gap:10px; }
  .ln-tv-business__rail { grid-template-columns:1fr; }
  .ln-tv-business__rail-item { grid-template-columns:108px minmax(0,1fr); }
}


/* ===== v1.4.40 LNTV visual system + global corner completion ===== */
/* Remove accent/boundary lines from the top sidebar media modules. */
.ln-magazine-mini,
.ln-tv-sidebar-card { border-top:0 !important; }
.ln-magazine-mini::before,
.ln-magazine-mini::after,
.ln-tv-sidebar-card::before,
.ln-tv-sidebar-card::after { content:none !important; display:none !important; }

/* Sidebar LNTV: media edge should disappear into the teal card, not show a white frame. */
.ln-tv-sidebar-card__media,
.ln-tv-sidebar-card__media .ln-media,
.ln-tv-sidebar-card__media picture,
.ln-tv-sidebar-card__media img {
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:var(--ln-teal-dark) !important;
}

/* Complete the global square/rounded switch across the remaining homepage modules. */
.ln-newsletter,
.ln-mailing-band,
.ln-mailing-band--full,
.ln-subscribe-modal__dialog,
.ln-sidebar__module,
.ln-event,
.ln-event__thumb-placeholder,
.ln-magazine-panel,
.ln-magazine-panel__cover,
.ln-btn,
.ln-form-success,
.ln-tv-business__player,
.ln-tv-business__copy,
.ln-tv-related__item,
.ln-tv-modal__content {
  border-radius:var(--ln-ui-radius) !important;
}

/* Do not round plain structural sidebar modules merely because they are modules. */
.ln-sidebar__module:not(.ln-magazine-mini):not(.ln-tv-sidebar-card) { border-radius:0 !important; }

/* LNTV brand lockup. On light backgrounds LN is teal; inside dark teal it turns white. */
.ln-lntv-brand { display:inline-flex; align-items:baseline; gap:0; font-weight:900; letter-spacing:-.04em; }
.ln-lntv-brand__ln { color:var(--ln-teal); }
.ln-lntv-brand__tv { color:#36d399; }
.ln-tv-business .ln-lntv-brand__ln,
.ln-tv-sidebar-card .ln-lntv-brand__ln,
.ln-tv-modal .ln-lntv-brand__ln { color:#fff; }
.ln-lntv-brand--inline { font-size:inherit; letter-spacing:-.025em; }

/* Main LNTV section: force the full business-TV field to deep teal. */
.ln-tv-section.ln-tv-business,
.ln-tv-business,
.ln-tv-section__inner,
.ln-tv-business__layout,
.ln-tv-business__player,
.ln-tv-business__copy,
.ln-tv-business__rail { background:var(--ln-teal-dark) !important; }
.ln-tv-section.ln-tv-business { color:#fff !important; }
.ln-tv-business__player,
.ln-tv-business__copy,
.ln-tv-business__rail { color:#fff; }

/* LNTV modal: taller in the viewport, teal interior, white typography. */
@media (min-width:621px){
  .ln-tv-modal { padding:7px 18px !important; }
  .ln-tv-modal__dialog {
    width:min(1040px, calc(100vw - 36px)) !important;
    max-height:calc(100vh - 14px) !important;
    background:var(--ln-teal-dark) !important;
    border-color:#d9f1f1 !important;
  }
  .ln-tv-player-wrap { height:clamp(320px,48vh,520px) !important; }
}
.ln-tv-modal__content,
.ln-tv-modal__details { background:var(--ln-teal-dark) !important; color:#fff !important; }
.ln-tv-modal__details h2,
.ln-tv-modal__details p,
.ln-tv-related__title { color:#fff !important; }
.ln-tv-modal__meta { color:rgba(255,255,255,.58) !important; }
.ln-tv-modal__details .ln-kicker,
.ln-tv-related__head { color:#bff0e7 !important; }
.ln-tv-related { border-top-color:rgba(255,255,255,.16) !important; }
.ln-tv-related__item:hover .ln-tv-related__title,
.ln-tv-related__item:focus-visible .ln-tv-related__title { color:#bff0e7 !important; }
.ln-tv-related__media { background:#0d3337 !important; }

/* Give related-video titles more breathing room. */
.ln-tv-related__title { line-height:1.34 !important; }
@media (min-width:621px){ .ln-tv-related__title { line-height:1.30 !important; } }

/* Homepage editorial + video title scale: reduce by about 20%. */
.ln-lead-card h1,
.ln-card h3,
.ln-story-stack h3,
.ln-more-article-card h3,
.ln-tv-business__copy h3,
.ln-tv-sidebar-card__title {
  font-size:80% !important;
}
/* Keep lead story strong while still visibly smaller than before. */
.ln-lead-card h1 { font-size:clamp(29px,3vw,43px) !important; line-height:1.08 !important; }
.ln-card h3,.ln-story-stack h3,.ln-more-article-card h3 { line-height:1.32 !important; }
.ln-tv-business__copy h3 { font-size:clamp(17px,1.6vw,24px) !important; }
.ln-tv-sidebar-card__title { font-size:12px !important; line-height:1.28 !important; }


/* ===== v1.4.42 final editorial density + LNTV naming refinements ===== */
:root { --ln-bright-green:#7fd4d8; }

/* Mega-menu cards use the same editorial title rhythm as homepage card modules. */
.ln-mega-card h3{
  margin-top:9px;
  font-size:17px!important;
  line-height:1.32!important;
  letter-spacing:-.015em;
}
.ln-mega-card__date{font-size:11px!important;line-height:1.35!important}

/* Standard CTA/form buttons stay square regardless of the global card-corner preference. */
.ln-btn,
a.ln-btn,
button.ln-btn,
input[type="submit"].ln-btn,
input[type="button"].ln-btn,
input[type="reset"].ln-btn,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  border-radius:0!important;
}

/* Discovery + More on Logistics Now: remove separator rules and tighten row rhythm by ~5%. */
.ln-story-stack article{
  border-bottom:0!important;
  padding-bottom:19px!important;
  margin-bottom:19px!important;
}
.ln-headline-item,
.ln-more-article-card{
  border-bottom:0!important;
  padding-top:14px!important;
  padding-bottom:14px!important;
  margin-bottom:13px!important;
}

/* Category archives: first three remain feature cards; subsequent stories use the compact
   More-on-LN card language in a three-column grid. */
.ln-archive-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 34px;margin-bottom:46px}
.ln-archive-compact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px;align-items:start}
.ln-archive-compact-card{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  gap:14px;
  align-items:start;
  min-width:0;
  padding:14px 0;
}
.ln-archive-compact-card__thumb{display:block;min-width:0}
.ln-archive-compact-card__thumb .ln-media{width:118px;aspect-ratio:4/3}
.ln-archive-compact-card__body{min-width:0}
.ln-archive-compact-card h3{margin:4px 0 0;font-size:15px;line-height:1.32;letter-spacing:-.015em}
.ln-archive-card .ln-card-date,.ln-archive-compact-card .ln-card-date{display:block}
@media(max-width:1080px){
  .ln-archive-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .ln-archive-feature-grid{grid-template-columns:1fr}
  .ln-archive-compact-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .ln-archive-compact-card{grid-template-columns:96px minmax(0,1fr)}
  .ln-archive-compact-card__thumb .ln-media{width:96px}
}

/* Use the mailing-list accent everywhere a bright LNTV accent is required. */
.ln-lntv-brand__tv{color:var(--ln-bright-green)!important}
.ln-tv-business__more:hover,
.ln-tv-sidebar-card__more:hover,
.ln-tv-related__item:hover .ln-tv-related__title,
.ln-tv-related__item:focus-visible .ln-tv-related__title{
  color:var(--ln-bright-green)!important;
}

/* Keep the LNTV naming hierarchy crisp. */
.ln-tv-business__head .ln-section__title,
.ln-tv-sidebar-card__head{letter-spacing:-.02em}

/* ===== v1.4.42 final polish: editorial consistency, square CTAs, article media corners ===== */
:root { --ln-bright-green:#36d399; }

/* Mega-menu titles now match the compact homepage editorial-card scale and rhythm. */
.ln-mega-card h3{
  margin-top:9px!important;
  font-size:14px!important;
  line-height:1.32!important;
  letter-spacing:-.015em!important;
}
.ln-mega-card__date{font-size:11px!important;line-height:1.35!important;margin-top:5px!important;color:var(--ln-grey-500)!important}

/* Discovery + More on Logistics Now: no horizontal separators at all. */
.ln-discovery .ln-story-stack article,
.ln-discovery .ln-story-stack article:last-child,
.ln-more-top--embedded .ln-headline-item,
.ln-more-top--embedded .ln-more-article-card{
  border:0!important;
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  background-image:none!important;
}
.ln-discovery .ln-story-stack article::before,
.ln-discovery .ln-story-stack article::after,
.ln-more-top--embedded .ln-headline-item::before,
.ln-more-top--embedded .ln-headline-item::after{
  content:none!important;
  display:none!important;
}
.ln-more-top--embedded .ln-section__rule{display:none!important}

/* All conventional site CTAs/forms use square corners. Media/social controls retain their own shapes. */
.ln-btn,
a.ln-btn,
button.ln-btn,
input[type="submit"],
input[type="button"],
input[type="reset"],
.wp-element-button,
.wp-block-button__link,
button[type="submit"],
.ln-tv-business__more,
.ln-tv-sidebar-card__more,
.ln-section__link,
.ln-media-brief-gate button,
.ln-feature-form button,
.ln-advertise-form button{
  border-radius:0!important;
}
/* Purpose-built round media/social controls remain round. */
.ln-tv-card__play,
.ln-tv-sidebar-card__play,
.ln-tv-modal__close,
.ln-subscribe-modal__close,
.ln-social-icons a,
.ln-article-share a,
.ln-article-share button,
.ln-native-share{
  border-radius:50%!important;
}

/* Upcoming Events sidebar: remove the faint bottom/shadow artefact. */
.ln-sidebar__module .ln-event,
.ln-sidebar__module .ln-event--with-thumb{
  box-shadow:none!important;
  border-bottom:0!important;
}
.ln-sidebar__module .ln-event:last-of-type{margin-bottom:8px!important}

/* LNTV naming + locked bright-green accent. */
.ln-tv-sidebar-card__head{
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}
.ln-lntv-brand__tv,
.ln-tv-business__more:hover,
.ln-tv-sidebar-card__more:hover,
.ln-tv-related__item:hover .ln-tv-related__title,
.ln-tv-related__item:focus-visible .ln-tv-related__title{
  color:var(--ln-bright-green)!important;
}

/* Article-page media follows the global square/rounded interface preference. */
.ln-article__hero,
.ln-article__hero img,
.ln-article__content img,
.ln-article__content figure,
.ln-article__content .wp-block-image img,
.ln-article__content .wp-block-gallery img{
  border-radius:var(--ln-ui-radius)!important;
}
.ln-article__hero,
.ln-article__content figure,
.ln-article__content .wp-block-image,
.ln-article__content .wp-block-gallery figure{
  overflow:hidden;
}


/* ===== v1.4.43 LNTV accent + rail alignment refinements ===== */
/* Use the same light accent as the mailing-list system for the TV half of LNTV. */
:root { --ln-bright-green:#7fd4d8; }
.ln-lntv-brand__tv,
.ln-tv-business__more:hover,
.ln-tv-sidebar-card__more:hover,
.ln-tv-related__item:hover .ln-tv-related__title,
.ln-tv-related__item:focus-visible .ln-tv-related__title {
  color:var(--ln-bright-green)!important;
}

/* WATCH LNTV rail: top-align media with the title stack and use a square thumbnail. */
.ln-tv-business__rail-item {
  grid-template-columns:112px minmax(0,1fr)!important;
  align-items:start!important;
}
.ln-tv-business__rail-media {
  width:112px!important;
  height:112px!important;
  aspect-ratio:1/1!important;
  align-self:start!important;
}
.ln-tv-business__rail-copy {
  align-self:start!important;
  padding-top:0!important;
}
.ln-tv-business__rail-copy strong { margin-top:0!important; }
@media (max-width:620px) {
  .ln-tv-business__rail-item { grid-template-columns:96px minmax(0,1fr)!important; }
  .ln-tv-business__rail-media { width:96px!important; height:96px!important; }
}

/* ===== v1.4.44 LNTV rail polish + section rule restoration ===== */
/* Restore the section rule after the More On Logistics Now deck copy. */
.ln-more-top--embedded .ln-section__rule{
  display:block!important;
  height:2px!important;
  background:var(--ln-teal)!important;
  flex:1 1 auto!important;
  opacity:.85!important;
}

/* WATCH LNTV rail tiles: no visible thumbnail frame, no overlay play control,
   even vertical padding, and strict top alignment between image and title stack. */
.ln-tv-business__rail-item{
  align-items:start!important;
  padding:12px!important;
  border:0!important;
  box-shadow:none!important;
}
.ln-tv-business__rail-media,
.ln-tv-business__rail-media .ln-media,
.ln-tv-business__rail-media img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.ln-tv-business__rail-media .ln-tv-card__play{
  display:none!important;
}
.ln-tv-business__rail-copy{
  align-self:start!important;
  padding-top:0!important;
  margin-top:0!important;
}
.ln-tv-business__rail-copy strong{
  margin:0!important;
  padding:0!important;
}

/* The main LNTV container follows the global corner preference too. */
.ln-tv-section.ln-tv-business{
  border-radius:var(--ln-ui-radius)!important;
  overflow:hidden!important;
}


/* ===== v1.4.45 LNTV interaction + modal thumbnail cleanup ===== */
/* The lead WATCH LNTV video opens the same focus modal as the secondary rail. */
.ln-tv-business__screen{position:relative!important;}
.ln-tv-business__screen-trigger{
  position:absolute!important;
  inset:0!important;
  z-index:8!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  cursor:pointer!important;
}
.ln-tv-business__screen-trigger:focus-visible{
  outline:2px solid var(--ln-bright-green)!important;
  outline-offset:-4px!important;
}

/* Secondary rail: keep current container hover and mirror the popup's title/media response. */
.ln-tv-business__rail-media img{
  transition:transform .18s ease, opacity .18s ease!important;
}
.ln-tv-business__rail-copy strong{
  transition:color .18s ease!important;
}
.ln-tv-business__rail-item:hover .ln-tv-business__rail-media img,
.ln-tv-business__rail-item:focus-visible .ln-tv-business__rail-media img{
  transform:scale(1.025)!important;
  opacity:.94!important;
}
.ln-tv-business__rail-item:hover .ln-tv-business__rail-copy strong,
.ln-tv-business__rail-item:focus-visible .ln-tv-business__rail-copy strong{
  color:var(--ln-bright-green)!important;
}

/* Popup related thumbnails should sit directly on the teal surface with no white frame/residue. */
.ln-tv-related__item,
.ln-tv-related__media,
.ln-tv-related__media .ln-media,
.ln-tv-related__media img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.ln-tv-related__item{
  background:transparent!important;
}
.ln-tv-related__media,
.ln-tv-related__media .ln-media{
  background:transparent!important;
}
.ln-tv-related__media img{
  display:block!important;
  margin:0!important;
}


/* ===== v1.4.46 MY LOGISTICS NOW utility entry + account page cleanup ===== */
.ln-account-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.ln-account-menu__trigger {
  white-space: nowrap;
}
.ln-account-menu__dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 10050;
  min-width: 190px;
  padding: 8px 0;
  background: #fff;
  border: 1px solid rgba(15,50,58,.12);
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}
.ln-account-menu:hover .ln-account-menu__dropdown,
.ln-account-menu:focus-within .ln-account-menu__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.ln-utility .ln-account-menu__dropdown a {
  display: block;
  padding: 9px 14px;
  color: #111 !important;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: none;
  background: #fff;
}
.ln-utility .ln-account-menu__dropdown a:hover,
.ln-utility .ln-account-menu__dropdown a:focus {
  color: var(--ln-teal, #0b7b83) !important;
  background: rgba(14,143,151,.07);
}
.ln-article--account > .ln-article__content {
  margin-top: 0;
}
.ln-article--account {
  padding-top: 42px;
}
@media (max-width: 900px) {
  .ln-account-menu__dropdown { right: auto; left: 0; }
}


/* ===== v1.4.47 LNTV trigger/dropdown repair ===== */
/* Main WATCH LNTV video: transparent click layer must sit above the iframe/player. */
.ln-tv-business__screen{
  position:relative!important;
}
.ln-tv-business__screen-trigger{
  position:absolute!important;
  inset:0!important;
  z-index:50!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.ln-tv-business__screen-trigger:focus-visible{
  outline:2px solid var(--ln-bright-green)!important;
  outline-offset:-4px!important;
}

/* Related thumbnails in the LNTV modal: absolutely no pale/white frame at any wrapper level. */
.ln-tv-related__grid,
.ln-tv-related__item,
.ln-tv-related__media,
.ln-tv-related__media .ln-media,
.ln-tv-related__media picture,
.ln-tv-related__media img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.ln-tv-related__item,
.ln-tv-related__media,
.ln-tv-related__media .ln-media,
.ln-tv-related__media picture{
  background:transparent!important;
}
.ln-tv-related__media{
  overflow:hidden!important;
}
.ln-tv-related__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
}

/* MY LOGISTICS NOW is one utility item. Its Login/Create Account links live only in the dropdown. */
.ln-account-menu{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
}
.ln-account-menu__trigger{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  white-space:nowrap!important;
}
.ln-account-menu__dropdown{
  position:absolute!important;
  top:100%!important;
  right:0!important;
  z-index:10050!important;
  min-width:190px!important;
  margin:0!important;
  padding:8px 0!important;
  background:#fff!important;
  border:0!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(6px)!important;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease!important;
}
.ln-account-menu:hover .ln-account-menu__dropdown,
.ln-account-menu:focus-within .ln-account-menu__dropdown{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0)!important;
}
.ln-utility .ln-account-menu__dropdown a{
  display:block!important;
  width:100%!important;
  padding:10px 14px!important;
  color:#111!important;
  background:#fff!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.ln-utility .ln-account-menu__dropdown a:hover,
.ln-utility .ln-account-menu__dropdown a:focus-visible{
  color:var(--ln-teal)!important;
  background:rgba(7,142,152,.07)!important;
}
@media (max-width:900px){
  .ln-account-menu__dropdown{right:auto!important;left:0!important;}
}


/* v1.4.48 category lead-card hierarchy */
.ln-archive-feature-grid .ln-archive-card h3{
  font-size:15px!important;
  line-height:1.32!important;
  letter-spacing:-.015em!important;
  margin-top:10px!important;
}
@media(min-width:900px){
  .ln-archive-feature-grid .ln-archive-card h3{font-size:16px!important;line-height:1.30!important;}
}


/* ===== v1.4.49 My Logistics Now application shell ===== */
body.ln-account-app-page{background:#f7f9f9;}
.ln-account-appbar{background:#fff;border-bottom:1px solid #e4e9e9;position:sticky;top:0;z-index:1000;}
.ln-account-appbar__inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.ln-account-appbar__brand{display:flex;align-items:center;gap:22px;min-width:0;}
.ln-account-appbar__brand img{display:block;max-width:170px;max-height:38px;width:auto;height:auto;}
.ln-account-appbar__brand-text{font-size:12px;font-weight:800;letter-spacing:.08em;color:#0c6f77;text-transform:uppercase;padding-left:22px;border-left:1px solid #dfe6e6;white-space:nowrap;}
.ln-account-appbar__actions{display:flex;align-items:center;gap:18px;font-size:12px;font-weight:700;color:#4c595c;}
.ln-account-appbar__actions a{color:inherit;text-decoration:none;}
.ln-account-appbar__actions a:hover{color:#0c6f77;}
.ln-account-appbar__user{color:#111;font-weight:800;}
body.ln-account-app-page main{padding:0;background:#f7f9f9;}
body.ln-account-app-page .ln-article--account{max-width:none;margin:0;padding:0;background:transparent;}
body.ln-account-app-page .ln-article--account>.ln-article__content{max-width:none;margin:0;padding:0;}
@media(max-width:760px){
  .ln-account-appbar__inner{min-height:64px;gap:12px;}
  .ln-account-appbar__brand-text{display:none;}
  .ln-account-appbar__actions{gap:10px;font-size:11px;}
  .ln-account-appbar__actions .ln-account-appbar__user{display:none;}
}
