.sst-services .sst-service-card{display:flex;flex-direction:column}.sst-services .sst-service-card .sst-merch-tile-img{height:230px}.sst-services .sst-service-card .sst-merch-tile-img img{object-fit:contain;padding:12px}.sst-services .sst-service-body{display:flex;flex:1;flex-direction:column;padding:0 22px 24px}.sst-services .sst-service-body h3{padding:0;margin:18px 0 12px}.sst-services .sst-service-body p{font-size:15px;color:#4c5d74;line-height:1.55;flex:1;margin-bottom:22px}.sst-services .sst-service-body .sst-merch-btn{align-self:flex-start}.sst-services .sst-merch-center .sst-merch-kicker{color:#d58c09}.sst-services .sst-merch-center p{max-width:720px;margin:0 auto}.sst-services .sst-merch-hero .sst-merch-visual{background:#0b2343}.sst-services .sst-merch-hero .sst-merch-visual img{height:360px;object-fit:cover}@media(max-width:780px){.sst-services .sst-service-card .sst-merch-tile-img{height:160px}.sst-services .sst-service-body{padding:0 14px 18px}.sst-services .sst-service-body p{font-size:14px}.sst-services .sst-service-body .sst-merch-btn{padding:10px 12px;font-size:13px}}@media(max-width:520px){.sst-services .sst-merch-grid{grid-template-columns:1fr}.sst-services .sst-service-card .sst-merch-tile-img{height:210px}}

/* v1.5.10: layout compatto, immagini uniformi, singola cornice del form. */
.sst-services .sst-merch-section{padding-top:56px;padding-bottom:56px}
.sst-services .sst-merch-center{margin-bottom:26px}
.sst-services .sst-merch-grid{margin-bottom:0;gap:20px}
.sst-services .sst-service-card .sst-merch-tile-img{height:215px;display:flex;align-items:center;justify-content:center;background:#edf2f8;padding:16px}
.sst-services .sst-service-card .sst-merch-tile-img img{width:100%;height:100%;max-width:100%;object-fit:contain;padding:0;display:block}
.sst-services .sst-merch-form{max-width:850px}
.sst-services .sst-merch-form-inner{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;text-align:left}
.sst-services .sst-merch-form-inner .sslm-wrap{max-width:800px;margin:22px auto 0;padding:clamp(22px,3.2vw,42px);border:1px solid #dae4f0;box-shadow:0 12px 36px rgba(16,35,62,.07)}
.sst-services .sst-merch-form-inner .sslm-intro{margin-bottom:22px}
.sst-services .sst-merch-form-inner .sslm-intro p{display:none}
.sst-services .sst-merch-form-inner .sslm-intro h2{font-size:clamp(25px,2.5vw,34px)}
@media(max-width:780px){.sst-services .sst-merch-section{padding-top:38px;padding-bottom:38px}.sst-services .sst-service-card .sst-merch-tile-img{height:165px;padding:12px}.sst-services .sst-merch-form-inner .sslm-wrap{margin-top:18px}}
@media(max-width:520px){.sst-services .sst-service-card .sst-merch-tile-img{height:205px}.sst-services .sst-merch-form-inner .sslm-wrap{padding:20px 14px}}

/* v1.5.12 – native Gutenberg content; existing PHP layout remains available before conversion. */
.sst-services-blocks .sst-gb-hero{background:linear-gradient(115deg,#091e37,#173d69);color:#fff;padding:clamp(38px,6vw,85px) max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.sst-services-blocks .sst-gb-hero h1{color:#fff;font-size:clamp(36px,4vw,66px);line-height:1.12;margin:14px 0 24px}
.sst-services-blocks .sst-gb-hero p{color:#fff;font-size:17px;line-height:1.7}
.sst-services-blocks .sst-gb-hero>.wp-block-image{grid-column:2;grid-row:1/5;margin:0}
.sst-services-blocks .sst-gb-hero>.wp-block-image img{width:100%;height:380px;object-fit:cover;border-radius:22px}
.sst-services-blocks .sst-gb-kicker{font-size:12px!important;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#d99010!important}
.sst-services-blocks .sst-gb-hero>.sst-gb-kicker{grid-column:1}
.sst-services-blocks .sst-gb-hero>.wp-block-heading,.sst-services-blocks .sst-gb-hero>.wp-block-buttons,.sst-services-blocks .sst-gb-hero>p:not(.sst-gb-kicker){grid-column:1}
.sst-services-blocks .sst-gb-services{background:#f1f5fb;padding:60px max(24px,calc((100vw - 1240px)/2))}
.sst-services-blocks .sst-gb-intro{text-align:center;margin-bottom:30px}
.sst-services-blocks .sst-gb-intro h2,.sst-services-blocks .sst-gb-form h2{font-size:clamp(28px,3vw,40px);color:#09294d;margin:8px 0 18px}
.sst-services-blocks .sst-gb-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sst-services-blocks .sst-gb-card{background:#fff;border:1px solid #dce5f1;border-radius:16px;padding:26px;display:flex;flex-direction:column;align-items:flex-start}
.sst-services-blocks .sst-gb-card .wp-block-image{width:100%;height:220px;background:#eaf0f8;display:flex;align-items:center;justify-content:center;margin:0 0 20px}
.sst-services-blocks .sst-gb-card .wp-block-image img{width:100%;height:100%;object-fit:contain;padding:12px}
.sst-services-blocks .sst-gb-card h3{font-size:21px;color:#09294d;margin:0 0 14px}
.sst-services-blocks .sst-gb-card>p{flex:1;color:#435773;line-height:1.65}
.sst-services-blocks .wp-block-button__link{background:#0967e9;color:#fff;border-radius:8px;font-size:15px;font-weight:700;padding:14px 22px;text-decoration:none}
.sst-services-blocks .sst-gb-objective{padding:60px max(24px,calc((100vw - 1240px)/2))}
.sst-services-blocks .sst-gb-objective .wp-block-columns{align-items:center;gap:40px}
.sst-services-blocks .sst-gb-objective h2{color:#09294d;font-size:36px}
.sst-services-blocks .sst-gb-objective .wp-block-image img{border-radius:18px}
.sst-services-blocks .sst-gb-form{background:#f1f5fb;text-align:center;padding:60px 24px}
.sst-services-blocks .sst-gb-form>.wp-block-shortcode{max-width:850px;margin:25px auto 0;text-align:left}
.sst-services-blocks .sst-gb-form .sslm-wrap{max-width:800px;margin:0 auto;padding:clamp(22px,3vw,42px);border:1px solid #dae4f0;border-radius:18px;background:#fff}
@media(max-width:850px){.sst-services-blocks .sst-gb-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sst-services-blocks .sst-gb-hero{grid-template-columns:1fr}.sst-services-blocks .sst-gb-hero>.wp-block-image{grid-column:1;grid-row:auto}.sst-services-blocks .sst-gb-hero>.wp-block-image img{height:auto;max-height:350px}}
@media(max-width:600px){.sst-services-blocks .sst-gb-cards{grid-template-columns:1fr}.sst-services-blocks .sst-gb-card .wp-block-image{height:210px}.sst-services-blocks .sst-gb-services,.sst-services-blocks .sst-gb-objective,.sst-services-blocks .sst-gb-form{padding-top:38px;padding-bottom:38px}}

/* v1.6.1: maintain stable block appearance, avoid theme-wide content overrides */
.sst-services-blocks{width:100%;max-width:none;overflow:hidden}
.sst-services-blocks>.wp-block-group{margin-block:0}
.sst-services-blocks .sst-gb-card .wp-block-buttons{margin-top:auto}
.sst-services-blocks .sst-gb-hero .wp-block-buttons{align-self:start}
.sst-services-blocks .sst-gb-card .wp-block-heading{font-weight:750;line-height:1.3}
.sst-services-blocks .sst-gb-form .wp-block-shortcode{width:100%}
@media(max-width:600px){.sst-services-blocks .sst-gb-hero{padding-inline:20px}.sst-services-blocks .sst-gb-card{padding:18px}}


/* v1.6.2 — Gutenberg layout compatibility for restored legacy page blocks.
   Scope: only the dedicated services template, never WooCommerce or other pages. */
.sst-services-blocks{display:block;max-width:none!important;width:100%;overflow:visible}
.sst-services-blocks>.wp-block-cover{min-height:430px;padding:clamp(50px,7vw,100px) max(24px,calc((100vw - 1240px)/2));box-sizing:border-box}
.sst-services-blocks>.wp-block-cover .wp-block-cover__inner-container{max-width:1240px;margin-inline:auto}
.sst-services-blocks>.wp-block-cover h1,.sst-services-blocks>.wp-block-cover h2{color:#fff;font-size:clamp(36px,4.4vw,60px);line-height:1.12;max-width:820px}
.sst-services-blocks>.wp-block-cover p{color:#fff;max-width:850px;line-height:1.65}
.sst-services-blocks>.wp-block-group:not(.sst-gb-hero):not(.sst-gb-services):not(.sst-gb-objective):not(.sst-gb-form){box-sizing:border-box}
/* Legacy Gutenberg three-column services grid (restored from revisions). */
.sst-services-blocks>.wp-block-columns,
.sst-services-blocks>.wp-block-group>.wp-block-columns{max-width:1240px;margin:0 auto;padding:30px 20px 56px;gap:20px;align-items:stretch}
.sst-services-blocks>.wp-block-columns>.wp-block-column,
.sst-services-blocks>.wp-block-group>.wp-block-columns>.wp-block-column{min-width:0;background:#fff;border:1px solid #dce5f1;border-radius:17px;padding:26px 25px;box-shadow:0 10px 30px rgba(15,40,75,.045);display:flex;flex-direction:column;box-sizing:border-box}
.sst-services-blocks>.wp-block-columns>.wp-block-column>.wp-block-group,
.sst-services-blocks>.wp-block-group>.wp-block-columns>.wp-block-column>.wp-block-group{display:flex;flex-direction:column;flex:1;min-width:0}
.sst-services-blocks>.wp-block-columns .wp-block-column .wp-block-image,
.sst-services-blocks>.wp-block-group>.wp-block-columns .wp-block-column .wp-block-image{background:#edf2f8;margin:0 0 20px;min-height:190px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.sst-services-blocks>.wp-block-columns .wp-block-column .wp-block-image img,
.sst-services-blocks>.wp-block-group>.wp-block-columns .wp-block-column .wp-block-image img{width:100%;height:215px;object-fit:contain;display:block}
.sst-services-blocks>.wp-block-columns .wp-block-column h3,
.sst-services-blocks>.wp-block-group>.wp-block-columns .wp-block-column h3{font-size:21px;line-height:1.3;color:#0b284d;margin:0 0 12px;font-weight:750}
.sst-services-blocks>.wp-block-columns .wp-block-column p,
.sst-services-blocks>.wp-block-group>.wp-block-columns .wp-block-column p{font-size:15px;line-height:1.6;color:#485d78}
.sst-services-blocks>.wp-block-columns .wp-block-column .wp-block-buttons,
.sst-services-blocks>.wp-block-group>.wp-block-columns .wp-block-column .wp-block-buttons{margin-top:auto;padding-top:16px}
.sst-services-blocks .wp-block-button__link{background:#0869e9;color:#fff;border-radius:8px;font-weight:700;font-size:15px;padding:13px 22px;text-decoration:none}
/* Newer sst-gb-* conversion blocks: styles work without requiring a wrapper around the groups. */
.sst-services-blocks .sst-gb-hero{background:linear-gradient(115deg,#091e37,#173d69);color:#fff;padding:clamp(38px,6vw,85px) max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.sst-services-blocks .sst-gb-services{background:#f1f5fb;padding:60px max(24px,calc((100vw - 1240px)/2))}
.sst-services-blocks .sst-gb-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sst-services-blocks .sst-gb-card{background:#fff;border:1px solid #dce5f1;border-radius:16px;padding:26px;display:flex;flex-direction:column;align-items:flex-start}
.sst-services-blocks .sst-gb-card .wp-block-image{width:100%;height:220px;background:#eaf0f8;display:flex;align-items:center;justify-content:center;margin:0 0 20px}
.sst-services-blocks .sst-gb-card .wp-block-image img{width:100%;height:100%;object-fit:contain;padding:12px}
.sst-services-blocks .sst-gb-card .wp-block-buttons{margin-top:auto}
@media(max-width:900px){.sst-services-blocks>.wp-block-columns,.sst-services-blocks>.wp-block-group>.wp-block-columns{flex-wrap:wrap}.sst-services-blocks>.wp-block-columns>.wp-block-column,.sst-services-blocks>.wp-block-group>.wp-block-columns>.wp-block-column{flex-basis:calc(50% - 12px)!important;flex-grow:1}.sst-services-blocks .sst-gb-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.sst-services-blocks>.wp-block-columns,.sst-services-blocks>.wp-block-group>.wp-block-columns{padding:22px 16px 38px;display:flex;flex-direction:column}.sst-services-blocks>.wp-block-columns>.wp-block-column,.sst-services-blocks>.wp-block-group>.wp-block-columns>.wp-block-column{flex-basis:auto!important;width:100%;padding:18px}.sst-services-blocks .sst-gb-cards{grid-template-columns:1fr}.sst-services-blocks .sst-gb-hero{grid-template-columns:1fr}}

/* v1.6.3 — introductory heading above the services grid.
   Only styles the heading/description, leaving editable Gutenberg markup intact. */
.sst-services-blocks > .wp-block-heading,
.sst-services-blocks > p:not(.has-background),
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > .wp-block-heading,
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > p {
  text-align:center;
  max-width:850px;
  margin-left:auto;
  margin-right:auto;
}
.sst-services-blocks > .wp-block-heading,
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > .wp-block-heading {
  color:#102b4e;
  font-size:clamp(29px,3.2vw,44px);
  font-weight:800;
  line-height:1.18;
  margin-top:0;
  margin-bottom:16px;
}
.sst-services-blocks > p:not(.has-background),
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > p {
  color:#485d78;
  font-size:clamp(16px,1.35vw,19px);
  line-height:1.65;
  margin-top:0;
  margin-bottom:0;
}
/* Legacy Gutenberg: the introduction group immediately precedes the card columns. */
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):has(+ .wp-block-columns),
.sst-services-blocks > .wp-block-group:has(> .wp-block-heading):has(> .wp-block-columns) {
  padding:48px 24px 26px;
  background:#f1f5fb;
  box-sizing:border-box;
}
.sst-services-blocks > .wp-block-cover + .wp-block-group:has(> .wp-block-heading) {
  padding:48px 24px 26px;
  background:#f1f5fb;
}
/* If title and subtitle are direct siblings rather than grouped. */
.sst-services-blocks > .wp-block-cover ~ .wp-block-heading {padding:44px 20px 0;background:#f1f5fb;margin-bottom:0}
.sst-services-blocks > .wp-block-heading + p {padding:12px 20px 26px;background:#f1f5fb}
@media(max-width:620px){
 .sst-services-blocks > .wp-block-group:has(> .wp-block-heading):has(+ .wp-block-columns),
 .sst-services-blocks > .wp-block-cover + .wp-block-group:has(> .wp-block-heading){padding:34px 18px 18px}
}


/* v1.6.4 — legacy Gutenberg introduction: the first Group immediately after
   the hero Cover contains nested title/description blocks in restored revisions.
   Target the actual Group rather than assuming headings are direct children. */
.sst-services-blocks > .wp-block-cover + .wp-block-group:not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) {
  background:#f1f5fb;
  padding:clamp(34px,4vw,58px) 24px 26px;
  margin:0;
  text-align:center;
  box-sizing:border-box;
}
.sst-services-blocks > .wp-block-cover + .wp-block-group:not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) :is(h2.wp-block-heading,h2,h3.wp-block-heading) {
  text-align:center;
  max-width:900px;
  margin:0 auto 14px;
  color:#102b4e;
  font-size:clamp(30px,3.2vw,44px);
  line-height:1.2;
  font-weight:800;
}
.sst-services-blocks > .wp-block-cover + .wp-block-group:not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > :is(p,.wp-block-paragraph),
.sst-services-blocks > .wp-block-cover + .wp-block-group:not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form) > .wp-block-group > p {
  text-align:center;
  max-width:820px;
  margin:0 auto;
  color:#485d78;
  font-size:clamp(16px,1.3vw,19px);
  line-height:1.65;
}
/* Some restored revisions store the intro as a separate Group after another Group. */
.sst-services-blocks > .wp-block-cover + .wp-block-group + .wp-block-group:has(> .wp-block-heading):not(:has(.wp-block-columns)) {
  text-align:center;
  background:#f1f5fb;
  padding:38px 24px 24px;
}
.sst-services-blocks > .wp-block-cover + .wp-block-group + .wp-block-group:has(> .wp-block-heading):not(:has(.wp-block-columns)) > :is(.wp-block-heading,p) {
  text-align:center;
  max-width:850px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:620px){
  .sst-services-blocks > .wp-block-cover + .wp-block-group:not(.sst-gb-hero):not(.sst-gb-objective):not(.sst-gb-form){padding:32px 18px 20px}
}


/* v1.6.5 — User-controlled card spacing. Only the Services Gutenberg template. */
.sst-services-blocks{--sst-space-cols:24px;--sst-space-rows:24px;--sst-space-inner:20px}
.sst-services-blocks>.wp-block-columns,
.sst-services-blocks>.wp-block-group>.wp-block-columns{column-gap:var(--sst-space-cols)!important;row-gap:var(--sst-space-rows)!important;padding-bottom:0!important}
.sst-services-blocks>.wp-block-columns+.wp-block-columns,
.sst-services-blocks>.wp-block-group>.wp-block-columns+.wp-block-columns{margin-top:var(--sst-space-rows)!important}
.sst-services-blocks>.wp-block-columns>.wp-block-column,
.sst-services-blocks>.wp-block-group>.wp-block-columns>.wp-block-column{padding:var(--sst-space-inner)!important}
.sst-services-blocks .sst-gb-cards{column-gap:var(--sst-space-cols)!important;row-gap:var(--sst-space-rows)!important}
.sst-services-blocks .sst-gb-card{padding:var(--sst-space-inner)!important}
@media(max-width:620px){.sst-services-blocks>.wp-block-columns,.sst-services-blocks>.wp-block-group>.wp-block-columns{padding-bottom:0!important}}
