/* Hallmark · macrostructure: Split Studio · theme: studied-DNA (source: lightinspiration.it) · tone: warm editorial-luxury · anchor hue: cyan · enrichment: client-owned hero photography · contrast: pass (40–41) · mobile: pass (34, 49, 50–57) */
/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V5 */
html,
body.li-professionals-page { overflow-x: clip; }

.li-professionals {
  --pro-ink: var(--ink);
  --pro-copy: var(--ink-soft);
  --pro-muted: var(--muted);
  --pro-rule: var(--rule);
  --pro-paper: var(--paper);
  --pro-paper-alt: var(--paper-soft);
  --pro-accent: var(--accent);
  --pro-accent-ink: var(--accent-ink);
  width: 100%;
  min-width: 0;
  color: var(--pro-ink);
  font-family: var(--font-body);
}

.li-professionals-page .li-entry-shell > .elementor-widget-theme-post-content,
.li-professionals-page .li-professionals-page-body,
.li-professionals-page .li-professionals-page-body > .elementor-element { width: 100% !important; max-width: none !important; }

/* La hero resta quella globale: si correggono soltanto titolo lungo e fuoco dell'immagine. */
.li-professionals-page .li-page-hero h1 {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: clamp(46px, 4.4vw, 64px);
  line-height: 1.02;
}

.li-professionals-page .li-page-hero figure img { object-position: 100% center; }
.li-professionals-page .li-page-hero .breadcrumb_last {
  display: inline-block;
  max-width: calc(100% - 64px);
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.li-professionals h2,
.li-professionals h3 {
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  overflow-wrap: anywhere;
  color: var(--pro-ink);
  font-style: normal;
}

.li-professionals h2 {
  font-family: var(--font-display);
  font-size: clamp(40px, 4.5vw, 68px);
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1;
}

.li-professionals h3 {
  font-family: var(--font-body);
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 650;
  letter-spacing: -.015em;
  line-height: 1.2;
}

.li-pro-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(48px, 8vw, 128px);
  align-items: start;
  padding-block: clamp(64px, 8vw, 112px);
}

.li-pro-opening { padding-block-start: 0; }
.li-pro-why { border-top: 1px solid var(--pro-rule); }

.li-pro-copy {
  max-width: 66ch;
  color: var(--pro-copy);
  font-size: 17px;
  line-height: 1.68;
}

.li-pro-copy--lead { font-size: clamp(19px, 1.55vw, 23px); line-height: 1.58; }
.li-pro-copy p { margin: 0 0 20px; }
.li-pro-copy p:last-child { margin-bottom: 0; }
.li-pro-copy ul,
.li-pro-activation ul { margin: 20px 0 0; padding: 0; list-style: none; }

.li-pro-copy li,
.li-pro-activation li {
  position: relative;
  margin: 0;
  padding: 14px 0 14px 28px;
  border-top: 1px solid var(--pro-rule);
}

.li-pro-copy li:last-child,
.li-pro-activation li:last-child { border-bottom: 1px solid var(--pro-rule); }
.li-pro-copy li::before,
.li-pro-activation li::before { position: absolute; inset-block-start: 21px; inset-inline-start: 0; width: 8px; height: 1px; background: var(--pro-accent); content: ""; }

.li-pro-benefits {
  padding-block: clamp(72px, 9vw, 128px);
  border-top: 1px solid var(--pro-rule);
}

.li-pro-benefits > h2 { max-width: 820px; margin-bottom: clamp(48px, 7vw, 96px) !important; }
.li-pro-benefits__list { border-top: 1px solid var(--pro-rule); }

.li-pro-benefit {
  display: grid;
  grid-template-columns: minmax(240px, .85fr) minmax(0, 1.65fr);
  gap: clamp(48px, 8vw, 128px);
  padding-block: clamp(40px, 5vw, 64px);
  border-bottom: 1px solid var(--pro-rule);
}

.li-pro-benefit:nth-child(even) h3 { grid-column: 2; }
.li-pro-benefit:nth-child(even) .li-pro-copy { grid-column: 1; grid-row: 1; }

.li-pro-environments {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(48px, 8vw, 128px);
  align-items: start;
  padding: clamp(48px, 6vw, 80px);
  background: var(--pro-paper-alt);
  color: var(--pro-ink);
}

.li-pro-environments p {
  max-width: 58ch;
  margin: 4px 0 0;
  color: var(--pro-copy);
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.72;
}

.li-pro-activation {
  display: grid;
  grid-template-columns: minmax(280px, .85fr) minmax(0, 1.15fr);
  gap: clamp(56px, 9vw, 144px);
  align-items: start;
  padding-block: clamp(88px, 10vw, 144px) 0;
}

