/* NowMeteo - template pubblico unico v1.1 (2026-10-04) */
:root{
  --public-page-max:1240px;
  --public-page-gutter:20px;
  --public-page-gutter-mobile:12px;
  --public-page-bottom:64px;
  --public-home-gutter:20px;
  --public-home-gutter-mobile:12px;
  --public-breadcrumb-gap:8px;
  /* Distacco dal menu superiore, condiviso tra le pagine pubbliche. */
  --public-breadcrumb-top:clamp(14px,1.4vw,20px);
  --public-breadcrumb-bottom:18px;
  --public-hero-bottom:30px;
  --public-article-max:var(--public-page-max);
}
.public-page{
  box-sizing:border-box!important;
  width:min(var(--public-page-max),calc(100% - (var(--public-page-gutter) * 2)))!important;
  max-width:var(--public-page-max)!important;
  margin:0 auto!important;
  padding:0 0 var(--public-page-bottom)!important;
}
/* La home usa lo stesso contratto, ma mantiene la propria landing full-width. */
.public-page.public-page--home{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
/* Home: tutti i blocchi editoriali e previsionali condividono lo stesso gutter laterale. */
.public-page.public-page--home>.home-today,
.public-page.public-page--home>.italy-forecast,
.public-page.public-page--home>.home-news-section,
.public-page.public-page--home>.home-category-columns{
  box-sizing:border-box!important;
  width:min(1360px,calc(100% - (var(--public-home-gutter) * 2)))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.public-page>.page-shell,
.public-page>.public-page__inner{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.public-page .public-breadcrumb,
.public-page .breadcrumbs{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:var(--public-breadcrumb-gap)!important;
  min-height:20px;
  margin:0 0 var(--public-breadcrumb-bottom)!important;
  padding:var(--public-breadcrumb-top) 0 0!important;
  color:var(--muted)!important;
  font-size:.86rem!important;
  font-weight:400!important;
  line-height:1.4!important;
}
.public-page .public-breadcrumb a,
.public-page .breadcrumbs a{color:var(--blue-700)!important;text-decoration:none!important;font-weight:400!important}
.public-page .public-breadcrumb a:hover,
.public-page .breadcrumbs a:hover{text-decoration:underline!important}
.public-page .public-breadcrumb strong,
.public-page .breadcrumbs strong,
.public-page .public-breadcrumb [aria-current="page"],
.public-page .breadcrumbs [aria-current="page"]{color:var(--ink)!important;font-weight:700!important}
.public-page .public-breadcrumb+*,
.public-page .breadcrumbs+*{margin-top:0!important}
.public-hero{
  display:block;
  margin:0 0 var(--public-hero-bottom)!important;
  padding:clamp(28px,4vw,48px)!important;
  color:#fff;
  background:radial-gradient(circle at 82% 18%,rgba(97,215,239,.26),transparent 30%),radial-gradient(circle at 12% 90%,rgba(255,255,255,.10),transparent 30%),linear-gradient(135deg,#063d78 0%,#0878c9 55%,#179ec7 100%)!important;
  border:1px solid rgba(103,194,232,.45)!important;
  border-radius:30px!important;
  box-shadow:var(--shadow)!important;
}
.public-hero--split{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px}
.public-hero .eyebrow{color:rgba(225,248,255,.88)!important}
.public-hero h1{margin:7px 0 0!important;color:#fff!important;font-size:clamp(2.55rem,5.5vw,4.7rem)!important;line-height:.98!important;letter-spacing:-.05em!important}
.public-hero p{max-width:760px;margin:18px 0 0!important;color:rgba(255,255,255,.92)!important;font-size:clamp(.98rem,1.6vw,1.12rem)!important;line-height:1.62!important}
.public-hero__aside{min-width:0}
.public-page .public-page__hero-slot{margin-top:0!important;margin-bottom:var(--public-hero-bottom)!important}
.public-page__article{box-sizing:border-box;width:100%;max-width:var(--public-article-max);margin:0 auto}
.public-page__narrow{width:100%;max-width:980px;margin:0 auto}
.public-page__narrow--900{max-width:900px}
.public-page__narrow--860{max-width:860px}
.public-page__narrow--1040{max-width:1040px}
.public-page.news-shell,
.public-page.news-article,
.public-page.earthquake-shell,
.public-page.radar-map-shell,
.public-page.contact-shell,
.public-page.legal-shell,
.public-page.not-found-shell{
  width:min(var(--public-page-max),calc(100% - (var(--public-page-gutter) * 2)))!important;
  max-width:var(--public-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-top:0!important;
}
.public-page.p8-shell,
.public-page.guide-shell,
.public-page.alerts-national-main,
.public-page.alert-region-main{padding-top:0!important}
@media(max-width:860px){.public-hero--split{grid-template-columns:1fr;align-items:start}}
@media(max-width:700px){
  .public-page{width:min(var(--public-page-max),calc(100% - (var(--public-page-gutter-mobile) * 2)))!important;padding-bottom:48px!important}
  .public-page.public-page--home>.home-today,
  .public-page.public-page--home>.italy-forecast,
  .public-page.public-page--home>.home-news-section,
  .public-page.public-page--home>.home-category-columns{
    width:min(1360px,calc(100% - (var(--public-home-gutter-mobile) * 2)))!important;
  }
  .public-hero{padding:28px 21px!important;border-radius:23px!important}
  .public-hero h1{font-size:clamp(2.5rem,13vw,3.6rem)!important}
}

/* 2026-10-10 - Il titolo delle pagine e degli articoli usa tutta la larghezza
   disponibile nel template pubblico. Rimangono invariati il contenitore,
   le colonne laterali delle hero split e le larghezze dei testi descrittivi. */
.public-page .public-hero,
.public-page .news-hero{
  max-width:none!important;
}
.public-page .public-hero__copy,
.public-page .news-article__header{
  min-width:0;
}
.public-page .public-hero h1,
.public-page .news-hero h1,
.public-page .news-article__header h1{
  width:100%;
  max-width:none!important;
  overflow-wrap:break-word;
}
