/*!
Theme Name: mcraft
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description

Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: mcraft
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

mcraft is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
    - Normalize
    - Box sizing
# Base
    - Typography
    - Elements
    - Links
    - Forms
## Layouts
# Components
    - Navigation
    - Posts and pages
    - Comments
    - Widgets
    - Media
    - Captions
    - Galleries
# plugins
    - Jetpack infinite scroll
# Utilities
    - Accessibility
    - Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
     ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

@font-face {
font-display:swap;
  font-family: Lato;
  src: url('/wp-content/themes/mcraft/assets/fonts/Lato-Light.woff2')
    format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
font-display:swap;
  font-family: Lato;
  src: url('/wp-content/themes/mcraft/assets/fonts/Lato-Regular.woff2')
    format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
font-display:swap;
  font-family: Lato;
  src: url('/wp-content/themes/mcraft/assets/fonts/Lato-Bold.woff2')
    format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
font-display:swap;
  font-family: Lato;
  src: url('/wp-content/themes/mcraft/assets/fonts/Lato-Black.woff2')
    format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
font-display:swap;
  font-family: "slick";
  src: url('/wp-content/themes/mcraft/./wp-content/themes/mcraft/assets/fonts/slick.woff2')
    format("woff2");
  font-display: swap;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick" !important;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
     ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
     ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
     ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
     ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
  outline: none !important;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *      `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: content-box;
  padding: 0;
  border: none !important;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
  outline: none !important;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
     ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
     ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: #444;
  font-family:
    -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu,
    Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
  background: #fff;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

:focus {
  outline: none !important;
}

/* Links
--------------------------------------------- */
a {
  color: #4169e1;
}

a:visited {
  color: #800080;
}

a:hover,
a:focus,
a:active {
  color: #191970;
}

a:focus {
  outline: thin dotted;
  outline: none !important;
}

a:hover,
a:active {
  outline: 0;
  outline: none !important;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
  border: 0px !important;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
  border: 0px !important;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}

.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}

.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}

.main-navigation ul ul a {
  width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  position: relative;
}

.main-navigation a {
  display: block;
  text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }

  .main-navigation ul {
    display: flex;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}

.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
  outline: none !important;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;

  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;

  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/*Main*/

:root {
  --grey-color: #262626;
  --light-grey-color: #ccc;
  --lightest-grey-color: #f7f7f7;
  --green-color: #018692;
  --grey-color-tabs: #919191;
  --text-section-header-size: 30px;
  --lh-section-header-size: 39px;
  --main-color-header-h1: #7c7c7c;
  --main-color: #262626;
  --text-main-size: 16px;
  --text-main-lh: 24px;
  --color-mint: #e6f5f5;
  --width-content: 1428px;
  --width-section: 1200px;
}

.bg-light-grey {
  background: var(--lightest-grey-color);
}

section {
  overflow: hidden !important;
}

body {
  margin-bottom: 0px !important;
  overflow-x: hidden !important;
}

body,
p {
  font-family: "Lato";
  color: var(--main-color);
  font-size: var(--text-main-size);
  line-height: var(--text-main-lh);
}

.container {
  max-width: var(--width-content);
}

.sp_section {
}

.page-template-service-page main {
  max-width: 960px !important;
  margin: 3rem auto;
}

.page-template-service-page main a {
  font-weight: 600;
  text-decoration: underline;
  transition: 0.3s color;
}

.page-template-service-page main a:hover {
  color: var(--green-color) !important;
}

.page-template-service-page main h2 {
  text-align: center;
  text-transform: uppercase;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
}

.page-template-service-page main p {
  text-align: justify;
}

b {
  font-weight: 900 !important;
}

.bg-grey {
  background: var(--grey-color);
  color: var(--lightest-grey-color);
}

.bg-mint {
  background: var(--color-mint);
  color: var(--grey-color);
}

.bg-white {
  background: #fff;
}

/*Header*/
#page {
  overflow: hidden;
}

.ml7 {
  margin-left: 7px;
}

/*Header*/
header.site-header {
  border-bottom: 1px solid var(--light-grey-color);
  overflow: visible;
}

header.site-header ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

header.site-header ul li {
  margin-right: 20px;
}

header.site-header ul li a {
  text-decoration: none !important;
  font-size: 15px;
  color: var(--grey-color) !important;
  line-height: 26px;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  position: relative;
}

header.site-header a.top-cart-icon {
  font-size: 15px;
  line-height: 26px;
  text-decoration: none !important;
  color: var(--grey-color);
  margin-left: 20px;
}

header.site-header .top-cart-icon {
  cursor: pointer;
}

button.top-cart-icon {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
}

header.site-header .navmenu {
  display: flex;
  height: 100%;
}

header.site-header ul#menu {
  align-items: center;
}

header.site-header .navmenu ul.main-menu li.menu-item {
  height: 100%;
  display: flex;
  align-content: center;
}

header.site-header ul.main-menu li a:hover {
  color: var(--green-color) !important;
}

header.site-header .main-menu li:hover ul.sub-menu {
  display: block;
  position: absolute;
  margin-left: -35px;
}

header.site-header .main-menu ul.sub-menu {
  display: none;
  background-color: #fff;
  min-width: 150px;
  padding: 10px 30px;
  box-shadow: 1px 1px 10px var(--light-grey-color);
  top: 60px;
  top: 70px;
  z-index: 999;
}

header.site-header .main-menu ul.sub-menu li {
  padding: 5px 0px;
  display: block !important;
}

header.site-header .main-menu ul.sub-menu li a:hover {
  color: var(--green-color) !important;
}

header.site-header .main-menu ul.sub-menu li:after {
  content: "";
  display: block;
  width: calc(100% + 25px);
  height: 1px;
  background-color: var(--light-grey-color);
  margin-top: 5px;
}

header.site-header .main-menu ul.sub-menu li:last-child:after {
  display: none;
}

header .ebike_descrizione p {
  font-size: 10pt;
  color: var(--grey-color);
}

img.trp-flag-image {
  width: 18px !important;
}

.trp-language-switcher-container span {
  display: flex;
  align-self: flex-end;
}
.menu-item-object-language_switcher .trp-flag-image {
  margin: inherit !important;
}
.menu-item-object-language_switcher .trp-flag-image {
  margin-top: 5px !important;
}

.height5 {
  height: 10px;
}

.social_icon_mobile_menu {
  padding: 35px 15px;
}

.social_icon_mobile_menu a {
  text-decoration: none;
}

.social_icon_mobile_menu img {
  background: #333;
  padding: 8px;
  border-radius: 10px;
  width: 42px;
  margin-right: 7px;
}

img.logo_mobile_menu {
  display: block;
  margin: 30px 0px 20px 14px;
  background: #008692;
  padding: 12px;
}

img.top_menulogo {
  padding: 16px 16px 16px 0;

  width: 200px;
}

.navother {
  margin-right: 0;
  height: 100%;
}

#muscolare_bici,
#ebike_bici {
  visibility: hidden;
  display: none;
  position: absolute;
  z-index: 999;
  background: #fff;
  box-shadow: 1px 1px 10px var(--light-grey-color);
}

.top_menu_bicy p {
  margin: 0;
  color: var(--grey-color);
}

.top_menu_bicy p.head {
  font-size: 24px;
}

.top_menu_bicy p.preahead {
  font-size: 10pt;
}

.top_menu_bicy .modals,
.mobile-menu .modals {
  height: 18px;
}

.top_menu_bicy .modals a,
.mobile-menu .modals a {
  color: var(--grey-color);
  text-decoration: none;
  font-size: 10pt;
  line-height: 16px;
}

.top_menu_bicy .modals a:after,
.mobile-menu .modals a:after {
  content: "|";
  margin-left: 5px;
  margin-right: 5px;
}

.top_menu_bicy .modals a:first-child,
.mobile-menu .modals a:first-child {
  display: none;
}

.top_menu_bicy .modals a:last-child:after,
.mobile-menu .modals a:last-child:after {
  content: "";
}

.top_menu_bicy p.tit {
  font-size: 13.5pt;
}

.top_menu_bicy p.weight {
  font-size: 15px;
  font-weight: 900;
}

.top_menu_bicy .portata:after {
  content: "";
  display: block;
  height: 1px;
  background: var(--light-grey-color);
  margin: 20px auto;
}

.card_menu_bicy_ebike,
.card_menu_bicy_muscolare {
  border-right: 1px solid var(--light-grey-color);
}

.card_menu_bicy_ebike:last-child,
.card_menu_bicy_muscolare:last-child,
.top_menu_bicy > .card_menu_bicy_ebike:nth-last-child(2),
.top_menu_bicy > .card_menu_bicy_muscolare:nth-last-child(2) {
  border: 0px !important;
}

.top_menu_bicy a {
  text-decoration: none !important;
}

.ebike-card-menu,
.bike-card-menu {
  width: 20%;
}

.bike-card-menu {
  width: 33.333333%;
}

.menu-bar {
  transition: all 0.3s ease-in-out;
  transition-delay: 0.2s;
  background-color: #fff;
  border-radius: 5px;
  border: 1px solid var(--grey-color);
  position: absolute;
  top: 12.5px;
  right: 16.5px;
  width: 32px;
  height: 32px;
  z-index: 9999999;
  box-sizing: content-box;
}

.menu-bar span {
  transition: all 0.3s ease-in-out;
  background-color: var(--grey-color);
  display: inline-block;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 5px;
  width: 18px;
}

.menu-bar span:before,
.menu-bar span:after {
  transition: all 0.3s ease-in-out;
  background-color: var(--grey-color);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 22px;
}

.menu-bar span:before {
  top: -8px;
}

.menu-bar span:after {
  top: 8px;
}

.triggered .menu-bar span {
  width: 0;
}

.triggered .menu-bar span:before {
  transform: rotate(45deg);
  top: 0;
}

.triggered .menu-bar span:after {
  transform: rotate(-45deg);
  top: 0;
}

.menumobile {
  box-sizing: border-box;
  transition: all 0.3s ease-in-out;
  background-color: #fff;
  height: 100vh;
  opacity: 0;
  padding: 15px;
  position: fixed;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  width: var(--mobile-panel-width, min(80vw, 400px));
  z-index: 1054;
  overflow-x: hidden;
  overflow-y: auto;
}

.mobile-menu {
  --mobile-panel-width: min(80vw, 400px);
  --mobile-menu-header-height: 68px;
}

.menumobile ul {
  transition: all 0.3s ease-in-out;
  list-style: none;
  margin: 0;
  padding: 0;
}

.menumobile ul li {
  transition: all 0.3s ease-in-out;
}

.menumobile ul li a {
  color: #fff;
  display: inline-block !important;
  font-size: 20px;
  padding: 8px 15px;
  position: relative;
  text-decoration: none;
  outline: none;
}

.menumobile ul li span {
  display: inline-block;
  height: 24px;
  top: 6px;
  position: relative;
  width: 24px;
}

.menumobile ul li span:before,
.menumobile ul li span:after {
  background-color: var(--grey-color);
  content: "";
  display: block;
  height: 3px;
  position: absolute;
  width: 16px;
}

.menumobile ul li span:before {
  top: 50%;
  transform: translateY(-50%);
}

.menumobile ul li span:after {
  transition: all 0.15s ease-in-out;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
}

.menumobile ul li span.subtriggered:after {
  transform: translateY(-50%) rotate(0);
}

.menumobile ul li ul li a {
  padding: 4px 20px;
  color: var(--grey-color);
}

.triggered .menumobile {
  opacity: 1;
  transform: translateX(0);
}

.menumobile ul ul {
  display: none;
}

.menumobile ul .subtriggered + ul {
  display: block;
  margin-top: 10px;
  margin-bottom: 20px;
  margin-left: 20px;
}

.menumobile ul li {
  display: block;
}

.mobile-menu .spoiler-content a {
  text-decoration: none !important;
}

.mobile-menu .spoiler-content p.head {
  color: var(--grey-color);
  font-size: 13px;
  line-height: 16px;
}

.mobile-menu .spoiler-content {
  display: none;
}

.mobile-menu .spoiler-header {
  background: #fff;
  border: none;
  text-transform: uppercase;
  padding: 8px 15px;
  font-size: 14px;
  color: var(--grey-color);
  line-height: 26px;
  width: fit-content;
  cursor: pointer;
}

.mobile-menu .spoiler-header span:after {
  content: "+";
  float: right;
  margin-left: 12px;
  font-size: 36px;
  margin-top: -3px;
}

.mobile-menu .spoiler-header.collapsed span:after {
  content: "-";
  float: right;
  margin-left: 12px;
  font-size: 36px;
  margin-top: -3px;
}

.mobile-menu-header {
  align-items: center;
  background: #fff;
  box-shadow: 0 1px 12px rgba(0, 0, 0, 0.08);
  display: flex;
  height: 68px;
  justify-content: center;
  left: 0;
  padding: 0 20px;
  position: relative;
  top: 0;
  width: 100%;
  z-index: 1056;
}

