/*
  Theme Name: Gorgonzola
  Author: Egloo
  Author URI: https://egloo.it
  Version: 1.0.0
*/

/* -----------------------------------
==============================================================================
	# FONT
==============================================================================
----------------------------------- */

@font-face {
  font-family: "Circular";
  font-style: normal;
  font-weight: 300;
  src: url(./files/fonts/CircularAir-Light.ttf) format("truetype");
}

@font-face {
  font-family: "Circular";
  font-style: normal;
  font-weight: 400;
  src: url(./files/fonts/CircularStd-Book.otf) format("opentype");
}

@font-face {
  font-family: "Circular";
  font-style: normal;
  font-weight: 500;
  src: url(./files/fonts/CircularStd-Medium.otf) format("opentype");
}

@font-face {
  font-family: "Circular";
  font-style: normal;
  font-weight: 700;
  src: url(./files/fonts/CircularStd-Bold.otf) format("opentype");
}

@font-face {
  font-family: "Recoleta";
  font-style: normal;
  font-weight: 300;
  src: url(./files/fonts/Recoleta-Light.otf) format("opentype");
}

@font-face {
  font-family: "Recoleta";
  font-style: normal;
  font-weight: 400;
  src: url(./files/fonts/Recoleta-Regular.otf) format("opentype");
}

@font-face {
  font-family: "Recoleta";
  font-style: normal;
  font-weight: 500;
  src: url(./files/fonts/Recoleta-Medium.otf) format("opentype");
}

@font-face {
  font-family: "Recoleta";
  font-style: normal;
  font-weight: 600;
  src: url(./files/fonts/Recoleta-SemiBold.otf) format("opentype");
}

@font-face {
  font-family: "Recoleta";
  font-style: normal;
  font-weight: 700;
  src: url(./files/fonts/Recoleta-Bold.otf) format("opentype");
}

@font-face {
  font-family: "Holimount";
  font-style: normal;
  font-weight: 400;
  src: url(./files/fonts/Holimount.otf) format("opentype");
}

/* -----------------------------------
==============================================================================
	# GENERAL
==============================================================================
----------------------------------- */

:root {
  --vh-100: 100vh;
  --full-height: var(--vh-100);
  --site-width: 1196px;

  --ff-normal: "Circular", sans-serif;
  --ff-alternate: "Recoleta", sans-serif;
  --ff-big: "Holimount", sans-serif;

  /* --blue: #004388; */
  --blue: #003577;
  --darkgrey: #3c3c3c;
  --grey: #707070;
  --bg-light: #f8f8f8;

  font-size: 16px;
  line-height: 1.5;
  font-family: var(--ff-normal);
  font-weight: 300;

  color: #3c3c3c;
}

::-moz-selection {
  color: white;
  background: var(--blue);
}

::selection {
  color: white;
  background: var(--blue);
}

body::-webkit-scrollbar {
  width: 0.7rem;
}

body::-webkit-scrollbar-thumb {
  background: var(--blue);
  border-radius: 8px;
}

body {
  position: relative;
}

body::-webkit-scrollbar-track {
  background: white;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

img {
  object-fit: contain;
}

img,
svg,
video,
iframe {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--ff-alternate);
}

a {
  text-decoration: none;
  color: inherit;
}

li {
  list-style: none;
}

p:not(:last-child) {
  margin-bottom: 1.4rem;
}

input,
textarea,
select {
  font-family: var(--ff-normal);
  line-height: 1;
}

a,
select {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.container {
  width: 100%;
  max-width: var(--site-width);
  position: relative;
  margin: 0 auto;
  padding: 0 1.25rem;
}

.back-button {
  display: flex;
}

.back-button a {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  border: 1px solid var(--blue);
  padding: 0 1rem;
  width: auto;
  color: var(--blue);
  font-size: 0.875rem;
  font-weight: 700;
  height: 2.62rem;
  border-radius: 40px;
  text-transform: uppercase;
  transition: all ease-in-out 0.3s;
  z-index: 2;
  line-height: 1.05;
}

.back-button a svg {
  min-width: 1.43rem;
}

.back-button a:hover {
  background-color: var(--blue);
  color: white;
}

.back-button a:hover svg path {
  fill: white;
}

body .loading {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0%;
  background: var(--blue);
  z-index: 999;
}

body .posts-loading {
  opacity: 0.5;
  pointer-events: none;
}

body .posts-loading .loading,
body.home .filter-loading .loading,
body .posts-loading + .archive-list .loading,
body .archive-list.filter-loading .loading {
  -webkit-transition: all 950ms ease;
  -moz-transition: all 950ms ease;
  -o-transition: all 950ms ease;
  transition: all 950ms ease;
  width: 100%;
}

body .filter-loading {
  visibility: visible;
}

main .egloo-pagination {
  position: absolute;
  bottom: -5.55rem;
  right: 1.25rem;
}

main .egloo-pagination ul {
  display: flex;
  justify-content: flex-end;
  gap: 0.2rem;
}

main .egloo-pagination ul li {
  display: grid;
  align-items: center;
  justify-content: center;
}

main .egloo-pagination ul li a.page-numbers,
main .egloo-pagination ul li span {
  height: 2.4rem;
  width: 2.4rem;
  background-color: transparent;
  transition: all 200ms ease-in-out;
  border-radius: 50%;
  text-align: center;
  line-height: 2.4rem;
  color: var(--grey);
}

main .egloo-pagination ul li a.page-numbers:hover,
main .egloo-pagination ul li span.current {
  background-color: var(--blue);
  color: white;
}

main .egloo-pagination ul li a.page-numbers.prev {
  margin-right: 0.3rem;
}

main .egloo-pagination ul li a.page-numbers.next {
  margin-left: 0.3rem;
}

main .egloo-pagination ul li a.page-numbers.prev,
main .egloo-pagination ul li a.page-numbers.next {
  width: auto;
}

main .egloo-pagination ul li a.page-numbers.prev:hover,
main .egloo-pagination ul li a.page-numbers.next:hover {
  background-color: transparent;
}

main .egloo-pagination ul li a.page-numbers.prev svg,
main .egloo-pagination ul li a.page-numbers.next svg {
  position: relative;
  top: 0.7rem;
}

main .egloo-pagination .pagination-numbers {
  display: none;
}

main section .text ul li:before {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  background-color: var(--blue);
  margin-right: 0.75rem;
  display: inline-block;
  border-radius: 50%;
}

main section .text ul li:not(:last-child) {
  margin-bottom: 1.3rem;
}

main section .sharing-buttons {
  padding-top: 0.7rem;
}

main section .sharing-buttons ul.social-icons li a img {
  transition: all 0.3s ease-out;
}

main section .sharing-buttons ul.social-icons li a:hover img {
  scale: 1.2;
}

.section-with-shape {
  position: relative;
}

.eg-shape {
  position: absolute;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
  /* min-width: calc((var(--site-width) - 2.5rem) * 0.75); */
}

.eg-shape svg {
  width: 100%;
  height: auto;
  /* min-width: 1024px; */
}

.eg-shape.shape-position-top {
  bottom: calc(100% - 1px);
  width: calc(100% + 1px);
  margin-left: -0.5px;
}

.eg-shape.shape-position-bottom {
  top: calc(100% - 1px);
}

.eg-shape.shape-position-top-inside {
  top: -1px;
  z-index: 1;
}

.eg-shape.shape-position-bottom-inside {
  bottom: -1px;
  z-index: 1;
}

.texture-path-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg .image {
  position: relative;
  max-width: 100%;
  max-height: 100%;
  min-width: 100%;
  min-height: 100%;
  overflow: hidden;
}

.bg .image video,
.bg .image img {
  position: absolute;
  display: block;
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.bg .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / 30%);
}

.btn {
  font-size: 1rem;
  padding: 0.815em 1.785em;
  border-radius: 100px;
  text-decoration: none;
  font-weight: bold;
  font-family: var(--ff-normal);
  text-transform: uppercase;
  line-height: 1;
  display: inline-block;
  transition: background-color 0.3s ease, color 0.3s ease;
  white-space: nowrap;
  background-color: var(--blue);
  color: white;
  border: 1px solid transparent;
}

.btn:hover {
  background-color: transparent;
  color: var(--blue);
  border-color: var(--blue);
}

.btn.btn-white {
  background-color: white;
  color: var(--darkgrey);
}

.btn.btn-white:hover {
  background-color: var(--blue);
  color: white;
}

.btn.btn-white.btn-hover-border:hover {
  border-color: white;
}

.btn.btn-transparent {
  border-color: white;
  color: white;
}

.btn.btn-transparent:hover {
  background-color: white;
  color: var(--blue);
}

.cta-underline {
  position: relative;
  display: inline-block;
  color: var(--blue);
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.02em;
  font-weight: bold;
  text-decoration: none;
  transition: all 0.3s ease;
}

.cta-underline::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.1em;
  background-color: var(--blue);
  transform: scaleX(1);
  transform-origin: left center;
  transition: all 0.3s ease;
  white-space: nowrap;
}

.cta-underline:hover::after {
  transform: scaleX(0);
}

.cta-underline.cta-u-white {
  color: white;
}

.cta-underline.cta-u-white::after {
  background-color: white;
}

section#usage-conservation-service {
  background-color: var(--blue);
  padding-top: 7rem;
  padding-bottom: 6rem;
  margin-top: 11.5rem;
  margin-bottom: 17.8rem;
}

section#last-conservation-service .columns .column.right .img {
  border-radius: 20px 0 0 20px;
}

section#last-conservation-service {
  padding-top: 0;
  padding-bottom: 8.6rem;
  margin-top: 8.6rem;
  /* margin-bottom: 8.6rem; */
}

.sticky {
  position: fixed;
  z-index: 100;
}

.vh-100 {
  height: var(--vh-100);
}

section .svg-left,
section .svg-right {
  mix-blend-mode: multiply;
}

body.menu-opened,
body.search-opened {
  overflow: hidden;
}

body section#recipe-intro .container a.custom-cta,
section a.custom-cta {
  font-size: 1rem;
  padding: 0.815em 1.785em;
  border-radius: 100px;
  text-decoration: none;
  font-weight: bold;
  font-family: var(--ff-normal);
  text-transform: uppercase;
  line-height: 1;
  display: inline-block;
  transition: background-color 0.3s ease, color 0.3s ease;
  white-space: nowrap;
  background-color: var(--blue);
  color: white;
  border: 1px solid var(--blue);
}

body section#recipe-intro .container a.custom-cta:hover,
section a.custom-cta:hover {
  color: var(--blue);
  background-color: white;
}

section a.custom-cta:after {
  display: none;
}

/* -----------------------------------
==============================================================================
	# HEADER
==============================================================================
----------------------------------- */
body header {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99;
}

header > .container {
  padding-top: 1.375rem;
}

header .flag {
  position: relative;
  width: 100%;
  display: flex;
}

header .flag .green,
header .flag .white,
header .flag .red {
  height: 0.62rem;
}

header .flag .green {
  width: calc(100% / 3);
  background-color: #13793e;
}

header .flag .white {
  width: calc(100% / 3);
  background-color: #ffffff;
}

header .flag .red {
  width: calc(100% / 3);
  background-color: #b70909;
}

header .columns {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .columns .column.left,
header .columns .column.right {
  position: relative;
  z-index: 10;
}

header .columns .column.left .logo {
  display: flex;
  align-items: center;
  gap: 2.12rem;
  color: white;
  max-width: 18rem;
}

header.dark:not(.menu-expanded) .columns .column.left .logo {
  color: var(--blue);
}

body header.search-expanded .columns .column.left .logo,
body header.dark.search-expanded .columns .column.left .logo {
  color: white;
}

header .columns .column.left .logo .logo-dark {
  display: none;
}

header.dark:not(.menu-expanded) .columns .column.left .logo .logo-white {
  display: none;
}

header.dark:not(.menu-expanded) .columns .column.left .logo .logo-dark {
  display: block;
}

header .columns .column.right {
  display: flex;
  align-items: center;
  gap: 1.97rem;
  color: white;
}

header.dark:not(.menu-expanded) .columns .column.right {
  color: var(--blue);
}

header .columns .column.right .menu .hamburger {
  display: flex;
  flex-direction: column;
  gap: 0.68rem;
  cursor: pointer;
  transition: transform 0.9s ease-out;
}

header .columns .column.right .menu .hamburger .line {
  width: 27px;
  height: 1px;
  border-bottom: 1.5px solid white;
  transition: all 0.3s ease-out;
}

header.dark:not(.menu-expanded) .columns .column.right .menu .hamburger .line {
  border-bottom: 1.5px solid var(--blue);
}

header.dark:not(.menu-expanded) .columns .column.right .language span:after {
  border: 1.5px solid var(--blue);
  border-top: transparent;
  border-right: transparent;
}

header.dark:not(.menu-expanded) .columns .column.right .search svg line,
header.dark:not(.menu-expanded) .columns .column.right .search svg g g {
  stroke: var(--blue);
}

header .columns .column.right .menu .hamburger:hover .menu-text {
  visibility: visible;
  transition: all 0.3s ease-out;
  opacity: 1;
}

header .columns .column.right .menu .hamburger.open:hover .menu-text {
  visibility: hidden;
  transition: all 0.3s ease-out;
  opacity: 0;
}

header .menu-fixed,
header .search-fixed {
  padding-top: 12.62rem;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 9;
  background-color: var(--blue);
  opacity: 0;
  visibility: hidden;
  transition: opacity 400ms ease-in-out;
}

header .menu-fixed {
  background-image: url("./files/img/gorgonzola-bg.jpg");
  background-size: cover;
  background-position: center;
}

header .search-fixed {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

header.menu-expanded .menu-fixed {
  opacity: 1;
  visibility: visible;
  padding-bottom: 4rem;
}

header.search-expanded .search-fixed {
  opacity: 1;
  visibility: visible;
}

header.dark:not(.menu-expanded) header .columns .column.right .menu .hamburger .menu-fixed .contain {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  width: calc(100% / 12 * 12);
}

header .columns .column.right .menu .hamburger .menu-fixed .contain .left {
  width: calc(100% / 12 * 5);
  display: flex;
  flex-direction: column;
}

header .columns .column.right .menu .hamburger .menu-fixed .contain .right {
  width: calc(100% / 12 * 7);
  display: flex;
  flex-direction: column;
  align-items: end;
}

header .columns .column.right .menu .hamburger.open .line1 {
  transform: rotate(-45deg) translate(-8px, 8px);
}

header .columns .column.right .menu .hamburger.open .line2 {
  opacity: 0;
}

header .columns .column.right .menu .hamburger.open .line3 {
  transform: rotate(45deg) translate(-9px, -9px);
}

header .columns .column.right .menu {
  position: relative;
}

header .columns .column.right .menu .menu-text {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: 50%;
  bottom: -35px;
  transform: translateX(-50%);
  text-transform: uppercase;
  transition: all 0.3s ease-out;
  font-weight: 400;
}

header.header--scroll-up .columns .column.right .menu .menu-text,
header.header--scroll-up .columns .column.right .menu .hamburger:hover .menu-text {
  bottom: -30px;
  opacity: 0;
  visibility: hidden;
}

header.header--scroll-up .columns .column.right .language {
  opacity: 0;
  visibility: hidden;
}

header .columns .column.right .language {
  position: relative;
  font-size: 1rem;
  font-family: var(--ff-normal);
  letter-spacing: 0.02em;
  line-height: 1.87;
  cursor: pointer;
  font-weight: 400;
  position: relative;
  left: 0.65rem;
}

header .columns .column.right .language img {
  width: 1.7rem;
  border-radius: 2px;
}

header .columns .column.right .language span,
header .columns .column.right .language a {
  position: relative;
}

header .columns .column.right .language a {
  margin-bottom: 0.7rem;
}

header .columns .column.right .language a:hover span.name,
header .columns .column.right .language span:hover span.name {
  opacity: 1;
  visibility: visible;
}

header .columns .column.right .language span.name {
  position: absolute;
  right: 2.3rem;
  line-height: 1;
  top: 50%;
  transform: translatey(-50%);
  opacity: 0;
  visibility: hidden;
  transition: opacity 200ms ease-in-out;
  margin-top: 0.09rem;
}

header .columns .column.right .language span span.name {
  right: 3.5rem;
}

header .columns .column.right .language span span img {
  display: inline-block;
}

header.search-expanded .columns .column.right .language {
  opacity: 0;
  visibility: hidden;
}

header.menu-expanded .columns .column.right .language {
  display: none;
}

header .columns .column.right .language span:not(.name):after {
  content: "";
  position: unset;
  display: inline-block;
  right: -0.6rem;
  top: 40%;
  transform: translate(0rem, -60%) rotate(-45deg);
  z-index: 1;
  width: 9px;
  height: 9px;
  border: 1.5px solid #ffffff;
  border-top: transparent;
  border-right: transparent;
  pointer-events: none;
  transition: all 0.3s ease-out;
  margin-left: 0.6rem;
  margin-top: 0.4rem;
}

header .columns .column.right .language.open span:not(.name):after {
  right: -0.6rem;
  top: 50%;
  transform: translate(0rem, -50%) rotate(-225deg);
  transition: all 0.3s ease-out;
  margin-top: 0.9rem;
}

header .columns .column.right .search {
  padding-left: 1rem;
  cursor: pointer;
}

header .menu-fixed {
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

header .menu-fixed::-webkit-scrollbar {
  display: none;
}

header .other-languages {
  position: absolute;
  top: 100%;
  display: none;
  text-align: center;
  flex-direction: column;
}

header .language.open .other-languages {
  display: flex;
  margin-left: 0;
  margin-top: 0.5rem;
}

header .menu-fixed {
  color: white;
}

header .trademark {
  position: absolute;
  left: 5%;
  top: 24%;
  width: 38.54%;
  height: auto;
}

header .contain {
  display: flex;
  gap: 2rem;
}

header .contain .right {
  width: calc(100% - 2.5rem);
  right: 1.25rem;
}

header .contain .left {
  max-width: calc(100% - 19rem);
  position: absolute;
  left: 1.25rem;
  height: 100%;
}

header .contain > * {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

header .left {
  gap: calc(var(--vh-100) * 0.2);
}

header .languages-list {
  font-size: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.125rem;
  text-transform: uppercase;
  position: relative;
  z-index: 1;
  line-height: 1.1;
}

header .languages-list__show-more {
  cursor: pointer;
  font-weight: 400;
  position: relative;
  top: 0.1rem;
}

header .single-language:not(:last-child) {
  position: relative;
}

header .single-language:not(:last-child)::after {
  content: "/";
  display: inline-flex;
  margin-left: 0.5rem;
}

header .single-language span.active,
header .menu-voices .main-item .selected a,
header .menu-voices .main-item.selected > p > a {
  color: rgb(115, 175, 0);
}

header .phrases-wrap {
  max-width: calc((var(--site-width) - 2.5rem) * 0.4);
  display: none;
}

header .title-wrap {
  margin-bottom: 1.75rem;
}

header .header-title {
  font-family: var(--ff-normal);
  font-size: 1.625rem;
  text-transform: uppercase;
  line-height: 1.38;
}

header .header-text {
  font-size: 1.25rem;
  line-height: 1.5;
}

header .private-area-cta-wrap {
  display: flex;
  align-items: center;
  gap: 2rem;
}

header .private-area-cta-wrap .private-area,
header .private-area-cta-wrap .associate-area {
  position: relative;
  z-index: 1;
}

header .menu-voices {
  /* display: flex;
  flex-direction: column;
  gap: calc(var(--vh-100) * 0.07);
  align-items: stretch; */
  text-align: right;
}

header .menu-voices .main-item {
  font-family: var(--ff-alternate);
  font-size: 2.75rem;
  line-height: 1;
  font-weight: 600;
  padding-bottom: calc(var(--vh-100) * 0.07);
}

header .menu-voices .main-item:first-child {
  padding-top: 0;
}

header .menu-voices .main-item:last-child {
  padding-bottom: 0;
}

header .menu-voices .main-item.has-children {
  position: relative;
}

header .menu-voices .main-item.has-children .eg-sub-menu {
  position: absolute;
  /* top: calc(100% + 1rem); */
  top: 3.25rem;
  left: 0;
  width: 100%;
  flex-wrap: wrap;
  justify-content: flex-end;
  text-align: right;
  gap: 2.5rem;
  display: none;
  row-gap: 0.1rem;
}

header .menu-voices .main-item p {
  margin-bottom: 0;
}

header .menu-voices .secondary-item {
  font-family: var(--ff-normal);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: normal;

  text-transform: uppercase;
}

header .menu-voices .secondary-item:not(:first-child) {
  position: relative;
}

header .menu-voices .secondary-item:not(:first-child)::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.25rem);
  left: -1.5rem;
  width: 0.5rem;
  height: 0.5rem;
  background-color: white;
  border-radius: 50%;
}

header.header--scroll-upheader {
  transition: transform 0.3s ease-in-out;
}

header.menu-expanded,
header.search-expanded {
  position: fixed;
}

header {
  transition: transform 0.3s ease-in-out;
}

header.fixed {
  position: fixed;
}

header.no-transition {
  transition: none;
}

header.header--scroll-up {
  position: fixed;
  top: 0;
  background-color: white;
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;

  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.05);
}

@keyframes scroll-up {
  0% {
    transform: translateY(-100%);
  }

  100% {
    transform: translateY(0);
  }
}

header .columns .column.left .logo .logo-dark-sticky,
header .columns .column.left .logo .logo-white-sticky {
  display: none;
}

header.header--scroll-up .columns .column.left .logo .logo-dark-sticky {
  display: block;
}

header.header--scroll-up .columns .column.left .logo .logo-white,
header.header--scroll-up .columns .column.left .logo .logo-dark,
header.dark:not(.menu-expanded).header--scroll-up .columns .column.left .logo .logo-dark {
  display: none;
}

header.header--scroll-up .columns .column.right,
header.header--scroll-up .columns .column.left .logo {
  color: var(--blue);
}

header.header--scroll-up .columns .column.right .search svg .stroke-path {
  stroke: var(--blue);
}

header.header--scroll-up .columns .column.right .menu .hamburger .line {
  border-bottom-color: var(--blue);
}

header.header--scroll-up .columns .column.right .language span:after {
  border-color: var(--blue);
}

header.header--scroll-up > .container {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

header.header--scroll-up .columns .column.left .logo .dop-logo img {
  display: block;
  width: 3.75rem;
  height: auto;
}

header.header--scroll-up .columns .column.left .logo {
  gap: 1.5rem;
}

body header.search-expanded .columns .column.left .logo .logo-dark-sticky,
body header.search-expanded .columns .column.left .logo .logo-white-sticky,
body header.search-expanded .columns .column.left .logo .logo-dark,
body header.dark.search-expanded .columns .column.left .logo .logo-dark-sticky,
body header.dark.search-expanded .columns .column.left .logo .logo-white-sticky,
body header.dark.search-expanded .columns .column.left .logo .logo-dark {
  display: none;
}

body header.search-expanded .columns .column.left .logo .logo-white,
body header.dark.search-expanded .columns .column.left .logo .logo-white {
  display: block;
}

header .search-fixed {
  display: grid;
  align-items: center;
  justify-content: center;
}

header .search-fixed .container .contain {
  display: block;
  width: 35rem;
  max-width: 100%;
}

header .search-fixed .container .contain .title h2 {
  font-family: var(--ff-alternate);
  font-size: 2.8125rem;
  font-weight: 600;
  line-height: 1.06;
  text-align: center;
  color: white;
}

header .search-fixed .container .search-form form {
  position: relative;
}

header .search-fixed .container .search-form form #search-input-form {
  border-bottom: 1px solid #cecece;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  background-color: transparent;
  font-size: 1.125rem;
  line-height: 1.1;
  padding-bottom: 0.8rem;
  width: 100%;
  padding-top: 3.75rem;
  color: white;
}

header .search-fixed .container .search-form form #search-input-form::placeholder,
header .search-fixed .container .search-form form #search-input-form::-webkit-placeholder {
  color: rgba(255, 255, 255, 0.4);
}

