

/* Heading style */
.heading { -webkit-background-clip:text !important; background-clip:text; -webkit-text-fill-color: transparent; color:transparent; display:inline-block; }
.heading_light { background:linear-gradient(90deg, #f4f4f4 0%, #36E383 100%); }
.heading_dark { background:linear-gradient(90deg, #0E400F 0%, #36E383 100%); }

/*=== Header ===*/
.scrolling-header { transition: all .5s ease!important; left: 0; right: 0; width: 100% !important;}
.marquee { overflow: hidden; display: flex;}
.marquee p { white-space: nowrap;}

/*=== SINGLE BRAND ===*/
/* Contact buttons */
.tracked-brand-button { display:inline-flex; align-items:center; justify-content:center; color:white; font-size:30px; width:50px; height:50px; border-radius:50%; border:1px solid #f4f4f4; box-shadow:0 0 20px -5px #f4f4f4 !important; transition:0.5s ease; }
.tracked-brand-button:hover { background-color:#f4f4f4; color:#0E400F; }

/* Hide shortcode widget when it doesn't output real content */
.elementor-widget-shortcode:not(:has(.elementor-shortcode a, .elementor-shortcode i, .elementor-shortcode svg, .elementor-shortcode img, .elementor-shortcode span, .elementor-shortcode button)):not(:has(.home-search)):not(:has(.store_renderer.no-store)) { display: none !important; }


/*=== MERCHANTS ===*/
.elementor-element .icon_number:hover { color:#d4d4d4 !important; }
.elementor-icon-list-items .elementor-icon-list-item:hover { transition: .4s ease; transform: scale(1.05); }
button.wpkqcg_button { padding:5px 10px; border-radius:25px; background-color:#070110; color: #F4F4F4; border:0; font-family: ubuntu; }
button.wpkqcg_button:hover { border: 1px solid #070110; background-color: #f4f4f4; color:#070110; }


/*=== AGGIUNGERE REALTA ===*/
.add_brand-container { display: none !important; }
.add_brand-container.is-open { display:block !important; }

/* Disappear brand_status field on FEA */
.elementor .acf-field[data-key="field_6977a4c05c5f4"] { display:none; }
.acf-hl > li ,.acf-button { color:white; border:1px solid #F4F4F4; border-radius:25px; background:#0E400F; }
.acf-hl > li ,.acf-button:hover { border:1px solid #0E400F; background:#DADADA; color:#0E400F; }
.acf-hl li a,.acf-image-uploader a { color:#F4F4F4; font-family:ubuntu; }


/* FEA FORMS style */
.fea-form input[type="text"],
.fea-form input[type="email"],
.fea-form input[type="url"],
.fea-form input[type="number"],
.fea-form input[type="tel"],
.fea-form input[type="password"],
.fea-form .select2-selection--single,
.fea-form .acf-field select,
.fea-form .acf-field .select2-container .select2-selection--multiple, .fea-form .acf-field .select2-container .select2-selection--single .select2-selection__arrow { min-height:48px; display:flex; flex-direction:column; align-content:center !important; padding:0 15px 0 15px !important; outline:none; }
.fea-form { max-width:600px !important; }
.acf-required { font-size:0; }
.acf-required::after { content:" (obbligatorio)"; font-size:12px; font-weight:500; color:#d63638; }


/*=== HOME - Beginning ===*/
.sc-sector-count__icon { margin-right: 0.4rem;}

/* Allows buttons container (chips) to scroll horizontally */
.container-scroll .button_container-scroll { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scroll-snap-type:x mandatory; -ms-overflow-style:none; scrollbar-width: none; }
.container-scroll .button_container-scroll > *{ flex:0 0 auto; scroll-snap-align:start; }
.container-scroll .button_container-scroll::-webkit-scrollbar { height:0; display:none;}

/* Makes the homepage carousel work*/
.home_carousel .swiper-wrapper { -webkit-transition-timing-function:linear; -moz-transition-timing-function: linear; -o-transition-timing-function: linear; transition-timing-function: linear; }
.home_carousel-gray:after { content:""; width:100%; height:100%; background:linear-gradient(to right, #DADADA, transparent, #DADADA); z-index:1; position:absolute; top:0; left:0; }
.home_carousel-green:after { content:""; width:100%; height:100%; background:linear-gradient(to right, #0E400F, transparent, #0E400F); z-index:1; position:absolute; top:0; left:0; }

/* Home searcher */
.home-search__empty { display:block; }
.home-search .home-search__input { border-radius:55px; padding:12px 50px; background:linear-gradient(135deg, #0E400F, #36E383); font-size:28px; font-family:ubuntu; color:#F4F4F4; box-shadow:0 0 20px 0px rgba(0,0,0,.5); border:1px solid white;}
.home-search__results{ position:absolute; top:101%; left:5%; width:90%; padding:5px; border-radius:0 0 10px 10px; background:rgba(244, 244, 244, .9); border-top:none; box-shadow:0 0 20px 5px rgba(0,0,0,.5); z-index:50; text-align:center; }
.home-search__input:focus, .home-search__input:focus-visible { outline:none; border-color:white !important;}
.home-search__group-title { margin:0 0 6px; font-size:16px; font-weight:700; letter-spacing:.8em; text-transform:uppercase; color:#6b7280; }
.searcher .home-search__input::-webkit-input-placeholder { color:#f4f4f4 !important; opacity:.8 !important;}
.home-search__item { display:block;  padding:10px 14px; min-height:34px; font-family:ubuntu; text-decoration:none; color:#111827; font-size:15px; line-height:1.3; font-weight:500; }
.home-search__item:hover{ background:#36E383; }

@media (max-width: 680px) {
	.home-search .home-search__input { font-size:22px; padding:8px 20px; } }
/*=== HOME - End ===*/


/*=== Various ===*/
.glass { background: rgba(2, 1, 1, .3); backdrop-filter: blur(6.9px); -webkit-backdrop-filter: blur(6.9px); }

/* Arrow option menu style */
.elementor-nav-menu a.elementor-item-active .sub-arrow svg,
.elementor-nav-menu a[aria-current="page"] .sub-arrow svg { fill: #f4f4f4; }

/* Google login button style */
.nsl-button.nsl-button-default.nsl-button-google { border-radius: 25px; }
.rank-math-breadcrumb a { padding:2px 5px; background-color:#36E383; color:#070110; border-radius:8px; border:1px solid black; font-family:ubuntu; }
@media (max-width: 670px) {.rank-math-breadcrumb a { font-size: 14px; }}

/* While JS problem persists */
.glsr-field-email, .glsr-field-subgroup { display: none; }

/* Animated buttons */
.animatedButton .elementor-button-content-wrapper { display:inline-flex; align-items:center; justify-content:center; gap:8px; line-height:1; }
.animatedButton .elementor-button:hover .elementor-button-icon { transition:transform .5s ease; background-color:#F4F4F4; border-radius:50%; padding:4px; transform:translateX(-6px); }
.animatedButton .elementor-button:hover .elementor-button-text { transition:.5s ease; transform:translateX(6px); }
.animatedButton .elementor-button:hover .elementor-button-icon svg { fill: green !important; }

/* No wrap */
.nowrap { text-overflow: ellipsis; white-space: nowrap; }

/* ?loging messages */
.sc-alert { padding:6px 10px; border:1px solid white; background:red; border-radius:25px; margin:0 0 16px; color:white; font-size:14px; font-family:ubuntu; }
.sc-alert a { text-decoration:underline; }

/*center the heading and lines*/
.heading-line h2 {
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	text-align: center;}
/*add and adjust the lines*/
.heading-line h2:after {
	content: '';
	border-top: 4px solid;
	margin: 0 20px 0 0;
	flex: 1 0 20px;}
/*add spacing between heading and lines*/
.heading-line h2:after {
	margin: 0 0 0 20px;}


/*=== CARDS - Beginning ===*/
.card { max-height:320px; max-width:480px !important; }
.card_dataRange { color:#dadada; font-size:14px; font-style:italic; }
.card_img { aspect-ratio:3/2; background-repeat:no-repeat; background-size:cover; position:center!important; object-fit:cover; }

.offer_channel-in-store .card_message_online,
.offer_channel-hybrid .offer_channel-online { display:none;}

.elementor-element .card--brand { max-height:250px; aspect-ratio:3/2; }
/*=== CARDS - End ===*/


/*=== OFFERTE ARCHIVE - Beginning ===*/
.badge { padding:4px 12px; border-radius:25px; font:600 12px/1 sans-serif; color:#fff; border: 1px solid white;font-family:ALTGOT2N; }
.badge_scaduta-card { background:#b91c1c; font-size:18px;}
.badge_scaduta-single { background:#b91c1c; font-size:24px;}
.badge_status-single { font-size: 25px; }
.badge_status-card { font-size: 16px; }
.badge_status-single[data-status="verified"], .badge_status-card[data-status="verified"] { background-color:#36E383; color:#0E400F; }
.badge_status-single[data-status="unverified"], .badge_status-card[data-status="unverified"] { background-color:red; }

/* Mappa */
#sc-map { height:600px; overflow:hidden; margin-bottom:1rem; }
@media (max-width: 768px){ #sc-map { height:35rem; }}

/* Cartel "Nessun negozio trovato... */
.sc-map-empty {display:none;}

#mobile-selections { display:none; }

/* Marker tipo "pin" clásico: cabeza redonda con agujero + punta abajo */
.sc-marker-icon { position:relative; width:18px; height:18px; background-color:#1e7f43; border-radius:50%; box-shadow: 0 0 0 2px #ffffff, 0 3px 6px rgba(0,0,0,0.25); transform:translate(-50%, -50%); box-sizing:border-box;}
/* círculo interior “agujero” centrado */
.sc-marker-icon::before { content:""; position:absolute; width:4px; height:4px; background-color:#ffffff; border-radius:50%; top:50%; left:50%; transform:translate(-50%, -50%);}

.sc-cluster { display:inline-flex; align-items:center; justify-content:center; font:600 13px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:#111; background:#fff; border-radius:50%; border:2px solid #1e7f43; box-shadow:0 2px 10px rgba(0,0,0,.22), 0 0 0 2px rgba(255,255,255,.95) inset; user-select:none; pointer-events:auto; transition: transform .3s ease-out; }
.sc-cluster.small  { width:30px; height:30px; font-size:12px; }
.sc-cluster.medium { width:38px; height:38px; font-size:13px; }
.sc-cluster.large  { width:46px; height:46px; font-size:14px; }
.sc-cluster:hover { transform: translateY(-2px); box-shadow:0 4px 14px rgba(0,0,0,.28), 0 0 0 2px rgba(255,255,255,.95) inset; }

/* PopUp  del mapa */
#sc-map .leaflet-popup-content-wrapper { background:transparent; box-shadow:none; border-radius:0; padding:0; }
#sc-map .leaflet-popup-content { margin:0; }

/* Lista de offerte (máx 5 visibles + scroll) */
/* Contenedor general del popup del mapa*/ 
.sc-popup { max-width:320px; padding:0.75rem 0.85rem; background:#0E400F; border-radius:10px; box-shadow:0 0 20px -5px rgba(14, 64, 15, 1); font-family:ubuntu, sans-serif; }

.sc-popup__offers{ list-style:none; margin:0; padding:0; }

.sc-popup__offer-link {
  display: flex;
  align-items: center;
  text-transform: capitalize;
  color: white !important;
  border-radius: 8px;
  padding: 5px;
  font-size: 14px;
  cursor: pointer; }

.sc-popup__offer-link::before { content:"👉🏻"; margin-right:10px; font-size:.9rem; flex-shrink:0; }

.sc-popup__offer-link:hover { background-color: #36E383; color: #0E400F !important; }

/* Header: título, brand, comune*/ 
.leaflet-popup-content .sc-popup > .sc-popup__header { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:0.25rem; }

.sc-popup__brand,
.sc-popup__comune { display:block; width:fit-content; max-width:100%; padding:0.18rem 0.6rem; border-radius:12px; text-align:center; line-height:1.2; font-size:.7rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }

.sc-popup__brand { background:#36E383; color:#0E400F; }

.sc-popup__comune { border:1px solid #1e7f43; color:#36E383; }

.sc-popup__actions{ display:flex; padding-top:8px; justify-content:center; }

.sc-popup__gmaps { display:inline-block; text-decoration:none; padding:.4rem .6rem; border-radius:12px; color:#F4F4F4 !important; border:1px solid #F4F4F4; }

.sc-popup__gmaps:hover { background:#F4F4F4; color:#0E400F !important;}

/* Desktop FacetWP filters */
.facet-wrap h3 { font-size:25px; margin-bottom:0px; color:#0E400F; font-family:ALTGOT2N !important;}
.facetwp-dropdown { border-radius:25px !important; background-color:white; font-family:ubuntu;}
.facetwp-autocomplete, .facetwp-type-fselect { border-radius:25px !important; font-family:ubuntu; margin-bottom:5px; color:black;}
.facetwp-radio { font-family:ubuntu;}
.facetwp-autocomplete-update { display:none !important;}
.fcomplete-wrap{ z-index:10 !important;}
.facetwp-facet { margin-bottom:0 !important;}
.facetwp-facet.facetwp-facet-settori.facetwp-type-fselect { border:1px solid #666; font-family:ubuntu; }
.fs-label-wrap { padding:.32rem; border-radius:25px; }
.fs-dropdown { border-radius:12px; padding:4px; margin-top:2px; box-shadow:0 0 20px -5px black; }
.fs-wrap.single { width:100%; max-width:100%;}
.facetwp-selections .facetwp-selection-label{ display:none !important; }
.facetwp-selections .facetwp-selection-value { margin-left:0 !important; }
.facetwp-selections ul { padding:0; display:flex; flex-direction:row; gap:10px; }
.facet-wrap .facetwp-facet-sort_by select { border-radius:25px; }
.facetwp-selections li { padding:3px 0px 3px 8px; color:#f4f4f4; background-color:#758899; border-radius:15px; border:1px solid #666; font-family:ubuntu; font-size:14px; }
/*** ARCHIVE OFFERTE - End ***/


/*=== SINGLE OFFER - Beginning ===*/
/* Shortcode for tax payment_method & loyalty_programs's fallbacks */
.offerta-tax { font-family: ubuntu; font-size: 16px; color: #F4F4F4; }
.offer_dataRange { font-size: 18px; color: #070110; }

/* Containers & tab according to offer_channel-[...] class */
.offer_channel-online #e-n-tab-title-2300007602,
.offer_channel-online .channel-in-store,
.offer_channel-online .channel-hybrid,
.offer_channel-in-store .channel-online,
.offer_channel-in-store .channel-hybrid,
.offer_channel-hybrid .channel-online,
.offer_channel-hybrid .channel-in-store { display: none; }

/* Share button */
.sc-share-toggle, .sc-share-item { cursor:pointer; border:0!important; padding:5px!important; }
.sc-share-menu.is-open .sc-share-dropdown { display:flex; flex-direction:row; gap:4px; }
.sc-share-dropdown { display:none; position:absolute; top:50px; right:-10px; border-radius:8px; background: #0E400F; padding: 2px 8px; box-shadow: 0 0 20px -5px #070110; }
.sc-share-item, .sc-share-item.sc-share-copy { color:#F4F4F4; font-size:20px; }
.sc-share-item:hover, .sc-share-item.sc-share-copy:hover { color:#36E383; font-size:20px; }
.sc-share-toggle i { color:#f4f4f4; font-size:25px; }
.sc-share-menu button:hover{ background:transparent!important; }
.sc-share-menu button:focus { background:transparent!important; }

/* Punti Vendita */
.stores_list-group { margin:1rem 0 1rem 0; }
.store_renderer .stores_list-regions, .store_renderer .stores_list-prov, .store_renderer .stores_list-com { display:flex; justify-content:space-between; gap:.5rem; width:90%; padding:.5rem .75rem; border:1px solid #070110; color:#070110; font-family:ubuntu; border-radius:25px; background:transparent; cursor:pointer; flex-wrap:wrap; }
.store_renderer .stores_list-prov { width:80%; }
.store_renderer .stores_list-com { width:70%; }
.stores_list-list { margin:0; padding:0; display:none; }
.stores_list-list.is-open { display:block; }
.stores_list-list li { list-style-type:none; margin:.35rem 0; }
.stores_list-list a { font-size:20px; font-family:ubuntu; text-decoration:none; color:#070110; }
.stores_list-list a:hover { color: #36E383; }
.store_renderer .stores_list-regions:hover, .store_renderer .stores_list-prov:hover, .store_renderer .stores_list-com:hover { background-color: #0E400F; color:#F4F4F4;}
.store_renderer .stores_list-regions:focus, .store_renderer .stores_list-prov:focus, .store_renderer .stores_list-com:focus {
	background-color:#0E400F; color:#F4F4F4; }
.stores_list-regions[aria-expanded="true"],
.stores_list-prov[aria-expanded="true"],
.stores_list-com[aria-expanded="true"]{ background-color:#0E400F; color:#F4F4F4; }

@media (max-width: 600px) { .offerta-localita .sc-loc-toggle { justify-content: center; }}
.no-store { list-style-type: none; }

.simplefavorite-button { font-size:30px; border:0; padding:2px 10px; position:relative; z-index:2; }
.simplefavorite-button.active { opacity:1 !important; pointer-events:auto; }
.simplefavorite-button:hover { background-color:transparent; transform:scale(1.15); }

/* Elementor wrapper must NOT pretend to be the Favorites button */
.elementor-widget.simplefavorite-button { pointer-events:none; }
.elementor-widget.simplefavorite-button .simplefavorite-button { pointer-events:auto; }

@media screen and ( max-width:568px) {
    .offer_dataRange, .offerta-tax { font-size:16px; }
    .simplefavorite-button{ font-size:27px; padding:0px 5px;}
    .singleOffer_dataRange { font-size:16px; } }
/*=== Single OFFER Page - End ===*/


/*=== DASHBOARD - Beginning ===*/
/* Dashboard list */
.dash_section--list {
  --bg: #f4f4f4;
  --text: #1f2937;
  --muted: #6b7280;
  --border: black;
  --primary: #111827;
  --badge: #DADADA;
  --link-hover: white;
  color: var(--text);
  font-size: 15px; }

.dash_section--list .list { box-shadow:0 0 20px -5px black; border-radius:12px; overflow:hidden; background:var(--bg); }

/* Row */
.dash_section--list .list__row {
  display: grid;
  grid-template-columns: 2fr 1.2fr auto auto;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid white;}

/* Columns */
.dash_section--list .list__col--title a { color:var(--primary); font-weight:600; text-decoration:none; }
.dash_section--list .list__col--title a:hover { text-decoration:underline; }
.dash_section--list .list__col--stato .badge {
  padding:4px 10px;
  border-radius:25px;
  background:var(--badge);
  color:var(--badge-text);
  font-size:13px;
  line-height:1;
  font-weight:600; }

/* Actions */
.dash_section--list .actions { display:flex; gap:5px; align-items:center; white-space:nowrap; }
.dash_section--list .actions__link { color:var(--link); text-decoration:none; border-radius:25px; border:1px black solid; padding:1px 5px; }
.dash_section--list .actions__link:hover { color:var(--link-hover); background-color:#0E400F; }

/* Stop “red background after click” */
.list__col--actions .actions__link--button:active,
.list__col--actions .actions__link--button:focus,
.list__col--actions .actions__link--button:focus-visible { background:transparent; color:inherit; outline:none !important; }

/* Upgrade */
.dash_section--list .list__col--upgrade {
display:flex; justify-content:center; align-items:center; gap:25px; padding-bottom:5px;}
.dash_section--list .actions__link--upgrade { background-color:#070110; color:#F4F4F4; }

button.brand-qr-modal__close.js-close-brand-qr { background-color:black; color:white; font-size:20px; padding:0px 10px; border-radius:12px; }
button.js-close-brand-qr:hover { background-color:#36E383; color:black; }

/* Hover row */
@media (hover:hover) { .dash_section--list .list__row:hover { background: white; } }

/* Responsive */
@media (max-width: 900px) { .dash_section--list .list__row { grid-template-columns:1.8fr 1fr auto; }}

@media (max-width: 680px) {
  .dash_section--list .list__row { grid-template-columns:1fr; gap:6px 0; padding:12px; text-align:center; }
  .dash_section--list .list__col--title { order: 1; }
  /*.dash_section--list .list__col--comune { order: 2; }*/
  .dash_section--list .list__col--stato  { order: 3;  }
  .dash_section--list .list__col--actions{ order: 4; }
  .dash_section--list .actions { justify-content: center; }}

/* Favourites plugin */
.dash-item a { color:black; font-family:ubuntu; font-size: 18px; }
.dash-item .simplefavorite-button { font-size:25px; }

/* QR */
.actions__link--button { background:none; border:0; padding:0; cursor:pointer; font: inherit; }
.brand-qr-modal[hidden] { display: none !important; }
.brand-qr-modal { position: fixed; inset: 0; z-index: 9999; }
.brand-qr-modal__overlay { position: absolute; inset: 0; background: rgba(0,0,0,.45); }
.brand-qr-modal__dialog { position: relative; z-index: 2; max-width: 520px; margin: 6vh auto 0; background: #fff; padding: 24px; border-radius: 16px; }
.brand-qr-modal__close { position: absolute; top: 10px; right: 12px; background: none; border: 0; font-size: 28px; cursor: pointer; }
.brand-qr-modal__title { margin-bottom: 16px; font-weight: 600; }
.brand-qr-modal__body { text-align: center; }
.brand-qr-modal__actions { margin-top: 16px; }

/* Stats */
.dash-metrics-panel{display:flex; justify-content:center; align-items:center; padding:10px 0}
.dash-metrics{display:flex;gap:14px;flex-wrap:wrap}
.dash-metrics__item{display:flex;gap:6px;align-items:baseline}
.dash-metrics__item strong{font-weight:600}
.dash-metrics__item span{font-variant-numeric:tabular-nums}
/*=== DASHBOARD - End ===*/


/* ACADEMY ARTICLE */
.content_table { font-size:18px; color:#000; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.content_table td { text-align:center; font-weight:500; font-family:ubuntu; font-size:18px; }
.content_table thead { background:#fff; }
.content_table--cel { font-weight:900; }

.article_link { text-decoration:none; color:#36E383;border-radius:12px; padding:0 10px;}
.article_link:hover { background-color:#36E383; color:#0E400F; }