
legend { display: none; }
fieldset { border: none; margin: 0; padding: 0; }
label { display: block; margin: 4px 0; white-space: nowrap; font-weight: bold; font-size: 1.125rem; }
form { display: block; padding: 0; margin: 0; width: 100%; }
input, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid #dcdcdc; padding: 3px 0; font-family: 'Montserrat', sans-serif; font-size: 1em; width: 100%; }
input[type="checkbox"] { -webkit-appearance: checkbox; -moz-appearance: checkbox; appearance: checkbox; border: 1px solid #dcdcdc; padding: 3px 0; font-family: 'Montserrat', sans-serif; font-size: 1em; width: auto!important; float: left; margin: 2px 8px 0 0; }
input[type="radio"] {  -webkit-appearance: radio; -moz-appearance: radio; appearance: radio; }
textarea { min-height: 100px; }
.button,
#riassegnapassword input[name="submit"] {
	background: #000;
	color: #FFF;
	height: 45px;
	padding: 0 20px;
	font-size: 0.975rem;
	border: 0;
	cursor: pointer;
	user-select: none;
	display: flex;
	justify-content: center;
	align-items: center;
	text-transform: uppercase!important;
	width: auto;
}
.button:hover,
#riassegnapassword input[name="submit"]:hover { cursor: pointer; }
.radio { padding-bottom: 0.2em; line-height: 16px; clear: both; margin: 0!important; }
.radio label { margin: 0!important; }
.radio input { border: none!important; float: left; width: 18px; height: 16px; margin: 0; }
.cen { text-align: center; }
.des { text-align: right; }
.max { width: 100%; }
.nowrap { white-space: nowrap; }
#cx .button { width: auto; }

/* MESSAGES */
.messaggio { margin: 0 0 0.7em; padding: 0.5em 0.5em 0.5em 25px; color: #08903c; border: 1px solid #08903c; background: url(/admin/images/icons/accept.png) no-repeat 4px 6px #D6E4C5; }
.errore { color: #CC0000; border: 1px solid #CC0000; background-image: url(/admin/images/icons/remove.png); background-color: #FEDADA; }
.warning { color: #444; border: 1px solid #ffdd00; background-image: url(/admin/images/icons/warning.png); background-color: #fffab2; }
/* FINE MESSAGES */



/* INIZIO COLORI e FONT */
@font-face{
	font-family: 'Abril';
	src: url('/web/font/AbrilFatface-Regular.ttf') format("truetype");
}
@font-face{
	font-family: 'Montserrat';
	src: url('/web/font/Montserrat-VariableFont.ttf') format("truetype");
}
@font-face{
	font-family: 'Nunito';
	src: url('/web/font/Nunito-VariableFont.ttf') format("truetype");
}
@font-face{
	font-family: 'Inter';
	src: url('/web/font/Inter-VariableFont.ttf') format("truetype");
}
@font-face{
	font-family: 'ArboriaBold';
	src: url('/web/font/Arboria-Bold.ttf') format("truetype");
}


:root {
	--nero: #000;
	--bianco: #FFF;
	--oro: #B59056;
}
/* FINE COLORI e FONT */



/* INIZIO CSS GLOBALE */
* { box-sizing: border-box; margin: 0; padding: 0; }

.blocchi { display: flex; justify-content: center; flex-wrap: wrap; width: 100%;}

html { font-size: 16px; }

body { width: 100%; margin: 0; padding: 0; font-family: "Montserrat"; font-size: 1.2rem; font-weight: 400; color: var(--bianco); min-height: 100vh; }
/*body.body_menu_aperto::after {
	content: "";
	position: absolute;
	z-index: 999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
}*/

h1 { font-size: 2.7rem; font-weight: 800; text-transform: uppercase; }
h3 { font-size: 2rem; font-weight: 400; }
h4 { font-size: 2rem; font-weight: 400; }
h5 { font-size: 1.5rem; font-weight: 400; }

/* .wrapperpad { display: flex; height: 100%; } */
/* INIZIO CSS GLOBALE */



/* INIZIO FLEX COLONNE */
.col4, .col6, .col8, .col12 { flex: 0 0 100%; }
/* FINE FLEX COLONNE */



/* INIZIO CSS HEADER */
#consoleavvisi + header #header .menu { justify-content: unset; }

.menu { background-color: var(--nero); display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; justify-content: space-around; height: 70px; padding: 0 40px; }
.menu.menu_admin { padding-right: 100px; }
#menu_tendina { padding: 10px; background-color: var(--oro); position: absolute; top: 65px; display: none; left: 0; width: 100%; text-align: center; transition: display 1s ease-in-out; z-index: 99999; }
#menu_tendina ul { list-style-type: none; line-height: 40px; }
#menu_tendina ul a { text-transform: uppercase; font-size: 1.5rem; text-decoration: none; color: var(--nero); }
#menu_tendina ul a.attivo { font-weight: 900 }
#menu_tendina ul a:hover { text-decoration: underline; }

#logo_sito { width: 100%; }
#logo_sito a { display: block; width: 40px; height: 40px; background-position: center; background-repeat: no-repeat; background-size: cover; }
#logo_sito a img { display: none; }

.lingue_social ul { list-style-type: none; display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 10px; margin-bottom: 0; }
.lingue_social ul a { display: block; height: 24px; }
#social { display: flex; column-gap: 15px; flex-direction: row; justify-content: center; margin-bottom: 10px; }
#social a { color: var(--oro); font-size: 1.6rem; }
.lingue_social.principale { display: none; }
#menu_tendina .lingue_social.telefono { 
	margin-top: 15px; 
	display: flex;
	flex-direction: column;
	row-gap: 10px;
}
#menu_tendina .lingue_social.telefono #social a { margin: 0 5px; color: var(--nero)}

.menu-social-lingue-ecomm .lingue_social ul {
	flex-direction: column;
	row-gap: 3px;
}

.menu-social-lingue-ecomm .lingue_social #lingue {
	height: 24px;
	width: 24px;
	position: relative;
	overflow: hidden;
}

.menu-social-lingue-ecomm .lingue_social #lingue:hover {
	overflow: unset;
}

#menu_tendina .lingue_social #login {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 12px 0;
}

#menu_tendina .lingue_social #login i {
	color: #000;
}

#icona_menu { width: 100%; display: flex; flex-direction: column; align-items: center; }
#icona_menu img {
	height: 30px;
}
#icona_menu:hover { cursor: pointer; }

.menu-social-lingue-ecomm {
	width: 100%;
	display: flex;
	justify-content: end;
	align-items: center;
}

.linea { background-color: var(--oro); height: 4px; border-radius: 10px;; }
.linea.lunga { width: 100%; }
.linea.corta { width: 60%; margin: 6px 0; }

header {
	position: relative;
}

#immagine_header { width: 100%; height: 250px; background-position: center; background-repeat: no-repeat; background-size: cover; }
#immagine_header img { display: none; }

#titolo_header { background-color: var(--nero); text-align: center; padding: 15px 0; }

#multimedia { margin-bottom: -5px; }
#multimedia .video-box>video { width: 100%; height: auto; background-color: var(--nero)}

.testo_info_registrazione { float: left; width: 100%; border-bottom: 1px solid #ddd; margin-bottom: 20px; padding-bottom: 25px; }

#login ul {
     list-style-type: none;
     margin: 0;
     padding: 0;
}

#login span {
    display: block;
}

#dropdown_menuProfilo {
    position: relative;
}

.contenitore_prodotto_aggiunto {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 99999;
	width: 100%;
	height: 100%;
}

.box_prodotto_aggiunto {
	width: auto;
	height: auto;
	padding: 30px;
	background: #FFF;
	position: fixed;
	top: 50%;
	left: 50%;
	display: flex;
	flex-direction: column;
	transform: translate(-50%, -50%);
}

.box_prodotto_aggiunto__messaggioAggiunta {
	padding: 12px 20px 11.5px;
	background: #c4edb1;
	border-radius: 8px;
	font-size: 0.925rem;
	line-height: 1.4;
	letter-spacing: 0.8px;
	display: flex;
	align-items: center;
	color: #000;
}

.contenitori_tasti {
	display: flex;
	column-gap: 20px;
	margin-top: 20px;
}

.box_prodotto_aggiunto__continuaAcquisti {
	padding: 13px 20px;
	display: flex;
	align-items: center;
	border: 2px solid var(--oro);
	color: var(--oro);
	font-size: 0.925rem;
	line-height: 1.4;
	text-transform: uppercase;
	cursor: pointer;
}

