/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


/**
 * Colori 
 */
 :root {
  --brand-rosso: hsl(357, 92%, 62%);
  --brand-azzurro: hsl(184.8, 38.5%, 61.8%);
  --brand-verde: hsl(197, 100%, 12%);
  --brand-bianco: hsl(72, 24%, 96%);  
  --clr-white-pure: hsl(0, 0%, 98%);

  --clr-light: var( --brand-bianco );
  --clr-lightest: var( --clr-white-pure );
  --clr-dark: var( --brand-verde );  

  --btn-primary-bg: var( --brand-verde );
  --btn-primary-clr: var( --brand-verde );
  --btn-primary-border: var( --brand-verde );
  --btn-secondary-bg: var( --brand-bianco );
  --btn-secondary-clr: var( --brand-verde );
  --btn-secondary-border: var( --brand-verde );
   
  --link-light-bg: var( --brand-rosso );
  --link-light-hover-clr: var( --clr-lightest );
  --link-dark-bg: var( --clr-lightest );
  --link-dark-hover-clr: var( --clr-dark );
}


/* @link https://utopia.fyi/type/calculator?c=320,16,1.2,1240,20,1.25,8,3,&s=0.75|0.5|0.25,1.5|2|3|4|6|7|8,s-l&g=s,l,xl,12 */

:root {
  --step--3: clamp(0.5787rem, 0.5574rem + 0.1066vi, 0.64rem);
  --step--2: clamp(0.6944rem, 0.6577rem + 0.1836vi, 0.8rem);
  --step--1: clamp(0.8333rem, 0.7754rem + 0.2899vi, 1rem);
  --step-0: clamp(1rem, 0.913rem + 0.4348vi, 1.25rem);
  --step-1: clamp(1.2rem, 1.0739rem + 0.6304vi, 1.5625rem);
  --step-2: clamp(1.44rem, 1.2615rem + 0.8924vi, 1.9531rem);
  --step-3: clamp(1.728rem, 1.4799rem + 1.2407vi, 2.4414rem);
  --step-4: clamp(2.0736rem, 1.7334rem + 1.7011vi, 3.0518rem);
  --step-5: clamp(2.4883rem, 2.027rem + 2.3067vi, 3.8147rem);
  --step-6: clamp(2.986rem, 2.366rem + 3.0998vi, 4.7684rem);
  --step-7: clamp(3.5832rem, 2.7563rem + 4.1344vi, 5.9605rem);
  --step-8: clamp(4.2998rem, 3.2039rem + 5.4796vi, 7.4506rem);
}


/* @link https://utopia.fyi/space/calculator?c=320,16,1.2,1240,20,1.25,8,3,&s=0.75|0.5|0.25,1.5|2|3|4|6|7|8,s-l&g=s,l,xl,12 */

:root {
  --space-3xs: clamp(0.25rem, 0.2283rem + 0.1087vi, 0.3125rem);
  --space-2xs: clamp(0.5rem, 0.4565rem + 0.2174vi, 0.625rem);
  --space-xs: clamp(0.75rem, 0.6848rem + 0.3261vi, 0.9375rem);
  --space-s: clamp(1rem, 0.913rem + 0.4348vi, 1.25rem);
  --space-m: clamp(1.5rem, 1.3696rem + 0.6522vi, 1.875rem);
  --space-l: clamp(2rem, 1.8261rem + 0.8696vi, 2.5rem);
  --space-xl: clamp(3rem, 2.7391rem + 1.3043vi, 3.75rem);
  --space-2xl: clamp(4rem, 3.6522rem + 1.7391vi, 5rem);
  --space-3xl: clamp(6rem, 5.4783rem + 2.6087vi, 7.5rem);
  --space-4xl: clamp(7rem, 6.3913rem + 3.0435vi, 8.75rem);
  --space-5xl: clamp(8rem, 7.3043rem + 3.4783vi, 10rem);

  /* One-up pairs */
  --space-3xs-2xs: clamp(0.25rem, 0.1196rem + 0.6522vi, 0.625rem);
  --space-2xs-xs: clamp(0.5rem, 0.3478rem + 0.7609vi, 0.9375rem);
  --space-xs-s: clamp(0.75rem, 0.5761rem + 0.8696vi, 1.25rem);
  --space-s-m: clamp(1rem, 0.6957rem + 1.5217vi, 1.875rem);
  --space-m-l: clamp(1.5rem, 1.1522rem + 1.7391vi, 2.5rem);
  --space-l-xl: clamp(2rem, 1.3913rem + 3.0435vi, 3.75rem);
  --space-xl-2xl: clamp(3rem, 2.3043rem + 3.4783vi, 5rem);
  --space-2xl-3xl: clamp(4rem, 2.7826rem + 6.087vi, 7.5rem);
  --space-3xl-4xl: clamp(6rem, 5.0435rem + 4.7826vi, 8.75rem);
  --space-4xl-5xl: clamp(7rem, 5.9565rem + 5.2174vi, 10rem);

  /* Custom pairs */
  --space-s-l: clamp(1rem, 0.4783rem + 2.6087vi, 2.5rem);
}

