@charset "utf-8";

/* CSS Document */



html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}



a, img {
    outline: medium none;
}



body{
	background:url(../images/bg.jpg) center fixed no-repeat;
	margin:0;
	padding:0;
	font-family:Arial, Helvetica, sans-serif;
	line-height:1.5em;
	font-size:10pt;
	}



#wrapper{
	width:990px;
	margin:0 auto;
	}



#testata{

	}



#barratop{
	background:#080808;
	height:36px;
	width:955px;
	margin:0 auto;
	}



#intestazione{
	width:955px;
	margin:0 auto;
	background:url(../images/bg_intestazione.jpg) repeat-x;
	height:106px;
	}



#logo{
	float:left;
	width:350px;
	margin-left:12px;
	}



#destralogo{
	float:right;
	margin-top: 30px;
    margin-right: 10px;
	line-height:1.8em;
	}



#barramenu{
	background:url(../images/barra_menu.png) no-repeat;
	width:990px;
	height:56px;
	}



#barramenuinfo{
	background:#eeeeee;
	height:24px;
	width:955px;
	margin:0 auto;
	border-bottom:1px solid #e2e2e2;
	}

#infomenu{
	float:left;
	height:24px;
	}

#cerca{
	float:right;
	height:24px;
	margin-right:10px;
	}

#contenutoitorepagina{
	width:931px;
	margin:0 auto;
	background:#FFF;
	overflow:hidden;
	padding:12px;
	}



#rotator{
	max-height:412px;
	width:931px;
	}



#pagina{
	overflow:hidden;
	margin:20px 0;
	}



#contenutifloat{
	width:620px;
	margin-right:16px;
	float:left;
	}



#destra{
	width:278px;

	padding-left:15px;

	border-left:1px solid #efefef;

	float:left;

	}



#marchi{

	margin-bottom:20px;

	}



#copyright{
	text-align:center;
	clear:both;
	font-size:9pt;
	padding-top:20px;
	}





.menualto li{

	display:inline-block;

	padding:0 10px;

	list-style:none;

	line-height:35px;

	}



.menualto li a:link, .menualto li a:visited{

	color:#fff;

	text-decoration:none;

	font-size:9pt;

	}



.menumain li{

	display:inline-block;

	padding:0 15px;

	list-style:none;

	line-height:45px;

	text-transform:uppercase;

	font-weight:bold;

	background:url(../images/linea_menumain.png) no-repeat right center;

	/*margin-top:2px;*/

	}



.menumain li.active{
	background:url(../images/attivo.jpg) repeat-x;
	margin-top:0px!important;
	}



.menumain li a:link, .menumain li a:visited{
	font-size:10pt;
	color:#fffefe;
	text-decoration:none;
	}

.menumain li a:hover, .menualto li a:hover{
	color:#ccc;
	}



ul.menumain{

	/*padding-top:2px;*/

	}



.menuinformazioni li{
	display:inline-block;
	padding:0 15px;
	list-style:none;
	line-height:15px;
	font-size:8pt;
	font-weight:bold;
	background:url(../images/line_info.jpg) no-repeat right center;
	}



.menuinformazioni li a:link, .menuinformazioni li a:visited {
	color:#383838;
	text-decoration:none;
	}

.menuinformazioni li a:hover, .menuinformazioni li.active a{
	color:#bb0000;
	}
	
/*override categoria blog*/

.blog-featured{
    padding: 0;
	}

.cols-2 .column-1{
    float: left;
    width: 46%;
	margin-right:4%;
	}

.cols-2 .column-2 {
    float: right;
    margin: 0;
    width: 46%;
}

.column-1, .column-2 {
    border: 0 solid;
}


.item{
    display: block;
    padding: 0 5px 10px;
	}

.items-row {
    margin-bottom: 10px !important;
    overflow: hidden;
}

.column-1, .column-2, .column-3{
    padding: 10px 5px;
}

.cols-3 .column-1{
    float: left;
    margin-right:4%;
    padding: 0 5px;
    width: 29%;
	}

