
/*
 * Stadionews Frontend 0.6.1
 * CLEAN CSS BASELINE
 *
 * Visual metrics derived from the active CoverNews Pro stylesheet,
 * but this file is independent from CoverNews layout CSS.
 */

/* ---------- TOKENS / RESET ---------- */
:root{
  --sn-orange:#ff7900;
  --sn-navy:#06052f;
  --sn-red:#bb1919;
  --sn-bg:#f4f4f4;
  --sn-panel:#fff;
  --sn-text:#3a3a3a;
  --sn-title:#000;
  --sn-muted:#777;
  --sn-rule:#dedede;
  --sn-footer:#232428;
  --sn-container:1215px;
}
*{box-sizing:border-box}
html{font-family:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen-Sans,Ubuntu,Cantarell,'Helvetica Neue',sans-serif}
body{
  margin:0;
  background:var(--sn-bg);
  color:var(--sn-text);
  font-family:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen-Sans,Ubuntu,Cantarell,'Helvetica Neue',sans-serif;
  font-size:16px;
  line-height:1.6;
}
h1,h2,h3,h4,h5,h6,
.snfd-nav,.snfd-ticker,.snfd-section-titlebar,
.snfd-widget-area .widget-title,
.snfd-mini-meta,.snfd-meta{
  font-family:'Source Sans Pro',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen-Sans,Ubuntu,Cantarell,'Helvetica Neue',sans-serif;
}
h1,h2,h3,h4,h5,h6{color:#000;font-weight:700}
a{color:inherit;text-decoration:none}
a:hover{color:var(--red)}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
.snfd-shell{
  width:100%;
  max-width:var(--sn-container);
  margin:0 auto;
  padding-left:15px;
  padding-right:15px;
}

/* ---------- DEV ---------- */
.snfd-devbar{
  height:18px;background:#111;color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:8px;letter-spacing:.06em
}

/* ---------- HEADER ---------- */
.snfd-topline{background:var(--sn-orange);color:#111}
.snfd-topline-inner{
  height:31px;display:flex;align-items:center;justify-content:space-between;
  font-size:11px
}
.snfd-toplinks{display:flex;gap:18px}
.snfd-logo-row{
  min-height:165px;background:#fff;
  display:flex;align-items:center;justify-content:center
}
.snfd-logo-link .custom-logo{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.snfd-brand-text{font-size:65px;font-weight:900;letter-spacing:-.06em;color:var(--sn-navy)}
.snfd-brand-text span{color:var(--sn-orange);font-weight:400}
.snfd-nav-wrap{background:var(--sn-navy);color:#fff}
.snfd-nav ul{
  min-height:46px;margin:0;padding:0;list-style:none;
  display:flex;align-items:center;gap:24px;
  font-size:13px;font-weight:700
}
.snfd-nav a{color:#fff}
.snfd-nav a:hover{color:var(--sn-orange)}

/* ---------- TOP GAP + TICKER ---------- */
.snfd-hero-spacer{height:220px}
.snfd-ticker{
  height:42px;background:#fff;display:flex;overflow:hidden;
  margin-bottom:30px;font-size:12px
}
.snfd-ticker-label{
  flex:0 0 78px;background:var(--sn-navy);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:700
}
.snfd-ticker-label:before{content:"●";font-size:7px;margin-right:7px}
.snfd-ticker-window{flex:1;min-width:0;overflow:hidden}
.snfd-ticker-track{
  display:flex;width:max-content;height:42px;
  animation:snfdTicker 42s linear infinite;will-change:transform
}
.snfd-ticker:hover .snfd-ticker-track{animation-play-state:paused}
.snfd-ticker-set{display:flex;height:42px}
.snfd-ticker-set a{
  width:310px;height:42px;padding:0 14px;
  display:flex;align-items:center;
  border-right:1px solid #e8e8e8;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  color:#222;font-weight:400
}
@keyframes snfdTicker{to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.snfd-ticker-track{animation:none}}

/* ---------- HERO ---------- */
.snfd-hero-layout{
  display:grid;grid-template-columns:70% 30%;
  gap:15px;align-items:stretch
}
.snfd-hero-media,.snfd-side-media{
  display:block;position:relative;overflow:hidden;background:#ddd
}
.snfd-hero-media{height:480px}
.snfd-side-media{height:232.5px}
.snfd-hero-media img,.snfd-side-media img{width:100%;height:100%;object-fit:cover}
.snfd-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 38%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.9) 100%)
}
.snfd-hero-copy{
  position:absolute;left:15px;right:15px;bottom:14px;z-index:2;color:#fff
}
.snfd-hero-copy h1{
  margin:0 0 6px;color:#fff;font-size:34px;line-height:1.08;
  text-shadow:0 1px 3px rgba(0,0,0,.9)
}
.snfd-meta{font-size:11px;color:#eee}
.snfd-hero-side{display:grid;grid-template-rows:1fr 1fr;gap:15px}
.snfd-side-card{position:relative;min-width:0}
.snfd-side-copy{
  position:absolute;left:12px;right:12px;bottom:11px;z-index:2
}
.snfd-side-copy h2{
  margin:0;color:#fff;font-size:18px;line-height:1.15;
  text-shadow:0 1px 3px rgba(0,0,0,.9)
}
/* 0.7.24 accessibility: stable contrast for desktop side-card overlays. */
.snfd-side-media:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,0) 32%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.82) 100%)}
.snfd-side-copy .snfd-mini-meta{color:#fff}

/* ---------- TEN UNDER ---------- */
.snfd-under-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  gap:15px;margin-top:15px
}
.snfd-under-card{
  background:#fff;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-under-card img{width:100%;height:155px;object-fit:cover}
.snfd-under-card h3{
  margin:7px 8px 4px;font-size:15px;line-height:1.25;font-weight:700
}
.snfd-mini-meta{
  margin:0 8px 8px;color:#666;font-size:10px;line-height:1.25
}

/* ---------- MAIN 70/30 ---------- */
.snfd-main-grid{
  display:grid;grid-template-columns:70% 30%;
  gap:15px;align-items:start;margin-top:50px
}
.snfd-main-col,.snfd-sidebar{min-width:0}
.snfd-sidebar{padding-left:15px}
.snfd-section{margin:0 0 42px}

/* CoverNews heading grammar */
.snfd-section-titlebar{
  margin:0 0 13px;border:0
}
.snfd-section-titlebar h2{
  position:relative;display:inline-block;
  margin:5px 0 13px;padding:5px 0 10px;
  font-size:20px;line-height:1.2;font-weight:700
}
.snfd-section-titlebar h2:after{
  content:"";position:absolute;left:0;bottom:0;
  width:60px;height:3px;background:var(--sn-red)
}

/* ---------- CALCIOMERCATO ---------- */
.snfd-market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.snfd-market-card{
  background:#fff;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-market-card img{width:100%;height:220px;object-fit:cover}
.snfd-market-card h3{
  margin:8px 9px 5px;font-size:17px;line-height:1.3;font-weight:700
}

/* ---------- NEWS ---------- */
.snfd-news-row{
  display:grid;grid-template-columns:50% 50%;
  min-height:220px;background:#fff;
  margin-bottom:15px;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-news-image{overflow:hidden}
.snfd-news-image img{width:100%;height:100%;object-fit:cover}
.snfd-news-copy{padding:15px}
.snfd-news-copy h3{
  margin:5px 0;font-size:17px;line-height:1.4;font-weight:700;color:#000
}
.snfd-news-copy .snfd-mini-meta{margin:0 0 7px}
.snfd-news-copy p{margin:8px 0 0;font-size:13px;line-height:1.5;color:#3a3a3a}

/* ---------- SERIES A/B/C/D ---------- */
.snfd-series-pair{
  display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:45px 0
}
.snfd-series-lead{
  margin-bottom:15px;background:#fff;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-series-lead a{display:block;position:relative;height:290px;overflow:hidden}
.snfd-series-lead img{width:100%;height:100%;object-fit:cover}
.snfd-series-lead h3{
  position:absolute;left:15px;right:15px;bottom:13px;z-index:2;
  margin:0;color:#fff;font-size:20px;line-height:1.2;
  text-shadow:0 1px 3px rgba(0,0,0,.9)
}
.snfd-series-small{
  background:#fff;margin-bottom:15px;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-series-small a{
  display:grid;grid-template-columns:35% 65%;align-items:center;min-height:96px
}
.snfd-series-thumb{height:96px}
.snfd-series-thumb img{width:100%;height:96px;object-fit:cover}
.snfd-series-small h4{
  margin:5px 15px 3px;font-size:15px;line-height:1.3;font-weight:700;color:#000
}
.snfd-series-small .snfd-mini-meta{margin-left:15px}

/* ---------- CUSTOM MONASTRA ---------- */
.snfd-sidebar-block{margin-bottom:24px}
.snfd-sidebar-feature{
  background:#fff;box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-sidebar-feature img{width:100%;height:auto}
.snfd-sidebar-feature h3{
  margin:0;padding:8px 0;font-size:15px;line-height:1.3;font-weight:700
}

/* ---------- COVERNEWS WIDGET COMPATIBILITY ---------- */
.snfd-widget-area{width:100%}
.snfd-widget-area .widget{
  margin:0 0 24px;padding:0;background:transparent
}
.snfd-widget-area .widget-title{
  margin:0;font-size:20px;font-weight:700;color:#000
}
.snfd-widget-area .widget-title span,
.snfd-widget-area .em-title-subtitle-wrap .widget-title{
  position:relative;display:inline-block;
  margin:5px 0 13px;padding:5px 0 10px;
  font-size:20px;font-weight:700
}
.snfd-widget-area .widget-title span:after,
.snfd-widget-area .em-title-subtitle-wrap .widget-title:after{
  content:"";position:absolute;left:0;bottom:0;
  width:60px;height:3px;background:var(--sn-red)
}
.snfd-widget-area .em-title-subtitle-wrap{margin:0;padding:0;background:transparent}
.snfd-widget-area .base-border{margin-bottom:15px}
.snfd-widget-area .carousel-image{
  min-height:80px;margin-bottom:15px;background:#fff;
  box-shadow:0 1px 2px rgb(0 0 0 / 5%)
}
.snfd-widget-area .article-title{
  margin:5px 0;line-height:1.4;font-size:17px;font-weight:700;color:#000
}
.snfd-widget-area .grid-item-metadata{font-size:11px;color:#777}

/* Core Slick layout only */
.snfd-widget-area .slick-slider{position:relative;display:block;user-select:none;touch-action:pan-y}
.snfd-widget-area .slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}
.snfd-widget-area .slick-track{
  position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto
}
.snfd-widget-area .slick-track:before,.snfd-widget-area .slick-track:after{display:table;content:""}
.snfd-widget-area .slick-track:after{clear:both}
.snfd-widget-area .slick-slide{display:none;float:left;height:100%;min-height:1px}
.snfd-widget-area .slick-initialized .slick-slide{display:block}
.snfd-widget-area .slick-vertical .slick-slide{display:block;float:none;height:auto;border:0}

/* CoverNews real controls */
.snfd-widget-area .slide-icon{display:inline-block;height:20px;width:20px;position:relative}
.snfd-widget-area .slide-icon-1{
  position:absolute;z-index:10;display:block;
  width:38px;height:32px;line-height:32px;
  top:0;margin-top:-37px;padding:0;
  color:#111;background:#fff;text-align:center;cursor:pointer
}
.snfd-widget-area .slide-prev{right:40px}
.snfd-widget-area .slide-next{right:0}
.snfd-widget-area .slide-icon-1:before{
  position:absolute;inset:0;display:block;
  font:400 27px/32px Arial,sans-serif;color:#111;background:#fff;text-align:center
}
.snfd-widget-area .slide-prev:before{content:"‹"}
.snfd-widget-area .slide-next:before{content:"›"}
.snfd-widget-area button.slick-prev,.snfd-widget-area button.slick-next{display:none!important}

/* Large sidebar carousel cards */
.snfd-widget-area .featured-article-wrapper{position:relative}
.snfd-widget-area .featured-article-wrapper figcaption{
  position:absolute;left:0;right:0;bottom:0;z-index:2;padding:15px
}
.snfd-widget-area .featured-article-wrapper figcaption .article-title{
  font-size:20px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9)
}
.snfd-widget-area .data-bg-featured,.snfd-widget-area .data-widget-slide{
  position:relative;height:300px;background-size:cover;background-position:center;overflow:hidden
}
.snfd-widget-area .data-bg-featured:after,.snfd-widget-area .data-widget-slide:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 40%,rgba(0,0,0,.82) 100%);
  pointer-events:none
}
.snfd-widget-area .featured-article-wrapper figcaption{z-index:3}
.snfd-widget-area .featured-article-wrapper figcaption a{color:#fff}

/* Pagelle / vertical trending: exact CoverNews geometry */
.snfd-widget-area .banner-trending-posts-wrapper{position:relative}
.snfd-widget-area .banner-trending-posts-wrapper .no-gutter-col{
  display:flex;align-items:center
}
.snfd-widget-area .banner-trending-posts-wrapper figure.featured-article{
  width:35%;height:auto;position:relative;margin:0;max-width:165px
}
.snfd-widget-area .banner-trending-posts-wrapper figure .data-bg-featured{
  height:96px
}
.snfd-widget-area .banner-trending-posts-wrapper figcaption{
  width:66.66%;padding:0 15px;max-height:95px;overflow:hidden
}
.snfd-widget-area .trending-posts-vertical-carousel .carousel-image{
  margin-bottom:15px;background:#fff
}
.snfd-widget-area .trending-posts-vertical-carousel h3.article-title{
  margin:5px 0;font-size:15px;line-height:1.4;color:#000
}
.snfd-widget-area span.trending-no{
  position:absolute;left:0;bottom:0;
  background:var(--sn-navy);padding:0 8px;
  color:#fff;font-size:14px;font-weight:700
}
.snfd-widget-area .trending-posts-vertical-carousel .figure-categories{display:none}

/* Images / embeds in sidebar */
.snfd-widget-area img,.snfd-widget-area iframe{max-width:100%}

/* ---------- FOOTER ---------- */
.snfd-footer{
  margin-top:50px;
  background:#1f2125;
  color:#fff;
}
.snfd-footer,
.snfd-footer a{
  color:#fff;
}
.snfd-primary-footer{
  padding-top:60px;
  padding-bottom:60px;
}
.snfd-footer-widgets{
  display:grid;
  gap:30px;
  align-items:start;
}
.snfd-footer-cols-1{grid-template-columns:1fr}
.snfd-footer-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.snfd-footer-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.snfd-footer-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.snfd-footer-widget-area,
.snfd-footer-widget-area .widget,
.snfd-footer-widget-area .widget-area{
  min-width:0;
}
.snfd-footer .widget{
  margin:0 0 1.5em;
}
.snfd-footer .widget:last-child{
  margin-bottom:0;
}
.snfd-footer .widget-title{
  margin:0 0 10px;
  color:#fff;
  font-size:20px;
  line-height:1.2;
  font-weight:700;
}
.snfd-footer h1,
.snfd-footer h2,
.snfd-footer h3,
.snfd-footer h4,
.snfd-footer h5,
.snfd-footer h6{
  color:#fff;
}
.snfd-footer .widget ul{
  margin:0;
  padding:0;
  list-style:none;
}
.snfd-footer .widget ul li{
  margin:0 0 12px;
}
.snfd-footer .widget img,
.snfd-footer .widget iframe{
  max-width:100%;
  height:auto;
}

/* CoverNews footer list/card geometry */
.snfd-footer .widget .row,
.snfd-footer .widget .row-sm,
.snfd-footer .widget .align-items-center{
  display:flex;
  align-items:center;
  margin-left:0;
  margin-right:0;
}
.snfd-footer .widget .col-image,
.snfd-footer .covernews_single_col_categorised_posts .col-image{
  width:40%;
  margin:0;
  padding:0;
}
.snfd-footer .widget .col-details,
.snfd-footer .covernews_single_col_categorised_posts .col-details{
  width:60%;
  padding:15px;
  color:#959595;
}
.snfd-footer .widget .col-details a,
.snfd-footer .widget figcaption a{
  color:#fff;
}
.snfd-footer .widget .article-title,
.snfd-footer .widget h3.article-title{
  margin:5px 0;
  color:#fff;
  font-size:15px;
  line-height:1.35;
  font-weight:700;
}
.snfd-footer .widget .grid-item-metadata,
.snfd-footer .widget .entry-meta{
  color:#959595;
  font-size:11px;
}
.snfd-footer .widget .second-wiz,
.snfd-footer .covernews_single_col_categorised_posts .col-details,
.snfd-footer .covernews_single_col_categorised_posts .col-image,
.snfd-footer .widget .full,
.snfd-footer .widget .full-plus-list,
.snfd-footer .widget .list{
  width:100%;
}
.snfd-footer .tagcloud a{
  display:inline-block;
  margin-bottom:4px;
  padding:4px 7px;
  border:1px solid rgba(255,255,255,.4);
}

.snfd-secondary-footer{
  padding:13px 0;
  background-color:rgb(200 200 200 / 25%);
}
.snfd-secondary-footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.snfd-footer-nav ul,
.snfd-footer-social ul{
  margin:5px auto;
  padding:0;
  list-style:none;
}
.snfd-footer-nav ul li,
.snfd-footer-social ul li{
  display:inline-block;
}
.snfd-footer-nav ul li a{
  padding-right:16px;
}
.snfd-footer-nav ul li:last-child a{
  padding-right:0;
}
.snfd-footer-social ul li{
  margin-top:2px;
  margin-bottom:2px;
}
.snfd-site-info{
  background:#121314;
  padding:20px 0;
  text-align:center;
  font-size:13px;
  line-height:1.5;
}

@media(max-width:991px){
  .snfd-footer-cols-3,
  .snfd-footer-cols-4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .snfd-primary-footer{
    padding-top:40px;
    padding-bottom:40px;
  }
  .snfd-footer-widgets,
  .snfd-footer-cols-1,
  .snfd-footer-cols-2,
  .snfd-footer-cols-3,
  .snfd-footer-cols-4{
    grid-template-columns:1fr;
  }
  .snfd-secondary-footer-inner{
    display:block;
    text-align:center;
  }
  .snfd-footer-nav ul li a{
    display:inline-block;
    padding:4px 8px;
  }
}

/* ---------- TABLET / MOBILE TEMPORARY ---------- */
@media(max-width:991px){
  .snfd-main-grid{grid-template-columns:1fr}
  .snfd-sidebar{padding-left:0}
  .snfd-hero-layout{grid-template-columns:1fr}
  .snfd-hero-side{grid-template-columns:1fr 1fr;grid-template-rows:none}
}
@media(max-width:720px){
  .snfd-topline{display:none}
  .snfd-logo-row{min-height:90px}
  .snfd-logo-link .custom-logo{width:100%;height:100%;max-width:none;max-height:none}
  .snfd-nav{overflow:auto}
  .snfd-nav ul{white-space:nowrap;gap:16px;font-size:12px}
  .snfd-hero-spacer{height:50px}
  .snfd-ticker-set a{width:280px}
  .snfd-hero-media{height:auto;aspect-ratio:16/9}
  .snfd-side-media{height:auto;aspect-ratio:4/3}
  .snfd-under-grid{grid-template-columns:1fr 1fr}
  .snfd-under-card img{height:auto;aspect-ratio:4/3}
  .snfd-market-grid{grid-template-columns:1fr}
  .snfd-news-row{grid-template-columns:38% 62%;min-height:115px}
  .snfd-news-copy{padding:10px}
  .snfd-news-copy h3{font-size:15px}
  .snfd-news-copy p{display:none}
  .snfd-series-pair{grid-template-columns:1fr}
  .snfd-footer-grid{grid-template-columns:1fr;min-height:0}
}

/* 0.6.2 - Customizer-driven home content */
.snfd-config-widget{min-width:0}
.snfd-config-excerpt{margin:7px 9px 10px;font-size:13px;line-height:1.45;color:#444}
.snfd-native-widget{margin-bottom:42px}
.snfd-native-widget img{max-width:100%;height:auto}
.snfd-native-widget iframe{max-width:100%}


/* =========================================================
   0.6.3 - CAROUSEL + SIDEBAR VISUAL FIDELITY
   ========================================================= */

/* Main content is explicitly the CoverNews primary region for its existing JS. */
#primary.snfd-main-col{min-width:0}
#secondary.snfd-sidebar{min-width:0}

/* ---------- CALCIOMERCATO / POSTS CAROUSEL ---------- */
.snfd-config-carousel{
  position:relative;
  overflow:visible;
}
.snfd-config-carousel .snfd-section-titlebar{
  padding-right:82px;
}
.snfd-posts-carousel{
  position:relative;
  margin:0 -7.5px;
}
.snfd-posts-carousel .slick-list{
  overflow:hidden;
}
.snfd-posts-carousel .slick-slide{
  padding:0 7.5px;
  height:auto;
}
.snfd-carousel-card{
  background:#fff;
  height:100%;
  box-shadow:0 1px 2px rgb(0 0 0 / 5%);
}
.snfd-carousel-media{
  display:block;
  overflow:hidden;
}
.snfd-carousel-media img{
  width:100%;
  height:205px;
  object-fit:cover;
}
.snfd-carousel-copy{
  padding:10px 10px 9px;
}
.snfd-carousel-copy h3{
  margin:0 0 8px;
  font-size:17px;
  line-height:1.28;
  font-weight:700;
}
.snfd-carousel-copy .snfd-mini-meta{
  margin:0;
}

/* CoverNews JS inserts .slide-prev/.slide-next in the carousel itself. */
#primary .snfd-posts-carousel .slide-icon-1{
  top:-48px;
  margin:0;
  width:38px;
  height:32px;
  line-height:32px;
}
#primary .snfd-posts-carousel .slide-prev{right:40px}
#primary .snfd-posts-carousel .slide-next{right:0}

/* ---------- SIDEBAR SLIDERS: MATCH COVERNEWS VISUAL LANGUAGE ---------- */
#secondary .posts-slider,
#secondary .posts-carousel{
  position:relative;
  margin:0;
}
#secondary .posts-slider .slick-list,
#secondary .posts-carousel .slick-list{
  overflow:hidden;
}
#secondary .posts-slider .slick-item,
#secondary .posts-carousel .slick-item{
  margin:0;
  padding:0;
}
#secondary .posts-slider .featured-article,
#secondary .posts-carousel .featured-article,
#secondary .posts-slider .featured-article-wrapper,
#secondary .posts-carousel .featured-article-wrapper{
  position:relative;
  width:100%;
  margin:0;
  overflow:hidden;
}
#secondary .posts-slider .data-widget-slide,
#secondary .posts-slider .data-bg-featured,
#secondary .posts-carousel .data-bg-featured{
  position:relative;
  height:245px;
  background-position:center;
  background-size:cover;
  overflow:hidden;
}
#secondary .posts-slider .data-widget-slide img,
#secondary .posts-slider .data-bg-featured img,
#secondary .posts-carousel .data-bg-featured img{
  width:100%;
  height:245px;
  object-fit:cover;
}
#secondary .posts-slider .data-widget-slide:after,
#secondary .posts-slider .data-bg-featured:after,
#secondary .posts-carousel .data-bg-featured:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(to bottom,transparent 42%,rgba(0,0,0,.12) 58%,rgba(0,0,0,.88) 100%);
  pointer-events:none;
}
#secondary .posts-slider .slider-figcaption,
#secondary .posts-carousel figcaption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:3;
  padding:15px;
  background:transparent;
}
#secondary .posts-slider .slide-title,
#secondary .posts-slider .slide-title a,
#secondary .posts-carousel .article-title,
#secondary .posts-carousel .article-title a{
  margin:0 0 5px;
  color:#fff;
  font-size:18px;
  line-height:1.18;
  font-weight:700;
  text-shadow:0 1px 3px rgba(0,0,0,.9);
}
#secondary .posts-slider .grid-item-metadata,
#secondary .posts-slider .grid-item-metadata a,
#secondary .posts-carousel .grid-item-metadata,
#secondary .posts-carousel .grid-item-metadata a{
  color:#eee;
  font-size:11px;
}
#secondary .posts-slider .figure-categories,
#secondary .posts-carousel .figure-categories{
  display:none;
}