header .search-fixed .container .search-form form #search-input-form:focus-visible {
  outline: none;
}

header .search-fixed .container .search-form form #search-input-form:-internal-autofill-selected {
  background-color: transparent !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 9999s ease-in-out 0s;
  color: white;
}

body .search-fixed input:-webkit-autofill {
  -webkit-text-fill-color: white !important;
}

header .search-fixed .container .search-categories {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 1rem;
  padding-top: 4.75rem;
}

header .search-fixed .container .search-categories button {
  all: unset;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  height: 2.62rem;
  padding: 0 1.15rem;
  border: 1px solid white;
  border-radius: 40px;
  color: white;
  cursor: pointer;
  transition: background-color ease-in-out 0.3s;
}

header .search-fixed .container .search-categories button.active,
header .search-fixed .container .search-categories button:hover {
  border: 1px solid white;
  background-color: white;
  color: var(--blue);
}

header .search-fixed .container .search-form form .submit-button {
  cursor: pointer;
  border: 0;
  background-color: transparent;
  position: absolute;
  right: 0;
  bottom: 0.9rem;
}

header .search-button-close {
  position: absolute;
  top: 0;
  width: 100%;
}

header.search-expanded .columns .column.right .search,
header.search-expanded .columns .column.right .menu .hamburger {
  opacity: 0;
  visibility: hidden;
}

header.search-expanded .close-search {
  opacity: 1;
  visibility: visible;
}

header .close-search {
  display: flex;
  flex-direction: column;
  gap: 0.68rem;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: 0;
  top: 0;
}

header .close-search .line {
  width: 27px;
  height: 1px;
  border-bottom: 1.5px solid white;
  transition: all 0.3s ease-out;
}

header .close-search .line.line1 {
  transform: rotate(-45deg) translate(-8px, 8px);
}

header .close-search .line.line2 {
  opacity: 0;
}

header .close-search .line.line3 {
  transform: rotate(45deg) translate(-9px, -9px);
}

@media only screen and (min-width: 767px) and (max-height: 700px) {
  header.close-search .container .columns {
    background-color: var(--blue);
  }
}

@media only screen and (min-width: 768px) {
  .back-button a {
    max-width: 10.4rem;
  }

  .back-button a {
    margin-top: 3rem;
  }

  header:not(.fixed) .columns .column.left .logo {
    display: grid;
    position: relative;
  }

  header:not(.fixed) .columns .column.left .logo a.dop-logo {
    position: absolute;
    bottom: -5.7rem;
    left: 50%;
    width: 4.4rem;
    transform: translatex(-50%);
  }

  header .columns .column.left .logo a.dop-logo {
    cursor: default;
  }

  header .languages-list {
    margin-top: 4rem;
  }

  body.single-associate .back-button a {
    max-width: 100%;
  }

  header .columns .column.right .language span {
    margin-right: -1.4rem;
    padding-right: 1.4rem;
  }

  header .menu-voices .main-item.has-children:hover .eg-sub-menu {
    display: flex;
  }

  .only-mobile {
    display: none;
  }

  header.menu-expanded .container .columns {
    padding-bottom: 1.5rem;
    transition: background-color 400ms ease-in-out;
    position: relative;
    z-index: 999;
  }

  header .menu-voices .main-item {
    padding-bottom: calc(var(--vh-100) * 0.065);
  }

  header .menu-voices .main-item a,
  header .single-language a {
    transition: color 300ms ease-in-out;
  }

  header .menu-voices .main-item.has-children:hover > p > a,
  header .menu-voices .main-item a:hover,
  header .single-language a:hover {
    color: rgb(115, 175, 0);
  }

  header .columns .column.right .language span {
    margin-right: -1.4rem;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
  }

  section#category-article-news .cards .card .img img,
  body.single-news section#related-recipes .cards .card .img img {
    max-height: 16rem;
    min-height: 11rem;
    object-fit: cover;
    object-position: top;
  }

  section#hero-with-bg .narrow .title h1 {
    max-width: 60rem;
    margin: auto;
  }

  header .language.open .other-languages {
    display: flex;
    margin-left: 0;
    margin-top: 0.5rem;
  }

  header .languages-list .hidden-items {
    position: absolute;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 1.125rem;
    row-gap: 2.625rem;
    background-color: #003060;
    padding: 1.5rem 1.125rem 2.6875rem 1.125rem;
    top: 4rem;
    border-radius: 1rem;
    left: -1.25rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms ease-in-out;
  }

  header .languages-list .hidden-items.hidden-items--show-all {
    opacity: 1;
    visibility: visible;
  }

  header .languages-list .hidden-items img,
  header .languages-list img {
    min-width: 2.06rem;
  }

  header .languages-list .single-language {
    position: relative;
  }

  header .languages-list .single-language span:not(.active) {
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms ease-in-out;
    position: absolute;
    left: 50%;
    bottom: -1.8rem;
    transform: translateX(-50%);
    font-size: 0.875rem;
    color: white;
    font-weight: 400;
  }

  header .languages-list .single-language a:before,
  header .languages-list .single-language span.active:before {
    border: 1.5px solid white;
    border-radius: 0.5rem;
    height: calc(100% + 0.95rem);
    width: calc(100% + 0.95rem);
    position: absolute;
    top: -0.5625rem;
    left: -0.5625rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms ease-in-out;
    content: "";
  }

  header .languages-list .single-language span.active {
    transition: none;
  }

  header .languages-list .single-language:hover span,
  header .languages-list .single-language a:hover:before,
  header .languages-list .single-language span.active,
  header .languages-list .single-language span.active span,
  header .languages-list .single-language span.active:before {
    opacity: 1;
    visibility: visible;
  }

  header .languages-list .single-language:not(:last-child)::after {
    display: none;
  }

  body.post-type-archive-news section#hero-news {
    min-height: 100vh;
    height: auto;
  }

  body.post-type-archive-news section#hero-news .narrow {
    padding-top: 16rem;
    padding-bottom: 21rem;
  }
}

/* -----------------------------------
==============================================================================
	# HOMEPAGE
==============================================================================
----------------------------------- */
section#homepage-hero {
  width: 100%;
  height: 100vh;
  position: relative;
}

section#homepage-hero .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

section#homepage-hero .bg-img {
  width: 100%;
  height: 100%;
}

section#homepage-hero .bg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* HOME - Hero */

body.home section#hero {
  position: relative;
  display: grid;
  align-items: center;
}

body.home section#hero .overlay {
  background-color: rgb(0 0 0 / 20%);
}

body.home section#hero .content {
  position: relative;
  width: 100%;
  max-width: calc((var(--site-width) - 2.5rem) * 0.51 + 2.5rem);
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
  height: auto;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease-in-out;
}

body.home section#hero.finished .content {
  opacity: 1;
  visibility: visible;
}

body.home section#hero .audio-controller {
  position: absolute;
  left: 3rem;
  bottom: 5rem;
  display: flex;
  align-items: flex-end;
  gap: 1rem;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

body.home section#hero .audio-controller .audio-animation-icon {
  display: block;
  width: 3rem;
  height: auto;
}

body.home section#hero .audio-controller .text {
  color: white;
  margin-bottom: 0;
  line-height: 1;
}

body.home section#hero .bg {
  cursor: pointer;
  background-color: black;
}

body.home section#hero .bg:hover .audio-controller {
  opacity: 1;
}

body.home section#hero .bg:hover .audio-controller.hidden {
  display: none;
}

body.home section#hero .content .text-wrap {
  text-align: center;
  color: white;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

body.home section#hero .subtitle {
  font-family: var(--ff-normal);
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.3;
  text-transform: uppercase;
}

body.home section#hero .main-page-title {
  font-family: var(--ff-alternate);
  font-size: 4.375rem;
  font-weight: 600;
  line-height: 1.06;
}

/* HOME - Made in italy */

body.home section#made-in-italy {
  margin-top: 5rem;
  margin-bottom: 9rem;
}

body.home section#made-in-italy .section-columns {
  display: grid;
  grid-template-columns: 7fr 5fr;
  grid-gap: 2rem;
}

body.home section#made-in-italy .lower-wrap {
  width: 100%;
  max-width: calc((var(--site-width) - 2.5rem) * 0.4);
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

body.home section#made-in-italy .hand-written-title-wrap {
  margin-bottom: 1.5rem;
}

body.home section#made-in-italy .hand-written-title {
  font-family: var(--ff-big);
  font-size: 6.25rem;
  line-height: 1;
  color: var(--blue);
  font-weight: normal;
}

body.home section#made-in-italy .section-title {
  font-size: 2.8rem;
  line-height: 1.16;
  font-weight: 600;
}

body.home section#made-in-italy .text-wrap {
  font-size: 1.25rem;
  line-height: 1.5;
}

body.home section#made-in-italy .mit-image {
  border-radius: 1.25rem;
}

/* HOME - DOP */

body.home section#dop {
  padding-top: 6rem;
  padding-bottom: 7rem;
  background-color: var(--blue);
  color: white;
}

body.home section#dop .dop-logo-wrap,
body.home section#novita .dop-logo-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -70%);
  width: 8.5rem;
}

body.home section#dop .dop-logo-wrap img,
body.home section#novita .dop-logo-wrap img {
  width: 100%;
}

body.home section#dop .section-columns,
body.home section#novita .section-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 2rem;
}

body.home section#dop .section-main-img-wrap {
  position: relative;
  height: 100%;
  min-height: 16rem;
}

body.home section#dop .main-img-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body.home section#dop .main-img-wrap img {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
}

body.home section#dop .image-phrase-wrap {
  position: absolute;
  bottom: 0;
  left: 2rem;
  transform: translateY(50%);
}

body.home section#dop .image-phrase {
  font-family: var(--ff-big);
  font-size: 6.25rem;
  line-height: 1;
  font-weight: normal;
}

body.home section#dop .inside-content-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  max-width: calc((var(--site-width) - 2.5rem) * 0.4);
}

body.home section#dop .section-title {
  font-size: 2.8rem;
  line-height: 1.16;
  font-weight: 600;
}

body.home section#dop .text-wrap {
  font-size: 1.25rem;
  line-height: 1.5;
}

/* Oval section */

section.oval-section {
  padding-top: 9.5rem;
  padding-bottom: 9.5rem;
  color: white;
}

section.oval-section .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

section.oval-section .bg-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
}

section.oval-section .bg-img img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

section.oval-section .container {
  position: relative;
  z-index: 1;
}

section.oval-section .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  text-align: center;
}

section.oval-section .small-title {
  font-family: var(--ff-normal);
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.3;
  text-transform: uppercase;
}

section.oval-section .section-title {
  font-family: var(--ff-alternate);
  font-size: 4.375rem;
  font-weight: 600;
  line-height: 1.06;
}

/* HOME - RICETTE */

body.home section#ricette {
  padding-top: 5.125rem;
  padding-bottom: 5rem;
  background-color: var(--bg-light);
  margin-bottom: 0;
}

body.home section#ricette .intro-wrap {
  margin-bottom: 3rem;
}

body.home section#ricette .intro-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
}

body.home section#ricette .section-title {
  font-family: var(--ff-alternate);
  font-size: 2.8125rem;
  font-weight: 600;
  line-height: 1.06;
  color: var(--blue);
}

body.home section#ricette .text-wrap {
  font-size: 1.25rem;
  line-height: 1.5;
}

body.home section#ricette .filters-wrap {
  margin-bottom: 0;
}

body.home section#ricette .results-wrap .cards-wrap {
  padding-top: 3rem;
  padding-bottom: 4.75rem;
}

body.home section#ricette .recipes-wrap {
  margin-bottom: 0;
}

body.home section#ricette .recipes-wrap .filters-wrap .buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  max-width: 69rem;
  margin: auto;
}

body.home section#ricette .recipes-wrap .filters-wrap .buttons button {
  all: unset;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  height: 2.62rem;
  padding: 0 1.15rem;
  border: 1px solid var(--blue);
  border-radius: 40px;
  color: var(--blue);
  cursor: pointer;
  transition: all ease-in-out 0.3s;
  opacity: 0;
}

body.home section#ricette .recipes-wrap .filters-wrap .buttons button:hover,
body.home section#ricette .recipes-wrap .filters-wrap .buttons button.active {
  background-color: var(--blue);
  color: white;
}

body.home section#ricette .cards-wrap {
  padding: 4px;
  position: relative;
}

body.home section#ricette .swiper-navigation {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  width: calc(100% - 3rem);
  left: 1.5rem;
}

body.home section#ricette .swiper-navigation .swiper-arrow-prev.swiper-button-disabled,
body.home section#ricette .swiper-navigation .swiper-arrow-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

body.home section#ricette .swiper-navigation .swiper-arrow-prev {
  width: auto;
  position: absolute;
  left: -6rem;
  cursor: pointer;
}

body.home section#ricette .swiper-navigation .swiper-arrow-next {
  width: auto;
  position: absolute;
  right: -6rem;
  cursor: pointer;
}

body.home section#ricette .cards {
  overflow: visible;
  padding-top: 7.52rem;
}

.cards .card {
  transition: all ease-in-out 0.3s;
}

.cards .card:hover {
  transform: scale(1.05);
}

body.home section#ricette .cards .swiper-slide {
  height: auto;
}

body.home section#ricette .cards .card {
  position: relative;
  width: 100%;
  height: 100%;
  /* max-width: 21.75rem; */
  border-radius: 20px;
  background-color: white;
  padding-bottom: 2rem;
  display: flex;
  flex-direction: column;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  /* background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: center;
  background-size: 300px 300px; */
}

body.home section#ricette .cards .card .img {
  position: absolute;
  top: -7.52rem;
  left: 50%;
  transform: translateX(-50%);
  max-width: 15.04rem;
  height: 15.04rem;
  width: 100%;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

body.home section#ricette .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home section#ricette .cards .card .content {
  padding: 0 2rem;
  padding-top: 9.31rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

body.home section#ricette .cards .card .content .title {
  padding-bottom: 1.37rem;
}

body.home section#ricette .cards .card .content .title h2 {
  font-size: 1.37rem;
  font-weight: 600;
  line-height: 1.45;
  font-family: var(--ff-alternate);
  color: var(--blue);
  text-transform: uppercase;
}

body.home section#ricette .cards .card .content .description {
  padding-bottom: 1.37rem;
}

body.home section#ricette .cards .card .content .description p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
}

body.home section#ricette .cards .card .info {
  padding-bottom: 1.37rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

body.home section#ricette .cards .card .info p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

body.home section#ricette .cards .card .difficulty {
  padding-top: 1.15rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #e8e8e8;
  margin: 0 2rem;
}

body.home section#ricette .cards .card .difficulty p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.85;
  text-transform: uppercase;
  color: var(--grey);
}

body.home section#ricette .cards .card .difficulty .icon {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

body.home section#ricette .cards .card .difficulty .icon .svg {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

body.home section#ricette .cards .card .difficulty .time {
  display: flex;
  align-items: center;
  gap: 0.68rem;
}

body.home section#ricette .cta-wrap .container {
  display: flex;
  justify-content: center;
}

/* HOME - Storia */

body.home section#storia {
  --main-image-width: calc((var(--site-width) - 2.5rem) * 0.37);
}

body.home section#storia .intro-wrap {
  padding-top: 9rem;
}

body.home section#storia .section-title-wrap {
  text-align: center;
}

body.home section#storia .section-title {
  font-size: 4.375rem;
  color: var(--blue);
  font-weight: 600;
  line-height: 1.5;
}

body.home section#storia .subtitle-wrap {
  margin-bottom: 1.5rem;
  text-align: right;
}

body.home section#storia .section-subtitle {
  font-family: var(--ff-big);
  font-size: 6.25rem;
  font-weight: normal;
  line-height: 1;
  color: var(--grey);
}

body.home section#storia .images-wrap {
  position: relative;
  max-width: calc((var(--site-width) - 2.5rem) * 0.88);
  margin: 0 auto;
  height: calc(var(--main-image-width) * 1.34);
}

body.home section#storia .single-image-wrapper {
  position: absolute;
  width: var(--main-image-width);
  height: calc(var(--main-image-width) * 1.34);
  top: 0;
  right: calc(50% - (var(--main-image-width) / 2));

  transition: all 0.3s ease-in-out;
}

body.home section#storia .single-image-wrapper[data-position="-1"],
body.home section#storia .single-image-wrapper[data-position="1"] {
  width: calc(var(--main-image-width) * 0.5);
  height: calc((var(--main-image-width) * 0.5) * 1.34);
}

body.home section#storia .single-image-wrapper[data-position="-1"] {
  right: calc(50% + (var(--main-image-width) * 0.69));
  top: calc(var(--main-image-width) * 0.49);
}

body.home section#storia .single-image-wrapper[data-position="1"] {
  right: 0;
  left: auto;
  top: calc(var(--main-image-width) * 0.17);
  bottom: auto;
}

body.home section#storia .single-image-wrapper .single-image {
  position: relative;
  width: 100%;
  height: 100%;
}

body.home section#storia .single-image-wrapper .single-image .home-story-single-image {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 1.25rem;
  cursor: pointer;
}

body.home section#storia .cont-img {
  position: relative;
  z-index: 1;
}

body.home section#storia .texts-wrap {
  margin-top: calc(var(--main-image-width) * 1.34 / 2 * -1);
  padding-top: calc(var(--main-image-width) * 1.34 / 2 + 4.375rem);
  background-color: var(--blue);
  padding-bottom: 4.375rem;
  color: white;
  position: relative;
}

body.home section#storia .texts-wrap .svg-left,
body.home section#storia .texts-wrap .svg-right {
  position: absolute;
  top: calc((var(--site-width) - 2.5rem) * 0.45 / 2 * -1);
  width: calc((var(--site-width) - 2.5rem) * 0.45);
  height: calc((var(--site-width) - 2.5rem) * 0.45);
  overflow: hidden;
}

body.home section#storia .texts-wrap .svg-left .svg-wrapper {
  transform: translatex(-50%);
}

body.home section#storia .texts-wrap .svg-left {
  left: 0;
}

body.home section#storia .texts-wrap .svg-right .svg-wrapper {
  transform: translatex(50%);
}

body.home section#storia .texts-wrap .svg-right {
  right: 0;
}

body.home section#storia .texts-wrap .svg-left img,
body.home section#storia .texts-wrap .svg-right img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

body.home section#storia .texts-wrap .single-text-wrapper {
  display: none;
  max-width: calc((var(--site-width) - 2.5rem) * 0.66);
  margin: 0 auto;
}

body.home section#storia .texts-wrap .single-text-wrapper.active {
  display: block;
}

body.home section#storia .texts-wrap .single-text-wrapper .text {
  text-align: center;
  font-family: var(--ff-alternate);
  font-size: 1.375rem;
  font-weight: normal;
}

body.home section#storia .texts-wrap .texts {
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

body.home section#storia .cta-wrap {
  background-color: var(--blue);
  text-align: center;
  padding-bottom: 1.375rem;
}

body.home section#associati {
  background-color: var(--bg-light);
  position: relative;
}

body.home section#associati .container-wrapper {
  overflow-x: hidden;
}

body.home section#associati .swiper {
  padding-bottom: 4.8rem;
  overflow: visible;
  padding-top: 3.75rem;
}

body.home section#associati .cta-wrap {
  text-align: center;
  padding-bottom: 4.8rem;
}

body.home section#associati .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  padding-top: 5.125rem;
  max-width: 47.5rem;
  margin: auto;
}

body.home section#associati .section-title {
  font-family: var(--ff-alternate);
  font-size: 2.8125rem;
  font-weight: 600;
  line-height: 1.06;
  color: var(--blue);
}

body.home section#associati .text-wrap {
  font-size: 1.25rem;
  line-height: 1.5;
}

body.home section#associati .logo {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease-in-out;
}

body.home section#associati .swiper-slide {
  height: auto;
}

body.home section#associati .swiper-slide .logo {
  background-color: white;
}

body.home section#associati .swiper-slide a,
body.home section#associati .swiper-slide .logo,
body.home section#associati .swiper-slide .logo img {
  height: 100%;
}

body.home section#associati .swiper-slide .logo img {
  height: auto;
  object-fit: contain;
}

body.home section#associati .swiper-slide a:hover .logo {
  transform: scale(1.05);
}

body.home section#rubriche {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 9.5rem;
  padding-bottom: 9.5rem;
}

body.home section#rubriche .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body.home section#rubriche .bg-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
}

body.home section#rubriche .bg-img img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

body.home section#rubriche .container {
  position: relative;
  z-index: 1;
  top: unset;
  left: unset;
  transform: unset;
  text-align: center;
  color: white;
}

body.home section#rubriche .container .small-title {
  font-size: 1.25rem;
  font-weight: bold;
  text-transform: uppercase;
}

body.home section#rubriche .container .title h2 {
  font-size: 4.375rem;
  font-family: var(--ff-alternate);
  font-weight: 600;
  line-height: 1.05;
  padding-top: 1rem;
}

body.home section#rubriche .container .cta-wrap {
  padding-top: 1.6rem;
}

body.home section#novita .cards .card {
  background-color: white;
}

body.home section#novita {
  padding-top: 6rem;
  padding-bottom: 5rem;
  background-color: var(--bg-light);
}

