:root {
  --bg: #f7fbfa;
  --bg-2: #edf5f4;
  --panel: rgba(255, 255, 255, 0.8);
  --panel-2: rgba(255, 255, 255, 0.95);
  --line: rgba(7, 60, 81, 0.14);
  --text: #073c51;
  --muted: #5f7779;
  --soft: #87aaa9;
  --brand: #073c51;
  --cyan: #467b82;
  --cyan-soft: rgba(70, 123, 130, 0.12);
  --green: #3e7741;
  --gold: #e8ae3e;
  --white: #fff;
  --shadow: 0 24px 70px rgba(7, 45, 61, 0.12);
  --shadow-soft: 0 12px 35px rgba(7, 45, 61, 0.08);
  --radius: 28px;
  --max: 1180px;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  font-family:
    Inter,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;
  background:
    radial-gradient(
      circle at 12% 8%,
      rgba(70, 123, 130, 0.12),
      transparent 32%
    ),
    radial-gradient(
      circle at 88% 6%,
      rgba(226, 170, 36, 0.12),
      transparent 28%
    ),
    linear-gradient(150deg, #ffffff 0%, var(--bg) 48%, #edf5f4 100%);
  color: var(--text);
  overflow-x: hidden;
  font-weight: 400;
}
a {
  color: inherit;
  text-decoration: none;
}
img {
  max-width: 100%;
  display: block;
}
.page-shell {
  position: relative;
  min-height: 100vh;
  isolation: isolate;
}
.noise {
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.035;
  z-index: -1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}
.section-pad {
  max-width: var(--max);
  margin: 0 auto;
  padding: 110px 24px;
}
.site-header {
  width: min(calc(100% - 32px), var(--max));
  position: fixed;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 14px 12px 12px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(22px);
  border-radius: 999px;
  z-index: 20;
  box-shadow: 0 18px 50px rgba(7, 45, 61, 0.11);
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.brand-logo {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  overflow: hidden;
  background: #fff;
  display: grid;
  place-items: center;
  padding: 3px;
  box-shadow: 0 0 0 1px rgba(8, 54, 72, 0.08);
}
.brand-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.brand-copy {
  display: flex;
  flex-direction: column;
  line-height: 1.08;
}
.brand-copy strong {
  font-size: 14px;
  white-space: nowrap;
  font-weight: 650;
  color: var(--text);
}
.brand-copy small {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-top: 4px;
  font-weight: 500;
}
.site-nav {
  display: flex;
  align-items: center;
  gap: 4px;
}
.site-nav a {
  font-size: 13px;
  color: var(--muted);
  padding: 12px 14px;
  border-radius: 999px;
  transition: 0.25s ease;
  font-weight: 500;
}
.site-nav a:hover {
  color: var(--brand);
  background: rgba(70, 123, 130, 0.1);
}
.site-nav .nav-cta {
  background: linear-gradient(
    135deg,
    var(--brand) 0%,
    #2f6970 58%,
    var(--green) 100%
  );
  color: #fff;
  font-weight: 650;
  box-shadow: 0 12px 24px rgba(70, 123, 130, 0.2);
}
.nav-toggle {
  display: none;
  background: none;
  border: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  position: relative;
}
.nav-toggle span {
  position: absolute;
  left: 14px;
  right: 14px;
  height: 2px;
  background: var(--brand);
  transition: 0.25s;
}
.nav-toggle span:first-child {
  top: 18px;
}
.nav-toggle span:last-child {
  top: 28px;
}
.hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-top: 120px;
  padding-bottom: 70px;
  position: relative;
  isolation: isolate;
}
.hero:before {
  content: "";
  position: absolute;
  inset: 82px -80px -30px;
  border-radius: 52px;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.74) 0%,
    rgba(255, 255, 255, 0.55) 44%,
    rgba(238, 247, 251, 0.2) 100%
  );
  z-index: -3;
  pointer-events: none;
}
.hero:after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      circle at 16% 46%,
      rgba(70, 123, 130, 0.13),
      transparent 34%
    ),
    radial-gradient(circle at 86% 18%, rgba(226, 170, 36, 0.1), transparent 28%);
  z-index: -2;
  pointer-events: none;
}
.hero-video {
  position: absolute;
  inset: 82px -80px -30px;
  width: calc(100% + 160px);
  height: calc(100% - 52px);
  object-fit: cover;
  border-radius: 52px;
  z-index: -5;
  pointer-events: none;
  opacity: 0.52;
  filter: saturate(0.95) contrast(0.96) brightness(1.08);
}
.hero-video-overlay {
  position: absolute;
  inset: 82px -80px -30px;
  border-radius: 52px;
  z-index: -4;
  pointer-events: none;
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.96) 0%,
      rgba(255, 255, 255, 0.86) 40%,
      rgba(246, 250, 252, 0.55) 66%,
      rgba(238, 247, 251, 0.28) 100%
    ),
    radial-gradient(
      circle at 18% 42%,
      rgba(11, 166, 189, 0.15),
      transparent 34%
    ),
    radial-gradient(circle at 85% 26%, rgba(226, 170, 36, 0.1), transparent 30%);
}
.hero-content {
  max-width: 800px;
  position: relative;
  z-index: 2;
}
.eyebrow,
.section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--brand);
  background: rgba(70, 123, 130, 0.1);
  border: 1px solid rgba(70, 123, 130, 0.2);
  padding: 9px 13px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.pulse-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 0 8px rgba(70, 123, 130, 0.12);
  animation: pulse 1.7s infinite;
}
.hero h1,
.section-heading h2,
.airspace-copy h2,
.quote-copy h2 {
  font-family:
    Inter,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;
  font-size: clamp(42px, 6vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.055em;
  margin: 22px 0;
  color: var(--text);
  font-weight: 560;
}
.hero-lead {
  font-size: clamp(24px, 3.5vw, 42px);
  font-weight: 500;
  margin: 0;
  background: linear-gradient(
    90deg,
    var(--brand) 0%,
    var(--cyan) 42%,
    var(--green) 70%,
    var(--gold) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  letter-spacing: -0.04em;
}
.hero-copy {
  font-size: 18px;
  line-height: 1.75;
  color: var(--muted);
  max-width: 610px;
  margin: 20px 0 0;
  font-weight: 400;
}
.hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 32px;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px 22px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 600;
  transition: 0.25s ease;
  cursor: pointer;
}
.btn:hover {
  transform: translateY(-2px);
}
.btn-primary {
  background: linear-gradient(
    135deg,
    var(--brand) 0%,
    #2f6970 58%,
    var(--green) 100%
  );
  color: #fff;
  box-shadow: 0 18px 36px rgba(70, 123, 130, 0.2);
}
.btn-ghost {
  border-color: var(--line);
  background: rgba(255, 255, 255, 0.65);
  color: var(--brand);
}
.btn-whatsapp {
  background: rgba(62, 119, 65, 0.12);
  border-color: rgba(62, 119, 65, 0.25);
  color: #2f7134;
  width: 100%;
}
.hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 36px;
  max-width: 610px;
}
.hero-metrics div {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 0 14px 34px rgba(7, 45, 61, 0.075);
  backdrop-filter: blur(14px);
}
.hero-metrics strong {
  display: block;
  font-size: 24px;
  color: var(--brand);
  font-weight: 560;
}
.hero-metrics span {
  font-size: 12px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-weight: 500;
}
.radar-card {
  padding: 16px;
  background: rgba(255, 255, 255, 0.76);
  border: 1px solid var(--line);
  border-radius: 34px;
  box-shadow: var(--shadow);
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(18px);
}
.radar-card:before {
  content: "";
  position: absolute;
  inset: -1px;
  background: linear-gradient(
    135deg,
    rgba(11, 166, 189, 0.16),
    transparent 42%,
    rgba(232, 174, 62, 0.14)
  );
  pointer-events: none;
  opacity: 0.95;
}
.radar-topbar,
.radar-footer {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.radar-topbar {
  padding: 8px 8px 16px;
  color: var(--brand);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.14em;
}
.status-live {
  color: #fff;
  background: var(--cyan);
  padding: 7px 10px;
  border-radius: 999px;
}
.radar-screen {
  height: 500px;
  border-radius: 26px;
  background:
    radial-gradient(circle, rgba(70, 123, 130, 0.13), transparent 50%),
    linear-gradient(160deg, #f0f7f6, #ffffff);
  border: 1px solid rgba(70, 123, 130, 0.2);
  overflow: hidden;
  position: relative;
}
.radar-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(70, 123, 130, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(70, 123, 130, 0.12) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: radial-gradient(circle, #000 52%, transparent 80%);
}
.radar-screen:before,
.radar-screen:after {
  content: "";
  position: absolute;
  inset: 10%;
  border: 1px solid rgba(70, 123, 130, 0.28);
  border-radius: 50%;
}
.radar-screen:after {
  inset: 25%;
  opacity: 0.85;
}
.radar-sweep {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 48%;
  height: 2px;
  transform-origin: left center;
  background: linear-gradient(90deg, rgba(70, 123, 130, 0.88), transparent);
  animation: sweep 5s linear infinite;
}
.island {
  position: absolute;
  background: linear-gradient(135deg, #3e7741, #74a548);
  filter: drop-shadow(0 0 18px rgba(60, 190, 90, 0.18));
  opacity: 0.92;
}
.island-main {
  width: 150px;
  height: 72px;
  left: 44%;
  top: 49%;
  border-radius: 60% 40% 55% 45%;
  transform: rotate(-19deg);
}
.island-small {
  width: 64px;
  height: 31px;
  left: 39%;
  top: 34%;
  border-radius: 60% 40% 55% 45%;
  transform: rotate(16deg);
}
.airport-marker {
  position: absolute;
  padding: 9px 11px;
  border: 1px solid rgba(8, 54, 72, 0.13);
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
  border-radius: 15px;
  box-shadow: 0 0 0 5px rgba(70, 123, 130, 0.06);
}
.airport-marker strong {
  display: block;
  color: var(--text);
  font-size: 12px;
  font-weight: 650;
}
.airport-marker small {
  display: block;
  color: var(--muted);
  font-size: 10px;
  margin-top: 2px;
}
.marker-fpst {
  left: 57%;
  top: 53%;
}
.marker-fppr {
  left: 35%;
  top: 30%;
}
.route {
  position: absolute;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform-origin: left;
}
.route-one {
  width: 210px;
  left: 40%;
  top: 39%;
  transform: rotate(37deg);
}
.route-two {
  width: 260px;
  left: 30%;
  top: 68%;
  transform: rotate(-23deg);
  opacity: 0.55;
}
.aircraft {
  position: absolute;
  color: var(--brand);
  font-size: 25px;
  text-shadow: 0 0 18px rgba(70, 123, 130, 0.28);
}
.aircraft-one {
  left: 22%;
  top: 62%;
  animation: planeOne 8s ease-in-out infinite;
}
.aircraft-two {
  right: 18%;
  top: 24%;
  animation: planeTwo 10s ease-in-out infinite;
}
.coordinates {
  position: absolute;
  left: 18px;
  bottom: 18px;
  color: rgba(9, 40, 56, 0.52);
  font-size: 11px;
  letter-spacing: 0.12em;
}
.radar-footer {
  padding: 16px 6px 4px;
}
.radar-footer div {
  flex: 1;
  background: rgba(255, 255, 255, 0.66);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 13px;
}
.radar-footer span {
  display: block;
  font-size: 10px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 500;
}
.radar-footer strong {
  display: block;
  margin-top: 3px;
  color: var(--brand);
  font-weight: 650;
}
.marquee {
  overflow: hidden;
  border-block: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.55);
}
.marquee-track {
  display: flex;
  gap: 28px;
  width: max-content;
  animation: marquee 22s linear infinite;
  padding: 20px 0;
}
.marquee span {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--brand);
  white-space: nowrap;
}
.marquee span:after {
  content: "/";
  margin-left: 28px;
  color: var(--gold);
}
.section-heading {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 54px;
}
.section-heading h2,
.airspace-copy h2,
.quote-copy h2 {
  font-size: clamp(34px, 5vw, 58px);
  letter-spacing: -0.045em;
  font-weight: 620;
}
.section-heading p,
.airspace-copy p,
.quote-copy p {
  color: var(--muted);
  font-size: 17px;
  line-height: 1.75;
}
.narrow {
  max-width: 900px;
}
.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.service-card,
.why-item,
.system-card,
.quote-card,
.trust-strip {
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.75);
  border-radius: var(--radius);
  box-shadow: var(--shadow-soft);
}
.service-card {
  padding: 26px;
  min-height: 250px;
  transition: 0.25s ease;
}
.service-card:hover {
  transform: translateY(-6px);
  border-color: rgba(70, 123, 130, 0.28);
  box-shadow: var(--shadow);
}
.service-card.featured {
  background: linear-gradient(
    180deg,
    rgba(70, 123, 130, 0.11),
    rgba(255, 255, 255, 0.82)
  );
}
.service-card.wide {
  grid-column: span 2;
}
.icon-box {
  width: 56px;
  height: 56px;
  border-radius: 19px;
  background: rgba(70, 123, 130, 0.11);
  border: 1px solid rgba(70, 123, 130, 0.2);
  display: grid;
  place-items: center;
  font-size: 26px;
  margin-bottom: 24px;
}
.service-card h3 {
  font-size: 22px;
  margin: 0 0 12px;
  font-weight: 620;
  color: var(--text);
}
.service-card p {
  color: var(--muted);
  line-height: 1.72;
  margin: 0;
  font-weight: 400;
}
.airspace-panel {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  gap: 26px;
  align-items: stretch;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 36px;
  background:
    radial-gradient(
      circle at 80% 20%,
      rgba(70, 123, 130, 0.11),
      transparent 36%
    ),
    rgba(255, 255, 255, 0.62);
  box-shadow: var(--shadow-soft);
}
.check-list {
  list-style: none;
  padding: 0;
  margin: 28px 0 0;
  display: grid;
  gap: 12px;
}
.check-list li {
  color: var(--text);
  font-weight: 450;
}
.check-list li:before {
  content: "✓";
  color: var(--cyan);
  font-weight: 700;
  margin-right: 10px;
}
.system-card {
  padding: 24px;
  display: grid;
  gap: 14px;
}
.system-row {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 18px;
  border-radius: 18px;
  background: rgba(247, 251, 250, 0.86);
  border: 1px solid var(--line);
}
.system-row span {
  color: var(--muted);
}
.system-row strong {
  text-align: right;
  color: var(--brand);
  font-weight: 620;
}
.why-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.why-item {
  padding: 25px;
}
.why-item span {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(232, 174, 62, 0.16);
  color: #9b6d08;
  font-weight: 650;
  margin-bottom: 25px;
}
.why-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.trust-strip {
  margin-top: 18px;
  padding: 28px;
  text-align: center;
}
.trust-strip p {
  margin: 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.75;
}
.quote-card {
  display: grid;
  grid-template-columns: 0.85fr 1fr;
  gap: 28px;
  padding: 28px;
  background:
    radial-gradient(
      circle at 15% 15%,
      rgba(232, 174, 62, 0.12),
      transparent 32%
    ),
    rgba(255, 255, 255, 0.76);
}
.contact-list {
  display: grid;
  gap: 10px;
  margin-top: 26px;
}
.contact-list a,
.contact-list span {
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: rgba(247, 251, 250, 0.88);
  color: var(--brand);
}
.quote-form {
  display: grid;
  gap: 14px;
  background: rgba(247, 251, 250, 0.78);
  border: 1px solid var(--line);
  border-radius: 26px;
  padding: 22px;
}
.quote-form label {
  display: grid;
  gap: 8px;
  color: var(--brand);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}
.quote-form input,
.quote-form select,
.quote-form textarea {
  width: 100%;
  border: 1px solid rgba(8, 54, 72, 0.13);
  background: #fff;
  border-radius: 16px;
  color: var(--text);
  padding: 15px 14px;
  font: inherit;
  outline: none;
}
.quote-form select option {
  color: var(--text);
}
.quote-form textarea {
  resize: vertical;
}
.quote-form input:focus,
.quote-form select:focus,
.quote-form textarea:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 4px rgba(70, 123, 130, 0.1);
}
[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
}
[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}
@keyframes pulse {
  50% {
    box-shadow: 0 0 0 12px rgba(11, 166, 189, 0.02);
  }
}
@keyframes sweep {
  to {
    transform: rotate(360deg);
  }
}
@keyframes planeOne {
  0%,
  100% {
    transform: translate(0, 0) rotate(12deg);
  }
  50% {
    transform: translate(180px, -120px) rotate(30deg);
  }
}
@keyframes planeTwo {
  0%,
  100% {
    transform: translate(0, 0) rotate(-25deg);
  }
  50% {
    transform: translate(-170px, 190px) rotate(-45deg);
  }
}
@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}
@media (max-width: 940px) {
  .hero-video,
  .hero-video-overlay {
    inset: 72px -24px 0;
    width: calc(100% + 48px);
    height: calc(100% - 72px);
    border-radius: 34px;
  }
  .hero-video {
    opacity: 0.42;
  }
  .hero:before {
    inset: 72px -24px 0;
    border-radius: 34px;
  }
  .site-nav {
    position: absolute;
    top: 74px;
    left: 0;
    right: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 14px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid var(--line);
    border-radius: 24px;
    box-shadow: var(--shadow);
  }
  .site-nav.is-open {
    display: flex;
  }
  .nav-toggle {
    display: block;
  }
  .hero,
  .airspace-panel,
  .quote-card {
    grid-template-columns: 1fr;
  }
  .hero {
    padding-top: 140px;
  }
  .services-grid,
  .why-grid {
    grid-template-columns: 1fr;
  }
  .service-card.wide {
    grid-column: auto;
  }
  .hero-metrics {
    grid-template-columns: 1fr;
  }
  .radar-screen {
    height: 420px;
  }
  .brand-copy strong {
    font-size: 12px;
  }
  .brand-copy small {
    display: none;
  }
}
@media (max-width: 560px) {
  .hero-video,
  .hero-video-overlay {
    inset: 60px -8px 10px;
    width: calc(100% + 16px);
    height: calc(100% - 70px);
    border-radius: 26px;
  }
  .hero-video {
    opacity: 0.38;
  }
  .hero:before {
    inset: 60px -8px 10px;
    border-radius: 26px;
  }
  .section-pad {
    padding: 86px 18px;
  }
  .site-header {
    width: calc(100% - 20px);
    top: 10px;
  }
  .brand-logo {
    width: 44px;
    height: 44px;
  }
  .hero h1 {
    font-size: 42px;
  }
  .hero-actions .btn {
    width: 100%;
  }
  .radar-card {
    padding: 10px;
  }
  .radar-screen {
    height: 360px;
  }
  .radar-footer {
    display: grid;
    grid-template-columns: 1fr;
  }
  .quote-card,
  .airspace-panel {
    padding: 18px;
    border-radius: 26px;
  }
}
.hero.section-pad {
  max-width: none;
  width: 100%;
  margin: 0;
  min-height: 100vh;
  height: 100vh;
  padding-top: 120px;
  padding-bottom: 80px;
  padding-left: max(24px, calc((100vw - var(--max)) / 2));
  padding-right: max(24px, calc((100vw - var(--max)) / 2));
  overflow: hidden;
  background: #f7fbfa;
}
.hero:before,
.hero:after,
.hero-video,
.hero-video-overlay {
  inset: 0;
  border-radius: 0;
}
.hero:before {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.94) 0%,
    rgba(255, 255, 255, 0.82) 40%,
    rgba(247, 251, 250, 0.56) 68%,
    rgba(238, 247, 251, 0.2) 100%
  );
}
.hero-video {
  width: 100%;
  height: 100%;
  opacity: 0.58;
  filter: saturate(0.96) contrast(0.98) brightness(1.06);
}
.hero-video-overlay {
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.96) 0%,
      rgba(255, 255, 255, 0.88) 40%,
      rgba(247, 251, 250, 0.64) 68%,
      rgba(238, 247, 251, 0.3) 100%
    ),
    radial-gradient(
      circle at 18% 44%,
      rgba(70, 123, 130, 0.12),
      transparent 36%
    ),
    radial-gradient(circle at 86% 24%, rgba(232, 174, 62, 0.1), transparent 32%);
}
.hero-content {
  max-width: 760px;
}
.marquee {
  margin-top: 0;
  border-top: 1px solid var(--line);
}
@media (max-width: 940px) {
  .hero.section-pad {
    height: auto;
    min-height: 100vh;
    padding-top: 128px;
    padding-bottom: 70px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .hero:before,
  .hero-video,
  .hero-video-overlay {
    inset: 0;
    border-radius: 0;
    width: 100%;
    height: 100%;
  }
}
@media (max-width: 560px) {
  .hero.section-pad {
    padding-top: 118px;
    padding-bottom: 56px;
    padding-left: 18px;
    padding-right: 18px;
  }
  .hero:before,
  .hero-video,
  .hero-video-overlay {
    inset: 0;
    border-radius: 0;
    width: 100%;
    height: 100%;
  }
}
.site-header {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto minmax(180px, 1fr);
  align-items: center;
  justify-content: center;
}
.brand {
  justify-self: start;
}
.site-nav {
  justify-self: center;
}
.nav-toggle {
  justify-self: end;
}
.hero.section-pad {
  background: #f7fbfa;
}
.hero:before {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.98) 0%,
    rgba(255, 255, 255, 0.94) 28%,
    rgba(247, 251, 250, 0.82) 46%,
    rgba(247, 251, 250, 0.28) 68%,
    rgba(247, 251, 250, 0.04) 100%
  );
  z-index: -3;
}
.hero-video {
  inset: 0 0 0 auto;
  width: min(74vw, 1420px);
  min-width: 760px;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  opacity: 0.82;
  filter: saturate(0.98) contrast(0.98) brightness(1.04);
}
.hero-video-overlay {
  inset: 0;
  border-radius: 0;
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 255, 255, 0.95) 26%,
      rgba(247, 251, 250, 0.84) 44%,
      rgba(247, 251, 250, 0.42) 62%,
      rgba(247, 251, 250, 0.12) 100%
    ),
    radial-gradient(
      circle at 18% 45%,
      rgba(70, 123, 130, 0.14),
      transparent 34%
    ),
    radial-gradient(circle at 83% 28%, rgba(232, 174, 62, 0.1), transparent 30%);
  z-index: -2;
}
.hero-content {
  max-width: 700px;
}
@media (max-width: 1100px) {
  .site-header {
    grid-template-columns: 1fr auto;
  }
  .site-nav {
    justify-self: end;
  }
}
@media (max-width: 940px) {
  .site-header {
    display: flex;
    justify-content: space-between;
  }
  .site-nav {
    justify-self: stretch;
  }
  .hero-video {
    inset: 0;
    width: 100%;
    min-width: 0;
    height: 100%;
    object-position: center center;
    opacity: 0.62;
  }
  .hero-video-overlay {
    background:
      linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.96) 0%,
        rgba(255, 255, 255, 0.88) 55%,
        rgba(247, 251, 250, 0.44) 100%
      ),
      linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.2),
        rgba(247, 251, 250, 0.68)
      );
  }
}
@media (max-width: 560px) {
  .hero-video {
    object-position: center center;
    opacity: 0.5;
  }
  .hero-video-overlay {
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.93) 0%,
      rgba(255, 255, 255, 0.88) 48%,
      rgba(247, 251, 250, 0.7) 100%
    );
  }
}
.site-header {
  width: min(1060px, calc(100% - 96px));
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: auto 1fr;
  justify-content: center;
  align-items: center;
  gap: 54px;
  padding: 12px 18px 12px 14px;
}
.brand {
  justify-self: start;
}
.site-nav {
  justify-self: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
}
.hero.section-pad {
  position: relative;
  height: 100vh;
  min-height: 720px;
  overflow: hidden;
  background: #f7fbfa;
}
.hero-video {
  inset: 0 0 0 30vw;
  width: 70vw;
  min-width: 0;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  opacity: 0.88;
  filter: saturate(0.98) contrast(0.98) brightness(1.04);
}
.hero:before {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(255, 255, 255, 0.98) 20%,
    rgba(250, 253, 252, 0.94) 30%,
    rgba(250, 253, 252, 0.48) 48%,
    rgba(250, 253, 252, 0.1) 78%,
    rgba(250, 253, 252, 0.02) 100%
  );
}
.hero-video-overlay {
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 1) 0%,
      rgba(255, 255, 255, 0.98) 21%,
      rgba(247, 251, 250, 0.94) 31%,
      rgba(247, 251, 250, 0.58) 46%,
      rgba(247, 251, 250, 0.18) 66%,
      rgba(247, 251, 250, 0.04) 100%
    ),
    radial-gradient(
      circle at 18% 45%,
      rgba(70, 123, 130, 0.12),
      transparent 34%
    );
}
.hero-content {
  max-width: 650px;
}
@media (max-width: 1200px) {
  .site-header {
    width: calc(100% - 48px);
    gap: 28px;
  }
  .site-nav a {
    padding: 11px 10px;
  }
}
@media (max-width: 940px) {
  .site-header {
    width: calc(100% - 20px);
    display: flex;
    justify-content: space-between;
    gap: 12px;
  }
  .hero.section-pad {
    min-height: 100vh;
    height: auto;
  }
  .hero-video {
    inset: 0;
    width: 100%;
    height: 100%;
    object-position: center center;
    opacity: 0.55;
  }
  .hero-video-overlay {
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.97) 0%,
      rgba(255, 255, 255, 0.9) 58%,
      rgba(247, 251, 250, 0.58) 100%
    );
  }
}
.site-header {
  width: min(980px, calc(100% - 72px));
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.site-nav {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  justify-self: auto;
  gap: 6px;
}
.site-nav a {
  font-size: 12px;
  padding: 10px 12px;
}
.site-nav .nav-cta {
  background: var(--brand);
  color: #fff;
  box-shadow: 0 12px 24px rgba(7, 60, 81, 0.18);
}
.btn-primary {
  background: var(--brand);
  color: #fff;
  box-shadow: 0 16px 32px rgba(7, 60, 81, 0.18);
}
.btn-primary:hover,
.site-nav .nav-cta:hover {
  background: #0a4e66;
}
.hero-content {
  max-width: 590px;
}
.hero h1 {
  font-size: clamp(38px, 4.2vw, 62px);
  line-height: 1.02;
  letter-spacing: -0.048em;
  margin: 18px 0 18px;
  font-weight: 550;
}
.hero-lead {
  font-size: clamp(22px, 2.45vw, 34px);
  line-height: 1.15;
  font-weight: 480;
  letter-spacing: -0.035em;
}
.hero-copy {
  font-size: 16px;
  line-height: 1.65;
  max-width: 510px;
  margin-top: 18px;
}
.eyebrow {
  font-size: 11px;
  padding: 8px 12px;
  letter-spacing: 0.095em;
}
.hero-actions {
  margin-top: 28px;
  gap: 10px;
}
.btn {
  font-size: 14px;
  padding: 13px 19px;
  font-weight: 600;
}
.hero-metrics {
  max-width: 520px;
  gap: 10px;
  margin-top: 26px;
}
.hero-metrics div {
  padding: 15px 16px;
  border-radius: 18px;
}
.hero-metrics strong {
  font-size: 21px;
}
.hero-metrics span {
  font-size: 10.5px;
  letter-spacing: 0.085em;
}
.hero.section-pad {
  padding-top: 96px;
  padding-bottom: 54px;
}
@media (max-width: 1200px) {
  .site-header {
    width: calc(100% - 44px);
  }
  .site-nav a {
    padding: 10px 9px;
  }
}
@media (max-width: 1020px) {
  .site-nav {
    position: static;
    transform: none;
  }
}
@media (max-width: 940px) {
  .site-header {
    width: calc(100% - 20px);
  }
  .site-nav {
    position: absolute;
    top: 74px;
    left: 0;
    right: 0;
    transform: none;
  }
  .hero.section-pad {
    padding-top: 126px;
    padding-bottom: 56px;
  }
  .hero h1 {
    font-size: clamp(38px, 9vw, 54px);
  }
}
@media (max-width: 560px) {
  .hero h1 {
    font-size: 38px;
  }
  .hero-lead {
    font-size: 24px;
  }
  .hero-copy {
    font-size: 15px;
  }
  .btn {
    font-size: 13px;
    padding: 13px 16px;
  }
}
.site-header {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: fit-content !important;
  max-width: calc(100vw - 48px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 34px !important;
  padding: 11px 16px 11px 12px !important;
  background: rgba(255, 255, 255, 0.66) !important;
  border: 1px solid rgba(255, 255, 255, 0.62) !important;
  box-shadow:
    0 18px 46px rgba(7, 45, 61, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.75) !important;
  backdrop-filter: blur(20px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.18) !important;
}
.site-nav {
  position: static !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}
.brand {
  flex: 0 0 auto;
}
.brand-logo {
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.65);
  box-shadow:
    0 10px 24px rgba(7, 45, 61, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
.hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 520px;
  gap: 12px;
}
.hero-metrics div {
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.46),
    rgba(255, 255, 255, 0.22)
  ) !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  box-shadow:
    0 20px 44px rgba(7, 45, 61, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
  backdrop-filter: blur(18px) saturate(1.22) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.22) !important;
}
.hero-metrics div:hover {
  transform: translateY(-2px);
  border-color: rgba(70, 123, 130, 0.3) !important;
  box-shadow:
    0 24px 54px rgba(7, 45, 61, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
}
.hero-metrics strong {
  color: var(--brand);
}
.hero-metrics span {
  color: rgba(7, 60, 81, 0.68);
}
@media (max-width: 1100px) {
  .site-header {
    gap: 20px !important;
    max-width: calc(100vw - 28px) !important;
  }
  .site-nav a {
    padding: 10px 8px;
  }
  .brand-copy strong {
    font-size: 12px;
  }
  .brand-copy small {
    font-size: 10px;
  }
}
@media (max-width: 940px) {
  .site-header {
    width: calc(100% - 20px) !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }
  .site-nav {
    position: absolute !important;
    top: 74px !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    display: none;
    flex-direction: column;
    align-items: stretch;
  }
  .site-nav.is-open {
    display: flex;
  }
}
@media (max-width: 620px) {
  .hero-metrics {
    grid-template-columns: 1fr;
    max-width: 340px;
  }
}
.site-header {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: min(960px, calc(100vw - 64px)) !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 22px !important;
}
.site-nav {
  position: static !important;
  transform: none !important;
  margin-left: auto !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}
.site-nav a {
  font-weight: 560;
}
.hero-metrics div {
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.48),
    rgba(255, 255, 255, 0.2)
  ) !important;
  border: 1px solid rgba(255, 255, 255, 0.68) !important;
  box-shadow:
    0 20px 48px rgba(7, 60, 81, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
  backdrop-filter: blur(22px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(150%) !important;
}
.hero-metrics strong {
  color: var(--brand) !important;
}
.hero-metrics span {
  color: rgba(7, 60, 81, 0.64) !important;
}
.site-footer {
  position: relative;
  background: linear-gradient(135deg, #06384b 0%, #0a4e66 55%, #315f3a 100%);
  color: #fff;
  padding: 70px max(24px, calc((100vw - var(--max)) / 2)) 28px;
  overflow: hidden;
}
.site-footer:before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      circle at 12% 10%,
      rgba(232, 174, 62, 0.22),
      transparent 28%
    ),
    radial-gradient(
      circle at 88% 20%,
      rgba(255, 255, 255, 0.1),
      transparent 30%
    );
  pointer-events: none;
}
.footer-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.35fr 0.9fr 1fr 1fr;
  gap: 38px;
  align-items: start;
}
.footer-brand p,
.footer-cta p {
  color: rgba(255, 255, 255, 0.74);
  line-height: 1.7;
  margin: 20px 0 0;
  max-width: 360px;
}
.footer-logo .brand-copy strong {
  color: #fff;
}
.footer-logo .brand-copy small {
  color: rgba(255, 255, 255, 0.7);
}
.footer-col,
.footer-cta {
  display: grid;
  gap: 12px;
}
.footer-col h3,
.footer-cta h3 {
  margin: 0 0 8px;
  font-size: 15px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 650;
  color: #fff;
}
.footer-col a,
.footer-col span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 14px;
  line-height: 1.5;
  transition: 0.25s ease;
}
.footer-col a:hover {
  color: #fff;
  transform: translateX(3px);
}
.footer-cta .btn {
  width: max-content;
  background: #fff;
  color: var(--brand);
  box-shadow: none;
  margin-top: 6px;
}
.footer-bottom {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 54px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.62);
  font-size: 13px;
}
@media (max-width: 1020px) {
  .site-header {
    width: calc(100vw - 28px) !important;
  }
  .site-nav {
    position: absolute !important;
    top: 74px;
    left: 0;
    right: 0;
    display: none !important;
    flex-direction: column;
    align-items: stretch;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid var(--line);
    border-radius: 24px;
    padding: 14px;
    box-shadow: var(--shadow);
  }
  .site-nav.is-open {
    display: flex !important;
  }
  .nav-toggle {
    display: block;
  }
  .footer-inner {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .footer-inner {
    grid-template-columns: 1fr;
  }
  .footer-bottom {
    flex-direction: column;
  }
  .hero-metrics {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 1021px) {
  .site-header {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: min(960px, calc(100vw - 64px)) !important;
  }
}
@media (max-width: 640px) {
  .hero.section-pad {
    min-height: 100svh !important;
    height: 100svh !important;
    padding-top: 118px !important;
    padding-bottom: 26px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    align-items: flex-start !important;
    background:
      linear-gradient(
        180deg,
        rgba(246, 251, 252, 0.78) 0%,
        rgba(246, 251, 252, 0.72) 38%,
        rgba(246, 251, 252, 0.38) 100%
      ),
      linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.98) 0%,
        rgba(255, 255, 255, 0.86) 48%,
        rgba(255, 255, 255, 0.38) 100%
      ),
      url("../images/mobile-plane.webp") center 34% / cover no-repeat !important;
  }
  .hero-video,
  .hero-video-overlay {
    display: none !important;
  }
  .hero:before {
    display: none !important;
  }
  .hero:after {
    background:
      radial-gradient(
        circle at 16% 30%,
        rgba(70, 123, 130, 0.14),
        transparent 34%
      ),
      linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.2),
        rgba(255, 255, 255, 0.44)
      ) !important;
  }
  .hero-content {
    max-width: 100% !important;
    padding-top: 0 !important;
  }
  .eyebrow {
    max-width: 100% !important;
    padding: 6px 9px !important;
    gap: 7px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.075em !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
  .pulse-dot {
    width: 6px !important;
    height: 6px !important;
    box-shadow: 0 0 0 6px rgba(70, 123, 130, 0.13) !important;
    flex: 0 0 auto !important;
  }
  .hero h1 {
    font-size: clamp(34px, 11vw, 42px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
    margin: 16px 0 12px !important;
    max-width: 92% !important;
  }
  .hero-lead {
    font-size: clamp(21px, 6.2vw, 27px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.045em !important;
  }
  .hero-copy {
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin-top: 14px !important;
    max-width: 86% !important;
  }
  .hero-actions {
    gap: 9px !important;
    margin-top: 20px !important;
  }
  .hero-actions .btn {
    width: auto !important;
    min-height: 40px !important;
    padding: 11px 15px !important;
    font-size: 13px !important;
  }
  .hero-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 18px !important;
    max-width: 100% !important;
  }
  .hero-metrics div {
    min-height: 78px !important;
    padding: 11px 10px !important;
    border-radius: 16px !important;
    background: linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.42),
      rgba(255, 255, 255, 0.18)
    ) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
  }
  .hero-metrics strong {
    font-size: 20px !important;
    line-height: 1 !important;
  }
  .hero-metrics span {
    font-size: 9.2px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.075em !important;
  }
}
@media (max-width: 390px) {
  .hero h1 {
    font-size: 32px !important;
  }
  .hero-lead {
    font-size: 21px !important;
  }
  .hero-copy {
    max-width: 92% !important;
  }
  .hero-actions .btn {
    padding: 10px 12px !important;
    font-size: 12px !important;
  }
  .hero-metrics {
    gap: 6px !important;
  }
  .hero-metrics div {
    padding: 10px 8px !important;
    min-height: 72px !important;
  }
  .hero-metrics strong {
    font-size: 18px !important;
  }
  .hero-metrics span {
    font-size: 8.4px !important;
  }
}
@media (max-width: 640px) {
  body {
    background: #f7fbfa;
  }
  .site-header {
    top: 12px !important;
    width: calc(100% - 28px) !important;
    padding: 9px 10px !important;
    border-radius: 32px !important;
  }
  .brand-logo {
    width: 42px !important;
    height: 42px !important;
  }
  .brand-copy strong {
    font-size: 12px !important;
  }
  .nav-toggle {
    width: 42px !important;
    height: 42px !important;
  }
  .hero.section-pad {
    min-height: 100svh !important;
    height: auto !important;
    display: block !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-top: calc(104px + min(66vw, 315px)) !important;
    padding-bottom: 38px !important;
    overflow: hidden !important;
    background:
      radial-gradient(
        circle at 8% 64%,
        rgba(70, 123, 130, 0.12),
        transparent 34%
      ),
      linear-gradient(180deg, #eef8f8 0%, #f8fcfb 48%, #ffffff 100%) !important;
  }
  .hero-video,
  .hero-video-overlay {
    display: none !important;
  }
  .hero.section-pad:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 88px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: min(66vw, 315px) !important;
    width: 100% !important;
    border-radius: 0 !important;
    background: url("../images/mobile-plane.webp") center 45% / cover no-repeat !important;
    z-index: -3 !important;
    opacity: 1 !important;
  }
  .hero.section-pad:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: calc(88px + min(66vw, 315px) - 92px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: 210px !important;
    border-radius: 0 !important;
    background: linear-gradient(
      180deg,
      rgba(247, 251, 250, 0) 0%,
      rgba(247, 251, 250, 0.68) 42%,
      rgba(247, 251, 250, 0.97) 72%,
      #f8fcfb 100%
    ) !important;
    z-index: -2 !important;
    pointer-events: none !important;
  }
  .hero-content {
    max-width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
    padding-top: 0 !important;
  }
  .eyebrow {
    font-size: 8.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.07em !important;
    padding: 5px 8px !important;
    gap: 6px !important;
    max-width: 100% !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.45) !important;
    backdrop-filter: blur(16px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(150%) !important;
  }
  .pulse-dot {
    width: 6px !important;
    height: 6px !important;
    box-shadow: 0 0 0 5px rgba(70, 123, 130, 0.13) !important;
  }
  .hero h1 {
    font-size: clamp(34px, 10.4vw, 42px) !important;
    line-height: 1.02 !important;
    margin: 18px 0 14px !important;
    max-width: 100% !important;
    letter-spacing: -0.055em !important;
  }
  .hero-lead {
    font-size: clamp(22px, 6.5vw, 28px) !important;
    line-height: 1.12 !important;
  }
  .hero-copy {
    font-size: 14.5px !important;
    line-height: 1.62 !important;
    max-width: 96% !important;
    margin-top: 16px !important;
  }
  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 26px !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    min-height: 48px !important;
    padding: 13px 16px !important;
    font-size: 13.5px !important;
  }
  .hero-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-top: 16px !important;
    max-width: 100% !important;
  }
  .hero-metrics div {
    min-height: 60px !important;
    padding: 8px 8px !important;
    border-radius: 14px !important;
    background: linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.5),
      rgba(255, 255, 255, 0.2)
    ) !important;
    border: 1px solid rgba(255, 255, 255, 0.54) !important;
    box-shadow: 0 12px 24px rgba(7, 45, 61, 0.075) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
  }
  .hero-metrics strong {
    font-size: 17px !important;
    line-height: 1 !important;
  }
  .hero-metrics span {
    font-size: 7.4px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.06em !important;
  }
}
@media (max-width: 390px) {
  .hero.section-pad {
    padding-top: calc(100px + min(68vw, 292px)) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .hero.section-pad:before {
    top: 84px !important;
    height: min(68vw, 292px) !important;
  }
  .hero.section-pad:after {
    top: calc(84px + min(68vw, 292px) - 86px) !important;
  }
  .hero h1 {
    font-size: 32px !important;
  }
  .hero-lead {
    font-size: 21px !important;
  }
  .hero-copy {
    font-size: 14px !important;
  }
  .eyebrow {
    font-size: 8px !important;
    padding: 5px 7px !important;
  }
}
@media (max-width: 640px) {
  .hero.section-pad {
    min-height: 100svh !important;
    height: auto !important;
    display: block !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-top: clamp(330px, 58vh, 430px) !important;
    padding-bottom: 38px !important;
    overflow: hidden !important;
    background:
      linear-gradient(
        180deg,
        rgba(247, 251, 250, 0.02) 0%,
        rgba(247, 251, 250, 0.05) 30%,
        rgba(247, 251, 250, 0.54) 44%,
        rgba(247, 251, 250, 0.9) 54%,
        #f8fcfb 66%,
        #ffffff 100%
      ),
      radial-gradient(
        circle at 8% 58%,
        rgba(70, 123, 130, 0.16),
        transparent 34%
      ),
      url("../images/mobile-plane.webp") center 70px / 100% auto no-repeat,
      linear-gradient(180deg, #eef8f8 0%, #f8fcfb 100%) !important;
  }
  .hero.section-pad:before,
  .hero.section-pad:after {
    display: none !important;
    content: none !important;
  }
  .hero-content {
    max-width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
    padding-top: 0 !important;
  }
  .eyebrow {
    background: rgba(255, 255, 255, 0.36) !important;
    border-color: rgba(70, 123, 130, 0.18) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    box-shadow: 0 10px 26px rgba(7, 45, 61, 0.06) !important;
  }
  .hero-metrics div {
    background: linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.46),
      rgba(255, 255, 255, 0.18)
    ) !important;
    border: 1px solid rgba(255, 255, 255, 0.54) !important;
    box-shadow: 0 12px 28px rgba(7, 45, 61, 0.08) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
  }
}
@media (max-width: 390px) {
  .hero.section-pad {
    padding-top: clamp(320px, 56vh, 390px) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    background:
      linear-gradient(
        180deg,
        rgba(247, 251, 250, 0.02) 0%,
        rgba(247, 251, 250, 0.06) 30%,
        rgba(247, 251, 250, 0.58) 45%,
        rgba(247, 251, 250, 0.92) 55%,
        #f8fcfb 67%,
        #ffffff 100%
      ),
      radial-gradient(
        circle at 8% 58%,
        rgba(70, 123, 130, 0.16),
        transparent 34%
      ),
      url("../images/mobile-plane.webp") center 70px / 100% auto no-repeat,
      linear-gradient(180deg, #eef8f8 0%, #f8fcfb 100%) !important;
  }
}
@media (max-width: 640px) {
  .hero.section-pad {
    min-height: 100svh !important;
    height: auto !important;
    display: block !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-top: clamp(355px, 60vh, 455px) !important;
    padding-bottom: 38px !important;
    overflow: hidden !important;
    background:
      radial-gradient(
        circle at 8% 58%,
        rgba(70, 123, 130, 0.1),
        transparent 36%
      ),
      linear-gradient(180deg, #eef8f8 0%, #f7fbfa 62%, #ffffff 100%) !important;
  }
  .hero.section-pad:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 64px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    width: 100% !important;
    height: clamp(360px, 61vh, 465px) !important;
    border-radius: 0 !important;
    background: url("../images/mobile-plane.webp") center 10% / cover no-repeat !important;
    opacity: 0.94 !important;
    filter: saturate(0.94) contrast(0.98) brightness(1.04) !important;
    z-index: -4 !important;
    pointer-events: none !important;
  }
  .hero.section-pad:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 190px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: 380px !important;
    border-radius: 0 !important;
    background:
      linear-gradient(
        180deg,
        rgba(247, 251, 250, 0) 0%,
        rgba(247, 251, 250, 0.1) 22%,
        rgba(247, 251, 250, 0.38) 43%,
        rgba(247, 251, 250, 0.76) 61%,
        rgba(247, 251, 250, 0.96) 78%,
        #f8fcfb 100%
      ),
      radial-gradient(
        ellipse at 45% 58%,
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0) 55%
      ) !important;
    z-index: -3 !important;
    pointer-events: none !important;
  }
  .hero-content {
    background: linear-gradient(
      180deg,
      rgba(248, 252, 251, 0.1),
      rgba(248, 252, 251, 0.38) 22%,
      rgba(248, 252, 251, 0.72) 100%
    ) !important;
    border-radius: 26px 26px 0 0 !important;
    margin-left: -4px !important;
    margin-right: -4px !important;
    padding: 10px 4px 0 !important;
  }
  .eyebrow {
    background: rgba(255, 255, 255, 0.5) !important;
    border-color: rgba(70, 123, 130, 0.18) !important;
    backdrop-filter: blur(20px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(160%) !important;
  }
}
@media (max-width: 390px) {
  .hero.section-pad {
    padding-top: clamp(340px, 58vh, 420px) !important;
  }
  .hero.section-pad:before {
    top: 64px !important;
    height: clamp(350px, 59vh, 430px) !important;
    background-position: center 8% !important;
  }
  .hero.section-pad:after {
    top: 176px !important;
    height: 360px !important;
  }
}
.brand-logo {
  flex: 0 0 auto !important;
}
.brand-logo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 50% !important;
}
@media (max-width: 640px) {
  body {
    background: #f7fbfa !important;
  }
  .site-header {
    top: 14px !important;
    width: calc(100% - 28px) !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    padding: 10px 12px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    border: 1px solid rgba(255, 255, 255, 0.72) !important;
    backdrop-filter: blur(20px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(150%) !important;
    box-shadow:
      0 18px 42px rgba(7, 45, 61, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
    z-index: 50 !important;
  }
  .brand-logo {
    width: 42px !important;
    height: 42px !important;
    padding: 5px !important;
    background: rgba(255, 255, 255, 0.82) !important;
    overflow: hidden !important;
  }
  .brand-copy strong {
    font-size: 12px !important;
    letter-spacing: -0.01em !important;
  }
  .brand-copy small {
    display: none !important;
  }
  .nav-toggle {
    display: block !important;
    width: 42px !important;
    height: 42px !important;
  }
  .nav-toggle span:first-child {
    top: 17px !important;
  }
  .nav-toggle span:last-child {
    top: 27px !important;
  }
  .hero.section-pad {
    position: relative !important;
    min-height: 100svh !important;
    height: auto !important;
    display: block !important;
    overflow: hidden !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-top: clamp(365px, 55vh, 430px) !important;
    padding-bottom: 36px !important;
    background:
      radial-gradient(
        circle at 10% 60%,
        rgba(70, 123, 130, 0.08),
        transparent 34%
      ),
      linear-gradient(180deg, #eef8f8 0%, #f7fbfa 55%, #ffffff 100%) !important;
  }
  .hero-video,
  .hero-video-overlay {
    display: none !important;
  }
  .hero.section-pad:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    width: 100% !important;
    height: clamp(375px, 56vh, 440px) !important;
    border-radius: 0 !important;
    background: url("../images/mobile-plane.webp") center top / cover no-repeat !important;
    opacity: 0.96 !important;
    filter: saturate(0.96) contrast(0.98) brightness(1.04) !important;
    z-index: 0 !important;
    pointer-events: none !important;
  }
  .hero.section-pad:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 170px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: 310px !important;
    border-radius: 0 !important;
    background: linear-gradient(
      180deg,
      rgba(247, 251, 250, 0) 0%,
      rgba(247, 251, 250, 0.08) 14%,
      rgba(247, 251, 250, 0.34) 32%,
      rgba(247, 251, 250, 0.68) 49%,
      rgba(247, 251, 250, 0.9) 65%,
      rgba(247, 251, 250, 0.98) 82%,
      #f8fcfb 100%
    ) !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }
  .hero-content {
    position: relative !important;
    z-index: 3 !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    border-radius: 0 !important;
  }
  .eyebrow {
    display: inline-flex !important;
    max-width: 100% !important;
    font-size: 8.4px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.067em !important;
    padding: 6px 9px !important;
    gap: 6px !important;
    background: rgba(255, 255, 255, 0.48) !important;
    border-color: rgba(70, 123, 130, 0.2) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
    box-shadow: 0 10px 26px rgba(7, 45, 61, 0.06) !important;
  }
  .pulse-dot {
    width: 6px !important;
    height: 6px !important;
    box-shadow: 0 0 0 5px rgba(70, 123, 130, 0.13) !important;
    flex: 0 0 auto !important;
  }
  .hero h1 {
    font-size: clamp(32px, 9.7vw, 39px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
    margin: 18px 0 13px !important;
    max-width: 100% !important;
    color: var(--text) !important;
  }
  .hero-lead {
    font-size: clamp(21px, 6vw, 25px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.04em !important;
  }
  .hero-copy {
    font-size: 14.5px !important;
    line-height: 1.58 !important;
    margin-top: 16px !important;
    max-width: 95% !important;
  }
  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 24px !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    min-height: 48px !important;
    padding: 13px 16px !important;
    font-size: 13.5px !important;
  }
  .hero-metrics {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 16px !important;
    max-width: 100% !important;
  }
  .hero-metrics div {
    min-height: 66px !important;
    padding: 9px 9px !important;
    border-radius: 14px !important;
    background: linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.54),
      rgba(255, 255, 255, 0.2)
    ) !important;
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    box-shadow:
      0 12px 26px rgba(7, 45, 61, 0.07),
      inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
  }
  .hero-metrics strong {
    font-size: 17px !important;
    line-height: 1 !important;
  }
  .hero-metrics span {
    font-size: 7.2px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.055em !important;
  }
}
@media (max-width: 390px) {
  .hero.section-pad {
    padding-top: clamp(350px, 54vh, 405px) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .hero.section-pad:before {
    height: clamp(360px, 55vh, 415px) !important;
    background-position: center top !important;
  }
  .hero.section-pad:after {
    top: 162px !important;
    height: 300px !important;
  }
  .hero h1 {
    font-size: 32px !important;
  }
  .hero-lead {
    font-size: 21px !important;
  }
  .hero-copy {
    font-size: 14px !important;
  }
  .eyebrow {
    font-size: 8px !important;
    padding: 5px 7px !important;
  }
  .hero-metrics {
    gap: 6px !important;
  }
  .hero-metrics div {
    padding: 8px 7px !important;
  }
  .hero-metrics strong {
    font-size: 16px !important;
  }
  .hero-metrics span {
    font-size: 6.8px !important;
  }
}
.icon-box {
  color: var(--brand) !important;
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.72),
    rgba(70, 123, 130, 0.08)
  ) !important;
  border: 1px solid rgba(70, 123, 130, 0.22) !important;
  box-shadow:
    0 14px 32px rgba(7, 60, 81, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}