.li-pro-activation__copy > p { margin: 28px 0 0; color: var(--pro-copy); font-size: 17px; line-height: 1.65; }
.li-pro-activation__copy ul { color: var(--pro-copy); font-size: 15px; line-height: 1.55; }
.li-pro-related { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--pro-rule); }
.li-pro-related p { margin: 0 0 12px; color: var(--pro-copy); font-size: 14px; }
.li-pro-related a { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; color: var(--pro-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; white-space: nowrap; }

.li-pro-activation__form { min-width: 0; }
.li-pro-activation__form .wpforms-container { margin: 0 !important; }
.li-pro-activation__form .wpforms-field { padding-block: 0 20px !important; }
.li-pro-activation__form .wpforms-field-label,
.li-pro-activation__form .wpforms-label-hide {
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
  color: var(--pro-ink) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
}

.li-pro-activation__form .wpforms-field-html { margin-bottom: 24px; padding-bottom: 24px !important; border-bottom: 1px solid var(--pro-rule); }
.li-pro-activation__form .wpforms-field-html p { margin: 0 !important; color: var(--pro-copy) !important; font-size: 14px !important; line-height: 1.65 !important; text-align: left !important; }
.li-pro-activation__form .wpforms-field-html img.emoji { display: none !important; }
.li-pro-activation__form .wpforms-field-html a { color: var(--pro-ink); font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }

.li-pro-activation__form :is(input[type="text"], input[type="email"], input[type="number"], textarea) {
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--pro-rule) !important;
  border-radius: 0 !important;
  outline: 2px solid transparent;
  outline-offset: 1px;
  background: transparent !important;
  color: var(--pro-ink) !important;
  font-family: var(--font-body) !important;
  font-size: 16px !important;
}

.li-pro-activation__form textarea { min-height: 144px !important; resize: vertical; }
.li-pro-activation__form :is(input, textarea):hover { background: var(--pro-paper-alt) !important; }
.li-pro-activation__form :is(input, textarea):focus-visible { outline-color: var(--pro-accent); }
.li-pro-activation__form :is(input, textarea):active { outline-color: var(--pro-accent); }
.li-pro-activation__form :is(input, textarea):disabled { opacity: .55; cursor: not-allowed; }
.li-pro-activation__form .wpforms-error { color: var(--pro-ink) !important; }
.li-pro-activation__form :is(input, textarea).wpforms-error { border-bottom-color: var(--pro-ink) !important; }
.li-pro-activation__form input[type="checkbox"] { accent-color: var(--pro-accent); }

.li-pro-activation__form button[type="submit"] {
  min-height: 48px !important;
  padding: 0 28px !important;
  border: 1px solid var(--pro-ink) !important;
  border-radius: 0 !important;
  background: var(--pro-ink) !important;
  color: var(--pro-paper) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap;
}

.li-pro-related a:focus-visible,
.li-pro-activation__form .wpforms-field-html a:focus-visible,
.li-pro-activation__form button[type="submit"]:focus-visible { outline: 2px solid var(--pro-accent); outline-offset: 3px; }
.li-pro-related a:active,
.li-pro-activation__form .wpforms-field-html a:active,
.li-pro-activation__form button[type="submit"]:active { transform: translateY(1px); }
.li-pro-activation__form button[type="submit"]:disabled { opacity: .55; cursor: not-allowed; }

@media (hover: hover) and (pointer: fine) {
  .li-pro-related a:hover { color: var(--pro-accent); }
  .li-pro-activation__form .wpforms-field-html a:hover { color: var(--pro-accent); }
  .li-pro-activation__form button[type="submit"]:hover { background: var(--pro-accent) !important; border-color: var(--pro-accent) !important; color: var(--pro-accent-ink) !important; }
}

@media (max-width: 59.99rem) {
  .li-pro-split,
  .li-pro-environments,
  .li-pro-activation { grid-template-columns: minmax(0, 1fr); }
  .li-pro-benefit { grid-template-columns: minmax(200px, .75fr) minmax(0, 1.25fr); gap: 48px; }
  .li-pro-why h2 { grid-row: 1; }
  .li-pro-why .li-pro-copy { grid-row: 2; }
}