.cols-3 .column-2 {
    float: left;
    margin-left: 0;
    padding: 0 5px;
    width: 29%;
}

.cols-3 .column-3 {
    float: right;
    padding: 0 5px;
    width: 29%;
}

.column-1, .column-2{
    border: 0 solid;
	}

.row-separator {
    border: 0 none;
    clear: both;
    display: block;
    height: 1px;
    margin: 0;
}

/**/

h2 a:link, h2 a:visited, h2, .titolo-destra,
#contenutifloat h1, #contenutifloat .page-header h1,
#contenutifloat .item-title, #contenutifloat .item-title a{
	color:#bb0000;
	text-decoration:none;
	text-transform:uppercase;
	font-weight:bold;
	font-size:12pt;
	margin:0 0 5px 0;
	line-height:1.25;
	}
#contenutifloat .page-header { margin: 0 0 8px 0; padding: 0; border: 0; }

.contenitoredestra{
	margin-bottom:20px;
	}

.customnero,
#destra .contenitoredestra.customnero{
	background:#000;
	color:#fff;
	padding:14px 16px;
	box-sizing: border-box;
	width: 278px;
	max-width: 100%;
	overflow: hidden;
	}
.customnero, .customnero *, .customnero td, .customnero th, .customnero strong { color:#fff; }
.customnero .titolo-destra { color:#fff; }

.customnero .orari-head {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	}
.customnero .orari-head img {
	flex: 0 0 auto;
	height: 40px;
	width: auto;
	}
.customnero .orari-head strong {
	font-size: 12pt;
	line-height: 1.1;
	}

.customnero .orari-tab {
	width: 100%;
	border-collapse: collapse;
	font-size: 8.5pt;
	table-layout: auto;
	}
.customnero .orari-tab th,
.customnero .orari-tab td {
	padding: 3px 0;
	text-align: left;
	white-space: nowrap;
	vertical-align: middle;
	border: 0;
	}
.customnero .orari-tab th {
	font-weight: bold;
	width: 38%;
	}
.customnero .orari-tab td {
	font-weight: normal;
	padding-right: 6px;
	}

.readmore a{
	background:url(../images/bg_leggi.png) repeat-x;
	height:27px;
	line-height:27px;
	color:#fff!important;
	font-weight:bold;
	display:inline-block;
	padding:0 10px;
	text-decoration:none;
	font-size:9pt;
	text-transform:uppercase;
	margin:10px 0;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	}

.readmore a:hover{
	background:#000;
	}

a:link, a:visited{
	color:#bb0000;
	text-decoration:none;
	}

a:hover{
	color:#000;
	}

.menualto{
	float:left;
	}

.social{
	float:right;
	padding-top: 10px;
    margin-right: 10px;
	}

/*Tipografia*/

.grigio{
	color:#666;
	font-size:12pt;
	font-weight:bold;
	font-style:italic;
	}

.telefono{
	font-size:18pt;
	font-weight:bold;
	}

.form_areatesto{
	width:250px;
	}

#pagina li{
	
	background: url("../images/spunta.png") no-repeat scroll left top transparent;
    color: #000000;
    list-style: none outside none;
    margin-bottom: 24px;
    margin-left: 20px;
    min-height: 30px !important;
    padding-left: 30px;
	}

.word{
	margin-bottom:20px;
	}

.searchintro{
	margin-bottom:10px;
	}
	
.phrases, .form-limit{
	margin-bottom:10px;
	}

.result-category, .result-created{
	display:none;
	}

.result-text{
	font-size:8pt;
	margin-bottom:15px;
	}

.inputbox{
	height:14px;
	}
/* === Compatibility overrides for Joomla 6 mod_menu === */
/* In J2.5 il <ul> riceveva la classe menumain/menualto/menuinformazioni.
   In J6 il <ul> ha sempre "mod-menu mod-list nav" — usiamo i contenitori per selezionare. */

#barramenu .mod-menu li { display:inline-block; padding:0 15px; list-style:none; line-height:45px; text-transform:uppercase; font-weight:bold; background:url(../images/linea_menumain.png) no-repeat right center; }
#barramenu .mod-menu li.current,
#barramenu .mod-menu li.active { background:url(../images/attivo.jpg) repeat-x; margin-top:0!important; }
#barramenu .mod-menu li a:link,
#barramenu .mod-menu li a:visited { font-size:10pt; color:#fffefe; text-decoration:none; }
#barramenu .mod-menu li a:hover { color:#ccc; }

.menualto .mod-menu li { display:inline-block; padding:0 10px; list-style:none; line-height:35px; }
.menualto .mod-menu li a:link,
.menualto .mod-menu li a:visited { color:#fff; text-decoration:none; font-size:9pt; }
.menualto .mod-menu li a:hover { color:#ccc; }

#infomenu .mod-menu li { display:inline-block; padding:0 15px; list-style:none; line-height:15px; font-size:8pt; font-weight:bold; background:url(../images/line_info.jpg) no-repeat right center; }
#infomenu .mod-menu li a:link,
#infomenu .mod-menu li a:visited { color:#383838; text-decoration:none; }
#infomenu .mod-menu li a:hover,
#infomenu .mod-menu li.current a { color:#bb0000; }

/* Reset del bullet-image dentro #pagina che era pensato per Joomla 2.5 — evitiamo che colpisca anche i menu di sidebar */
#pagina .mod-menu li,
#pagina .mod-custom li { background:none; padding-left:0; margin-left:0; min-height:0; }

/* === Slideshow rotator (thumbs a sinistra + stage a destra) === */
#rotator .asm-slideshow {
  display: flex;
  width: 931px;
  height: 412px;
  max-width: 100%;
  margin-bottom: 12px;
  align-items: stretch;
  gap: 0;
  overflow: visible;
}

#rotator .asm-thumbs {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 290px;
  flex: 0 0 290px;
  height: 412px;
  display: flex;
  flex-direction: column;
  position: relative;
  background: #bb0000;
  overflow: hidden;
}
/* "Coda" triangolare in basso a destra dell'intera colonna rossa */
#rotator .asm-thumbs::after {
  content: "";
  position: absolute;
  bottom: -22px;
  right: 0;
  width: 0; height: 0;
  border-style: solid;
  border-width: 22px 22px 0 0;
  border-color: #bb0000 transparent transparent transparent;
}
#rotator .asm-thumbs .asm-thumb {
  background: transparent;
  color: #fff;
  padding: 10px 16px;
  margin: 0;
  flex: 1 1 0;
  cursor: pointer;
  list-style: none;
  position: relative;
  transition: background 200ms;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* Linea sottile come separatore fra i pannelli (rosso più scuro) */
