/* Base */
/* ----------------------------------------------------------------------------------- */
:root{
      --bg:#0b0d12;--card:#121520; --muted:#9aa3b2; --pri:#5eead4; --pri-2:#2dd4bf; --txt:#e6e9ef; --acc:#a78bfa; --radius:18px;
      --shadow:0 15px 40px rgba(0,0,0,.35); --shadow-soft:0 8px 24px rgba(0,0,0,.25);
    }
    *{box-sizing:border-box}
    html,body{margin:0;padding:0;background:radial-gradient(1200px 800px at 80% -10%,rgba(167,139,250,.18),transparent),radial-gradient(1000px 700px at -10% 110%,rgba(94,234,212,.12),transparent),var(--bg);color:var(--txt);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,sans-serif;scroll-behavior:smooth}
    a{color:inherit;text-decoration:none}
    
    .spacer{height: 100px;width: 100%;}

/* ! Title System */
/* ----------------------------------------------------------------------------------- */

.text-0{font-size: 5rem; line-height: 1;}
h1, .text-1{font-size: 3.4rem;}
h2, .text-2{font-size: 2.2rem;}
h3, .text-3{font-size: 1.5rem;}
h4, p, .text-4{font-size: 1.3rem;}
.text-5{font-size: 1rem;}

h1, h2, h3, h4, h5, h6, a, p{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,sans-serif;font-weight: 500;}
h1, h2, h3, h4, p, ol, ul{margin-bottom: 1rem;}

.spacer-sma{display: none;}
.spacer{height: 100px;}

@media (max-width: 768px) {
  .text-0{font-size: 4rem}
  .text-1{font-size: 2.4rem}
  .text-2{font-size: 1.5rem;}
  .text-3{font-size: 1.2rem;}
  .spacer-sma{height: 40px;}
  h4, p, .text-4{font-size: 1rem;}
  .spacer{height: 60px;}
  
}

/* ! Block */
/* ----------------------------------------------------------------------------------- */

/* ===== HERO — override completo per match mockup ===== */
.hero{padding:96px 0 56px}
.hero .container{max-width:1180px;margin:0 auto;padding:0 24px}

.hero-grid{
  display:grid !important;
  grid-template-columns:58% 42%;
  gap:48px;
  align-items:center;
}

.chip{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 18px;margin:0 0 16px;
  background:rgba(167,139,250,.18);
  border:1px solid rgba(167,139,250,.32);
  border-radius:999px;font-weight:700
}

/* Headline + gradient parola */
.headline{
  font-weight:800;
  font-size:clamp(42px,6vw,64px);
  line-height:1.05; letter-spacing:-.3px;
  margin:0 0 12px;
}

.gradient-text {
 color: #5EEBD5; 
 background-image: linear-gradient(45deg, #5EEBD5 33%, #A78CFA 66%, #A78CFA 100%); 
 background-clip: text; 
 -webkit-background-clip: text; 
 -webkit-text-fill-color: transparent; 
}

/* Sub */
.sub{font-size:clamp(17px,2.1vw,20px); color:var(--muted); max-width:720px; margin:0 0 18px}

/* CTA pills – forziamo lo stile dei block button di WP */
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0 10px}
.wp-block-button .wp-block-button__link{
  border:none; text-decoration:none; display:inline-flex; align-items:center; gap:10px;
  padding:14px 22px; border-radius:999px; font-weight:800;
  transition:transform .15s ease, box-shadow .15s ease;
}

.wp-block-button.is-style-fill .wp-block-button__link{color: #0b0d12; background: linear-gradient(45deg, #5EEBD5 33%, #A78CFA 66%, #A78CFA 100%);}

.wp-block-button.is-style-outline .wp-block-button__link{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.22);
  color:#e6e9ef;
}
.wp-block-button .wp-block-button__link:hover{transform:translateY(-2px); box-shadow:0 16px 32px rgba(94,234,212,.35)}

/* Badges linea */
.badges{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);list-style:none;margin:10px 0 0;padding:0}
.badges li{margin:0}

