@charset "UTF-8";
/*!
 * Theme Name: 		  Blankspaces Child
 * Template:           blankspaces
 * Version:            1.1.1
 * Tested up to:       6.5
 * Requires at least:  5.6
 * Requires PHP:       7.2
 * Author:             Aníbal Fuentes Palacios, Blank Spaces
 * Author URI:         https://blankspaces.it
 * Description:        Child theme di BlankSpaces, fatto per aggiungere funzionalità ai siti tramite l'utilizzo di shortcodes
 *
 * Last update: 18/02/2025
 *
 * License: GNU General Public License v2.0 or later
 * License URI: https://www.gnu.org/licenses/gpl-2.0.html
 *
 * All files, unless otherwise stated, are released under the GNU General Public
 * License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

 * This theme, like WordPress, is licensed under the GPL.
 */
/* INDEX */
/* 1.0 Import */
@font-face {
  font-family: "Montserrat";
  src: url("./assets/fonts/Montserrat-VariableFont_wght.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Poppins";
  src: url("./assets/fonts/Poppins-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Poppins";
  src: url("./assets/fonts/Poppins-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Poppins";
  src: url("./assets/fonts/Poppins-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
/* 2.0 Reset */
* {
  box-sizing: border-box;
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

.site-main {
  padding: 0;
  margin-top: -12rem;
}

/* 3.0 Variables */
:root {
  /* Color styles */
  --main--magenta: rgba(219, 47, 238, 1);
  --main--purple: rgba(102, 36, 131, 1);
  --main--white: rgba(255, 248, 225, 1);
  --main--black: rgba(26, 26, 26, 1);
  --secondary--yellow: rgba(249, 199, 34, 1);
  --secondary--orange: rgba(244, 164, 58, 1);
  --secondary--red: rgba(196, 59, 67, 1);
  --secondary--light--blue: rgba(128, 139, 240, 1);
  --main--green: rgba(59, 196, 68, 1);
  --basic-white: rgba(255, 255, 255, 1);
  --basic-grey: rgba(233, 233, 233, 1);
  --link: #1e6cff;
  /* Text-size styles */
  /* base size: button-menu (16px) */
  --main-title-desktop-40: 2.5rem;
  --main-title-mobile-32: 2rem;
  --title-24: 1.5rem;
  --subtitle-18: 1.13rem;
  --subtitle-chips-18: 1.13rem;
  --p-18: 1.13rem;
  --p-14: 0.88rem;
  --button: 1.13rem;
  --button-menu: 1rem;
  --p-10: 0.63rem;
  /* Effect styles */
  --toon-shading: 3px 3px 0px rgba(26, 26, 26, 1);
  --max-w-global: 1280px;
  /* --global-padding-inline: 1.5rem;
   --global-margin: 10vw;
   --column-gap: 1.5rem;
    */
  --header-height: 8rem;
  --screen-height: calc(100vh - var(--header-height));
  --titles-font: "Montserrat", sans-serif;
  --main-font: "Poppins", sans-serif;
}

/* 3.0 Global */
html {
  font-size: 16px;
}

body {
  font-family: var(--main-font);
  font-size: 1rem;
  color: var(--main--black);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--titles-font);
  text-transform: uppercase;
}

h1 {
  font-size: var(--main-title-desktop-40);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
}

h2 {
  font-size: clamp(2rem, 1.8725rem + 0.5229vw, 2.5rem);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
}

h3 {
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  /* 2.4rem */
}

h4 {
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  /* 1.8rem */
}

a:not(.wp-block-button__link) {
  text-decoration: none;
  transition: all 0.3s ease;
  color: var(--main--black);
}
a:not(.wp-block-button__link):hover {
  text-decoration: underline;
}

p {
  font-size: var(--p-18);
}

/* Regole lingua */
html:lang(en-GB) .show-en {
  display: block;
}
html:lang(en-GB) .show-it {
  display: none;
}

html:lang(it-IT) .show-it {
  display: block;
}
html:lang(it-IT) .show-en {
  display: none;
}

/* 4.0 Componenti */
/* Menu header */
.site-header {
  min-height: var(--header-height);
  display: flex;
  justify-content: space-between;
  padding: 2rem 4rem;
  background: transparent;
  z-index: 1000;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  gap: 1rem;
}
@media (max-width: 1200px) {
  .site-header {
    padding: 1.5rem 1rem;
  }
}
.site-header .site-branding {
  max-width: 40%;
  display: flex;
  align-items: center;
}
.site-header .site-branding .site-logo {
  display: flex;
  align-items: center;
  max-width: 100%;
}
.site-header .site-branding .site-logo span,
.site-header .site-branding .site-logo .custom-logo-link {
  display: flex;
  align-items: center;
  max-width: 100%;
}
.site-header .site-branding .site-logo img {
  max-height: 120px;
  width: auto;
  height: auto;
  display: block;
}
.site-header .site-branding .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.site-header .primary-navigation {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}
.site-header .primary-navigation .menu-button-container {
  display: none;
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .menu-button-container {
    display: block;
    position: relative;
    z-index: 1001;
  }
  .site-header .primary-navigation .menu-button-container button {
    background: var(--secondary--orange);
    border: 2px solid var(--main--black);
    border-radius: 2rem;
    color: var(--main--black);
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.5rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 3px 3px 0 0 var(--main--black);
    transition: all 0.2s ease;
  }
  .site-header .primary-navigation .menu-button-container button:hover {
    background: var(--secondary--yellow);
    transform: translateY(-2px);
    box-shadow: 4px 4px 0 0 var(--main--black);
  }
  .site-header .primary-navigation .menu-button-container button svg {
    width: 24px;
    height: 24px;
  }
  .site-header .primary-navigation .menu-button-container button .dropdown-icon {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  .site-header .primary-navigation .menu-button-container button .dropdown-icon.close {
    display: none;
  }
  .site-header .primary-navigation .menu-button-container button[aria-expanded=true] .dropdown-icon.open {
    display: none;
  }
  .site-header .primary-navigation .menu-button-container button[aria-expanded=true] .dropdown-icon.close {
    display: flex;
  }
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container {
    position: fixed;
    top: 0;
    right: -100%;
    width: 80%;
    max-width: 400px;
    height: 100vh;
    background: linear-gradient(135deg, #7b8ef0 0%, #9b7dd4 100%);
    padding: 6rem 2rem 2rem;
    box-shadow: -4px 0 15px rgba(0, 0, 0, 0.3);
    transition: right 0.3s ease-in-out;
    z-index: 1000;
    overflow-y: auto;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li {
  position: relative;
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li {
    width: 100%;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li a {
  display: inline-block;
  padding: 0.75rem 1.25rem;
  color: var(--main--black);
  background: var(--basic-white);
  border: 2px solid var(--main--black);
  box-shadow: 2px 2px 0 0 var(--main--black);
  border-radius: 2rem;
  font-family: var(--main-font);
  font-size: var(--button-menu);
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  white-space: nowrap;
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li a {
    display: block;
    text-align: center;
    width: 100%;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li a:hover {
  background: var(--main--white);
  transform: translateY(-2px);
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children > a {
  padding-right: 2.5rem;
  position: relative;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children > a::after {
  content: "";
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.6667 5.33333L8.00004 12L1.33337 5.33333L2.51671 4.15L8.00004 9.63333L13.4834 4.15L14.6667 5.33333Z' fill='%231A1A1A'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform 0.3s ease;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  background: var(--basic-white);
  border: 2px solid var(--main--black);
  border-radius: 1rem;
  box-shadow: 3px 3px 0 0 var(--main--black);
  padding: 0.5rem;
  margin-top: 0.5rem;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  z-index: 1000;
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children .sub-menu {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    margin-top: 0.5rem;
    display: none;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children .sub-menu li {
  width: 100%;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children .sub-menu li a {
  display: block;
  width: 100%;
  padding: 0.75rem 1rem;
  border: none;
  border-radius: 0.5rem;
  text-align: left;
  box-shadow: none;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children .sub-menu li a:hover {
  background: var(--main--white);
  transform: none;
  box-shadow: none;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children:hover > .sub-menu {
    display: block;
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children:hover > a::after {
  transform: translateY(-50%) rotate(180deg);
}
@media (max-width: 1200px) {
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children.mobile-submenu-open > .sub-menu {
    display: block;
  }
  .site-header .primary-navigation .primary-menu-container .menu-wrapper li.menu-item-has-children.mobile-submenu-open > a::after {
    transform: translateY(-50%) rotate(180deg);
  }
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.lang-item a {
  padding: 0.5rem 0.75rem;
  min-width: 50px;
  text-align: center;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati {
  order: 6;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati a {
  background: var(--secondary--yellow);
  font-weight: 600;
  box-shadow: 3px 3px 0 0 var(--main--black);
  padding-right: 2.5rem;
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati a:hover {
  background: var(--secondary--orange);
  transform: translateY(-2px);
  box-shadow: 4px 4px 0 0 var(--main--black);
}
.site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.293 8L7.99609 15.2959L7.28516 14.5957L12.5283 9.35352L13.3818 8.5H0.5V7.5H13.3818L7.28516 1.40332L7.99609 0.703125L15.293 8Z' fill='%231A1A1A' stroke='%231A1A1A'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform 0.2s ease;
}

/* menu accedi cambia icone quando loggato */
body.logged-in .site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati a {
  font-size: 0;
  color: transparent;
  width: 44px;
  height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.logged-in .site-header .primary-navigation .primary-menu-container .menu-wrapper li.candidati a::after {
  width: 22px;
  height: 22px;
  top: initial;
  right: initial;
  transform: initial;
  background-image: url("data:image/svg+xml,%3Csvg%20width='24'%20height='22'%20viewBox='0%200%2024%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M11.8083%2018C14.0417%2018%2015.9333%2017.2208%2017.4833%2015.6625C19.0333%2014.1042%2019.8083%2012.2167%2019.8083%2010C19.8083%209.48333%2019.7667%208.9875%2019.6833%208.5125C19.6%208.0375%2019.4667%207.575%2019.2833%207.125C18.8333%207.40833%2018.3583%207.625%2017.8583%207.775C17.3583%207.925%2016.8417%208%2016.3083%208C15.4083%208%2014.5625%207.79583%2013.7708%207.3875C12.9792%206.97917%2012.325%206.4%2011.8083%205.65C11.2917%206.4%2010.6375%206.97917%209.84583%207.3875C9.05417%207.79583%208.20833%208%207.30833%208C6.775%208%206.25833%207.925%205.75833%207.775C5.25833%207.625%204.78333%207.40833%204.33333%207.125C4.15%207.575%204.01667%208.0375%203.93333%208.5125C3.85%208.9875%203.80833%209.48333%203.80833%2010C3.80833%2012.2167%204.5875%2014.1042%206.14583%2015.6625C7.70417%2017.2208%209.59167%2018%2011.8083%2018ZM8.80833%2012.25C9.15833%2012.25%209.45417%2012.1292%209.69583%2011.8875C9.9375%2011.6458%2010.0583%2011.35%2010.0583%2011C10.0583%2010.65%209.9375%2010.3542%209.69583%2010.1125C9.45417%209.87083%209.15833%209.75%208.80833%209.75C8.45833%209.75%208.1625%209.87083%207.92083%2010.1125C7.67917%2010.3542%207.55833%2010.65%207.55833%2011C7.55833%2011.35%207.67917%2011.6458%207.92083%2011.8875C8.1625%2012.1292%208.45833%2012.25%208.80833%2012.25ZM14.8083%2012.25C15.1583%2012.25%2015.4542%2012.1292%2015.6958%2011.8875C15.9375%2011.6458%2016.0583%2011.35%2016.0583%2011C16.0583%2010.65%2015.9375%2010.3542%2015.6958%2010.1125C15.4542%209.87083%2015.1583%209.75%2014.8083%209.75C14.4583%209.75%2014.1625%209.87083%2013.9208%2010.1125C13.6792%2010.3542%2013.5583%2010.65%2013.5583%2011C13.5583%2011.35%2013.6792%2011.6458%2013.9208%2011.8875C14.1625%2012.1292%2014.4583%2012.25%2014.8083%2012.25ZM7.30833%206C8.275%206%209.1%205.65833%209.78333%204.975C10.4667%204.29167%2010.8083%203.46667%2010.8083%202.5V2.05C9.675%202.18333%208.63333%202.54167%207.68333%203.125C6.73333%203.70833%205.94167%204.45%205.30833%205.35C5.60833%205.55%205.925%205.70833%206.25833%205.825C6.59167%205.94167%206.94167%206%207.30833%206ZM16.3083%206C16.675%206%2017.025%205.94583%2017.3583%205.8375C17.6917%205.72917%2018.0083%205.56667%2018.3083%205.35C17.675%204.45%2016.8875%203.70833%2015.9458%203.125C15.0042%202.54167%2013.9583%202.18333%2012.8083%202.05V2.5C12.8083%203.46667%2013.15%204.29167%2013.8333%204.975C14.5167%205.65833%2015.3417%206%2016.3083%206ZM2.00833%2022C1.425%2022%200.933333%2021.7833%200.533333%2021.35C0.133333%2020.9167-0.0416667%2020.4083%200.00833333%2019.825L0.908333%209.95C1.04167%208.55%201.42083%207.24167%202.04583%206.025C2.67083%204.80833%203.47083%203.75417%204.44583%202.8625C5.42083%201.97083%206.5375%201.27083%207.79583%200.7625C9.05417%200.254167%2010.3917%200%2011.8083%200C13.225%200%2014.5625%200.254167%2015.8208%200.7625C17.0792%201.27083%2018.1958%201.97083%2019.1708%202.8625C20.1458%203.75417%2020.9458%204.80833%2021.5708%206.025C22.1958%207.24167%2022.575%208.55%2022.7083%209.95L23.6083%2019.825C23.6583%2020.4083%2023.4833%2020.9167%2023.0833%2021.35C22.6833%2021.7833%2022.1917%2022%2021.6083%2022H2.00833ZM11.8083%2020C9.725%2020%207.85%2019.4208%206.18333%2018.2625C4.51667%2017.1042%203.30833%2015.6167%202.55833%2013.8L2.00833%2020H21.6083L21.0583%2013.8C20.3083%2015.6167%2019.1042%2017.1042%2017.4458%2018.2625C15.7875%2019.4208%2013.9083%2020%2011.8083%2020ZM11.8083%2020H21.6083H2.00833H11.8083Z'%20fill='%231C1B1F'/%3E%3C/svg%3E");
}

/* Menu mobile overlay e apertura */
@media (max-width: 1200px) {
  body.primary-navigation-open {
    overflow: hidden;
  }
  body.primary-navigation-open::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    -webkit-animation: fadeIn 0.3s ease;
    animation: fadeIn 0.3s ease;
  }
  body.primary-navigation-open .primary-menu-container {
    right: 0 !important;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* button */
.wp-block-button__link {
  background: var(--basic-white);
  border: 2px solid var(--main--black);
  border-radius: 2rem;
  color: var(--main--black);
  font-size: var(--button);
  font-weight: 500;
  padding: 0.5rem 1.5rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  box-shadow: 3px 3px 0 0 var(--main--black);
  transition: all 0.2s ease;
}
.wp-block-button__link:hover {
  background: var(--secondary--yellow);
  transform: translateY(-2px);
  box-shadow: 4px 4px 0 0 var(--main--black);
  cursor: pointer;
}
.wp-block-button__link {
  width: 100%;
}
@media screen and (min-width: 778px) {
  .wp-block-button__link {
    width: auto;
  }
}

.candidati .wp-block-button__link {
  background: var(--secondary--orange);
  position: relative;
  padding-right: 2.5rem;
}
.candidati .wp-block-button__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.293 8L7.99609 15.2959L7.28516 14.5957L12.5283 9.35352L13.3818 8.5H0.5V7.5H13.3818L7.28516 1.40332L7.99609 0.703125L15.293 8Z' fill='%231A1A1A' stroke='%231A1A1A'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* utilities */
.max-w-lg {
  max-width: 880px;
  margin: 0 auto;
  gap: 1.5rem;
}

.wp-block-buttons {
  justify-content: center;
  gap: 1rem;
  margin-top: 2rem;
  width: 100%;
}
@media screen and (min-width: 778px) {
  .wp-block-buttons {
    width: auto;
  }
}
.wp-block-buttons > .wp-block-button {
  width: 100%;
}
@media screen and (min-width: 778px) {
  .wp-block-buttons > .wp-block-button {
    width: auto;
  }
}

/* homepage */
#post-18,
#post-85 {
  padding: 15rem 1rem 4rem 1rem;
  /* margin-top: -12rem; */
}
#post-18 .entry-excerpt,
#post-85 .entry-excerpt {
  justify-content: flex-start;
}
#post-18 .entry-title,
#post-85 .entry-title {
  margin-bottom: 1.5rem;
}
#post-18 .entry-content .content .wp-block-group,
#post-85 .entry-content .content .wp-block-group {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
@media screen and (min-width: 778px) {
  #post-18 .entry-content .content .wp-block-group,
  #post-85 .entry-content .content .wp-block-group {
    flex-direction: row;
    width: auto;
  }
}

@media screen and (min-width: 1000px) {
  #post-18,
  #post-85 {
    padding: 15rem 4rem 4rem 4rem;
    position: relative;
    overflow: hidden;
  }
  #post-18::before,
  #post-85::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-size: contain !important;
    z-index: 1;
  }
  #post-18 article,
  #post-85 article {
    position: relative;
    z-index: 2;
    width: 50%;
  }
  #post-18::before {
    background: url("https://toxdplus.it/wp-content/uploads/2026/01/home-cit-it.webp") no-repeat center right;
  }
  #post-85::before {
    background: url("https://toxdplus.it/wp-content/uploads/2026/01/home-cit-en.webp") no-repeat center right;
  }
}
.cit-home-wrap {
  display: flex;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 1rem;
  overflow-y: scroll;
  padding: 1rem 0;
  margin-top: 1.5rem;
}
@media screen and (min-width: 1000px) {
  .cit-home-wrap {
    display: none !important;
  }
}
.cit-home-wrap .cit-home {
  flex: none;
}
.cit-home-wrap .cit-home .wp-block-group__inner-container {
  display: inline-flex;
  width: 20rem;
  padding: 1.5rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  border-radius: 1rem;
  border: 2px solid var(--main--black);
  background: var(--basic-white);
  box-shadow: 3px 3px 0 0 var(--main--black);
}
.cit-home-wrap .cit-home .wp-block-group__inner-container p {
  font-size: var(--p-18);
  color: var(--main--black) !important;
}
.cit-home-wrap .cit-home .wp-block-group__inner-container .didascalia-cit-home {
  font-size: var(--p-14);
}

/* entry-excerpt */
.entry-excerpt {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}
.entry-excerpt p {
  color: var(--main--white);
  font-size: var(--p-18);
  font-weight: 600;
  line-height: 140%;
  padding: 0.4rem 1rem 0.25rem 1rem;
  border-radius: 4px;
  border: 2px solid var(--main--black);
  background: var(--main--magenta);
  box-shadow: 3px 3px 0 0 var(--main--black);
}

/* child pages */
.child-page {
  padding: 4rem 1rem;
}
@media screen and (min-width: 778px) {
  .child-page {
    padding: 5rem 4rem;
  }
}
.child-page article .entry-title {
  text-align: center;
  max-width: 30ch;
  margin: 0 auto 1.5rem auto;
}

#post-20,
#post-91 {
  background-color: var(--main--white);
}

/* colori background e testi isdark */
#post-26,
#post-94,
#post-47,
#post-104 {
  background-color: var(--secondary--red);
}

#post-41,
#post-102 {
  background-color: var(--main--purple);
}

#post-50,
#post-107,
#post-18,
#post-85 {
  background-color: var(--secondary--light--blue);
}

/* testi bianchi */
#post-26 .entry-title,
#post-94 .entry-title,
#post-47 .entry-title,
#post-104 .entry-title,
#post-41 .entry-title,
#post-102 .entry-title,
#post-50 .entry-title,
#post-107 .entry-title,
#post-18 .entry-title,
#post-85 .entry-title {
  color: var(--main--white);
}
#post-26 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-94 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-47 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-104 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-41 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-102 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-50 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-107 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-18 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)),
#post-85 .entry-content .wp-block-group :is(p, a:not(.wp-block-button__link)) {
  color: var(--main--white);
}

.page-tags {
  display: flex;
  gap: 1rem;
  overflow-y: visible;
  padding: 1rem 0;
  max-width: 100vw;
  margin: 2rem auto;
}
.page-tags li {
  flex: none;
  padding: 0.5rem 1rem 0.4rem 1rem;
  font-size: var(--subtitle-chips-18);
  font-family: var(--main-font);
  font-weight: 600;
  color: var(--main--black);
  list-style: none;
  border-radius: 8px;
  border: 2px solid var(--main--black);
  background-color: var(--basic-white);
  box-shadow: 3px 3px 0 0 #1a1a1a;
}

.page-tags::-webkit-scrollbar {
  display: none;
}

.page-tags {
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
}

.page-tags::-webkit-scrollbar {
  display: none;
  /* Safari and Chrome */
}

.card-supporto {
  padding: 2rem;
  background-color: var(--secondary--yellow);
  border: 2px solid var(--main--black);
  box-shadow: 3px 3px 0 0 #1a1a1a;
  border-radius: 16px;
  max-width: var(--max-w-global);
  margin: 0 auto;
  position: relative;
}
.card-supporto > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 778px) {
  .card-supporto > .wp-block-group__inner-container {
    flex-direction: row;
  }
}
.card-supporto > .wp-block-group__inner-container .entry-excerpt {
  margin-bottom: 2rem;
}
@media screen and (min-width: 778px) {
  .card-supporto > .wp-block-group__inner-container .entry-excerpt {
    justify-content: flex-start;
  }
}
.card-supporto .wp-block-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 778px) {
  .card-supporto .wp-block-list {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
  }
}
.card-supporto .wp-block-list li {
  list-style: none;
  padding: 0.5rem 1rem 0.4rem 1rem;
  border-radius: 8px;
  border: 2px solid var(--main--black);
  background-color: var(--basic-white);
  box-shadow: 3px 3px 0 0 #1a1a1a;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
}
.card-supporto .has-text-align-right {
  font-size: var(--p-14);
}
.card-supporto .has-text-align-right:not(:last-of-type) {
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 778px) {
  .card-supporto .has-text-align-right {
    text-align: left;
  }
}
.card-supporto::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background-image: url("./assets/img/Texture_pop.webp");
}

.professioniste-cards {
  display: flex;
  overflow-y: visible;
  gap: 1rem;
  max-width: 100%;
  margin-top: 4rem;
  /* @media screen and (min-width: 778px) {
    justify-content: center;
  } */
}
.professioniste-cards .professionista-card {
  flex: none;
  position: relative;
  width: 320px;
  height: auto;
  aspect-ratio: 4/3;
  border: 2px solid var(--main--black);
  box-shadow: 3px 3px 0 0 #1a1a1a;
  border-radius: 16px;
  padding: 2rem;
  background-color: var(--basic-white);
  overflow: hidden;
}
.professioniste-cards .professionista-card .professionista-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.professioniste-cards .professionista-card .professionista-image .professionista-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40.63%, rgba(0, 0, 0, 0.75) 100%);
}
.professioniste-cards .professionista-card .content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: flex-end;
  padding: 1rem;
  color: var(--main--white);
}
.professioniste-cards .professionista-card .content .professionista-title {
  font-size: var(--subtitle-18);
  font-weight: 700;
  text-transform: capitalize;
}
.professioniste-cards .professionista-card .content .professionista-excerpt {
  font-size: var(--p-14);
  font-weight: 500;
}

.professioniste-cards::-webkit-scrollbar {
  display: none;
}

.professioniste-cards {
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
}

.professioniste-cards::-webkit-scrollbar {
  display: none;
  /* Safari and Chrome */
}

#post-38,
#post-96 {
  background-color: var(--main--white);
}
#post-38 .entry-title,
#post-96 .entry-title {
  max-width: 1440px;
  margin: 0 auto 2.5rem;
}
#post-38 .entry-content,
#post-96 .entry-content {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

/* accordion */
.wp-block-accordion {
  border-radius: 16px;
  border: 2px solid var(--main--black);
  background: var(--basic-white);
  box-shadow: 3px 3px 0 0 #1a1a1a;
}
.wp-block-accordion:not(:last-of-type) {
  margin-bottom: 0.5rem;
}
.wp-block-accordion .wp-block-accordion-heading__toggle {
  padding: 0.25em 0.75em;
}
.wp-block-accordion .wp-block-accordion-heading__toggle-title,
.wp-block-accordion .wp-block-accordion-heading__toggle-icon {
  font-family: var(--main-font);
  font-size: var(--title-24);
  text-transform: capitalize;
}
.wp-block-accordion .wp-block-accordion-heading__toggle-icon {
  border: 1px solid var(--main--black);
  border-radius: 50%;
  font-weight: 400;
}
.wp-block-accordion .wp-block-accordion-panel {
  padding: 0.5rem 1.5rem 1rem;
}

.wp-block-accordion-panel {
  overflow: hidden;
  max-height: 0;
  /* chiuso di default */
  transition: max-height 0.4s ease;
  /* durata e easing */
}

.wp-block-accordion-item.is-open .wp-block-accordion-panel {
  max-height: 1000px;
  /* abbastanza grande da contenere il contenuto */
}

#post-41 .entry-content .grid-cards > .wp-block-group__inner-container,
#post-102 .entry-content .grid-cards > .wp-block-group__inner-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
  margin: 2rem auto 0 auto;
  max-width: var(--max-w-global);
}
@media screen and (min-width: 778px) {
  #post-41 .entry-content .grid-cards > .wp-block-group__inner-container,
  #post-102 .entry-content .grid-cards > .wp-block-group__inner-container {
    margin: 6rem auto 0 auto;
  }
}

.card-candidatura > .wp-block-group__inner-container {
  position: relative;
  padding: 2rem;
  background-color: var(--basic-white);
  border: 2px solid var(--main--black);
  border-radius: 16px;
  display: flex;
  height: 100%;
  width: 100%;
}
@media screen and (min-width: 778px) {
  .card-candidatura > .wp-block-group__inner-container {
    max-width: 350px;
  }
}
.card-candidatura > .wp-block-group__inner-container .number {
  position: absolute;
  top: -1.5rem;
  left: -1.5rem;
  background-color: var(--main--magenta);
  border-radius: 16px;
  border: 2px solid var(--main--black);
  padding: 0.75em 1em;
  box-shadow: 3px 3px 0 0 #1a1a1a;
  color: var(--basic-white);
  font-weight: 600;
  z-index: 1;
}
.card-candidatura > .wp-block-group__inner-container .content .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: stretch;
  height: 100%;
}
.card-candidatura > .wp-block-group__inner-container .content .wp-block-group__inner-container .wp-block-group {
  flex: 1 0 auto;
}
.card-candidatura > .wp-block-group__inner-container .content .wp-block-group__inner-container .wp-block-group p {
  color: var(--main--black) !important;
  font-size: var(--p-18);
}
.card-candidatura > .wp-block-group__inner-container .content .wp-block-group__inner-container .wp-block-group .title {
  text-transform: uppercase;
  font-size: var(--title-24);
  font-weight: 600;
}
.card-candidatura > .wp-block-group__inner-container .content .wp-block-image {
  margin: 0 !important;
}

