/*
Theme Name: Generatepress Child
Theme URI: https://radioromarti.com/devnocte/generatepress-child
description: >-
	Generatepress Child
Author: Paolo Romano
Author URI: https://promano.it
Template: generatepress
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: 
Text Domain: generatepress-child
*/

@import url("../generatepress/style.css");

.highlight-text {
  display: inline-block;
	font-family: outfit;
}

.highlight-text span {
  display: inline-block;
  font-size: 160px;
  transition: color 0.3s ease;
  color: #EBE5D8; 
}

.highlight-text span:hover {
  color: white; 
}

.highlight-text span:hover + span {
  color: grey; 
}

.highlight-text span:hover ~ span:nth-child(n-1) {
  color: grey; 
}

.highlight-text span:hover ~ span {
  color: #000; 
}

.highlight-text2 {
  display: inline-block;
	font-family: outfit;
}

.highlight-text2 span {
  display: inline-block;
  font-size: 120px;
  font-weight:300;
  transition: color 0.3s ease;
  color: #6E6A64; 
}

.highlight-text2 span:hover {
  color: white; 
}

.highlight-text2 span:hover + span {
  color: grey; 
}

.highlight-text2 span:hover ~ span:nth-child(n-1) {
  color: grey; 
}

.highlight-text2 span:hover ~ span {
  color: #000; 
}

/* Stili di base per il contenitore e le lettere */
.illuminated-text {
    font-size: 10px;
    font-weight: normal;
	font-family: outfit;
    display: flex;
}

/* Stile di base per ogni lettera */
.illuminated-text span {
    transition: color 0.3s ease, text-shadow 0.3s ease;
    color: black;
}

/* Effetto di illuminazione su hover */
.illuminated-text span:hover,
.illuminated-text span:hover ~ span,
.illuminated-text span:hover + span {
    color: #ffd700;
    text-shadow: 0 0 8px #ffd700, 0 0 12px #ffd700;
}

.texteffect {
      font-family: 'Outfit', sans-serif;
      font-size: 24px;
      color: #EBE5D8;
      line-height: 1.6;
}

/* Effetto sfumatura scura su lettere sotto il cursore */
.texteffect span {
      display: inline-block;
      transition: color 0.3s ease, text-shadow 0.3s ease;
}

/* Aggiunta di una sfumatura scura solo sulla lettera sotto il cursore */
.texteffect span:hover {
      color: #D6D1C6; /* Colore leggermente più scuro per la lettera */
      text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3); /* Sfumatura scura */
    }

.link_effect{
	color:#EBE5D8
	}	

.link_effect:focus{
	color:#6E6A64
	}

.link_effect:hover{
	color:#6E6A64 !important;
	}

@media (max-width: 768px) {
    .elementor-swiper-container {
        padding-right: 0px; /* Aggiunge uno spazio alla destra */
    }
    .swiper-slide {
        width: calc(100% - 40px); /* Una slide visibile interamente meno una piccola parte */
        margin-right: 0px; /* Spazio visibile tra le slide */
    }
}

/* Contenitore per il testo */
.text-container {
    position: relative;
    height: 300px; /* Modifica l'altezza in base alle tue esigenze */
}

/* Testo iniziale */
.text-iniziale {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 1;
    transition: opacity 0.5s ease;
}