.box_prodotto_aggiunto__continuaAcquisti:hover {
	color: #fff;
	background: var(--oro);
}

.box_prodotto_aggiunto__vaiAlCarrello {
	padding: 13px 20px;
	display: flex;
	align-items: center;
	background: var(--oro);
	color: #FFF;
	font-size: 0.925rem;
	line-height: 1.4;
	text-transform: uppercase;
	cursor: pointer;
	text-decoration: none;
}

.box_prodotto_aggiunto__vaiAlCarrello:hover {
	background: #D5A559;
}

#dropdown_menuProfilo ul {
    position: absolute;
    top: 48px;
    right: -20px;
    background: #B59056;
    padding: 10px 0;
    min-width: 180px;
    flex-direction: column;
    row-gap: 5px;
    display: none;
    transition: opacity 0.3s ease-in-out;
}

.dropdown_menuProfilo--visible {
    display: flex!important;
    opacity: 1;
}

#dropdown_menuProfilo ul li {
    flex: 0 0 100%;
}

#dropdown_menuProfilo ul li a {
    white-space: nowrap;
    color: #FFF;
    text-decoration: none;
    font-size: 1.125rem;
    padding: 3px 15px;
    width: 100%;
    display: block;
}

#dropdown_menuProfilo ul li a:hover {
    text-decoration: underline;
}

#dropdown_menuProfilo .dropDownProfilo {
    cursor: pointer;
}

#dropdown_menuProfilo span img {
    width: 25px;
    float: left;
}
  
.login img {
	width: 25px;
	float: left;
}
  
.carrello-header img {
	width: 25px;
	float: left;
}

.cart-ante-total-price {
	cursor: pointer;
}

.anteprimacarrello--visible {
	display: block!important;
}

.cart-ante-total-price {
	position: relative;
}



.verifica_eta { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999999; background: rgba(0, 0, 0, 0.92); /*background-image: url('/web/images/verifica-maggiore-eta.jpg'); background-repeat: no-repeat; background-size: cover;*/ }

.verifica_eta_box { position: fixed; top: 50%; left: 50%; text-align: center; transform: translate(-50%, -50%); width: 100%; max-width: 700px; padding: 30px; }

.verifica_eta_contenuti { display: flex; flex-direction: column; gap: 25px; }
.untente_minorenne { display: none; }

.untente_minorenne h2 { margin-bottom: 30px; }

.verifica_eta_contenuti .pulsanti_verifica { display: flex; flex-direction: column; justify-content: center; align-items: center; margin-top: 20px; gap: 20px; }
.verifica_eta_contenuti .pulsanti_verifica p,
.verifica_eta_contenuti .pulsanti_verifica a { text-decoration: none; font-size: 1rem; border: 2px solid var(--oro); border-radius: 5px; color: var(--bianco); padding: 20px 90px; transition: background ease-in-out .3s, border ease-in-out .3s; }
.verifica_eta_contenuti .pulsanti_verifica a:first-child { background: var(--oro); }
.verifica_eta_contenuti .pulsanti_verifica p:hover,
.verifica_eta_contenuti .pulsanti_verifica a:hover { border-color: var(--bianco); background: var(--oro); cursor: pointer; }
    
.verifica_eta_contenuti p,
.untente_minorenne p { font-size: 15px; }
/* FINE CSS HEADER */



/* INIZIO CSS FOOTER */
footer { width: 100%; font-size: 0.8rem; padding: 20px 50px; background-color: var(--nero); display: flex; flex-direction: column; justify-content: space-between; }

.footer { width: 100%; display: flex; gap: 20px; flex-direction: column; align-items: center; }
.footer.dx { margin-top: 10px; text-align: center; flex-direction: column; width: 100%; }
.footer.dx div { width: 100%; }
.footer.dx a { color: var(--bianco); text-decoration: none; }
.footer.dx a:hover { text-decoration: underline; }

#immagine-footer { width: 60px; height: 60px; background-position: center; background-repeat: no-repeat; background-size: cover; }
#immagine-footer img { display: none; }

#testo-footer { width: 100%; display: flex; flex-direction: column; gap: 10px; text-align: center; }
.testof { width: 100%; }
/* FINE CSS FOOTER */



/* INIZIO CSS NEWS */
#news { color: var(--nero); }
#news .news-int-image { height: 250px; background-position: center; background-repeat: no-repeat; background-size: cover; }
#news .news-int-image img { display: none; }
#news .news-int-data { padding: 20px; background-color: var(--bianco); color: var(--nero); }
#news .news-int-data #news-title,
#news .news-int-data #news-data { margin-bottom: 25px; }
#news .news-int-data #newscontenuti { margin-bottom: 20px; line-height: 1.4; }
#news .news-int-data .return-to-news { background-color: var(--oro); text-align: left; padding-left: 5px; margin-top: 25px; }
#news .news-int-data .return-to-news a { display: block; width: 100%; color: var(--bianco); text-decoration: none; }
#news .news-int-data .return-to-news a:hover { text-decoration: underline; }
/* FINE CSS NEWS */



/* INIZIO CSS CATEGORIA NEWS */
#content .news { color: var(--nero); margin-bottom: 50px; }
#content .news:last-child { margin-bottom: 0; }
.news .newsimg a { display: block; height: 250px; background-position: center; background-repeat: no-repeat; background-size: cover; transition: filter 0.3s ease-in-out; }
.news .newsimg a:hover { filter: brightness(40%); }
.news .newsimg a img { display: none; }
.news .newstesto { padding: 20px 30px; background-color: var(--oro); color: var(--bianco); }
.news .newstesto a { color: var(--bianco); text-decoration: none; }
.news .newstesto a:hover { text-decoration: underline; }
.news .newsdata { margin: 15px 0; }
/* FINE CSS CATEGORIA NEWS */