#rotator .asm-thumbs .asm-thumb + .asm-thumb {
  border-top: 1px solid rgba(0,0,0,0.18);
}
#rotator .asm-thumbs .asm-thumb:hover {
  background: rgba(0,0,0,0.08);
}
#rotator .asm-thumbs .asm-thumb.is-active {
  background: rgba(0,0,0,0.12);
}
#rotator .asm-thumbs .asm-thumb strong {
  display: block;
  font-size: 10.5pt;
  font-weight: bold;
  line-height: 1.15;
  margin-bottom: 4px;
  text-transform: uppercase;
}
#rotator .asm-thumbs .asm-thumb span {
  display: block;
  font-size: 8pt;
  line-height: 1.25;
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #f5cf00;
}

#rotator .asm-stage {
  position: relative;
  flex: 1;
  overflow: hidden;
  background: #000;
  height: 412px;
}
#rotator .asm-stage .asm-slide {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  transition: opacity 700ms ease-in-out;
  pointer-events: none;
}
#rotator .asm-stage .asm-slide.is-active {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
#rotator .asm-stage .asm-slide a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
#rotator .asm-stage .asm-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
#rotator .asm-stage figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  background: rgba(0,0,0,0.55);
  color: #fff;
  padding: 14px 18px;
  border: 1px solid rgba(255,255,255,0.18);
}
#rotator .asm-stage figcaption strong {
  display: block;
  font-size: 16pt;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.15;
}
#rotator .asm-stage figcaption span {
  display: block;
  font-size: 9.5pt;
  margin-top: 6px;
  font-weight: normal;
  line-height: 1.35;
}

