/**
 * Main stylesheet for Burlo Bootstrap theme
 * Migrated from Drupal 7 burlobs2 theme
 */

/* Import D7 legacy styles */
@import url('d7/style.css');
@import url('d7/hamburgers.min.css');

/* Import component styles */
@import url('components/social-icons.css');
@import url('components/navigation.css');
@import url('components/forms.css');

/* HOMEPAGE LAYOUT IMPROVEMENTS */
#homepage_new {
  background: #f8f9fa;
}

.hero-section {
  background: white;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.homepage-main {
  padding: 20px 0;
}

.focus-section {
  background: white;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 20px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.focus-section h2 {
  color: #005cbf;
  border-bottom: 2px solid #005cbf;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.focus-item {
  background: #f8f9fa;
  padding: 15px;
  border-radius: 6px;
  margin-bottom: 10px;
  border-left: 4px solid #005cbf;
}

.content-section .col-lg-4 {
  background: white;
  border-radius: 8px;
  padding: 20px;
  margin-right: 10px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.content-section h2 {
  color: #005cbf;
  font-size: 1.5rem;
  margin-bottom: 15px;
  border-bottom: 2px solid #e9ecef;
  padding-bottom: 8px;
}

.special-content {
  background: white;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.bottom-sections {
  background: #f8f9fa;
  padding: 30px 0;
}

.donazioni, .carta-servizi {
  background: white;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* CAROUSEL STYLING */
#heroCarousel {
  border-radius: 8px;
  overflow: hidden;
}

.carousel-item img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}

.carousel-caption {
  background: rgba(0, 0, 0, 0.7);
  border-radius: 6px;
  padding: 15px;
}

/* Node-specific styling from D7 */
.node-malattia-pediatri .field-type-node-reference {
  padding: 15px;
  background-color: #fff;
  margin-top: 30px;
  margin-bottom: 15px;
}

/* Override d7/style.css ".node h2/h3" sizes to match D7 Panel-rendered pages.
   In D7, pages like amm-trasparente were rendered via Panels without a .node wrapper,
   so h2/h3 used base sizes (32px/28px). In D10 all pages use node template. */
.node h2 {
  font-size: 32px;
}
.node h3 {
  font-size: 28px;
}

/* D10 specific overrides and improvements */

/* Fix image paths from D7 to D10 */
body {
  font-family: "Titillium Web", sans-serif;
  font-size: 18px;
  line-height: 1.5;
}

/* Update social icons background paths */
ul.social-icon-footer li.facebook-sif {
  background: url('/themes/custom/burlo_bootstrap/img/social.png') -2px no-repeat;
}

ul.social-icon-footer li.twitter-sif {
  background: url('/themes/custom/burlo_bootstrap/img/social.png') -62px no-repeat;
}

ul.social-icon-footer li.youtube-sif {
  background: url('/themes/custom/burlo_bootstrap/img/social.png') -122px no-repeat;
}

ul.social-icon-footer li.photo-sif {
  background: url('/themes/custom/burlo_bootstrap/img/social.png') -180px -2px no-repeat;
}

ul.social-icon-footer li.linkedin-sif {
  background: url('/themes/custom/burlo_bootstrap/img/social.png') -240px -2px no-repeat;
}

/* Fix logo paths */
.logo img {
  max-height: 150px;
  width: auto;
}

/* Collapse empty page-header on internal pages */
#page-header {
  padding: 0 !important;
  margin: 0 !important;
}

/* Override D7 legacy padding on main-container > header */
.not-front .main-container > header,
.main-container > header {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Override D7 legacy .page-content padding */
.page-content {
  padding-top: 0 !important;
}

/* Highlighted region — small top padding for breadcrumb row */
.highlighted {
  padding: 5px 0 0 !important;
  margin: 0 !important;
  background-color: transparent;
}

/* Breadcrumb — styling to match D7 */
.highlighted .breadcrumb,
.breadcrumb {
  background: transparent;
  margin-bottom: 0 !important;
  padding: 4px 15px !important;
  font-size: 15px;
  border-radius: 0;
  list-style: none;
}

.breadcrumb a {
  color: #009966;
  text-decoration: none;
}

.breadcrumb a:hover {
  color: #006644;
  text-decoration: underline;
}

.breadcrumb > .delimiter,
.breadcrumb .breadcrumb-separator {
  color: #666;
  margin: 0 4px;
}

/* Breadcrumb home link — undo D7 text-indent hack, show SVG icon */
.breadcrumb li:first-child a {
  display: inline-block !important;
  text-indent: 0 !important;
  position: relative !important;
  margin-right: 0 !important;
  font-size: 0 !important;
}

/* Breadcrumb home icon — replace broken FA glyph with inline SVG */
.breadcrumb li:first-child a:before {
  font-family: inherit !important;
  content: "" !important;
  float: none !important;
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: text-bottom;
  text-indent: 0 !important;
  font-size: 15px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23009966' viewBox='0 0 16 16'%3E%3Cpath d='M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4H2.5z'/%3E%3C/svg%3E");
  background-size: 18px 18px;
  background-repeat: no-repeat;
}

/* Override D7 legacy .page-header (h1 title) margin */
.page-header {
  margin: 0 0 5px !important;
  padding: 0 !important;
}

/* Hide empty bannerwrapparea */
#bannerwrapparea:empty {
  display: none;
}

/* Navigation improvements for D10 */
.navbar-default {
  background-color: #fff;
  border-color: #ddd;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Amministrazione Trasparente banner */
.ammtrasp-banner {
  background-color: #009966;
  color: #fff;
  text-align: center;
  padding: 15px 0;
  margin: 0;
}

.ammtrasp-banner a {
  color: #fff;
  text-decoration: none;
  font-weight: 400;
}

.ammtrasp-banner a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Banner area */
.banner5x1000 {
  background-color: #009ee2;
  color: #fff;
  text-align: center;
  padding: 0;
  font-size: 1.2em;
}

.banner5x1000 img {
  max-width: 100%;
  height: auto;
}

/* General responsive adjustments */
@media (max-width: 768px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* Custom theme adjustments */
.page-wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.main-content {
  flex: 1;
}

/* Accessibility improvements */
.sr-only {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
  word-wrap: normal;
}

/* Skip to content link */
.skip-link {
  position: absolute;
  top: -40px;
  left: 6px;
  z-index: 999999;
  text-decoration: none;
  color: #fff;
  background: #000;
  padding: 8px 16px;
}

.skip-link:focus {
  top: 6px;
}

/* Homepage Layout Styling */
.homepage-header {
  margin-bottom: 20px;
}

.homepage-content {
  margin-bottom: 30px;
}

.homepage-sidebar {
  background-color: #f8f9fa;
  padding: 20px;
  border-radius: 5px;
  margin-bottom: 20px;
}

.homepage-main {
  padding: 0 15px;
}

.homepage-right {
  background-color: #fff;
  padding: 20px;
  border: 1px solid #dee2e6;
  border-radius: 5px;
  margin-bottom: 20px;
}

.homepage-bottom {
  margin-top: 40px;
  padding-top: 30px;
  border-top: 2px solid #dee2e6;
}

.support-campaign {
  text-align: center;
  padding: 20px;
}

.support-campaign img {
  max-width: 100%;
  height: auto;
}

/* Bollini/Certifications styling */
.bollini {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 20px;
}

.bollino {
  display: inline-block;
  width: 80px;
  height: 80px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  transition: transform 0.3s ease;
}

.bollino:hover {
  transform: scale(1.1);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .homepage-content .col-md-3,
  .homepage-content .col-md-6 {
    margin-bottom: 20px;
  }

  .bollini {
    gap: 5px;
  }

  .bollino {
    width: 60px;
    height: 60px;
  }
}

/* ============================================================
   YAMM MEGA MENU — Icons, Chevrons, Font Size (Phase 9G_05)
   ============================================================ */

/* --- Heading icons: base rule (override broken FA ::before) --- */
/* Hide ::before on all .top-link.fa — icons use SVG background-image instead */
.top-link.fa:before,
.top-link.fa::before {
  display: none !important;
  content: "" !important;
  width: 0 !important;
  height: 0 !important;
  background-image: none !important;
}

/* FontAwesome 4.7 original SVG glyph paths — OFL/MIT license */
/* Y-axis flipped from typographic to standard SVG coordinates */

/* 1. Prestazioni — fa-medkit */
.top-link.fa.fa-medkit {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1280 416v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM640 1152h512v128h-512v-128zM256 1152v-1280h-32 q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h32zM1440 1152v-1280h-1088v1280h160v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h160zM1792 928v-832q0 -92 -66 -158t-158 -66h-32v1280h32q92 0 158 -66t66 -158z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 2. Accoglienza — fa-folder-open */
.top-link.fa.fa-folder-open {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1920 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1879 584q0 -31 -31 -66l-336 -396q-43 -51 -120.5 -86.5t-143.5 -35.5h-1088q-34 0 -60.5 13t-26.5 43q0 31 31 66l336 396q43 51 120.5 86.5t143.5 35.5h1088q34 0 60.5 -13t26.5 -43zM1536 928v-160h-832q-94 0 -197 -47.5t-164 -119.5l-337 -396l-5 -6q0 4 -0.5 12.5 t-0.5 12.5v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 3. Servizi accessori — fa-support (life ring) */
.top-link.fa.fa-support {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 1408q-190 0 -361 -90l194 -194q82 28 167 28t167 -28l194 194q-171 90 -361 90zM218 279l194 194 q-28 82 -28 167t28 167l-194 194q-90 -171 -90 -361t90 -361zM896 -128q190 0 361 90l-194 194q-82 -28 -167 -28t-167 28l-194 -194q171 -90 361 -90zM896 256q159 0 271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5 t271.5 -112.5zM1380 473l194 -194q90 171 90 361t-90 361l-194 -194q28 -82 28 -167t-28 -167z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 4. Chi siamo — fa-hospital-o */
.top-link.fa.fa-hospital-o {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1408 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 5. Organizzazione — fa-sitemap */
.top-link.fa.fa-sitemap {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 6. Formazione — fa-graduation-cap */
.top-link.fa.fa-graduation-cap {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2304 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 7. Per la donna — fa-female */
.top-link.fa.fa-female {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1280 480q0 -40 -28 -68t-68 -28q-51 0 -80 43l-227 341h-45v-132l247 -411q9 -15 9 -33q0 -26 -19 -45t-45 -19h-192v-272q0 -46 -33 -79t-79 -33h-160q-46 0 -79 33t-33 79v272h-192q-26 0 -45 19t-19 45q0 18 9 33l247 411v132h-45l-227 -341q-29 -43 -80 -43 q-40 0 -68 28t-28 68q0 29 16 53l256 384q73 107 176 107h384q103 0 176 -107l256 -384q16 -24 16 -53zM864 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 8. Per il bambino — fa-child */
.top-link.fa.fa-child {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1188 988l-292 -292v-824q0 -46 -33 -79t-79 -33t-79 33t-33 79v384h-64v-384q0 -46 -33 -79t-79 -33t-79 33t-33 79v824l-292 292q-28 28 -28 68t28 68q29 28 68.5 28t67.5 -28l228 -228h368l228 228q28 28 68 28t68 -28q28 -29 28 -68.5t-28 -67.5zM864 1152 q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 9. Approfondimenti — fa-lightbulb-o */
.top-link.fa.fa-lightbulb-o {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M736 960q0 -13 -9.5 -22.5t-22.5 -9.5t-22.5 9.5t-9.5 22.5q0 46 -54 71t-106 25q-13 0 -22.5 9.5t-9.5 22.5t9.5 22.5t22.5 9.5q50 0 99.5 -16t87 -54t37.5 -90zM896 960q0 72 -34.5 134t-90 101.5t-123 62t-136.5 22.5t-136.5 -22.5t-123 -62t-90 -101.5t-34.5 -134 q0 -101 68 -180q10 -11 30.5 -33t30.5 -33q128 -153 141 -298h228q13 145 141 298q10 11 30.5 33t30.5 33q68 79 68 180zM1024 960q0 -155 -103 -268q-45 -49 -74.5 -87t-59.5 -95.5t-34 -107.5q47 -28 47 -82q0 -37 -25 -64q25 -27 25 -64q0 -52 -45 -81q13 -23 13 -47 q0 -46 -31.5 -71t-77.5 -25q-20 -44 -60 -70t-87 -26t-87 26t-60 70q-46 0 -77.5 25t-31.5 71q0 24 13 47q-45 29 -45 81q0 37 25 64q-25 27 -25 64q0 54 47 82q-4 50 -34 107.5t-59.5 95.5t-74.5 87q-103 113 -103 268q0 99 44.5 184.5t117 142t164 89t186.5 32.5 t186.5 -32.5t164 -89t117 -142t44.5 -184.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 10. Azienda informa — fa-info-circle */
.top-link.fa.fa-info-circle {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1024 160v160q0 14 -9 23t-23 9h-96v512q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h96v-320h-96q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h448q14 0 23 9t9 23zM896 1056v160q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23 t23 -9h192q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 11. URP — fa-comments-o */
.top-link.fa.fa-comments-o {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M704 1152q-153 0 -286 -52t-211.5 -141t-78.5 -191q0 -82 53 -158t149 -132l97 -56l-35 -84q34 20 62 39l44 31l53 -10q78 -14 153 -14q153 0 286 52t211.5 141t78.5 191t-78.5 191t-211.5 141t-286 52zM704 1280q191 0 353.5 -68.5t256.5 -186.5t94 -257t-94 -257 t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224q0 139 94 257t256.5 186.5 t353.5 68.5zM1526 111q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129 q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230q0 -120 -71 -224.5t-195 -176.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 12. Bacheca — fa-thumb-tack */
.top-link.fa.fa-thumb-tack {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1152 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M480 672v448q0 14 -9 23t-23 9t-23 -9t-9 -23v-448q0 -14 9 -23t23 -9t23 9t9 23zM1152 320q0 -26 -19 -45t-45 -19h-429l-51 -483q-2 -12 -10.5 -20.5t-20.5 -8.5h-1q-27 0 -32 27l-76 485h-404q-26 0 -45 19t-19 45q0 123 78.5 221.5t177.5 98.5v512q-52 0 -90 38 t-38 90t38 90t90 38h640q52 0 90 -38t38 -90t-38 -90t-90 -38v-512q99 0 177.5 -98.5t78.5 -221.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 13. Per i frequentanti — fa-group */
.top-link.fa.fa-group {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1920 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M593 640q-162 -5 -265 -128h-134q-82 0 -138 40.5t-56 118.5q0 353 124 353q6 0 43.5 -21t97.5 -42.5t119 -21.5q67 0 133 23q-5 -37 -5 -66q0 -139 81 -256zM1664 3q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5 t43 97.5t62 81t85.5 53.5t111.5 20q10 0 43 -21.5t73 -48t107 -48t135 -21.5t135 21.5t107 48t73 48t43 21.5q61 0 111.5 -20t85.5 -53.5t62 -81t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM640 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75 t75 -181zM1344 896q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5zM1920 671q0 -78 -56 -118.5t-138 -40.5h-134q-103 123 -265 128q81 117 81 256q0 29 -5 66q66 -23 133 -23q59 0 119 21.5t97.5 42.5 t43.5 21q124 0 124 -353zM1792 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 14. Per le imprese — fa-institution */
.top-link.fa.fa-institution {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2048 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M960 1536l960 -384v-128h-128q0 -26 -20.5 -45t-48.5 -19h-1526q-28 0 -48.5 19t-20.5 45h-128v128zM256 896h256v-768h128v768h256v-768h128v768h256v-768h128v768h256v-768h59q28 0 48.5 -19t20.5 -45v-64h-1664v64q0 26 20.5 45t48.5 19h59v768zM1851 -64 q28 0 48.5 -19t20.5 -45v-128h-1920v128q0 26 20.5 45t48.5 19h1782z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 15. Per i professionisti — fa-user-md */
.top-link.fa.fa-user-md {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1408 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M384 192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 68 5.5 131t24 138t47.5 132.5t81 103t120 60.5q-22 -52 -22 -120v-203q-58 -20 -93 -70t-35 -111q0 -80 56 -136t136 -56 t136 56t56 136q0 61 -35.5 111t-92.5 70v203q0 62 25 93q132 -104 295 -104t295 104q25 -31 25 -93v-64q-106 0 -181 -75t-75 -181v-89q-32 -29 -32 -71q0 -40 28 -68t68 -28t68 28t28 68q0 42 -32 71v89q0 52 38 90t90 38t90 -38t38 -90v-89q-32 -29 -32 -71q0 -40 28 -68 t68 -28t68 28t28 68q0 42 -32 71v89q0 68 -34.5 127.5t-93.5 93.5q0 10 0.5 42.5t0 48t-2.5 41.5t-7 47t-13 40q68 -15 120 -60.5t81 -103t47.5 -132.5t24 -138t5.5 -131zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5 t271.5 -112.5t112.5 -271.5z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 16. Attivita scientifica — fa-spinner (atom with electron orbits) */
.top-link.fa.fa-spinner {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='1.8' fill='%23fff'/%3E%3Cellipse cx='8' cy='8' rx='7' ry='2.5' fill='none' stroke='%23fff' stroke-width='.9'/%3E%3Cellipse cx='8' cy='8' rx='7' ry='2.5' fill='none' stroke='%23fff' stroke-width='.9' transform='rotate(60 8 8)'/%3E%3Cellipse cx='8' cy='8' rx='7' ry='2.5' fill='none' stroke='%23fff' stroke-width='.9' transform='rotate(120 8 8)'/%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 17. Direzione scientifica — fa-gears */
.top-link.fa.fa-gears {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1920 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M896 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1664 128q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1152q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5 t90.5 37.5t37.5 90.5zM1280 731v-185q0 -10 -7 -19.5t-16 -10.5l-155 -24q-11 -35 -32 -76q34 -48 90 -115q7 -11 7 -20q0 -12 -7 -19q-23 -30 -82.5 -89.5t-78.5 -59.5q-11 0 -21 7l-115 90q-37 -19 -77 -31q-11 -108 -23 -155q-7 -24 -30 -24h-186q-11 0 -20 7.5t-10 17.5 l-23 153q-34 10 -75 31l-118 -89q-7 -7 -20 -7q-11 0 -21 8q-144 133 -144 160q0 9 7 19q10 14 41 53t47 61q-23 44 -35 82l-152 24q-10 1 -17 9.5t-7 19.5v185q0 10 7 19.5t16 10.5l155 24q11 35 32 76q-34 48 -90 115q-7 11 -7 20q0 12 7 20q22 30 82 89t79 59q11 0 21 -7 l115 -90q34 18 77 32q11 108 23 154q7 24 30 24h186q11 0 20 -7.5t10 -17.5l23 -153q34 -10 75 -31l118 89q8 7 20 7q11 0 21 -8q144 -133 144 -160q0 -8 -7 -19q-12 -16 -42 -54t-45 -60q23 -48 34 -82l152 -23q10 -2 17 -10.5t7 -19.5zM1920 198v-140q0 -16 -149 -31 q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20 t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31zM1920 1222v-140q0 -16 -149 -31q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68 q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70 q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* 18. Rapporti internazionali — fa-globe */
.top-link.fa.fa-globe {
  padding-left: 41px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1042 887q-2 -1 -9.5 -9.5t-13.5 -9.5q2 0 4.5 5t5 11t3.5 7q6 7 22 15q14 6 52 12q34 8 51 -11 q-2 2 9.5 13t14.5 12q3 2 15 4.5t15 7.5l2 22q-12 -1 -17.5 7t-6.5 21q0 -2 -6 -8q0 7 -4.5 8t-11.5 -1t-9 -1q-10 3 -15 7.5t-8 16.5t-4 15q-2 5 -9.5 11t-9.5 10q-1 2 -2.5 5.5t-3 6.5t-4 5.5t-5.5 2.5t-7 -5t-7.5 -10t-4.5 -5q-3 2 -6 1.5t-4.5 -1t-4.5 -3t-5 -3.5 q-3 -2 -8.5 -3t-8.5 -2q15 5 -1 11q-10 4 -16 3q9 4 7.5 12t-8.5 14h5q-1 4 -8.5 8.5t-17.5 8.5t-13 6q-8 5 -34 9.5t-33 0.5q-5 -6 -4.5 -10.5t4 -14t3.5 -12.5q1 -6 -5.5 -13t-6.5 -12q0 -7 14 -15.5t10 -21.5q-3 -8 -16 -16t-16 -12q-5 -8 -1.5 -18.5t10.5 -16.5 q2 -2 1.5 -4t-3.5 -4.5t-5.5 -4t-6.5 -3.5l-3 -2q-11 -5 -20.5 6t-13.5 26q-7 25 -16 30q-23 8 -29 -1q-5 13 -41 26q-25 9 -58 4q6 1 0 15q-7 15 -19 12q3 6 4 17.5t1 13.5q3 13 12 23q1 1 7 8.5t9.5 13.5t0.5 6q35 -4 50 11q5 5 11.5 17t10.5 17q9 6 14 5.5t14.5 -5.5 t14.5 -5q14 -1 15.5 11t-7.5 20q12 -1 3 17q-4 7 -8 9q-12 4 -27 -5q-8 -4 2 -8q-1 1 -9.5 -10.5t-16.5 -17.5t-16 5q-1 1 -5.5 13.5t-9.5 13.5q-8 0 -16 -15q3 8 -11 15t-24 8q19 12 -8 27q-7 4 -20.5 5t-19.5 -4q-5 -7 -5.5 -11.5t5 -8t10.5 -5.5t11.5 -4t8.5 -3 q14 -10 8 -14q-2 -1 -8.5 -3.5t-11.5 -4.5t-6 -4q-3 -4 0 -14t-2 -14q-5 5 -9 17.5t-7 16.5q7 -9 -25 -6l-10 1q-4 0 -16 -2t-20.5 -1t-13.5 8q-4 8 0 20q1 4 4 2q-4 3 -11 9.5t-10 8.5q-46 -15 -94 -41q6 -1 12 1q5 2 13 6.5t10 5.5q34 14 42 7l5 5q14 -16 20 -25 q-7 4 -30 1q-20 -6 -22 -12q7 -12 5 -18q-4 3 -11.5 10t-14.5 11t-15 5q-16 0 -22 -1q-146 -80 -235 -222q7 -7 12 -8q4 -1 5 -9t2.5 -11t11.5 3q9 -8 3 -19q1 1 44 -27q19 -17 21 -21q3 -11 -10 -18q-1 2 -9 9t-9 4q-3 -5 0.5 -18.5t10.5 -12.5q-7 0 -9.5 -16t-2.5 -35.5 t-1 -23.5l2 -1q-3 -12 5.5 -34.5t21.5 -19.5q-13 -3 20 -43q6 -8 8 -9q3 -2 12 -7.5t15 -10t10 -10.5q4 -5 10 -22.5t14 -23.5q-2 -6 9.5 -20t10.5 -23q-1 0 -2.5 -1t-2.5 -1q3 -7 15.5 -14t15.5 -13q1 -3 2 -10t3 -11t8 -2q2 20 -24 62q-15 25 -17 29q-3 5 -5.5 15.5 t-4.5 14.5q2 0 6 -1.5t8.5 -3.5t7.5 -4t2 -3q-3 -7 2 -17.5t12 -18.5t17 -19t12 -13q6 -6 14 -19.5t0 -13.5q9 0 20 -10.5t17 -19.5q5 -8 8 -26t5 -24q2 -7 8.5 -13.5t12.5 -9.5l16 -8t13 -7q5 -2 18.5 -10.5t21.5 -11.5q10 -4 16 -4t14.5 2.5t13.5 3.5q15 2 29 -15t21 -21 q36 -19 55 -11q-2 -1 0.5 -7.5t8 -15.5t9 -14.5t5.5 -8.5q5 -6 18 -15t18 -15q6 4 7 9q-3 -8 7 -20t18 -10q14 3 14 32q-31 -15 -49 18q0 1 -2.5 5.5t-4 8.5t-2.5 8.5t0 7.5t5 3q9 0 10 3.5t-2 12.5t-4 13q-1 8 -11 20t-12 15q-5 -9 -16 -8t-16 9q0 -1 -1.5 -5.5t-1.5 -6.5 q-13 0 -15 1q1 3 2.5 17.5t3.5 22.5q1 4 5.5 12t7.5 14.5t4 12.5t-4.5 9.5t-17.5 2.5q-19 -1 -26 -20q-1 -3 -3 -10.5t-5 -11.5t-9 -7q-7 -3 -24 -2t-24 5q-13 8 -22.5 29t-9.5 37q0 10 2.5 26.5t3 25t-5.5 24.5q3 2 9 9.5t10 10.5q2 1 4.5 1.5t4.5 0t4 1.5t3 6q-1 1 -4 3 q-3 3 -4 3q7 -3 28.5 1.5t27.5 -1.5q15 -11 22 2q0 1 -2.5 9.5t-0.5 13.5q5 -27 29 -9q3 -3 15.5 -5t17.5 -5q3 -2 7 -5.5t5.5 -4.5t5 0.5t8.5 6.5q10 -14 12 -24q11 -40 19 -44q7 -3 11 -2t4.5 9.5t0 14t-1.5 12.5l-1 8v18l-1 8q-15 3 -18.5 12t1.5 18.5t15 18.5q1 1 8 3.5 t15.5 6.5t12.5 8q21 19 15 35q7 0 11 9q-1 0 -5 3t-7.5 5t-4.5 2q9 5 2 16q5 3 7.5 11t7.5 10q9 -12 21 -2q8 8 1 16q5 7 20.5 10.5t18.5 9.5q7 -2 8 2t1 12t3 12q4 5 15 9t13 5l17 11q3 4 0 4q18 -2 31 11q10 11 -6 20q3 6 -3 9.5t-15 5.5q3 1 11.5 0.5t10.5 1.5 q15 10 -7 16q-17 5 -43 -12zM879 10q206 36 351 189q-3 3 -12.5 4.5t-12.5 3.5q-18 7 -24 8q1 7 -2.5 13t-8 9t-12.5 8t-11 7q-2 2 -7 6t-7 5.5t-7.5 4.5t-8.5 2t-10 -1l-3 -1q-3 -1 -5.5 -2.5t-5.5 -3t-4 -3t0 -2.5q-21 17 -36 22q-5 1 -11 5.5t-10.5 7t-10 1.5t-11.5 -7 q-5 -5 -6 -15t-2 -13q-7 5 0 17.5t2 18.5q-3 6 -10.5 4.5t-12 -4.5t-11.5 -8.5t-9 -6.5t-8.5 -5.5t-8.5 -7.5q-3 -4 -6 -12t-5 -11q-2 4 -11.5 6.5t-9.5 5.5q2 -10 4 -35t5 -38q7 -31 -12 -48q-27 -25 -29 -40q-4 -22 12 -26q0 -7 -8 -20.5t-7 -21.5q0 -6 2 -16z'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center / 31px 31px !important;
}

/* --- Chevron sub-menu links: Unicode replacement for broken FA \f105 --- */
html body .yamm .yamm-content ul.submenu > li > a,
html body .yamm .yamm-content ul .submenu > li > a {
  padding: 2px 15px 2px 5px !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
}
html body .yamm .yamm-content ul.submenu > li > a:before,
html body .yamm .yamm-content ul .submenu > li > a:before,
html body .yamm .yamm-content ul.submenu > li > a::before,
html body .yamm .yamm-content ul .submenu > li > a::before {
  content: "" !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  transform: translateX(0) !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  width: 10px !important;
  height: 14px !important;
  margin-right: 6px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 14'%3E%3Cpolyline points='2,2 6,7 2,12' fill='none' stroke='%23fff' stroke-opacity='0.5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center center / 10px 14px !important;
  transition: transform 200ms ease, background 200ms ease !important;
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
  font-family: inherit !important;
  font-weight: normal !important;
}
html body .yamm .yamm-content ul.submenu > li > a:hover {
  text-decoration: none !important;
}
html body .yamm .yamm-content ul .submenu > li > a:hover {
  text-decoration: none !important;
}
html body .yamm .yamm-content ul.submenu > li > a:hover:before,
html body .yamm .yamm-content ul .submenu > li > a:hover:before,
html body .yamm .yamm-content ul.submenu > li > a:hover::before,
html body .yamm .yamm-content ul .submenu > li > a:hover::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 14'%3E%3Cpolyline points='2,2 6,7 2,12' fill='none' stroke='%23fff' stroke-opacity='1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center center / 10px 14px !important;
  transform: translateX(5px) !important;
}

/* --- Font size: headings 24px, sub-item links 22px --- */
html body .yamm .yamm-content ul.submenu > li > a,
html body .yamm .yamm-content ul .submenu > li > a {
  font-size: 22px !important;
  color: #fff;
  line-height: 1.2;
}

/* --- Heading: spacing, overflow, icon container --- */
/* Specificity: html body .yamm-content .top-link.fa = 0,3,2 — beats D7's .top-link.fa = 0,2,0 */
html body .yamm-content .top-link.fa,
.top-link.fa {
  display: block !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: 24px !important;
  font-weight: normal !important;
  line-height: normal !important;
  min-height: 48px !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin-bottom: 25px !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  position: relative !important;
  z-index: 2 !important;
}
/* (removed: pseudo-element margin-right — now hidden) */

/* Overflow visible chain: ensure no ancestor clips the icon */
.yamm-content,
.yamm-content .row,
.yamm-content .row > ul,
.yamm-content .row > ul > li,
.yamm-content .row > ul > li.menu-item--expanded,
.yamm-content li.menu-item--expanded,
.top-link.fa {
  overflow: visible !important;
}

/* Reduce top padding in dropdown to balance heading spacing */
.yamm .yamm-content {
  padding: 5px 15px 5px 15px !important;
}

@media screen and (max-width: 992px) {
  .yamm .yamm-content .top-link.fa {
    font-size: 20px !important;
  }
}

/* --- Active/open tab: green Burlo background --- */
/* Primary: aria-expanded — specificity must beat navigation.css .navbar.yamm (0,6,0) */
html body .navbar.yamm .navbar-nav .nav-item > .nav-link[aria-expanded="true"],
html body .navbar.yamm .navbar-nav .nav-item > a[aria-expanded="true"] {
  background-color: #009966 !important;
  color: #fff !important;
}
/* :focus-within on li parent */
html body .navbar.yamm .navbar-nav .nav-item:focus-within > .nav-link {
  background-color: #009966 !important;
  color: #fff !important;
}
/* .show class (BS5 standard) */
html body .navbar.yamm .navbar-nav li.show > a,
html body .navbar.yamm .navbar-nav .nav-item.show > .nav-link,
html body .navbar.yamm .navbar-nav .dropdown.show > .dropdown-toggle,
html body .navbar.yamm .navbar-nav > .nav-item.dropdown.show > .nav-link {
  background-color: #009966 !important;
  color: #fff !important;
}
/* Hover — must also beat navigation.css hover rule (0,6,0) */
html body .navbar.yamm .navbar-nav > .nav-item > .nav-link:hover,
html body .navbar.yamm .navbar-nav > .nav-item > .nav-link:focus,
html body .navbar.yamm .navbar-nav .nav-item:hover > .nav-link {
  background-color: #009966 !important;
  color: #fff !important;
}

/* --- Mega menu width: 75vw >1600, 90vw 1200-1599, 100% <1200 --- */
@media (min-width: 1600px) {
  html body .yamm .dropdown-menu,
  html body .yamm .dropdown.yamm-fw .dropdown-menu {
    width: 75vw !important;
    max-width: 75vw !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body .yamm .dropdown.open > .dropdown-menu,
  html body .yamm .dropdown-menu.show {
    transform: translateX(-50%) !important;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  html body .yamm .dropdown-menu,
  html body .yamm .dropdown.yamm-fw .dropdown-menu {
    width: 90vw !important;
    max-width: 90vw !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body .yamm .dropdown.open > .dropdown-menu,
  html body .yamm .dropdown-menu.show {
    transform: translateX(-50%) !important;
  }
}
@media (max-width: 1199px) {
  html body .yamm .dropdown-menu,
  html body .yamm .dropdown.yamm-fw .dropdown-menu {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* ==============================
   FOOTER STYLES
   ============================== */

/* Mappa Veloce accordion button — sfondo bianco, testo verde (D7 match) */
html body .footer .accordion-button {
  background-color: #fff !important;
  color: #009966 !important;
  font-size: 1em !important;
  font-weight: 400 !important;
  font-family: "Titillium Web", sans-serif;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

html body .footer .accordion-button:not(.collapsed) {
  background-color: #fff !important;
  color: #009966 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

html body .footer .accordion-button::after {
  filter: none;
  /* Il chevron BS5 default è scuro — va bene su sfondo bianco */
}

html body .footer .accordion-button:focus {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.footer.mappa.veloce .accordion-body {
  background-color: #e0e0e0;
  padding: 20px;
}

/* Mappa Veloce grid */
.mappa-veloce-heading {
  font-family: "Titillium Web", sans-serif;
  font-weight: 600;
  font-size: 1.1em;
  color: #333;
  margin-bottom: 10px;
  border-bottom: 2px solid #009966;
  padding-bottom: 5px;
}

.mappa-veloce-links li {
  margin-bottom: 3px;
}

.mappa-veloce-links a {
  color: #333;
  text-decoration: none;
  font-size: 0.9em;
}

.mappa-veloce-links a:hover {
  color: #009966;
  text-decoration: underline;
}

/* Footer quick links (3x3 buttons) */
html body .footer-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px !important;
  background-color: #d5d5d5 !important;
  color: #333 !important;
  text-decoration: none;
  font-family: "Titillium Web", sans-serif;
  font-size: 0.9em;
  margin-bottom: 6px;
  transition: background-color 0.2s;
}

html body .footer-btn:hover {
  background-color: #009966 !important;
  color: #fff !important;
  text-decoration: none;
}

html body .footer-quick-links .row {
  row-gap: 8px;
}

.footer-btn svg {
  flex-shrink: 0;
}

/* Social icons */
.footer-social-icons {
  display: flex;
  gap: 10px;
  margin-top: 15px;
}

.footer-social-icons a {
  display: inline-block;
  border-radius: 50%;
  overflow: hidden;
}

.footer-social-icons a:hover {
  opacity: 0.8;
}

/* Footer bottom */
html body .footer.bottom-footer {
  background-color: #666 !important;
  color: #fff;
  padding: 25px 0;
  font-size: 0.85em;
}

.footer.bottom-footer a {
  color: #ddd;
}

.footer-message {
  font-family: "Titillium Web", sans-serif;
}

.footer-wcag {
  margin-top: 15px;
  font-size: 0.8em;
}

.footer-wcag em {
  font-style: italic;
}

/* ============================================================
   FOOTER VISUAL FIXES (Phase 9G_17)
   ============================================================ */

/* FIX 2 — Footer Middle 75/25 grid layout */
html body .footer.middle-footer .region-footer {
  display: grid;
  grid-template-columns: 75% 25%;
  grid-template-rows: auto auto;
}

html body .footer.middle-footer .region-footer > *:first-child {
  grid-column: 1;
  grid-row: 1 / 3;
  padding-right: 20px;
}

html body .footer.middle-footer .region-footer > *:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

html body .footer.middle-footer .region-footer > *:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}

@media (max-width: 767px) {
  html body .footer.middle-footer .region-footer {
    display: block;
  }
  html body .footer.middle-footer .region-footer > * {
    max-width: 100%;
    padding-right: 0;
  }
}

/* FIX 3 — Hide duplicate D7 sprite-based social icons from template */
html body ul.social-icon-footer {
  display: none !important;
}

/* FIX 5 — Hide "Powered by Drupal" block */
html body #block-burlo-bootstrap-powered {
  display: none !important;
}

/* A proposito di questo sito — FIX 1: voci su righe separate (Phase 9G_19) */
html body #block-apropostiodiquestosito ul.menu,
html body #block-apropostiodiquestosito ul {
  display: block !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  padding-left: 0 !important;
  list-style: none !important;
  margin: 0 !important;
}

html body #block-apropostiodiquestosito ul.menu > li,
html body #block-apropostiodiquestosito ul > li {
  display: block !important;
  width: 100% !important;
  float: none !important;
  flex: none !important;
  margin-bottom: 0 !important;
}

html body #block-apropostiodiquestosito ul.menu > li > a,
html body #block-apropostiodiquestosito ul > li > a {
  display: block !important;
  float: none !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #333 !important;
  padding: 0 0 0 15px !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: 0.9em !important;
  text-decoration: none !important;
  border: none !important;
  position: relative !important;
  line-height: 1.2 !important;
  margin-bottom: 0 !important;
}

html body #block-apropostiodiquestosito ul > li > a::before {
  content: '\203A' !important;
  position: absolute !important;
  left: 0 !important;
  color: #666 !important;
  font-size: 1.1em !important;
}

html body #block-apropostiodiquestosito ul > li > a:hover {
  color: #009966 !important;
}

/* A proposito di questo sito — FIX 2: titolo più piccolo (Phase 9G_19) */
html body #block-apropostiodiquestosito h2,
html body #block-apropostiodiquestosito .block-title {
  font-size: 1.1em !important;
  font-family: "Titillium Web", sans-serif !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  white-space: nowrap !important;
  text-transform: lowercase !important;
}

html body #block-apropostiodiquestosito h2::first-letter,
html body #block-apropostiodiquestosito .block-title::first-letter {
  text-transform: uppercase !important;
}

/* Footer Bottom — layout orizzontale: testo sx, bollini dx (Phase 9G_18 FIX 4) */
html body .bottom-footer .region-footer-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

html body .bottom-footer #block-footermessage {
  flex: 0 0 55%;
  max-width: 55%;
}

html body .bottom-footer #block-bannerbollini {
  flex: 0 0 45%;
  max-width: 45%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

html body .bottom-footer #block-wcagbadge {
  flex: 0 0 100%;
}

@media (max-width: 767px) {
  html body .bottom-footer .region-footer-bottom {
    display: block;
  }
  html body .bottom-footer #block-footermessage,
  html body .bottom-footer #block-bannerbollini {
    max-width: 100%;
  }
}

/* Bollini: immagini in riga orizzontale (Phase 9G_18 FIX 5) */
html body .bottom-footer .view-banner .view-content {
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: flex-end;
}

html body .bottom-footer .view-banner .bollino {
  display: inline-block;
  width: auto;
  height: auto;
  border-radius: 0;
  background-size: auto;
  background-position: initial;
}

html body .bottom-footer .view-banner img {
  max-height: 80px;
  width: auto;
}

/* FIX 6 — Mappa Veloce expanded links as cards */
html body .mappa-veloce-links li {
  margin-bottom: 5px;
}

html body .mappa-veloce-links a {
  display: block;
  padding: 8px 12px;
  background-color: #f0f0f0;
  color: #333;
  text-decoration: none;
  font-size: 0.9em;
  font-family: "Titillium Web", sans-serif;
  transition: background-color 0.2s;
}

html body .mappa-veloce-links a:hover {
  background-color: #ddd;
  color: #009966;
}

/* ============================================================
   FOOTER VISUAL FIXES (Phase 9G_19)
   ============================================================ */

/* FIX 4 — Mappa Veloce: container allineato alla larghezza standard BS5 */
/* No padding override — BS5 .container default (0.75rem) matches middle-footer */

html body .footer.mappa.veloce .accordion-item {
  border: none !important;
  border-radius: 0 !important;
}

html body .footer.mappa.veloce .accordion-button {
  border-radius: 0 !important;
}

html body .footer.mappa.veloce {
  padding: 0 !important;
}

/* FIX 5 — Spacing: Mappa Veloce → quick links */
html body .footer .accordion-body {
  padding-bottom: 15px !important;
}

html body .footer.mappa.veloce {
  margin-bottom: 18px !important;
}

/* FIX 6 — Footer Message: interlinea uniforme */
html body .footer-message,
html body .footer-message div,
html body .footer-message p {
  line-height: 1.6 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

/* FIX 7 — Spacing: social icons → footer bottom */
html body .footer.middle-footer {
  padding-bottom: 5px !important;
}

html body #block-socialicons,
html body .footer-social-icons {
  margin-bottom: 2px !important;
}

/* FIX 8 — Social icons cerchi colorati */
html body .footer-social-icons .social-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  text-decoration: none;
  transition: opacity 0.2s;
}

html body .footer-social-icons .social-circle:hover {
  opacity: 0.8;
}

/* ============================================================
   FOOTER VISUAL FIXES (Phase 9G_20)
   ============================================================ */

/* FIX 1 — Hide ALL duplicate social icons except the custom block SVGs
   The template menu--menu-a-proposito-di-questo-sito.html.twig outputs
   ul.social-icon-footer with sprite-based icons. Only #block-socialicons
   .footer-social-icons (SVG circles) is the correct version. */
html body ul.social-icon-footer,
html body .region-footer ul.social-icon-footer,
html body nav ul.social-icon-footer,
html body nav#block-apropostiodiquestosito ul.social-icon-footer,
html body #block-apropostiodiquestosito ul.social-icon-footer,
html body .social-icon-footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* FIX 2 — "A proposito di questo sito": left alignment + compact spacing */
html body #block-apropostiodiquestosito ul.menu > li,
html body #block-apropostiodiquestosito ul > li {
  text-align: left !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1.2 !important;
}

html body #block-apropostiodiquestosito ul.menu > li > a,
html body #block-apropostiodiquestosito ul > li > a {
  text-align: left !important;
  padding: 0 0 0 12px !important;
  font-size: 0.85em !important;
  line-height: 1.2 !important;
  margin-bottom: 0 !important;
}

html body #block-apropostiodiquestosito ul.menu,
html body #block-apropostiodiquestosito ul {
  text-align: left !important;
}

html body #block-apropostiodiquestosito h2 {
  text-align: left !important;
}

/* FIX 3a — Mappa Veloce: eliminate white borders, standard container width */
html body .footer.mappa.veloce {
  padding: 0 !important;
  margin: 0 !important;
  background-color: #e0e0e0 !important;
}

html body .footer.mappa.veloce .container {
  padding-left: 12px !important;
  padding-right: 12px !important;
  margin: 0 auto !important;
}

html body .footer.mappa.veloce .accordion {
  margin: 0 -19px !important;
  padding: 0 !important;
  border: none !important;
}

html body .footer.mappa.veloce .accordion-header {
  border: none !important;
}

html body .footer.mappa.veloce .accordion-item {
  border: none !important;
  border-radius: 0 !important;
  background-color: transparent !important;
}

html body .footer.mappa.veloce .accordion-button {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding-left: 12px !important;
}

/* FIX 3b — Spacing between Amm. Trasparente banner and Mappa Veloce */
html body .ammtrasp-banner {
  margin-bottom: 0 !important;
}

html body .footer.mappa.veloce {
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}

/* FIX 4 — Hide logout link in footer menu (precaution for authenticated users) */
html body #block-apropostiodiquestosito a[href="/user/logout"],
html body #block-apropostiodiquestosito a[href*="logout"] {
  display: none !important;
}

/* ============================================================
   CONTENT AREA: White background areas (Phase 9G_22)
   Matches D7 layout: full-bleed breadcrumb+title bar and
   container-width node body card on white (#fff) against
   gray (#e8e8e8) page background.
   Scoped via :has() to pages with breadcrumbs (excludes homepage).
   Full-bleed uses oversized ::before pseudo-element;
   body already has overflow-x:hidden (D7 legacy CSS).
   ============================================================ */

/* Area 1: Breadcrumbs + title — full-bleed white background, flush with navbar */
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) .highlighted,
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) #block-burlo-bootstrap-page-title {
  position: relative;
  z-index: 0;
}

.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) .highlighted::before,
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) #block-burlo-bootstrap-page-title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -9999px;
  right: -9999px;
  background-color: #ffffff;
  z-index: -1;
}

/* Breadcrumb area padding */
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) .highlighted {
  padding: 10px 20px 0 !important;
  margin-bottom: 0 !important;
}

/* Title area padding — continuous with breadcrumbs (no gap) */
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) #block-burlo-bootstrap-page-title {
  padding: 5px 20px 15px;
}

/* Area 2: Node body content — container-width white card (unchanged) */
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) #block-burlo-bootstrap-content {
  background-color: #ffffff;
  padding: 15px 20px;
  margin-top: 30px; /* matches BS3 column gutter: 15px + 15px */
}

