/* Accepted Astra F02–F13 presentation delta. No Ocean/globe asset or motion edits. */
body.njv38-astra-corrections {
  --nj-astra-header-height: 85px;
  --nj-astra-anchor-clearance: 17px;
  --nj-astra-anchor-offset: calc(var(--nj-astra-header-height) + var(--nj-astra-anchor-clearance));
}
/* Legal/category anchors: padding owns the header, margin owns clearance.
   These complementary offsets never add the header height twice. */
html.nj-astra-anchors-r4 {
  --nj-astra-header-height: 85px;
  --nj-astra-anchor-clearance: 17px;
  scroll-padding-top: var(--nj-astra-header-height);
}
html.nj-astra-anchors-r4 body.njv38-astra-corrections {
  --nj-astra-header-height: inherit;
  --nj-astra-anchor-clearance: inherit;
}

/* F01/F05: the controller owns readiness; preserve the existing frame geometry. */
body.njv38-astra-corrections .hero-carousel__image { transition: opacity .4s ease; }
body.njv38-astra-corrections .hero-carousel { background: #0b1b2b; }
main[data-nj-astra-route="/media-engagements"] img[data-nj-astra-fit="contain"] {
  object-fit: contain;
  object-position: center;
  background: #0b1b2b;
}
main[data-nj-astra-route="/media-engagements"] .nj-astra-archive-jumps {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-block: 0 24px;
}
main[data-nj-astra-route="/media-engagements"] .nj-astra-archive-jumps a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #756035;
  color: #263847;
  font-size: 15px;
  line-height: 1.45;
  text-decoration: underline;
  text-underline-offset: .2em;
}
main[data-nj-astra-route="/media-engagements"] .engagement-record-group > .shell > h2,
main[data-nj-astra-route="/media-engagements"] .engagement-record-group h2[id] {
  scroll-margin-top: var(--nj-astra-anchor-clearance);
}
.nj-astra-archive-jumps a:focus-visible,
.nj-astra-legal-contents a:focus-visible,
.nj-astra-legal-contents summary:focus-visible { outline: 2px solid #756035; outline-offset: 3px; }

/* F02: opening and source notices, without any interactive intake. */
body.njv38-astra-corrections .nj-astra-paused {
  color: #e6c77d;
  font-size: 17px;
  line-height: 1.6;
  font-weight: 600;
  margin: 20px 0 18px;
}
main[data-nj-astra-route="/humanitarian-contributions"] .anonymous-report-bridge .nj-astra-paused {
  color: #e6c77d;
  font-size: 17px;
  margin: 20px 0;
}
main[data-nj-astra-route="/report-anonymously"] .report-intake-disabled h2 { font-size: clamp(24px, 3vw, 32px); }

/* F03: all states of only the dark-surface paired-photo component. */
body.njv38-astra-corrections .nj-globe-media-detail .photo-related-record .arrow-link,
body.njv38-astra-corrections .nj-globe-media-detail .photo-related-record .arrow-link:visited {
  color: #e6c77d;
  display: block;
  min-height: 44px;
  padding-block: 10px;
  font-size: 14px;
  line-height: 1.45;
  white-space: normal;
  overflow-wrap: break-word;
  text-decoration: underline;
  text-underline-offset: .25em;
}
body.njv38-astra-corrections .nj-globe-media-detail .photo-related-record .arrow-link:hover,
body.njv38-astra-corrections .nj-globe-media-detail .photo-related-record .arrow-link:focus-visible { color: #fff3dc; }
body.njv38-astra-corrections .nj-globe-media-detail .photo-related-record .arrow-link:focus-visible { outline: 2px solid #e6c77d; outline-offset: 3px; }

/* F04: cloned inline fragments paint only the existing text lines. The block
   hook/caps retain accepted typography, but never paint its empty right side. */
body.njv38-astra-corrections .nj-globe-hero .nj-astra-text-zone {
  position: relative;
  isolation: isolate;
}
body.njv38-astra-corrections .nj-globe-hero .nj-astra-text-zone > .nj-astra-text-mask {
  display: inline;
  pointer-events: none;
  background-color: #0b1b2bd9;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  /* Outward, fading line-end clearance without padding/margins that would
     change the accepted word wrapping or move nested inline text. */
  box-shadow: -12px 0 12px #0b1b2bd9, 12px 0 12px #0b1b2bd9;
}
body.njv38-astra-corrections .nj-globe-hero .nj-astra-text-zone:not(h1):not(.eyebrow):not(.photo-detail-note):not(.engagement-role) { max-width: 46ch; }
body.njv38-astra-corrections .nj-globe-hero h1.nj-astra-text-zone { max-width: min(100%, 46ch); }

/* F06: legal body only. Heading words and case remain exactly as accepted. */
main[data-nj-astra-route="/privacy-policy"] .longform,
main[data-nj-astra-route="/disclaimer"] .longform,
main[data-nj-astra-route="/terms"] .longform {
  width: min(760px, 70ch, calc(100% - 64px));
  max-width: 760px;
  margin-inline: auto;
  padding-inline: 0;
  font-size: 17px;
  line-height: 1.8;
}
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform p {
  font-size: 17px;
  line-height: 1.8;
  margin: 0 0 18px;
  overflow-wrap: break-word;
}
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform h2 {
  font-size: 30px;
  line-height: 1.25;
  margin: 40px 0 14px;
  letter-spacing: normal;
  text-transform: none;
  overflow-wrap: break-word;
  scroll-margin-top: var(--nj-astra-anchor-clearance);
}
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform h3 { font-size: 21px; line-height: 1.3; margin: 24px 0 12px; }
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform ul { list-style: disc outside; padding-left: 24px; margin: 0 0 18px; }
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform ol { list-style: decimal outside; padding-left: 24px; margin: 0 0 18px; }
main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform li { display: list-item; font-size: 17px; line-height: 1.8; margin-bottom: 8px; }
body.njv38-astra-corrections .nj-astra-legal-contents {
  border-block: 1px solid #beaf96;
  padding-block: 16px;
  margin: 24px 0 32px;
}
body.njv38-astra-corrections .nj-astra-legal-contents__mobile { display: none; }
body.njv38-astra-corrections .nj-astra-legal-contents nav > p { font-size: 15px !important; font-weight: 700; margin: 0 0 8px !important; }
body.njv38-astra-corrections .longform .nj-astra-legal-contents ol { list-style: none; padding: 0; margin: 0; }
body.njv38-astra-corrections .longform .nj-astra-legal-contents li { margin: 0; font-size: 14px; line-height: 1.5; }
body.njv38-astra-corrections .nj-astra-legal-contents a {
  color: #344653;
  display: block;
  padding: 7px 0;
  font-size: 14px;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: .2em;
  overflow-wrap: break-word;
}

/* F07/F09: truthful availability and an explicit existing email route. */
body.njv38-astra-corrections .home-insights-compact .status { font-size: 13px; line-height: 1.5; color: #68480e; }
body.njv38-astra-corrections .nj-astra-availability { margin: 20px 0 0; font-size: 17px; line-height: 1.6; color: #e6c77d; }
body.njv38-astra-corrections .nj-astra-gallery-link,
main[data-nj-astra-route="/contact"] .contact-card .button {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
body.njv38-astra-corrections .nj-astra-gallery-link { color: #e6c77d; margin-top: 16px; font-size: 15px; text-decoration: underline; text-underline-offset: .25em; }
body.njv38-astra-corrections .nj-astra-gallery-link:focus-visible { outline: 2px solid #e6c77d; outline-offset: 3px; }
main[data-nj-astra-route="/contact"] .nj-astra-enquiry-instruction { font-size: 16px; line-height: 1.6; margin: 16px 0 0; }

/* F08: compact external links, not a rendered live dashboard. */
main[data-nj-astra-route="/"] .signal-grid { align-items: start; gap: 24px; }
main[data-nj-astra-route="/"] .signal-panel { min-height: 0; box-shadow: none; }
main[data-nj-astra-route="/"] .signal-panel-head { min-height: 0; padding: 20px 24px; gap: 12px; flex-wrap: wrap; }
main[data-nj-astra-route="/"] .signal-panel-head h3 { font-size: 24px; }
main[data-nj-astra-route="/"] .signal-kicker { font-size: 12px; line-height: 1.5; }
main[data-nj-astra-route="/"] .signal-kicker > i { display: none; }
main[data-nj-astra-route="/"] .signal-kicker::before { content: "↗"; color: #e6c77d; }
main[data-nj-astra-route="/"] .signal-widget { height: auto; min-height: 0; overflow: visible; }
main[data-nj-astra-route="/"] .market-widget-fallback { position: static; padding: 20px 24px; container-type: inline-size; }
main[data-nj-astra-route="/"] .market-fallback-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)); gap: 12px; }
main[data-nj-astra-route="/"] .market-fallback-grid a { min-height: 44px; padding: 12px 32px 12px 14px; }
main[data-nj-astra-route="/"] .market-fallback-grid a > span { font-size: 12px; line-height: 1.5; color: #c8d3dc; }
main[data-nj-astra-route="/"] .market-fallback-grid a > strong { font-size: 16px; line-height: 1.45; }
main[data-nj-astra-route="/"] .signal-side-stack { gap: 24px; }
main[data-nj-astra-route="/"] .x-profile-card,
main[data-nj-astra-route="/"] .ground-news-card { padding: 20px 24px; }
main[data-nj-astra-route="/"] .signal-note { font-size: 12px; line-height: 1.6; min-height: 0; padding: 16px 24px; }
main[data-nj-astra-route="/"] .x-profile-label { font-size: 12px; line-height: 1.5; }
main[data-nj-astra-route="/"] .ground-news-pending { font-size: 12px; line-height: 1.5; text-transform: none; letter-spacing: normal; color: #c8d3dc; }
main[data-nj-astra-route="/"] .signal-section a:not(.market-fallback-grid a) { min-height: 44px; font-size: 15px; line-height: 1.45; }
main[data-nj-astra-route="/"] .signal-panel-head > a,
main[data-nj-astra-route="/"] .x-profile-button,
main[data-nj-astra-route="/"] .ground-news-button { display: block; padding-block: 8px; }
main[data-nj-astra-route="/"] .signal-section .nj-astra-external-label {
  color: inherit;
  opacity: 1;
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: normal;
  text-transform: none;
}
main[data-nj-astra-route="/"] .signal-panel-market a,
main[data-nj-astra-route="/"] .signal-panel-ground a { color: #e6c77d; }
main[data-nj-astra-route="/"] .signal-panel-x a { color: #68480e; }
/* Final D01 correction: the secondary navy-panel link only, not the primary CTA. */
main[data-nj-astra-route="/"] .signal-panel-x .x-profile-button,
main[data-nj-astra-route="/"] .signal-panel-x .x-profile-button:visited { color: #e6c77d; }
main[data-nj-astra-route="/"] .signal-panel-x .x-profile-button:hover,
main[data-nj-astra-route="/"] .signal-panel-x .x-profile-button:focus-visible { color: #fff3dc; }
main[data-nj-astra-route="/"] .signal-panel-x .x-profile-button:focus-visible { outline: 2px solid #e6c77d; outline-offset: 3px; }
main[data-nj-astra-route="/"] .ground-news-scale { display: none; }

/* F10: retain the twelve-link footer and existing image-detail architecture. */
body.njv38-astra-corrections .footer-grid { container-type: inline-size; }
body.njv38-astra-corrections .footer-links { grid-template-columns: repeat(2, minmax(140px, 1fr)); gap: 16px 20px; }
body.njv38-astra-corrections .footer-links a { color: #c8d3dc; font-size: 14px; line-height: 1.5; overflow-wrap: break-word; }
body.njv38-astra-corrections .footer-bottom { color: #c8d3dc; font-size: 12px; line-height: 1.5; }
body.njv38-astra-corrections .photo-detail-credit,
body.njv38-astra-corrections .photo-detail-note,
body.njv38-astra-corrections .photo-detail-image > figcaption { font-size: 12px; line-height: 1.5; }
/* Final D04: the base credit's 9px !important must be overridden explicitly. */
body.njv38-astra-corrections .photo-detail-credit {
  font-size: 12px !important;
  color: #dce4e9 !important;
  line-height: 1.5;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
}
body.njv38-astra-corrections .photo-detail-nav a { font-size: 14px; line-height: 1.5; }
body.njv38-astra-corrections .photo-detail-copy .breadcrumbs li { font-size: 12px; line-height: 1.5; }

/* F11: values only; the separate five standards keep their existing layout. */
@media (min-width: 761px) {
  main[data-nj-astra-route="/about"] .foundation-grid > article:nth-child(5) { grid-column: 1 / -1; }
}
@media (max-width: 1023px) and (min-width: 600px) {
  main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform { width: min(760px, 70ch, calc(100% - 48px)); }
  main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform h2 { font-size: 26px; }
}
@media (max-width: 899px) {
  /* Additional 30% attenuation is cloned under text fragments only. No second
     outset/hero-wide plane can darken the empty globe/rim area. */
  body.njv38-astra-corrections .nj-globe-hero .nj-astra-text-zone > .nj-astra-text-mask {
    background-image: linear-gradient(#0b1b2b4d, #0b1b2b4d);
  }
}
@media (max-width: 760px) {
  body.njv38-astra-corrections .footer-links a { display: flex; align-items: center; min-height: 44px; padding-block: 6px; }
  body.njv38-astra-corrections .photo-detail-nav a { display: flex; align-items: center; min-height: 44px; padding-block: 8px; }
  main[data-nj-astra-route="/"] .signal-side-stack { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  body.njv38-astra-corrections,
  html.nj-astra-anchors-r4 { --nj-astra-header-height: 73px; }
}
/* Final D02: only the proven intrinsic category-grid overflow at narrow widths. */
@media (max-width: 359px) {
  main[data-nj-astra-route="/gallery"] .gallery-categories { grid-template-columns: minmax(0, 1fr); }
  main[data-nj-astra-route="/gallery"] .gallery-categories > * { min-width: 0; max-width: 100%; }
  main[data-nj-astra-route="/gallery"] .gallery-categories :is(h2, h3, p) { overflow-wrap: break-word; }
}
@media (max-width: 599px) {
  main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform { width: calc(100% - 32px); }
  main:is([data-nj-astra-route="/privacy-policy"], [data-nj-astra-route="/disclaimer"], [data-nj-astra-route="/terms"]) .longform h2 { font-size: 24px; }
  body.njv38-astra-corrections .nj-astra-legal-contents__desktop { display: none; }
  body.njv38-astra-corrections .nj-astra-legal-contents__mobile { display: block; }
  body.njv38-astra-corrections .nj-astra-legal-contents summary { font-size: 15px; line-height: 1.5; min-height: 44px; padding-block: 10px; cursor: pointer; color: #344653; }
  body.njv38-astra-corrections .nj-astra-legal-contents a { min-height: 44px; padding-block: 10px; }
}
@container (max-width: 291px) {
  main[data-nj-astra-route="/"] .market-fallback-grid { grid-template-columns: minmax(0, 1fr); }
}
@container (max-width: 299px) {
  body.njv38-astra-corrections .footer-links { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  body.njv38-astra-corrections .hero-carousel__image { transition: none !important; }
}
