/* Reusable editorial layout, first applied to Come lavoriamo. */
body:is(.pl-method-page,.pl-pharmacy-page,.pl-product-page,.pl-about-page,.pl-integrations-page) { background:#f7f9fc; }
body:is(.pl-method-page,.pl-pharmacy-page,.pl-product-page,.pl-about-page,.pl-integrations-page) main#site-content { width:100%; max-width:none; margin:0; padding:0; }
#site-content .pl-editorial {
 --pl-navy:#081a30; --pl-muted:#45566e; --pl-ice:#f7f9fc; --pl-border:#dde4ee;
 display:flex; flex-direction:column; width:100%; max-width:none; margin:0; padding:0; gap:0; font-family:'Source Sans 3',sans-serif;
}
#site-content .pl-editorial > .e-con-inner { width:100%; max-width:none; padding:0; gap:0; }
#site-content .pl-editorial :is(.pl-method-section,.pl-editorial-section) { width:100%; max-width:none; margin:0; padding:88px 32px; background:#fff; }
#site-content .pl-editorial :is(.pl-method-section,.pl-editorial-section) > .e-con-inner { width:100%; max-width:1200px; margin-inline:auto; padding:0; gap:24px; }
#site-content .pl-editorial .elementor-widget-heading .elementor-heading-title {
 font-family:'Source Sans 3',sans-serif; color:var(--pl-navy); font-weight:600; letter-spacing:-.025em; line-height:1.15;
 text-align:left; text-transform:none; text-shadow:none; animation:none;
}
#site-content .pl-editorial h1.elementor-heading-title { font-size:clamp(40px,4.5vw,64px); line-height:1.08; }
#site-content .pl-editorial h2.elementor-heading-title { font-size:clamp(32px,3.4vw,48px); }
#site-content .pl-editorial :is(.elementor-widget-text-editor,.elementor-icon-list-text,.elementor-icon-box-description) { color:var(--pl-muted); font-family:'Source Sans 3',sans-serif; font-size:19px; line-height:1.65; text-align:left; }
#site-content .pl-editorial .elementor-widget-text-editor p { margin:0 0 18px; color:inherit; }
#site-content .pl-editorial .elementor-widget-text-editor p:last-child { margin-bottom:0; }
#site-content .pl-editorial :is(.elementor-widget-text-editor,.elementor-icon-list-text) a { color:#5530bf; text-decoration:underline; text-underline-offset:3px; }
#site-content .pl-editorial :is(.elementor-widget-text-editor,.elementor-icon-list-text) a:focus-visible { outline:3px solid #6d47ff; outline-offset:3px; }
#site-content .pl-editorial .elementor-icon-list-text a { display:inline; width:auto; }
#site-content .pl-editorial :is(.pl-method-intro,.pl-method-closing,.pl-product-intro,.pl-product-closing,.pl-integrations-intro,.pl-integrations-closing) :is(.elementor-widget-text-editor,.elementor-icon-list-text) a { color:#bcaaff; }
#site-content .pl-editorial :is(b,strong) { font-weight:600; color:inherit; }
#site-content .pl-editorial :is(.elementor-widget-spacer,.elementor-widget-divider) { display:none; }
#site-content .pl-editorial .pl-method-intro { background:var(--pl-navy); padding-top:152px; }
#site-content .pl-editorial .pl-method-intro > .e-con-inner { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr); gap:32px 72px; align-items:start; }
#site-content .pl-editorial .pl-method-intro .elementor-widget-heading { grid-column:1; grid-row:1; }
#site-content .pl-editorial .pl-method-intro .elementor-heading-title { color:#f7f9fc; }
#site-content .pl-editorial .pl-method-intro .elementor-widget-text-editor { grid-column:2; grid-row:1 / span 2; color:#c3d1e2; font-size:21px; }
#site-content .pl-editorial .pl-method-intro .elementor-widget-shortcode { grid-column:1; grid-row:2; max-width:380px; }
#site-content .pl-editorial .pl-method-intro .pl-application-visual { background:transparent; }
#site-content .pl-editorial .pl-method-principles { background:var(--pl-ice); }
#site-content .pl-editorial .pl-method-principles > .e-con-inner > :is(.elementor-widget-heading,.elementor-widget-text-editor) { max-width:850px; }
#site-content .pl-editorial .pl-method-principles .elementor-icon-list-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:12px 0; }
#site-content .pl-editorial .pl-method-principles .elementor-icon-list-item { display:block; margin:0; padding:24px; border:1px solid var(--pl-border); border-radius:16px; background:#fff; }
#site-content .pl-editorial .pl-method-principles .elementor-icon-list-icon { display:none; }
#site-content .pl-editorial .pl-method-principles .elementor-icon-list-text { padding:0; }
#site-content .pl-editorial .pl-method-principles .elementor-icon-list-text b { display:block; margin-bottom:12px; color:var(--pl-navy); font-size:24px; line-height:1.25; }
#site-content .pl-editorial .pl-method-step-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:16px; }
#site-content .pl-editorial .pl-method-step-list > .elementor-widget-container { grid-column:1 / -1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
#site-content .pl-editorial .pl-method-step-list p {
 position:relative; margin:0; padding:28px 28px 28px 44px; border:1px solid var(--pl-border); border-radius:16px; background:var(--pl-ice);
 transition:border-color 180ms ease;
}
#site-content .pl-editorial .pl-method-step-list p::before { content:''; position:absolute; left:20px; top:35px; width:8px; height:8px; border-radius:2px; background:#8c6eff; }
#site-content .pl-editorial .pl-method-step-list p:hover { border-color:#8c6eff; }
#site-content .pl-editorial .pl-method-step-list p strong { display:block; color:var(--pl-navy); font-size:24px; line-height:1.25; margin-bottom:16px; }
#site-content .pl-editorial .pl-method-step-list p strong br { display:none; }
#site-content .pl-editorial .pl-method-step-list p > b:has(> br) { display:none; }
#site-content .pl-editorial .pl-method-solutions { background:var(--pl-ice); }
#site-content .pl-editorial .pl-method-solutions > .e-con-inner > :is(.elementor-widget-heading,.elementor-widget-text-editor) { max-width:850px; }
#site-content .pl-editorial .pl-method-ready-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:0; border:1px solid var(--pl-border); border-radius:16px; background:#fff; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-widget-icon-box { width:100%; min-width:0; max-width:none; padding:24px; border:0; border-radius:0; background:none; box-shadow:none; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-widget-icon-box + .elementor-widget-icon-box { border-inline-start:1px solid var(--pl-border); }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-wrapper { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:16px; text-align:left; padding:0; background:none; border:0; box-shadow:none; transform:none; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-icon { margin:0; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-content { min-width:0; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-description { margin:0; color:var(--pl-navy); font-size:20px; font-weight:600; line-height:1.4; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon { display:inline-grid; place-items:center; width:40px; height:40px; color:#6d47ff; fill:#6d47ff; background:#f4f0ff; box-shadow:none; border:0; border-radius:8px; padding:0; font-size:18px; }
#site-content .pl-editorial .pl-method-ready-grid .elementor-icon svg { width:18px; height:18px; fill:currentColor; }
#site-content .pl-editorial .pl-method-pharmacy-shell { padding:0; margin-top:16px; }
#site-content .pl-editorial .pl-method-pharmacy { display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:32px; width:100%; max-width:none; padding:32px; border:1px solid var(--pl-border); border-radius:16px; background:#fff; box-shadow:none; }
#site-content .pl-editorial .pl-method-pharmacy .elementor-widget-text-editor { max-width:640px; }
#site-content .pl-editorial .pl-method-pharmacy .elementor-widget-button { flex-shrink:0; }
#site-content .pl-editorial .pl-method-outcomes > .e-con-inner { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr); gap:24px 72px; }
#site-content .pl-editorial .pl-method-outcomes .elementor-widget-heading { grid-column:1; grid-row:1; }
#site-content .pl-editorial .pl-method-outcomes .elementor-widget-text-editor { grid-column:1; grid-row:2; }
#site-content .pl-editorial .pl-method-outcomes .elementor-widget-icon-list { grid-column:2; grid-row:1 / span 2; }
#site-content .pl-editorial .pl-method-outcomes .elementor-icon-list-item { margin:0; padding:16px 0; border-bottom:1px solid var(--pl-border); align-items:flex-start; }
#site-content .pl-editorial .pl-method-outcomes .elementor-icon-list-icon { padding-top:7px; }
#site-content .pl-editorial .pl-method-outcomes .elementor-icon-list-icon svg { fill:#6d47ff; width:12px; }
#site-content .pl-editorial .pl-method-closing { background:var(--pl-navy); }
#site-content .pl-editorial .pl-method-closing-layout { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr); gap:24px 72px; padding:0; background:none; border:0; box-shadow:none; width:100%; max-width:none; }
#site-content .pl-editorial .pl-method-closing .elementor-widget-heading { grid-column:1; grid-row:1 / span 2; }
#site-content .pl-editorial .pl-method-closing .elementor-heading-title { color:#f7f9fc; }
#site-content .pl-editorial .pl-method-closing .elementor-widget-text-editor { grid-column:2; grid-row:1; color:#c3d1e2; }
#site-content .pl-editorial .pl-method-closing .elementor-widget-button { grid-column:2; grid-row:2; }
#site-content .pl-editorial .elementor-widget-button { text-align:left; }
#site-content .pl-editorial .elementor-button {
 display:inline-flex; align-items:center; justify-content:center; min-height:46px; max-width:100%; margin:0; padding:12px 18px !important;
 border:1px solid #6d47ff !important; border-radius:8px !important; background:#6d47ff !important; color:#fff !important;
 font-family:'Source Sans 3',sans-serif; font-size:17px !important; font-weight:600 !important; line-height:1.25; letter-spacing:0 !important; text-transform:none; box-shadow:none;
 transition:background-color 180ms ease;
}
#site-content .pl-editorial .elementor-button:hover { background:#5b35ed !important; border-color:#5b35ed !important; transform:none; box-shadow:none; }
#site-content .pl-editorial .elementor-button:focus-visible { outline:3px solid #8c6eff; outline-offset:4px; }
@media(max-width:1000px) {
 #site-content .pl-editorial :is(.pl-method-intro,.pl-method-outcomes) > .e-con-inner,#site-content .pl-editorial .pl-method-closing-layout { gap:24px 40px; }
 #site-content .pl-editorial .pl-method-pharmacy { flex-direction:column; align-items:flex-start; }
}
@media(max-width:800px) {
 #site-content .pl-editorial :is(.pl-method-section,.pl-editorial-section) { padding:64px 24px; }
 #site-content .pl-editorial .pl-method-intro { padding-top:128px; }
 #site-content .pl-editorial :is(.pl-method-intro,.pl-method-outcomes) > .e-con-inner,#site-content .pl-editorial .pl-method-closing-layout { display:flex; flex-direction:column; gap:24px; }
 #site-content .pl-editorial .pl-method-intro .elementor-widget-shortcode { width:100%; order:3; }
 #site-content .pl-editorial :is(.pl-method-principles .elementor-icon-list-items,.pl-method-step-list,.pl-method-step-list > .elementor-widget-container) { grid-template-columns:1fr; }
 #site-content .pl-editorial .pl-method-step-list p { padding:24px 24px 24px 40px; }
 #site-content .pl-editorial .pl-method-step-list p::before { left:16px; top:31px; }
 #site-content .pl-editorial .pl-method-pharmacy { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { #site-content .pl-editorial :is(.elementor-button,.pl-method-step-list p) { transition:none; } }

@media(max-width:900px) {
 #site-content .pl-editorial .pl-method-ready-grid { grid-template-columns:1fr; }
 #site-content .pl-editorial .pl-method-ready-grid .elementor-widget-icon-box { padding:20px 24px; }
 #site-content .pl-editorial .pl-method-ready-grid .elementor-widget-icon-box + .elementor-widget-icon-box { border-inline-start:0; border-block-start:1px solid var(--pl-border); }
}
@media(max-width:600px) {
 #site-content .pl-editorial .pl-method-ready-grid .elementor-widget-icon-box { padding:18px; }
 #site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-wrapper { gap:14px; }
 #site-content .pl-editorial .pl-method-ready-grid .elementor-icon-box-description { font-size:19px; }
}

#site-content .pl-editorial .pl-method-intro .pl-diagram-guides { color:#263b53; }
#site-content .pl-editorial .pl-method-intro .pl-diagram-model { fill:#142c45; }

/* Method page rhythm follows the homepage without changing other editorial pages. */
body.pl-method-page #site-content .pl-editorial { --pl-method-section-space:80px; }
body.pl-method-page #site-content .pl-editorial .pl-method-section { padding-block:var(--pl-method-section-space); }
body.pl-method-page #site-content .pl-editorial .pl-method-intro { padding-top:136px; }
body.pl-method-page #site-content .pl-editorial .pl-method-outcomes > .e-con-inner {
 grid-template-rows:max-content 1fr; align-items:start;
}
body.pl-method-page #site-content .pl-editorial .pl-method-closing-layout { align-items:start; }
@media(max-width:800px) {
 body.pl-method-page #site-content .pl-editorial { --pl-method-section-space:64px; }
 body.pl-method-page #site-content .pl-editorial .pl-method-intro { padding-top:128px; }
}
@media(min-width:601px) and (max-width:800px) {
 body.pl-method-page #site-content .pl-editorial :is(.pl-method-step-list,.pl-method-step-list > .elementor-widget-container) {
  grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px;
 }
}
@media(max-width:600px) {
 body.pl-method-page #site-content .pl-editorial { --pl-method-section-space:56px; }
 body.pl-method-page #site-content .pl-editorial .pl-method-intro { padding-top:112px; }
}