/* Referente field: separation from preceding content (body, attachments, etc.) */
.node__content .field--name-field-referente {
  margin-top: 20px;
}

/* ============================================================
   Field labels: colon after label (matching D7 appearance)
   D7 hardcoded ":&nbsp;" after every field label; D10 does not.
   ============================================================ */
.node .field--label-inline .field__label::after,
.node .field--label-above .field__label::after {
  content: ":";
}

/* Field labels: bold (matching D7) */
.node .field__label {
  font-weight: 700;
}

/* Remove extra padding-right on inline labels (Bootstrap field.css adds 5px
   on entity-reference labels; combined with inline-block whitespace after
   the ":" it creates a double-space gap). */
.node .field--label-inline .field__label {
  padding-right: 0;
}

/* Compact vertical spacing between inline fields at bottom of node.
   Bootstrap field.css sets 1.2em margin — too much for stacked metadata. */
.node .field--label-inline {
  margin-bottom: 0.15em;
}

/* Calendar icon before date values (matching D7 FontAwesome \f133).
   D7 used .node .date-display-single::before with FA fa-calendar-o.
   D10 renders dates in <time class="datetime"> inside the field__item. */
.node .field--type-datetime .field__item::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 6px;
  vertical-align: -1px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%23666'%3E%3Cpath d='M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24v40H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64h320c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64h-40V24c0-13.3-10.7-24-24-24s-24 10.7-24 24v40H152V24zM48 192h352V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192z'/%3E%3C/svg%3E");
}