#post-47 .wp-block-image,
#post-104 .wp-block-image {
  text-align: center;
  margin: 3rem auto 0 !important;
}

/* footer */
body:is(.page-id-112, .page-id-75, .page-template-form_documentazione) .site-footer {
  background-color: var(--secondary--red);
}

.site-footer {
  background-color: var(--secondary--light--blue);
}
.site-footer .widget {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1rem 4rem 1rem;
}
@media screen and (min-width: 778px) {
  .site-footer .widget {
    padding: 0 4rem 5rem 4rem;
  }
}
.site-footer .widget > .wp-block-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  padding: 2rem 1rem;
  border-radius: 16px;
  border: 2px solid var(--main--black, #1a1a1a);
  background: var(--basic-white, #fff);
  box-shadow: 3px 3px 0 0 #1a1a1a;
}
@media screen and (min-width: 778px) {
  .site-footer .widget > .wp-block-group {
    grid-template-columns: 1fr 2fr;
    padding: 2rem;
    gap: 4rem;
  }
}
.site-footer .widget > .wp-block-group .col-left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
  height: 100%;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-image {
  max-width: 200px;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-image img {
  width: 100%;
  height: auto;
}
.site-footer .widget > .wp-block-group .col-left p {
  font-size: var(--subtitle-18);
  font-weight: 600;
  margin-bottom: 1rem;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-social-links {
  gap: 1rem;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-social-links .wp-social-link {
  background-color: transparent !important;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-social-links .wp-social-link a {
  background-color: var(--main--black);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
.site-footer .widget > .wp-block-group .col-left .wp-block-social-links .wp-social-link a:hover {
  transform: translateY(-2px);
}
.site-footer .widget > .wp-block-group .col-left .wp-block-social-links .wp-social-link a svg {
  fill: var(--basic-white);
}
.site-footer .widget > .wp-block-group .col-right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
  height: 100%;
}
@media screen and (min-width: 778px) {
  .site-footer .widget > .wp-block-group .col-right {
    align-items: flex-end;
  }
}
.site-footer .widget > .wp-block-group .col-right .links {
  grid-column: span 3;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
@media screen and (min-width: 778px) {
  .site-footer .widget > .wp-block-group .col-right .links {
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end !important;
  }
}
.site-footer .widget > .wp-block-group .col-right .links p {
  font-weight: 400;
}
.site-footer .widget > .wp-block-group .col-right .loghi {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media screen and (min-width: 778px) {
  .site-footer .widget > .wp-block-group .col-right .loghi {
    flex-direction: row;
    justify-content: flex-end;
  }
}
.site-footer .widget > .wp-block-group .col-right .loghi p {
  font-weight: 600;
}
.site-footer .widget > .wp-block-group .col-right .loghi .wp-block-image {
  width: 180px;
}
.site-footer .widget > .wp-block-group .col-right .loghi .wp-block-image img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
}

/* texture pop */
@media screen and (min-width: 1000px) {
  #post-18,
  #post-85,
  #post-41,
  #post-102 {
    position: relative;
    overflow: hidden;
  }
  #post-18 article,
  #post-85 article,
  #post-41 article,
  #post-102 article {
    position: relative;
    z-index: 2;
  }
  #post-18::after,
  #post-85::after,
  #post-41::after,
  #post-102::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }
  #post-18::after,
  #post-85::after,
  #post-41::after,
  #post-102::after {
    background-image: url("./assets/img/Texture_pop.webp");
  }
}
/* splash bg */
#post-38,
#post-96 {
  position: relative;
  overflow: hidden;
}
#post-38 article,
#post-96 article {
  position: relative;
  z-index: 2;
}
#post-38::after,
#post-96::after {
  content: "";
  position: absolute;
  background-image: url("./assets/img/splash.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  bottom: -30%;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

/* cloud bg */
#post-26,
#post-94 {
  position: relative;
  overflow: hidden;
}
#post-26 article,
#post-94 article {
  position: relative;
  z-index: 2;
}
#post-26::after,
#post-94::after {
  content: "";
  position: absolute;
  background-image: url("./assets/img/cloud.webp");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: bottom right;
  bottom: -10%;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