.mobile-menu.mobile-menu-stuck {
  height: var(--mobile-menu-header-height, 68px);
}

.mobile-menu.mobile-menu-stuck .mobile-menu-header {
  position: fixed;
}

.mobile-menu-header .menu-bar {
  align-items: center;
  background: #f7f7f7;
  border: 0;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  flex: 0 0 52px;
  height: 52px;
  justify-content: center;
  left: 18px;
  padding: 0;
  position: absolute;
  right: auto;
  top: 50% !important;
  transform: translateY(-50%);
  width: 52px;
  z-index: 1;
}

.mobile-menu-header .menu-bar span {
  background-color: transparent;
  left: 15px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
}

.mobile-menu-header .menu-bar span:before,
.mobile-menu-header .menu-bar span:after {
  background-color: #1f1f1f;
  height: 2px;
  left: 0;
  width: 22px;
}

.mobile-menu-header .menu-bar span:before {
  top: -4px;
}

.mobile-menu-header .menu-bar span:after {
  top: 4px;
}

.mobile-menu.triggered .mobile-menu-header .menu-bar span {
  width: 22px;
}

.mobile-menu.triggered .mobile-menu-header .menu-bar span:before {
  top: 0;
  transform: rotate(45deg);
}

.mobile-menu.triggered .mobile-menu-header .menu-bar span:after {
  top: 0;
  transform: rotate(-45deg);
}

.mobile-header-brand {
  align-items: center;
  display: flex;
  justify-content: center;
  left: 50%;
  min-width: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.mobile-menu-header img.logo_mobile_menu {
  background: transparent;
  display: block;
  margin: 0;
  max-height: 34px;
  max-width: 150px;
  padding: 0;
  width: auto;
}

.mobile-header-cart {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  color: #1f1f1f;
  display: flex;
  height: 64px;
  justify-content: center;
  margin: 0;
  padding: 0 !important;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 64px;
  z-index: 1;
}

.mobile-header-cart svg {
  fill: none;
  height: 44px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.8;
  width: 44px;
}

.mobile-header-cart-wheel {
  fill: currentColor;
  stroke: none;
}

.mobile-header-cart-count {
  align-items: center;
  background: #ffb000;
  border-radius: 999px;
  color: #111;
  display: flex;
  font-size: 11px;
  font-weight: 700;
  height: 20px;
  justify-content: center;
  line-height: 1;
  min-width: 20px;
  padding: 0 3px;
  position: absolute;
  right: -2px;
  top: 10px;
}

#count:not(.cart-count-ready),
#mobile-cart-count:not(.cart-count-ready),
#mobile-header-cart-count:not(.cart-count-ready),
.cart-count-pending {
  opacity: 0;
  visibility: hidden;
}

.cart-count-ready {
  opacity: 1;
  visibility: visible;
}

.cart-count-empty {
  opacity: 0;
  visibility: hidden;
}

.mobile-menu .menumobile {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: 100vh;
  padding: 38px;
  top: 0;
  z-index: 10000031;
}

.mobile-panel-header {
  align-items: center;
  border-bottom: 1px solid #ededed;
  display: flex;
  justify-content: space-between;
  margin-bottom: 18px;
  min-height: 52px;
  padding-bottom: 14px;
}

.mobile-panel-brand {
  display: flex;
  margin: 0;
}

.mobile-panel-brand img {
  display: block;
  max-height: 30px;
  max-width: 170px;
  width: auto;
}

.mobile-menu .mobile-panel-close {
  align-items: center;
  background: #f7f7f7;
  border: 0;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  flex: 0 0 52px;
  height: 52px;
  justify-content: center;
  left: auto;
  padding: 0;
  position: relative;
  right: auto;
  top: auto !important;
  transform: none;
  width: 52px;
  z-index: 1;
  margin-top: 0px;
}

.mobile-menu .mobile-panel-close span {
  background-color: transparent;
  left: 15px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
}

.mobile-menu .mobile-panel-close span:before,
.mobile-menu .mobile-panel-close span:after {
  background-color: #1f1f1f;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  top: 0;
  width: 22px;
}

.mobile-menu .mobile-panel-close span:before {
  transform: rotate(45deg);
}

.mobile-menu .mobile-panel-close span:after {
  transform: rotate(-45deg);
}

.mobile-menu .spoiler-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  width: 100%;
}

.mobile-menu .spoiler-header span {
  align-items: center;
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.mobile-menu .spoiler-header span:after {
  content: "";
  border-bottom: 1px solid #111;
  border-right: 1px solid #111;
  height: 9px;
  margin: 0 2px 0 12px;
  transform: rotate(45deg);
  width: 9px;
}

.mobile-menu .spoiler-header.collapsed span:after {
  content: "";
  margin: 0 2px 0 12px;
  transform: rotate(-135deg);
}

.mobile-menu .menumobile ul li a {
  color: #111;
  font-size: 14px;
  line-height: 20px;
  padding: 8px 0;
  text-transform: uppercase;
}

.mobile-panel-bottom {
  border-top: 1px solid #ededed;
  margin-top: clamp(24px, calc(12vh - 30px), 80px);
  padding-bottom: 0px;
  padding-top: 0px;
}

.mobile-panel-bottom .search_mobile {
  align-items: center;
  background: #f3f3f3;
  border-radius: 9px;
  display: flex;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

.mobile-panel-bottom .search_mobile label {
  flex: 1 1 auto;
  margin: 0;
}

.mobile-panel-bottom .search_mobile input {
  background: transparent;
  border: 0;
  color: #111;
  font-size: 14px;
  height: 44px;
  line-height: 20px;
  padding: 11px 12px;
  width: 100%;
}

.mobile-panel-bottom .search_mobile input::placeholder {
  color: #7a7a7a;
}

.mobile-panel-bottom .search_mobile button {
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  flex: 0 0 44px;
  height: 44px;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 44px;
}

.mobile-panel-bottom .search_mobile button:hover {
  background: transparent;
}

.mobile-panel-bottom .search_mobile button svg {
  fill: #111;
  height: 22px;
  width: 22px;
}

.mobile-panel-phone {
  align-items: center;
  background: #111;
  border-radius: 999px;
  color: #fff !important;
  display: flex;
  font-size: 15px;
  font-weight: 700;
  gap: 9px;
  justify-content: center;
  line-height: 20px;
  margin: 70px 0 18px;
  min-height: 48px;
  padding: 12px 18px;
  text-decoration: none !important;
  width: 100%;
}

.mobile-panel-phone svg {
  fill: none;
  flex: 0 0 18px;
  height: 18px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
  width: 18px;
}

.mobile-panel-bottom .social_icon_mobile_menu {
  align-items: center;
  display: flex;
  justify-content: space-around;
  padding: 0 10px 18px;
}

.mobile-panel-bottom .social_icon_mobile_menu img {
  height: 0;
  margin: 0;
  opacity: 0;
  padding: 0;
  width: 0;
}

.mobile-panel-bottom .social_icon_mobile_menu a {
  color: #111;
  font-size: 12px;
  line-height: 16px;
}

.mobile-panel-bottom .mobile-panel-lang {
  appearance: auto;
  background: #f0f0f0;
  border: 0;
  border-radius: 8px;
  color: #111;
  font-size: 12px;
  height: 34px;
  line-height: 34px;
  padding: 0 12px;
  -webkit-text-fill-color: #111;
  width: 100%;
}

.mobile-panel-bottom .mobile-panel-lang option {
  background: #fff;
  color: #111;
}

.mobile-menu:before {
  background: rgba(0, 0, 0, 0.62);
  content: "";
  height: 100vh;
  left: var(--mobile-panel-width, min(80vw, 400px));
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: opacity 0.3s ease-in-out;
  width: calc(100vw - var(--mobile-panel-width, min(80vw, 400px)));
  z-index: 10000020;
}

.mobile-menu.triggered:before {
  opacity: 1;
  pointer-events: auto;
}

.mobile-menu.triggered .mobile-menu-header .menu-bar {
  display: none;
}

#myModal.add-to-cart-modal {
  z-index: 10000020;
}

.modal-backdrop {
  z-index: 10000010;
}

#popup_donnolive {
  z-index: 10000030;
  pointer-events: auto;
}

#popup_donnolive .modal-dialog,
#popup_donnolive .modal-content {
  pointer-events: auto;
}

/*Footer*/
footer ul li {
  margin-top: 0px !important;
}

footer .bottom_block {
  background: #fff;
  border-top: 1px solid #ccc;
}

footer .bg-grey a,
footer .bg-grey p {
  color: var(--lightest-grey-color) !important;
}

footer a {
  text-decoration: none !important;
}

footer p {
  margin: 0px;
  font-size: 14px;
  line-height: 22px;
}

footer p.xl {
  font-size: 28px;
  line-height: 30px;
}

footer p.lg {
  font-size: 20px;
  line-height: 20px;
}

footer p.medium {
  font-size: 18px;
  line-height: 24px;
}

footer p.sm {
  font-size: 10pt;
  line-height: 14pt;
  text-align: justify;
}

footer p.smmed {
  font-size: 12pt;
  line-height: 12pt;
}

footer p.xsm {
  font-size: 9pt;
  line-height: 13pt;
}

footer .form_footer p {
  margin-left: 10px;
}

footer .form_footer input.checkbox {
  width: 36px;
  height: 23px;
}

footer .form_header input {
  width: calc(60% - 5px);
  margin-right: 5px;
  padding: 19px 10px;
  border: none;
  color: var(--grey-color);
}

footer .form_header button {
  width: 40%;
  background: var(--grey-color);
  color: #fff;
  text-transform: uppercase;
  border: none;
  font-size: 20px;
  line-height: 24px;
  padding: 20px 0px;
}

footer .form_header button:hover {
  background: var(--green-color);
}

footer .footer_titolo {
  font-size: 15px;
  line-height: 27px;
  font-weight: 700;
  text-transform: uppercase;
}

footer .footer_titolo img {
  margin-bottom: 10px;
}

ul.footer-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.footer-menu li a {
  text-decoration: none !important;
  color: var(--lightest-grey-color);
  font-weight: normal !important;
  font-size: 14px;
  line-height: 27px;
  text-transform: uppercase;
}

.footer_col_wrap {
  margin-top: 15px;
}

footer img.social_link {
  margin-right: 10px;
  width: 32px;
}

footer .whatsapp-info img {
  margin-right: 10px !important;
  height: 32px;
}

footer .whatsapp-info span {
  display: block;
  line-height: 20px;
  font-size: 14px;
}

.scroll-to-top-btn {
  display: none;
  position: fixed;
  bottom: 10px;
  left: 20px;
  width: 50px;
  height: 50px;
  background-color: var(--grey-color);
  color: white;
  border: 1px solid #fff;
  border-radius: 50%;
  font-size: 0px !important;
  cursor: pointer;
  padding: 0px !important;
  z-index: 999;
}

.scroll-to-top-btn svg {
  margin-top: -4px;
  height: 24px;
  width: 24px;
  fill: #fff;
}

.scroll-to-top-btn:hover {
  background-color: var(--green-color);
}

.scroll-to-top-btn.show {
  display: block;
}

.mobile-contact-widget {
  position: fixed;
  right: max(5px, env(safe-area-inset-right));
  bottom: max(70px, env(safe-area-inset-bottom));
  z-index: 1000;
  width: 50px;
  font-family: inherit;
}

.mobile-contact-widget summary {
  list-style: none;
}

.mobile-contact-widget summary::-webkit-details-marker {
  display: none;
}

.contact-widget-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  min-height: 50px;
  margin-left: auto;
  border: 0;
  border-radius: 50%;
  background: #ff796d;
  color: #fff;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
  cursor: pointer;
  font-size: 0;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  overflow: hidden;
  transition:
    transform 0.18s ease,
    background-color 0.18s ease,
    box-shadow 0.18s ease;
}

.contact-widget-toggle:hover,
.contact-widget-toggle:focus-visible,
.mobile-contact-widget[open] .contact-widget-toggle {
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.26);
  transform: translateY(-1px);
}

.contact-widget-icon,
.contact-widget-action-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.contact-widget-icon {
  width: 36px;
  height: 36px;
}

.contact-widget-icon svg,
.contact-widget-action-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.contact-widget-actions {
  position: absolute;
  right: 0;
  bottom: calc(100% + 9px);
  display: grid;
  justify-items: end;
  gap: 7px;
  width: 50px;
  pointer-events: none;
  opacity: 0;
  transform: translateY(8px) scale(0.98);
  transform-origin: bottom right;
  transition:
    opacity 0.16s ease,
    transform 0.16s ease;
}

.mobile-contact-widget[open] .contact-widget-actions {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0) scale(1);
}