/* INIZIO CSS BLOCCO TESTO */
.bloccoTesto.sfondo-nero { background-color: var(--nero); color: var(--bianco); }
.bloccoTesto.sfondo-oro { background-color: var(--oro); color: var(--bianco); }
.bloccoTesto.sfondo-bianco { background-color: var(--bianco); color: var(--nero); }
.bloccoTesto .boxTitle { text-align: center; margin-bottom: 15px; }
.bloccoTesto .testo { padding: 20px; }
.bloccoTesto .immagine { width: 100%; min-height: 250px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.bloccoTesto .immagine img { display: none; }
/* FINE CSS BLOCCO TESTO */



/* INIZIO CSS BLOCCO NEWS */
.bloccoNews .news { padding: 0; position: relative; }
.bloccoNews .boxTitle { position: absolute; margin: 10px 0 0 10px; padding: 6px; z-index: 10; }
.bloccoNews .boxTitle h3 { font-family: ArboriaBold; text-shadow: 2px 4px 5px #000; }
.bloccoNews .news .newsdata { margin: 0 0 10px 0; }
.bloccoNews .news .newstesto { font-size: 1.2rem; position: absolute; bottom: 0; left: 0; right: 0; padding: 8px; margin: 20px; }
.bloccoNews .news .newstesto #titolo-sommario { display: flex; gap: 6px; }
/* .bloccoNews .news .newstesto #titolo-sommario a { white-space: nowrap; } */
.bloccoNews .news .newstesto #titolo-sommario .newssommario { overflow: hidden; }
.bloccoNews .news .newstesto #titolo-sommario .newssommario p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* FINE CSS BLOCCO NEWS */



/* INIZIO CSS BLOCCO COLLEGAMNETO INTERNO */
.bloccoCollegamento.interno .box { display: flex; }
.bloccoCollegamento.interno .box .boxTitle.no-sommario h3 { font-family: ArboriaBold; text-shadow: 2px 4px 5px #000; }
.bloccoCollegamento.interno .box a:not(#boxPulsante a) { width: 100%; height: 350px; z-index: 9;  padding-top: 100%; aspect-ratio: 1/1; background-position: center; background-repeat: no-repeat; background-size: cover; transition: filter 0.3s ease-in-out; }
.non-adattare { padding-top: unset!important; aspect-ratio: unset!important; }
.bloccoCollegamento.interno .box a.adatta-immagine-quadrata:not(#boxPulsante a) { padding-top: 100%; aspect-ratio: 1/1; }
.bloccoCollegamento.interno .box>a:hover { filter: brightness(50%); }
.bloccoCollegamento.interno .box a img { display: none; }
.bloccoCollegamento.interno .box.con-sommario a img { display: block!important; width: 100%; }
.bloccoCollegamento.interno .box.con-sommario a:not(#boxPulsante a) { background: unset!important; aspect-ratio: unset!important; height: auto!important; padding: 0!important; }
.bloccoCollegamento.interno .box .boxTesto.no-sommario { position: absolute; width: 100%; height: 100%;}
.bloccoCollegamento.interno .boxTitle.no-sommario { position: relative; margin: 10px 0 0 0; color: var(--bianco); z-index: 10; padding: 6px 6px 6px 16px; }
.bloccoCollegamento.interno .boxTitle.con-sommario { color: var(--nero); text-transform: uppercase; }
.bloccoCollegamento.interno .boxTitle.con-sommario>p { text-transform: none; }
.bloccoCollegamento.interno #boxContenuti { color: var(--nero); }
.bloccoCollegamento.interno #boxContenuti p { font-weight: 300; }

.bloccoCollegamento.interno .sottotitolo_senza_contenuti {
	font-size: 1.2rem;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 8px;
	margin: 20px;
	background-color: var(--oro);
  	color: var(--bianco);
	z-index: 9;
}

.bloccoCollegamento .box.con-sommario {	max-width: 1200px; margin: 0 auto 20px; }

.bloccoCollegamento.col4 .boxTitle { width: 100%; padding-bottom: 10px; }

.bloccoCollegamento.col4 #boxPulsante,
.bloccoCollegamento.col4 .boxTitle { text-align: left; display: flex; justify-content: left!important;
}

.bloccoCollegamento.interno .box { flex-direction: column; position: relative; }
.bloccoCollegamento.interno.col12 .box a,
.bloccoCollegamento.interno.col12 .box .boxTesto.con-sommario { width: 100%; }
.bloccoCollegamento.interno .box .boxTesto.con-sommario { text-align: center; padding: 20px; display: flex; flex-direction: column; align-items: center; }
.bloccoCollegamento.interno #boxContenuti { margin: 40px 0; }

.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario #boxPulsante a { float: left; width:auto!important; padding: 20px; height: 30px; display: flex; justify-content: center; align-items: center; color: var(--bianco); background-color: var(--oro); text-decoration: none;  }
.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario #boxPulsante a:hover { text-decoration: underline; }
/* FINE CSS BLOCCO COLLEGAMNETO INTERNO */



/* INIZIO CSS BLOCCO FORM */
.bloccoForm .wrapperpad { display: flex; height: 100%; }
.bloccoForm .campoform { display: flex; justify-content: end; }
.bloccoForm .max:has(input[type="submit"]) { display: flex; justify-content: end; }

.bloccoForm input.obl,
.bloccoForm textarea.obl
.bloccoForm select.obl { border: 2px solid #C00 !important; }
.bloccoForm .labelcheckbox.obl { border: none; }

.bloccoForm.sfondo-nero .wrapperpad { background-color: var(--nero); color: var(--bianco); }
.bloccoForm.sfondo-nero .wrapperpad a { color: var(--oro); }
.bloccoForm.sfondo-nero input[type="text"], 
.bloccoForm.sfondo-nero textarea, 
.bloccoForm.sfondo-nero select { border: 2px solid var(--bianco); font-size: 16px; transition: box-shadow .1s ease-in-out, border .1s ease-in-out; }
.bloccoForm.sfondo-nero input:focus,
.bloccoForm.sfondo-nero textarea:focus,
.bloccoForm.sfondo-nero select:focus { outline: none; }
.bloccoForm.sfondo-nero input[type="text"]:focus,
.bloccoForm.sfondo-nero textarea:focus, 
.bloccoForm.sfondo-nero select:focus,
.bloccoForm.sfondo-nero input[type="submit"]:active { box-shadow: 0 0 0 2px var(--oro); }

.bloccoForm.sfondo-oro .wrapperpad { background-color: var(--oro); color: var(--bianco); }
.bloccoForm.sfondo-oro .wrapperpad a { color: var(--nero); }
.bloccoForm.sfondo-oro input[type="text"], 
.bloccoForm.sfondo-oro textarea, 
.bloccoForm.sfondo-oro select { border: 2px solid var(--bianco); font-size: 16px; transition: box-shadow .1s ease-in-out, border .1s ease-in-out; }
.bloccoForm.sfondo-oro input:focus,
.bloccoForm.sfondo-oro textarea:focus,
.bloccoForm.sfondo-oro select:focus { outline: none; }
.bloccoForm.sfondo-oro input[type="text"]:focus,
.bloccoForm.sfondo-oro textarea:focus, 
.bloccoForm.sfondo-oro select:focus,
.bloccoForm.sfondo-oro input[type="submit"]:active { box-shadow: 0 0 0 2px var(--nero); }


.bloccoForm.sfondo-bianco .wrapperpad { background-color: var(--bianco); color: var(--nero); }
.bloccoForm.sfondo-bianco .wrapperpad a { color: var(--oro); }
.bloccoForm.sfondo-bianco input[type="text"], 
.bloccoForm.sfondo-bianco textarea, 
.bloccoForm.sfondo-bianco select { border: 2px solid #CCC; font-size: 16px; transition: box-shadow .1s ease-in-out, border .1s ease-in-out; }
.bloccoForm.sfondo-bianco input:focus,
.bloccoForm.sfondo-bianco textarea:focus,
.bloccoForm.sfondo-bianco select:focus { outline: none; }
.bloccoForm.sfondo-bianco input[type="text"]:focus,
.bloccoForm.sfondo-bianco textarea:focus, 
.bloccoForm.sfondo-bianco select:focus,
.bloccoForm.sfondo-bianco input[type="submit"]:active { box-shadow: 0 0 0 2px #CCC; }


.bloccoForm .wrapperpad { padding: 20px; }
.bloccoForm .wrapperpad .boxTitle { margin-bottom: 10px; }
.bloccoForm .wrapperpad .boxPad input,
.bloccoForm .wrapperpad .boxPad textarea,
.bloccoForm .wrapperpad .boxPad select { border-radius: 6px; padding: 5px; }
.bloccoForm .wrapperpad .boxPad .formrow { margin: 15px 0; }
.bloccoForm .wrapperpad .boxPad tr { display: flex; margin: 15px 0; }
.bloccoForm .wrapperpad .boxPad tr td:has(input[type="checkbox"]),
.bloccoForm .wrapperpad .boxPad tr td:has(.blockConsole) { width: 100%; }
.bloccoForm .wrapperpad .boxPad label { display: none; }
.bloccoForm .wrapperpad .boxPad label:has(input[type="checkbox"]) { display: block; }
.bloccoForm .wrapperpad .boxPad tr input[type="checkbox"], .bloccoForm .wrapperpad .boxPad .formrow input[type="checkbox"] { width: 15px; margin-right: 8px; }

.bloccoForm .wrapperpad a { text-decoration: none; }
.bloccoForm .wrapperpad a:hover { text-decoration: underline; }

.bloccoForm.sfondo-oro .button,
.bloccoForm.sfondo-nero .button,
.bloccoForm.sfondo-bianco .button { background-color: var(--bianco); color: var(--nero); width: auto; transition: background-color .2s ease-in-out; }

.bloccoForm.sfondo-oro .button:hover,
.bloccoForm.sfondo-nero .button:hover,
.bloccoForm.sfondo-bianco .button:hover { background-color: #CCC; transition: background-color .2s ease-in-out; }
/* FINE CSS BLOCCO FORM */




/* Prodotti */
.wrapper {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

main {
	width: 100%;
	float: left;
	height: 100%;
}

.main-content {
	width: 100%;
	float: left;
	margin: 40px 0;
	padding: 0 20px;
}

.main-content__contenuti_pagina,
.main_contenuti_carrello_sopra {
	width: 100%;
	float: left;
	padding: 20px;
	background: var(--oro);
	color: #FFF;
	line-height: 1.2;
	text-align: center;
}

.main-content > * {
	color: #000;
}

.main-content__contenuti {
	width: 100%;
	float: left;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#riassegnapassword {
	margin-top: 30px;
}

#riassegnapassword h4 {
	margin-bottom: 15px;
}

.main-content .button {
	float: right;
	text-decoration: none;
	transition: 0.1s linear;
}

.main-content .button:hover {
	background: var(--oro);
}

.colonna_sx_filtro {
	width: 220px;
	height: auto;
	float: left;
	color: #000;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: sticky;
	top: 20px;
	row-gap: 10px;
	width: 95%;
	margin-left: 2.5%;
}

.colonna_sx_filtro__sopra,
.colonna_sx_filtro__consigliati {
	border: 1px solid #aaa;
	width: 100%;
	float: left;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 10px 20px;
}

.colonna_sx_filtro__sopra > p,
.colonna_sx_filtro__consigliati > p {
	font-size: 1rem;
	font-weight: 300;
	margin-bottom: 30px;
}

.colonna_sx_filtro__consigliati > p {
	margin-bottom: 10px;
}

.colonna_sx_filtro__area_riservata {
	border: 1px solid #aaa;
	margin-top: 40px;
	width: 100%;
	padding: 10px 5px;
	color: #000!important;
	text-decoration: none;
}

.colonna_sx_filtro__area_riservata:hover .area_riservata__utente {
	color: var(--oro)!important;
}

.colonna_sx_filtro__area_riservata > p {
	text-transform: uppercase;
	text-align: center;
	width: 100%;
	font-size: 1rem;
}

.area_riservata__utente {
	text-align: center;
	transition: 0.1s linear;
}

.area_riservata__utente p {
	font-size: 0.875rem;
	font-weight: 300;
	padding: 10px 0;
}

.area_riservata__dettagli_carrello {
	display: flex;
	flex-direction: column;
	row-gap: 10px;
	align-items: center;
}

.area_riservata__dettagli_carrello img {
	width: 70px;
}

.area_riservata__dettagli_carrello p {
	font-size: 0.875rem;
	font-weight: 300;
	text-align: center;
}

.filtroCategoria {
	/*! display: flex; */
	flex-direction: column;
	width: 100%;
	margin-bottom: 35px;
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.filtroCategoria:last-child {
	margin-bottom: 0;
}

.filtroCategoria label {
	display: flex;
	align-items: center;
	font-weight: 300;
	font-size: 0.925rem;
}

.filtroCategoria input[type="checkbox"] {
	float: left;
	width: auto!important;
	margin-right: 10px;
}

.filtroCategoria_nomeCaratteristica {
	align-self: center;
	margin-bottom: 10px;
	font-size: 0.95rem;
	font-weight: 300;
}

#main-content__colonna-dx {
	width: calc(100% - 220px);
	float: left;
	/*! padding-left: 10px; */
	width: 100%;
	padding: 0 10px;
}

#contenitore_prodotti_ricerca {
	width: 100%;
	float: left;
}

#contenitore_prodotti_ricerca .prodotti_nessun_prodotto {
	color: #000;
}

#lista_prodotti {
	width: 100%;
	float: left;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 10px;
	row-gap: 40px;
	grid-template-columns: 1fr;
}

.prodotto {
	display: flex;
	flex-direction: column;
	width: 100%;
	justify-content: space-between;
}

.prodotto a {
	text-decoration: none;
	min-height: 44px;
}

.prodotto .action-buttons__dec-quantity--disabled {
	background: #ddd!important;
	color: #888;
}

.prodotto .action-buttons__span {
	width: 30px;
	height: 30px;
	background: #000;
	display: flex;
	align-items: center;
	color: #FFF;
	justify-content: center;
	cursor: pointer;
	user-select: none;
}

.prodotto .action-buttons__span:hover:not(.action-buttons__dec-quantity--disabled) {
	background: #333;
}

.prodotto .quantity-product {
	width: 50px;
	text-align: center;
	background: #000;
	border: 0;
	color: #fff;
}

.prodotto__contenitore {
	display: flex;
	position: relative;
	flex-direction: column;
}

.prodotto_esaurito {
	text-align: center;
	background: #888;
	color: #fff;
	float: left;
	height: 30px;
	vertical-align: center;
	padding: 3px 0;
  }

.prodotto_contenitore__immagine::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	background: rgba(0, 0, 0, 0);
	transition: 0.1s linear;
}

.prodotto_contenitore__immagine:hover::after {
	background: rgba(0, 0, 0, 0.4);
}

.prodotto_contenitore__immagine {
	width: 100%;
	border: 1px solid #aaa;
	border-bottom: 0;
	position: relative;
	height: 245px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.prodotto_contenitore__immagine img {
	width: 100%;
	float: left;
}

.prodotto_contenitore__dati_prodotto {
	display: flex;
	flex-direction: column;
	background: #B59056;
	color: #FFF;
	text-align: center;
	padding: 3px;
	font-weight: 400;
	font-size: 1rem;
}

.prodotto__aggiunta_carrello {
	display: flex;
	column-gap: 9px;
	margin-top: 7px;
}

.aggiunta_carrello__selettore_quantita {
	display: flex;
	column-gap: 2px;
}

.bloccoProdotto {
	width: 100%;
}

.colonna_sx_filtro__consigliati_lista {
	display: flex;
	flex-direction: column;
	row-gap: 25px;
	width: 100%;
}

.bloccoProdotto_contentiore {
	border: 1px solid #aaa;
	width: 100%;
	float: left;
	display: flex;
	flex-direction: column;
}

.bloccoProdotto_contenitore__immagine {
	width: 100%;
	float: left;
	height: 245px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
}

.bloccoProdotto_contenitore__immagine::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	background: rgba(0, 0, 0, 0);
	transition: 0.1s linear;
}

.bloccoProdotto_contenitore__immagine:hover::after {
	background: rgba(0, 0, 0, 0.4);
}

.bloccoProdotto_contenitore__immagine img {
	display: none;
}

.bloccoProdotto_contenitore__nome_prodotto {
	display: flex;
	flex-direction: column;
	background: #B59056;
	color: #FFF!important;
	text-align: center;
	padding: 3px;
	font-weight: 400;
	font-size: 1rem;
	text-decoration: none;
}

.bloccoProdotto_contenitore__nome_prodotto p span {
	font-weight: 300;
	font-style: italic;
	display: block;
}

.prodotto__aggiunta_carrello .aggiunta_carrello__selettore_quantita p {
	width: 26px;
	height: 30px;
	background: #000;
	color: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
}

.prodotto__aggiunta_carrello .button {
	background: #000;
	color: #FFF;
	height: 30px;
	padding: 0 20px;
	font-size: 0.975rem;
	border: 0;
	cursor: pointer;
	user-select: none;
	display: flex;
	justify-content: center;
	align-items: center;
	text-transform: uppercase!important;
	width: auto;
	float: right;
	border-radius: 0;
	width: 100%;
	margin: 0;
}

#azioni_ecommerce .messaggio {
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 999;
}

.prodotto__aggiunta_carrello .button:hover {
	background: var(--oro);
}

.prodotto__contenitore_sconto {
	width: 70px;
	height: 70px;
	border-radius: 70px;
	background: #ff3824;
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 0.875rem;
	font-weight: 600;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	z-index: 9;
}

.prodotto__contenitore_sconto p {
	padding-top: 6px;
	color: #FFF;
}


/* Scheda Prodotto */
.schedaProdotto {
	color: #000;
	display: flex;
	column-gap: 30px;
	padding: 20px;
	flex-direction: column;
}

.schedaProdotto_immagineProdotto {
	flex: 0 0 40%;
	text-align: center;
}

.schedaProdottoContenitore {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
}

.schedaProdotto_immagineProdotto img {
	max-width: 600px;
	width: 100%;
}

.schedaProdotto_datiProdotto {
	flex: 0 0 calc(60% - 40px);
	padding: 40px 0;
}

.schedaProdotto h2 {
	margin-bottom: 24px;
}

.schedaProdotto_datiProdotto {
	font-weight: 300;
	line-height: 1.3;
}

.action-buttons__quantity-input {
	display: flex;
	color: #FFF;
	font-size: 1.5rem;
	column-gap: 2px;
}

.product-info__action-buttons {
	margin-top: 40px;
}

.product-info__action-buttons .action-buttons__span {
	width: 40px;
	height: 45px;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	user-select: none;
}

.product-info__action-buttons .action-buttons__span:hover:not(.action-buttons__dec-quantity--disabled) {
	background: #333;
}

.product-info__action-buttons .quantity-product {
	width: 50px;
	text-align: center;
	background: #000;
	border: 0;
	color: #fff;
}

.action-buttons__add-to-cart {
	background: #000;
	color: #FFF;
	height: 45px;
	padding: 0 20px;
	font-size: 1.25rem;
	border: 0;
	cursor: pointer;
	user-select: none;
	transition: 0.1s linear;
}

.action-buttons__add-to-cart:hover {
	background: var(--oro);
}

#form_aggiungi_prodotto_al_carrello {
	margin-top: 40px;
}

#form_aggiungi_prodotto_al_carrello td {
	display: flex;
	column-gap: 15px;
}

.product-info__action-buttons .action-buttons__dec-quantity--disabled {
	background: #ddd;
	color: #888;
}

.bloccoTesto .testo:has(table:nth-of-type(1)):has(table:nth-of-type(2)) {
    table {
		float: left;
        /*! width: calc(50% - 10px)!important; */
		margin-top: 30px;
		margin-bottom: 30px;
		font-size: 1rem;
		width: 100% !important;
    }

	table + table {
		/*! margin-left: 20px; */
	}

	table,
	table tr,
	table tr td {
		border-collapse: collapse;
		border: 0;
	}

	table tr {
		border-bottom: 1px solid #292929;
	}

	table tr td {
		padding: 8px 0;
	}

	table tr:last-child {
		border-bottom: 0;
	}

	table tr td:first-child {
		color: var(--oro);
		border: 0!important;
	}
}

.schedaProdotto__pulsantiNavigazione {
	display: flex;
	width: 100%;
	float: left;
	/*! column-gap: 1px; */
	flex-direction: column;
	row-gap: 1px;
}

.schedaProdotto__pulsantiNavigazione a {
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.75rem;
	color: #FFF;
	background: #B59056;
	/*! flex: 0 0 calc(50% - 1px); */
	text-decoration: none;
	font-weight: 700;
	transition: 0.1s linear;
}

.schedaProdotto__pulsantiNavigazione a:hover {
	background: #000;
}

.product-info__prices {
	margin-top: 40px;
}

.product-info__prices-main-price {
	font-size: 1.75rem;
	font-weight: 700;
	margin-bottom: 5px;
}

.product-info__saled-price {
	text-decoration: line-through;
	display: block;
	color: #aaa;
	font-size: 1.25rem;
	margin-bottom: 5px;
	font-weight: 500;
}

.schedaProdotto__prodottiCorrelati {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 10px;
	padding: 0 40px 40px;
}

.radio-metodo-pagamento--descrizione-pagamento, .radio-metodo-spedizione--descrizione-spedizione {
	padding: 8px 0 0 12px;
}

.product-info__action-buttons .red-text {
	font-size: 1em;
	font-weight: bold;
}

body .messaggio {
	max-width: 600px;
	width: calc(100% - 40px);
	margin: 20px auto;
	display: flex;
	align-items: center;
	background-position: left 10px center;
	border-radius: 4px;
	border: 0;
	background-image: none;
	padding-left: 0.5em;
	font-size: 1.125rem;
	flex-direction: column;
}


/* Carrello */
.login i,
.registrati i {
	display: none;
}

.login,
.registrati {
	color: #FFF;
	text-decoration: none;
}

.login span,
.registrati span {
	display: block!important;
}

.login:hover,
.registrati:hover {
	text-decoration: underline;
}

.registrati {
	margin-left: 0;
}

.menu-social-lingue-ecomm #login {
	display: flex;
}

#login {
	display: flex;
	column-gap: 15px;
}

#login i {
	color: #FFF;
}