/* Slider arrows on the title line, same geometry as CoverNews. */
#secondary .slide-icon-1{
  top:-40px;
  margin:0;
  width:38px;
  height:32px;
}
#secondary .slide-prev{right:40px}
#secondary .slide-next{right:0}

/* ---------- TWO INDEPENDENT COMPACT WIDGETS, ONE ROW ---------- */
.snfd-config-paired-singles{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  align-items:start;
}
.snfd-config-paired-singles > .snfd-series-block{
  min-width:0;
}

/* Keep every category pair visually identical regardless of widget origin. */
.snfd-config-double,
.snfd-config-paired-singles{
  margin-top:45px;
  margin-bottom:45px;
}

/* Mobile is still provisional, but carousel must remain usable. */
@media(max-width:768px){
  .snfd-config-paired-singles{
    grid-template-columns:1fr;
  }
  .snfd-carousel-media img{
    height:auto;
    aspect-ratio:16/9;
  }
}


/* =========================================================
   0.6.4
   - compact slider controls everywhere
   - sidebar Double Categories = same visual grammar as Serie A/B
   ========================================================= */

/* ---------------------------------------------------------
   ONE ARROW SYSTEM FOR ALL COVERNEWS SLIDERS/CAROUSELS
   --------------------------------------------------------- */
.snfd-config-carousel,
.snfd-posts-carousel,
#secondary .posts-slider,
#secondary .posts-carousel,
#secondary .latest-posts-carousel,
#secondary .trending-posts-carousel,
#secondary .trending-posts-vertical-carousel{
  position:relative!important;
}

/* Theme-generated controls */
#primary .slide-icon-1,
#secondary .slide-icon-1,
.snfd-widget-area .slide-icon-1{
  position:absolute!important;
  z-index:30!important;
  top:-36px!important;
  bottom:auto!important;
  margin:0!important;
  padding:0!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  line-height:28px!important;
  background:#fff!important;
  color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-size:0!important;
  text-align:center!important;
  cursor:pointer!important;
}

#primary .slide-prev,
#secondary .slide-prev,
.snfd-widget-area .slide-prev{
  left:auto!important;
  right:29px!important;
}

#primary .slide-next,
#secondary .slide-next,
.snfd-widget-area .slide-next{
  left:auto!important;
  right:0!important;
}

#primary .slide-icon-1:before,
#secondary .slide-icon-1:before,
.snfd-widget-area .slide-icon-1:before{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:28px!important;
  height:28px!important;
  margin:0!important;
  background:#fff!important;
  color:#111!important;
  font:400 25px/27px Arial,Helvetica,sans-serif!important;
  text-align:center!important;
  text-shadow:none!important;
  opacity:1!important;
}

#primary .slide-prev:before,
#secondary .slide-prev:before,
.snfd-widget-area .slide-prev:before{
  content:"‹"!important;
}

#primary .slide-next:before,
#secondary .slide-next:before,
.snfd-widget-area .slide-next:before{
  content:"›"!important;
}

#primary .slide-icon-1:hover:before,
#secondary .slide-icon-1:hover:before,
.snfd-widget-area .slide-icon-1:hover:before{
  background:#f1f1f1!important;
}

/* Hide any second pair created by standard Slick controls */
#primary button.slick-prev,
#primary button.slick-next,
#secondary button.slick-prev,
#secondary button.slick-next{
  display:none!important;
}

/* Main Posts Carousel arrows align to its heading */
.snfd-config-carousel .snfd-posts-carousel .slide-icon-1{
  top:-43px!important;
}

/* Sidebar sliders: heading has room for the compact pair */
#secondary .widget-title,
#secondary h4.widget-title{
  padding-right:62px!important;
}

/* ---------------------------------------------------------
   SIDEBAR COVERNEWS DOUBLE CATEGORIES
   Highlights + Champions use this exact widget.
   We style the native widget; no title/category is hardcoded.
   --------------------------------------------------------- */
#secondary .widget.covernews_Posts_Grid,
#secondary .covernews_Posts_Grid,
#secondary .covernews_double_col_categorised_posts{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 24px!important;
  padding:0!important;
  background:transparent!important;
}

/* Two category columns side-by-side */
#secondary .covernews_Posts_Grid .widget-block > .row,
#secondary .covernews_double_col_categorised_posts .widget-block > .row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  align-items:start!important;
}

#secondary .covernews_Posts_Grid .widget-block > .row > .col-sm-6,
#secondary .covernews_double_col_categorised_posts .widget-block > .row > .col-sm-6{
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}

/* Heading exactly like a compact category column */
#secondary .covernews_Posts_Grid h4.widget-title,
#secondary .covernews_double_col_categorised_posts h4.widget-title{
  position:relative!important;
  display:block!important;
  margin:0 0 9px!important;
  padding:0 0 8px!important;
  color:#000!important;
  font-family:'Source Sans Pro',sans-serif!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:700!important;
  border:0!important;
}

#secondary .covernews_Posts_Grid h4.widget-title:after,
#secondary .covernews_double_col_categorised_posts h4.widget-title:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  bottom:0!important;
  width:42px!important;
  height:2px!important;
  background:#bb1919!important;
}

#secondary .covernews_Posts_Grid h4.widget-title .header-after,
#secondary .covernews_double_col_categorised_posts h4.widget-title .header-after{
  border:0!important;
  background:transparent!important;
}

/* Every post is contained in its own column */
#secondary .covernews_Posts_Grid .spotlight-post,
#secondary .covernews_double_col_categorised_posts .spotlight-post{
  position:relative!important;
  display:grid!important;
  grid-template-columns:35% 65%!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 8px!important;
  padding:0!important;
  background:#fff!important;
  border:0!important;
  box-shadow:0 1px 2px rgb(0 0 0 / 5%)!important;
  align-items:stretch!important;
}

/* Big first post when Customizer layout is full-plus-list */
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type{
  display:block!important;
  margin-bottom:9px!important;
}

/* Lead image */
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type figure.categorised-article{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:165px!important;
  margin:0!important;
  overflow:hidden!important;
}

#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised{
  width:100%!important;
  height:165px!important;
  position:relative!important;
  overflow:hidden!important;
  background-position:center!important;
  background-size:cover!important;
}

#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img{
  width:100%!important;
  height:165px!important;
  object-fit:cover!important;
}

/* Lead gradient */
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised:after,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(to bottom,transparent 38%,rgba(0,0,0,.12) 58%,rgba(0,0,0,.9) 100%)!important;
  pointer-events:none!important;
}

/* Lead caption overlays image */
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type > figcaption,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type > figcaption{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  width:100%!important;
  padding:9px!important;
  background:transparent!important;
}

#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type h3.article-title,
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type h3.article-title a,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type h3.article-title,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type h3.article-title a{
  margin:0!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:700!important;
  text-shadow:0 1px 3px rgba(0,0,0,.9)!important;
}

/* Secondary rows */
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) figure.categorised-article,
#secondary .covernews_Posts_Grid .list .spotlight-post figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post figure.categorised-article{
  display:block!important;
  width:100%!important;
  height:65px!important;
  margin:0!important;
  overflow:hidden!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) .data-bg-categorised,
#secondary .covernews_Posts_Grid .list .spotlight-post .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post .data-bg-categorised{
  width:100%!important;
  height:65px!important;
  overflow:hidden!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) .data-bg-categorised img,
#secondary .covernews_Posts_Grid .list .spotlight-post .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post .data-bg-categorised img{
  width:100%!important;
  height:65px!important;
  object-fit:cover!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) > figcaption,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) > figcaption,
#secondary .covernews_Posts_Grid .list .spotlight-post > figcaption,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post > figcaption{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding:7px!important;
  background:#fff!important;
  overflow:hidden!important;
}

/* Small row titles */
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) h3.article-title,
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) h3.article-title a,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) h3.article-title,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) h3.article-title a,
#secondary .covernews_Posts_Grid .list .spotlight-post h3.article-title,
#secondary .covernews_Posts_Grid .list .spotlight-post h3.article-title a,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post h3.article-title,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post h3.article-title a{
  display:block!important;
  margin:0!important;
  color:#111!important;
  font-size:9px!important;
  line-height:1.18!important;
  font-weight:700!important;
  text-shadow:none!important;
}

/* Keep metadata extremely compact */
#secondary .covernews_Posts_Grid .grid-item-metadata,
#secondary .covernews_double_col_categorised_posts .grid-item-metadata{
  margin-top:4px!important;
  color:#888!important;
  font-size:7px!important;
  line-height:1.1!important;
}

/* Hide categories in this compact sidebar component */
#secondary .covernews_Posts_Grid .figure-categories,
#secondary .covernews_double_col_categorised_posts .figure-categories{
  display:none!important;
}

/* The row grid controls widths, so remove legacy CoverNews widths */
#secondary .covernews_Posts_Grid .list .spotlight-post figure.categorised-article,
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:not(:first-of-type) figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:not(:first-of-type) figure.categorised-article{
  width:100%!important;
}

/* ---------------------------------------------------------
   Mobile fallback: Double Categories stack cleanly.
   --------------------------------------------------------- */
@media(max-width:768px){
  #secondary .covernews_Posts_Grid .widget-block > .row,
  #secondary .covernews_double_col_categorised_posts .widget-block > .row{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   0.6.5 - Double Categories position-aware layout
   MAIN CONTENT: paired/side-by-side
   SIDEBAR: category 1 above category 2, like CoverNews
   ========================================================= */

/*
 * Override ONLY the native Double Categories widget when it lives
 * in #secondary. In the sidebar CoverNews stacks the two categories.
 */
#secondary .covernews_Posts_Grid .widget-block > .row,
#secondary .covernews_double_col_categorised_posts .widget-block > .row{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

/* Each category takes the full sidebar width. */
#secondary .covernews_Posts_Grid .widget-block > .row > .col-sm-6,
#secondary .covernews_double_col_categorised_posts .widget-block > .row > .col-sm-6{
  display:block!important;
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 28px!important;
  padding:0!important;
}

/* No extra gap after the second category. */
#secondary .covernews_Posts_Grid .widget-block > .row > .col-sm-6:last-child,
#secondary .covernews_double_col_categorised_posts .widget-block > .row > .col-sm-6:last-child{
  margin-bottom:0!important;
}

/*
 * Full-width sidebar lead card: same visual grammar as CoverNews,
 * but now using all 300px instead of half-sidebar width.
 */
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type figure.categorised-article,
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised{
  height:205px!important;
}

#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img{
  height:205px!important;
}

/* Secondary rows stay compact below each lead. */
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type),
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type),
#secondary .covernews_Posts_Grid .list .spotlight-post,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post{
  grid-template-columns:35% 65%!important;
}

/* Sidebar category headings use full width. */
#secondary .covernews_Posts_Grid h4.widget-title,
#secondary .covernews_double_col_categorised_posts h4.widget-title{
  font-size:16px!important;
  margin-bottom:10px!important;
}


/* =========================================================
   0.6.6 - TYPOGRAPHY STANDARD
   Reference: Serie A / Serie B / Pagelle
   ========================================================= */

:root{
  --sn-type-section:20px;
  --sn-type-lead:17px;
  --sn-type-card:15px;
  --sn-type-meta:11px;
  --sn-type-body:13px;
}

/* Section / widget headings */
.snfd-section-titlebar h2,
#secondary .widget-title,
#secondary h4.widget-title,
#secondary .covernews_Posts_Grid h4.widget-title,
#secondary .covernews_double_col_categorised_posts h4.widget-title,
#secondary .trending-posts-vertical-carousel .widget-title,
#secondary .trending-posts-vertical-carousel h4.widget-title{
  font-size:var(--sn-type-section)!important;
  line-height:1.15!important;
  font-weight:700!important;
}

/* Lead titles: same visual weight everywhere */
.snfd-series-lead h3,
.snfd-series-lead h3 a,
.snfd-carousel-copy h3,
#secondary .posts-slider .slide-title,
#secondary .posts-slider .slide-title a,
#secondary .posts-carousel .article-title,
#secondary .posts-carousel .article-title a,
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type h3.article-title,
#secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type h3.article-title a,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type h3.article-title,
#secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type h3.article-title a{
  font-size:var(--sn-type-lead)!important;
  line-height:1.22!important;
  font-weight:700!important;
}

/* Secondary article titles: never smaller than Pagelle / Serie lists */
.snfd-series-small h4,
.snfd-series-small h4 a,
#secondary .trending-posts-vertical-carousel h3.article-title,
#secondary .trending-posts-vertical-carousel h3.article-title a,
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) h3.article-title,
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) h3.article-title a,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) h3.article-title,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) h3.article-title a,
#secondary .covernews_Posts_Grid .list .spotlight-post h3.article-title,
#secondary .covernews_Posts_Grid .list .spotlight-post h3.article-title a,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post h3.article-title,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post h3.article-title a{
  font-size:var(--sn-type-card)!important;
  line-height:1.25!important;
  font-weight:700!important;
  color:#111!important;
}

/* Metadata uniform and readable */
.snfd-mini-meta,
.snfd-meta,
#secondary .grid-item-metadata,
#secondary .grid-item-metadata a,
#secondary .entry-meta,
#secondary .entry-meta a{
  font-size:var(--sn-type-meta)!important;
  line-height:1.2!important;
}

/* Body/excerpt standard */
.snfd-news-copy p,
#secondary .article-excerpt,
#secondary .entry-content,
#secondary .entry-content p{
  font-size:var(--sn-type-body)!important;
  line-height:1.45!important;
}

/* Sidebar Double Categories: more breathing room for readable text */
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type),
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type),
#secondary .covernews_Posts_Grid .list .spotlight-post,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post{
  grid-template-columns:36% 64%!important;
  min-height:92px!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) figure.categorised-article,
#secondary .covernews_Posts_Grid .list .spotlight-post figure.categorised-article,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post figure.categorised-article,
#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) .data-bg-categorised,
#secondary .covernews_Posts_Grid .list .spotlight-post .data-bg-categorised,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post .data-bg-categorised{
  height:92px!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) .data-bg-categorised img,
#secondary .covernews_Posts_Grid .list .spotlight-post .data-bg-categorised img,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post .data-bg-categorised img{
  height:92px!important;
}

#secondary .covernews_Posts_Grid .spotlight-post:not(:first-of-type) > figcaption,
#secondary .covernews_double_col_categorised_posts .spotlight-post:not(:first-of-type) > figcaption,
#secondary .covernews_Posts_Grid .list .spotlight-post > figcaption,
#secondary .covernews_double_col_categorised_posts .list .spotlight-post > figcaption{
  padding:9px 10px!important;
}

/* Pagelle: preserve the same readable standard */
#secondary .trending-posts-vertical-carousel .no-gutter-col{
  grid-template-columns:35% 65%!important;
  min-height:96px!important;
  height:96px!important;
}
#secondary .trending-posts-vertical-carousel figure.featured-article,
#secondary .trending-posts-vertical-carousel .featured-article-wrapper,
#secondary .trending-posts-vertical-carousel .data-bg-featured,
#secondary .trending-posts-vertical-carousel figcaption{
  height:96px!important;
  min-height:96px!important;
}
#secondary .trending-posts-vertical-carousel figure.featured-article img,
#secondary .trending-posts-vertical-carousel .data-bg-featured img{
  height:96px!important;
}
#secondary .trending-posts-vertical-carousel figcaption{
  padding:10px 12px!important;
}
#secondary .trending-posts-vertical-carousel h3.article-title,
#secondary .trending-posts-vertical-carousel h3.article-title a{
  max-height:none!important;
  overflow:visible!important;
}