.contact-widget-action {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  width: 50px;
  border: 1px solid rgba(51, 51, 51, 0.1);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.97);
  color: #333 !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.13);
  font-size: 0;
  font-weight: 700;
  line-height: 1.05;
  text-decoration: none !important;
  text-align: center;
  transition:
    color 0.16s ease,
    transform 0.16s ease,
    box-shadow 0.16s ease;
}

.contact-widget-action:hover {
  color: var(--green-color) !important;
  transform: translateY(-1px);
}

.contact-widget-action-icon {
  width: 36px;
  height: 36px;
  color: var(--green-color);
}

.contact-widget-action-whatsapp .contact-widget-action-icon {
  color: #25d366;
}

@media (min-width: 992px) {
  .mobile-contact-widget {
    display: none !important;
  }
}

/*Page*/
.page-head {
  background: var(--lightest-grey-color);
}

.page-head h1 {
  font-size: 28px;
  line-height: 36px;
  text-transform: uppercase;
  color: #333;
  font-weight: 300;
}

.page-mcraft h2 {
  font-size: 30px;
  color: var(--grey-color);
  font-weight: 400;
  line-height: 1.3em;
  margin-bottom: 14px;
}

.page-mcraft h3 {
  font-size: 21px;
  color: var(--grey-color);
  font-weight: 400;
  line-height: 1.3em;
}

.page-mcraft a {
  color: var(--main-color) !important;
}

.page-mcraft ul {
  margin: 20px 0px;
}

.page-mcraft ul,
.page-mcraft li {
  font-size: 16px;
  color: var(--main-color);
}

.page-mcraft b {
  font-weight: 700 !important;
}

.page-mcraft p {
  font-size: 15px;
  color: var(--main-color);
  line-height: 24px;
  margin-bottom: 16px;
}

.page-mcraft .posted-on {
  opacity: 0.65;
  font-size: 15px !important;
}

.slick-slide img {
  margin: 0px auto;
  width: 100%;
}

.slick-prev:before,
.slick-next:before {
  color: #57bdc6 !important;
  font-size: 50px !important;
}

.slick-prev,
.slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.slider:hover .slick-prev,
.slider:hover .slick-next {
  visibility: visible;
  animation: fade 2s ease;
}

@keyframes fade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.slick-prev {
  left: -15px !important;
  visibility: hidden;
}

.slick-next {
  right: 15px !important;
  visibility: hidden;
}

.torna_link a {
  color: var(--main-color) !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 18px;
}

.accordion-body {
  margin-bottom: 20px;
}

.accordion-button:focus {
  box-shadow: none !important;
  border: 0px !important;
}

.accordion-button:not(.collapsed)::after {
  filter: brightness(0);
}

.accordion-button:not(.collapsed) {
  color: var(--grey-color) !important;
  background: #fff !important;
  box-shadow: none !important;
}

.accordion-button:collapsed {
  color: var(--grey-color) !important;
  background: #fff !important;
  box-shadow: none !important;
}

.accordion-item {
  border: 0px !important;
}

/*Pagamento */
#accordionPagamento .accordion-button,
#accordionPagamento .accordion-button:focus {
  border-bottom: 1px solid var(--light-grey-color) !important;
}

.pagamento_rate {
  border-bottom: 2px dotted grey;
  padding-bottom: 15px;
  margin-top: 20px;
}

.bannercontent h2 {
  margin-bottom: 3rem;
  text-align: center;
}

.bannercontent h3 {
  margin-bottom: 1rem;
  margin-top: 1.5rem;
}

.spedizione_column:last-child {
  padding-left: 3rem;
  padding-right: 0px !important;
}

.card-spedizione {
  border-right: 1px solid #ededeb;
}

.card-spedizione:last-child {
  border-right: 0px;
}

.card-spedizione p {
  text-align: justify;
}

/*Marketing*/

.prodotto_menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.prodotto_menu ul a,
.prodotto_menu_sp ul a {
  text-transform: uppercase;
  text-decoration: none !important;
  font-weight: 500 !important;
  color: var(--grey-color) !important;
  font-size: 13px;
  line-height: 13px;
  padding: 14px 16px;
  border-left: 1px solid var(--light-grey-color);
  letter-spacing: 1px;
  transition: 0.3s color;
  margin-top: 10px;
  display: block;
}

.prodotto_menu ul a h2 {
  color: var(--grey-color) !important;
  font-size: 13px;
  line-height: 13px;
}

.prodotto_menu ul h2 {
  margin-bottom: 0px;
}

.prodotto_menu ul a:hover {
  color: var(--green-color) !important;
}

.prodotto_menu ul a:last-child {
  border-right: 1px solid var(--light-grey-color) !important;
}

.fotogalery .prodotto_menu ul a,
.page-index .prodotto_menu ul a,
.archive .prodotto_menu ul a {
  border-right: 0px !important;
}

.fotogalery .prodotto_menu ul li:last-child a,
.page-index .prodotto_menu ul li:last-child a,
.archive .prodotto_menu ul li:last-child a {
  border-right: 1px solid var(--light-grey-color) !important;
}

.title_biciclette {
  text-align: center;
  font-size: 28px;
  line-height: 36px;
  color: var(--main-color-header-h1);
  font-weight: 300;
}

.entry-summary {
  padding: 0px 3rem;
  margin-bottom: 50px;
}

.importo_rata.hidden {
  display: none;
}

.summary p.product_title {
  color: var(--grey-color);
  font-size: 35px;
  line-height: 46px;
  font-weight: normal;
  margin-bottom: 20px;
}

.descrizione_bike ul {
  margin: 0 !important;
  padding: 0 !important;
  padding-left: 14px !important;
}

.descrizione_bike h3,
.descrizione_bike h2 {
  font-size: 30px;
  line-height: 39px;
  color: var(--grey-color);
  text-align: center;
  margin-bottom: 20px;
  margin-top: 20px;
}

#descrizione_bike p {
  margin-bottom: 10px !important;
}

.summary p {
  margin-bottom: 0px;
}

.summary .descrizione_bike p {
  margin-bottom: 20px !important;
}

.summary p.price {
  font-size: 36px;
  font-weight: 500;
  color: var(--green-color);
  margin: 0;
}

.summary p.price span.prezzo_listino,
.woocommerce-variation-price span.prezzo_listino {
  font-size: 16px !important;
  color: var(--grey-color);
  font-weight: 700;
  margin-left: 10px;
  margin-right: 10px;
}

.summary p.price span.risparmi,
.woocommerce-variation-price span.risparmi {
  font-size: 16px;
  color: var(--green-color);
  font-weight: 700;
}

.importo_rata {
  margin-top: 5px;
}

.importo_rata p,
.importo_rata.hidden p {
  font-weight: normal;
  margin-bottom: 0 !important;
}

img.logo_paga {
  height: 22px;
  margin-right: 5px;
}

img.logo_paga_info {
  width: 18px;
  height: 18px;
  margin-left: 3px;
  margin-top: -3px;
}

.woocommerce-variation-description {
  display: none;
}

.woocommerce-variation-price {
  font-size: 36px !important;
  font-weight: 900;
  color: var(--green-color);
  margin: 0;
}

.woocommerce-variation-price p {
  font-weight: normal;
}

.woocommerce-variation-price {
  display: none;
}

.summary .sku_prodotto {
  margin-bottom: 4px;
}

.summary a {
  color: var(--grey-color) !important;
  text-decoration: none !important;
}

.cofidis-calculadora,
#badge2,
.cofidis-product {
  display: none !important;
}

.flex-control-thumbs {
  list-style: none;

  margin: 0;
  padding: 0;
}

form.single_bike_form {
  background: #f2f2f3;
}

form.single_bike_form input {
  width: 100%;
  background: #fff;
  color: var(--grey-color);
  border: 2px solid var(--light-grey-color);
  border-radius: 0px;
  margin-bottom: 20px;
  padding: 5px 20px;
  text-align: left;
  text-transform: uppercase;
}

#donnoLiveSP form.single_bike_form {
  background: transparent !important;
}

#donnoLiveSP form.single_bike_form input {
  background: transparent !important;
}

form.single_bike_form button {
  width: calc(100% - 10px);
  background: var(--grey-color);
  color: #fff;
  border-radius: 0px;
  padding: 16px;
  text-transform: uppercase;
  margin: 0px auto 0px auto;
  display: block;
  transition: 0.3s background;
  line-height: 22px;
  border: none !important;
}

form.single_bike_form button:hover {
  background: var(--green-color);
}

form#lead_prodotto a {
  color: var(--grey-color) !important;
}

form#lead_prodotto p {
  margin-bottom: 0px !important;
}

form#lead_prodotto button {
  width: 100%;
  margin-top: 20px;
}

form.single_bike_form {
  border-radius: 19px;
}

form#lead_prodotto .dlForm p.title {
  font-size: 24px;
  line-height: 28px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 7px !important;
  letter-spacing: 1px;
}

form#lead_prodotto .dlForm p.pretitle {
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
  margin-bottom: 0 !important;
}

form#lead_prodotto .dlForm p {
  text-align: left;
}

form#lead_prodotto .dlForm input,
form.single_bike_form input {
  border-radius: 30px !important;
  padding: 10px 25px !important;
  border: 1px solid #818181;
  text-transform: inherit !important;
}

form#lead_prodotto .dlForm button,
form.single_bike_form button {
  border-radius: 30px !important;
  padding: 14px 20px;
  font-size: 20px;
}

form#lead_prodotto {
  max-width: 600px;
}

p.success_form,
p.success_form {
  font-size: 15px;
  line-height: 30px;
  text-transform: uppercase;
  color: #fff;
  background: #5bd18a;
  padding: 10px 20px;
  letter-spacing: 1px;
}

p.error_form,
p.error_form {
  font-size: 24px;
  line-height: 30px;
  text-transform: uppercase;
  color: #fff;
  background: red;
  padding: 10px 20px;
}

button.minus,
button.plus {
  background: #f5f6f8;
  font-size: 16px;
  padding: 5px 10px;
  line-height: 16px;
  border: 2px solid var(--light-grey-color) !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  margin: 0 !important;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -webkit-appearance: none;
  -moz-appearance: textfield;
  appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

#popup_donnolive .modal-dialog {
  min-height: 100vh;
  align-items: center;
  display: flex;
}

#popup_donnolive .modal-content {
  max-width: 900px !important;
  padding: 0px;
  border-radius: 25px;
}

#popup_donnolive p.title {
  font-size: 28px !important;
  line-height: 34px;
  letter-spacing: 1px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
}

#popup_donnolive p.pretitle {
  font-size: 20px !important;
  line-height: 24px;
  letter-spacing: 0px;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

#popup_donnolive p {
  font-size: 16px !important;
  line-height: 22px;
}

#popup_donnolive form.single_bike_form {
  background: transparent;
}

#popup_donnolive form#lead_prodotto button {
  margin-top: 0;
}

#popup_donnolive .modal-header {
  padding: 0px;
}

#popup_donnolive .modal-header button.btn-close {
  position: absolute;
  right: 30px;
  top: 30px;
  border: none !important;
  font-size: 20px;
  font-weight: 600;
  color: #262626;
  opacity: 1;
  z-index: 99999;
  box-shadow: none !important;
}

#popup_donnolive a {
  color: #262626 !important;
}

#popup_donnolive form#lead_prodotto {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

#popup_donnolive .form-bottom p {
  font-size: 14px;
  line-height: 16px;
}

#popup_donnolive .form-bottom p.bottom-title {
  margin-bottom: 7px !important;
  font-size: 17px;
  line-height: 18px;
}

.woo-variation-swatches
  .variable-items-wrapper
  .variable-item:not(.radio-variable-item).button-variable-item {
  width: 100px;
  border-radius: 0px;
  height: 40px;
  margin-right: 15px;
}

.iconic-was-chosen-attribute {
  display: none;
}

.iconic-was-swatches {
  margin: 5px 0 5px !important;
}

.modal-dialog {
  max-width: 1000px !important;
}

.modal-header {
  border: none !important;
}

.modal-content {
  padding: 30px 30px 50px 30px;
}

.modal-header .btn-close {
  padding: 5px;
  border-radius: 0px;
  border: 1px solid var(--grey-color) !important;
}

.modal-header .btn-close:hover {
  background-color: #fff;
}

.btn-close:focus {
  box-shadow: 0 0 0 0.25rem #57bdc661;
}

.er {
  background: var(--green-color);
  color: #fff;
  padding: 7px 15px;
  margin-bottom: 10px;
  border-radius: 5px;
  display: none;
  line-height: 22px;
  max-width: 550px;
  margin-bottom: 20px;
}