@media screen and (min-width: 775px) {
  #post-26::after,
  #post-94::after {
    background-size: 65%;
  }
}

/* icon w */
#post-20,
#post-91 {
  position: relative;
  overflow: hidden;
  padding: 8rem 2rem 12rem 2rem;
}
@media screen and (min-width: 1200px) {
  #post-20,
  #post-91 {
    padding: 6rem 4rem;
  }
}
#post-20 article,
#post-91 article {
  position: relative;
  z-index: 2;
}
#post-20::after,
#post-91::after {
  content: "";
  position: absolute;
  background-image: url("./assets/img/icon-w.webp");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: 1rem;
  right: -5rem;
  width: 10rem;
  height: 10rem;
  z-index: 1;
}
@media screen and (min-width: 1200px) {
  #post-20::after,
  #post-91::after {
    top: 4rem;
    right: 4rem;
  }
}
#post-20::before,
#post-91::before {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  left: -2.5rem;
  width: 10rem;
  height: 10rem;
  transform: rotate(-45deg);
  background-image: url("./assets/img/icon-w.webp");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: 1;
}
@media screen and (min-width: 1200px) {
  #post-20::before,
  #post-91::before {
    top: 30%;
    bottom: auto;
  }
}

/* icon circle */
.circle {
  position: relative;
  display: inline-block;
}
.circle::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  right: -2rem;
  width: 15rem;
  height: 4.25rem;
  background-image: url("./assets/img/circle.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}

#post-75,
#post-112,
.form-documentazione {
  background-color: var(--secondary--red);
  padding: 15rem 1rem 8rem 1rem;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media screen and (min-width: 1000px) {
  #post-75,
  #post-112,
  .form-documentazione {
    padding: 15rem 4rem 6rem 4rem;
  }
}
#post-75 .entry-title,
#post-112 .entry-title,
.form-documentazione .entry-title {
  color: var(--main--white);
  font-size: var(--title-24) !important;
  margin-bottom: 1rem;
  z-index: 1;
}
#post-75 .entry-content,
#post-112 .entry-content,
.form-documentazione .entry-content {
  z-index: 1;
  position: relative;
}
#post-75 .entry-content p,
#post-112 .entry-content p,
.form-documentazione .entry-content p {
  color: var(--main--white) !important;
  font-size: var(--p-18);
  font-weight: 600;
  margin-bottom: 2rem;
}
@media screen and (min-width: 1200px) {
  #post-75 .entry-content,
  #post-112 .entry-content,
  .form-documentazione .entry-content {
    z-index: 1001;
  }
}
#post-75 > *,
#post-112 > *,
.form-documentazione > * {
  max-width: 664px;
  margin: 0 auto;
}
#post-75::after,
#post-112::after,
.form-documentazione::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-image: url("./assets/img/Texture_pop.webp");
}
#post-75 .entry-footer,
#post-112 .entry-footer,
.form-documentazione .entry-footer {
  display: none;
}

/* Progress bar */
.bs-progress {
  width: 100%;
  height: 6px;
  background: rgba(255, 248, 225, 0.3);
  border-radius: 100px;
  margin-bottom: 2.5rem;
  position: relative;
}

.bs-progress-bar {
  height: 100%;
  width: 0;
  background: var(--main--white);
  border-radius: 100px;
  transition: width 0.3s ease;
}

/* Navigazione */
.bs-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 3rem;
}