#anteprimacarrello {
	position: absolute;
	z-index: 999;
	top: 80px;
	right: 0;
	background: #B59056;
	padding: 12px;
	font-size: 1rem;
	width: 280px;
	display: flex;
	flex-direction: column;
	top: 70px;
	display: none;
}

#anteprimacarrello h5 {
	margin-bottom: 10px;
	font-weight: 600;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding-bottom: 10px;
}

.total-price-cart {
	display: none;
}

.spacer {
	display: none;
}

#vaialcarrello {
	align-self: center;
	background: #000;
	color: #fff;
	width: 100%;
	text-decoration: none;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	margin-top: 20px;
}

.cart-ante-total-price {
	display: flex;
	column-gap: 10px;
	margin-left: 15px;
	color: #FFF;
	text-decoration: none;
}

.cart-ante-total-price i {
	position: relative;
}

.total-product-number-cart-ant {
	background: #B59056;
	color: #fff;
	width: 20px;
	height: 20px;
	position: absolute;
	top: -10px;
	text-align: center;
	right: -10px;
	border-radius: 20px;
	line-height: 20px;
  	font-size: 0.925rem;
}











/* Start Cart Page */

.tabellaordine {
    border-collapse: collapse;
}

.tabellaordine.dati th,
.dati td {
    padding: 4px 12px;
    vertical-align: middle;
}

