/* Shared across the public website. Keep every rule scoped to the footer. */
.maritime-footer {
  --footer-ink:#eef5fc;
  --footer-muted:#afc3d6;
  --footer-line:#b8d7f11f;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:48px 0 22px;
  color:var(--footer-ink);
  background:radial-gradient(ellipse at 90% 5%,#1c456345,transparent 55%),linear-gradient(125deg,#102e48,#0b233b 70%);
  border-top:1px solid #284d6c;
  font-family:inherit;
  -webkit-font-smoothing:antialiased;
}
.maritime-footer::before {content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#91c7e6a1,transparent)}
.maritime-footer .footer-horizon {position:absolute;inset:auto 0 0;width:100%;height:420px;max-height:100%;z-index:-1;fill:none;stroke:#87bbdf;stroke-width:1;opacity:.075;pointer-events:none}
.maritime-footer .section-shell {position:relative;width:min(1240px,calc(100% - 96px));margin-inline:auto}
.maritime-footer svg:not(.footer-horizon) {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.maritime-footer a {text-decoration:none}
.maritime-footer .footer-invitation {display:flex;align-items:center;justify-content:space-between;gap:28px;padding-bottom:34px;border-bottom:1px solid var(--footer-line)}
.maritime-footer .footer-eyebrow {margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.15em;line-height:1.5;color:#a5c8e0}
.maritime-footer .footer-invitation h2 {margin:0;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.2;letter-spacing:-.045em;color:#f1f7fc}
.maritime-footer .footer-invitation h2 span {color:#94bfdc}
.maritime-footer .footer-conversation {display:inline-flex;align-items:center;justify-content:space-between;gap:26px;flex-shrink:0;min-height:48px;padding:12px 17px 12px 20px;border:1px solid #e8f3fc;border-radius:9px;background:#e8f3fc;color:#153c5c;font-size:13px;line-height:1.5;font-weight:650;box-shadow:inset 0 1px #ffffff5c;transition:background .18s,border-color .18s}
.maritime-footer .footer-conversation svg {width:17px;height:17px;transition:transform .18s}
.maritime-footer .footer-conversation:hover {background:#fff;border-color:#fff;color:#102f4a}
.maritime-footer .footer-conversation:hover svg {transform:translate(2px,-2px)}
.maritime-footer .footer-directory {display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr) minmax(0,.95fr) minmax(0,1.15fr);gap:clamp(24px,3.2vw,46px);align-items:start;padding:36px 0 32px}
.maritime-footer .footer-directory>* {min-width:0}
.maritime-footer .footer-identity .brand {display:inline-flex;align-items:center;gap:10px;max-width:100%;color:#f3f8fd;font-size:30px;font-weight:700;letter-spacing:-1.35px;line-height:1.15;white-space:nowrap}
.maritime-footer .footer-identity .brand img {width:40px;height:40px;object-fit:contain;border-radius:50%;flex:none;background:#f8fcff}
.maritime-footer .footer-identity .brand-tech {color:#bdd4e6;font-weight:400;letter-spacing:-1.1px}
.maritime-footer .footer-identity>p {max-width:32ch;margin:19px 0 0;color:var(--footer-muted);font-size:14px;line-height:1.8;letter-spacing:0}
.maritime-footer .footer-identity .footer-parent {margin-top:20px;font-size:12px;line-height:1.8;color:#91aec5}
.maritime-footer .footer-parent a {display:inline-flex;align-items:center;gap:8px;margin-top:2px;min-height:30px;font-size:13px;color:#e2eef8;font-weight:550}
.maritime-footer .footer-parent a span {color:#a3c7e0}
.maritime-footer .footer-group {display:block}
.maritime-footer .footer-group h2 {margin:0 0 14px;color:#94b6d1;font-size:11px;font-weight:650;letter-spacing:.13em;text-transform:uppercase;line-height:1.6}
.maritime-footer .footer-group ul {margin:0;padding:0;list-style:none}
.maritime-footer .footer-group li a {display:inline-flex;align-items:center;min-height:36px;padding:5px 0;color:#d8e5f0;font-size:14px;font-weight:450;line-height:1.6;letter-spacing:0}
.maritime-footer .footer-contact {position:relative;padding-left:22px;border-left:1px solid var(--footer-line)}
.maritime-footer .footer-contact h2 {margin-bottom:17px}
.maritime-footer .footer-contact address {display:grid;gap:15px;font-style:normal}
.maritime-footer .footer-contact-link {display:block;width:fit-content;max-width:100%;min-height:44px}
.maritime-footer .footer-contact-label {display:block;margin-bottom:4px;color:#91afc7;font-size:11px;font-weight:500;line-height:1.5}
.maritime-footer .footer-contact-value {display:block;color:#f0f7ff;font-size:16px;font-weight:500;line-height:1.55;letter-spacing:-.2px;overflow-wrap:anywhere}
.maritime-footer .footer-contact-arrow {display:inline-block;padding-left:5px;color:#a1c5de}
.maritime-footer .footer-location {display:flex;align-items:center;gap:8px;color:var(--footer-muted);font-size:12px;line-height:1.7}
.maritime-footer .footer-location svg {width:15px;height:15px;color:#8cb6d2}
.maritime-footer .footer-demo {display:inline-flex;align-items:center;gap:18px;min-height:40px;margin-top:14px;color:#dcebf8;font-size:12px;font-weight:600}
.maritime-footer .footer-demo svg {width:16px;height:16px;color:#9bc2de}
.maritime-footer .footer-solutions {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 28px;margin:0;padding:12px 0;border-top:1px solid var(--footer-line);border-bottom:1px solid var(--footer-line)}
.maritime-footer .footer-solutions ul {display:flex;align-items:center;flex-wrap:wrap;gap:4px 28px;list-style:none;padding:0;margin:0}
.maritime-footer .footer-solutions a {display:inline-flex;align-items:center;gap:12px;min-height:36px;color:#b2cadd;font-size:12px;line-height:1.5;font-weight:450}
.maritime-footer .footer-solutions .footer-all-solutions {font-weight:600;color:#e8f3fc}
.maritime-footer .footer-solutions .footer-all-solutions span {color:#95bfdb}
.maritime-footer .footer-colophon {display:flex;align-items:center;flex-wrap:wrap;gap:10px 28px;padding-top:17px;color:#9cb8ce;font-size:11px;line-height:1.7}
.maritime-footer .footer-colophon nav {display:flex;align-items:center;flex-wrap:wrap;gap:4px 22px}
.maritime-footer .footer-colophon a {display:inline-flex;align-items:center;min-height:34px;font-size:12px;line-height:1.7;font-weight:450;color:#aec6d9;white-space:normal}
.maritime-footer .footer-top-link {margin-left:auto;gap:10px}
.maritime-footer .footer-top-link svg {width:15px;height:15px}
.maritime-footer :is(.footer-group li a,.footer-contact-link,.footer-parent a,.footer-demo,.footer-solutions a,.footer-colophon a):hover {color:#fff;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;text-decoration-color:#aacde6}
.maritime-footer .footer-contact-link:hover .footer-contact-value {color:#b7ddf7}
.maritime-footer a:focus-visible {outline:3px solid #a6d7f7;outline-offset:5px;border-radius:3px}
/* Reserve the final line for the homepage's floating WhatsApp contact. */
.compact-home .maritime-footer .footer-colophon {padding-right:190px}
@media(max-width:1100px) {
  .maritime-footer .section-shell {width:calc(100% - 64px)}
  .maritime-footer .footer-directory {grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(235px,1.2fr);gap:30px}
  .maritime-footer .footer-identity {grid-column:1/-1;display:grid;grid-template-columns:1fr 1.15fr .9fr;align-items:center;gap:25px}
  .maritime-footer .footer-identity>p,.maritime-footer .footer-identity .footer-parent {margin:0}
  .maritime-footer .footer-parent br {display:none}
}
@media(max-width:740px) {
  .maritime-footer {padding:35px 0 22px}
  .maritime-footer .section-shell {width:calc(100% - 40px)}
  .maritime-footer .footer-invitation {align-items:flex-start;flex-direction:column;gap:21px;padding-bottom:28px}
  .maritime-footer .footer-invitation h2 {font-size:32px;max-width:330px;line-height:1.15}
  .maritime-footer .footer-eyebrow {font-size:10px;letter-spacing:.12em}
  .maritime-footer .footer-conversation {min-height:46px;font-size:13px}
  .maritime-footer .footer-directory {grid-template-columns:repeat(2,minmax(0,1fr));gap:29px 22px;padding:28px 0}
  .maritime-footer .footer-identity {display:block}
  .maritime-footer .footer-identity .brand {font-size:29px}
  .maritime-footer .footer-identity>p {margin-top:16px;max-width:40ch}
  .maritime-footer .footer-identity .footer-parent {margin-top:12px}
  .maritime-footer .footer-parent a {margin:0 0 0 4px}
  .maritime-footer .footer-group h2 {font-size:10px;margin-bottom:12px}
  .maritime-footer .footer-group li a {font-size:14px;min-height:44px}
  .maritime-footer .footer-contact {grid-column:1/-1;border-left:0;border-top:1px solid var(--footer-line);padding:23px 0 0}
  .maritime-footer .footer-contact address {grid-template-columns:minmax(0,1fr);gap:17px 20px}
  .maritime-footer .footer-contact .footer-email,.maritime-footer .footer-location {grid-column:1/-1}
  .maritime-footer .footer-contact-value {font-size:16px}
  .maritime-footer .footer-demo {margin-top:10px}
  .maritime-footer .footer-solutions {align-items:flex-start;flex-direction:column;padding-block:12px;gap:3px}
  .maritime-footer .footer-solutions ul {gap:2px 20px}
  .maritime-footer .footer-solutions a {font-size:11px;min-height:38px}
  .maritime-footer .footer-colophon {padding-top:17px;gap:5px 15px;font-size:11px}
  .maritime-footer .footer-colophon>span {flex:1 0 100%}
  .maritime-footer .footer-colophon nav {gap:4px 17px}
  .maritime-footer .footer-top-link {margin-left:0}
  .compact-home .maritime-footer .footer-colophon {padding-right:60px}
}
@media(max-width:380px) {
  .maritime-footer .footer-invitation h2 {font-size:29px}
  .maritime-footer .footer-directory {gap:26px 17px}
  .maritime-footer .footer-group li a {font-size:13px}
  .maritime-footer .footer-solutions ul {gap:0 17px}
}
@media(pointer:coarse) {.maritime-footer :is(.footer-group li a,.footer-parent a,.footer-demo,.footer-solutions a,.footer-colophon a) {min-height:44px}}
@media(prefers-reduced-motion:reduce) {.maritime-footer a,.maritime-footer .footer-conversation svg {transition:none}}