.er .wr {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.er button {
  background: #fff;
  color: var(--main-color);
  padding: 1px 20px !important;
  font-size: 16px !important;
  line-height: 20px !important;
  font-weight: normal !important;
  letter-spacing: 1px;
  border: none;
  border-radius: 25px;
  margin-left: 20px;
  height: 24px;
}

.er button:hover {
  background: var(--grey-color);
  color: #fff;
}

.lead_form button.close {
  background: #fff;
  border: 0px;
  font-weight: 700;
  font-size: 32px;
  margin-left: auto;
  padding: 0px;
}

.lead_form form input {
  padding: 7px 15px;
  border: 1px solid var(--light-grey-color);
  margin-top: 10px;
  width: 300px;
}

.lead_form form button.submit {
  background: var(--grey-color);
  width: 300px !important;
  color: #fff;
  padding: 16px 32px !important;
  border-radius: 25px;
  text-transform: uppercase;
  letter-spacing: 1px;
  height: 50px !important;
  transition: 0.3s background;
  margin-top: 40px !important;
}

.lead_form form button.submit:hover {
  background: var(--green-color);
}

.lead_form form .titolo_form {
  font-size: 32px;
  line-height: 40px;
  margin-bottom: 10px;
}

.lead_form form .preheader_form {
  font-size: 18px;
  line-height: 26px;
}

.lead_form .modal-dialog {
  max-width: 600px !important;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0px auto;
}

.lead_form .modal-content {
  padding: 0px 30px !important;
  height: min-content;
  min-height: 400px;
}

.google_shop {
  background: var(--green-color);
  padding: 40px;
  margin-bottom: 10px;
  border-radius: 5px;
  display: none;
  line-height: 22px;
  max-width: 600px;
  margin-bottom: 20px;
  background: #f2f2f3;
}

.google_shop p.l {
  font-size: 26px;
  line-height: 36px;
  color: var(--main-color);
  font-weight: 500;
}

.google_shop p.m {
  color: var(--main-color);
}

.google_shop button {
  background: var(--green-color);
  color: #fff;
  padding: 12px 23px !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: normal !important;
  letter-spacing: 1px;
  border: none;
  border-radius: 5px;
  display: block;
  text-transform: uppercase;
  font-weight: 600;
}

.google_shop button:hover {
  background: var(--grey-color);
  color: #fff;
}

#Modal_ER .modal-header,
#Modal_Paga .modal-header {
  height: 44px;
}

#Modal_ER button.close,
#Modal_Paga button.close {
  background: #fff;
  border: 0px;
  font-weight: 700;
  font-size: 32px;
  margin-left: auto;
  padding: 0px;
}

#Modal_ER form input,
#Modal_Paga form input {
  padding: 7px 15px;
  border: 1px solid var(--light-grey-color);
  margin-top: 7px;
  width: 100%;
  margin-bottom: 15px;
  font-size: 14px;
}

#Modal_ER form label,
#Modal_Paga form label {
  font-size: 14px;
  line-height: 20px;
  display: block;
}

#Modal_ER form button.submit,
#Modal_Paga form button.submit {
  background: var(--grey-color);
  width: 100%;
  color: #fff;
  padding: 16px !important;
  border-radius: 25px;
  text-transform: uppercase;
  letter-spacing: 1px;
  height: 50px !important;
  transition: 0.3s background;
  font-size: 14px;
  max-width: 286px;
}

#Modal_ER form button.submit:hover,
#Modal_Paga form button.submit:hover {
  background: var(--green-color);
}

#Modal_ER form .titolo_form,
#Modal_Paga form .titolo_form {
  font-size: 32px;
  line-height: 40px;
  margin-bottom: 10px;
}

#Modal_ER form .preheader_form,
#Modal_Paga form .preheader_form {
  font-size: 18px;
  line-height: 26px;
}

#Modal_ER .modal-dialog,
#Modal_Paga .modal-dialog {
  max-width: 800px !important;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0px auto;
}

#Modal_ER .modal-content,
#Modal_Paga .modal-content {
  padding: 5px 5px !important;
  height: min-content;
  min-height: 450px;
}

#Modal_ER .modal-content .single_bike_form_head ul,
#Modal_Paga .modal-content .single_bike_form_head ul {
  text-align: left;
  margin: 0px;
}

#Modal_ER .modal-content .single_bike_form_head ul li,
#Modal_Paga .modal-content .single_bike_form_head ul li {
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 10px;
}

#Modal_ER .modal-content .titolo_form,
#Modal_Paga .modal-content .titolo_form {
  font-size: 26px;
  line-height: 34px;
  letter-spacing: 1px;
}

#Modal_ER .modal-content p.sm,
#Modal_Paga .modal-content p.sm {
  font-size: 14px;
  line-height: 18px;
  text-align: justify;
  margin-left: 20px;
  margin-top: 20px;
}

#Modal_ER .modal-content .pro,
#Modal_Paga .modal-content .pro {
  border-left: 1px solid #ccc;
}

#Modal_ER .single_bike_form_head,
#Modal_ER .input_block,
#Modal_Paga .single_bike_form_head,
#Modal_Paga .input_block {
  max-width: 400px;
}

/*Versatilita*/

.versatilita .wrap {
  text-align: center;
}

a.versatilita-fancybox {
  transition: 0.3s filter;
}

a.versatilita-fancybox:hover {
  filter: grayscale(1);
}

#versatilita svg.svg-icon {
  width: 64px;
  fill: #fff;
  position: absolute;
  visibility: hidden;
}

a.versatilita-fancybox {
  width: 100%;
  height: 100%;
}

a.versatilita-fancybox:hover svg.svg-icon {
  visibility: visible !important;
}

/*CONFIGURAZIONI */
.configurazioni_bike h4.titolo_configurazioni_bike {
  color: var(--text-grey-color);
  font-size: 21px;
  line-height: 27px;
  text-transform: uppercase;
  margin-bottom: 1.5em;
}

.configurazioni_bike h4.titolo_configurazioni_bike:after {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background: var(--light-grey-color);
  margin: 15px auto 0px 0px;
}

.configurazioni_bike p.preaheader_configurazioni_bike {
  text-transform: uppercase;
  font-size: 16px;
  line-height: 20px;
  font-weight: 700;
  color: var(--main-color);
}

#configurazioni_bike ul.bici_configurazioni_accessori li {
  cursor: pointer;
}

#configurazioni_bike ul.bici_configurazioni_accessori li span.span_accessori {
  transition: 0.3s color;
}

#configurazioni_bike
  ul.bici_configurazioni_accessori
  li
  span.span_accessori:hover {
  color: var(--green-color);
}

#configurazioni_bike ul.bici_configurazioni_setup li {
  margin-left: 20px;
  font-size: 15px;
  line-height: 25px;
  margin-top: 10px;
}

ul.bici_configurazioni_setup {
  min-height: inherit !important;
}

span.span_accessori {
  font-size: 15px;
  line-height: 25px;
  font-weight: 500;
}

span.accessori_color {
  width: 15px;
  height: 15px;
  display: inline-block;
  margin-bottom: -1px;
  margin-right: 3px;
}

span.accessori_color_blue {
  background: #5a6f9b;
}

span.accessori_color_orange {
  background: #cd8b4e;
}

span.accessori_color_green {
  background: #8c9161;
}

span.accessori_color_stars:before {
  content: "*";
  position: absolute;
  font-size: 25px;
}

.configurazioni_bike ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
  min-height: 120px;
}

.configurazioni_bike ul.bici_configurazioni_accessori li {
  width: 50%;
}

.configurazioni_bike ul.bici_configurazioni_accessori li:nth-child(even) {
  float: right;
}

.configurazioni_bike ul.bici_configurazioni_accessori li:nth-child(odd) {
  float: left;
}

/*Videoblock*/
.videoblock p {
  margin: 0px;
}

.videoblock p.header_video {
  font-weight: 700;
}

.videoblock img.preview_button {
  transition: 0.3s transform;
}

.videoblock img.preview_button:hover {
  transform: scale(1.1);
}

.single-videogallery .videoblock .wrap:nth-child(odd) {
  padding-right: 1rem;
}

.single-videogallery .videoblock .wrap:nth-child(even) {
  padding-left: 1rem;
}

.single-videogallery .videoblock .card_video {
  align-self: end;
}

iframe.youtube_embed {
  width: 100%;
  height: calc(var(--width-section) / 2 / 16 * 9);
}

.emilia_banner,
.default_banner {
  display: none;
}

/*Catalog*/
.section-products-header {
  background: var(--lightest-grey-color);
}

.archive ul.products,
.configurator ul.products {
  list-style: none !important;
  margin: 0px;
}
.configurator p.title {
  font-weight: 600;
  font-size: 24px;
  line-height: 30px;
}
.configurator .quick-add {
  background-color: #008692;
  color: #fff;
  border: 1px solid #008692 !important;
}
.configurator del,
.woocommerce-mini-cart-item del {
  opacity: 0.7;
  font-size: 16px !important;
}
.configurator del bdi,
.woocommerce-mini-cart-item del bdi {
  font-size: 16px !important;
}
.configurator .card-accessori p {
  line-height: 18px;
}
.configurator mark,
.configurator ins,
.woocommerce-mini-cart-item mark,
.woocommerce-mini-cart-item ins {
  background: transparent;
  margin-left: 7px;
  opacity: 1;
  font-size: 19px;
}
.configurator bdi,
.woocommerce-mini-cart-item bdi {
  font-size: 19px;
}
.mcraft-password-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 80px 20px;
}
.post-password-form {
  max-width: 450px;
  width: 100%;
  padding: 40px;
  background: #ffffff;
  border: 1px solid #eee;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}
.post-password-form h2 {
  margin-top: 0;
  font-size: 24px;
  color: #111;
}
.post-password-form p {
  font-size: 15px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 25px;
}
.post-password-form input[type="password"] {
  width: 100%;
  height: 50px;
  padding: 0 15px;
  margin-bottom: 20px;
  border: 2px solid #f0f0f0;
  border-radius: 6px;
  font-size: 16px;
  transition: border-color 0.3s;
  box-sizing: border-box;
}
.post-password-form input[type="password"]:focus {
  border-color: #008080;
  outline: none;
}
.post-password-form input[type="submit"] {
  width: 100%;
  height: 50px;
  background: #008080;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.3s;
}
.post-password-form input[type="submit"]:hover {
  background: #006666;
}
.woocommerce-products-header {
  background: var(--lightest-grey-color);
  color: var(--grey-color);
}

.woocommerce-products-header__title {
  text-transform: uppercase;
  text-align: center;
  font-size: 28px;
  line-height: 36px;
  color: #333;
  font-weight: 300;
}

.woocommerce-breadcrumb a,
.woocommerce-breadcrumb {
  color: #333;
  font-weight: 500;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 12px;
  margin-top: 10px;
}

/*Bonus*/

#caa #cta img {
  max-width: 200px;
  margin: 4rem auto;
}

.gift-card #distributore .wrap {
  max-width: 350px;
  display: block;
  margin: 0px auto;
}

.gift-card #distributore img {
  height: inherit;
  max-width: 350px;
  width: 100%;
}

.gift-card #distributore p {
  text-align: center;
}

/*fotogalery*/
p.count {
  font-size: 14px;
  line-height: 23px;
  color: #262626;
  font-weight: 400;
  text-align: center;
}

.fotogalery h2 {
  font-size: 16px;
  line-height: 30px;
  font-weight: 600;
  margin-bottom: 0px;
  text-align: center;
  color: var(--grey-color);
}

/*Service Page*/
table.legal {
  margin: 3rem 0;
  margin-bottom: 9rem;
}

table.legal td {
  padding: 15px 10px;
}

table.legal strong {
  line-height: 20px;
}

table.legal td {
  padding: 25px 15px;
  border-top: 1px solid var(--light-grey-color) !important;
  border-bottom: 1px solid var(--light-grey-color) !important;
}

table.legal tr:first-child td {
  border-top: none !important;
}

table.contatto td {
  border-top: 1px solid var(--light-grey-color) !important;
  border-bottom: 1px solid var(--light-grey-color) !important;
  padding: 25px 15px;
}

table.contatto {
  margin-top: 1.5rem;
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
}

.skip-link:focus {
  left: 10px;
  top: 10px;
  background: #000;
  color: #fff;
  padding: 10px;
  z-index: 9999;
}
/*page-index*/

.page-index h2,
.page-index p.entry-title a {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  color: var(--grey-color);
}

.page-index .entry-index-content {
  font-size: 16px;
  line-height: 27px;
  color: var(--main-color);
  font-weight: 400;
}

.page-index p.entry-title a {
  color: var(--grey-color) !important;
}

/*Blog*/

#masonry-grid {
  margin: 0;
  padding: 0;
  list-style: none;
}

#masonry-grid li {
  margin: 0 20px 20px 0;
  width: calc((100% / 3) - 20px);
  float: left;
}

#masonry-grid li:nth-child(3n + 3) {
  margin-right: 0px !important;
}

.page-index .wrap {
  border: 1px solid #e3e3e3;
}