.tabellaordine.dati tbody tr td {
    border-bottom: 1px solid #ddd;
}

.riga-dettaglio-ordine {
	cursor: pointer;
}

.only-mobile {
	display: none;
}

.tabellaordine h6 {
	font-size: 1.25rem;
}

.mobile-semicolum {
	font-size: 1rem;
}

.tabellaordine tr td strong {
	font-size: 1rem;
}

.tabellaordine.dati tbody tr:last-child td {
    border-bottom: 0;
}

.tabellaordine.dati th {
    padding: 8px 12px;
    text-align: left;
    background: #f3f4f6;
    color: #FFF;
}

table.tabelle-interne {
    margin: 0 5px 16px!important;
}

.tabellaordine.dati thead th {
    padding: 12px 12px;
    color: #000;
}

.tabellaordine.dati tfoot th {
    margin-bottom: 17px;
    font-weight: normal !important;
    background: var(--oro)!important;
}

#form-step1-carrello thead th,
#form-step1-carrello tfoot th {
    background: var(--oro)!important;
	color: #FFF;
}

#form-step1-carrello table tr td img:not(.carrello-libro-copertina) {
	width: 20px;
}

#form-step1-carrello a {
	color: var(--oro);
	text-decoration: none;
}

.tabellaordine .tr-p-td {
	padding: 12px 12px;
}

#form-step1-carrello a:hover {
	text-decoration: underline;
}

.regole_password {
	margin-top: 20px;
	background: #f1f2f3;
	border-radius: 6px;
	padding: 10px;
	font-size: 1rem;
	line-height: 1.6;
}

.regole_password ul {
	margin-left: 40px;
	margin-top: 5px;
}

.main-content a:not(.button) {
	color: var(--oro);
}

.main-content .dati_prodotto__titolo_prezzo {
	color: #FFF!important;
}

.main-content .dati_prodotto__titolo_prezzo span {
	display: block;
	font-weight: 300;
	font-style: italic;
}

.des span {
	text-align: right;
}

.tabellaordine.dati .carrello-tfoot-text {
    width: 100%;
    padding: 3px 0;
    float: left;
    color: #fff;
}

.quantita-mobile {
    border-radius: 6px!important;
}

.tabellaordine.dati .carrello-tfoot-text:last-child {
    font-size: 18px;
}

.testo-mobile {
    display: block;
}

.proseguiordine {
    width: 100%;
    float: left;
    margin-top: 10px;
}

.proseguiordine table {
    border-collapse: collapse;
}

.bottoneindietro {
    margin-bottom: 40px;
}

.bottoneindietro .button {
    min-width: 130px;
    background: #bbb;
    padding: 10px 30px;
    width: auto;
    border: none;
    font-weight: 500;
}

.bottoneindietro .button:hover {
    background: #aaa;
}

.bottoneindietro .button:focus {
    background: #999;
}

.datifatturazioneordine {
    width: 480px;
    float: left;
}

.datispedizioneordine {
    float: right;
    width: calc(100% - 480px);
}

.back-button-carrello .button,
#indietro_ordineweb {
    border-radius: 6px;
    padding: 6.5px 32px!important;
    font-size: 15px!important;
    font-weight: 400!important;
    transition: 0.2s linear;
}

.carrello-box {
    max-width: 100%;
}

.carrello-box .tabellaordine input {
    width: 54px;
}

#contenitore-file-personalizzati-carrello input[type="text"] {
    border-radius: 6px;
    height: 44px;
    border: 1px solid #CCC;
}

#contenitore-file-personalizzati-carrello tbody td {
    vertical-align: middle;
}

#contenitore-file-personalizzati-carrello tbody td label {
    margin: 0;
    font-weight: 500;
}

#importo_da_utilizzare {
    width: 140px;
    float: left;
    font-size: 0.95rem;
}

.after-input-text {
    float: left;
    font-weight: 500;
    font-size: 1rem;
    margin: 0;
    line-height: 43px;
    margin-left: 6px;
}

.contenitore-carrello-indirizzi-spedizione select,
.contenitore-carrello-fatturazione select {
    border: 2px solid #000;
}

.close-button {
    border-radius: 6px;
    background: #aaa;
    transition: 0.2s linear;
    margin: 24px 28px 0 0;
}

.close-button:hover {
    background: #dbdbdb;
}

.contenitore-carrello-indirizzi-spedizione tbody td,
.contenitore-carrello-fatturazione tbody td {
    vertical-align: middle;
}

.contenitore-carrello-indirizzi-spedizione tbody td label,
.contenitore-carrello-fatturazione tbody td label {
    margin: 0;
}