/* Card destra */
.hero-card{
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px; padding:22px 24px;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
  max-width:540px; margin-left:auto;
}
.hero-card h3{font-size:22px; margin:0 0 10px}

/* Lista nella card: NO bullet, griglia 3 col adattiva, niente breaking brutto */
.hero-card ul{list-style:none; margin:12px 0 0; padding:0;
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 18px;
}
@media (max-width:1200px){ .hero-card ul{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px){  .hero-card ul{ grid-template-columns:1fr; } }

.hero-card li{ gap:10px; margin:0; align-items:flex-start}
.hero-card li::before{
  content:'✓';
  background:rgba(94,234,212,.18);
  border:1px solid rgba(94,234,212,.40);
  border-radius:6px; width:20px; height:20px;
  display:flex; align-items:center; justify-content:center;
  font-size:12px; color:var(--pri); flex-shrink:0; margin-top:2px;
}
.hero-card li, .hero-card li *{
  word-break:normal !important; overflow-wrap:break-word; hyphens:auto; line-height:1.35;
}

/* Pulizia bullet default WP nella colonna destra */
.hero-card ul{ list-style:none }
.hero-card ul li{ list-style:none }

/* Responsive: 1 colonna sotto 980px */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr}
  .hero-card{max-width:unset; margin:18px 0 0}
}

/* ===== SERVIZI ===== */

/* Contenitore */
.services.section{padding:56px 0}
.services.section .alignwide{max-width:1180px;margin:0 auto;padding:0 24px}

/* Trasforma le Colonne WP in una griglia 3/2/1 pulita */
.services.section .wp-block-columns.services-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}

/* Colonne: togli margin e fai riempire h100% */
.services.section .wp-block-column{margin:0}

/* Card */
.services.section .card.service{
  height:100%;
  display:flex; flex-direction:column;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  padding:22px;
  box-shadow:0 15px 40px rgba(0,0,0,.30);
}

/* Titolo + descrizione */
.services.section .card.service .title{margin:0 0 8px;font-weight:800}
.services.section .card.service .desc{color:var(--muted);margin:0 0 14px}

/* Pulsante: stile outline coerente */
.button__link a{
  background:transparent ;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#e6e9ef;
  border-radius:999px; padding:12px 18px; font-weight:700;
}

/* Appoggia il bottone in basso per allineare le altezze percepite */
.services.section .card.service .wp-block-buttons{margin-top:auto}

/* Pulizia marker/bullet “fantasma” */
.services.section .wp-block-list,
.services.section ul{list-style:none; padding:0; margin:0}

/* Responsive */
@media (max-width:980px){
  .services.section .wp-block-columns.services-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .services.section .wp-block-columns.services-grid{grid-template-columns:1fr}
}

/* ===== PORTFOLIO  ===== */

/* Portfolio – cover pulita + overlay */
.portfolio-grid {max-width: 1180px;margin: 0 auto;padding: 24px;}

.shot{
  position:relative; overflow:hidden; border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(145deg,rgba(167,139,250,.22),rgba(94,234,212,.16));
  display:flex; align-items:center; justify-content:center;
}

/* L'immagine copre tutta la tile */
.shot > img{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center;
  filter:saturate(1.02);
}

/* Overlay */
.overlay{
  position:absolute; inset:0;
  background:rgba(0,0,0,.45);
  display:flex; align-items:center; justify-content:center; gap:10px;
  opacity:0; transform:translateY(6px); transition:.18s ease;
}
.shot:hover .overlay{ opacity:1; transform:none; }