.page-index button {
  background: var(--green-color);
  color: #fff;
  font-size: 12px;
  line-height: 18px;
  border-radius: 5px;
  border: none;
  transition: 0.3s background;
  text-transform: uppercase;
  padding: 10px 20px;
  font-weight: 600;
}

.page-index button:hover {
  background: var(--grey-color);
}

#masonry-grid .post {
  margin-bottom: 0px;
}

.widget-area span {
  font-size: 14px;
  line-height: 23px;
  color: var(--grey-color);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
}

.widget-area ul {
  list-style: none;
  padding: 0px;
  margin: 20px 0px 0px 0px;
}

.widget-area a {
  transition: 0.3s color;
  font-weight: 500;
  color: var(--main-color) !important;
  text-decoration: none;
  font-size: 15px;
  line-height: 18px;
  transition: 0.3s color !important;
}

.widget-area a:hover {
  color: var(--green-color) !important;
}

li.last_news_sidebar {
  font-size: 13px !important;
  line-height: 18px !important;
}

li.last_news_sidebar .last_news_date,
li.last_news_sidebar .last_news_date a {
  display: block;
  margin-top: 10px;
  font-size: 12px !important;
  line-height: 16px !important;
  font-style: italic;
}

.card-bottom-news img:hover,
.last_news_sidebar img:hover {
  filter: grayscale(1);
}

.last_news_date a,
.last_news a {
  transition: 0.3s color;
}

.last_news_date a:hover,
a.last_news:hover {
  color: var(--green-color) !important;
}

#player {
  width: 100%;
  height: calc(1428px * 9 / 16);
  min-height: 100%;
  max-width: 1428px;
  margin: 0px auto;
  display: block;
}

.html5-video-player a {
  display: none !important;
}

.blog_row .title_blog {
  width: 100%;
  background-color: #f9f9f9;
  padding: 10px 20px;
  color: #999;
  border-top: 1px dotted #ddd;
  border-bottom: 1px solid #ddd;
}

.blog_row .entry-content {
  margin-top: 0px !important;
}

.blog_row .link_blog,
.video_blog {
  font-size: 15px !important;
  line-height: 24px;
}

.blog_row .link_blog a {
  font-weight: 700;
  color: #000 !important;
  font-size: 15px !important;
  line-height: 24px !important;
  margin-top: 5px;
  border-bottom: 2px solid var(--green-color);
}

.blog_row .link_blog img,
.video_blog img.icon-video {
  display: block;
  width: 20px;
  margin-bottom: 5px;
}

.blog_row {
  margin-bottom: 1.5rem;
}

.blog_row .video_blog {
  max-width: 260px;
}

.blog_row hr {
  margin-top: 30px;
  background-color: var(--grey-color);
}

.content_blog p:last-child {
  margin-bottom: 0px;
}

.content_blog img {
  margin-top: 1.5rem;
}

.blog_row ul.blog_menu {
  margin: 0;

  margin-bottom: 0px;
  padding: 0;
  padding-left: 1rem;
}

.blog_row form#lead_prodotto p {
  font-size: 22px !important;
}

.blog_row form#lead_prodotto p.head {
  font-size: 30px;
  margin-bottom: 10px !important;
}

.blog_row form#lead_prodotto p.sm {
  font-size: 14px !important;
  line-height: 20px !important;
  margin-top: 10px;
  margin-bottom: 20px;
}

.blog_row form#lead_prodotto input {
  text-transform: inherit !important;
}

.blog_row form#lead_prodotto textarea {
  width: 100%;
  background: #fff;
  color: var(--grey-color);
  border: 2px solid var(--light-grey-color);
  border-radius: 0px;
  padding: 5px 20px;
  text-align: left;
  text-transform: inherit !important;
}

#scrollIndicator {
  position: fixed;
  top: 0;
  left: 0;
  height: 8px;
  width: 0;
  background-color: var(--green-color);
  opacity: 0.5;
  border-radius: 4px;
  z-index: 9999;
  transition: width 0.3s;
}

/*SERVIZI PAGE*/
.servizi-page .triangle img {
  width: 325px;
  margin: 0px auto;
  display: block;
}

.servizi-page ul {
  margin-top: 5px;
}

#durante ul {
  margin-bottom: 10px;
}

.servizi-page p {
  margin-bottom: 0px;
}

.servizi-page .marg-def p {
  margin-bottom: 20px;
}

.servizi-page #motore img {
  margin: 0px auto;
  display: block;
}

#durante p {
  margin-bottom: 10px;
}

.servizi-card {
  border-right: 1px solid #ccc;
}

.servizi-card:nth-child(odd) {
  border-right: 0px;
}

/*Mini Cart*/
.cart-empty {
  text-align: center !important;
  font-size: 24px;
  margin-top: 4.5rem;
}

.cart-blank .round {
  border: 1px solid var(--light-grey-color);
  border-radius: 50%;
  padding: 45px 25px;
  width: 200px;
  height: 200px;
  display: block;
  margin: 1.5rem auto 4rem auto;
}

.cart-blank a.wc-backward {
  background: var(--grey-color);
  color: #fff !important;
  padding: 16px 32px;
  border-radius: 5px;
  border: none;
  text-transform: uppercase;
  font-weight: normal;
  font-size: 16px;
  transition: 0.3s background;
  letter-spacing: 1px;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.cart-blank a.wc-backward:hover {
  background: var(--green-color);
}

.add-to-cart-modal ul {
  margin: 0;
  margin-bottom: 1.5rem;
  padding: 0;
  list-style: none;
}

.add-to-cart-modal ul a {
  text-decoration: none !important;
  color: var(--grey-color);
}

.add-to-cart-modal img {
  max-width: 120px;
  margin-right: 20px;
  margin-left: 20px;
}

.add-to-cart-modal .buttons {
  display: flex;
  justify-content: flex-end;
}

.add-to-cart-modal .buttons a {
  display: none;
}

.add-to-cart-modal .buttons a {
  text-decoration: none !important;
  padding: 10px 20px;
  margin-right: 10px;
  background: var(--green-color);
  color: #fff !important;
  border: none;
  border-radius: 5px;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.add-to-cart-modal .buttons a.checkout {
  background: var(--grey-color);
  margin: 20px auto;
  display: block !important;
  width: 100%;
  text-align: center;
  transition: 0.3s background;
}

.add-to-cart-modal .buttons a.checkout:hover {
  background: var(--green-color);
}

.add-to-cart-modal .woocommerce-mini-cart__total span {
  float: right;
}

.add-to-cart-modal span.codice_prodotto {
  font-size: 12px !important;
  line-height: 0px !important;
  font-weight: 300;
  letter-spacing: 0;
  text-transform: inherit;
}

li.mini_cart_item {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 20px;
}

li.mini_cart_item .product-meta {
  font-size: 13px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 20px;
}

li.mini_cart_item span.name_prodotto_cart {
  font-size: 14px !important;
  line-height: 22px !important;
  letter-spacing: 0 !important;
}

li.mini_cart_item .product-meta span {
  font-size: 15px;
}

li.mini_cart_item .quantity {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  margin-top: 3px !important;
}

li.mini_cart_item .quantity span.amount {
  margin-left: 5px;
}
li.mini_cart_item dt {
  font-size: 12px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 0px;
  font-weight: 600;
  display: inline;
  float: left;
  margin-right: 7px;
}
li.mini_cart_item dd {
  font-size: 12px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 0px;
  font-weight: 400;
  margin: 0px;
}
li.mini_cart_item dd p {
  font-size: 12px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 0px;
  font-weight: 400;
  margin: 0px;
}

#myModal.add-to-cart-modal {
  --cart-panel-bg: #f6f6fa;
  --cart-text: #1f1f1f;
  --cart-muted: #6d7376;
  --cart-border: #e2e5e8;
}

#myModal .modal-body {
  padding: 18px 18px 0;
}

#myModal .woocommerce-mini-cart {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 0;
}

#myModal li.mini_cart_item {
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--cart-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  grid-template-columns: 24px 104px minmax(0, 1fr);
  margin: 0;
  padding: 14px;
}

#myModal li.mini_cart_item .remove {
  align-items: center;
  color: var(--cart-muted) !important;
  display: flex;
  height: 24px;
  justify-content: center;
  margin-top: 30px;
  width: 24px;
}

#myModal li.mini_cart_item .remove:hover {
  color: #111 !important;
}

#myModal li.mini_cart_item .product-thumbnail {
  align-items: center;
  background: #fafafa;
  border-radius: 6px;
  display: flex;
  justify-content: center;
  min-height: 88px;
  overflow: hidden;
}

#myModal li.mini_cart_item .product-thumbnail a {
  display: flex;
}

#myModal .add-to-cart-modal img,
#myModal li.mini_cart_item img {
  display: block;
  height: auto;
  margin: 0;
  max-height: 88px;
  max-width: 100%;
  object-fit: contain;
}

#myModal li.mini_cart_item .product-meta {
  color: var(--cart-text);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.45;
  min-width: 0;
  text-transform: none;
}

#myModal li.mini_cart_item span.name_prodotto_cart {
  color: var(--cart-text);
  display: block;
  font-size: 14px !important;
  font-weight: 700;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  margin-bottom: 7px;
  text-transform: uppercase;
}

#myModal li.mini_cart_item dl.variation {
  color: var(--cart-muted);
  display: grid;
  gap: 2px 8px;
  grid-template-columns: auto 1fr;
  margin: 0 0 10px;
}

#myModal li.mini_cart_item dt,
#myModal li.mini_cart_item dd,
#myModal li.mini_cart_item dd p {
  color: var(--cart-muted);
  float: none;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.45;
  margin: 0;
  text-transform: uppercase;
}

#myModal li.mini_cart_item dt {
  color: var(--cart-text);
}

#myModal li.mini_cart_item .quantity {
  align-items: baseline;
  color: var(--cart-text);
  display: flex;
  font-size: 18px;
  gap: 6px;
  line-height: 1.2;
  margin-top: 8px !important;
}

#myModal li.mini_cart_item .quantity .amount {
  font-size: 20px;
  font-weight: 500;
  margin-left: 0;
}

#myModal .woocommerce-mini-cart__total {
  align-items: center;
  border-top: 1px solid var(--cart-border);
  color: var(--cart-text);
  display: flex;
  font-size: 15px;
  font-weight: 700;
  justify-content: space-between;
  margin: 18px 18px 0;
  padding: 18px 0 0;
}

#myModal .woocommerce-mini-cart__total span {
  float: none;
  font-weight: 500;
}

#myModal .woocommerce-mini-cart__buttons {
  margin: 18px;
}

#myModal .woocommerce-mini-cart__buttons a.checkout {
  border-radius: 5px;
  font-size: 15px;
  margin: 0 !important;
  padding: 14px 20px;
}

/*myModal*/
#myModal .modal-dialog {
  max-width: 500px !important;
  width: calc(100% - 20px);
  height: 100vh;
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  margin: 0;
}

#myModal .modal-dialog .modal-header {
  border-bottom: 1px solid #ccc !important;
  text-align: center;
  background: #fff;
}

#myModal .modal-dialog .modal-header p {
  font-size: 18px;
  text-transform: uppercase;
  text-align: center;
  margin: 0;
  width: 100%;
}

#myModal .modal-dialog .modal-content {
  border-radius: 20px 0px 0px 20px;
  background: #f4f4f9;
  padding: 0px 0px 50px 0px !important;

  min-height: 100vh;
}

#myModal .woocommerce-mini-cart__empty-messages {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
}

#myModal .woocommerce-mini-cart__empty-messages .round {
  padding: 45px 25px;
  border-radius: 50%;
  background: #fff;
}

#myModal .widget_shopping_cart_content {
  height: 100%;
}

#myModal
  .woocommerce-mini-cart__empty-messages
  p.woocommerce-mini-cart__empty-message {
  font-weight: 600;
  font-size: 22px;
  margin: 40px 0px;
  color: #000;
  height: 100%;
}

a.iconic-woothumbs-fullscreen,
a.iconic-woothumbs-play {
  background: #fff !important;
  padding: 6px;
  border-radius: 25px;
}

.iconic-woothumbs-images-wrap
  .iconic-woothumbs-fullscreen
  svg
  path:not(:last-child) {
  stroke: #000 !important;
}

.iconic-woothumbs-images-wrap .iconic-woothumbs-fullscreen svg path:last-child {
  stroke-width: 2px !important;
  stroke: #000 !important;
}

.iconic-woothumbs-images-wrap .iconic-woothumbs-play svg path {
  fill: #000 !important;
}

.iconic-woothumbs-play {
  left: 12px !important;
  right: inherit !important;
}

.iconic-woothumbs-play svg {
  height: 24px !important;
  width: 24px !important;
}

.iconic-woothumbs-fullscreen svg {
  height: 22px !important;
  width: 24px !important;
}

.woocommerce-product-gallery__image a {
  pointer-events: none;
  cursor: default;
}