/* Reset bullet-image dentro lo slideshow */
#rotator .asm-thumbs .asm-thumb {
  background-image: none;
}
#pagina #rotator .asm-thumbs .asm-thumb {
  background: #bb0000;
  padding-left: 18px;
  margin-left: 0;
  min-height: 0;
}

/* === Layout 2 colonne featured (J6 blog view) === */
#contenutifloat .blog-featured { padding: 0; }
#contenutifloat .blog-items.items-leading { display: block; margin-bottom: 20px; }
#contenutifloat .blog-items.columns-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
#contenutifloat .blog-item { margin: 0; }
#contenutifloat .blog-item img { max-width: 100%; height: auto; }
#contenutifloat .item-title { margin-bottom: 8px; }

/* nasconde residui di metadata se ne dovessero sfuggire */
#contenutifloat .article-info,
#contenutifloat .article-info-term,
#contenutifloat .icon-calendar,
#contenutifloat .icon-folder-open,
#contenutifloat .icon-eye { display: none !important; }

/* === Hamburger button (nascosto su desktop) === */
#asm-burger {
  display: none;
  background: transparent;
  border: 0;
  cursor: pointer;
  width: 40px;
  height: 36px;
  padding: 0;
  margin-right: 8px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
}
#asm-burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  transition: transform 200ms, opacity 200ms;
}
#asm-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
#asm-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
#asm-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* === Drawer mobile (nascosto sempre su desktop) === */
#asm-drawer {
  position: fixed;
  top: 0; right: 0; bottom: 0;
  width: 82%;
  max-width: 340px;
  background: #111;
  color: #fff;
  transform: translateX(100%);
  transition: transform 280ms ease;
  z-index: 1001;
  overflow-y: auto;
  padding: 50px 0 30px 0;
  box-shadow: -4px 0 12px rgba(0,0,0,0.3);
}
#asm-drawer.is-open { transform: translateX(0); }
#asm-drawer-close {
  position: absolute;
  top: 8px; right: 12px;
  background: transparent;
  border: 0;
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  padding: 6px 10px;
}
#asm-drawer .asm-drawer-section { padding: 8px 0; border-bottom: 1px solid #2a2a2a; }
#asm-drawer .asm-drawer-section:last-child { border-bottom: 0; }
#asm-drawer .mod-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}
#asm-drawer .mod-menu li {
  display: block;
  background: none !important;
  border: 0;
  padding: 0;
  margin: 0;
  line-height: 1;
}
#asm-drawer .mod-menu li a {
  display: block;
  color: #fff !important;
  padding: 14px 22px;
  text-decoration: none;
  font-size: 11pt;
  text-transform: uppercase;
  letter-spacing: .02em;
  border-left: 3px solid transparent;
}
#asm-drawer .mod-menu li a:hover,
#asm-drawer .mod-menu li.current a,
#asm-drawer .mod-menu li.active a {
  background: #bb0000;
  border-left-color: #fff;
}

#asm-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.55);
  z-index: 1000;
  opacity: 0;
  transition: opacity 280ms ease;
  pointer-events: none;
}
#asm-backdrop.is-open { opacity: 1; pointer-events: auto; }

