@import url('https://fonts.googleapis.com/css?family=Titillium+Web:300,400,600,700');

.css-selector {
  font-family: "Titillium Web", sans-serif;
}

body {
  font-family: "Titillium Web", sans-serif !important;
  font-size:16px !important;
}

.header_urf {
    float: left;
    margin-top: 12px;
    margin-bottom: 12px;
    color: #fff;
    }

.header_urf a {
	color: white !important;
}

.header_urf :hover {
  text-decoration: underline;
}

.account-masthead {
    background-color: #004d18 !important;
}

.menu {
    background-color: #006620;
   
}

.account-masthead .account ul li {
    padding-top: 8px;
    padding-bottom: 8px;
}

.account-masthead .account ul li a {
    font-size: 14px !important;
    color: white !important;
    text-decoration: underline;
}

.masthead {
  background: #006620 !important;
  padding: 20px 0;
  /*box-shadow: 0 3px 1.5rem rgb(0 0 0 / 30%);*/

}

.masthead hgroup h2 {
    position: inherit !important;
    font-size: 32px;
    margin-top: 24px;
    font-weight: 600 !important;
    color: white !important;
}

.masthead hgroup h3 {
    color: #fed505;
    font-weight: 700;
    font-size: 16px;
}

.masthead hgroup a:hover {
   text-decoration: none !important;
}


.masthead .navigation .nav-pills li a:hover {
  background-color: #0079cc;
  color: white;
}

/* The "active" navigation pill (for example, when you're on the /dataset page
   the "Datasets" link is active). */
.masthead .navigation .nav-pills li.active a {
  background-color: #0079cc;
  color: white;
}


.homepage [role="main"] {
  /*border-top: 1px solid white;*/
  background-color: white !important;
}

.masthead .logo img{        
    width: auto;
    height: 82px;
    margin-right: 30px;
    max-height: 100%;
}

/*
.masthead .navigation .nav-pills li a:hover, .masthead .navigation .nav-pills li a:focus, .masthead .navigation .nav-pills li.active a {
background-color: #002b54 !important;
} */


.masthead .nav > li > a, .masthead .nav > li > a:focus, .masthead .nav > li > a:hover, .masthead .nav > .active > a, .masthead .nav > .active > a:hover, .masthead .nav > .active > a:focus {
    color: #0079cc;
    text-shadow: none;
    font-size:2.5rem;
}

/* Change the colors of the "Search Your Data" box. */
.homepage .module-search .module-content {
  background-color: #006620 !important;
}

.masthead .navbar-collapse {
    padding: 30px 0px 0px 0px !important;
}

.btn-primary {
	background-color: #006620 !important;
}

.homepage .module-search .module-content .heading {
    margin-top: 0;
    margin-bottom: 7px;
    font-size: 24px;
    line-height: 40px;
    color: white;
}

.toolbar .breadcrumb a {
    color: #30475f !important;
    font-weight: 600 !important;
}


/* Change the colors of the "Search Your Data" box. */
.homepage .module-search .tags {
	background-color: #004d18 !important;
}

.media-overlay .media-heading {
background-color: #0066C;

}

.site-footer,
body {
font-family: "Titillium Web", sans-serif;
    background: #202a2e !important;
}

/* The text in the footer. */
.site-footer,
.site-footer label,
..site-footer small {
font-family: "Titillium Web", sans-serif;
  color: white;
background-color: #202a2e;
}


[role=main], .main {
    background: white !important;
}

.big_menu {
	font-size: 30px !important;
}

.homepage.layout-1 .row1 .col2 {
	position: unset !important;
}

.badge {
    background-color: black !important;
}


.testo-small {
    font-size: small;
}

.justify {
    text-align: justify;
}

.footer .h2 {
    border-top: 1px solid #444e57;
    margin: 25px 0 0;
    padding: 25px 0 10px;
    font-size: 22px;
    color: #ffffff;
    font-style: normal;
}

.footer .li .a {
    font-size: 1.8rem;
    color: #65dbde;
    display: inline-block;
    vertical-align: top;
    font-weight: bold;
    text-decoration: underline;
}
 
.recapiti {    font-size: 2.2rem;
    color: #ffffff;
    display: block;
    font-weight: 700;
    padding-left: 0;
    border-bottom: 1px solid hsla(0, 0%, 100%, .5);
}

