/* Shared MIS identity. Exact anchors from the existing holding landing in dist/styles.css. */
:root {
  --ink: #030a13;
  --night: #030a13;
  --navy: #162136;
  --red: #e71d36;
  --blue: #1b63ff;
  --paper: #fff;
  --muted: #515b69;
  --line: #dce0e7;
  --mis-brand-ink: #030a13;
  --mis-brand-navy: #162136;
  --mis-brand-red: #e71d36;
  --mis-brand-blue: #1b63ff;
  --mis-muted-on-dark: #9ba4b2;
  --mis-line-on-dark: #ffffff28;
  --mis-glass-sheen: linear-gradient(155deg, #ffffff0a, transparent 42%);
  --mis-glass-navy: linear-gradient(155deg, #ffffff08, transparent 45%),
                    radial-gradient(ellipse at 100% 0, #1b63ff26, transparent 65%),
                    linear-gradient(125deg, #162136f5, #030a13fc);
  --mis-glass-red: linear-gradient(155deg, #ffffff0a, transparent 38%),
                   linear-gradient(135deg, #e71d36eb, #e71d36ad);
  --mis-glass-light: linear-gradient(145deg, #ffffffed, #ffffffc7),
                     radial-gradient(ellipse at 95% 0, #1b63ff17, transparent 65%);
}

body {
  background-color: #fff;
  background-image: radial-gradient(ellipse at 100% 0, #1b63ff06, transparent 32%);
}

::selection { color: #fff; background: var(--mis-brand-red); }
:focus-visible { outline-color: var(--mis-brand-blue); }

/* Reflective colour is in the surface layers; text is always sharp and opaque. */
.button,
.mis-form-bottom .button,
.contact-banner .button {
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-red);
  color: #fff;
  border: 1px solid #e71d36b3;
  border-radius: 30px;
  box-shadow: inset 0 1px 0 #ffffff1a, 0 7px 20px #e71d3614;
  transition: background-color .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}

.button:hover,
.button:focus-visible,
.mis-form-bottom .button:hover,
.mis-form-bottom .button:focus-visible,
.contact-banner .button:hover,
.contact-banner .button:focus-visible {
  color: #fff;
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-navy);
  border-color: #1b63ff80;
  box-shadow: inset 0 1px 0 #ffffff20, 0 9px 24px #030a1324;
}

.button.secondary {
  color: var(--mis-brand-navy);
  background-color: #fff;
  background-image: linear-gradient(145deg, #ffffffed, #ffffffb8),
                    linear-gradient(135deg, #1b63ff14, #1621360a);
  border-color: #16213640;
  box-shadow: inset 0 1px 0 #fff, 0 5px 16px #030a1307;
}

.button.secondary:hover,
.button.secondary:focus-visible {
  color: #fff;
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-navy);
  border-color: var(--mis-brand-blue);
}

.statement,
.contact-banner,
.site-footer,
.page-hero.dark {
  color: #fff;
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-navy);
  box-shadow: inset 0 1px 0 #ffffff0c;
}

.statement p,
.page-hero.dark .lead { color: #d0d6df; }
.page-hero.dark .breadcrumb { color: #c4cad5; }
.statement .eyebrow,
.page-hero.dark .eyebrow { color: #d9dce2; }
.site-footer .footer-title { color: #c4cad5; }
.site-footer .footer-brand p,
.site-footer .footer-bottom { color: var(--mis-muted-on-dark); }
.site-footer .footer-col a { color: #d9dce2; }
.site-footer .footer-col a:hover { color: #ff6274; }
.site-footer .footer-bottom { border-color: var(--mis-line-on-dark); }

/* Colour-only alignment of the intermodal film; its layout and timing stay in intermodal.css. */
.intermodal-feature {
  --im-blue: var(--mis-brand-blue);
  --im-line: #ffffff28;
  color: #fff;
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-navy);
}

.im-film {
  background-color: var(--mis-brand-ink);
  background-image: radial-gradient(ellipse at 63% 42%, #1b63ff26 0, #162136cc 43%, #030a13 83%),
                    linear-gradient(125deg, #162136, #030a13);
}
.im-copy h2 em { color: var(--mis-brand-red); }
.im-step-line i { background: var(--mis-brand-red); }

/* White render cutouts sit on a restrained blue-white reflective plane. */
.equipment-card {
  background-color: #fff;
  background-image: var(--mis-glass-light);
  border-color: #16213626;
  box-shadow: inset 0 1px 0 #fff, 0 10px 35px #030a1307;
}

.equipment-card:hover,
.equipment-card:focus-within {
  border-color: #1b63ff66;
  box-shadow: inset 0 1px 0 #fff, 0 12px 35px #1621360f;
}

.equipment-card .equipment-image,
.fleet-composition {
  background-color: #fff;
  background-image: radial-gradient(ellipse at 65% 25%, #1b63ff0d, transparent 64%),
                    linear-gradient(155deg, #fff, #f6f7f9);
}

.equipment-card .equipment-label {
  background: linear-gradient(155deg, #fffffffa, #fffffff0);
  border-top: 1px solid #16213614;
}
.equipment-card .equipment-label h3,
.equipment-card .equipment-label summary { color: var(--mis-brand-navy); }
.equipment-card .equipment-label details[open] summary { color: var(--mis-brand-red); }

.fleet-toolbar {
  background-color: #fff;
  background-image: linear-gradient(155deg, #fffffffa, #ffffffe8),
                    linear-gradient(115deg, #1b63ff17, #e71d3608);
  border-color: #16213626;
  box-shadow: 0 8px 24px #030a130a, inset 0 1px 0 #fff;
}

.fleet-toolbar a {
  color: var(--mis-brand-navy);
  background-color: #fff;
  background-image: var(--mis-glass-light);
  border-color: #16213633;
  box-shadow: inset 0 1px 0 #fff, 0 3px 10px #030a1307;
}

.fleet-toolbar a:hover,
.fleet-toolbar a:focus-visible {
  color: #fff;
  background-color: var(--mis-brand-ink);
  background-image: var(--mis-glass-navy);
  border-color: #1b63ff80;
  box-shadow: inset 0 1px 0 #ffffff1f, 0 5px 15px #030a131a;
}
.fleet-toolbar a:hover::after,
.fleet-toolbar a:focus-visible::after { color: #fff; }

/* The real photographs remain visible; their existing dark overlays are preserved. */
.sector-row {
  border-top-color: #ffffff40;
  background: linear-gradient(100deg, #ffffff04, transparent 78%);
}
.sector-row:hover,
.sector-row:focus-visible { background: linear-gradient(100deg, #1b63ff1a, #ffffff05); }
.sustainability-strip .text-link,
.statement .text-link { border-color: #ffffff70; }
.sustainability-strip .text-link:hover,
.statement .text-link:hover { color: #ff6274; }

.embed-panel {
  background-color: #fff;
  background-image: radial-gradient(ellipse at 0 0, #1b63ff0f, transparent 65%),
                    linear-gradient(145deg, #fff, #f6f7f9);
  border: 1px solid #1621361f;
  box-shadow: inset 0 1px 0 #fff;
}

.mis-form-field input:focus,
.mis-form-field textarea:focus {
  border-color: var(--mis-brand-blue);
  box-shadow: 0 1px 0 var(--mis-brand-blue);
}

@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .equipment-card,
  .fleet-toolbar,
  .fleet-toolbar a,
  .button.secondary {
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }
}

@media (hover: hover) and (pointer: fine) {
  .button:hover { transform: translateY(-2px); }
}

@media (prefers-reduced-transparency: reduce) {
  .equipment-card,
  .fleet-toolbar,
  .fleet-toolbar a,
  .button.secondary {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .equipment-card,
  .fleet-toolbar,
  .fleet-toolbar a,
  .button.secondary {
    background-color: #fff;
    background-image: linear-gradient(145deg, #fff, #f6f7f9);
  }
  .statement,
  .contact-banner,
  .site-footer,
  .page-hero.dark,
  .button.secondary:hover,
  .fleet-toolbar a:hover,
  .fleet-toolbar a:focus-visible {
    background: linear-gradient(125deg, #162136, #030a13);
  }
}

@media (prefers-reduced-motion: reduce) {
  .button,
  .mis-form-bottom .button,
  .contact-banner .button,
  .equipment-card,
  .fleet-toolbar a { transition: none; }
  .button:hover { transform: none; }
}

@media print {
  body,
  .statement,
  .contact-banner,
  .site-footer,
  .page-hero.dark,
  .equipment-card,
  .equipment-card .equipment-label,
  .fleet-toolbar,
  .fleet-toolbar a,
  .embed-panel { background: #fff; color: #000; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .statement p,
  .page-hero.dark .lead,
  .site-footer .footer-col a,
  .site-footer .footer-title,
  .site-footer .footer-brand p,
  .site-footer .footer-bottom { color: #000; }
}
