/*
 * Service Stories — final editorial bento layer.
 *
 * Kept separate and enqueued last so legacy/minified service-card rules from
 * older installs cannot turn this section back into three oversized columns.
 */
.svcx-stories{
  overflow:hidden;
  background:
    radial-gradient(circle at 96% 44%,color-mix(in srgb,var(--svcx-teal) 17%,transparent),transparent 29%),
    #f7f9fa;
  color:var(--svcx-ink);
}
.svcx-stories .svcx-container{width:100%;max-width:1480px}
.svcx-stories__layout{
  display:grid;
  grid-template-columns:minmax(280px,.7fr) minmax(680px,1.65fr);
  gap:clamp(2.75rem,5vw,6rem);
  align-items:start;
}
.svcx-stories__intro{position:sticky;top:7rem;align-self:start;padding-top:.35rem}
.svcx-stories__intro .svcx-eyebrow{margin-bottom:1.15rem;color:var(--svcx-teal-2)}
.svcx-stories__intro .svcx-h2{
  max-width:13ch;margin:0;color:#10546a;
  font-size:clamp(2.35rem,3.7vw,4.15rem);font-weight:650;
  line-height:1.05;letter-spacing:-.045em;
}
.svcx-stories__intro .svcx-h2 span{
  background:linear-gradient(110deg,#137c91,var(--svcx-teal-2));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.svcx-stories__intro>p{
  max-width:27ch;margin:1.2rem 0 1.75rem;color:#10171e;
  font-family:var(--font-display);font-size:clamp(1.08rem,1.45vw,1.42rem);line-height:1.38;
}
.svcx-stories__intro .svcx-btn{min-width:10.5rem;justify-content:center}

.svcx-stories__grid{
  display:grid;
  grid-template-columns:repeat(16,minmax(0,1fr));
  grid-auto-flow:dense;
  grid-auto-rows:18px;
  gap:10px;
}
.svcx-stories__grid .svcx-story{
  position:relative;display:block;
  grid-column:span 4;grid-row:span 6;
  min-width:0;min-height:0;overflow:hidden;
  border:1px solid rgba(10,28,36,.1);border-radius:15px;
  background:#0c1118;color:#fff;text-decoration:none;isolation:isolate;
  box-shadow:0 15px 34px -20px rgba(8,30,40,.55);
  transition:border-color .4s ease,box-shadow .55s var(--ease-expo);
}
.svcx-stories__grid .svcx-story:nth-child(8n+1){grid-column:span 5;grid-row:span 8}
.svcx-stories__grid .svcx-story:nth-child(8n+2){grid-column:span 4;grid-row:span 6}
.svcx-stories__grid .svcx-story:nth-child(8n+3){grid-column:span 3;grid-row:span 7}
.svcx-stories__grid .svcx-story:nth-child(8n+4){grid-column:span 4;grid-row:span 6}
.svcx-stories__grid .svcx-story:nth-child(8n+5){grid-column:span 3;grid-row:span 6}
.svcx-stories__grid .svcx-story:nth-child(8n+6){grid-column:span 5;grid-row:span 7}
.svcx-stories__grid .svcx-story:nth-child(8n+7){grid-column:span 4;grid-row:span 6}
.svcx-stories__grid .svcx-story:nth-child(8n+8){grid-column:span 4;grid-row:span 7}
.svcx-stories__grid .svcx-story:hover,
.svcx-stories__grid .svcx-story:focus-visible{
  z-index:2;border-color:color-mix(in srgb,var(--svcx-teal) 58%,transparent);
  box-shadow:0 28px 54px -24px rgba(5,34,43,.68);
}
.svcx-stories__grid .svcx-story:focus-visible{
  outline:3px solid color-mix(in srgb,var(--svcx-teal) 72%,#fff);outline-offset:3px;
}
.svcx-stories__grid .svcx-story__img,
.svcx-stories__grid .svcx-story__img img,
.svcx-stories__grid .svcx-story__shade{
  position:absolute;inset:0;width:100%;height:100%;margin:0;
}
.svcx-stories__grid .svcx-story__img{z-index:-2;background:#101820;aspect-ratio:auto}
.svcx-stories__grid .svcx-story__img img{
  object-fit:cover;filter:saturate(.9) contrast(1.04);
  transition:transform .85s var(--ease-expo),filter .6s ease;
}
.svcx-stories__grid .svcx-story__shade{
  background:linear-gradient(180deg,rgba(3,8,12,.2),rgba(3,8,12,.12) 27%,rgba(3,8,12,.62) 65%,rgba(3,8,12,.97));
  transition:background .5s ease;
}
.svcx-stories__grid .svcx-story:hover .svcx-story__img img,
.svcx-stories__grid .svcx-story:focus-visible .svcx-story__img img{
  transform:scale(1.07);filter:saturate(1.02) contrast(1.06) brightness(.78);
}
.svcx-stories__grid .svcx-story__body{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;
  gap:0;padding:clamp(.72rem,1vw,1rem);background:none;
}
.svcx-stories__grid .svcx-story__meta{
  display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem;
  color:rgba(255,255,255,.74);font-size:.54rem;letter-spacing:.08em;text-transform:uppercase;
}
.svcx-stories__grid .svcx-story__meta>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.svcx-stories__grid .svcx-story__tag{
  flex:none;align-self:auto;padding:.27rem .56rem;border:1px solid rgba(255,255,255,.2);
  border-radius:100px;background:rgba(5,10,15,.38);color:#fff;
  font-size:.54rem;font-weight:750;letter-spacing:.1em;
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
}
.svcx-stories__grid .svcx-story .svcx-h4{
  max-width:22ch;margin:0;color:#fff;font-size:clamp(.86rem,1vw,1.08rem);
  line-height:1.12;letter-spacing:-.027em;text-wrap:balance;
}
.svcx-stories__grid .svcx-story:nth-child(8n+1) .svcx-h4,
.svcx-stories__grid .svcx-story:nth-child(8n+6) .svcx-h4{
  font-size:clamp(1rem,1.3vw,1.35rem);
}
.svcx-stories__grid .svcx-story__summary{
  display:-webkit-box;max-width:42ch;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  margin:.42rem 0 0;color:rgba(255,255,255,.74);font-size:.62rem;line-height:1.4;
}
.svcx-stories__grid .svcx-story:nth-child(8n+2) .svcx-story__summary,
.svcx-stories__grid .svcx-story:nth-child(8n+3) .svcx-story__summary,
.svcx-stories__grid .svcx-story:nth-child(8n+4) .svcx-story__summary,
.svcx-stories__grid .svcx-story:nth-child(8n+5) .svcx-story__summary,
.svcx-stories__grid .svcx-story:nth-child(8n+7) .svcx-story__summary{display:none}
.svcx-stories__grid .svcx-story__more{
  display:inline-flex;align-items:center;gap:.4rem;margin-top:.62rem;color:#fff;
  font-family:var(--font-display);font-size:.58rem;font-weight:650;opacity:.84;
}
.svcx-stories__grid .svcx-story__more i{color:var(--svcx-teal);font-style:normal;transition:transform .35s var(--ease-expo)}
.svcx-stories__grid .svcx-story:hover .svcx-story__more i{transform:translateX(4px)}

@media(max-width:1180px){
  .svcx-stories__layout{grid-template-columns:1fr;gap:2.75rem}
  .svcx-stories__intro{position:relative;top:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:2rem;align-items:end}
  .svcx-stories__intro .svcx-eyebrow{grid-column:1/-1}
  .svcx-stories__intro .svcx-h2{max-width:15ch}
  .svcx-stories__intro>p{grid-column:1;margin-bottom:0}
  .svcx-stories__intro .svcx-btn{grid-column:2;grid-row:2/4}
}
@media(max-width:780px){
  .svcx-stories__intro{display:block}
  .svcx-stories__intro>p{margin-bottom:1.45rem}
  .svcx-stories__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px;gap:10px}
  .svcx-stories__grid .svcx-story,
  .svcx-stories__grid .svcx-story:nth-child(n){grid-column:span 1;grid-row:span 1}
  .svcx-stories__grid .svcx-story:nth-child(5n+1){grid-column:1/-1;grid-row:span 1}
  .svcx-stories__grid .svcx-story__summary{display:none}
}
@media(max-width:560px){
  .svcx-stories__grid{grid-template-columns:1fr;grid-auto-rows:220px;gap:10px}
  .svcx-stories__grid .svcx-story,
  .svcx-stories__grid .svcx-story:nth-child(n){grid-column:auto;grid-row:auto;min-height:0}
  .svcx-stories__grid .svcx-story:first-child{min-height:250px}
  .svcx-stories__grid .svcx-story__summary{display:-webkit-box}
  .svcx-stories__intro .svcx-h2{font-size:clamp(2.15rem,11vw,3.15rem)}
}
@media(prefers-reduced-motion:reduce){
  .svcx-stories__grid .svcx-story,
  .svcx-stories__grid .svcx-story__img img,
  .svcx-stories__grid .svcx-story__shade,
  .svcx-stories__grid .svcx-story__more i{transition:none}
}
