.supplier-partners{--sp-blue:#0074bd;--sp-navy:#102f46;color:var(--sp-navy);background:#fff;padding-bottom:40px}
.supplier-partners .sp-hero{padding:80px 0 58px;background:radial-gradient(ellipse at 90% 15%,#dceffc,transparent 65%),linear-gradient(140deg,#fff,#f3faff)}
.sp-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}
.sp-eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:1.8px;color:var(--sp-blue);margin-bottom:18px}
.supplier-partners h1,.supplier-partners h2,.supplier-partners h3{font-family:ElementX,serif;font-weight:500;font-synthesis:none}
.supplier-partners .sp-hero h1{font-size:46px;line-height:1.18;margin:0 0 18px}
.supplier-partners .sp-hero h2{font-size:28px;color:var(--sp-blue);margin:0 0 20px;line-height:1.3}
.supplier-partners p{font-size:14px;line-height:1.95;text-align:justify;text-align-last:left;hyphens:auto;margin:0 0 18px}
.sp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:28px}
.sp-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--sp-blue);color:#fff!important;padding:16px 24px;border-radius:10px;font-family:ElementX,serif;font-size:18px;box-shadow:0 8px 22px #0074bd20;transition:background .2s,transform .2s}
.sp-button:hover{background:#003780;transform:translateY(-2px)}
.sp-text-link{font-size:12px;color:var(--sp-navy)}
.sp-hero-art{position:relative;min-height:420px;border-radius:10px;box-shadow:0 24px 50px #0074bd20;margin-bottom:22px}
.sp-hero-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:10px}
.sp-hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,#082b48e8);border-radius:10px}
.sp-photo-caption{position:absolute;z-index:1;bottom:50px;left:30px;right:30px;color:white}
.sp-photo-caption .sp-eyebrow{color:#9edfff;font-size:10px}
.sp-photo-caption p{font-family:ElementX,serif;font-size:30px;line-height:1.3;text-align:left}
.sp-tech-pill{position:absolute;z-index:2;bottom:-22px;left:24px;right:24px;background:white;border:1px solid #dcebf7;border-radius:10px;padding:18px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;box-shadow:0 10px 24px #0074bd15;flex-wrap:wrap}
.sp-status-dot{width:8px;height:8px;border-radius:50%;background:#0074bd;box-shadow:0 0 0 5px #e8f5fc;animation:sp-pulse 3s ease-in-out infinite;margin-right:8px}
.sp-intro{padding-top:48px;padding-bottom:12px}
.sp-jump-links{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:38px}
.sp-jump-links a{background:#f0f8fc;border:1px solid #dfeef7;border-radius:10px;padding:10px 13px;font-size:11px;color:#17394f;display:flex;gap:8px;align-items:center}
.sp-jump-links a:hover{background:#e1f2fc;color:#0074bd}
.sp-jump-links a span{color:#0074bd;font-size:10px}
.sp-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.sp-card{min-width:0;border:1px solid #dbeaf5;border-radius:10px;padding:30px;background:linear-gradient(150deg,#fff,#f8fcff);box-shadow:0 6px 18px #0074bd06;scroll-margin-top:110px}
.sp-card header{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.sp-section-number{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;background:#e9f5fc;border-radius:10px;color:#0074bd;font-size:13px}
.supplier-partners .sp-card h2{font-size:25px;line-height:1.3;margin:0}
.supplier-partners .sp-card h3{font-size:19px;margin:20px 0 8px;color:#0074bd}
.sp-prose ul,.sp-prose ol{padding-left:20px;margin:12px 0 18px;font-size:13px;line-height:1.9}
.sp-prose li{padding-left:4px;margin-bottom:8px}.sp-prose li::marker{color:#0074bd}.sp-prose ul{list-style:disc}.sp-prose ol{list-style:decimal}
.sp-prose p:last-child{margin-bottom:0}.sp-prose a{color:#0074bd;text-decoration:underline;text-underline-offset:3px}
.sp-card.sp-technical{grid-column:1/-1;background:radial-gradient(ellipse at top right,#155b7e,#0d2b43 70%);color:white;padding:38px}
.sp-technical .sp-section-number{background:#ffffff15;color:#9bdcff}.supplier-partners .sp-technical h3{color:#97dbff}.sp-technical .sp-prose{columns:2;column-gap:40px}.sp-technical .sp-prose p,.sp-technical .sp-prose ul{break-inside:avoid}
.sp-connection{display:flex;align-items:center;gap:20px;margin-top:30px;padding-top:28px;border-top:1px solid #ffffff26}
.sp-connection>div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;border:1px solid #ffffff26;border-radius:10px;padding:22px 10px;background:#ffffff09}
.sp-connection strong{font-size:17px}.sp-connection small{font-size:11px;color:#c1d6e4}.sp-connection .material-symbols-outlined{color:#8ddcff;font-size:30px}.sp-connector{color:#8ddcff;font-size:25px}.sp-network-hub{box-shadow:0 0 28px #42bcff15}
.sp-contact{padding-top:48px}.sp-contact-panel{position:relative;overflow:hidden;border-radius:10px;background:#102f46;isolation:isolate;padding:48px;min-height:330px}
.sp-contact-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sp-contact-panel:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#082b46fa 0%,#082b46e0 45%,#082b4630)}
.sp-contact-copy{max-width:650px;color:white}.sp-contact-copy .sp-eyebrow{color:#9adfff}.supplier-partners .sp-contact h2{font-size:36px;line-height:1.25;margin:0 0 18px}.sp-phone,.sp-email{color:white!important}.sp-email{display:inline-block;font-size:12px;margin-top:20px}
@keyframes sp-pulse{50%{box-shadow:0 0 0 8px #e8f5fc44}}
@media(max-width:1023px){.sp-hero-grid{gap:30px}.supplier-partners .sp-hero h1{font-size:36px}.sp-card{padding:24px}.supplier-partners .sp-hero{padding-top:60px}}
@media(max-width:767px){.sp-hero-grid,.sp-sections{grid-template-columns:1fr}.supplier-partners .sp-hero{padding:45px 0 35px}.supplier-partners .sp-hero h1{font-size:32px}.supplier-partners .sp-hero h2{font-size:24px}.sp-hero-art{min-height:320px;margin-top:8px}.sp-photo-caption p{font-size:25px}.sp-actions{gap:16px}.sp-button{width:100%;font-size:17px}.sp-card.sp-technical{padding:24px}.sp-technical .sp-prose{columns:auto}.sp-connection{flex-direction:column;gap:12px}.sp-connection>div{width:100%}.sp-connector{transform:rotate(90deg)}.sp-contact-panel{padding:30px 24px}.supplier-partners .sp-contact h2{font-size:28px}.sp-contact-panel:after{background:#082b46d9}.sp-jump-links a{max-width:100%}.sp-intro{padding-top:32px}.supplier-partners{padding-bottom:90px}}
@media(prefers-reduced-motion:reduce){.supplier-partners *{animation:none!important;transition:none!important}}