h1,
h2,
h3,
h4 {
  letter-spacing: 0.5px;  
}

p {
  /*font-size: var(--step-0);*/
  line-height: 1.5;
  letter-spacing: 1px;
  /* max-width: 70ch; */
  font-weight: 500;
}

/* Stile dei link */
a {
  --_dark-bg: var( --dark-bg, var( --link-dark-bg ) );
  --_dark-hover-clr: var( --dark-hover-clr, var( --link-dark-hover-clr ) );

  --_light-bg: var( --light-bg, var( --link-light-bg ) );
  --_light-hover-clr: var( --light-hover-clr, var( --link-light-hover-clr ) );
  
  --_underline-initial-height: var( --underline-initial-height, 10%);
  --_underline-initial-position: var( --underline-initial-position, 10%);
}


/* Bilancio il wrapping del testo */
:where(h1,h2,h3,h4,h5,h6,p,blockquote) {
    text-wrap: balance;
}

/*
body:not(.elementor-editor-active) .effetto-typewriter,
body:not(.elementor-editor-preview) .effetto-typewriter {
    visibility: hidden;
}
*/
:is(.elementor-editor-preview, .elementor-editor-active) .cerchio-rosso::after {
    content: '';
    display: block;
    position: absolute;
    left: calc(50% - 75px);
    top: calc(50% - 75px);
    width: 150px;
    height: 150px;
    border-radius: 100%;
    z-index: -1;   
}
:is(.elementor-editor-preview, .elementor-editor-active) .cerchio-rosso::after {
    background-color: var(--after-bg-color);
    box-shadow: var(--after-box-shadow);
}

:is(.elementor-editor-active,.elementor-editor-preview) .cerchio-rosso {
    --after-bg-color: #F7444E;
    --after-box-shadow: 5px 5px 10px hsla(357, 92%, 62%, .5);
}

/* Form */
.popup-form label a {
  font-weight: bold;
}

.popup-form > .elementor-field-group,
.popup-form > .elementor-field-group .elementor-field {
    flex-direction: column;
    align-items: start;
}

.popup-form .elementor-message.elementor-form-help-inline {
    position: absolute;
    bottom: -2em;
    line-height: 1em;
    font-size: var(--step-0);
}

.popup-form .elementor-field-group.elementor-error {
  margin-bottom: 2rem;
}

.popup-form .elementor-field-group.elementor-error :is(input, select) {
    border-color: red;
}

.aplus-label-container a {
  color: inherit;    
}


/* Accordion **/

.elementor-accordion .elementor-tab-title {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-s);
}

.elementor-accordion .elementor-accordion-item .elementor-tab-title .elementor-accordion-icon svg {
  width: var(--step-2);
  height: var(--step-2);
}















.elementor-field-type-acceptance-plus {
  --fap-color-black: hsl(0, 0%, 8%);
  --fap-color-white: hsl(0, 0%, 100%);
  --fap-color-brand: hsl(210, 100%, 24%);
  
  --fap-color-bg-primary: var(--fap-color-brand);
  --fap-color-bg-primary-inverse: var(--fap-color-white);
  
  --fap-form-checkbox-fill: var(--fap-color-bg-primary);
  --fap-form-shadow-focus: 0 0 0 12px hsl(210, 100%, 95%);
  --fap-color-focus-ring: hsl(0, 0%, 96%);
  
  --fap-transition-timing-function-ease: cubic-bezier(.25, .1, .25, 1);
  --fap-transition-duration-fast: 150ms;
  --fap-transition-duration-normal: 250ms;
}