.pl-3, .px-3 {
    padding-left: 16px !important;
}
.pr-3, .px-3 {
    padding-right: 16px !important;
}

hr {
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, .1);
    margin-bottom: 16px;
    margin-top: 16px;
border-bottom: 1px solid hsla(0, 0%, 100%, .5);
}
hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}


.nav-pills {
    float: left;
    font-weight: 700;
    font-size: 20px;
    line-height: 50px;
    text-align: center;
    background-color: #006620;
}

.nav-pills > li > a {
    color: white;
    font-weight: 600;
}

.nav-pills > li > a :hover {
    color: #0066C;
    background-color: none !important;
}

.navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
    background-color: #0066C;
}

.nav-pills > li.active > a,  .nav-pills > li > a:hover{
    text-decoration: underline;
    background: none !important;
    border-bottom: 3px solid transparent;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    border-color: #fff;
    background: none;
    /* border-bottom: 3px solid transparent; */
    text-decoration: none;
    border-radius: 0px;
}

.toolbar .breadcrumb .active a, .toolbar .breadcrumb a.active {
    color: #30475f !important;
    font-weight: 500 !important;
}

.fa-home:before {
    content: "\f015";
    color: #006620;
}


.homepage.layout-1 .row1 .col2 {
	position: unset !important;
}

.badge {
    background-color: black !important;
}


.testo-small {
    font-size: small;
}

.justify {
    text-align: justify;
}

.alignright {
    float: right;
    padding: 15px 0 15px 15px;
}


/* ===============================
   FOOTER ISTITUZIONALE URF
   =============================== */

.urf-footer {
  background: #424242 !important;
  padding: 10px 0 30px;
  color: #fff;
  font-size: 18px !important;
}

.urf-footer h6 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 22px;
  margin-top: 0;
  line-height: 1.5;
  letter-spacing: normal;
}

.urf-footer ul {
  list-style: none;
  padding: 0;
  margin-bottom: 18px;
}

.urf-footer ul li {
    margin-bottom: 4px;
}

.urf-footer a {
  color: #fff;
  text-decoration: underline;
}

.urf-footer a:hover {
  color: #cacacc;
    text-decoration: none
}

.urf-footer-ente {
  margin-top: 20px;
  font-size: 18px;
  line-height: 1.6;
}

.urf-footer-social a {
  display: inline-block;
  margin-right: 10px;
}

.urf-footer-separator {
  border-top: 1px solid rgba(255,255,255,.5);
  margin: 15px 0;
}

.urf-footer-bottom a {
  margin-right: 9px;
  font-size: 16.2px !important;
}

@media (max-width: 768px) {
  .urf-footer {
    padding: 30px 0;
  }
  .urf-footer-bottom {
    text-align: left;
  }
  .urf-footer-bottom .text-right {
    text-align: left;
    margin-top: 10px;
  }
}

/* ======================================
   Compatibilità – Social Icons
   ====================================== */

/* scope SOLO footer */
.urf-footer .icon {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: normal;
  display: inline-block;
  line-height: 1;
  font-size: 22.5px;
  color: #ffffff;
}

/* mappatura icone (identica Lepida) */
.urf-footer .fa-facebook::before { content: "\f09a"; }
.urf-footer .fa-linkedin::before { content: "\f0e1"; }
.urf-footer .fa-youtube::before  { content: "\f167"; }
.urf-footer .fa-telegram::before { content: "\f2c6"; }
https://www.romagnafaentina.it/
/* link social */
.urf-footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-right: 12px;
  text-decoration: none;
  font-size: 22.5px !important;
}

.urf-footer-social a:hover .icon {
  color: #cacacc;
    text-decoration: none
}

/* accessibilità */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.diritti {
  font-size: 16px !important;
  font-weight: 400;
    padding-left: 0;
    margin-right: 12px;
    padding-right: 15px;
}

.urf-footer-col {
  margin-left: 12px;
  margin-bottom: 16px;
}

.privacy {
margin-left: 12px;
}


#nrc-footer-brand>img {
    height: 108px;
    margin: 0 18px 0 0;
    width: auto;
}

.urf-footer .it-brand-wrapper .it-brand-text {
    padding-right: 24px;
}