li.tc-mode-color {
  display: flex !important;
  margin-bottom: 10px !important;
}

span.tc-label-wrap span.radio-image {
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0px !important;
}

select.tmcp-select {
  padding: 7px 15px !important;
  width: 180px !important;
  background: #fff !important;
}

.radio-image-label,
.checkbox-image-label {
  font-weight: 400 !important;
  padding: 1em 0px 0px 0px;
  font-size: 15px;
}

li.tc-active {
  border: 1px solid #ccc;
  border-radius: 5px;
}

.tc-element-inner-wrap .tc-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  align-items: center !important;
}

.tc-element-inner-wrap .tc-row label.tc-cell {
  display: block;
  width: auto;
  max-width: fit-content;
  padding-right: 0px;
}

.tc-element-inner-wrap .tc-row .tc-element-container {
  display: block;
  width: auto;
  max-width: fit-content;
  padding: 0px;
}

#front_content button,
#press button,
button.more_press {
  background: var(--grey-color-tabs);
  color: #fff;
  border: none;
  border-radius: 5px;
  display: block;
  margin: 3rem auto;
  font-size: 16px;
  line-height: 20px;
  padding: 16px 25px;
  transition: 0.3s background;
}

#press button,
button.more_press:hover {
  text-transform: uppercase;
}

#front_content button:hover,
#press button:hover,
button.more_press:hover {
  background: var(--green-color);
}

.emilia_banner,
.default_banner {
  display: none;
}

.marq_aqua {
  color: var(--green-color);
}

#front_video .overlay {
  width: 100%;
  height: 100%;
  position: relative;
  color: #ffffff;
  /* Цвет текста */
  font-size: 24px;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

#front_video .overlay .wrap {
  position: absolute;
  bottom: 50px;
  right: 50px;
  display: flex;
  flex-direction: column;
}

#front_video .bannerxl,
#video-desc .bannerxl {
  font-size: 60px;
  line-height: 65px;
}

#front_video .bannerl,
#video-desc .bannerl {
  line-height: 40px;
}

#front_video .bannersm,
#video-desc .bannersm {
  font-size: 15px;
  line-height: 26px;
}

#video-desc .bannersm {
  color: var(--main-color);
}

#front_video .bannernorm,
#video-desc .bannernorm {
  letter-spacing: 1px;
}

#front_video .bannernormale,
#video-desc .bannernormale {
  letter-spacing: 1px;
  font-size: 28px;
  line-height: 40px;
}

#front_video .bannernormale {
  line-height: 50px !important;
  font-weight: 300;
}

#front_video a {
  color: #fff !important;
  text-decoration: none !important;
}

#video-desc a {
  color: var(--grey-color) !important;
  text-decoration: none !important;
}

#front_video span.links,
#video-desc span {
  padding-right: 10px;
}

#front_video span.link1,
#front_video span.link2,
#video-desc span.link1,
#video-desc span.link2 {
  cursor: pointer;
}

#front_video span.old-price,
#video-desc span.old-price {
  font-size: 30px;
  text-decoration: line-through;
}

#front_video span.new-price,
#video-desc span.new-price {
  font-size: 36px;
  color: #57bdc6;
  margin-left: 10px;
  font-weight: 700;
}

.over-stripe {
  position: absolute;
  background: #c50511;
  width: 100%;
  filter: drop-shadow(0px 0px 22.0000057220459px #000);
  transform: rotate(30deg);
  right: -20rem;
  top: 0rem;
}

.over-stripe2 {
  position: absolute;
  background: #c50511;
  width: 100%;
  filter: drop-shadow(0px 0px 22.0000057220459px #000);
  transform: rotate(12deg);
  right: -20rem;
  top: 0rem;
}

.overlay {
  position: relative;
  overflow: hidden;
}

.scrolling-text {
  white-space: nowrap;
  font-size: 24px;
  animation: scroll 5s linear infinite;
  color: #000;
  padding: 4px;
  font-weight: bold;
  text-shadow: none;
}

.scrolling-text span {
  color: #fff;
}

@keyframes scroll {
  0% {
    transform: translateX(33%);
  }

  100% {
    transform: translateX(40%);
  }
}

.bf_banner {
  background: #c50511;
  color: #000;
  text-shadow: none;
  font-size: 24px;
  padding: 10px;
  width: fit-content;
}

.bf_banner span {
  color: #fff;
}

select.select-menu {
  padding: 7px 15px;
  background: #fff !important;
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAAyCAQAAABreDolAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEMEY0NkU3OTNFRjAxMUUzOUIwMEI0MDA0MzhBQjkzQSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEMEY0NkU3QTNFRjAxMUUzOUIwMEI0MDA0MzhBQjkzQSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQwRjQ2RTc3M0VGMDExRTM5QjAwQjQwMDQzOEFCOTNBIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQwRjQ2RTc4M0VGMDExRTM5QjAwQjQwMDQzOEFCOTNBIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VmemegAAAFxJREFUWMPt0rENgDAMRNE/D6NlgmQDr8gyhAIQSKFBcYW+rvFd8Sqz9k5ukJSUlJSU/D1JvIwxR45owCwJ7TE0yCChnrUeNYOEwka5Sg4Jy3366pKSkpKSkt+zA9QqAQFi9Y6EAAAAAElFTkSuQmCC') !important;
  background-position: right center !important;
  background-repeat: no-repeat !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  border-radius: 0;
  text-transform: uppercase;
  width: 350px;
  letter-spacing: 1px;
}

#form_prodotto {
  display: none;
}

.show {
  display: block;
}

select.select-menu option {
  padding: 7px 15px !important;
}

.icons_caa i {
  font-size: 36px;
  margin-right: 10px;
  color: var(--grey-color);
}

.icons_caa i:hover {
  color: var(--green-color);
}

iframe.maps_caa {
  width: 100%;
  min-height: 600px;
}

/*Search*/
span.find-icon {
  cursor: pointer;
  display: flex;
  align-items: center;
}

.search-overlay {
  align-items: center;
  background: rgba(15, 17, 18, 0.68);
  backdrop-filter: blur(14px);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 10000040;
}

.search-overlay-panel {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.26);
  max-width: min(720px, calc(100vw - 32px));
  padding: 58px 34px 34px;
  position: relative;
  width: 100%;
}

.search-overlay-close {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  display: flex;
  height: 40px;
  justify-content: center;
  padding: 0 !important;
  position: absolute;
  right: 16px;
  top: 14px;
  width: 40px;
  z-index: 2;
}

.search-overlay-close span,
.search-overlay-close span:before {
  background: #1f1f1f;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  width: 22px;
}

.search-overlay-close span {
  transform: rotate(45deg);
}

.search-overlay-close span:before {
  transform: rotate(90deg);
}

form.searchik {
  position: static;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: stretch;
  padding: 0px;
  width: 100%;
}

form.searchik label {
  display: block;
  flex: 1;
  margin: 0;
  min-width: 0;
}

form.cart {
  margin-top: 12px;
}

.container-form {
  max-width: 800px;
  margin: 0px auto;
}

form.searchik input,
form.search_mobile input,
form.search-form input {
  height: 64px;
  padding: 14px 22px;
  border: 1px solid #d7dcde;
  border-radius: 6px !important;
  font-size: 18px;
  line-height: 1.2;
  width: 100%;
}

form.searchik button,
form.search_mobile button,
form.search-form input.search-submit {
  height: 64px;
  margin: 0px;
  background: #1f1f1f;
  transition: 0.3s background;
  padding: 0 !important;
  border: 0px;
  border-radius: 6px !important;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1px;
  width: 64px;
}

form.searchik button {
  align-items: center;
  display: flex;
  flex: 0 0 64px;
  justify-content: center;
  margin-left: 10px;
}

form.searchik button svg {
  fill: none;
  height: 26px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.8;
  width: 26px;
}

form.searchik button:hover,
form.search_mobile button:hover,
form.search-form input.search-submit:hover {
  background: #018692;
}

body.search-overlay-open {
  overflow: hidden;
}

@media (max-width: 575px) {
  .search-overlay {
    padding: 18px;
  }

  .search-overlay-panel {
    padding: 56px 18px 22px;
  }

  form.searchik {
    gap: 8px;
  }

  form.searchik input {
    font-size: 16px;
    height: 56px;
    padding: 12px 14px;
  }

  form.searchik button {
    flex-basis: 56px;
    height: 56px;
    margin-left: 0;
    width: 56px;
  }

  form.search_mobile {
    padding: 8px 15px;
    display: flex;
  }

  form.search_mobile input {
    height: 50px;
    border-radius: 0 !important;
  }

  form.search_mobile button {
    height: 50px;
    padding: 15px !important;
    border-radius: 0 !important;
    width: auto;
  }

  form.search-form input,
  form.search-form input.search-submit {
    margin-top: 15px;
  }
}

ul#Language {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: absolute;
  right: calc(((100vw - 1428px) / 2) + 90px);
  background: #fff;
  min-width: 46px;
  max-height: 44px;
  overflow: hidden;
  padding: 4px 7px;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: none;
  transition:
    max-height 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease;
  z-index: 10000;
}

ul#Language li {
  display: block;
  margin-right: 0;
  padding: 3px 0;
  transition: 0.2s opacity;
  opacity: 0;
}

ul#Language li.current-language-menu-item {
  display: block;
  order: -1;
  margin-right: 0;
  opacity: 1;
  pointer-events: none;
}

ul#Language li a {
  justify-content: center;
  min-height: 26px;
}

ul#Language:hover {
  max-height: 260px;
  border-color: var(--light-grey-color);
  box-shadow: 1px 1px 10px var(--light-grey-color);
}

ul#Language:hover li {
  display: block;
  opacity: 1;
}

.account-link {
  align-items: center;
  gap: 10px;
}

.desktop-language-toggle {
  align-items: center;
  background: transparent !important;
  border: 0;
  border-radius: 8px;
  color: #1f1f1f !important;
  cursor: pointer;
  display: flex;
  height: 42px;
  justify-content: center;
  margin: 0;
  padding: 0 !important;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
  width: 42px;
}

.desktop-language-toggle:hover {
  background: rgba(1, 134, 146, 0.08);
  color: #018692 !important;
  transform: translateY(-2px);
}

.desktop-language-toggle-flag {
  align-items: center;
  display: flex;
  height: 26px;
  justify-content: center;
  line-height: 1;
  transition: transform 0.18s ease;
  width: 34px;
}

.desktop-language-toggle-flag .mcraft-language-flag {
  border-radius: 2px;
  box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.08);
  display: block;
  height: 26px;
  width: 26px;
}

.desktop-language-toggle:hover .desktop-language-toggle-flag {
  transform: scale(1.08);
}

.desktop-account-icon {
  align-items: center;
  color: #1f1f1f !important;
  display: flex;
  height: 42px;
  justify-content: center;
  border-radius: 8px;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
  width: 42px;
}

.desktop-account-icon:hover {
  background: rgba(1, 134, 146, 0.08);
  color: #018692 !important;
  transform: translateY(-2px);
}

.desktop-search-icon {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  color: #1f1f1f !important;
  cursor: pointer;
  display: flex;
  height: 42px;
  justify-content: center;
  margin: 0;
  padding: 0 !important;
  border-radius: 8px;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
  width: 42px;
}

.desktop-search-icon:hover {
  background: rgba(1, 134, 146, 0.08) !important;
  color: #018692 !important;
  transform: translateY(-2px);
}

.desktop-search-icon svg,
.desktop-account-icon svg {
  fill: none;
  height: 26px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.8;
  width: 26px;
}

.desktop-header-cart {
  align-items: center;
  color: #1f1f1f;
  display: flex;
  height: 42px;
  justify-content: center;
  margin: 0;
  padding: 0 !important;
  position: relative;
  border-radius: 8px;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
  width: 42px;
}

.desktop-header-cart:hover {
  background: rgba(1, 134, 146, 0.08) !important;
  color: #018692;
  transform: translateY(-2px);
}

.desktop-language-toggle:focus-visible,
.desktop-search-icon:focus-visible,
.desktop-account-icon:focus-visible,
.desktop-header-cart:focus-visible {
  outline: 2px solid rgba(1, 134, 146, 0.45);
  outline-offset: 2px;
}

.desktop-header-cart svg {
  fill: none;
  height: 26px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.8;
  width: 26px;
}

.desktop-header-cart-wheel {
  fill: currentColor;
  stroke: none;
}

.desktop-header-cart .count {
  align-items: center;
  background: #ffb000;
  border-radius: 999px;
  color: #111;
  display: flex;
  font-size: 11px;
  font-weight: 700;
  height: 19px;
  justify-content: center;
  line-height: 1;
  min-width: 19px;
  padding: 0 3px;
  position: absolute;
  right: -6px;
  top: -2px;
}

.language-popup {
  align-items: center;
  background: rgba(15, 17, 18, 0.52);
  backdrop-filter: blur(8px);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 10000045;
}

