/* FIAS reference: 1140px editorial grid, layered masthead, compact image-led news.
   Scoped to the homepage; Sambo Europe colours, content and theme are retained. */
.is-home { --r:0px; --r-lg:0px; --r-sm:0px; font-family:Lato,Arial,sans-serif; }
.is-home :is(h1,h2,h3,.nav__link,.b-title,.tile__title,.mini__title,.card__title) { font-family:Lato,Arial,sans-serif; }
.is-home .ws { width:calc(100% - 40px); max-width:1140px; padding-inline:0; }
.is-home .topbar { background:var(--card); color:var(--ink); border-bottom:1px solid var(--line); }
.is-home .topbar__inner { min-height:40px; height:auto; }
.is-home .topbar__res { display:none; }
.is-home .topbar__right { width:100%; margin:0; }
.is-home .topbar__link,.is-home .lang__item { color:var(--ink); }
.is-home .lang { order:-2; margin-right:20px; }
.is-home .topbar__link { order:-1; margin-right:auto; font-size:12px; }
.is-home .social--top { color:var(--muted); }
.is-home .theme-control select { background:var(--card); color:var(--ink); border-color:var(--line); }
.is-home .mainbar { position:relative; top:auto; box-shadow:none; z-index:30; background:var(--card); }
.is-home .mainbar__inner { display:grid; grid-template-columns:220px minmax(0,1fr) 52px; height:auto; gap:0; }
.is-home .logo { grid-row:1; grid-column:1; margin:0; padding-right:24px; }
.is-home .logo--wordmark .logo__img { width:196px; height:100px; object-fit:contain; }
.home-masthead { grid-row:1; grid-column:2/4; display:grid; grid-template-columns:190px minmax(0,1fr); align-items:center; gap:30px; min-height:180px; }
.home-masthead h1 { font-size:20px; line-height:1.25; letter-spacing:.04em; text-transform:uppercase; font-weight:900; margin:0 0 12px; }
.home-masthead p { font-size:13px; line-height:1.6; color:var(--muted); margin:0; }
.home-masthead__banner { position:relative; min-height:120px; display:flex; align-items:center; gap:22px; padding:24px 30px; background:var(--brand); color:#fff; overflow:hidden; }
.home-masthead__banner::before { content:''; position:absolute; width:100px; height:240px; background:var(--accent); right:40px; transform:skew(-28deg); opacity:.9; }
.home-masthead__banner>svg { width:36px; height:36px; flex:none; }
.home-masthead__banner>span { position:relative; }
.home-masthead__banner strong { font-size:32px; line-height:1.1; font-weight:900; }
.home-masthead__banner small { display:block; margin-top:8px; font-size:13px; }
.home-masthead__arrow { margin-left:auto; font-size:36px; }
.home-masthead__banner:hover { color:#fff; background:#14234b; }
.home-resources { grid-column:1/4; grid-row:2; position:relative; display:flex; min-height:46px; background:var(--brand); }
.home-resources::before,.is-home .nav::before { content:''; position:absolute; inset:0; left:calc((1140px - 100vw)/2); right:calc((1140px - 100vw)/2); background:inherit; z-index:-1; pointer-events:none; }
.home-resources>a { flex:1; display:flex; justify-content:center; align-items:center; gap:18px; padding:14px 18px; color:#fff; font-size:13px; font-weight:800; text-transform:uppercase; border-right:1px solid #ffffff30; }
.home-resources>a:last-child { border-right:0; }
.home-resources>a:hover { background:#14234b; }
.home-resources>a>span { opacity:.65; }
.is-home .nav { position:relative; grid-row:3; grid-column:1/4; margin:0; width:100%; background:#14234b; padding-right:52px; }
.is-home .nav__list { justify-content:space-between; gap:0; }
.is-home .nav__item { flex:1; }
.is-home .nav__link { font-size:12px; font-weight:700; text-transform:uppercase; white-space:nowrap; min-height:52px; padding:18px 8px; border-right:1px solid #ffffff20; color:#fff; border-radius:0; }
.is-home .nav__item:hover>.nav__link,.is-home .nav__item:focus-within>.nav__link { background:var(--brand); color:#fff; }
.is-home .nav__sub { border-radius:0; }
.is-home .search-btn { position:relative; grid-row:3; grid-column:3; width:52px; height:52px; z-index:1; margin:0; color:#fff; background:#14234b; border:0; border-radius:0; }
.is-home .hero { padding:1px 0 0; background:var(--bg); }
.is-home .hero__viewport { border-radius:0; }
.is-home .hero__slide { height:449px; gap:1px; grid-template-columns:minmax(0,750fr) minmax(0,389fr); }
.is-home .hero__slide--single { grid-template-columns:1fr; }
.is-home .hero__col { gap:1px; }
.is-home .hero :is(.tile,.mini) { position:relative; display:block; border-radius:0; background:#14234b; overflow:hidden; }
.is-home .hero .mini { flex:1; min-height:0; }
.is-home .hero :is(.tile__img,.mini__img) { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.is-home .hero :is(.tile,.mini)::after { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,transparent 15%,rgba(8,18,40,.2) 40%,rgba(8,18,40,.9)); }
.is-home .hero .tile--big .tile__body,.is-home .hero .mini__body { position:absolute; z-index:2; bottom:0; left:0; width:100%; padding:24px 30px; background:none; }
.is-home .hero .tile--big .tile__title { color:#fff; font-size:26px; line-height:1.23; letter-spacing:0; text-transform:uppercase; font-weight:900; max-width:640px; }
.is-home .hero .mini__title { color:#fff; font-size:18px; line-height:1.3; text-transform:uppercase; -webkit-line-clamp:6; }
.is-home .hero .mini__body { padding:20px; }
.is-home .hero :is(.tile__meta,.mini__meta) { gap:0; font-size:12px; margin-bottom:8px; }
.is-home .hero :is(.tile__date,.mini__meta>span:not(.label)) { background:#fff; color:#536077; padding:5px 10px; }
.is-home .hero .label { border-radius:0; padding:5px 10px; font-size:11px; }
.is-home .hero__ctrl { right:20px; bottom:16px; }
.is-home .hero__slide:not(:only-child) .tile--big .tile__body { padding-bottom:70px; }
.is-home .home-next .portal-next { display:flex; align-items:center; gap:30px; margin:0; padding:20px 0; border:0; border-bottom:1px solid var(--line); border-radius:0; background:var(--card); }
.is-home .portal-next h2 { font-size:14px; text-transform:uppercase; flex:0 0 180px; margin:0; }
.is-home .portal-next .portal-event { flex:1; border:0; padding:0; }
.is-home .portal-next .portal-event h3 { font-size:18px; margin:4px 0; }
.is-home .portal-next .portal-event p { font-size:12px; }
.is-home .b-head { margin:0 0 26px; padding:0; border:0; min-height:20px; align-items:center; }
.is-home .b-title { font-size:18px; font-weight:900; line-height:1.3; letter-spacing:0; text-transform:uppercase; }
.is-home .b-title::before,.is-home .b-title::after { display:none; }
.is-home .b-head__all { font-size:12px; text-transform:uppercase; color:var(--link); border:0; }
.is-home .home-events { margin-top:0; padding:30px 0; background:var(--card); border-bottom:1px solid var(--line); }
.is-home .home-events__inner { grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:20px; }
.is-home .home-events__main,.is-home .home-events__side { padding:0; box-shadow:none; border:0; border-radius:0; background:none; }
.is-home .home-events__main { padding-right:20px; border-right:1px solid var(--line); }
.is-home .home-events__row { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; }
.is-home .reg-card { border-radius:0; box-shadow:none; background:var(--brand); }
.is-home .reg-card__title { font-size:17px; line-height:1.25; text-transform:uppercase; }
.is-home .reg-card__top,.is-home .reg-card__middle,.is-home .reg-card__bottom { padding:22px; }
.is-home .reg-card__bottom { background:var(--accent); }
.is-home .countdown__digits { font-family:Lato,sans-serif; border-radius:0; }
.is-home .efeed__title { font-size:15px; }
.is-home .home-posts,.is-home .home-gallery,.is-home .fedblock { padding-top:36px; }
.is-home .split { grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:30px; }
.is-home .split--no-feed { grid-template-columns:1fr; }
.is-home .split--no-feed .split__side { display:none; }
.is-home .cards { gap:30px; }
.is-home .card { border:0; border-radius:0; box-shadow:none; background:none; }
.is-home .card__img { border-radius:0; aspect-ratio:1.8; }
.is-home .card__body { padding:16px 0 0; }
.is-home .card__title { font-size:19px; line-height:1.3; font-weight:900; text-transform:uppercase; }
.is-home .card:hover { transform:none; }
.is-home .card__meta { font-size:12px; }
.is-home .home-gallery--dark { margin-top:36px; padding-block:32px; background:#14234b; }
.is-home .home-gallery--dark .b-head__all { color:#fff; }
.is-home .home-gallery>.b-head { margin-inline:auto; }
.is-home .home-gallery .carousel { max-width:1140px; width:calc(100% - 40px); margin-inline:auto; padding:0; gap:30px; }
.is-home .carousel__item { flex-basis:calc((100% - 60px)/3); }
.is-home .gitem,.is-home .gitem__img { border-radius:0; box-shadow:none; }
.is-home .gitem__title { font-size:16px; line-height:1.3; }
.is-home .arrows__btn { border-radius:0; }
.is-home .fedblock__inner { border:0; border-radius:0; background:var(--bg); padding:24px; }
.is-home .flaglist a { border-radius:0; }
.is-home .subscribe { margin:36px 0 0; padding:0; background:var(--brand); }
.is-home .subscribe__inner { background:none; box-shadow:none; border-radius:0; padding:36px 0; display:grid; grid-template-columns:1fr 1fr; gap:8px 30px; align-items:center; overflow:visible; }
.is-home .subscribe__inner::before,.is-home .subscribe__inner::after { content:none; }
.is-home .subscribe__caption { color:#fff; font-size:14px; text-transform:uppercase; }
.is-home .subscribe__caption b { font-size:20px; }
.is-home .subscribe__icon { color:#fff; border-radius:0; width:42px; }
.is-home .subscribe__form { display:flex; flex-direction:row; padding:0; gap:0; border-radius:0; background:none; min-width:0; }
.is-home .subscribe__input { height:44px; background:#fff; color:#14234b; border:1px solid #fff; border-radius:0; }
.is-home .subscribe__btn { height:44px; width:auto; border:1px solid var(--accent); border-radius:0; }
.is-home .subscribe__msg { margin:0; }
.home-suppliers { padding:36px 0 0; }
.home-suppliers__grid { display:flex; flex-wrap:wrap; justify-content:center; gap:18px; padding:10px 0; }
.home-suppliers__grid>a { display:flex; align-items:center; justify-content:center; width:calc((100% - 90px)/6); min-height:90px; padding:12px; background:#fff; }
.home-suppliers__grid img { width:100%; height:60px; object-fit:contain; }
.is-home .footer { margin-top:36px; }
.is-home :focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
@media(max-width:1180px) {
 .home-resources::before,.is-home .nav::before { left:-20px; right:-20px; }
 .is-home .nav__link { padding-inline:10px; font-size:12px; }
 .home-masthead { grid-template-columns:150px minmax(0,1fr); gap:20px; }
 .home-masthead__banner strong { font-size:26px; }
 .is-home .home-events__row { gap:20px; }
}
@media(max-width:1180px) {
 .is-home .mainbar__inner { display:flex; flex-wrap:wrap; gap:0 12px; padding-top:16px; }
 .is-home .logo { margin-right:auto; padding:0; }
 .is-home .logo--wordmark .logo__img { width:180px; height:68px; }
 .is-home .search-btn { background:var(--card); color:var(--ink); width:44px; height:44px; }
 .is-home .home-masthead { order:4; flex:0 0 100%; min-height:0; margin:16px 0; grid-template-columns:1fr 1.5fr; }
 .home-masthead__banner { min-height:88px; padding:16px 20px; gap:14px; }
 .home-masthead__banner strong { font-size:25px; }
 .home-masthead__banner small { font-size:11px; }
 .home-resources { order:5; flex:0 0 100%; min-width:0; }
 .home-resources>a { padding:14px 8px; font-size:11px; gap:7px; }
 .is-home .nav { position:fixed; padding:0; background:var(--card); }
 .is-home .nav::before { display:none; }
 .is-home .nav__link { color:var(--ink); font-size:15px; padding:16px; }
 .is-home .nav__item { flex:none; }
 .is-home .hero__mob-item { height:440px; }
 .is-home .hero__mob .tile--big .tile__body { padding:24px 24px 76px; }
 .is-home .hero .tile--big .tile__title { font-size:26px; }
 .is-home .home-events__inner { grid-template-columns:1fr; }
 .is-home .home-events__main { padding:0 0 24px; border-right:0; border-bottom:1px solid var(--line); }
 .is-home .split { grid-template-columns:1fr; }
 .is-home .carousel__item { flex-basis:calc((100% - 30px)/2); }
 .home-suppliers__grid>a { width:calc((100% - 54px)/4); }
}
@media(max-width:600px) {
 .is-home .ws,.is-home .home-gallery .carousel { width:calc(100% - 32px); }
 .is-home .topbar__right { gap:8px; }
 .is-home .lang { margin-right:0; }
 .is-home .topbar__link { font-size:10px; }
 .is-home .theme-control select { max-width:94px; font-size:11px; padding-inline:4px; }
 .is-home .home-masthead { gap:14px; grid-template-columns:1fr; }
 .home-masthead__identity { display:flex; gap:16px; align-items:center; }
 .home-masthead h1 { font-size:16px; margin:0; flex:none; }
 .home-masthead p { font-size:11px; line-height:1.4; }
 .home-masthead__banner { min-height:76px; }
 .home-resources { display:grid; grid-template-columns:1fr 1fr; }
 .home-resources::before { left:-16px; right:-16px; }
 .home-resources>a { min-height:42px; border-bottom:1px solid #ffffff20; }
 .is-home .hero__mob-item { height:390px; }
 .is-home .hero .tile--big .tile__title { font-size:23px; }
 .is-home .home-next .portal-next { display:block; }
 .is-home .portal-next h2 { margin-bottom:12px; }
 .is-home .portal-next .portal-event { display:block; }
 .is-home .home-events__row { grid-template-columns:1fr; }
 .is-home .b-title { font-size:16px; }
 .is-home .b-head { gap:16px; }
 .is-home .b-head__all { font-size:10px; }
 .is-home .cards { grid-template-columns:1fr; gap:24px; }
 .is-home .carousel__item { flex-basis:85%; }
 .is-home .home-gallery .carousel { gap:16px; }
 .is-home .fedblock__inner { padding:16px; }
 .is-home .subscribe__inner { grid-template-columns:1fr; padding-block:28px; gap:20px; }
 .is-home .subscribe__form { flex-direction:column; gap:8px; }
 .is-home .subscribe__input,.is-home .subscribe__btn { width:100%; flex:auto; }
 .home-suppliers__grid { gap:12px; }
 .home-suppliers__grid>a { width:calc((100% - 24px)/3); padding:8px; min-height:76px; }
 .home-suppliers__grid img { height:48px; }
}

/* Keep image cards square and search legible in both themes. */
html[data-theme="dark"] .is-home .hero :is(.tile,.mini) { border-radius:0; }
.is-home .search-btn:hover,.is-home .search-btn[aria-expanded="true"] { background:var(--brand); color:#fff; }

/* Compact identity and live resource in the utility header. */
.is-home .home-masthead { display:flex; min-height:116px; margin:0; }
.is-home .home-masthead h1 { margin:0; }
.is-home .topbar-live { display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:0 12px; color:var(--link); font-size:12px; font-weight:900; white-space:nowrap; }
.is-home .topbar-live svg { width:12px; height:12px; color:var(--accent); }
.is-home .topbar-live:hover { background:var(--brand-50); }
@media(max-width:1180px) {
 .is-home .home-masthead { min-height:0; padding:12px 0 16px; }
}
@media(max-width:600px) {
 .is-home .topbar__right { flex-wrap:wrap; padding-block:4px; }
 .is-home .topbar-live { order:3; margin-left:auto; min-height:32px; padding-inline:8px; }
 .is-home .home-masthead h1 { font-size:16px; }
}

/* All external resources share the utility row; no duplicate brand caption. */
.is-home .topbar-resources { display:flex; align-items:center; flex-shrink:0; }
.is-home .topbar__btn:not(.topbar__btn--accent) { color:var(--link); background:var(--brand-50); border:1px solid var(--line); }
.is-home .topbar__btn:not(.topbar__btn--accent):hover { color:#fff; background:var(--brand); }
.is-home .mainbar__inner { padding-top:0; }
.is-home .logo { padding-block:12px; }
.is-home .nav,.is-home .search-btn { grid-row:2; }
@media(max-width:1180px) {
 .is-home .mainbar__inner { padding-block:8px; }
 .is-home .logo { padding-block:0; }
 .is-home .topbar__right { flex-wrap:wrap; padding-block:4px; }
}
@media(max-width:600px) {
 .is-home .topbar-resources { order:3; margin-left:0; }
 .is-home .topbar-resources .topbar-live { margin-left:0; }
 .is-home .topbar__btn:not(.topbar__btn--accent) { order:3; width:auto; padding:0 9px; margin-left:auto; }
 .is-home .topbar__btn:not(.topbar__btn--accent) span { display:inline; }
}

/* Full-width editorial news mosaic. */
.is-home .news-mosaic {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: repeat(2, minmax(245px, auto));
  gap: 2px;
  width: 100%;
  margin: 2px 0 0;
  background: var(--bg);
}
.is-home .news-mosaic__card {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-width: 0;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #14234b;
  text-decoration: none;
}
.is-home .news-mosaic__card--lead { grid-row: span 2; }
.is-home .news-mosaic__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease;
  z-index: -2;
}
.is-home .news-mosaic__card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,18,40,.02) 10%, rgba(8,18,40,.25) 40%, rgba(8,18,40,.94) 100%);
  z-index: -1;
}
.is-home .news-mosaic__body { display: block; width: 100%; padding: 24px; }
.is-home .news-mosaic__card--lead .news-mosaic__body { padding: clamp(24px,3vw,48px); }
.is-home .news-mosaic__meta { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin-bottom:12px; font-size:12px; line-height:1.5; }
.is-home .news-mosaic__category { padding:3px 8px; background:#fff; color:#14234b; font-weight:700; }
.is-home .news-mosaic__title { display:block; font-family:Lato,Arial,sans-serif; font-size:clamp(17px,1.3vw,23px); font-weight:900; line-height:1.25; text-transform:uppercase; overflow-wrap:break-word; }
.is-home .news-mosaic__card--lead .news-mosaic__title { font-size:clamp(26px,2.3vw,42px); max-width:850px; }
.is-home .news-mosaic__card:focus-visible { outline:4px solid #fff; outline-offset:-6px; }
@media (hover:hover) { .is-home .news-mosaic__card:hover .news-mosaic__image { transform:scale(1.025); } }
.is-home .news-mosaic--count-1 { grid-template-columns:1fr; grid-template-rows:minmax(400px,auto); }
.is-home .news-mosaic--count-1 .news-mosaic__card--lead { grid-row:auto; }
.is-home .news-mosaic--count-2, .is-home .news-mosaic--count-3 { grid-template-columns:2fr 1fr; }
.is-home .news-mosaic--count-2 .news-mosaic__card { grid-row:span 2; }
.is-home .news-mosaic--count-4 .news-mosaic__card:last-child { grid-column:span 2; }
@media (max-width:1100px) {
  .is-home .news-mosaic { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; }
  .is-home .news-mosaic__card { min-height:240px; }
  .is-home .news-mosaic__card--lead { grid-column:1 / -1; grid-row:auto; min-height:380px; }
  .is-home .news-mosaic--count-2 .news-mosaic__card { grid-row:auto; grid-column:1 / -1; }
}
@media (max-width:600px) {
  .is-home .news-mosaic { grid-template-columns:1fr; }
  .is-home .news-mosaic__card { min-height:225px; grid-column:1 / -1; }
  .is-home .news-mosaic__card--lead { min-height:310px; }
  .is-home .news-mosaic__body, .is-home .news-mosaic__card--lead .news-mosaic__body { padding:20px; }
  .is-home .news-mosaic__title { font-size:19px; }
  .is-home .news-mosaic__card--lead .news-mosaic__title { font-size:25px; }
}
@media (prefers-reduced-motion:reduce) { .is-home .news-mosaic__image { transition:none; } }

.is-home .news-mosaic[hidden] { display:none; }
.is-home .news-mosaic-controls { display:flex; align-items:center; justify-content:flex-end; gap:18px; padding:10px 24px; background:var(--bg); color:var(--text); font-size:13px; font-variant-numeric:tabular-nums; }
.is-home .news-mosaic-controls button { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #273d8d; border-radius:0; background:#273d8d; color:#fff; cursor:pointer; }
.is-home .news-mosaic-controls button:hover { background:#d12936; border-color:#d12936; }
.is-home .news-mosaic-controls button:focus-visible { outline:3px solid #d12936; outline-offset:3px; }
.is-home .news-mosaic-controls svg { width:20px; height:20px; fill:currentColor; }

/* Overlay navigation at the edges of the news mosaic. */
.is-home .news-mosaic-carousel { position:relative; }
.is-home .news-mosaic-controls { position:absolute; inset:0; padding:0; background:none; pointer-events:none; }
.is-home .news-mosaic-controls button { position:absolute; top:50%; transform:translateY(-50%); z-index:3; pointer-events:auto; background:rgba(20,35,75,.85); border:1px solid rgba(255,255,255,.65); box-shadow:0 2px 12px rgba(0,0,0,.2); }
.is-home [data-mosaic-prev] { left:12px; }
.is-home [data-mosaic-next] { right:12px; }
.is-home [data-mosaic-status] { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media (max-width:600px) {
  .is-home [data-mosaic-prev] { left:6px; }
  .is-home [data-mosaic-next] { right:6px; }
}

/* A continuous ribbon: the centre aligns with the page, neighbours peek in. */
.is-home .news-mosaic-carousel { overflow:hidden; }
.is-home .news-mosaic-track { display:flex; gap:2px; align-items:stretch; }
.is-home .news-mosaic-track .news-mosaic { flex:0 0 min(1140px, calc(100% - 120px)); width:min(1140px, calc(100% - 120px)); margin:2px 0 0; grid-template-rows:repeat(2,minmax(245px,auto)); }
.is-home .news-mosaic-track .news-mosaic__title { font-size:18px; }
.is-home .news-mosaic-track .news-mosaic__card--lead .news-mosaic__title { font-size:30px; }
.is-home .news-mosaic-track .news-mosaic__body { padding:20px; }
.is-home .news-mosaic-track .news-mosaic__card--lead .news-mosaic__body { padding:30px; }
@media (max-width:1100px) {
 .is-home .news-mosaic-track .news-mosaic { grid-template-rows:auto; }
}
@media (max-width:600px) {
 .is-home .news-mosaic-track .news-mosaic { flex-basis:calc(100% - 40px); width:calc(100% - 40px); }
 .is-home .news-mosaic-track .news-mosaic__card--lead .news-mosaic__body { padding:20px; }
 .is-home .news-mosaic-track .news-mosaic__card--lead .news-mosaic__title { font-size:25px; }
}

/* FIAS composition: one lead story and two stacked stories. */
.is-home .news-mosaic-track .news-mosaic { grid-template-columns:2fr 1fr; }
.is-home .news-mosaic-track .news-mosaic__card--lead { grid-row:span 2; }
.is-home .news-mosaic-track .news-mosaic--count-1 { grid-template-columns:1fr; }
@media (max-width:600px) {
 .is-home .news-mosaic-track .news-mosaic { grid-template-columns:1fr; }
 .is-home .news-mosaic-track .news-mosaic__card--lead { grid-row:auto; }
}
@media (min-width:601px) and (max-width:1100px) {
 .is-home .news-mosaic-track .news-mosaic { grid-template-rows:repeat(2,minmax(245px,auto)); }
 .is-home .news-mosaic-track .news-mosaic__card--lead { grid-column:auto; }
}

/* Continuous background below the ribbon, content aligned to the page. */
.is-home .home-next.ws { width:100%; max-width:none; background:var(--card); border-bottom:1px solid var(--line); }
.is-home .home-next .portal-next { width:calc(100% - 40px); max-width:1140px; margin-inline:auto; border-bottom:0; }
.is-home .home-next:empty { display:none; }

/* White-backed supplier artwork becomes a light monochrome mark on dark cards. */
html[data-theme="dark"] .home-suppliers__grid>a,
html[data-theme="dark"] .supplier__logo:has(img) { background:var(--card); isolation:isolate; }
html[data-theme="dark"] .home-suppliers__grid img,
html[data-theme="dark"] .supplier__logo img { filter:grayscale(1) invert(1); mix-blend-mode:screen; }
