.elementor-kit-15153{--e-global-color-primary:#0B051D;--e-global-color-secondary:#FD8DA2;--e-global-color-text:#0B051D;--e-global-color-accent:#FD8DA2;--e-global-color-b2654ac:#553B4D;--e-global-color-7404c36:#2D1D29;--e-global-color-50284af:#AF9CAA;--e-global-color-4c71409:#FD8DA2;--e-global-color-bea6a65:#FFFFFF;--e-global-color-82a2e14:#F7F7F7;--e-global-color-a29918a:#0B051D;--e-global-color-3e68bef:#303030;--e-global-color-69ee756:#D8D7D5;--e-global-color-c28bcff:#000000;--e-global-color-8504378:#D8A3AD;--e-global-color-673a63a:#FD8DA219;--e-global-color-42f316f:#FD8DA2D4;--e-global-color-d77bd01:#FD8DA2BD;--e-global-color-a773c86:#D8D7D5;--e-global-typography-primary-font-family:"Lexend";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Lexend";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Lexend";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lexend";--e-global-typography-accent-font-weight:500;--e-global-typography-6855b72-font-family:"Lexend";--e-global-typography-6855b72-font-size:55px;--e-global-typography-6855b72-font-weight:700;--e-global-typography-6855b72-line-height:69px;--e-global-typography-6855b72-letter-spacing:0px;--e-global-typography-1712f9f-font-family:"Lexend";--e-global-typography-1712f9f-font-size:34px;--e-global-typography-1712f9f-font-weight:700;--e-global-typography-1712f9f-line-height:43px;--e-global-typography-1712f9f-letter-spacing:0px;--e-global-typography-0abed18-font-family:"Lexend";--e-global-typography-0abed18-font-size:12px;--e-global-typography-0abed18-font-weight:700;--e-global-typography-0abed18-line-height:18px;--e-global-typography-0abed18-letter-spacing:0px;--e-global-typography-fb6f51f-font-family:"Lexend";--e-global-typography-fb6f51f-font-size:34px;--e-global-typography-fb6f51f-font-weight:500;--e-global-typography-fb6f51f-line-height:43px;--e-global-typography-fb6f51f-letter-spacing:0px;--e-global-typography-c9ad340-font-family:"Lexend";--e-global-typography-c9ad340-font-size:14px;--e-global-typography-c9ad340-font-weight:600;--e-global-typography-c9ad340-text-decoration:underline;--e-global-typography-c9ad340-line-height:24px;--e-global-typography-c9ad340-letter-spacing:0px;--e-global-typography-f5fc6e6-font-family:"Lexend";--e-global-typography-f5fc6e6-font-size:16px;--e-global-typography-f5fc6e6-font-weight:600;--e-global-typography-f5fc6e6-text-transform:uppercase;--e-global-typography-f5fc6e6-line-height:20px;--e-global-typography-f5fc6e6-letter-spacing:0px;--e-global-typography-db573c2-font-family:"Lexend";--e-global-typography-db573c2-font-size:21px;--e-global-typography-db573c2-font-weight:600;--e-global-typography-db573c2-line-height:25px;--e-global-typography-db573c2-letter-spacing:0px;--e-global-typography-e7cc689-font-family:"Lexend";--e-global-typography-e7cc689-font-size:14px;--e-global-typography-e7cc689-font-weight:400;--e-global-typography-e7cc689-line-height:24px;--e-global-typography-e7cc689-letter-spacing:0px;--e-global-typography-bcb657d-font-family:"Lexend";--e-global-typography-bcb657d-font-size:16px;--e-global-typography-bcb657d-font-weight:400;--e-global-typography-bcb657d-line-height:24px;--e-global-typography-bcb657d-letter-spacing:0px;--e-global-typography-b6445c6-font-family:"Lexend";--e-global-typography-b6445c6-font-size:34px;--e-global-typography-b6445c6-font-weight:400;--e-global-typography-b6445c6-line-height:43px;--e-global-typography-b6445c6-letter-spacing:0px;--e-global-typography-7303156-font-family:"Lexend";--e-global-typography-7303156-font-size:100px;--e-global-typography-7303156-font-weight:800;--e-global-typography-7303156-line-height:125px;--e-global-typography-7303156-letter-spacing:0px;--e-global-typography-bbd5518-font-family:"Lexend";--e-global-typography-bbd5518-font-size:25px;--e-global-typography-bbd5518-font-weight:700;--e-global-typography-bbd5518-line-height:43px;--e-global-typography-bbd5518-letter-spacing:0px;--e-global-typography-49fb670-font-family:"Lexend";--e-global-typography-49fb670-font-size:16px;--e-global-typography-49fb670-font-weight:700;--e-global-typography-49fb670-line-height:18px;--e-global-typography-49fb670-letter-spacing:0px;font-family:"Lexend", Sans-serif;font-size:16px;font-weight:400;}.elementor-kit-15153 button,.elementor-kit-15153 input[type="button"],.elementor-kit-15153 input[type="submit"],.elementor-kit-15153 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Lexend", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;line-height:20px;letter-spacing:0px;color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:35px 35px 35px 35px;padding:12px 27px 12px 27px;}.elementor-kit-15153 button:hover,.elementor-kit-15153 button:focus,.elementor-kit-15153 input[type="button"]:hover,.elementor-kit-15153 input[type="button"]:focus,.elementor-kit-15153 input[type="submit"]:hover,.elementor-kit-15153 input[type="submit"]:focus,.elementor-kit-15153 .elementor-button:hover,.elementor-kit-15153 .elementor-button:focus{background-color:#02010100;color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:35px 35px 35px 35px;}.elementor-kit-15153 e-page-transition{background-color:#FFBC7D;}.elementor-kit-15153 p{margin-block-end:35px;}.elementor-kit-15153 a{color:#FD8DA2;}.elementor-kit-15153 a:hover{color:#FD8DA2BD;}.elementor-kit-15153 h1{color:var( --e-global-color-primary );font-family:"Lexend", Sans-serif;font-size:55px;font-weight:700;line-height:69px;letter-spacing:0px;}.elementor-kit-15153 h2{color:var( --e-global-color-primary );font-family:"Lexend", Sans-serif;font-size:34px;font-weight:700;line-height:42px;letter-spacing:0px;}.elementor-kit-15153 h3{color:var( --e-global-color-text );font-size:30px;line-height:35px;}.elementor-kit-15153 h4{color:var( --e-global-color-text );font-size:27px;line-height:33px;}.elementor-kit-15153 h5{color:var( --e-global-color-text );font-size:24px;line-height:30px;}.elementor-kit-15153 h6{color:var( --e-global-color-text );font-size:21px;line-height:25px;}.elementor-kit-15153 label{color:var( --e-global-color-text );font-family:"Lexend", Sans-serif;font-size:16px;font-weight:500;line-height:25px;letter-spacing:0px;}.elementor-kit-15153 input:not([type="button"]):not([type="submit"]),.elementor-kit-15153 textarea,.elementor-kit-15153 .elementor-field-textual{font-family:var( --e-global-typography-bcb657d-font-family ), Sans-serif;font-size:var( --e-global-typography-bcb657d-font-size );font-weight:var( --e-global-typography-bcb657d-font-weight );line-height:var( --e-global-typography-bcb657d-line-height );letter-spacing:var( --e-global-typography-bcb657d-letter-spacing );color:var( --e-global-color-text );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-bea6a65 );border-style:solid;border-width:1px 1px 1px 1px;border-color:#0B051D;border-radius:5px 5px 5px 5px;transition:900ms;}.elementor-kit-15153 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-15153 textarea:focus,.elementor-kit-15153 .elementor-field-textual:focus{color:var( --e-global-color-text );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-bea6a65 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-text );border-radius:5px 5px 5px 5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-15153{--e-global-typography-6855b72-font-size:40px;}.elementor-kit-15153 input:not([type="button"]):not([type="submit"]),.elementor-kit-15153 textarea,.elementor-kit-15153 .elementor-field-textual{font-size:var( --e-global-typography-bcb657d-font-size );line-height:var( --e-global-typography-bcb657d-line-height );letter-spacing:var( --e-global-typography-bcb657d-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-15153{--e-global-typography-6855b72-font-size:30px;}.elementor-kit-15153 input:not([type="button"]):not([type="submit"]),.elementor-kit-15153 textarea,.elementor-kit-15153 .elementor-field-textual{font-size:var( --e-global-typography-bcb657d-font-size );line-height:var( --e-global-typography-bcb657d-line-height );letter-spacing:var( --e-global-typography-bcb657d-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.pink {
    color: #FD8DA2;
}

