.elementor-kit-18283{--e-global-color-primary:#0F1621;--e-global-color-secondary:#E8EBEF;--e-global-color-text:#EEF3FB;--e-global-color-accent:#FF3A2D;--e-global-color-6efa3ee:#FF3A2D;--e-global-color-c2aafc5:#E8EBEF;--e-global-color-2f0b43d:#FD774E;--e-global-color-474f0a9:#02010100;--e-global-color-312855e:#1B2433;--e-global-typography-primary-font-family:"Archivo Black";--e-global-typography-primary-font-size:80px;--e-global-typography-primary-font-weight:900;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-primary-word-spacing:0em;--e-global-typography-secondary-font-family:"Archivo Black";--e-global-typography-secondary-font-size:24px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-secondary-word-spacing:0em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-text-word-spacing:0em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0em;background-color:var( --e-global-color-secondary );}.elementor-kit-18283 button,.elementor-kit-18283 input[type="button"],.elementor-kit-18283 input[type="submit"],.elementor-kit-18283 .elementor-button{background-color:var( --e-global-color-6efa3ee );text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:#FFFFFF;box-shadow:20px 20px 10px 0px rgba(0,0,0,0.5);border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-kit-18283 button:hover,.elementor-kit-18283 button:focus,.elementor-kit-18283 input[type="button"]:hover,.elementor-kit-18283 input[type="button"]:focus,.elementor-kit-18283 input[type="submit"]:hover,.elementor-kit-18283 input[type="submit"]:focus,.elementor-kit-18283 .elementor-button:hover,.elementor-kit-18283 .elementor-button:focus{background-color:var( --e-global-color-6efa3ee );color:#FFFFFF;}.elementor-kit-18283 e-page-transition{background-color:#FFBC7D;}.elementor-kit-18283 a{color:var( --e-global-color-accent );}.elementor-kit-18283 a:hover{color:var( --e-global-color-primary );}.elementor-kit-18283 h1{font-size:104px;}.elementor-kit-18283 h2{font-size:100px;}.elementor-kit-18283 h3{font-size:25px;}.elementor-kit-18283 h4{color:var( --e-global-color-primary );font-size:90px;}.elementor-kit-18283 h6{font-size:45px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1170px;}.e-con{--container-max-width:1170px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}{}h1.entry-title{display:var(--page-title-display);}body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}.hfe-scroll-to-top-wrap .hfe-scroll-to-top-button{bottom:30px;right:30px;}@media(max-width:1024px){.elementor-kit-18283{--e-global-typography-primary-font-size:45px;--e-global-typography-secondary-font-size:25px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}}@media(max-width:767px){.elementor-kit-18283{--e-global-typography-primary-font-size:28px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="widescreen"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="desktop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="laptop"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="tablet"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile_extra"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.edit-mode,
						body[data-elementor-device-mode="mobile"] .hfe-scroll-to-top-wrap.single-page-off{visibility:visible;opacity:1;}}/* Start custom CSS *//****************************************************
 * SMcore — Global Design System (clean, consolidated)
 * Prefix: smc-
 ****************************************************/

/* ========== TOKENS ========== */
:root{
  /* Brand */
  --smc-brand:#FF3A2D;                 /* Rosso logo */
  --smc-brand-2:#FD774E;               /* Accento/gradient ufficiale */

  /* Dark surfaces */
  --smc-dark-1:#0F1621;
  --smc-dark-2:#1B2433;
  --smc-ink:#EEF3FB;                   /* Testo chiaro su scuro */
  --smc-muted:#B8C0D0;                 /* Testo secondario su scuro */
  --smc-card:#161C26;

  /* Light surfaces */
  --smc-light-0:#FFFFFF;               /* Bianco puro (solo quando richiesto) */
  --smc-light-1:#F6F8FC;               /* Paper/mist chiaro */
  --smc-light-2:#EFF3FA;               /* Mist + contrasto */

  /* Layout */
  --smc-maxw:1200px;
  --smc-radius:16px;
  --smc-shadow:0 8px 28px rgba(0,0,0,.35);
  --smc-header-h:72px;                 /* aggiorna se l’header cambia */
}

