
:root{--eresa-khaki:#7A6F3E;--eresa-charcoal:#111111;--eresa-grey:#2D3338;--eresa-silver:#A7A9AC;--eresa-light:#F8F8F6;--eresa-cream:#F1F0EB;}
.eresa-service-page, .eresa-service-page *{box-sizing:border-box}
.eresa-service-page{font-family:Raleway,'Segoe UI',Arial,sans-serif;color:#2D3338;font-size:17px;line-height:1.65;overflow:hidden;max-width:none!important;width:100%;letter-spacing:0;background:white}
.eresa-service-page h1,.eresa-service-page h2,.eresa-service-page h3,.eresa-service-page h4,.eresa-service-page p,.eresa-service-page figure{margin:0}
.eresa-service-page h1,.eresa-service-page h2,.eresa-service-page h3{font-family:Raleway,'Segoe UI',Arial,sans-serif;line-height:1.12;font-weight:750;letter-spacing:-.025em;color:var(--eresa-charcoal)}
.eresa-service-page a{text-decoration:none;transition:all .18s ease}
.eresa-service-page .eresa-section{padding:88px max(26px,calc((100vw - 1300px)/2));width:100%;max-width:none!important;margin:0!important}
.eresa-service-page .eresa-section.eresa-white{background:#fff}
.eresa-service-page .eresa-section.eresa-soft{background:#F8F8F6}
.eresa-service-page .eresa-section-heading{max-width:950px;margin:0 auto 43px!important;text-align:center}
.eresa-service-page .eresa-eyebrow{font-size:13px;font-weight:800;letter-spacing:.135em;text-transform:uppercase;color:var(--eresa-khaki);line-height:1.4;margin:0 0 18px}
.eresa-service-page .eresa-section-title{font-size:clamp(30px,3.2vw,43px);margin:0 0 22px;line-height:1.14}
.eresa-service-page .eresa-lead{font-size:18px;line-height:1.7;color:#55595C}
.eresa-service-page .eresa-cols{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;align-items:center;margin:0!important}
.eresa-service-page .eresa-cols>.wp-block-column{min-width:0;flex:unset!important;margin:0!important}
.eresa-service-page .eresa-cols-hero{grid-template-columns:1.06fr 1fr;gap:72px}
.eresa-service-page .eresa-hero{background:#F8F8F6;padding-top:105px;padding-bottom:108px}
.eresa-service-page .eresa-hero-title{font-size:clamp(38px,4.6vw,64px);max-width:690px;letter-spacing:-.045em;line-height:1.08;margin:0 0 30px}
.eresa-service-page .eresa-accent{color:var(--eresa-khaki)}
.eresa-service-page .eresa-hero-copy{font-size:18px;line-height:1.78;color:#50565a;max-width:595px;margin-bottom:30px}
.eresa-service-page .eresa-hero-img img{width:100%;height:390px;object-fit:cover;object-position:center;border-radius:2px}
.eresa-service-page .eresa-service-pagehero{padding-top:75px;padding-bottom:75px;background:#F8F8F6}
.eresa-service-page .eresa-inner-title{font-size:clamp(35px,3.9vw,56px);margin-bottom:24px}
.eresa-service-page .eresa-service-pagehero-img img{height:325px;width:100%;object-fit:cover}
.eresa-service-page figure.eresa-photo img,.eresa-service-page figure.eresa-card-photo img,.eresa-service-page figure.eresa-hero-img img,.eresa-service-page figure.eresa-service-pagehero-img img{display:block;max-width:100%;border-radius:2px}
.eresa-service-page .eresa-about-cols figure img{width:100%;height:370px;object-fit:cover}
.eresa-service-page .eresa-gallery-cols figure img{width:100%;height:360px;object-fit:cover}
.eresa-service-page .eresa-copy-block>*+*{margin-top:22px}
.eresa-service-page .eresa-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:26px}
.eresa-service-page .wp-block-button .wp-block-button__link{padding:14px 25px;display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:152px;border-radius:2px!important;font-size:13px;letter-spacing:.04em;font-weight:750;border:1px solid var(--eresa-khaki);white-space:nowrap}
.eresa-service-page .eresa-btn-primary a{background:#7A6F3E!important;color:#fff!important}
.eresa-service-page .eresa-btn-outline a{background:transparent!important;color:#111!important}
.eresa-service-page .eresa-btn-primary a:hover,.eresa-service-page .eresa-btn-outline a:hover{background:#5F5731!important;color:#fff!important}
.eresa-service-page .eresa-stats-grid,.eresa-service-page .eresa-four-grid,.eresa-service-page .eresa-three-grid,.eresa-service-page .eresa-cards-grid,.eresa-service-page .eresa-brand-grid,.eresa-service-page .eresa-client-grid{display:grid;gap:22px;max-width:1300px;margin:auto}
.eresa-service-page .eresa-stats-grid,.eresa-service-page .eresa-four-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.eresa-service-page .eresa-three-grid,.eresa-service-page .eresa-cards-grid,.eresa-service-page .eresa-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.eresa-service-page .eresa-stat{padding:18px 10px;text-align:center;min-width:0}
.eresa-service-page .eresa-stat-number{color:#7A6F3E;font-size:38px;margin:0 0 10px;letter-spacing:-.05em}
.eresa-service-page .eresa-stat-label{font-size:12px;font-weight:800;letter-spacing:.13em;color:#111;text-transform:uppercase;margin-bottom:9px}
.eresa-service-page .eresa-stat-text{font-size:13px;line-height:1.55;color:#55595C}
.eresa-service-page .eresa-card,.eresa-service-page .eresa-brand-card{background:#F8F8F6;padding:22px 22px 25px;border-radius:2px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;min-height:100%;box-shadow:none}
.eresa-service-page .eresa-card-photo{width:100%;margin:0 0 22px!important}
.eresa-service-page .eresa-card-photo img{width:100%;height:193px;object-fit:cover}
.eresa-service-page .eresa-card-title{font-size:20px;line-height:1.24;margin:0 0 13px;letter-spacing:-.01em}
.eresa-service-page .eresa-card-text{font-size:15px;line-height:1.65;color:#55595C}
.eresa-service-page .eresa-card .eresa-actions{margin-top:auto;padding-top:15px}
.eresa-service-page .eresa-card .eresa-actions a{min-width:0;padding:9px 15px;font-size:11px;min-height:36px}
.eresa-service-page .eresa-card-text-only{min-height:195px;padding:28px}
.eresa-service-page .eresa-card-mark{color:#7A6F3E;font-size:15px;font-weight:800;letter-spacing:.11em;margin-bottom:21px}
.eresa-service-page .eresa-client-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.eresa-service-page .eresa-client{border:1px solid #ECEBE8;background:#fff;min-height:122px;text-align:center;padding:17px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.eresa-service-page .eresa-client-logo{height:61px;width:100%;display:flex;align-items:center;justify-content:center}
.eresa-service-page .eresa-client-logo img{max-height:57px;max-width:100%;object-fit:contain}
.eresa-service-page .eresa-client-name{font-weight:700;color:#4D5153;line-height:1.3;font-size:10px}
.eresa-service-page .eresa-brand-card{align-items:center;text-align:center;background:#fff;border:1px solid #E4E2DB;padding:32px}
.eresa-service-page .eresa-brand-logo{height:98px;width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:15px!important}
.eresa-service-page .eresa-brand-logo img{max-height:93px;max-width:100%;object-fit:contain}
.eresa-service-page .eresa-cta-section{background:#1A1D1F;color:#fff;padding-top:72px;padding-bottom:72px}
.eresa-service-page .eresa-cta-section .eresa-section-title{color:#fff}
.eresa-service-page .eresa-cta-section .eresa-lead{color:#DADBD8}
.eresa-service-page .eresa-cols-cta figure img{height:290px;object-fit:cover;width:100%}
.eresa-service-page .eresa-contact-card{padding:32px;min-height:400px}
.eresa-service-page .eresa-contact-card p{margin-bottom:10px}
.eresa-service-page .eresa-contact-card a:not(.wp-block-button__link){color:#7A6F3E;text-decoration:underline}
.eresa-service-page .eresa-note{font-size:13px;color:#787D7B;padding-top:26px}
.eresa-service-page .eresa-news-placeholder{max-width:780px;padding:52px;text-align:center;background:#F8F8F6;margin:0 auto}
.eresa-service-page .eresa-centered{text-align:center;max-width:990px;margin:0 auto}
@media(max-width:1080px){.eresa-service-page .eresa-section{padding:65px 32px}.eresa-service-page .eresa-cols{gap:32px}.eresa-service-page .eresa-stats-grid,.eresa-service-page .eresa-four-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eresa-service-page .eresa-client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.eresa-service-page .eresa-cards-grid,.eresa-service-page .eresa-three-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eresa-service-page .eresa-hero-img img{height:330px}}
@media(max-width:700px){.eresa-service-page .eresa-section{padding:54px 20px}.eresa-service-page .eresa-cols,.eresa-service-page .eresa-cards-grid,.eresa-service-page .eresa-three-grid,.eresa-service-page .eresa-brand-grid{grid-template-columns:1fr!important}.eresa-service-page .eresa-hero{padding-top:55px;padding-bottom:55px}.eresa-service-page .eresa-hero-title{font-size:39px}.eresa-service-page .eresa-hero-img img{height:260px}.eresa-service-page .eresa-stats-grid,.eresa-service-page .eresa-four-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.eresa-service-page .eresa-stat-number{font-size:29px}.eresa-service-page .eresa-client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.eresa-service-page .eresa-section-title{font-size:31px}.eresa-service-page .eresa-client{min-height:104px}.eresa-service-page .eresa-actions{gap:11px}.eresa-service-page .wp-block-button .wp-block-button__link{padding:12px 15px;min-width:0;font-size:12px}.eresa-service-page .eresa-card-photo img{height:220px}}

/* ERESA Six Service Pages – scoped styles, no global Kadence overrides */
.eresa-service-page .eresa-service-strip{background:#7A6F3E;padding:17px 28px;text-align:center;margin:0!important}
.eresa-service-page .eresa-service-strip-label{color:#fff;font-weight:800;font-size:12px;line-height:1.5;letter-spacing:.15em;text-transform:uppercase}
.eresa-service-page .eresa-service-intro .eresa-lead{max-width:880px;margin:0 auto!important}
.eresa-service-page .eresa-service-points{display:grid;grid-template-columns:1fr 1fr;gap:11px 17px;margin-top:24px!important}
.eresa-service-page .eresa-service-point{font-size:14px;font-weight:700;line-height:1.45;color:#2D3338;padding:12px 0 12px 13px;border-left:3px solid #7A6F3E;background:#F8F8F6}
.eresa-service-page .eresa-feature img{object-fit:cover;min-height:370px}
.eresa-service-page .eresa-service-feature-cols{grid-template-columns:1fr 1fr;gap:72px}
.eresa-service-page .eresa-service-intro{padding-top:72px;padding-bottom:77px}
.eresa-service-page .eresa-pagehero .eresa-pagehero-img img{height:420px}
.eresa-service-page .eresa-four-grid .eresa-card{min-height:240px}
.eresa-service-page .eresa-three-grid .eresa-card{min-height:185px}
.eresa-service-page .eresa-card-title{font-size:19px}
.eresa-service-page .eresa-service-strip+.eresa-section{margin-top:0!important}
@media (max-width: 920px){.eresa-service-page .eresa-service-feature-cols{gap:34px}.eresa-service-page .eresa-pagehero .eresa-pagehero-img img{height:340px}}
@media (max-width: 700px){.eresa-service-page .eresa-service-points{grid-template-columns:1fr}.eresa-service-page .eresa-pagehero .eresa-pagehero-img img{height:280px}.eresa-service-page .eresa-four-grid .eresa-card{min-height:0}.eresa-service-page .eresa-service-strip-label{font-size:10px}.eresa-service-page .eresa-feature img{min-height:0}}


/* ERESA v1.2: Kadence / Gutenberg responsive container and column correction.
   Scoped to template pages only; also fixes blocks already inserted into drafts. */
.eresa-service-page { width:100%!important; max-width:100%!important; min-width:0; margin-inline:auto!important; }
.eresa-service-page .eresa-section {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:clamp(24px,4vw,76px)!important;
  padding-right:clamp(24px,4vw,76px)!important;
}
/* Contain actual section contents without converting the colored sections to narrow cards. */
.eresa-service-page .eresa-section > .wp-block-columns,
.eresa-service-page .eresa-section > .wp-block-group,
.eresa-service-page .eresa-section > .wp-block-buttons {
  width:100%!important;
  max-width:1300px!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.eresa-service-page .eresa-cols {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:center!important;
  gap:clamp(26px,4vw,72px)!important;
  width:100%!important;
  max-width:1300px!important;
}
.eresa-service-page .eresa-cols > .wp-block-column {
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:initial!important;
  flex-basis:auto!important;
  flex-grow:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
.eresa-service-page .eresa-cols > .wp-block-column figure { width:100%!important; max-width:100%!important; min-width:0!important; margin:0!important; }
.eresa-service-page .eresa-cols > .wp-block-column figure img { display:block!important; width:100%!important; max-width:100%!important; min-width:0!important; height:auto; object-fit:cover; }
.eresa-service-page .eresa-pagehero-img img,
.eresa-service-page .eresa-service-pagehero-img img { width:100%!important; height:clamp(290px,27vw,420px)!important; object-fit:cover!important; }
.eresa-service-page .eresa-hero-title,
.eresa-service-page .eresa-inner-title { overflow-wrap:normal; max-width:100%; }
@media (max-width:850px) {
  .eresa-service-page .eresa-cols {grid-template-columns:minmax(0,1fr)!important;gap:26px!important;}
  .eresa-service-page .eresa-section {padding-left:clamp(20px,4vw,36px)!important;padding-right:clamp(20px,4vw,36px)!important;}
  .eresa-service-page .eresa-pagehero-img img, .eresa-service-page .eresa-service-pagehero-img img {height:300px!important;}
}
@media (max-width:480px) {
  .eresa-service-page .eresa-section {padding-left:20px!important;padding-right:20px!important;}
  .eresa-service-page .eresa-pagehero-img img, .eresa-service-page .eresa-service-pagehero-img img {height:240px!important;}
}


/* ERESA v1.3: Kadence/Gutenberg constrained-layout grid fixes.
   Scoped to ERESA pattern wrappers, including patterns already inserted in pages. */
.eresa-service-page .eresa-four-grid,
.eresa-service-page .eresa-three-grid,
.eresa-service-page .eresa-cards-grid,
.eresa-service-page .eresa-brand-grid,
.eresa-service-page .eresa-stats-grid,
.eresa-service-page .eresa-service-points {
  display:grid!important;
  width:100%!important;
  max-width:1300px!important;
  min-width:0!important;
  margin-inline:auto!important;
  align-items:stretch!important;
  column-gap:clamp(16px,2vw,26px)!important;
  row-gap:clamp(16px,2vw,26px)!important;
}
/* Force Gutenberg group grid children to participate as grid items;
   its theme layout rules were constraining individual cards to the left. */
.eresa-service-page .eresa-four-grid > .wp-block-group,
.eresa-service-page .eresa-three-grid > .wp-block-group,
.eresa-service-page .eresa-cards-grid > .wp-block-group,
.eresa-service-page .eresa-brand-grid > .wp-block-group,
.eresa-service-page .eresa-stats-grid > .wp-block-group,
.eresa-service-page .eresa-service-points > p {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  align-self:stretch!important;
}
/* Every service template uses a pair of four-item grids:
   capabilities: 2 x 2 balanced cards; process: four horizontal stages. */
.eresa-service-page .eresa-four-grid {grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.eresa-service-page .eresa-section.eresa-soft .eresa-four-grid.eresa-capabilities-grid,
.eresa-service-page > .eresa-section:nth-of-type(4) .eresa-four-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.eresa-service-page .eresa-three-grid,
.eresa-service-page .eresa-cards-grid,
.eresa-service-page .eresa-brand-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.eresa-service-page .eresa-service-points {grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:none!important;margin-top:24px!important;}
.eresa-service-page .eresa-service-point {height:100%;}
.eresa-service-page .eresa-four-grid .eresa-card,
.eresa-service-page .eresa-three-grid .eresa-card {min-height:0!important;padding:26px!important;}
.eresa-service-page .eresa-card-title {overflow-wrap:break-word;}
/* Reduce excess whitespace but keep intentional ERESA editorial rhythm. */
.eresa-service-page .eresa-section.eresa-service-intro {padding-top:64px!important;padding-bottom:64px!important;}
.eresa-service-page .eresa-section-heading {margin-bottom:38px!important;}
@media (max-width:1050px) {
  .eresa-service-page .eresa-four-grid,
  .eresa-service-page .eresa-three-grid,
  .eresa-service-page .eresa-cards-grid,
  .eresa-service-page .eresa-brand-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:700px) {
  .eresa-service-page .eresa-four-grid,
  .eresa-service-page .eresa-three-grid,
  .eresa-service-page .eresa-cards-grid,
  .eresa-service-page .eresa-brand-grid,
  .eresa-service-page .eresa-section.eresa-soft .eresa-four-grid.eresa-capabilities-grid,
  .eresa-service-page > .eresa-section:nth-of-type(4) .eresa-four-grid,
  .eresa-service-page .eresa-service-points {grid-template-columns:minmax(0,1fr)!important;}
  .eresa-service-page .eresa-four-grid .eresa-card,
  .eresa-service-page .eresa-three-grid .eresa-card {padding:22px!important;}
  .eresa-service-page .eresa-section.eresa-service-intro {padding-top:50px!important;padding-bottom:50px!important;}
}

/* v1.4: extra Gutenberg layout normalization for nested service groups. */
.eresa-service-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid),
.eresa-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid){
 display:grid!important;grid-auto-flow:row!important;align-items:stretch!important;
 justify-content:stretch!important;width:100%!important;max-width:1300px!important;
 min-width:0!important; margin-inline:auto!important;
}
.eresa-service-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > *,
.eresa-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > *{
 position:static!important;float:none!important;clear:none!important;grid-column:auto!important;
 width:100%!important;max-width:none!important;min-width:0!important;
 margin:0!important;align-self:stretch!important;
}
.eresa-service-page .eresa-capabilities-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important}
.eresa-service-page .eresa-four-grid:not(.eresa-capabilities-grid){grid-template-columns:repeat(4,minmax(0,1fr))!important}
.eresa-service-page .eresa-three-grid,.eresa-page .eresa-three-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1050px){
 .eresa-service-page .eresa-four-grid:not(.eresa-capabilities-grid),.eresa-service-page .eresa-three-grid,.eresa-page .eresa-three-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
 .eresa-service-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid),
 .eresa-page :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid){grid-template-columns:minmax(0,1fr)!important}
}


/* ERESA v1.5 - Final nested Gutenberg group-grid correction.
   Many themes generate a .wp-block-group__inner-container around Gutenberg
   group children. The grid must live on the element that contains the cards.
   Existing ERESA Gutenberg blocks are unchanged and remain editable.
   No JavaScript layout mutations are used. */

/* Preserve the familiar layout when Gutenberg has no extra inner wrapper. */
:is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 1300px !important;
  margin-inline: auto !important;
}

/* In the observed WP/Kadence output the OUTER grid has just one child:
   the generated Gutenberg inner container. Stop nesting two grids. */
:is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid):has(> .wp-block-group__inner-container) {
  display: block !important;
  grid-template-columns: none !important;
}

/* Layout the cards on their ACTUAL direct parent. */
:is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container {
  display: grid !important;
  box-sizing: border-box !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  gap: clamp(16px, 2vw, 26px) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Exactly two capabilities per row; four process stages; three products. */
.eresa-service-page .eresa-capabilities-grid > .wp-block-group__inner-container {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.eresa-service-page .eresa-four-grid:not(.eresa-capabilities-grid) > .wp-block-group__inner-container,
.eresa-page .eresa-four-grid > .wp-block-group__inner-container {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
:is(.eresa-service-page,.eresa-page) :is(.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* WP flow-layout margins should not shrink or offset the grid cards. */
:is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container > .eresa-card,
:is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container > .eresa-brand-card {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  grid-column: auto !important;
  align-self: stretch !important;
  overflow-wrap: break-word;
}

@media (max-width: 1050px) {
  :is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 700px) {
  :is(.eresa-service-page,.eresa-page) :is(.eresa-four-grid,.eresa-three-grid,.eresa-cards-grid,.eresa-brand-grid) > .wp-block-group__inner-container {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 700px) {
  .eresa-service-page .eresa-capabilities-grid > .wp-block-group__inner-container,
  .eresa-service-page .eresa-four-grid:not(.eresa-capabilities-grid) > .wp-block-group__inner-container {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ERESA v1.6 — Patient and crew needs benefit-list fix.
   In Kadence/Gutenberg the .eresa-service-points group gets a generated
   inner container. The *inner* container must own the grid, not its parent.
   Reset a legacy height:100% rule that stretched paragraph blocks. */
.eresa-service-page .eresa-service-points {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-top: 24px !important;
}
.eresa-service-page .eresa-service-points:has(> .wp-block-group__inner-container) {
  display: block !important;
  grid-template-columns: none !important;
}
.eresa-service-page .eresa-service-points > .wp-block-group__inner-container {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: 14px 16px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.eresa-service-page .eresa-service-points .eresa-service-point {
  box-sizing: border-box !important;
  display: block !important;
  position: static !important;
  grid-column: auto !important;
  align-self: start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  line-height: 1.5 !important;
  overflow-wrap: break-word;
}
/* The older service style includes a grid without an inner wrapper. */
.eresa-service-page .eresa-service-points:not(:has(> .wp-block-group__inner-container)) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: 14px 16px !important;
}
@media (max-width: 760px) {
  .eresa-service-page .eresa-service-points > .wp-block-group__inner-container,
  .eresa-service-page .eresa-service-points:not(:has(> .wp-block-group__inner-container)) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ERESA v1.7 — compact benefits, no nested grid track stretching.
   WordPress/Kadence can insert an inner group around paragraph blocks.
   Use a wrapping flex row on the ACTUAL parent; this avoids the
   100%-height grid-item interaction seen in the live ERESA site. */
.eresa-service-page .eresa-service-feature-cols > .wp-block-column,
.eresa-service-page .eresa-service-feature-cols > .wp-block-column > .wp-block-group {
  min-height: 0 !important;
  height: auto !important;
}
.eresa-service-page .eresa-service-points {
  display: block !important;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  align-content: start !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
}
.eresa-service-page .eresa-service-points > .wp-block-group__inner-container,
.eresa-service-page .eresa-service-points:not(:has(> .wp-block-group__inner-container)) {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px 16px !important;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.eresa-service-page .eresa-service-points .eresa-service-point {
  display: block !important;
  flex: 0 0 calc(50% - 8px) !important;
  align-self: flex-start !important;
  box-sizing: border-box !important;
  width: calc(50% - 8px) !important;
  max-width: calc(50% - 8px) !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  position: static !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
}
@media (max-width: 600px) {
  .eresa-service-page .eresa-service-points .eresa-service-point {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