body.home section#novita h2.section-title {
  text-align: center;
  font-family: var(--ff-alternate);
  font-size: 2.8125rem;
  font-weight: 600;
  line-height: 1.06;
  color: var(--blue);
  padding-bottom: 3.375rem;
  padding-top: 0.5rem;
}

body.home section#novita .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2.06rem;
  row-gap: 5.06rem;
}

body.home section#novita .cards .card {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

body.home section#novita .cards .card .img {
  width: 100%;
}

body.home section#novita .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home section#novita .cards .card .cont .button {
  position: absolute;
  top: -0.935rem;
  display: flex;
  gap: 0.5rem;
}

body.home section#novita .cards .card .cont .button button {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 2.36;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: 100%;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
  line-height: 1.1;
}

body.home section#novita #filter-categories {
  padding-top: 6.25rem;
}

body.home section#novita .cards .card .cont .title {
  padding-bottom: 0.25rem;
}

body.home section#novita .cards .card .cont {
  position: relative;
  padding: 0 1.87rem 1.68rem 1.75rem;
}

body.home section#novita .cards .card .cont .title h3 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.16;
}

body.home section#novita .cards .card .cont .day-read-time {
  padding-top: 2.06rem;
  padding-bottom: 1.06rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.81rem;
  font-weight: 400;
  line-height: 1.07;
  font-family: var(--ff-normal);
  opacity: 0.5;
}

body.home section#novita .cards .card .cont .text {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin-bottom: 1.12rem;
}

body.home section#novita .cards .card .cont .read-more {
  font-size: 0.87rem;
  font-weight: 500;
  line-height: 1.42;
  font-family: var(--ff-normal);
  color: var(--blue);
}

body.home section#novita .cta-wrap {
  text-align: center;
  padding-top: 3.375rem;
}

body.home section#taste-numbers {
  padding-top: 0;
}

section#taste-numbers .container {
  padding-top: 9rem;
}

section#taste-numbers .bg {
  padding-top: 5rem;
}

/* -----------------------------------
==============================================================================
	# CONTACTS
==============================================================================
----------------------------------- */
body.page-template-tmpl-contacts section#hero {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  width: 100%;
  position: relative;
}

body.page-template-tmpl-contacts section#hero .container {
  position: unset;
}

body.page-template-tmpl-contacts section#hero .columns {
  padding-top: 10.875rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
}

body.page-template-tmpl-contacts section#hero .columns .column.left {
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
  padding-top: 6.5rem;
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
}

body.page-template-tmpl-legal-area section#hero {
  padding-top: 16.5rem;
  padding-bottom: 6.5rem;
}

body.page-template-tmpl-contacts section#hero .columns .column.left .title h1,
section#intro-associate .columns .column.left .title h1,
body.page-template-tmpl-legal-area section#hero .columns .column.left .title h1 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  font-family: var(--ff-alternate);
  color: var(--blue);
  padding-bottom: 1.93rem;
  max-width: 31rem;
}

body.page-template-tmpl-legal-area section#hero .columns .column.left ul {
  margin-bottom: 1.5rem;
}

body.page-template-tmpl-contacts section#hero .columns .column.left .text {
  font-size: 1.25rem;
}

body.page-template-tmpl-contacts section#hero .columns .column.left .text strong {
  color: var(--blue);
}

body.page-template-tmpl-contacts section#hero .columns .column.left .text p:not(:last-child) {
  margin-bottom: 2rem;
}

body.page-template-tmpl-contacts section#hero .columns .column.right .map {
  width: 100%;
  height: 600px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow: hidden;
}

body.page-template-tmpl-contacts section#hero .columns .column.right .map iframe {
  width: 100%;
  height: 100%;
  border: none;
  object-fit: contain;
}

/* Contact Form */
section#contact-form {
  width: 100%;
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  padding-top: 6.75rem;
}

section#contact-form .narrow {
  width: 100%;
  max-width: 47.5rem;
  margin: 0 auto;
  padding-bottom: 6.5rem;
}

section#contact-form .narrow .intro {
  padding-bottom: 3.12rem;
}

section#contact-form .narrow .intro p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#contact-form .narrow .intro p a {
  text-decoration: underline;
  color: var(--blue);
  font-weight: 500;
}

section#contact-form .narrow .required p {
  font-size: 1.25rem;
  line-height: 1.5;
  font-weight: 800;
  text-align: center;
  padding-bottom: 3.31rem;
}

section#contact-form .narrow .name-email {
  display: flex;
  gap: 2rem;
  width: 100%;
}

section#contact-form .narrow .name-email .name,
section#contact-form .narrow .name-email .email {
  width: 50%;
  margin-bottom: 3.06rem;
}

section#contact-form .narrow .name-email .name input,
section#contact-form .narrow .name-email .email input,
section#contact-form .narrow .subject .wpcf7-form-control-wrap input {
  border: 1px solid var(--blue);
  border-radius: 40px;
  color: var(--darkgrey);
  font-weight: 700;
  height: 2.62rem;
  width: 100%;
  padding-left: 1.43rem;
  background-color: transparent;
  font-size: 1rem;
}

section#contact-form .narrow .name-email .name input::placeholder,
section#contact-form .narrow .name-email .email input::placeholder,
section#contact-form .narrow .subject .wpcf7-form-control-wrap input::placeholder,
section#contact-form .narrow .message .wpcf7-form-control-wrap textarea::placeholder {
  color: rgba(60, 60, 60, 0.5);
}

section#contact-form .narrow .radios {
  width: 100%;
}

section#contact-form .narrow .radios .wpcf7-radio {
  display: flex;
  justify-content: space-between;
}

section#contact-form .narrow .radios .wpcf7-radio span:first-child {
  margin: 0;
}

section#contact-form .narrow .radios .wpcf7-radio {
  padding-bottom: 3.06rem;
}

section#contact-form .narrow .subject {
  width: 100%;
}

section#contact-form .narrow .subject .wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column;
  padding-bottom: 1.62rem;
  width: 100%;
}

section#contact-form .narrow .message {
  width: 100%;
}

section#contact-form .narrow .message .wpcf7-form-control-wrap textarea {
  padding-top: 1rem;
  display: flex;
  width: 100%;
  height: 5.25rem;
  border: 1px solid var(--blue);
  color: var(--darkgrey);
  font-weight: 700;
  border-radius: 16px;
  width: 100%;
  padding-left: 1.43rem;
  background-color: transparent;
  font-size: 1rem;
}

section#contact-form .narrow .privacy-checkbox {
  display: flex;
  gap: 1rem;
  padding-top: 1rem;
  margin-bottom: 3.43rem;
}

section#contact-form .narrow .privacy-checkbox .wpcf7-list-item {
  margin-left: 0;
}

section#contact-form .narrow .submit p {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

body .wpcf7-not-valid-tip {
  color: #dc3232;
  font-size: 1rem;
  margin-left: 0;
  padding-left: 1.43rem;
  padding-top: 0.5rem;
  font-weight: normal;
  display: block;
}

body .wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d;
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0;
  position: relative;
}

section#contact-form .narrow .submit input {
  border: 1px solid var(--blue);
  border-radius: 40px;
  width: 10.37rem;
  height: 2.62rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  background-color: var(--blue);
  transition: all 0.3s ease-out;
}

section#contact-form .narrow .submit input:hover {
  background-color: white;
  color: var(--blue);
}

section#contact-form .wpcf7-response-output {
  margin-left: 0;
  border: 0;
  padding-left: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

/* -----------------------------------
==============================================================================
	# ASSOCIATES
==============================================================================
----------------------------------- */
section#intro-associates {
  padding-top: 18.12rem;
}

section#intro-associates .small-title h2 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  padding-bottom: 1rem;
  font-family: var(--ff-normal);
}

section#intro-associates .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  text-align: center;
  padding-bottom: 1rem;
  color: var(--blue);
}

section#intro-associates .text {
  max-width: 47rem;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 6.25rem;
}

section#intro-associates .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  text-align: center;
  font-family: var(--ff-alternate);
}

section#intro-associates .text p strong {
  font-weight: 600;
}

section#associates .columns {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: 2rem;
  row-gap: 5rem;
  padding-bottom: 8.75rem;
}

section#associates .columns .logo {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease-out;
  background-color: white;
}

section#associates .columns .logo img {
  width: 100%;
}

section#associates .columns a:hover .logo {
  transform: scale(1.05);
}

body.single-associate main,
body.page-template-tmpl-associates main {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
}

section#intro-associate .columns {
  padding-top: 10.875rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
}

section#intro-associate {
  padding-bottom: 4.5rem;
}

section#intro-associate .columns .column.left {
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
}

section#intro-associate .columns .column.left .title {
  padding-top: 3rem;
}

section#intro-associate .columns .column.left .info {
  padding-bottom: 3.87rem;
}

section#intro-associate .columns .column.left .info p {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 400;
}

section#intro-associate .columns .column.left .info strong {
  color: var(--blue);
}

section#intro-associate .columns .column.left .logo {
  margin-top: 3rem;
  max-width: 10.37rem;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
}

section#intro-associate .columns .column.left .logo img {
  width: 100%;
  object-fit: contain;
}

section#intro-associate .columns .column.right #single-map {
  height: 600px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}

section#content-associate h2 {
  text-align: right;
  padding-right: 4.75rem;
  font-family: var(--ff-big);
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
}

section#content-associate .narrow {
  max-width: 47.5rem;
  width: 100%;
  margin: 0 auto;
}

section#content-associate .narrow .title {
  padding-bottom: 2.93rem;
  margin-top: -2rem;
}

section#content-associate .narrow .title h3 {
  text-align: center;
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#content-associate .narrow .text {
  padding-bottom: 5.62rem;
  font-size: 1.25rem;
  font-weight: 500;
}

section#related-associates .title {
  padding-bottom: 2.93rem;
}

section#related-associates .title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
}

section#related-associates .columns {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: 2rem;
  padding-bottom: 7.93rem;
}

section#related-associates .columns .column a,
section#related-associates .columns .column .logo,
section#related-associates .columns .column img {
  height: 100%;
}

section#related-associates .columns .column img {
  height: auto;
  object-fit: contain;
  margin: auto;
}

section#related-associates .columns .column .logo {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  background-color: white;
}

/* -----------------------------------
==============================================================================
	# CONSERVAZIONE E SERVIZIO
==============================================================================
----------------------------------- */

body.page-template-tmpl-conservation-service {
  overflow-x: hidden;
}

body.page-template-tmpl-conservation-service #bg-sections-conservation-service {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
}

body.page-template-tmpl-conservation-service #intro-conservation-service {
  padding-bottom: 11.5rem;
  margin-top: -6.5rem;
}

section#hero-conservation-service {
  height: var(--vh-100);
  display: grid;
  align-items: center;
  position: relative;
}

section#hero-conservation-service .svg-left {
  position: absolute;
  top: 50%;
  transform: translatey(-50%) translatex(-50%);
}

section#hero-conservation-service .svg-right {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  overflow: hidden;
  right: 0;
}

section#hero-conservation-service .svg-right .svg-wrapper {
  transform: translatex(50%);
}

section#hero-conservation-service .svg-left img,
section#hero-conservation-service .svg-right img {
  height: calc(var(--vh-100) / 5 * 3);
}

section#hero-conservation-service .narrow {
  padding-top: 10rem;
  padding-bottom: 10rem;
  text-align: center;
}

section#hero-conservation-service .narrow .small-title {
  padding-bottom: 1rem;
}

section#hero-conservation-service .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
}

section#hero-conservation-service .narrow .title {
  padding-bottom: 1rem;
}

section#hero-conservation-service .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  color: var(--blue);
}

section#hero-conservation-service .narrow .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#intro-conservation-service .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
}

section#intro-conservation-service .signature h3 {
  text-align: left;
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1rem;
  padding-bottom: 2.5rem;
}

section#intro-conservation-service .columns .column.left .title {
  padding-bottom: 1.78rem;
}

section#intro-conservation-service .columns .column.left .column-wrapper {
  max-width: 28.93rem;
  margin-left: auto;
}

section#intro-conservation-service .columns .column.left .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#intro-conservation-service .columns .column.left .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#intro-conservation-service .columns .column.right {
  position: relative;
  /* margin-right: 4.18rem; */
}

section#intro-conservation-service .columns .column.right .img {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  max-width: 26.75rem;
  margin: auto;
}

section#intro-conservation-service .description {
  max-width: 38rem;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 1.75rem;
  padding-top: 4.5rem;
}

section#intro-conservation-service .description p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
  text-align: center;
}

body section#usage-conservation-service {
  margin-bottom: 11.75rem;
  margin-top: 0;
}

body.page-template-tmpl-conservation-service section#usage-conservation-service {
  padding-top: 6.9rem;
  margin-bottom: 9.75rem;
  padding-bottom: 7.2rem;
}

body.page-template-tmpl-conservation-service section#last-conservation-service {
  padding-top: 0;
}

section#usage-conservation-service {
  /*background-image: url("./files/img/bg-conservazione.png");*/
  background-size: cover;
  background-position: top center;
  padding-top: 16rem;
  padding-bottom: 9.2rem;
}

section#usage-conservation-service .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
  color: white;
}

section#usage-conservation-service .columns .column.left .img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  max-width: 26.75rem;
  margin: auto;
}

section#usage-conservation-service .columns .column.right {
  display: grid;
  align-items: center;
}

section#usage-conservation-service .columns .column.right .column-wrapper {
  max-width: 29.93rem;
}

section#usage-conservation-service .columns .column.right .title {
  padding-bottom: 1.78rem;
}

section#usage-conservation-service .columns .column.right .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#usage-conservation-service .columns .column.right .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#last-conservation-service {
  padding-bottom: 5rem;
  padding-top: 8.625rem;
}

section#last-conservation-service .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
}

section#last-conservation-service .columns .column.left {
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
  padding-top: 1.5rem;
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
}

section#last-conservation-service .columns .column.left .column-wrapper .text {
  max-width: 29.9rem;
  margin-left: auto;
}

section#last-conservation-service .columns .column.left .column-wrapper .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#last-conservation-service .columns .column.left .signature h3 {
  text-align: left;
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 2.5rem;
}

section#last-conservation-service .columns .column.right .img {
  border-radius: 20px;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  margin-left: 8.33%;
  overflow: hidden;
}

/* -----------------------------------
==============================================================================
	# ABBINAMENTI
==============================================================================
----------------------------------- */

body.page-template-tmpl-pairings main {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
}

body.page-template-tmpl-pairings footer .columns {
  padding-top: 8.3rem;
}

section#hero-pairings {
  display: grid;
  align-items: center;
  height: var(--vh-100);
  position: relative;
}

section#hero-pairings .svg-left {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  left: 0;
}

section#hero-pairings .svg-left .svg-wrapper {
  transform: translatex(-50%);
}

section#hero-pairings .svg-right {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  overflow: hidden;
  right: 0;
}

section#hero-pairings .svg-right .svg-wrapper {
  transform: translatex(50%);
}

section#hero-pairings .svg-left img,
section#hero-pairings .svg-right img {
  height: calc(var(--vh-100) / 5 * 3);
}

section#hero-pairings .narrow {
  padding-top: 10rem;
  padding-bottom: 10rem;
  text-align: center;
}

section#hero-pairings .narrow .small-title {
  padding-bottom: 1rem;
}

section#hero-pairings .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
}

section#hero-pairings .narrow .title {
  padding-bottom: 1rem;
}

section#hero-pairings .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  color: var(--blue);
}

section#hero-pairings .narrow .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#intro-pairings {
  margin-top: -10.8rem;
}

section#intro-pairings .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
}

section#intro-pairings .signature h3 {
  text-align: left;
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1rem;
  padding-bottom: 2.5rem;
  text-align: right;
}

section#intro-pairings .columns .column.left .img {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e8e8e8;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  max-width: 26.75rem;
  margin: auto;
}

section#intro-pairings .columns .column.right .title {
  padding-bottom: 1.78rem;
}

section#intro-pairings .columns .column.right .column-wrapper {
  max-width: 28.93rem;
}

section#intro-pairings .columns .column.right .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#intro-pairings .columns .column.right .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#intro-pairings .columns .column.right {
  position: relative;
}

section#slider-pairings {
  background-image: url("./files/img/bg-abbinamenti.png");
  background-size: cover;
  background-position: top center;
  padding-top: 13rem;
  padding-bottom: 8.83rem;
}

section#slider-pairings .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
  color: white;
}

section#slider-pairings .columns .column.left {
  display: grid;
  align-items: flex-end;
  padding-bottom: 4.9rem;
}

section#slider-pairings .columns .column.left .column-wrapper {
  max-width: 29.93rem;
  margin-left: auto;
  padding-right: 2rem;
}

section#slider-pairings .columns .column.left .title {
  padding-bottom: 1.78rem;
}

section#slider-pairings .columns .column.left .title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#slider-pairings .columns .column.left .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#slider-pairings .columns .column.right .img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
  max-width: 26.75rem;
  margin: auto;
}

section#slider-pairings .swiper-navigation {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 1;
}

section#slider-pairings .swiper-navigation .swiper-navigation-wrapper {
  max-width: 29.93rem;
  margin-left: auto;
  padding-right: 2rem;
  width: 100%;
  display: flex;
  gap: 1.68rem;
}

section#slider-pairings .swiper-navigation .swiper-navigation-wrapper .swiper-button-disabled img {
  opacity: 0.5;
  cursor: not-allowed;
}

section#slider-pairings .swiper-navigation .swiper-navigation-wrapper img {
  cursor: pointer;
}

section#pairings-recipe {
  position: relative;
  margin-top: -3.125rem;
  margin-bottom: -3.125rem;
}

section#pairings-recipe .bg-img {
  position: relative;
}

section#pairings-recipe .bg-img .overlay {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
}

section#pairings-recipe .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: white;
}

section#pairings-recipe .container .small-title {
  font-size: 1.25rem;
  font-weight: bold;
}

section#pairings-recipe .container .small-title {
  font-size: 1.25rem;
  font-weight: bold;
}

section#pairings-recipe .container .title h2 {
  font-size: 4.375rem;
  font-family: var(--ff-alternate);
  font-weight: 600;
  line-height: 1.05;
  padding-top: 1rem;
}

section#pairings-recipe .container .link p {
  display: grid;
  justify-content: center;
  padding-top: 1.6rem;
}

section#pairings-recipe .container .link p a {
  min-height: 2.5rem;
  font-weight: bold;
  color: black;
  background-color: white;
  border: 1px solid white;
  transition: all 200ms ease-in-out;
  border-radius: 2.5rem;
  padding: 0 1.75rem;
  line-height: 2.5rem;
}

section#pairings-recipe .container .link p a:hover {
  background-color: transparent;
  color: white;
}

/* -----------------------------------
==============================================================================
	# RICETTE
==============================================================================
----------------------------------- */
body.post-type-archive-recipe main,
body.post-type-archive-associate-area main,
body.page-template-tmpl-associate-area-login main {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
}

section#hero-recipes .narrow {
  padding-top: 13.06rem;
  text-align: center;
}

section#hero-recipes .narrow .small-title {
  padding-bottom: 1rem;
}

section#hero-recipes .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
  text-transform: uppercase;
}

section#hero-recipes .narrow .title {
  padding-bottom: 1rem;
}

section#hero-recipes .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  color: var(--blue);
}

section#hero-recipes .narrow .text {
  max-width: 39rem;
  width: 100%;
  margin: 0 auto;
}

section#hero-recipes .narrow .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#hero-recipes .narrow .text p strong {
  font-weight: 600;
}

section#filter-categories .columns .buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding-bottom: 13.75rem;
  padding-top: 6.25rem;
}

body.post-type-archive-associate-area section#filter-categories .columns .buttons,
body.page-template-tmpl-associate-area-login section#filter-categories .columns .buttons {
  padding-bottom: 6rem;
}

section#search-recipe {
  padding-bottom: 13.75rem;
}

section#search-recipe > .container {
  max-width: 72rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 2rem;
}

section#search-recipe .difficulty-select p,
section#search-recipe .cooking-select p,
section#search-recipe .pairings-select p,
section#search-recipe .search p {
  font-size: 0.87rem;
  font-weight: 600;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  color: var(--blue);
  text-transform: uppercase;
}

section#search-recipe .custom-select {
  position: relative;
  width: 100%;
  display: inline-block;
  font-size: 0.875rem;
  font-family: var(--ff-normal);
  color: var(--grey);
  font-weight: 500;
  line-height: 1.42;
}

section#search-recipe .custom-select .select {
  position: relative;
  display: block;
  padding-left: 0rem;
  cursor: pointer;
  border-bottom: 1px solid #e6e6e6;
  padding-bottom: 0.4rem;
}

section#search-recipe .custom-select.open .select:after {
  right: 0.1rem;
  top: 50%;
  transform: translate(-0.1rem, -50%) rotate(-225deg);
  transition: all 0.3s ease-out;
}

section#search-recipe .custom-select .select:after {
  content: "";
  position: absolute;
  right: 0.1rem;
  top: 40%;
  transform: translate(-0.1rem, -60%) rotate(-45deg);
  z-index: 1;
  width: 6px;
  height: 6px;
  border: 1.5px solid var(--grey);
  border-top: transparent;
  border-right: transparent;
  pointer-events: none;
  transition: all 0.3s ease-out;
}

section#search-recipe .custom-select.open .options {
  display: block;
}

section#search-recipe .custom-select .options {
  position: absolute;
  top: calc(100% + 15px);
  left: 0;
  right: 0;
  display: none;
  padding: 1.625rem;
  margin: 0;
  background-color: white;
  border-radius: 5px;
  z-index: 1;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}

section#search-recipe .custom-select .options .option:first-child button {
  padding-top: 0;
}

section#search-recipe .custom-select .options .option:last-child {
  border-bottom: 0;
}

section#search-recipe .custom-select .options .option:last-child button {
  padding-bottom: 0;
}

section#search-recipe .custom-select .option {
  display: block;
  cursor: pointer;
  border-bottom: 1px solid #cecece;
  transition: all 200ms ease-in-out;
}

section#search-recipe .custom-select .option button {
  all: unset;
  padding: 1rem 0;
  width: 100%;
  line-height: 1.1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

section#search-recipe .custom-select .option button .icon {
  display: flex;
  gap: 0.5rem;
}

section#search-recipe .custom-select .option:hover,
section#search-recipe .custom-select .option.selected {
  background-color: white;
  border-radius: 0;
  padding-left: 0.3rem;
}

section#search-recipe .search {
  width: 100%;
  margin: auto;
  max-width: 35.125rem;
}

