/* Review-only candidate extracted from Elastic Services page. Keep local until Grace review. */
.elastic-capabilities-index-band{box-sizing:border-box;scroll-margin-top:var(--hdr-h);display:flex;justify-content:center;width:100%;padding:0;border:0;background:transparent;color:#0B100E}
.elastic-capabilities-index-band__in{
  box-sizing:border-box;
  width:min(1320px,100% - 82px);
  margin:0;
  background:#F7F5F0;
  border:1px solid #D8D1C5;
  box-shadow:0 2px 14px rgba(0,0,0,.07);
  color:#000;
  line-height:normal;
}
.elastic-capabilities-index-band__head{
  display:flex;
  flex-direction:column;
  gap:30px;
  padding:76px 70px 0;
  background:transparent;
}
.elastic-capabilities-index-band__title{
  max-width:88%;
  font-family:var(--display);
  font-weight:var(--display-weight);
  /* Decorative type: keep custom size for composition. */
  font-size:clamp(42px,5.2vw,68px);
  line-height:var(--lh-tight);
  letter-spacing:0;
  color:var(--deep);
  text-wrap:pretty;
}
.elastic-capabilities-index-band__title em{
  font-style:normal;
  color:var(--bronze);
}
.elastic-capabilities-index-band__lede{
  max-width:76ch;
  padding-top:22px;
  border-top:2px solid var(--gold);
  font-size:18px;
  font-weight:300;
  line-height:var(--lh-copy);
  color:#57473A;
}
.elastic-capabilities-index-band__sections{
  background:#fff;
  border-top:1px solid #0B100E;
}
.elastic-capabilities-index-band__panel{
  box-sizing:border-box;
  display:block;
  scroll-margin-top:calc(var(--hdr-h) + 18px);
  padding:58px 70px;
  border-bottom:1px solid #DFD7C9;
  background:transparent;
  transition:background-color .24s var(--ease);
}
.elastic-capabilities-index-band__panel:last-child{
  border-bottom:0;
}
.elastic-capabilities-index-band__grid{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:40px;
  align-items:start;
}
.elastic-capabilities-index-band__marker{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding-top:6px;
}
.elastic-capabilities-index-band__number{
  font-family:var(--display);
/* Decorative type: keep custom size for composition. */
  font-size:clamp(62px,6.6vw,86px);
  line-height:var(--lh-copy);
  color:#0B100E;
}
.elastic-capabilities-index-band__label{
font-size:14px;
  font-weight:700;
  line-height:var(--lh-tight);
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--grey-mid);
}
.elastic-capabilities-index-band__body{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:44px;
}
.elastic-capabilities-index-band__copy{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.elastic-capabilities-index-band__panel-title{
  font-family:var(--display);
  font-weight:var(--display-weight);
  font-size:32px;
  line-height:var(--lh-tight);
  color:#0B100E;
  text-wrap:pretty;
}
.elastic-capabilities-index-band__text{
  max-width:78ch;
  font-size:18px;
  font-weight:300;
  line-height:var(--lh-copy);
  color:#57473A;
}
.elastic-capabilities-index-band__list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 56px;
  margin:0;
  padding:0;
  list-style:none;
}
.elastic-capabilities-index-band__list li{
  display:flex;
  align-items:baseline;
  gap:15px;
  min-width:0;
  padding:18px 10px 18px 2px;
  border-bottom:1px solid #DFD7C9;
  font-size:18px;
  font-weight:400;
  line-height:var(--lh-copy);
  color:#0B100E;
  transition:background-color .18s var(--ease);
}
.elastic-capabilities-index-band__list li:hover{
  background:var(--gold-10);
}
.elastic-capabilities-index-band__list span{
  flex:0 0 26px;
  min-width:26px;
  font-family:var(--display);
font-size:14px;
  line-height:var(--lh-copy);
  letter-spacing:.05em;
  color:var(--bronze);
}
.elastic-capabilities-index-band__actions{
  display:flex;
  align-items:center;
  gap:34px;
  flex-wrap:wrap;
  padding-top:30px;
  border-top:1px solid #E4DCCE;
}
.elastic-capabilities-index-band__button{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:18px 26px;
  border:1px solid var(--gold);
  background:#FAF4E4;
  color:var(--deep);
font-size:14px;
  font-weight:700;
  line-height:var(--lh-tight);
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);
}
.elastic-capabilities-index-band__button:hover{
  background:var(--gold);
  border-color:var(--bronze);
  color:var(--black);
}
.elastic-capabilities-index-band__link{
  padding-bottom:5px;
  border-bottom:1px solid var(--bronze);
  color:var(--deep);
font-size:14px;
  font-weight:700;
  line-height:var(--lh-tight);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.elastic-capabilities-index-band__link:hover{
  color:var(--bronze);
}
.elastic-capabilities-index-band button:focus-visible,
.elastic-capabilities-index-band a:focus-visible{
  outline:3px solid var(--bronze);
  outline-offset:4px;
}
@media (max-width:900px){
  .elastic-capabilities-index-band__grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  .elastic-capabilities-index-band__marker{
    flex-direction:row;
    align-items:flex-end;
    gap:16px;
  }
}
@media (max-width:680px){
  .elastic-capabilities-index-band__in{
    width:min(1200px,100% - 24px);
  }
  .elastic-capabilities-index-band__head{
    gap:24px;
    padding:42px clamp(22px,6vw,32px) 0;
  }
  .elastic-capabilities-index-band__title{
    max-width:100%;
    font-size:clamp(34px,11vw,46px);
  }
  .elastic-capabilities-index-band__lede{
    padding-top:18px;
    font-size:16px;
  }
  .elastic-capabilities-index-band__panel{
    padding:40px clamp(22px,6vw,32px);
  }
  .elastic-capabilities-index-band__body{
    gap:32px;
  }
  .elastic-capabilities-index-band__panel-title{
    font-size:28px;
  }
  .elastic-capabilities-index-band__text,
  .elastic-capabilities-index-band__list li{
    font-size:16px;
  }
  .elastic-capabilities-index-band__list{
    grid-template-columns:1fr;
    gap:0;
  }
  .elastic-capabilities-index-band__actions{
    align-items:flex-start;
    flex-direction:column;
    gap:18px;
  }
  .elastic-capabilities-index-band__button{
    width:100%;
    justify-content:space-between;
  }
}
@media (max-width:360px){
  .elastic-capabilities-index-band__in{
    width:100%;
    border-right:0;
    border-left:0;
  }
  .elastic-capabilities-index-band__button,
  .elastic-capabilities-index-band__link{
    letter-spacing:.06em;
  }
}
@media (prefers-reduced-motion:reduce){
  .elastic-capabilities-index-band__panel,
  .elastic-capabilities-index-band__list li,
  .elastic-capabilities-index-band__button{
    transition:none;
  }
}

/* Flush-section repair 2026-09-20 */
.elastic-capabilities-index-band{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:var(--sec-pad-tight) 0;
  border:0;
  border-top:1px solid #D8D1C5;
  border-radius:0;
  box-shadow:none;
  background:#F7F5F0;
  color:#0B100E;
}
.elastic-capabilities-index-band__in{
  width:var(--shell);
  max-width:none;
  margin:0 auto;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
}
/* End flush-section repair 2026-09-20 */

/* Template title standard: section H2 */
[data-section="elastic-capabilities-index-band"][data-section="elastic-capabilities-index-band"] h2,
.elastic-capabilities-index-band.elastic-capabilities-index-band h2,
.elastic-capabilities-index-band__root.elastic-capabilities-index-band__root h2{
  font-size:50px !important;
  font-weight:500 !important;
  line-height:var(--lh-tight) !important;
  overflow-wrap:anywhere;
}

/* Section padding standard 2026-09-21: reusable section roots keep 120px between their border and content. */
.elastic-capabilities-index-band{
  padding-top:var(--section-padding-y);
  padding-bottom:var(--section-padding-y);
}

/* Candidate fidelity repair: source root spans the full viewport before its shell centers. */
.elastic-capabilities-index-band{
  width:100vw;
  max-width:100vw;
}


/* Elastic Services capability band variant: aligned header and wide-panel bleed. */
@media (min-width:901px){
  .elastic-capabilities-index-band{--cpib-bleed:min(48px, max(0px,(100vw - var(--shell))/2 - 40px))}
  .elastic-capabilities-index-band__head{padding-left:0;padding-right:0}
  .elastic-capabilities-index-band__title{max-width:100%}
  .elastic-capabilities-index-band__lede{max-width:none}
  .elastic-capabilities-index-band__sections{margin-left:calc(-1 * var(--cpib-bleed));margin-right:calc(-1 * var(--cpib-bleed));margin-top:56px}
  .elastic-capabilities-index-band__panel{padding-left:max(40px, var(--cpib-bleed));padding-right:max(40px, var(--cpib-bleed));}
}