@media (min-width: 768px) {
    .urf-footer>footer .it-brand-text {
        font-size: 1.875rem;
    }
}


#nrc-footer-brand .it-brand-text {
    font-weight: 700;
    font-size: 33.75px !important;
    line-height: 1;
    padding: 0;
    text-decoration: none !important;
}

#nrc-footer-brand .it-brand-text a:hover {
    color: white !important;
    text-decoration: none !important;
}


.urf-footer>footer a#nrc-footer-brand {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: .5rem;
    color: #fff;
    text-decoration: none;
}

    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }


    .nrc-footer__pon-list {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        align-items: flex-end;
    }

.row {
    margin-right: -15px;
    margin-left: -15px;
    position: relative;
    flex-wrap: wrap;
    display: flex;
}


.urf-footer a#nrc-footer-brand,
.urf-footer a#nrc-footer-brand * {
    text-decoration: none !important;
}


/* BRAND: logo + testo su una riga */
.urf-footer a#nrc-footer-brand{
  display: flex;
  flex-direction: row;         /* <-- IMPORTANT: non colonna */
  align-items: center;         /* centra verticalmente testo rispetto al logo */
  gap: 18px;                   /* spazio tra logo e testo */
  padding-bottom: .5rem;
  color: #fff;
  text-decoration: none;       /* niente underline sul brand */
}

/* niente sottolineatura anche sui figli (span, img, ecc.) */
.urf-footer a#nrc-footer-brand,
.urf-footer a#nrc-footer-brand * {
  text-decoration: none !important;
}


/* =========================================================
   FOOTER TOP ROW: Brand (sx) + NextGen (dx) sulla stessa riga
   ========================================================= */

/* La prima riga (quella con brand + pon) diventa un flex container */
.urf-footer .row.pt-4{
  display: flex;
  justify-content: space-between;
  align-items: center;      /* same baseline/row feeling */
  gap: 24px;
  flex-wrap: nowrap;
}

/* Colonna sinistra: brand */
.urf-footer .it-brand-wrapper{
  flex: 0 1 auto;
  min-width: 0;             /* evita overflow del testo */
}

/* Colonna destra: NextGen */
.urf-footer .nrc-footer__pon{
  flex: 0 0 auto;
  margin-left: auto;        /* spinge a destra in modo affidabile */
}

/* Allinea il contenuto del blocco NextGen a destra */
.urf-footer .nrc-footer__pon-list{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}


/* =========================================================
   BRAND: logo + testo su una riga (niente colonna)
   ========================================================= */

.urf-footer a#nrc-footer-brand{
  display: flex;
  flex-direction: row;      /* <-- fondamentale */
  align-items: center;
  gap: 18px;
  color: #fff;
  text-decoration: none;    /* toglie underline sul link brand */
}

/* Niente underline anche su figli (span/img) */
.urf-footer a#nrc-footer-brand,
.urf-footer a#nrc-footer-brand *{
  text-decoration: none !important;
}

/* Logo URF */
.urf-footer #nrc-footer-brand > img{
  height: 88px;             /* regola fine: 82–92 */
  width: auto;
  object-fit: contain;
  flex: 0 0 auto;
  margin: 0;                /* lo gestisce gap */
}

/* Testo brand */
.urf-footer #nrc-footer-brand .it-brand-text{
  font-weight: 700;
  font-size: 40px;          /* desktop */
  line-height: 1.05;
  margin: 0;
  padding: 0;
  white-space: nowrap;      /* su desktop resta su una riga */
}

/* Immagine NextGen */
.urf-footer img.nrc-footer__pon-logo{
  height: 70px;             /* coerente col tuo HTML */
  width: auto;
  max-width: 100%;
  object-fit: contain;
}


/* =========================================================
   RESPONSIVE: su schermi piccoli impila (brand sopra, NextGen sotto)
   ========================================================= */
@media (max-width: 768px){
  .urf-footer .row.pt-4{
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .urf-footer .nrc-footer__pon{
    width: 100%;
    margin-left: 0;
    margin-top: 12px;
  }

  .urf-footer .nrc-footer__pon-list{
    justify-content: flex-start;
  }

  .urf-footer #nrc-footer-brand .it-brand-text{
    font-size: 30px;
    white-space: normal;
  }

  .urf-footer #nrc-footer-brand > img{
    height: 72px;
  }
}