section#search-recipe .search .input {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 2px;
}

section#search-recipe .search .input .svg {
  cursor: pointer;
  position: relative;
  top: -0.2rem;
  right: 0.55rem;
}

section#search-recipe .search .input .svg svg {
  width: 14px;
}

section#search-recipe .search input {
  line-height: 1.1;
  all: unset;
  width: 100%;
  padding-left: 0rem;
  padding-bottom: 0.4rem;
  font-size: 0.875rem;
  font-weight: 500;
  padding-right: 1rem;
  padding-top: 0.2rem;
}

section#search-recipe .search input::placeholder {
  color: var(--grey);
}

body.post-type-archive-recipe section#filter-categories .columns .buttons {
  padding-top: 5.25rem;
  padding-bottom: 5.125rem;
}

section#filter-categories .columns .buttons button {
  all: unset;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  height: 2.62rem;
  padding: 0 1.15rem;
  border: 1px solid var(--blue);
  border-radius: 40px;
  color: var(--blue);
  cursor: pointer;
  transition: all ease-in-out 0.3s;
  opacity: 0;
}

section#filter-categories .columns .buttons button:hover {
  color: white;
  background-color: var(--blue);
}

section#filter-categories .columns .buttons button.active {
  color: white;
  background-color: var(--blue);
}

section#recipes {
  padding-bottom: 8.675rem;
  position: relative;
}

section#recipes .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.5rem;
  row-gap: 12.68rem;
}

body.post-type-archive-associate-area section#recipes .cards,
body.page-template-tmpl-associate-area-login section#recipes .cards {
  row-gap: 4rem;
}

section#recipes .cards .card {
  position: relative;
  width: 100%;
  max-width: 21.75rem;
  border-radius: 20px;
  background-color: white;
  padding-bottom: 2rem;
  display: flex;
  flex-direction: column;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

section#recipes .cards .card .img {
  position: absolute;
  top: -7.52rem;
  left: 50%;
  transform: translateX(-50%);
  max-width: 15.04rem;
  height: 15.04rem;
  width: 100%;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

section#recipes .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#recipes .cards .card .content {
  padding: 0 2rem;
  padding-top: 9.31rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

body.post-type-archive-associate-area section#recipes .cards .card .content,
body.page-template-tmpl-associate-area-login section#recipes .cards .card .content {
  padding-top: 2.2rem;
}

section#recipes .cards .card .content .title {
  padding-bottom: 1.15rem;
}

section#recipes .cards .card .content .title h2 {
  font-size: 1.37rem;
  font-weight: 600;
  line-height: 1.45;
  font-family: var(--ff-alternate);
  color: var(--blue);
  text-transform: uppercase;
}

section#recipes .cards .card .content .description {
  padding-bottom: 1.37rem;
}

section#recipes .cards .card .content .description p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
}

section#recipes .cards .card .info {
  padding-bottom: 1.37rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

section#recipes .cards .card .info.no-padding {
  padding-bottom: 0;
}

section#recipes .cards .card .info p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

section#recipes .cards .card .difficulty {
  padding-top: 1.15rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #e8e8e8;
  margin: 0 2rem;
}

section#recipes .cards .card .difficulty p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.85;
  text-transform: uppercase;
  color: var(--grey);
}

section#recipes .cards .card .difficulty .icon {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

section#recipes .cards .card .difficulty .icon .svg {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

section#recipes .cards .card .difficulty .time {
  display: flex;
  align-items: center;
  gap: 0.68rem;
  margin-left: auto;
}

/* -----------------------------------
==============================================================================
	# SINGOLA RICETTA
==============================================================================
----------------------------------- */

section#recipe-intro {
  padding-top: 11.8rem;
}

section#recipe-intro .container,
section#recipe-ingredients .container,
section#recipe-suggested-wines .container {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 2rem;
}

section#recipe-intro:after,
section#recipe-intro .back-button,
section#recipe-ingredients .container:before,
section#recipe-ingredients .container:after,
section#recipe-suggested-wines .container:before,
section#recipe-suggested-wines .container:after {
  grid-column: span 2;
  content: "";
}

section#recipe-intro .content-wrapper {
  margin-bottom: 2.875rem;
}

section#recipe-intro .content-wrapper iframe {
  width: 100%;
  height: 26.5rem;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

body.single-news section#recipe-intro .content-wrapper .text img {
  width: 100%;
}

body.single-news section#recipe-intro .text ol {
  padding-left: 26px;
  font-weight: 500;
  color: var(--blue);
}

body.single-news section#recipe-intro .text ol li {
  list-style: auto;
}

body.single-news section#recipe-intro .content-wrapper .text h2 {
  margin-bottom: 1.4rem;
}

@media only screen and (max-width: 767px) {
  section#recipe-intro .content-wrapper iframe {
    height: 12rem;
  }
}

section#recipe-intro .content-wrapper,
section#recipe-ingredients .container .columns,
section#recipe-suggested-wines .container .columns {
  grid-column: span 8;
}

section#recipe-intro .content-wrapper .img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

section#recipe-intro .content-wrapper .img img {
  width: 100%;
  object-fit: cover;
}

section#recipe-intro .content-wrapper .img .video-wrapper {
  position: relative;
  padding-bottom: 57%;
}

section#recipe-intro .content-wrapper .img .video-wrapper iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

section#recipe-intro .container .text a {
  color: var(--blue);
  transition: all 200ms ease-in-out;
  font-weight: 500;
  position: relative;
}

section#recipe-intro .container .text a:after {
  content: "";
  position: absolute;
  bottom: -0.11rem;
  left: 0;
  width: 0;
  height: 0.1rem;
  border-bottom: 2px solid var(--blue);
  transform: scaleX(1);
  transform-origin: left center;
  transition: all 0.3s ease;
  white-space: nowrap;
}

section#recipe-intro .container .text a:hover:after {
  width: 100%;
}

section#recipe-intro .container .info {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
  padding-top: 1.5rem;
}

section#recipe-intro .container .info .categories p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

section#recipe-intro .container .info .difficulty-time {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 2rem;
}

section#recipe-intro .container .info .difficulty-time .difficulty {
  display: flex;
  justify-content: space-between;
}

section#recipe-intro .container .info .difficulty-time p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.85;
  text-transform: uppercase;
  color: var(--grey);
}

section#recipe-intro .container .info .difficulty-time .icon {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

section#recipe-intro .container .info .difficulty-time .icon .svg {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

section#recipe-intro .container .info .difficulty-time .time {
  display: flex;
  align-items: start;
  gap: 0.68rem;
}

section#recipe-intro .container .title h1 {
  font-size: 2.81rem;
  color: var(--blue);
  font-weight: 600;
  line-height: 1.15;
  margin-bottom: 1.85rem;
  margin-top: 2.125rem;
}

section#recipe-intro .container .subtitle * {
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.45;
}

section#recipe-intro .container .subtitle a {
  text-decoration: underline;
}

section#recipe-ingredients {
  padding: 6.75rem 0;
}

section#recipe-suggested-wines {
  margin-bottom: 6rem;
}

section#recipe-ingredients .columns,
section#recipe-suggested-wines .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

section#recipe-ingredients .columns .title h3,
section#recipe-suggested-wines .columns .title h3,
section#recipe-intro .title h3 {
  font-size: 1.375rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

section#recipe-intro .social {
  margin-top: 4.8rem;
}

section#recipe-ingredients .columns .column.ingredients .text,
section#recipe-suggested-wines .container .columns .text {
  line-height: 2.25;
}

section#recipe-ingredients .columns .column.ingredients .text li {
  margin-bottom: 0;
}

section#recipe-ingredients .columns .column.preparation .text {
  line-height: 1.625;
  padding-top: 0.35rem;
}

section#recipe-ingredients .columns .column.preparation .text li {
  list-style: unset;
}

section#recipe-ingredients .columns .column ol {
  padding-left: 1.6rem;
}

section#recipe-ingredients .columns .column ol li {
  margin-bottom: 0.7rem;
}

section#recipe-ingredients .columns .column ol li:last-child {
  margin-bottom: 0;
}

body.page-template-conservation-service main {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
}

section#slider-pairings {
  background-color: var(--blue);
  background-image: none;
  margin-top: 9rem;
  margin-bottom: 0;
  padding-top: 4.25rem;
  padding-bottom: 5.875rem;
}

section#pairings-recipe {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 9.5rem;
  padding-bottom: 9.5rem;
}

section#pairings-recipe .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

section#pairings-recipe .bg-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
}

section#pairings-recipe .bg-img img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

section#pairings-recipe .container {
  position: relative;
  z-index: 1;
  top: unset;
  left: unset;
  transform: unset;
}

section#recipe-ingredients {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  margin-bottom: 2.8rem;
  padding-top: 6.75rem;
  padding-bottom: 6.75rem;
}

section#recipe-suggested-wines .container .columns .column.hashtag {
  display: grid;
  align-items: flex-end;
  color: var(--blue);
}

section#recipe-suggested-wines .container .columns .column.social {
  grid-column: span 2;
  margin-top: 2.8rem;
}

section#recipe-suggested-wines .container .columns .column.social.no-margin {
  margin-top: 0;
}

section#related-recipes {
  margin-bottom: 7.5rem;
}

section#related-recipes .related-title {
  margin-top: 6rem;
  margin-bottom: 11.8rem;
}

section#related-recipes .related-title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  color: var(--blue);
}

section#related-recipes .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
}

section#related-recipes .cards .card {
  position: relative;
  width: 100%;
  max-width: 21.75rem;
  border-radius: 20px;
  background-color: white;
  padding-bottom: 2rem;
  display: flex;
  flex-direction: column;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

section#related-recipes .cards .card .img {
  position: absolute;
  top: -7.52rem;
  left: 50%;
  transform: translateX(-50%);
  max-width: 15.04rem;
  height: 15.04rem;
  width: 100%;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

section#related-recipes .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#related-recipes .cards .card .content {
  padding: 0 2rem;
  padding-top: 9.31rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

section#related-recipes .cards .card .content .title {
  padding-bottom: 1.37rem;
}

section#related-recipes .cards .card .content .title h2 {
  font-size: 1.37rem;
  font-weight: 600;
  line-height: 1.45;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

section#related-recipes .cards .card .content .description {
  padding-bottom: 1.37rem;
}

section#related-recipes .cards .card .content .description p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
}

section#related-recipes .cards .card .info {
  padding-bottom: 1.37rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

section#related-recipes .cards .card .info p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.62;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

section#related-recipes .cards .card .difficulty {
  padding-top: 1.15rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #e8e8e8;
  margin: 0 2rem;
}

section#related-recipes .cards .card .difficulty p {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.85;
  text-transform: uppercase;
  color: var(--grey);
}

section#related-recipes .cards .card .difficulty .icon {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

section#related-recipes .cards .card .difficulty .icon .svg {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

section#related-recipes .cards .card .difficulty .time {
  display: flex;
  align-items: center;
  gap: 0.68rem;
}

/* -----------------------------------
==============================================================================
	# NEWS
==============================================================================
----------------------------------- */
section#hero-news {
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  height: var(--vh-100);
  display: grid;
  align-items: center;
  position: relative;
}

section#hero-news .narrow {
  padding-top: 10rem;
  text-align: center;
  padding-bottom: 10rem;
}

section#hero-news .narrow .small-title {
  padding-bottom: 1rem;
}

section#hero-news .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
}

section#hero-news .narrow .title {
  padding-bottom: 1rem;
}

section#hero-news .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  color: var(--blue);
}

section#hero-news .narrow .text {
  max-width: 39rem;
  width: 100%;
  margin: 0 auto;
}

section#hero-news .narrow .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#hero-news .svg-left {
  position: absolute;
  top: 50%;
  transform: translatey(-50%) translatex(-50%);
}

section#hero-news .svg-right {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  overflow: hidden;
  right: 0;
}

section#hero-news .svg-right .svg-wrapper {
  transform: translatex(50%);
}

section#hero-news .svg-left img,
section#hero-news .svg-right img {
  height: calc(var(--vh-100) / 5 * 3);
}

section#article-news .container .columns {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 2rem;
  border-radius: 20px;
  overflow: hidden;
  margin-top: -15.625rem;
  background-color: white;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3);
}

section#article-news .container .columns .column.left {
  grid-column: span 8;
}

section#article-news .container .columns .column.left .img,
section#article-news .container .columns .column.left .img a {
  height: 100%;
}

section#article-news .container .columns .column.left .img img {
  height: 100%;
  object-fit: cover;
  max-height: 33.25rem;
}

section#article-news .container .columns .column.right {
  grid-column: span 4;
  padding: 2rem 2rem 2rem 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

section#article-news .container .columns .column.right .cont .day-read-time,
section#category-article-news .cards .card .cont .day-read-time {
  padding-bottom: 2.81rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.81rem;
  font-weight: 400;
  line-height: 1.07;
  font-family: var(--ff-normal);
  opacity: 0.5;
}

section#category-article-news .cards .card em {
  font-style: normal;
}

section#category-article-news .cards .card .cont .day-read-time {
  padding-top: 2.06rem;
  padding-bottom: 1.06rem;
}

section#associates p.no-results,
section#category-article-news .cards p.no-results {
  grid-column: span 12;
  font-size: 1.375rem;
  line-height: 1.45;
  margin: auto;
  font-family: var(--ff-alternate);
  padding-top: 4rem;
  text-align: center;
}

section#associates p.no-results {
  padding-top: 2rem;
}

body.post-type-archive-recipe p.no-results {
  grid-column: span 12;
  font-size: 1.375rem;
  line-height: 1.45;
  margin: auto;
  font-family: var(--ff-alternate);
  margin-top: -4rem;
}

section#article-news .container .columns .column.right .cont {
  max-width: 20rem;
  width: 100%;
}

section#article-news .container .columns .column.right .cont .day-read-time p {
  all: unset;
}

section#article-news .container .columns .column.right .cont .title {
  padding-bottom: 1rem;
}

section#category-article-news #filter-categories {
  padding-top: 6.25rem;
}

section#category-article-news .cards .card .cont .title {
  padding-bottom: 0.25rem;
}

section#article-news .container .columns .column.right .cont .title h2 {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.12;
}

section#category-article-news .cards .card .cont .title h3 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.16;
}

section#category-article-news .cards .card .cont {
  position: relative;
  padding: 0 1.87rem 1.68rem 1.75rem;
}

section#article-news .container .columns .column.right .cont .text {
  padding-bottom: 0rem;
}

section#article-news .container .columns .column.right .cont .text,
section#category-article-news .cards .card .cont .text {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin-bottom: 1.12rem;
}

section#article-news .container .columns .column.right .cont .read-more,
section#category-article-news .cards .card .cont .read-more {
  font-size: 0.87rem;
  font-weight: 500;
  line-height: 1.42;
  font-family: var(--ff-normal);
  color: var(--blue);
}

section#article-news .container .columns .column.right .cont .read-more {
  padding-bottom: 1.4rem;
}

section#article-news .container .columns .column.right .button {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

section#article-news .container .columns .column.right .button button {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.875rem;
  border: 1px solid var(--blue);
  /* display: flex; */
  align-items: center;
  justify-content: center;
  /* max-width: 7.81rem; */
  padding: 0rem 1rem;
  /* width: 100%; */
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
}

section#article-news .container .columns .column.right .button button:hover {
  color: var(--blue);
  background-color: white;
}

section#category-article-news,
section#category-article-news .cards-wrap {
  position: relative;
}

section#category-article-news .cards-wrap em {
  font-style: normal;
}

section#category-article-news .archive-list {
  padding-bottom: 11.25rem;
}

section#category-article-news .category-search .category-select,
section#category-article-news .category-search .search,
#search .search {
  max-width: 16.56rem;
  width: 100%;
}

#search .search {
  margin: auto;
}

#associates #search {
  margin-bottom: 6.25rem;
}

#search .search .input,
section#category-article-news .category-search .search .input {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 0px;
}

#search .search .input .svg,
section#category-article-news .category-search .search .input .svg {
  cursor: pointer;
  position: relative;
  top: -0.2rem;
  right: 0.55rem;
}

#search .search .input .svg svg,
section#category-article-news .category-search .search .input .svg svg {
  width: 14px;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

section#category-article-news .category-search .category-select p,
section#category-article-news .category-search .search p {
  font-size: 0.87rem;
  font-weight: 600;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  color: var(--blue);
}

section#category-article-news .category-search .category-select .custom-select {
  position: relative;
  width: 100%;
  display: inline-block;
  font-size: 1rem;
  font-family: var(--ff-normal);
  color: var(--grey);
  font-weight: 500;
  line-height: 1.42;
}

section#category-article-news .category-search .category-select .custom-select .select {
  position: relative;
  display: block;
  padding-left: 0rem;
  cursor: pointer;
  border-bottom: 1px solid #e6e6e6;
  padding-bottom: 0.4rem;
}

section#category-article-news .category-search .category-select .custom-select.open .select:after {
  right: 0.1rem;
  top: 50%;
  transform: translate(-0.1rem, -50%) rotate(-225deg);
  transition: all 0.3s ease-out;
}

section#category-article-news .category-search .category-select .custom-select .select:after {
  content: "";
  position: absolute;
  right: 0.1rem;
  top: 40%;
  transform: translate(-0.1rem, -60%) rotate(-45deg);
  z-index: 1;
  width: 6px;
  height: 6px;
  border: 1.5px solid var(--grey);
  border-top: transparent;
  border-right: transparent;
  pointer-events: none;
  transition: all 0.3s ease-out;
}

section#category-article-news .category-search .category-select .custom-select.open .options {
  display: block;
}

section#category-article-news .category-search .category-select .custom-select .options {
  position: absolute;
  top: calc(100% + 15px);
  left: 0;
  right: 0;
  display: none;
  padding: 1.625rem;
  margin: 0;
  background-color: white;
  border-radius: 5px;
  z-index: 1;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}

section#category-article-news .category-search .category-select .custom-select .options .option:first-child {
  padding-top: 0;
}

section#category-article-news .category-search .category-select .custom-select .options .option:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

section#category-article-news .category-search .category-select .custom-select .option {
  display: block;
  cursor: pointer;
  padding-bottom: 0.875rem;
  padding-top: 0.875rem;
  border-bottom: 1px solid #cecece;
  transition: all 200ms ease-in-out;
}

section#category-article-news .category-search .category-select .custom-select .option button {
  all: unset;
  padding: 3px 0;
  width: 100%;
  line-height: 1.1;
}

section#category-article-news .category-search .category-select .custom-select .option:hover,
section#category-article-news .category-search .category-select .custom-select .option.selected {
  background-color: white;
  border-radius: 0px;
  padding-left: 0.3rem;
}

section#category-article-news .category-search {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin: 0 auto;
  padding-bottom: 6.31rem;
}

section#category-article-news .category-search .search input,
#search .search input {
  all: unset;
  width: 100%;
  padding-left: 0.62rem;
  padding-bottom: 0.4rem;
  font-size: 1rem;
  font-weight: 500;
  padding-right: 1rem;
}

section#category-article-news .category-search .search input::placeholder,
#search .search input::placeholder {
  color: var(--grey);
}

section#category-article-news .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2.06rem;
  row-gap: 5.06rem;
}

section#category-article-news .cards .card {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

section#category-article-news .cards .card .img {
  width: 100%;
}

section#category-article-news .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#category-article-news .cards .card .cont .button {
  position: absolute;
  top: -0.935rem;
  display: flex;
  gap: 0.5rem;
}

section#category-article-news .cards .card .cont .button button {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.1;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: 100%;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
}

section#category-article-news .egloo-pagination {
  bottom: -6.8rem;
}

/* -----------------------------------
==============================================================================
	# SINGOLA NEWS
==============================================================================
----------------------------------- */

body.single-news section#recipe-intro .container .title h1,
body.single-associate-area section#recipe-intro .container .title h1 {
  color: var(--darkgrey);
}

body.single-news section#recipe-intro .container .info .categories,
body.single-associate-area section#recipe-intro .container .info .categories {
  display: flex;
  gap: 0.5rem;
}

body.single-news section#recipe-intro .container .info .categories p,
body.single-associate-area section#recipe-intro .container .info .categories p {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 2.36;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: auto;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
  font-family: var(--ff-normal);
}

body.single-news section#recipe-intro .container .info .date-read-views,
body.single-associate-area section#recipe-intro .container .info .date-read-views {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  color: var(--grey);
  opacity: 0.5;
  align-items: center;
  font-size: 0.8125rem;
}

body.single-news section#recipe-intro .container .info .date-read-views .day-read-time,
body.single-associate-area section#recipe-intro .container .info .date-read-views .day-read-time {
  display: flex;
  gap: 0.5rem;
}

body.single-associate-area section#recipe-intro .container .info {
  padding-top: 5rem;
  padding-bottom: 0.5rem;
}

body.single-news section#related-recipes .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
}

body.single-news section#related-recipes .cards .card {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  max-width: 100%;
  padding-bottom: 0;
}

body.single-news section#related-recipes .cards .card .img {
  width: 100%;
  padding: 0;
  position: unset;
  transform: none;
  border-radius: 0;
  max-width: 100%;
  height: auto;
}

body.single-news section#related-recipes .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.single-news section#related-recipes .cards .card .cont .button {
  position: absolute;
  top: -0.935rem;
  display: flex;
  gap: 0.5rem;
}

body.single-news section#related-recipes .cards .card .cont .button button {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.1;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: 100%;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
}

body.single-news section#related-recipes .cards .card .cont .day-read-time {
  padding-bottom: 2.81rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.81rem;
  font-weight: 400;
  line-height: 1.07;
  font-family: var(--ff-normal);
  opacity: 0.5;
}

body.single-news section#related-recipes .cards .card .cont .day-read-time {
  padding-top: 2.06rem;
  padding-bottom: 1.06rem;
}

body.single-news section#related-recipes #filter-categories {
  padding-top: 6.25rem;
}

body.single-news section#related-recipes .cards .card .cont .title {
  padding-bottom: 0.25rem;
}

body.single-news section#related-recipes {
  margin-bottom: 5.75rem;
}

body.single-news section#related-recipes .related-title {
  margin-top: 5rem;
  margin-bottom: 3.375rem;
}

body.single-news section#related-recipes .related-title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  color: var(--blue);
}

body.single-news section#related-recipes .cards .card .cont .title h3 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.16;
}

body.single-news section#related-recipes .cards .card .cont {
  position: relative;
  padding: 0 1.87rem 1.68rem 1.75rem;
}

body.single-news section#related-recipes .cards .card .cont .text {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin-bottom: 1.12rem;
  padding-top: 0.5rem;
}