/* === Dots slideshow (visibili sempre — utili anche desktop) === */
.asm-dots {
  display: none;
  justify-content: center;
  gap: 8px;
  margin-top: 10px;
}
.asm-dots .asm-dot {
  width: 10px; height: 10px;
  border-radius: 50%;
  border: 0;
  background: #c4c4c4;
  padding: 0;
  cursor: pointer;
  transition: background 200ms, transform 200ms;
}
.asm-dots .asm-dot:hover { transform: scale(1.15); }
.asm-dots .asm-dot.is-active { background: #bb0000; }

/* =========================================================
   MOBILE ≤ 991px — stack puro, hamburger, slideshow rivisto
   ========================================================= */
@media (max-width: 991px) {

  body { background-size: cover; background-attachment: scroll; }

  #wrapper { width: 100%; max-width: 100%; margin: 0; }

  /* TOPBAR — hamburger a destra, top-menu nascosto (passa nel drawer) */
  #barratop {
    width: 100%;
    margin: 0;
    height: auto;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 12px;
    box-sizing: border-box;
  }
  #barratop .menualto,
  #barratop .social { display: none; }
  #asm-burger {
    display: flex;
    margin-left: auto;
  }

  /* INTESTAZIONE — logo + recapiti in colonna, centrati */
  #intestazione {
    width: 100%;
    height: auto;
    background-size: cover;
    background-position: center;
    padding: 14px 12px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-align: center;
  }
  #logo { float: none; width: auto; margin: 0; }
  #logo img { max-width: 80vw; height: auto; }
  #destralogo {
    float: none;
    margin: 0;
    line-height: 1.4em;
    text-align: center;
  }

  /* BARRA MENU PRINCIPALE — nascosta (è dentro al drawer) */
  #barramenu { display: none; }

  /* BARRAMENU INFO — nascosto su mobile */
  #barramenuinfo { display: none; }

  /* CONTENUTO PRINCIPALE */
  #contenutoitorepagina {
    width: 100%;
    padding: 12px;
    box-sizing: border-box;
  }

  /* SLIDESHOW — solo immagine + caption sotto, niente thumbs */
  #rotator .asm-slideshow {
    display: block;
    width: 100%;
    height: auto;
  }
  #rotator .asm-thumbs { display: none; }
  #rotator .asm-stage {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    max-height: 60vh;
  }
  #rotator .asm-stage figcaption {
    left: 8px; right: 8px; bottom: 8px;
    padding: 10px 12px;
  }
  #rotator .asm-stage figcaption strong { font-size: 12pt; }
  #rotator .asm-stage figcaption span   { font-size: 9pt; }
  #rotator .asm-dots { display: flex; }

  /* PAGINA — contenuto + sidebar in colonna */
  #pagina {
    display: flex;
    flex-direction: column;
    margin: 16px 0;
  }
  #contenutifloat {
    float: none;
    width: 100%;
    margin: 0 0 24px 0;
  }
  #destra {
    float: none;
    width: 100%;
    padding: 0;
    border-left: 0;
  }
  #destra .contenitoredestra { margin-bottom: 16px; }
  #destra iframe { width: 100% !important; max-width: 100%; }
  #destra img { max-width: 100%; height: auto; }
  .customnero,
  #destra .contenitoredestra.customnero { width: 100%; }

  /* BLOG/FEATURED — colonne diventano stack */
  #contenutifloat .blog-items.columns-2 {
    grid-template-columns: 1fr;
  }
  #contenutifloat .blog-item img { max-width: 100%; height: auto; }

  /* COPYRIGHT footer — la tabella diventa stack */
  #copyright { padding: 16px 12px; font-size: 9pt; line-height: 1.4; }
  #copyright table { width: 100% !important; border-collapse: collapse; }
  #copyright table td {
    display: block;
    width: 100% !important;
    text-align: center !important;
    padding: 4px 0;
  }

  /* Articolo singolo: titolo un po' più piccolo per stare in larghezza */
  #contenutifloat h1,
  #contenutifloat .page-header h1 { font-size: 14pt; }

  /* Form contatti, paragrafi: tipografia un filo più leggibile */
  body { font-size: 11pt; line-height: 1.55; }
}

/* Larghezza ultra-stretta (< 480px) — micro-aggiusti */
@media (max-width: 479px) {
  #intestazione #logo img { max-width: 75vw; }
  #rotator .asm-stage figcaption {
    background: rgba(0,0,0,0.7);
  }
  #rotator .asm-stage figcaption strong { font-size: 10.5pt; }
  #rotator .asm-stage figcaption span   { font-size: 8.5pt; }
  #copyright { font-size: 8.5pt; }
}