/* ========== LAYOUT BASE ========== */
.smc-container{max-width:var(--smc-maxw); margin-inline:auto; padding-inline:20px;}
.smc-section{padding: clamp(40px, 6vw, 80px) 0;}
.smc-fw{width:100vw; margin-left:calc(50% - 50vw);} /* full-width reale */

.smc-section--dark{
  background: linear-gradient(180deg, var(--smc-dark-1) 0%, var(--smc-dark-2) 100%);
  color: var(--smc-ink);
  position: relative; overflow:hidden;
}
.smc-section--dark::before{
  content:""; position:absolute; inset:0;
  background: radial-gradient(800px 400px at 15% 0%, rgba(253,119,78,0.12), transparent 70%);
  pointer-events:none;
}

.smc-section--light{ background: var(--smc-light-1); color:#1D232F; }
.smc-section--light.alt{ background: linear-gradient(180deg, var(--smc-light-2) 0%, var(--smc-light-1) 100%); }
.smc-section--white{ background: var(--smc-light-0); color:#1D232F; } /* uso raro */

/* Header sezione */
.smc-section__header{ text-align:center; margin: 0 0 clamp(18px,3vw,32px); }
.smc-section__header h2{
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.12;
  margin: 0 0 8px;
}
.smc-section__header p{
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.45;
  max-width: 920px; margin: 0 auto;
  opacity: .9;
}

/* Tipografia rapida */
.smc-title-xl{font-size:clamp(32px,3.5vw,48px); font-weight:800; margin:0 0 10px;}
.smc-title-lg{font-size:clamp(24px,3vw,36px); font-weight:800; margin:0 0 10px;}
.smc-title-md{font-size:1.2rem; font-weight:700; margin:12px 0 8px; color:inherit;}
.smc-lead{color:var(--smc-muted); font-size:clamp(16px,2vw,20px);}

/* Grid generica */
.smc-grid{ display:grid; gap:28px; grid-template-columns:repeat(auto-fit, minmax(320px,1fr)); width:90%; max-width:1400px; margin:0 auto; }

/* ========== CARDS (dark style) ========== */
.smc-card{
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--smc-radius);
  padding: 28px 24px;
  box-shadow: var(--smc-shadow);
  backdrop-filter: blur(6px);
  color: var(--smc-ink);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.smc-card p{ color:var(--smc-muted); margin:0; font-size:.95rem; }
.smc-card__icon{ display:flex; justify-content:center; align-items:center; height:160px; margin-bottom:10px; }
.smc-card__icon img{ height:120px; object-fit:contain; filter: drop-shadow(0 0 12px rgba(253,119,78,0.15)); transition:.3s; }
.smc-card:hover{
  transform: translateY(-8px);
  box-shadow: 0 16px 40px rgba(255, 90, 60, 0.25), 0 0 22px rgba(255, 90, 60, 0.12);
  border-color: rgba(255, 90, 60, 0.25);
}
.smc-card:hover .smc-card__icon img{ transform: scale(1.06); filter: drop-shadow(0 0 22px rgba(255, 90, 60, 0.4)); }

/* ========== BUTTONS (standardizzati) ========== */
.smc-btn{
  --btn-h: 46px;
  display: inline-flex;
  align-items: center; justify-content: center;
  gap: 8px; min-height: var(--btn-h);
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 700; line-height: 1; letter-spacing: .01em;
  text-decoration: none; border: 0; cursor: pointer;
  transition: transform .15s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
  -webkit-font-smoothing: antialiased;
}
.smc-btn--primary{
  color:#fff;
  background: linear-gradient(90deg, var(--smc-brand) 0%, var(--smc-brand-2) 100%);
  box-shadow: 0 6px 18px rgba(255, 58, 45, .35);
}
.smc-btn--primary:hover{ transform: translateY(-1px); box-shadow: 0 10px 24px rgba(255, 58, 45, .45); }
.smc-btn--primary:active{ transform: translateY(0); box-shadow: 0 4px 14px rgba(255, 58, 45, .35); }
.smc-btn--primary:focus-visible{ outline:0; box-shadow: 0 0 0 3px rgba(255,255,255,.35), 0 0 0 6px rgba(255,58,45,.6); }

.smc-btn--ghost{
  background: transparent;
  color: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: none;
}
.smc-btn--ghost:hover{ background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.6); }
.smc-btn--ghost:focus-visible{ outline:0; box-shadow: 0 0 0 3px rgba(255,255,255,.25); }

.smc-btn.is-on-hero{ font-size: clamp(15px, 1.6vw, 18px); padding: clamp(12px,1.4vw,16px) clamp(26px,3vw,36px); }
.smc-btn[disabled], .smc-btn.is-disabled{ opacity:.6; pointer-events:none; filter:saturate(.8); }

/* Reset Elementor per i bottoni quando uso le nostre classi */
.elementor-button.smc-btn,
.elementor a.elementor-button.smc-btn{
  background: unset; border: unset; border-radius: 8px; padding: 0;
}
.elementor-button.smc-btn.smc-btn--primary{
  background: linear-gradient(90deg, var(--smc-brand), var(--smc-brand-2)) !important;
  color:#fff !important;
}

/* CTA standalone centrata sotto griglie */
.smc-cta-strong{ display:flex; justify-content:center; align-items:center; width:100%; margin-top: clamp(24px, 4vw, 48px); text-align:center; }
.smc-cta-strong .smc-btn{ margin:0 auto; }

/* ========== HERO (scura) ========== */
.smc-hero{
  position:relative; display:flex; align-items:center; justify-content:center;
  padding:0; color:var(--smc-ink); background:var(--smc-dark-1); overflow:hidden;
}
.smc-hero--under-header{ min-height:calc(100svh - var(--smc-header-h) - var(--wp-admin--admin-bar--height,0px)); }
.smc-hero--overlay{ min-height:calc(100svh - var(--wp-admin--admin-bar--height,0px)); }

.smc-hero__bg img, .smc-hero__bg video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center; display:block; z-index:0;
}
.smc-hero__content{ position:relative; z-index:1; text-align:center; width:min(960px,92%); }
.smc-hero__title{ font-size:clamp(34px,5.5vw,64px); line-height:1.1; margin:0 0 14px; }
.smc-hero__subtitle{ font-size:clamp(16px,2vw,20px); color:var(--smc-muted); margin:0 0 26px; }
.smc-hero__actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-bottom:22px; }
.smc-hero__actions--plate{
  display:inline-flex; gap:12px; padding:8px 12px; border-radius:10px;
  background:rgba(0,0,0,.28); backdrop-filter:blur(3px); outline:1px solid rgba(255,255,255,.08);
}

