/* ═══════════════════════════════════════════════
   JNS CLOUD SOLUTIONS — SHARED DESIGN SYSTEM
   ═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&display=swap');

:root {
  --navy:       #0a1628;
  --navy2:      #0d2444;
  --blue:       #1565c0;
  --blue-light: #1e88e5;
  --orange:     #ff6b2b;
  --orange2:    #e55a1e;
  --purple:     #7c3aed;
  --green:      #16a34a;
  --gold:       #ffc107;
  --surface:    #f8faff;
  --card:       #ffffff;
  --text:       #0d1b2e;
  --text2:      #4a5568;
  --muted:      #718096;
  --border:     #e2e8f0;
  --grad-hero: linear-gradient(135deg,#0a1628 0%,#0d2444 45%,#1a1a2e 100%);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;color:var(--text);background:#fff;overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}

/* ── NAV ───────────────────────────────────── */
nav{
  position:fixed;top:0;width:100%;z-index:1000;
  background:rgba(10,22,40,0.97);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.07);
  height:68px;display:flex;align-items:center;
  padding:0 2.5rem;justify-content:space-between;
}
.nav-brand{
  font-family:'Sora',sans-serif;font-weight:800;font-size:1.1rem;
  color:#fff;display:flex;align-items:center;gap:.5rem;
}
.nav-brand .dot{color:var(--orange);}
.nav-links{display:flex;gap:0;list-style:none;}
.nav-links a{
  color:rgba(255,255,255,.7);font-size:.85rem;font-weight:500;
  padding:.5rem 1rem;border-radius:6px;transition:all .2s;
  letter-spacing:.02em;
}
.nav-links a:hover,.nav-links a.active{color:#fff;background:rgba(255,255,255,.08);}
.nav-links a.active{color:var(--orange);}
.nav-cta{
  background:var(--orange);color:#fff;
  padding:.45rem 1.25rem;border-radius:7px;
  font-size:.85rem;font-weight:700;
  transition:all .2s;white-space:nowrap;
}
.nav-cta:hover{background:var(--orange2);transform:translateY(-1px);box-shadow:0 6px 20px rgba(255,107,43,.4);}
.nav-mobile-toggle{display:none;background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;}

/* ── FOOTER ─────────────────────────────────── */
footer{
  background:var(--navy);
  padding:60px 2.5rem 30px;
  color:rgba(255,255,255,.55);
}
.footer-grid{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;
  gap:3rem;margin-bottom:3rem;
}
.footer-brand{font-family:'Sora',sans-serif;font-weight:800;font-size:1.2rem;color:#fff;margin-bottom:1rem;}
.footer-brand .dot{color:var(--orange);}
.footer-desc{font-size:.88rem;line-height:1.7;margin-bottom:1.25rem;}
.footer-badges{display:flex;gap:.75rem;flex-wrap:wrap;}
.badge{
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);
  padding:.3rem .8rem;border-radius:6px;
  font-size:.72rem;font-weight:600;color:rgba(255,255,255,.7);
  letter-spacing:.04em;text-transform:uppercase;
}
.footer-heading{font-family:'Sora',sans-serif;font-weight:700;font-size:.85rem;color:#fff;margin-bottom:1.2rem;text-transform:uppercase;letter-spacing:.08em;}
.footer-links{list-style:none;}
.footer-links li{margin-bottom:.55rem;}
.footer-links a{font-size:.88rem;color:rgba(255,255,255,.55);transition:color .2s;}
.footer-links a:hover{color:var(--orange);}
.footer-bottom{
  max-width:1200px;margin:0 auto;
  padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;
  font-size:.82rem;
}
.footer-bottom a{color:var(--orange);}

/* ── SHARED SECTIONS ─────────────────────────── */
.section{padding:90px 2.5rem;}
.section-alt{background:var(--surface);}
.section-dark{background:var(--navy);color:#fff;}
.container{max-width:1200px;margin:0 auto;}
.label{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:.6rem;}
.title{font-family:'Sora',sans-serif;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;line-height:1.15;margin-bottom:1rem;}
.sub{font-size:1.05rem;color:var(--text2);max-width:680px;line-height:1.7;margin-bottom:3rem;}
.section-dark .sub{color:rgba(255,255,255,.62);}
.section-dark .title{color:#fff;}

/* ── BUTTONS ─────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 2rem;border-radius:8px;font-weight:700;font-size:.95rem;transition:all .2s;cursor:pointer;border:none;}
.btn-primary{background:var(--orange);color:#fff;}
.btn-primary:hover{background:var(--orange2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,107,43,.4);}
.btn-outline{background:transparent;border:1.5px solid rgba(255,255,255,.3);color:#fff;}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08);}
.btn-navy{background:var(--navy);color:#fff;}
.btn-navy:hover{background:var(--navy2);transform:translateY(-2px);}

/* ── CARDS ─────────────────────────────────── */
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;transition:transform .25s,box-shadow .25s;}
.card:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,.09);}

/* ── REVEAL ANIMATION ─────────────────────── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .65s ease,transform .65s ease;}
.reveal-left.visible{opacity:1;transform:translateX(0);}
.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .65s ease,transform .65s ease;}
.reveal-right.visible{opacity:1;transform:translateX(0);}

/* ── COURSE CATALOG (upGrad Enterprise split-panel) ─── */
.catalog-wrap {
  display:grid;grid-template-columns:280px 1fr;
  gap:0;border:1px solid var(--border);border-radius:20px;
  overflow:hidden;background:var(--card);
  box-shadow:0 8px 40px rgba(0,0,0,.07);
}
.catalog-sidebar {
  background:var(--navy);padding:2rem 0;
  border-right:1px solid rgba(255,255,255,.07);
}
.catalog-sidebar-head {
  font-family:'Sora',sans-serif;font-size:.68rem;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.35);padding:0 1.75rem 1rem;
}
.catalog-cat-item {
  display:flex;align-items:center;justify-content:space-between;
  padding:.85rem 1.75rem;cursor:pointer;
  border-left:3px solid transparent;
  transition:all .2s;
}
.catalog-cat-item:hover {
  background:rgba(255,255,255,.06);
  border-left-color:rgba(255,107,43,.4);
}
.catalog-cat-item.active {
  background:rgba(255,107,43,.1);
  border-left-color:var(--orange);
}
.catalog-cat-label {
  font-size:.85rem;font-weight:700;
  color:rgba(255,255,255,.55);transition:color .2s;
  display:flex;align-items:center;gap:.65rem;
}
.catalog-cat-item:hover .catalog-cat-label,
.catalog-cat-item.active .catalog-cat-label { color:#fff; }
.catalog-cat-count {
  font-size:.7rem;font-weight:700;padding:.18rem .55rem;
  border-radius:999px;background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.35);transition:all .2s;
}
.catalog-cat-item.active .catalog-cat-count { background:var(--orange);color:#fff; }
.catalog-cat-arrow { font-size:.8rem;color:rgba(255,255,255,.2);transition:all .2s; }
.catalog-cat-item.active .catalog-cat-arrow { color:var(--orange); }

.catalog-panel-wrap { padding:2.5rem;display:none; }
.catalog-panel-wrap.active { display:block; }
.catalog-panel-head { margin-bottom:1.75rem; }
.catalog-panel-head h3 {
  font-family:'Sora',sans-serif;font-size:1.35rem;
  font-weight:800;margin-bottom:.35rem;
}
.catalog-panel-head p { font-size:.88rem;color:var(--text2);line-height:1.6; }
.catalog-sub-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:1rem; }
.catalog-sub-card {
  background:linear-gradient(135deg,rgba(13,36,68,.03),rgba(21,101,192,.04));
  border:1px solid var(--border);border-radius:14px;padding:1.5rem;
  cursor:pointer;transition:all .25s;position:relative;overflow:hidden;
  text-decoration:none;display:block;
}
.catalog-sub-card:hover {
  transform:translateY(-3px);box-shadow:0 12px 36px rgba(0,0,0,.09);
  border-color:rgba(255,107,43,.3);
}
.catalog-sub-card::after {
  content:'↗';position:absolute;top:1.25rem;right:1.25rem;
  font-size:.9rem;color:var(--border);transition:all .25s;
}
.catalog-sub-card:hover::after { color:var(--orange); }
.catalog-sub-icon { font-size:1.5rem;margin-bottom:.75rem; }
.catalog-sub-title {
  font-family:'Sora',sans-serif;font-size:.9rem;font-weight:800;
  color:var(--text);margin-bottom:.35rem;
}
.catalog-sub-desc { font-size:.78rem;color:var(--text2);line-height:1.6; }
.catalog-sub-tags { display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.85rem; }
.catalog-sub-tag {
  font-size:.67rem;font-weight:700;padding:.2rem .55rem;
  border-radius:6px;background:var(--surface);
  border:1px solid var(--border);color:var(--muted);
}
.catalog-strip {
  display:flex;flex-wrap:wrap;gap:0;
  border-top:1px solid var(--border);margin-top:2rem;
}
.catalog-strip-item {
  flex:1;min-width:120px;padding:1rem 1.5rem;
  text-align:center;border-right:1px solid var(--border);
}
.catalog-strip-item:last-child { border-right:none; }
.catalog-strip-num {
  font-family:'Sora',sans-serif;font-size:1.4rem;font-weight:900;color:var(--navy);
}
.catalog-strip-num em { font-style:normal;color:var(--orange); }
.catalog-strip-lbl {
  font-size:.7rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);margin-top:.2rem;
}