/* 1. Reset e Stato di Base: forza il colore nero su tutti i link del widget */
.proteggi-mail a, 
.proteggi-tel a {
    color: #0B051D !important;
    transition: all 0.9s ease-in-out; /* Transizione fluida per colore e trasformazioni */
    text-decoration: none !important;
    display: inline-block; /* Migliora la resa delle animazioni */
}

/* 2. Hover Sincronizzato: quando il mouse entra nel widget, tutto cambia colore */
.proteggi-mail:hover a, 
.proteggi-tel:hover a {
    color: #FD8DA2 !important;
    transition: all 0.9s ease-in-out;
}

/* 3. Feedback Icona: assicura che anche l'SVG segua il cambio colore */
.proteggi-mail:hover .elementor-icon svg,
.proteggi-tel:hover .elementor-icon svg,
.proteggi-mail:hover .elementor-icon i,
.proteggi-tel:hover .elementor-icon i {
    fill: #FD8DA2 !important;
    color: #FD8DA2 !important;
    transition: all 0.9s ease-in-out;
    transform: scale(1.05); /* Micro-interazione premium sull'icona */
}

/* 4. UX Cursor: garantisce che l'utente veda il puntatore "a manina" su tutto il box */
.proteggi-mail .elementor-icon-box-wrapper,
.proteggi-tel .elementor-icon-box-wrapper {
    cursor: pointer;
}