/* Small screens will be redesigned separately; do not shrink typography here. */

/* =========================================================
   0.6.11 - SINGLE PAGE ONLY
   Base: 0.6.10/0.6.9 stable. Home/footer rules untouched.
   ========================================================= */

.snfd-single-top-ads{
  min-height:0;
  padding-top:12px;
}
.snfd-single-top-ads .gmp{
  max-width:100%;
  margin-inline:auto;
}

.snfd-single-page{padding-top:24px;padding-bottom:35px}
.snfd-breadcrumb{
  margin:0 0 16px;
  display:flex;align-items:center;gap:5px;flex-wrap:wrap;
  font-family:'Source Sans Pro',sans-serif;
  font-size:10px;line-height:1.3;text-transform:uppercase;color:#666
}
.snfd-breadcrumb a{color:#444}

.snfd-single-grid{
  display:grid;
  grid-template-columns:minmax(0,70%) minmax(0,30%);
  gap:15px;
  align-items:start
}
.snfd-single-full .snfd-single-grid{grid-template-columns:1fr}
.snfd-single-primary{min-width:0}
.snfd-single-article{min-width:0}

.snfd-entry-content-wrap,
.snfd-related,
.snfd-comments-area{
  background:#fff;
}

.snfd-single-header{
  padding:15px 15px 0;
  background:#fff;
}
.snfd-single-categories{
  display:flex;gap:6px;flex-wrap:wrap;
  margin-bottom:7px
}
.snfd-single-categories a{
  display:inline-block;
  padding:3px 7px;
  background:var(--sn-navy);
  color:#fff;
  font:700 10px/1.2 'Source Sans Pro',sans-serif;
  text-transform:uppercase
}
.snfd-single-header h1{
  margin:5px 0 8px;
  font-family:'Source Sans Pro',sans-serif;
  font-size:34px;
  line-height:1.12;
  font-weight:700;
  letter-spacing:0;
  color:#000
}
.snfd-single-meta{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding-bottom:12px;
  font-family:'Source Sans Pro',sans-serif;
  font-size:11px;color:#777
}
.snfd-single-author:before{content:'◉';font-size:10px;margin-right:6px;color:#777}
.snfd-single-date:before{content:'◷';font-size:13px;margin-right:5px;color:#777}
.snfd-single-comment-count{color:#777}
.snfd-single-comment-count:before{content:'◌';font-size:11px;margin-right:5px}

.snfd-single-excerpt{
  margin:0 0 15px;
  font-size:17px;
  line-height:1.5;
  color:#444
}
.snfd-single-excerpt p{margin:0}

.snfd-single-featured{
  margin:0 -15px;
  background:#fff
}
.snfd-single-featured img{
  display:block;width:100%;height:auto
}
.snfd-featured-caption{
  display:block;
  padding:6px 15px 8px;
  background:#f6f6f6;
  color:#666;
  font-size:11px;
  line-height:1.3
}

.snfd-single-content{
  padding:18px 15px 22px;
  font-size:17px;
  line-height:1.62;
  color:#3a3a3a
}
.snfd-single-content p{margin:0 0 1.15em}
.snfd-single-content h2{font-size:27px;line-height:1.2;margin:1.25em 0 .55em}
.snfd-single-content h3{font-size:23px;line-height:1.25;margin:1.2em 0 .5em}
.snfd-single-content h4{font-size:19px;line-height:1.3;margin:1.15em 0 .45em}
.snfd-single-content img{max-width:100%;height:auto}
.snfd-single-content iframe,
.snfd-single-content video{max-width:100%}
.snfd-single-content figure{max-width:100%}
.snfd-single-content table{max-width:100%;width:100%;border-collapse:collapse}
.snfd-single-content blockquote{
  margin:1.2em 0;
  padding:10px 15px;
  border-left:4px solid var(--sn-orange);
  background:#f6f6f6
}

.snfd-page-links{
  margin:18px 0 0;
  font-size:13px;
  font-weight:700
}

.snfd-single-tags{
  margin-top:18px;
  display:flex;gap:7px;flex-wrap:wrap
}
.snfd-single-tags a{
  border:1px solid #ddd;
  padding:4px 8px;
  font-size:11px;
  color:#555
}

.snfd-post-navigation{
  display:grid;grid-template-columns:1fr 1fr;gap:20px;
  padding:18px 0 0;
  margin-top:18px;
  border-top:1px solid #e5e5e5;
  font-family:'Source Sans Pro',sans-serif
}
.snfd-post-navigation>div{min-width:0}
.snfd-nav-next{text-align:right}
.snfd-post-navigation .em-post-navigation{
  display:block;
  font-size:11px;
  font-weight:400;
  color:#777
}
.snfd-post-navigation a{
  font-size:13px;
  line-height:1.3;
  font-weight:700;
  color:#111
}

.snfd-comments-jump{
  display:block;
  margin:15px 0 0;
  background:var(--sn-navy);
  color:#fff!important;
  padding:18px 20px;
  text-align:center;
  font:700 14px/1.2 Arial,Helvetica,sans-serif
}
.snfd-comments-anchor{scroll-margin-top:20px}

/* Related + single ad area */
.snfd-related{
  margin-top:15px;
  padding:15px
}
.snfd-related-adv{margin-bottom:18px}
.snfd-related-title{
  position:relative;
  margin:0 0 15px;
  padding:5px 0 10px;
  font-family:'Source Sans Pro',sans-serif;
  font-size:20px;
  line-height:1.2
}
.snfd-related-title:after{
  content:'';
  position:absolute;
  left:0;bottom:0;
  width:60px;height:3px;
  background:#bb1919
}
.snfd-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px
}
.snfd-related-card{min-width:0}
.snfd-related-image{
  display:block;
  overflow:hidden
}
.snfd-related-image img{
  width:100%;
  height:145px;
  object-fit:cover
}
.snfd-related-card h3{
  margin:7px 0 4px;
  font-size:15px;
  line-height:1.3
}
.snfd-related-card .snfd-mini-meta{margin:0}

/* Single sidebar keeps the stable widget styling already used by home. */
.snfd-single-sidebar{
  min-width:0;
  padding-left:15px
}
.snfd-single-sidebar .snfd-widget-area>.widget{
  margin-bottom:15px
}

/* Comments: real CoverNews comments.php, styled locally. */
.snfd-comments-area{
  padding:15px;
  margin-top:15px
}
.snfd-comments-area .comments-title,
.snfd-comments-area .comment-reply-title{
  padding:10px 0 15px;
  margin:0;
  font-family:'Source Sans Pro',sans-serif;
  font-size:20px;
  line-height:1.25
}
.snfd-comments-area .comment-list,
.snfd-comments-area .comment-list .children{
  list-style:none;
  margin:0;
  padding:0
}
.snfd-comments-area .comment-list .children{
  padding-left:30px
}
.snfd-comments-area .comment{
  position:relative
}
.snfd-comments-area .comment-body{
  margin-bottom:20px;
  min-height:70px;
  padding-bottom:16px;
  border-bottom:1px solid #eee
}
.snfd-comments-area .comment-author img{
  border-radius:50%;
  width:64px;
  height:64px;
  float:left;
  margin-right:15px
}
.snfd-comments-area .comment-author .fn{
  font-style:normal;
  font-weight:700
}
.snfd-comments-area .comment-author a{color:#35353c;text-decoration:none}
.snfd-comments-area .comment-metadata{
  font-size:11px;color:#777
}
.snfd-comments-area .comment-content,
.snfd-comments-area .comment-awaiting-moderation,
.snfd-comments-area .reply{
  padding-left:80px
}
.snfd-comments-area .comment-content{
  font-size:14px;
  line-height:1.55
}
.snfd-comments-area .reply{margin-top:8px;margin-bottom:10px}
.snfd-comments-area .comment-reply-link{
  display:inline-block;
  border:1px solid #222;
  padding:5px 12px;
  line-height:1;
  text-decoration:none;
  color:#111
}
.snfd-comments-area .comment-respond{
  margin-top:26px
}
.snfd-comments-area .comment-form p{margin:0 0 12px}
.snfd-comments-area .comment-form label{
  display:block;color:#707070;margin-bottom:5px
}
.snfd-comments-area input[type='text'],
.snfd-comments-area input[type='email'],
.snfd-comments-area input[type='url'],
.snfd-comments-area textarea{
  width:100%;
  border:1px solid #d7d7d7;
  background:#fff;
  padding:10px;
  font:inherit
}
.snfd-comments-area textarea{
  min-height:180px;
  resize:vertical
}
.snfd-comments-area input[type='submit']{
  margin-top:0;
  background:var(--sn-navy);
  color:#fff;
  border:0;
  padding:12px 18px;
  cursor:pointer
}
.snfd-comments-area .comment-navigation{
  margin:10px 0 18px;
  font-size:12px
}

@media(min-width:1600px){
  .snfd-single-header h1{font-size:48px}
}

@media(max-width:991px){
  .snfd-single-grid{grid-template-columns:1fr}
  .snfd-single-sidebar{padding-left:0;margin-top:20px}
}

@media(max-width:720px){
  .snfd-single-page{padding-top:14px}
  .snfd-single-header{padding:12px 12px 0}
  .snfd-single-header h1{font-size:30px}
  .snfd-single-featured{margin:0 -12px}
  .snfd-single-content{padding:14px 12px 18px;font-size:17px}
  .snfd-post-navigation{grid-template-columns:1fr;gap:12px}
  .snfd-nav-next{text-align:left}
  .snfd-related-grid{grid-template-columns:1fr}
  .snfd-related-image img{height:auto;aspect-ratio:16/9}
  .snfd-comments-area .comment-list .children{padding-left:15px}
  .snfd-comments-area .comment-author img{width:48px;height:48px;margin-right:10px}
  .snfd-comments-area .comment-content,
  .snfd-comments-area .comment-awaiting-moderation,
  .snfd-comments-area .reply{padding-left:58px}
}


/* =========================================================
   0.6.13 - CATEGORY / TAG ARCHIVE ONLY
   Base 0.6.12 stable. Home/single/footer rules untouched.
   ========================================================= */

.snfd-archive-top-ads{
  min-height:0;
  padding-top:12px;
}
.snfd-archive-top-ads .gmp{
  max-width:100%;
  margin-inline:auto;
}

.snfd-archive-page{
  padding-top:24px;
  padding-bottom:45px;
}

.snfd-archive-breadcrumb{
  margin-bottom:16px;
}

.snfd-archive-grid{
  display:grid;
  grid-template-columns:minmax(0,70%) minmax(0,30%);
  gap:15px;
  align-items:start;
}

.snfd-archive-full .snfd-archive-grid{
  grid-template-columns:1fr;
}

.snfd-archive-primary{
  min-width:0;
}

.snfd-archive-header{
  margin:0 0 12px;
}

.snfd-archive-header h1{
  margin:0 0 8px;
  font-family:'Source Sans Pro',sans-serif;
  font-size:34px;
  line-height:1.12;
  font-weight:700;
  color:#000;
}

.snfd-archive-description{
  margin:0 0 14px;
  color:#555;
  font-size:14px;
  line-height:1.5;
}

.snfd-archive-list{
  display:block;
}

.snfd-archive-card{
  display:grid;
  grid-template-columns:50% 50%;
  min-height:220px;
  margin-bottom:15px;
  background:#fff;
  box-shadow:0 1px 2px rgb(0 0 0 / 5%);
  overflow:hidden;
}

.snfd-archive-image{
  display:block;
  min-width:0;
  overflow:hidden;
  background:#e8e8e8;
}

.snfd-archive-image img{
  width:100%;
  height:100%;
  min-height:220px;
  object-fit:cover;
}

.snfd-archive-copy{
  min-width:0;
  padding:18px 18px 15px;
}

.snfd-archive-copy h2{
  margin:3px 0 9px;
  font-family:'Source Sans Pro',sans-serif;
  font-size:20px;
  line-height:1.25;
  font-weight:700;
  color:#000;
}

.snfd-archive-meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 9px;
  color:#777;
  font-family:'Source Sans Pro',sans-serif;
  font-size:11px;
  line-height:1.2;
}

.snfd-archive-author:before{
  content:'◉';
  font-size:9px;
  margin-right:5px;
}

.snfd-archive-date:before{
  content:'◷';
  font-size:12px;
  margin-right:5px;
}

.snfd-archive-excerpt{
  color:#444;
  font-size:13px;
  line-height:1.5;
}

.snfd-archive-sidebar{
  min-width:0;
  padding-left:15px;
}

.snfd-archive-sidebar .snfd-widget-area>.widget{
  margin-bottom:15px;
}

/* Pagination */
.snfd-pagination{
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
  padding-top:12px;
}

.snfd-pagination .page-numbers{
  min-width:34px;
  height:34px;
  padding:0 9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #ddd;
  color:#111;
  font-family:'Source Sans Pro',sans-serif;
  font-size:13px;
  font-weight:600;
}

.snfd-pagination .page-numbers.current{
  background:var(--sn-navy);
  border-color:var(--sn-navy);
  color:#fff;
}

.snfd-pagination .page-numbers:hover{
  border-color:var(--sn-orange);
  color:var(--sn-orange);
}

.snfd-no-posts{
  padding:25px;
  background:#fff;
  color:#555;
}

@media(max-width:991px){
  .snfd-archive-grid{
    grid-template-columns:1fr;
  }
  .snfd-archive-sidebar{
    padding-left:0;
    margin-top:20px;
  }
}

@media(max-width:720px){
  .snfd-archive-page{
    padding-top:14px;
  }

  .snfd-archive-header h1{
    font-size:30px;
  }

  .snfd-archive-card{
    grid-template-columns:38% 62%;
    min-height:125px;
    margin-bottom:10px;
  }

  .snfd-archive-image img{
    min-height:125px;
    height:125px;
  }

  .snfd-archive-copy{
    padding:10px;
  }

  .snfd-archive-copy h2{
    margin:0 0 6px;
    font-size:16px;
    line-height:1.25;
  }

  .snfd-archive-excerpt{
    display:none;
  }

  .snfd-archive-meta{
    font-size:10px;
    margin-bottom:0;
  }
}


/* ==========================================================
   SNFD 0.6.18 - CWV-1 / CLS stabilization
   Base reale: 0.6.16 caricata dall'utente
   ========================================================== */

/* Riserva la geometria intrinseca del logo WordPress (597x120). */
.snfd-logo-link .custom-logo,
.snfd-logo-row .custom-logo {
    aspect-ratio: 597 / 120;
    height: auto;
}

/* Stabilizza il placeholder social mentre si assestano font/icon rendering. */
.snfd-social-placeholder {
    min-height: 24px;
}

/* Mantiene le proporzioni intrinseche delle immagini che hanno width/height HTML. */
.snfd-main img[width][height] {
    height: auto;
}

@media (min-width: 769px) {
    .snfd-logo-row .custom-logo {
        display: block;
    }
}


/* ==========================================================
   SNFD 0.6.19 - CWV-2 / Aperturesotto CLS fix
   Lighthouse culprit:
   .snfd-under-card img.attachment-medium_large
   ========================================================== */

/*
 * Reserve the media box before the image is decoded.
 * The current 5-column desktop layout visually uses this geometry already;
 * this rule makes it deterministic from the first layout pass.
 */
.snfd-under-card > a {
    display: block;
}

.snfd-under-card img,
.snfd-under-card img.wp-post-image {
    display: block;
    width: 100%;
    height: 155px;
    min-height: 155px;
    aspect-ratio: 640 / 427;
    object-fit: cover;
}

/* Prevent inline/late sizing rules from changing the card geometry. */
.snfd-under-card .attachment-medium_large,
.snfd-under-card .size-medium_large {
    width: 100%;
    height: 155px;
}

/* Keep the existing mobile look while reserving its box too. */
@media (max-width: 720px) {
    .snfd-under-card img,
    .snfd-under-card img.wp-post-image,
    .snfd-under-card .attachment-medium_large,
    .snfd-under-card .size-medium_large {
        width: 100%;
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }
}


/* ==========================================================
   SNFD 0.6.27 - Accessibility pass
   No visual/layout/performance changes.
   ========================================================== */
.snfd-mini-meta {
    color: #666;
}

/* SNFD 0.6.28 - logo CLS reservation */
.snfd-logo-link .custom-logo{aspect-ratio:597/120;height:auto;}


/* SNFD 0.6.30 - definitive logo geometry */
.snfd-logo-link{display:block;width:min(500px,100%);aspect-ratio:597/120}
.snfd-logo-link .custom-logo{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
}
@media(max-width:720px){
  .snfd-logo-link{width:min(280px,100%)}
}


/* SNFD 0.6.31 - header CLS stabilization.
   Keep the logo row geometry identical before/after stylesheet and font load. */
.snfd-logo-row{height:165px;min-height:165px;box-sizing:border-box}
@media(max-width:720px){
  .snfd-logo-row{height:90px;min-height:90px}
}


/* ==========================================================
   SNFD 0.6.36 - Clever TopScroll CLS stabilization
   ========================================================== */
#snfd-clever-topscroll-slot{
  position:relative;
  width:100%;
  height:300px;
  min-height:300px;
  overflow:hidden;
  box-sizing:border-box;
}
[id^="clever-"][id$="-top-scroll"]{
  position:absolute!important;
  width:100%!important;
  min-height:300px!important;
  box-sizing:border-box!important;
}
#snfd-clever-topscroll-slot > [id^="clever-"][id$="-top-scroll"]{
  inset:0 auto auto 0!important;
  height:300px!important;
  min-height:300px!important;
  margin:0!important;
}


/* SNFD 0.6.37 - Best Practices: thumbnail aspect ratio */
.categorised-article-wrapper .data-bg-hover > a,
.featured-article-wrapper .data-bg-hover > a{
  overflow:hidden;
}
.categorised-article-wrapper .data-bg-hover > a > img.attachment-thumbnail,
.featured-article-wrapper .data-bg-hover > a > img.attachment-thumbnail{
  width:117px;
  height:96px;
  max-width:117px;
  max-height:96px;
  object-fit:cover;
  object-position:center;
  display:block;
}


/* ==========================================================
   SNFD 0.6.40 - Accessibility contrast only
   ========================================================== */
.snfd-single-meta,
.snfd-single-author,
.snfd-single-date,
.snfd-single-author:before,
.snfd-single-date:before,
.snfd-post-navigation .em-post-navigation {
  color:#555;
}


/* ==========================================================
   SNFD 0.6.44 - Accessibility desktop
   Lighthouse contrast fixes for the odds widget.
   ========================================================== */
.odds-table th,
.odds-table .odds-bonus-extra,
.odds-table span.odds-bonus-extra{
  color:#111 !important;
}

/* =========================================================
   0.6.48 - ASSET INDEPENDENCE
   Plugin-owned carousel/runtime; no CoverNews CSS/JS required.
   ========================================================= */
.snfd-posts-carousel.snfd-native-carousel{
  display:flex;
  gap:15px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  margin:0;
}
.snfd-posts-carousel.snfd-native-carousel::-webkit-scrollbar{display:none}
.snfd-posts-carousel.snfd-native-carousel>.slick-item{
  flex:0 0 calc((100% - 45px)/4);
  min-width:0;
  scroll-snap-align:start;
}
.snfd-carousel-controls{
  position:absolute;
  right:0;
  top:0;
  display:flex;
  gap:2px;
  z-index:3;
}
.snfd-carousel-controls button{
  width:38px;
  height:32px;
  padding:0;
  border:0;
  background:#fff;
  color:#222;
  font:700 26px/32px Arial,sans-serif;
  cursor:pointer;
}
.snfd-carousel-controls button:hover{background:#f1f1f1}
.snfd-theme-slider-static{position:relative!important;overflow:visible!important}
@media(max-width:991px){
  .snfd-posts-carousel.snfd-native-carousel>.slick-item{flex-basis:calc((100% - 15px)/2)}
}
@media(max-width:720px){
  .snfd-posts-carousel.snfd-native-carousel>.slick-item{flex-basis:86%}
}


/* SNFD 0.6.57 - single accessibility contrast fixes */
.snfd-single-header .snfd-single-comment-count,
.snfd-single-header .snfd-single-comment-count:visited,
.snfd-comments-area time,
.snfd-comments-area time a,
.snfd-comments-area time a:visited {
  color: #4a4a4a !important;
}

/* ==========================================================
   SNFD 0.6.58 - MOBILE EDITORIAL REDESIGN
   Dedicated phone experience only. Desktop/tablet >= 768px is untouched.
   ========================================================== */
@media (max-width: 767px) {
  :root{--sn-mobile-pad:14px}
  html{background:#fff}
  body.snfd-body{background:#fff;color:#171717;font-size:16px;line-height:1.45;overflow-x:hidden}
  .snfd-shell{max-width:none;padding-left:var(--sn-mobile-pad);padding-right:var(--sn-mobile-pad)}
  .snfd-devbar{height:14px;font-size:7px;letter-spacing:.08em}
  .snfd-topline{display:none!important}

  /* Compact, app-like masthead. */
  .snfd-site-header{background:#fff;border-bottom:1px solid #e8e8e8}
  .snfd-logo-row{height:68px!important;min-height:68px!important;padding:10px 56px!important;position:relative}
  .snfd-logo-link{width:min(230px,100%)!important;aspect-ratio:597/120}
  .snfd-logo-link .custom-logo{object-fit:contain}
  .snfd-logo-row:before{
    content:"☰";position:absolute;left:16px;top:50%;transform:translateY(-50%);
    width:36px;height:36px;display:grid;place-items:center;border:1px solid #e5e5e5;border-radius:50%;
    color:var(--sn-navy);font:700 20px/1 Arial,sans-serif
  }
  .snfd-logo-row:after{
    content:"⌕";position:absolute;right:16px;top:50%;transform:translateY(-50%);
    width:36px;height:36px;display:grid;place-items:center;border:1px solid #e5e5e5;border-radius:50%;
    color:var(--sn-navy);font:700 23px/1 Arial,sans-serif
  }
  .snfd-nav-wrap{background:var(--sn-navy);border-bottom:3px solid var(--sn-orange)}
  .snfd-nav{overflow-x:auto!important;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .snfd-nav::-webkit-scrollbar{display:none}
  .snfd-nav ul{min-height:43px!important;gap:0!important;padding:0!important;white-space:nowrap;font-size:12px!important;text-transform:uppercase;letter-spacing:.025em}
  .snfd-nav li{flex:0 0 auto}
  .snfd-nav a{display:block;padding:13px 12px 12px;color:#fff!important}
  .snfd-nav li:first-child a{padding-left:2px}

  /* Advertising reservation stays intact; editorial gap is removed on phone. */
  .snfd-hero-spacer{height:18px!important}

  /* News strip: static, fast and thumb-friendly. */
  .snfd-ticker{height:38px;margin:0 0 14px;background:#f5f5f7;border-radius:3px;overflow:hidden}
  .snfd-ticker-label{flex:0 0 62px;height:38px;background:var(--sn-orange);color:#111;font-size:11px;letter-spacing:.05em}
  .snfd-ticker-label:before{display:none}
  .snfd-ticker-window,.snfd-ticker-track,.snfd-ticker-set{height:38px}
  .snfd-ticker-track{animation:none!important;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .snfd-ticker-track::-webkit-scrollbar{display:none}
  .snfd-ticker-set{flex:0 0 auto}
  .snfd-ticker-set[aria-hidden="true"]{display:none}
  .snfd-ticker-set a{width:270px;height:38px;padding:0 12px;font-size:12px;border-right:1px solid #ddd}

  /* Opening: one dominant story followed by two compact headlines. */
  .snfd-hero-layout{display:block!important;margin-bottom:4px}
  .snfd-hero-primary{margin:0 -14px}
  .snfd-hero-card{background:#fff}
  .snfd-hero-media{height:auto!important;aspect-ratio:16/9;background:#ddd}
  .snfd-hero-media:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.88));pointer-events:none}
  .snfd-hero-media .snfd-overlay{display:none}
  .snfd-hero-copy{left:18px!important;right:18px!important;bottom:15px!important;z-index:3}
  .snfd-hero-copy h1{margin:0 0 4px!important;font-size:28px!important;line-height:1.04!important;letter-spacing:-.025em;color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.7)}
  .snfd-hero-copy .snfd-meta{font-size:11px;color:#eee}
  .snfd-hero-side{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;gap:10px!important;padding-top:10px}
  .snfd-side-card{min-width:0;background:#fff}
  .snfd-side-media{height:auto!important;aspect-ratio:auto!important;overflow:visible!important;background:#fff}
  .snfd-side-media>img{width:100%;height:auto!important;aspect-ratio:16/10;object-fit:cover;border-radius:3px}
  .snfd-side-media .snfd-overlay{display:none}
  .snfd-side-copy{position:static!important;padding:7px 1px 3px!important}
  .snfd-side-copy h2{margin:0!important;color:#111!important;text-shadow:none!important;font-size:16px!important;line-height:1.18!important;letter-spacing:-.01em}

  /* Ten opening-under stories become a dense editorial feed. */
  .snfd-under-grid{display:block!important;margin-top:10px;margin-bottom:28px;border-top:4px solid var(--sn-navy)}
  .snfd-under-card{background:#fff!important;box-shadow:none!important;border-bottom:1px solid #e5e5e5;padding:12px 0;margin:0}
  .snfd-under-card>a{display:grid!important;grid-template-columns:118px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:start}
  .snfd-under-card img,.snfd-under-card img.wp-post-image,.snfd-under-card .attachment-medium_large,.snfd-under-card .size-medium_large{
    grid-row:1/3;width:118px!important;height:78px!important;min-height:78px!important;aspect-ratio:auto!important;object-fit:cover;border-radius:3px
  }
  .snfd-under-card h3{grid-column:2;margin:0 0 5px!important;font-size:17px!important;line-height:1.17!important;letter-spacing:-.01em;color:#111}
  .snfd-under-card .snfd-mini-meta{grid-column:2;margin:0!important;font-size:10px!important;color:#666}

  /* Main + former sidebar become one editorial river. */
  .snfd-main-grid{display:block!important}
  #primary.snfd-main-col,#secondary.snfd-sidebar{width:100%;padding:0!important}
  #secondary.snfd-sidebar{margin-top:30px;border-top:5px solid var(--sn-navy);padding-top:18px!important}
  .snfd-native-widget,.snfd-config-widget,.snfd-sidebar-block,.snfd-widget-area>.widget{margin-bottom:32px!important}

  /* Section identity: navy rule + orange accent. */
  .snfd-section-titlebar{margin:0 0 12px;border-top:4px solid var(--sn-navy);padding-top:7px}
  .snfd-section-titlebar h2{display:block;margin:0!important;padding:0 0 8px!important;font-size:21px!important;line-height:1.1!important;letter-spacing:-.015em;color:var(--sn-navy)!important}
  .snfd-section-titlebar h2:after{width:44px;height:4px;background:var(--sn-orange)}
  .snfd-widget-area .widget-title{font-size:20px!important;color:var(--sn-navy)!important}
  .snfd-widget-area .widget-title span:after,.snfd-widget-area .em-title-subtitle-wrap .widget-title:after{background:var(--sn-orange)!important}

  /* Carousels become horizontal swipe rails. */
  .snfd-config-carousel{overflow:hidden}
  .snfd-config-carousel .snfd-section-titlebar{padding-right:0}
  .snfd-posts-carousel,.snfd-posts-carousel.snfd-native-carousel{display:flex!important;gap:10px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0!important;padding:0 0 5px!important}
  .snfd-posts-carousel::-webkit-scrollbar{display:none}
  .snfd-posts-carousel .slick-list,.snfd-posts-carousel .slick-track{display:contents!important}
  .snfd-posts-carousel .slick-item,.snfd-posts-carousel .slick-slide{display:block!important;float:none!important;flex:0 0 82%;width:82%!important;padding:0!important;scroll-snap-align:start}
  .snfd-carousel-card{box-shadow:none;border:1px solid #e8e8e8;border-radius:4px;overflow:hidden}
  .snfd-carousel-media img{height:auto!important;aspect-ratio:16/9;object-fit:cover}
  .snfd-carousel-copy{padding:10px 11px 11px}
  .snfd-carousel-copy h3{font-size:18px!important;line-height:1.18!important;margin-bottom:6px}
  .snfd-carousel-controls,#primary .snfd-posts-carousel .slide-icon-1{display:none!important}

  /* Standard news rows: image left, headline right. */
  .snfd-news-row{display:grid!important;grid-template-columns:116px minmax(0,1fr)!important;min-height:86px!important;margin:0!important;padding:11px 0;border-bottom:1px solid #e5e5e5;background:#fff!important;box-shadow:none!important}
  .snfd-news-image{height:78px;border-radius:3px}
  .snfd-news-image img{height:78px!important;object-fit:cover}
  .snfd-news-copy{padding:0 0 0 12px!important}
  .snfd-news-copy h3{margin:0 0 5px!important;font-size:17px!important;line-height:1.18!important}
  .snfd-news-copy .snfd-mini-meta{font-size:10px;margin:0!important}
  .snfd-news-copy p,.snfd-config-excerpt{display:none!important}

  /* Category pairs stack as clean mobile sections. */
  .snfd-series-pair,.snfd-config-paired-singles,.snfd-config-double{display:block!important;margin:32px 0!important}
  .snfd-series-lead{margin-bottom:0;box-shadow:none;border-radius:4px 4px 0 0;overflow:hidden}
  .snfd-series-lead a{height:auto!important;aspect-ratio:16/9}
  .snfd-series-lead h3{left:13px;right:13px;bottom:12px;font-size:21px!important;line-height:1.08!important}
  .snfd-series-small{margin:0!important;box-shadow:none!important;border-bottom:1px solid #e5e5e5}
  .snfd-series-small a{grid-template-columns:116px minmax(0,1fr)!important;min-height:88px!important;padding:9px 0}
  .snfd-series-thumb,.snfd-series-thumb img{width:116px!important;height:76px!important;object-fit:cover;border-radius:3px}
  .snfd-series-small h4{margin:0 0 4px 12px!important;font-size:16px!important;line-height:1.18!important}
  .snfd-series-small .snfd-mini-meta{margin-left:12px!important;font-size:10px}

  /* Sidebar/editorial modules now feel native in the stream. */
  .snfd-sidebar-feature{box-shadow:none!important;border-bottom:1px solid #e5e5e5}
  .snfd-sidebar-feature img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px}
  .snfd-sidebar-feature h3{padding:9px 0 12px!important;font-size:19px!important;line-height:1.18!important}
  #secondary .posts-slider .data-widget-slide,#secondary .posts-slider .data-bg-featured,#secondary .posts-carousel .data-bg-featured{height:auto!important;aspect-ratio:16/9}
  #secondary .posts-slider .slide-title,#secondary .posts-slider .slide-title a,#secondary .posts-carousel .article-title,#secondary .posts-carousel .article-title a{font-size:20px!important;line-height:1.12!important}
  #secondary .slide-icon-1{display:none!important}

  /* Ads/embeds must never force horizontal overflow. */
  .snfd-main iframe,.snfd-main ins,.snfd-main video,.snfd-widget-area iframe{max-width:100%!important}

  /* Footer: compact phone stack. */
  .snfd-primary-footer{padding:30px 0!important}
  .snfd-footer-widgets,.snfd-footer-cols-1,.snfd-footer-cols-2,.snfd-footer-cols-3,.snfd-footer-cols-4{grid-template-columns:1fr!important;gap:22px!important}
}


/* SNFD 0.6.59 - mobile horizontal overflow containment */
@media (max-width: 767px) {
  html,
  body.snfd-body {
    width:100%;
    max-width:100%;
    overflow-x:clip!important;
  }

  .snfd-site-header,
  .snfd-main,
  .snfd-shell,
  .snfd-main-grid,
  #primary.snfd-main-col,
  #secondary.snfd-sidebar,
  .snfd-section,
  .snfd-config-widget,
  .snfd-widget-area,
  .snfd-footer,
  .snfd-footer-widgets {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box;
  }

  /* Old Slick geometry must never define the document width on mobile. */
  .snfd-posts-carousel .slick-list,
  .snfd-posts-carousel .slick-track,
  #secondary .slick-list,
  #secondary .slick-track,
  #secondary .posts-slider .slick-list,
  #secondary .posts-slider .slick-track,
  #secondary .posts-carousel .slick-list,
  #secondary .posts-carousel .slick-track,
  #secondary .latest-posts-carousel .slick-list,
  #secondary .latest-posts-carousel .slick-track,
  #secondary .trending-posts-carousel .slick-list,
  #secondary .trending-posts-carousel .slick-track,
  #secondary .trending-posts-vertical-carousel .slick-list,
  #secondary .trending-posts-vertical-carousel .slick-track {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
    left:auto!important;
  }

  /* The plugin carousel itself is the only horizontal scrolling region. */
  .snfd-posts-carousel,
  .snfd-posts-carousel.snfd-native-carousel {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }

  .snfd-posts-carousel .slick-list,
  .snfd-posts-carousel .slick-track {
    display:contents!important;
  }

  .snfd-posts-carousel .slick-item,
  .snfd-posts-carousel .slick-slide {
    max-width:82vw!important;
    min-width:0!important;
  }

  /* Legacy/sidebar sliders become contained static blocks on phone. */
  #secondary .posts-slider,
  #secondary .posts-carousel,
  #secondary .latest-posts-carousel,
  #secondary .trending-posts-carousel,
  #secondary .trending-posts-vertical-carousel,
  #secondary .featured-article,
  #secondary .featured-article-wrapper,
  #secondary .data-bg-featured {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    transform:none!important;
  }

  /* Third-party embeds/ads may have fixed inline widths. */
  .snfd-main iframe,
  .snfd-main ins,
  .snfd-main embed,
  .snfd-main object,
  .snfd-main video,
  .snfd-widget-area iframe,
  .snfd-widget-area ins {
    max-width:100%!important;
  }
}


/* SNFD 0.6.60 - MOBILE FULL-BLEED DRAFT
   First visual draft:
   - primary opening: portrait / Instagram-like
   - two secondary openings: full width, stacked
   - sliders: one full-width card per swipe
*/
@media (max-width: 767px) {

  /* -------------------------------------------------------
     PRIMARY OPENING: full-bleed portrait editorial card
     ------------------------------------------------------- */
  .snfd-hero-layout{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .snfd-hero-primary{
    width:calc(100% + 28px)!important;
    max-width:none!important;
    margin-left:-14px!important;
    margin-right:-14px!important;
  }

  .snfd-hero-card,
  .snfd-hero-media{
    width:100%!important;
    max-width:none!important;
  }

  .snfd-hero-media{
    position:relative!important;
    display:block!important;
    aspect-ratio:4/5!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    background:#0a0a0a;
  }

  .snfd-hero-media>img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  .snfd-hero-media:after{
    content:"";
    position:absolute;
    inset:34% 0 0;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,0),
      rgba(0,0,0,.22) 25%,
      rgba(0,0,0,.92) 100%
    );
    z-index:2;
    pointer-events:none;
  }

  .snfd-hero-copy{
    left:20px!important;
    right:20px!important;
    bottom:24px!important;
    z-index:3!important;
  }

  .snfd-hero-copy h1{
    max-width:95%;
    margin:0 0 10px!important;
    font-size:clamp(31px,8.4vw,42px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    color:#fff!important;
    text-wrap:balance;
    text-shadow:0 2px 7px rgba(0,0,0,.7);
  }

  .snfd-hero-copy .snfd-meta{
    font-size:12px!important;
    line-height:1.2!important;
    color:#f5f5f5!important;
  }


  /* -------------------------------------------------------
     SECONDARY OPENINGS: never side-by-side on phone
     ------------------------------------------------------- */
  .snfd-hero-side{
    display:block!important;
    width:100%!important;
    padding-top:0!important;
  }

  .snfd-side-card{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 12px!important;
  }

  .snfd-side-media{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:16/10!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#111!important;
  }

  .snfd-side-media>img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .snfd-side-media:after{
    content:"";
    position:absolute;
    inset:38% 0 0;
    background:linear-gradient(transparent,rgba(0,0,0,.86));
    z-index:2;
    pointer-events:none;
  }

  .snfd-side-copy{
    position:absolute!important;
    left:15px!important;
    right:15px!important;
    bottom:14px!important;
    z-index:3!important;
    padding:0!important;
  }

  .snfd-side-copy h2{
    margin:0!important;
    color:#fff!important;
    font-size:23px!important;
    line-height:1.06!important;
    letter-spacing:-.025em!important;
    text-shadow:0 2px 6px rgba(0,0,0,.65)!important;
  }


  /* -------------------------------------------------------
     ALL PLUGIN CAROUSELS: one large card = one swipe
     ------------------------------------------------------- */
  .snfd-config-carousel{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .snfd-posts-carousel,
  .snfd-posts-carousel.snfd-native-carousel{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    gap:0!important;
    padding:0!important;
    margin:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-behavior:smooth;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .snfd-posts-carousel::-webkit-scrollbar{
    display:none!important;
  }

  .snfd-posts-carousel .slick-list,
  .snfd-posts-carousel .slick-track{
    display:contents!important;
    transform:none!important;
  }

  .snfd-posts-carousel .slick-item,
  .snfd-posts-carousel .slick-slide,
  .snfd-posts-carousel.snfd-native-carousel>.slick-item{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always;
  }

  .snfd-carousel-card{
    position:relative!important;
    width:100%!important;
    min-height:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-carousel-media{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:4/5!important;
    overflow:hidden!important;
  }

  .snfd-carousel-media>img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .snfd-carousel-media:after{
    content:"";
    position:absolute;
    inset:42% 0 0;
    background:linear-gradient(transparent,rgba(0,0,0,.9));
    z-index:1;
    pointer-events:none;
  }

  .snfd-carousel-copy{
    position:absolute!important;
    left:18px!important;
    right:18px!important;
    bottom:20px!important;
    z-index:3!important;
    padding:0!important;
    color:#fff!important;
    pointer-events:none;
  }

  .snfd-carousel-copy h3{
    margin:0 0 8px!important;
    font-size:27px!important;
    line-height:1.05!important;
    letter-spacing:-.025em!important;
  }

  .snfd-carousel-copy h3 a{
    color:#fff!important;
    text-shadow:0 2px 6px rgba(0,0,0,.65)!important;
    pointer-events:auto;
  }

  .snfd-carousel-copy .snfd-mini-meta{
    color:#f1f1f1!important;
    font-size:11px!important;
  }


  /* -------------------------------------------------------
     COVERNEWS/LEGACY SIDEBAR SLIDERS:
     mobile swipe rail instead of showing all posts vertically
     ------------------------------------------------------- */
  #secondary .posts-slider,
  #secondary .posts-carousel,
  #secondary .latest-posts-carousel,
  #secondary .trending-posts-carousel,
  #secondary .trending-posts-vertical-carousel{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  #secondary .posts-slider::-webkit-scrollbar,
  #secondary .posts-carousel::-webkit-scrollbar,
  #secondary .latest-posts-carousel::-webkit-scrollbar,
  #secondary .trending-posts-carousel::-webkit-scrollbar,
  #secondary .trending-posts-vertical-carousel::-webkit-scrollbar{
    display:none!important;
  }

  #secondary .posts-slider .slick-list,
  #secondary .posts-slider .slick-track,
  #secondary .posts-carousel .slick-list,
  #secondary .posts-carousel .slick-track,
  #secondary .latest-posts-carousel .slick-list,
  #secondary .latest-posts-carousel .slick-track,
  #secondary .trending-posts-carousel .slick-list,
  #secondary .trending-posts-carousel .slick-track,
  #secondary .trending-posts-vertical-carousel .slick-list,
  #secondary .trending-posts-vertical-carousel .slick-track{
    display:contents!important;
    transform:none!important;
  }

  #secondary .posts-slider .slick-slide,
  #secondary .posts-slider .slick-item,
  #secondary .posts-carousel .slick-slide,
  #secondary .posts-carousel .slick-item,
  #secondary .latest-posts-carousel .slick-slide,
  #secondary .latest-posts-carousel .slick-item,
  #secondary .trending-posts-carousel .slick-slide,
  #secondary .trending-posts-carousel .slick-item,
  #secondary .trending-posts-vertical-carousel .slick-slide,
  #secondary .trending-posts-vertical-carousel .slick-item{
    display:block!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    float:none!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always;
  }

  #secondary .posts-slider .data-widget-slide,
  #secondary .posts-slider .data-bg-featured,
  #secondary .posts-carousel .data-bg-featured,
  #secondary .latest-posts-carousel .data-bg-featured,
  #secondary .trending-posts-carousel .data-bg-featured,
  #secondary .trending-posts-vertical-carousel .data-bg-featured{
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:4/5!important;
    height:auto!important;
    overflow:hidden!important;
  }

  /* No artificial "Ultime notizie" module is added in this draft. */
}


/* SNFD 0.6.61 - MOBILE STORY MODELS A/B
   MODEL A = full-screen overlay
   MODEL B = full-screen editorial with text below image
*/
@media (max-width: 767px) {

  /* ======================================================
     MODEL A — FULL SCREEN OVERLAY
     Used for main opening and visual carousels.
     One story ~= one viewport. No forced JS paging.
     ====================================================== */

  .snfd-hero-primary,
  .snfd-posts-carousel .slick-item,
  .snfd-posts-carousel .slick-slide {
    min-height:100svh;
    box-sizing:border-box;
  }

  .snfd-hero-primary {
    display:flex!important;
    flex-direction:column!important;
    justify-content:stretch!important;
    background:#080808!important;
  }

  .snfd-hero-primary .snfd-hero-card {
    min-height:100svh!important;
    display:flex!important;
    flex-direction:column!important;
    background:#080808!important;
  }

  .snfd-hero-primary .snfd-hero-media {
    flex:1 1 auto!important;
    min-height:66svh!important;
    max-height:74svh!important;
    aspect-ratio:auto!important;
  }

  .snfd-hero-primary .snfd-hero-copy {
    left:18px!important;
    right:18px!important;
    bottom:22px!important;
  }

  .snfd-hero-primary .snfd-hero-copy h1 {
    font-size:clamp(31px,8vw,43px)!important;
    line-height:1.01!important;
  }

  /* Full-screen visual slider: one story per swipe */
  .snfd-config-carousel .snfd-carousel-card {
    min-height:100svh!important;
    display:flex!important;
    flex-direction:column!important;
    background:#080808!important;
  }

  .snfd-config-carousel .snfd-carousel-media {
    flex:1 1 auto!important;
    min-height:64svh!important;
    max-height:74svh!important;
    aspect-ratio:auto!important;
  }

  .snfd-config-carousel .snfd-carousel-copy {
    bottom:22px!important;
  }

  /* ======================================================
     MODEL B — FULL SCREEN EDITORIALE
     Secondary openings: large image, then category/title/
     excerpt/meta BELOW image. The card reserves the rest of
     the viewport naturally; a little white space is allowed.
     ====================================================== */

  .snfd-hero-side {
    display:block!important;
    width:100%!important;
  }

  .snfd-side-card {
    min-height:100svh!important;
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    background:#fff!important;
    margin:0!important;
    padding:0 0 18px!important;
    border-bottom:1px solid #ececec!important;
    box-sizing:border-box!important;
  }

  .snfd-side-card + .snfd-side-card {
    margin-top:0!important;
  }

  .snfd-side-media {
    position:relative!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-side-media:after {
    display:none!important;
  }

  .snfd-side-media > img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  /* text must sit below the picture */
  .snfd-side-copy {
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:auto!important;
    padding:16px 18px 0!important;
    color:#0b1034!important;
  }

  .snfd-side-copy h2 {
    margin:4px 0 10px!important;
    color:#0b1034!important;
    font-size:clamp(29px,7.2vw,38px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
    text-shadow:none!important;
    text-wrap:balance;
  }

  .snfd-side-copy h2 a {
    color:#0b1034!important;
  }

  /* If template outputs metadata/excerpt, make them readable */
  .snfd-side-copy .snfd-mini-meta,
  .snfd-side-copy .snfd-meta {
    color:#5f6472!important;
    font-size:12px!important;
    line-height:1.35!important;
    margin-top:8px!important;
  }

  .snfd-side-copy p,
  .snfd-side-copy .excerpt,
  .snfd-side-copy .snfd-excerpt {
    display:block!important;
    margin:0 0 10px!important;
    color:#5f6472!important;
    font-size:17px!important;
    line-height:1.4!important;
  }

  /* Category chips: use Stadionews orange where categories exist */
  .snfd-side-copy .cat-links a,
  .snfd-side-copy .category a,
  .snfd-side-copy .snfd-category,
  .snfd-hero-copy .cat-links a,
  .snfd-hero-copy .category a,
  .snfd-hero-copy .snfd-category {
    display:inline-block!important;
    color:#ff6f00!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.1!important;
    text-transform:uppercase!important;
    letter-spacing:.03em!important;
    margin-bottom:5px!important;
  }

  /* ======================================================
     VIEWPORT STORY RHYTHM
     We prefer normal scrolling + proximity snap, not forced
     mandatory snap, to preserve usability and accessibility.
     ====================================================== */
  body.snfd-body {
    scroll-snap-type:y proximity;
  }

  .snfd-hero-primary,
  .snfd-side-card,
  .snfd-config-carousel .slick-item,
  .snfd-config-carousel .slick-slide {
    scroll-snap-align:start;
    scroll-snap-stop:normal;
  }

  /* ======================================================
     ADV SAFETY
     Keep mapped ad code untouched; only reserve/contain space.
     Never alter slot IDs or ad script.
     ====================================================== */
  .snfd-side-card ins.adsbygoogle,
  .snfd-side-card [id*="google_ads"],
  .snfd-side-card iframe[src*="googlesyndication"],
  .snfd-side-card iframe[src*="doubleclick"],
  .snfd-config-widget ins.adsbygoogle,
  .snfd-config-widget [id*="google_ads"] {
    max-width:100%!important;
  }

  /* Keep ad containers centered and prevent viewport overflow. */
  .snfd-config-widget .widget_custom_html,
  .snfd-config-widget .textwidget,
  .snfd-native-widget,
  .snfd-native-widget > * {
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}


/* SNFD 0.6.62 - MOBILE OPENING SCREEN ONLY
   First viewport = logo + first story only.
   No empty space; image crops to available viewport.
*/
@media (max-width: 767px) {

  /* First-screen header: logo only. */
  .snfd-site-header {
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    background:#fff!important;
  }

  .snfd-logo-row {
    width:100%!important;
    max-width:100%!important;
    min-height:72px!important;
    height:72px!important;
    padding:8px 14px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }

  .snfd-logo-link {
    width:auto!important;
    max-width:72vw!important;
    height:56px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .snfd-logo-link img,
  .snfd-logo-row .custom-logo {
    width:auto!important;
    max-width:100%!important;
    height:56px!important;
    object-fit:contain!important;
  }

  /* Hide header chrome from the first screen.
     It can be repositioned later as a separate mobile block. */
  .snfd-nav-wrap,
  .snfd-nav,
  .snfd-social-placeholder,
  .snfd-ticker,
  .snfd-hero-spacer {
    display:none!important;
  }

  /* Remove any top spacing inherited from desktop. */
  .snfd-main,
  .snfd-hero-layout,
  .snfd-hero-primary,
  .snfd-hero-card {
    margin-top:0!important;
    padding-top:0!important;
  }

  .snfd-hero-layout {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  /* First story consumes exactly the remaining visual viewport. */
  .snfd-hero-primary {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    min-height:calc(100svh - 72px)!important;
    height:calc(100svh - 72px)!important;
    background:#080808!important;
    overflow:hidden!important;
  }

  .snfd-hero-primary .snfd-hero-card {
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    min-height:100%!important;
    height:100%!important;
    overflow:hidden!important;
    background:#080808!important;
  }

  .snfd-hero-primary .snfd-hero-media {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    background:#080808!important;
  }

  .snfd-hero-primary .snfd-hero-media > img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  .snfd-hero-primary .snfd-hero-media:after {
    display:block!important;
    content:""!important;
    position:absolute!important;
    inset:34% 0 0!important;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,.18) 28%,
      rgba(0,0,0,.92) 100%
    )!important;
    z-index:2!important;
    pointer-events:none!important;
  }

  .snfd-hero-primary .snfd-hero-copy {
    position:absolute!important;
    left:18px!important;
    right:18px!important;
    bottom:22px!important;
    z-index:3!important;
    padding:0!important;
    margin:0!important;
  }

  .snfd-hero-primary .snfd-hero-copy h1 {
    margin:0 0 9px!important;
    max-width:100%!important;
    color:#fff!important;
    font-size:clamp(31px,8.2vw,43px)!important;
    line-height:1.01!important;
    letter-spacing:-.035em!important;
    text-shadow:0 2px 8px rgba(0,0,0,.72)!important;
  }

  .snfd-hero-primary .snfd-hero-copy .snfd-meta,
  .snfd-hero-primary .snfd-hero-copy .snfd-mini-meta {
    color:#f4f4f4!important;
    font-size:12px!important;
    line-height:1.3!important;
  }

  /* The remaining homepage starts only after the full opening screen. */
  .snfd-hero-side,
  .snfd-under-grid,
  .snfd-main-grid {
    position:relative!important;
    z-index:1!important;
  }

  /* Top ad slot must not occupy space before the logo on mobile. */
  #snfd-clever-topscroll-slot {
    margin:0!important;
    padding:0!important;
  }

  body.snfd-body {
    overflow-x:clip!important;
  }
}


/* SNFD 0.6.63 - MOBILE FIRST SCREEN ISOLATION
   Temporary visual test:
   on phone show ONLY logo + first opening story.
   In-flow ads are forbidden in this first viewport.
   Fixed/overlay ads remain allowed.
*/
@media (max-width: 767px) {

  /* No mapped top banner in or around the first screen. */
  #snfd-clever-topscroll-slot,
  .snfd-site-header ins.adsbygoogle,
  .snfd-site-header [id*="google_ads"],
  .snfd-site-header iframe[src*="googlesyndication"],
  .snfd-site-header iframe[src*="doubleclick"],
  .snfd-hero-primary ins.adsbygoogle,
  .snfd-hero-primary [id*="google_ads"],
  .snfd-hero-primary iframe[src*="googlesyndication"],
  .snfd-hero-primary iframe[src*="doubleclick"] {

    width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }

  /* First-screen test: hide everything after the opening story. */
  .snfd-hero-side,
  .snfd-under-grid,
  .snfd-main-grid,
  .snfd-primary-footer,
  .snfd-footer,
  footer {
    display:none!important;
  }

  /* Header must be logo-only and consume no extra space. */
  .snfd-site-header,
  .snfd-logo-row,
  .snfd-logo-link {
    margin-top:0!important;
    margin-bottom:0!important;
  }

  /* Use dynamic viewport units where supported: no white gaps. */
  .snfd-hero-primary {
    min-height:calc(100dvh - 72px)!important;
    height:calc(100dvh - 72px)!important;
  }

  @supports not (height: 100dvh) {
    .snfd-hero-primary {
      min-height:calc(100svh - 72px)!important;
      height:calc(100svh - 72px)!important;
    }
  }

  .snfd-hero-primary .snfd-hero-card,
  .snfd-hero-primary .snfd-hero-media {
    height:100%!important;
    min-height:100%!important;
  }

  .snfd-hero-primary .snfd-hero-media > img {
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  /* Remove any accidental margins/padding around first viewport. */
  body.snfd-body,
  .snfd-main,
  .snfd-hero-layout,
  .snfd-hero-primary,
  .snfd-hero-card {
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* SNFD 0.6.64 - opening polish + two secondary editorial stories */
@media (max-width: 767px) {

  /* OPENING: a little more breathing room around headline,
     especially at the bottom. */
  .snfd-hero-primary .snfd-hero-copy {
    left:22px!important;
    right:22px!important;
    bottom:134px!important;
    padding:0!important;
  }

  /* Re-enable only the secondary openings after the temporary 0.6.63 test. */
  .snfd-hero-side {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  /* Keep the rest hidden for now: we are validating only first 3 stories. */
  .snfd-under-grid,
  .snfd-main-grid,
  .snfd-primary-footer,
  .snfd-footer,
  footer {
    display:none!important;
  }

  /* MODEL B: each secondary opening is its own viewport story. */
  .snfd-hero-side .snfd-side-card {
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-height:100svh!important;
    margin:0!important;
    padding:0 0 18px!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:0!important;
    border-bottom:1px solid #e8e8e8!important;
    overflow:hidden!important;
    scroll-snap-align:start!important;
  }

  @supports (height:100dvh) {
    .snfd-hero-side .snfd-side-card {
      min-height:100dvh!important;
    }
  }

  .snfd-hero-side .snfd-side-media {
    position:relative!important;
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:4/3!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-hero-side .snfd-side-media:after {
    display:none!important;
  }

  .snfd-hero-side .snfd-side-media > img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  .snfd-hero-side .snfd-side-copy {
    position:static!important;
    display:block!important;
    padding:16px 22px 18px!important;
    margin:0!important;
    color:#0b1034!important;
  }

  .snfd-hero-side .snfd-side-copy h2 {
    margin:4px 0 10px!important;
    color:#0b1034!important;
    font-size:clamp(29px,7.2vw,38px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
    text-shadow:none!important;
  }

  .snfd-hero-side .snfd-side-copy h2 a {
    color:#0b1034!important;
  }

  .snfd-hero-side .snfd-side-copy .snfd-mini-meta,
  .snfd-hero-side .snfd-side-copy .snfd-meta {
    display:block!important;
    color:#666b77!important;
    font-size:12px!important;
    line-height:1.35!important;
    margin-top:9px!important;
  }

  .snfd-hero-side .snfd-side-copy .cat-links a,
  .snfd-hero-side .snfd-side-copy .category a,
  .snfd-hero-side .snfd-side-copy .snfd-category {
    display:inline-block!important;
    color:#f26a21!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.1!important;
    text-transform:uppercase!important;
    margin:0 0 7px!important;
  }

  /* Space reserved at the bottom of each secondary story for its mapped ad.
     Existing ad code remains untouched; next iteration can bind exact slots. */
  .snfd-hero-side .snfd-side-card {
    padding-bottom:270px!important;
  }
}


/* SNFD 0.6.65 - secondary opening structural fix */
@media (max-width: 767px) {
  .snfd-hero-side .snfd-side-card {
    overflow:visible!important;
  }

  .snfd-hero-side .snfd-side-media {
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-hero-side .snfd-side-copy {
    position:relative!important;
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:18px 24px 22px!important;
    margin:0!important;
    background:#fff!important;
    color:#0b1034!important;
    z-index:2!important;
  }

  .snfd-hero-side .snfd-category {
    display:block!important;
    margin:0 0 8px!important;
    color:#f26a21!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.1!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
  }

  .snfd-hero-side .snfd-side-copy h2 {
    display:block!important;
    margin:0 0 10px!important;
    color:#0b1034!important;
    font-size:clamp(29px,7.2vw,38px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
  }

  .snfd-hero-side .snfd-side-copy h2 a {
    display:block!important;
    color:#0b1034!important;
    text-decoration:none!important;
  }

  .snfd-hero-side .snfd-side-copy .snfd-mini-meta {
    display:block!important;
    margin:0!important;
    color:#656b78!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
}


/* SNFD 0.6.66 - real mapped ads under story #2 and #3 */
@media (max-width: 767px) {
  .snfd-hero-side .snfd-side-card {
    padding-bottom:18px!important;
  }

  .snfd-mobile-story-ad {
    display:flex!important;
    flex:1 0 auto!important;
    width:100%!important;
    min-height:250px!important;
    max-width:100%!important;
    margin-top:auto!important;
    padding:12px 0 16px!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  .snfd-mobile-story-ad > * {
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* TopScroll becomes an ordinary in-story banner at destination #1. */
  .snfd-mobile-story-ad #snfd-clever-topscroll-slot {
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    max-height:250px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .snfd-mobile-story-ad #snfd-clever-topscroll-slot > [id^="clever-"][id$="-top-scroll"] {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    margin:0!important;
  }

  /* Any moved Google in-flow unit is constrained but not resized internally. */
  .snfd-mobile-story-ad ins.adsbygoogle,
  .snfd-mobile-story-ad [id*="google_ads"],
  .snfd-mobile-story-ad iframe[src*="googlesyndication"],
  .snfd-mobile-story-ad iframe[src*="doubleclick"] {
    display:block!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* SNFD 0.6.67 - MOBILE AD DIAGNOSTIC */
@media (max-width: 767px) {
  #snfd-clever-topscroll-slot {
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    max-height:250px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  #snfd-clever-topscroll-slot > [id^="clever-"][id$="-top-scroll"] {
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    margin:0!important;
  }

  .snfd-site-header ins.adsbygoogle,
  .snfd-site-header [id*="google_ads"],
  .snfd-site-header iframe[src*="googlesyndication"],
  .snfd-site-header iframe[src*="doubleclick"],
  .snfd-hero-primary ins.adsbygoogle,
  .snfd-hero-primary [id*="google_ads"],
  .snfd-hero-primary iframe[src*="googlesyndication"],
  .snfd-hero-primary iframe[src*="doubleclick"] {
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:0!important;
    overflow:visible!important;
  }

  .snfd-mobile-story-ad {
    display:none!important;
    min-height:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .snfd-hero-side {
    display:block!important;
  }

  .snfd-under-grid,
  .snfd-main-grid,
  .snfd-primary-footer,
  .snfd-footer,
  footer {
    display:none!important;
  }
}


/* SNFD 0.6.68 - mobile ad routing + skin context */
@media (max-width: 767px) {

  /* Desktop Clever TopScroll must never render/reserve space on mobile. */
  #snfd-clever-topscroll-slot {

    width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  /* Exact mapped network_head slot in story #2. */
  .snfd-mobile-story-ad--network-head {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    margin-top:auto!important;
    padding:12px 0 16px!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  #div-gpt-ad-1789065474951-0 {
    display:block!important;
    min-width:300px!important;
    min-height:250px!important;
    max-width:100%!important;
    margin:0 auto!important;
  }

  /* Clever SponsorScrollClose / skin overlays are intentionally NOT targeted. */
}


/* SNFD 0.6.69 - story #3 gmp-boxtop + continue full home */
@media (max-width: 767px) {

  /* Desktop-only Clever TopScroll remains excluded from mobile. */
  #snfd-clever-topscroll-slot {

    width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  /* Story ad containers */
  .snfd-mobile-story-ad--network-head,
  .snfd-mobile-story-ad--gmp-boxtop {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    margin-top:auto!important;
    padding:12px 0 16px!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  #div-gpt-ad-1789065474951-0,
  #gmp-boxtop {
    display:block!important;
    min-width:300px!important;
    min-height:250px!important;
    max-width:100%!important;
    margin:0 auto!important;
  }

  /* Continue rendering the real homepage after the first 3 stories.
     We have NOT redesigned these later blocks yet. */
  .snfd-under-grid,
  .snfd-main-grid,
  .snfd-primary-footer,
  .snfd-footer,
  footer {
    display:block!important;
  }

  .snfd-main-grid {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  /* Keep horizontal overflow contained while later blocks are still legacy. */
  .snfd-under-grid,
  .snfd-main-grid,
  #primary.snfd-main-col,
  #secondary.snfd-sidebar {
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Mobile Clever SponsorScrollClose and external skin/overlay are intentionally untouched. */
}


/* SNFD 0.6.70 - mobile 10-news feature block: 5 + ADV + 5 */
@media (max-width: 767px) {

  /* Story #2: two mapped banners stacked in the same story. */
  .snfd-mobile-story-ad--intext-vip,
  .snfd-mobile-story-ad--network-head {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    padding:10px 0!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  #gmp-intext_vip_mob {
    display:block!important;
    width:100%!important;
    min-height:250px!important;
    max-width:100%!important;
    margin:0 auto!important;
  }

  /* 10-news block = same visual language as Serie A lead card. */
  .snfd-under-grid {
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
    gap:12px!important;
    margin:0!important;
    padding:14px 14px 18px!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  .snfd-under-feature-card {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:4px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  .snfd-under-feature-card > a {
    display:block!important;
    width:100%!important;
    text-decoration:none!important;
  }

  .snfd-under-feature-media {
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:16/9!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-under-feature-media img,
  .snfd-under-feature-media img.wp-post-image,
  .snfd-under-feature-media .attachment-medium_large,
  .snfd-under-feature-media .size-medium_large {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    max-width:none!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .snfd-under-feature-overlay {
    position:absolute!important;
    inset:35% 0 0!important;
    z-index:1!important;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,.18) 30%,
      rgba(0,0,0,.86) 100%
    )!important;
    pointer-events:none!important;
  }

  .snfd-under-feature-card h3 {
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:13px!important;
    z-index:2!important;
    margin:0!important;
    color:#fff!important;
    font-size:21px!important;
    line-height:1.08!important;
    font-weight:700!important;
    letter-spacing:-.02em!important;
    text-shadow:0 1px 4px rgba(0,0,0,.9)!important;
  }

  /* Mid-block mapped banner: 5 stories + banner + 5 stories. */
  .snfd-under-split-ad {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    margin:4px 0!important;
    padding:12px 0!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  .snfd-under-split-ad #gmp-masthead {
    display:block!important;
    width:100%!important;
    min-height:250px!important;
    max-width:100%!important;
    margin:0 auto!important;
  }
}


/* SNFD 0.6.71 - mobile paged 10-news block */
@media (max-width: 767px) {

  /* The mobile page feed uses mandatory vertical snapping. */
  html {
    scroll-snap-type:y mandatory!important;
    scroll-padding-top:0!important;
  }

  body.snfd-body {
    scroll-snap-type:y mandatory!important;
  }

  /* Opening and secondary stories continue behaving as pages. */
  .snfd-hero-primary,
  .snfd-hero-side .snfd-side-card,
  .snfd-under-page {
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  /* 10-news container: no side padding, no top decorative line. */
  .snfd-under-grid.snfd-under-paged {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border-top:0!important;
    border-bottom:0!important;
    background:#fff!important;
    box-sizing:border-box!important;
  }

  .snfd-under-grid.snfd-under-paged::before,
  .snfd-under-grid.snfd-under-paged::after {
    display:none!important;
    content:none!important;
  }

  /* One physical viewport page = two cards + reserved ad area. */
  .snfd-under-page {
    display:grid!important;
    grid-template-rows:auto auto 1fr!important;
    align-content:start!important;
    width:100%!important;
    max-width:100%!important;
    min-height:100svh!important;
    height:100svh!important;
    margin:0!important;
    padding:0!important;
    gap:10px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  @supports (height:100dvh) {
    .snfd-under-page {
      min-height:100dvh!important;
      height:100dvh!important;
    }
  }

  /* News cards: full bleed, square corners. */
  .snfd-under-feature-card {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  .snfd-under-feature-card > a {
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  /* Keep fixed geometry from first paint -> no CLS from images. */
  .snfd-under-feature-media {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-under-feature-media img,
  .snfd-under-feature-media img.wp-post-image {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    object-fit:cover!important;
  }

  .snfd-under-feature-overlay {
    border-radius:0!important;
  }

  .snfd-under-feature-card h3 {
    left:15px!important;
    right:15px!important;
    bottom:13px!important;
    margin:0!important;
    font-size:21px!important;
    line-height:1.08!important;
  }

  /* Reserved advertising region.
     Fixed minimum geometry prevents later ad load from shifting the page. */
  .snfd-under-page-ad {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#fff!important;
  }
}


/* SNFD 0.6.71c - first snap page includes logo + opening */
@media (max-width: 767px) {

  /* The header itself must not become a separate snap destination. */
  .snfd-site-header,
  .snfd-logo-row {
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }

  /* First destination starts at the logo, not at the hero image.
     The hero must therefore not snap independently. */
  .snfd-hero-primary {
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }

  /* Treat logo + opening as the first visual page. */
  .snfd-site-header {
    position:relative!important;
    z-index:2!important;
  }

  .snfd-logo-row {
    height:72px!important;
    min-height:72px!important;
  }

  /* Anchor the first snap at the beginning of the header/logo. */
  .snfd-site-header::before {
    content:""!important;
    display:block!important;
    position:absolute!important;
    top:0!important;
    left:0!important;
    width:1px!important;
    height:1px!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    pointer-events:none!important;
  }

  /* Logo + hero together still fill one viewport. */
  .snfd-hero-primary {
    height:calc(100dvh - 72px)!important;
    min-height:calc(100dvh - 72px)!important;
  }

  @supports not (height:100dvh) {
    .snfd-hero-primary {
      height:calc(100svh - 72px)!important;
      min-height:calc(100svh - 72px)!important;
    }
  }
}


/* SNFD 0.6.72 - authoritative mobile snap/ad corrections */
@media (max-width: 767px) {

  /* --------------------------------------------------
     FIRST PAGE SNAP = LOGO + OPENING
     No pseudo snap anchor. The header itself is the snap target.
     -------------------------------------------------- */
  html {
    scroll-snap-type:y mandatory!important;
    scroll-padding-top:0!important;
  }

  body.snfd-body {
    scroll-snap-type:y mandatory!important;
    overflow-x:clip!important;
  }

  .snfd-site-header {
    position:relative!important;
    z-index:2!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  .snfd-site-header::before {
    display:none!important;
    content:none!important;
  }

  .snfd-logo-row {
    height:72px!important;
    min-height:72px!important;
    scroll-snap-align:none!important;
  }

  .snfd-hero-primary {
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
    height:calc(100dvh - 72px)!important;
    min-height:calc(100dvh - 72px)!important;
  }

  @supports not (height:100dvh) {
    .snfd-hero-primary {
      height:calc(100svh - 72px)!important;
      min-height:calc(100svh - 72px)!important;
    }
  }

  /* --------------------------------------------------
     NEVER HIDE ADS VIA CSS
     These rules intentionally restore visibility/normal flow.
     Overlay/fixed formats keep their provider positioning.
     -------------------------------------------------- */
  ins.adsbygoogle,
  [id*="google_ads"],
  iframe[src*="googlesyndication"],
  iframe[src*="doubleclick"],
  .google-auto-placed,
  [id^="aswift_"],
  [id^="google_ads_"],
  .gmp,
  [id^="gmp-"],
  [id^="clever-"] {
    visibility:visible!important;
  }

  /* Desktop-only placeholder has zero geometry on mobile,
     but we do NOT hide any provider ad node with display:none. */
  #snfd-clever-topscroll-slot {
    width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  /* Exact mapped story ads remain visible. */
  #div-gpt-ad-1789065474951-0,
  #gmp-intext_vip_mob,
  #gmp-boxtop {
    visibility:visible!important;
    max-width:100%!important;
  }

  /* Do not clip provider overlays/skins at page containers. */
  .snfd-under-page,
  .snfd-hero-primary,
  .snfd-hero-side .snfd-side-card {
    overflow:visible!important;
  }

  /* But media themselves must still crop imagery. */
  .snfd-hero-media,
  .snfd-side-media,
  .snfd-under-feature-media {
    overflow:hidden!important;
  }
}


/* SNFD 0.6.73 - mapped ads in first two 2-news snap pages */
@media (max-width: 767px) {

  .snfd-under-page-ad {
    display:flex!important;
    width:100%!important;
    min-height:250px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    background:#fff!important;
  }

  .snfd-under-page-ad .odds2025container,
  .snfd-under-page-ad #ints_banner_div {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-height:250px!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
  }

  /* Do not clip rendered widget internals. */
  .snfd-under-page-ad .odds-light-wrap,
  .snfd-under-page-ad #ints_banner_div > * {
    box-sizing:border-box!important;
  }
}


/* ==========================================================
   SNFD 0.6.75 - MOBILE CONTENT BLOCKS
   Calciomercato / News / Serie A-B-C-D
   ========================================================== */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     CALCIOMERCATO / ALL CONFIGURED CAROUSELS
     Full bleed, one card per horizontal swipe.
     ------------------------------------------------------- */
  .snfd-config-carousel {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  .snfd-config-carousel .snfd-section-titlebar {
    margin:0!important;
    padding:10px 14px!important;
    box-sizing:border-box!important;
  }

  .snfd-config-carousel .snfd-posts-carousel {
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .snfd-config-carousel .snfd-posts-carousel::-webkit-scrollbar {
    display:none!important;
  }

  .snfd-config-carousel .slick-list,
  .snfd-config-carousel .slick-track {
    display:contents!important;
    width:auto!important;
    transform:none!important;
  }

  .snfd-config-carousel .slick-item,
  .snfd-config-carousel .slick-slide {
    display:block!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  .snfd-config-carousel .snfd-carousel-card {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-config-carousel .snfd-carousel-media {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:16/10!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#111!important;
  }

  .snfd-config-carousel .snfd-carousel-media img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .snfd-config-carousel .snfd-carousel-copy {
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    margin:0!important;
    padding:14px 16px 16px!important;
    box-sizing:border-box!important;
    color:#0b1034!important;
    background:#fff!important;
  }

  .snfd-config-carousel .snfd-carousel-copy h3 {
    margin:0 0 7px!important;
    font-size:25px!important;
    line-height:1.07!important;
    letter-spacing:-.025em!important;
  }

  .snfd-config-carousel .snfd-carousel-copy h3 a {
    color:#0b1034!important;
    text-shadow:none!important;
  }

  .snfd-config-carousel .snfd-carousel-copy .snfd-mini-meta {
    color:#666b77!important;
    font-size:11px!important;
  }


  /* -------------------------------------------------------
     NEWS BLOCK
     Small photo left, title/meta right.
     ------------------------------------------------------- */
  .snfd-config-single {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  .snfd-config-single .snfd-section-titlebar {
    margin:0!important;
    padding:10px 14px!important;
  }

  .snfd-news-list {
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .snfd-news-row {
    display:flex!important;
    align-items:stretch!important;
    gap:12px!important;
    width:100%!important;
    min-height:92px!important;
    margin:0!important;
    padding:10px 12px!important;
    box-sizing:border-box!important;
    border:0!important;
    border-bottom:1px solid #e8e8e8!important;
    background:#fff!important;
  }

  .snfd-news-row:last-child {
    border-bottom:0!important;
  }

  .snfd-news-image {
    position:relative!important;
    display:block!important;
    flex:0 0 116px!important;
    width:116px!important;
    height:78px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#111!important;
  }

  .snfd-news-image img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .snfd-news-copy {
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    flex-direction:column!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
  }

  .snfd-news-copy h3 {
    margin:0 0 5px!important;
    font-size:17px!important;
    line-height:1.13!important;
    letter-spacing:-.015em!important;
  }

  .snfd-news-copy h3 a {
    color:#0b1034!important;
    text-decoration:none!important;
  }

  .snfd-news-copy .snfd-mini-meta {
    margin:0!important;
    color:#707582!important;
    font-size:10px!important;
    line-height:1.25!important;
  }

  /* User requested compact news rows: no excerpt here. */
  .snfd-news-copy p {
    display:none!important;
  }


  /* -------------------------------------------------------
     SERIE A / B / C / D
     Lead image + compact rows underneath.
     ------------------------------------------------------- */
  .snfd-series-pair,
  .snfd-series-block {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  .snfd-series-block .snfd-section-titlebar {
    margin:0!important;
    padding:10px 14px!important;
  }

  .snfd-series-stack {
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .snfd-series-lead {
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
  }

  .snfd-series-lead > a {
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:16/9!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-series-lead img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .snfd-series-lead .snfd-overlay {
    position:absolute!important;
    inset:36% 0 0!important;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,0),
      rgba(0,0,0,.20) 30%,
      rgba(0,0,0,.88) 100%
    )!important;
    z-index:1!important;
  }

  .snfd-series-lead h3 {
    position:absolute!important;
    left:15px!important;
    right:15px!important;
    bottom:13px!important;
    z-index:2!important;
    margin:0!important;
    color:#fff!important;
    font-size:23px!important;
    line-height:1.07!important;
    letter-spacing:-.02em!important;
    text-shadow:0 1px 5px rgba(0,0,0,.85)!important;
  }

  .snfd-series-small {
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-bottom:1px solid #e8e8e8!important;
    background:#fff!important;
  }

  .snfd-series-small > a {
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    min-height:92px!important;
    padding:10px 12px!important;
    box-sizing:border-box!important;
    text-decoration:none!important;
  }

  .snfd-series-thumb {
    position:relative!important;
    flex:0 0 116px!important;
    width:116px!important;
    height:78px!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-series-thumb img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
  }

  .snfd-series-small h4 {
    margin:0 0 5px!important;
    color:#0b1034!important;
    font-size:17px!important;
    line-height:1.13!important;
    letter-spacing:-.015em!important;
  }

  .snfd-series-small .snfd-mini-meta {
    color:#707582!important;
    font-size:10px!important;
    line-height:1.25!important;
  }
}

/* SNFD 0.6.76 - continue vertical mobile snap beyond under-page 5 */
@media (max-width:767px){
  #primary>.snfd-config-widget,
  #primary>.snfd-series-pair,
  #primary .snfd-config-carousel,
  #primary .snfd-config-single,
  #primary .snfd-series-block{
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  #primary .snfd-config-carousel .snfd-posts-carousel{
    scroll-snap-type:x mandatory!important;
  }

  .snfd-under-paged + .snfd-main-grid,
  #primary{
    scroll-snap-align:none!important;
  }
}


/* ==========================================================
   SNFD 0.6.77 - MOBILE CALCIOMERCATO FULL-PAGE SLIDER
   ========================================================== */
@media (max-width: 767px) {
  .snfd-mobile-calciomercato {
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#080808!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  @supports not (height:100dvh) {
    .snfd-mobile-calciomercato {
      height:100svh!important;
      min-height:100svh!important;
    }
  }

  .snfd-mobile-calciomercato .snfd-section-titlebar {
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:6!important;
    margin:0!important;
    padding:14px 18px 38px!important;
    background:linear-gradient(to bottom,rgba(0,0,0,.72),rgba(0,0,0,0))!important;
    pointer-events:none!important;
  }

  .snfd-mobile-calciomercato .snfd-section-titlebar h2 {
    margin:0!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.1!important;
    font-weight:800!important;
    text-shadow:0 1px 4px rgba(0,0,0,.75)!important;
  }

  .snfd-mobile-calciomercato .snfd-posts-carousel {
    position:relative!important;
    flex:1 1 auto!important;
    display:flex!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    background:#080808!important;
  }

  .snfd-mobile-calciomercato .snfd-posts-carousel::-webkit-scrollbar {
    display:none!important;
  }

  .snfd-mobile-calciomercato .slick-list,
  .snfd-mobile-calciomercato .slick-track {
    display:contents!important;
    transform:none!important;
  }

  .snfd-mobile-calciomercato .slick-item,
  .snfd-mobile-calciomercato .slick-slide {
    position:relative!important;
    display:block!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    height:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-card {
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#080808!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-media {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    aspect-ratio:auto!important;
    margin:0!important;
    padding:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#111!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-media img {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:0!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-media::after {
    content:""!important;
    position:absolute!important;
    inset:34% 0 0!important;
    z-index:1!important;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,.18) 28%,
      rgba(0,0,0,.92) 100%
    )!important;
    pointer-events:none!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-copy {
    position:absolute!important;
    left:22px!important;
    right:22px!important;
    bottom:134px!important;
    z-index:4!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    background:transparent!important;
    pointer-events:none!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-copy h3 {
    margin:0 0 9px!important;
    font-size:clamp(31px,8vw,43px)!important;
    line-height:1.01!important;
    letter-spacing:-.035em!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-copy h3 a {
    color:#fff!important;
    text-shadow:0 2px 8px rgba(0,0,0,.72)!important;
    pointer-events:auto!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-copy .snfd-mini-meta {
    color:#f2f2f2!important;
    font-size:12px!important;
    line-height:1.3!important;
  }

  /* Semi-transparent horizontal affordance arrows over the image. */
  .snfd-mobile-calciomercato .snfd-carousel-controls {
    position:absolute!important;
    top:50%!important;
    left:0!important;
    right:0!important;
    transform:translateY(-50%)!important;
    z-index:7!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    padding:0 10px!important;
    box-sizing:border-box!important;
    pointer-events:none!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-controls button {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.28)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.30)!important;
    color:rgba(255,255,255,.90)!important;
    font:400 32px/1 Arial,sans-serif!important;
    text-shadow:0 1px 3px rgba(0,0,0,.55)!important;
    box-shadow:0 2px 8px rgba(0,0,0,.16)!important;
    backdrop-filter:blur(2px)!important;
    -webkit-backdrop-filter:blur(2px)!important;
    pointer-events:auto!important;
    cursor:pointer!important;
  }

  .snfd-mobile-calciomercato .snfd-carousel-controls button:active {
    background:rgba(0,0,0,.48)!important;
    transform:scale(.96)!important;
  }
}


/* SNFD 0.6.78 - Calciomercato true edge-to-edge mobile slider */
@media (max-width:767px) {
  /* Break Calciomercato out of any inherited main-column/shell gutters. */
  #primary .snfd-mobile-calciomercato {
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  #primary .snfd-mobile-calciomercato .snfd-posts-carousel,
  #primary .snfd-mobile-calciomercato .slick-item,
  #primary .snfd-mobile-calciomercato .slick-slide,
  #primary .snfd-mobile-calciomercato .snfd-carousel-card,
  #primary .snfd-mobile-calciomercato .snfd-carousel-media {
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  #primary .snfd-mobile-calciomercato .snfd-carousel-media img {
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
}


/* SNFD 0.6.87 - opening image crop only, exact v0.6.80 base */
@media (max-width: 767px) {
  .snfd-hero-primary .snfd-hero-media {
    overflow: hidden !important;
  }

  .snfd-hero-primary .snfd-hero-media > img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    min-height:100%!important;
    max-height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:scale(1.45)!important;
    transform-origin:center center!important;
  }
}


/* SNFD 0.6.88 - skin-aware mobile snap offset only */
@media (max-width: 767px) {
  body.gmp-skin-mob {
    scroll-padding-top: 100px !important;
  }
}

/* SNFD 0.6.89 - root scroller skin-aware snap offset */
@media (max-width: 767px) {
  html:has(body.gmp-skin-mob) {
    scroll-padding-top: 100px !important;
  }
}


/* SNFD 0.6.90 - reveal sidebar + footer after Serie D */
@media (max-width: 767px) {

  /* Force the existing sidebar/footer back into the mobile document flow. */
  #secondary.snfd-sidebar,
  .snfd-footer,
  .snfd-primary-footer,
  .snfd-secondary-footer,
  footer {
    display: block !important;
    visibility: visible !important;
  }

  /* Keep them in normal flow and reachable after the primary column. */
  #secondary.snfd-sidebar,
  .snfd-footer,
  footer {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  /* Give the sidebar/footer valid vertical snap destinations
     without redesigning their internal widgets yet. */
  #secondary.snfd-sidebar,
  .snfd-footer,
  footer {
    scroll-snap-align: start !important;
    scroll-snap-stop: normal !important;
  }

  /* Do not let the parent grid clip the sidebar/footer transition. */
  .snfd-main-grid,
  #primary.snfd-main-col,
  #secondary.snfd-sidebar,
  .snfd-footer {
    overflow: visible !important;
  }
}


/* ==========================================================
   SNFD 0.6.91 - TARGETED MOBILE SIDEBAR LANDSCAPE SLIDERS
   Calciomercato Live / Mi Manda Monastra / Ferramenta e Colori
   ========================================================== */
@media (max-width:767px) {

  #secondary .snfd-mobile-sidebar-slider {
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  #secondary .snfd-mobile-sidebar-rail {
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }

  #secondary .snfd-mobile-sidebar-rail::-webkit-scrollbar {
    display:none!important;
  }

  #secondary .snfd-mobile-sidebar-rail .slick-list,
  #secondary .snfd-mobile-sidebar-rail .slick-track {
    display:contents!important;
    width:auto!important;
    max-width:none!important;
    transform:none!important;
  }

  #secondary .snfd-mobile-sidebar-rail > .slick-slide,
  #secondary .snfd-mobile-sidebar-rail > .slick-item,
  #secondary .snfd-mobile-sidebar-rail > .featured-article,
  #secondary .snfd-mobile-sidebar-rail > article {
    display:block!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  /* Override the old 4/5 mobile rule ONLY in these three sliders. */
  #secondary .snfd-mobile-sidebar-slider .data-widget-slide,
  #secondary .snfd-mobile-sidebar-slider .data-bg-featured,
  #secondary .snfd-mobile-sidebar-slider .featured-article-wrapper,
  #secondary .snfd-mobile-sidebar-slider .snfd-sidebar-feature,
  #secondary .snfd-mobile-sidebar-slider .snfd-sidebar-feature > a {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#111!important;
  }

  #secondary .snfd-mobile-sidebar-slider .data-widget-slide img,
  #secondary .snfd-mobile-sidebar-slider .data-bg-featured img,
  #secondary .snfd-mobile-sidebar-slider .featured-article-wrapper img,
  #secondary .snfd-mobile-sidebar-slider .snfd-sidebar-feature img {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:0!important;
  }

  /* Monastra title over the landscape photo. */
  #secondary .snfd-mobile-monastra .snfd-sidebar-feature h3 {
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:12px!important;
    z-index:4!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1.12!important;
    text-shadow:0 1px 5px rgba(0,0,0,.9)!important;
  }

  #secondary .snfd-mobile-monastra .snfd-sidebar-feature > a:after {
    content:""!important;
    position:absolute!important;
    inset:40% 0 0!important;
    z-index:2!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.86))!important;
    pointer-events:none!important;
  }

  /* Existing CoverNews captions stay readable over the image. */
  #secondary .snfd-mobile-sidebar-slider .slider-figcaption,
  #secondary .snfd-mobile-sidebar-slider figcaption {
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:4!important;
    padding:14px!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.86))!important;
  }

  /* Small semi-transparent arrows centered on photo. */
  #secondary .snfd-mobile-sidebar-controls {
    position:absolute!important;
    top:50%!important;
    left:0!important;
    right:0!important;
    z-index:30!important;
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    padding:0 9px!important;
    transform:translateY(-50%)!important;
    box-sizing:border-box!important;
    pointer-events:none!important;
  }

  #secondary .snfd-mobile-sidebar-controls button {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.30)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.30)!important;
    color:rgba(255,255,255,.92)!important;
    font:400 27px/1 Arial,sans-serif!important;
    box-shadow:0 1px 6px rgba(0,0,0,.18)!important;
    pointer-events:auto!important;
  }
}


/* ==========================================================
   SNFD 0.6.92 - SIDEBAR SLIDER CORRECTIONS
   ========================================================== */
@media (max-width:767px) {

  /* ---- TITLES: one underline only ---- */
  #secondary .snfd-mobile-sidebar-slider > .widget-title,
  #secondary .snfd-mobile-sidebar-slider > h2,
  #secondary .snfd-mobile-sidebar-slider > h3,
  #secondary .snfd-mobile-sidebar-slider > h4,
  #secondary .snfd-mobile-sidebar-slider > .snfd-section-titlebar {
    position:relative!important;
    margin:0!important;
    padding:12px 14px 11px!important;
    border:0!important;
    background:#fff!important;
  }

  #secondary .snfd-mobile-sidebar-slider > .snfd-section-titlebar {
    border-top:0!important;
  }

  #secondary .snfd-mobile-sidebar-slider > .widget-title::before,
  #secondary .snfd-mobile-sidebar-slider > .widget-title span::before,
  #secondary .snfd-mobile-sidebar-slider > .widget-title span::after,
  #secondary .snfd-mobile-sidebar-slider > h2::before,
  #secondary .snfd-mobile-sidebar-slider > h3::before,
  #secondary .snfd-mobile-sidebar-slider > h4::before,
  #secondary .snfd-mobile-sidebar-slider .header-after,
  #secondary .snfd-mobile-sidebar-slider .header-after1 {
    content:none!important;
    display:none!important;
    border:0!important;
    background:none!important;
  }

  #secondary .snfd-mobile-sidebar-slider > .widget-title::after,
  #secondary .snfd-mobile-sidebar-slider > h2::after,
  #secondary .snfd-mobile-sidebar-slider > h3::after,
  #secondary .snfd-mobile-sidebar-slider > h4::after,
  #secondary .snfd-mobile-sidebar-slider > .snfd-section-titlebar h2::after {
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:14px!important;
    bottom:3px!important;
    width:44px!important;
    height:3px!important;
    margin:0!important;
    background:var(--sn-orange)!important;
    border:0!important;
  }

  /* Avoid the section-titlebar + h2 both drawing an underline. */
  #secondary .snfd-mobile-sidebar-slider > .snfd-section-titlebar::after {
    content:none!important;
    display:none!important;
  }


  /* ---- FULL BLEED RAIL: no side padding around the photos ---- */
  #secondary .snfd-mobile-sidebar-slider {
    overflow:visible!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail {
    position:relative!important;
    display:flex!important;
    width:100vw!important;
    max-width:100vw!important;
    min-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail::-webkit-scrollbar {
    display:none!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail .slick-list,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail .slick-track {
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    transform:none!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail > .slick-slide,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail > .slick-item,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail > .featured-article,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail > .spotlight-post,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail > article {
    position:relative!important;
    display:block!important;
    flex:0 0 100vw!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    overflow:hidden!important;
  }

  /* ---- LANDSCAPE IMAGE, NEVER FULL-PAGE HEIGHT ---- */
  #secondary .snfd-mobile-sidebar-slider .data-widget-slide,
  #secondary .snfd-mobile-sidebar-slider .data-bg-featured,
  #secondary .snfd-mobile-sidebar-slider .featured-article-wrapper,
  #secondary .snfd-mobile-sidebar-slider .snfd-sidebar-feature,
  #secondary .snfd-mobile-sidebar-slider .snfd-sidebar-feature > a,
  #secondary .snfd-mobile-sidebar-slider figure.categorised-article {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#111!important;
  }

  #secondary .snfd-mobile-sidebar-slider img,
  #secondary .snfd-mobile-sidebar-slider .data-widget-slide img,
  #secondary .snfd-mobile-sidebar-slider .data-bg-featured img,
  #secondary .snfd-mobile-sidebar-slider figure.categorised-article img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:0!important;
  }


  /* ---- ARROWS: relative to slider/photo, exactly halfway down image ---- */
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-rail {
    position:relative!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls {
    position:sticky!important;
    left:0!important;
    right:auto!important;
    top:50%!important;
    z-index:50!important;
    flex:0 0 0!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls button {
    position:absolute!important;
    top:calc(50vw * 9 / 16)!important;
    transform:translateY(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.35)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.30)!important;
    color:rgba(255,255,255,.92)!important;
    font:400 27px/1 Arial,sans-serif!important;
    pointer-events:auto!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls button:first-child {
    left:9px!important;
  }

  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls button:last-child {
    left:calc(100vw - 43px)!important;
  }

  /* Hide only the legacy navigation controls in these tagged sliders,
     so one arrow system remains visible. */
  #secondary .snfd-mobile-sidebar-slider .slide-icon-1,
  #secondary .snfd-mobile-sidebar-slider .slick-arrow {
    display:none!important;
  }

  /* But never hide our new controls. */
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls,
  #secondary .snfd-mobile-sidebar-slider .snfd-mobile-sidebar-controls button {
    visibility:visible!important;
  }

  /* Mi Manda Monastra: title over photo. */
  #secondary .snfd-mobile-monastra .snfd-sidebar-feature h3 {
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:13px!important;
    z-index:6!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1.12!important;
    text-shadow:0 1px 5px rgba(0,0,0,.9)!important;
  }

  #secondary .snfd-mobile-monastra .snfd-sidebar-feature > a::after {
    content:""!important;
    position:absolute!important;
    inset:38% 0 0!important;
    z-index:3!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.88))!important;
    pointer-events:none!important;
  }
}


/* ==========================================================
   SNFD 0.6.93 - AUTHORITATIVE SIDEBAR SLIDER VISUALS
   ========================================================== */
@media (max-width:767px) {

  #secondary .snfd-mobile-sidebar-authoritative {
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:#fff!important;
  }

  /* One clean orange underline only. */
  #secondary .snfd-mobile-sidebar-authoritative > .widget-title,
  #secondary .snfd-mobile-sidebar-authoritative > h2,
  #secondary .snfd-mobile-sidebar-authoritative > h3,
  #secondary .snfd-mobile-sidebar-authoritative > h4,
  #secondary .snfd-mobile-sidebar-authoritative > .snfd-section-titlebar {
    position:relative!important;
    margin:0!important;
    padding:12px 14px 14px!important;
    border:0!important;
    background:#fff!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative .header-after,
  #secondary .snfd-mobile-sidebar-authoritative .header-after1,
  #secondary .snfd-mobile-sidebar-authoritative > .widget-title span::after,
  #secondary .snfd-mobile-sidebar-authoritative > .widget-title span::before {
    display:none!important;
    content:none!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative > .widget-title::after,
  #secondary .snfd-mobile-sidebar-authoritative > h2::after,
  #secondary .snfd-mobile-sidebar-authoritative > h3::after,
  #secondary .snfd-mobile-sidebar-authoritative > h4::after,
  #secondary .snfd-mobile-sidebar-authoritative > .snfd-section-titlebar h2::after {
    content:""!important;
    position:absolute!important;
    left:14px!important;
    bottom:4px!important;
    width:44px!important;
    height:3px!important;
    background:var(--sn-orange)!important;
    border:0!important;
  }

  /* The actual rail is full bleed: no side padding. */
  #secondary .snfd-mobile-sidebar-authoritative-rail {
    position:relative!important;
    display:flex!important;
    width:100vw!important;
    max-width:100vw!important;
    min-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
    gap:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    background:#fff!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative-rail::-webkit-scrollbar {
    display:none!important;
  }

  #secondary .snfd-mobile-sidebar-slide {
    position:relative!important;
    display:block!important;
    flex:0 0 100vw!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    float:none!important;
    overflow:hidden!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    background:#111!important;
  }

  /* Force landscape geometry on every slide. */
  #secondary .snfd-mobile-sidebar-slide,
  #secondary .snfd-mobile-sidebar-slide > a,
  #secondary .snfd-mobile-sidebar-slide figure,
  #secondary .snfd-mobile-sidebar-slide .featured-article-wrapper,
  #secondary .snfd-mobile-sidebar-slide .data-widget-slide,
  #secondary .snfd-mobile-sidebar-slide .data-bg-featured {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
  }

  #secondary .snfd-mobile-sidebar-slide img {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:0!important;
  }

  /* Caption/title over the lower part of the photo. */
  #secondary .snfd-mobile-sidebar-slide .slider-figcaption,
  #secondary .snfd-mobile-sidebar-slide figcaption,
  #secondary .snfd-mobile-sidebar-slide h3 {
    z-index:5!important;
  }

  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-slide h3 {
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:13px!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1.12!important;
    text-shadow:0 1px 5px rgba(0,0,0,.9)!important;
  }

  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-slide > a::after {
    content:""!important;
    position:absolute!important;
    inset:38% 0 0!important;
    z-index:3!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.88))!important;
    pointer-events:none!important;
  }

  /* New controls live INSIDE the rail and are centered on the photo. */
  #secondary .snfd-mobile-sidebar-authoritative-controls {
    position:sticky!important;
    left:0!important;
    top:0!important;
    flex:0 0 0!important;
    width:0!important;
    height:0!important;
    z-index:80!important;
    pointer-events:none!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative-controls button {
    position:absolute!important;
    top:calc(50vw * 9 / 16)!important;
    transform:translateY(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.40)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.32)!important;
    color:#fff!important;
    font:400 28px/1 Arial,sans-serif!important;
    box-shadow:0 1px 6px rgba(0,0,0,.22)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative-controls button:first-child {
    left:10px!important;
  }

  #secondary .snfd-mobile-sidebar-authoritative-controls button:last-child {
    left:calc(100vw - 46px)!important;
  }
}


/* ==========================================================
   SNFD 0.6.94 - VISIBLE SLIDER ARROWS + ORIGINAL PAGELLE
   ========================================================== */
@media (max-width:767px) {

  /* -------------------------------------------------------
     Slider controls: overlay full widget width, visibly above image.
     JS sets exact vertical midpoint from first slide geometry.
     ------------------------------------------------------- */
  #secondary .snfd-slider-live,
  #secondary .snfd-slider-monastra,
  #secondary .snfd-mobile-calciomercatolive,
  #secondary .snfd-mobile-monastra {
    position:relative!important;
  }

  #secondary .snfd-slider-live .snfd-mobile-sidebar-authoritative-controls,
  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-authoritative-controls,
  #secondary .snfd-mobile-calciomercatolive .snfd-mobile-sidebar-controls,
  #secondary .snfd-mobile-monastra .snfd-mobile-sidebar-controls {
    position:absolute!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:0!important;
    z-index:999!important;
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    padding:0 10px!important;
    margin:0!important;
    overflow:visible!important;
    pointer-events:none!important;
    transform:none!important;
  }

  #secondary .snfd-slider-live .snfd-mobile-sidebar-authoritative-controls button,
  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-authoritative-controls button,
  #secondary .snfd-mobile-calciomercatolive .snfd-mobile-sidebar-controls button,
  #secondary .snfd-mobile-monastra .snfd-mobile-sidebar-controls button {
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.55)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.42)!important;
    color:#fff!important;
    font:400 30px/1 Arial,sans-serif!important;
    box-shadow:0 2px 8px rgba(0,0,0,.30)!important;
    transform:translateY(-50%)!important;
    pointer-events:auto!important;
  }

  /* -------------------------------------------------------
     PAGELLE: restore original CoverNews 5-news vertical block.
     Never treat it as a horizontal/full-bleed slider.
     ------------------------------------------------------- */
  #secondary [data-snfd-pagelle-original="1"] {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel .slick-list,
  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel .slick-track {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    transform:none!important;
    overflow:visible!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel .slick-slide,
  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel .slick-item,
  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel .carousel-image {
    display:block!important;
    float:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 0 15px!important;
    padding:0!important;
    scroll-snap-align:none!important;
  }

  /* Preserve original small-image-left / title-right Pagelle geometry. */
  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper .no-gutter-col {
    display:flex!important;
    align-items:center!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figure.featured-article {
    position:relative!important;
    width:35%!important;
    max-width:165px!important;
    height:auto!important;
    aspect-ratio:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figure .data-bg-featured {
    position:relative!important;
    width:100%!important;
    height:96px!important;
    min-height:96px!important;
    aspect-ratio:auto!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figure img {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figcaption {
    position:relative!important;
    width:66.66%!important;
    padding:0 15px!important;
    background:transparent!important;
    color:inherit!important;
  }

  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figcaption .article-title,
  #secondary [data-snfd-pagelle-original="1"] .banner-trending-posts-wrapper figcaption .article-title a,
  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel h3.article-title,
  #secondary [data-snfd-pagelle-original="1"] .trending-posts-vertical-carousel h3.article-title a {
    color:var(--sn-navy)!important;
    text-shadow:none!important;
    font-size:15px!important;
    line-height:1.35!important;
  }
}


/* SNFD 0.6.95 - unwanted sidebar widget must never render on mobile */
@media (max-width:767px) {
  #secondary #covernews_posts_slider-2 {
    display:none!important;
  }
}


/* SNFD 0.6.97 - spacing + preserve compact Odds rendering */
@media (max-width:767px) {

  /* Exactly 10px between Mi Manda Monastra and Calciomercato Live. */
  #secondary .snfd-mobile-monastra {
    margin-bottom:10px!important;
  }

  /* The moved Odds widget keeps its own internal compact graphics.
     We only remove outer sidebar spacing around its wrapper. */
  #secondary .snfd-mobile-odds-after-live {
    margin-top:0!important;
    margin-bottom:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* SNFD 0.6.98 - compact Odds wrapper geometry only */
@media (max-width:767px) {
  #secondary .snfd-mobile-odds-after-live {
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:250px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    background:#fff!important;
  }

  #secondary .snfd-mobile-odds-after-live .odds2025container,
  #secondary .snfd-mobile-odds-after-live .odds-light-wrap {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  #secondary .snfd-mobile-odds-after-live .odds-light-wrap img,
  #secondary .snfd-mobile-odds-after-live .odds-light img {
    position:static!important;
    inset:auto!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    object-fit:contain!important;
    transform:none!important;
  }
}


/* ==========================================================
   SNFD 0.7.00 - FINAL SIDEBAR TITLE + IMAGE CONSISTENCY
   Base: 0.6.99
   ========================================================== */
@media (max-width:767px) {

  /* -------------------------------------------------------
     1) SIDEBAR TITLES: NEVER TWO DECORATIVE LINES.
     Keep exactly one orange underline per widget heading.
     ------------------------------------------------------- */
  #secondary .widget-title,
  #secondary h4.widget-title,
  #secondary .snfd-section-titlebar {
    border-top:0!important;
    border-bottom:0!important;
    background-image:none!important;
  }

  #secondary .widget-title .header-after,
  #secondary .widget-title .header-after1,
  #secondary .widget-title span::before,
  #secondary .widget-title span::after,
  #secondary .em-title-subtitle-wrap .widget-title::before,
  #secondary .em-title-subtitle-wrap .widget-title::after,
  #secondary .snfd-section-titlebar::before,
  #secondary .snfd-section-titlebar::after {
    content:none!important;
    display:none!important;
    border:0!important;
    background:none!important;
  }

  /* One and only one line. */
  #secondary .widget-title,
  #secondary h4.widget-title,
  #secondary .snfd-section-titlebar h2 {
    position:relative!important;
  }

  #secondary .widget-title::after,
  #secondary h4.widget-title::after,
  #secondary .snfd-section-titlebar h2::after {
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    bottom:0!important;
    width:44px!important;
    height:3px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:var(--sn-orange)!important;
  }

  /* -------------------------------------------------------
     2) PAGELLE / HIGHLIGHTS / CHAMPIONS:
     images must fill their canvas exactly like Serie A/B/C/D.
     ------------------------------------------------------- */

  /* PAGELLE: preserve the original 5-news layout, but make every
     thumbnail completely fill its existing image canvas. */
  #secondary [data-snfd-pagelle-original="1"] figure.featured-article,
  #secondary [data-snfd-pagelle-original="1"] .data-bg-featured {
    overflow:hidden!important;
    background:#111!important;
  }

  #secondary [data-snfd-pagelle-original="1"] figure.featured-article img,
  #secondary [data-snfd-pagelle-original="1"] .data-bg-featured img,
  #secondary [data-snfd-pagelle-original="1"] img.attachment-thumbnail,
  #secondary [data-snfd-pagelle-original="1"] img.wp-post-image {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    max-width:none!important;
    min-height:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  /* Highlights + Champions League use CoverNews grid/double-category
     widgets. Their lead card now follows the exact Serie A/B/C/D
     lead-image grammar: full canvas, 16:9, cover, no internal gutters. */
  #secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type,
  #secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
  }

  #secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type figure.categorised-article,
  #secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type figure.categorised-article,
  #secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised,
  #secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised {
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#111!important;
  }

  #secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type img,
  #secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type img,
  #secondary .covernews_Posts_Grid .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img,
  #secondary .covernews_double_col_categorised_posts .full-plus-list .spotlight-post:first-of-type .data-bg-categorised img {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    max-width:none!important;
    min-height:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:0!important;
  }
}