@media (max-width: 39.99rem) {
  .li-pro-split { gap: 32px; }
  .li-pro-benefit { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .li-pro-benefit:nth-child(even) h3,
  .li-pro-benefit:nth-child(even) .li-pro-copy { grid-column: auto; grid-row: auto; }
  .li-pro-environments { padding: 40px 24px; }
  .li-pro-activation__form .wpforms-one-half { width: 100% !important; margin-left: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .li-professionals * { scroll-behavior: auto !important; }
  .li-pro-related a:active,
  .li-pro-activation__form .wpforms-field-html a:active,
  .li-pro-activation__form button[type="submit"]:active { transform: none; }
}

/* Elementor's .e-con.e-flex rules outrank the shared shortcode-era layout rules.
   Restore those editorial grids on the native-widget version of Area Professionisti. */
body.page-id-22038 .li-professionals { width:100%; min-width:0; }
body.page-id-22038 .li-professionals h2,
body.page-id-22038 .li-professionals h3 { min-width:0; margin:0 !important; padding:0 !important; overflow-wrap:anywhere; color:var(--pro-ink); }
body.page-id-22038 .li-professionals h2 { font-family:var(--font-display); font-size:clamp(40px,4.5vw,68px); font-weight:400; letter-spacing:-.03em; line-height:1; }
body.page-id-22038 .li-professionals h3 { font-family:var(--font-body); font-size:clamp(20px,2vw,28px); font-weight:650; letter-spacing:-.015em; line-height:1.2; }
body.page-id-22038 .li-professionals .li-pro-split,
body.page-id-22038 .li-professionals .li-pro-environments,
body.page-id-22038 .li-professionals .li-pro-benefit,
body.page-id-22038 .li-professionals .li-pro-activation {
  display:grid !important;
  min-width:0;
  align-items:start;
}
body.page-id-22038 .li-professionals .li-pro-split { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:clamp(48px,8vw,128px) !important; padding-block:clamp(64px,8vw,112px) !important; }
body.page-id-22038 .li-professionals .li-pro-opening { padding-block-start:0 !important; }
body.page-id-22038 .li-professionals .li-pro-why { border-top:1px solid var(--pro-rule); }
body.page-id-22038 .li-professionals .li-pro-benefits { display:block !important; padding-block:clamp(72px,9vw,128px) !important; border-top:1px solid var(--pro-rule); }
body.page-id-22038 .li-professionals .li-pro-benefits > .elementor-widget-heading { max-width:820px; margin-block-end:clamp(48px,7vw,96px) !important; }
body.page-id-22038 .li-professionals .li-pro-benefits__list { display:block !important; border-top:1px solid var(--pro-rule); }
body.page-id-22038 .li-professionals .li-pro-benefit { grid-template-columns:minmax(240px,.85fr) minmax(0,1.65fr) !important; gap:clamp(48px,8vw,128px) !important; padding-block:clamp(40px,5vw,64px) !important; border-bottom:1px solid var(--pro-rule); }
body.page-id-22038 .li-professionals .li-pro-benefit:nth-child(even) > .li-pro-benefit__title { grid-column:2; }
body.page-id-22038 .li-professionals .li-pro-benefit:nth-child(even) > .li-pro-copy { grid-column:1; grid-row:1; }
body.page-id-22038 .li-professionals .li-pro-environments { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:clamp(48px,8vw,128px) !important; padding:clamp(48px,6vw,80px) !important; background:var(--pro-paper-alt) !important; }
body.page-id-22038 .li-professionals .li-pro-activation { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) !important; gap:clamp(56px,9vw,144px) !important; padding-block:clamp(88px,10vw,144px) 0 !important; }
body.page-id-22038 .li-professionals .li-pro-copy { max-width:66ch; color:var(--pro-copy); font-size:17px; line-height:1.68; }
body.page-id-22038 .li-professionals .li-pro-copy--lead { font-size:clamp(19px,1.55vw,23px); line-height:1.58; }
body.page-id-22038 .li-professionals .li-pro-copy p { margin:0 0 20px; }
body.page-id-22038 .li-professionals .li-pro-copy p:last-child { margin-bottom:0; }
body.page-id-22038 .li-professionals .li-pro-activation__copy .elementor-widget-text-editor p:first-of-type { margin:28px 0 0; color:var(--pro-copy); font-size:17px; line-height:1.65; }

@media (max-width:959px) {
  body.page-id-22038 .li-professionals .li-pro-split,
  body.page-id-22038 .li-professionals .li-pro-environments,
  body.page-id-22038 .li-professionals .li-pro-activation { grid-template-columns:minmax(0,1fr) !important; }
  body.page-id-22038 .li-professionals .li-pro-split { gap:32px !important; padding-block:64px !important; }
  body.page-id-22038 .li-professionals .li-pro-opening { padding-block-start:0 !important; }
  body.page-id-22038 .li-professionals .li-pro-why > .li-pro-why__title { grid-row:1; }
  body.page-id-22038 .li-professionals .li-pro-why > .li-pro-copy { grid-row:2; }
  body.page-id-22038 .li-professionals .li-pro-environments { padding:40px 24px !important; gap:24px !important; }
  body.page-id-22038 .li-professionals .li-pro-activation { gap:48px !important; padding-block:64px 0 !important; }
}

@media (max-width:639px) {
  body.page-id-22038 .li-professionals .li-pro-benefit { grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
  body.page-id-22038 .li-professionals .li-pro-benefit:nth-child(even) > .li-pro-benefit__title,
  body.page-id-22038 .li-professionals .li-pro-benefit:nth-child(even) > .li-pro-copy { grid-column:auto; grid-row:auto; }
}
