/* ==========================================================================
   Dai Sassalbini — elementi originali del template Max Restaurant
   (header sovrapposto, separatori, icone, sezione galleria, eventi, mappa)
   ========================================================================== */

/* ---------------------------------------------------------------- Header come nel template */
.header_s .ownavigation { background-color: var(--bordeaux-scuro); border-bottom: 0; }
.header_s .ownavigation .navbar-nav li a { color: #fff; }
.header_s .ownavigation .navbar-nav > .active > a,
.header_s .ownavigation .navbar-nav > .active > a:focus,
.header_s .ownavigation .navbar-nav > .active > a:hover,
.header_s .ownavigation .navbar-nav li:hover > a,
.header_s .ownavigation .navbar-nav li a:hover { color: var(--crema-scura); }
.ownavigation .navbar-nav > li.voce-carrello > a { background: var(--crema); color: var(--bordeaux) !important; }
.ownavigation .navbar-nav > li.voce-carrello > a:hover { background: #fff; }
.ownavigation .navbar-nav > li.voce-carrello .conta-carrello { background: var(--bordeaux); color: var(--crema); }
.ownavigation .navbar-nav > li.voce-carrello > a i.icon { font-size: 15px; vertical-align: -2px; margin-right: 6px; }
@media (min-width: 992px) {
	.header_s1 .ownavigation {
		position: absolute; left: 0; right: 0; z-index: 17;
		background-color: rgba(43, 13, 18, 0.55);
		border-bottom: 1px solid rgba(245, 237, 224, 0.12);
	}
	.header_s1 .ownavigation.navbar-fixed-top { position: fixed; background-color: rgba(74, 18, 25, 0.97); border-bottom: 0; }
	.ownavigation .navbar-nav > li > a::after { background: var(--crema-scura); }
	.page-banner { padding-top: 215px; padding-bottom: 110px; }
	body[data-pagina="404"] .site-main { padding-top: 120px; }
}
@media (max-width: 991px) {
	.ownavigation .navbar-toggle { background-color: transparent; border-color: var(--crema); }
	.ownavigation .navbar-nav > li.active a,
	.ownavigation .navbar-nav li a:hover { color: var(--crema-scura) !important; }
	.carrello-mobile { background: var(--crema); color: var(--bordeaux); font-size: 20px; }
	.carrello-mobile:hover, .carrello-mobile:focus { background: #fff; color: var(--bordeaux); }
	.carrello-mobile .conta-carrello { background: var(--bordeaux); color: var(--crema); border-color: var(--bordeaux-scuro); }
}

/* ricerca nella barra in alto (search-block del template) */
.header_s .top-header1 .top-right .search-block { display: inline-block; vertical-align: middle; background-color: rgba(255, 255, 255, 0.08); width: 210px; margin: 0; }
.header_s .top-header1 .top-right .search-block .form-control { color: var(--crema); font-size: 12px; }
.header_s .top-header1 .top-right .search-block .form-control::placeholder { color: rgba(245, 237, 224, 0.6); }
.header_s .top-header1 .top-right .search-block .btn { color: var(--crema); }
.header_s .top-header1 .top-right .top-social { margin-right: 18px; }
/* accesso all'area riservata (admin): pillola sottile con icona nel cerchietto */
.area-riservata {
	display: inline-flex; align-items: center; gap: 9px; vertical-align: middle;
	height: 30px; padding: 0 15px 0 4px; border-radius: 999px;
	border: 1px solid rgba(245, 237, 224, 0.28); background: rgba(245, 237, 224, 0.04);
	font-family: 'Raleway', sans-serif; font-size: 10.5px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; line-height: 1;
	color: rgba(245, 237, 224, 0.86); text-decoration: none; white-space: nowrap;
	transition: background-color .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.area-riservata .ar-icona {
	display: inline-flex; align-items: center; justify-content: center; flex: none;
	width: 22px; height: 22px; border-radius: 50%;
	background: rgba(245, 237, 224, 0.14); color: var(--crema); font-size: 11px;
	transition: background-color .25s ease, color .25s ease;
}
.area-riservata:hover, .area-riservata:focus-visible {
	background: var(--crema); border-color: var(--crema); color: var(--inchiostro); text-decoration: none;
	box-shadow: 0 6px 18px -8px rgba(0, 0, 0, 0.55);
}
.area-riservata:hover .ar-icona, .area-riservata:focus-visible .ar-icona { background: var(--bordeaux); color: var(--crema); }
.area-riservata:focus-visible { outline: 2px solid rgba(245, 237, 224, 0.55); outline-offset: 2px; }
.header_s .top-header1 .top-right .area-riservata { margin-right: 16px; }
@media (min-width: 992px) { .header_s .top-header1 .top-right { display: flex; align-items: center; justify-content: flex-end; } }
@media (min-width: 992px) and (max-width: 1199px) { .header_s .top-header1 .top-right .search-block { width: 150px; } }
/* nel menu mobile: stessa pillola, su fondo bianco */
.menu-mobile-piede .area-riservata {
	display: flex; justify-content: center; height: 42px; margin-top: 12px; padding: 0 16px;
	border-color: var(--crema-scura); background: transparent; color: var(--testo); font-size: 11px;
}
.menu-mobile-piede .area-riservata .ar-icona { background: var(--crema); color: var(--bordeaux); }
.menu-mobile-piede .area-riservata:hover, .menu-mobile-piede .area-riservata:focus-visible { background: var(--crema-chiara); border-color: var(--bordeaux); color: var(--bordeaux); box-shadow: none; }
.menu-mobile-piede .area-riservata:focus-visible { outline-color: var(--bordeaux); }

/* ---------------------------------------------------------------- Separatori originali del template */
.section-header::before,
.surprise-content h3::before { background-image: url("../img/tema/sep-bordeaux.png"); }
.counter-section .section-header::before,
.testimonial-section .section-header::before,
.surprise-content h3::before,
.negozio-home .section-header::before { background-image: url("../img/tema/sep-crema.png"); }

/* ---------------------------------------------------------------- Icone del template */
.vantaggi-griglia i.icon { font-size: 19px; }
.widget_links ul li::before {
	content: ""; font-family: inherit;
	background-image: url("../img/tema/ftr-link-ic.png"); background-repeat: no-repeat;
	width: 19px; height: 9px; margin-right: 12px;
}
.widget_category ul li::before {
	content: ""; font-family: inherit;
	background-image: url("../img/tema/ftr-cat-ic.png"); background-repeat: no-repeat;
	width: 11px; height: 19px; margin-right: 12px; vertical-align: middle;
}
.cnt-detail-box i.immagine { width: 55px; height: 63px; line-height: 63px; display: block; margin: 0 auto 22px; }
.cnt-detail-box i.immagine img { display: inline-block; vertical-align: bottom; }
.cnt-detail-box i.icon { font-size: 44px; display: block; margin: 0 auto 22px; height: 63px; line-height: 63px; color: var(--bordeaux); }
/* trattini della tabella orari come nel template ("------ 09.00 - 22.00") */
.widget_workingtime td + td::before { content: "------ "; color: var(--sabbia); letter-spacing: -1px; margin-right: 4px; }

/* ---------------------------------------------------------------- Negozio in home come la gallery-section del template */
.negozio-home.gallery-section { background-color: var(--bordeaux-scuro); padding-top: 110px; padding-bottom: 90px; margin-bottom: 0; }
.negozio-home.gallery-section::before { background-image: url("../img/tema/gallery-pattern.png"); background-repeat: repeat-y; opacity: .35; }
.negozio-home .container { position: relative; }
.negozio-home .section-header h3 { color: var(--crema-scura); }
.negozio-home .section-header h4 { color: #fff; }
.negozio-home .gallery-category ul li a { color: rgba(255, 255, 255, .85); padding-bottom: 6px; border-bottom: 2px solid transparent; }
.negozio-home .gallery-category ul li a span { color: rgba(245, 237, 224, .55); font-weight: 400; font-size: 12px; }
.negozio-home .gallery-category ul li a:hover,
.negozio-home .gallery-category ul li a.active { color: var(--crema); border-bottom-color: var(--crema-scura); }
.negozio-home .prodotto-card { border-color: transparent; }
.negozio-home .vedi-tutti .btn-sas { background: transparent; border-color: var(--crema); color: var(--crema); }
.negozio-home .vedi-tutti .btn-sas:hover { background: var(--crema); color: var(--bordeaux); }
.negozio-home .nessun-risultato { color: var(--crema); }

/* hover sulle foto prodotto come la gallery-box del template */
.prodotto-foto::before {
	content: ""; position: absolute; inset: 0; z-index: 1;
	background-color: rgba(43, 13, 18, 0.55); opacity: 0; transition: opacity .5s ease;
}
.prodotto-card:hover .prodotto-foto::before { opacity: 1; }
.prodotto-foto::after {
	content: "\e681"; font-family: 'Stroke-Gap-Icons';
	position: absolute; left: 50%; top: 0; z-index: 2;
	width: 59px; height: 59px; line-height: 59px; margin-left: -29px; margin-top: -30px;
	border-radius: 50%; background: #fff; color: var(--bordeaux); font-size: 22px; text-align: center;
	opacity: 0; transition: all .5s ease;
}
.prodotto-card:hover .prodotto-foto::after { top: 50%; opacity: 1; }
.prodotto-badge { z-index: 3; }
.prodotto-vedi { display: none; }

/* ---------------------------------------------------------------- Pagina mercati */
.mercati-oggi { padding: 110px 0 100px; }
.mercati-oggi .section-header h4 { margin-top: 14px; }
.oggi-nota { color: rgba(245, 237, 224, .85); text-align: center; font-size: 16px; margin: -10px 0 30px; font-style: italic; }

.mercati-settimana { margin-top: 95px; margin-bottom: 60px; }
.giorno-evento { cursor: default; }
.giorno-evento img { height: 420px; }
.giorno-evento .event-content h4 { font-family: 'Great Vibes', cursive; font-size: 42px; font-weight: 400; text-transform: none; letter-spacing: 1px; font-style: normal; line-height: 1; padding-bottom: 16px; margin-bottom: 16px; }
.giorno-evento .event-content p { font-family: 'Raleway', sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; line-height: 22px; color: #fff; }
.giorno-evento .event-content span { margin-top: 6px; }
.bollino-oggi {
	position: absolute; top: 18px; left: 18px; z-index: 2;
	background: var(--crema); color: var(--bordeaux);
	font-family: 'Raleway', sans-serif; font-size: 11px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase;
	padding: 6px 12px;
}
.giorno-evento.oggi { box-shadow: 0 0 0 3px var(--crema), 0 0 0 4px var(--bordeaux); }
.giorno-evento.attivo { box-shadow: 0 0 0 3px var(--bordeaux); }
.mercati-riposo { text-align: center; color: var(--testo); font-style: italic; font-size: 16px; margin-top: 10px; }
.mercati-riposo img { display: inline-block; margin-bottom: 10px; }

.mercati-mappa { position: relative; margin: 0; }
.mercati-mappa .mappa-mercati { height: 620px; border: 0; margin: 0; }
.mappa-legenda-contenitore { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; z-index: 500; pointer-events: none; }
.mappa-legenda {
	pointer-events: auto; position: relative; top: 50px; width: 370px;
	background: var(--crema-chiara); padding: 30px 28px 18px; margin: 0;
	box-shadow: 0 30px 60px -25px rgba(43, 13, 18, .55);
	border-top: 4px solid var(--bordeaux);
}
.mappa-legenda .aiuto { color: var(--testo); font-size: 13px; margin: -8px 0 14px; }
.mappa-legenda table { width: 100%; }
.mappa-legenda tr[data-giorno] { cursor: pointer; }
.mappa-legenda tr td { padding: 7px 6px; font-size: 14px; transition: background .2s ease; }
.mappa-legenda tr[data-giorno]:hover td { background: var(--crema); }
.mappa-legenda tr.attivo td { background: var(--bordeaux); color: var(--crema) !important; }
.mappa-legenda tr.attivo td::before { color: var(--crema-scura); }
.mappa-legenda tr.chiuso td { opacity: .55; }
.pin-mercato { width: 34px !important; height: 34px !important; }
.pin-mercato span { font-size: 11px; }
@media (max-width: 991px) {
	.mercati-mappa .mappa-mercati { height: 430px; }
	.mappa-legenda-contenitore { position: static; margin: 0 auto; pointer-events: auto; }
	.mappa-legenda { position: static; width: auto; margin: 0 0 50px; box-shadow: none; }
	.giorno-evento img { height: 340px; }
}