/* ==========================================================
   SNFD 0.7.02 - DOUBLE CATEGORIES: ONE RENDERER EVERYWHERE
   Highlights + Champions now use the exact same .snfd-series-* markup
   as Serie A/B/C/D. Sidebar only changes the stacking/spacing.
   ========================================================== */
@media (max-width:767px) {
  #secondary .snfd-config-double {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  #secondary .snfd-config-double > .snfd-series-block {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  /* The two sidebar categories are stacked, never attached. */
  #secondary .snfd-config-double > .snfd-series-block + .snfd-series-block {
    margin-top:28px!important;
  }

  /* Give the whole Double Categories widget breathing room from neighbours. */
  #secondary .snfd-config-double {
    margin-top:24px!important;
    margin-bottom:28px!important;
  }

  /* One title rule only: no navy top rule, one orange underline. */
  #secondary .snfd-series-block .snfd-section-titlebar {
    position:relative!important;
    margin:0!important;
    padding:10px 14px!important;
    border:0!important;
    background:#fff!important;
  }

  #secondary .snfd-series-block .snfd-section-titlebar::before,
  #secondary .snfd-series-block .snfd-section-titlebar::after {
    content:none!important;
    display:none!important;
  }

  #secondary .snfd-series-block .snfd-section-titlebar h2 {
    position:relative!important;
    display:block!important;
    margin:0!important;
    padding:0 0 8px!important;
    color:var(--sn-navy)!important;
  }

  #secondary .snfd-series-block .snfd-section-titlebar h2::before {
    content:none!important;
    display:none!important;
  }

  #secondary .snfd-series-block .snfd-section-titlebar h2::after {
    content:""!important;
    position:absolute!important;
    left:0!important;
    bottom:0!important;
    width:44px!important;
    height:3px!important;
    background:var(--sn-orange)!important;
    border:0!important;
  }
}