/* inputs */
#bs_form_standard fieldset {
  display: none;
  border: 0;
  padding: 0;
}

.bs-input-wrapper,
#bs_form_standard fieldset.is-active {
  display: flex !important;
  flex-direction: column;
  gap: 1rem;
}

input,
textarea {
  border-radius: 16px;
  padding: 1rem 1.5rem;
  border: 2px solid var(--main--black);
  background: #fff;
  box-shadow: 3px 3px 0 0 #1a1a1a;
  width: 100%;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: var(--main--black);
  opacity: 0.5;
  font-size: var(--p-18);
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: var(--main--black);
  opacity: 0.5;
  font-size: var(--p-18);
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: var(--main--black);
  opacity: 0.5;
  font-size: var(--p-18);
}
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: var(--main--black);
  opacity: 0.5;
  font-size: var(--p-18);
}
input::placeholder,
textarea::placeholder {
  color: var(--main--black);
  opacity: 0.5;
  font-size: var(--p-18);
}
input,
textarea {
  /* &#submit_form_candidatura {
    width: auto;
    cursor: pointer;
    transition: all 0.2s ease;
    &:hover {
      background: var(--secondary--orange);
      transform: translateY(-2px);
      box-shadow: 4px 4px 0 0 var(--main--black);
    }
  } */
}