/* Responsive */
@media (max-width:980px){ .portfolio-grid{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .portfolio-grid{grid-template-columns:1fr} }

/* ===== PROCESSO  ===== */

.processo-grid {max-width: 1180px;margin: 0 auto;padding: 24px;}

/* Card step */
.card.step{
  position:relative;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  padding:20px 18px 18px;
  box-shadow:0 15px 40px rgba(0,0,0,.30);
}
.card.step h3{margin:0 0 6px; font-weight:800}
.card.step .muted{margin:0; color:var(--muted)}

/* Bollino numero */
.card.step .num{
  position:absolute; top:-14px; left:-14px;
  width:34px; height:34px; border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  font-weight:800;
  background:rgba(167,139,250,.25);
  border:1px solid rgba(167,139,250,.45);
}

/* Responsive */
@media (max-width:980px){ .wp-block-columns.steps{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .wp-block-columns.steps{grid-template-columns:1fr} }

/* ===== PRICING  ===== */
.pricing-grid{max-width: 1180px;margin: 0 auto;padding: 24px;}

/* Card */
.pricing-card{
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px; padding:22px;
  box-shadow:0 15px 40px rgba(0,0,0,.30);
  height:100%; display:flex; flex-direction:column;
}
.pricing-card h3{margin:0 0 6px; font-weight:800}
.pricing-card .price{font-size:36px;font-weight:800;margin:8px 0 10px;}
/* Reset lista dentro alle card (Gutenberg usa .wp-block-list) */
.pricing-card .wp-block-list,
.pricing-card ul,
.pricing-card ol{
  list-style: none !important;
  padding: 0 !important;
  margin: 14px 0 16px !important;
}

/* Rimuove i marker nativi e applica i check custom */
.pricing-card .wp-block-list li,
.pricing-card ul li,
.pricing-card ol li{
  position: relative;
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 8px 0;
}
.pricing-card .wp-block-list li::marker,
.pricing-card ul li::marker,
.pricing-card ol li::marker{
  content: "" !important;
}
.pricing-card .wp-block-list li::before,
.pricing-card ul li::before,
.pricing-card ol li::before{
  content: "✓";
  background: rgba(94,234,212,.18);
  border: 1px solid rgba(94,234,212,.35);
  border-radius: 6px;
  width: 20px; height: 20px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 12px; color: var(--pri);
  flex-shrink: 0; margin-top: 2px;
}

/* Bottoni dentro card: forziamo Outline/Fill */
.pricing-card .wp-block-buttons{ margin-top: auto; }
.pricing-card .wp-block-button .wp-block-button__link{
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 700;
}
.pricing-card .wp-block-button.is-style-outline .wp-block-button__link{
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #e6e9ef !important;
}
.pricing-card .wp-block-button.is-style-fill .wp-block-button__link{
  background: linear-gradient(135deg,var(--pri),var(--acc)) !important;
  color: #0b0d12 !important;
  padding: 14px 20px;
  font-weight: 800;}

.divider {height: 1px;background: rgba(255, 255, 255, .08);margin: 18px 0;}

/* Evidenza sul piano centrale */
.pricing-card{position: relative;overflow: hidden;}
.pricing-card.is-featured{border-color:rgba(94,234,212,.55);box-shadow:0 20px 50px rgba(45,212,191,.18);}

.ribbon {
    position: relative;
    right: -160px;
    background: linear-gradient(45deg, #5EEBD5 33%, #A78CFA 66%, #A78CFA 100%);
    color: #0b0d12;
    font-weight: 800;
    padding: 8px 60px;
    transform: rotate(15deg);
}

/* Responsive */
@media (max-width:980px){ .pricing .pricing-grid{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .pricing .pricing-grid{grid-template-columns:1fr} }

/* ! Accordion /*

/* ===== FAQ layout responsivo ===== */
.faq-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); /* evita overflow */
  gap:16px; 
}

/* tablet */
@media (max-width: 980px){
  .faq-grid{ grid-template-columns: 1fr; }
}

/* mobile small */
@media (max-width: 560px){
  .title-accordion{ font-size:1.05rem; padding:16px 42px 16px 16px; }
  .title-accordion::after{ right:12px; width:20px; height:20px; }
}

/* ===== Card FAQ coerente ===== */
.faq-item{
  width:100%;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  box-shadow:0 15px 40px rgba(0,0,0,.30);
  overflow:hidden; /* niente “bave” */
}

/* titolo */
.title-accordion{
  cursor:pointer;
  position:relative;
  display:flex; align-items:center;
  margin:0;
  padding:18px 46px 18px 20px; /* spazio icona a dx */
  font-weight:800;
  background:transparent;
  border:0;
  min-height: 70px;
  width: 100%;
}

/* freccia gradient (mask) */
.title-accordion::after{
  content:"";
  position:absolute; right:14px; top:50%;
  width:22px; height:22px;
  transform:translateY(-50%) rotate(0deg);
  transition: transform .4s cubic-bezier(.215,.61,.355,1);
  background: linear-gradient(135deg, var(--pri), var(--acc));
  -webkit-mask: url('img/chevron-down-outline.svg') no-repeat center / contain;
          mask: url('img/chevron-down-outline.svg') no-repeat center / contain;
}
.title-accordion.is-open::after{ transform:translateY(-50%) rotate(180deg) }

/* pannello: stato chiuso = ZERO altezza + NIENTE padding-bottom + divider invisibile */
.content-accordion{
  max-height:0;
  overflow:hidden;
  margin:0;
  padding:0 20px;                 /* solo laterali da chiuso */
  border-top:1px solid transparent;/* evita fascia scura da chiuso */
  background:transparent;
  color:var(--muted);
  line-height:1.55;
  transition: max-height 1s cubic-bezier(.215,.61,.355,1), padding .3s ease, border-color .3s ease;
}
.content-accordion p{ margin:12px 0 16px }

/* pannello aperto = padding-bottom + divider visibile */
.content-accordion--show{
  padding:0 20px 18px 20px;        /* aggiunge solo bottom */
  border-top-color: rgba(255,255,255,.08);
}

/* glow sulla CARD quando aperta (non sul titolo) */
.faq-item.is-open{
  border-color: rgba(94,234,212,.55);
  box-shadow: 0 20px 50px rgba(45,212,191,.18);
}

/* sicurezza: nessuna trasformazione/scala involontaria */
.faq-item, .title-accordion, .content-accordion{ box-sizing:border-box }

/* ===== CONTACTS ===== */

@media(max-width:780px){ .contact-grid{grid-template-columns:1fr} }

/* CF7 base */
.wpcf7 form p{margin:0 0 14px}
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select{
  width:100%; padding:12px 14px; border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04); color:var(--txt); font-family:inherit;
}
.wpcf7 textarea{min-height:140px; resize:vertical}
.wpcf7 input:focus, .contacts textarea:focus, .contacts select:focus{outline:none; border-color:var(--pri); box-shadow:0 0 0 2px rgba(94,234,212,.15);}

select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  width: 100%;
  padding: 12px 14px;
  padding-right: 40px; /* spazio per la freccia custom */
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  color: var(--txt);
  font: inherit;

  /* freccia custom SVG */
  background-image: url("data:image/svg+xml;utf8,<svg fill='white' height='18' viewBox='0 0 24 24' width='18' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 16px;
}
/* Hover e focus */
select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required:hover {
  border-color: var(--pri);
}

select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required:focus {
  outline: none;
  border-color: var(--pri);
  box-shadow: 0 0 0 2px rgba(94,234,212,.15);
}

/* CF7 submit → stile pill */
input[type=submit]{
  background:linear-gradient(135deg,var(--pri),var(--acc))!important;
  color:#0b0d12!important; font-weight:700!important; border:none;
  padding:14px 20px; border-radius:999px; cursor:pointer; transition:.15s;
}
input[type=submit]:hover{ transform:translateY(-2px)!important; box-shadow:0 12px 30px rgba(94,234,212,.35)!important }

/* ===== CF7 Privacy checkbox (allineato + stile dark) ===== */
.wpcf7-list-item{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin:12px 0 0;
}

/* reset di default CF7 che lo mette “inline-block” strano */
.wpcf7-list-item-label{
  display:inline !important;
  color:var(--muted);
}

/* checkbox custom (accessibile) */
input[type="checkbox"]{
  -webkit-appearance:none; appearance:none;
  width:18px; height:18px;
  border-radius:5px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.05);
  display:inline-block; position:relative;
  cursor:pointer;
  top: 5px;
}
input[type="checkbox"]:focus{
  outline:none; box-shadow:0 0 0 2px rgba(94,234,212,.18);
  border-color:var(--pri);
}
input[type="checkbox"]:checked{
  background:
    linear-gradient(135deg,var(--pri),var(--acc));
  border-color:transparent;
}
input[type="checkbox"]:checked::after{
  content:"";
  position:absolute; inset:0;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230b0d12' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>")
    center/12px 12px no-repeat;
}