/* ==========================================================
   SNFD 0.7.21 - CLEAN RESTART BASELINE
   - Desktop hero positioning is self-contained.
   - Sidebar Double Categories stack at every viewport width.
   - Targeted sidebar sliders work without CoverNews JS.
   - Mobile-only ad slots are materialized only on mobile.
   ========================================================== */

/* Sidebar Double Categories are two independent vertical sections everywhere. */
#secondary .snfd-config-double--sidebar{
  display:block;
  width:100%;
  max-width:100%;
  margin:24px 0 28px;
  padding:0;
}
#secondary .snfd-config-double--sidebar > .snfd-series-block{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  padding:0;
}
#secondary .snfd-config-double--sidebar > .snfd-series-block + .snfd-series-block{
  margin-top:28px;
}

/* Desktop/tablet sidebar slider geometry. Mobile keeps the mature 0.6.93/0.6.94 rules. */
@media (min-width:768px){
  #secondary .snfd-mobile-sidebar-authoritative{
    position:relative;
    width:100%;
    max-width:100%;
    overflow:visible;
  }

  #secondary .snfd-mobile-sidebar-authoritative-rail{
    position:relative;
    display:flex;
    width:100%;
    max-width:100%;
    min-width:0;
    margin:0;
    padding:0;
    gap:0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  #secondary .snfd-mobile-sidebar-authoritative-rail::-webkit-scrollbar{display:none}

  #secondary .snfd-mobile-sidebar-authoritative-rail > .snfd-mobile-sidebar-slide{
    position:relative;
    display:block;
    flex:0 0 100%;
    width:100%;
    min-width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    float:none;
    overflow:hidden;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    box-sizing:border-box;
  }

  #secondary .snfd-slider-live .snfd-mobile-sidebar-slide,
  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-slide,
  #secondary .snfd-slider-ferramenta .snfd-mobile-sidebar-slide{
    aspect-ratio:16/9;
    background:#111;
  }

  #secondary .snfd-mobile-sidebar-slide > a,
  #secondary .snfd-mobile-sidebar-slide figure,
  #secondary .snfd-mobile-sidebar-slide .featured-article-wrapper,
  #secondary .snfd-mobile-sidebar-slide .data-widget-slide,
  #secondary .snfd-mobile-sidebar-slide .data-bg-featured{
    position:relative;
    display:block;
    width:100%;
    height:100%;
    min-height:0;
    margin:0;
    padding:0;
    overflow:hidden;
  }

  #secondary .snfd-mobile-sidebar-slide img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
  }

  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-slide h3{
    position:absolute;
    left:14px;
    right:14px;
    bottom:13px;
    z-index:5;
    margin:0;
    color:#fff;
    font-size:20px;
    line-height:1.12;
    text-shadow:0 1px 5px rgba(0,0,0,.9);
  }
  #secondary .snfd-slider-monastra .snfd-mobile-sidebar-slide > a::after{
    content:"";
    position:absolute;
    inset:38% 0 0;
    z-index:3;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.88));
    pointer-events:none;
  }

  #secondary .snfd-mobile-sidebar-authoritative-controls{
    position:absolute;
    left:0;
    right:0;
    width:100%;
    height:0;
    z-index:80;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0 10px;
    margin:0;
    overflow:visible;
    pointer-events:none;
    box-sizing:border-box;
  }
  #secondary .snfd-mobile-sidebar-authoritative-controls button{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    min-width:36px;
    padding:0;
    border:1px solid rgba(255,255,255,.55);
    border-radius:50%;
    background:rgba(0,0,0,.42);
    color:#fff;
    font:400 28px/1 Arial,sans-serif;
    box-shadow:0 2px 8px rgba(0,0,0,.30);
    transform:translateY(-50%);
    pointer-events:auto;
    cursor:pointer;
  }
}