body.single-news section#related-recipes .cards .card .cont .read-more {
  font-size: 0.87rem;
  font-weight: 500;
  line-height: 1.42;
  font-family: var(--ff-normal);
  color: var(--blue);
}

body.single-associate-area section#related-recipes .related-title {
  margin-top: 3rem;
  margin-bottom: 4rem;
}

body.single-associate-area section#related-recipes .cards .card .content {
  padding-top: 2.2rem;
}

/* -----------------------------------
==============================================================================
	# FOOTER
==============================================================================
----------------------------------- */
footer {
  width: 100%;
  background-color: var(--blue);
}

footer .columns {
  padding-top: 5.31rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding-bottom: 5.27rem;
  gap: 2rem;
}

footer .columns .column {
  grid-column: span 1;
  color: white;
}

footer .columns .column.logo {
  display: flex;
  justify-content: space-between;
  align-content: space-between;
  flex-direction: column;
}

footer .columns .column.logo .logo {
  max-width: 10.37rem;
  width: 100%;
}

footer .columns .column.logo .logo img {
  width: 100%;
  object-fit: cover;
  max-width: 9rem;
}

footer .columns .column.logo .logo img.dop-footer {
  max-width: 4.5rem;
  margin-left: 2.15rem;
  margin-top: 1rem;
}

footer .columns .column.logo .socials {
  display: flex;
  gap: 1.01rem;
}

footer .columns .column.logo .socials a {
  position: relative;
}

footer .columns .column.logo .socials a img {
  transition: all 0.3s ease-out;
}

footer .columns .column.logo .socials a img.after {
  position: absolute;
  left: 0;
  top: 0;
}

footer .columns .column.logo .socials a img.after,
footer .columns .column.logo .socials a:hover img.before {
  opacity: 0;
  visibility: hidden;
}

footer .columns .column.logo .socials a:hover img.after {
  opacity: 1;
  visibility: visible;
}

footer .columns .column.logo .socials a:hover img {
  scale: 1.2;
}

footer .columns .column.menu .cont-menu .list-title,
footer .columns .column.contacts .cont-contacts .list-title,
footer .columns .column.login .cont-login .list-title {
  font-family: var(--ff-alternate);
  font-size: 1rem;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 2.5rem;
}

footer .columns .column.menu .cont-menu .list,
footer .columns .column.contacts .cont-contacts .list,
footer .columns .column.login .cont-login .list {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.62;
  font-family: var(--ff-normal);
}

footer .columns .column a,
footer .bottom-footer .left a {
  transition: all 0.3s ease-out;
}

footer .columns .column a:hover,
footer .bottom-footer .left a:hover {
  color: #bbb;
}

footer .columns .column.contacts .cont-contacts .list .address {
  padding: 1.5rem 0;
}

footer .columns .column.contacts .cont-contacts .list .email {
  padding-top: 1.5rem;
}

footer hr {
  margin-bottom: 2.37rem;
}

footer .bottom-footer {
  color: white;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 2.5rem;
  font-size: 1rem;
  font-weight: 600;
}

footer .bottom-footer .left {
  display: flex;
  gap: 2.81rem;
}

/* -----------------------------------
==============================================================================
	# LO SCOPO
==============================================================================
----------------------------------- */

section#intro {
  position: relative;
  display: grid;
  align-items: center;
  height: var(--vh-100);
  background-color: #f8f8f8;
}

section#intro .narrow {
  padding-top: 10rem;
  padding-bottom: 10rem;
  text-align: center;
}

section#intro .narrow .small-title {
  padding-bottom: 1rem;
}

section#intro .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
  text-transform: uppercase;
}

section#intro .narrow .title {
  padding-bottom: 1rem;
}

body.page-template-tmpl-dop section#intro .narrow .title h1 {
  text-transform: uppercase;
}

section#intro .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
  color: var(--blue);
}

section#intro .narrow .text {
  max-width: 47.5rem;
  width: 100%;
  margin: 0 auto;
}

section#intro .narrow .text p {
  font-size: 1.37rem;
  font-weight: 400;
  line-height: 1.45;
  font-family: var(--ff-alternate);
}

section#intro .container {
  max-width: 59.875rem;
}

section#intro .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.75rem;
}

section#intro .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

section#intro .svg-left {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  left: 0;
}

section#intro .svg-left .svg-wrapper {
  transform: translatex(-50%);
}

section#intro .svg-right {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  overflow: hidden;
  right: 0;
}

section#intro .svg-right .svg-wrapper {
  transform: translatex(50%);
}

section#intro .svg-left img,
section#intro .svg-right img {
  height: calc(var(--vh-100) / 5 * 3);
}

section#intro .arrow-down {
  position: absolute;
  bottom: 4.5rem;
  left: 50%;
  transform: translatex(-50%);
}

section#intro button {
  all: unset;
  cursor: pointer;
  position: relative;
  top: 0;
  transition: top 200ms ease-in-out;
}

section#intro button:hover {
  top: 0.5rem;
}

section#scope-gallery {
  margin-top: -2.6rem;
  background-color: var(--bg-light);
}

section#scope-gallery .eg-shape.shape-position-top-inside {
  z-index: 2;
}

section#scope-gallery .swiper-slide {
  position: relative;
}

section#scope-gallery .swiper-slide .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.15);
}

section#scope-gallery .swiper-slide img {
  max-height: 38.5rem;
  width: 100%;
  object-fit: cover;
}

section#scope-gallery .swiper-pagination {
  bottom: 3.9rem;
  display: flex;
  justify-content: center;
  gap: 0.5rem;
}

section#scope-gallery .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
  width: 0.625rem;
  height: 0.625rem;
  background-color: rgba(255, 255, 255, 0.5);
  transition: all 300ms ease-in-out;
}

section#scope-gallery .swiper-pagination .swiper-pagination-bullet:hover,
section#scope-gallery .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: white;
}

body.page-template-tmpl-the-scope section#scope-commitments {
  padding-bottom: 6rem;
}

section#scope-commitments {
  padding-bottom: 9rem;
  padding-top: 5rem;
}

section#scope-commitments .container {
  max-width: 59.875rem;
}

section#scope-commitments .container .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.75rem;
}

section#scope-commitments .container .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  font-size: 1.25rem;
}

body.page-template-tmpl-dop section#safeguards .container .title h2 {
  padding-top: 7rem;
}

body.page-template-tmpl-dop section#scope-logo {
  padding-bottom: 17rem;
}

section#scope-logo {
  background-color: var(--blue);
  padding-bottom: 24rem;
}

section#scope-logo .container {
  padding-top: 5rem;
}

section#scope-logo .container .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  color: white;
  align-items: flex-end;
}

section#scope-logo .container .columns .column.left .img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
  max-width: 26.75rem;
  margin: auto;
}

section#scope-logo .container .columns .column.right .title,
section#scope-logo .container .columns .column.right .text {
  max-width: 28.9375rem;
}

section#scope-logo .container .columns .column.right .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.78rem;
}

section#scope-logo .container .columns .column.right .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#scope-logo .container .columns .column.right .signature h3 {
  font-size: 6.25rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.75);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1.5rem;
  text-align: right;
}

section#scope-expo {
  padding-bottom: 6.6875rem;
}

section#scope-expo .container .content {
  max-width: 51.5rem;
  margin: auto;
  position: relative;
  z-index: 2;
  top: -14.5rem;
  margin-bottom: -14.5rem;
}

section#scope-expo .container .content iframe {
  width: 100%;
  height: 27.55rem;
}

section#scope-expo .container .content .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 4.18rem;
  color: white;
  text-align: center;
}

/* -----------------------------------
==============================================================================
	# D.O.P.
==============================================================================
----------------------------------- */

section#made-italy {
  overflow-x: hidden;
  padding-top: 5rem;
  padding-bottom: 13.25rem;
}

section#made-italy .container .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

section#made-italy .container .columns .column.right .img {
  position: relative;
  max-width: 26.75rem;
  margin: auto;
}

section#made-italy .container .columns .column.right .img > img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
}

section#made-italy .container .columns .column.right .icon {
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(50%, 50%);
  z-index: -1;
}

section#made-italy .container .columns .column.right .icon img {
  max-width: 10rem;
}

section#made-italy .container .columns .column.left .title,
section#made-italy .container .columns .column.left .text {
  max-width: 28.9375rem;
  margin-left: auto;
}

section#made-italy .container .columns .column.left .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.78rem;
}

section#made-italy .container .columns .column.left .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#made-italy .container .columns .column.left .signature h3 {
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1rem;
  padding-bottom: 2.5rem;
}

section#made-italy .container .description {
  font-size: 1.375rem;
  line-height: 1.45;
  padding-top: 6.5rem;
  max-width: 47.5rem;
  margin: auto;
  font-family: var(--ff-alternate);
}

section#made-italy .container .columns .column.right .img .icon.svg-right img {
  width: 10rem;
}

section#safeguards {
  background-color: var(--bg-light);
  position: relative;
}

section#safeguards .img-bg {
  position: absolute;
  top: -9rem;
  left: 50%;
  transform: translatex(-50%);
}

section#safeguards .img-bg img {
  max-width: 32rem;
}

section#safeguards .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  align-items: center;
  padding-bottom: 6.25rem;
}

section#safeguards .columns .column.right {
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
  margin-right: auto;
  padding-right: 1.25rem;
}

section#safeguards .columns .column.right .title,
section#safeguards .columns .column.right .text {
  max-width: 28.9375rem;
}

section#safeguards .columns .column.right .text {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
  padding-right: 1rem;
}

section#safeguards .columns .column.right .signature h3 {
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1rem;
  text-align: right;
}

section#safeguards .column.left {
  padding-right: 8.33%;
  height: 100%;
}

section#safeguards .column.left .img {
  border-radius: 0 20px 20px 0;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
  height: 100%;
}

section#safeguards .column.left .img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

section#safeguards .title h2,
section#safeguards .title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.78rem;
}

section#safeguards .container .title h2 {
  max-width: 41.75rem;
  margin: auto;
  color: var(--blue);
  width: 100%;
  text-align: center;
  padding-bottom: 5rem;
  padding-top: 12rem;
}

/* -----------------------------------
==============================================================================
	# ARCHIVIO RUBRICHE
==============================================================================
----------------------------------- */

body.post-type-archive-column section#hero-with-bg .bg-img .overlay {
  background-color: rgba(0, 0, 0, 0.3);
}

body.post-type-archive-column section#text-section .container.narrow {
  max-width: 49.5rem;
}

body.post-type-archive-column section#category-article-news .category-search .category-select,
body.post-type-archive-column section#category-article-news .category-search .search {
  max-width: 35.125rem;
}

body.post-type-archive-column section#category-article-news .cards .card .cont .day-read-time {
  padding-top: 1.8rem;
}

section#section-accordion .items {
  max-width: 63.875rem;
  margin: auto;
  display: grid;
  gap: 2rem;
  margin-top: 5rem;
}

section#section-accordion .items .item {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 20px;
}

section#section-accordion .items .item .title {
  padding: 2rem;
  cursor: pointer;
}

section#section-accordion .items .item .title h3 {
  font-size: 1.375rem;
  font-weight: bold;
  color: var(--blue);
  position: relative;
  display: flex;
  justify-content: space-between;
}

section#section-accordion .items .item .title h3:after {
  content: "+";
}

section#section-accordion .items .item.active h3:after {
  content: "-";
}

section#section-accordion .items .item .text {
  line-height: 1.5;
  font-size: 1.25rem;
  opacity: 0;
  visibility: hidden;
  transition: all 200ms ease-in-out;
  overflow: hidden;
  max-height: 0rem;
  padding: 0 2rem;
}

section#section-accordion .items .item.active .text {
  border-top: 1px solid #dddddd;
  opacity: 1;
  visibility: visible;
  max-height: 1000rem;
  padding-bottom: 2.375rem;
  padding-top: 1rem;
}

/* -----------------------------------
==============================================================================
	# SINGOLA RUBRICA
==============================================================================
----------------------------------- */

body.single-column section#recipe-intro .container .title h1 {
  color: var(--darkgrey);
}

body.single-column section#recipe-intro .container .info {
  display: block;
}

body.single-column section#recipe-intro .container .info .categories {
  display: flex;
  gap: 0.5rem;
}

body.single-column section#recipe-intro .container .info .categories p {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 2.36;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: auto;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
  font-family: var(--ff-normal);
}

body.single-column section#recipe-intro .container .info .date-read-views {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  color: var(--grey);
  opacity: 0.5;
  align-items: center;
  font-size: 0.8125rem;
}

body.single-column section#recipe-intro .container .info .date-read-views .day-read-time {
  display: flex;
  gap: 0.5rem;
}

body.single-column section#related-recipes .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
}

body.single-column section#related-recipes .cards .card {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  max-width: 100%;
  padding-bottom: 0;
}

body.single-column section#related-recipes .cards .card .img {
  width: 100%;
  padding: 0;
  position: unset;
  transform: none;
  border-radius: 0;
  max-width: 100%;
  height: auto;
}

body.single-column section#related-recipes .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.single-column section#related-recipes .cards .card .cont .button {
  position: absolute;
  top: -0.935rem;
  display: flex;
  gap: 0.5rem;
}

body.single-column section#related-recipes .cards .card .cont .button button {
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 2.36;
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 1rem;
  width: 100%;
  height: 1.875rem;
  border-radius: 40px;
  background-color: var(--blue);
  color: white;
  transition: all ease-in-out 0.3s;
  pointer-events: none;
  text-transform: uppercase;
}

body.single-column section#related-recipes .cards .card .cont .day-read-time {
  padding-bottom: 2.81rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.81rem;
  font-weight: 400;
  line-height: 1.07;
  font-family: var(--ff-normal);
  opacity: 0.5;
}

body.single-column section#related-recipes .cards .card .cont .day-read-time {
  padding-top: 1.8rem;
  padding-bottom: 1.06rem;
}

body.single-column section#related-recipes #filter-categories {
  padding-top: 6.25rem;
}

body.single-column section#related-recipes .cards .card .cont .title {
  padding-bottom: 0.25rem;
}

body.single-column section#related-recipes {
  margin-bottom: 5.75rem;
}

body.single-column section#related-recipes .related-title {
  margin-top: 5rem;
  margin-bottom: 3.375rem;
}

body.single-column section#related-recipes .related-title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  color: var(--blue);
}

body.single-column section#related-recipes .cards .card .cont .title h3 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.16;
}

body.single-column section#related-recipes .cards .card .cont {
  position: relative;
  padding: 0 1.87rem 1.68rem 1.75rem;
}

body.single-column section#related-recipes .cards .card .cont .text {
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1.42;
  font-family: var(--ff-alternate);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin-bottom: 1.12rem;
}

body.single-column section#related-recipes .cards .card .cont .read-more {
  font-size: 0.87rem;
  font-weight: 500;
  line-height: 1.42;
  font-family: var(--ff-normal);
  color: var(--blue);
}

/* -----------------------------------
==============================================================================
	# GENERAZIONE Z
==============================================================================
----------------------------------- */

section#hero-generation-z {
  background-color: var(--blue);
  color: white;
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  height: var(--vh-100);
  position: relative;
  display: grid;
  align-items: center;
}

section#hero-generation-z .container.narrow {
  text-align: center;
  padding-top: 10rem;
  padding-bottom: 10rem;
}

section#hero-generation-z .small-title {
  padding-bottom: 1rem;
}

section#hero-generation-z .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
  text-transform: uppercase;
}

section#hero-generation-z .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
}

section#hero-generation-z .img {
  position: absolute;
  bottom: -6.3rem;
  left: 50%;
  transform: translatex(-50%);
  z-index: 2;
}

section#hero-generation-z .img img {
  max-width: 29.5rem;
}

body.page-template-tmpl-generation-z section#recipes {
  background-color: var(--bg-light);
}

body.page-template-tmpl-generation-z section#recipes > .container > .text {
  max-width: 47.5rem;
  margin: auto;
  font-size: 1.375rem;
  line-height: 1.45;
  text-align: center;
  padding-top: 9.375rem;
  font-family: var(--ff-alternate);
}

body.page-template-tmpl-generation-z section#recipes .cards-wrap {
  padding-top: 14.5rem;
}

/* -----------------------------------
==============================================================================
	# ESPORTAZIONE
==============================================================================
----------------------------------- */

section#hero-with-bg {
  display: grid;
  align-items: center;
  color: white;
  height: 87vh;
}

section#hero-with-bg .bg-img {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

section#hero-with-bg .bg-img .img {
  width: 100%;
  height: 100%;
}

section#hero-with-bg .bg-img .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#hero-with-bg .bg-img .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
}

section#hero-with-bg .narrow {
  padding-top: 10rem;
  padding-bottom: 10rem;
  text-align: center;
  position: relative;
  z-index: 1;
  margin-top: 2rem;
}

section#hero-with-bg .narrow .small-title {
  padding-bottom: 1rem;
}

section#hero-with-bg .narrow .small-title p {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: var(--ff-normal);
}

section#hero-with-bg .narrow .title {
  padding-bottom: 1rem;
}

section#hero-with-bg .narrow .title h1 {
  font-size: 4.37rem;
  font-weight: 600;
  line-height: 1.05;
}

body.page-template-tmpl-export section#safeguards .container .title h2 {
  max-width: 51.75rem;
}

body.page-template-tmpl-export section#safeguards .img-bg {
  top: -15rem;
}

body.page-template-tmpl-export section#safeguards .img-bg img {
  max-width: 27rem;
}

section#safeguards .description {
  text-align: center;
  font-size: 1.375rem;
  line-height: 1.45;
  max-width: 49.5rem;
  margin: auto;
  padding-bottom: 7.5rem;
  font-family: var(--ff-alternate);
}

/* -----------------------------------
==============================================================================
	# ZONE DI PRODUZIONE
==============================================================================
----------------------------------- */

body.page-template-tmpl-production-area section#hero-with-bg .bg-img .overlay {
  background-color: rgba(0, 0, 0, 0.5);
}

section#text-section .container.narrow {
  max-width: 47.5rem;
  padding-top: 4.9rem;
}

section#text-section .container.narrow .text {
  font-size: 1.375rem;
  line-height: 1.45;
  margin: auto;
  font-family: var(--ff-alternate);
}

section#taste-numbers {
  padding-top: 4.0625rem;
  padding-bottom: 7rem;
  position: relative;
}

section#taste-numbers .bg img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

section#taste-numbers .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  color: var(--blue);
}

section#taste-numbers .numbers {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  text-align: center;
  padding-top: 4.9375rem;
}

section#taste-numbers .single-number .number {
  font-size: 4.375rem;
  font-weight: 600;
  position: relative;
  line-height: 1.05;
  color: var(--blue);
  font-family: var(--ff-alternate);
}

section#taste-numbers .single-number .number:after {
  width: 5rem;
  height: 2px;
  left: 50%;
  position: absolute;
  bottom: -0.55rem;
  transform: translatex(-50%);
  content: "";
  border-bottom: 2px solid var(--darkgrey);
}

section#taste-numbers .single-number .text {
  color: var(--blue);
  font-weight: 500;
  margin-top: 1.5rem;
}

/* -----------------------------------
==============================================================================
	# RICHIEDI RICETTA
==============================================================================
----------------------------------- */

body.page-template-tmpl-request-recipe main {
  background-color: var(--bg-light);
}

section#form-recipe .title {
  padding-top: 6.87rem;
  padding-bottom: 2.37rem;
}

section#form-recipe .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  font-family: var(--ff-alternate);
  text-align: center;
}

section#form-recipe .text {
  max-width: 48rem;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 3.43rem;
}

section#form-recipe .text p {
  font-size: 1.37rem;
  line-height: 1.45;
  font-weight: 400;
  font-family: var(--ff-alternate);
}

section#form-recipe .text p strong {
  font-weight: 600;
}

section#form-recipe .form {
  padding-bottom: 6.81rem;
}

section#form-recipe .form .name-email {
  max-width: 35.12rem;
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: start;
  gap: 2rem;
  margin-bottom: 2.5rem;
}

section#form-recipe .form .name-email .name input,
section#form-recipe .form .name-email .email input {
  all: unset;
  border: 1px solid var(--blue);
  border-radius: 40px;
  height: 2.62rem;
  padding: 0 1.43rem;
  width: calc(100% - 3rem);
}

section#form-recipe .form .name-email .name input[placeholder],
section#form-recipe .form .name-email .email input[placeholder] {
  color: var(--blue);
  font-size: 1rem;
  font-weight: 600;
  font-family: var(--ff-normal);
}

section#form-recipe .form .newsletter {
  max-width: 35rem;
  width: 100%;
  margin: 0 auto;
}

section#form-recipe .form .newsletter .title {
  padding: 0rem;
}

section#form-recipe .form .newsletter .title p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.62;
  font-family: var(--ff-normal);
  text-align: center;
}

section#form-recipe .form .newsletter .content {
}

section#form-recipe .form .newsletter .content label {
  display: grid;
}

section#form-recipe .form .newsletter .content label input {
  display: none;
}

section#form-recipe .form .newsletter .content {
  display: flex;
  justify-content: center;
  padding-top: 2.5rem;
}

section#form-recipe .form .newsletter .content label span {
  border-radius: 20px;
  border: 1px solid var(--blue);
  padding: 0.5rem 1.6rem;
  color: var(--blue);
  font-weight: 700;
  cursor: pointer;
  min-width: 4.125rem;
}

section#form-recipe .form .newsletter .content label input:checked + span {
  background-color: var(--blue);
  color: white;
  border-radius: 20px;
  border: 1px solid var(--blue);
  padding: 0.5rem 1.6rem;
}

section#form-recipe .form .newsletter .content .first {
  margin: 0;
}

section#form-recipe .form .newsletter .content .last {
  margin-left: 2rem;
}

section#form-recipe .form .newsletter .content label input {
  border: 1px solid var(--blue);
  padding: 0.5rem 1.6rem;
}

section#form-recipe .form .submit {
  padding-top: 2.81rem;
  position: relative;
}

section#form-recipe .form .submit p {
  position: relative;
}

section#form-recipe .form .submit .wpcf7-spinner {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

section#form-recipe .form .submit p,
section#form-recipe .download-recipe {
  text-align: center;
}

section#form-recipe .form .wpcf7.unactive {
  display: none;
}

section#form-recipe .download-recipe {
  display: flex;
  justify-content: center;
  text-transform: uppercase;
  display: none;
}

section#form-recipe .download-recipe.active {
  display: flex;
}