/* ── PROGRAM HIGHLIGHT ROW ─────────────────── */
.prog-row { display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem; }
.prog-item {
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:1.5rem;
  border-top:3px solid var(--orange);
  transition:transform .25s,box-shadow .25s;
}
.prog-item:hover { transform:translateY(-4px);box-shadow:0 16px 42px rgba(0,0,0,.09); }
.prog-item-icon { font-size:1.6rem;margin-bottom:.65rem; }
.prog-item-title {
  font-family:'Sora',sans-serif;font-size:.88rem;font-weight:800;margin-bottom:.35rem;
}
.prog-item-meta { font-size:.76rem;color:var(--muted); }
.prog-item-tag {
  display:inline-block;margin-top:.65rem;
  font-size:.67rem;font-weight:700;padding:.2rem .55rem;
  border-radius:6px;background:rgba(255,107,43,.08);
  color:var(--orange);border:1px solid rgba(255,107,43,.18);
}

@media(max-width:900px){
  .catalog-wrap { grid-template-columns:1fr; }
  .catalog-sidebar { border-right:none;border-bottom:1px solid rgba(255,255,255,.07);padding:1rem 0; }
  .catalog-sub-grid { grid-template-columns:1fr; }
  .prog-row { grid-template-columns:1fr 1fr; }
}
@media(max-width:600px){
  .prog-row { grid-template-columns:1fr; }
  .catalog-strip { flex-direction:column; }
  .catalog-strip-item { border-right:none;border-bottom:1px solid var(--border); }
}