textarea {
  min-height: 7rem;
  resize: vertical;
}

/* nasconde label */
.bs-input-wrapper label:has(+ input[type=text]),
.bs-input-wrapper label:has(+ input[type=email]),
.bs-input-wrapper label:has(+ input[type=number]),
.bs-input-wrapper label:has(+ input[type=tel]),
.bs-input-wrapper label:has(+ textarea) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.bs-input-wrapper .bs-input-error {
  color: var(--secondary--red);
  font-size: var(--p-14);
  margin-top: 0;
  opacity: 0;
  max-height: 0;
  transform: translateY(-4px);
  transition: opacity 0.2s ease, transform 0.2s ease, max-height 0.2s ease;
}
.bs-input-wrapper .bs-input-error.is-visible {
  opacity: 1;
  max-height: 3rem;
  transform: translateY(0);
  margin-top: 0.25rem;
}

.bs-input-wrapper + .bs-input-wrapper .bs-group-label {
  margin-top: 2rem;
}

.bs-group-label {
  color: var(--main--white) !important;
  font-size: var(--p-18);
  font-weight: 600;
}

.privacy-wrapper label,
.privacy-wrapper p {
  font-size: var(--p-14) !important;
  font-weight: 400 !important;
}
.privacy-wrapper .bs-input-wrapper {
  flex-direction: row-reverse !important;
  margin-bottom: 1rem;
}
.privacy-wrapper .bs-option input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.privacy-wrapper .bs-option input[type=checkbox] + label {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  cursor: pointer;
  color: var(--main--white);
}
.privacy-wrapper .bs-option input[type=checkbox] + label::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  min-width: 24px;
  border-radius: 4px;
  border: 2px solid var(--main--white);
  background: transparent;
  flex-shrink: 0;
  transition: all 0.2s ease;
  margin-top: 0.125rem;
}
.privacy-wrapper .bs-option input[type=checkbox] + label:hover::before {
  background: rgba(255, 255, 255, 0.1);
}
.privacy-wrapper .bs-option input[type=checkbox]:checked + label::before {
  background: var(--main--white);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.5 4L6 11.5L2.5 8' stroke='%23C43B43' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
}