#indirizzi-utenteweb h4 {
	margin-bottom: 10px;
}

.contenitore-carrello-metodi-spedizione h2,
.contenitore-carrello-indirizzi-spedizione h2,
.contenitore-carrello-metodi-pagamento h2,
.contenitore-carrello-fatturazione h2,
.contenitore-carrello-buoni-spesa h2,
.contenitore-carrello-coupon-cultura h2,
#contenitore-riepilogo-dati-carrello h2 {
    background: transparent!important;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    font-weight: 500!important;
    font-size: 18px!important;
    margin-bottom: 0!important;
    padding: 10px 24px;
}

.contenitore-carrello-buoni-spesa label {
	display: inline-block!important;
}

.carrello-box .radio {
    border-radius: 6px;
}

.carrello-box .radio p {
    margin: 0;
    /* 	padding: 0; */
    line-height: inherit;
}

.carrello-box .descrizione-spedizione,
.carrello-box .note-corriere-indirizzo-spedizione,
.carrello-box .cellulare-indirizzo-spedizione,
.carrello-box .telefono-indirizzo-spedizione {
    margin: 0 23px;
}

.contenitore-carrello-padding-table {
    padding: 24px;
}

.contenitore-carrello-metodi-spedizione {padding: 20px;}

.contenitore-carrello-metodi-spedizione .contenitore-carrello-padding-space,
.contenitore-carrello-metodi-pagamento .contenitore-carrello-padding-space {
    padding: 14px 10px;
}

.img-copertina-tabella a {
	float: left;
	width: 100%;
	text-align: center;
}

.img-copertina-tabella {
	text-align: center;
}

.img-copertina-tabella a img,
.img-copertina-tabella img {
	float: none!important;
	margin: 0!important;
}

.statoordini table.tabelle-interne tbody {
	display: flex;
	flex-direction: column;
}

.radio-metodo-spedizione--testo-primario .testo-primario-metodo-spedizione {
	padding-bottom: 8px;
}

.contenitore-carrello-padding label {
	line-height: 1.3;
}

#contenitore-riepilogo-dati-carrello .tabellaordine.dati thead th,
#contenitore-riepilogo-dati-carrello .tabellaordine.dati tfoot th {
    background:var(--oro)!important;
	color: #FFF!important;
}

#contenitore-riepilogo-dati-carrello .tabellaordine.dati tfoot th span {
	color: #FFF!important;
}

#contenitore-riepilogo-dati-carrello table td,
#form-step1-carrello table td {
    padding: 14px;
}

.contenitore-carrello-padding-lrb label {
    font-weight: 500;
    margin: 0 0 6px;
}

.contenitore-carrello-padding-lrb {
    padding: 30px;
}

.contenitore-carrello-metodi-spedizione,
.contenitore-carrello-indirizzi-spedizione,
.contenitore-carrello-metodi-pagamento,
.contenitore-carrello-fatturazione,
.contenitore-carrello-buoni-spesa,
.contenitore-carrello-coupon-cultura,
#contenitore-riepilogo-dati-carrello {
    border: 0;
    border-radius: 6px;
}

.titolo_thankyou {
margin-bottom: 20px;
}

.ordine_link_pagamento {
float: left;
  width: 100%;
  display: flex;
  justify-content: center;
}

.ordine_link_pagamento a {
background: var(--oro);
  color: #FFF!important;
  padding: 10px 20px;
  float: left;
  margin: 30px 0;
  text-decoration: none;
}

.link_redirect_pagamento {
	width: 100%;
	float: left;
	margin: 5px 0 20px;
}



.button-save {
    padding: 10px 32px;
	color: #000!important;
	text-decoration: none;
}

.button-save:hover {
	color: #000!important;
	background: transparent!important;
	border-color: transparent!important;
}

.contenitore-carrello-fatturazione label[for="cf_ordine"] {
    float: left;
    width: 100%;
    margin: 0 0 6px;
    font-weight: 500;
}

#cf_ordine {
    height: 44px;
}

/* End Cart Page */

/* Start Coupons */

.buoni-spesa-contenitore {
    width: 740px;
    max-width: 100%;
    padding: 0 30px;
    font-size: 1rem;
}

#codice_buono_spesa,
#codice_sconto {
    border-radius: 6px;
    height: 44px;
    padding: 0 14px;
}

#form_aggiungi_nuovo_buono_spesa table {
    width: 100%;
}

#form_aggiungi_nuovo_buono_spesa td label {
    width: 100%;
    float: left;
    font-weight: 500;
    padding-bottom: 10px;
}

#form_aggiungi_nuovo_buono_spesa tr{
    display: flex;
    flex-direction: column;
}

.ord_buoni_spesa_box {
    width: 100%;
    float: left;
    margin-bottom: 20px;
}

.ord_buono_spesa {
    overflow-x: auto;
}

.ord_buono_spesa_codice {
    width: 100%;
    display: flex;
    flex-direction: column;
    z-index: 9999;
    padding: 20px;
    position: relative;
    height: 100%;
    justify-content: center;
}

.ord_buono_spesa_codice h5 {
    color: #000;
    padding-right: 8px;
    line-height: 25px;
    letter-spacing: 0;
    font-size: 14px;
    font-weight: 500;
    text-transform: unset;
    opacity: 0.7;
    margin: 0;
}

.ord_buono_spesa_codice p:first-child {
    font-size: 21px;
    font-weight: normal;
}

.ord_buono_spesa_codice p {
    width: auto;
    color: #000;
    font-size: 12px;
    font-weight: 600;
    margin: 0;
}

.box-row {
    display: flex;
    flex-direction: row;
    flex: 1;
    align-items: center;
    padding-top: 2px;
}

.wrap {
    width: 600px;
    margin: 0 auto 20px;
}

.coupons-container__actived-coupons,
.coupons-container__waiting-coupons,
.coupons-container__used-coupons {
    float: left;
    width: 100%;
    margin: 20px 0;
	z-index: 0;
}

.coupons-container__no-actived-coupon,
.coupons-container__no-waiting-coupon,
.coupons-container__no-used-coupon {
    font-size: 15px;
    font-style: italic;
}

.coupon {
    display: inline-block;
    overflow: hidden;
    border-radius: 10px;
}

.coupon-left {
    float: left;
    width: 180px;
    height: 150px;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.coupon-left p {
    color: #fff;
    padding: 0 20px;
    z-index: 9999;
    white-space: nowrap;
    font-size: 34px;
}

.coupon-left::before {
    content: "";
    position: absolute;
    top: -210px;
    display: block;
    right: -210px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 200px solid var(--oro);
    clip: rect(auto, auto, 285px, auto);
}

.coupon-left::after {
    content: "";
    position: absolute;
    bottom: -210px;
    display: block;
    right: -210px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 200px solid var(--oro);
    clip: rect(135px, auto, auto, auto);
}

.coupon-con {
    float: left;
    width: 400px;
    height: 150px;
    position: relative;
}

.coupon-con::before {
    content: "";
    position: absolute;
    top: -410px;
    display: block;
    left: -410px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 400px solid #eee;
    clip: rect(0, auto, 485px, 410px);
}

.coupon-con::after {
    content: "";
    position: absolute;
    bottom: -410px;
    display: block;
    left: -410px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 400px solid #eee;
    clip: rect(335px, auto, auto, 410px);
}

.scaduto .coupon-left::after,
.scaduto .coupon-left::before {
    border-color: #666;
}

.scaduto .coupon-con::after,
.scaduto .coupon-con::before {
    border-color: #999;
}

.centered-page-user:has(.buoni-spesa-contenitore){
    display: flex;
    flex-direction: column;
    gap: 100px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.centered-page-user h3 {
    font-size: 3rem;
}

/* End Coupons */

/* START ORDER PHASE TWO */

.contenitore-carrello-indirizzi-spedizione input,
.contenitore-carrello-fatturazione input {
    max-width: 100%;
    height: 42px;
}

.contenitore-carrello-indirizzi-spedizione select,
.contenitore-carrello-fatturazione select {
    max-width: 100%;
    height: 45px;
}

.contenitore-carrello-indirizzi-spedizione .checkbox,
.contenitore-carrello-fatturazione .checkbox {
    height: 25px;
}

#indietro_ordineweb {
    background: white !important;
    border: unset !important;
    color: #000 !important;
	height: 45px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.contenitore-carrello-padding h3 {
	font-size: 16px !important;
	font-weight: 500 !important;
	text-transform: unset;
}
.contenitore-carrello-metodi-spedizione h2, .contenitore-carrello-indirizzi-spedizione h2, .contenitore-carrello-metodi-pagamento h2, .contenitore-carrello-fatturazione h2, .contenitore-carrello-buoni-spesa h2, .contenitore-carrello-coupon-cultura h2, #contenitore-riepilogo-dati-carrello h2 {
    color: #000 !important;
}

.contenitore-carrello-metodi-spedizione, .contenitore-carrello-indirizzi-spedizione, .contenitore-carrello-metodi-pagamento, .contenitore-carrello-fatturazione, .contenitore-carrello-buoni-spesa, .contenitore-carrello-coupon-cultura, #contenitore-riepilogo-dati-carrello {
    background: #f3f4f6 !important;
}