/* SNFD 0.7.38 - stable sidebar cards: one server-rendered story, no slider DOM mutation. */
#secondary .snfd-static-sidebar-card{position:relative;width:100%;max-width:100%;overflow:visible}
#secondary .snfd-static-sidebar-card .widget-title a,
#secondary .snfd-mobile-monastra-static .snfd-section-titlebar h2 a{color:inherit;text-decoration:none}
#secondary .snfd-mobile-monastra-static .snfd-sidebar-feature{margin:0}
#secondary .snfd-mobile-monastra-static .snfd-sidebar-feature>a{position:relative;display:block;overflow:hidden}
#secondary .snfd-mobile-monastra-static .snfd-sidebar-feature img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}


/* SNFD 0.7.40 - regression-safe desktop/mobile geometry. */
@media (min-width:768px){
  /* Desktop: flatten the mobile two-story wrappers, but keep all ten stories
     first in normal row-major grid order. Mobile-only ad placeholders are
     ordered after the editorial cards so they can never create holes. */
  .snfd-under-grid.snfd-under-paged > .snfd-under-page{display:contents;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-card{order:0;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-ad{
    order:100;
    grid-column:1 / -1;
    min-height:0;
    margin:0;
    padding:0;
    overflow:visible;
  }
}

/* Static sidebar widgets: one story only, no carousel/slider geometry. */
#secondary .snfd-static-sidebar-card .snfd-mobile-sidebar-controls,
#secondary .snfd-static-sidebar-card .snfd-mobile-sidebar-authoritative-controls,
#secondary .snfd-static-sidebar-card .slide-icon,
#secondary .snfd-static-sidebar-card button.slick-prev,
#secondary .snfd-static-sidebar-card button.slick-next{display:none!important;}
#secondary .snfd-static-sidebar-card .slick-track{transform:none!important;width:100%!important;}
#secondary .snfd-static-sidebar-card .slick-slide{display:none!important;float:none!important;width:100%!important;height:auto!important;}
#secondary .snfd-static-sidebar-card .slick-slide:not(.slick-cloned):first-of-type{display:block!important;}
#secondary .snfd-static-sidebar-card .featured-article-wrapper:not(:first-of-type),
#secondary .snfd-static-sidebar-card .featured-article:not(:first-of-type),
#secondary .snfd-static-sidebar-card article:not(:first-of-type){display:none!important;}


/* SNFD 0.7.43 - desktop must never reserve geometry for mobile-only GMP slots.
   Keep provider nodes in the DOM, but let empty slots collapse naturally. */
@media (min-width:768px){
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-ad{
    display:contents!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
  #gmp-middlemobile_home,
  #gmp-bottommobile_home{
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
}

/* SNFD 0.7.44 - point fixes: desktop 10-story grid + native sidebar sliders. */
@media (min-width:768px){
  /* The two-story wrappers are mobile-only grouping. Desktop flattens them.
     Ad wrappers remain real grid items ordered AFTER the ten stories; they are
     never display:contents, so their inner GMP nodes cannot become grid cells. */
  .snfd-under-grid.snfd-under-paged > .snfd-under-page{display:contents!important;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-card{order:0!important;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-ad{
    display:block!important;
    order:100!important;
    grid-column:1 / -1!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-ad:empty{height:0!important;}
  #gmp-middlemobile_home,
  #gmp-bottommobile_home{
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
}

/* Calciomercato Live / Ferr4menta: one stable viewport, all original stories,
   server-rendered controls. JS only scrolls; it never moves or rebuilds cards. */
#secondary .snfd-native-sidebar-slider{
  position:relative;
  width:100%;
  max-width:100%;
  overflow:visible;
}
#secondary .snfd-native-sidebar-slider > .widget-title{
  padding-right:54px;
}
#secondary .snfd-native-sidebar-slider > .widget-title a{
  color:inherit;
  text-decoration:none;
}
#secondary .snfd-native-sidebar-slider .posts-slider,
#secondary .snfd-native-sidebar-slider .posts-carousel,
#secondary .snfd-native-sidebar-slider .latest-posts-carousel,
#secondary .snfd-native-sidebar-slider .trending-posts-carousel,
#secondary .snfd-native-sidebar-slider .trending-posts-vertical-carousel,
#secondary .snfd-native-sidebar-slider .featured-posts-grid,
#secondary .snfd-native-sidebar-slider .full-plus-list,
#secondary .snfd-native-sidebar-slider .spotlight-posts{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
#secondary .snfd-native-sidebar-slider .posts-slider::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .posts-carousel::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .latest-posts-carousel::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .trending-posts-carousel::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .trending-posts-vertical-carousel::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .featured-posts-grid::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .full-plus-list::-webkit-scrollbar,
#secondary .snfd-native-sidebar-slider .spotlight-posts::-webkit-scrollbar{display:none;}
#secondary .snfd-native-sidebar-slider .posts-slider > *,
#secondary .snfd-native-sidebar-slider .posts-carousel > *,
#secondary .snfd-native-sidebar-slider .latest-posts-carousel > *,
#secondary .snfd-native-sidebar-slider .trending-posts-carousel > *,
#secondary .snfd-native-sidebar-slider .trending-posts-vertical-carousel > *,
#secondary .snfd-native-sidebar-slider .featured-posts-grid > *,
#secondary .snfd-native-sidebar-slider .full-plus-list > *,
#secondary .snfd-native-sidebar-slider .spotlight-posts > *{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  scroll-snap-align:start;
  box-sizing:border-box;
}
#secondary .snfd-native-sidebar-controls{
  position:absolute;
  top:0;
  right:0;
  z-index:4;
  display:flex;
  gap:4px;
}
#secondary .snfd-native-sidebar-controls button{
  width:24px;
  height:24px;
  border:0;
  background:#fff;
  color:#111;
  font:700 18px/24px Arial,sans-serif;
  cursor:pointer;
  padding:0;
}

