:root {
  --navy: var(--brand-primary, #0a1f41);
  --navy-2: var(--brand-secondary, #1a2a56);
  --blue: var(--brand-accent, #0878ad);
  --gray: var(--brand-gray, #5e6b7d);
  --deep: var(--brand-deep, #0a1f41);
  --cyan: var(--brand-cyan, #178bb9);
  --ink: var(--brand-ink, #101827);
  --muted: var(--brand-muted, #5e6b7d);
  --line: var(--brand-border, #dce4ed);
  --light: var(--brand-light, #f5f8fc);
  --soft: var(--brand-soft, #f4f8fc);
  --white: #fff;
  --shadow-sm: 0 10px 32px rgba(10, 31, 65, .08);
  --shadow-lg: 0 28px 70px rgba(4, 20, 44, .18);
  --radius: 18px;
  --container: 1240px;
  --ease: cubic-bezier(.2, .75, .25, 1);
}

.about-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.about-testimonial-card{display:flex;min-height:260px;flex-direction:column;justify-content:space-between;border:1px solid rgba(10,31,65,.1);border-radius:18px;background:#fff;padding:1.6rem;box-shadow:0 18px 45px rgba(10,31,65,.07)}.about-testimonial-card blockquote{position:relative;margin:0;color:var(--ink);font-size:1rem;line-height:1.75}.about-testimonial-card blockquote::before{display:block;margin-bottom:.65rem;color:var(--blue);font-family:Georgia,serif;font-size:2.8rem;font-weight:700;line-height:.55;content:'\201C'}.about-testimonial-card footer{display:flex;align-items:center;gap:.8rem;margin-top:1.4rem}.about-testimonial-card footer>img,.about-testimonial-card footer>span{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;object-fit:cover}.about-testimonial-card footer div{display:grid;gap:.18rem}.about-testimonial-card footer strong{color:var(--navy)}.about-testimonial-card footer small{color:var(--muted)}@media(max-width:900px){.about-testimonial-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.about-testimonial-grid{grid-template-columns:1fr}.about-testimonial-card{min-height:0}}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body { margin: 0; overflow-x: clip; color: var(--ink); background: #fff; font-family: "Segoe UI Variable Text", "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body.drawer-open, body.menu-open { overflow: hidden; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
p, h1, h2, h3, blockquote { margin-top: 0; }
h1, h2, h3 { color: var(--navy); font-family: "Segoe UI Variable Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif; letter-spacing: -.025em; line-height: 1.13; }
h1 { font-size: clamp(2.55rem, 5vw, 5.65rem); }
h2 { font-size: clamp(2rem, 3.2vw, 3.65rem); }
h3 { font-size: 1.22rem; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.section { position: relative; padding: clamp(78px, 8vw, 126px) 0; }
.section--soft { background: var(--soft); }
.section--navy { color: #dbe9f7; background: var(--navy); }
.section--navy h2, .section--navy h3 { color: #fff; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.skip-link { position: fixed; z-index: 9999; top: 12px; left: 12px; padding: 10px 16px; color: #fff; background: var(--navy); border-radius: 8px; transform: translateY(-180%); transition: transform .2s; }
.skip-link:focus { transform: none; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.ui-icon { width: 1.15rem; height: 1.15rem; flex: 0 0 auto; overflow: visible; }
.button .ui-icon, .text-link .ui-icon { transition: transform .28s var(--ease); }
.button:hover .ui-icon, .button:focus-visible .ui-icon, .text-link:hover .ui-icon, .text-link:focus-visible .ui-icon { transform: translateX(3px); }

.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 14px; color: var(--blue); font-size: .74rem; font-weight: 800; letter-spacing: .18em; line-height: 1.3; text-transform: uppercase; }
.eyebrow::before { width: 27px; height: 2px; content: ""; background: currentColor; }
.eyebrow--light { color: var(--cyan); }
.button { position: relative; isolation: isolate; display: inline-flex; min-height: 51px; align-items: center; justify-content: center; gap: 12px; overflow: hidden; padding: 13px 23px; color: #fff; background: var(--blue); border: 1px solid var(--blue); border-radius: 6px; font-size: .82rem; font-weight: 800; letter-spacing: .055em; line-height: 1.25; text-transform: uppercase; box-shadow: 0 12px 26px rgba(18, 133, 190, .22); transition: color .3s, background .3s, border-color .3s, transform .3s var(--ease), box-shadow .3s; }
.button::before { position: absolute; z-index: -1; inset: 0; content: ""; background: #fff; transform: translateX(-105%) skewX(-15deg); transform-origin: left; transition: transform .42s var(--ease); }
.button:hover { color: var(--navy); transform: translateY(-3px); box-shadow: 0 18px 34px rgba(10, 31, 65, .2); }
.button:hover::before { transform: translateX(0) skewX(0); }
.button:active { transform: translateY(-1px) scale(.985); }
.button--navy { background: var(--navy); border-color: var(--navy); box-shadow: 0 12px 28px rgba(10, 31, 65, .2); }
.button--white { color: var(--navy); background: #fff; border-color: #fff; }
.button--white::before { background: var(--blue); }
.button--white:hover { color: #fff; }
.button--outline { color: var(--navy); background: transparent; border-color: rgba(10, 31, 65, .3); box-shadow: none; }
.button--small { min-height: 43px; padding: 10px 16px; font-size: .72rem; }
.button--block { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--navy); font-size: .84rem; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; transition: gap .25s, color .25s; }
.text-link:hover { gap: 16px; color: var(--blue); }
.text-link:focus-visible { gap: 16px; color: var(--blue); }
.text-link--light { color: #fff; }
.text-link--light:hover, .text-link--light:focus-visible { color: #9de4ff; }

/* Header and navigation */
.utility-bar { position: relative; z-index: 110; color: #d7e8f7; background: #06172f; border-bottom: 1px solid rgba(255,255,255,.08); font-size: .72rem; letter-spacing: .025em; }
.utility-bar__inner { display: flex; min-height: 38px; align-items: center; justify-content: space-between; gap: 20px; }
.utility-bar p { margin: 0; }
.utility-bar__promise { display: flex; align-items: center; gap: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.status-dot { width: 7px; height: 7px; background: #36c88b; border-radius: 50%; box-shadow: 0 0 0 5px rgba(54, 200, 139, .12); animation: statusPulse 2.3s infinite; }
.utility-bar__links { display: flex; align-items: center; gap: 21px; }
.utility-bar__links a, .utility-bar__links span { opacity: .9; }
.utility-bar__links a:hover, .utility-bar__links a:focus-visible { opacity: 1; color: #fff; }
.utility-bar__quote { align-self: stretch; display: flex; align-items: center; gap: 7px; padding-inline: 18px; color: #fff !important; background: var(--blue); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.site-header { position: sticky; z-index: 100; top: 0; width: 100%; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(10,31,65,.08); box-shadow: 0 5px 22px rgba(10,31,65,.07); backdrop-filter: blur(18px) saturate(150%); transition: box-shadow .3s, background .3s; }
.site-header.is-scrolled { background: rgba(255,255,255,.98); box-shadow: 0 13px 38px rgba(9,27,57,.14); }
.site-header__inner { display: flex; min-height: 82px; align-items: center; gap: 18px; transition: min-height .3s var(--ease); }
.site-header.is-scrolled .site-header__inner { min-height: 74px; }
.brand { display: flex; width: clamp(192px, 16vw, 224px); flex: 0 0 auto; align-items: center; }
.brand__logo { width: 100%; height: auto; }
.desktop-nav { min-width: 0; margin-left: auto; }
.desktop-nav ul { padding: 0; margin: 0; list-style: none; }
.desktop-nav__list { display: flex; align-items: center; gap: 2px; padding: 4px; background: #f3f7fb; border: 1px solid #e4ebf3; border-radius: 16px; }
.desktop-nav__item { position: relative; }
.desktop-nav__item > a, .desktop-nav__parent > a, .desktop-nav__static-label { display: flex; min-height: 44px; align-items: center; gap: 7px; padding: 0 12px; color: #2a3a50; border-radius: 11px; font-size: .76rem; font-weight: 750; line-height: 1; white-space: nowrap; transition: color .22s, background .22s, box-shadow .22s, transform .22s; }
.desktop-nav__item > a:hover, .desktop-nav__item > a:focus-visible, .desktop-nav__parent > a:hover, .desktop-nav__parent > a:focus-visible, .desktop-nav__item.is-active > a, .desktop-nav__item.is-active .desktop-nav__parent > a, .desktop-nav__item.is-active .dropdown-toggle--label { color: var(--navy); background: #fff; box-shadow: 0 5px 16px rgba(10,31,65,.1); }
.desktop-nav__item > a:active, .desktop-nav__parent > a:active { transform: translateY(1px); }
.desktop-nav__item > a .ui-icon, .desktop-nav__parent > a .ui-icon, .desktop-nav__static-label .ui-icon { width: .95rem; height: .95rem; color: var(--blue); }
.desktop-nav__parent { display: flex; align-items: center; border-radius: 11px; }
.desktop-nav__parent > a { padding-right: 5px; }
.dropdown-toggle { display: grid; width: 44px; height: 44px; place-items: center; padding: 0; color: var(--navy); background: transparent; border: 0; border-radius: 10px; transition: color .22s, background .22s; }
.dropdown-toggle:hover, .dropdown-toggle:focus-visible { color: var(--blue); background: rgba(8,120,173,.1); }
.dropdown-toggle--label { display: flex; width: auto; min-height: 44px; gap: 7px; justify-content: flex-start; padding: 0 12px; font-size: .76rem; font-weight: 750; line-height: 1; white-space: nowrap; }
.dropdown-toggle--label > .ui-icon { width: .95rem; height: .95rem; color: var(--blue); }
.dropdown-toggle__chevron { display: grid; margin-left: 2px; place-items: center; }
.dropdown-toggle__chevron .ui-icon { width: .9rem; height: .9rem; transition: transform .26s var(--ease); }
.has-dropdown.is-open .dropdown-toggle__chevron .ui-icon { transform: rotate(180deg); }
.nav-dropdown { position: absolute; top: calc(100% + 12px); left: 50%; width: 322px; max-height: min(70vh, 520px); padding: 13px; overflow-y: auto; visibility: hidden; opacity: 0; color: var(--ink); background: rgba(255,255,255,.99); border: 1px solid rgba(10,31,65,.1); border-radius: 18px; box-shadow: 0 24px 64px rgba(5,22,48,.2); transform: translate(-50%, 12px) scale(.98); transform-origin: top center; transition: opacity .22s, transform .28s var(--ease), visibility .22s; }
.nav-dropdown::before { position: absolute; top: -7px; left: calc(50% - 7px); width: 14px; height: 14px; content: ""; background: #fff; border-top: 1px solid rgba(10,31,65,.1); border-left: 1px solid rgba(10,31,65,.1); transform: rotate(45deg); }
.has-dropdown:hover .nav-dropdown, .has-dropdown:focus-within .nav-dropdown, .has-dropdown.is-open .nav-dropdown { visibility: visible; opacity: 1; transform: translate(-50%, 0) scale(1); }
.nav-dropdown__eyebrow { position: relative; margin: 3px 7px 10px; color: var(--gray); font-size: .63rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.nav-dropdown a { position: relative; display: flex; min-height: 48px; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 11px; color: #26364d; border-radius: 11px; font-size: .84rem; font-weight: 700; transition: color .22s, background .22s, transform .22s; }
.nav-dropdown a .ui-icon:first-child { color: var(--blue); }
.nav-dropdown a .ui-icon:last-child { width: .95rem; color: #8797aa; }
.nav-dropdown a:hover, .nav-dropdown a:focus-visible, .nav-dropdown a[aria-current="page"] { color: var(--navy); background: #f1f7fb; transform: translateX(3px); }
.header-quote { flex: 0 0 auto; min-height: 46px; border-radius: 12px; text-transform: none; letter-spacing: .02em; }
.menu-toggle { display: none; width: 46px; height: 46px; padding: 10px; color: #fff; background: var(--navy); border: 0; border-radius: 12px; box-shadow: 0 10px 24px rgba(10,31,65,.2); }
.menu-toggle > span:not(.sr-only) { display: block; width: 100%; height: 2px; margin: 5px 0; background: currentColor; border-radius: 2px; transition: transform .25s; }
.drawer-backdrop { position: fixed; z-index: 190; inset: 0; background: rgba(3,16,36,.68); opacity: 0; transition: opacity .3s; backdrop-filter: blur(6px); }
.drawer-backdrop.is-visible { opacity: 1; }
.mobile-drawer { position: fixed; z-index: 200; top: 0; right: 0; width: min(92vw, 430px); height: 100vh; height: 100dvh; overflow-y: auto; padding: max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) 24px; color: #fff; background: linear-gradient(155deg,#0a2448,#06162e 72%); box-shadow: -25px 0 70px rgba(0,0,0,.3); transform: translateX(105%); visibility: hidden; transition: transform .4s var(--ease), visibility .4s; }
.mobile-drawer.is-open { visibility: visible; transform: none; }
.mobile-drawer__top { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 23px; border-bottom: 1px solid rgba(255,255,255,.14); }
.brand--drawer { width: 220px; padding: 9px 12px; background: #fff; border-radius: 10px; }
.drawer-close { display: grid; width: 44px; height: 44px; place-items: center; padding: 0; color: #fff; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.18); border-radius: 50%; transition: background .25s, transform .25s; }
.drawer-close:hover, .drawer-close:focus-visible { background: var(--blue); transform: rotate(4deg); }
.mobile-nav ul { padding: 0; margin: 0; list-style: none; }
.mobile-nav__item { border-bottom: 1px solid rgba(255,255,255,.12); }
.mobile-nav__item.is-active > .mobile-nav__row > a, .mobile-nav__item.is-active > .mobile-nav__row > .mobile-submenu-toggle--label { color: #8bddff; }
.mobile-nav__row { display: flex; align-items: center; }
.mobile-nav__row > a, .mobile-nav__static-label { display: flex; flex: 1; align-items: center; gap: 9px; padding: 17px 0; font-size: .9rem; font-weight: 800; letter-spacing: .035em; }
.mobile-nav__row > a .ui-icon, .mobile-nav__static-label .ui-icon { color: #70d2fa; }
.mobile-submenu-toggle { display: grid; width: 44px; height: 44px; place-items: center; color: #fff; background: rgba(255,255,255,.07); border: 0; border-radius: 50%; transition: background .25s; }
.mobile-submenu-toggle--label { display: flex; width: 100%; height: auto; flex: 1; justify-content: flex-start; gap: 9px; padding: 17px 0; color: #fff; background: transparent; border-radius: 0; font-size: .9rem; font-weight: 800; letter-spacing: .035em; text-align: left; }
.mobile-submenu-toggle--label:hover, .mobile-submenu-toggle--label:focus-visible, .mobile-nav__item.is-open .mobile-submenu-toggle--label { color: #8bddff; background: transparent; }
.mobile-submenu-toggle--label > .ui-icon { color: #70d2fa; }
.mobile-submenu-toggle__chevron { display: grid; margin-left: auto; place-items: center; }
.mobile-submenu-toggle__chevron .ui-icon { width: 1rem; height: 1rem; transition: transform .25s; }
.mobile-nav__item.is-open .mobile-submenu-toggle { background: var(--blue); }
.mobile-nav__item.is-open .mobile-submenu-toggle--label { background: transparent; }
.mobile-nav__item.is-open .mobile-submenu-toggle__chevron .ui-icon { transform: rotate(180deg); }
.mobile-submenu { padding: 0 0 13px 15px !important; }
.mobile-submenu a { display: block; padding: 9px 5px; color: #bad0e7; border-radius: 7px; font-size: .9rem; }
.mobile-submenu a[aria-current="page"] { color: #fff; background: rgba(255,255,255,.08); }
.mobile-drawer__footer { padding-top: 28px; }
.mobile-drawer__footer > p { color: #a8c4df; }
.mobile-drawer__contact { display: grid; gap: 7px; margin-top: 20px; color: #c8def0; font-size: .86rem; }

/* Hero */
.hero { position: relative; height: clamp(520px, 68vh, 660px); min-height: 520px; overflow: hidden; color: #fff; background: var(--navy); }
.hero__slides, .hero-slide { position: absolute; inset: 0; }
.hero-slide { z-index: 0; visibility: hidden; opacity: 0; transition: opacity .9s var(--ease), visibility .9s; }
.hero-slide.is-active { z-index: 1; visibility: visible; opacity: 1; }
.hero-slide__picture { position: absolute; inset: 0; display: block; }
.hero-slide__image { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.08); }
.hero-slide.is-active .hero-slide__image { animation: heroZoom 8s linear forwards; }
.hero-slide::before { position: absolute; z-index: 1; inset: 0; content: ""; background: linear-gradient(90deg, var(--hero-overlay-start, rgba(3, 17, 38, .93)) 0%, var(--hero-overlay-mid, rgba(5, 27, 57, .83)) 39%, var(--hero-overlay-far, rgba(5, 28, 59, .26)) 74%, var(--hero-overlay-end, rgba(5, 28, 59, .12))); }
.hero-slide::after { position: absolute; z-index: 1; right: -9%; bottom: -42%; width: 53vw; aspect-ratio: 1; content: ""; border: 1px solid rgba(108, 202, 244, .22); border-radius: 50%; box-shadow: 0 0 0 55px rgba(18, 133, 190, .045), 0 0 0 110px rgba(18, 133, 190, .035); }
.hero-slide__mesh { position: absolute; z-index: 1; inset: 0; opacity: .2; background-image: linear-gradient(rgba(255,255,255,.09) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.09) 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(90deg, #000, transparent 75%); }
.hero-slide__content { position: relative; z-index: 2; display: flex; height: 100%; align-items: center; justify-content: space-between; gap: 50px; padding-top: 25px; padding-bottom: 88px; }
.hero-copy { width: min(735px, 68%); }
.hero-slide__heading { max-width: 780px; margin-bottom: 22px; color: #fff; font-size: clamp(2.7rem, 4.8vw, 4.8rem); text-wrap: balance; }
.hero-slide__heading span { color: #9de4ff; }
.hero-copy p { max-width: 655px; margin-bottom: 31px; color: #d6e4f2; font-size: clamp(1rem, 1.35vw, 1.17rem); line-height: 1.8; }
.hero-slide.is-active .hero-copy > * { opacity: 0; animation: copyRise .75s var(--ease) forwards; }
.hero-slide.is-active .hero-copy .eyebrow { animation-delay: .15s; }
.hero-slide.is-active .hero-slide__heading { animation-delay: .27s; }
.hero-slide.is-active .hero-copy p { animation-delay: .39s; }
.hero-slide.is-active .hero-actions { animation-delay: .51s; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 27px; }
.hero-orbit { position: relative; width: min(28vw, 350px); aspect-ratio: 1; flex: 0 0 auto; opacity: .7; }
.hero-orbit__ring, .hero-orbit__globe { position: absolute; inset: 0; border: 1px solid rgba(116, 209, 246, .35); border-radius: 50%; }
.hero-orbit__ring { border-style: dashed; animation: orbitSpin 20s linear infinite; }
.hero-orbit__ring::before, .hero-orbit__ring::after { position: absolute; top: 50%; left: 50%; content: ""; border: 1px solid rgba(116, 209, 246, .25); border-radius: 50%; transform: translate(-50%, -50%); }
.hero-orbit__ring::before { width: 68%; height: 100%; }
.hero-orbit__ring::after { width: 100%; height: 40%; }
.hero-orbit__globe { inset: 16%; background: radial-gradient(circle at 30% 25%, rgba(85, 198, 242, .25), rgba(9, 44, 84, .12)); }
.hero-orbit__plane { position: absolute; top: 4%; left: 48%; color: #9de4ff; animation: planeFloat 3.3s ease-in-out infinite; }
.ui-icon--hero-plane { width: 2.15rem; height: 2.15rem; filter: drop-shadow(0 8px 18px rgba(96, 213, 255, .3)); }
.hero-slide__route { position: absolute; z-index: 2; right: 8%; bottom: 12%; display: flex; gap: 22px; }
.hero-slide__route span { width: 7px; height: 7px; background: #7cd8fb; border-radius: 50%; box-shadow: 0 0 0 5px rgba(124, 216, 251, .13); animation: routeBlink 1.8s infinite; }
.hero-slide__route span:nth-child(2) { animation-delay: .3s; }.hero-slide__route span:nth-child(3) { animation-delay: .6s; }
.hero-controls { position: absolute; z-index: 10; inset: 0; pointer-events: none; }
.hero-controls button { display: grid; place-items: center; padding: 0; color: #fff; background: rgba(7, 26, 54, .62); border: 1px solid rgba(255, 255, 255, .38); border-radius: 50%; pointer-events: auto; transition: background .25s, border-color .25s, transform .25s; backdrop-filter: blur(8px); }
.hero-controls button:hover, .hero-controls button:focus-visible { background: var(--blue); border-color: var(--blue); }
.hero-nav { position: absolute; top: 50%; width: 50px; height: 50px; transform: translateY(-50%); }
.hero-nav--prev { left: clamp(12px, 2vw, 34px); }
.hero-nav--next { right: clamp(12px, 2vw, 34px); }
.hero-nav:hover, .hero-nav:focus-visible { transform: translateY(-50%) scale(1.07); }
.hero-nav:active { transform: translateY(-50%) scale(.96); }
.hero-playback { position: absolute; right: clamp(14px, 2vw, 34px); bottom: 22px; width: 42px; height: 42px; }
.hero-playback:hover, .hero-playback:focus-visible { transform: scale(1.07); }
.hero-playback:active { transform: scale(.96); }
.hero-controls button .ui-icon { grid-area: 1 / 1; }
.hero-toggle__play { display: none; }
[data-hero-toggle][aria-pressed="true"] .hero-toggle__pause { display: none; }
[data-hero-toggle][aria-pressed="true"] .hero-toggle__play { display: block; }

/* Section systems */
.trust-strip { position: relative; z-index: 5; background: #fff; border-bottom: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.trust-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.trust-strip__grid > div { display: flex; min-height: 105px; flex-direction: column; justify-content: center; padding: 20px 34px; border-right: 1px solid var(--line); }
.trust-strip__grid > div:first-child { border-left: 1px solid var(--line); }
.trust-strip strong { color: var(--navy); font-size: clamp(1.15rem, 2vw, 1.7rem); line-height: 1.2; }
.trust-strip span { color: var(--muted); font-size: .78rem; text-transform: uppercase; }
.trust-strip small { display: block; margin-top: 4px; color: var(--muted); font-size: .68rem; line-height: 1.35; }
.section-heading { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); align-items: end; gap: clamp(35px, 7vw, 100px); margin-bottom: 48px; }
.section-heading h2 { margin: 0; text-wrap: balance; }
.section-heading p { margin-bottom: 13px; color: var(--muted); }
.section-heading--center { display: flex; max-width: 800px; flex-direction: column; align-items: center; margin-inline: auto; text-align: center; }
.section-heading--compact { display: block; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.service-card { position: relative; min-height: 315px; overflow: hidden; padding: 42px 36px; background: #fff; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: color .4s, background .4s, transform .4s var(--ease), box-shadow .4s; }
.service-card::after { position: absolute; right: -50px; bottom: -70px; width: 160px; height: 160px; content: ""; background: rgba(18, 133, 190, .1); border-radius: 50%; transform: scale(.4); transition: transform .45s var(--ease); }
.service-card:hover, .service-card:focus-within { z-index: 2; color: #d9e9f7; background: var(--navy); transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.service-card:hover::after, .service-card:focus-within::after { transform: scale(1.7); }
.service-card__top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.service-card__icon { display: grid; width: 48px; height: 48px; place-items: center; color: var(--blue); background: rgba(18, 133, 190, .09); border: 1px solid rgba(18, 133, 190, .18); border-radius: 14px; transition: color .3s, background .3s, border-color .3s, transform .3s var(--ease); }
.service-card__icon .ui-icon { width: 1.45rem; height: 1.45rem; }.service-card:hover .service-card__icon, .service-card:focus-within .service-card__icon { color: #fff; background: rgba(18, 133, 190, .35); border-color: rgba(117, 213, 248, .4); transform: rotate(-4deg) scale(1.06); }
.service-card h3 { margin: 31px 0 14px; font-size: 1.55rem; transition: color .3s; }.service-card:hover h3, .service-card:focus-within h3 { color: #fff; }
.service-card p { position: relative; z-index: 1; color: var(--muted); transition: color .3s; }.service-card:hover p, .service-card:focus-within p { color: #bdd0e3; }
.service-card a { position: absolute; z-index: 2; bottom: 30px; display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-size: .76rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.service-card__number { color: var(--blue); font-size: .75rem; font-weight: 800; letter-spacing: .12em; }
.service-card__line { position: absolute; top: 108px; left: 36px; width: 40px; height: 2px; background: var(--blue); transition: width .4s; }.service-card:hover .service-card__line, .service-card:focus-within .service-card__line { width: 80px; }
.home-divisions { border-top: 1px solid var(--line); }
.home-division-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.home-division-card { position: relative; min-height: 410px; overflow: hidden; color: #d6e5f2; background: var(--navy); border-radius: 12px; box-shadow: var(--shadow-sm); transition: transform .4s var(--ease), box-shadow .4s; }
.home-division-card:hover, .home-division-card:focus-within { transform: translateY(-9px); box-shadow: var(--shadow-lg); }
.home-division-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .42; transition: transform .7s var(--ease), opacity .4s; }
.home-division-card:hover > img, .home-division-card:focus-within > img { opacity: .32; transform: scale(1.07); }
.home-division-card::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, rgba(5,22,48,.05), rgba(5,22,48,.96) 75%); }
.home-division-card > div { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; padding: 27px; }
.home-division-card .eyebrow { color: #75d5f8; font-size: .6rem; }
.home-division-card h3 { margin-bottom: 10px; color: #fff; font-size: 1.35rem; }
.home-division-card p { color: #c2d5e5; font-size: .84rem; }
.home-division-card a { display: inline-flex; align-items: center; gap: 8px; color: #78d7fa; font-size: .72rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.split-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: center; gap: clamp(45px, 8vw, 110px); }
.split-layout--wide { grid-template-columns: minmax(0, 1.1fr) minmax(330px, .75fr); }
.content-panel h2 { margin-bottom: 22px; }.content-panel p { color: var(--muted); }
.check-list, .content-list { padding: 0; margin: 26px 0 31px; list-style: none; }
.check-list li, .content-list li { position: relative; padding: 11px 0 11px 31px; color: #344258; border-bottom: 1px solid var(--line); }
.check-list li::before, .content-list li::before { position: absolute; top: 16px; left: 2px; width: 14px; height: 8px; content: ""; border-bottom: 2px solid var(--blue); border-left: 2px solid var(--blue); transform: rotate(-45deg); }
.visual-panel { position: relative; min-height: 530px; overflow: hidden; background: linear-gradient(145deg, #0a2448, #0b4e7c); border-radius: var(--radius); box-shadow: var(--shadow-lg); }
.visual-panel__grid { position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px); background-size: 55px 55px; transform: perspective(500px) rotateX(55deg) scale(1.6); animation: gridMove 9s linear infinite; }
.visual-panel__route { position: absolute; top: 13%; right: 13%; bottom: 18%; left: 13%; border: 2px dashed rgba(126, 217, 251, .5); border-radius: 50% 20% 55% 25%; animation: routeDrift 6s ease-in-out infinite; }
.visual-panel__card { position: absolute; right: 28px; bottom: 28px; left: 28px; display: grid; padding: 28px; color: #fff; background: rgba(6, 25, 53, .78); border: 1px solid rgba(255,255,255,.17); border-radius: 12px; backdrop-filter: blur(12px); }
.visual-panel__card span { color: #78d7fa; font-size: .75rem; font-weight: 800; letter-spacing: .2em; }.visual-panel__card strong { font-size: 1.4rem; }.visual-panel__card small { color: #b8cee2; }
.process-grid { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); padding: 0; margin: 0; list-style: none; counter-reset: step; }
.process-grid::before { position: absolute; top: 36px; right: 12%; left: 12%; height: 1px; content: ""; background: var(--line); }
.process-grid li { position: relative; padding: 0 27px; text-align: center; }
.process-grid li > span { position: relative; z-index: 1; display: grid; width: 72px; height: 72px; place-items: center; margin: 0 auto 25px; color: var(--blue); background: #fff; border: 1px solid var(--line); border-radius: 50%; font-weight: 900; box-shadow: 0 0 0 9px #fff; transition: color .3s, background .3s, transform .3s; }
.process-grid li:hover > span { color: #fff; background: var(--blue); transform: rotate(8deg) scale(1.07); }
.process-grid h3 { margin-bottom: 10px; }.process-grid p { color: var(--muted); font-size: .92rem; }
.network-section { overflow: hidden; color: #cfdfed; background: linear-gradient(120deg, #06182f, var(--navy)); }
.network-section h2 { color: #fff; }.network-section p { max-width: 590px; }
.network-section__content { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 85px; }
.network-section__globe { position: absolute; top: 50%; right: -11vw; width: 58vw; max-width: 850px; aspect-ratio: 1; border: 1px solid rgba(88, 201, 242, .16); border-radius: 50%; transform: translateY(-50%); box-shadow: inset 0 0 90px rgba(18, 133, 190, .08), 0 0 0 60px rgba(18, 133, 190, .03), 0 0 0 120px rgba(18, 133, 190, .02); animation: globeBreath 6s ease-in-out infinite; }
.network-section__globe::before, .network-section__globe::after { position: absolute; top: 50%; left: 50%; content: ""; border: 1px solid rgba(88, 201, 242, .15); border-radius: 50%; transform: translate(-50%, -50%); }.network-section__globe::before { width: 55%; height: 100%; }.network-section__globe::after { width: 100%; height: 45%; }
.network-points { display: grid; gap: 12px; }
.network-points > div { display: grid; padding: 20px 23px; background: rgba(255,255,255,.065); border: 1px solid rgba(255,255,255,.12); border-radius: 8px; backdrop-filter: blur(8px); transition: transform .3s, background .3s; }.network-points > div:hover { background: rgba(18,133,190,.2); transform: translateX(-8px); }
.network-points strong { color: #fff; }.network-points span { color: #acc5db; font-size: .86rem; }
.partner-section { isolation: isolate; overflow: hidden; padding: clamp(24px, 3vw, 38px) 0; background: linear-gradient(180deg, #fff 0%, var(--light) 100%); border-bottom: 1px solid var(--line); }
.partner-section::before { position: absolute; z-index: -1; top: -160px; right: -90px; width: 440px; aspect-ratio: 1; content: ""; background: radial-gradient(circle, rgba(18,133,190,.11), transparent 68%); border-radius: 50%; }
.logo-marquee { position: relative; overflow: hidden; padding: 8px 0; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.logo-marquee__track { display: flex; width: max-content; gap: 18px; animation: logoMarquee 24s linear infinite; will-change: transform; }.logo-marquee.is-paused .logo-marquee__track { animation-play-state: paused; }
.js .logo-marquee.is-enhanced { cursor: grab; touch-action: pan-y; scrollbar-width: none; }
.js .logo-marquee.is-enhanced::-webkit-scrollbar { display: none; }
.js .logo-marquee.is-enhanced.is-dragging { cursor: grabbing; user-select: none; }
.partner-mark { display: flex; width: 210px; min-height: 96px; align-items: center; justify-content: center; padding: 13px 18px; background: rgba(255,255,255,.92); border: 1px solid rgba(10,31,65,.1); border-radius: 16px; box-shadow: 0 14px 38px rgba(10,31,65,.08); transition: border-color .3s, box-shadow .3s, transform .3s var(--ease); }.partner-mark:hover { border-color: rgba(18,133,190,.35); box-shadow: 0 20px 46px rgba(10,31,65,.13); transform: translateY(-4px); }
.partner-mark:is(a):focus-visible { outline: 3px solid rgba(18,133,190,.45); outline-offset: 3px; }
.partner-mark img { width: 72px; height: 72px; object-fit: contain; }
.association-ready { display: flex; min-height: 180px; align-items: center; justify-content: center; gap: 35px; padding: 35px; color: var(--muted); background: var(--soft); border: 1px dashed #b9c9da; border-radius: 12px; text-align: left; }
.association-ready img { width: 88px; height: 88px; object-fit: contain; }
.association-ready p { max-width: 610px; margin: 0; }
.article-grid, .news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.article-card, .news-card { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-sm); transition: transform .35s var(--ease), box-shadow .35s; }.article-card:hover, .article-card:focus-within, .news-card:hover, .news-card:focus-within { transform: translateY(-9px); box-shadow: var(--shadow-lg); }
.article-card__media, .news-card__media { display: block; height: 240px; overflow: hidden; color: #fff; background: linear-gradient(135deg, var(--navy), var(--blue)); }
.article-card__media img, .news-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s var(--ease); }.article-card:hover img, .article-card:focus-within img, .news-card:hover img, .news-card:focus-within img { transform: scale(1.06); }
.article-card__media > span { display: grid; height: 100%; place-content: center; text-align: center; font-size: 2rem; font-weight: 900; }.article-card__media small { display: block; font-size: .7rem; letter-spacing: .2em; }
.article-card__body, .news-card__body { padding: 25px; }.article-card h3, .news-card h2 { margin: 12px 0; font-size: 1.35rem; }.article-card p, .news-card p { color: var(--muted); }
.article-meta, .news-meta { display: flex; flex-wrap: wrap; gap: 8px; color: var(--blue); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.home-contact__grid { display: flex; align-items: center; justify-content: space-between; gap: 45px; }.home-contact h2 { margin-bottom: 14px; }.home-contact p { margin: 0; color: var(--muted); }.home-contact__actions { display: flex; flex: 0 0 auto; align-items: center; gap: 24px; }

/* Reference-informed home experience */
.section-heading--center { max-width: 880px; margin-bottom: clamp(42px, 6vw, 72px); }
.section-heading--center .eyebrow::after { width: 27px; height: 2px; content: ""; background: currentColor; }
.section-heading--center p { max-width: 700px; margin: 18px auto 0; }
.logistics-intro { overflow: hidden; background: #fff; }
.logistics-intro::before { position: absolute; top: -180px; left: -130px; width: 430px; aspect-ratio: 1; content: ""; background: radial-gradient(circle, rgba(18,133,190,.1), transparent 70%); border-radius: 50%; }
.logistics-story { position: relative; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr); align-items: stretch; gap: clamp(42px, 6vw, 88px); }
.logistics-story__media { position: relative; min-height: 610px; overflow: hidden; background: var(--navy); border-radius: 4px 50px 4px 4px; box-shadow: var(--shadow-lg); }
.logistics-story__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 45%, rgba(5,23,49,.68)); }
.logistics-story__media > img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.logistics-story:hover .logistics-story__media > img { transform: scale(1.035); }
.logistics-story__badge { position: absolute; z-index: 1; right: 28px; bottom: 28px; display: flex; align-items: center; gap: 12px; padding: 16px 19px; color: #fff; background: rgba(5,25,53,.82); border: 1px solid rgba(255,255,255,.2); border-radius: 8px; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(12px); }
.logistics-story__badge .ui-icon { color: #75d8fb; }
.logistics-story__content { align-self: center; }
.story-index { display: block; margin-bottom: 18px; color: var(--blue); font-size: .7rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.logistics-story__content h3 { margin-bottom: 20px; font-size: clamp(2rem, 3.4vw, 3.5rem); }
.logistics-story__content > p { color: var(--muted); }
.capability-list { display: grid; grid-template-columns: 1fr 1fr; margin: 28px 0 34px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.capability-list a { display: grid; min-height: 92px; grid-template-columns: 28px 1fr 18px; align-items: center; gap: 12px; padding: 17px; color: var(--navy); background: #fff; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: .77rem; font-weight: 800; transition: color .3s, background .3s; }
.capability-list a .ui-icon:first-child { color: var(--blue); }
.capability-list a .ui-icon:last-child { width: .9rem; height: .9rem; }
.capability-list a:hover, .capability-list a:focus-visible { color: #fff; background: var(--navy); }
.capability-list a:hover .ui-icon, .capability-list a:focus-visible .ui-icon { color: #79dafb; }
.about-preview { overflow: hidden; background: #fff; }
.about-story { position: relative; display: grid; min-height: 650px; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); overflow: hidden; color: #c4d7e8; background: linear-gradient(125deg, #06172f, #0a284e); border-radius: 4px 36px 4px 4px; box-shadow: var(--shadow-lg); }
.about-story::before { position: absolute; top: -170px; left: -170px; width: 440px; aspect-ratio: 1; content: ""; border: 1px solid rgba(111,211,248,.17); border-radius: 50%; box-shadow: 0 0 0 55px rgba(18,133,190,.03), 0 0 0 110px rgba(18,133,190,.02); }
.about-story__copy { position: relative; z-index: 2; display: flex; padding: clamp(42px, 6vw, 82px); flex-direction: column; align-items: flex-start; justify-content: center; }
.about-story__copy .story-index { color: #75d9fb; }
.about-story__copy h3 { max-width: 560px; margin-bottom: 21px; color: #fff; font-size: clamp(2rem, 3.6vw, 3.8rem); }
.about-story__copy > p { max-width: 570px; color: #c4d7e8; }
.about-story__copy .check-list { width: 100%; margin: 20px 0 31px; }
.about-story__copy .check-list li { color: #d7e7f3; border-color: rgba(255,255,255,.14); }
.about-story__media { position: relative; min-height: 520px; margin: 56px 56px 56px 0; }
.about-story__media > img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; border-radius: 2px 24px 2px 2px; box-shadow: 0 24px 70px rgba(0,0,0,.33); }
.about-story__outline { position: absolute; z-index: 0; top: -18px; right: -18px; bottom: 18px; left: 18px; border: 1px solid rgba(113,215,250,.55); border-radius: 2px 24px 2px 2px; }
.about-story__signature { position: absolute; z-index: 2; right: -22px; bottom: -22px; display: flex; width: min(340px, 80%); align-items: center; gap: 15px; padding: 16px 20px; color: var(--navy); background: #fff; border-left: 4px solid var(--blue); box-shadow: 0 18px 44px rgba(0,0,0,.2); font-size: .8rem; font-weight: 800; }
.about-story__signature img { width: 55px; height: 45px; object-fit: contain; }
.association-marquee { padding: 12px 0; }
.association-mark { position: relative; display: grid; width: 260px; min-height: 190px; place-items: center; gap: 12px; padding: 27px; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-sm); }
.association-mark img { width: 150px; height: 80px; object-fit: contain; }
.association-mark__icon { display: grid; width: 70px; height: 70px; place-items: center; color: #fff; background: var(--navy); border-radius: 50%; }
.association-mark__icon .ui-icon { width: 2rem; height: 2rem; }
.association-mark strong { color: var(--navy); }
.association-mark > a { position: absolute; top: 14px; right: 14px; color: var(--blue); }
.association-ready { display: grid; grid-template-columns: 82px 1fr auto; gap: 26px; padding: clamp(28px, 4vw, 46px); text-align: left; background: #fff; border-style: solid; box-shadow: var(--shadow-sm); }
.association-ready__mark { display: grid; width: 72px; height: 72px; place-items: center; color: #fff; background: var(--navy); border-radius: 50%; }
.association-ready__mark .ui-icon { width: 2rem; height: 2rem; }
.association-ready strong { display: block; margin-bottom: 4px; color: var(--navy); font-size: 1.15rem; }
.association-ready p { max-width: 690px; }
.division-card__mark { display: grid; width: 58px; height: 58px; place-items: center; margin-bottom: 18px; background: rgba(255,255,255,.94); border-radius: 50%; }
.division-card__mark img { width: 40px; height: 40px; object-fit: contain; }
.service-showcase { display: grid; min-height: 690px; grid-template-columns: minmax(0, 1.12fr) minmax(390px, .88fr); overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 4px 30px 4px 4px; box-shadow: var(--shadow-lg); }
.service-showcase__feature { position: relative; isolation: isolate; display: flex; min-height: 690px; overflow: hidden; align-items: flex-end; color: #fff; background: var(--navy); }
.service-showcase__feature > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease), opacity .25s; }
.service-showcase__feature:hover > img, .service-showcase__feature:focus-visible > img { transform: scale(1.045); }
.service-showcase__shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgba(3,17,38,.06) 24%, rgba(3,17,38,.9) 100%); }
.service-showcase__feature-copy { width: min(680px, 100%); padding: clamp(34px, 5vw, 68px); }
.service-showcase__index { display: block; margin-bottom: 14px; color: #9de4ff; font-size: .72rem; font-weight: 900; letter-spacing: .18em; }
.service-showcase__feature h3 { max-width: 570px; margin-bottom: 15px; color: #fff; font-size: clamp(2.15rem, 4vw, 4.25rem); }
.service-showcase__feature p { max-width: 600px; margin-bottom: 25px; color: #d7e7f4; }
.service-showcase__cta { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-size: .76rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.service-showcase__cta .ui-icon { color: #9de4ff; }
.service-showcase__list { display: grid; align-content: stretch; background: #fff; }
.service-showcase__option { display: grid; min-height: 68px; grid-template-columns: 42px minmax(0, 1fr) 22px; align-items: center; gap: 15px; padding: 12px 24px; color: var(--navy); border-bottom: 1px solid var(--line); transition: color .25s, background .25s, padding .25s; }
.service-showcase__option:last-child { border-bottom: 0; }
.service-showcase__option > span { color: var(--blue); font-size: .66rem; font-weight: 900; letter-spacing: .12em; }
.service-showcase__option > strong { overflow: hidden; font-size: .9rem; text-overflow: ellipsis; white-space: nowrap; }
.service-showcase__option > .ui-icon { width: 1rem; height: 1rem; color: var(--blue); }
.service-showcase__option:hover, .service-showcase__option:focus-visible, .service-showcase__option[aria-current="true"] { padding-left: 30px; color: #fff; background: var(--navy); }
.service-showcase__option:hover > span, .service-showcase__option:focus-visible > span, .service-showcase__option[aria-current="true"] > span,
.service-showcase__option:hover > .ui-icon, .service-showcase__option:focus-visible > .ui-icon, .service-showcase__option[aria-current="true"] > .ui-icon { color: #9de4ff; }
.services-overview .service-grid { gap: 22px; border: 0; }
.services-overview .service-card { display: flex; min-height: 100%; overflow: hidden; padding: 0; flex-direction: column; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 12px 34px rgba(10,31,65,.07); }
.services-overview .service-card::after { display: none; }
.services-overview .service-card:hover, .services-overview .service-card:focus-within { color: var(--ink); background: #fff; border-color: rgba(18,133,190,.42); transform: translateY(-9px); box-shadow: var(--shadow-lg); }
.service-card__media { position: relative !important; inset: auto !important; bottom: auto !important; display: block !important; height: 225px; overflow: hidden; color: #fff !important; background: var(--navy); }
.service-card__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 45%, rgba(3,18,40,.62)); }
.service-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); }
.service-card:hover .service-card__media img, .service-card:focus-within .service-card__media img { transform: scale(1.06); }
.service-card__media > span { position: absolute; z-index: 1; right: 18px; bottom: 15px; color: #fff; font-size: .72rem; font-weight: 900; letter-spacing: .12em; }
.service-card__body { position: relative; display: flex; padding: 31px 30px 30px; flex: 1; flex-direction: column; align-items: flex-start; }
.service-card__body .service-card__icon { position: absolute; top: -28px; left: 29px; color: #fff; background: var(--blue); border-color: rgba(255,255,255,.55); box-shadow: 0 10px 24px rgba(18,133,190,.26); }
.services-overview .service-card:hover .service-card__icon, .services-overview .service-card:focus-within .service-card__icon { color: #fff; background: var(--navy); border-color: var(--navy); }
.services-overview .service-card h3 { margin: 22px 0 12px; color: var(--navy); font-size: 1.5rem; }
.services-overview .service-card:hover h3, .services-overview .service-card:focus-within h3 { color: var(--navy); }
.services-overview .service-card p { color: var(--muted); }
.services-overview .service-card:hover p, .services-overview .service-card:focus-within p { color: var(--muted); }
.service-card__body .text-link { position: static; margin-top: auto; padding-top: 15px; }
.home-quote { overflow: hidden; background: linear-gradient(180deg, #fff, #f3f8fc); }
.home-quote::before { position: absolute; right: -170px; bottom: -230px; width: 560px; aspect-ratio: 1; content: ""; border: 1px solid rgba(18,133,190,.13); border-radius: 50%; box-shadow: 0 0 0 70px rgba(18,133,190,.025), 0 0 0 140px rgba(18,133,190,.018); }
.home-quote__shell { position: relative; display: grid; grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr); overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 4px 30px 4px 4px; box-shadow: var(--shadow-lg); }
.home-quote__media { position: relative; min-height: 620px; overflow: hidden; background: var(--navy); }
.home-quote__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, rgba(5,24,51,.08), rgba(5,24,51,.72)); }
.home-quote__media > img { width: 100%; height: 100%; object-fit: cover; }
.home-quote__media-card { position: absolute; z-index: 1; right: 28px; bottom: 28px; left: 28px; display: grid; padding: 23px; color: #fff; background: rgba(5,24,51,.84); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(12px); }
.home-quote__media-card > span { color: #72d5f9; font-size: .68rem; font-weight: 900; letter-spacing: .2em; }
.home-quote__media-card > strong { font-size: 1.2rem; }
.home-quote__media-card > small { color: #b9cede; }
.home-quote__content { display: flex; padding: clamp(39px, 5.5vw, 78px); flex-direction: column; justify-content: center; }
.home-quote__content > p { color: var(--muted); }
.quick-quote { margin-top: 25px; }
.quick-quote fieldset { padding: 0; margin: 0 0 27px; border: 0; }
.quick-quote legend { width: 100%; padding-bottom: 12px; margin-bottom: 18px; color: var(--navy); border-bottom: 1px solid var(--line); font-size: .76rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.quick-quote__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.quick-quote__grid label { display: grid; gap: 7px; color: #344258; font-size: .75rem; font-weight: 800; }
.quick-quote__grid label:first-child { grid-column: 1 / -1; }
.quick-quote input, .quick-quote select { width: 100%; min-height: 53px; padding: 11px 13px; color: var(--ink); background: #f9fbfd; border: 1px solid #cbd6e2; border-radius: 6px; outline: 0; transition: border-color .25s, box-shadow .25s, background .25s; }
.quick-quote input:focus, .quick-quote select:focus { background: #fff; border-color: var(--blue); box-shadow: 0 0 0 4px rgba(18,133,190,.12); }
.home-contact__panel { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr); align-items: center; gap: clamp(40px, 7vw, 95px); }
.home-contact__visual { position: relative; min-height: 390px; overflow: hidden; border-radius: 28px 4px 4px 4px; box-shadow: var(--shadow-lg); }
.home-contact__visual::after { position: absolute; inset: 0; content: ""; background: linear-gradient(125deg, rgba(5,25,53,.04), rgba(5,25,53,.3)); }
.home-contact__visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); }
.home-contact__panel:hover .home-contact__visual img { transform: scale(1.04); }
.home-contact__content h2 { max-width: 700px; }
.home-contact__content p { max-width: 650px; margin-bottom: 29px; }
.network-points > div { grid-template-columns: 48px 1fr; column-gap: 16px; align-items: center; }
.network-points > div > strong, .network-points > div > span:not(.network-points__icon) { grid-column: 2; }
.network-points__icon { grid-row: 1 / span 2; display: grid; width: 44px; height: 44px; place-items: center; color: #75d8fb !important; background: rgba(18,133,190,.18); border: 1px solid rgba(117,216,251,.22); border-radius: 50%; }
.network-points__icon .ui-icon { width: 1.2rem; height: 1.2rem; }
.career-job-card { display: flex; min-height: 390px; flex-direction: column; }
.career-job-card h2 { margin-top: 27px; }
.career-job-card > .text-link { margin: 5px 0 12px; font-size: .72rem; }
.career-job-card > a { margin-top: auto; padding-top: 17px; border-top: 1px solid var(--line); }
.page-career .job-list { gap: 22px; }
.page-contact .office-card { border-top: 4px solid var(--blue); box-shadow: var(--shadow-sm); }
.page-contact .office-card .membership-card__mark { width: 64px; height: 64px; }
.page-contact .office-card .contact-details { margin-bottom: 0; }
.page-contact .office-card .contact-details > * { display: grid; }

/* Interior pages */
.inner-hero { position: relative; min-height: clamp(390px, 48vw, 555px); display: flex; overflow: hidden; align-items: center; color: #d5e3f0; background: linear-gradient(115deg, #061831, var(--navy) 58%, #0b5482); }
.inner-hero::after { position: absolute; right: -10%; bottom: -70%; width: min(62vw, 740px); aspect-ratio: 1; content: ""; border: 1px solid rgba(123,214,248,.2); border-radius: 50%; box-shadow: 0 0 0 65px rgba(18,133,190,.045), 0 0 0 130px rgba(18,133,190,.025); }
.inner-hero__pattern { position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size: 70px 70px; mask-image: linear-gradient(90deg,#000,transparent); }
.inner-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .28; }
.inner-hero__content { position: relative; z-index: 2; padding-block: 80px; animation: copyRise .7s var(--ease); }
.inner-hero h1 { max-width: 930px; margin: 0 0 20px; color: #fff; font-size: clamp(2.7rem, 5vw, 5rem); }.inner-hero p { max-width: 720px; margin-bottom: 0; font-size: 1.08rem; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 38px; color: #bad0e2; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.breadcrumbs a:hover { color: #fff; }
.about-signature { position: relative; padding: 48px; overflow: hidden; color: #d8e6f3; background: var(--navy); border-radius: var(--radius); box-shadow: var(--shadow-lg); }.about-signature::after { position: absolute; right: -80px; bottom: -100px; width: 240px; height: 240px; content: ""; border: 35px solid rgba(18,133,190,.18); border-radius: 50%; }
.about-signature__mark { color: #75d0f4; font-size: .8rem; font-weight: 900; letter-spacing: .25em; }.about-signature blockquote { position: relative; z-index: 1; margin: 38px 0 20px; color: #fff; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 800; letter-spacing: -.04em; line-height: 1.12; }.about-signature p { position: relative; z-index: 1; }
.mission-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }.mission-card { min-height: 390px; padding: 46px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }.mission-card > span { color: var(--blue); font-size: .78rem; font-weight: 900; }.mission-card h2 { margin-top: 45px; font-size: clamp(1.8rem,3vw,2.7rem); }.mission-card p:last-child { color: var(--muted); }.mission-card--navy { color: #cbdceb; background: var(--navy); }.mission-card--navy h2 { color: #fff; }.mission-card--navy p:last-child { color: #cbdceb; }
.value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 17px; }.value-card { min-height: 280px; padding: 31px 27px; background: #fff; border: 1px solid var(--line); border-radius: 10px; transition: transform .35s, box-shadow .35s, border-color .35s; }.value-card:hover { border-color: var(--blue); transform: translateY(-8px); box-shadow: var(--shadow-lg); }.value-card > span { color: var(--blue); font-size: .7rem; font-weight: 900; }.value-card h3 { margin-top: 55px; font-size: 1.45rem; }.value-card p { color: var(--muted); font-size: .92rem; }
.timeline { padding: 0; margin: 0; list-style: none; }.timeline li { display: grid; grid-template-columns: 130px 1fr; gap: 35px; padding: 28px 0; border-bottom: 1px solid rgba(255,255,255,.15); }.timeline time { color: #72d3f7; font-size: 1.5rem; font-weight: 900; }.timeline p { color: #c5d8e8; }
.service-list-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 23px; }.service-list-card { position: relative; min-height: 325px; padding: 36px; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 12px; transition: transform .35s var(--ease), box-shadow .35s, border-color .35s; }.service-list-card:hover, .service-list-card:focus-within { border-color: var(--blue); transform: translateY(-7px); box-shadow: var(--shadow-lg); }.service-list-card__top { display: flex; align-items: center; justify-content: space-between; color: var(--blue); font-weight: 900; }.service-list-card__icon { width: 2rem; height: 2rem; }.service-list-card__taxonomy { display: inline-flex; margin-top: 20px; color: var(--blue); font-size: .69rem; font-weight: 850; letter-spacing: .065em; text-transform: uppercase; }.service-list-card h2 { margin: 12px 0 14px; font-size: 1.75rem; }.service-list-card p { color: var(--muted); }.service-list-card ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 20px 0 25px; list-style: none; }.service-list-card li { padding: 5px 10px; color: #425269; background: var(--soft); border-radius: 50px; font-size: .73rem; }.service-list-card > a { display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-size: .78rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.service-list-card h2 { margin-top: 34px; }.service-list-card__taxonomy + h2 { margin-top: 12px; }
.solution-banner { display: flex; align-items: center; justify-content: space-between; gap: 45px; padding: clamp(35px,5vw,65px); background: #fff; border-left: 5px solid var(--blue); border-radius: 10px; box-shadow: var(--shadow-sm); }.solution-banner h2 { margin-bottom: 12px; }.solution-banner p { margin-bottom: 0; color: var(--muted); }
.detail-layout, .article-layout, .legal-layout { display: grid; grid-template-columns: minmax(0, 1fr) 350px; align-items: start; gap: clamp(45px, 7vw, 90px); }.detail-content, .prose, .legal-content { color: #3d4b5f; font-size: 1.04rem; }.detail-content h2, .detail-content h3, .prose h2, .prose h3, .legal-content h2 { margin-top: 36px; }.detail-content img, .content-block img { width: 100%; margin: 25px 0; border-radius: 12px; }
.enquiry-card, .legal-aside { position: sticky; top: 115px; padding: 31px; background: var(--soft); border: 1px solid var(--line); border-radius: 12px; }.enquiry-card h2 { font-size: 1.65rem; }.enquiry-card p { color: var(--muted); }.enquiry-card__link { display: block; padding: 10px 0; color: var(--blue); border-top: 1px solid var(--line); font-weight: 700; }
.feature-grid, .related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }.feature-grid--detail article { padding: 28px; background: var(--soft); border: 1px solid var(--line); border-radius: 10px; }.feature-check { display: grid; width: 42px; height: 42px; place-items: center; margin-bottom: 18px; color: #fff; background: var(--blue); border-radius: 12px; }.feature-check .ui-icon { width: 1.25rem; height: 1.25rem; }.related-card { display: flex; min-height: 125px; align-items: center; justify-content: space-between; gap: 20px; padding: 26px; color: var(--navy); background: #fff; border: 1px solid var(--line); border-radius: 9px; font-weight: 800; transition: color .3s, background .3s, transform .3s; }.related-card:hover, .related-card:focus-visible { color: #fff; background: var(--navy); transform: translateY(-5px); }.related-card .ui-icon { color: var(--blue); }
.division-grid { display: grid; gap: 30px; }.division-card { display: grid; grid-template-columns: minmax(260px, .75fr) 1.25fr; min-height: 350px; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); transition: transform .35s, box-shadow .35s; }.division-card:hover, .division-card:focus-within { transform: translateY(-7px); box-shadow: var(--shadow-lg); }.division-card__visual { position: relative; display: grid; min-height: 300px; place-items: center; overflow: hidden; color: #fff; background: linear-gradient(135deg, var(--navy), var(--blue)); }.division-card__visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .55; transition: transform .7s; }.division-card:hover img, .division-card:focus-within img { transform: scale(1.07); }.division-card__visual::after { position: absolute; inset: 0; content: ""; background: linear-gradient(145deg, rgba(4,20,43,.32), rgba(18,133,190,.2)); }.division-card__visual span { z-index: 1; font-size: 3rem; font-weight: 900; letter-spacing: .12em; }.division-card__visual b { position: absolute; z-index: 2; right: 22px; bottom: 18px; font-size: .75rem; letter-spacing: .12em; }.division-card__content { align-self: center; padding: clamp(35px,6vw,70px); }.division-card__content h2 { font-size: clamp(1.8rem,3vw,2.8rem); }.division-card__content > p:not(.eyebrow) { color: var(--muted); }
.membership-grid, .office-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }.membership-card, .office-card { padding: 31px; background: #fff; border: 1px solid var(--line); border-radius: 12px; transition: transform .35s, box-shadow .35s; }.membership-card:hover, .membership-card:focus-within, .office-card:hover, .office-card:focus-within { transform: translateY(-7px); box-shadow: var(--shadow-lg); }.membership-card img { width: 100%; height: 100px; margin-bottom: 25px; object-fit: contain; }.membership-card__mark { display: grid; width: 84px; height: 84px; place-items: center; margin-bottom: 25px; color: #fff; background: var(--navy); border-radius: 50%; font-weight: 900; }.membership-card__mark .ui-icon, .empty-state__mark .ui-icon { width: 2rem; height: 2rem; }.membership-card p, .office-card p { color: var(--muted); }.membership-card a, .office-card a { display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-weight: 700; }
.network-visual { position: relative; min-height: 470px; }.network-visual__globe { position: absolute; inset: 7%; border: 1px solid rgba(18,133,190,.27); border-radius: 50%; box-shadow: inset 0 0 75px rgba(18,133,190,.11), 0 0 0 38px rgba(18,133,190,.04), 0 0 0 76px rgba(18,133,190,.025); animation: orbitSpin 35s linear infinite; }.network-visual__globe::before, .network-visual__globe::after { position: absolute; top: 50%; left: 50%; content: ""; border: 1px solid rgba(18,133,190,.23); border-radius: 50%; transform: translate(-50%,-50%); }.network-visual__globe::before { width: 45%; height: 100%; }.network-visual__globe::after { width: 100%; height: 40%; }.network-visual__point { position: absolute; width: 12px; height: 12px; background: var(--blue); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 8px rgba(18,133,190,.14); animation: statusPulse 2s infinite; }.point--one { top: 20%; left: 31%; }.point--two { top: 36%; right: 19%; animation-delay: .4s; }.point--three { right: 34%; bottom: 18%; animation-delay: .8s; }.point--four { bottom: 34%; left: 17%; animation-delay: 1.2s; }
.link-directory { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.directory-link { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px; background: #fff; border: 1px solid var(--line); border-radius: 9px; transition: transform .3s, border-color .3s; }.directory-link:hover, .directory-link:focus-visible { border-color: var(--blue); transform: translateX(5px); }.directory-link span { display: grid; }.directory-link small { color: var(--muted); }.directory-link .ui-icon { color: var(--blue); }
.culture-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.culture-grid > div { display: grid; min-height: 140px; align-content: center; padding: 24px; background: var(--soft); border: 1px solid var(--line); border-radius: 8px; }.culture-grid strong { color: var(--navy); font-size: 1.2rem; }.culture-grid span { color: var(--muted); font-size: .86rem; }
.job-list { display: grid; gap: 15px; }.job-card { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 29px; background: #fff; border: 1px solid var(--line); border-radius: 10px; transition: border-color .3s, transform .3s, box-shadow .3s; }.job-card:hover, .job-card:focus-within { border-color: var(--blue); transform: translateY(-4px); box-shadow: var(--shadow-sm); }.job-card h2 { margin: 10px 0 4px; font-size: 1.55rem; }.job-card p { margin: 0; color: var(--muted); }.job-meta, .job-hero-meta { display: flex; flex-wrap: wrap; gap: 8px; }.job-meta span, .job-hero-meta span { padding: 4px 9px; color: var(--blue); background: rgba(18,133,190,.1); border-radius: 30px; font-size: .7rem; font-weight: 800; text-transform: uppercase; }.job-hero-meta { margin: 25px 0; }.job-hero-meta span { color: #fff; background: rgba(255,255,255,.12); }
.empty-state { padding: clamp(40px,7vw,80px); text-align: center; background: #fff; border: 1px dashed #b9c8d8; border-radius: var(--radius); }.empty-state__mark { display: grid; width: 85px; height: 85px; place-items: center; margin: 0 auto 22px; color: #fff; background: var(--navy); border-radius: 50%; font-weight: 900; }.empty-state p { max-width: 600px; margin: 0 auto 25px; color: var(--muted); }
.filter-nav, .pagination { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 35px; }.filter-nav a, .pagination a { display: grid; min-width: 42px; min-height: 42px; place-items: center; padding: 8px 14px; color: #41516a; background: #fff; border: 1px solid var(--line); border-radius: 5px; font-size: .78rem; font-weight: 800; }.filter-nav a.is-active, .pagination a[aria-current="page"], .filter-nav a:hover, .filter-nav a:focus-visible, .pagination a:hover, .pagination a:focus-visible { color: #fff; background: var(--navy); border-color: var(--navy); }.news-card__fallback { display: grid; height: 100%; place-content: center; text-align: center; }.news-card__fallback span { font-size: 2.2rem; font-weight: 900; }.news-card__fallback i { font-size: .62rem; font-style: normal; letter-spacing: .16em; }
.article-hero { position: relative; overflow: hidden; padding: 85px 0; color: #d5e4f1; background: var(--navy); }.article-hero__pattern { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size: 70px 70px; }.article-hero__content { position: relative; z-index: 1; }.article-hero h1 { max-width: 950px; margin: 17px 0; color: #fff; }.article-cover { width: 100%; max-height: 600px; margin-bottom: 45px; object-fit: cover; border-radius: 15px; box-shadow: var(--shadow-lg); }.share-rail { display: flex; gap: 8px; margin: 24px 0; }.share-rail a { display: grid; width: 42px; height: 42px; place-items: center; color: #fff; background: var(--navy); border-radius: 50%; font-size: .72rem; font-weight: 800; }
.legal-aside a { display: block; padding: 8px 0; color: var(--blue); border-bottom: 1px solid var(--line); }.lead { color: #33445a; font-size: 1.2rem; }.content-page { max-width: 940px; }.content-block { padding: 38px 0; border-bottom: 1px solid var(--line); }.content-block p { color: var(--muted); }.error-page { position: relative; min-height: 72vh; display: grid; overflow: hidden; place-items: center; padding: 80px 0; background: var(--soft); }.error-page__content { position: relative; z-index: 1; max-width: 700px; text-align: center; }.error-code { color: var(--blue); font-size: clamp(5rem,15vw,11rem); font-weight: 900; letter-spacing: -.08em; line-height: .9; opacity: .18; }.error-page__route { position: absolute; width: 65vw; height: 65vw; border: 2px dashed rgba(18,133,190,.18); border-radius: 50%; animation: orbitSpin 50s linear infinite; }
.document-section { overflow: clip; padding-block: clamp(58px, 7vw, 96px); background: var(--soft); }
.document-viewer { --document-page-gap: 18px; --document-viewer-width: 1400px; width: 100%; }
.document-viewer--width-960 { --document-viewer-width: 960px; }
.document-viewer--width-1180 { --document-viewer-width: 1180px; }
.document-viewer--width-1400 { --document-viewer-width: 1400px; }
.document-viewer--width-full { --document-viewer-width: 100%; }
.document-viewer--gap-compact { --document-page-gap: 6px; }
.document-viewer--gap-large { --document-page-gap: 34px; }
.document-viewer__header { display: flex; align-items: flex-end; justify-content: space-between; gap: 34px; margin-bottom: 28px; }
.document-viewer__header > div:first-child { max-width: 690px; }
.document-viewer__header h2 { margin: 10px 0 12px; font-size: clamp(2rem, 4vw, 3.4rem); }
.document-viewer__header p { max-width: 650px; margin: 0; color: var(--muted); }
.document-viewer__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.document-viewer__header > .document-viewer__actions:first-child { margin-left: auto; }
.document-viewer__shell { width: min(calc(100% - 40px), var(--document-viewer-width)); padding: clamp(5px, .7vw, 10px); margin-inline: auto; overflow: hidden; background: #061831; border: 1px solid rgba(6, 24, 49, .16); border-radius: 14px; box-shadow: var(--shadow-lg); }
.document-viewer--width-full .document-viewer__shell { width: 100%; border-right: 0; border-left: 0; border-radius: 0; }
.document-viewer__status { padding: 9px 12px 12px; margin: 0; color: #d8e8f6; font-size: .82rem; font-weight: 800; letter-spacing: .025em; text-align: center; }
.document-viewer__status[data-pdf-status="error"] { color: #ffe2e5; }
.document-viewer__pages { display: grid; gap: var(--document-page-gap); width: 100%; }
.document-viewer__page { position: relative; width: 100%; max-width: 100%; padding: 0; margin: 0; overflow: hidden; background: #fff; border-radius: 6px; box-shadow: 0 12px 34px rgba(0,0,0,.24); contain: layout paint; }
.document-viewer__canvas { position: absolute; inset: 0; display: block; max-width: 100%; opacity: 0; background: #fff; transition: opacity .18s ease; }
.document-viewer__page.is-rendered .document-viewer__canvas { opacity: 1; }
.document-viewer__page-loading { position: absolute; inset: 0; background: linear-gradient(110deg,#eef3f7 18%,#fff 38%,#eef3f7 58%); background-size: 220% 100%; animation: documentPageLoading 1.45s linear infinite; }
.document-viewer__page.is-rendered .document-viewer__page-loading { visibility: hidden; opacity: 0; animation: none; transition: opacity .18s ease, visibility 0s linear .18s; }
.document-viewer__noscript { padding: 20px; margin: 0; color: #fff; text-align: center; }
.document-viewer__noscript a { color: #8ed8ff; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.document-viewer__fallback { margin: 16px auto 0; color: var(--muted); font-size: .88rem; text-align: center; }
.document-viewer__fallback a { color: var(--blue); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
@keyframes documentPageLoading { to { background-position-x: -220%; } }

/* Forms */
.contact-layout, .form-shell { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); align-items: start; gap: clamp(40px,7vw,90px); }.form-shell--quote { grid-template-columns: minmax(280px,.65fr) minmax(0,1.35fr); }.contact-panel, .form-intro, .quote-guide { position: sticky; top: 120px; }.contact-panel > p, .form-intro > p, .quote-guide > p { color: var(--muted); }.contact-details { display: grid; margin: 25px 0; border-top: 1px solid var(--line); }.contact-details > * { display: grid; grid-template-columns: 25px 1fr; column-gap: 11px; padding: 15px 0; border-bottom: 1px solid var(--line); }.contact-details__icon { grid-row: 1 / span 2; align-self: center; color: var(--blue); }.contact-details span, .contact-details strong { grid-column: 2; }.contact-details span { color: var(--gray); font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }.contact-details strong { color: var(--navy); font-size: .97rem; }
.form-card { position: relative; padding: clamp(28px,4.5vw,52px); background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-lg); }.form-card fieldset { padding: 0; margin: 0 0 35px; border: 0; }.form-card legend { width: 100%; padding-bottom: 12px; margin-bottom: 20px; color: var(--navy); border-bottom: 1px solid var(--line); font-size: 1.2rem; font-weight: 800; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }.form-grid label { display: grid; align-content: start; gap: 7px; color: #334158; font-size: .78rem; font-weight: 800; }.form-field--full { grid-column: 1 / -1; }.form-card input, .form-card select, .form-card textarea, .newsletter-form input { width: 100%; color: var(--ink); background: #fbfdff; border: 1px solid #cbd6e2; border-radius: 6px; outline: 0; transition: border-color .25s, box-shadow .25s, background .25s; }.form-card input, .form-card select { min-height: 49px; padding: 10px 13px; }.form-card textarea { min-height: 130px; padding: 13px; resize: vertical; }.form-card input:focus, .form-card select:focus, .form-card textarea:focus, .newsletter-form input:focus { background: #fff; border-color: var(--blue); box-shadow: 0 0 0 4px rgba(18,133,190,.12); }.form-card input[type="checkbox"] { width: 18px; min-height: 18px; accent-color: var(--blue); }.form-card input[type="file"] { padding: 10px; }.form-card small { color: #68768a; font-weight: 500; }.form-card [aria-invalid="true"] { border-color: #b72b39; box-shadow: 0 0 0 3px rgba(183,43,57,.1); }.form-card [aria-invalid="true"]:focus { border-color: #9f1f2c; box-shadow: 0 0 0 4px rgba(183,43,57,.14); }.form-card small[id$="-error"] { color: #9f1f2c; font-weight: 700; }.consent { display: flex !important; grid-template-columns: none !important; align-items: flex-start; gap: 11px !important; margin: 20px 0 25px; color: var(--muted) !important; font-size: .78rem !important; font-weight: 500 !important; }.alert { padding: 13px 16px; margin-bottom: 23px; border-radius: 6px; font-size: .88rem; }.alert--success { color: #0b6443; background: #e4f8ef; border: 1px solid #a9e3cb; }.alert--error { color: #8a2530; background: #fff0f1; border: 1px solid #f0bdc3; }.form-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }.quote-guide ol { padding: 0; margin: 28px 0; list-style: none; }.quote-guide li { display: flex; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--line); }.quote-guide li > span { color: var(--blue); font-size: .7rem; font-weight: 900; }.quote-guide li p { margin: 2px 0 0; color: var(--muted); font-size: .88rem; }.map-embed { padding: 0 0 80px; }

/* Reference-led homepage compositions */
.button--outline-light { color: #fff; background: transparent; border-color: rgba(255,255,255,.62); box-shadow: none; }
.button--outline-light::before { background: #fff; }
.button--outline-light:hover, .button--outline-light:focus-visible { color: var(--navy); border-color: #fff; }

.reference-logistics { overflow: hidden; background: #fff; }
.reference-logistics__layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(500px,1.1fr); align-items: center; gap: clamp(58px,7vw,112px); }
.reference-logistics__content { position: relative; z-index: 2; max-width: 610px; }
.reference-logistics__content .eyebrow { margin-bottom: 18px; }
.reference-logistics__content h2 { max-width: 600px; margin-bottom: 22px; color: #090d14; font-size: clamp(2.7rem,4.6vw,4.65rem); font-weight: 850; line-height: 1.04; text-wrap: balance; }
.reference-logistics__lead { max-width: 570px; color: var(--muted); font-size: 1rem; line-height: 1.75; }
.reference-logistics__lead > :last-child { margin-bottom: 0; }
.reference-logistics__detail { max-width: 560px; padding: 24px 0 0 22px; margin-top: 25px; border-left: 2px solid var(--blue); }
.reference-logistics__detail .story-index { display: block; margin-bottom: 8px; color: var(--blue); font-size: .69rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.reference-logistics__detail h3 { margin-bottom: 8px; color: var(--navy); font-size: clamp(1.15rem,1.6vw,1.42rem); }
.reference-logistics__detail p { margin: 0; color: var(--muted); font-size: .9rem; }
.reference-logistics__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 31px; }
.reference-logistics__collage { position: relative; min-height: 590px; }
.reference-logistics__collage::before { position: absolute; z-index: 0; top: 30px; right: 0; width: 72%; height: 79%; content: ""; border: 1px solid #cfd7df; transform: translate(20px,20px); }
.reference-logistics__image { position: absolute; padding: 0; margin: 0; overflow: hidden; background: #dce6ee; box-shadow: 0 22px 60px rgba(6,24,48,.14); }
.reference-logistics__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.reference-logistics__image--primary { z-index: 1; top: 0; right: 0; width: 72%; height: 78%; }
.reference-logistics__image--primary img { object-position: center; }
.reference-logistics__image--secondary { z-index: 2; bottom: 0; left: 0; width: 43%; height: 45%; border: 9px solid #fff; box-shadow: 0 24px 60px rgba(6,24,48,.2); }
.reference-logistics__image--secondary img { object-position: center; }
.reference-logistics__collage:hover .reference-logistics__image img { transform: scale(1.035); }
.reference-logistics__badge { position: absolute; z-index: 3; right: 6px; bottom: 34px; display: inline-flex; min-height: 54px; align-items: center; gap: 11px; padding: 12px 17px; color: #fff; background: var(--navy); box-shadow: 0 15px 36px rgba(6,24,48,.2); font-size: .7rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.reference-logistics__badge .ui-icon { color: #77d7f9; }

.reference-about { overflow: hidden; background: #fff; }
.reference-about__intro { max-width: 780px; margin: 0 auto 56px; text-align: center; }
.reference-about__intro .eyebrow { justify-content: center; }
.reference-about__intro .eyebrow::after { width: 27px; height: 2px; content: ""; background: currentColor; }
.reference-about__intro h2 { margin-bottom: 14px; color: #090d14; font-size: clamp(2.25rem,3.7vw,3.9rem); font-weight: 850; }
.reference-about__lead { max-width: 690px; margin-inline: auto; color: var(--muted); }
.reference-about__lead > :last-child { margin-bottom: 0; }
.reference-about__stage { position: relative; min-height: 655px; padding-bottom: 105px; }
.reference-about__panel { position: relative; width: calc(100% - clamp(100px,12vw,155px)); min-height: 520px; overflow: hidden; color: #fff; background: var(--navy); box-shadow: 0 28px 72px rgba(5,23,49,.2); }
.reference-about__backdrop { position: absolute; inset: 0; padding: 0; margin: 0; }
.reference-about__backdrop img { width: 100%; height: 100%; object-fit: cover; }
.reference-about__shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(3,18,39,.94) 0%,rgba(4,22,47,.87) 46%,rgba(4,22,47,.35) 76%,rgba(4,22,47,.18)); }
.reference-about__copy { position: relative; z-index: 2; display: flex; min-height: 520px; width: 59%; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(38px,5.4vw,72px); }
.reference-about__copy .story-index { display: block; margin-bottom: 17px; color: #86dcfa; font-size: .7rem; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.reference-about__copy h3 { margin-bottom: 17px; color: #fff; font-size: clamp(2rem,3.2vw,3.45rem); font-weight: 850; line-height: 1.08; }
.reference-about__copy > p { color: #d7e6f2; font-size: .92rem; }
.reference-about__points { width: 100%; padding: 0; margin: 17px 0 26px; list-style: none; }
.reference-about__points li { display: flex; align-items: flex-start; gap: 10px; padding: 8px 0; color: #e4eef7; border-bottom: 1px solid rgba(255,255,255,.13); font-size: .85rem; }
.reference-about__points .ui-icon { margin-top: 4px; color: #78d6f8; }
.reference-about__portrait { position: absolute; z-index: 3; top: 54px; right: 0; width: 35%; height: 530px; padding: 0; margin: 0; overflow: hidden; border: 9px solid #fff; box-shadow: 0 26px 65px rgba(5,23,49,.25); }
.reference-about__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.reference-about__experience { position: absolute; z-index: 4; bottom: 0; left: clamp(10px,3vw,42px); display: grid; grid-template-columns: 72px auto; grid-template-rows: auto auto; min-width: 315px; align-items: center; column-gap: 18px; padding: 19px 27px; color: var(--navy); background: #fff; border: 1px solid var(--line); box-shadow: 0 18px 45px rgba(7,27,53,.14); }
.reference-about__experience-mark { grid-row: 1 / span 2; display: grid; width: 72px; height: 72px; place-items: center; color: var(--blue); border: 1px dashed var(--blue); border-radius: 50%; }
.reference-about__experience-mark .ui-icon { width: 2rem; height: 2rem; }
.reference-about__experience strong { align-self: end; color: #090d14; font-size: clamp(1.5rem,2.4vw,2.15rem); line-height: 1; }
.reference-about__experience-label { align-self: start; color: var(--muted); font-size: .65rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.reference-about__experience-note { grid-column: 2; max-width: 190px; margin-top: 4px; color: var(--muted); font-size: .66rem; line-height: 1.35; }

.network-section.reference-network { min-height: 690px; overflow: hidden; color: var(--ink); background: #fff; }
.reference-network__world-map { position: absolute; z-index: 0; inset: 1% 2%; opacity: .62; background: url("../images/world-map-network.svg") center / min(100%,1200px) auto no-repeat; pointer-events: none; }
.reference-network__layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(380px,.88fr) minmax(0,1.12fr); align-items: center; gap: clamp(50px,7vw,100px); }
.reference-network__visual { display: grid; min-height: 490px; place-items: center; }
.reference-network__orbit { width: min(100%,460px); aspect-ratio: 1; background: url("../images/network-hub.svg") center / contain no-repeat; filter: drop-shadow(0 20px 30px rgba(35,58,143,.12)); animation: networkHubFloat 5s ease-in-out infinite; }
.reference-network__orbit > * { display: none; }
.reference-network__content .eyebrow { margin-bottom: 18px; }
.network-section.reference-network .reference-network__content h2 { max-width: 690px; margin-bottom: 21px; color: #11245b; font-size: clamp(2.55rem,4vw,4.2rem); font-weight: 850; }
.reference-network__lead { max-width: 720px; color: #273752; }
.reference-network__lead > :last-child { margin-bottom: 0; }
.reference-network__capabilities { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px 24px; margin: 31px 0 34px; }
.reference-network__capability { display: grid; grid-template-columns: 34px minmax(0,1fr); align-items: start; gap: 10px; padding: 11px 0; border-bottom: 1px solid rgba(10,31,65,.1); }
.reference-network__capability-icon { display: grid; width: 32px; height: 32px; place-items: center; color: var(--blue); }
.reference-network__capability-icon .ui-icon { width: 1.22rem; height: 1.22rem; }
.reference-network__capability strong { display: block; color: #102455; font-size: .86rem; line-height: 1.35; }
.reference-network__capability p { max-width: none; margin: 3px 0 0; color: var(--muted); font-size: .74rem; line-height: 1.45; }

/* QNS-inspired contact composition */
.qns-contact-hero { position: relative; min-height: 360px; overflow: hidden; color: var(--ink); background: #fff; }
.qns-contact-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .09; filter: saturate(.45); }
.qns-contact-hero__overlay { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(255,255,255,.82),#fff 92%); }
.qns-contact-hero__inner { position: relative; z-index: 1; display: flex; min-height: 360px; flex-direction: column; justify-content: center; padding-top: 48px; padding-bottom: 58px; }
.qns-contact-hero__breadcrumbs { margin: 0 0 37px; color: #617086; }
.qns-contact-hero__breadcrumbs a { color: var(--navy); }
.qns-contact-hero__content { max-width: 760px; margin-inline: auto; text-align: center; }
.qns-contact-kicker { display: flex; align-items: center; justify-content: center; gap: 13px; margin-bottom: 13px; color: var(--blue); }
.qns-contact-kicker span { width: 32px; height: 1px; background: currentColor; }
.qns-contact-kicker p { margin: 0; font-size: .69rem; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.qns-contact-hero h1 { margin-bottom: 15px; color: #090d14; font-size: clamp(2.45rem,4.4vw,4.2rem); font-weight: 850; }
.qns-contact-hero__lead { max-width: 670px; margin: 0 auto; color: var(--muted); font-size: .98rem; }
.qns-contact-main { background: #fff; }
.qns-contact-main__inner { max-width: 1096px; }
.qns-contact-intro { max-width: 760px; margin: 0 auto 48px; text-align: center; }
.qns-contact-intro .eyebrow { justify-content: center; }
.qns-contact-intro .eyebrow::after { width: 27px; height: 2px; content: ""; background: currentColor; }
.qns-contact-intro h2 { margin-bottom: 15px; color: #090d14; }
.qns-contact-intro__copy { color: var(--muted); }
.qns-contact-intro__copy > :last-child { margin-bottom: 0; }
.qns-contact-layout { display: grid; grid-template-columns: minmax(300px,.75fr) minmax(0,1.25fr); align-items: stretch; gap: 30px; }
.qns-contact-layout--form-only { grid-template-columns: 1fr; }
.qns-contact-panel { overflow: hidden; color: #d8e6f2; background: var(--navy); box-shadow: 0 25px 65px rgba(5,23,49,.18); }
.qns-contact-panel__media { position: relative; height: 285px; padding: 0; margin: 0; overflow: hidden; }
.qns-contact-panel__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg,rgba(5,23,49,.04),rgba(5,23,49,.5)); }
.qns-contact-panel__media img { width: 100%; height: 100%; object-fit: cover; }
.qns-contact-panel__media-accent { position: absolute; z-index: 1; right: 0; bottom: 0; width: 84px; height: 7px; background: var(--blue); }
.qns-contact-panel__body { padding: 10px 29px 6px; }
.qns-contact-details { margin: 0; border: 0; }
.qns-contact-details__item { display: grid !important; grid-template-columns: 46px minmax(0,1fr) !important; align-items: center; gap: 13px; min-height: 79px; padding: 15px 0 !important; color: #fff; border: 0 !important; border-bottom: 1px solid rgba(255,255,255,.13) !important; }
.qns-contact-details__icon { display: grid; width: 46px; height: 46px; place-items: center; color: #fff; background: rgba(85,200,241,.15); border: 1px solid rgba(126,218,251,.25); }
.qns-contact-details__copy { display: grid; min-width: 0; }
.qns-contact-details__copy small { color: #7fd9f9; font-size: .63rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.qns-contact-details__copy strong { overflow-wrap: anywhere; color: #fff; font-size: .86rem; line-height: 1.45; }
.qns-contact-panel__footer { padding: 22px 29px 30px; }
.qns-contact-panel__cta { width: 100%; color: var(--navy); background: #fff; border-color: #fff; box-shadow: none; }
.qns-contact-form { padding: clamp(31px,4vw,48px); border-radius: 0; border-top: 5px solid var(--blue); box-shadow: 0 25px 65px rgba(5,23,49,.13); }
.qns-contact-form__heading { margin-bottom: 29px; }
.qns-contact-form__heading h3 { margin-bottom: 0; color: #090d14; font-size: clamp(1.65rem,2.4vw,2.25rem); }
.qns-contact-form__fields { margin-bottom: 5px !important; }
.qns-contact-form__submit { min-width: 185px; }

.qns-contact-offices { padding-top: clamp(74px,8vw,118px); padding-bottom: clamp(74px,8vw,118px); background: #f4f7fa; }
.qns-contact-offices__inner { width: min(calc(100% - 40px),1166px); }
.qns-contact-offices__header { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 44px; }
.qns-contact-offices__header > div { max-width: 720px; }
.qns-contact-offices__header h2 { margin-bottom: 10px; color: #090d14; }
.qns-contact-offices__copy { color: var(--muted); }
.qns-contact-offices__copy > :last-child { margin-bottom: 0; }
.qns-contact-office-grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
.page-contact .qns-contact-office-card { display: grid; grid-template-columns: minmax(205px,.72fr) minmax(0,2.28fr); align-items: center; gap: 10px clamp(24px,4vw,55px); padding: 29px clamp(28px,5vw,65px); background: #fff; border: 0; border-left: 5px solid var(--blue); border-radius: 0; box-shadow: 0 13px 42px rgba(7,27,53,.08); }
.page-contact .qns-contact-office-card:hover, .page-contact .qns-contact-office-card:focus-within { transform: translateY(-3px); box-shadow: 0 20px 50px rgba(7,27,53,.13); }
.qns-contact-office-card__top { display: flex; align-items: center; gap: 12px; }
.qns-contact-office-card__top .eyebrow { margin: 0; }
.qns-contact-office-card__top .eyebrow::before { display: none; }
.qns-contact-office-card__icon { display: grid; width: 44px; height: 44px; flex: 0 0 auto; place-items: center; color: #fff; background: var(--navy); border-radius: 50%; }
.qns-contact-office-card > h3 { grid-column: 1; margin: 5px 0 0; color: #090d14; font-size: 1.35rem; }
.qns-contact-office-card__locality { grid-column: 1; margin: 0; color: var(--muted); font-size: .78rem; }
.page-contact .qns-contact-office-card__details { grid-column: 2; grid-row: 1 / span 3; display: grid; grid-template-columns: minmax(0,1.45fr) minmax(170px,.75fr) minmax(190px,.8fr); align-items: stretch; margin: 0; border: 0; }
.page-contact .qns-contact-office-card__detail { display: grid; grid-template-columns: 25px minmax(0,1fr); align-items: center; gap: 10px; min-width: 0; padding: 9px 22px; color: var(--navy); border: 0; border-left: 1px solid var(--line); }
.page-contact .qns-contact-office-card__detail:first-child { border-left: 0; }
.qns-contact-office-card__detail > span:first-child { align-self: start; padding-top: 5px; color: var(--blue); }
.qns-contact-office-card__detail > span:last-child { display: grid; min-width: 0; }
.qns-contact-office-card__detail small { color: var(--gray); font-size: .61rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.qns-contact-office-card__detail strong { overflow-wrap: anywhere; color: var(--navy); font-size: .8rem; line-height: 1.5; }
.qns-contact-map-cta { padding: 55px 0; background: #f4f7fa; }
.qns-contact-map-cta__inner { display: flex; align-items: center; justify-content: center; gap: 18px; }
.qns-contact-map-cta__icon { display: grid; width: 54px; height: 54px; place-items: center; color: var(--blue); background: #fff; border: 1px solid var(--line); border-radius: 50%; }

@keyframes networkHubFloat { 0%,100%{transform:translateY(0)}50%{transform:translateY(-11px)} }

@media (max-width: 1100px) {
  .reference-logistics__layout { grid-template-columns: 1fr; }
  .reference-logistics__content { max-width: 790px; }
  .reference-logistics__collage { width: min(100%,820px); min-height: 620px; margin-inline: auto; }
  .reference-about__copy { width: 64%; }
  .reference-about__portrait { width: 38%; }
  .reference-network__layout { grid-template-columns: minmax(320px,.75fr) minmax(0,1.25fr); gap: 45px; }
  .page-contact .qns-contact-office-card { grid-template-columns: 1fr; }
  .page-contact .qns-contact-office-card__details { grid-column: 1; grid-row: auto; margin-top: 19px; }
}

@media (max-width: 980px) {
  .reference-about__stage { min-height: 720px; padding-bottom: 115px; }
  .reference-about__panel { width: calc(100% - 70px); min-height: 560px; }
  .reference-about__copy { width: 72%; min-height: 560px; }
  .reference-about__portrait { top: 120px; width: 39%; height: 500px; }
  .reference-network__layout { grid-template-columns: 1fr; gap: 22px; }
  .reference-network__visual { min-height: 400px; }
  .reference-network__orbit { width: min(100%,390px); }
  .reference-network__content { max-width: 790px; margin-inline: auto; }
  .qns-contact-layout { grid-template-columns: 1fr; }
  .qns-contact-panel { display: grid; grid-template-columns: minmax(280px,.85fr) minmax(0,1.15fr); }
  .qns-contact-panel__media { height: 100%; min-height: 390px; }
  .qns-contact-panel__footer { grid-column: 2; }
  .page-contact .qns-contact-office-card__details { grid-template-columns: 1fr 1fr; }
  .page-contact .qns-contact-office-card__detail:first-child { grid-column: 1 / -1; border-bottom: 1px solid var(--line); }
  .page-contact .qns-contact-office-card__detail:nth-child(2) { border-left: 0; }
}

@media (max-width: 760px) {
  .reference-logistics__content h2 { font-size: clamp(2.35rem,11vw,3.45rem); }
  .reference-logistics__collage { min-height: 500px; }
  .reference-logistics__image--primary { width: 82%; height: 77%; }
  .reference-logistics__image--secondary { width: 54%; height: 43%; border-width: 7px; }
  .reference-logistics__collage::before { width: 82%; height: 78%; transform: translate(10px,10px); }
  .reference-logistics__badge { right: 0; bottom: 18px; max-width: 46%; }
  .reference-about__intro { margin-bottom: 40px; }
  .reference-about__stage { display: grid; min-height: 0; padding-bottom: 0; }
  .reference-about__panel { width: 100%; min-height: 590px; }
  .reference-about__copy { width: 100%; min-height: 590px; padding: 38px 24px 150px; }
  .reference-about__shade { background: linear-gradient(90deg,rgba(3,18,39,.94),rgba(4,22,47,.72)); }
  .reference-about__portrait { position: relative; top: auto; right: auto; width: 64%; height: 315px; margin: -115px 20px 0 auto; border-width: 7px; }
  .reference-about__experience { position: relative; bottom: auto; left: auto; width: min(92%,340px); min-width: 0; margin: -38px auto 0 0; }
  .reference-network__visual { min-height: 320px; }
  .reference-network__orbit { width: min(100%,310px); }
  .reference-network__capabilities { grid-template-columns: 1fr; }
  .network-section.reference-network .reference-network__content h2 { font-size: clamp(2.25rem,10vw,3.35rem); }
  .qns-contact-hero, .qns-contact-hero__inner { min-height: 330px; }
  .qns-contact-hero__inner { padding-top: 37px; padding-bottom: 45px; }
  .qns-contact-hero__breadcrumbs { margin-bottom: 28px; }
  .qns-contact-main__inner, .qns-contact-offices__inner { width: min(calc(100% - 28px),1166px); }
  .qns-contact-panel { display: block; }
  .qns-contact-panel__media { min-height: 0; height: 260px; }
  .qns-contact-panel__footer { grid-column: auto; }
  .qns-contact-offices__header { align-items: flex-start; flex-direction: column; }
  .page-contact .qns-contact-office-card { padding: 25px 22px; }
  .page-contact .qns-contact-office-card__details { grid-template-columns: 1fr; }
  .page-contact .qns-contact-office-card__detail, .page-contact .qns-contact-office-card__detail:first-child, .page-contact .qns-contact-office-card__detail:nth-child(2) { grid-column: auto; padding: 15px 0; border: 0; border-top: 1px solid var(--line); }
  .qns-contact-form { padding: 29px 22px; }
}

@media (max-width: 520px) {
  .reference-logistics__collage { min-height: 420px; }
  .reference-logistics__image--primary { width: 86%; height: 75%; }
  .reference-logistics__image--secondary { width: 60%; height: 44%; }
  .reference-logistics__badge { display: none; }
  .reference-about__panel, .reference-about__copy { min-height: 640px; }
  .reference-about__copy { padding-bottom: 155px; }
  .reference-about__portrait { width: 78%; height: 285px; }
  .reference-about__experience { grid-template-columns: 58px auto; padding: 16px 18px; }
  .reference-about__experience-mark { width: 58px; height: 58px; }
  .qns-contact-hero__content { padding-inline: 7px; }
  .qns-contact-hero h1 { font-size: clamp(2.3rem,12vw,3.2rem); }
  .qns-contact-main { padding-top: 72px; }
  .qns-contact-intro { margin-bottom: 35px; }
  .qns-contact-panel__body, .qns-contact-panel__footer { padding-right: 20px; padding-left: 20px; }
  .qns-contact-form { padding: 25px 18px; }
  .qns-contact-map-cta__inner { align-items: stretch; flex-direction: column; }
  .qns-contact-map-cta__button { width: 100%; }
}

/* Footer */
.pre-footer { position: relative; overflow: hidden; padding: 52px 0; color: #fff; background: var(--blue); }.pre-footer::before { position: absolute; inset: 0; content: ""; opacity: .18; background-image: repeating-linear-gradient(125deg,transparent 0,transparent 35px,rgba(255,255,255,.2) 36px,transparent 37px); animation: stripeMove 18s linear infinite; }.pre-footer__inner { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 40px; }.pre-footer h2 { max-width: 760px; margin: 0; color: #fff; font-size: clamp(1.85rem,3vw,3rem); }
.site-footer { position: relative; overflow: hidden; padding-top: clamp(76px, 8vw, 112px); color: #b8ccde; background: #06172f; }.site-footer__map { position: absolute; top: -180px; right: -80px; width: 750px; height: 500px; opacity: .09; background: radial-gradient(ellipse at 45% 45%,#62d0f7 0 2px,transparent 3px),radial-gradient(ellipse at 70% 35%,#62d0f7 0 2px,transparent 3px),linear-gradient(30deg,transparent 48%,#62d0f7 49% 50%,transparent 51%); background-size: 90px 70px,130px 100px,100% 100%; transform: rotate(-8deg); }.footer-grid { position: relative; display: grid; grid-template-columns: minmax(290px, 2.1fr) .7fr .85fr 1.15fr; gap: clamp(30px,5vw,70px); padding-bottom: 72px; }.footer-logo { display: inline-flex; width: min(100%, 238px); align-items: center; padding: 0; margin-bottom: 25px; background: transparent; border: 0; border-radius: 0; box-shadow: none; transition: transform .3s var(--ease); }.footer-logo:hover, .footer-logo:focus-visible { transform: translateY(-3px); }.footer-logo img { width: 100%; height: auto; object-fit: contain; filter: drop-shadow(0 9px 20px rgba(0,0,0,.2)); }.footer-logo--auto-light img { filter: brightness(0) invert(1) drop-shadow(0 9px 20px rgba(0,0,0,.2)); }.footer-brand > p { max-width: 470px; font-size: .88rem; }.footer-tagline { color: #fff; font-weight: 700; }.footer-brand .newsletter-form { max-width: 430px; margin-top: 27px; }.footer-column h2 { margin-bottom: 24px; color: #fff; font-size: .86rem; letter-spacing: .12em; text-transform: uppercase; }.footer-column ul { padding: 0; margin: 0; list-style: none; }.footer-column li + li { margin-top: 10px; }.footer-column a { font-size: .86rem; transition: color .2s, padding .2s; }.footer-column a:hover { color: #7edaff; }.footer-contact__item { display: flex !important; align-items: flex-start; gap: 10px; margin: 10px 0; color: #e9f5ff !important; }.footer-contact__item .ui-icon { width: 1rem; height: 1rem; margin-top: 4px; color: #65cef5; }.footer-contact__item p { margin: 0; color: #b8ccde; }.social-links { display: flex; gap: 8px; margin-top: 22px; }.social-links a { display: grid; width: 40px; height: 40px; place-items: center; padding: 0; color: #fff; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }.social-links a .ui-icon { width: 1.05rem; height: 1.05rem; }.social-links a:hover, .social-links a:focus-visible { color: #fff; background: var(--blue); border-color: var(--blue); transform: translateY(-3px); }.social-links a:active { transform: translateY(-1px) scale(.96); }.newsletter-form { margin-top: 22px; }.newsletter-form label { display: block; margin-bottom: 8px; color: #fff; font-size: .75rem; font-weight: 700; }.newsletter-form > div { position: relative; }.newsletter-form input { height: 47px; padding: 10px 50px 10px 13px; color: #fff; background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.18); }.newsletter-form button { position: absolute; top: 4px; right: 4px; display: grid; width: 39px; height: 39px; place-items: center; color: #fff; background: var(--blue); border: 0; border-radius: 7px; transition: background .2s, transform .2s; }.newsletter-form button:hover, .newsletter-form button:focus-visible { background: #1b9bd5; transform: scale(1.04); }.newsletter-form button:active { transform: scale(.96); }.newsletter-form button .ui-icon { width: 1rem; height: 1rem; }.footer-bottom { position: relative; display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255,255,255,.11); font-size: .75rem; }.footer-bottom p { margin: 0; }.footer-bottom > div { display: flex; flex-wrap: wrap; gap: 20px; }
.whatsapp-button { position: fixed; z-index: 78; right: 22px; bottom: 82px; display: flex; min-height: 48px; align-items: center; gap: 9px; padding: 11px 16px; color: #fff; background: #168c55; border-radius: 999px; box-shadow: 0 14px 34px rgba(7,74,42,.3); font-size: .78rem; font-weight: 800; transition: transform .25s, background .25s; }.whatsapp-button:hover, .whatsapp-button:focus-visible { color:#fff; background:#117646; transform:translateY(-3px); }.whatsapp-button .ui-icon { width:1.2rem; height:1.2rem; }
.cookie-notice { position: fixed; z-index: 210; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); display: flex; width: min(calc(100% - 36px), 480px); align-items: center; gap: 18px; padding: 17px 18px; visibility: hidden; opacity: 0; color:#d9e9f7; background:rgba(6,23,47,.98); border:1px solid rgba(255,255,255,.14); border-radius:15px; box-shadow:0 20px 60px rgba(2,14,32,.32); transform:translateY(14px); transition:opacity .25s, transform .25s, visibility .25s; }.cookie-notice.is-visible { visibility:visible; opacity:1; transform:none; }.cookie-notice p { margin:0; font-size:.82rem; }.cookie-notice button { min-height:42px; padding:9px 15px; color:#fff; background:var(--blue); border:0; border-radius:9px; font-size:.76rem; font-weight:800; }
.back-to-top { position: fixed; z-index: 80; right: 22px; bottom: 22px; display: grid; width: 46px; height: 46px; place-items: center; visibility: hidden; opacity: 0; color: #fff; background: var(--blue); border: 0; border-radius: 50%; box-shadow: 0 12px 28px rgba(10,31,65,.25); transform: translateY(15px); transition: opacity .3s, visibility .3s, background .3s, transform .3s; }.back-to-top.is-visible { visibility: visible; opacity: 1; transform: none; }.back-to-top:hover, .back-to-top:focus-visible { background: var(--navy); transform: translateY(-3px); }.back-to-top:active { transform: scale(.95); }

/* Safe CMS presentation controls for dynamically ordered homepage sections. */
.home-managed-section { position: relative; isolation: isolate; }
.home-managed-section > :not(.home-managed-section__background) { position: relative; z-index: 1; }
.home-managed-section__background { position: absolute; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; }
.home-managed-section__background::after { position: absolute; inset: 0; content: ""; background: rgba(255,255,255,.88); }
.home-managed-section__background img { width: 100%; height: 100%; object-fit: cover; }
.home-section-align--center { text-align: center; }
.home-section-align--right { text-align: right; }
.home-section-background--white { background: #fff; }
.home-section-background--soft, .home-section-background--muted { background: var(--surface); }
.home-section-background--accent { background: #edf8fd; }
.home-section-background--navy, .home-section-background--dark { color: #fff; background: var(--navy); }
.home-section-background--navy h2, .home-section-background--navy h3, .home-section-background--dark h2, .home-section-background--dark h3 { color: #fff; }
.home-section-animation--none .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
.reveal-enabled .home-section-animation--fade .reveal { transform: none; }
.reveal-enabled .home-section-animation--slide-left .reveal { transform: translateX(-32px); }
.reveal-enabled .home-section-animation--slide-right .reveal { transform: translateX(32px); }

/* Safe presentation hooks shared by CMS-managed inner-page sections. */
.managed-section { position: relative; isolation: isolate; }
/*
 * Inner heroes supply their own image/pattern/content layers. Keeping this
 * generic rule off them preserves the service-title overlay above its hero
 * image while normal CMS-managed sections retain their safe stacking order.
 */
.managed-section:not(.inner-hero) > :not(.managed-section__background) { position: relative; z-index: 1; }
.managed-section__background { position: absolute; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; }
.managed-section__background::after { position: absolute; inset: 0; content: ""; background: rgba(255,255,255,.88); }
.managed-section__background img { width: 100%; height: 100%; object-fit: cover; }
.managed-section-align--center { text-align: center; }
.managed-section-align--right { text-align: right; }
.managed-section-background--white { background: #fff; }
.managed-section-background--soft,
.managed-section-background--muted { background: var(--soft); }
.managed-section-background--accent { background: #edf8fd; }
.managed-section-background--navy,
.managed-section-background--dark { color: #fff; background: var(--navy); }
.managed-section-background--navy h1,
.managed-section-background--navy h2,
.managed-section-background--navy h3,
.managed-section-background--dark h1,
.managed-section-background--dark h2,
.managed-section-background--dark h3 { color: #fff; }
.managed-section-background--navy .managed-section__background::after,
.managed-section-background--dark .managed-section__background::after { background: rgba(10,31,65,.82); }
.managed-section-animation--none .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
.reveal-enabled .managed-section-animation--fade .reveal { transform: none; }
.reveal-enabled .managed-section-animation--slide-left .reveal { transform: translateX(-32px); }
.reveal-enabled .managed-section-animation--slide-right .reveal { transform: translateX(32px); }
.reveal-enabled .managed-section-animation--zoom .reveal { transform: scale(.96); }
.process-section__action { display: flex; justify-content: center; margin-top: 42px; }

/* Progressive reveal and motion */
.reveal { opacity: 1; transform: none; }.reveal-enabled .reveal { opacity: 0; transform: translateY(30px); transition: opacity .75s var(--ease), transform .75s var(--ease); }.reveal-enabled .reveal.is-visible { opacity: 1; transform: none; }.reveal-enabled .reveal:nth-child(2) { transition-delay: .08s; }.reveal-enabled .reveal:nth-child(3) { transition-delay: .16s; }.reveal-enabled .reveal:nth-child(4) { transition-delay: .24s; }.reveal-enabled .reveal:nth-child(5) { transition-delay: .32s; }.reveal-enabled .reveal:nth-child(6) { transition-delay: .4s; }
@keyframes statusPulse { 0%,100%{box-shadow:0 0 0 5px rgba(54,200,139,.1)}50%{box-shadow:0 0 0 10px rgba(54,200,139,0)} }
@keyframes headerDrop { from{transform:translateY(-100%);opacity:.4}to{transform:none;opacity:1} }
@keyframes heroZoom { from{transform:scale(1.08)}to{transform:scale(1.015)} }
@keyframes copyRise { from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none} }
@keyframes orbitSpin { to{transform:rotate(360deg)} }
@keyframes planeFloat { 0%,100%{transform:translate(-8px,8px) rotate(7deg)}50%{transform:translate(9px,-10px) rotate(16deg)} }
@keyframes routeBlink { 0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)} }
@keyframes gridMove { from{background-position:0 0,0 0}to{background-position:0 110px,110px 0} }
@keyframes routeDrift { 0%,100%{transform:translate(0) rotate(-3deg)}50%{transform:translate(8px,-12px) rotate(4deg)} }
@keyframes globeBreath { 0%,100%{opacity:.72;transform:translateY(-50%) scale(.97)}50%{opacity:1;transform:translateY(-50%) scale(1.02)} }
@keyframes logoMarquee { to{transform:translateX(calc(-50% - 9px))} }
@keyframes stripeMove { to{background-position:400px 0} }

@media (max-width: 1180px) {
  .utility-bar__promise { display:none; }.utility-bar__inner { justify-content:flex-end; }.utility-bar__links > span { display:none; }
  .site-header__inner { min-height:76px; }.site-header.is-scrolled .site-header__inner { min-height:70px; }.desktop-nav,.header-quote { display:none; }.menu-toggle { display:block; margin-left:auto; }.brand { width:225px; }
  .footer-grid { grid-template-columns: 1.2fr .7fr .8fr; }.footer-contact { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 40px; }.footer-contact h2 { grid-column:1/-1; }.newsletter-form { grid-column: 2; grid-row: 2 / span 4; margin-top: 0; }
}
@media (max-width: 980px) {
  .hero { height:590px; min-height:590px; }.hero-slide__content { padding-bottom:72px; }.hero-copy { width:min(700px,85%); }.hero-orbit { position:absolute;right:-80px;width:340px;opacity:.32; }
  .service-grid { grid-template-columns: repeat(2,1fr); }.service-showcase { grid-template-columns:1fr; }.service-showcase__feature { min-height:520px; }.service-showcase__list { grid-template-columns:1fr 1fr; }.service-showcase__option:nth-child(9) { border-bottom:0; }.split-layout,.split-layout--wide,.network-section__content { grid-template-columns:1fr; }.network-section__content { gap:45px; }.network-points { max-width:650px; }.section-heading { grid-template-columns:1fr; gap:20px; }.process-grid { grid-template-columns:1fr 1fr; gap:45px 0; }.process-grid::before { display:none; }
  .logistics-story { grid-template-columns:1fr; }.logistics-story__media { min-height:520px; }.logistics-story__content { max-width:720px; }
  .about-story { grid-template-columns:1fr; }.about-story__media { min-height:460px;margin:0 50px 50px; }.about-story__signature { right:-14px;bottom:-14px; }
  .home-quote__shell { grid-template-columns:1fr; }.home-quote__media { min-height:480px; }.home-contact__panel { grid-template-columns:1fr 1fr;gap:45px; }
  .home-division-grid { grid-template-columns:1fr 1fr; }
  .article-grid,.news-grid { grid-template-columns:1fr 1fr; }.value-grid { grid-template-columns:1fr 1fr; }.membership-grid,.office-grid { grid-template-columns:1fr 1fr; }
  .detail-layout,.article-layout,.legal-layout { grid-template-columns:1fr; }.enquiry-card,.legal-aside { position:relative; top:auto; }.division-card { grid-template-columns:.85fr 1.15fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }.footer-contact { grid-column:auto; display:block; }.newsletter-form { grid-column:auto; grid-row:auto; margin-top:22px; }
}
@media (max-width: 760px) {
  .container { width:min(calc(100% - 28px),var(--container)); }.section { padding:68px 0; }
  .utility-bar__links { width:100%; justify-content:flex-end; gap:13px; }.utility-bar__links > a:not(.utility-bar__quote) { display:none; }.utility-bar__quote { min-height:38px; margin-left:auto; }
  .site-header__inner { min-height:70px; }.brand { width:210px; }.brand--drawer { width:200px; }
  .hero { height:580px;min-height:580px; }.hero-slide::before { background:linear-gradient(90deg,var(--hero-overlay-start,rgba(3,17,38,.93)),var(--hero-overlay-mid,rgba(5,27,57,.7))); }.hero-slide__content { padding-top:30px;padding-bottom:82px; }.hero-copy { width:100%; }.hero-slide__heading { font-size:clamp(2.4rem,9.5vw,3.7rem); }.hero-copy p { font-size:.96rem; }.hero-orbit { display:none; }.hero-actions { gap:18px; }.hero-nav { top:auto;bottom:18px;width:42px;height:42px;transform:none; }.hero-nav--prev { left:14px; }.hero-nav--next { right:14px; }.hero-nav:hover,.hero-nav:focus-visible { transform:scale(1.07); }.hero-nav:active { transform:scale(.96); }.hero-playback { right:auto;bottom:18px;left:50%;width:42px;height:42px;transform:translateX(-50%); }.hero-playback:hover,.hero-playback:focus-visible { transform:translateX(-50%) scale(1.07); }.hero-playback:active { transform:translateX(-50%) scale(.96); }
  .trust-strip__grid { grid-template-columns:1fr 1fr; }.trust-strip__grid > div { min-height:90px;padding:17px;border-bottom:1px solid var(--line); }.trust-strip__grid > div:nth-child(odd){border-left:1px solid var(--line)}
  .service-grid,.service-list-grid,.article-grid,.news-grid,.mission-grid,.membership-grid,.office-grid,.feature-grid,.related-grid,.link-directory { grid-template-columns:1fr; }.service-showcase__feature { min-height:460px; }.service-showcase__feature-copy { padding:34px 25px; }.service-showcase__list { grid-template-columns:1fr; }.service-showcase__option:nth-child(9) { border-bottom:1px solid var(--line); }.service-card { min-height:285px; }.visual-panel { min-height:410px; }.process-grid { grid-template-columns:1fr; gap:28px; }.process-grid li { display:grid; grid-template-columns:64px 1fr; column-gap:20px; text-align:left; }.process-grid li > span { grid-row:1/span 2;width:58px;height:58px;margin:0; }.process-grid h3 { align-self:end; }.process-grid p { margin:0; }
  .home-division-grid { grid-template-columns:1fr; }.home-division-card { min-height:390px; }.association-ready { grid-template-columns:1fr;justify-items:center;text-align:center; }.association-ready p { margin-inline:auto; }
  .home-contact__grid,.home-contact__actions,.pre-footer__inner,.solution-banner,.job-card { align-items:flex-start; flex-direction:column; }.home-contact__actions { display:flex; }.network-section__globe { width:90vw;right:-35vw; }
  .logistics-story__media { min-height:420px;border-radius:4px 28px 4px 4px; }.capability-list { grid-template-columns:1fr; }.about-story { min-height:0;border-radius:4px 26px 4px 4px; }.about-story__copy { padding:40px 25px; }.about-story__media { min-height:390px;margin:0 24px 38px; }.about-story__outline { top:-10px;right:-10px;bottom:10px;left:10px; }.about-story__signature { right:-8px;bottom:-12px;width:90%; }
  .home-quote__media { min-height:390px; }.home-quote__content { padding:38px 22px; }.quick-quote__grid { grid-template-columns:1fr; }.quick-quote__grid label:first-child { grid-column:auto; }.home-contact__panel { grid-template-columns:1fr; }.home-contact__visual { width:100%;min-height:330px; }.career-job-card { min-height:340px; }
  .inner-hero { min-height:410px; }.inner-hero__content { padding-block:65px; }.breadcrumbs { margin-bottom:28px; }.inner-hero h1 { font-size:clamp(2.4rem,11vw,4rem); }
  .document-viewer { --document-page-gap:10px; }.document-viewer--gap-compact { --document-page-gap:4px; }.document-viewer--gap-large { --document-page-gap:18px; }.document-viewer__header { align-items:flex-start;flex-direction:column;gap:24px; }.document-viewer__actions { width:100%;justify-content:flex-start; }.document-viewer__actions .button { flex:1 1 220px;justify-content:center; }.document-viewer__shell { width:calc(100% - 14px);padding:4px;border-radius:8px; }.document-viewer--width-full .document-viewer__shell { width:100%;border-radius:0; }.document-viewer__status { padding:8px 8px 10px;font-size:.74rem; }.document-viewer__page { border-radius:3px; }
  .value-grid,.culture-grid { grid-template-columns:1fr; }.value-card { min-height:235px; }.division-card { grid-template-columns:1fr; }.division-card__visual { min-height:250px; }.timeline li { grid-template-columns:1fr;gap:8px; }.network-visual { min-height:370px; }
  .contact-layout,.form-shell,.form-shell--quote { grid-template-columns:1fr; }.contact-panel,.form-intro,.quote-guide { position:relative;top:auto; }.form-grid { grid-template-columns:1fr; }.form-field--full { grid-column:auto; }.form-card { padding:26px 20px; }.footer-grid { grid-template-columns:1fr; }.footer-bottom { align-items:flex-start; flex-direction:column; justify-content:center; padding:20px 0; }.footer-bottom > div { flex-wrap:wrap; }.pre-footer { padding:45px 0; }
}
@media (max-width: 520px) {
  .utility-bar__quote { width:100%; justify-content:center; }.brand { width:185px; }.brand--drawer { width:185px; min-width:0; flex-shrink:1; }.menu-toggle { width:43px;height:43px; }.mobile-drawer { padding:18px; }.mobile-drawer__top { gap:12px; }
  .hero { height:620px;min-height:620px; }.hero-slide__content { align-items:flex-start;padding-top:54px;padding-bottom:76px; }.hero-slide__heading { margin-bottom:18px;font-size:clamp(2.15rem,10.5vw,3rem); }.hero-copy p { margin-bottom:23px;line-height:1.65; }.hero-actions { align-items:flex-start;flex-direction:column;gap:14px; }.hero-actions .button { width:100%; }
  .trust-strip__grid { grid-template-columns:1fr; }.trust-strip__grid > div { border-left:1px solid var(--line); }.about-signature,.mission-card { padding:31px 24px; }.article-card__media,.news-card__media { height:210px; }.partner-mark { width:176px; min-height:88px; }.partner-mark img { width:64px; height:64px; }.footer-logo { width:min(100%,238px); }
  .logistics-story__media { min-height:340px; }.logistics-story__badge { right:16px;bottom:16px;left:16px;justify-content:center; }.about-story__media { min-height:315px; }.about-story__signature { align-items:flex-start;flex-direction:column; }.home-quote__media { min-height:330px; }.home-quote__media-card { right:16px;bottom:16px;left:16px; }.home-contact__visual { min-height:280px; }.service-card__media { height:205px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; } *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }.reveal { opacity:1;transform:none; }.hero-slide__image { transform:none; }.logo-marquee__track { transform:none; }
}
body[data-animation-level="minimal"] *, body[data-animation-level="minimal"] *::before, body[data-animation-level="minimal"] *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.15s !important; }

/* Database-managed office addresses inside the shared Stay Connected column */
.footer-contact__offices { display: grid; grid-column: 1 / -1; gap: 8px; min-width: 0; margin-bottom: 14px; }
.footer-contact__offices-heading { margin: 0 0 4px; color: #87d9f7; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.footer-contact__office { min-width: 0; padding: 10px 11px; margin: 0; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 7px; }
.footer-contact__office > div { min-width: 0; }
.footer-contact__office strong { display: block; margin-bottom: 3px; color: #fff; font-size: .77rem; line-height: 1.35; }
.footer-contact__office address { overflow-wrap: anywhere; color: #b8ccde; font-size: .72rem; font-style: normal; line-height: 1.5; }
@media (min-width: 981px) and (max-width: 1180px) { .footer-contact__offices { grid-template-columns: repeat(2,minmax(0,1fr)); }.footer-contact__offices-heading { grid-column: 1 / -1; } }
@media (max-width: 520px) { .footer-contact__office { padding: 10px; } }
