.elementor-kit-7{--e-global-color-primary:#0E7490;--e-global-color-secondary:#83D1E1;--e-global-color-text:#374151;--e-global-color-accent:#C84B1F;--e-global-color-1b9ba56:#62D3B3;--e-global-color-47d4b84:#0F1923;--e-global-color-f94f870:#F0FAFB;--e-global-color-cbf3bbf:#D1E9ED;--e-global-color-59b7e15:#6B7280;--e-global-color-8f44061:#9CA3AF;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-size:clamp(33px, 5.8vw, 77px);--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1em;--e-global-typography-primary-letter-spacing:0.03em;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-size:clamp(28px, 4vw, 53px);--e-global-typography-secondary-font-weight:800;--e-global-typography-secondary-line-height:1em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:clamp(14px, 4vw, 16px);--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:clamp(15px, 1.6vw, 18px);--e-global-typography-accent-font-weight:400;--e-global-typography-9eb34d1-font-family:"Bricolage Grotesque";--e-global-typography-9eb34d1-font-size:clamp(20px, 2.2vw, 28px);--e-global-typography-9eb34d1-font-weight:600;--e-global-typography-7ed86a5-font-family:"DM Sans";--e-global-typography-7ed86a5-font-size:clamp(16px, 1.6vw, 20px);--e-global-typography-7ed86a5-font-weight:600;--e-global-typography-0b5cbfe-font-family:"DM Sans";--e-global-typography-0b5cbfe-font-size:15px;--e-global-typography-0b5cbfe-font-weight:400;--e-global-typography-388dcf4-font-family:"DM Sans";--e-global-typography-388dcf4-font-size:14px;--e-global-typography-388dcf4-font-weight:600;--e-global-typography-388dcf4-text-transform:uppercase;--e-global-typography-388dcf4-letter-spacing:0.1em;--e-global-typography-dd03a5e-font-family:"Bricolage Grotesque";--e-global-typography-dd03a5e-font-size:clamp(25px, 3.4vw, 39px);--e-global-typography-dd03a5e-font-weight:600;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:77%;}.e-con{--container-max-width:77%;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ──  ╔══════════════════════════════════════════════════════╗
 ║ PULSANTI--------
  ╚══════════════════════════════════════════════════════╝ ── */
  
.fks-btn {
  --teal:    #0E7490;
  --teal-dk: #0A5468;
  --azzurro: #83D1E1;
  --verde:   #62D3B3;
  --coral:   #C84B1F;
  --coral-dk:#A33A14;
  --notte:   #0F1923;

  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(15px, 1.6vw, 18px);
  font-weight: 400;
  letter-spacing: .04em;
  text-decoration: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  padding: 12px 24px;
  min-height: 46px;
  /* NO overflow:hidden — cliperebbe la freccia ::after */
}
.fks-btn.sm { font-size: clamp(13px, 1.3vw, 15px); padding: 9px 18px;  min-height: 38px; }
.fks-btn.lg { font-size: clamp(16px, 1.8vw, 20px); padding: 16px 34px; min-height: 52px; }

/* ── PRIMARY ── */
.fks-btn.primary {
  background: linear-gradient(to right, var(--teal-dk) 50%, var(--teal) 50%);
  background-size: 200% 100%;
  background-position: right center;
  color: #fff;
  padding-right: 24px;
  transition:
    background-position .4s cubic-bezier(.22,1,.36,1),
    padding-right .35s cubic-bezier(.22,1,.36,1);
}
.fks-btn.primary::after {
  content: '→';
  font-size: 16px;
  opacity: .7;
  display: inline-block;
  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    opacity .2s;
}
.fks-btn.primary:hover {
  background-position: left center;
  padding-right: 38px;
}
.fks-btn.primary:hover::after {
  transform: translateX(8px);
  opacity: 1;
}

/* ── URGENCY ── */
.fks-btn.urgency {
  background: var(--coral);
  color: #fff;
  font-weight: 600;
  letter-spacing: .02em;
  transition: background .3s;
}
.fks-btn.urgency::before {
  content: '';
  width: 8px; height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.85);
  flex-shrink: 0;
  animation: fksPulse 1.8s ease-in-out infinite;
}
.fks-btn.urgency:hover { background: var(--coral-dk); }
@keyframes fksPulse {
  0%,100% { transform: scale(1);    opacity: .85; }
  50%      { transform: scale(1.5); opacity: .4;  }
}