/* SNFD 0.7.50 - native sidebar sliders normalized server-side. */
#secondary .snfd-native-sidebar-slider{
  position:relative;
  width:100%;
  max-width:100%;
}
#secondary .snfd-native-sidebar-slider .snfd-sidebar-slider-title{
  margin:0;
  padding:0;
  color:var(--sn-navy);
  font-size:20px;
  font-weight:800;
  line-height:1.15;
}
#secondary .snfd-native-sidebar-slider .snfd-sidebar-slider-title a{
  color:inherit;
  text-decoration:none;
}
#secondary .snfd-native-sidebar-slider .snfd-sidebar-slider-title-line{
  display:block;
  width:44px;
  height:3px;
  margin:8px 0 14px;
  background:var(--sn-orange);
}
#secondary .snfd-native-sidebar-slider .snfd-native-slider-viewport{
  position:relative;
  width:100%;
  max-width:100%;
  overflow:hidden;
}
#secondary .snfd-native-sidebar-slider .snfd-native-slider-track{
  display:flex;
  flex-wrap:nowrap;
  gap:0;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  transform:none;
}
#secondary .snfd-native-sidebar-slider .snfd-native-slider-track::-webkit-scrollbar{
  width:0;
  height:0;
}
#secondary .snfd-native-sidebar-slider .snfd-native-slider-slide{
  flex:0 0 100%;
  width:100%;
  min-width:100%;
  max-width:100%;
  float:none;
  scroll-snap-align:start;
  box-sizing:border-box;
}
#secondary .snfd-native-sidebar-slider .snfd-native-sidebar-controls{
  position:absolute;
  top:8px;
  right:8px;
  z-index:5;
  display:flex;
  gap:4px;
}
#secondary .snfd-native-sidebar-slider .snfd-native-sidebar-controls button{
  width:24px;
  height:24px;
  border:0;
  background:#fff;
  color:#111;
  font:700 18px/24px Arial,sans-serif;
  cursor:pointer;
  padding:0;
}