/* ========== LINKCARDS (richiami aree) ========== */
.smc-hero-cards{ display:flex; flex-wrap:wrap; gap:18px; justify-content:center; }
.smc-linkcard{
  width:280px; padding:22px; border-radius:var(--smc-radius);
  background:var(--smc-card); border:1px solid rgba(255,255,255,.12); color:#fff; text-decoration:none;
  box-shadow:var(--smc-shadow); display:flex; flex-direction:column; gap:6px; text-align:left;
  transition:transform .25s, box-shadow .25s, border-color .25s;
}
.smc-linkcard:hover{ transform:translateY(-6px); box-shadow:0 18px 40px rgba(0,0,0,.32); border-color:#fff; }
.smc-linkcard__icon{ font-size:28px; }
.smc-linkcard__title{ margin:0; font-weight:800; color:var(--smc-brand); }
.smc-linkcard__desc{ margin:0; color:#cbd3df; font-size:15px; }

/* ========== STEPS (Zig-zag v2) ========== */
.smc-zigzag{ display:flex; flex-direction:column; gap:32px; }
.smc-zitem{
  position:relative; display:grid; gap:28px;
  grid-template-columns: 1.1fr 1fr; /* media | testo */
  background:var(--smc-card);
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--smc-radius);
  box-shadow:var(--smc-shadow);
  padding:28px; overflow:hidden;
}
.smc-zitem.is-reverse{ grid-template-columns: 1fr 1.1fr; }
.smc-zitem.is-reverse .smc-zitem__media{ order:2; }
.smc-zitem.is-reverse .smc-zitem__body{ order:1; }
.smc-zitem__edge{
  position:absolute; left:0; top:0; bottom:0; width:6px;
  background: linear-gradient(180deg, var(--smc-brand) 0%, var(--smc-brand-2) 100%);
  opacity:.9;
}
.smc-zitem__media{
  min-height:180px; border-radius:12px;
  background:#1f2633 center/cover no-repeat;
  outline:1px solid rgba(255,255,255,.06);
}
.smc-zitem__body{ display:flex; flex-direction:column; justify-content:center; }
.smc-zitem__title{ margin:0 0 8px; font-weight:800; font-size:clamp(20px,2.4vw,26px); color:var(--smc-ink); }
.smc-zitem__text{ margin:0 0 14px; color:var(--smc-muted); }
.smc-zitem__num{
  position:absolute; top:14px; right:14px; z-index:1;
  width:40px; height:40px; display:grid; place-items:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px; color:#fff; font-weight:800;
}
.smc-zitem:hover{
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(255,58,45,.22);
  border-color: rgba(255,58,45,.24);
  transition:.28s ease;
}
/* Variante light per zig-zag (su sezioni chiare) */
.smc-zitem.is-light{
  background:#fff; color:#1D232F; border:1px solid rgba(0,0,0,.06);
  box-shadow: 0 8px 26px rgba(0,0,0,.08);
}
.smc-zitem.is-light .smc-zitem__title{ color:#1D232F; }
.smc-zitem.is-light .smc-zitem__text{ color:#455065; }
.smc-zitem.is-light .smc-zitem__media{ background:#e9eef9; }
.smc-zitem.is-light .smc-zitem__num{ background:#fff; border-color:rgba(0,0,0,.08); color:#1D232F; }

@media (max-width: 900px){
  .smc-zitem, .smc-zitem.is-reverse{ grid-template-columns:1fr; gap:18px; padding:22px; }
  .smc-zitem__num{ top:10px; right:10px; }
}

/* ========== GRIGLIE SPECIFICHE (Pillars/Services) ========== */
.smc-grid--pillars{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.5vw,28px); }
@media (max-width:1024px){ .smc-grid--pillars{ grid-template-columns:1fr 1fr; } }
@media (max-width:720px){  .smc-grid--pillars{ grid-template-columns:1fr; } }

.smc-card--pillar{
  background:#111826; border:1px solid rgba(255,255,255,.08);
  border-radius:16px; padding:clamp(18px, 2.2vw, 28px);
  color: var(--smc-ink);
  box-shadow: 0 4px 24px rgba(15,22,33,.12);
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.smc-card--pillar:hover{ transform: translateY(-2px); border-color: rgba(253,119,78,.45); box-shadow: 0 8px 32px rgba(253,119,78,.18); }
.smc-card__icon{ display:inline-flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:14px; background: linear-gradient(135deg, #1B2433, #0F1621); border:1px solid rgba(255,255,255,.08); box-shadow: inset 0 0 0 2px rgba(255,255,255,.04), 0 6px 18px rgba(0,0,0,.25); }
.smc-card__icon i, .smc-card__icon span{ font-size:26px; line-height:1; color:#fff; filter: drop-shadow(0 2px 6px rgba(0,0,0,.3)); }

.smc-grid--services{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:clamp(18px,2.5vw,28px); }
.smc-card--service{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:16px; padding:clamp(20px,2vw,28px);
  box-shadow:0 4px 16px rgba(15,22,33,.08);
  transition:transform .2s, box-shadow .2s, border-color .2s;
}
.smc-card--service:hover{ transform:translateY(-4px); box-shadow:0 8px 28px rgba(253,119,78,.25); border-color:rgba(253,119,78,.45); }
.smc-card--service .smc-card__icon{ width:52px; height:52px; border-radius:12px; background:linear-gradient(135deg,var(--smc-brand),var(--smc-brand-2)); color:#fff; box-shadow:0 3px 12px rgba(255,58,45,.35); margin-bottom:10px; }
.smc-card--service .smc-card__icon i{ font-size:22px; }

/* ========== FIX primo blocco sotto header Elementor ========== */
/* (corretto) – lascia spazio sotto il menu */
body .elementor-location-header + .elementor section:first-of-type{
  margin-top:0 !important;
  padding-top: calc(var(--smc-header-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
}

/* === HOT-FIX CTA CENTRATA (sotto le griglie) === */
.smc-cta-strong{
  /* stesse dimensioni della .smc-grid */
  width:100%;
  max-width: 1400px;

  margin: clamp(32px, 4vw, 48px) auto 0; /* <- refuso corretto */

  /* centratura dura e pura */
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;

  /* annulla eventuali vecchi stili "standalone" */
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* se Elementor inserisce wrapper intermedi */
.smc-cta-strong .elementor-widget-container,
.smc-cta-strong .elementor-button-wrapper{
  display: flex !important;
  justify-content: center !important;
  width: 100%;
}

/* il bottone vero e proprio */
.smc-cta-strong > .smc-btn,
.smc-cta-strong a.smc-btn{
  display: inline-flex;
  margin: 0 auto !important;
}

/* ==========================================
   SMcore – CTA Button (stile ufficiale)
   ========================================== */
.smc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  border: none;
  border-radius: 8px;
  padding: 14px 28px;
  transition: all 0.2s ease;
}

/* Variante principale */
.smc-btn--primary {
  background: var(--smc-brand); /* #FF3A2D */
  color: #fff;
  box-shadow: 0 4px 10px rgba(255, 58, 45, 0.25);
}

.smc-btn--primary:hover {
  background: var(--smc-brand-2); /* #FD774E */
  box-shadow: 0 6px 14px rgba(253, 119, 78, 0.3);
  transform: translateY(-1px);
}

/* Variante per hero / CTA forti */
.smc-btn--primary.is-on-hero {
  font-size: 16px;
  padding: 16px 36px;
  border-radius: 10px;
}

/* Disabilita underline e forzature tema */
a.smc-btn--primary,
a.smc-btn--primary:hover,
a.smc-btn--primary:focus {
  text-decoration: none !important;
  color: #fff !important;
}

/* ==========================================
   CTA SCURA ("Dark Power") — SMcore
   ========================================== */
.smc-cta-strong--dark {
  width: 100%;
  background: linear-gradient(180deg, var(--smc-dark-1), var(--smc-dark-2));
  color: var(--smc-ink);
  text-align: center;
  padding: clamp(48px, 7vw, 96px) 0;
  position: relative;
  overflow: hidden;
}

.smc-cta-strong--dark::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    800px 400px at 15% 0%,
    rgba(253, 119, 78, 0.18),
    transparent 70%
  );
  pointer-events: none;
  z-index: 0;
}

.smc-cta-strong--dark .smc-container {
  position: relative;
  z-index: 1;
}

.smc-cta-strong--dark h2 {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  color: var(--smc-ink);
  margin-bottom: 16px;
}

.smc-cta-strong--dark p {
  color: var(--smc-muted);
  font-size: clamp(16px, 2vw, 20px);
  margin-bottom: 28px;
}

.smc-cta-strong--dark .smc-hero__actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

/* ==========================================
   CTA CHIARA ("Light Trust") — SMcore
   ========================================== */
.smc-cta-strong--light {
  width: 100%;
  background: var(--smc-light-1);
  color: #1B2433;
  text-align: center;
  padding: clamp(48px, 7vw, 96px) 0;
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(15,22,33,.06);
  border-bottom: 1px solid rgba(15,22,33,.06);
}

.smc-cta-strong--light::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    1200px 480px at 10% 0%,
    rgba(255,58,45,.12),
    rgba(253,119,78,.08) 25%,
    transparent 60%
  );
  pointer-events: none;
  z-index: 0;
}

.smc-cta-strong--light .smc-container {
  position: relative;
  z-index: 1;
}

.smc-cta-strong--light h2 {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  color: #0F1621;
  margin-bottom: 16px;
}

.smc-cta-strong--light p {
  color: #445066;
  font-size: clamp(16px, 2vw, 20px);
  margin-bottom: 28px;
}

.smc-cta-strong--light .smc-hero__actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

/* opzionale: leggera ombra "plate" per far risaltare i bottoni */
.smc-cta-strong--light .smc-hero__actions--plate {
  background: linear-gradient(180deg, rgba(255,255,255,.7), rgba(255,255,255,.45));
  border: 1px solid rgba(15,22,33,.08);
  box-shadow: 0 8px 28px rgba(15,22,33,.08);
  border-radius: 20px;
  padding: 12px 16px;
}

/* ===== Componenti comuni pagine nuove ===== */
.smc-page{ padding: 32px 0; }
.smc-hero-mini{ text-align:center; margin-bottom: 16px; }
.smc-hero-mini h1{ margin: 0 0 6px; }
.smc-kbd{ font: 600 0.95rem/1 var(--font, ui-sans-serif); background:#0F1621; color:#fff; padding:2px 6px; border-radius:6px; }

/* Tabelle SLA */
.smc-table{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid rgba(255,255,255,.08); border-radius:12px; overflow:hidden; }
.smc-table th, .smc-table td{ padding:12px 14px; text-align:left; }
.smc-table thead th{ background: rgba(255,255,255,.06); font-weight:800; }
.smc-table tbody tr + tr td{ border-top:1px solid rgba(255,255,255,.06); }
.smc-badge{ display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:999px; font-weight:800; font-size:.85rem; }
.smc-badge--crit{ background:#330; color:#fdd; border:1px solid #f66; }
.smc-badge--high{ background:#332; color:#ffd; border:1px solid #fc6; }
.smc-badge--med{ background:#223; color:#def; border:1px solid #69f; }
.smc-badge--low{ background:#233; color:#cfe; border:1px solid #6c9; }

/* FAQ con <details> */
.smc-faq details{ background: var(--smc-dark-2,#1B2433); border:1px solid rgba(255,255,255,.08); border-radius:12px; padding:14px 16px; }
.smc-faq details + details{ margin-top:10px; }
.smc-faq summary{ cursor:pointer; font-weight:800; list-style:none; }
.smc-faq summary::-webkit-details-marker{ display:none; }
.smc-faq details[open]{ box-shadow: 0 6px 18px rgba(0,0,0,.18); }

/* Griglie carte risorse */
.smc-grid-cards{ display:grid; gap:18px; grid-template-columns: repeat(3,1fr); }
@media (max-width: 900px){ .smc-grid-cards{ grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px){ .smc-grid-cards{ grid-template-columns: 1fr; } }
.smc-card-doc{
  background: var(--smc-dark-2,#1B2433); border:1px solid rgba(255,255,255,.08); border-radius:12px;
  padding:16px; display:flex; flex-direction:column; gap:10px;
}
.smc-card-doc h3{ margin:0; font-size:1.05rem; }
.smc-card-doc .smc-meta{ font-size:.85rem; color:var(--smc-muted,#B8C0D0); }
.smc-card-doc .smc-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.smc-tag{ font-size:.75rem; padding:4px 8px; border-radius:999px; border:1px solid rgba(255,255,255,.12); color:var(--smc-ink,#EEF3FB); }

/* ===== Patch anti-sovrapposizione menu (sicuro) ===== */
.elementor-location-header{ position: relative; z-index: 1000; }
.smc-hero, .smc-cta-strong{ position: relative; z-index: 0; }
.smc-hero__content{ z-index: auto; } /* override soft */

/* ===== Fullpage: applicare ALLA SEZIONE, non al container ===== */
.smc-section--fullpage{
  /* usa svh per mobile, con fallback vh */
  min-height: calc(100svh - var(--smc-header-h) - var(--wp-admin--admin-bar--height, 0px));
  min-height: calc(100vh  - var(--smc-header-h) - var(--wp-admin--admin-bar--height, 0px));
  display:flex;
  align-items:center;     /* centra verticalmente i contenuti */
  justify-content:center; /* opzionale: centra orizzontalmente tutto il blocco */
}

/* il container rimane neutro (nessun background) */
.smc-container--fullpage{
  width:100%;
  max-width: var(--smc-maxw);
  margin-inline:auto;
  padding: clamp(32px, 6vw, 96px) 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
}

/* RIMUOVI questa parte che dava un background diverso al container
.smc-section--dark .smc-container--fullpage {
  background: linear-gradient(180deg, var(--smc-dark-1), var(--smc-dark-2));
  color: var(--smc-ink);
}
*//* End custom CSS */