/* --- STILIZZAZIONE UNIVERSALE CHECKBOX ACCEPTANCE ELEMENTOR --- */

/* 1. Reset Totale dell'input nativo */
.elementor-field-type-acceptance input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    
    /* Box Model */
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    margin-right: 15px !important;
    
    /* Shape & Border */
    border: 1px solid #000000 !important; 
    border-radius: 50% !important;
    background-color: #ffffff !important;
    
    /* Positioning Context */
    display: inline-block !important;
    position: relative !important;
    cursor: pointer !important;
    vertical-align: middle !important;
    outline: none !important;
}

/* 2. Creazione dello pseudo-elemento (Il pallino rosa) */
.elementor-field-type-acceptance input[type="checkbox"]::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) scale(0) !important; /* Centrato e scalato a 0 */
    
    /* Dimensioni Pallino */
    width: 12px !important;
    height: 12px !important;
    border-radius: 50% !important;
    background-color: #E996A5 !important;
    
    /* Animazione */
    transition: transform 0.2s ease-in-out !important;
}

/* 3. Stato CHECKED: qui forziamo la visibilità */
.elementor-field-type-acceptance input[type="checkbox"]:checked::after {
    transform: translate(-50%, -50%) scale(1) !important;
}

/* 4. Fix per evitare che il testo vada sotto il checkbox */
.elementor-field-type-acceptance .elementor-field-option {
    display: flex !important;
    align-items: center !important;
}

/* 1. Reset Globale e Normalizzazione del Box Model */
input[type="checkbox"],
input[type="radio"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    
    /* Layout Properties */
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    margin-right: 15px !important;
    
    /* Styling & Affordance */
    border: 1px solid #000000 !important;
    background-color: #ffffff !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative !important;
    cursor: pointer !important;
    vertical-align: middle !important;
    outline: none !important;
    transition: border-color 0.2s ease;
}

/* Specificità per il tipo Radio (Shape) */
input[type="radio"] {
    border-radius: 50% !important;
}

/* Specificità per il tipo Checkbox (Shape - Opzionale, qui manteniamo 50% come da tuo esempio) */
input[type="checkbox"] {
    border-radius: 50% !important; /* Cambia a 4px se preferisci un look square/rounded */
}