.contenitore-carrello-indirizzi-spedizione,
.contenitore-carrello-fatturazione {
    padding: 20px;
}

label[for="id_utenteweb_indirizzo_spedizione1"]{
    white-space: unset !important;
    padding: 0 0 0 21px;
}

.chiudi-aggiungi-indirizzo {
    color: black !important;
}

.contenitore-carrello-padding .radio,
.contenitore-carrello-padding-space .radio {padding: 0;}

.contenitore-carrello-fatturazione h3 {margin-top: 60px;}

/*#id_ecomm_metodo_spedizione1,
#id_utenteweb_indirizzo_spedizione1,
#id_ecomm_metodo_pagamento1 {margin-right: 10px;}*/

.contenitore-carrello-padding-space .radio-metodo-pagamento--testo-primario,
.contenitore-carrello-padding-space .radio-metodo-pagamento--descrizione-pagamento {
	padding-left: 25px;
}

.descrizione-pagamento {
	white-space: break-spaces;
}

.contenitore-carrello-padding-space .radio-metodo-pagamento--testo-primario {
	padding-bottom: 8px;
}


.js-edit-button {
	float: right;
}

.js-add-button {
	margin: 15px;
}


.js-add-button,
.js-edit-button {
	background: #000;
	color: #FFF;
	height: 45px;
	padding: 0 20px;
	font-size: 1.25rem;
	border: 0;
	cursor: pointer;
	user-select: none;
	display: flex;
	text-align: center;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
	width: auto!important;
	border-radius: 6px;
	transition: 0.1s linear;
	font-size: 0.975rem;
}

.js-add-button:hover,
.js-edit-button:hover {
	background: var(--oro);
}


.elimina-button-indirizzo {
	padding-top: 15px!important;
	padding-bottom: 15px!important;
	margin-right: 15px;
	border-radius: 6px;
	text-transform: uppercase!important;
	font-family: 'Montserrat', sans-serif!important;
	padding: 0 24px;
	height: 45px;
	text-align: center;
	font-weight: 400!important;
	display: flex;
	justify-content: center;
	align-items: center;

}




#form-accesso-utenteweb input[name="submit"],
#form-recupera-password input[name="submit"] {
    float: right;
}

#form-accesso-utenteweb p:last-child,
#form-recupera-password p:last-child {
	text-align: left;
}

#riassegnapassword {
    width: 100%;
}

.main-content form table input:not(input[type="submit"]),
.main-content form table textarea,
.main-content form table select {
    background-color: #FFF;
	border-radius: 6px;
	padding: 5px;
}

.main-content form table input[type="submit"] {
	border-radius: 6px;
}

#riassegnapassword label {
    font-size: 17px;
}


#js-aggiungi-indirizzo-spedizione, #js-aggiungi-indirizzo-fatturazione {
    border-radius: unset;
    color: #000 !important;
    font-size: 15px;
    padding: 10px 24px !important;
}

#prosegui_ordineweb {margin-bottom: 30px;}

.contenitore-carrello-buoni-spesa,
.contenitore-carrello-metodi-pagamento,
#contenitore-riepilogo-dati-carrello {
    padding: 20px !important;
}

.contenitore-carrello-buoni-spesa .contenitore-carrello-padding-space {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

.check_buoni_spesa {
    padding: 0 !important;
    margin: 0 !important;
}

#form-aggiungi-nuovo-indirizzo-spedizione input[value="Aggiungi indirizzo"] {
    padding: 9px 14px !important;
}


#js-form-nuovo-indirizzo-spedizione,
#js-form-nuovo-indirizzo-fatturazione {padding: 30px;}

/* END ORDER PHASE TWO */

/* START USER PROFILE */
.indirizzi__ind-cont {margin-bottom: 40px;}
/* END USER PROFILE */

/* START COUPONS*/
.buoni-spesa-contenitore {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.buoni-spesa-contenitore h3 {
	font-size: 1.75rem;
	padding-bottom: 10px;
}

.centered-page-user:has(.buoni-spesa-contenitore) #pagetitle{
    font-size: 60px;
    line-height: 80px;
    text-align: center;
    font-weight: 100;
}

.coupons-container__actived-coupons {overflow-x: auto;}
/* END COUPONS*/

/* START SHOP */
.product-preview-container__product-image img{ display: none; }

.product-preview-container__product-image{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 1/1;
    float: left;
	max-width: 250px;
}

.product-preview-container {
	text-align: center;
	display: flex;
	flex-direction: column;
	row-gap: 20px;
	align-items: center;	
}

.product-preview-container__product-info {
    display: flex;
    flex-direction: column;
    row-gap: 5px;
}

.ricerca-lista-libri-ricercati {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: baseline;
    justify-items: center;
    margin-bottom: 30px;
    column-gap: 25px;
    row-gap: 65px;
	max-width: 1366px; 
	margin: 0 auto 100px;
}

.product-info__product-title a{ font-size: 1.5rem; }

.product-info__product-title a:hover {
    text-decoration: underline;
}

.product-info__price-container, .product-info__product-bottom-info {
    line-height: 1.4;
    font-size: 1.175rem;
    letter-spacing: 1.5px;
    font-weight: 600;
}

.product-info__product-bottom-info {
	flex-direction: column;	
}

.product-info__product-main-price {
    font-size: 1.5rem;
}



/* END SHOP */


.popup-newsletter-brevo {
	display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.8);
    transition: 0.3s;
    max-width: 540px;
	width: calc(100% - 10px);
    z-index: 99;
    min-height: 600px;
	padding-top: 30px;
}

.popup-newsletter-brevo .chiudi-popup-newsletter {
	width: 20px;
	height: 20px;
	position: fixed;
	right: 0;
	cursor: pointer;
	top: 0;
}

.contenitore-popup-newsletter-brevo {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: -1;
	opacity: 0;
}

.popup-newsletter-brevo iframe {
	height: 600px;
	width: 100%;
}




/* CSS ALBERTO */
.colonna_sx_filtro {
  position: relative;
  top: 0;
}

.colonna_sx_filtro__area_riservata,
.colonna_sx_filtro__consigliati {
	display: none;
}







.contenitore_carrello_vuoto {
	background: var(--oro)!important;
}

.carrello_vuoto_icona span {
	background: #FFF!important;
}

.carrello_vuoto_icona span i {
	color: var(--oro)!important;
}


.carrello_vuoto_testo,
.carrello_vuoto_testo_sottotitolo {
	color: #FFF;
}




input[type="text"]:read-only {
	background:#f0f0f0!important;
}

@media screen and ( max-width: 780px ) {
	#contenitore-accesso-utenteweb,
	#contenitore-registrazione-utenteweb,
	#dati-utenteweb-contenitore	{
		width:100%;
		padding: 0 10px;
	}
	
	#contenitore-accesso-utenteweb table,
	#contenitore-registrazione-utenteweb table,
	#dati-utenteweb-contenitore table	{
		display: block;
		width: 100%;
	}
	
	#contenitore-registrazione-utenteweb tr,
	#contenitore-registrazione-utenteweb td,
	#contenitore-accesso-utenteweb tr,
	#contenitore-accesso-utenteweb td,
	#dati-utenteweb-contenitore tr,
	#dati-utenteweb-contenitore td	{
		display:table-row;
		width: 100%;
		float:left;
	}

	#dati-utenteweb-contenitore td .js-edit-button,
	#dati-utenteweb-contenitore td .elimina-button-indirizzo {
		min-width: 250px!important;
		margin: 0;
		margin-top: 10px;
	}
}

.indirizzi__ind-cont tr:last-child {
	display: flex;
	flex-direction: row !important;
}

#dati-utenteweb-contenitore,
#contenitore-registrazione-utenteweb {
	width: 100%!important;
	margin: 0 auto;
}

#dati-utenteweb table tr {
	margin: 10px 0;
}

#contenitore-registrazione-utenteweb table,
#contenitore-accesso-utenteweb table {
	width: 100%;
}