/* radio buttons */
.bs-option input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.bs-option input[type=radio] + label {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.5rem;
  border-radius: 16px;
  border: 2px solid var(--main--black);
  background: var(--basic-white);
  box-shadow: 3px 3px 0 0 var(--main--black);
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: var(--p-18);
  font-weight: 500;
}
.bs-option input[type=radio] + label::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  border: 2px solid var(--main--black);
  background: var(--basic-white);
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.bs-option input[type=radio] + label:hover {
  transform: translateY(-2px);
  box-shadow: 4px 4px 0 0 var(--main--black);
}
.bs-option input[type=radio]:checked + label {
  background: var(--secondary--yellow);
}
.bs-option input[type=radio]:checked + label::before {
  background: var(--main--black);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.5 4L6 11.5L2.5 8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
}

.bs-input-wrapper.has-error .bs-option input[type=radio] + label {
  border-color: var(--secondary--yellow);
  box-shadow: 3px 3px 0 0 var(--secondary--yellow);
}
.bs-input-wrapper.has-error .bs-option input[type=radio] + label::before {
  border-color: var(--secondary--yellow);
}

.bs_form_standard button[type=button],
#submit_form_candidatura {
  background: var(--secondary--orange);
  border: 2px solid var(--main--black);
  border-radius: 2rem;
  color: var(--main--black);
  font-size: var(--button);
  font-weight: 500;
  padding: 0.5rem 1.5rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  box-shadow: 3px 3px 0 0 var(--main--black);
  cursor: pointer;
  transition: all 0.2s ease;
}
.bs_form_standard button[type=button]:hover,
#submit_form_candidatura:hover {
  background: var(--secondary--yellow);
  transform: translateY(-2px);
  box-shadow: 4px 4px 0 0 var(--main--black);
}

