:root {
	--bkg:#e3e2e0;
	--text: black;
	--white: white;
	--light: #e9e9e9;
	--halfwhite: rgba(255,255,255,0.5);
	--dark: #333;
	--black: black;
	--yellow: #ffe1b0;
	--issuu: #ff5a47;
	--griginoino: #ddd;
	--grigino: #bbb;
	--grigione: #999;
	--grigissimo: #3C3C3B;
	--orange: #7C2E0E;
	--darkorange: #cb4d1a;
	--marroncino: #C9BEB1;
	--marroncinoino: #DBCCBF;
	--brown: #5B3E00;
	--formfontsize: 1.5em;
	--formpadding: .3em;
}

html, body {margin:0;padding:0;}
body {height:100%; background: var(--bkg); font-family: sans-serif; color: var(--text);}
.banneritem img {width:100%; height: auto;}

.header {position:relative; min-width: 290px;}
.homepage .headercontent {grid-template: min-content min-content auto min-content / 1fr 2fr 1fr; height: 100%; }
.headercontent {position:relative; display: grid; grid-template: min-content / 1fr 2fr 1fr; column-gap: 1em; z-index: 10; box-sizing: border-box; max-width: 1140px; margin: 0 auto; padding: 0 1em;}

/* stili del logo e del mainlink */
#mainlinktohome {display: flex; align-items: center;}
#mainlinktohome img {width: 100%; min-width: 80px; height: auto;}
.logotesto{fill:#fff;}
.logopath{fill:none;stroke:#fff;stroke-linejoin:round;stroke-width:7.72px;}
.logotesto{font-family:Montserrat-Subset, Montserrat;font-size:88px;font-weight:700;}
.logotestodue{letter-spacing:-.06em;}
.logotestotre{letter-spacing:-.02em;}
.logotestoquattro{letter-spacing:-.02em;}
.logotestocinque{letter-spacing:-.02em;}
.logotestosei{letter-spacing:-.02em;}
.logotestosette{letter-spacing:-.02em;}
.logotestootto{letter-spacing:-.05em;}
.logotestonove{letter-spacing:.12em;}
.logotestodieci{letter-spacing:-.06em;}

/**** icona premium *****/
.field-premium {position: absolute; z-index: 1; background: #B28037; top:5px; right:5px; width: 3em; aspect-ratio: 1 / 1; border: solid 3px var(--white); border-radius: 50%; display: flex; justify-content: center; align-items: center;}


/* MAIN MENU */
.mainmenubox {display: flex; justify-content: flex-end; align-items: center; grid-column: 2 span / -1;}
.mainmenubox ul {list-style: none; display: flex; flex-wrap: nowrap; gap: 1em;}
.mainmenubox ul li {flex: 0 0 1;}
.mainmenubox ul li a {display: inline-block; position: relative; color: var(--white); text-decoration: none; font-weight: 100; text-transform: uppercase; font-size: 1.1em; letter-spacing: .02em; text-wrap: nowrap;}
.mainmenubox ul li a:hover {color: var(--grigino);}
.mainmenubox ul li a:before {content: ""; position: absolute; top:0; left: 50%; width:0; height: 100%;  padding-bottom: .5em; border-bottom: solid 1px var(--white); transition: all .3s ease-in-out;}
.mainmenubox ul li a:hover:before {left:0; width: 100%;}
.panino {display: none;}
@media (max-width: 840px) {
	#mainlinktohome {grid-column: 1 / span 2;} .mainmenubox {grid-column: 1 span / -1;}
	.panino {display:block; background:transparent; aspect-ratio: 1 / 1; cursor: pointer; border: 0; width: 4em;}
	.hamburger {fill:var(--white); width: 100%; height: auto; aspect-ratio: 1 / 1;}
	.mainmenubox ul {position: absolute; flex-flow: column; top:70px; background: var(--orange); padding: 2em;}
	.mainmenubox ul:before {content: ;}
	
	.mainmenubox ul { display: none; }
	.hamburgerclose { display: none; }
	.hamburgeropen { display: block; }
	.mainmenubox.active ul { display: flex; z-index: 110;}
	.mainmenubox.active .hamburgerclose { display: block; }
	.mainmenubox.active .hamburgeropen { display: none; }
}



.slogan {grid-column: 1 / span 2; color: var(--white); font-style: italic; font-size: 1.2em; font-weight: 200; display: flex; align-items: center;}
.followus {display: flex; justify-content: flex-end; align-items: center; gap:.5em; color: var(--white);}
.followus a {color: var(--white); text-decoration: none;}
.slogan, .followus {height: 100%; margin:0; padding-top: .3em;  border-top: solid 1px var(--white);}
.facediculbuc{fill:var(--white); height: auto;}
.issuulogo path{fill:var(--white);}
@media (max-width: 840px) {.followus span {display: none;} .slogan{font-size: clamp(10px, 5vw, 15px);} }


/* SUB MENU */
.othermenu {position: sticky; top: 0; z-index: 300;}
.othermenu button {background: transparent; border:0;} .othermenu button svg {fill: var(--white); cursor:pointer; width: 3em; height: 3em;}
.othermenu {grid-row: 4; grid-column: 1 / -1; background-color: var(--orange); min-height: 3em;}
.othermenu .boxmenusezioni {height: 100%; box-sizing: border-box; padding: 0 1em; max-width: 1140px; margin: 0 auto;}
.othermenu ul {margin: 0; padding: 0; height: 100%; list-style: none; display: flex; gap:1em;}
.othermenu li {display: flex; align-items: center;}
.othermenu a {position: relative; color: var(--white); text-decoration: none; display: inline-block; text-transform: uppercase;}
.othermenu a:before {content: ""; position: absolute; top: 0; left: 50%; width: 0; height: 100%; border-bottom: solid 2px var(--white);  transition: all .3s ease-in-out;}
.othermenu a:hover:before {left:0; width:100%;}

.othermenu li.item-119 {position: relative; margin-left: auto;}
.othermenu li.item-119 ul li {justify-content: flex-end;}
.othermenu li.item-119 a {text-align: right; text-wrap:nowrap;}

button#togglesubuno {display: none;}

.othermenu li.item-119 ul {display: none; position: absolute; top: 100%; right: -1em; height: auto; flex-direction: column; box-sizing: border-box; padding: 1em; background-color: var(--orange);}
.othermenu li.item-119 ul.ulvisible {display: flex;}


@media (max-width: 960px) {
	.boxmenusezioni {position: relative;}
	#menusezioni {position: absolute; background: var(--orange); left: 0; box-sizing: border-box; height: auto; margin: 0; padding: 0; display: block;}
	.othermenu {padding: 0 1em;}
	.othermenu li.parent {width: 100%;}
	.othermenu li.item-124 ul {display: none;}
    .othermenu #menusezioni:hover li.item-124 ul, 
    .othermenu #menusezioni:hover li.item-119 ul { display: none; }
    .othermenu .mod-menu__sub.ulvisible {display: flex !important;}
	
	button#togglesubuno {display: flex; height: 3.5em;}
	button#togglesubdue {display: none;}
	
	.othermenu ul.ulsub-submenu1 {flex-direction: column; gap:0;}
	.othermenu li.item-119 ul {position: relative; top: auto; right: auto; margin: 0; padding: 0;}
	.othermenu li {align-items: flex-start;}
	.othermenu li.parent {flex-direction: column; justify-content: flex-start; margin-left: inherit;}
	.othermenu li.parent ul.mod-menu__sub {justify-content: flex-start; width: 100%; box-sizing: border-box; margin: 0; padding: 1em;}
	.othermenu li.parent ul.mod-menu__sub li {justify-content: flex-start;}
	.othermenu li.item-124 ul, .othermenu li.item-119 ul {flex-direction: column; margin: 1em;}
	.othermenu li.item-124 ul li {justify-content: flex-start;}
	.othermenu li.item-119 ul a {text-align: left;}
}




/* ICONA PREMIUM */
#premiumdot {width: auto; height: 75%; object-fit: contain; aspect-ratio:1 / 1;}
.premiumiconst0 {fill: #fff;}
.premiumiconst1 {fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 1.4px;}

/* mainpage */
.mainpage {max-width: 1140px;  margin: 0 auto; padding: 1em; padding-bottom: 0; box-sizing: border-box;}
figure {margin:0; padding:0;}



/* BLOCCO SPECIALITÀ */
.quartobloccohome {position: relative; margin:6em 0; padding: 2em 0; border-top: dotted 5px var(--orange); border-bottom: dotted 5px var(--orange);}
.quartobloccohome ul.modulenews131 {list-style:none; display:grid; grid-template: auto / repeat(3, 1fr); margin: 0; padding: 0;}
.quartobloccohome ul.modulenews131 li {aspect-ratio: 3/2; position: relative; display: flex; justify-content: center; align-items: center;}
.quartobloccohome ul.modulenews131 li figure:before {content: ""; display: block; position: absolute; z-index: 2; width: 0; height: 0; background: var(--orange); opacity: 0; transition: all 0.2s ease; cursor: pointer;}
.quartobloccohome ul.modulenews131 li figure:hover:before {width: 100%; height: 100%; opacity: .3; cursor: pointer;}
.quartobloccohome ul.modulenews131 li article, .quartobloccohome ul.modulenews131 li a, .quartobloccohome ul.modulenews131 li a figure {display: block; height: 100%;}
.quartobloccohome ul.modulenews131 li a {position: absolute; z-index: 2; left: 0; width: 100%; cursor: pointer;}
.quartobloccohome ul.modulenews131 li img {position: relative; width: 100%; height:100%; object-fit: cover;}


.quartobloccohome a.specialitalink {display: flex; flex-flow: column nowrap;justify-content: center; align-items: center; position: absolute; z-index: 2; left: 50%; top: 50%; transform: translate(-50%, -50%); background: var(--white); aspect-ratio: 1/1; border-radius: 50%; padding: 1em; box-sizing: border-box; color: var(--text); text-decoration: none; font-size: 2em; transition: all 0.2s ease;}
.quartobloccohome a.specialitalink:hover {background: var(--orange); color: var(--white); border: solid .5em var(--white);}
.quartobloccohome a.specialitalink svg {width: 2em; transition: all 0.2s ease;}
.quartobloccohome a.specialitalink:hover svg {fill: var(--white);}
.quartobloccohome a.specialitalink p {display: inline-block; max-width: 8em; text-align: center; margin: 0;}
@media (max-width: 550px) {
	.quartobloccohome a.specialitalink {font-size: 1em;}
}


/* blocco contattaci inpage */
.contattaci_bottom_page {padding:1em; margin: 2em 0; text-align: center;}
.contattaci_bottom_page h2 {color: var(--orange); font-style: italic; font-size: 3em; font-weight: normal; letter-spacing: .01em;}
.contattaci_bottom_page h3 {font-size: 1.5em; font-weight: normal;}
.contattaci_bottom_page h3 em {background: var(--marroncino); font-weight: bold; padding: .3em; font-style: normal;}
.contattaci_bottom_page a {display: inline-block; background: var(--orange); color: var(--white); text-decoration: none; padding: .5em 1em; font-size: 1.3em;}






/* footer */
.footer {position: absolute; left:0; width:100vw; box-sizing: border-box; background:var(--grigissimo); padding: 1em 5vw 8em 5vw; margin-top: 3em;}
.footercontent {max-width: 1140px; margin: 0 auto;}
.footer svg.logo-header {min-height: 50px;  max-width: 200px;}
.footer .firstline {display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 2em;}

/* last menu */
.footer .lastmenu {display: flex; flex-flow: row wrap; list-style:none; gap:1em; padding:0; margin:0; font-size: .8em;}
.footer .lastmenu a {color:var(--white); text-decoration: none; text-transform:uppercase; font-weight:200;}
.footer p {color:var(--white);}






