/* Fleet-inspired photographic surfaces. No global img rules: logos, maps and
   full-size document viewers retain their original geometry and legibility. */
:root {
  --mar-card-radius: 12px;
  --mar-media-radius: 16px;
  --mar-card-shadow: 0 14px 36px rgb(5 35 55 / 10%);
}

body :is(.mar-project-card, .mar-content-card, .mar-capability-panel,
  .mar-capability-project, .mar-fleet-card, .mar-certificate-card) {
  overflow: hidden;
  border-radius: var(--mar-card-radius);
}
body :is(.mar-home-capability-card, .mar-work-project, .mar-work-preview,
  .mar-home-work__card, .mar-home-featured__image, .mar-about-story__photo,
  .mar-leadership-card__portrait, .mar-project-gallery__viewport) {
  overflow: hidden;
  border-radius: var(--mar-media-radius);
}
body :is(.mar-project-card__image, .mar-content-card__image,
  .mar-capability-project__image, .mar-capability-panel__media, .mar-fleet-card__media) {
  border-radius: var(--mar-card-radius) var(--mar-card-radius) 0 0;
}
body :is(.mar-home-hero, .mar-inner-hero, .mar-page-hero,
  .mar-single-project__hero, .mar-capability-hero, .mar-about-hero) {
  overflow: hidden;
  border-bottom-left-radius: 24px;
  border-bottom-right-radius: 24px;
}
body :is(.mar-project-card, .mar-content-card, .mar-home-capability-card,
  .mar-work-preview) {
  transition: box-shadow 240ms ease, border-color 240ms ease, transform 240ms ease;
}
body :is(.mar-project-card__image > strong, .mar-capability-project__status,
  .mar-work-project__status, .mar-work-project__photo-count) { border-radius: 6px; }

/* The same white, circular photographic affordance as fleet cards. */
.mar-image-action {
  position: absolute;
  z-index: 2;
  right: 1rem;
  bottom: 1rem;
  display: grid;
  width: 42px;
  height: 42px;
  color: #082f47;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 4px 15px rgb(3 23 37 / 10%);
  font-size: 1.1rem;
  font-style: normal;
  place-items: center;
  transition: color 200ms ease, background 200ms ease;
}
body .mar-home-capability-card__content > b {
  display: grid;
  width: 42px;
  height: 42px;
  margin-top: 1.25rem;
  color: #082f47;
  background: #fff;
  border-radius: 50%;
  font-size: 1.1rem;
  place-items: center;
  transition: color 200ms ease, background 200ms ease;
}
body .mar-project-card .mar-project-card__copy > .mar-project-card__link {
  position: static;
  display: flex;
  margin-top: auto;
  padding-top: 1.2rem;
  justify-content: space-between;
  align-items: center;
  color: #087cab;
  font-size: .8rem;
  font-weight: 650;
}
.mar-project-card__link > b { font-size: 1.1rem; font-weight: 400; }
body .mar-project-card__copy h2 { margin-right: 0; line-height: 1.35; }

/* Round the visible photo itself, not only its letterboxed slider viewport. */
body .mar-project-gallery__open { border-radius: var(--mar-media-radius) !important; }
body .mar-project-gallery__open > img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  border-radius: var(--mar-card-radius);
}
.mar-work-project__media { transition: transform 650ms cubic-bezier(.2,.8,.2,1); }
.mar-work-preview img { transition: transform 650ms cubic-bezier(.2,.8,.2,1); }
@media (hover:hover) and (pointer:fine) {
  body :is(.mar-project-card, .mar-content-card, .mar-capability-panel,
    .mar-capability-project, .mar-fleet-card):is(:hover,:focus-within) {
    box-shadow: var(--mar-card-shadow);
    transform: translateY(-3px);
  }
  body .mar-home-capability-card:is(:hover,:focus-visible) {
    box-shadow: var(--mar-card-shadow);
    transform: translateY(-3px);
  }
  .mar-project-card:is(:hover,:focus-within) .mar-image-action,
  body .mar-home-capability-card:is(:hover,:focus-visible) .mar-home-capability-card__content > b {
    color: #fff;
    background: #087cab;
  }
  .mar-work-project:hover .mar-work-project__media { transform: scale(1.015); }
  .mar-work-preview:hover img { transform: scale(1.025); }
}
@media (max-width:760px) {
  :root { --mar-media-radius: 12px; }
  body :is(.mar-home-hero, .mar-inner-hero, .mar-page-hero,
    .mar-single-project__hero, .mar-capability-hero, .mar-about-hero) {
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
  }
}
@media (prefers-reduced-motion:reduce) {
  body :is(.mar-project-card, .mar-content-card, .mar-home-capability-card,
    .mar-capability-panel, .mar-capability-project, .mar-fleet-card,
    .mar-work-project__media, .mar-work-preview img) {
    transform: none !important;
    transition: none !important;
  }
}

/* Six direct slide choices plus pause fit narrow phones without clipping.
   Desktop/tablet arrows remain available; numbered choices provide the same
   direct navigation on phones with the existing 40px touch-target height. */
@media (max-width:480px) {
  body .mar-home-hero__index {
    right: 0;
    left: 0;
    gap: 0;
    justify-content: space-between;
  }
  body .mar-home-hero .mar-home-hero__index button.mar-home-hero__arrow {
    display: none;
  }
}
