/* Secure communications: page-local layout; shared shell, fonts, buttons and assets.
   Type scale follows the Home page: labels 11px, hero subheading 20px, hero text 18px,
   section headings 32px, card titles 20px, body and card text 15px. */
body[data-page="secure-communications"] main .eyebrow { font-size: 11px; font-weight: 600; letter-spacing: 1.7px; text-transform: uppercase; color: #8fc6f2; }
.sc-head { margin-bottom: 30px; }
.sc-head h2 { margin-top: 8px; font: 700 32px/1.2 Exo, Arial, sans-serif; letter-spacing: -.6px; color: #fff; }

/* Hero: copy on the left, the existing earth, satellite and downlink art on the right */
.sc-hero { position: relative; isolation: isolate; overflow: hidden; padding: 6px 0 72px; background: #031322; border-bottom: 1px solid #1d4a73; }
.sc-hero-art { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.sc-hero-art .communications-earth { position: absolute; inset: 60px 0 -40px 30%; -webkit-mask-image: linear-gradient(0deg, #000 70%, transparent); mask-image: linear-gradient(0deg, #000 70%, transparent); }
.sc-hero-art .communications-earth img { width: 100%; height: 100%; object-fit: cover; object-position: 68% center; }
.sc-hero-art .communications-earth::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #031322 0%, #031322d9 22%, #0313224d 55%, transparent 80%); }
.sc-hero-art .communications-downlinks { position: absolute; inset: 0 0 0 20%; width: 80%; height: 100%; opacity: .7; }
.sc-hero-art .communications-orbiter { position: absolute; top: 10px; right: 8%; width: 30%; height: 190px; object-fit: contain; filter: drop-shadow(0 0 10px #50bdff88); }
.sc-hero-copy { max-width: 620px; padding-top: 34px; }
.sc-hero-copy h1 { margin: 14px 0 16px; text-transform: uppercase; }
.sc-hero-copy h1 span { display: block; color: #39b5ff; }
.sc-hero-copy h2 { font: 700 20px/1.35 'Open Sans', Arial, sans-serif; letter-spacing: -.3px; color: #f2f7fd; }
.sc-hero-copy > p:not(.eyebrow):not(.sc-mantra) { margin-top: 14px; font-size: 18px; line-height: 1.65; color: #dbe8f5; text-shadow: 0 1px 10px #031322; }
.sc-mantra { margin-top: 18px; font-size: 13px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase; color: #8fc6f2; }
.sc-mantra i { font-style: normal; margin: 0 8px; color: #3aa0ff; }
.sc-actions { margin-top: 28px; }

/* Organizations we serve */
.sc-audiences { padding: 28px 0; background: #041a2f; border-bottom: 1px solid #1d4a73; }
.sc-audiences .product-container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 28px; }
.communications-audiences { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.communications-audiences li { display: inline-flex; align-items: center; gap: 10px; padding: 9px 16px 9px 12px; border: 1px solid #5b95c640; border-radius: 999px; background: #ffffff08; font-size: 14.5px; font-weight: 600; color: #e3edf7; }
.communications-audiences img { width: 22px; height: 22px; object-fit: contain; }

/* Technologies and services */
.sc-tech { padding: 72px 0; background: #031322; }
.sc-tech-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0 0 22px; padding: 0; list-style: none; }
.sc-tech-grid li { padding: 28px 26px; border: 1px solid #3aa0ff55; border-radius: 12px; background: linear-gradient(160deg, #0f3a66, #0a2746); }
.sc-tech-grid img { width: 40px; height: 40px; margin-bottom: 16px; }
.sc-tech-grid h3 { font: 700 20px/1.25 Exo, Arial, sans-serif; color: #fff; }
.sc-tech-grid p { margin-top: 8px; font-size: 15px; line-height: 1.6; color: #cfe2f2; }
.sc-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.sc-services li { display: flex; gap: 14px; align-items: flex-start; padding: 20px; border: 1px solid #5b95c633; border-radius: 12px; background: #0a2038; transition: border-color .2s ease, transform .2s ease; }
.sc-services li:hover { border-color: #7cc4f566; transform: translateY(-2px); }
.sc-service-icon { flex: 0 0 40px; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #12355a; }
.sc-service-icon img { width: 24px; height: 24px; }
.sc-services h3 { font: 700 17px/1.3 Exo, Arial, sans-serif; color: #fff; }
.sc-services p { margin-top: 5px; font-size: 14.5px; line-height: 1.5; color: #b9cde0; }

/* Use cases: three photo cards from the existing mission triptych */
.sc-cases { padding: 72px 0; background: #041a2f; border-top: 1px solid #1d4a73; }
.communications-use-cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sc-case { overflow: hidden; border: 1px solid #5b95c633; border-radius: 12px; background: #0a2038; }
.sc-case-img { aspect-ratio: 16 / 10; background-image: url('../images/communications-missions.webp'); background-size: 300% auto; background-repeat: no-repeat; background-position: left center; }
.sc-case-recovery .sc-case-img { background-position: center center; }
.sc-case-field .sc-case-img { background-position: right center; }
.sc-case-body { padding: 22px 24px 24px; }
.sc-case-body img { width: 28px; height: 28px; margin-bottom: 12px; }
.sc-case-body h3 { font: 700 20px/1.25 Exo, Arial, sans-serif; color: #fff; }
.sc-case-body p { margin-top: 6px; font-size: 15px; line-height: 1.6; color: #b9cde0; }

/* Partners and call to action */
.sc-connect { padding: 56px 0; background: #031322; border-top: 1px solid #1d4a73; }
.sc-connect-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: stretch; }
.communications-partners { display: flex; flex-direction: column; justify-content: center; padding: 26px 28px; border-radius: 12px; background: #f4f8fc; }
.communications-partners .eyebrow { color: #1767b4 !important; }
.communications-partners ul { display: flex; align-items: center; gap: 28px; margin: 18px 0 0; padding: 0; list-style: none; }
.communications-partners img { display: block; width: auto; max-width: 170px; height: 40px; }
.communications-starlink { font: 700 24px/1 Exo, Arial, sans-serif; letter-spacing: -.5px; color: #0c2036; }
.sc-connect-card { position: relative; display: flex; flex-direction: column; justify-content: center; padding: 28px 70px 28px 30px; border-radius: 12px; border: 1px solid #5fb4ff66; background: linear-gradient(135deg, #1468c4, #0c3f78); color: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.sc-connect-card:hover { transform: translateY(-2px); box-shadow: 0 16px 36px #0008; }
.sc-connect-card h2 { font: 700 24px/1.25 Exo, Arial, sans-serif; }
.sc-connect-card p { margin-top: 8px; font-size: 15px; color: #d6ebff; }
.sc-connect-arrow { position: absolute; right: 28px; top: 50%; transform: translateY(-50%); font-size: 26px; color: #bfe2ff; }

@media (prefers-reduced-motion: reduce) { .sc-services li, .sc-connect-card { transition: none; } .sc-services li:hover, .sc-connect-card:hover { transform: none; } }
@media (max-width: 1100px) {
  .sc-services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .sc-hero-art .communications-earth { inset: auto 0 0 0; height: 55%; opacity: .5; }
  .sc-hero-art .communications-orbiter { width: 46%; right: 2%; opacity: .6; }
  .sc-hero-art .communications-downlinks { display: none; }
  .sc-tech-grid, .communications-use-cases { grid-template-columns: 1fr; }
  .sc-connect-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .sc-hero { padding-bottom: 48px; }
  .sc-hero-copy > p:not(.eyebrow):not(.sc-mantra) { font-size: 16.5px; }
  .sc-head h2 { font-size: 28px; }
  .sc-tech, .sc-cases { padding: 48px 0; }
  .sc-services { grid-template-columns: 1fr; }
  .communications-audiences li { font-size: 14px; }
  .communications-partners ul { gap: 18px; flex-wrap: wrap; }
  .sc-tech-grid h3, .sc-case-body h3 { font-size: 19px; }
}

/* Moved hero lines and an even section rhythm (64px desktop, 48px phone) */
.sc-lead { margin-top: 10px; font-size: 18px; font-weight: 600; color: #cfe2f2; }
.sc-head .sc-mantra { margin-top: 12px; }
.sc-hero { padding: 6px 0 64px; }
.sc-hero-copy { padding-top: 40px; }
.sc-hero-copy > p:not(.eyebrow):not(.sc-mantra) { margin-top: 0; }
.sc-hero-copy h1 { margin-bottom: 20px; }
.sc-actions { margin-top: 30px; }
.sc-tech, .sc-cases, .sc-connect { padding: 64px 0; }
.sc-tech-grid { margin-bottom: 18px; }
.sc-head { margin-bottom: 32px; }
@media (max-width: 640px) {
  .sc-hero { padding-bottom: 48px; }
  .sc-hero-copy { padding-top: 28px; }
  .sc-tech, .sc-cases, .sc-connect { padding: 48px 0; }
  .sc-head { margin-bottom: 24px; }
}

/* Connected technologies: feature photo beside the three core technologies, other services below */

/* Enabling missions: square photo cards, text over a soft fade */
.communications-use-cases { gap: 18px; }
.sc-case { position: relative; isolation: isolate; aspect-ratio: 1 / 1; display: flex; align-items: flex-end; background: #0a2038; transition: transform .25s ease, border-color .25s ease; }
.sc-case-img { position: absolute; inset: 0; z-index: -2; aspect-ratio: auto; background-size: 300% 100%; transition: transform .6s ease; }
.sc-case::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, #031426f2 0%, #031426b3 30%, transparent 62%); }
.sc-case-body { padding: 24px; }
.sc-case-body .sc-service-icon { margin-bottom: 14px; background: #04192ecc; border: 1px solid #7cc4f566; }
.sc-case-body p { color: #d6e5f2; }
.sc-case:hover { transform: translateY(-3px); border-color: #7cc4f566; }
.sc-case:hover .sc-case-img { transform: scale(1.04); }
@media (prefers-reduced-motion: reduce) { .sc-case, .sc-case-img { transition: none; } .sc-case:hover, .sc-case:hover .sc-case-img { transform: none; } }
@media (max-width: 900px) {
  .communications-use-cases { grid-template-columns: 1fr; }
  .sc-case { aspect-ratio: 4 / 3; }
  .sc-case-img { background-size: 300% auto; background-position-y: 40%; }
}