#submit_form_candidatura {
  width: auto;
}

/* Messaggio finale candidatura */
.candidatura-success-message {
  max-width: 640px;
  margin: 3rem auto;
  padding: 2.5rem;
  background: var(--main--white);
  border: 2px solid var(--main--black);
  box-shadow: var(--toon-shading);
  border-radius: 24px;
  text-align: center;
}
.candidatura-success-message h2 {
  margin-bottom: 1rem;
}
.candidatura-success-message p {
  margin-bottom: 1rem !important;
  --main--white: var(--main--black);
}

@media (max-width: 768px) {
  .candidatura-success-message {
    margin: 2rem 1rem;
    padding: 2rem 1.5rem;
  }
}
/* FORM DOCUMENTAZIONE */
.form-documentazione {
  min-height: calc(100dvh - var(--header-height));
}
.form-documentazione .box-logout {
  border-radius: 1rem;
  border: 2px solid var(--main--black);
  background: var(--basic-white);
  box-shadow: 3px 3px 0 0 #1a1a1a;
  overflow: hidden;
  padding: 2rem;
  text-align: center;
}
.form-documentazione .box-logout .wp-block-buttons {
  gap: 1rem;
  justify-content: center;
}

#bs_form_documentazione fieldset {
  border: 0;
  padding: 0;
  margin-bottom: 4rem;
}
#bs_form_documentazione fieldset:last-of-type {
  margin-bottom: 0;
}
#bs_form_documentazione fieldset .bs-form-documentazione-title {
  color: var(--main--white);
  font-size: var(--subtitle-18);
  margin-bottom: 1rem;
}
#bs_form_documentazione .bs-form-documentazione-isee {
  max-height: 0;
  opacity: 0;
  transform: translateY(-6px);
  visibility: hidden;
  overflow: hidden;
  pointer-events: none;
  margin-bottom: 0;
  transition: max-height 0.4s ease, opacity 0.3s ease, transform 0.3s ease;
}
#bs_form_documentazione .bs-form-documentazione-isee.is-visible {
  max-height: 2000px;
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
  margin-bottom: 4rem;
}
#bs_form_documentazione .bs-input-error {
  margin-bottom: 0;
  color: var(--secondary--yellow) !important;
}
#bs_form_documentazione .bs-input-error.is-visible {
  margin-bottom: 0.25rem;
}
#bs_form_documentazione #submit_form_documentazione {
  background: var(--secondary--orange);
  border-radius: 2rem;
  cursor: pointer;
  transition: all 0.2s ease;
}
#bs_form_documentazione #submit_form_documentazione:hover {
  background: var(--secondary--yellow);
  transform: translateY(-2px);
  box-shadow: 4px 4px 0 0 var(--main--black);
}