.language-popup-panel {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.24);
  max-width: min(520px, calc(100vw - 32px));
  padding: 56px 22px 22px;
  position: relative;
  width: 100%;
}

.language-popup-close {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  display: flex;
  height: 38px;
  justify-content: center;
  padding: 0 !important;
  position: absolute;
  right: 10px;
  top: 10px;
  width: 38px;
}

.language-popup-close span,
.language-popup-close span:before {
  background: #1f1f1f;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  width: 20px;
}

.language-popup-close span {
  transform: rotate(45deg);
}

.language-popup-close span:before {
  transform: rotate(90deg);
}

.language-popup-title {
  color: #1f1f1f;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: 14px !important;
  text-transform: uppercase;
}

.language-popup-actions {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.language-popup-action {
  align-items: center;
  border: 1px solid #d7dcde;
  border-radius: 7px;
  color: #1f1f1f !important;
  display: flex;
  gap: 9px;
  min-height: 46px;
  padding: 10px 12px;
  text-decoration: none !important;
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}

.language-popup-action:hover,
.language-popup-action.is-current {
  border-color: #018692;
  box-shadow: inset 0 0 0 1px #018692;
  transform: translateY(-1px);
}

.language-popup-flag {
  align-items: center;
  background: #f4f6f7;
  border-radius: 4px;
  color: #182124;
  display: inline-flex;
  height: 26px;
  justify-content: center;
  min-width: 38px;
  padding: 0;
}

.language-popup-flag .mcraft-language-flag {
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
  display: block;
  height: 20px;
  width: 30px;
}

.language-popup-label {
  font-size: 13px;
  line-height: 1.2;
}

body.language-popup-open {
  overflow: hidden;
}

/*404*/
.error-404 a {
  text-decoration: none !important;
}

.error-404 button {
  font-size: var(--main-color);
  background: var(--green-color);
  color: #fff;
  border-radius: 25px;
  border: none;
  text-transform: uppercase;
  font-weight: normal;
  line-height: 20px;
  padding: 16px 32px;
  transition: 0.3s background;
  margin-bottom: 20px;
}

.error-404 button.gr {
  background: var(--grey-color);
}

.error-404 button:hover {
  background: var(--grey-color);
}

.error-404 button.gr:hover {
  background: var(--green-color);
}

ul.woocommerce-breadcrumb {
  display: inline-flex;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-direction: row;
  flex-wrap: wrap;
}

/*GPS*/
.gps button.transparent {
  background: transparent;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 25px;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 16px;
  line-height: 20px;
  padding: 16px 32px;
  display: block;
  text-decoration: none;
  transition: 0.3s background;
}

.gps button.transparent:hover {
  background: var(--green-color);
}

.gps #intro p,
.gps .banner p,
.gps .info p {
  font-size: 18px;
  line-height: 28px;
}

.gps h2 {
  font-size: 36px;
  line-height: 46px;
}

.gps span.title {
  display: block;
  font-size: 18px;
  font-weight: 600;
}

.gps svg {
  font-size: 50px;
  transition: transform 0.5s;
}

.gps svg:hover {
  transform: scale(0.8);
}

.gps .banner,
.gps .banner p,
.gps .banner h2 {
  color: #fff;
}

.gps .banner {
  min-height: 700px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

#front_video .bannerl h2,
#video-desc .bannerl h2 {
  line-height: 40px;
  font-size: 24px;
}

/*DonnoDelivery*/
.donnodelivery .bg-blue {
  background: #f3f5fa;
  border-radius: 5px;
}

.donnodelivery #cta_block .background {
  min-height: 500px !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  border-radius: 5px !important;
}

.contrast h1,
.contrast h2,
.contrast h3,
.contrast h4,
.contrast h5,
.contrast h6 {
  color: #000 !important;
}

.contrast p,
.contrast body {
  color: #000 !important;
}

.donnodelivery p.pretitle {
  font-size: 25px;
  line-height: 30px;
  font-weight: 400;
}

.donnodelivery h2 {
  font-size: 35px;
  line-height: 42px;
  font-weight: 700;
}

.donnodelivery p {
  font-size: 20px;
  line-height: 24px;
}

.donnodelivery #perche .inner {
  max-width: 320px;
}

.donnodelivery #perche .inner p {
  font-size: 18px;
  line-height: 22px;
}

.donnodelivery .nomero {
  font-size: 40px;
  line-height: 40px;
  font-weight: 700;
  margin-right: 16px;
}

.donnodelivery button.white {
  background: #fff;
  border: 2px solid #018692 !important;
  padding: 12px 32px;
  font-size: 16px;
  line-height: 20px;
  transition: 0.3s border;
  color: #000;
  border-radius: 3px;
}

.donnodelivery button.whiteround {
  background: #fff;

  padding: 12px 32px;
  font-size: 24px;
  line-height: 32px;
  color: #000;
  border-radius: 70px;
  transition: 0.3s border;
}

.donnodelivery button.white:hover,
.donnodelivery button.whiteround:hover {
  border: 2px solid #000 !important;
}

.donnodelivery #info .desc p {
  font-size: 18px !important;
  line-height: 22px !important;
}

.donnodelivery #info img {
  border-radius: 5px;
}

.donnodelivery p.small {
  font-size: 16px;
  line-height: 20px;
}

/*Form Compleanno*/
#compleanno form .titolo_form {
  font-size: 24px;
  line-height: 30px;
  font-weight: 500;
  margin-bottom: 5px;
}

#compleanno form .preheader_form {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  margin-bottom: 12px;
}

#compleanno img.salute {
  position: absolute;
  top: 0px;
  left: 0px;
}

#compleanno img.background {
  position: absolute;
  top: 0px;
  right: 0px;
}

#compleanno img.ball {
  position: absolute;
  right: 10px;
  bottom: 0px;
  width: 100px;
}

#compleanno .modal-content {
  position: relative;
  border: 0;
}

#compleanno button.close {
  z-index: 999;
}

#compleanno .content-top {
  position: relative;
}

#compleanno .footer_form {
  background: #475050;

  margin-bottom: 60px;
  padding: 1.5rem;
  align-items: center;
}

#compleanno .footer_form .description {
  margin-left: 2rem;
}

#compleanno .footer_form p {
  color: #fff;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 0;
}

#compleanno hr {
  background-color: #7b8283;
  border: 0;
  height: 3px;
  width: 50%;
  margin: 1.5em auto 1.5em;
}

/*Gift button*/
.cta_gift {
  position: fixed;
  left: 3%;
  bottom: 3%;
  padding: 12px;
  background: #018692;
  border-radius: 50%;
  overflow: hidden;
  animation: pulse 2s infinite;
}

img.gifts {
  width: 36px;
}

@keyframes pulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(1, 134, 146, 0.7);
    /* Тень вашего цвета */
  }

  100% {
    transform: scale(1);
    box-shadow: 0 0 0 20px rgba(1, 134, 146, 0);
    /* Тень вашего цвета */
  }
}

/*Footer Vantaggi*/
#vantaggi_footer {
  border-top: 2px solid #f3f5fa;
}

#vantaggi_footer p.pretitle {
  font-size: 20px;
  line-height: 26px;
  font-weight: 400;
}

#vantaggi_footer p.title {
  font-size: 30px;
  line-height: 36px;
  font-weight: 700;
}

#vantaggi_footer .list p.title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
}

#vantaggi_footer .list .wrap {
  border: 2px solid #f3f5fa;
  border-radius: 16px;
  height: 100%;
  max-width: 400px;
}

#vantaggi_footer .list .wrap.active {
  background: #f3f5fa;
}

#vantaggi_footer .list p {
  font-size: 15px;
  line-height: 20px;
}

#vantaggi_footer .m400 {
  max-width: 400px;
}

.message__icon {
  background-color: #f4faf6;
  color: #00a046;
  width: fit-content !important;
  margin: 0px auto;
  border-radius: 50%;
  padding: 12px;
}

p.success_form {
  font-size: 16px;
}

.message__icon svg {
  width: 37px;
  height: 37px;
}

.black-friday-mobile {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  min-height: 70px !important;
}

.black-friday {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  min-height: 60px !important;
}

/*Banner Category*/
.banner-personal p {
  font-size: 16px;
  line-height: 22px;
}

.banner-personal p.titole {
  font-size: 30px;
  line-height: 38px;
  color: #262626;
  font-weight: bold;
  margin-bottom: 18px;
}

.banner-personal p.titole span {
  color: #018692;
}

.banner-personal img {
  border-top-right-radius: 7px;
  border-bottom-right-radius: 7px;
}

.category-consult-banner .banner-personal {
  min-height: 0;
}

.category-consult-banner__media {
  align-self: stretch;
  aspect-ratio: 1200 / 732;
  overflow: hidden;
}

.category-consult-banner__image {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.banner-personal svg {
  fill: #fff;
}

.color-3 {
  background: linear-gradient(to bottom right, #e3ecf1, #fff5e0);
  border-radius: 7px;
}

.banner-personal button {
  background: transparent;
  color: #262626;
  padding: 0px;
  border-radius: 7px;
  font-weight: 500;
  text-transform: uppercase;
  border: none !important;
}

.single .banner-personal button {
  font-size: 14px !important;
}

.banner-personal button .plus {
  background: #262626;
  border-radius: 50%;
  display: inline-block;
  width: 23px;
  height: 23px;
  margin-right: 4px;
  color: #fff !important;
  font-size: 18px;
  line-height: 0px;
  border: 2px solid #262626;
  padding: 4px;
  margin-left: 10px;
}

#popupNewsLetter img.logo {
  max-width: 150px;
  margin: 16px auto;
  display: block;
}

#popupNewsLetter .wrapper p {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  margin-bottom: 1.25rem !important;
}

#popupNewsLetter p.title {
  font-size: 32px;
  line-height: 40px;
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 1.5rem !important;
}

#popupNewsLetter form.single_bike_form {
  background: transparent;
  max-width: 500px;
}

#popupNewsLetter .modal-content {
  padding: 0;
}

#popupNewsLetter .modal-body {
  padding: 0;
}

#popupNewsLetter .btn-close {
  position: absolute;
  right: 12px;
  top: 12px;
}

#popupNewsLetter {
  align-content: center;
}

.single ol {
  padding-left: 0 !important;
}

/*New Prodotto*/
.mods h2 {
  font-weight: 700;
}

.mods h3 {
  font-size: 26px;
  line-height: 32px;
}

.mods .wrap {
  border-radius: 30px;
  min-height: 500px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  color: #fff;
  position: relative;
  overflow: hidden;
}

.mods .wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.75), transparent);
  z-index: 1;
  pointer-events: none;
}

.mods .wrap p {
  color: #fff;
  font-size: 16px;
  line-height: 20px;
  font-weight: normal;
  max-width: 80%;
  z-index: 2;
  position: relative;
}

.mods .wrap p.title {
  font-size: 26px;
  line-height: 32px;
  font-weight: 300;
  max-width: 100%;
}

.mods .wrap .plus {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 13px;
  height: 25px;
  background: #262626;
  padding: 2px 8px;
  border-radius: 50%;
  cursor: pointer;
}

.mods .wrap .plus svg {
  fill: #fff;
  margin-top: -4px;
}

.mods .swiper-button-prev {
  position: absolute;
  right: 60px;
  top: 35px;
  left: auto;
  border-radius: 50%;
  border: 2px solid #d6d6d7;
  color: #6e6e6f;
  padding: 16px;
  height: 36px;
  background: #d6d6d7;
  z-index: 999;
}

.mods .swiper-button-next {
  position: absolute;
  right: 0px;
  top: 35px;
  left: auto;
  border-radius: 50%;
  border: 2px solid #d6d6d7;
  color: #6e6e6f;
  padding: 16px;
  height: 36px;
  background: #d6d6d7;
  z-index: 999;
}

.mods .swiper-button-next,
.mods .swiper-button-prev {
  top: auto;
  bottom: 0px;
}

.mods .swiper-button-next:after,
.mods .swiper-button-prev:after {
  font-size: 16px !important;
  font-weight: bolder !important;
  line-height: 20px;
}

/*Popup*/
.modal.edition-list strong {
  color: #008692;
}

.modal.edition-list button.btn-close {
  right: 16px;
  position: absolute !important;
  top: 16px;
  font-size: 20px;
  opacity: 1;
  box-shadow: none !important;
  outline: none !important;
  z-index: 999;
}

.modal.edition-list p.title {
  font-size: 18px;
  line-height: 22px;
  font-weight: 700;
}

.modal.edition-list p.pretitle {
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
}

.modal.edition-list .modal-dialog {
  max-width: 100%;
}

.modal.edition-list .modal-content {
  max-width: 700px;
  padding: 30px 0 0;
  margin: 0px auto;
}

.modal.edition-list .modal-body {
  padding: 0;
}