/* ── NAV ── */
.fks-btn.nav {
  background: var(--azzurro);
  color: var(--notte);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 11px 26px;
  border-radius: 3px;
  transition: background .3s;
}
.fks-btn.nav::after {
  content: '';
  display: inline-block;
  width: 12px; height: 1px;
  background: var(--notte);
  flex-shrink: 0;
  transition: width .3s;
}
.fks-btn.nav:hover { background: var(--verde); }
.fks-btn.nav:hover::after { width: 20px; }

/* ── OUTLINE ── */
.fks-btn.outline {
  background: transparent;
  color: var(--teal);
  border: 1.5px solid var(--teal);
  transition: background .3s, color .3s;
}
.fks-btn.outline:hover { background: var(--teal); color: #fff; }

/* ── GHOST ── */
.fks-btn.ghost {
  background: transparent;
  color: var(--teal);
  padding: 0 0 4px 0;
  border-radius: 0;
  border-bottom: 1px solid rgba(98,211,179,.35);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: border-color .3s, gap .25s;
}
.fks-btn.ghost::after { content: '→'; transition: transform .25s; }
.fks-btn.ghost:hover { border-color: var(--teal); gap: 14px; }
.fks-btn.ghost:hover::after { transform: translateX(3px); }

/* ── GHOST DARK ── */
.fks-btn.ghost-dark {
  background: transparent;
  color: rgba(255,255,255,.35);
  padding: 0;
  border-radius: 0;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: color .3s, gap .25s;
}
.fks-btn.ghost-dark::after { content: '→'; transition: transform .25s; }
.fks-btn.ghost-dark:hover { color: var(--azzurro); gap: 12px; }
.fks-btn.ghost-dark:hover::after { transform: translateX(3px); }

/* ── TEL ── */
.fks-btn.tel {
  background: var(--coral);
  color: #fff;
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .01em;
  padding: 20px 36px;
  transition: background .3s;
}
.fks-btn.tel:hover { background: var(--coral-dk); }

/* ── STEP LINK ── */
.fks-btn.step-link {
  background: transparent;
  color: var(--verde);
  padding: 0;
  border-radius: 0;
  font-size: 12px;
  font-weight: 500;
  transition: gap .2s;
}
.fks-btn.step-link::after { content: '→'; transition: transform .2s; }
.fks-btn.step-link:hover { gap: 10px; }
.fks-btn.step-link:hover::after { transform: translateX(3px); }

/* ── Mobile ── */
@media (max-width: 767px) {
  .fks-btn.primary,
  .fks-btn.urgency,
  .fks-btn.tel { width: 100%; justify-content: center; }
}


/* ════════════════════════════════════
   CARD SERVIZI
════════════════════════════════════ */
/* FAKIS · Servizi · Site Settings → Custom CSS */

/* Background riga */
.fks-service-item:hover {
  background-color: #F0FAFB !important;
}

/* Numero */
.fks-service-item:hover .fks-s-num .elementor-heading-title {
  color: #0E7490 !important;
}

/* Titolo servizio */
.fks-service-item:hover .fks-s-name .elementor-heading-title {
  color: #0E7490 !important;
}

/* Icona — stato base: bordo + transizioni */
.fks-s-arrow .elementor-icon {
  border: 1px solid #0E7490 !important;
  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    background-color .3s,
    border-color .3s;
}

/* Icona — hover container: sfondo pieno + movimento */
.fks-service-item:hover .fks-s-arrow .elementor-icon {
  background-color: #0E7490 !important;
  border-color: #0E7490 !important;
  transform: translateX(6px);
}

/* SVG freccia — bianca all'hover */
.fks-service-item:hover .fks-s-arrow .elementor-icon svg,
.fks-service-item:hover .fks-s-arrow .elementor-icon svg path {
  fill: #F0FAFB !important;
  transition: fill .3s;
}/* End custom CSS */