/* page default */
body:is(.page-template-default-template) article {
  background-color: var(--main--white);
  padding: 15rem 1rem 8rem 1rem;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1200px) {
  body:is(.page-template-default-template) article {
    padding: 15rem 4rem 6rem 4rem;
  }
}
body:is(.page-template-default-template) article::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background-image: url("./assets/img/Texture_pop.webp");
}
body:is(.page-template-default-template) article .entry-title {
  margin-bottom: 1.5rem;
}
body:is(.page-template-default-template) article .wp-block-heading {
  font-size: var(--subtitle-18) !important;
  text-transform: capitalize;
  margin-bottom: 0.75rem;
}
body:is(.page-template-default-template) article p {
  font-size: var(--p-18);
  margin-bottom: 1.5rem;
}
body:is(.page-template-default-template) footer {
  display: none;
}

/* 404 page */
.error-404 {
  min-height: 100vh;
  background-color: var(--main--white);
  padding: 4rem 1rem;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 778px) {
  .error-404 {
    padding: 8rem 4rem;
  }
}
.error-404::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1100px;
  height: 60%;
  background-image: url("./assets/img/404.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: 0;
}
@media screen and (min-width: 778px) {
  .error-404::before {
    height: 100%;
    background-size: contain;
  }
}
.error-404 .container-wrap {
  max-width: 650px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.error-404 .container-wrap .error-404-content {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}
.error-404 .container-wrap .error-404-content .page-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
.error-404 .container-wrap .error-404-content .page-header p {
  font-weight: 600;
}

body:is(.error404) .site-footer {
  display: none;
}

/**
* FIX DASHBOARD STYLE
*/
@media (min-width: 769px) {
  .page-template-dashboard #masthead {
    position: relative;
  }
}