#edition .regalo-wrapper {
  background: linear-gradient(45deg, #007bff, #e600ff);
  padding: 3px;
  border-radius: 10px;
  display: inline-block;
  position: relative;
  width: fit-content;
}

#edition .regalo {
  border-radius: 7px;
  display: flex;
  flex-direction: column;
  position: relative;
  color: #fff;
}

#edition .regalo p,
.regalo {
  color: #fff;
  font-size: 15px;
  line-height: 20px;
}

#edition .gift-img {
  position: absolute;
  top: -24px;
  right: 0;
  width: 48px;
}

.hero-banner {
  position: relative;
  background-color: #f0f0f0;
  min-height: 750px;
  border-radius: 0 0 12px 12px;
  overflow: hidden;
}

.hero-banner > .hero-media {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.hero-banner > .hero-media > .hero-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 100% !important;
  max-width: none;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.scroll-indicator {
  position: absolute !important;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

.scroll-indicator span {
  display: block;
  width: 24px;
  height: 24px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  animation: scrollDown 2s infinite;
  opacity: 0.8;
}

@keyframes scrollDown {
  0% {
    transform: translateY(0) rotate(-45deg);
    opacity: 0;
  }

  30% {
    opacity: 1;
  }

  60% {
    transform: translateY(10px) rotate(-45deg);
    opacity: 1;
  }

  100% {
    transform: translateY(20px) rotate(-45deg);
    opacity: 0;
  }
}

.hero-banner .text-content {
  position: relative;
  z-index: 1;
  color: white;
}
.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.4) 40%,
    rgba(0, 0, 0, 0.7) 100%
  );
}

.hero-titole {
  font-size: 36px;
  line-height: 40px;
}

.hero-pretitolo {
  font-size: 18px;
  line-height: 22px;
}

a.scroll-to-content {
  text-decoration: none !important;
}

.hero-banner p {
  color: #fff !important;
}

.hero-banner {
  position: relative;
  min-height: 750px;
  border-radius: 0 0 12px 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: end;
  align-items: center;
  color: #fff !important;
}
p#billing_state_field {
  width: 50%;
}

/*Adaptive**/
@media (max-width: 1428px) {
  #player {
    width: 100%;
    height: calc(100vw * 9 / 16) !important;
  }

  .navother {
    margin-right: 20px;
  }

  #video-overlay {
    height: calc(100vw * 9 / 16);
  }

  .video-wrap {
    padding: 0px !important;
  }

  ul#Language {
    right: 90px;
  }

  .mods .wrap {
    min-height: calc((100vw / 5) / 0.47) !important;
  }
}

@media (max-width: 1367px) {
  .top_menu_bicy p.tit {
    font-size: 14px;
  }

  .top_menu_bicy p.weight {
    font-size: 14px;
  }

  .top_menu_bicy p.head {
    font-size: 18px;
  }

  .top_menu_bicy p.preahead {
    font-size: 13px;
  }
}

@media (max-width: 1200px) {
  iframe.youtube_embed {
    width: 100%;
    height: calc(100vw / 2 / 16 * 9);
  }

  .configurazioni_bike ul.bici_configurazioni_accessori li {
    width: 100%;
  }

  .configurazioni_bike ul.bici_configurazioni_accessori li:nth-child(even) {
    float: none;
  }

  .configurazioni_bike ul.bici_configurazioni_accessori li:nth-child(odd) {
    float: none;
  }

  header.site-header {
    border-bottom: 1px solid var(--light-grey-color);
    overflow: hidden;
    background: #fff;
    /*     position: fixed;
        top: 0;
        left: 0px;
        z-index: 9999;
        width: -moz-available;
        width: -webkit-fill-available;*/
  }
}

@media (max-width: 1024px) {
  .mods .wrap {
    min-height: calc((100vw / 4) / 0.47) !important;
  }

  .mods .wrap p {
    max-width: 100%;
  }

  .mods .wrap p.title {
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
  }

  .mods h3 {
    font-size: 20px;
    line-height: 22px;
  }
}

@media (max-width: 992px) {
  .hero-overlay {
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.2) 40%,
      rgba(0, 0, 0, 0.4) 100%
    );
  }
  .b24-widget-button-position-bottom-left.b24-widget-button-wrapper {
    display: none;
  }

  .navother {
    margin-right: 80px;
  }

  #masonry-grid li {
    width: calc((100% / 2) - 20px);
  }

  .menu-bar {
    z-index: 1055;
  }

  #comments {
    margin: 0px;
  }

  .scroll-to-top-btn {
    display: none;
    position: fixed;
    bottom: 10px;
    right: 20px;
    width: 36px;
    height: 36px;
    background-color: var(--grey-color);
    color: white;
    border: none;
    border-radius: 50%;
    font-size: 0px !important;
    cursor: pointer;
    padding: 0px !important;
  }
  .online-chat-root-Verbox #supportTrigger {
    bottom: 10px !important;
  }
  .scroll-to-top-btn svg {
    margin-top: -2px;
    height: 16px;
    width: 16px;
  }

  ul#Language {
    right: 150px;
  }

  .donnodelivery .sm_img img {
    max-width: 120px;
  }

  .iubenda-tp-alert-btn[data-tp-float][data-tp-float="bottom-right"],
  .iubenda-tp-alert-btn[data-tp-float][data-tp-float="top-right"],
  .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"],
  .iubenda-tp-btn[data-tp-float][data-tp-float="top-right"],
  .iubenda-uspr-btn[data-tp-float][data-tp-float="bottom-right"],
  .iubenda-uspr-btn[data-tp-float][data-tp-float="top-right"] {
    bottom: 120px !important;
    left: 10px !important;
    right: inherit !important;
    display: none !important;
    visibility: hidden !important;
  }
  .hero-banner {
    min-height: calc(100vh - 165px);
    border-radius: 0px;
  }
}
@media (max-width: 767px) {
  iframe.youtube_embed {
    width: 100%;
    height: calc(100vw / 16 * 9);
  }

  .spedizione_column {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .card-spedizione:last-child {
    margin-top: 0px !important;
  }

  .card-spedizione {
    border-right: 0px !important;
  }

  .single-videogallery .videoblock .wrap:nth-child(odd) {
    padding-right: 0px !important;
  }

  .single-videogallery .videoblock .wrap:nth-child(even) {
    padding-left: 0px !important;
  }

  .single-videogallery .videoblock .card_video {
    align-self: start;
  }

  .servizi-page .triangle img {
    width: auto;
    margin: 0px auto;
    display: block;
  }

  .servizi-card {
    border-right: 0px;
  }

  .prodotto_menu ul a {
    padding: 14px 12px;
  }

  .descrizione_bike h3,
  .descrizione_bike h2 {
    font-size: 28px;
  }

  #video-overlay .overlay {
    display: none !important;
  }

  .gps .banner {
    min-height: 70vw;
  }

  .cta_gift {
    bottom: 70px;
  }

  .donnodelivery .sm_img img {
    max-width: 120px;
  }
}

@media (max-width: 768px) {
  .bf_banner {
    background: #fff;
    color: #c50511;
    text-shadow: none;
    font-size: 24px;
    font-weight: 600;
    padding: 0px;
  }

  .bf_banner span {
    color: #000;
  }
}

@media (max-width: 700px) {
}

@media (max-width: 620px) {
  form#lead_prodotto .dlForm .caption img {
    width: 140px;
  }
}

@media (max-width: 575px) {
  p#billing_state_field {
    width: 100%;
  }

  .form_single {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
    width: 100vw;
  }

  footer .form_header button {
    font-size: 16px;
  }

  .modal-content {
    padding: 0px 0px 0px 0px;
  }

  img.top_menulogo {
    padding: 15px;
    width: 180px;
  }

  .menu-bar {
    width: 36px;
    height: 36px;
    top: 8.5px !important;
    right: 12px;
    z-index: 1055;
    top: 48.5px !important;
  }

  .home .menu-bar {
    top: 9.5px !important;
  }

  .menu-bar span:before,
  .menu-bar span:after {
    width: 27px;
  }

  .menu-bar span {
    width: 18px;
    left: 4px;
  }

  .navother {
    margin-right: 64px;
  }

  .accordion-body,
  .accordion-button {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  #masonry-grid li {
    width: 100%;
  }

  table.spec td.label {
    text-align: left;
    padding: 6px 10px;
  }

  form#lead_prodotto {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
    width: 100% !important;
  }

  .form-row-first,
  .form-row-last {
    width: 100%;
    display: block;
    float: none;
  }

  #video-overlay {
    top: 55px !important;
  }

  #Modal_ER .modal-content .pro,
  #Modal_Paga .modal-content .pro {
    border-left: 0px;
    border-top: 1px solid #ccc;
  }

  ul#Language {
    height: 55px;
  }

  .lead_form .modal-content {
    padding: 0px !important;
  }

  .woocommerce-breadcrumb a,
  .woocommerce-breadcrumb {
    font-size: 9px;
    line-height: 15px;
    letter-spacing: 0px;
  }

  ul.woocommerce-breadcrumb li {
    margin-top: 0;
  }

  #front_video .bannerxl,
  #video-desc .bannerxl {
    font-size: 32px;
    line-height: 42px;
  }

  #front_video .bannerl h2,
  #video-desc .bannerl h2 {
    line-height: 28px;
    font-size: 20px;
  }

  #front_video span.old-price,
  #video-desc span.old-price {
    font-size: 18px;
  }

  #front_video span.new-price,
  #video-desc span.new-price {
    font-size: 24px;
  }

  #front_video span.links,
  #video-desc span {
    padding-right: 2px;
  }

  .black-friday-mobile {
    min-height: 44px !important;
  }

  form#lead_prodotto .dlForm .caption {
    width: 100%;
  }

  form#lead_prodotto .dlForm .text {
    width: 100%;
  }

  form#lead_prodotto .dlForm .caption img {
    width: 140px;
  }

  .mods .wrap {
    min-height: calc((100vw / 2.5) / 0.47) !important;
  }

  .mods .wrap::before {
    height: 60%;
  }
}

@media (max-width: 500px) {
  .woocommerce-variation-add-to-cart {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 435px) {
  .mobile-menu .spoiler-content p.head {
    font-size: 13px;
  }

  ul#Language {
    right: 130px;
  }

  .banner-personal button {
    font-size: 15px;
  }
}

@media (max-width: 430px) {
  #popup_donnolive .form-bottom p {
    font-size: 12px;
    line-height: 14px;
  }

  #popup_donnolive .form-bottom p.bottom-title {
    font-size: 16px;
  }

  #popup_donnolive .form-bottom .col-4 {
    padding: 0px;
    padding-right: 10px;
  }

  #popup_donnolive .form-bottom .col-4:last-child {
    padding: 0;
  }
}

@media (max-width: 365px) {
  .mobile-menu .spoiler-content p.head {
    font-size: 13px;
  }
}

@media (max-width: 1199px) {
  .mobile-menu-header .menu-bar {
    left: 18px;
    position: absolute;
    right: auto;
    top: 50% !important;
  }

  .home .mobile-menu-header .menu-bar {
    top: 50% !important;
  }

  .mobile-menu-header img.logo_mobile_menu {
    margin: 0;
    padding: 0;
    width: auto;
  }
}

@media (max-width: 575px) {
  .mobile-menu {
    --mobile-menu-header-height: 64px;
  }

  .mobile-menu-header {
    height: 64px;
    padding: 0 22px;
  }

  .mobile-menu .menumobile {
    height: 100vh;
    padding: 20px 28px;
    top: 0;
  }

  .mobile-panel-header {
    margin-bottom: 16px;
    min-height: 50px;
    padding-bottom: 12px;
  }

  .mobile-panel-brand img {
    max-height: 30px;
    max-width: 136px;
  }

  .mobile-menu .mobile-panel-close {
    flex-basis: 50px;
    height: 50px;
    width: 50px;
  }

  .mobile-menu-header .menu-bar {
    flex-basis: 50px;
    height: 50px;
    left: 12px;
    width: 50px;
  }

  .mobile-header-cart {
    height: 64px;
    right: 18px;
    width: 64px;
  }

  .mobile-menu-header .menu-bar span {
    left: 14px;
    top: 50%;
    width: 22px;
  }

  .mobile-menu-header .menu-bar span:before,
  .mobile-menu-header .menu-bar span:after {
    width: 22px;
  }

  .mobile-menu-header img.logo_mobile_menu {
    max-height: 30px;
    max-width: 136px;
  }

  .mobile-menu:before {
    left: var(--mobile-panel-width, 80vw);
    width: calc(100vw - var(--mobile-panel-width, 80vw));
  }
  .mods .wrap p {
    font-size: 14px;
    line-height: 18px;
  }
  .mods .wrap p.title {
    font-size: 18px;
    line-height: 22px;
  }
  #edition .regalo p,
  .regalo {
    font-size: 14px;
    line-height: 18px;
  }
}