section#form-recipe .form .submit input,
section#form-recipe .download-recipe a {
  all: unset;
  padding: 0 1.2rem;
  height: 2.62rem;
  border: 1px solid var(--blue);
  border-radius: 40px;
  font-size: 1rem;
  line-height: 1.62;
  font-weight: 700;
  color: white;
  background-color: var(--blue);
  transition: all ease-in-out 0.3s;
  cursor: pointer;
}

section#form-recipe .download-recipe a {
  line-height: 2.62rem;
}

section#form-recipe .form .submit input:hover,
section#form-recipe .download-recipe a:hover {
  background-color: white;
  color: var(--blue);
}

section#form-recipe .wpcf7 form .wpcf7-response-output {
  padding: 0;
  margin: 0;
  border: 0;
  text-align: center;
  padding-top: 2.2rem;
}

/* -----------------------------------
==============================================================================
	# IL GORGONZOLA
==============================================================================
----------------------------------- */

body.page-template-tmpl-gorgonzola section#safeguards {
  background-color: white;
}

body.page-template-tmpl-gorgonzola section#safeguards .columns {
  padding: 5rem 0;
  align-items: flex-end;
}

body.page-template-tmpl-gorgonzola section#safeguards .columns .column.right .signature h3 {
  padding-bottom: 2.5rem;
  padding-top: 0;
}

body.page-template-tmpl-gorgonzola section#safeguards .column.left .img {
  max-width: 26.75rem;
  margin: auto;
  border-radius: 20px;
}

body.page-template-tmpl-gorgonzola section#safeguards .description {
  max-width: 47.5rem;
  padding-bottom: 8.5rem;
}

section#nutritional-values {
  position: relative;
}

section#nutritional-values .bg {
  display: grid;
  align-items: flex-end;
}

section#nutritional-values .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  padding-top: 7.8rem;
  padding-bottom: 9.375rem;
  align-items: center;
}

section#nutritional-values .title h2 {
  max-width: 28.9375rem;
  margin-left: auto;
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#nutritional-values .container .img {
  width: 100%;
  margin: auto;
}

body.page-template-tmpl-gorgonzola section#scope-logo {
  padding-bottom: 7.25rem;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  color: white;
  align-items: flex-end;
  padding-top: 4.8rem;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.right .img {
  border-radius: 20px 0 0 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
  margin-left: 8.33%;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .column-left-wrapper {
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
  padding-top: 6.5rem;
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .title,
body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .text {
  max-width: 28.9375rem;
  margin-left: auto;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .text {
  padding-bottom: 1.5rem;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  padding-bottom: 1.78rem;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .signature h3 {
  font-size: 6.25rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.75);
  font-family: var(--ff-big);
  line-height: 0.8;
  position: absolute;
}

body.page-template-tmpl-gorgonzola section#pairings-recipe {
  padding-top: 11.5rem;
  padding-bottom: 11.5rem;
}

body.page-template-tmpl-gorgonzola section#pairings-recipe .bg-img::after {
  background-color: rgba(0, 0, 0, 0.5);
}

body.page-template-tmpl-gorgonzola section#pairings-recipe .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  font-family: var(--ff-alternate);
}

body.page-template-tmpl-gorgonzola section#pairings-recipe .text {
  font-size: 1.375rem;
  line-height: 1.45;
  font-family: var(--ff-alternate);
  max-width: 47.5rem;
  margin: auto;
  padding-top: 2.5rem;
}

body.page-template-tmpl-gorgonzola section#pairings-recipe .text img {
  display: inline-block;
  width: 19px;
  position: relative;
  top: 4px;
}

body.page-template-tmpl-gorgonzola section#category-article-news .archive-list {
  padding-bottom: 6.625rem;
}

body.page-template-tmpl-gorgonzola section#category-article-news .cta-wrap {
  text-align: center;
  padding-top: 3.375rem;
}

body.page-template-tmpl-gorgonzola section#category-article-news .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  font-family: var(--ff-alternate);
  color: var(--blue);
  text-align: center;
  padding-top: 5.3rem;
  padding-bottom: 3.15rem;
}

section#how-to-produce-title {
  background-color: var(--blue);
  padding-bottom: 20rem;
}

section#how-to-produce-title .title h2 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
  font-family: var(--ff-alternate);
  color: white;
  text-align: center;
  padding-top: 5.3rem;
}

body.page-template-tmpl-gorgonzola #video .video {
  max-width: 51.5rem;
  margin: auto;
  position: relative;
  z-index: 2;
  margin-top: -17rem;
}

body.page-template-tmpl-gorgonzola #video .video iframe {
  width: 100%;
  height: 27.55rem;
}

/* -----------------------------------
==============================================================================
	# LE ORIGINI
==============================================================================
----------------------------------- */

body.page-template-tmpl-origin section#hero-with-bg h1 {
  max-width: 45.25rem;
  margin: auto;
}

body.page-template-tmpl-origin section#made-italy {
  padding-bottom: 11.25rem;
  padding-top: 6.875rem;
}

body.page-template-tmpl-origin section#made-italy .container .columns .column.left .signature h3 {
  padding-top: 0;
}

body.page-template-tmpl-origin section#scope-logo {
  padding-bottom: 9.25rem;
  padding-top: 1rem;
}

body.page-template-tmpl-origin section#slider-pairings {
  background-color: white;
  background-image: url(./files/img/texture.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 300px 300px;
  margin-top: 0;
  padding: 6.875rem 0;
}

body.page-template-tmpl-origin section#slider-pairings .columns .column.right .img {
  margin: 0;
  margin-left: 8.33%;
  max-width: 100%;
  height: 100%;
}

body.page-template-tmpl-origin section#slider-pairings .columns .column.right .img img {
  height: 100%;
  object-fit: cover;
}

body.page-template-tmpl-origin section#slider-pairings .columns {
  color: var(--darkgrey);
}

body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper {
  max-width: calc((var(--site-width) - 2.5rem) / 2);
  width: 100%;
  padding-left: 1.25rem;
  padding-top: 6.5rem;
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
}

body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .title,
body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .text {
  max-width: 29.93rem;
  margin-left: auto;
  padding-left: 2rem;
}

body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .signature h2 {
  font-size: 6.25rem;
  font-weight: 400;
  color: var(--blue);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-bottom: 2.2rem;
}

/* -----------------------------------
==============================================================================
	# LA STORIA
==============================================================================
----------------------------------- */

body.page-template-tmpl-history section#slider-pairings {
  margin-top: -3rem;
}

body.page-template-tmpl-history section#taste-numbers {
  padding-top: 7.6rem;
}

section#slider-history {
  background-color: var(--blue);
  background-size: cover;
  background-position: top center;
  padding-top: 8rem;
  padding-bottom: 7.75rem;
}

section#slider-history .swiper.main {
  padding-bottom: 4.6rem;
}

section#slider-history .columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
  color: white;
}

section#slider-history .columns .column.left .signature h2 {
  font-size: 6.25rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.75);
  font-family: var(--ff-big);
  line-height: 0.8;
  padding-top: 1.5rem;
}

section#slider-history .columns .column.left .column-wrapper {
  max-width: 29.93rem;
  margin-left: auto;
  padding-right: 2rem;
  padding-top: 5rem;
}

section#slider-history .columns .column.left .title {
  padding-bottom: 1.78rem;
}

section#slider-history .columns .column.left .title h3 {
  font-size: 2.81rem;
  font-weight: 600;
  line-height: 1.15;
}

section#slider-history .columns .column.left .text p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

section#slider-history .columns .column.left .text p img {
  display: inline-block;
  width: 19px;
  position: relative;
  top: 4px;
}

section#slider-history .columns .column.right .img {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
  max-width: 26.75rem;
  margin: auto;
}

section#slider-history .swiper-navigation {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 1;
}

section#slider-history .swiper-navigation .swiper-navigation-wrapper {
  max-width: 29.93rem;
  margin-left: auto;
  padding-right: 2rem;
  width: 100%;
  display: flex;
  gap: 1.68rem;
}

section#slider-history .swiper-navigation .swiper-navigation-wrapper .swiper-button-disabled img {
  opacity: 0.5;
  cursor: not-allowed;
}

section#slider-history .swiper-navigation .swiper-navigation-wrapper img {
  cursor: pointer;
}

section#slider-history .swiper-thumbnail-wrap {
  position: relative;
}

section#slider-history .swiper-thumbnail-wrap:after {
  content: "";
  bottom: 0.9rem;
  left: 0;
  width: 100%;
  border-bottom: 1px solid white;
  height: 1px;
  position: absolute;
}

section#slider-history .swiper-thumbnail-wrap .swiper-slide {
  height: 4.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 6.5rem;
  cursor: pointer;
}

section#slider-history .swiper-thumbnail-wrap .swiper-slide.swiper-slide-thumb-active .number p {
  font-size: 1.75rem;
  color: white;
  top: -0.5rem;
}

section#slider-history .swiper-thumbnail-wrap .swiper-slide .number p {
  padding-bottom: 1.9rem;
  font-size: 1.25rem;
  font-family: var(--ff-alternate);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.2);
  text-align: center;
  transition: color 200ms ease-in-out;
  position: relative;
}

section#slider-history .swiper-thumbnail-wrap .swiper-slide .number:after {
  content: "";
  background-color: white;
  width: 0.9375rem;
  height: 0.9375rem;
  position: absolute;
  bottom: 0.5rem;
  left: 50%;
  transform: translatex(-50%);
  border-radius: 50%;
  transition: all 200ms ease-in-out;
}

section#slider-history .swiper-thumbnail-wrap .swiper-slide.swiper-slide-thumb-active .number:after {
  transform: scale(1.8) translatex(-0.3rem);
}

@media only screen and (min-width: 1280px) {
  body.home section#made-in-italy .hand-written-title,
  body.home section#storia .section-subtitle,
  section#made-italy .container .columns .column.left .signature h3,
  section#safeguards .columns .column.right .signature h3,
  section#slider-history .columns .column.left .signature h2,
  section#content-associate h2,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .signature h3,
  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .signature h2,
  section#intro-pairings .signature h3,
  section#intro-conservation-service .signature h3,
  section#last-conservation-service .columns .column.left .signature h3,
  section#scope-logo .container .columns .column.right .signature h3,
  body.home section#dop .image-phrase {
    font-size: 7rem;
    /* 6.25 da desktop; */
  }
}

@media only screen and (min-width: 768px) and (max-width: 1420px) {
  body.home section#ricette .results-wrap .container {
    padding-left: 6.3rem;
    padding-right: 6.3rem;
  }

  body.home section#ricette .swiper-navigation {
    width: calc(100% - 2.9rem);
  }

  body.home section#ricette .swiper-navigation .swiper-arrow-prev {
    left: 0;
  }

  body.home section#ricette .swiper-navigation .swiper-arrow-next {
    right: 0;
  }

  body.home section#ricette .cards .card .img {
    max-width: 15vw;
    height: 15vw;
    top: -7.5vw;
  }
}

@media only screen and (min-width: 767px) and (max-width: 1080px) {
  body.home section#storia {
    --main-image-width: calc((var(--site-width) - 2.5rem) * 0.295);
  }

  body.home section#storia .single-image-wrapper[data-position="-1"] {
    right: calc(100% - (var(--main-image-width) * 0.5));
  }

  section#slider-pairings .swiper-navigation .swiper-navigation-wrapper {
    padding-left: 3.25rem;
    margin-left: 0;
  }

  body.page-template-tmpl-production-area section#slider-pairings .swiper-navigation .swiper-navigation-wrapper,
  body.page-template-tmpl-pairings section#slider-pairings .swiper-navigation .swiper-navigation-wrapper {
    padding-left: 0rem;
  }

  .back-button a {
    font-size: 0px;
    gap: 0;
    height: 3.12rem;
    width: 3.12rem;
    padding: 0;
    justify-content: center;
  }
}

@media only screen and (min-width: 767px) and (max-width: 1024px) {
  body.home section#storia {
    --main-image-width: calc((var(--site-width) - 2.5rem) * 0.295);
  }

  body.home section#storia .single-image-wrapper[data-position="-1"] {
    right: calc(100% - (var(--main-image-width) * 0.5));
  }

  body.home section#novita .cards,
  section#category-article-news .cards,
  body.single-column section#related-recipes .cards,
  body.archive section#recipes .cards,
  body.page-template-tmpl-generation-z section#recipes .cards {
    grid-template-columns: repeat(2, 1fr);
  }

  body.home section#novita .cards .card:last-child,
  body:not(.archive) section#category-article-news .cards .card:last-child,
  body.single-column section#related-recipes .cards .card:last-child {
    display: none;
  }

  section#intro .svg-left img,
  section#intro .svg-right img,
  section#hero-pairings .svg-left img,
  section#hero-pairings .svg-right img,
  section#hero-conservation-service .svg-left img,
  section#hero-conservation-service .svg-right img,
  section#hero-news .svg-left img,
  section#hero-news .svg-right img {
    height: calc(var(--vh-100) / 5 * 2);
  }

  body.home section#storia .texts-wrap .svg-left,
  body.home section#storia .texts-wrap .svg-right {
    top: calc((var(--site-width) - 2.5rem) * 0.25 / 2 * -1);
    width: calc((var(--site-width) - 2.5rem) * 0.25);
  }

  section#scope-commitments .container .columns,
  body.home section#made-in-italy .text-wrap,
  body.home section#dop .text-wrap,
  section.oval-section .small-title,
  body.home section#ricette .text-wrap,
  body.home section#associati .text-wrap,
  body.home section#rubriche .container .small-title,
  section#slider-history .columns .column.left .text p,
  section#intro .narrow .small-title p,
  section#safeguards .columns .column.right .text,
  section#made-italy .container .columns .column.left .text p,
  section#scope-logo .container .columns .column.right .text p,
  section#intro-associates .small-title h2,
  section#intro-associate .columns .column.left .info p,
  section#content-associate .narrow .text,
  section#hero-with-bg .narrow .small-title p,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .text p,
  section#section-accordion .items .item .text,
  section#slider-pairings .columns .column.left .text p,
  section#hero-recipes .narrow .small-title p,
  section#hero-generation-z .small-title p,
  section#hero-pairings .narrow .small-title p,
  section#intro-pairings .columns .column.right .text p,
  section#pairings-recipe .container .small-title,
  section#hero-conservation-service .narrow .small-title p,
  section#intro-conservation-service .columns .column.left .text p,
  section#usage-conservation-service .columns .column.right .text p,
  section#last-conservation-service .columns .column.left .column-wrapper .text p,
  section#hero-news .narrow .small-title p,
  body.page-template-tmpl-contacts section#hero .columns .column.left .text,
  header .languages-list {
    font-size: 1.15rem;
    /* 1.25 da desktop; */
  }

  body.home section#ricette .cards .card .img {
    max-width: 22vw;
    height: 22vw;
    top: -11vw;
  }
}

@media only screen and (min-width: 767px) and (max-width: 1280px) {
  body.home section#hero .content {
    max-width: calc((var(--site-width) - 2.5rem) * 0.45 + 0.5rem);
  }

  section#slider-history .columns .column.left .column-wrapper {
    padding-top: 3rem;
  }

  section#slider-history .swiper.main {
    overflow: visible;
  }

  section.oval-section .section-title,
  body.home section#hero .main-page-title,
  body.home section#storia .section-title,
  body.home section#rubriche .container .title h2,
  section#taste-numbers .single-number .number,
  section#intro .narrow .title h1,
  section#intro-associates .title h1,
  section#hero-with-bg .narrow .title h1,
  section#hero-recipes .narrow .title h1,
  section#hero-generation-z .title h1,
  section#hero-pairings .narrow .title h1,
  section#pairings-recipe .container .title h2,
  section#hero-conservation-service .narrow .title h1,
  section#hero-news .narrow .title h1 {
    font-size: 3.5rem;
    /* 4.25 da desktop; */
  }

  body.home section#made-in-italy .hand-written-title,
  body.home section#storia .section-subtitle,
  section#made-italy .container .columns .column.left .signature h3,
  section#safeguards .columns .column.right .signature h3,
  section#slider-history .columns .column.left .signature h2,
  section#content-associate h2,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .signature h3,
  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .signature h2,
  section#intro-pairings .signature h3,
  section#intro-conservation-service .signature h3,
  section#last-conservation-service .columns .column.left .signature h3,
  section#scope-logo .container .columns .column.right .signature h3,
  body.home section#dop .image-phrase {
    font-size: 5.25rem;
    /* 6.25 da desktop; */
  }

  body.home section#made-in-italy .section-title,
  body.home section#dop .section-title,
  body.home section#ricette .section-title,
  body.home section#associati .section-title,
  section#taste-numbers .title h2,
  body.home section#novita h2.section-title,
  section#made-italy .container .columns .column.left .title h2,
  section#safeguards .title h2,
  section#safeguards .title h3,
  section#slider-history .columns .column.left .title h3,
  section#scope-commitments .container .title h2,
  section#scope-expo .container .content .title h2,
  section#scope-logo .container .columns .column.right .title h2,
  body.page-template-tmpl-contacts section#hero .columns .column.left .title h1,
  section#intro-associate .columns .column.left .title h1,
  section#related-associates .title h3,
  section#content-associate .narrow .title h3,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .title h2,
  body.page-template-tmpl-gorgonzola section#pairings-recipe .title h2,
  section#nutritional-values .title h2,
  section#how-to-produce-title .title h2,
  body.page-template-tmpl-gorgonzola section#category-article-news .title h2,
  section#slider-pairings .columns .column.left .title h3,
  section#recipe-intro .container .title h1,
  body.single-column section#related-recipes .related-title h3,
  section#related-recipes .related-title h3,
  section#intro-pairings .columns .column.right .title h2,
  section#intro-conservation-service .columns .column.left .title h2,
  section#usage-conservation-service .columns .column.right .title h2,
  section#form-recipe .title h2,
  body.single-news section#related-recipes .related-title h3,
  header .menu-voices .main-item,
  body.single-associate-area .protected-area .form-content h2,
  header .search-fixed .container .contain .title h2 {
    font-size: 2.3rem;
    /* 2.8 da desktop; */
  }

  header .menu-voices .secondary-item {
    font-size: 1rem;
  }

  header .menu-voices .main-item.has-children .eg-sub-menu {
    top: 2.8rem;
  }

  section#article-news .container .columns .column.right .cont .title h2 {
    font-size: 2.2rem;
  }

  section#associates .columns {
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2rem;
    row-gap: 4rem;
  }

  section#related-associates .columns {
    grid-template-columns: repeat(4, 1fr);
  }

  section#related-recipes .cards,
  body.single-news section#related-recipes .cards {
    grid-template-columns: repeat(2, 1fr);
  }

  section#related-recipes .cards .card:last-child,
  body.single-news section#related-recipes .cards .card:last-child {
    display: none;
  }

  section#related-recipes .cards .card {
    max-width: 100%;
  }

  section#related-associates .columns .column:nth-child(5),
  section#related-associates .columns .column:nth-child(6) {
    display: none;
  }

  section#content-associate .narrow .title {
    margin-top: 0;
  }

  section#intro-associates .text {
    padding-bottom: 7.56rem;
  }

  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper {
    padding-top: 3.5rem;
  }

  body.archive section#recipes .cards,
  body.page-template-tmpl-generation-z section#recipes .cards {
    column-gap: 2rem;
  }

  body.archive section#recipes .cards .card,
  body.page-template-tmpl-generation-z section#recipes .cards .card {
    max-width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  header .menu-voices .main-item {
    padding-bottom: calc(var(--vh-100) * 0.085);
  }

  header .menu-voices .main-item.has-children .eg-sub-menu {
    top: 2.7rem;
  }

  header .menu-voices .main-item {
    font-size: 2.1rem;
  }

  header .menu-voices .secondary-item {
    font-size: 0.9375rem;
  }
}