/* 2. Pseudo-elemento Indeterminato/Checked (The Indicator) */
input[type="checkbox"]::after,
input[type="radio"]::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) scale(0) !important;
    
    /* Visual Identity */
    width: 12px !important;
    height: 12px !important;
    border-radius: 50% !important;
    background-color: #E996A5 !important;
    
    /* Micro-interaction */
    transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

/* 3. Activation State (Checked) */
input[type="checkbox"]:checked::after,
input[type="radio"]:checked::after {
    transform: translate(-50%, -50%) scale(1) !important;
}

/* Focus State per l'accessibilità (WCAG Compliance) */
input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible {
    box-shadow: 0 0 0 3px rgba(233, 150, 165, 0.4) !important;
}

/* 4. Flexbox Wrapper per l'allineamento dei Label */
/* Questo selettore intercetta i wrapper comuni di Elementor, Contact Form 7, WPForms, etc. */
.elementor-field-option, 
.wpcf7-list-item, 
.form-group,
label {
    display: flex !important;
    align-items: center !important;
    margin-bottom: 8px; /* Spaziatura verticale tra opzioni */
}

/* Target specifico per il wrapper dell'acceptance */
.elementor-field-type-acceptance .elementor-field-option {
    display: flex !important;
    align-items: flex-start !important; /* Allinea in alto se il testo è lungo, o 'center' se preferisci */
    gap: 12px !important; /* Gestisce lo spazio tra checkbox e testo in modo moderno */
}

/* Correzione per l'input per evitare shift dovuti ai margini nativi */
.elementor-field-type-acceptance input[type="checkbox"] {
    margin: 0 !important; /* Reset margini che potrebbero sballare il flex */
    flex-shrink: 0 !important; /* Impedisce al checkbox di rimpicciolirsi se il testo è lungo */
    margin-top: 2px !important; /* Micro-adjustment per centrarlo con la prima riga di testo */
}

/* Forza uno spazio prima del link nella privacy policy */
.elementor-field-option label a {
    margin-left: 4px !important;
    text-decoration: underline; /* Best practice per l'accessibilità (WCAG) */
    transition: color 0.3s ease;
}



/* ============================================================
   WOOCOMMERCE GLOBAL TABLE TOTAL RESET - VOLGA COSMETICI
   ============================================================ */

/* 1. RESET TOTALE DEI BORDI (TABELLA, RIGHE E CELLE)
   Questo blocco elimina fisicamente ogni bordo esistente nel DOM */
.woocommerce table.shop_table, 
.woocommerce table.wishlist_table,
.woocommerce table.shop_table tr,
.woocommerce table.wishlist_table tr,
.woocommerce table.shop_table td,
.woocommerce table.wishlist_table td,
.woocommerce table.shop_table th,
.woocommerce table.wishlist_table th {
    border: none !important;
    border-width: 0 !important;
    border-collapse: collapse !important;
    box-shadow: none !important; /* A volte i temi usano ombre per simulare bordi */
}

