/* Homepage layout refinements: compact sponsor unit, mirrored editorial sections,
   larger secondary cards and removal of the redundant final recommendation block. */

/* Sponsored carousel: keep the width, reduce vertical weight by roughly 25%. */
.spon-carousel-wrap{
  min-height:88px!important;
  margin:4px auto 20px!important;
}
.spon-slide{
  grid-template-columns:200px minmax(0,1fr)!important;
  min-height:112px!important;
  max-height:128px!important;
}
.spon-copy{
  gap:4px!important;
  padding:10px 16px!important;
}
.spon-title{
  font-size:15.5px!important;
  line-height:1.2!important;
}
.spon-text{
  font-size:11.5px!important;
  line-height:1.34!important;
  -webkit-line-clamp:1!important;
}
.spon-cta{
  margin-top:0!important;
  font-size:12px!important;
}
.spon-dots{bottom:7px!important}

/* Market Focus: turn the lead card into a true banner with copy on the image. */
.home-mosaic>.home-card-primary{
  position:relative;
  min-height:430px;
  background:#111820;
}
.home-mosaic>.home-card-primary>.home-card-media{
  position:absolute;
  inset:0;
  height:100%;
  aspect-ratio:auto!important;
}
.home-mosaic>.home-card-primary>.home-card-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(17,24,32,.06) 0%,rgba(17,24,32,.28) 42%,rgba(17,24,32,.94) 100%);
}
.home-mosaic>.home-card-primary>.home-card-copy{
  position:relative;
  z-index:2;
  align-self:end;
  padding:26px;
  color:#fff;
}
.home-mosaic>.home-card-primary .home-card-kicker{color:rgba(255,255,255,.74)!important}
.home-mosaic>.home-card-primary .home-card-title{
  color:#fff!important;
  font-size:34px;
  text-shadow:0 2px 18px rgba(0,0,0,.42);
}
.home-mosaic>.home-card-primary .home-card-desc{color:rgba(255,255,255,.86)!important}
.home-mosaic>.home-card-primary:hover .home-card-title{color:#fff!important}

/* Shorts News: mirror Market Focus on desktop.
   Lead banner on the right, two small cards and one medium card on the left. */
@media(min-width:1101px){
  .home-shorts-strip{
    grid-template-columns:minmax(0,.475fr) minmax(0,.475fr) minmax(0,1.05fr)!important;
    grid-template-rows:repeat(2,minmax(0,1fr));
    align-items:stretch;
  }
  .home-shorts-strip>.home-short-tile:first-child{
    position:relative;
    grid-column:3;
    grid-row:1/3;
    grid-template-rows:1fr!important;
    min-height:430px;
    background:#111820;
  }
  .home-shorts-strip>.home-short-tile:first-child>img,
  .home-shorts-strip>.home-short-tile:first-child>.home-short-tile-ph{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    aspect-ratio:auto!important;
    object-fit:cover;
  }
  .home-shorts-strip>.home-short-tile:first-child::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(17,24,32,.06) 0%,rgba(17,24,32,.30) 44%,rgba(17,24,32,.95) 100%);
  }
  .home-shorts-strip>.home-short-tile:first-child>.home-short-tile-copy{
    position:relative;
    z-index:2;
    grid-row:1;
    align-self:end;
    padding:26px;
    background:transparent;
  }
  .home-shorts-strip>.home-short-tile:first-child strong{
    color:#fff!important;
    font-size:34px;
    line-height:1.1;
    text-shadow:0 2px 18px rgba(0,0,0,.42);
  }
  .home-shorts-strip>.home-short-tile:first-child em{color:rgba(255,255,255,.74)!important}
  .home-shorts-strip>.home-short-tile:nth-child(2){grid-column:1;grid-row:1}
  .home-shorts-strip>.home-short-tile:nth-child(3){grid-column:2;grid-row:1}
  .home-shorts-strip>.home-short-tile:nth-child(4){
    grid-column:1/3;
    grid-row:2;
    grid-template-columns:minmax(170px,.85fr) minmax(0,1.15fr);
    grid-template-rows:1fr;
  }
  .home-shorts-strip>.home-short-tile:nth-child(4)>img,
  .home-shorts-strip>.home-short-tile:nth-child(4)>.home-short-tile-ph{
    width:100%;
    height:100%;
    min-height:170px;
    aspect-ratio:auto;
    object-fit:cover;
  }
  .home-shorts-strip>.home-short-tile:nth-child(4)>.home-short-tile-copy{align-content:center}
}

/* Security & AI, Institutional Money and Payments & Stablecoins:
   secondary items now read as medium editorial cards rather than tiny rows. */