/* Safety net: tutte le immagini dentro al contenuto articolo non sforano mai */
@media (max-width: 991px) {
  #contenutifloat img,
  #contenutifloat .com-content-article__body img,
  #contenutifloat .item-content img,
  #destra img { max-width: 100% !important; height: auto !important; }
  #contenutifloat iframe,
  #destra iframe { max-width: 100% !important; }
  /* word break su parole lunghissime / URL */
  #contenutifloat, #contenutifloat * { word-wrap: break-word; overflow-wrap: break-word; }
  /* niente scroll orizzontale */
  html, body { overflow-x: hidden; }
}

/* === Mobile fix: slideshow + caption + giustificato === */
@media (max-width: 991px) {
  /* Stage: altezza tramite padding-bottom (16:9) — più affidabile di aspect-ratio
     quando i figli sono position:absolute */
  #rotator .asm-slideshow { height: auto !important; }
  #rotator .asm-stage {
    position: relative;
    width: 100%;
    height: 0 !important;
    aspect-ratio: auto;
    padding-bottom: 56.25%;
    max-height: none;
    overflow: hidden;
  }
  #rotator .asm-stage .asm-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  /* Caption più compatta + word-wrap obbligatorio */
  #rotator .asm-stage figcaption {
    left: 0; right: 0; bottom: 0;
    padding: 8px 12px;
    border: 0;
    background: rgba(0,0,0,0.65);
    box-sizing: border-box;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
  }
  #rotator .asm-stage figcaption strong { font-size: 11pt; line-height: 1.2; }
  #rotator .asm-stage figcaption span   { font-size: 9pt;  line-height: 1.3; margin-top: 2px; }

  /* Disabilita "justify" sui paragrafi del contenuto — spazi orrendi a 390px */
  #contenutifloat p,
  #contenutifloat .item-content p,
  #contenutifloat .com-content-article__body p {
    text-align: left !important;
    hyphens: auto;
  }
}

/* === Mobile header revamp: hamburger nell'intestazione, niente topbar === */
@media (max-width: 991px) {
  /* Topbar nascosta del tutto su mobile */
  #barratop { display: none !important; }

  /* Intestazione: logo a sx + hamburger a dx in alto, recapiti centrati sotto */
  #intestazione {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "logo burger"
      "info info";
    align-items: center;
    gap: 6px 12px;
    padding: 14px 16px;
    background: #bcbcbc;
    background-image: none;
  }
  #intestazione #logo {
    grid-area: logo;
    justify-self: start;
    margin: 0;
    width: auto;
  }
  #intestazione #logo img { max-width: 70vw; max-height: 80px; width: auto; height: auto; }
  #intestazione #asm-burger {
    grid-area: burger;
    display: flex;
    margin: 0;
    width: 44px;
    height: 36px;
  }
  /* Su sfondo chiaro, le linee dell'hamburger diventano scure */
  #intestazione #asm-burger span { background: #111; width: 28px; height: 3px; }
  #intestazione #destralogo {
    grid-area: info;
    margin: 0;
    text-align: center;
    line-height: 1.4em;
    font-size: 9.5pt;
  }
  /* Recapiti più piccoli: telefono ridimensionato */
  #intestazione #destralogo .telefono,
  #intestazione #destralogo strong { font-size: 11pt; }
  #intestazione #destralogo .grigio { font-size: 10pt; }
}

/* === Slideshow mobile: altezza fissa ~600px (crop con object-fit) === */
@media (max-width: 991px) {
  #rotator .asm-stage {
    height: 600px !important;
    padding-bottom: 0 !important;
    max-height: none;
  }
}
@media (max-width: 479px) {
  /* Su display molto stretti riduco un filo per non occupare tutto lo schermo */
  #rotator .asm-stage { height: 500px !important; }
}

/* === Fix: #rotator legacy width:931px / max-height:412px tolti su mobile === */
@media (max-width: 991px) {
  #rotator {
    width: 100% !important;
    max-height: none !important;
  }
}

/* Logo link rimuove sottolineature/colore default */
#logo a, #logo a:visited, #logo a:hover { display: inline-block; line-height: 0; }
#logo a img { display: block; }