@media only screen and (max-width: 767px) {
  .only-desktop {
    display: none;
  }

  #associates #search {
    margin-bottom: 4rem;
  }

  .eg-shape {
    width: calc(100% + 2px);
    margin-left: -1px;
  }

  p:not(:last-child) {
    margin-bottom: 1.1rem;
  }

  header .columns .column.left {
    max-width: 17rem;
  }

  footer .columns .column.logo .logo img.dop-footer {
    max-width: 3.5rem;
    margin-left: 1.25rem;
    margin-top: 1rem;
  }

  section.oval-section .section-title,
  body.home section#hero .main-page-title,
  body.home section#storia .section-title,
  body.home section#rubriche .container .title h2,
  section#taste-numbers .single-number .number,
  section#intro .narrow .title h1,
  section#intro-associates .title h1,
  section#hero-with-bg .narrow .title h1,
  section#hero-recipes .narrow .title h1,
  section#hero-generation-z .title h1,
  section#hero-pairings .narrow .title h1,
  section#pairings-recipe .container .title h2,
  section#hero-conservation-service .narrow .title h1,
  section#hero-news .narrow .title h1 {
    font-size: 2.5rem;
    /* 4.25 da desktop; */
  }

  body.home section#made-in-italy .hand-written-title,
  body.home section#storia .section-subtitle,
  section#made-italy .container .columns .column.left .signature h3,
  section#safeguards .columns .column.right .signature h3,
  section#slider-history .columns .column.left .signature h2,
  section#content-associate h2,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .signature h3,
  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .signature h2,
  section#intro-pairings .signature h3,
  section#intro-conservation-service .signature h3,
  section#last-conservation-service .columns .column.left .signature h3,
  section#scope-logo .container .columns .column.right .signature h3,
  body.home section#dop .image-phrase {
    font-size: 4rem;
    /* 6.25 da desktop; */
  }

  body.home section#made-in-italy .section-title,
  body.home section#dop .section-title,
  body.home section#ricette .section-title,
  body.home section#associati .section-title,
  section#taste-numbers .title h2,
  body.home section#novita h2.section-title,
  section#made-italy .container .columns .column.left .title h2,
  section#safeguards .title h2,
  section#safeguards .title h3,
  section#slider-history .columns .column.left .title h3,
  section#scope-commitments .container .title h2,
  section#scope-expo .container .content .title h2,
  section#scope-logo .container .columns .column.right .title h2,
  body.page-template-tmpl-contacts section#hero .columns .column.left .title h1,
  section#intro-associate .columns .column.left .title h1,
  section#related-associates .title h3,
  section#content-associate .narrow .title h3,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .title h2,
  body.page-template-tmpl-gorgonzola section#pairings-recipe .title h2,
  section#nutritional-values .title h2,
  section#how-to-produce-title .title h2,
  body.page-template-tmpl-gorgonzola section#category-article-news .title h2,
  section#slider-pairings .columns .column.left .title h3,
  section#recipe-intro .container .title h1,
  body.single-column section#related-recipes .related-title h3,
  section#related-recipes .related-title h3,
  section#intro-pairings .columns .column.right .title h2,
  section#intro-conservation-service .columns .column.left .title h2,
  section#usage-conservation-service .columns .column.right .title h2,
  section#form-recipe .title h2,
  body.single-news section#related-recipes .related-title h3,
  header .menu-voices .main-item,
  body.single-associate-area .protected-area .form-content h2,
  header .search-fixed .container .contain .title h2,
  body.page-template-tmpl-legal-area section#hero .columns .column.left .title h1 {
    font-size: 2rem;
    /* 2.8 da desktop; */
  }

  body.page-template-tmpl-legal-area section#hero {
    padding-top: 10rem;
    padding-bottom: 4rem;
  }

  header .menu-voices .secondary-item,
  section#scope-commitments .container .columns,
  body.home section#made-in-italy .text-wrap,
  body.home section#dop .text-wrap,
  section.oval-section .small-title,
  body.home section#ricette .text-wrap,
  body.home section#associati .text-wrap,
  body.home section#rubriche .container .small-title,
  section#slider-history .columns .column.left .text p,
  section#intro .narrow .small-title p,
  section#safeguards .columns .column.right .text,
  section#made-italy .container .columns .column.left .text p,
  section#scope-logo .container .columns .column.right .text p,
  section#intro-associates .small-title h2,
  section#intro-associate .columns .column.left .info p,
  section#content-associate .narrow .text,
  section#hero-with-bg .narrow .small-title p,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .text p,
  section#section-accordion .items .item .text,
  section#slider-pairings .columns .column.left .text p,
  section#hero-recipes .narrow .small-title p,
  section#hero-generation-z .small-title p,
  section#hero-pairings .narrow .small-title p,
  section#intro-pairings .columns .column.right .text p,
  section#pairings-recipe .container .small-title,
  section#hero-conservation-service .narrow .small-title p,
  section#intro-conservation-service .columns .column.left .text p,
  section#usage-conservation-service .columns .column.right .text p,
  section#last-conservation-service .columns .column.left .column-wrapper .text p,
  section#hero-news .narrow .small-title p,
  body.page-template-tmpl-contacts section#hero .columns .column.left .text,
  header .languages-list,
  body.single-associate-area .protected-area .form-content p {
    font-size: 1rem;
    /* 1.25 da desktop; */
  }

  section#contact-form .narrow .intro p,
  section#hero-recipes .narrow .text p,
  section#hero-news .narrow .text p,
  section#recipe-intro .container .subtitle *,
  body.page-template-tmpl-generation-z section#recipes > .container > .text,
  section#hero-pairings .narrow .text p,
  section#hero-conservation-service .narrow .text p,
  section#intro-conservation-service .description p,
  section#form-recipe .text p,
  section#safeguards .description,
  body.page-template-tmpl-gorgonzola section#pairings-recipe .text,
  section#text-section .container.narrow .text,
  section#made-italy .container .description,
  section#section-accordion .items .item .title,
  section#section-accordion .items .item .title h3,
  section#intro .narrow .text p,
  section#intro-associates .text p,
  body.home section#storia .texts-wrap .single-text-wrapper .text,
  section#category-article-news .cards p.no-results,
  body.post-type-archive-recipe p.no-results,
  section#associates p.no-results {
    font-size: 1.2rem;
  }

  section#intro-conservation-service .description p,
  section#safeguards .description p {
    text-align: left !important;
  }

  body.page-template-tmpl-generation-z section#recipes .cards-wrap {
    padding-top: 11.5rem;
  }

  section#hero-generation-z .container.narrow {
    padding-bottom: 8rem;
  }

  body.page-template-tmpl-generation-z section#recipes > .container > .text {
    padding-top: 7.7rem;
  }

  body.page-template-tmpl-contacts section#hero .columns,
  footer .columns {
    grid-template-columns: 1fr;
  }

  body.page-template-tmpl-contacts section#hero .columns .column.left,
  body.page-template-tmpl-contacts section#hero .columns .column.right {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }

  body.page-template-tmpl-contacts section#hero .columns .column.right {
    order: 1;
  }

  body.page-template-tmpl-contacts section#hero .columns .column.left {
    order: 2;
    padding-top: 3rem;
  }

  body.page-template-tmpl-contacts section#hero .columns {
    padding-top: 8.75rem;
  }

  body.page-template-tmpl-contacts section#hero .columns .column.right .map {
    border-radius: 20px;
    height: 400px;
  }

  section#contact-form {
    padding-top: 4rem;
  }

  section#contact-form .narrow .intro {
    padding-bottom: 4rem;
  }

  section#contact-form .narrow .name-email {
    display: grid;
    gap: 1.62rem;
  }

  section#contact-form .narrow .name-email .name,
  section#contact-form .narrow .name-email .email {
    width: 100%;
    margin-bottom: 0;
  }

  section#contact-form .narrow .radios .wpcf7-radio {
    display: grid;
    gap: 1rem;
    padding-top: 1.7rem;
    padding-bottom: 1.7rem;
  }

  section#contact-form .narrow .radios .wpcf7-radio span {
    margin-left: 0;
  }

  section#contact-form .narrow .intro p {
    text-align: left !important;
  }

  section#contact-form .narrow .required p {
    text-align: left;
  }

  footer .columns {
    padding-top: 4rem;
    padding-bottom: 3.3rem;
    gap: 3rem;
  }

  footer .columns .column.menu {
    display: none;
  }

  section#contact-form .narrow {
    padding-bottom: 4rem;
  }

  footer .columns .column.menu .cont-menu .list-title,
  footer .columns .column.contacts .cont-contacts .list-title,
  footer .columns .column.login .cont-login .list-title {
    margin-bottom: 1.3rem;
  }

  footer .columns .column.logo {
    gap: 2.3rem;
  }

  footer .bottom-footer {
    gap: 2rem;
    display: grid;
  }

  footer .bottom-footer .left {
    display: grid;
    gap: 0;
  }

  footer .columns .column.logo .logo {
    max-width: 6.3rem;
  }

  body.page-template-tmpl-contacts section#hero .columns .column.right .map iframe {
    border-radius: 20px;
  }

  header .columns .column.right .language,
  header .columns .column.right .menu .menu-text {
    display: none;
  }

  header .columns .column.left .logo {
    gap: 1.25rem;
    max-width: 12rem;
  }

  header.header--scroll-up .columns .column.left .logo {
    max-width: 8.25rem;
  }

  header .menu-voices .main-item {
    text-align: left;
    padding-bottom: 2.2rem;
  }

  header .private-area-cta-wrap {
    display: flex;
    align-items: center;
    gap: 1.25rem;
  }

  header .private-area-cta-wrap .btn {
    font-size: 0.8375rem;
  }

  header .contain .left {
    gap: 4rem;
    max-width: 100%;
    position: unset;
    order: 2;
  }

  header .contain .right {
    order: 1;
    width: 100%;
  }

  header .contain {
    display: grid;
    gap: 3rem;
  }

  header.menu-expanded .menu-fixed {
    padding-top: 9rem;
  }

  header .menu-voices .main-item.has-children > p:after {
    content: "+";
  }

  header .menu-voices .main-item.has-children.active > p:after {
    content: "-";
  }

  header .menu-voices .main-item.has-children > p {
    display: flex;
    justify-content: space-between;
  }

  header .menu-voices .main-item.has-children p {
    margin-bottom: 0;
  }

  header .menu-voices .main-item.has-children > p > a {
    pointer-events: none;
  }

  header .menu-voices .secondary-item {
    position: relative;
  }

  header .menu-voices .main-item.has-children .eg-sub-menu {
    display: grid;
    max-height: 0px;
    padding-top: 0;
    transition: all 100ms ease-in-out;
    overflow: hidden;
    justify-content: start;
    position: unset;
    gap: 0.8rem;
    text-align: left;
  }

  header .menu-voices .main-item {
    font-size: 1.6rem;
  }

  header .menu-voices .secondary-item:not(:first-child)::before {
    display: none;
  }

  header .menu-voices .main-item.has-children.active .eg-sub-menu {
    max-height: 3000px;
    padding-top: 1.1rem;
  }

  header .languages-list .hidden-items {
    position: absolute;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 1.125rem;
    row-gap: 2.625rem;
    background-color: #003060;
    padding: 1.5rem 1.5rem 2.6875rem 1.5rem;
    bottom: 3rem;
    border-radius: 1rem;
    left: -1.5rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms ease-in-out;
  }

  header .languages-list .hidden-items.hidden-items--show-all {
    opacity: 1;
    visibility: visible;
  }

  header .languages-list .hidden-items img,
  header .languages-list img {
    min-width: 2.06rem;
  }

  header .languages-list .single-language {
    position: relative;
  }

  header .languages-list .single-language span:not(.active) {
    transition: opacity 200ms ease-in-out;
    position: absolute;
    left: 50%;
    bottom: -1.8rem;
    transform: translateX(-50%);
    font-size: 0.875rem;
    color: white;
    font-weight: 400;
    opacity: 1;
    visibility: visible;
  }

  header .languages-list .single-language a:before,
  header .languages-list .single-language span.active:before {
    border: 1.5px solid white;
    border-radius: 0.5rem;
    height: calc(100% + 0.95rem);
    width: calc(100% + 0.95rem);
    position: absolute;
    top: -0.5625rem;
    left: -0.5625rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms ease-in-out;
    content: "";
  }

  header .private-area-cta-wrap,
  header .contain {
    padding-bottom: 4rem;
  }

  header .languages-list .single-language span.active {
    transition: none;
  }

  header .languages-list .single-language:hover span,
  header .languages-list .single-language a:hover:before,
  header .languages-list .single-language span.active,
  header .languages-list .single-language span.active span,
  header .languages-list .single-language span.active:before {
    opacity: 1;
    visibility: visible;
  }

  header .languages-list .single-language span {
    transition: none;
  }

  header .languages-list .single-language:not(:last-child)::after {
    display: none;
  }

  section#hero-news,
  section#hero-pairings,
  section#hero-conservation-service {
    height: auto;
  }

  section#article-news .container .columns,
  section#category-article-news .cards {
    grid-template-columns: 1fr;
  }

  section#hero-news .svg-left img,
  section#hero-news .svg-right img,
  section#hero-pairings .svg-left img,
  section#hero-pairings .svg-right img,
  section#hero-conservation-service .svg-left img,
  section#hero-conservation-service .svg-right img,
  section#intro .svg-left img,
  section#intro .svg-right img,
  body.home section#storia .texts-wrap .svg-left,
  body.home section#storia .texts-wrap .svg-right {
    height: calc(var(--vh-100) / 5 * 1);
  }

  section#article-news .container .columns {
    margin-top: -5rem;
    gap: 0;
  }

  section#article-news .container .columns .column.right,
  section#article-news .container .columns .column.left {
    grid-column: unset;
  }

  section#article-news .container .columns .column.right {
    padding: 0 1.87rem 1.68rem 1.75rem;
  }

  section#article-news .container .columns .column.left .img img {
    height: auto;
  }

  section#category-article-news #filter-categories {
    padding-top: 4rem;
    padding-bottom: 3rem;
    display: block;
  }

  section#category-article-news .category-search .category-select,
  section#category-article-news .category-search .search {
    max-width: 100%;
  }

  section#category-article-news .cards .card .cont .text {
    padding-top: 0.5rem;
  }

  section#category-article-news .category-search .search {
    padding-top: 2.5rem;
  }

  section#article-news .container .columns .column.right .cont .title h2 {
    font-size: 2rem;
  }

  section#article-news .container .columns .column.right .cont .day-read-time {
    padding-top: 2.06rem;
    padding-bottom: 1.06rem;
  }

  section#category-article-news .cards {
    row-gap: 3rem;
  }

  section#category-article-news .archive-list {
    padding-bottom: 7rem;
  }

  section#category-article-news .egloo-pagination {
    bottom: -4.7rem;
  }

  section#category-article-news .category-search .category-select .custom-select .select:after {
    right: 0.5rem;
  }

  .back-button a {
    position: unset !important;
    font-size: 0.8rem;
    padding: 0 1.15rem;
    height: 2.5rem;
  }

  .back-button a svg {
    width: 1.1rem;
    min-width: 1.1rem;
  }

  section#recipe-intro .container,
  section#recipe-ingredients .container,
  section#recipe-suggested-wines .container {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 2rem;
  }

  section#recipe-intro {
    padding-top: 8.75rem;
  }

  section#recipe-intro .social {
    margin-top: 4rem;
  }

  body.page-template-tmpl-dop section#scope-logo .container {
    padding-top: 4rem;
    overflow: hidden;
  }

  body.page-template-tmpl-dop section#scope-logo {
    padding-bottom: 4rem;
  }

  section#recipe-intro .container .info {
    grid-template-columns: 1fr;
    row-gap: 1.5rem;
    padding-top: 1.7rem;
  }

  body.single-news section#related-recipes .related-title {
    margin-top: 2rem;
  }

  body.single-news section#related-recipes .cards .card .cont .text {
    padding-top: 0.5rem;
  }

  body.single-news section#related-recipes,
  section#related-recipes {
    margin-bottom: 2.75rem;
  }

  body.single-news section#related-recipes .container,
  section#related-recipes .container {
    padding: 0;
  }

  body.single-news section#related-recipes .related-title,
  section#related-recipes .container .related-title {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }

  body.single-news section#related-recipes .cards,
  section#related-recipes .container .cards {
    display: flex;
    overflow: scroll;
    padding-bottom: 2rem;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    column-gap: 1.25rem;
  }

  body.single-recipe section#related-recipes .related-title {
    margin-top: 4.875rem;
    margin-bottom: 2rem;
  }

  section#related-recipes .cards .card .img {
    top: -6.5rem;
    max-width: 13rem;
    height: 13rem;
  }

  body.single-recipe section#recipe-suggested-wines .container .columns .column.social {
    grid-column: unset;
  }

  body.single-recipe section#recipe-suggested-wines .container {
    row-gap: 0;
  }

  body.single-recipe section#related-recipes .container .cards {
    padding-top: 8rem;
    gap: 1.25rem;
  }

  body.single-recipe section#recipe-ingredients .columns,
  body.single-recipe section#recipe-suggested-wines .columns {
    grid-template-columns: 1fr;
  }

  section#recipe-ingredients {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }

  body.single-recipe section#recipe-intro .content-wrapper {
    margin-bottom: ;
  }

  body.single-recipe section#recipe-suggested-wines .container .columns .column.social {
    margin-top: 1.6rem;
  }

  body.single-news section#related-recipes .cards::-webkit-scrollbar,
  section#related-recipes .container .cards::-webkit-scrollbar,
  section#filter-categories .columns .buttons::-webkit-scrollbar {
    display: none;
  }

  body.single-news section#related-recipes .cards .card {
    min-width: 18rem;
  }

  section#related-recipes .container .cards .card {
    min-width: 20rem;
  }

  section#hero-recipes .narrow {
    padding-top: 9.75rem;
  }

  section#filter-categories .columns .buttons {
    padding-bottom: 11.75rem;
    padding-top: 4rem;
  }

  section#hero-recipes .narrow {
    padding-top: 9.75rem;
  }

  section#filter-categories .container {
    padding-left: 0;
    padding-right: 0;
  }

  section#filter-categories .columns .buttons button {
    height: 2.5rem;
    font-size: 0.9375rem;
    padding: 0 1rem;
  }

  section#filter-categories .columns .buttons {
    padding-bottom: 11.75rem;
    padding-top: 4rem;
    flex-wrap: nowrap;
    max-width: 100%;
    overflow-x: scroll;
    padding-left: 1.25rem;
    justify-content: start;
    padding-right: 1.25rem;
    white-space: nowrap;
  }

  section#recipes .cards {
    row-gap: 11.68rem;
    grid-template-columns: 1fr;
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  }

  section#recipes .cards .card {
    max-width: 100%;
    width: 100%;
  }

  section#hero-generation-z {
    height: auto;
  }

  section#hero-generation-z .img img {
    max-width: 15.5rem;
  }

  section#hero-generation-z .img {
    bottom: -4.3rem;
  }

  body.page-template-tmpl-pairings footer .columns {
    padding-top: 4rem;
  }

  section#intro-pairings,
  body.page-template-tmpl-conservation-service #intro-conservation-service {
    margin-top: -5.5rem;
  }

  section#intro-pairings .columns {
    grid-template-columns: 1fr;
  }

  section#intro-pairings .signature h3,
  section#intro-conservation-service .signature h3 {
    padding-top: 2rem;
    padding-bottom: 1.5rem;
  }

  section#slider-pairings {
    margin-top: 5rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  section#slider-pairings .columns,
  section#intro-conservation-service .columns,
  section#usage-conservation-service .columns,
  section#last-conservation-service .columns,
  section#form-recipe .form .name-email,
  section#safeguards .columns,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns,
  section#nutritional-values .columns,
  section#made-italy .container .columns,
  section#scope-logo .container .columns,
  section#taste-numbers .numbers,
  section#slider-history .columns,
  section#scope-commitments .container .columns,
  body.home section#made-in-italy .section-columns,
  body.home section#dop .section-columns {
    grid-template-columns: 1fr;
  }

  section#slider-pairings .columns .column.right,
  section#intro-conservation-service .columns .column.right {
    order: 1;
  }

  section#slider-pairings .columns .column.left,
  section#intro-conservation-service .columns .column.left {
    order: 2;
    padding-top: 2rem;
    padding-bottom: 4rem;
  }

  section#intro-conservation-service .columns .column.left,
  body.page-template-tmpl-gorgonzola section#pairings-recipe .title h2 {
    padding-top: 0;
  }

  section#pairings-recipe,
  body.page-template-tmpl-gorgonzola section#pairings-recipe,
  section.oval-section,
  body.home section#rubriche {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }

  section#intro-conservation-service .description {
    padding-top: 0;
    padding-bottom: 0;
  }

  body.page-template-tmpl-conservation-service #intro-conservation-service {
    padding-bottom: 6rem;
  }

  body.page-template-tmpl-conservation-service section#usage-conservation-service {
    padding-top: 4rem;
    margin-bottom: 4rem;
    padding-bottom: 4rem;
  }

  section#usage-conservation-service .columns .column.right {
    padding-top: 2rem;
  }

  section#last-conservation-service .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#last-conservation-service .columns .column.right,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.right,
  section#made-italy .container .columns .column.right,
  section#slider-history .columns .column.right {
    order: 1;
  }

  section#last-conservation-service .columns .column.left,
  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left,
  section#made-italy .container .columns .column.left,
  section#slider-history .columns .column.left {
    order: 2;
  }

  body.home section#made-in-italy .section-columns .col-right {
    padding-top: 1rem;
  }

  body.page-template-tmpl-conservation-service section#last-conservation-service {
    margin-top: 5rem;
  }

  section#last-conservation-service .columns .column.left {
    padding-left: 0;
    padding-top: 2rem;
  }

  section#last-conservation-service .columns .column.right .img {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }

  section#hero-with-bg {
    height: auto;
  }

  section#form-recipe .title {
    padding-top: 4rem;
  }

  section#form-recipe .form {
    padding-bottom: 4rem;
  }

  section#form-recipe .form .name-email {
    display: grid;
  }

  body.page-template-tmpl-gorgonzola section#safeguards .columns {
    padding: 4rem 0;
  }

  section#safeguards .column.left {
    padding-right: 0;
  }

  section#safeguards .columns .column.right {
    padding-left: 0;
    padding-right: 0;
  }

  body.page-template-tmpl-gorgonzola section#safeguards .columns .column.right .signature h3 {
    padding-bottom: 1.5rem;
  }

  body.page-template-tmpl-gorgonzola section#safeguards .description {
    padding-bottom: 6rem;
  }

  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.right .img {
    margin-left: 1.25rem;
  }

  body.page-template-tmpl-gorgonzola section#scope-logo .columns .column.left .column-left-wrapper {
    padding-top: 0;
  }

  section#nutritional-values .columns {
    padding-top: 4rem;
  }

  section#how-to-produce-title .title h2 {
    padding-top: 4rem;
  }

  body.page-template-tmpl-gorgonzola section#category-article-news .title h2 {
    padding-top: 4rem;
    padding-bottom: 2rem;
  }

  section#how-to-produce-title {
    padding-bottom: 11.3rem;
  }

  body.page-template-tmpl-gorgonzola section#category-article-news .archive-list {
    padding-bottom: 4.5rem;
  }

  body.page-template-tmpl-gorgonzola #video .video {
    margin-top: -9rem;
  }

  body.page-template-tmpl-gorgonzola #video .video iframe,
  section#scope-expo .container .content iframe {
    height: 16.65rem;
  }

  body.page-template-tmpl-origin section#made-italy {
    padding-bottom: 6rem;
    padding-top: 4rem;
  }

  body.page-template-tmpl-origin section#made-italy .container .columns .column.left .signature h3 {
    padding-bottom: 1.8rem;
  }

  section#scope-logo .container {
    padding-top: 3rem;
  }

  body.page-template-tmpl-origin section#scope-logo {
    padding-bottom: 4.5rem;
  }

  body.page-template-tmpl-origin section#slider-pairings {
    padding: 4rem 0;
  }

  section#slider-pairings .swiper-navigation {
    grid-template-columns: 1fr;
    padding-left: 1.25rem;
  }

  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .signature h2 {
    padding-bottom: 1.8rem;
  }

  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .title,
  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper .text {
    padding-left: 0;
  }

  body.page-template-tmpl-origin section#slider-pairings .columns .column.left .column-wrapper {
    padding-top: 0;
  }

  body.page-template-tmpl-origin section#slider-pairings .columns .column.right .img {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }

  section#text-section .container.narrow {
    padding-top: 4rem;
  }

  body.page-template-tmpl-production-area section#slider-pairings .swiper-navigation {
    padding-left: 0;
  }

  section#taste-numbers .numbers {
    padding-top: 3rem;
    gap: 3rem;
  }

  section#taste-numbers {
    padding-top: 4rem;
    padding-bottom: 4.5rem;
  }

  body.page-template-tmpl-export section#safeguards .img-bg img {
    max-width: 16rem;
  }

  body.page-template-tmpl-export section#safeguards .img-bg {
    top: -9rem;
  }

  section#made-italy {
    overflow-x: hidden;
    padding-top: 4rem;
    padding-bottom: 8.75rem;
  }

  section#made-italy .container .description {
    padding-top: 4rem;
  }

  body.page-template-tmpl-export section#safeguards .container .title h2 {
    padding-top: 8rem;
    padding-bottom: 4rem;
  }

  body.page-template-tmpl-export section#safeguards .column.left {
    padding-right: 1.25rem;
  }

  body.page-template-tmpl-export section#safeguards .columns .column.right {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  body.page-template-tmpl-export section#safeguards .description {
    padding-bottom: 4rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#made-italy .container .columns .column.left .signature h3 {
    padding-bottom: 1.8rem;
    padding-top: 0;
  }

  body.page-template-tmpl-export section#safeguards .description p {
    text-align: center !important;
  }

  body.page-template-tmpl-export section#safeguards .columns {
    padding-bottom: 4rem;
  }

  section#section-accordion .items {
    margin-top: 4rem;
  }

  section#section-accordion .items .item .title {
    padding: 1.25rem;
  }

  section#section-accordion .items .item.active .text {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#section-accordion .items .item .title h3 {
    gap: 1rem;
  }

  body.post-type-archive-column section#category-article-news #filter-categories {
    padding-top: 0;
  }

  body.single-column section#related-recipes .related-title {
    margin-top: 2rem;
  }

  body.single-column section#related-recipes {
    margin-bottom: 3rem;
  }

  body.page-template-tmpl-dop section#intro {
    height: auto;
    overflow-x: hidden;
  }

  body.page-template-tmpl-history section#intro,
  body.page-template-tmpl-the-scope section#intro {
    height: auto;
  }

  body.page-template-tmpl-dop section#made-italy {
    padding-bottom: 5rem;
  }

  section#scope-gallery .swiper-pagination {
    bottom: 1.9rem;
  }

  body.page-template-tmpl-dop section#safeguards .img-bg {
    top: -5.5rem;
  }

  section#safeguards .img-bg img {
    max-width: 16rem;
  }

  body.page-template-tmpl-dop section#safeguards .container .title h2 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  body.page-template-tmpl-dop section#safeguards .columns {
    padding-bottom: 4rem;
  }

  body.page-template-tmpl-dop section#safeguards .column.left {
    padding-right: 1.25rem;
  }

  body.page-template-tmpl-dop section#safeguards .column.right {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }

  body.page-template-tmpl-history section#taste-numbers {
    padding-top: 4rem;
  }

  section#slider-history {
    padding-top: 5rem;
    padding-bottom: 5rem;
    overflow: hidden;
  }

  section#slider-history .columns .column.left .signature h2 {
    padding-top: 2rem;
  }

  section#slider-history .swiper-thumbnail-wrap .swiper-slide {
    width: 5.8rem;
  }

  section#slider-history .columns .column.left .column-wrapper {
    padding-right: 0;
    padding-top: 1.8rem;
  }

  section#slider-history .swiper-thumbnail-wrap .container {
    padding-right: 0;
  }

  section#slider-history .swiper-thumbnail-wrap .container .swiper {
    overflow: visible;
    padding-right: 1.25rem;
  }

  body.page-template-tmpl-the-scope section#scope-logo {
    padding-bottom: 18.5rem;
  }

  body.page-template-tmpl-the-scope section#scope-logo .container {
    padding-top: 4rem;
  }

  body.page-template-tmpl-the-scope section#scope-expo {
    padding-bottom: 4rem;
  }

  body.page-template-tmpl-the-scope section#scope-expo .container .content .title h2 {
    padding-bottom: 2.5rem;
  }

  section#intro .arrow-down img {
    max-width: 3.5rem;
  }

  body.page-template-tmpl-the-scope section#scope-commitments {
    padding-bottom: 5rem;
    padding-top: 4rem;
  }

  body.page-template-tmpl-the-scope section#scope-commitments .container .columns {
    gap: 1.1rem;
  }

  section#intro-associates {
    padding-top: 10rem;
  }

  section#intro-associates .text {
    padding-bottom: 4rem;
  }

  section#associates .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.25rem;
    row-gap: 2rem;
    padding-bottom: 4.5rem;
  }

  section#intro-associate {
    padding-bottom: 1.3rem;
  }

  section#intro-associate .columns {
    padding-top: 8.75rem;
    grid-template-columns: 1fr;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#intro-associate .columns .column.left {
    padding-left: 0;
  }

  section#intro-associate .columns .column.left .title {
    padding-top: 2.3rem;
  }

  section#intro-associate .columns .column.left .info {
    padding-bottom: 2.3rem;
  }

  section#intro-associate .columns .column.right #single-map {
    height: 400px;
    margin-top: 2.3rem;
    border-radius: 20px;
  }

  section#content-associate h2 {
    padding-right: 0;
  }

  section#content-associate .narrow .title {
    padding-bottom: 2rem;
    margin-top: 2rem;
  }

  section#content-associate .narrow .text {
    padding-bottom: 0rem;
    margin-bottom: 4rem;
  }

  section#related-associates {
    margin-top: 2.7rem;
  }

  section#related-associates .container {
    padding: 0;
  }

  section#related-associates .container .title {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#related-associates .columns {
    display: flex;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 1.25rem;
    padding-bottom: 4.5rem;
    white-space: nowrap;
    overflow: scroll;
    max-width: 100%;
    padding-top: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#related-associates .columns::-webkit-scrollbar {
    display: none;
  }

  section#related-associates .columns .column {
    min-width: 9rem;
  }

  section#related-associates .container .title {
    padding-bottom: 1.9rem;
  }

  body.home section#hero {
    height: 81vh;
  }

  body.home section#hero .bg .audio-controller {
    bottom: 3rem;
    left: 1.25rem;
    opacity: 1;
  }

  body.home section#made-in-italy {
    margin-top: 4rem;
    margin-bottom: 7rem;
    overflow: hidden;
  }

  body.home section#made-in-italy .hand-written-title-wrap {
    margin-bottom: 1.8rem;
  }

  body.home section#dop {
    padding-top: 5.8rem;
    padding-bottom: 4rem;
  }

  body.home section#novita {
    padding-top: 1.3rem;
  }

  body.home section#dop .dop-logo-wrap,
  body.home section#novita .dop-logo-wrap {
    transform: translate(-50%, -60%);
    width: 5.5rem;
  }

  body.home section#dop .main-img-wrap img {
    max-width: 100%;
    margin: auto;
    object-fit: cover;
    border-radius: 1.25rem;
  }

  body.home section#dop .section-main-img-wrap {
    min-height: 23rem;
  }

  body.home section#dop .image-phrase-wrap {
    left: 0;
  }

  body.home section#dop .section-title {
    padding-top: 1.8rem;
  }

  body.home section#novita .container {
    padding-left: 0;
    padding-right: 0;
  }

  body.home section#novita h2.section-title {
    padding-bottom: 2.8rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 4rem;
  }

  body.home section#novita .cards {
    display: flex;
    overflow: scroll;
    padding-bottom: 2rem;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    column-gap: 1.25rem;
  }

  body.home section#ricette .recipes-wrap .filters-wrap .buttons {
    flex-wrap: nowrap;
    max-width: 100%;
    overflow-x: scroll;
    padding-left: 1.25rem;
    justify-content: start;
    padding-right: 1.25rem;
    white-space: nowrap;
  }

  body.home section#novita .cards::-webkit-scrollbar,
  body.home section#ricette .recipes-wrap .filters-wrap .buttons::-webkit-scrollbar {
    display: none;
  }

  body.home section#novita .cards .card {
    min-width: 18rem;
  }

  body.home section#novita .cards .card .cont .text {
    padding-top: 0.5rem;
  }

  body.home section#associati .content {
    padding-top: 4rem;
  }

  body.home section#made-in-italy .mit-image {
    width: 100%;
  }

  body.home section#associati .swiper {
    padding-bottom: 4rem;
  }

  body.home section#associati .cta-wrap {
    padding-bottom: 4.5rem;
  }

  body.home section#novita .cta-wrap {
    padding-top: 2.5rem;
  }

  body.home section#ricette .filters-wrap .container,
  body.home section#ricette .results-wrap .container {
    padding-left: 0;
    padding-right: 0;
  }

  body.home section#ricette {
    padding-top: 4rem;
    margin-bottom: 0rem;
    padding-bottom: 4.5rem;
  }

  body.home section#storia .intro-wrap {
    padding-top: 5rem;
    overflow: hidden;
  }

  body.home section#ricette .recipes-wrap {
    margin-bottom: 0rem;
  }

  body.home section#ricette .results-wrap .cards-wrap {
    padding-bottom: 3.5rem;
  }

  body.home section#ricette .swiper-navigation {
    display: none;
  }

  body.home section#ricette .cards-wrap .swiper-slide {
    max-width: 20rem;
  }

  body.home section#storia .subtitle-wrap {
    margin-bottom: 1.8rem;
    text-align: center;
    padding-top: 1.2rem;
  }

  body.home section#ricette .cards-wrap {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-bottom: 0.5rem;
  }

  body.home section#ricette .cards .card .img {
    top: -6.5rem;
    max-width: 13rem;
    height: 13rem;
  }

  body.home section#storia .section-title {
    line-height: 1.2;
  }

  body.home section#associati .swiper .swiper-slide {
    width: 9rem;
  }

  section#safeguards .column.left .img img,
  body.page-template-tmpl-origin section#slider-pairings .columns .column.right .img img {
    height: auto;
  }

  section#contact-form .narrow .privacy-checkbox {
    margin-bottom: 2rem;
  }

  body.home section#storia .cta-wrap {
    padding-bottom: 4.5rem;
  }

  body.home section#storia .images-wrap {
    background-color: var(--blue);
    color: white;
    padding-left: 4rem;
    padding-right: 4rem;
    padding-bottom: 2.5rem;
    padding-top: 4rem;
  }

  body.home section#taste-numbers .container {
    padding-top: 4.8rem;
  }

  body.home section#storia .images-wrap {
    overflow: hidden;
  }

  body.home section#storia .images-wrap .swiper {
    overflow: visible;
  }

  body.home section#storia .images-wrap .text {
    text-align: center;
    font-family: var(--ff-alternate);
    font-weight: normal;
    padding-top: 2.5rem;
  }

  body.home section#storia .images-wrap .swiper-wrapper {
    align-items: flex-start;
  }

  body.home section#storia .images-wrap .swiper-slide .img {
    height: 20rem;
    display: grid;
    align-items: center;
    justify-content: center;
  }

  body.home section#storia .images-wrap .swiper-slide img {
    height: 16rem;
    transition: all 200ms ease-in-out;
    border-radius: 20px;
  }

  body.home section#storia .images-wrap .swiper-slide .text {
    opacity: 0;
    visibility: visible;
    transition: all 400ms ease-in-out;
    margin-left: -2.75rem;
    margin-right: -2.75rem;
    font-size: 1rem;
  }

  body.home section#storia .images-wrap .swiper-slide.swiper-slide-active img {
    height: 20rem;
    width: 100%;
    object-fit: cover;
  }

  body.home section#storia .images-wrap .swiper-slide.swiper-slide-active .text {
    opacity: 1;
    visibility: visible;
  }

  body.home section#ricette .recipes-wrap .filters-wrap .buttons button {
    padding-bottom: 0.1rem;
  }

  body.single-associate-area section#recipe-intro .container .info {
    padding-top: 1rem;
  }

  body.post-type-archive-associate-area section#recipes .cards,
  body.page-template-tmpl-associate-area-login section#recipes .cards {
    row-gap: 3rem;
  }

  body.post-type-archive-associate-area section#filter-categories .columns .buttons,
  body.page-template-tmpl-associate-area-login section#filter-categories .columns .buttons {
    padding-bottom: 3rem;
  }

  body.post-type-archive-recipe section#filter-categories .columns .buttons {
    padding-top: 4rem;
    padding-bottom: 1rem;
  }

  section#search-recipe {
    padding-top: 3.5rem;
    padding-bottom: 11.75rem;
  }

  body.search-opened,
  body.menu-opened {
    touch-action: none;
  }

  header .search-fixed {
    display: flex;
    flex-direction: column;
  }

  header .search-fixed .container .search-categories {
    padding-top: 3.5rem;
  }

  header .search-fixed .container .contain {
    margin-top: -3rem;
  }

  header .search-fixed .container .search-form form #search-input-form {
    border-radius: 0;
  }

  body.post-type-archive-recipe p.no-results {
    grid-column: span 1;
  }

  section#recipe-suggested-wines {
    margin-bottom: 4.875rem;
  }

  section#safeguards,
  body.page-template-tmpl-the-scope section#scope-logo {
    overflow-x: hidden;
  }

  body.page-template-tmpl-export section#safeguards {
    overflow: unset;
  }

  body.page-template-tmpl-export section#safeguards .columns {
    overflow-x: hidden;
  }

  body.home section#storia .cta-wrap {
    padding-top: 2.5rem;
  }

  section#recipe-intro .content-wrapper .img .video-wrapper iframe {
    border-radius: 20px;
  }

  body.home section#associati .logo,
  section#intro-associate .columns .column.left .logo,
  section#related-associates .columns .column .logo {
    background-color: white;
  }
}