.elementor-field-type-acceptance-plus .elementor-field-option {
	display: flex;
	align-items: flex-start;	
	position: relative;
	box-sizing: border-box;
}

.elementor-field-type-acceptance-plus input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  height: 24px;
  width: 24px;
  margin: 0px;  
  cursor: pointer;
}

.elementor-field-type-acceptance-plus .elementor-field-option svg {
	position: relative;
}

.elementor-field-type-acceptance-plus input[type="checkbox"] ~ .checkbox-icon .checkbox-box {
  position: absolute;
  top: 2px;
  left: 2px;
  background: transparent;
  height: 20px;
  width: 20px;
  border: 1.5px solid #707072;
  border-radius: 4px;
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:not(:hover) ~ .checkbox-icon .checkbox-box.circle,
.elementor-field-type-acceptance-plus input[type="checkbox"]:not(:focus) ~ .checkbox-icon .checkbox-box.circle {
  box-shadow: none;
  transition-property: box-shadow;
  transition-duration: var(--fap-transition-duration-normal);
  transition-timing-function: var(--fap-transition-timing-function-ease);
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:hover:not(:disabled) ~ .checkbox-icon .checkbox-box.circle,
.elementor-field-type-acceptance-plus input[type="checkbox"]:focus:not(:disabled) ~ .checkbox-icon .checkbox-box.circle {
  border: 0px;
  opacity: 1;
  background: var(--fap-color-focus-ring);
  box-shadow: var(--fap-form-shadow-focus);
  transition-property: box-shadow;
  transition-duration: var(--fap-transition-duration-normal);
  transition-timing-function: var(--fap-transition-timing-function-ease);
}

.elementor-field-type-acceptance-plus input[type="checkbox"] ~ .checkbox-icon .checkbox-box.circle {
  opacity: 0;
  border-radius: 50%;
}

.elementor-field-type-acceptance-plus input[type="checkbox"] ~ .checkbox-icon {
  pointer-events: none;
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:not(:checked) ~ .checkbox-icon .checkbox-box-icon-container svg .checkicon-fill {
  opacity: 0;
  transition-property: opacity;
  transition-duration: var(--fap-transition-duration-fast);
  transition-delay: var(--fap-transition-duration-fast);
  transition-timing-function: var(--fap-transition-timing-function-ease);
  fill: var(--fap-color-bg-primary);
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:checked ~ .checkbox-icon .checkbox-box-icon-container svg .checkicon-fill {
  fill: var(--fap-color-bg-primary);
  opacity: 1;
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:not(:checked) ~ .checkbox-icon .checkbox-box-icon-container svg .checkicon-check {
  stroke: #fff;
  stroke-dasharray: 1000px;
  stroke-dashoffset: 1000px;
  transition-property: stroke-dashoffset;
  transition-timing-function: var(--fap-transition-timing-function-ease);
  transition-duration: var(--fap-transition-duration-normal);
}

.elementor-field-type-acceptance-plus input[type="checkbox"]:checked ~ .checkbox-icon .checkbox-box-icon-container svg .checkicon-check {
  stroke: #fff;
  stroke-dasharray: 1000px;
  stroke-dashoffset: 0px;
  transition-property: stroke-dashoffset;
  transition-timing-function: var(--fap-transition-timing-function-ease);
  transition-duration: 5000ms;
}

.elementor-field-type-acceptance-plus .elementor-field-option label,
.elementor-field-type-acceptance-plus .elementor-field-option label ~ * {
  position: relative;
  padding-inline-start: 12px;
  user-select: none;
}

.elementor-field-type-acceptance-plus .elementor-field-option label {
  cursor: pointer;
}

.elementor-field-type-acceptance-plus .aplus-label-container {
  font-size: var( --e-global-typography-text-font-size );
  line-height: var( --e-global-typography-text-line-height );
  letter-spacing: var( --e-global-typography-text-letter-spacing );  
  font-size: 1rem;
}

.elementor-field-type-acceptance-plus .aplus-label-container * {
  font-size: 1rem !important;
}

.elementor-field-type-acceptance-plus .aplus-label-container a:link {
  color: var(--fap-color-black);
  text-decoration: underline !important;
  font-weight: 800;
}