.policy-link:hover{color: #a78bfa; transition: all 1s cubic-bezier(.215, .61, .355, 1);}

/* ! Copertina custom */

.copertina-custom {height: 600px; /* Modifica questa altezza in base alle tue esigenze */position: relative;overflow: hidden;}
.copertina-custom .wp-block-cover__image-background {object-fit: cover; /* Per mantenere l'immagine proporzionata */width: 100%;height: 100%;}

/* ! icon service */

.icon-service{position: relative;width: 50%;left: 27%;margin-bottom: 30px;}

/* ! Custom-media-text */

.custom-media-text {display: flex;align-items: center;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
border:1px solid rgba(255,255,255,.10);
border-radius:20px; padding:22px;
box-shadow:0 15px 40px rgba(0,0,0,.30);margin: 20px;}
.custom-media-text .wp-block-media-text__media {position: relative;width: 50%; /* Regola la larghezza dell'immagine */height: auto;}
.custom-media-text .wp-block-media-text__content {width: 50%; /* Regola la larghezza del contenuto testuale */}
.custom-media-text img {width: 100%;height: 100%;object-fit: cover; /* Assicura che l'immagine riempia lo spazio */}

/* ! avatar chi sono */
.avatar img{
  width: 200px; height: 200px; object-fit: cover;
  border-radius: 100%; border: 6px solid rgba(255,255,255,.10);
  box-shadow: 0 20px 60px rgba(0,0,0,.25);position: relative;justify-content: center;
}

/* ! portolio */

.portfolio {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.portfolio img {
  display: block;
  width: 100%;
  height: 650px;
  transition: transform 0.5s ease, filter 0.5s ease;
  object-fit: cover;
}

/* Overlay */
.portfolio::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); /* Overlay colore */
  opacity: 1;
  transition: opacity 0.5s ease;
  z-index: 1; /* Posiziona l'overlay sopra l'immagine */
}