/* ============================================================
   File icons: show PNG <img> icons in body text.
   D7 legacy CSS (d7/style.css:8274) hides <img> with display:none
   because D7 theme used Font Awesome ::before icons instead.
   In D10 Font Awesome codes don't render → restore PNG icons.
   ============================================================ */
.file img.file-icon {
  display: inline !important;
  width: 16px;
  height: 16px;
  vertical-align: middle;
}
/* Remove broken Font Awesome ::before content from file links.
   Icons are handled via background-image by Bootstrap contrib file.css */
.file a::before,
.field-type-file .field-item a::before {
  content: none !important;
}
/* Override d7/style.css:8284 "display:block" on file links —
   keep icon and link text on the same line */
.file a {
  display: inline !important;
}

/* ============================================================
   File icons for field-formatter-rendered links (no <img> tag).
   Scoped to .field--type-file (entity field display),
   .views-view-table (Views tables), and .view .file (all Views
   including unformatted-list style). Avoids body-text file links
   which may already have <img> icons.
   ============================================================ */
.field--type-file .file,
.views-view-table .file,
.view .file {
  padding-left: 20px;
  display: inline-block;
  margin-top: 0;          /* reset d7/style.css:8003 "td + td .file { margin-top:15px }" */
  min-height: 16px;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 16px 16px;
}
.field--type-file .file--application-pdf,
.views-view-table .file--application-pdf,
.view .file--application-pdf {
  background-image: url(/themes/contrib/bootstrap/images/icons/application-pdf.png);
}
.field--type-file .file--x-office-document,
.views-view-table .file--x-office-document,
.view .file--x-office-document {
  background-image: url(/themes/contrib/bootstrap/images/icons/x-office-document.png);
}
.field--type-file .file--x-office-spreadsheet,
.views-view-table .file--x-office-spreadsheet,
.view .file--x-office-spreadsheet {
  background-image: url(/themes/contrib/bootstrap/images/icons/x-office-spreadsheet.png);
}
.field--type-file .file--x-office-presentation,
.views-view-table .file--x-office-presentation,
.view .file--x-office-presentation {
  background-image: url(/themes/contrib/bootstrap/images/icons/x-office-presentation.png);
}
.field--type-file .file--package-x-generic,
.views-view-table .file--package-x-generic,
.view .file--package-x-generic {
  background-image: url(/themes/contrib/bootstrap/images/icons/package-x-generic.png);
}
.field--type-file .file--text,
.view .file--text {
  background-image: url(/themes/contrib/bootstrap/images/icons/text-x-generic.png);
}
.field--type-file .file--image,
.view .file--image {
  background-image: url(/themes/contrib/bootstrap/images/icons/image-x-generic.png);
}
.field--type-file .file--video,
.view .file--video {
  background-image: url(/themes/contrib/bootstrap/images/icons/video-x-generic.png);
}
.field--type-file .file--audio,
.view .file--audio {
  background-image: url(/themes/contrib/bootstrap/images/icons/audio-x-generic.png);
}
.field--type-file .file--general,
.field--type-file .file--application-octet-stream,
.view .file--general,
.view .file--application-octet-stream {
  background-image: url(/themes/contrib/bootstrap/images/icons/application-octet-stream.png);
}