/* Testo finale (inizialmente nascosto) */
.text-finale {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

/* Effetto su scroll */
.text-container.is-scrolled .text-iniziale {
    opacity: 0;
}

.text-container.is-scrolled .text-finale {
    opacity: 1;
}

.text-container.sticky {
    position: sticky;
    top: 100px; /* Il punto in cui il testo cambia durante lo scroll */
}

.upload-form .elementor-field-type-upload input[type="file"]::file-selector-button {
	border: 0px solid #EBE5D8;
	border-radius: 5px;
	background-color: #292929 !important;
	font-size: 16px;
	color: #7A7A7A
}

.upload-form .elementor-field-type-upload input[type="file"]::after {
	content:'Nessun file caricato';
	background-color:#2E2A26;
	color: #EBE5D8;
	font-size: 14px;
}

.upload-form .elementor-field-type-upload input[type="file"] {
	font-size: 0px;
}

.elementor-field-type-acceptance {
	line-height: 1em;
	font-size: 14px;
	margin-top: 10px;
	margin-bottom: 20px;
}

.grecaptcha-badge {
	visibility: hidden;
}


/* =========================================================
   CF7 Urbanistiche - replica stile Elementor Form
   ========================================================= */

/* 1) Reset spacing CF7 (p e br che creano margini strani) */
.cf7-urbanistiche form p { margin: 0 !important; padding: 0 !important; }
.cf7-urbanistiche form br { display: none !important; }

/* 2) Wrapper layout come Elementor (3 colonne + gutter) */
.cf7-urbanistiche form .cf7-el-row{
  display:flex !important;
  gap: 10px !important;             /* Elementor: 10px/2 padding col */
  margin: 0 0 10px 0 !important;    /* Elementor: margin-bottom 10px field-group */
  align-items: stretch !important;
}

.cf7-urbanistiche form .cf7-el-col{
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
}

.cf7-urbanistiche form .cf7-el-col-full{
  flex: 0 0 100% !important;
  padding: 0 !important;
}

/* 3) Controllo spaziatura interna tra i blocchi (come Elementor wrapper) */
.cf7-urbanistiche form .wpcf7-form-control-wrap{
  display:block !important;
  margin: 0 !important;
}

/* 4) Stile input/textarea/select (identico ai tuoi valori Elementor) */
.cf7-urbanistiche form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.cf7-urbanistiche form textarea,
.cf7-urbanistiche form select{
  background-color: #E0DCDC !important;
  border: 1px solid #E0DCDC !important;
  border-radius: 5px !important;

  color: #0F0F0F !important;
  box-shadow: none !important;

  width: 100% !important;
  box-sizing: border-box !important;

  font-size: 14px !important;
  line-height: 1.2em !important;

  padding: 12px 14px !important;
}

/* 5) Altezza campi come Elementor */
.cf7-urbanistiche form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.cf7-urbanistiche form select{
  height: 50px !important;
}

.cf7-urbanistiche form textarea{
  height: 176px !important;   /* Elementor: 176px */
  min-height: 176px !important;
  resize: vertical !important;
  margin-bottom: 20px !important; /* Elementor: textarea margin-bottom 20 */
}

/* 6) Placeholder nero 14px come nel tuo CSS */
.cf7-urbanistiche form input::placeholder,
.cf7-urbanistiche form textarea::placeholder{
  color:#000000 !important;
  font-size:14px !important;
  opacity:1 !important;
}

/* 7) Privacy (uguale) */
.cf7-urbanistiche form .privacy-consent label{
  color:#7A7A7A !important;
  font-size:14px !important;
  line-height:1.3em !important;
}
.cf7-urbanistiche form .privacy-consent .wpcf7-list-item{
  margin:0 !important;
}

/* 8) Submit button come Elementor submit */
.cf7-urbanistiche form input.wpcf7-submit,
.cf7-urbanistiche form button.wpcf7-submit{
  background-color:#3E4650 !important;
  color:#F1F1F1 !important;

  border:none !important;
  border-radius:5px !important;

  padding:15px 70px !important;
  text-transform:uppercase !important;

  font-family:"Outfit", Sans-serif !important;
  font-weight:500 !important;

  cursor:pointer !important;
}

.cf7-urbanistiche form input.wpcf7-submit:hover,
.cf7-urbanistiche form button.wpcf7-submit:hover{
  background-color:#2A323B !important;
  color:#F1F1F1 !important;
}

/* 9) Full width submit */
.cf7-urbanistiche form .btn-full-width,
.cf7-urbanistiche form input.btn-full-width{
  width:100% !important;
  display:block !important;
}

/* 10) Mobile: 1 colonna */
@media (max-width:768px){
  .cf7-urbanistiche form .cf7-el-row{
    flex-direction:column !important;
    gap:12px !important;
  }
}

.cf7-urbanistiche input {
	margin-bottom: 2px !important;
}

.cf7-urbanistiche .ekit-wid-con .ekit-form form textarea {
	margin-bottom: 6px !important;
}

.wpcf7-form-control-wrap[data-name="privacy-consent"] span {
	display: inline-block !important;
	margin-left: 10px;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450;
	background-color: #46b450;
	color: #fff;
	padding: 15px;
	border-radius: 5px;
	margin-top: 5px;
}

.wpcf7-form.submitting .wpcf7-submit {
    pointer-events: none;
	opacity: 0.5;
}

.wpcf7-not-valid-tip {
	font-size: 12px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	color: #fff;
}