/* 2. INTESTAZIONI (Thead) - Compattezza Massima */
.woocommerce table.shop_table thead th, 
.woocommerce table.wishlist_table thead th {
    background-color: #f9f9f9 !important;
    color: #000000 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 8px 10px !important; /* Padding ridotto come richiesto */
    border-top: 1px solid #f0f0f0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

/* 3. LINEA DI SEPARAZIONE ORIZZONTALE (L'unica ammessa) */
.woocommerce table.shop_table tbody tr td,
.woocommerce table.wishlist_table tbody tr td {
    border-bottom: 1px solid #f0f0f0 !important;
    padding: 15px 10px !important;
    vertical-align: middle !important;
}

/* Rimuove l'ultimo bordo in fondo per evitare l'effetto "chiusura" */
.woocommerce table.shop_table tbody tr:last-child td,
.woocommerce table.wishlist_table tbody tr:last-child td {
    border-bottom: none !important;
}


/* 4. PULSANTI A PILLOLA - CALIBRAZIONE ESATTA */
.woocommerce table.shop_table .button, 
.woocommerce table.wishlist_table .add_to_cart,
.woocommerce table.shop_table .add_to_cart_button,
.woocommerce a.button.alt,
.woocommerce-message a.button {
    background-color: #FD8DA2 !important;
    color: #0B051D !important;
    border-radius: 35px !important;
    /* Calibrazione specifica: 12px verticale, 27px orizzontale */
    padding: 12px 27px !important; 
    font-family: lexend;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border: solid 1px;
    border-color: #FD8DA2 ;
    display: inline-block !important;
    line-height: 1 !important;
    transition: all 0.3s ease-in-out !important;
    box-shadow: none !important;
}

.woocommerce table.shop_table .button:hover, 
.woocommerce table.wishlist_table .add_to_cart:hover 
.woocommerce table.shop_table .add_to_cart_button:hover,
.woocommerce a.button.alt:hover,
.woocommerce-message a.button:hover
{
    background-color: #ffffff !important;
    color: #0B051D;
    border: solid 1px;
    border-radius: 35px;
    border-color: #0B051D;
    transform: translateY(-2px);
}

/* 5. TIPOGRAFIA BRAND */
.woocommerce table.shop_table td.product-name a, 
.woocommerce table.wishlist_table td.product-name a {
    color: #FD8DA2 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.woocommerce-Price-amount,
.wishlist-in-stock,
.stock {
    color: #0B051D !important;
    font-weight: 700 !important;
}

/* 6. ICONA RIMOZIONE (X) */
.woocommerce table.shop_table a.remove {
   display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    /* Ridimensionamento coerente */
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    
    background-color: #4a3d4a !important;
    color: #fff !important;
    
    /* Tipografia corretta */
    font-family: "Nunito Sans", sans-serif;
    font-size: 18px !important; /* Ridotto per stare nei 24px */
    font-weight: 400;
    line-height: 1 !important; /* Fondamentale per resettare gli spazi del font */
    text-decoration: none !important;
    
    /* Fine-tuning ottico se necessario */
    padding-bottom: 2px !important;
    
}

/* Placeholder generici per tutti gli input e textarea del checkout */
.e-checkout__container input::placeholder,
.e-checkout__container textarea::placeholder,
.e-coupon-box input::placeholder {
    color: #D8D7D5 !important;
    opacity: 1; /* Forza l'opacità su Firefox */
}

/* Specifico per browser Webkit (Chrome, Safari, Edge) */
.e-checkout__container input::-webkit-input-placeholder,
.e-checkout__container textarea::-webkit-input-placeholder,
.e-coupon-box input::-webkit-input-placeholder {
    color: #D8D7D5 !important;
}

/* Specifico per Mozilla Firefox */
.e-checkout__container input::-moz-placeholder,
.e-checkout__container textarea::-moz-placeholder,
.e-coupon-box input::-moz-placeholder {
    color: #D8D7D5 !important;
    opacity: 1;
}

/* Specifico per Internet Explorer / Edge vecchio */
.e-checkout__container input:-ms-input-placeholder,
.e-checkout__container textarea:-ms-input-placeholder,
.e-coupon-box input:-ms-input-placeholder {
    color: #D8D7D5 !important;
}

/* Reset tecnico allineamento Acceptance Form */
.elementor-field-type-acceptance .elementor-field-option {
    display: flex !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
}

.elementor-field-type-acceptance input[type="checkbox"] {
    flex: 0 0 18px !important; /* Impedisce il ridimensionamento */
    margin-top: 4px !important; /* Allineamento con la prima riga di testo */
    width: 18px !important;
}

.elementor-field-type-acceptance label {
    display: inline-block !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}

/* Forza l'allineamento orizzontale del testo dentro l'input */
.woocommerce-cart table.cart input.qty,
.woocommerce-cart .quantity input.input-text.qty.text {
    text-align: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: inline-block !important;
   
    min-width: 50px; /* Evita che il box diventi troppo stretto */
}

/* Allineamento verticale del testo selezionato */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 45px !important; /* Regola questo valore in base all'altezza del tuo box */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Allineamento della freccetta (arrow) per centrarla col testo */
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
    display: flex !important;
    align-items: center !important;
}/* End custom CSS */