/* ==========================================================================
   SIDEBAR STYLING — Migrated from D7 burlobs2
   ========================================================================== */

/* --- YAMM sidebar: simple vertical section navigation --- */

#block-yamm-sidebar {
  margin-top: 0;
  margin-bottom: 20px;
}

/* Section titles (level 2 headings: "Chi siamo", "Organizzazione", etc.) */
.sidebar-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* L2 items: zero internal spacing, uniform gap between siblings */
.sidebar-menu > .sidebar-menu__item {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

/* Uniform gap between all L2 items except the first */
.sidebar-menu > .sidebar-menu__item + .sidebar-menu__item {
  margin-top: 12px !important;
}

/* Level 2 section headings — !important to override d7/style.css
   .top-link.fa { font: ... !important } and SVG background rules.
   Per-icon SVG backgrounds override this base background below. */
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link {
  display: block !important;
  padding: 12px 15px !important;
  margin: 0 !important;
  font-size: 20px !important;
  font-weight: bold !important;
  font-family: "Titillium Web", sans-serif !important;
  line-height: 1.4 !important;
  background: #999 !important;
  color: #fff !important;
  text-align: center !important;
  text-decoration: none !important;
  border: none !important;
  width: auto !important;
}

/* Sidebar FA icons via SVG background-image (Approach B).
   Uses same corrected SVGs as mega-menu (viewBox 2300, Y-axis flipped).
   Icon at 10px from left, 22px size, padding-left:42px for text offset. */
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-hospital-o {
  padding-left: 42px !important;
  background: #999 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1408 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item--active-trail > .sidebar-menu__link--active-trail.fa-hospital-o {
  background: #096 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1408 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-hospital-o:hover {
  background: #777 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1408 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-sitemap {
  padding-left: 42px !important;
  background: #999 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item--active-trail > .sidebar-menu__link--active-trail.fa-sitemap {
  background: #096 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-sitemap:hover {
  background: #777 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1792 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-graduation-cap {
  padding-left: 42px !important;
  background: #999 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2304 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item--active-trail > .sidebar-menu__link--active-trail.fa-graduation-cap {
  background: #096 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2304 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}
.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link.fa-graduation-cap:hover {
  background: #777 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2304 2300'%3E%3Cg transform='translate(0,1792) scale(1,-1)'%3E%3Cpath fill='%23fff' d='M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z'/%3E%3C/g%3E%3C/svg%3E") no-repeat 10px center / 28px 28px !important;
}


.sidebar-menu > .sidebar-menu__item > .sidebar-menu__link:hover {
  background: #777 !important;
  color: #fff !important;
}

.sidebar-menu > .sidebar-menu__item--active-trail > .sidebar-menu__link--active-trail {
  background: #096 !important;
  color: #fff !important;
}

/* Sub-items list: zero gap to heading above */
.sidebar-menu__sub {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}

.sidebar-menu__sub > .sidebar-menu__item {
  margin: 0 !important;
  padding: 0 !important;
}

.sidebar-menu__sub > .sidebar-menu__item > .sidebar-menu__link {
  display: block;
  padding: 8px 15px;
  background-color: #fff;
  color: #383838;
  font-size: 16px;
  text-align: center;
  text-decoration: none;
  border-bottom: 1px solid #eee;
}

.sidebar-menu__sub > .sidebar-menu__item > .sidebar-menu__link:hover,
.sidebar-menu__sub > .sidebar-menu__item > .sidebar-menu__link:focus {
  color: #fff;
  background-color: #096;
}

.sidebar-menu__sub .sidebar-menu__link--active-trail,
.sidebar-menu__sub .sidebar-menu__link--current {
  color: #fff;
  background-color: #096;
  font-weight: bold;
}

/* Deeper nested sub-items (level 4+) */
.sidebar-menu__sub .sidebar-menu__sub {
  padding-left: 0;
}

.sidebar-menu__sub .sidebar-menu__sub > .sidebar-menu__item > .sidebar-menu__link {
  padding-left: 30px;
  font-size: 13px;
}

/* --- Book navigation (Amministrazione Trasparente) --- */

.block-book-navigation {
  margin-top: 15px;
  margin-bottom: 20px;
}

.block-book-navigation > h2 {
  font-size: 22px;
  line-height: 1em;
  background-color: #009966;
  padding: 12px 15px;
  color: #fff;
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
}

.block-book-navigation .content > .menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.block-book-navigation .menu .menu-item {
  margin-bottom: 0;
}

.block-book-navigation .menu .menu-item > a {
  display: block;
  padding: 8px 12px;
  background-color: #fff;
  color: #383838;
  font-size: 15px;
  text-align: center;
  text-decoration: none;
  border-bottom: 1px solid #eee;
}

.block-book-navigation .menu .menu-item > a:hover,
.block-book-navigation .menu .menu-item > a:focus {
  color: #fff;
  background-color: #096;
}

.block-book-navigation .menu .menu-item > a.is-active {
  color: #fff;
  background-color: #096;
  font-weight: bold;
}

/* Nested book menu items (sub-levels) */
.block-book-navigation .menu .menu {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.block-book-navigation .menu .menu .menu-item > a {
  font-size: 14px;
  padding: 6px 12px 6px 25px;
  text-align: left;
}

/* --- Hide inline book navigation in node body --- */
.book-navigation {
  display: none;
}

/* --- Sidebar responsive --- */

@media (max-width: 767.98px) {
  aside[role="complementary"] {
    margin-top: 30px;
  }
}

/* =============================================
   Book Children Pulsantiera (Amministrazione Trasparente)
   Replicates D7 Panels book-toc button list in content area
   ============================================= */

.book-children-pulsantiera {
  margin-top: 20px;
  margin-bottom: 20px;
}

.book-children-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.book-children-item {
  border-bottom: 1px solid #ddd;
}

.book-children-item:first-child {
  border-top: 1px solid #ddd;
}

.book-children-link {
  display: flex;
  align-items: center;
  padding: 12px 15px;
  color: #333;
  text-decoration: none;
  background-color: #fff;
  transition: background-color 0.15s ease;
}

.book-children-link:hover,
.book-children-link:focus {
  background-color: #f5f5f5;
  color: #009966;
  text-decoration: none;
}

.book-children-chevron {
  color: #009966;
  font-size: 20px;
  font-weight: bold;
  margin-right: 10px;
  flex-shrink: 0;
  line-height: 1;
}

.book-children-title {
  flex-grow: 1;
  font-size: 15px;
}

/* Icona documento SVG a destra — replica lo stile D7 */
.book-children-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-left: 10px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='%23009966' d='M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

/* Panel Views Embed — replaces D7 Panels View panes */
.panel-views-embed {
  margin-top: 20px;
}

/* Landing page teaser cards — replica D7 DS section layout */
.landing-cards-container {
  margin-top: 20px;
}

.landing-card {
  background-color: #f5f5f5;
  padding: 15px 20px;
  height: 100%;
}

.landing-card-border-top {
  border-top: 3px solid #009966;
  margin-bottom: 10px;
}

.landing-card h3 {
  margin-top: 0;
  margin-bottom: 10px;
}

.landing-card h3 a {
  color: #009966;
  text-decoration: none;
  font-size: 1.1em;
  font-weight: 600;
}

.landing-card h3 a:hover {
  text-decoration: underline;
}

.landing-card p {
  color: #555;
  font-size: 0.9em;
  margin: 10px 0;
}

.landing-card .readmore {
  color: #009966;
  text-decoration: none;
  font-size: 0.9em;
  display: inline-block;
  margin-top: 5px;
  position: relative;
  padding-left: 24px;
}

.readmore:before {
  /* Override D7 CSS FontAwesome fa-hand-o-right (\f0a4) with cross-browser SVG.
     Global selector — covers landing cards, Views teasers, and any other context. */
  font-family: inherit !important;
  content: '' !important;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23009966' d='M295.6 163.7c-5.1 5-5.1 13.3-.1 18.4l60.8 60.9H124.2c-7.1 0-12.9 5.8-12.9 13s5.8 13 12.9 13h232.1l-60.8 60.9c-5 5.1-5 13.3.1 18.4 5.1 5 13.2 5 18.3-.1l82.4-83c1.1-1.2 2-2.5 2.7-4.1.7-1.6 1-3.3 1-5 0-3.4-1.3-6.6-3.7-9.1l-82.4-83c-5.1-5.1-13.2-5.1-18.3-.3z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  transition: left 200ms ease-in-out;
}

.landing-card .readmore:hover {
  text-decoration: underline;
}

.readmore:hover:before {
  left: 5px;
}

/* Personale view table: vertical alignment and centered link columns */
.tabella-personale td {
  vertical-align: middle;
}
.tabella-personale td .file {
  margin-top: 0;
  display: inline;
}
.tabella-personale td h3 {
  margin: 0;
}
.tabella-personale td:nth-child(n+2) {
  text-align: center;
}

/* View documenti: Bootstrap 5 sets caption-side:bottom — override to show
   grouping headings ("Anno: 20xx") above their tables, not below */
.views-view-table caption {
  caption-side: top;
}

/* View tables: vertical-align top on table cells (matches D7 behaviour).
   Must match specificity of d7/style.css:2272 "table > tbody > tr > td"
   which also sets vertical-align: top */
.views-view-table > tbody > tr > td {
  vertical-align: top;
}
/* View documenti: restore vertical-align middle so the year in "Data doc."
   stays centred when the adjacent file cell has taller content */
.view-documenti .views-view-table > tbody > tr > td {
  vertical-align: middle;
}
/* View documenti: prevent column headers from wrapping */
.views-view-table th {
  white-space: nowrap;
}

/* View documenti: force grouped tables to full width (Bootstrap row/col makes them horizontal) */
.view-documenti .view-content.row {
  display: block;
}
.view-documenti .view-content .table-responsive.col {
  width: 100%;
  max-width: 100%;
  flex: none;
}

/* View concorso: force grouped tables to full width (same fix as documenti) */
.view-concorso .view-content.row {
  display: block;
}
.view-concorso .view-content .table-responsive.col {
  width: 100%;
  max-width: 100%;
  flex: none;
}

/* Fix 2: Long PDF filenames — break words to prevent horizontal scroll */
.tabella-concorso .file a {
  word-break: break-all;
  overflow-wrap: break-word;
}
.tabella-concorso td {
  max-width: 600px;
}

/* Fix 3: Transparent background on file list-group-items inside table rows */
.tabella-concorso .list-group-item,
.view-performance .list-group-item,
.view-documenti .list-group-item,
.view-bandi-di-gara-contratti .list-group-item,
.view-consulenti .list-group-item {
  background-color: transparent;
  border: none;
  padding: 0;
}

/* View bandi_di_gara_contratti: stack grouped tables vertically (not side-by-side) */
.view-bandi-di-gara-contratti .view-content.row {
  display: block;
}
.view-bandi-di-gara-contratti .view-content .table-responsive.col {
  width: 100%;
  max-width: 100%;
  flex: none;
}

/* Bandi gara — prevent horizontal scroll from long filenames */
.tabella-bandi-gara .file a {
  word-break: break-all;
}
.tabella-bandi-gara td {
  max-width: 600px;
}

/* ============================================================
   Sidebar BEF exposed filter blocks — uniform styling
   Covers: concorso_exposed_filters, bandi_gara_exposed_filters,
   bandi_gara_form_exposed_filters
   ============================================================ */
/* Transparent background */
.bef-exposed-form.block {
  background-color: transparent !important;
  box-shadow: none;
  border: none;
}
/* "Applica" button aligned right — margin-left:auto for flex containers */
.bef-exposed-form .form-actions {
  text-align: right;
  margin-left: auto;
}
/* View performance: field labels (Obiettivi, R.A.R.) styled to match year headings */
.view-performance h4 {
  font-size: 1.2em;
  font-weight: normal;
  margin-top: 0.8em;
  margin-bottom: 0.3em;
}

/* Fix 4: Concorso block_1 exposed filters — sidebar block styling */
/* The exposed form is placed as a separate block in sidebar_second via
   exposed_block: true on the View. Style the block to look like a card. */
/* Align sidebar top with content area (match BS3 column gutter: 30px) */
.main-container .page-content:has(#block-burlo-bootstrap-breadcrumbs) aside[role="complementary"] {
  margin-top: 30px;
}
.block-views-exposed-filter-blockconcorso-block-1 {
  padding: 1rem;
  background: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 4px;
  margin-bottom: 1.5rem;
}
.block-views-exposed-filter-blockconcorso-block-1 .d-flex {
  flex-direction: column;
}
.block-views-exposed-filter-blockconcorso-block-1 .form-actions {
  margin-top: 0.5rem;
}

/* Consulenti table: section captions as headings */
.view-consulenti caption {
  caption-side: top;
  font-size: 2rem;
  font-weight: 600;
  padding: 1.25rem 0;
  margin-top: 1.5rem;
  color: #333;
}
/* Consulenti table: Durata column — each date on its own line */
.view-consulenti td[headers^="view-field-periodo"] time {
  display: block;
}
/* Consulenti table: prevent overflow from long filenames */
.view-consulenti table {
  table-layout: fixed;
  width: 100%;
}
.view-consulenti td {
  word-break: break-all;
  overflow-wrap: break-word;
}
.view-consulenti .file a {
  word-break: break-all;
  overflow-wrap: break-word;
}
/* Consulenti table: column widths (Incaricato, CV, Incarico, Durata, dettagli) */
.view-consulenti th:nth-child(1),
.view-consulenti td:nth-child(1) { width: 18%; }
.view-consulenti th:nth-child(2),
.view-consulenti td:nth-child(2) { width: 5%; text-align: center; overflow: hidden; }
.view-consulenti th:nth-child(3),
.view-consulenti td:nth-child(3) { width: 33%; }
.view-consulenti th:nth-child(4),
.view-consulenti td:nth-child(4) { width: 18%; white-space: nowrap; }
.view-consulenti th:nth-child(5),
.view-consulenti td:nth-child(5) { width: 8%; white-space: nowrap; }
/* CV column: center PDF icon */
.view-consulenti td:nth-child(2) {
  padding: 0;
}
.view-consulenti td:nth-child(2) span.file {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0.5rem 0;
}
.view-consulenti td:nth-child(2) span.file a {
  display: inline-flex;
  margin: 0;
  padding: 0;
}