/* =========================================================
   1) Reset dei margini "a mano" che rompono l'allineamento
   ========================================================= */
.urf-footer-col,
.urf-footer .privacy {
  margin-left: 0 !important;
}

/* Se hai altri offset manuali che spostano le colonne, toglili */
.urf-footer .diritti { margin-right: 0; }

/* =========================================================
   2) Gutter unificato: stessa "cornice" per tutte le righe footer
   ========================================================= */
.urf-footer .container {
  padding-left: 24px;
  padding-right: 24px;
}

/* =========================================================
   3) TOP ROW: 2 blocchi (sx brand, dx NextGen) agganciati ai bordi della griglia
   ========================================================= */
.urf-footer .row.pt-4 {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  margin-left: 0;   /* evita shift se .row ha margini */
  margin-right: 0;
}

/* il blocco brand deve stare a sinistra */
.urf-footer .it-brand-wrapper {
  flex: 1 1 auto;
  min-width: 0;
}

/* il blocco NextGen deve stare a destra */
.urf-footer .nrc-footer__pon {
  flex: 0 0 auto;
  margin-left: auto;
}

/* =========================================================
   4) BRAND: logo + testo in riga e niente underline
   ========================================================= */
.urf-footer a#nrc-footer-brand{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 18px;
  text-decoration: none;
}

.urf-footer a#nrc-footer-brand,
.urf-footer a#nrc-footer-brand *{
  text-decoration: none !important;
}

/* logo URF */
.urf-footer #nrc-footer-brand > img{
  height: 88px;
  width: auto;
  object-fit: contain;
  flex: 0 0 auto;
  margin: 0;
}

/* testo URF */
.urf-footer #nrc-footer-brand .it-brand-text{
  font-weight: 700;
  font-size: 40px;
  line-height: 1.05;
  white-space: normal !important;
}

/* =========================================================
   5) NEXTGEN: allineato a destra, dimensioni coerenti
   ========================================================= */
.urf-footer .nrc-footer__pon-list{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.urf-footer img.nrc-footer__pon-logo{
  height: 70px;
  width: auto;
  object-fit: contain;
  max-width: 100%;
}

/* =========================================================
   6) RIGA COLONNE: griglia a 4 colonne SENZA Bootstrap
   ========================================================= */
.urf-footer .urf-footer-columns{
  display: flex;
  flex-wrap: nowrap;
  margin-left: 0;
  margin-right: 0;
}

/* 4 colonne uguali */
.urf-footer .urf-footer-columns > div{
  flex: 1 1 0;
  min-width: 0;
}

/* =========================================================
   7) RESPONSIVE: su mobile impila e riallinea
   ========================================================= */
@media (max-width: 992px){
  .urf-footer #nrc-footer-brand .it-brand-text{ font-size: 32px; white-space: normal; }
}

@media (max-width: 768px){
  .urf-footer .row.pt-4{
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .urf-footer .nrc-footer__pon{
    width: 100%;
    margin-left: 0;
    margin-top: 12px;
  }
  .urf-footer .nrc-footer__pon-list{
    justify-content: flex-start;
  }
  .urf-footer .urf-footer-columns{
    flex-wrap: wrap;
  }
  .urf-footer .urf-footer-columns > div{
    flex: 1 1 240px;
  }
}


/* =========================================================
   BOTTOM BAR: link a sinistra, copyright a destra
   ========================================================= */
.urf-footer .urf-footer-bottom{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 0; /* evita eventuali offset */
}

/* blocco link (sinistra) */
.urf-footer .urf-footer-bottom .privacy{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* copyright (destra) */
.urf-footer .urf-footer-bottom .diritti{
  margin-left: auto;     /* spinge a destra */
  text-align: right;     /* allinea il testo al bordo destro */
  white-space: nowrap;   /* opzionale: resta su una riga come nel sito */
}


@media (max-width: 768px){
  .urf-footer .urf-footer-bottom{
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .urf-footer .urf-footer-bottom .diritti{
    width: 100%;
    margin-left: 0;
    text-align: left;
    white-space: normal;
  }
}

.urf_txt {
   white-space: normal !important;
   max-width: 300px !important;
}