.home-feature-list{
  gap:16px!important;
  align-content:start;
}
.home-feature-list>.home-topic-item{
  display:grid;
  grid-template-columns:1fr!important;
  gap:0!important;
  padding:0!important;
  border:1px solid var(--border)!important;
  border-radius:8px;
  overflow:hidden;
  background:var(--surf);
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.home-feature-list>.home-topic-item:hover{
  border-color:rgba(232,145,0,.48)!important;
  box-shadow:0 14px 30px rgba(17,24,32,.09);
  transform:translateY(-1px);
}
.dark .home-feature-list>.home-topic-item:hover{box-shadow:0 16px 34px rgba(0,0,0,.28)}
.home-feature-list>.home-topic-item>img,
.home-feature-list>.home-topic-item>.home-topic-ph{
  display:block;
  width:100%!important;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:0!important;
}
.home-feature-list>.home-topic-item>span{display:grid;gap:7px;padding:13px 14px}
.home-feature-list>.home-topic-item strong{
  font-family:var(--display);
  font-size:18px;
  line-height:1.18;
  font-weight:400;
  letter-spacing:0;
}
.home-feature-list>.home-topic-item em{margin-top:0}

/* The expanded homepage already supplies enough discovery paths. */
.latest-articles-section#latest{display:none!important}

@media(max-width:1100px){
  .home-mosaic>.home-card-primary{min-height:390px}
  .home-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:820px){
  .spon-slide{
    grid-template-columns:116px minmax(0,1fr)!important;
    min-height:98px!important;
    max-height:112px!important;
  }
  .spon-copy{padding:8px 12px!important}
  .spon-title{font-size:14px!important}
  .home-mosaic>.home-card-primary{min-height:350px}
  .home-mosaic>.home-card-primary>.home-card-copy{padding:22px}
  .home-mosaic>.home-card-primary .home-card-title{font-size:29px}
}

@media(max-width:560px){
  .spon-carousel-wrap{min-height:78px!important;margin-bottom:16px!important}
  .spon-slide{
    grid-template-columns:84px minmax(0,1fr)!important;
    min-height:90px!important;
    max-height:100px!important;
  }
  .spon-copy{padding:8px 10px!important;gap:3px!important}
  .spon-title{font-size:13px!important;line-height:1.18!important}
  .spon-cat,.spon-text{display:none!important}
  .spon-badge{font-size:9px!important;padding:2px 7px!important}
  .spon-cta{font-size:11px!important}
  .home-mosaic>.home-card-primary{min-height:310px}
  .home-mosaic>.home-card-primary>.home-card-copy{padding:18px}
  .home-mosaic>.home-card-primary .home-card-title{font-size:24px}
  .home-mosaic>.home-card-primary .home-card-desc{font-size:13px}
  .home-shorts-strip{grid-template-columns:1fr!important}
  .home-feature-list{grid-template-columns:1fr!important}
  .home-feature-list>.home-topic-item strong{font-size:20px}
}

/* Homepage flow and featured media consistency. */
#home-spon-carousel{
  position:relative!important;
  z-index:auto!important;
  clear:both;
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  margin:28px 0 38px!important;
}
#home-dynamic-sections{
  position:relative;
  z-index:auto;
  display:flow-root;
  clear:both;
}
#home-dynamic-sections>.cb-popular-section{
  width:100%;
  box-sizing:border-box;
  margin:0 0 42px!important;
}
#home-dynamic-sections>.section-block,
#home-dynamic-sections>.home-news-pack{
  position:relative;
  clear:both;
}

/* Keep every desktop lead card at the same visual height. */
@media(min-width:1101px){
  .home-mosaic>.home-card-primary,
  .home-feature-main>.home-card,
  .home-shorts-strip>.home-short-tile:first-child,
  .home-wide-strip>*:first-child{
    box-sizing:border-box;
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
    overflow:hidden!important;
  }

  /* Show the complete editorial artwork instead of zooming and cropping it. */
  .home-mosaic>.home-card-primary>.home-card-media,
  .home-feature-main>.home-card>.home-card-media,
  .home-wide-strip>*:first-child>.home-card-media{
    background:#111820;
    overflow:hidden;
  }
  .home-mosaic>.home-card-primary>.home-card-media img,
  .home-feature-main>.home-card>.home-card-media img,
  .home-wide-strip>*:first-child>.home-card-media img,
  .home-shorts-strip>.home-short-tile:first-child>img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#111820;
    transform:none!important;
  }
}

@media(max-width:1100px){
  #home-spon-carousel{margin:22px 0 32px!important}
  #home-dynamic-sections>.cb-popular-section{margin-bottom:34px!important}
  .home-mosaic>.home-card-primary>.home-card-media img,
  .home-feature-main>.home-card>.home-card-media img,
  .home-wide-strip>*:first-child>.home-card-media img,
  .home-shorts-strip>.home-short-tile:first-child>img{
    object-fit:contain!important;
    object-position:center!important;
    background:#111820;
  }
}

@media(max-width:560px){
  #home-spon-carousel{margin:18px 0 26px!important}
  #home-dynamic-sections>.cb-popular-section{margin-bottom:28px!important}
}