/* Effetto Hover */
.portfolio:hover img {
  transform: scale(1.1); /* Zoom effetto */
  filter: brightness(0.9); /* Oscurisce leggermente l'immagine */
  
}

.portfolio:hover::before {
  opacity: 0; /* Mostra l'overlay */
}

/* --- Media Queries --- */
@media (max-width: 1024px) {
  .slider {
    height: 300px; /* Riduce l'altezza dello slider */
  }

  .loghi-svg {
    width: 100px;
    height: 70px;
    margin: 0 100px;
  }

  .nav-title {
    font-size: 1.8rem;
  }

  .copertina-custom {
    height: 400px;
  }

  .custom-media-text {
    flex-direction: column; /* Imposta in colonna per dispositivi più piccoli */
  }

  .custom-media-text .wp-block-media-text__media,
  .custom-media-text .wp-block-media-text__content {
    width: 100%; /* Larghezza piena per schermi più piccoli */
  }

  .portfolio img {
    transform: none;
  }
}

@media (max-width: 768px) {
  .slider {
    height: 250px;top: 8px;
  }

  .loghi-svg {
    margin: 0 50px;
  }

  .nav-title {
    font-size: 1.5rem;
  }

  .copertina-custom {
    height: 300px;
  }

 .custom-media-text img {margin-top: 80px;}

}

@media (max-width: 480px) {
  .slider {
    height: 200px;
  }

  .loghi-svg {
    width: 80px;
    height: 50px;
    margin: 0 20px;
  }

  .nav-title {
    font-size: 1.2rem;
  }

  .copertina-custom {
    height: 200px;
  }

  .portfolio img {
    filter: none;
    height: 350px;
  }
}