/* ═══════════════════════════════════════════════
   PARTNERSHIP SECTION — Editorial Banner Style
   Requires: Playfair Display + Barlow Condensed
   ═══════════════════════════════════════════════ */

/* ── Outer wrapper ──────────────────────── */
.pship-section {
  background: #0a0a0a;
  overflow: hidden;
}

/* ── Hero Banner ────────────────────────── */
.pship-banner {
  position: relative;
  overflow: hidden;
  padding: 64px 5% 56px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2.5rem;
  min-height: 540px;
  /* Diagonal stripe via pseudo */
}
.pship-banner::before {
  content: '';
  position: absolute;
  top: -80px;
  right: 22%;
  width: 3px;
  height: 900px;
  background: linear-gradient(180deg, transparent, #e02020 25%, #e05a00 55%, #f5a623, transparent);
  transform: rotate(12deg);
  opacity: .45;
  pointer-events: none;
}
.pship-banner::after {
  content: '';
  position: absolute;
  top: -80px;
  right: calc(22% + 20px);
  width: 1px;
  height: 900px;
  background: linear-gradient(180deg, transparent, #f5a623 40%, transparent);
  transform: rotate(12deg);
  opacity: .22;
  pointer-events: none;
}

/* Grain overlay */
.pship-grain {
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
  opacity: .38;
  pointer-events: none;
  z-index: 0;
}

/* Glows */
.pship-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}
.pship-glow-1 {
  width: 640px; height: 520px;
  background: radial-gradient(ellipse at center, rgba(224,90,0,.13) 0%, transparent 70%);
  top: -120px; right: -80px;
}
.pship-glow-2 {
  width: 420px; height: 320px;
  background: radial-gradient(ellipse at center, rgba(224,32,32,.08) 0%, transparent 70%);
  bottom: -40px; left: 15%;
}

/* Decorative "AI" background letter */
.pship-deco-letter {
  position: absolute;
  bottom: -40px; right: 4%;
  font-family: 'Playfair Display', serif;
  font-weight: 900;
  font-size: clamp(200px, 28vw, 380px);
  line-height: 1;
  color: rgba(255,255,255,.022);
  pointer-events: none;
  user-select: none;
  z-index: 1;
  letter-spacing: -10px;
}

/* Logos row */
.pship-logos {
  display: flex;
  align-items: center;
  gap: 36px;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
}
.pship-logo { object-fit: contain; display: block; }
.pship-logo-divider {
  width: 1px; height: 36px;
  background: rgba(245,240,232,.18);
  flex-shrink: 0;
}
.pship-collab-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #f5a623;
  opacity: .8;
}

