/* Partner showcase and directory */
.partners-proof{position:relative;overflow:hidden;padding:clamp(4rem,8vw,7rem) 1.5rem;color:#081a33;background:linear-gradient(135deg,#f9fbff 0%,#eef4fb 60%,#e9f1fb 100%);border-top:1px solid rgba(7,20,38,.08);border-bottom:1px solid rgba(7,20,38,.08)}
.partners-proof:before,.partners-directory:before{content:"";position:absolute;inset:auto -10% -35%;height:50%;border-radius:50%;background:radial-gradient(ellipse,rgba(80,155,235,.18),transparent 70%);pointer-events:none}
.partners-proof__inner,.partners-directory__inner{position:relative;z-index:1;max-width:1200px;margin:auto}
.partners-proof__head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}
.partners-proof__eyebrow,.partners-page__eyebrow{margin:0 0 .75rem;color:#89631b;font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.partners-proof h2,.partners-page h1,.partners-directory h2{margin:0;color:#071426;font-size:clamp(2rem,4vw,3.6rem);font-weight:800;line-height:1.12;letter-spacing:-.04em}
.partners-proof__copy{max-width:38rem;margin:.85rem 0 0;color:#52647d;font-size:1rem;line-height:1.75}
.partners-proof__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.partner-logo-card{display:flex;min-height:150px;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:1.15rem;border:1px solid rgba(33,75,125,.12);border-radius:1.25rem;background:rgba(255,255,255,.93);box-shadow:0 12px 32px rgba(16,42,76,.06);text-align:center;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;opacity:1;transform:translateY(0)}
.partner-logo-card:hover{transform:translateY(-6px);border-color:rgba(37,133,255,.32);box-shadow:0 20px 44px rgba(16,42,76,.12)}
.partner-logo-card img{display:block;width:100%;max-width:190px;height:88px;object-fit:contain}
.partner-logo-card figcaption{color:#34445c;font-size:.9rem;font-weight:700;line-height:1.35}
.partners-proof__action{display:flex;justify-content:center;margin-top:2rem}
.partners-proof__link,.partners-page__cta{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;padding:.8rem 1.25rem;border-radius:999px;background:#1769d0;color:#fff;text-decoration:none;font-weight:800;box-shadow:0 10px 24px rgba(37,133,255,.2);transition:transform .25s,box-shadow .25s}
.partners-proof__link:hover,.partners-page__cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(37,133,255,.28)}
.partners-page{min-height:100vh;background:#f6f8fc;color:#071426;font-family:"Plus Jakarta Sans",Arial,sans-serif}
.partners-page[dir="rtl"]{font-family:"Noto Sans Arabic","Plus Jakarta Sans",Arial,sans-serif}
.partners-page__hero{position:relative;overflow:hidden;padding:3.5rem 1.5rem 4.25rem;color:#fff;background:radial-gradient(ellipse at 78% 12%,rgba(38,119,210,.42),transparent 38%),linear-gradient(135deg,#061326,#0a2340 60%,#09203a)}
.partners-page__hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent);pointer-events:none}
.partners-page__hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto}
.partners-page__eyebrow{color:#e0b45b}
.partners-page h1{max-width:900px;color:#fff;font-size:clamp(2.5rem,6vw,5.5rem)}
.partners-page__intro{max-width:680px;margin:1.1rem 0 0;color:rgba(255,255,255,.72);font-size:clamp(1rem,2vw,1.2rem);line-height:1.8}
.partners-page__stat{display:inline-flex;align-items:center;gap:.55rem;margin-top:1.5rem;padding:.65rem 1rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);font-weight:700}
.partners-directory{position:relative;overflow:hidden;padding:4rem 1.5rem 5rem;background:linear-gradient(180deg,#f6f8fc,#edf3fa)}
.partners-directory__head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.partners-directory h2{font-size:clamp(1.7rem,3vw,2.5rem)}
.partners-directory__note{max-width:500px;margin:0;color:#5b6b82;line-height:1.7}
.partners-directory__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.partners-directory .partner-logo-card{min-height:190px;padding:1rem}
.partners-directory .partner-logo-card img{height:115px;max-width:210px}
.partners-page__bottom{display:flex;justify-content:center;padding:0 1.5rem 5rem;background:#edf3fa}
.partners-page__footer{padding:1.5rem;text-align:center;color:#8a98aa;background:#071426;font-size:.85rem}
.partners-page__footer a{color:#cbd8e8}
.partner-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.partner-reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:900px){.partners-proof__grid,.partners-directory__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partners-directory__grid .partner-logo-card{min-height:165px}.partners-directory__grid .partner-logo-card img{height:100px}}
@media(max-width:560px){.partners-proof,.partners-directory{padding-left:1rem;padding-right:1rem}.partners-proof__head,.partners-directory__head{display:block}.partners-proof__grid,.partners-directory__grid{gap:.7rem}.partner-logo-card{min-height:138px;padding:.8rem}.partner-logo-card img{height:74px}.partner-logo-card figcaption{font-size:.78rem}.partners-page__hero{padding:2.5rem 1rem 3rem}}
@media(prefers-reduced-motion:reduce){.partner-logo-card,.partners-proof__link,.partners-page__cta,.partner-reveal{transition:none!important;animation:none!important;transform:none!important}.partner-reveal{opacity:1}}

/* A quieter, editorial partner wall; the logos are the proof, so the cards step back. */
.partners-page__hero {
  padding-block: clamp(4rem, 7vw, 7rem);
  background:
    radial-gradient(ellipse at 14% 20%, rgba(40, 104, 168, .22), transparent 38%),
    linear-gradient(118deg, #061326 0%, #0a2037 58%, #071729 100%);
}

.partners-page__hero:after { display: none; }

.partners-page__hero-inner {
  display: grid;
  grid-template-areas: "eyebrow stat" "title stat" "intro stat";
  grid-template-columns: minmax(0, 1fr) minmax(250px, .52fr);
  align-items: center;
  column-gap: clamp(3rem, 8vw, 8rem);
  row-gap: 0;
  max-width: 1200px;
}

.partners-page__eyebrow { grid-area: eyebrow; margin-bottom: 1rem; }
.partners-page h1 { grid-area: title; max-width: 11ch; font-size: clamp(3rem, 5.2vw, 5.4rem); }
.partners-page__intro { grid-area: intro; max-width: 38rem; margin-top: 1.25rem; }

.partners-page__hero .partners-page__stat {
  grid-area: stat;
  display: block;
  align-self: center;
  justify-self: center;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: start;
}

.partners-page__hero .partners-page__stat strong {
  display: block;
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
  color: #56a8ff;
  font-size: clamp(7rem, 13vw, 11rem);
  font-weight: 700;
  letter-spacing: -.09em;
  line-height: .82;
}

.partners-page__hero .partners-page__stat span {
  display: block;
  margin-top: 1.2rem;
  color: rgba(255,255,255,.72);
  font-size: .95rem;
  font-weight: 600;
  letter-spacing: .02em;
}

.partners-directory {
  padding-block: clamp(3.5rem, 7vw, 6rem);
  background: #fff;
}

.partners-directory:after {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline: max(1.5rem, calc((100vw - 1200px) / 2));
  height: 1px;
  background: linear-gradient(90deg, #56a8ff 0 16%, rgba(8,26,51,.1) 16% 100%);
}

.partners-directory__head {
  align-items: end;
  margin-bottom: 2.5rem;
}

.partners-directory h2 { font-size: clamp(2rem, 3.4vw, 3rem); }

.partners-directory__note {
  max-width: 28rem;
  font-size: .95rem;
}

.partners-directory__grid,
.partners-proof__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}

.partners-directory .partner-logo-card,
.partners-proof .partner-logo-card {
  min-width: 0;
  min-height: 190px;
  padding: 1.35rem 1rem;
  border: 0;
  border-bottom: 1px solid rgba(8, 26, 51, .13);
  border-inline-start: 1px solid rgba(8, 26, 51, .1);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  gap: .85rem;
  transition: background-color .25s ease, transform .3s cubic-bezier(.2,.8,.2,1);
}

.partners-directory .partner-logo-card { position: relative; }

.partners-directory .partner-logo-card:hover,
.partners-proof .partner-logo-card:hover {
  transform: translateY(-3px);
  border-color: rgba(8, 26, 51, .13);
  background: #f7f9fb;
  box-shadow: none;
}

.partners-directory .partner-logo-card img,
.partners-proof .partner-logo-card img {
  width: min(100%, 220px);
  height: 104px;
  object-fit: contain;
  transition: transform .3s ease;
}

.partners-directory .partner-logo-card:hover img,
.partners-proof .partner-logo-card:hover img { transform: scale(1.035); }

.partners-directory .partner-logo-card figcaption,
.partners-proof .partner-logo-card figcaption,
.partners-proof .partner-logo-card__caption {
  color: #425268;
  font-size: .88rem;
  font-weight: 650;
  line-height: 1.35;
}

.partners-proof__grid .partner-logo-card {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}
.partners-proof__grid .partner-logo-card:focus-visible {
  outline: 3px solid #1769d0;
  outline-offset: 4px;
}

.partners-page__bottom { padding-bottom: 4rem; background: #fff; }

@media(max-width:900px) {
  .partners-page__hero-inner { grid-template-columns: minmax(0, 1fr) minmax(190px, .48fr); column-gap: 2rem; }
  .partners-page__hero .partners-page__stat strong { font-size: clamp(6rem, 15vw, 8rem); }
  .partners-directory__grid,.partners-proof__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media(max-width:560px) {
  .partners-page__hero { padding-block: 3.5rem; }
  .partners-page__hero-inner {
    grid-template-areas: "eyebrow" "title" "intro" "stat";
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }
  .partners-page h1 { max-width: 12ch; font-size: clamp(2.7rem, 11vw, 3.8rem); }
  .partners-page__intro { margin-top: 1rem; }
  .partners-page__hero .partners-page__stat { justify-self: start; margin-top: 2rem; }
  .partners-page__hero .partners-page__stat strong { font-size: 5.75rem; }
  .partners-page__hero .partners-page__stat span { margin-top: .7rem; }
  .partners-directory__head { margin-bottom: 1.5rem; }
  .partners-directory .partner-logo-card,
  .partners-proof .partner-logo-card { min-height: 150px; padding: 1rem .65rem; }
  .partners-directory .partner-logo-card img,
  .partners-proof .partner-logo-card img { height: 82px; }
  .partners-directory .partner-logo-card figcaption,
  .partners-proof .partner-logo-card figcaption,
  .partners-proof .partner-logo-card__caption { font-size: .75rem; }
}

/* Homepage partner carousel: make the larger network visible while rotating a calm, inspectable sample. */
.partners-proof__head {
  align-items: center;
  margin-bottom: clamp(2rem, 4vw, 3.25rem);
}

.partners-proof__intro-block { max-width: 48rem; }
.partners-proof__copy { max-width: 42rem; }

.partners-proof__stat {
  display: flex;
  align-items: center;
  gap: 1rem;
  direction: rtl;
  min-width: min(300px, 34%);
  padding: 1.05rem 1.35rem;
  border: 1px solid rgba(37, 117, 213, .18);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(255,255,255,.9), rgba(226,239,255,.84));
  box-shadow: 0 16px 40px rgba(16, 60, 113, .08);
}

.partners-proof__stat strong {
  color: #1769d0;
  font: 800 clamp(2.8rem, 5vw, 4.5rem)/.92 "Plus Jakarta Sans", Arial, sans-serif;
  letter-spacing: -.075em;
  direction: ltr;
  unicode-bidi: isolate;
}

.partners-proof__stat span {
  color: #102848;
  font-size: clamp(.95rem, 1.35vw, 1.12rem);
  font-weight: 850;
  line-height: 1.35;
}

.partners-proof[dir="ltr"] .partners-proof__stat { direction: ltr; }

.partners-proof__showcase {
  padding-top: 1.1rem;
  border-top: 1px solid rgba(8, 26, 51, .12);
}

.partners-proof__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  min-height: 3.25rem;
  margin-bottom: .7rem;
}

.partners-proof__sample {
  margin: 0;
  color: #52647d;
  font-size: .9rem;
  line-height: 1.6;
}

.partners-proof__controls {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: .6rem;
  color: #52647d;
}

.partners-proof__rotation {
  position: relative;
  display: grid;
  width: 1.65rem;
  height: 1.65rem;
  place-items: center;
  border: 2px solid rgba(23, 105, 208, .18);
  border-top-color: #1769d0;
  border-right-color: #1769d0;
  border-radius: 50%;
  animation: partner-proof-spin 1.8s linear infinite;
}

.partners-proof__rotation i {
  width: .32rem;
  height: .32rem;
  border-radius: 50%;
  background: #d9a73b;
}

.partners-proof__rotation-label { font-size: .75rem; font-weight: 700; }

.partners-proof__rotate,
.partners-proof__pause {
  display: grid;
  width: 2.35rem;
  height: 2.35rem;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(23, 105, 208, .2);
  border-radius: 50%;
  background: #fff;
  color: #1769d0;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.partners-proof__rotate:hover,
.partners-proof__pause:hover {
  transform: translateY(-2px);
  background: #1769d0;
  color: #fff;
}

.partners-proof__rotate:focus-visible,
.partners-proof__pause:focus-visible {
  outline: 3px solid #d9a73b;
  outline-offset: 3px;
}

.partners-proof__rotate svg,
.partners-proof__pause svg {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.partners-proof__pause svg path[d^="m9"] { fill: currentColor; stroke: none; }
.partners-proof__grid { transition: opacity .24s ease, transform .24s ease; }
.partners-proof__grid.is-changing { opacity: .08; transform: translateY(.45rem); }
.partners-proof__grid .partner-logo-card { transition-delay: var(--slot-delay, 0ms); }
.partners-proof.is-paused .partners-proof__rotation { animation-play-state: paused; }
.partners-proof__action { margin-top: 1.5rem; }
.partners-proof__link { min-height: 52px; padding-inline: 1.55rem; }

@keyframes partner-proof-spin { to { transform: rotate(360deg); } }

@media(max-width:760px) {
  .partners-proof__head { align-items: start; gap: 1.5rem; }
  .partners-proof__stat { min-width: 0; width: fit-content; }
}

@media(max-width:560px) {
  .partners-proof__head { display: grid; gap: 1.35rem; }
  .partners-proof__stat { padding: .8rem 1rem; }
  .partners-proof__stat strong { font-size: 3.25rem; }
  .partners-proof__meta { align-items: start; flex-direction: column; gap: .8rem; }
  .partners-proof__controls { flex-wrap: wrap; }
  .partners-proof__rotation-label { font-size: .72rem; }
}

@media(prefers-reduced-motion:reduce) {
  .partners-proof__rotation { animation: none; }
  .partners-proof__grid,.partners-proof__rotate,.partners-proof__pause { transition: none; }
}

/* Individual logo handoff keeps the row composed while the sample changes. */
.partners-proof__rotation { animation-duration: 3.2s; }
.partners-proof__grid { opacity: 1; transform: none; }
.partners-proof__grid.is-changing { opacity: 1; transform: none; }
.partners-proof__grid .partner-logo-card {
  filter: none;
  transition:
    opacity .36s cubic-bezier(.22,.61,.36,1),
    transform .46s cubic-bezier(.22,.8,.25,1),
    filter .36s ease;
  transition-delay: 0ms;
  will-change: opacity, transform;
}
.partners-proof__grid .partner-logo-card.is-leaving {
  opacity: 0;
  filter: blur(3px);
  transform: translateY(-9px) scale(.985);
  transition-delay: var(--slot-delay, 0ms);
}
.partners-proof__grid .partner-logo-card.is-arriving {
  animation: partner-logo-arrive .62s cubic-bezier(.2,.75,.25,1) both;
  animation-delay: var(--slot-delay, 0ms);
}
.partners-proof__grid .partner-logo-card.is-arriving img { animation: partner-image-settle .72s cubic-bezier(.2,.75,.25,1) both; }

@keyframes partner-logo-arrive {
  0% { opacity: 0; filter: blur(4px); transform: translateY(15px) scale(.975); }
  72% { opacity: 1; filter: blur(0); transform: translateY(-2px) scale(1.008); }
  100% { opacity: 1; filter: blur(0); transform: translateY(0) scale(1); }
}

@keyframes partner-image-settle {
  0% { transform: scale(.96); }
  100% { transform: scale(1); }
}

@media(prefers-reduced-motion:reduce) {
  .partners-proof__grid .partner-logo-card,
  .partners-proof__grid .partner-logo-card.is-leaving,
  .partners-proof__grid .partner-logo-card.is-arriving,
  .partners-proof__grid .partner-logo-card.is-arriving img {
    animation: none !important;
    transition: none !important;
    filter: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* One continuous partner field: the logo routes carry the page instead of stacked panels. */
.partners-page {
  color: #eef5ff;
  background: radial-gradient(ellipse at 50% 42%, rgba(25, 79, 132, .2), transparent 48%), linear-gradient(180deg, #061426 0%, #0a1b30 56%, #061426 100%);
}
.partners-page__hero,.partners-page .partners-directory,.partners-page__bottom,.partners-page__footer { background: transparent; }
.partners-page__hero { padding-block: clamp(2.5rem, 4vw, 4rem) 1.5rem; }
.partners-page__hero:after { display: none; }
.partners-page__hero-inner { max-width: 1420px; }
.partners-page h1 { max-width: 12ch; font-size: clamp(2.8rem, 5vw, 5rem); }
.partners-page__intro { max-width: 36rem; color: rgba(231, 241, 253, .72); }
.partners-page__hero .partners-page__stat { padding: 0; border: 0; border-radius: 0; background: transparent; }
.partners-page__hero .partners-page__stat strong { font-size: clamp(6rem, 10vw, 9rem); }

.partners-page .partners-directory { overflow: visible; padding-block: 1.5rem 1rem; }
.partners-page .partners-directory:after { display: none; }
.partners-page .partners-directory:before { display: none; }
.partners-page .partners-directory__inner { max-width: 1420px; }
.partners-page .partners-directory__head { align-items: end; margin-bottom: .5rem; }
.partners-page .partners-directory h2 { color: #f2f7ff; font-size: clamp(1.7rem, 3vw, 2.5rem); }
.partners-page .partners-directory__note { max-width: 30rem; color: rgba(218, 232, 249, .58); font-size: .82rem; }
.partners-page .partners-proof__eyebrow { color: #7ebcff; }

.partners-network { position: relative; width: 100%; height: clamp(740px, 61vw, 880px); isolation: isolate; }
.partners-network__hub {
  position: absolute;
  z-index: 3;
  inset-inline-start: 1%;
  top: 50%;
  display: flex;
  width: 15%;
  min-height: 0;
  padding: 0;
  flex: none;
  transform: translateY(-50%);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}
.partners-network__hub:before,.partners-network__hub:after { display: none; }
.partners-network__hub img { width: clamp(88px, 8vw, 126px); height: clamp(88px, 8vw, 126px); margin: 0 0 .55rem; object-fit: contain; border-radius: 0; filter: brightness(0) saturate(100%) invert(63%) sepia(66%) saturate(1122%) hue-rotate(183deg) brightness(103%) contrast(101%) drop-shadow(0 0 15px rgba(72, 158, 255, .22)); }
.partners-network__hub strong { color: #f7fbff; font: 800 1.08rem/1.02 "Plus Jakarta Sans", Arial, sans-serif; letter-spacing: .08em; }
.partners-network__hub span { margin-top: .8rem; color: #83c2ff; font-size: .74rem; font-weight: 700; }

.partners-network__routes { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.partners-network__route { fill: none; stroke: rgba(99, 178, 247, .42); stroke-width: 1.55; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; filter: drop-shadow(0 0 2px rgba(77, 165, 245, .35)); animation: partner-route-draw 1.7s cubic-bezier(.16,.72,.22,1) forwards; animation-delay: var(--route-delay, 0s); transition: opacity .3s, stroke .3s; }
.partners-network__signal { fill: none; stroke: rgba(132, 212, 255, .98); stroke-width: 2.5; stroke-linecap: round; stroke-dasharray: .05 .95; stroke-dashoffset: 1; filter: drop-shadow(0 0 7px rgba(77, 165, 245, .96)); animation: partner-signal-pass 6.6s ease-in-out infinite; animation-delay: var(--route-delay, 0s); transition: opacity .25s; }
.partners-network__routes.has-active-route .partners-network__route,.partners-network__routes.has-active-route .partners-network__signal { opacity: .1; }
.partners-network__routes.has-active-route .is-focused { opacity: 1; stroke: #9bd9ff; stroke-width: 2.8; filter: drop-shadow(0 0 8px rgba(76, 165, 245, .95)); }
@keyframes partner-route-draw { to { stroke-dashoffset: 0; } }
@keyframes partner-signal-pass { 0% { stroke-dashoffset: 1; opacity: 0; } 12% { opacity: 1; } 78% { opacity: 1; } 100% { stroke-dashoffset: 0; opacity: 0; } }

.partners-network .partners-directory__grid { position: absolute; z-index: 2; inset: 0; display: block; }
.partners-network .partner-logo-card {
  position: absolute;
  display: flex;
  width: clamp(108px, 9.5vw, 142px);
  min-width: 0;
  min-height: 0;
  padding: .45rem .2rem .35rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.88);
  transition: opacity .65s ease, transform .7s cubic-bezier(.17,.8,.22,1), filter .3s ease;
  transition-delay: var(--entry-delay, 0ms);
}
.partners-network .partner-logo-card.is-visible { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.partners-network .partner-logo-card img { display: block; width: 100%; height: 68px; max-width: 100%; object-fit: contain; filter: drop-shadow(0 5px 11px rgba(0,0,0,.13)); transition: filter .3s ease, transform .35s ease; }
.partners-network .partner-logo-card figcaption { max-width: 100%; color: rgba(236, 244, 255, .88); font-size: clamp(.68rem, .8vw, .78rem); font-weight: 650; line-height: 1.35; text-align: center; }
.partners-network .partner-logo-card:hover { z-index: 4; background: transparent; box-shadow: none; filter: drop-shadow(0 0 16px rgba(74, 162, 248, .25)); }
.partners-network .partner-logo-card:hover img { transform: scale(1.09); filter: drop-shadow(0 0 11px rgba(92, 179, 255, .55)); }
.partners-page__bottom { display: none; }
.partners-page__footer { padding-block: 1.5rem; border-top: 1px solid rgba(150, 195, 239, .13); color: rgba(218, 232, 249, .55); }
.partners-page__footer a { color: #9dcfff; display: inline-flex; min-height: 24px; align-items: center; }

@media(max-width:1100px) {
  .partners-network { height: auto; min-height: 0; }
  .partners-network__hub,.partners-network__routes { display: none; }
  .partners-network .partners-directory__grid { position: relative; inset: auto; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.8rem .5rem; }
  .partners-network .partner-logo-card { position: relative; left: auto!important; top: auto!important; width: auto; min-height: 130px; padding: .5rem .35rem .8rem; border-bottom: 1px solid rgba(161, 195, 230, .13); opacity: 0; transform: translateY(16px) scale(.96); }
  .partners-network .partner-logo-card.is-visible { opacity: 1; transform: translateY(0) scale(1); }
  .partners-network .partner-logo-card img { height: 76px; }
  .partners-network .partner-logo-card figcaption { font-size: .78rem; }
}
@media(max-width:650px) {
  .partners-page__hero { padding-block: 2.4rem .75rem; }
  .partners-page__hero-inner { grid-template-areas: "eyebrow" "title" "intro" "stat"; grid-template-columns: minmax(0,1fr); row-gap: 0; }
  .partners-page h1 { max-width: 12ch; font-size: clamp(2.65rem, 11vw, 3.55rem); }
  .partners-page__intro { margin-top: .85rem; font-size: .98rem; }
  .partners-page__hero .partners-page__stat { justify-self: start; margin-top: 1rem; }
  .partners-page__hero .partners-page__stat strong { font-size: 4.7rem; }
  .partners-page .partners-directory { padding-block: 1.25rem .5rem; }
  .partners-page .partners-directory__head { display: block; margin-bottom: 1rem; }
  .partners-page .partners-directory__note { margin-top: .55rem; }
  .partners-network .partners-directory__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem .65rem; }
  .partners-network .partner-logo-card { min-height: 126px; padding-inline: .3rem; }
  .partners-network .partner-logo-card img { height: 72px; }
  .partners-network .partner-logo-card figcaption { font-size: .72rem; }
}
@media(prefers-reduced-motion:reduce) {
  .partners-network .partner-logo-card,.partners-network__route,.partners-network__signal { transition: none!important; animation: none!important; }
  .partners-network .partner-logo-card { opacity: 1; transform: none; }
  .partners-network__signal { display: none; }
  .partners-network__route { stroke-dashoffset: 0; }
}


/* Unify partner count and title into one deliberate hero composition. */
.partners-page__hero-inner { display: block; max-width: 1420px; }
.partners-page__title-row { display: flex; align-items: center; justify-content: space-between; gap: clamp(1rem, 4vw, 4.5rem); }
.partners-page .partners-page__title-row h1 { max-width: none; margin: 0; white-space: nowrap; font-size: clamp(3.25rem, 5.35vw, 5.1rem); line-height: 1.08; letter-spacing: -.035em; }
.partners-page__hero .partners-page__title-row .partners-page__stat { display: flex !important; flex: 0 0 auto; align-items: center; gap: .8rem; margin: 0 !important; padding: 0; border: 0; border-radius: 0; background: transparent; }
.partners-page__hero .partners-page__title-row .partners-page__stat strong { font-size: clamp(4rem, 6.3vw, 5.7rem); line-height: .9; }
.partners-page__hero .partners-page__title-row .partners-page__stat span { max-width: 8.5rem; margin: 0; padding-inline-start: .8rem; border-inline-start: 1px solid rgba(126,188,255,.4); color: rgba(231,241,253,.68); font-size: .76rem; line-height: 1.5; }
.partners-page .partners-page__intro { max-width: 47rem; margin: 1rem 0 0; font-size: clamp(.98rem, 1.15vw, 1.08rem); }
.partners-page .partners-directory__head { display: flex; min-height: 0; align-items: center; justify-content: flex-end; margin: 0; }
.partners-page .partners-directory__head > div { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.partners-page .partners-directory__note { max-width: none; margin: 0; font-size: .74rem; }
@media(max-width:1100px) {
 .partners-page .partners-page__title-row h1 { white-space: normal; font-size: clamp(3rem, 6.3vw, 4.4rem); }
 .partners-page__hero .partners-page__title-row .partners-page__stat strong { font-size: clamp(3.7rem, 7vw, 5rem); }
}
@media(max-width:650px) {
 .partners-page__hero-inner { display: block; }
 .partners-page__title-row { flex-direction: column; align-items: flex-start; gap: .7rem; }
 .partners-page .partners-page__title-row h1 { max-width: 12ch; font-size: clamp(2.7rem, 11vw, 3.55rem); line-height: 1.12; }
 .partners-page__hero .partners-page__title-row .partners-page__stat { gap: .65rem; }
 .partners-page__hero .partners-page__title-row .partners-page__stat strong { font-size: 3.35rem; }
 .partners-page__hero .partners-page__title-row .partners-page__stat span { max-width: none; padding-inline-start: .65rem; font-size: .72rem; }
 .partners-page .partners-page__intro { margin-top: .7rem; font-size: .94rem; }
 .partners-page .partners-directory__head { justify-content: flex-start; }
}

.partners-page .partners-directory__note { display: none; }
@media(max-width:650px) {
 .partners-page__hero { padding: 1rem 1rem 1.15rem; }
 .partners-network { display: flex; flex-direction: column; gap: 0; }
 .partners-network__hub { position: relative; inset: auto; top: auto; display: flex; width: 100%; min-height: 0; margin: 0 0 1rem; padding: .55rem 0 .9rem; transform: none; flex-direction: row; align-items: center; justify-content: flex-start; gap: .75rem; border: 0; border-bottom: 1px solid rgba(161,195,230,.16); background: transparent; text-align: start; }
 .partners-network__hub:before { display: none; }
 .partners-network__hub:after { content: ""; position: absolute; inset-block-end: -18px; inset-inline-start: 26px; display: block; width: 1px; height: 18px; background: linear-gradient(180deg, rgba(115,197,255,.8), rgba(115,197,255,0)); }
 .partners-network__hub img { width: 54px; height: 54px; flex: 0 0 auto; margin: 0; }
 .partners-network__hub strong { font-size: .88rem; line-height: 1.05; }
 .partners-network__hub span { margin: .25rem 0 0; font-size: .68rem; }
}
@media(max-width:390px) {
 .partners-page__hero { padding-inline: .8rem; }
 .partners-network .partners-directory__grid { gap: .8rem .4rem; }
 .partners-network .partner-logo-card { min-height: 118px; }
 .partners-network .partner-logo-card img { height: 66px; }
 .partners-network .partner-logo-card figcaption { font-size: .68rem; }
}


/* Match the shared home header on partner pages at every breakpoint. */
.partners-page__hero { padding-block-start: .5rem; }
@media(max-width:767px) {
 .partners-page__hero { padding-block-start: .55rem; }
 .partners-page__title-row { flex-direction: column; align-items: flex-start; gap: .7rem; }
 .partners-page .partners-page__title-row h1 { max-width: 12ch; white-space: normal; font-size: clamp(2.7rem, 10vw, 3.55rem); line-height: 1.12; }
 .partners-page__hero .partners-page__title-row .partners-page__stat strong { font-size: 3.35rem; }
 .partners-network__hub { flex-direction: row; }
 .partners-network .partners-directory__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}