section#hero h1,
section#intro h1,
section#intro-associates h1,
section#hero-with-bg h1,
section#hero-recipes h1,
section#hero-generation-z h1 {
  opacity: 0;
}

section h1 {
  opacity: 0;
}

section#nutritional-values .container table {
  border: 1px solid lightgrey;
  width: 100%;
  border-collapse: collapse;
}

section#nutritional-values .container table thead tr th {
  text-align: left;
  background-color: var(--blue);
  color: white;
  padding: 0.87rem;
  font-size: 1rem;
  font-weight: 500;
}

section#nutritional-values .container table thead tr {
  border: none;
}

section#nutritional-values .container table td {
  border: 1px solid lightgrey;
  padding: 0.87rem;
  font-family: var(--ff-normal);
  font-weight: 400;
  background-color: transparent;
  border-collapse: collapse;
  vertical-align: bottom;
  font-size: 1rem;
}

section#nutritional-values .container table .no-top-border td {
  border-top: none;
}

section#nutritional-values .container table .no-border td {
  border: none;
  border-right: 1px solid lightgrey;
}

section#nutritional-values .container table td p {
  line-height: 1.8;
  font-size: 0.9375rem;
}

@media only screen and (max-width: 767px) {
  section#nutritional-values .container table td {
    min-width: 8rem;
  }

  header .columns .column.left .logo .dop-logo img {
    width: 3.81rem;
    width: 3.81rem;
  }
}

@media only screen and (min-width: 768px) {
  header .columns .column.left .logo .dop-logo img {
    width: 5.19rem;
    width: 5.19rem;
  }
}

@media only screen and (max-width: 768px) {
  header:not(.fixed) .columns .column.left .logo a:not(.dop-logo) img {
    min-width: 7.4rem;
    max-width: 7.4rem;
  }

  header:not(.menu-expanded):not(.fixed) .columns .column.left .logo a.dop-logo {
    width: 3.5rem;
    max-width: 3.5rem;
    bottom: -4.5rem;
  }

  header.header--scroll-up .columns .column.left .logo .dop-logo img {
    width: 3rem;
  }

  header.header--scroll-up .columns .column.left .logo .logo-dark-sticky,
  header.header--scroll-up .columns .column.left .logo .logo-white-sticky {
    max-width: 2.3rem;
  }

  header.header--scroll-up .columns .column.left .logo {
    gap: 1rem;
  }

  section#intro .narrow {
    padding-top: 14rem;
  }

  body.home section#associati .swiper-slide .logo img,
  body.home section#associati .swiper-slide a,
  body.home section#associati .swiper-slide .logo,
  body.home section#associati .swiper-slide .logo img,
  section#related-associates .columns .column img {
    height: auto;
  }
}

/* -----------------------------------
==============================================================================
	#IUBENDA
==============================================================================
----------------------------------- */

body #iubenda-cs-banner * {
  font-family: var(--ff-normal) !important;
  color: black !important;
  font-weight: 500 !important;
  font-size: 14px !important;
}

body #purposes-content-container .purposes-header .purposes-header-text,
body #purposes-content-container .purposes-section-header-text {
  font-size: 14px !important;
}

body #purposes-content-container .purposes-item .purposes-item-body,
body #purposes-content-container .purposes-item .purposes-item-title .purposes-item-title-btn {
  font-weight: 500 !important;
}

body #purposes-content-container .purposes-section-header-title {
  line-height: 1.4 !important;
  padding-bottom: 7px !important;
}

body #purposes-content-container .purposes-header {
  padding-top: 0 !important;
}

body #iubenda-iframe .purposes-header-right button {
  background-color: var(--blue) !important;
  color: white !important;
  border: 0.5px solid var(--blue) !important;
  box-shadow: none !important;
  opacity: 1;
  border-radius: 64px !important;
}

body #iubenda-iframe .purposes-header-right button:hover {
  opacity: 0.8;
  background-color: var(--blue) !important;
  color: white !important;
  border: 0.5px solid var(--blue) !important;
}

body #iubenda-iframe .iub-toggle-checkbox input.style1:checked {
  background-color: var(--blue) !important;
}

body #iubenda-iframe .iub-btn-stroked {
  border: 1px solid black !important;
}

body #purposes-content-container .purposes-header .purposes-header-title {
  font-weight: 600 !important;
  font-size: 2rem !important;
  margin-bottom: 8px !important;
  line-height: 1.2 !important;
  padding-bottom: 1.5rem !important;
  padding-top: 1rem !important;
}

body #iubenda-cs-banner .iubenda-granular-controls-container .granular-control-checkbox input.style1:checked {
  background-color: var(--blue) !important;
}

body #iubenda-cs-banner .iubenda-cs-opt-group button,
body .iubenda-alert button.iubenda-button-cancel,
body #iiubenda-cs-banner .iub-btn-consent,
body #iubenda-iframe #iubFooterBtnContainer button,
body #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-accept-btn {
  border: 0.5px solid var(--blue) !important;
  font-weight: 600 !important;
  outline: none !important;
  box-shadow: none !important;
  color: white !important;
  background-color: var(--blue) !important;
  transition: opacity 200ms ease-in-out;

  font-size: 14px !important;
}

body #iubenda-cs-banner.iub-btn-consent.iub-btn-reject,
body #iubenda-cs-banner .iub-btn-consent.iub-btn-accept {
  color: white !important;
  background-image: none !important;
  padding-left: 25px !important;
  padding-right: 25px !important;

  font-size: 12px !important;
}

body #iubenda-iframe .iub-btn-consent.iub-btn-reject {
  background-size: 9px !important;
}

body #iubenda-iframe .iub-btn-consent.iub-btn-accept {
  background-size: 11px !important;
}

body #iubenda-cs-banner .iubenda-cs-opt-group button:hover,
body .iubenda-alert button.iubenda-button-cancel:hover,
body #iubenda-iframe #iubFooterBtnContainer button:hover,
body #iubenda-iframe #iubFooterBtnContainer button:focus {
  background-color: var(--blue) !important;
  color: white !important;
  border: 0.5px solid var(--blue) !important;
  box-shadow: none !important;
  opacity: 0.8;
}

body #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-reject-btn {
    background-color: rgba(0, 0, 0, 0.1) !important;
    color: black !important;
	border: 0.5px solid rgba(0, 0, 0, 0.1) !important;
}

body #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-customize-btn {
	 background-color: #808080!important;
	border: 0.5px solid #808080!important;
}

body #iubenda-cs-banner [tabindex]:not([tabindex="-1"]):focus,
body #iubenda-cs-banner a[href]:focus,
body #iubenda-cs-banner button:focus,
body #iubenda-cs-banner details:focus,
body #iubenda-cs-banner input:focus,
body #iubenda-cs-banner select:focus,
body #iubenda-cs-banner textarea:focus,
body #iubenda-iframe [tabindex]:not([tabindex="-1"]):focus,
body #iubenda-iframe a[href]:focus,
body #iubenda-iframe button:focus,
body #iubenda-iframe details:focus,
body #iubenda-iframe input:focus,
body #iubenda-iframe select:focus,
body #iubenda-iframe textarea:focus {
  outline: none !important;
}

body .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"] {
  border-radius: 50% !important;
  bottom: 2.5rem !important;
  right: 2.5rem !important;
  margin: 0 !important;
  width: 3rem !important;
  height: 3rem !important;
  background-position: center !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 1px #003577 !important;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="44.425" height="50.627" viewBox="0 0 44.425 50.627"><path id="logo-blue" d="M11.025,40.672c-.088.02-2.537,1.584.451,2.8,2.889,1.174,15.888,1.083,18.236-.09,1.78-.89.632-2.347-.452-2.618s-10.833-1.806-18.235-.09M28.21,4.175s5.113-4.53,8.8-4.153c4.155.425,7.222,3.25,7.4,6.77a5.916,5.916,0,0,1-3.521,6.048c-1.444.451-5.281.5-6.68-2.437a5.513,5.513,0,0,1,.361-5.326c.239-.784-.754-.6-.754-.6A8.771,8.771,0,0,0,30.75,6.641c-.077.119,2.708,3.791,2.573,6.544L21.665,13.2s-.98-6.7-2.257-7.583c-1.078-.748-2.459-1.177-4.049.525C13.417,8.221,12.786,17.2,14.939,20.83c1.3,2.19,2.121,2.3,2.753,2.211s3.746-.857,3.843-7.392l11.743.019s.241,6.575-7.009,10.352c-6.41,3.34-14.083.9-14.173.9L9.748,26.11s-2.708,1.083-.361,3.25,15.166.271,17.333.451,8.815-1.01,11.974,5.851A9.485,9.485,0,0,1,37.16,46.224a13.939,13.939,0,0,1-6.545,3.385c-3.11.751-23.064,2.806-28.9-2.556-4.636-4.259,1.457-9.811,2.766-9.088.506.279-5.326-3.476-3.262-8.649,1.735-4.351,4.694-4.784,5.146-4.875S-.448,19.625,1.94,10.945C4.39,2.037,16.384-2.776,28.21,4.175" fill="%23003577"/></svg>') !important;
  background-size: 22px !important;
  opacity: 0.5;
  transition: all 200ms ease-in-out;
}

body .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"]:hover {
  opacity: 1;
}

body .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"] {
  left: 0 !important;
  right: auto !important;
}

body .uwy.userway_p1 .userway_buttons_wrapper {
  right: 15px !important;
  left: auto !important;
  bottom: 15px !important;
  top: auto !important;
  transform: none !important;
}

@media only screen and (max-width: 768px) {
  body #purposes-content-container .purposes-header .purposes-header-title {
    font-size: 1.8rem !important;
  }

  body .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"] {
    right: 1.25rem !important;
    bottom: 1.25rem !important;
    width: 2.5rem !important;
    height: 2.5rem !important;
  }

  body #purposes-content-container .purposes-section-header-title {
    font-size: 17px !important;
  }

  body.menu-opened .iubenda-tp-btn[data-tp-float][data-tp-float="bottom-right"] {
    display: none !important;
  }
}