/* ! loader */

.loader-container{display: flex;align-items: center;justify-content: center;min-height: 100vh;background-color: #111;}
.loader{max-width: 15rem;width: 100%;height: auto;top: 50%;}

.spinner {
  height: 14rem;
  width: 14rem;
  border: 20px solid #3E4CB3 ;
  border-left: 20px solid #2641FF;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  animation: spin infinite 1.5s linear;
}

.spinner-text {
  position: absolute;
  font-size: 14px;
  color: #ccc;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-family: sans-serif;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@media (max-width: 768px) {
  .loader{left: 50%;}
}

/* ! cover */
.cover{
  padding: 20px;min-height: 100vh;
  display: flex; flex-flow: column;
  justify-content: center;
  align-items: center;
  position:relative;
}
.cover__bg{position: absolute;top: 0;width: 95%;height: 95%;z-index:0;}
.cover__bg:after{ content: ' ';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-size:cover;}
.cover__content{left: 0; position:relative; z-index: 1;width: 100%;top: 50%;}

.icon img{width: 60%;position: absolute;right: 30%;top: 0;padding: 5px;}
.elenco{position: relative;list-style-position: inside;right: 65%;width: 300px;}

@media (max-width: 768px) {
  .cover__bg{height: 55%;left: 0;top: 20px;}
  .cover__content{text-align: center;}
  .cover__content h2{font-size: 1.5rem;margin: 0;}
  .cover__content h1{font-size: 2.3rem;margin: 0;line-height: 1;}
  .cover__content p{font-size: 1rem;line-height: 20px;margin: 5px;}
  img.emoji{height: 1.2em;width: 1.2em;}
  .icon img{left: 20%;top: 120px;width: 50%;}
  .elenco{left: 0;top: 100px;}
}

/* ! scroll animation*/

.scroll{width: 100%;height: 100%;background-color: #c9d6df;display: flex;align-items: center;justify-content: center;position: relative;top: 100px;}
.field{display: flex;align-items: center;justify-content: space-around;width: 300px;}
.mouse{width: 23px;height: 40px;border: 1px solid #000;border-radius: 60px;position: absolute;top: 85%;left: 50%;}
.mouse:before{
  content: '';
  width: 5px;
  height: 5px;
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #000;
  border-radius: 50%;
  opacity: 1;
  animation: wheel 2s infinite;
  -webkit-animation: wheel 2s infinite;}

@keyframes wheel{
	to {opacity: 0;top: 20px;}
}

@-webkit-keyframes wheel{
	to {opacity: 0;top: 20px;}
}

@media (max-width: 768px) {
  .scroll{display: none;}
}

/* ! Colums */

.wp-block-columns{max-width:1250px; margin: 0 auto; padding: 0 15px;}
.container-items{display: flex;flex-wrap:wrap;}
.item-colums{width: 50%;margin-bottom: 20px;}
.item-colums h2{margin-bottom: 0px;}

/* ! testimoninza */
.img-card img{width: 50px; height: 50px; object-fit: cover;
  border-radius: 100%; border: 6px solid rgba(255,255,255,.10);
  box-shadow: 0 20px 60px rgba(0,0,0,.25);}

.card{border-color:rgba(94,234,212,.55);box-shadow:0 20px 50px rgba(45,212,191,.18);border-radius: 20px;margin: 20px;top: -30px;border: 1px solid rgba(94,234,212,.35);}

/* Tiles */

.tiles{min-height: 500px; border-radius: 30px; color:#fff; position: relative;overflow: hidden; display:block}
.tiles__label{position: absolute; bottom: 30px; left:30px}
.tiles__content{
  padding: 30px;
  background: rgb(255,255,255);
  background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(0,0,0,1) 100%);
}

/* ! Animation */
/* --------------------------------------------------------- */

.fade-in{opacity: 0; transform: translateY(1rem);}
.text-reveal{transform: translateY(1rem);clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);}
.fade-up{opacity: 0; transform: translateY(5rem);}

.rotate{ animation: rotation 20s linear infinite}

@keyframes rotation {
  0% {  transform: rotate(0deg);}
  100% {  transform: rotate(360deg);}
}

/* tada */

.tada{animation: tada 5s linear infinite}
@keyframes tada {

  from {transform: scale3d(1, 1, 1);}
  10%,20% {transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);}

  30%,50%,70%,90% {transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);}
  40%,60%,80% {transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);}
  to {transform: scale3d(1, 1, 1);}
}