/* SNFD 0.7.52 - Ferramenta e Colori dedicated slider.
   The existing image is the heading; no textual "Pagelle ironiche" title. */
#secondary .snfd-ferramenta-dedicated .snfd-ferramenta-logo{
  width:100%;
  margin:0 0 8px;
}
#secondary .snfd-ferramenta-dedicated .snfd-ferramenta-logo a{
  display:block;
}
#secondary .snfd-ferramenta-dedicated .snfd-ferramenta-logo img{
  display:block;
  max-width:100%;
  height:auto;
}


/* SNFD 1.0.6 - definitive mobile home sequence.
   Scope ONLY: secondary opening geometry + the requested mobile ad/story pages.
   Opening hero, later homepage blocks, desktop content, single/sidebar/cache/routing unchanged. */
@media (max-width:767px){
  /* Secondary openings: 40% story + 60% ad area. */
  .snfd-hero-side .snfd-side-card{
    display:grid!important;
    grid-template-rows:40dvh 60dvh!important;
    min-height:100dvh!important;
    height:100dvh!important;
    padding:0!important;
    gap:0!important;
    overflow:visible!important;
  }
  @supports not (height:100dvh){
    .snfd-hero-side .snfd-side-card{
      grid-template-rows:40svh 60svh!important;
      min-height:100svh!important;
      height:100svh!important;
    }
  }
  .snfd-hero-side .snfd-side-story{
    display:grid!important;
    grid-template-rows:minmax(0,62%) minmax(0,38%)!important;
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  .snfd-hero-side .snfd-side-story .snfd-side-media{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
  }
  .snfd-hero-side .snfd-side-story .snfd-side-copy{
    min-height:0!important;
    height:100%!important;
    padding:10px 18px 8px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .snfd-hero-side .snfd-side-story .snfd-side-copy h2{
    margin:0 0 5px!important;
    font-size:clamp(21px,5.8vw,29px)!important;
    line-height:1.04!important;
  }
  .snfd-hero-side .snfd-side-story .snfd-category{
    margin:0 0 4px!important;
    font-size:10px!important;
  }
  .snfd-hero-side .snfd-side-story .snfd-mini-meta{
    margin:0!important;
    font-size:10px!important;
  }
  .snfd-hero-side .snfd-side-ad-zone{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    align-items:stretch!important;
    justify-content:center!important;
    overflow:visible!important;
    background:#fff!important;
  }
  .snfd-hero-side .snfd-side-ad-zone > .snfd-mobile-story-ad{
    flex:1 1 100%!important;
    min-height:0!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  /* Every requested mobile page snaps as one physical viewport. */
  .snfd-mobile-ad-page,
  .snfd-under-page{
    width:100%!important;
    max-width:100%!important;
    min-height:100dvh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }
  @supports not (height:100dvh){
    .snfd-mobile-ad-page,
    .snfd-under-page{
      min-height:100svh!important;
      height:100svh!important;
    }
  }

  /* Standalone banner pages: banner owns the full viewport. */
  .snfd-mobile-ad-page{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .snfd-mobile-ad-page-inner{
    display:flex!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .snfd-mobile-ad-page-inner > *{
    max-width:100%!important;
  }

  /* One story + banner pages: exact 40/60 split. */
  .snfd-under-page--has-ad{
    display:grid!important;
    grid-template-rows:40dvh 60dvh!important;
    overflow:visible!important;
  }
  @supports not (height:100dvh){
    .snfd-under-page--has-ad{grid-template-rows:40svh 60svh!important;}
  }

  /* Two-story pages: 40% + 40% + intentionally empty 20%. */
  .snfd-under-page--pair{
    display:grid!important;
    grid-template-rows:40dvh 40dvh 20dvh!important;
    overflow:hidden!important;
  }
  @supports not (height:100dvh){
    .snfd-under-page--pair{grid-template-rows:40svh 40svh 20svh!important;}
  }
  .snfd-under-page-spacer{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  .snfd-under-page > .snfd-under-feature-card{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  .snfd-under-page > .snfd-under-feature-card > a,
  .snfd-under-page > .snfd-under-feature-card .snfd-under-feature-media{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
  }
  .snfd-under-page > .snfd-under-page-ad{
    display:flex!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    background:#fff!important;
    box-sizing:border-box!important;
  }
}

@media (min-width:768px){
  .snfd-side-story,.snfd-side-ad-zone{display:contents;}

  /* Mobile-only full-screen ad pages must not change desktop geometry. */
  .snfd-mobile-ad-page{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    min-width:0!important;
    min-height:0!important;
    max-width:1px!important;
    max-height:1px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    clip-path:inset(50%)!important;
    pointer-events:none!important;
  }

  /* Mobile grouping disappears on desktop: all ten cards remain normal grid items. */
  .snfd-under-grid.snfd-under-paged > .snfd-under-page{display:contents!important;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-card{order:0!important;}
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-spacer{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
    clip-path:inset(50%)!important;
  }
  .snfd-under-grid.snfd-under-paged > .snfd-under-page > .snfd-under-page-ad{
    display:block!important;
    order:100!important;
    grid-column:1 / -1!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
}