/* Main content */
.pship-main {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pship-eyebrow {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #e05a00;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.pship-eyebrow::before {
  content: '';
  display: block;
  width: 32px; height: 2px;
  background: #e05a00;
  flex-shrink: 0;
}
.pship-headline {
  font-family: 'Playfair Display', serif;
  font-weight: 900;
  font-size: clamp(52px, 7vw, 88px);
  line-height: .92;
  color: #f5f0e8;
  letter-spacing: -2px;
  max-width: 820px;
}
.pship-hl-red {
  color: #e02020;
  font-style: italic;
}
.pship-hl-gold { color: #f5a623; }

.pship-descriptor {
  margin-top: 28px;
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 1.65;
  color: #c8c0b0;
  max-width: 540px;
  border-left: 2px solid #e02020;
  padding-left: 20px;
}

/* Bottom row */
.pship-bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  position: relative;
  z-index: 2;
}
.pship-bottom-tag {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(245,240,232,.3);
}
.pship-cta-pill {
  background: linear-gradient(135deg, #e02020, #e05a00);
  color: #f5f0e8;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 12px 28px;
  border-radius: 2px;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
  text-decoration: none;
  transition: opacity .2s, transform .2s;
  display: inline-block;
}
.pship-cta-pill:hover { opacity: .88; transform: translateY(-2px); }

/* ── Detail Section ─────────────────────── */
.pship-detail-wrap {
  background: var(--surface);
  padding: 72px 2.5rem;
}

/* 3-col cards */
.pship-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-bottom: 2rem;
}
.pship-card {
  border-radius: 20px;
  padding: 2rem;
  transition: transform .25s, box-shadow .25s;
}
.pship-card:hover { transform: translateY(-4px); box-shadow: 0 20px 54px rgba(0,0,0,.12); }
.pship-card-icon { font-size: 1.75rem; margin-bottom: 1rem; }
.pship-card-title {
  font-family: 'Sora', sans-serif;
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: .85rem;
}
.pship-card-body {
  font-size: .88rem;
  line-height: 1.75;
}

/* Card colour variants */
.pship-card-dark {
  background: #0a0a0a;
  border: 1px solid rgba(255,255,255,.07);
  color: rgba(245,240,232,.82);
}
.pship-card-dark .pship-card-title { color: #f5f0e8; }

.pship-card-fire {
  background: linear-gradient(155deg, #1a0400, #2a0c00);
  border: 1px solid rgba(224,90,0,.22);
  color: rgba(245,240,232,.75);
}
.pship-card-fire .pship-card-title { color: #ffaa80; }

.pship-card-light {
  background: var(--card);
  border: 1px solid var(--border);
  color: var(--text2);
}
.pship-card-light .pship-card-title { color: var(--navy); }

/* Tags on dark card */
.pship-card-tags { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1rem; }
.pship-tag {
  font-size: .68rem;
  font-weight: 700;
  padding: .22rem .65rem;
  border-radius: 6px;
  background: rgba(224,90,0,.15);
  color: #ffaa80;
  border: 1px solid rgba(224,90,0,.25);
  text-transform: uppercase;
  letter-spacing: .05em;
}

/* Quote block */
.pship-quote { position: relative; padding-left: 1rem; }
.pship-quote-mark {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  line-height: .8;
  color: #e05a00;
  opacity: .4;
  margin-bottom: .25rem;
}
.pship-quote p { font-size: .85rem; line-height: 1.7; font-style: italic; color: rgba(245,240,232,.72); }
.pship-quote-attr { font-size: .72rem; font-weight: 700; color: rgba(245,240,232,.38); margin-top: .6rem; letter-spacing: .03em; }

/* Credential badges */
.pship-cred-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: .5rem; }
.pship-cred-badge {
  font-size: .72rem;
  font-weight: 700;
  padding: .25rem .75rem;
  border-radius: 7px;
  border-width: 1px;
  border-style: solid;
}
.pship-cb-blue   { background:#eff6ff; color:#1d4ed8; border-color:#bfdbfe; }
.pship-cb-orange { background:#fff7ed; color:#c2410c; border-color:#fed7aa; }
.pship-cb-green  { background:#f0fdf4; color:#15803d; border-color:#bbf7d0; }
.pship-cb-purple { background:#faf5ff; color:#7e22ce; border-color:#e9d5ff; }
.pship-cb-amber  { background:#fef3c7; color:#92400e; border-color:#fde68a; }
.pship-cb-navy   { background:#eff6ff; color:#1e3a5f; border-color:#bfdbfe; }

/* ── Lower row: media + connect ──────────── */
.pship-lower {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 1.5rem;
  margin-top: 0;
}

/* Media block */
.pship-media {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 2rem;
}
.pship-media-head { margin-bottom: 1.25rem; }
.pship-media-label {
  font-family: 'Sora', sans-serif;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--orange);
}
.pship-media-links { display: flex; flex-direction: column; gap: 0; }
.pship-media-item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  padding: .75rem 0;
  border-bottom: 1px solid var(--border);
  text-decoration: none;
  transition: all .18s;
}
.pship-media-item:last-child { border-bottom: none; }
.pship-media-item:hover .pship-media-headline { color: var(--orange); }
.pship-media-item:hover .pship-media-src { color: var(--navy); }
.pship-media-src {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
  white-space: nowrap;
  flex-shrink: 0;
  width: 170px;
  transition: color .18s;
}
.pship-media-headline {
  font-size: .85rem;
  font-weight: 600;
  color: var(--text);
  transition: color .18s;
  flex: 1;
}

/* Connect block */
.pship-connect {
  background: #0a0a0a;
  border-radius: 20px;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.pship-connect-head {
  font-family: 'Sora', sans-serif;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #f5a623;
}
.pship-connect-items { display: flex; flex-direction: column; gap: .65rem; }
.pship-connect-item {
  display: flex;
  align-items: center;
  gap: .75rem;
  text-decoration: none;
  transition: all .18s;
}
.pship-connect-item:hover .pship-connect-label { color: #f5a623; }
.pship-connect-icon {
  width: 32px; height: 32px;
  border-radius: 8px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.09);
  display: flex; align-items: center; justify-content: center;
  font-size: .85rem;
  color: #f5a623;
  flex-shrink: 0;
  transition: background .18s;
}
.pship-connect-item:hover .pship-connect-icon { background: rgba(224,90,0,.18); }
.pship-connect-label {
  font-size: .83rem;
  color: rgba(245,240,232,.65);
  font-weight: 500;
  transition: color .18s;
}
.pship-connect-label em {
  font-style: normal;
  font-size: .68rem;
  font-weight: 700;
  padding: .12rem .45rem;
  border-radius: 5px;
  background: rgba(224,90,0,.18);
  color: #ffaa80;
  margin-left: .35rem;
}
.pship-connect-offices {
  font-size: .78rem;
  color: rgba(245,240,232,.28);
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.06);
}

/* ── Responsive ─────────────────────────── */
@media(max-width:1024px) {
  .pship-cards { grid-template-columns: 1fr 1fr; }
  .pship-lower { grid-template-columns: 1fr; }
}
@media(max-width:768px) {
  .pship-headline { font-size: clamp(40px, 10vw, 64px); }
  .pship-banner { padding: 48px 6% 44px; min-height: auto; }
  .pship-cards { grid-template-columns: 1fr; }
  .pship-media-src { width: 130px; }
  .pship-detail-wrap { padding: 48px 1.5rem; }
}
@media(max-width:480px) {
  .pship-logos { gap: 20px; }
  .pship-bottom { flex-direction: column; align-items: flex-start; }
}

/* ── RESPONSIVE ─────────────────────────── */
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .nav-mobile-toggle{display:block;}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr;}
  .section{padding:60px 1.25rem;}
}