/* ! Cursor */

.outline{height: 64px;width: 64px;border-radius: 100%;border: 1px solid #fff;top: 0;left: 0;position: fixed;z-index: 99999;mix-blend-mode: difference;transform: translate(-64px -64px);transition: all 0.3s cubic-bezier(.215, .61, .355, 1);pointer-events: none;}
.cursor{height: 5px;width: 5px;border-radius: 100%;background: #fff;top: 0;left: 0;position: fixed;z-index: 99999;transform: translate(-8px -8px);pointer-events: none;}
.cursor.hover{width: 0;height: 0;}
.outline.hover{height: 128px;width: 128px;}

@media (max-width: 768px) {
  .cursor,
  .outline{display: none;}
} 

/* ! footer */

.footer{color: #c9d6df; ;line-height: 1.8rem;position: relative;border-top: 1px solid #171818 ;}
.footer__social{text-align: right;}
.footer__social img{width: 60px;padding: 10px;margin: 15px;}
.footer__icon img{width: 10px;}

.to-top{
  position: relative;
  width:40px;height:40px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(135deg,var(--pri),var(--acc));
  color:#0b0d12;
  cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 8px 22px rgba(0,0,0,.25);
  transition:transform .2s ease, box-shadow .2s ease;
  left: 0;
}
.to-top:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(0,0,0,.35);
}

@media (max-width: 768px) {

  .footer{text-align: center;}
  .footer__social{text-align: center!important;position: absolute;bottom: 100px;}
  .footer__social img{width: 50px;}
  .dati{margin-top: 50px;}
  .to-top{left: 20%;}
}

/* ! Blog */

/* Container per i post del blog */
.blog-posts-wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Singolo post in layout orizzontale */
.blog-post-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  border: 1px solid #333;
  border-radius: 8px;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.blog-post-item:hover {
  background-color: #f9f9f9;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Immagine del post */
.blog-post-thumbnail {
  flex-shrink: 0;
  width: 150px;
  height: 100px;
  overflow: hidden;
  border-radius: 8px;
}

.blog-post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Titolo del post */
.blog-post-title {
  font-size: 1.2rem;
  font-weight: bold;
  color: #333;
  margin-top: 2rem;
}

.blog-post-title:hover {
  color: #078f23;
}

/* Layout responsive */
@media (max-width: 768px) {
  .blog-post-item {
    flex-direction: column;
    align-items: flex-start;
  }

  .blog-post-thumbnail {
    width: 100%;
    height: 200px;
  }

  .blog-post-title {
    margin-top: 0.5rem;
  }
}


.form-search-modern {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1rem 0;
  padding: 0.5rem;
  border-radius: 8px;
  position: relative;
  left: 20%;
}

.search-wrapper {
  display: flex;
  width: 100%;
  max-width: 400px;
}

.search-input-modern {
  flex: 1;
  padding: 0.5rem 1rem;
  border: 1px solid #ddd;
  border-right: none;
  border-radius: 8px 0 0 8px;
  font-size: 16px;
  outline: none;
}

.search-input-modern:focus {
  border-color: #078f23;
  box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
}

.search-button-modern {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  background-color: #0fb831;
  border: none;
  border-radius: 0 8px 8px 0;
  color: #fff;
  cursor: pointer;
}

.search-button-modern:hover {
  background-color: #078f23; transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.search-button-modern svg {
  width: 20px;
  height: 20px;
}

@media (max-width: 768px) {
.form-search-modern{
  left: 0;
}
  
}