#contenitore-registrazione-utenteweb table tr,
#contenitore-accesso-utenteweb table tr {
	display: flex;
	flex-direction: column;
	margin-bottom: 10px;
}

.statoordini .img-copertina-mobile {
	padding-left: 110px;
}

/* CSS ALBERTO */

.footer-fcontacts-buttons {
	position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: 15px;
    z-index: 50;
    align-items: end;
}

.footer__whatsappButton {
	position: relative;
    width: 60px;
    height: 60px;
    background: #25d366;
    border-radius: 60px;
    box-shadow: 0 4px 5px rgba(0, 0, 0, 0.06);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: bottom 1s ease-out, background 0.1s linear;
    z-index: 50;
}
.footer__whatsappButton:hover {
    background: #128c7e;
}
.footer-fcontacts-buttons--animate {
    bottom: 10px;
}
.footer__whatsappButton i {
    color: #fff;
    font-size: 30px;
    position: absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
}




@media ( min-width: 480px ) {
	.footer { flex-direction: row; gap: unset; }
	#testo-footer { width: calc(100% - 60px); flex-direction: row; text-align: left; }
	.testof.sx { border-right: solid 2px var(--bianco); padding: 0 20px; align-items: center; display: flex; }

	#social { justify-content: center; }
	
	#anteprimacarrello { right: 30px; }
}

@media ( min-width: 640px ) {
	.menu #logo_sito { width: calc(50% - 60px); }
	.menu .lingue_social #social { display: flex; flex-direction: row; gap: 15px; justify-content: center; }
	.menu .lingue_social.telefono { display: none; }
	.menu #logo_carrello { display: none; }
	
	.verifica_eta_contenuti .pulsanti_verifica { flex-direction: row; }
	
	.bloccoTesto.col12 .contenuti.img-txt { display: flex; flex-direction: row; }
	.bloccoTesto.col12 .contenuti.img-txt .immagine { width: 35%; }
	.bloccoTesto.col12 .contenuti.img-txt .testo { width: 65%; }
	
	.schedaProdotto_immagineProdotto img {
		max-width: 400px;
	}
	
	.schedaProdotto__prodottiCorrelati {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 10px;
		margin-top: 50px;
	}
	
	.schedaProdotto__pulsantiNavigazione {
		column-gap: 1px;
		flex-direction: row;
	}
	
	.schedaProdotto__pulsantiNavigazione a {
		flex: 0 0 calc(50% - 1px);
	}
	
	#lista_prodotti {
		grid-template-columns: 1fr 1fr;
	}
	
	.filtroCategoria {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.lingue_social.principale {
		display: none;
	}
}

@media ( min-width: 780px ) {
	.col4  { flex: 0 0 calc(33.33333333333333%);  }
	.col6  { flex: 0 0 calc(50%);                 }
	.col8  { flex: 0 0 calc(66.66666666666666%);  }
	.col12 { flex: 0 0 calc(100%); 				  }

	#multimedia .video-box>video { width: 100%; /*height: 400px;*/ }
	
	footer { flex-direction: row; }
	.footer { width: 50%; }
	.footer.dx { text-align: right; }
	.testof { width: 50%; display: flex; align-items: center; text-align: left; padding: 0 20px; }
	
	#news .news-int-image { height: 400px; }
	
	#content .news { margin-bottom: 0; }
	#content .news:last-child { padding: 20px 80px; }
	#content .news { display: flex; flex-direction: row; padding: 20px 80px 0; }
	#content .news .newsimg,
	#content .news .newstesto { width: 50%; }
	.news .newsimg a { min-height: 500px; height: unset; }
	
	.bloccoTesto .contenuti.img-txt .immagine { max-height: 400px; }
	
	.bloccoNews .news .newsimg { width: 100%; }
	.bloccoNews .news .newstesto { width: calc(100% - 40px); }
	
	.bloccoCollegamento.interno .box a.img-coll-int { min-height: 450px; height: unset; }	
	.bloccoCollegamento.interno.col4 .box.con-sommario, 
	.bloccoCollegamento.interno.col6 .box.con-sommario { flex-direction: column; }
	.bloccoCollegamento.interno.col4 .box.con-sommario .boxTesto.con-sommario, 
	.bloccoCollegamento.interno.col6 .box.con-sommario .boxTesto.con-sommario { text-align: center; padding: 50px 20px; }
	.bloccoCollegamento.interno.col4 .box.con-sommario .boxTitle.con-sommario, 
	.bloccoCollegamento.interno.col6 .box.con-sommario .boxTitle.con-sommario { margin-bottom: 10px }
	.bloccoCollegamento.interno.col12 .box.con-sommario { flex-direction: row; }
	.bloccoCollegamento.interno.col12 .box.con-sommario a:not(#boxPulsante a) { width: 40%!important; padding: 0!important; }
	.bloccoCollegamento.interno.col12 .box.con-sommario .boxTesto.con-sommario { width: 60%; display: flex; flex-direction: column; justify-content: center; text-align: left; margin-bottom: 10px; padding: 50px 20px; }
	.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario { position: relative; }
	.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario .boxTitle.con-sommario { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
	.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario #boxPulsante { padding: 0 20px; position: absolute; bottom: 10px; left: 0; width: 100%; }
	.bloccoCollegamento.interno .box.con-sommario .boxTesto.con-sommario #boxPulsante a { font-size: 1.3rem; justify-content: start; padding: 20px; }

	.bloccoForm.col8 .wrapperpad,
	.bloccoForm.col12 .wrapperpad { padding: 20px 100px; } 
	
	.bloccoTesto .testo:has(table:nth-of-type(1)):has(table:nth-of-type(2)) {
		table {
			width: calc(50% - 10px) !important;
		}
		
		table + table {
			margin-left: 20px;
		}
	}

	#dati-utenteweb-contenitore,
	#contenitore-registrazione-utenteweb,
	#contenitore-accesso-utenteweb {
		width: 740px !important;
		margin: 0 auto;
		padding: 0 10px; 
	}

	.testo-mobile {
		display: none;
	}

	#contenitore-registrazione-utenteweb table tr,
	#contenitore-accesso-utenteweb table tr {
		display: table-row;
	}

	.main-content tr td {
		padding: 10px 0;
	}

	.statoordini table.tabelle-interne tbody {
		display: block!important;
	}

	#social {
		justify-content: end;
	}
}

@media ( min-width: 1024px ) {
	#immagine_header { height: 500px; }
	#menu_tendina { top: 70px; }
	
	.menu .lingue_social.principale { margin-right: 15px; width: calc(50% - 60px); display: flex; flex-direction: row; align-items: center; justify-content: end; padding-right: 15px; gap: 15px; }

	#news { display: flex; flex-direction: row; padding: 50px 80px; }
	#news .news-int-image { width: 40%; height: unset; min-height: 400px; }
	#news .news-int-data { width: 60%; position: relative; }
	#news .news-int-data #newscontenuti { margin-bottom: 60px; }
	#news .news-int-data .return-to-news { width: 100%; padding: 5px 20px; position: absolute; bottom: 15px; left: 0px; }
	
	.bloccoTesto .immagine { height: 400px; }
	
	.bloccoForm.col8 .wrapperpad,
	.bloccoForm.col12 .wrapperpad { padding: 20px 150px; display: flex; flex-direction: column; align-items: center; } 

	.schedaProdotto_immagineProdotto img {
		max-width: 600px;
	}
	
	.schedaProdotto {
		flex-direction: row;
	}
	
	.schedaProdotto__prodottiCorrelati {
		display: flex;
		flex-wrap: wrap;
		row-gap: 20px; 
	}
	
	.prodotto {
		max-width: 235px;
	}
	
	#lista_prodotti {
		grid-template-columns: repeat(4, 1fr);
	}
	
	.main-content__contenuti {
		flex-direction: row;
	}
	
	.colonna_sx_filtro {
		width: 220px;
		position: sticky;
		top: 20px;
		/*margin-left: unset;*/
	}
	
	.colonna_sx_filtro__area_riservata {
		display: block;
	}
	.colonna_sx_filtro__consigliati {
		display: flex;
	}
	
	#main-content__colonna-dx {
		padding: 0 0 0 10px;
	}
	
	.filtroCategoria {
		display: flex;
	}

	.lingue_social.telefono {
		display: none!important;
	}

	.main-content {
		padding: 0;
	}

	.contenitore-carrello-buoni-spesa .contenitore-carrello-padding-space {
		flex-direction: row;
	}

	.bloccoCollegamento.interno .box .boxTesto.con-sommario { align-items: start; }
}