@font-face {font-family: RobotoCondensed; font-style: normal; font-weight: 900; src:url("fonts/RobotoCondensed-Bold.ttf") format("truetype");}
@font-face {font-family: RobotoCondensed; font-style: normal; font-weight: 700; src:url("fonts/RobotoCondensed-Regular.ttf") format("truetype");}
@font-face {font-family: RobotoCondensed; font-style: normal; font-weight: 400; src:url("fonts/RobotoCondensed-Light.ttf") format("truetype");}

@font-face {font-family: SpecialElite; font-style: normal; font-weight: 400; src:url("fonts/SpecialElite-Regular.ttf") format("truetype");}

.

/* RESET BROWSERSTYLE */
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,hr,blockquote {padding: 0; margin: 0;}

/* GLOBAL */
h1, h2, h3, h4, h5, h6 {color: #573;}
h1 {font-family: RobotoCondensed, arial, sans-serif; font-size: 40px; line-height: 1.2em; font-weight: 400; padding: 18px 0 6px 0; margin: 0;}
h2 {font-family: RobotoCondensed, arial, sans-serif; font-size: 32px; line-height: 1.2em; font-weight: 400; padding: 18px 0 6px 0; margin: 0;}
h3 {font-family: RobotoCondensed, arial, sans-serif; font-size: 28px; line-height: 1.2em; font-weight: 400; padding: 18px 0 6px 0; margin: 0;}
h4 {font-family: RobotoCondensed, arial, sans-serif; font-size: 24px; line-height: 1.2em; font-weight: 400; padding: 16px 0 6px 0; margin: 0;}
h5 {font-family: RobotoCondensed, arial, sans-serif; font-size: 22px; line-height: 1.2em; font-weight: 400; padding: 16px 0 6px 0; margin: 0;}
h6 {font-family: RobotoCondensed, arial, sans-serif; font-size: 20px; line-height: 1.2em; font-weight: 400; padding: 16px 0 6px 0; margin: 0;}
p {padding: 8px 0;}
ol {margin: 6px 0 6px 20px;}
ol li {line-height: 1.3em; border: 0; padding: 3px 0; margin: 2px 0;}
ul {list-style: disc; margin: 6px 0 6px 20px;}
ul li {line-height: 1.3em; border: 0; padding: 3px 0; margin: 0;}
hr {height: 1px; clear: both; color: #aaa; background-color: #aaa; border: 0; margin: 16px 0;}
blockquote {background: #d0d9df; color: #222; border-left: 6px solid #869; padding: 6px 20px; margin: 10px 0;}
img {box-sizing: border-box; max-width: 100%; height: auto;}


/* Container orizzontale del menu */
.tplge_horizontalMenu {
  background: #234;
  padding: 12px 20px;
  text-align: center;
  font-family: RobotoCondensed, sans-serif;
  z-index: 1000;
}

/* Primo livello: rettangoli colorati */
.tplge_horizontalMenu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tplge_horizontalMenu ul li {
  display: inline-block;
  position: relative;
  margin: 0 8px;
}

.tplge_horizontalMenu ul li a {
  display: inline-block;
  background-color: #07a;        /* Rettangolo colorato */
  color: #fff;
  padding: 10px 16px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: bold;
  text-transform: uppercase;
  transition: background 0.3s ease;
}

.tplge_horizontalMenu ul li:hover a {
  background-color: #29c;
}

/* Secondo livello: tendina sotto il primo */
.tplge_horizontalMenu ul li ul {
  display: none;
  position: absolute;
  top: 100%;    /* sotto il primo livello */
  left: 0;
  background-color: #345;
  padding: 8px 0;
  border-radius: 6px;
  z-index: 1001;
}

.tplge_horizontalMenu ul li:hover ul {
  display: block;
}

/* Voci del secondo livello */
.tplge_horizontalMenu ul li ul li {
  display: block;
  margin: 0;
}

.tplge_horizontalMenu ul li ul li a {
  display: block;
  padding: 8px 16px;
  background-color: #345;
  color: #fe0;
  border-radius: 0;
  text-transform: none;
}

.tplge_horizontalMenu ul li ul li:hover a {
  background-color: #29c;
  color: #fff;
}

/* Terzo livello: submenu laterale */
.tplge_horizontalMenu ul li ul li ul {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  background-color: #456;
  padding: 8px 0;
  border-radius: 6px;
}

.tplge_horizontalMenu ul li ul li:hover ul {
  display: block;
}

.tplge_horizontalMenu ul li ul li ul li a {
  padding: 8px 16px;
  background-color: #456;
  color: #fff;
}

.tplge_horizontalMenu ul li ul li ul li:hover a {
  background-color: #69c;
}

/* ===============================
   IMMAGINE CON EFFETTO FULLSCREEN
   =============================== */
.immagine-evento img {
  max-width: 100%;
  height: auto;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 8px;
}

.immagine-evento img:hover {
  transform: scale(1.03);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
}

/* ===============================
   PULSANTE USCITA FULLSCREEN
   =============================== */
.exit-fullscreen {
  display: none;
  position: fixed;
  top: 20px;
  right: 20px;
  background-color: #003366;
  color: #fff;
  border: none;
  padding: 10px 16px;
  font-size: 14px;
  border-radius: 6px;
  cursor: pointer;
  z-index: 9999;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.exit-fullscreen:hover {
  background-color: #005599;
}



/* 
##############################
 C O N T E N T  C L A S S E S 
##############################
*/

img.tplge_border {background: #fff; border: 1px solid #aaa; border-radius: 3px; padding: 6px;}
img.tplge_left_border {display: block; background: #fff; float: left; max-width: 44%; border: 1px solid #aaa; border-radius: 3px; padding: 6px; margin: 0 20px 16px 0;}
img.tplge_right_border {display: block; background: #fff; float: right; max-width: 44%; border: 1px solid #aaa; border-radius: 3px; padding: 6px; margin: 0 0 16px 20px;}
img.tplge_left_noborder {display: block; float: left; max-width: 44%; border: 0; margin: 0 20px 16px 0;}
img.tplge_right_noborder {display: block; float: right; max-width: 44%; border: 0; margin: 0 0 16px 20px;}
img.tplge_left {display: block; float: left; max-width: 44%; border: 0; margin: 0 20px 16px 0;}
img.tplge_right {display: block; float: right; max-width: 44%; border: 0; margin: 0 0 16px 20px;}
img.tplge_centered {display: block; border: 0; margin: 16px auto;}
img.tplge_centered_noborder {display: block; border: 0; margin: 16px auto;}
img.tplge_centered_border {display: block; background: #fff; border: 1px solid #aaa; border-radius: 3px; padding: 6px; margin: 16px auto;}


.tplge_clearLeft {clear: left;}
.tplge_clearRight {clear: right;}
.tplge_clearBoth {clear: both;}

/* Contentboxen */
div.tplge_contentboxleft {width: 47%; min-height: 60px; float: left; box-sizing: border-box; background: #d0d3d9; font-size: 17px; line-height: 1.3em; border: 0px solid #aaa; border-radius: 3px; padding: 12px 20px 10px 20px; margin: 12px 3% 12px 0;}
div.tplge_contentboxright {width: 47%; min-height: 60px; float: right; box-sizing: border-box; background: #d0d3d9; font-size: 17px; line-height: 1.3em; border: 0px solid #aaa; border-radius: 3px; padding: 12px 20px 10px 20px; margin: 12px 0 12px 3%;}
div.tplge_contentboxfullsize {clear: both; width: 100%; min-height: 60px; box-sizing: border-box; background: #d0d3d9; font-size: 17px; border: 0px solid #aaa; border-radius: 3px; padding: 12px 20px 10px 20px; margin: 12px 0 12px 0;}
.tplge_headlineContentBox {font-size: 20px; padding: 0; margin: 0;}
.tplge_contentboxesClear {clear: both; height: 1px; overflow: hidden;}

.tplge_code {clear: both; background: #eeeee6; color: #222; font-family: 'courier new', monospace; font-size: 15px; border: 2px solid #aaa; padding: 10px 16px; margin: 10px 0; overflow: scroll;}
.tplge_box01 {width: 75%; clear: both; background: #536; color: #fff; border: 9px solid #869; border-radius: 3px; padding: 12px 2%; margin: 5px auto 10px auto;}
.tplge_legal {padding: 6px 0;}

/* TinyMCE image descriptions */
figure.image {display: table; background: #fff; border: 1px solid #aaa; border-radius: 5px; padding: 9px; margin: 10px auto 20px auto;}
figure.align-left {max-width: 40%; float: left; margin: 10px 3% 20px 0;}
figure.align-right {max-width: 40%; float: right; margin: 10px 0 20px 3%;}
figure.align-center {float: none; margin: 20px auto;}
figure.image img {display: block; padding: 0; margin: 0 auto;}
figure.image figcaption {background: #fff; color: #222; text-align: center; font-size: 16px; line-height: 1.2em; padding: 9px 12px;}

/* table basic design */
table {border-collapse: collapse;}
td {min-width: 20px!important;}

/* table design grey */
table.grey {width: 100%; height: auto; background: #fff; border: 0; margin: 2px 0 16px 0; border-collapse: separate;}
table.grey td {width: auto; height: auto; vertical-align: top; background: #d0d6d9; color: #333; line-height: 1.3em; border: 0!important; padding: 8px 12px;}
table.grey td p {margin: 6px 0;} 

/* table design white */
table.white {width: 100%; height: auto; background: #fff; border: 0; border-collapse: collapse; margin: 2px 0 16px 0;}
table.white td {width: auto; height: auto; vertical-align: top; background: #fff; color: #333; line-height: 1.3em; border: 1px solid #aaa!important; padding: 8px 10px;}
table.white td p {margin: 6px 0;} 

/* unsichtbare Tabelle linksbündig / unvisible table align left */
table.transparent {width: 100%; height: auto; border: 0; border-collapse: collapse; margin: 2px 0 16px 0;}
table.transparent td {width: auto; height: auto; vertical-align: top; line-height: 1.3em; border: 0px solid!important; padding: 8px 24px 8px 0;}
table.transparent td p {margin: 6px 0;}

.slider-container {
  position: relative;
  max-width: 400px;
  margin: 30px auto;
  border: 4px solid limegreen;
  border-radius: 12px;
  padding: 10px;
  background-color: #f6fff6;
  box-shadow: 0 0 15px rgba(0, 255, 0, 0.3);
  overflow: hidden;
  text-align: center;
}

.slider-image {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.8s ease-in-out;
  opacity: 1;
}

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2rem;
  cursor: pointer;
  background-color: rgba(0,0,0,0.4);
  color: white;
  padding: 10px;
  border-radius: 50%;
  user-select: none;
  z-index: 10;
}

.arrow.left {
  left: 15px;
}

.arrow.right {
  right: 15px;
}

@media (max-width: 768px) {
.arrow {
    font-size: 1.5rem;
    padding: 8px;
}

.slider-container {
    max-width: 90%;
}
}

css
.stallone-card {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-direction: row-reverse; /* immagine a sinistra, testo a destra */
  border: 3px solid limegreen;
  border-radius: 10px;
  padding: 20px;
  background-color: #f9fff9;
  max-width: 600px;
  margin: 30px auto;
  box-shadow: 0 0 12px rgba(0, 255, 0, 0.2);
}

.stallone-image {
  flex: 0 1 200px;
  text-align: left;
}

.stallone-image img {
  max-width: 180px;
  height: auto;
  border-radius: 8px;
  border: 2px solid limegreen;
}

.stallone-info {
  flex: 1 1 300px;
  padding-left: 20px;
}

.stallone-info h2 {
  font-size: 1.5em;
  margin-bottom: 10px;
}

.stallone-info p {
  font-size: 1.1em;
  margin-bottom: 15px;
}

.stallone-button {
  display: inline-block;
  padding: 8px 16px;
  background-color: limegreen;
  color: white;
  text-decoration: none;
  font-weight: bold;
  border-radius: 6px;
  transition: background-color 0.3s;
}

.stallone-button:hover {
  background-color: darkgreen;
}

css
.scheda-stallone {
  width: 100%;
  max-width: 600px;
  margin: 30px auto;
  border-collapse: collapse;
  border: 3px solid limegreen;
  border-radius: 10px;
  overflow: hidden;
  background-color: #f9fff9;
  box-shadow: 0 0 12px rgba(0, 255, 0, 0.2);
}

.scheda-stallone td {
  vertical-align: middle;
  padding: 20px;
}

.miniatura img {
  max-width: 180px;
  height: auto;
  border-radius: 8px;
  border: 2px solid limegreen;
}

.info h2 {
  font-size: 1.5em;
  margin-bottom: 10px;
}

.info p {
  font-size: 1.1em;
  margin-bottom: 15px;
}

.scheda-button {
  display: inline-block;
  padding: 8px 16px;
  background-color: limegreen;
  color: white;
  text-decoration: none;
  font-weight: bold;
  border-radius: 6px;
  transition: background-color 0.3s;
}

.scheda-button:hover {
  background-color: darkgreen;
}
.pedigree-wrapper {
      display: flex;
      flex-direction: column;
      font-family: 'Verdana', sans-serif;
      font-size: 0.95em;
      gap: 6px;
}

.pedigree-row {
      display: flex;
      gap: 6px;
}

.pedigree-cell {
      border: 2px solid #708238; /* verde oliva */
      background-color: #ccff00; /* lime */
      padding: 8px;
      flex: 1;
      text-align: center;
      box-sizing: border-box;
}

.pedigree-text {
      background-color: #e0f5d0; /* verde chiaro */
      border: 1px solid #76a64d; /* cornice verde */
      padding: 6px;
      border-radius: 4px;
      font-weight: bold;
}

    /* Titolo iniziale più largo */
.pedigree-cell:first-child {
      flex: 2;
      background-color: #d8ddc1;
}


.pedigree-container {
  max-width: 1000px;
  margin: 40px auto;
  padding: 20px;
  background: linear-gradient(to bottom, #f9fff9, #e6ffe6);
  border: 3px solid limegreen;
  border-radius: 12px;
  box-shadow: 0 0 15px rgba(0, 255, 0, 0.2);
  font-family: 'Segoe UI', sans-serif;
  text-align: center;
}

.generation {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 20px 0;
  position: relative;
}

.generation div {
  font-size: 0.8em;
  background: white;
  border: 2px solid limegreen;
  padding: 10px 15px;
  margin: 10px;
  border-radius: 8px;
  min-width: 80px;
  font-weight: 500;
  box-shadow: 0 0 8px rgba(0, 200, 0, 0.1);
  position: relative;
}

.generation::after {
  content: '';
  position: absolute;
  top: -30px;
  left: 50%;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 12px solid limegreen;
  transform: translateX(-50%);
  z-index: 1;
}

.g1::after { display: none;} /* Niente freccia per il primo livello */

table.pedigree {
  width: 85%;
  max-width: 900px;
  margin: auto;
  border-collapse: collapse;
  font-family: 'Verdana', sans-serif;
  font-size: 0.88em;
  text-align: center;

  background-color: #f2f5ec; /* sfondo tabella */
}

.pedigree td {
  border: 2px solid #a6b09c; /* contorni tenui */
  padding: 6px;
  background-color: #dbe6d2; /* verde salvia delicato */
  vertical-align: top;
}

.pedigree td p {
  margin: 0;
  padding: 5px;
  background-color: #f2f5ec; /* sfondo del box interno */
  border: 1px solid #a6b09c; /* bordo tenue */
  border-radius: 4px;
  font-weight: bold;
  font-size: 0.9em;
  line-height: 1.2; /* interspazio più compatto */
}

.generation-title {
  font-weight: bold;
  background-color: #e2e8dd;
}


.salute-tabella {
  width: 100%;
  max-width: 700px;
  margin: 40px auto;
  border-collapse: collapse;
  border: 3px solid limegreen;
  box-shadow: 0 0 15px rgba(0, 255, 0, 0.2);
  background: #f9fff9;
  border-radius: 12px;
  overflow: hidden;
  font-family: 'Segoe UI', sans-serif;
}

.salute-tabella th {
  background-color: #d9ffd9;
  color: darkgreen;
  padding: 12px;
  font-size: 1.1em;
  text-align: left;
}

.salute-tabella td {
  padding: 12px;
  background-color: #ffffff;
  border-top: 1px solid #ccffcc;
}

.salute-tabella td.ok {
  color: green;
  font-weight: bold;
}

.salute-tabella td.medio {
  color: goldenrod;
  font-weight: bold;
}

.salute-tabella td.attenzione {
  color: red;
  font-weight: bold;
}

@media (max-width: 400px) {
.salute-tabella th,
.salute-tabella td {
    padding: 10px;
    font-size: 0.85em;
}
}
.scheda-proprietario {
  width: 100%;
  max-width: 600px;
  margin: 40px auto;
  border-collapse: collapse;
  border: 2px solid limegreen;
  box-shadow: 0 0 12px rgba(0, 255, 0, 0.15);
  background: #f9fff9;
  border-radius: 10px;
  overflow: hidden;
  font-family: 'Segoe UI', sans-serif;
}

.scheda-proprietario th {
  text-align: left;
  padding: 12px 16px;
  background-color: #d9ffd9;
  color: darkgreen;
  font-weight: bold;
  width: 35%;
  font-size: 1.05em;
}

.scheda-proprietario td {
  padding: 12px 16px;
  background-color: #ffffff;
  color: #333;
  font-size: 1em;
  border-top: 1px solid #ccffcc;
}

@media (max-width: 500px) {
.scheda-proprietario th,
.scheda-proprietario td {
    padding: 10px;
    font-size: 0.95em;
}
}

.rubrica-banner {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 25px 30px;
  background: linear-gradient(135deg, #d7ffd7, #aaffaa);
  border: 3px solid limegreen;
  border-radius: 16px;
  box-shadow: 0 0 20px rgba(0, 200, 0, 0.2);
  text-decoration: none;
  max-width: 950px;
  margin: 40px auto;
  transition: box-shadow 0.3s ease;
}

.rubrica-banner:hover {
  box-shadow: 0 0 30px rgba(0, 150, 0, 0.3);
  background: linear-gradient(135deg, #c0ffc0, #99ff99);
}

.banner-testo {
  text-align: center;
}

.banner-testo h2 {
  margin: 0;
  font-size: 2em;
  color: darkgreen;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}

.banner-testo p {
  margin: 8px 0 0;
  font-size: 1.1em;
  color: #333;
}

/* Cornice intorno alla scritta */
.cornice {
  padding: 5px 15px;
  border: 2px solid darkgreen;
  border-radius: 10px;
  background-color: #ffffff;
  box-shadow: 0 0 6px rgba(0, 150, 0, 0.2);
}

/* Icona NEW lampeggiante */
.new-icon {
  font-size: 1em;
  color: #cc5500;
  animation: lampeggiaNew 1.5s infinite;
}

@keyframes lampeggiaNew {
  0%, 100% { opacity: 1; transform: scale(1);}
  50% { opacity: 0.5; transform: scale(1.15);}
}

@media (max-width: 600px) {
.banner-testo h2 {
    font-size: 1.6em;
}

.banner-testo p {
    font-size: 1em;
}
}

/* Badge lampeggiante */
.badge-nuovo {
  background-color: #ffeeaa;
  color: #885500;
  font-size: 0.75em;
  font-weight: bold;
  padding: 4px 10px;
  border-radius: 10px;
  box-shadow: 0 0 6px rgba(255, 200, 0, 0.5);
  animation: lampeggiaBadge 1.5s infinite;
  text-transform: uppercase;
}

@keyframes lampeggiaBadge {
  0%, 100% { opacity: 1;}
  50% { opacity: 0.4;}
}

@media (max-width: 600px) {
.rubrica-banner {
    flex-direction: column;
    text-align: center;
}

.banner-logo img {
    height: 70px;
}

.banner-testo h2 {
    font-size: 1.6em;
}

.banner-testo p {
    font-size: 1em;
}
}
/* pedigree_newstyle.css */

table.pedigree {
  border-collapse: collapse;
  margin: 40px auto;
  font-family: 'Segoe UI', sans-serif;
  font-size: 15px;
  background-color: #fff;
  box-shadow: 0 0 20px rgba(0,0,0,0.1);
  border-radius: 12px;
  overflow: hidden;
}

table.pedigree td {
  border: 1px solid #ccc;
  padding: 12px;
  text-align: center;
  vertical-align: middle;
  min-width: 180px;
  transition: background-color 0.3s ease;
}

/* Cane principale */
.pedigree-wrapper {
  background: linear-gradient(135deg, #ffe680, #ffd633);
  font-weight: bold;
  padding: 10px;
  display: inline-block;
  border-radius: 10px;
  border: 2px solid #e0c000;
  box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

/* Maschi */
.maschio {
  background-color: #d0f0ff;
  border-left: 5px solid #3399cc;
}

/* Femmine */
.femmina {
  background-color: #ffd6e7;
  border-left: 5px solid #cc6699;
}

/* Hover effect */
table.pedigree td:hover {
  background-color: #f0f8ff;
}

/* Titoli */
td strong {
  color: #003366;
  font-size: 16px;
}

/* Responsive */
@media screen and (max-width: 768px) {
  table.pedigree td {
    font-size: 13px;
    min-width: 140px;
    padding: 8px;
}
}
/* pedigree_clean.css */
.pedigree-container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  font-family: 'Segoe UI', sans-serif;
  font-size: 14px;
  margin: 40px;
}

.pedigree-column {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.pedigree-box {
  border: 1px solid #333;
  padding: 10px 14px;
  border-radius: 6px;
  background-color: #f9f9f9;
  min-width: 180px;
  text-align: center;
  box-shadow: 0 0 4px rgba(0,0,0,0.05);
}

.pedigree-title {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}
css
.tplge_rightColumn {
  width: 300px;
  margin-left: 20px;
}

.tplge_rightColumnL2 {
  background-color: #f5f5f5;
  padding: 15px;
  border-radius: 8px;
  color: #333;
}

.tplge_rightColumn h2 {
  font-size: 18px;
  margin-bottom: 10px;
}



/* 
##############################
      B E R E I C H E
############################## 
*/

/* BODY UND SEITE / BODY AND PAGE */
body {background: #fff; color: #333; font-family: RobotoCondensed, arial, sans-serif; font-size: 20px; font-weight: 400; line-height: 1.4em; text-align: left;}
.body {background: #00090f;}
#top {font-size: 0; line-height: 0;} 

.hover-zoom {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-zoom:hover {
  transform: scale(1.10);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}




/* FIXED NAVIGATION */

.tplge_pageNav {position: fixed; top: 0; box-sizing: border-box; width: 100%; min-width: 300px; height: 48px; background: #023; color: #fff; font-size: 17px; padding: 0 10px 0 16px; margin: 0 auto; z-index: 998; overflow: hidden; opacity: 0.8;}

/* buttons */
img.tplge_homelinkButton {float: left;}
img.tplge_sitemaplinkButton {float: left;}
img.tplge_menulinkButton {float: right;}
img.tplge_searchlinkButton {float: right;}
img.tplge_newslinkButton {float: right;}
img.tplge_toplinkButton {float: right;}

img.tplge_homelinkButton:hover,
img.tplge_sitemaplinkButton:hover,
img.tplge_menulinkButton:hover,
img.tplge_newslinkButton:hover,
img.tplge_searchlinkButton:hover,
img.tplge_toplinkButton:hover,
img.tplge_scrolltoTopButton:hover {background: #b64;}

.tplge_searchAnchor {border: 1px solid transparent; margin: -65px 0 65px 0;}
.tplge_newsAnchor {border: 1px solid transparent; margin: -55px 0 55px 0;}



/* locator */
.tplge_locator {
  position: relative;
  max-width: 96%;
  float: left;
  background: #ac8;
  color: #000;
  font-size: 17px;
  letter-spacing: 1px;
  border-radius: 0 0 24px 0;
  padding: 0;
  margin: -30px auto 0 0; /* ← modificato per alzare il blocco */
  overflow: hidden;
  z-index: 2;
}
.tplge_locatorL2 {
  margin: 9px 30px 9px 20px;
}
.tplge_locatorDelimiter {
  color: #000;
  font-size: 20px;
  font-weight: 900;
  padding: 0 2px;
}
.tplge_locator span.tplge_locatortext {
  font-weight: 700;
  text-transform: uppercase;
  padding: 0 6px 0 0;
}
.tplge_locator span.cmsimpleLocatorElement {
  font-weight: 400;
}
.tplge_locator span.cmsimpleLocatorElementLast {
  font-weight: 700;
  text-transform: uppercase;
  color: #000;
}


.tplge_topMenu {
  background: #234;
  text-align: center;               /* centrare il contenuto */
  padding: 12px 0;
  font-family: RobotoCondensed, sans-serif;
}

.tplge_topMenu ul {
  display: inline-block;            /* blocco centrabile */
  margin: 0;
  padding: 0;
  list-style: none;
}

.tplge_topMenu ul li {
  display: inline-block;
  margin: 0 8px;
  position: relative;
}

/* Stile base del menu */
.tplge_topMenu {
  margin-top: 60px;
}

.tplge_topMenu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tplge_topMenu ul li {
  position: relative;
  display: inline-block;
}

/* Stile base del menu */
.tplge_topMenu {
  margin-top: 60px;
}

.tplge_topMenu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Ogni voce del menu */
.tplge_topMenu ul li {
  display: inline-block;
  margin-right: 5px;
}

/* Stile base dei link */
.tplge_topMenu ul li a {
  display: inline-block;
  color: #fff;
  padding: 10px 16px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: bold;
  text-transform: uppercase;
  transition: background 0.3s ease;
}

/* Colori personalizzati per le prime voci */
.tplge_topMenu ul li:nth-child(1) a { background-color: #07a;} /* blu */
.tplge_topMenu ul li:nth-child(2) a { background-color: #29c;} /* azzurro */
.tplge_topMenu ul li:nth-child(3) a { background-color: #f90;} /* arancione */
.tplge_topMenu ul li:nth-child(4) a { background-color: #b64;} /* bordeaux */

/* Hover solo sul link attivo */
.tplge_topMenu ul li a:hover {
  background-color: #fff;
  color: #234;
}

/* Sottomenu sempre visibile e in linea */
.tplge_topMenu ul li ul {
  display: inline-block;
  margin-left: 5px;
}

.tplge_topMenu ul li ul li {
  display: inline-block;
  margin-right: 5px;
}

.tplge_topMenu ul li ul li a {
  display: inline-block;
  padding: 10px 16px;
  color: #fff;
  background-color: #666;
  border-radius: 6px;
  text-transform: none;
  font-weight: normal;
  transition: background 0.3s ease;
}

.tplge_topMenu ul li ul li a:hover {
  background-color: #ddd;
  color: #000;
}



/* CONTENT */

/* sitename */
.tplge_sitename {width: 80%; max-width: 600px; background: #fff; color: #134; font-family: georgia, RobotoCondensed, arial, sans-serif; font-weight: 900; font-size: 40px; line-height: 40px; text-align: center; text-transform: uppercase; border: 0px solid #134; border-radius: 5px; padding: 10px 20px; margin: 20px auto; opacity: 0.3; overflow: hidden;}

/* language menu */
.tplge_langmenu {text-align: right;}
.tplge_langmenu img {background: #fff; border: 1px solid #999; border-radius: 3px; padding: 3px; margin: 0 0 0 20px;}


article p.cmsimple_editmodeLocator {background: #ffffff99; border-radius: 3px; padding: 2px 8px!important;}

/* CMSimple mailform */
.tplge_contentL2 input {background: #eee; border: 1px solid #869; border-radius: 0; padding: 4px 6px;}
.tplge_contentL2 input.text {width: 80%; background: #eee; border: 1px solid #869; border-radius: 0; padding: 4px 6px;}
.tplge_contentL2 textarea {width: 94%; background: #eee; font-family: RobotoCondensed, arial, sans-serif; border: 1px solid #869; border-radius: 0; padding: 6px;}
.captchainput {background: #eee; border: 1px solid #869; border-radius: 0;}
.tplge_contentL2 input.submit, .tplge_contentL2 input#submit {background: url(images/button.jpg) repeat-x!important; color: #333; font-size: 15px; line-height: 20px; border: 1px solid #aaa; border-radius: 3px; padding: 2px 12px 4px 12px; margin: 0 auto 0 0;} 

/* submenu siblingsmenu subsibmenu */
nav.tplge_subsibmenus {
  clear: both;
  font-size: 17px;
  margin: 24px 0;
  background: #f9f9f9;
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.tplge_subsibmenus p {
  font-size: 20px;
  font-weight: 700;
  color: #333;
  margin-bottom: 8px;
}

.tplge_subsibmenus span {
  font-weight: 700;
  color: #555;
}

.tplge_subsibmenus.parentLink {
  font-size: 24px;
  font-weight: 400;
  padding: 6px 0;
  margin: 0;
  color: #0077cc;
  text-decoration: none;
  display: inline-block;
  transition: color 0.3s ease;
}

.tplge_subsibmenus.parentLink:hover {
  color: #ff6600;
}

.tplge_subsibmenus.heading {
  font-size: 20px;
  font-weight: 700;
  padding: 6px 0;
  margin: 0;
  color: #222;
  border-bottom: 1px solid #eee;
  margin-bottom: 12px;
}



/* prev-top-next */
.tplge_prevtopnext {clear: both; text-align: center; padding: 0; margin: 36px 0 16px 0;}
.tplge_prevtopnext img {background: linear-gradient(-45deg, #000609 30%, #505659 70%); border: 0px solid #999; border-radius: 25px; padding: 14px; margin: 0 16px;}
.tplge_prevtopnext img:hover {background: #b64;}

/* sitemaplevel1 */
ul.sitemaplevel1 {list-style-type: none; padding: 0; margin: 16px 0;}
ul.sitemaplevel1 li {font-family: RobotoCondensed, arial, sans-serif; font-size: 18px; font-weight: 900; line-height: 1.2em; text-transform: uppercase; border: 0px solid #abc; border-radius: 0; padding: 0; margin: 20px 0;}

/* sitemaplevel2 */
ul.sitemaplevel2 {list-style-type: none; border: 0; padding: 0; margin: 0;}
ul.sitemaplevel2 li {font-family: RobotoCondensed, sans-serif; font-size: 18px; font-weight: 400; text-transform: none; border: 0; padding: 10px 0 0 0; margin: 0;}

/* sitemaplevel3 */
ul.sitemaplevel3 {list-style-type: none; padding: 0; margin: 0;}
ul.sitemaplevel3 li {font-size: 18px; font-weight: 400; padding: 10px 0 0 20px;}

/* sitemaplevel4-6 */
ul.sitemaplevel4 {list-style-type: none; margin: 0;}
ul.sitemaplevel5 {list-style-type: none; margin: 0;}
ul.sitemaplevel6 {list-style-type: none; margin: 0;}


.btn-pubblica,.btn-info {
  display: inline-block;
  background-color: #0077cc;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
  padding: 12px 24px;
  margin: 12px 0;
  border-radius: 6px;
  transition: background 0.3s ease;
}

.btn-pubblica:hover,.btn-info:hover {
  background-color: #005fa3;
  cursor: pointer;
}
/* CONTENITORE SLIDER */

.swiper {
  width: 100%;
  max-width: 1200px;
  height: 450px;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
}

/* WRAPPER */

.swiper-wrapper {
  height: 100%;
}

/* SINGOLA SLIDE */

.swiper-slide {
  height: 100%;
  display: flex;
}

.swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000; /* puoi cambiare colore */
}
/* PALLINI */

.swiper-pagination {
  position: absolute;
  bottom: 10px;
  text-align: center;
  width: 100%;
}

.swiper-pagination-bullet {
  background: #ffffff;
  opacity: 0.7;
}

.swiper-pagination-bullet-active {
  opacity: 1;
}

/* FRECCE */

.swiper-button-next,
.swiper-button-prev {
  color: #ffffff;
  background: rgba(0,0,0,0.4);
  width: 40px;
  height: 40px;
  border-radius: 50%;
}

.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: 18px;
  font-weight: bold;
}
.swiper-button-next,
.swiper-button-prev {
  color: #ffffff;
  background: rgba(0,0,0,0.5);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
  background: rgba(0,0,0,0.7);
}
/* CONTENITORE RELATIVO (già lo hai, ma lo ribadiamo) */
.swiper-slide a {
  position: relative;
}

/* TITOLO */
.slide-title {
  position: absolute;
  bottom: 60px;
  left: 20px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  background: rgba(0,0,0,0.5);
  padding: 8px 12px;
  border-radius: 4px;
}

/* BOTTONE SCOPRI */
.slide-cta {
  position: absolute;
  bottom: 20px;
  left: 20px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  background: rgba(0,0,0,0.7);
  padding: 6px 12px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* HOVER (piccola chicca) */
.swiper-slide a:hover .slide-cta {
  background: rgba(0,0,0,0.9);
}

/* end CONTENT */




/* SIDEBAR NAV */

/* searchbox */
.tplge_sidebarNav .tplge_searchboxContainer {clear: both; text-align: left; border-radius: 0; margin: 0 auto 0 -3px; overflow: hidden;}
.tplge_sidebarNav .tplge_searchboxInput {width: 194px; background: #f0f9ff; color: #333; float: left; font-size: 16px; border: 3px solid #a0a9af; border-radius: 3px; line-height: 20px; padding: 6px 8px; margin: 3px;}
.tplge_sidebarNav .tplge_searchboxSubmit {background: url('images/lupe.png') 6px 10px no-repeat; width: 40px; height: 38px; border: 0; padding: 0; margin: 0;}
.tplge_sidebarNav .tplge_searchboxSubmit:hover {cursor: pointer;}


/* foldout toc */
.tplge_foldoutnav {background: #345; color: #fc0; padding: 12px 0; margin: 16px -20px 24px -20px;}

/* menulevel 1 */
.tplge_foldoutnav ul.menulevel1 {display: block; position: relative; list-style: none; padding: 12px 0; margin: 0; border: 0; border-radius: 3px; z-index: 2;}
.tplge_foldoutnav ul.menulevel1 li {list-style: none; font-weight: 900; font-size: 17px; line-height: 29px; text-transform: uppercase; padding: 6px 20px; margin: 0;}
.tplge_foldoutnav ul.menulevel1 li a {display: block; width: 100%;}
.tplge_foldoutnav ul.menulevel1 li:hover {background: #07a;}
/* .tplge_foldoutnav ul.menulevel1 li:hover ul {display: block;} */

/* menulevel 2 */
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 {display: none; position: absolute; width: 300px; 
background: #07a; border: 0px solid #fff; border-radius: 5px; padding: 24px 0; margin: -35px 0 0 266px; animation: menuopenml1 0.6s;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 li {font-size: 15px; line-height: 25px; font-weight: 900; text-transform: none; padding: 6px 16px;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 li:hover {background: #29c;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 li:hover ul {display: block;}

/* menulevel 3 */
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 {display: none; position: absolute; width: 300px; 
background: #29c; border: 0px solid #fff; border-radius: 5px; padding: 24px 0; margin: -36px 0 0 270px; animation: menuopenml1 0.6s;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 li:hover {background: #069;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 li:hover ul {display: block;}

/* menulevel 4 */
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 ul.menulevel4 {display: none; position: absolute; width: 300px; 
background: #069; border: 0px solid #fff; border-radius: 5px; padding: 24px 0 28px 0; margin: -36px 0 0 270px; animation: menuopenml1 0.6s;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 ul.menulevel4 li:hover {background: #18b;}

/* menulevel 5 */
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 ul.menulevel4 ul.menulevel5 {width: 277px; margin-left: 5px;}
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 ul.menulevel4 ul.menulevel5 li {font-weight: 400; line-height: 20px;}

/* menulevel 6 */
.tplge_foldoutnav ul.menulevel1 ul.menulevel2 ul.menulevel3 ul.menulevel4 ul.menulevel5 ul.menulevel6 {width: 255px; margin-left: 5px;}


/* doc docs */
.tplge_foldoutnav li.docs a::after, 
.tplge_foldoutnav li.sdocs a::after, 
.tplge_foldoutnav li.sdocs span::after 
{content: "+"; font-family: arial, sans-serif; color: #fe0; font-size: 15px; line-height: 16px; font-weight: 700; margin-left: 3px;}
.tplge_foldoutnav li.doc a::after, .tplge_foldoutnav li.sdoc span::after 
{content: ""; font-size: 16px; line-height: 17px; font-weight: 700;}

.tplge_foldoutnav ul li.sdocs a, .tplge_foldoutnav ul li.sdocs span {color: #fe0;}
.tplge_foldoutnav ul li.sdoc a, .tplge_foldoutnav ul li.sdoc span {color: #fe0;}
.tplge_foldoutnav ul li.docs a, .tplge_foldoutnav ul li.docs span {color: #fff;}
.tplge_foldoutnav ul li.doc a, .tplge_foldoutnav ul li.doc span {color: #fff;}

@keyframes menuopenml1{from{opacity: 0;}to{opacity: 1;}}

/* icons div sidebar */
.tplge_sidebarNav .tplge_icons {display: table; margin: 24px auto;}
.tplge_sidebarNav .tplge_icons img {display: block; float: left; background: linear-gradient(-45deg, #000609 30%, #606669 70%); border-radius: 5px; padding: 4px; margin: 0 6px;}
.tplge_sidebarNav .tplge_icons img:hover {background:transparent important!;}

.tplge_sidebarImage {
  background: linear-gradient(to bottom, #f0f0f0, #d0d0d0);
  padding: 12px;
  border-radius: 6px;
}


/* end SIDEBAR NAV */




/* NEWS AREA */

/* Newsarea and Newsboxes */
.tplge_newsBox {width: 300px; float: left; font-size: 17px; line-height: 1.3em; padding: 0; margin: 0;}
.tplge_newsBoxL2 {width: 85%; background: #ffffff11; color: #fff; border-radius: 5px; padding: 9px 6%; margin: 5px auto;}

.tplge_newsBox h1, .tplge_newsBox h2, .tplge_newsBox h3, .tplge_newsBox h4 {color: #e93; font-size: 24px; padding: 9px 0 9px 0;}
.tplge_newsBox h5, .tplge_newsBox h6 {color: #e93; font-size: 20px;}

/* searchbox */
.tplge_sidebarNav .tplge_searchboxContainer {
  background: linear-gradient(to bottom, #f0f0f0, #d0d0d0);
  padding: 12px;
  border-radius: 6px;
}
.tplge_sidebarNav .tplge_searchboxInput {width: 194px; background: #f0f9ff; color: #333; float: left; font-size: 16px; border: 3px solid #a0a9af; border-radius: 3px; line-height: 20px; padding: 6px 8px; margin: 3px;}
.tplge_sidebarNav .tplge_searchboxSubmit {background: url('images/lupe.png') 6px 10px no-repeat; width: 40px; height: 38px; border: 0; padding: 0; margin: 0;}
.tplge_sidebarNav .tplge_searchboxSubmit:hover {cursor: pointer;}



/* standard toc */

/* menulevel 1 */
.tplge_newsArea ul.menulevel1 span, .tplge_newsArea ul.menulevel1 a {display: block; padding: 4px 0;}
.tplge_newsArea ul.menulevel1 {list-style: none; border-radius: 5px; padding: 0; margin: 0;}
.tplge_newsArea ul.menulevel1 li {list-style: none; font-size: 20px; line-height: 24px; line-height: 24px; font-weight: 900; padding: 0 12px 0 2px; margin: 0;}

/* menulevel 2 */
.tplge_newsArea ul.menulevel1 li ul {padding: 0; margin: 0;}
.tplge_newsArea ul.menulevel1 li ul li {list-style: none; font-size: 17px; font-weight: 400; padding: 0; margin: 0;}

/* menulevel 3 */
.tplge_newsArea ul.menulevel1 li ul li ul li {padding: 0 0 0 16px; margin: 0;}

/* doc docs */
.tplge_newsArea li.docs a::after, 
.tplge_newsArea li.sdocs a::after, 
.tplge_newsArea li.sdocs span::after 
{content: "+"; font-family: arial, sans-serif; color: #fa0; font-size: 15px; line-height: 16px; font-weight: 700; margin-left: 3px;}
.tplge_newsArea li.doc a::after, .tplge_newsArea li.sdoc span::after 
{content: ""; font-size: 16px; line-height: 17px; font-weight: 700;}


/* icons div newsArea */
.tplge_newsArea .tplge_icons {margin:24px 0 16px 0;}
.tplge_newsArea .tplge_icons img {display: block; float: left; background: linear-gradient(-45deg, #000609 30%, #303639 70%); border-radius: 5px; padding: 4px; margin: 0 12px 0 0;}
.tplge_newsArea .tplge_icons img:hover {background: #b64;}

/* end NEWS AREA */




/* FOOTER */

footer p {padding: 12px 20px 100px 20px; margin: 0;}
footer p span {opacity: 0.7;}

/* end FOOTER */






/* LINKFORMATIERUNG */
a:link {color: #279; text-decoration: none;}
a:visited {color: #279; text-decoration: none;}
a:hover {color: #606; text-decoration: underline;}
a:active {color: #606; text-decoration: underline;}
a:focus {color: #606; text-decoration: underline;}

.tplge_locator a:link {color: #333; text-decoration: none;}
.tplge_locator a:visited {color: #333; text-decoration: none;}
.tplge_locator a:hover {color: #fff; text-decoration: underline;}
.tplge_locator a:active {color: #fff; text-decoration: none;}
.tplge_locator a:focus {color: #fff; text-decoration: none;}

.tplge_foldoutnav a:link {color: #fff; text-decoration: none;}
.tplge_foldoutnav a:visited {color: #fff; text-decoration: none;}
.tplge_foldoutnav a:hover {color: #fc0; text-decoration: underline;}
.tplge_foldoutnav a:active {color: #fc0; text-decoration: none;}
.tplge_foldoutnav a:focus {color: #fc0; text-decoration: none;}

.tplge_newsArea .tplge_toc a:link {color: #fff; text-decoration: none;}
.tplge_newsArea .tplge_toc a:visited {color: #fff; text-decoration: none;}
.tplge_newsArea .tplge_toc a:hover {color: #fa0; text-decoration: underline;}
.tplge_newsArea .tplge_toc a:active {color: #fa0; text-decoration: none;}
.tplge_newsArea .tplge_toc a:focus {color: #fa0; text-decoration: none;}

.tplge_olMenu a:link {color: #222; text-decoration: none;}
.tplge_olMenu a:visited {color: #222; text-decoration: none;}
.tplge_olMenu a:hover {color: #c40; text-decoration: none;}
.tplge_olMenu a:active {color: #c40; text-decoration: none;}
.tplge_olMenu a:focus {color: #c40; text-decoration: none;}

.tplge_newsArea a:link {color: #bcd; text-decoration: none;}
.tplge_newsArea a:visited {color: #bcd; text-decoration: none;}
.tplge_newsArea a:hover {color: #fa0; text-decoration: underline;}
.tplge_newsArea a:active {color: #fa0; text-decoration: none;}
.tplge_newsArea a:focus {color: #fa0; text-decoration: none;}

.tplge_footer a:link {color: #fff; text-decoration: none;}
.tplge_footer a:visited {color: #fff; text-decoration: none;}
.tplge_footer a:hover {color: #ddd; text-decoration: underline;}
.tplge_footer a:active {color: #ddd; text-decoration: none;}
.tplge_footer a:focus {color: #ddd; text-decoration: none;}

.sitemaplevel1 a:link {color: #222; text-decoration: none;}
.sitemaplevel1 a:visited {color: #222; text-decoration: none;}
.sitemaplevel1 a:hover {color: #906; text-decoration: underline;}
.sitemaplevel1 a:active {color: #906; text-decoration: underline;}
.sitemaplevel1 a:focus {color: #906; text-decoration: underline;}

.tplge_box01 a:link {color: #9df; text-decoration: none;}
.tplge_box01 a:visited {color: #9df; text-decoration: none;}
.tplge_box01 a:hover {color: #fc0; text-decoration: underline;}
.tplge_box01 a:active {color: #fc0; text-decoration: underline;}
.tplge_box01 a:focus {color: #fc0; text-decoration: underline;}





/* 
##############################
   O V E R L A Y S
##############################
*/

/* background */
.tplge_olBG {display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: #000; opacity: 0.6; z-index: 9992;}



/* MENU */

.tplge_olMenu {
display: none;
box-sizing: border-box;
position: fixed; top: 6px; right: 6px; 
width: 320px; 
max-width: 96%; 
max-height: 96%; 
padding: 16px 0; 
margin: 0;
background: #d0d6d9;
color: #c40;
border: 3px solid #fff; 
border-radius: 3px; 
overflow: auto;
opacity: 1; z-index: 9994;
}

button.tplge_olMenuClose {position: fixed; top: -4px; right: 130px; width: 60px; background: #ccc url(images/button.jpg) repeat-x; text-align: center; color: #920; font-weight: 900; font-size: 18px; line-height: 30px; border: 1px solid #999; border-radius: 0 0 5px 5px; padding: 0; margin: 0; cursor: pointer; z-index: 9996;}
button.tplge_olMenuClose:hover {color: #222;}

/* toc */
.tplge_olMenuToc {box-sizing: border-box; width: 100%;}

.tplge_olMenu ul {margin: 0 20px; float: none; clear: both; border: 0px solid;}
.tplge_olMenu ul li {list-style: none; font-size: 20px; line-height: 24px; font-weight: 900; padding: 6px 0 0 0; margin: 0;}

.tplge_olMenu ul ul {float: none; clear: both; margin: 0;}
.tplge_olMenu ul ul li {font-size: 17px; line-height: 24px; font-weight: 400;}

.tplge_olMenu ul ul ul {margin: 0 0 0 16px;}

/* doc docs */
.tplge_olMenu li.docs a::after, 
.tplge_olMenu li.sdocs a::after, 
.tplge_olMenu li.sdocs span::after 
{content: "+"; font-family: arial, sans-serif; color: #910; font-size: 15px; line-height: 16px; font-weight: 700; margin-left: 3px;}
.tplge_olMenu li.doc a::after, .tplge_olMenu li.sdoc span::after 
{content: ""; font-size: 16px; line-height: 17px; font-weight: 700;}



/* SEARCH */

.tplge_olSearch {
display: none;
box-sizing: border-box;
position: fixed; top: 6px; right: 6px; 
width: 420px; 
padding: 32px 0 0 0; 
margin: 0;
background: #d0d6d9;
border: 3px solid #fff; 
border-radius: 3px; 
opacity: 1;
z-index: 9994;
}

button.tplge_olSearchClose {position: fixed; top: -4px; right: 110px; width: 60px; background: #ccc url(images/button.jpg) repeat-x; text-align: center; color: #920; font-weight: 900; font-size: 18px; line-height: 30px; border: 1px solid #999; border-radius: 0 0 5px 5px; padding: 0; margin: 0; cursor: pointer; z-index: 9996;}
button.tplge_olMenuClose:hover {color: #222;}

/* searchbox */
.tplge_olSearchbox {border: 0px solid; padding: 0 0 16px 16px;}
.tplge_olSearchbox .tplge_searchboxContainer {clear: both; margin: 0;}
.tplge_olSearchbox .tplge_searchboxInput {width: 320px; background: #fff; color: #333; font-size: 16px; border: 1px solid #999; border-radius: 5px; padding: 8px; margin: 3px;}
.tplge_olSearchbox .tplge_searchboxSubmit {background: url('images/lupedark.png') 5px 7px no-repeat; width: 40px; height: 38px; border: 0; padding: 0; margin: 0;}
.visit-counter {
    display: inline-block;
    text-align: center;
    padding: 18px 30px;
    border-radius: 10px;
    font-family: 'Segoe UI', sans-serif;
    max-width: 240px;
    margin: 10px auto;
}

.visit-counter.icon {
    font-size: 36px;
    margin-bottom: 8px;
    color: #ffffff;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.6); /* ombra di testo per risalto */
}

.visit-counter.number {
    font-size: 42px;
    font-weight: bold;
    color: #ffffff;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5); /* effetto glow */
}

.visit-counter.label {
    font-size: 15px;
    color: #eeeeee;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.4);
}

/* END OVERLAYS */






/* 
##############################
 S O N S T I G E S / R E S T
############################## 
*/

img.tplge_scrolltoTopButton {background: #000; position: fixed; bottom: 60px; right: 0; display: block; border: 0px solid #999; border-radius: 20px 0 0 20px; margin-right: -3px;}
img.tplge_scrolltoTopButton:hover {background: #b64;}

/* MailForms Plugin */
div.ddfmwrap {font-family: RobotoCondensed, arial, sans-serif!important; font-size: 18px!important;}
div.ddfmwrap input.ddmf_text {width: 360px!important; min-width: 240px!important; max-width: 90%!important; background: #fff!important; color: #333!important; font-family: RobotoCondensed, arial, sans-serif!important; font-size: 18px!important; border: 1px solid #aaa!important; border-radius: 0; padding: 4px 6px!important;}
div.ddfmwrap input.ddmf_verify {min-width: 106px!important; background: #fff!important; color: #333!important; font-family: RobotoCondensed, arial, sans-serif!important; font-size: 18px!important; border: 1px solid #aaa!important; width: 106px!important;}
div.ddfmwrap textarea {width: 99%!important; background: #fff!important; color: #333!important; font-family: RobotoCondensed, arial, sans-serif!important; font-size: 18px!important; border: 1px solid #aaa!important; border-radius: 0; padding: 4px 6px!important;}
div.ddfmwrap div.submitButton {width: 116px!important;}
div.ddfmwrap div.submitButton input {width: 100%!important;}

/* CookieLaw Plugin */
.cookielawHinttop {display: block; padding-top: 50px!important;}





/* 
########################################### 
   R E S P O N S I V E  L A Y O U T  CSS
########################################### 
*/

/* CONTAINERS */

.tplge_websiteContainer {background: #fff url(images/bgwebsite.jpg) center top no-repeat; padding-top: 48px;}
.tplge_contentsContainer {max-width: 1160px; padding-top: 0; margin: 0 auto;}
.tplge_contentsContainerL2 {display: flex; flex-wrap: wrap; padding: 0;}
.tplge_sidebarNav {flex: 0 0 300px; order: 1; background: #00112233; margin: -92px 0 0 0;}
.tplge_sidebarNavL2 {padding: 120px 20px 36px 20px;}
.tplge_content {flex: 0 0 860px; order: 2; min-width: 300px;}
.tplge_contentL2 {max-width: 800px; font-size: 20px; line-height: 1.4em; padding: 6px 20px 36px 20px; margin: 0 auto;}
.tplge_newsArea {background: #234; margin-top: 48px;}
.tplge_newsAreaL2 {width: 1220px; padding: 0; margin: 0 auto 16px auto;}
.tplge_footer {color: #fff; font-size: 16px; text-align: right;}


/* 1 column */
@media (max-width: 1250px) {
#body {min-width: 300px; font-size: 17px;}
.tplge_contentsContainer {max-width: none;}

.tplge_sidebarNav {display: none;}

.tplge_content {flex: 1 1 100%; padding: 0 0 36px 0; max-width: 100%;}
.tplge_contentL2 {max-width: 800px; padding: 0 4%; margin: 0 auto;}

.tplge_newsArea {margin-top: 48px;}
.tplge_newsAreaL2 {width: 902px; padding: 0; margin: 16px auto;}

img.tplge_menulinkButton {display: block;}
img.tplge_searchlinkButton {display: block;}

/* scroll buttons */
img.tplge_scrolltoTopButton {display: none;}
}


@media (max-width: 940px) {
.tplge_outerContainer {background-size: 1500px;}
.tplge_sitename {width: 76vw; max-width: none; font-size: 6vw; line-height: 6vw; padding: 2vw 3vw;}
.tplge_newsAreaL2 {width: 602px; padding: 0; margin: 16px auto;}
}


@media (max-width: 740px) {
body {font-size: 18px;}
.tplge_contentL2 {font-size: 18px;}
.tplge_locator {max-width: none; width: 100%; border-radius: 0;}
.tplge_locatorL2 {margin: 9px 4% 9px 4%;}
div.tplge_contentboxleft {width: 100%;}
div.tplge_contentboxright {width: 100%;}
}


@media (max-width: 680px) {
.tplge_newsAreaL2 {width: 310px; padding: 0; margin: 16px auto;}
}


@media (max-width: 580px) {
figure.image {width: auto!important; max-width: 100%!important; float: none; margin: 10px auto;}
}


@media (max-width: 480px) {
h1 {font-size: 28px;}
h2 {font-size: 26px;}
h3 {font-size: 24px;}
h4 {font-size: 22px;}
h5 {font-size: 20px;}
h6 {font-size: 18px;}
img.tplge_right_border, img.tplge_left_border, img.tplge_right_noborder, img.tplge_left_noborder, img.tplge_right, img.tplge_left {display: block; float: none; max-width: 100%; margin: 0 0 16px 0;}
.tplge_olSearch {width: 306px;}
.tplge_olSearchbox .tplge_searchboxInput {width: 210px;}
}
/* Agenda - versione mobile */
@media (max-width: 768px) {

  /* contenitore calendario */
  #calendarHome,
  .fc {
    font-size: 11px;
  }

  /* titolo mese */
  .fc-toolbar-title {
    font-size: 14px !important;
  }

  /* numeri dei giorni */
  .fc-daygrid-day-number {
    font-size: 11px;
  }

  /* altezza righe */
  .fc-daygrid-day-frame {
    min-height: 60px;
  }

  /* eventi */
  .fc-event-title {
    font-size: 10px;
    line-height: 1.2;
  }
}
@media (max-width: 600px) {

  .slide-title {
    font-size: 18px;
    bottom: 50px;
    left: 15px;
  }

  .slide-cta {
    font-size: 12px;
    bottom: 15px;
    left: 15px;
  }

  .swiper {
    height: 300px;
  }

}
/* ==================================================
   CAMPI DI ADDESTRAMENTO BOXER
   (stili locali – NON toccano il resto del sito)
   ================================================== */

.campi-boxer h2 {
  margin-top: 40px;
  border-bottom: 2px solid #573;
  padding-bottom: 6px;
}

.campi-boxer h3 {
  margin-top: 32px;
  color: #573;
}

/* scheda centro */
.campi-boxer h3 + p,
.campi-boxer h3 + p + ul,
.campi-boxer h3 + p + ul + p {
  background: #f5f5f5;
  border-left: 6px solid #573;
  padding: 14px 20px;
}

/* liste servizi */
.campi-boxer ul {
  list-style: none;
  margin-left: 0;
}

.campi-boxer ul li {
  position: relative;
  padding-left: 18px;
}

.campi-boxer ul li::before {
  content: "▸";
  position: absolute;
  left: 0;
  color: #573;
  font-weight: bold;
}

/* contatti */
.campi-boxer p a {
  font-weight: 700;
}