.icon-box svg {
  width: 31px;
  height: 31px;
  display: block;
}
.icon-box .i-line {
  fill: none;
  stroke: var(--brand);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.icon-box .i-soft {
  fill: rgba(70, 123, 130, 0.1);
  stroke: none;
}
.icon-box .i-accent {
  fill: none;
  stroke: var(--green);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.service-card.featured .icon-box {
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.78),
    rgba(62, 119, 65, 0.1)
  ) !important;
}
.service-card:hover .icon-box {
  transform: translateY(-2px);
  border-color: rgba(70, 123, 130, 0.32) !important;
  box-shadow:
    0 18px 38px rgba(7, 60, 81, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
}
#services .section-heading {
  margin-bottom: 36px;
}
#services .section-heading .section-kicker {
  margin-bottom: 0;
}
.quote-form .field-error {
  display: none;
  margin-top: -2px;
  color: #b3261e;
  font-size: 12px;
  line-height: 1.35;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}
.quote-form label.has-error input,
.quote-form label.has-error select,
.quote-form label.has-error textarea {
  border-color: #b3261e !important;
  box-shadow: 0 0 0 4px rgba(179, 38, 30, 0.08) !important;
}
.quote-form label.has-error .field-error {
  display: block;
}
.form-feedback {
  display: none;
  margin: 0;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.45;
  color: #073c51;
  background: rgba(232, 174, 62, 0.13);
  border: 1px solid rgba(232, 174, 62, 0.28);
}
.form-feedback.is-visible {
  display: block;
}
@media (min-width: 1021px) {
  .hero.section-pad {
    min-height: 100vh !important;
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-top: 92px !important;
    padding-bottom: 52px !important;
  }
  .hero-content {
    max-width: 560px !important;
    transform: translateY(18px) !important;
  }
  .hero h1 {
    font-size: clamp(40px, 3.75vw, 56px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.048em !important;
    margin: 16px 0 16px !important;
    max-width: 560px !important;
  }
  .hero-lead {
    font-size: clamp(24px, 2.2vw, 31px) !important;
    line-height: 1.16 !important;
  }
  .hero-copy {
    font-size: 15.5px !important;
    line-height: 1.62 !important;
    max-width: 500px !important;
    margin-top: 16px !important;
  }
  .eyebrow {
    font-size: 10.5px !important;
    padding: 7px 12px !important;
  }
  .hero-actions {
    margin-top: 24px !important;
  }
  .hero-actions .btn {
    padding: 12px 18px !important;
    font-size: 13px !important;
    min-height: 44px !important;
  }
  .hero-metrics {
    margin-top: 22px !important;
    max-width: 500px !important;
    gap: 10px !important;
  }
  .hero-metrics div {
    padding: 14px 16px !important;
    min-height: 88px !important;
    border-radius: 18px !important;
  }
  .hero-metrics strong {
    font-size: 21px !important;
  }
  .hero-metrics span {
    font-size: 10px !important;
  }
}
@media (min-width: 1021px) and (max-height: 760px) {
  .hero.section-pad {
    padding-top: 80px !important;
    padding-bottom: 36px !important;
  }
  .hero-content {
    transform: translateY(22px) !important;
    max-width: 540px !important;
  }
  .hero h1 {
    font-size: clamp(38px, 3.35vw, 50px) !important;
    margin: 13px 0 12px !important;
    line-height: 1.04 !important;
  }
  .hero-lead {
    font-size: clamp(22px, 2vw, 28px) !important;
  }
  .hero-copy {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    max-width: 470px !important;
    margin-top: 14px !important;
  }
  .eyebrow {
    font-size: 9.8px !important;
    padding: 6px 10px !important;
  }
  .hero-actions {
    margin-top: 20px !important;
  }
  .hero-actions .btn {
    padding: 11px 17px !important;
    min-height: 42px !important;
    font-size: 12.5px !important;
  }
  .hero-metrics {
    margin-top: 20px !important;
  }
  .hero-metrics div {
    min-height: 76px !important;
    padding: 12px 14px !important;
  }
  .hero-metrics strong {
    font-size: 19px !important;
  }
  .hero-metrics span {
    font-size: 9px !important;
    line-height: 1.25 !important;
  }
}
@media (max-width: 1020px) {
  .site-header {
    overflow: visible !important;
    z-index: 1000 !important;
  }
  .site-nav {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    margin: 0 !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 12px !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, 0.88) !important;
    border: 1px solid rgba(255, 255, 255, 0.72) !important;
    box-shadow:
      0 22px 54px rgba(7, 45, 61, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: blur(22px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(22px) saturate(150%) !important;
    z-index: 1001 !important;
  }
  .site-nav.is-open {
    display: flex !important;
  }
  .site-nav a {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 12px 14px !important;
    border-radius: 999px !important;
    text-align: center !important;
    background: rgba(255, 255, 255, 0.42) !important;
  }
  .site-nav .nav-cta {
    background: var(--brand) !important;
    color: #fff !important;
  }
}
@media (max-width: 640px) {
  .site-nav {
    top: calc(100% + 10px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }
}
.brand-logo {
  width: 62px;
  height: 62px;
  padding: 0;
  box-shadow:
    0 0 0 1px rgba(8, 54, 72, 0.1),
    0 8px 16px rgba(7, 45, 61, 0.08);
}
.brand-logo img {
  object-fit: cover;
  object-position: left center;
  border-radius: 50%;
}
.hero-content {
  max-width: 610px;
}
.hero.section-pad {
  padding-top: 110px;
}
.hero-copy {
  margin-top: 8px;
}
.section-heading.narrow p {
  margin-top: 18px;
}
.site-footer .footer-brand p {
  line-height: 1.6;
  max-width: 280px;
}
@media (max-width: 560px) {
  .brand-logo {
    width: 50px;
    height: 50px;
  }
}
#about .section-heading.narrow {
  max-width: 980px;
}
#about .about-title {
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.04;
  letter-spacing: -0.045em;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}
#about .about-copy {
  max-width: 860px;
  margin: 16px auto 0;
  font-size: 18px;
  line-height: 1.75;
}
@media (max-width: 640px) {
  #about .about-title {
    font-size: 34px;
  }
  #about .about-copy {
    font-size: 15px;
    line-height: 1.65;
    text-align: left;
  }
}
.about-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 34px;
  align-items: start;
}
.about-copy-side {
  padding-right: 10px;
}
.about-copy-side .section-kicker {
  margin-bottom: 18px;
}
#about .about-title {
  font-size: clamp(32px, 3.5vw, 48px);
  line-height: 1.06;
  letter-spacing: -0.04em;
  max-width: 620px;
  margin: 0 0 18px;
  text-align: left;
}
#about .about-copy {
  max-width: 640px;
  margin: 0 0 16px;
  font-size: 17px;
  line-height: 1.78;
  text-align: left;
}
.about-note {
  margin-top: 24px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.9),
    rgba(247, 251, 250, 0.84)
  );
  box-shadow: var(--shadow-soft);
  max-width: 620px;
}
.about-note strong {
  display: block;
  margin-bottom: 8px;
  color: var(--brand);
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.about-note p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.72;
}
.about-cards-head {
  margin-bottom: 14px;
}
.about-cards-head span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.7);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--brand);
  font-weight: 700;
}
.about-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.about-grid .why-item {
  padding: 24px 22px;
  min-height: 220px;
  background: rgba(255, 255, 255, 0.78);
}
.about-grid .why-item span {
  margin-bottom: 18px;
}
.about-grid .why-item h3 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.2;
  color: var(--text);
  font-weight: 620;
  letter-spacing: -0.02em;
}
.about-grid .why-item p {
  font-size: 15px;
  line-height: 1.72;
}
@media (max-width: 1080px) {
  .about-layout {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .about-copy-side {
    padding-right: 0;
  }
  .about-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  #about .about-title {
    font-size: 34px;
  }
  #about .about-copy {
    font-size: 15px;
    line-height: 1.68;
  }
  .about-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .about-grid .why-item {
    min-height: auto;
  }
  .about-note {
    padding: 18px 18px;
    border-radius: 18px;
  }
}
.hero-image {
  display: block;
  object-position: center center;
}
@media (min-width: 941px) {
  .hero-image {
    inset: 0 0 0 28vw;
    width: 72vw;
  }
}
.cta-band {
  padding-top: 14px;
  padding-bottom: 24px;
}
.cta-band-card {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) auto;
  gap: 28px;
  align-items: center;
  padding: 34px 36px;
  border: 1px solid var(--line);
  border-radius: 30px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.94),
      rgba(247, 251, 250, 0.88)
    ),
    linear-gradient(90deg, rgba(195, 215, 220, 0.18), rgba(255, 255, 255, 0));
  box-shadow: 0 24px 50px rgba(9, 42, 56, 0.08);
  position: relative;
  overflow: hidden;
}
.cta-band-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      circle at 82% 28%,
      rgba(118, 169, 145, 0.16),
      transparent 26%
    ),
    radial-gradient(circle at 14% 80%, rgba(20, 92, 119, 0.08), transparent 24%);
  pointer-events: none;
}
.cta-band-copy,
.cta-band-actions {
  position: relative;
  z-index: 1;
}
.cta-band-copy .section-kicker {
  margin-bottom: 16px;
}
.cta-band-copy h2 {
  margin: 0 0 14px;
  color: var(--text);
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1.08;
  letter-spacing: -0.035em;
  max-width: 720px;
}
.cta-band-copy p {
  margin: 0;
  max-width: 820px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.78;
}
.cta-band-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 220px;
}
.cta-band-actions .btn {
  justify-content: center;
  white-space: nowrap;
}
@media (max-width: 980px) {
  .cta-band-card {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 28px 24px;
  }
  .cta-band-actions {
    flex-direction: row;
    flex-wrap: wrap;
    min-width: 0;
  }
}
@media (max-width: 640px) {
  .cta-band {
    padding-top: 8px;
    padding-bottom: 18px;
  }
  .cta-band-card {
    padding: 22px 18px;
    border-radius: 24px;
  }
  .cta-band-copy h2 {
    font-size: 30px;
    line-height: 1.1;
  }
  .cta-band-copy p {
    font-size: 15.5px;
    line-height: 1.68;
  }
  .cta-band-actions {
    flex-direction: column;
  }
  .cta-band-actions .btn {
    width: 100%;
  }
}
.cta-band-actions {
  align-items: flex-start;
  justify-content: center;
}
.cta-band-actions .btn {
  min-width: 240px;
}
.about-layout {
  align-items: start;
}
.about-copy-side {
  padding-bottom: 4px;
}
@media (min-width: 981px) {
  .cta-band-card {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}
@media (max-width: 980px) {
  .cta-band-actions {
    align-items: stretch;
  }
  .cta-band-actions .btn {
    min-width: 0;
  }
}
.cta-band-copy h2 {
  max-width: 800px;
  font-size: clamp(28px, 2.85vw, 40px);
}
.cta-band-copy p {
  max-width: 760px;
}
.hero-metrics div:first-child strong {
  font-size: clamp(18px, 2vw, 21px);
}
.about-grid .why-item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.about-grid .why-item p {
  margin-top: 0;
  font-size: 16px;
  color: var(--muted);
}
.about-grid .why-item span {
  margin-bottom: 22px;
}
@media (max-width: 640px) {
  .cta-band-copy h2 {
    font-size: 28px;
  }
  .about-grid .why-item p {
    font-size: 15px;
  }
}


/* Hero headline update — keeps the title in 2 clean lines on desktop/tablet */
.hero-content {
  max-width: 760px;
}

.hero-title {
  max-width: 760px;
}

.hero-title span {
  display: block;
  white-space: nowrap;
}

.hero h1.hero-title {
  font-size: clamp(46px, 4.7vw, 72px);
  line-height: 1.03;
  letter-spacing: -0.055em;
  margin: 18px 0 18px;
  font-weight: 560;
}

@media (max-width: 940px) {
  .hero-title span {
    white-space: normal;
  }

  .hero h1.hero-title {
    font-size: clamp(42px, 8vw, 60px);
    max-width: 680px;
  }
}

@media (max-width: 560px) {
  .hero h1.hero-title {
    font-size: clamp(37px, 11vw, 46px);
    line-height: 1.04;
    letter-spacing: -0.045em;
  }
}


/* WordPress + Elementor compatibility */
body.admin-bar .site-header{top:48px!important}.wp-site-blocks{min-height:100vh}.elementor-kit-acs{--e-global-color-primary:#073c51}.elementor-template-canvas .site-header{display:none!important}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
@media(min-width:783px){body.admin-bar .site-header{top:48px!important}}@media(max-width:782px){body.admin-bar .site-header{top:60px!important}}


/* WordPress / Elementor editable page support */
.acs-page-main,
.acs-page-content,
.acs-elementor-content-area {
  background: var(--bg);
  color: var(--text);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
.acs-page-main.section-pad { padding-top: 140px; }
.acs-page-content > .entry-content { max-width: var(--max); margin: 0 auto; padding: 120px 24px; }
.acs-elementor-content-area { min-height: 100vh; }
.acs-elementor-full-width { width: 100%; overflow-x: hidden; }
.wp-block-button__link { border-radius: 999px; background: var(--brand); box-shadow: 0 16px 32px rgba(7,60,81,.18); font-weight: 700; }



/* ========================================================================== 
   Air Consulting Elementor editable kit v1.0.7
   Native Elementor widgets stay editable; these classes only apply the brand style.
   IMPORTANT: Elementor uses `_css_classes`; kit v1.0.3 includes that key.
   ========================================================================== */
:root{
  --acs-bg:#f7fbfa;--acs-bg2:#edf5f4;--acs-panel:rgba(255,255,255,.78);
  --acs-line:rgba(7,60,81,.14);--acs-text:#073c51;--acs-muted:#5f7779;
  --acs-brand:#073c51;--acs-cyan:#467b82;--acs-green:#3e7741;--acs-gold:#e8ae3e;
  --acs-shadow:0 24px 70px rgba(7,45,61,.12);--acs-shadow-soft:0 12px 35px rgba(7,45,61,.08);
  --acs-radius:28px;--acs-max:1180px;
}
body.acs-theme-active, body.elementor-page{background:radial-gradient(circle at 12% 8%,rgba(70,123,130,.12),transparent 32%),radial-gradient(circle at 88% 6%,rgba(226,170,36,.12),transparent 28%),linear-gradient(150deg,#fff 0%,var(--acs-bg) 48%,var(--acs-bg2) 100%);}
.acs-kit-section{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;color:var(--acs-text)!important;box-sizing:border-box}.acs-kit-section *{box-sizing:border-box}.acs-kit-section .elementor-widget{margin-bottom:0!important}.acs-kit-container{max-width:var(--acs-max)!important;margin:0 auto!important;padding-left:24px!important;padding-right:24px!important;width:100%!important}
/* Single editable Hero: default image is on the section background, so user can change it in Elementor: Section/Container > Style > Background. */
.acs-el-hero{position:relative!important;isolation:isolate!important;min-height:100vh!important;display:flex!important;align-items:center!important;overflow:hidden!important;padding:110px max(24px,calc((100vw - 1180px)/2)) 70px!important;background:linear-gradient(90deg,rgba(255,255,255,1) 0%,rgba(255,255,255,.98) 21%,rgba(247,251,250,.94) 31%,rgba(247,251,250,.58) 46%,rgba(247,251,250,.18) 66%,rgba(247,251,250,.04) 100%),url('../images/hero-airplane.webp') right center/cover no-repeat,#f7fbfa!important;}
.acs-el-hero:before{content:""!important;position:absolute!important;inset:0!important;z-index:-2!important;background:radial-gradient(circle at 18% 45%,rgba(70,123,130,.12),transparent 34%),radial-gradient(circle at 84% 22%,rgba(232,174,62,.09),transparent 28%)!important;pointer-events:none!important}.acs-el-hero:after{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:linear-gradient(90deg,rgba(255,255,255,.25) 0%,rgba(255,255,255,.08) 55%,rgba(255,255,255,0) 100%)!important;pointer-events:none!important}.acs-el-hero>.e-con-inner,.acs-hero-inner{max-width:1180px!important;margin:0 auto!important;width:100%!important;display:block!important;z-index:2!important}.acs-hero-content{max-width:760px!important;display:block!important;position:relative!important;z-index:2!important}
.acs-eyebrow .elementor-heading-title,.acs-eyebrow-text{display:inline-flex!important;align-items:center!important;gap:10px!important;color:var(--acs-brand)!important;background:rgba(70,123,130,.10)!important;border:1px solid rgba(70,123,130,.2)!important;padding:9px 13px!important;border-radius:999px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;line-height:1.25!important;width:auto!important;max-width:100%!important}.acs-eyebrow .elementor-heading-title:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--acs-cyan);box-shadow:0 0 0 8px rgba(70,123,130,.12);flex:0 0 auto}
.acs-hero-title .elementor-heading-title{font-size:clamp(46px,4.7vw,72px)!important;line-height:1.03!important;letter-spacing:-.055em!important;margin:18px 0!important;font-weight:700!important;color:var(--acs-text)!important;max-width:780px!important}.acs-hero-copy{max-width:560px!important}.acs-hero-copy,.acs-hero-copy p,.acs-text,.acs-text p{font-size:16px!important;line-height:1.65!important;color:var(--acs-muted)!important;font-weight:400!important;margin:0!important}.acs-hero-copy p{margin:0!important}
.acs-hero-buttons{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:28px!important}.acs-button-primary .elementor-button,.acs-kit-section .acs-button-primary .elementor-button{background:var(--acs-brand)!important;color:#fff!important;border-radius:999px!important;padding:14px 22px!important;font-weight:700!important;font-size:14px!important;box-shadow:0 16px 32px rgba(7,60,81,.18)!important;border:1px solid transparent!important;line-height:1.15!important}.acs-button-primary .elementor-button:hover{background:#0a4e66!important;transform:translateY(-2px)}.acs-button-ghost .elementor-button,.acs-kit-section .acs-button-ghost .elementor-button{background:rgba(255,255,255,.65)!important;color:var(--acs-brand)!important;border:1px solid var(--acs-line)!important;border-radius:999px!important;padding:14px 22px!important;font-weight:700!important;font-size:14px!important;box-shadow:none!important}.acs-button-white .elementor-button{background:#fff!important;color:var(--acs-brand)!important;border-radius:999px!important;padding:14px 22px!important;font-weight:700!important}
.acs-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:30px!important;max-width:560px!important}.acs-metric{padding:18px!important;border:1px solid rgba(255,255,255,.68)!important;border-radius:22px!important;background:linear-gradient(145deg,rgba(255,255,255,.48),rgba(255,255,255,.20))!important;box-shadow:0 20px 48px rgba(7,60,81,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;backdrop-filter:blur(22px) saturate(150%)!important;-webkit-backdrop-filter:blur(22px) saturate(150%)!important}.acs-metric-title .elementor-heading-title{font-size:24px!important;line-height:1!important;color:var(--acs-brand)!important;font-weight:700!important;margin:0!important}.acs-metric-text .elementor-heading-title{font-size:11px!important;color:rgba(7,60,81,.68)!important;text-transform:uppercase!important;letter-spacing:.09em!important;font-weight:600!important;margin-top:8px!important}
.acs-marquee-editable{overflow:hidden!important;border-block:1px solid var(--acs-line)!important;background:rgba(255,255,255,.55)!important;padding:20px 0!important}.acs-marquee-text .elementor-heading-title{font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--acs-brand)!important;font-size:14px!important;white-space:normal!important;text-align:center!important}
.acs-section{padding:100px max(24px,calc((100vw - 1180px)/2))!important}.acs-section-heading{text-align:center!important;margin-bottom:42px!important}.acs-kicker .elementor-heading-title{display:inline-flex!important;align-items:center!important;gap:10px!important;color:var(--acs-brand)!important;background:rgba(70,123,130,.1)!important;border:1px solid rgba(70,123,130,.2)!important;padding:9px 13px!important;border-radius:999px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.acs-card{border:1px solid var(--acs-line)!important;background:rgba(255,255,255,.75)!important;border-radius:var(--acs-radius)!important;box-shadow:var(--acs-shadow-soft)!important;padding:26px!important;transition:.25s ease!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}.acs-card:hover{transform:translateY(-4px);box-shadow:var(--acs-shadow)!important}.acs-card-title .elementor-heading-title{font-size:22px!important;line-height:1.2!important;color:var(--acs-text)!important;font-weight:700!important;margin:0 0 12px!important}.acs-card-text,.acs-card-text p{font-size:15px!important;line-height:1.72!important;color:var(--acs-muted)!important;margin:0!important}
.acs-services-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.acs-services-grid .acs-card:nth-child(2){grid-column:span 2!important}.acs-services-row{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}.acs-services-row .acs-card{display:grid!important;grid-template-columns:280px 1fr!important;gap:24px!important;align-items:start!important}
.acs-cta-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:28px!important;align-items:center!important;padding:34px 36px!important;border:1px solid var(--acs-line)!important;border-radius:30px!important;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(247,251,250,.88))!important;box-shadow:0 24px 50px rgba(9,42,56,.08)!important;backdrop-filter:blur(16px)!important}.acs-cta-title .elementor-heading-title,.acs-about-title .elementor-heading-title,.acs-contact-title .elementor-heading-title{font-size:clamp(30px,3.2vw,48px)!important;line-height:1.08!important;letter-spacing:-.035em!important;color:var(--acs-text)!important;font-weight:700!important;margin:0 0 14px!important}
.acs-about-layout{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:34px!important;align-items:start!important}.acs-pillars{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}.acs-number .elementor-heading-title{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:50%!important;background:rgba(232,174,62,.16)!important;color:#9b6d08!important;font-size:14px!important;font-weight:700!important;margin:0 0 18px!important}
.acs-contact-card{display:grid!important;grid-template-columns:.85fr 1fr!important;gap:28px!important;padding:28px!important;border:1px solid var(--acs-line)!important;border-radius:28px!important;background:radial-gradient(circle at 15% 15%,rgba(232,174,62,.12),transparent 32%),rgba(255,255,255,.76)!important;box-shadow:var(--acs-shadow-soft)!important}.acs-contact-item .elementor-heading-title{padding:14px 16px!important;border-radius:16px!important;border:1px solid var(--acs-line)!important;background:rgba(247,251,250,.88)!important;color:var(--acs-brand)!important;font-size:15px!important;line-height:1.45!important;font-weight:500!important}.acs-form-card{background:rgba(247,251,250,.78)!important;border:1px solid var(--acs-line)!important;border-radius:26px!important;padding:22px!important}.acs-form-card .elementor-heading-title{color:var(--acs-brand)!important}.acs-form-card p{color:var(--acs-muted)!important}
.acs-site-footer{background:linear-gradient(135deg,#06384b 0%,#0a4e66 55%,#315f3a 100%)!important;color:#fff!important}.acs-site-footer .elementor-heading-title,.acs-site-footer p,.acs-site-footer a{color:#fff!important}.acs-site-footer .acs-text p{color:rgba(255,255,255,.74)!important}
@media(max-width:1020px){.acs-el-hero{padding:128px 24px 70px!important;background:linear-gradient(180deg,rgba(255,255,255,.62) 0%,rgba(247,251,250,.82) 52%,#f7fbfa 100%),url('../images/mobile-plane.webp') center top/cover no-repeat,#f7fbfa!important}.acs-services-grid,.acs-about-layout,.acs-contact-card{grid-template-columns:1fr!important}.acs-services-grid .acs-card:nth-child(2){grid-column:auto!important}.acs-cta-card{grid-template-columns:1fr!important}.acs-services-row .acs-card{grid-template-columns:1fr!important}.acs-hero-title .elementor-heading-title{font-size:clamp(42px,8vw,60px)!important}}
@media(max-width:640px){.acs-el-hero{display:block!important;min-height:100svh!important;height:auto!important;padding:365px 20px 38px!important;background:linear-gradient(180deg,rgba(247,251,250,0) 0%,rgba(247,251,250,.34) 32%,rgba(247,251,250,.90) 55%,#f8fcfb 72%,#fff 100%),url('../images/mobile-plane.webp') center top/100% auto no-repeat,#f7fbfa!important}.acs-hero-title .elementor-heading-title{font-size:clamp(32px,9.7vw,39px)!important;line-height:1.02!important}.acs-eyebrow .elementor-heading-title{font-size:8.4px!important;padding:6px 9px!important}.acs-hero-buttons{display:grid!important;grid-template-columns:1fr!important}.acs-button-primary .elementor-button,.acs-button-ghost .elementor-button{width:100%!important}.acs-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.acs-metric{padding:9px!important;min-height:66px!important}.acs-metric-title .elementor-heading-title{font-size:17px!important}.acs-metric-text .elementor-heading-title{font-size:7.2px!important;letter-spacing:.055em!important}.acs-section{padding:80px 20px!important}.acs-pillars{grid-template-columns:1fr!important}.acs-card{border-radius:22px!important;padding:22px!important}.acs-cta-card,.acs-contact-card{padding:22px 18px!important;border-radius:24px!important}.acs-cta-title .elementor-heading-title,.acs-about-title .elementor-heading-title,.acs-contact-title .elementor-heading-title{font-size:30px!important}}


/* v1.0.4 robust Elementor front-end fixes */
.elementor .acs-el-hero,.acs-el-hero{position:relative!important;isolation:isolate!important;min-height:100vh!important;display:flex!important;align-items:center!important;overflow:hidden!important;padding:110px max(24px,calc((100vw - 1180px)/2)) 70px!important;background:linear-gradient(90deg,rgba(255,255,255,1) 0%,rgba(255,255,255,.98) 21%,rgba(247,251,250,.94) 31%,rgba(247,251,250,.58) 46%,rgba(247,251,250,.18) 66%,rgba(247,251,250,.04) 100%),var(--acs-hero-image,url('../images/hero-airplane.webp')) right center/cover no-repeat,#f7fbfa!important;}
.elementor .acs-el-hero>.e-con-inner,.acs-el-hero>.e-con-inner,.elementor .acs-hero-inner,.acs-hero-inner{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;display:block!important;}
.elementor .acs-hero-content,.acs-hero-content{max-width:760px!important;display:block!important;position:relative!important;z-index:3!important;}
.elementor .acs-section,.acs-section{padding:100px max(24px,calc((100vw - 1180px)/2))!important;display:block!important;}
.elementor .acs-section>.elementor-element,.acs-section>.elementor-element{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;}
.elementor .acs-services-grid,.acs-services-grid,.elementor .acs-services-grid>.e-con-inner,.acs-services-grid>.e-con-inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;}
.elementor .acs-services-grid>.acs-card:nth-child(2),.acs-services-grid>.acs-card:nth-child(2),.elementor .acs-services-grid>.e-con-inner>.acs-card:nth-child(2),.acs-services-grid>.e-con-inner>.acs-card:nth-child(2){grid-column:span 2!important;}
.elementor .acs-card,.acs-card{border:1px solid rgba(7,60,81,.14)!important;background:rgba(255,255,255,.75)!important;border-radius:28px!important;box-shadow:0 12px 35px rgba(7,45,61,.08)!important;padding:26px!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;min-width:0!important;}
.elementor .acs-metrics,.acs-metrics,.elementor .acs-metrics>.e-con-inner,.acs-metrics>.e-con-inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:30px!important;max-width:560px!important;width:100%!important;}
.elementor .acs-metric,.acs-metric{padding:18px!important;border:1px solid rgba(255,255,255,.68)!important;border-radius:22px!important;background:linear-gradient(145deg,rgba(255,255,255,.48),rgba(255,255,255,.20))!important;box-shadow:0 20px 48px rgba(7,60,81,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;backdrop-filter:blur(22px) saturate(150%)!important;-webkit-backdrop-filter:blur(22px) saturate(150%)!important;}
.elementor .acs-about-layout,.acs-about-layout{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:34px!important;align-items:start!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;}
.elementor .acs-pillars,.acs-pillars{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;}
.elementor .acs-contact-card,.acs-contact-card{display:grid!important;grid-template-columns:.85fr 1fr!important;gap:28px!important;padding:28px!important;border:1px solid rgba(7,60,81,.14)!important;border-radius:28px!important;background:radial-gradient(circle at 15% 15%,rgba(232,174,62,.12),transparent 32%),rgba(255,255,255,.76)!important;box-shadow:0 12px 35px rgba(7,45,61,.08)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;}
.elementor .acs-cta-card,.acs-cta-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:28px!important;align-items:center!important;padding:34px 36px!important;border:1px solid rgba(7,60,81,.14)!important;border-radius:30px!important;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(247,251,250,.88))!important;box-shadow:0 24px 50px rgba(9,42,56,.08)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;}
.elementor .acs-marquee-editable,.acs-marquee-editable{overflow:hidden!important;border-block:1px solid rgba(7,60,81,.14)!important;background:rgba(255,255,255,.55)!important;padding:20px 0!important;white-space:nowrap!important;}
.elementor .acs-marquee-text .elementor-heading-title,.acs-marquee-text .elementor-heading-title{display:inline-block!important;white-space:nowrap!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:#073c51!important;font-size:14px!important;animation:acsMarquee 26s linear infinite!important;will-change:transform!important;}
@keyframes acsMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media(max-width:1020px){.elementor .acs-el-hero,.acs-el-hero{padding:128px 24px 70px!important;background:linear-gradient(180deg,rgba(255,255,255,.62) 0%,rgba(247,251,250,.82) 52%,#f7fbfa 100%),var(--acs-mobile-hero-image,url('../images/mobile-plane.webp')) center top/cover no-repeat,#f7fbfa!important}.elementor .acs-services-grid,.acs-services-grid,.elementor .acs-services-grid>.e-con-inner,.acs-services-grid>.e-con-inner,.elementor .acs-about-layout,.acs-about-layout,.elementor .acs-contact-card,.acs-contact-card{grid-template-columns:1fr!important}.elementor .acs-services-grid>.acs-card:nth-child(2),.acs-services-grid>.acs-card:nth-child(2){grid-column:auto!important}.elementor .acs-cta-card,.acs-cta-card{grid-template-columns:1fr!important}}
@media(max-width:640px){.elementor .acs-el-hero,.acs-el-hero{display:block!important;min-height:100svh!important;height:auto!important;padding:365px 20px 38px!important;background:linear-gradient(180deg,rgba(247,251,250,0) 0%,rgba(247,251,250,.34) 32%,rgba(247,251,250,.90) 55%,#f8fcfb 72%,#fff 100%),var(--acs-mobile-hero-image,url('../images/mobile-plane.webp')) center top/100% auto no-repeat,#f7fbfa!important}.elementor .acs-section,.acs-section{padding:80px 20px!important}.elementor .acs-metrics,.acs-metrics,.elementor .acs-metrics>.e-con-inner,.acs-metrics>.e-con-inner{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.elementor .acs-card,.acs-card{border-radius:22px!important;padding:22px!important}.elementor .acs-cta-card,.acs-cta-card,.elementor .acs-contact-card,.acs-contact-card{padding:22px 18px!important;border-radius:24px!important}.elementor .acs-pillars,.acs-pillars{grid-template-columns:1fr!important}}


/* v1.0.5 service icons - native Elementor Icon widget, editable in Elementor */
.elementor .acs-service-icon,
.acs-service-icon{
  width:56px!important;
  height:56px!important;
  margin:0 0 24px 0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(70,123,130,.08))!important;
  border:1px solid rgba(70,123,130,.22)!important;
  box-shadow:0 14px 32px rgba(7,60,81,.08),inset 0 1px 0 rgba(255,255,255,.8)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
.elementor .acs-service-icon .elementor-icon-wrapper,
.acs-service-icon .elementor-icon-wrapper{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;margin:0!important;line-height:0!important;}
.elementor .acs-service-icon .elementor-icon,
.acs-service-icon .elementor-icon{display:grid!important;place-items:center!important;width:31px!important;height:31px!important;color:#073c51!important;font-size:27px!important;line-height:1!important;}
.elementor .acs-service-icon svg,
.acs-service-icon svg{width:31px!important;height:31px!important;fill:#073c51!important;color:#073c51!important;}
.elementor .acs-service-icon i,
.acs-service-icon i{color:#073c51!important;font-size:27px!important;line-height:1!important;}
.elementor .acs-card:first-child .acs-service-icon,
.acs-card:first-child .acs-service-icon{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(62,119,65,.10))!important;}
.elementor .acs-card:hover .acs-service-icon,
.acs-card:hover .acs-service-icon{transform:translateY(-2px)!important;border-color:rgba(70,123,130,.32)!important;box-shadow:0 18px 38px rgba(7,60,81,.12),inset 0 1px 0 rgba(255,255,255,.86)!important;}
@media(max-width:640px){.elementor .acs-service-icon,.acs-service-icon{width:52px!important;height:52px!important;margin-bottom:18px!important;border-radius:17px!important}.elementor .acs-service-icon .elementor-icon,.acs-service-icon .elementor-icon{font-size:24px!important;width:28px!important;height:28px!important}}


/* v1.0.7 FINAL: only 3 editable templates — Header, Footer, Landing Page Content.
   Uses v1.0.5 visual style + v1.0.6 serious SVG aviation icons. */
:root{--acs-hero-image:url('../images/hero-airplane.webp');--acs-mobile-hero-image:url('../images/mobile-plane.webp');--acs-flag-image:url('../images/stp-flag.webp');--acs-logo-image:url('../images/logo.webp');}

/* Elementor container normalisation: prevents the header template from becoming a large card/blob. */
.elementor .site-header.e-con,
.elementor .site-header,
.site-header{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  width:min(960px,calc(100vw - 64px))!important;
  max-width:960px!important;
  position:fixed!important;
  top:16px!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  padding:11px 16px 11px 12px!important;
  border:1px solid rgba(255,255,255,.72)!important;
  background:rgba(255,255,255,.72)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%)!important;
  backdrop-filter:blur(20px) saturate(150%)!important;
  border-radius:999px!important;
  z-index:1000!important;
  box-shadow:0 18px 42px rgba(7,45,61,.10),inset 0 1px 0 rgba(255,255,255,.85)!important;
  overflow:visible!important;
}
body.admin-bar .site-header{top:48px!important;}
.elementor .site-header>.e-con-inner,
.site-header>.e-con-inner{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
}
.elementor-editor-active .site-header{position:relative!important;top:auto!important;left:auto!important;transform:none!important;margin:20px auto!important;}
.elementor .brand.e-con,.elementor .brand,.brand,
.elementor .brand>.e-con-inner,.brand>.e-con-inner{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:0!important;padding:0!important;margin:0!important;width:auto!important;max-width:none!important;flex:0 0 auto!important;
}
.elementor .brand-logo.e-con,.elementor .brand-logo,.brand-logo,.acs-brand-logo,
.elementor .brand-logo>.e-con-inner,.brand-logo>.e-con-inner{
  width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;max-width:62px!important;max-height:62px!important;border-radius:50%!important;overflow:hidden!important;background:#fff var(--acs-flag-image) center/cover no-repeat!important;display:grid!important;place-items:center!important;padding:0!important;box-shadow:0 0 0 1px rgba(8,54,72,.10),0 8px 16px rgba(7,45,61,.08)!important;flex:0 0 auto!important;
}
.elementor .brand-logo img,.brand-logo img,.acs-brand-logo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:left center!important;border-radius:50%!important;display:block!important;}
.elementor .brand-copy.e-con,.elementor .brand-copy,.brand-copy,
.elementor .brand-copy>.e-con-inner,.brand-copy>.e-con-inner{display:flex!important;flex-direction:column!important;gap:0!important;line-height:1.08!important;min-height:0!important;width:auto!important;max-width:none!important;padding:0!important;margin:0!important;}
.brand-copy strong,.brand-copy .elementor-heading-title{font-size:14px!important;white-space:nowrap!important;font-weight:650!important;color:var(--text,#073c51)!important;margin:0!important;line-height:1.08!important;}
.brand-copy small,.brand-copy .brand-subtitle .elementor-heading-title,.brand-copy .elementor-widget-heading:nth-child(2) .elementor-heading-title{font-size:11px!important;color:var(--muted,#5f7779)!important;letter-spacing:.10em!important;text-transform:uppercase!important;margin:4px 0 0!important;font-weight:500!important;line-height:1.08!important;}
.elementor .site-nav.e-con,.elementor .site-nav,.site-nav,
.elementor .site-nav>.e-con-inner,.site-nav>.e-con-inner{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:auto!important;max-width:none!important;min-height:0!important;padding:0!important;margin:0!important;flex:0 0 auto!important;}
.site-nav a,.site-nav .elementor-button{font-size:12px!important;color:var(--muted,#5f7779)!important;padding:10px 12px!important;border-radius:999px!important;transition:.25s ease!important;font-weight:560!important;background:transparent!important;border:0!important;box-shadow:none!important;line-height:1!important;min-height:0!important;}
.site-nav a:hover,.site-nav .elementor-button:hover{color:var(--brand,#073c51)!important;background:rgba(70,123,130,.10)!important;}
.site-nav .nav-cta,.site-nav .nav-cta .elementor-button{background:var(--brand,#073c51)!important;color:#fff!important;font-weight:650!important;box-shadow:0 12px 24px rgba(7,60,81,.18)!important;}
.nav-toggle{display:none;background:transparent!important;border:0!important;width:48px!important;height:48px!important;border-radius:50%!important;position:relative!important;cursor:pointer!important;flex:0 0 auto!important;}
.nav-toggle span{position:absolute!important;left:14px!important;right:14px!important;height:2px!important;background:var(--brand,#073c51)!important;transition:.25s!important;}.nav-toggle span:first-child{top:18px!important}.nav-toggle span:last-child{top:28px!important}
.acs-nav-toggle-widget{display:none!important;margin:0!important;line-height:0!important;}

/* Exact SVG aviation icons from the approved version. */
.icon-box{width:56px!important;height:56px!important;border-radius:19px!important;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(70,123,130,.08))!important;border:1px solid rgba(70,123,130,.22)!important;display:grid!important;place-items:center!important;margin:0 0 24px!important;box-shadow:0 14px 32px rgba(7,60,81,.08),inset 0 1px 0 rgba(255,255,255,.8)!important;transition:.25s ease!important;}
.icon-box svg{width:31px!important;height:31px!important;display:block!important;}
.icon-box .i-line{fill:none!important;stroke:var(--brand,#073c51)!important;stroke-width:2.2!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.icon-box .i-soft{fill:rgba(70,123,130,.10)!important;stroke:none!important;}
.icon-box .i-accent{fill:none!important;stroke:var(--green,#3e7741)!important;stroke-width:2.4!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.acs-card:first-child .icon-box{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(62,119,65,.10))!important;}
.acs-card:hover .icon-box{transform:translateY(-2px)!important;border-color:rgba(70,123,130,.32)!important;box-shadow:0 18px 38px rgba(7,60,81,.12),inset 0 1px 0 rgba(255,255,255,.86)!important;}

/* Make the HTML quote form visible and styled when used inside Elementor template. */
.acs-editable-form-card{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.acs-editable-form-card .quote-form,.quote-form{display:grid!important;gap:14px!important;background:rgba(247,251,250,.78)!important;border:1px solid rgba(7,60,81,.14)!important;border-radius:26px!important;padding:22px!important;box-shadow:none!important;}
.quote-form h3{margin:0 0 2px!important;color:var(--brand,#073c51)!important;font-size:22px!important;line-height:1.2!important;font-weight:620!important;}
.quote-form label{display:grid!important;gap:8px!important;color:var(--brand,#073c51)!important;font-size:13px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.07em!important;}
.quote-form input,.quote-form select,.quote-form textarea{width:100%!important;border:1px solid rgba(8,54,72,.13)!important;background:#fff!important;border-radius:16px!important;color:var(--text,#073c51)!important;padding:15px 14px!important;font:inherit!important;outline:none!important;box-shadow:none!important;}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--cyan,#467b82)!important;box-shadow:0 0 0 4px rgba(70,123,130,.10)!important;}
.quote-form textarea{resize:vertical!important}.quote-form .btn,.quote-form button.btn{width:100%!important}.quote-form .field-error{display:none;margin-top:-2px;color:#b3261e;font-size:12px;line-height:1.35;text-transform:none;letter-spacing:0;font-weight:500}.quote-form label.has-error input,.quote-form label.has-error select,.quote-form label.has-error textarea{border-color:#b3261e!important;box-shadow:0 0 0 4px rgba(179,38,30,.08)!important}.quote-form label.has-error .field-error{display:block}.form-feedback{display:none;margin:0;padding:12px 14px;border-radius:14px;font-size:13px;line-height:1.45;color:#073c51;background:rgba(232,174,62,.13);border:1px solid rgba(232,174,62,.28)}.form-feedback.is-visible{display:block!important}

/* Footer native Elementor output. */
.elementor .site-footer.e-con,.elementor .site-footer,.site-footer{position:relative!important;background:linear-gradient(135deg,#06384b 0%,#0a4e66 55%,#315f3a 100%)!important;color:#fff!important;padding:70px max(24px,calc((100vw - 1180px)/2)) 28px!important;overflow:hidden!important;}
.elementor .site-footer>.e-con-inner,.site-footer>.e-con-inner,.footer-inner{position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:1.35fr .9fr 1fr 1fr!important;gap:38px!important;align-items:start!important;max-width:1180px!important;width:100%!important;margin:0 auto!important;padding:0!important;}
.site-footer:before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 12% 10%,rgba(232,174,62,.22),transparent 28%),radial-gradient(circle at 88% 20%,rgba(255,255,255,.10),transparent 30%)!important;pointer-events:none!important;}
.footer-brand p,.footer-brand .elementor-widget-container,.footer-cta p,.footer-cta .elementor-widget-container{color:rgba(255,255,255,.74)!important;line-height:1.7!important;margin:20px 0 0!important;max-width:360px!important;}
.footer-logo .brand-copy strong,.footer-logo .brand-copy .elementor-heading-title{color:#fff!important}.footer-logo .brand-copy small,.footer-logo .brand-subtitle .elementor-heading-title{color:rgba(255,255,255,.70)!important}.footer-col,.footer-cta{display:grid!important;gap:12px!important}.footer-col h3,.footer-cta h3,.footer-col .elementor-heading-title,.footer-cta .elementor-heading-title{margin:0 0 8px!important;font-size:15px!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:650!important;color:#fff!important}.footer-col a,.footer-col span,.footer-col .elementor-widget-container{color:rgba(255,255,255,.72)!important;font-size:14px!important;line-height:1.5!important;transition:.25s ease!important}.footer-cta .elementor-button,.footer-cta .btn{width:max-content!important;background:#fff!important;color:var(--brand,#073c51)!important;box-shadow:none!important;margin-top:6px!important}
.footer-bottom{position:relative!important;z-index:1!important;display:flex!important;justify-content:space-between!important;gap:20px!important;max-width:1180px!important;margin:54px auto 0!important;padding-top:22px!important;border-top:1px solid rgba(255,255,255,.18)!important;color:rgba(255,255,255,.62)!important;font-size:13px!important}.footer-bottom .elementor-widget-container{color:rgba(255,255,255,.62)!important;font-size:13px!important}

@media(max-width:1020px){body.admin-bar .site-header{top:46px!important}.elementor .site-header,.site-header{width:calc(100% - 28px)!important;top:14px!important;padding:10px 12px!important}.elementor .site-header>.e-con-inner,.site-header>.e-con-inner{gap:12px!important}.elementor .site-nav,.site-nav,.elementor .site-nav>.e-con-inner,.site-nav>.e-con-inner{position:absolute!important;top:calc(100% + 10px)!important;left:0!important;right:0!important;width:100%!important;display:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:8px!important;padding:12px!important;border-radius:24px!important;background:rgba(255,255,255,.88)!important;border:1px solid rgba(255,255,255,.72)!important;box-shadow:0 22px 54px rgba(7,45,61,.16),inset 0 1px 0 rgba(255,255,255,.85)!important;-webkit-backdrop-filter:blur(22px) saturate(150%)!important;backdrop-filter:blur(22px) saturate(150%)!important;z-index:1001!important}.site-nav.is-open,.site-nav.is-open>.e-con-inner,.site-header .site-nav.is-open{display:flex!important}.site-nav a,.site-nav .elementor-button{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:12px 14px!important;background:rgba(255,255,255,.42)!important}.acs-nav-toggle-widget{display:block!important}.nav-toggle{display:block!important}.brand-logo,.acs-brand-logo,.elementor .brand-logo,.elementor .brand-logo>.e-con-inner{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}.brand-copy small,.brand-copy .brand-subtitle{display:none!important}.site-footer>.e-con-inner,.footer-inner{grid-template-columns:1fr 1fr!important}.footer-bottom{flex-direction:column!important}.site-nav:not(.is-open){display:none!important}}
@media(max-width:640px){.brand-logo,.acs-brand-logo,.elementor .brand-logo,.elementor .brand-logo>.e-con-inner{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}.brand-copy strong,.brand-copy .elementor-heading-title{font-size:12px!important;letter-spacing:-.01em!important}.nav-toggle{width:42px!important;height:42px!important}.nav-toggle span:first-child{top:17px!important}.nav-toggle span:last-child{top:27px!important}.icon-box{width:52px!important;height:52px!important;border-radius:17px!important;margin-bottom:18px!important}.icon-box svg{width:28px!important;height:28px!important}.site-footer>.e-con-inner,.footer-inner{grid-template-columns:1fr!important;gap:30px!important}.footer-bottom{margin-top:38px!important}.site-footer{padding-left:20px!important;padding-right:20px!important}}


/* v1.0.8 HOTFIX — header layout + mobile hero */
@media (min-width: 1021px){
  .elementor .site-header.e-con,
  .elementor .site-header,
  .site-header{
    width:min(1120px,calc(100vw - 64px))!important;
    max-width:1120px!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    overflow:visible!important;
    min-height:84px!important;
  }
  .elementor .site-header>.e-con-inner,
  .site-header>.e-con-inner,
  .elementor .brand,
  .brand,
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav>.e-con-inner,
  .site-nav>.e-con-inner{
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:0!important;
  }
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav>.e-con-inner,
  .site-nav>.e-con-inner{
    position:static!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:auto!important;
    display:flex!important;
    gap:6px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    border-radius:0!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .site-nav a,
  .site-nav .elementor-button,
  .site-nav .elementor-button-link,
  .site-nav .elementor-widget-button{
    width:auto!important;
    min-width:0!important;
    flex:0 0 auto!important;
    display:inline-flex!important;
    white-space:nowrap!important;
  }
  .nav-toggle,
  .acs-nav-toggle-widget{display:none!important;}
  .site-nav:not(.is-open){display:flex!important;}
}

@media (max-width: 1020px){
  .elementor .site-header,
  .site-header{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    min-height:56px!important;
    top:14px!important;
    border-radius:24px!important;
  }
  .elementor .site-header>.e-con-inner,
  .site-header>.e-con-inner{
    width:100%!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:nowrap!important;
  }
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav>.e-con-inner,
  .site-nav>.e-con-inner{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:14px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.92)!important;
    border:1px solid rgba(255,255,255,.76)!important;
    box-shadow:0 22px 54px rgba(7,45,61,.16), inset 0 1px 0 rgba(255,255,255,.85)!important;
    -webkit-backdrop-filter:blur(22px) saturate(150%)!important;
    backdrop-filter:blur(22px) saturate(150%)!important;
    z-index:1001!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-8px)!important;
  }
  .site-nav.is-open,
  .site-nav.is-open>.e-con-inner,
  .site-header .site-nav.is-open{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .site-nav:not(.is-open){display:none!important;}
  .site-nav a,
  .site-nav .elementor-button,
  .site-nav .elementor-button-link{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:12px 14px!important;
    background:rgba(255,255,255,.42)!important;
  }
  .acs-nav-toggle-widget,
  .nav-toggle{display:block!important;}
}

@media (max-width: 640px){
  .elementor .site-header,
  .site-header{
    padding:10px 12px!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.80)!important;
  }
  .brand-copy strong,
  .brand-copy .elementor-heading-title{font-size:11.5px!important;}

  .hero.section-pad,
  .elementor .hero.section-pad{
    min-height:auto!important;
    display:block!important;
    padding:352px 16px 26px!important;
    position:relative!important;
    overflow:visible!important;
    isolation:isolate!important;
  }
  .hero.section-pad:before,
  .elementor .hero.section-pad:before{
    inset:0!important;
    border-radius:0 0 28px 28px!important;
    background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(247,251,250,.14) 44%, rgba(247,251,250,.92) 78%, rgba(247,251,250,1) 100%)!important;
    z-index:-2!important;
  }
  .hero.section-pad:after,
  .elementor .hero.section-pad:after{
    inset:0!important;
    background:radial-gradient(circle at 78% 8%, rgba(232,174,62,.08), transparent 30%), linear-gradient(180deg, rgba(172,207,226,.10) 0%, rgba(247,251,250,0) 54%)!important;
    z-index:-3!important;
  }
  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image{
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:64px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:300px!important;
    object-fit:cover!important;
    object-position:center top!important;
    border-radius:0 0 24px 24px!important;
    opacity:.98!important;
    z-index:-5!important;
    filter:saturate(.96) contrast(.98) brightness(1.02)!important;
  }
  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:64px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:300px!important;
    border-radius:0 0 24px 24px!important;
    background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(247,251,250,.08) 52%, rgba(247,251,250,.92) 84%, rgba(247,251,250,1) 100%)!important;
    z-index:-4!important;
  }
  .hero-content{max-width:none!important;}
  .hero .eyebrow,
  .hero .section-kicker{
    max-width:100%!important;
    width:auto!important;
    font-size:10px!important;
    line-height:1.25!important;
    padding:8px 12px!important;
    gap:8px!important;
    margin-bottom:14px!important;
  }
  .hero h1.hero-title{
    font-size:clamp(32px,11vw,50px)!important;
    line-height:1.03!important;
    letter-spacing:-.048em!important;
    margin:0 0 14px!important;
  }
  .hero-copy{
    font-size:15px!important;
    line-height:1.62!important;
    color:var(--muted,#5f7779)!important;
    max-width:100%!important;
    margin:0 0 22px!important;
  }
  .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin-bottom:18px!important;
  }
  .hero-actions .btn{
    width:100%!important;
    justify-content:center!important;
    min-height:58px!important;
    border-radius:999px!important;
    padding:16px 22px!important;
  }
  .hero-metrics{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:0!important;
  }
  .hero-metrics>div,
  .hero-metrics div{
    min-height:0!important;
    padding:16px 12px!important;
    border-radius:18px!important;
  }
  .hero-metrics strong{font-size:14px!important;line-height:1.05!important;}
  .hero-metrics span{font-size:9.5px!important;line-height:1.2!important;letter-spacing:.06em!important;}
}


/* v1.0.9 FINAL MICROFIX — header row, hero sizing/buttons, mobile hero blend, footer typography */

/* Header: force true row layout in Elementor containers */
.elementor .site-header.e-con,
.elementor .site-header,
.site-header{
  --display:flex!important;
  --flex-direction:row!important;
  --align-items:center!important;
  --justify-content:space-between!important;
  --gap:22px!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:74px!important;
  height:auto!important;
  overflow:visible!important;
}
.elementor .site-header>.e-con-inner,
.site-header>.e-con-inner,
.elementor .site-header>.elementor-container,
.site-header>.elementor-container{
  --display:flex!important;
  --flex-direction:row!important;
  --align-items:center!important;
  --justify-content:space-between!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
}
.elementor .site-header>.elementor-element,
.site-header>.elementor-element,
.elementor .site-header>.e-con-inner>.elementor-element,
.site-header>.e-con-inner>.elementor-element{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
.elementor .site-header .elementor-widget,
.site-header .elementor-widget,
.elementor .site-header .elementor-widget-container,
.site-header .elementor-widget-container{
  margin:0!important;
}
.elementor .brand,
.brand,
.elementor .brand>.e-con-inner,
.brand>.e-con-inner{
  --flex-direction:row!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  width:auto!important;
  flex:0 1 auto!important;
}
.elementor .site-nav,
.site-nav,
.elementor .site-nav>.e-con-inner,
.site-nav>.e-con-inner{
  --flex-direction:row!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  width:auto!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
}

@media (min-width:1021px){
  .elementor .site-header.e-con,
  .elementor .site-header,
  .site-header{
    width:min(960px,calc(100vw - 64px))!important;
    max-width:960px!important;
    min-height:84px!important;
    padding:11px 16px 11px 12px!important;
    border-radius:999px!important;
  }
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav>.e-con-inner,
  .site-nav>.e-con-inner{
    position:static!important;
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .nav-toggle,
  .acs-nav-toggle-widget{display:none!important;}
}

/* Desktop hero: match reference scale, not oversized */
@media (min-width:1021px){
  .hero.section-pad,
  .elementor .hero.section-pad{
    min-height:720px!important;
    height:100vh!important;
    padding-top:92px!important;
    padding-bottom:52px!important;
    padding-left:max(24px,calc((100vw - var(--max,1180px))/2))!important;
    padding-right:max(24px,calc((100vw - var(--max,1180px))/2))!important;
    align-items:center!important;
  }
  .hero-content,
  .elementor .hero-content{
    max-width:590px!important;
    transform:translateY(18px)!important;
  }
  .hero h1.hero-title,
  .hero .hero-title,
  .hero h1,
  .elementor .hero h1.hero-title,
  .elementor .hero .hero-title{
    font-size:clamp(40px,3.75vw,56px)!important;
    line-height:1.04!important;
    letter-spacing:-.048em!important;
    max-width:590px!important;
    margin:16px 0!important;
    font-weight:550!important;
  }
  .hero-copy,
  .elementor .hero-copy{
    font-size:15.5px!important;
    line-height:1.62!important;
    max-width:500px!important;
    margin-top:8px!important;
  }
  .hero-actions,
  .elementor .hero-actions{
    gap:10px!important;
    margin-top:24px!important;
  }
  .btn,
  .elementor .btn,
  .hero-actions .btn,
  .site-nav .elementor-button,
  .site-nav .nav-cta,
  .elementor-button{
    border-radius:999px!important;
  }
  .hero-actions .btn,
  .elementor .hero-actions .btn,
  .hero-actions .elementor-button{
    min-height:44px!important;
    padding:12px 18px!important;
    font-size:13px!important;
    line-height:1!important;
  }
  .hero-metrics,
  .elementor .hero-metrics{
    margin-top:22px!important;
    max-width:500px!important;
    gap:10px!important;
  }
  .hero-metrics div,
  .elementor .hero-metrics div{
    min-height:88px!important;
    padding:14px 16px!important;
    border-radius:18px!important;
  }
}

/* Mobile/tablet header: pill row with brand left and hamburger right */
@media (max-width:1020px){
  .elementor .site-header.e-con,
  .elementor .site-header,
  .site-header{
    --flex-direction:row!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    min-height:56px!important;
    height:auto!important;
    padding:10px 12px!important;
    top:14px!important;
    border-radius:999px!important;
  }
  .elementor .site-header>.e-con-inner,
  .site-header>.e-con-inner{
    --flex-direction:row!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
  }
  .elementor .brand,
  .brand,
  .elementor .brand>.e-con-inner,
  .brand>.e-con-inner{
    order:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
  }
  .elementor .brand-logo,
  .brand-logo,
  .acs-brand-logo,
  .elementor .brand-logo>.e-con-inner,
  .brand-logo>.e-con-inner{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
    padding:4px!important;
  }
  .brand-copy strong,
  .brand-copy .elementor-heading-title{
    font-size:12px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
  }
  .brand-copy small,
  .brand-copy .brand-subtitle{display:none!important;}
  .acs-nav-toggle-widget,
  .nav-toggle{
    order:2!important;
    display:block!important;
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    margin-left:auto!important;
  }
  .nav-toggle span:first-child{top:17px!important;}
  .nav-toggle span:last-child{top:27px!important;}
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav>.e-con-inner,
  .site-nav>.e-con-inner{
    order:3!important;
    position:absolute!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    margin:0!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    padding:12px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.90)!important;
    border:1px solid rgba(255,255,255,.74)!important;
    box-shadow:0 22px 54px rgba(7,45,61,.16), inset 0 1px 0 rgba(255,255,255,.85)!important;
    -webkit-backdrop-filter:blur(22px) saturate(150%)!important;
    backdrop-filter:blur(22px) saturate(150%)!important;
    z-index:1001!important;
  }
  .site-header .site-nav:not(.is-open),
  .site-header .site-nav:not(.is-open)>.e-con-inner{
    display:none!important;
  }
  .site-header .site-nav.is-open,
  .site-header .site-nav.is-open>.e-con-inner{
    display:flex!important;
  }
}

/* Mobile hero: image top + smooth gradient behind content */
@media (max-width:640px){
  .hero.section-pad,
  .elementor .hero.section-pad{
    min-height:auto!important;
    height:auto!important;
    display:block!important;
    position:relative!important;
    overflow:hidden!important;
    padding:392px 20px 34px!important;
    background:linear-gradient(180deg,#eef8f8 0%,#f7fbfa 52%,#fff 100%)!important;
  }
  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image{
    display:block!important;
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:430px!important;
    object-fit:cover!important;
    object-position:center top!important;
    border-radius:0!important;
    opacity:.98!important;
    z-index:0!important;
    filter:saturate(.96) contrast(.98) brightness(1.03)!important;
  }
  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    display:block!important;
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:470px!important;
    border-radius:0!important;
    z-index:1!important;
    background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(247,251,250,.02) 42%,rgba(247,251,250,.32) 60%,rgba(247,251,250,.76) 74%,rgba(247,251,250,.96) 88%,#f7fbfa 100%)!important;
    pointer-events:none!important;
  }
  .hero.section-pad:before,
  .elementor .hero.section-pad:before,
  .hero.section-pad:after,
  .elementor .hero.section-pad:after{
    display:none!important;
    content:none!important;
  }
  .hero-content,
  .elementor .hero-content{
    position:relative!important;
    z-index:3!important;
    max-width:100%!important;
    transform:none!important;
    background:linear-gradient(180deg,rgba(247,251,250,.16) 0%,rgba(247,251,250,.60) 28%,rgba(247,251,250,.96) 100%)!important;
    border-radius:28px 28px 0 0!important;
    margin:0 -2px!important;
    padding:8px 0 0!important;
  }
  .hero .eyebrow,
  .elementor .hero .eyebrow{
    font-size:8.4px!important;
    line-height:1.18!important;
    letter-spacing:.064em!important;
    padding:6px 10px!important;
    gap:6px!important;
    max-width:100%!important;
    margin:0 0 16px!important;
    background:rgba(255,255,255,.58)!important;
    border-color:rgba(70,123,130,.20)!important;
    -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
    backdrop-filter:blur(18px) saturate(150%)!important;
  }
  .hero h1.hero-title,
  .hero .hero-title,
  .elementor .hero h1.hero-title{
    font-size:clamp(32px,10.2vw,42px)!important;
    line-height:1.04!important;
    letter-spacing:-.05em!important;
    margin:0 0 16px!important;
    max-width:100%!important;
  }
  .hero-copy,
  .elementor .hero-copy{
    font-size:14.5px!important;
    line-height:1.62!important;
    max-width:96%!important;
    margin:0 0 22px!important;
  }
  .hero-actions,
  .elementor .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:0 0 16px!important;
  }
  .hero-actions .btn,
  .elementor .hero-actions .btn{
    width:100%!important;
    min-height:48px!important;
    padding:13px 16px!important;
    font-size:13.5px!important;
    border-radius:999px!important;
  }
  .hero-metrics,
  .elementor .hero-metrics{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    max-width:100%!important;
    margin-top:0!important;
  }
  .hero-metrics div,
  .elementor .hero-metrics div{
    min-height:66px!important;
    padding:9px 9px!important;
    border-radius:14px!important;
  }
  .hero-metrics strong,
  .elementor .hero-metrics strong{font-size:17px!important;line-height:1!important;}
  .hero-metrics span,
  .elementor .hero-metrics span{font-size:7.2px!important;line-height:1.25!important;letter-spacing:.055em!important;}
}
@media (max-width:390px){
  .hero.section-pad,
  .elementor .hero.section-pad{padding-top:382px!important;padding-left:18px!important;padding-right:18px!important;}
  .hero .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image{height:420px!important;}
  .hero .hero-video-overlay,
  .elementor .hero .hero-video-overlay{height:460px!important;}
  .hero h1.hero-title,
  .elementor .hero h1.hero-title{font-size:32px!important;}
}

/* Footer: match reference typography, color, and spacing */
.site-footer,
.elementor .site-footer{
  padding:84px max(24px,calc((100vw - var(--max,1180px))/2)) 32px!important;
  background:linear-gradient(135deg,#06384b 0%,#0a4e66 55%,#315f3a 100%)!important;
}
.site-footer>.e-con-inner,
.elementor .site-footer>.e-con-inner,
.footer-inner{
  grid-template-columns:1.35fr .9fr 1fr .9fr!important;
  gap:52px!important;
  max-width:1180px!important;
  align-items:start!important;
}
.site-footer .brand-copy strong,
.site-footer .brand-copy .elementor-heading-title{
  color:#fff!important;
  font-size:14px!important;
  line-height:1.08!important;
  font-weight:650!important;
}
.site-footer .brand-copy small,
.site-footer .brand-subtitle .elementor-heading-title{
  color:rgba(255,255,255,.70)!important;
  font-size:11px!important;
  letter-spacing:.10em!important;
}
.site-footer .footer-brand p,
.site-footer .footer-brand .elementor-widget-container,
.site-footer .footer-cta p,
.site-footer .footer-cta .elementor-widget-container{
  color:rgba(255,255,255,.72)!important;
  font-size:15px!important;
  line-height:1.65!important;
  font-weight:500!important;
  margin:22px 0 0!important;
  max-width:320px!important;
}
.site-footer .footer-col,
.site-footer .footer-cta{
  gap:12px!important;
}
.site-footer .footer-col h3,
.site-footer .footer-cta h3,
.site-footer .footer-col .elementor-heading-title,
.site-footer .footer-cta .elementor-heading-title{
  color:#fff!important;
  font-size:15px!important;
  line-height:1.15!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:650!important;
  margin:0 0 10px!important;
}
.site-footer .footer-col a,
.site-footer .footer-col span,
.site-footer .footer-col .elementor-widget-container,
.site-footer .footer-col .elementor-icon-list-text{
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:500!important;
}
.site-footer .footer-cta .btn,
.site-footer .footer-cta .elementor-button{
  background:#fff!important;
  color:var(--brand,#073c51)!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:650!important;
  padding:14px 22px!important;
  margin-top:8px!important;
}
.footer-bottom,
.site-footer .footer-bottom{
  margin-top:56px!important;
  padding-top:24px!important;
  color:rgba(255,255,255,.62)!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.footer-bottom .elementor-widget-container,
.site-footer .footer-bottom .elementor-widget-container{
  color:rgba(255,255,255,.62)!important;
  font-size:13px!important;
}
@media (max-width:1020px){
  .site-footer>.e-con-inner,
  .elementor .site-footer>.e-con-inner,
  .footer-inner{grid-template-columns:1fr 1fr!important;gap:34px!important;}
}
@media (max-width:640px){
  .site-footer,
  .elementor .site-footer{padding:64px 20px 28px!important;}
  .site-footer>.e-con-inner,
  .elementor .site-footer>.e-con-inner,
  .footer-inner{grid-template-columns:1fr!important;gap:28px!important;}
  .footer-bottom{margin-top:36px!important;}
}


/* v1.0.10 FINAL FOOTER MICROFIX + editability polish */
/* Header stays as a horizontal row in the editable template output. */
@media (min-width:1021px){
  body:not(.elementor-editor-active) .site-header,
  body:not(.elementor-editor-active) .elementor .site-header{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
  body:not(.elementor-editor-active) .site-header>.e-con-inner,
  body:not(.elementor-editor-active) .site-header .brand,
  body:not(.elementor-editor-active) .site-header .brand>.e-con-inner,
  body:not(.elementor-editor-active) .site-header .site-nav,
  body:not(.elementor-editor-active) .site-header .site-nav>.e-con-inner{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
  }
  body:not(.elementor-editor-active) .site-header .site-nav,
  body:not(.elementor-editor-active) .site-header .site-nav>.e-con-inner{
    gap:6px!important;
  }
}

/* Footer: exact reference proportions, smaller CTA, proper line spacing. */
.site-footer,
.elementor .site-footer{
  padding:70px max(24px,calc((100vw - var(--max,1180px))/2)) 28px!important;
  color:#fff!important;
}
.site-footer>.e-con-inner,
.elementor .site-footer>.e-con-inner,
.footer-inner{
  max-width:1180px!important;
  width:100%!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:1.35fr .9fr 1fr 1fr!important;
  gap:38px!important;
  align-items:start!important;
}
.site-footer .footer-brand,
.site-footer .footer-col,
.site-footer .footer-cta{
  min-width:0!important;
}
.site-footer .footer-logo,
.site-footer .footer-logo>.e-con-inner,
.site-footer .brand.footer-logo,
.site-footer .brand.footer-logo>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
}
.site-footer .brand-logo,
.site-footer .acs-brand-logo{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  min-height:62px!important;
  padding:0!important;
}
.site-footer .brand-copy strong,
.site-footer .brand-copy .elementor-heading-title{
  color:#fff!important;
  font-size:14px!important;
  line-height:1.08!important;
  font-weight:650!important;
  margin:0!important;
}
.site-footer .brand-copy small,
.site-footer .brand-subtitle .elementor-heading-title{
  color:rgba(255,255,255,.70)!important;
  font-size:11px!important;
  line-height:1.08!important;
  letter-spacing:.10em!important;
  margin:4px 0 0!important;
}
.site-footer .footer-brand p,
.site-footer .footer-brand .elementor-widget-text-editor .elementor-widget-container,
.site-footer .footer-cta p,
.site-footer .footer-cta .elementor-widget-text-editor .elementor-widget-container{
  color:rgba(255,255,255,.74)!important;
  font-size:16px!important;
  line-height:1.7!important;
  font-weight:500!important;
  margin:20px 0 0!important;
  max-width:360px!important;
}
.site-footer .footer-col,
.site-footer .footer-cta{
  display:grid!important;
  align-content:start!important;
  gap:12px!important;
}
.site-footer .footer-col h3,
.site-footer .footer-cta h3,
.site-footer .footer-col .elementor-heading-title,
.site-footer .footer-cta .elementor-heading-title{
  color:#fff!important;
  font-size:15px!important;
  line-height:1.15!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:650!important;
  margin:0 0 8px!important;
}
.site-footer .footer-col .elementor-widget-text-editor .elementor-widget-container{
  display:grid!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.72)!important;
}
.site-footer .footer-col a,
.site-footer .footer-col span,
.site-footer .footer-col .elementor-widget-container,
.site-footer .footer-col .elementor-icon-list-text{
  display:block!important;
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  line-height:1.5!important;
  font-weight:500!important;
  margin:0!important;
  padding:0!important;
}
.site-footer .footer-col a:hover{
  color:#fff!important;
  transform:translateX(3px)!important;
}
.site-footer .footer-cta .elementor-widget-text-editor .elementor-widget-container{
  max-width:260px!important;
  font-size:16px!important;
  line-height:1.7!important;
  margin:20px 0 0!important;
}
.site-footer .footer-cta .elementor-widget-button,
.site-footer .footer-cta .elementor-button-wrapper{
  width:auto!important;
  display:inline-flex!important;
  align-self:start!important;
  justify-self:start!important;
  margin:6px 0 0!important;
}
.site-footer .footer-cta .btn,
.site-footer .footer-cta .elementor-button,
.site-footer .footer-cta a.elementor-button{
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:14px 22px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--brand,#073c51)!important;
  box-shadow:none!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:650!important;
  white-space:nowrap!important;
}
.footer-bottom,
.site-footer .footer-bottom,
.elementor .site-footer .footer-bottom{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  max-width:1180px!important;
  margin:54px auto 0!important;
  padding-top:22px!important;
  border-top:1px solid rgba(255,255,255,.18)!important;
  color:rgba(255,255,255,.62)!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.footer-bottom .elementor-widget-container,
.site-footer .footer-bottom .elementor-widget-container{
  color:rgba(255,255,255,.62)!important;
  font-size:13px!important;
  line-height:1.5!important;
  margin:0!important;
}
@media(max-width:1020px){
  .site-footer>.e-con-inner,
  .elementor .site-footer>.e-con-inner,
  .footer-inner{grid-template-columns:1fr 1fr!important;gap:34px!important;}
}
@media(max-width:640px){
  .site-footer,
  .elementor .site-footer{padding:64px 20px 28px!important;}
  .site-footer>.e-con-inner,
  .elementor .site-footer>.e-con-inner,
  .footer-inner{grid-template-columns:1fr!important;gap:28px!important;}
  .footer-bottom,
  .site-footer .footer-bottom{flex-direction:column!important;margin-top:36px!important;}
}


/* v1.0.11: footer credit + anchor navigation polish */
#home,
#services,
#about,
#quote{
  scroll-margin-top:110px!important;
}

.footer-col .elementor-widget-container a,
.footer-col a{
  display:block!important;
  margin:0 0 12px!important;
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  line-height:1.5!important;
  font-weight:500!important;
}
.footer-col .elementor-widget-container a:last-child,
.footer-col a:last-child{
  margin-bottom:0!important;
}
.footer-brand p,
.footer-brand .elementor-widget-text-editor .elementor-widget-container{
  color:rgba(255,255,255,.74)!important;
  font-size:16px!important;
  line-height:1.6!important;
  font-weight:500!important;
}
.footer-cta .elementor-widget-text-editor .elementor-widget-container,
.footer-cta p{
  color:rgba(255,255,255,.74)!important;
  font-size:16px!important;
  line-height:1.55!important;
  font-weight:500!important;
  max-width:300px!important;
}
.footer-cta .elementor-button,
.footer-cta .btn{
  width:auto!important;
  max-width:max-content!important;
  min-width:0!important;
  min-height:0!important;
  padding:14px 24px!important;
  border-radius:999px!important;
  font-size:14px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.footer-bottom a.footer-credit,
.footer-credit{
  display:inline!important;
  color:rgba(255,255,255,.78)!important;
  font-weight:600!important;
  text-decoration:none!important;
  margin-left:8px!important;
}
.footer-bottom a.footer-credit:hover,
.footer-credit:hover{
  color:#fff!important;
  text-decoration:underline!important;
}
.footer-bottom,
.footer-bottom .elementor-widget-container{
  font-size:13px!important;
  color:rgba(255,255,255,.62)!important;
  line-height:1.5!important;
}

@media(max-width:640px){
  #home,#services,#about,#quote{scroll-margin-top:88px!important;}
  .footer-bottom a.footer-credit,
  .footer-credit{
    display:block!important;
    margin-left:0!important;
    margin-top:6px!important;
  }
}


/* v1.0.12: ONLY requested fixes — mobile menu CTA rounding/spacing + mobile hero white blend */
@media (max-width: 1020px){
  .elementor .site-nav,
  .site-nav,
  .elementor .site-nav > .e-con-inner,
  .site-nav > .e-con-inner{
    padding:14px 14px 20px!important;
    gap:10px!important;
  }

  /* If nav-cta class is applied to an Elementor button widget, do not let the widget wrapper become a square button. */
  .site-nav .elementor-widget-button.nav-cta,
  .site-nav .nav-cta.elementor-widget-button{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
    padding:0!important;
    margin:4px auto 0!important;
    width:auto!important;
    max-width:max-content!important;
    border-radius:0!important;
    display:flex!important;
    justify-content:center!important;
  }

  .site-nav a.nav-cta,
  .site-nav .nav-cta a,
  .site-nav .nav-cta .elementor-button,
  .site-nav .elementor-widget-button.nav-cta .elementor-button,
  .site-nav .nav-cta.elementor-widget-button .elementor-button{
    width:auto!important;
    min-width:126px!important;
    max-width:max-content!important;
    min-height:46px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:13px 18px!important;
    margin:2px auto 4px!important;
    border-radius:999px!important;
    background:var(--brand,#073c51)!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:700!important;
    box-shadow:0 14px 28px rgba(7,60,81,.22)!important;
    overflow:hidden!important;
  }
}

@media (max-width: 640px){
  .hero-content,
  .elementor .hero-content{
    position:relative!important;
    z-index:3!important;
    isolation:isolate!important;
  }

  .hero-content::before,
  .elementor .hero-content::before{
    content:""!important;
    position:absolute!important;
    left:-22px!important;
    right:-22px!important;
    top:-88px!important;
    bottom:-34px!important;
    z-index:-1!important;
    pointer-events:none!important;
    background:
      linear-gradient(180deg,
        rgba(247,251,250,0) 0%,
        rgba(247,251,250,.55) 18%,
        rgba(255,255,255,.92) 35%,
        rgba(255,255,255,.98) 58%,
        #fff 100%)!important;
  }

  .hero.section-pad::after,
  .elementor .hero.section-pad::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:250px!important;
    height:260px!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(247,251,250,0) 0%,
      rgba(247,251,250,.38) 22%,
      rgba(255,255,255,.82) 52%,
      rgba(255,255,255,.98) 78%,
      #fff 100%)!important;
  }

  .hero .eyebrow,
  .hero .section-kicker{
    position:relative!important;
    z-index:4!important;
  }
}


/* v1.0.13 FINAL requested fixes: mobile logo/hero blend + footer precision */
@media (max-width:640px){
  /* Smaller mobile logo only */
  .brand-logo,
  .acs-brand-logo,
  .elementor .brand-logo,
  .elementor .brand-logo > .e-con-inner{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
  }

  /* Smooth white background from airplane image into content; no visible rectangular block */
  .hero.section-pad,
  .elementor .hero.section-pad{
    background:#fff!important;
    overflow:hidden!important;
  }

  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    display:block!important;
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:64px!important;
    height:335px!important;
    width:100%!important;
    border-radius:0!important;
    z-index:-4!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(247,251,250,.08) 42%,
      rgba(255,255,255,.46) 64%,
      rgba(255,255,255,.88) 82%,
      #fff 100%)!important;
  }

  .hero.section-pad::after,
  .elementor .hero.section-pad::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:270px!important;
    height:260px!important;
    z-index:2!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.26) 22%,
      rgba(255,255,255,.70) 48%,
      rgba(255,255,255,.96) 75%,
      #fff 100%)!important;
  }

  .hero-content,
  .elementor .hero-content{
    position:relative!important;
    z-index:3!important;
    isolation:isolate!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .hero-content::before,
  .elementor .hero-content::before{
    content:""!important;
    position:absolute!important;
    left:calc(50% - 50vw)!important;
    right:calc(50% - 50vw)!important;
    top:-95px!important;
    bottom:-42px!important;
    z-index:-1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.58) 24%,
      rgba(255,255,255,.94) 45%,
      #fff 72%,
      #fff 100%)!important;
  }
}

/* Footer exact layout/spacing refinements */
.site-footer,
.elementor .site-footer{
  padding-top:70px!important;
  padding-bottom:28px!important;
}

.site-footer .footer-inner,
.elementor .site-footer > .e-con-inner,
.site-footer > .e-con-inner{
  gap:54px!important;
  align-items:start!important;
}

.site-footer .footer-brand,
.site-footer .footer-col,
.site-footer .footer-cta{
  gap:12px!important;
  align-content:start!important;
}

.site-footer .footer-brand p,
.site-footer .footer-brand .elementor-widget-text-editor .elementor-widget-container{
  color:rgba(255,255,255,.72)!important;
  font-size:16px!important;
  line-height:1.6!important;
  font-weight:500!important;
  max-width:340px!important;
  margin-top:28px!important;
}

.site-footer .footer-col h3,
.site-footer .footer-cta h3,
.site-footer .footer-col .elementor-heading-title,
.site-footer .footer-cta .elementor-heading-title{
  color:#fff!important;
  font-size:15px!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  font-weight:700!important;
  margin:0 0 14px!important;
  text-transform:uppercase!important;
}

.site-footer .footer-col .elementor-widget-text-editor,
.site-footer .footer-col .elementor-widget-text-editor .elementor-widget-container,
.site-footer .footer-col .elementor-text-editor,
.site-footer .footer-col p{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.72)!important;
}

.site-footer .footer-col .elementor-widget-container a,
.site-footer .footer-col .elementor-text-editor a,
.site-footer .footer-col a{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:500!important;
  text-decoration:none!important;
}

.site-footer .footer-col .elementor-widget-container br,
.site-footer .footer-col br{
  display:none!important;
}

.site-footer .footer-cta .elementor-widget-text-editor,
.site-footer .footer-cta .elementor-widget-text-editor .elementor-widget-container,
.site-footer .footer-cta p{
  color:rgba(255,255,255,.72)!important;
  font-size:16px!important;
  line-height:1.55!important;
  font-weight:500!important;
  max-width:300px!important;
  margin:0!important;
}

.site-footer .footer-cta .elementor-widget-button{
  width:auto!important;
  max-width:max-content!important;
  margin-top:8px!important;
}

.site-footer .footer-cta .elementor-button,
.site-footer .footer-cta .btn{
  width:auto!important;
  max-width:max-content!important;
  min-width:0!important;
  min-height:0!important;
  padding:14px 24px!important;
  border-radius:999px!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

.site-footer .footer-bottom,
.site-footer .footer-bottom > .e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  flex-wrap:nowrap!important;
  margin-top:54px!important;
}

.site-footer .footer-bottom > .elementor-widget,
.site-footer .footer-bottom .elementor-widget-text-editor{
  width:auto!important;
  max-width:max-content!important;
  flex:0 1 auto!important;
  margin:0!important;
}

.site-footer .footer-bottom .elementor-widget-container,
.site-footer .footer-bottom{
  color:rgba(255,255,255,.62)!important;
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:500!important;
}

.site-footer .footer-credit,
.site-footer .footer-bottom a.footer-credit{
  display:inline!important;
  margin-left:8px!important;
  color:rgba(255,255,255,.78)!important;
  font-weight:700!important;
  text-decoration:none!important;
}

@media(max-width:980px){
  .site-footer .footer-inner,
  .elementor .site-footer > .e-con-inner,
  .site-footer > .e-con-inner{
    gap:34px!important;
  }
}

@media(max-width:640px){
  .site-footer .footer-bottom,
  .site-footer .footer-bottom > .e-con-inner{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:10px!important;
  }

  .site-footer .footer-credit,
  .site-footer .footer-bottom a.footer-credit{
    display:block!important;
    margin-left:0!important;
    margin-top:6px!important;
  }
}


/* v1.0.14 mobile hero blend refinement */
@media (max-width:640px){
  /* slightly smaller logo */
  .site-header .brand-logo,
  .site-header .acs-brand-logo,
  .site-header .brand-logo img,
  .site-header .acs-brand-image img{
    width:34px!important;
    height:34px!important;
    max-width:34px!important;
    max-height:34px!important;
  }

  /* smoother full-width blend from image to white content */
  .hero.section-pad,
  .elementor .hero.section-pad{
    padding-top:336px!important;
    background:#fff!important;
    overflow:hidden!important;
    position:relative!important;
  }

  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image{
    top:70px!important;
    height:300px!important;
    border-radius:0!important;
  }

  /* base soft fade over lower image */
  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    top:70px!important;
    height:300px!important;
    border-radius:0!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) 32%,
      rgba(250,252,252,.14) 48%,
      rgba(255,255,255,.42) 64%,
      rgba(255,255,255,.78) 80%,
      rgba(255,255,255,.98) 94%,
      #fff 100%)!important;
    z-index:-4!important;
  }

  /* extend the white fade upward behind eyebrow/title so it is not a visible box */
  .hero.section-pad::after,
  .elementor .hero.section-pad::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:235px!important;
    height:250px!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.18) 16%,
      rgba(255,255,255,.52) 38%,
      rgba(255,255,255,.84) 62%,
      rgba(255,255,255,.97) 82%,
      #fff 100%)!important;
  }

  .hero-content,
  .elementor .hero-content{
    position:relative!important;
    z-index:3!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .hero-content::before,
  .elementor .hero-content::before{
    content:""!important;
    position:absolute!important;
    left:calc(50% - 50vw)!important;
    right:calc(50% - 50vw)!important;
    top:-132px!important;
    bottom:-34px!important;
    z-index:-1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.12) 18%,
      rgba(255,255,255,.46) 38%,
      rgba(255,255,255,.82) 58%,
      rgba(255,255,255,.97) 76%,
      #fff 100%)!important;
  }

  .hero .eyebrow,
  .hero .section-kicker{
    margin-bottom:16px!important;
  }
}


/* v1.0.15: single-logo fix + remove mobile hero content box */
@media (max-width:640px){

  /* One logo circle only: remove the duplicated flag background from the wrapper */
  .site-header .brand-logo,
  .site-header .acs-brand-logo,
  .elementor .site-header .brand-logo,
  .elementor .site-header .acs-brand-logo,
  .elementor .site-header .brand-logo > .e-con-inner{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.82)!important;
    background-image:none!important;
    box-shadow:0 0 0 1px rgba(8,54,72,.10),0 8px 16px rgba(7,45,61,.08)!important;
  }

  .site-header .brand-logo img,
  .site-header .acs-brand-logo img,
  .site-header .acs-brand-image img,
  .elementor .site-header .brand-logo img,
  .elementor .site-header .acs-brand-image img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    border-radius:50%!important;
    display:block!important;
  }

  /* Important: remove the white rectangle/box that was being created behind the content */
  .hero-content::before,
  .elementor .hero-content::before{
    content:none!important;
    display:none!important;
    background:none!important;
  }

  .hero-content,
  .elementor .hero-content{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
    position:relative!important;
    z-index:3!important;
    isolation:auto!important;
  }

  /* Put the blend on the hero itself, not on the content block */
  .hero.section-pad,
  .elementor .hero.section-pad{
    padding-top:342px!important;
    background:#fff!important;
    overflow:hidden!important;
    position:relative!important;
  }

  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image{
    top:68px!important;
    height:305px!important;
    width:100%!important;
    border-radius:0!important;
    opacity:.98!important;
    object-fit:cover!important;
    object-position:center top!important;
  }

  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    display:block!important;
    position:absolute!important;
    top:68px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:305px!important;
    border-radius:0!important;
    z-index:-4!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) 34%,
      rgba(255,255,255,.18) 52%,
      rgba(255,255,255,.48) 68%,
      rgba(255,255,255,.82) 84%,
      #fff 100%)!important;
  }

  .hero.section-pad::after,
  .elementor .hero.section-pad::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:232px!important;
    height:255px!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.10) 16%,
      rgba(255,255,255,.36) 36%,
      rgba(255,255,255,.72) 58%,
      rgba(255,255,255,.95) 78%,
      #fff 100%)!important;
  }

  .hero .eyebrow,
  .hero .section-kicker{
    position:relative!important;
    z-index:4!important;
    background:rgba(255,255,255,.46)!important;
  }
}

@media (max-width:390px){
  .hero.section-pad,
  .elementor .hero.section-pad{
    padding-top:334px!important;
  }

  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video.hero-image,
  .elementor .hero .hero-video.hero-image,
  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video-overlay{
    height:300px!important;
  }

  .hero.section-pad::after,
  .elementor .hero.section-pad::after{
    top:224px!important;
  }
}


/* v1.0.16 REAL FIX: mobile hero background as one layer + logo filled circle */
@media (max-width:640px){

  /* Header logo: one full circular flag, no inner small logo */
  .site-header .brand-logo,
  .site-header .acs-brand-logo,
  .elementor .site-header .brand-logo,
  .elementor .site-header .acs-brand-logo,
  .elementor .site-header .brand-logo > .e-con-inner{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:50%!important;
    background:none!important;
    background-image:none!important;
    display:block!important;
    box-shadow:0 0 0 1px rgba(8,54,72,.10),0 8px 16px rgba(7,45,61,.08)!important;
  }

  .site-header .brand-logo img,
  .site-header .acs-brand-logo img,
  .site-header .acs-brand-image img,
  .elementor .site-header .brand-logo img,
  .elementor .site-header .acs-brand-logo img,
  .elementor .site-header .acs-brand-image img{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
    object-fit:cover!important;
    object-position:center center!important;
    border-radius:50%!important;
    display:block!important;
    padding:0!important;
    margin:0!important;
  }

  /* Remove all older mobile image/overlay/pseudo-element systems */
  .hero .hero-video,
  .hero .hero-video.hero-image,
  .hero.section-pad .hero-video,
  .hero.section-pad .hero-video.hero-image,
  .hero .hero-video-overlay,
  .hero.section-pad .hero-video-overlay,
  .elementor .hero .hero-video,
  .elementor .hero .hero-video.hero-image,
  .elementor .hero .hero-video-overlay{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
  }

  .hero.section-pad::before,
  .hero.section-pad::after,
  .elementor .hero.section-pad::before,
  .elementor .hero.section-pad::after,
  .hero-content::before,
  .hero-content::after,
  .elementor .hero-content::before,
  .elementor .hero-content::after{
    content:none!important;
    display:none!important;
    background:none!important;
  }

  /* One single mobile background:
     - airplane image starts under the header
     - white fade starts before the eyebrow
     - text area is white without a visible rectangular content block */
  .hero.section-pad,
  .elementor .hero.section-pad{
    position:relative!important;
    display:block!important;
    overflow:hidden!important;
    min-height:100svh!important;
    height:auto!important;
    padding-left:20px!important;
    padding-right:20px!important;
    padding-top:356px!important;
    padding-bottom:36px!important;
    background:
      linear-gradient(180deg,
        rgba(255,255,255,0) 0px,
        rgba(255,255,255,0) 235px,
        rgba(255,255,255,.18) 285px,
        rgba(255,255,255,.50) 325px,
        rgba(255,255,255,.82) 365px,
        #fff 410px,
        #fff 100%),
      url('../images/mobile-plane.webp') center 72px / 100% auto no-repeat,
      #fff!important;
    isolation:isolate!important;
  }

  .hero-content,
  .elementor .hero-content{
    position:relative!important;
    z-index:3!important;
    max-width:100%!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    isolation:auto!important;
  }

  .hero .eyebrow,
  .hero .section-kicker{
    position:relative!important;
    z-index:4!important;
    background:rgba(255,255,255,.42)!important;
    backdrop-filter:blur(16px) saturate(150%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(150%)!important;
    margin-bottom:16px!important;
  }
}

@media (max-width:390px){
  .hero.section-pad,
  .elementor .hero.section-pad{
    padding-top:346px!important;
    padding-left:18px!important;
    padding-right:18px!important;
    background:
      linear-gradient(180deg,
        rgba(255,255,255,0) 0px,
        rgba(255,255,255,0) 225px,
        rgba(255,255,255,.18) 275px,
        rgba(255,255,255,.50) 315px,
        rgba(255,255,255,.82) 352px,
        #fff 395px,
        #fff 100%),
      url('../images/mobile-plane.webp') center 72px / 100% auto no-repeat,
      #fff!important;
  }
}

/* v1.0.17 fallback only. Main mobile fix is injected late in wp_head/wp_footer. */


/* v1.0.18 NOTE:
   Main mobile fix is injected late from functions.php via acs_v118_acs_hero_inner_mobile_fix().
   Exact selector changed: .acs-hero-inner::before.
*/

/* v1.0.21 NOTE:
   Final targeted mobile fix is injected from functions.php.
   Only changed .acs-hero-inner and .acs-hero-inner::before width/full-bleed on smartphones.
*/


/* v1.0.22 anchor navigation only: prevent fixed header covering anchor sections */
#home,#services,#about,#quote{
  scroll-margin-top:110px!important;
}
@media(max-width:640px){
  #home,#services,#about,#quote{
    scroll-margin-top:90px!important;
  }
}
