/* Kerbot Drone / editorial presentation.
   Large typography, authentic screenshots and unobtrusive scroll reveals.
   Corporate Kerbot navy, navigation, buttons, and typography are retained. */
body.drone-landing-page {
  --kd-ink:#10283a;
  --kd-muted:#526b7d;
  --kd-stroke:#d5dfe8;
  --kd-blue:#195f99;
  background:#f5f7f9 !important;
  background-image:none !important;
  color:var(--kd-ink);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
body.drone-landing-page .main.kd-main {
  width:100%;
  max-width:none;
  min-height:0;
  margin:0;
  padding:0;
}
body.drone-landing-page .kd-header {
  direction:ltr;
  background:#fff !important;
  color:var(--kd-ink) !important;
}
body.drone-landing-page .kd-header .brand-mark {
  width:34px !important;height:34px !important;object-fit:contain;
}
body.drone-landing-page .kd-header .brand-copy b {
  color:var(--kd-ink) !important;
  font-size:15px !important;
  font-weight:750 !important;
  letter-spacing:-.02em !important;
}
body.drone-landing-page .kd-header .nav a {
  font-size:13px;
  font-weight:600;
}
.kd-skip {
  position:fixed;top:-120px;left:14px;z-index:2000;
  padding:11px 16px;background:#10283a;color:#fff;
}
.kd-skip:focus {top:14px}
.kd-container {width:min(calc(100% - 64px),1300px);margin-inline:auto;}
.kd-hero {
  overflow:hidden;
  color:#fff;
  background:#10283a;
}
.kd-hero-text {
  width:min(calc(100% - 64px),1300px);
  margin-inline:auto;
  padding:clamp(64px,8vw,112px) 0 clamp(46px,6vw,76px);
}
.kd-hero h1 {
  max-width:100%;
  margin:0;
  font-size:clamp(54px,6vw,86px);
  line-height:1.02;
  font-weight:760;
  letter-spacing:-.065em;
  color:#fff;
  white-space:normal;
  text-wrap:balance;
}
.kd-hero-info {
  display:grid;
  grid-template-columns:minmax(0,1.22fr) minmax(220px,.58fr);
  align-items:end;
  gap:clamp(28px,5vw,75px);
  margin-top:clamp(34px,4vw,58px);
  padding-top:32px;
  border-top:1px solid rgba(255,255,255,.27);
}
.kd-hero-description h2 {
  margin:0;
  color:#fff;
  font-size:clamp(28px,3.2vw,46px);
  font-weight:650;
  line-height:1.05;
  letter-spacing:-.052em;
  text-wrap:balance;
}
.kd-hero-description h2 span {display:block}
.kd-hero-description p {
  max-width:740px;
  margin:24px 0 0;
  color:#cbd9e5;
  font-size:clamp(16px,1.45vw,20px);
  line-height:1.72;
}
.kd-hero-actions {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
  padding-bottom:8px;
}
body.drone-landing-page .kd-primary.btn.primary {
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  padding:0 29px;
  border:1px solid #fff !important;
  border-radius:9999px !important;
  background:#fff !important;
  color:#10283a !important;
  font-size:14px;
  font-weight:750;
  text-decoration:none;
  box-shadow:none !important;
  transition:background-color .22s ease,transform .22s ease;
}
body.drone-landing-page .kd-primary.btn.primary:hover {background:#e9f5fc!important;}
.kd-hero-actions .kd-link {
  display:inline-block;
  padding-bottom:4px;
  border-bottom:1px solid rgba(236,245,251,.5);
  color:#eaf2f7 !important;
  font-size:13px;
  text-decoration:none;
}
.kd-hero-gallery {
  width:min(calc(100% - 64px),1300px);
  margin:0 auto;
  padding-bottom:clamp(56px,8vw,104px);
}
.kd-hero-frame {
  overflow:hidden;
  background:#edf2f6;
  border:1px solid #7395ac;
}
.kd-hero-frame img {
  display:block;
  width:100%;
  height:auto;
  max-height:800px;
  object-fit:contain;
  object-position:center;
  background:#edf2f6;
}

/* Main message: oversized editorial titles, no overlines or decorative tags. */
.kd-intro {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.6fr);
  gap:clamp(35px,6vw,110px);
  align-items:end;
  padding:clamp(105px,12vw,172px) 0 clamp(100px,11vw,160px);
}
.kd-intro h2 {
  max-width:1050px;
  margin:0;
  color:#10283a;
  font-size:clamp(42px,4.8vw,68px);
  line-height:.99;
  letter-spacing:-.073em;
  font-weight:665;
  overflow-wrap:break-word;
}
.kd-intro p {
  margin:0 0 7px;
  color:#496477;
  font-size:clamp(18px,1.55vw,24px);
  line-height:1.6;
}
.kd-engineering {
  padding:clamp(90px,10vw,144px) 0 clamp(110px,12vw,175px);
  border-top:1px solid #cbd6df;
}
.kd-engineering-title {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);
  align-items:end;
  gap:clamp(40px,6vw,96px);
  margin-bottom:clamp(70px,8vw,120px);
}
.kd-engineering-title h2 {
  max-width:1000px;
  margin:0;
  color:#10283a;
  font-size:clamp(40px,4.5vw,64px);
  line-height:.99;
  font-weight:660;
  letter-spacing:-.073em;
  overflow-wrap:break-word;
}
.kd-engineering-stages {
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}
.kd-engineering-stages span {
  display:block;
  padding:13px 0;
  border-bottom:1px solid #cad5de;
  color:#3b586e;
  font-size:clamp(16px,1.5vw,22px);
  font-weight:650;
  line-height:1.32;
}
.kd-engineering-content {display:block;}
.kd-capability-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #cbd6df;}
.kd-capability {
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:clamp(14px,2vw,28px);
  padding:clamp(25px,2.7vw,36px) 24px clamp(25px,2.7vw,36px) 0;
  border-bottom:1px solid #cbd6df;
}
.kd-capability:nth-child(even){padding-left:26px;padding-right:0;border-left:1px solid #cbd6df;}
.kd-capability .kd-number {
  padding-top:9px;
  color:#688398;
  font-size:12px;
  font-weight:750;
}
.kd-capability h3 {
  margin:0;
  color:#10283a;
  font-size:clamp(27px,2.8vw,43px);
  line-height:1.07;
  letter-spacing:-.047em;
  font-weight:650;
}
.kd-capability p {
  max-width:650px;
  margin:16px 0 0;
  color:#567080;
  font-size:clamp(16px,1.25vw,19px);
  line-height:1.65;
}
.kd-outro {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:55px;
  align-items:end;
  padding:clamp(115px,12vw,185px) 0;
}
.kd-outro h2 {
  max-width:1100px;
  margin:0;
  color:#10283a;
  font-size:clamp(42px,4.8vw,66px);
  line-height:.99;
  letter-spacing:-.071em;
  font-weight:660;
  overflow-wrap:break-word;
}
body.drone-landing-page .kd-outro .kd-primary.btn.primary {
  background:#10283a !important;
  color:#fff !important;
  border-color:#10283a !important;
  white-space:nowrap;
}
.kd-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:28px 0 50px;
  border-top:1px solid #cbd6df;
}
.kd-footer-brand {
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:#10283a !important;
  text-decoration:none;
}
.kd-footer-brand img {width:31px;height:31px;object-fit:contain;}
.kd-footer-brand strong {font-size:14px;font-weight:750;}
.kd-footer-company {font-size:12px;color:#607484 !important;text-decoration:none;}
.kd-main :is(a,button):focus-visible {outline:2px solid #81c6e8;outline-offset:4px;}

/* Text becomes visible as it enters the viewport; without JS nothing is hidden. */
@media (prefers-reduced-motion:no-preference) {
  body.kd-motion-ready .kd-reveal {
    opacity:0;
    transform:translate3d(0,48px,0);
    transition:opacity 1000ms cubic-bezier(.19,1,.22,1),
               transform 1000ms cubic-bezier(.19,1,.22,1);
    transition-delay:0ms;
  }
  body.kd-motion-ready .kd-reveal.kd-delay-1 {transition-delay:120ms;}
  body.kd-motion-ready .kd-reveal.kd-delay-2 {transition-delay:200ms;}
  body.kd-motion-ready .kd-reveal.is-visible {
    opacity:1;
    transform:translate3d(0,0,0);
  }
}
html[dir="rtl"] .kd-hero-info,
html[dir="rtl"] .kd-intro,
html[dir="rtl"] .kd-engineering-title,
html[dir="rtl"] .kd-engineering-content,
html[dir="rtl"] .kd-outro {direction:rtl;}

@media (max-width:1100px) {
  .kd-hero-info {grid-template-columns:1fr;}
  .kd-hero-actions {flex-direction:row;flex-wrap:wrap;align-items:center;}
  .kd-intro {grid-template-columns:1fr;gap:30px;}
  .kd-intro p {max-width:800px;}
  .kd-engineering-title {grid-template-columns:1fr;gap:35px;}
  .kd-engineering-stages {grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;}
  .kd-outro {grid-template-columns:1fr;gap:35px;}
}
@media (max-width:760px) {
  .kd-container {width:calc(100% - 38px);}
  .kd-hero-text {width:calc(100% - 38px);padding:62px 0 52px;}
  .kd-hero h1 {font-size:clamp(58px,17.8vw,118px);letter-spacing:-.08em;line-height:.88;}
  .kd-hero-info {margin-top:62px;gap:28px;padding-top:25px;}
  .kd-hero-description h2 {font-size:clamp(32px,8.2vw,49px);}
  .kd-hero-description p {font-size:16px;line-height:1.6;}
  .kd-hero-actions {flex-direction:column;align-items:flex-start;}
  .kd-hero-gallery {width:calc(100% - 22px);padding-bottom:50px;}
  .kd-hero-frame img {max-height:460px;}
  .kd-intro {padding:95px 0;}
  .kd-intro h2 {font-size:clamp(48px,11vw,80px);line-height:1.01;}
  .kd-intro p {font-size:18px;}
  .kd-engineering {padding:80px 0 105px;}
  .kd-engineering-title {margin-bottom:50px;}
  .kd-engineering-title h2 {font-size:clamp(45px,10.5vw,76px);}
  .kd-engineering-stages {grid-template-columns:1fr 1fr;gap:0 15px;}
  .kd-engineering-stages span {font-size:15px;}
  .kd-capability-grid {grid-template-columns:1fr;}
  .kd-capability,.kd-capability:nth-child(even){padding:23px 0;border-left:0;border-right:0;}
  .kd-capability {padding:30px 0;}
  .kd-capability h3 {font-size:clamp(26px,6.4vw,37px);}
  .kd-capability p {font-size:16px;}
  .kd-outro {padding:105px 0;}
  .kd-outro h2 {font-size:clamp(47px,10.8vw,80px);}
  .kd-footer {flex-direction:column;align-items:flex-start;}
}
@media (max-width:385px) {
  .kd-hero h1 {font-size:clamp(55px,17.2vw,70px);}
  .kd-hero-description h2 {font-size:31px;}
  .kd-intro h2,.kd-engineering-title h2,.kd-outro h2 {font-size:44px;}
}
@media (prefers-color-scheme:dark) {
  body.drone-landing-page {background:#f5f7f9 !important;color:#10283a !important;}
  .kd-intro h2,.kd-engineering-title h2,.kd-capability h3,.kd-outro h2 {color:#10283a !important;}
  .kd-intro p,.kd-capability p {color:#526b7d !important;}
}
@media (prefers-reduced-motion:reduce) {
  .kd-reveal,body.kd-motion-ready .kd-reveal {opacity:1 !important;transform:none !important;transition:none !important;}
  html {scroll-behavior:auto !important;}
}


/* EXPANDED EDITORIAL SECTIONS — same Kerbot navy, layered translucent media. */
.kd-spotlight {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:710px;
  background:#112d41;
  color:#fff;
}
.kd-spotlight::before {
  position:absolute;
  inset:0;
  z-index:-1;
  content:"";
  background:linear-gradient(103deg,rgba(11,29,43,.99) 0%,rgba(13,37,54,.91) 49%,rgba(13,40,59,.64) 100%);
}
.kd-spotlight-image {
  position:absolute;
  inset:0;
  z-index:-2;
  overflow:hidden;
  pointer-events:none;
}
.kd-spotlight-image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.56;
  filter:saturate(.55) contrast(1.07);
}
.kd-spotlight-layout {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
  align-items:center;
  gap:clamp(38px,7vw,115px);
  min-height:710px;
  padding-top:clamp(115px,12vw,180px);
  padding-bottom:clamp(115px,12vw,180px);
}
.kd-spotlight h2 {
  max-width:1040px;
  margin:0;
  color:#fff;
  font-size:clamp(46px,5vw,72px);
  line-height:.98;
  letter-spacing:-.078em;
  font-weight:680;
  text-wrap:balance;
  overflow-wrap:break-word;
}
/* Reuse the real WebGlass optical recipe from styles-base.css:
   translucent milky-white glass + strong backdrop saturation and refraction-like optics.
   The heavy JS lens runtime remains disabled on the corporate site. */
.kd-glass-pane {
  --glass-radius:20px;
  --glass-blur:22px;
  --glass-opacity:.14;
  --dispersion-opacity:.45;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(32px,3.8vw,54px);
  border-radius:var(--glass-radius);
  border:1px solid rgba(255,255,255,.70);
  color:#10283a;
  background:linear-gradient(135deg,
    rgba(255,255,255,.88) 0%,
    rgba(255,255,255,.72) 50%,
    rgba(255,255,255,.60) 100%);
  backdrop-filter:blur(28px) saturate(210%) brightness(1.03) contrast(1.04);
  -webkit-backdrop-filter:blur(28px) saturate(210%) brightness(1.03) contrast(1.04);
  box-shadow:0 20px 50px -10px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.78);
}
.kd-glass-pane h3 {
  margin:0;
  color:#10283a;
  font-size:clamp(27px,2.55vw,40px);
  line-height:1.09;
  font-weight:690;
  letter-spacing:-.052em;
}
.kd-glass-pane p {
  margin:21px 0 0;
  color:#304d62;
  font-size:clamp(16px,1.28vw,19px);
  line-height:1.67;
}
.kd-glass-pane a {
  display:inline-flex;
  align-items:center;
  gap:20px;
  margin-top:34px;
  padding:0 0 6px;
  border-bottom:1px solid #195f99;
  color:#145486!important;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  text-decoration:none;
}
.kd-glass-pane a span:last-child {font-size:20px;}
.kd-glass-pane-light {background:linear-gradient(135deg,rgba(255,255,255,.90) 0%,rgba(255,255,255,.76) 50%,rgba(255,255,255,.62) 100%);}
.kd-glass-pane-light p {color:#3a5b70;}
/* Glass gets no hover shifts, sweeps or pulsing highlights. */
.kd-glass-pane::before,.kd-glass-pane::after {content:none!important;}

/* Documentation showcase: the report is a contained background layer.
   Previously these rules were missing, so the full PDF preview escaped the
   section and looked like an oversized inline image. Keep the toolbar cropped,
   while letting the actual report remain visible behind the glass. */
.kd-documentation {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 610px;
  padding: clamp(84px, 8vw, 118px) 0;
  background: #dce7ef;
}
.kd-documentation-background {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  overflow: hidden;
  pointer-events: none;
}
.kd-documentation-background img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 50%;
  transform: scale(1.16);
  opacity: .88;
  filter: saturate(.82) contrast(.96) blur(1px);
}
/* Soften the PDF preview without painting over the glass itself. */
.kd-documentation::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  content: "";
  background: linear-gradient(108deg,
    rgba(230, 240, 246, .78) 0%,
    rgba(226, 237, 244, .54) 48%,
    rgba(215, 232, 243, .35) 100%);
}
.kd-documentation-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, .90fr);
  gap: clamp(38px, 6vw, 94px);
  align-items: center;
  min-height: 400px;
}
.kd-documentation-copy h2 {
  max-width: 670px;
  margin: 0;
  color: #10283a;
  font-size: clamp(40px, 4.6vw, 64px);
  font-weight: 660;
  line-height: 1.06;
  letter-spacing: -.055em;
}
.kd-documentation-copy > p {
  max-width: 710px;
  margin: 22px 0 0;
  color: #284a61;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.7;
}
/* Unlike the original nearly opaque white gradient, this is genuinely
   translucent. Backdrop filtering samples the document layer beneath it. */
.kd-documentation .kd-glass-pane-light {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: clamp(28px, 3vw, 44px);
  border: 1px solid rgba(255, 255, 255, .38);
  border-radius: 22px;
  color: #10283a;
  background: rgba(250, 253, 255, .16);
  -webkit-backdrop-filter: blur(22px) saturate(180%) brightness(1.04) contrast(1.06);
  backdrop-filter: blur(22px) saturate(180%) brightness(1.04) contrast(1.06);
  box-shadow: 0 16px 42px rgba(13, 38, 57, .14),
    inset 0 1px 0 rgba(255, 255, 255, .32);
}
.kd-documentation .kd-glass-pane-light h3 {
  position: relative;
  color: #153247;
  font-size: clamp(25px, 2.2vw, 35px);
}
.kd-documentation .kd-glass-pane-light p {
  position: relative;
  color: #294e65;
  font-size: 15px;
}
.kd-documentation .kd-glass-pane-light a {
  position: relative;
  color: #145486 !important;
}
/* Preserve WebGlass treatment for browsers without backdrop-filter. */
@supports not ((backdrop-filter: blur(2px)) or (-webkit-backdrop-filter: blur(2px))) {
  .kd-documentation .kd-glass-pane-light {
    background: rgba(250, 253, 255, .78);
  }
}
@media (max-width: 1100px) {
  .kd-documentation-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .kd-documentation .kd-glass-pane-light { max-width: 760px; }
}
@media (max-width: 760px) {
  .kd-documentation {
    min-height: 0;
    padding: 72px 0;
  }
  .kd-documentation-background img {
    transform: scale(1.32);
    object-position: center 49%;
  }
  .kd-documentation-layout {
    min-height: 0;
    gap: 30px;
    padding-top: 0;
    padding-bottom: 0;
  }
  .kd-documentation-copy h2 { font-size: clamp(36px, 8.5vw, 48px); }
  .kd-documentation-copy > p { font-size: 15px; }
  .kd-documentation .kd-glass-pane-light {
    padding: 26px 22px;
    border-radius: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .kd-documentation-background img { transform: scale(1.16); }
}

/* Useful real destinations, deliberately editorial rather than card UI. */
.kd-resources {
  padding-top:clamp(110px,12vw,185px);
  padding-bottom:clamp(92px,10vw,158px);
}
.kd-resources-heading {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(290px,.5fr);
  gap:clamp(30px,6vw,110px);
  align-items:end;
  margin-bottom:clamp(52px,6vw,90px);
}
.kd-resources h2 {
  max-width:990px;
  margin:0;
  color:#10283a;
  font-size:clamp(42px,4.8vw,68px);
  line-height:.98;
  letter-spacing:-.073em;
  font-weight:665;
  overflow-wrap:break-word;
  text-wrap:balance;
}
.kd-resources-heading p {
  max-width:520px;
  margin:0 0 9px;
  color:#4b687a;
  font-size:clamp(17px,1.4vw,21px);
  line-height:1.7;
}
.kd-resources-links {border-top:1px solid #c6d3dd;}
.kd-resource-link {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  align-items:center;
  gap:clamp(18px,3vw,48px);
  min-height:122px;
  padding:22px 14px;
  border-bottom:1px solid #c6d3dd;
  color:#10283a!important;
  background:rgba(255,255,255,.01);
  text-decoration:none;
  transition:padding .3s ease,background .3s ease,border-color .3s ease;
}
.kd-resource-link > span:last-child {
  font-size:clamp(27px,3.5vw,51px);
  letter-spacing:-.047em;
  line-height:1.1;
  font-weight:620;
}
.kd-resource-link .kd-resource-arrow {
  color:#195f99;
  font-size:24px;
  font-weight:500;
}
.kd-resource-link:hover {background:rgba(255,255,255,.68);border-color:#b7c8d5;}

/* Tiny release identifier: version of the desktop product, not of the website. */
.kd-footer .kd-version {
  margin-left:auto;
  padding:5px 11px;
  border:1px solid #d3dfe8;
  border-radius:999px;
  color:#567085!important;
  font-size:11px;
  font-weight:650;
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
  text-decoration:none;
}


/* Only editorial sections reveal on scroll; WebGlass panels use the same
   easing as body copy and never animate in reaction to pointer hover. */
@media (prefers-reduced-motion:no-preference) {
  body.kd-motion-ready .kd-glass-pane.kd-reveal {
    opacity:0;
    transform:translate3d(0,48px,0);
    transition:opacity 1000ms cubic-bezier(.19,1,.22,1),
               transform 1000ms cubic-bezier(.19,1,.22,1);
  }
  body.kd-motion-ready .kd-glass-pane.kd-reveal.is-visible {
    opacity:1;
    transform:translate3d(0,0,0);
  }
}

html[dir="rtl"] .kd-spotlight-layout,
html[dir="rtl"] .kd-documentation-layout,
html[dir="rtl"] .kd-resources-heading,
html[dir="rtl"] .kd-resource-link {direction:rtl;}
html[dir="rtl"] .kd-footer .kd-version {margin-left:0;margin-right:auto;}


@media (max-width:1100px) {
  .kd-spotlight-layout,.kd-documentation-layout {grid-template-columns:1fr;gap:48px;}
  .kd-spotlight h2,.kd-documentation h2 {max-width:950px;}
  .kd-glass-pane {width:min(100%,690px);}
  .kd-resources-heading {grid-template-columns:1fr;gap:24px;}
  .kd-resources-heading p {max-width:820px;}
}
@media (max-width:760px) {
  .kd-spotlight-layout,.kd-documentation-layout {
    min-height:0;
    padding-top:102px;
    padding-bottom:100px;
    gap:37px;
  }
  .kd-spotlight h2 {font-size:clamp(54px,11.5vw,88px);}
  .kd-documentation h2 {font-size:clamp(51px,11vw,88px);}
  .kd-documentation-copy > p {font-size:17px;}
  .kd-glass-pane {padding:30px 25px;}
  .kd-glass-pane h3 {font-size:28px;}
  .kd-resources {padding-top:100px;padding-bottom:90px;}
  .kd-resources h2 {font-size:clamp(49px,11vw,84px);}
  .kd-resource-link {min-height:94px;grid-template-columns:30px 1fr;gap:16px;padding:18px 4px;}
  .kd-resource-link > span:last-child {font-size:clamp(25px,6vw,39px);}
  .kd-footer .kd-version {margin:0;}
}
@media (prefers-color-scheme:dark) {
  body.drone-landing-page .kd-resources h2 {color:#10283a!important;}
  body.drone-landing-page .kd-resources-heading p {color:#4b687a!important;}
  body.drone-landing-page .kd-resource-link {color:#10283a!important;}
}
@media (prefers-reduced-motion:reduce) {
  .kd-glass-pane,.kd-glass-pane::after,.kd-spotlight-image img,
  .kd-documentation-background img,.kd-resource-link {
    animation:none!important;transition:none!important;transform:none!important;filter:none!important;
  }
}


/* Interaction policy: buttons and interactive links NEVER animate or move on hover.
   Scroll reveal remains reserved for non-interactive editorial text and media. */
body.drone-landing-page :is(a,button) {
  transition:none!important;
  animation:none!important;
}
body.drone-landing-page :is(a,button):hover {
  transform:none!important;
  filter:none!important;
}
body.drone-landing-page .kd-resource-link:hover {
  padding-left:14px!important;
  padding-right:14px!important;
}
body.drone-landing-page .kd-glass-pane:hover {
  transform:none!important;
  box-shadow:0 20px 50px -10px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.78);
}
body.drone-landing-page .kd-footer .kd-version {
  cursor:default;
  white-space:nowrap;
}
@media(max-width:760px) {
  body.drone-landing-page .kd-resource-link:hover {
    padding-left:4px!important;
    padding-right:4px!important;
  }
}


/* Keep the documentation layout compact on phones. The older generic
   breakpoints occur above this override and must not restore large padding. */
@media (max-width: 760px) {
  .kd-documentation .kd-documentation-layout {
    min-height: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .kd-documentation .kd-documentation-copy h2 {
    font-size: clamp(36px, 8.5vw, 48px);
    line-height: 1.1;
  }
  .kd-documentation .kd-documentation-copy > p {
    font-size: 15px;
    line-height: 1.65;
  }
}



/* Monumental, typographic product identity. Scoped to kerbotdrone.com. */
body.drone-landing-page .kd-hero-text { padding-top:clamp(64px,8vw,120px); }
body.drone-landing-page .kd-hero h1.kd-display-title {
  margin:0; max-width:100%; color:#fff;
  font-size:clamp(88px,15vw,208px); line-height:.83;
  font-weight:760; letter-spacing:-.078em; text-transform:uppercase;
  white-space:normal; overflow-wrap:normal;
}
body.drone-landing-page .kd-display-mask {
  display:block; overflow:hidden;
  padding:.06em 0 .12em; margin:-.06em 0 -.12em;
}
body.drone-landing-page .kd-display-word {display:block; width:fit-content;}
body.drone-landing-page .kd-display-mask+.kd-display-mask {margin-top:.02em;}
body.drone-landing-page .kd-hero-info {margin-top:clamp(60px,7vw,106px);}
body.drone-landing-page .kd-hero-description h2 {
  font-size:clamp(33px,4vw,59px); line-height:1.06;
}
body.drone-landing-page .kd-hero-gallery {padding-bottom:clamp(76px,10vw,156px);}
body.drone-landing-page .kd-intro h2,
body.drone-landing-page .kd-engineering-title h2 {
  font-size:clamp(56px,6.9vw,104px); line-height:1;
  letter-spacing:-.075em; text-wrap:balance;
}
body.drone-landing-page .kd-spotlight h2 {
  font-size:clamp(64px,7.8vw,118px); line-height:.96;
  letter-spacing:-.078em;
}
body.drone-landing-page .kd-documentation-copy h2 {
  font-size:clamp(54px,6.1vw,94px); line-height:1.02;
  letter-spacing:-.064em; overflow-wrap:break-word;
}
body.drone-landing-page .kd-resources h2,
body.drone-landing-page .kd-outro h2 {
  font-size:clamp(58px,7vw,108px); line-height:.99;
  letter-spacing:-.073em; overflow-wrap:break-word;
}
body.drone-landing-page .kd-resource-link>span:last-child {
  font-size:clamp(30px,4.2vw,62px);line-height:1.09;
}
/* Progressive enhancement: headings and images must NEVER be hidden while
   waiting for scroll events. Animate visible content instead of gating it. */
body.drone-landing-page.kd-motion-ready .kd-reveal,
body.drone-landing-page.kd-motion-ready .kd-reveal:not(.is-visible),
body.drone-landing-page.kd-motion-ready .kd-title-reveal,
body.drone-landing-page.kd-motion-ready .kd-hero h1.kd-reveal,
body.drone-landing-page.kd-motion-ready .kd-glass-pane.kd-reveal,
body.drone-landing-page.kd-motion-ready .kd-hero-gallery.kd-reveal {
  opacity:1 !important;
  visibility:visible !important;
  clip-path:none !important;
  transform:none !important;
  transition:none !important;
}
body.drone-landing-page .kd-hero h1.kd-display-title {line-height:.94;}
body.drone-landing-page .kd-display-mask {
  padding:.09em 0 .13em;
  margin:-.09em 0 -.13em;
}
body.drone-landing-page .kd-display-word {opacity:1;transform:none;}
@keyframes kd-title-rise-safe {
  from {opacity:.32;transform:translate3d(0,.46em,0);}
  to {opacity:1;transform:translate3d(0,0,0);}
}
@keyframes kd-section-rise-safe {
  from {translate:0 42px;}
  to {translate:0 0;}
}
@keyframes kd-media-rise-safe {
  from {translate:0 38px;}
  to {translate:0 0;}
}
@media (prefers-reduced-motion:no-preference) {
  body.drone-landing-page.kd-motion-ready .kd-hero h1.is-visible .kd-display-word {
    animation:kd-title-rise-safe 950ms cubic-bezier(.19,1,.22,1) both;
  }
  body.drone-landing-page.kd-motion-ready .kd-display-mask:nth-child(2) .kd-display-word {
    animation-delay:110ms !important;
  }
  body.drone-landing-page.kd-motion-ready .kd-title-reveal.is-visible {
    animation:kd-section-rise-safe 850ms cubic-bezier(.19,1,.22,1) both;
  }
  body.drone-landing-page.kd-motion-ready .kd-hero-gallery.is-visible {
    animation:kd-media-rise-safe 1050ms cubic-bezier(.19,1,.22,1) both;
  }
}

@media (max-width:1100px){
  body.drone-landing-page .kd-hero h1.kd-display-title {font-size:clamp(86px,17vw,170px);}
  body.drone-landing-page .kd-intro h2,
  body.drone-landing-page .kd-engineering-title h2 {font-size:clamp(50px,8vw,84px);}
  body.drone-landing-page .kd-spotlight h2 {font-size:clamp(60px,9vw,94px);}
  body.drone-landing-page .kd-documentation-copy h2 {font-size:clamp(49px,7.3vw,80px);}
  body.drone-landing-page .kd-resources h2,
  body.drone-landing-page .kd-outro h2 {font-size:clamp(49px,8vw,84px);}
}
@media (max-width:760px){
  body.drone-landing-page .kd-hero h1.kd-display-title {font-size:clamp(66px,16vw,124px);}
  body.drone-landing-page .kd-hero-info {margin-top:42px;}
  body.drone-landing-page .kd-hero-description h2 {font-size:clamp(30px,7vw,42px);}
  body.drone-landing-page :is(.kd-intro h2,.kd-engineering-title h2,.kd-spotlight h2,.kd-documentation-copy h2,.kd-resources h2,.kd-outro h2) {
    font-size:clamp(42px,10vw,68px);line-height:1.04;
  }
  body.drone-landing-page .kd-resource-link>span:last-child {font-size:clamp(27px,6vw,40px);}
}
@media (max-width:410px){
  body.drone-landing-page .kd-hero h1.kd-display-title {font-size:clamp(59px,16vw,78px);}
  body.drone-landing-page :is(.kd-intro h2,.kd-engineering-title h2,.kd-spotlight h2,.kd-documentation-copy h2,.kd-resources h2,.kd-outro h2) {
    font-size:clamp(39px,10vw,48px);
  }
}
@media (prefers-reduced-motion:reduce){
  body.drone-landing-page .kd-display-word,
  body.drone-landing-page .kd-title-reveal,
  body.drone-landing-page .kd-hero-gallery {
    opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;
  }
}

/* ==========================================================
   KERBOT DRONE masthead
   Static, full-width masthead: NAVY. Floating pill: WHITE.
   No dynamic sampling or tinting of underlying sections.
   ========================================================== */
html body.drone-landing-page:not(.has-scrolled) [data-site-header].kd-header.rail {
  background:#10283a !important;
  color:#f2f7fa !important;
  border-bottom:1px solid rgba(215,231,243,.19) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
html body.drone-landing-page:not(.has-scrolled) [data-site-header].kd-header :is(.brand-copy b,.nav > a,.menu-toggle) {
  color:#f1f7fb !important;
}
html body.drone-landing-page:not(.has-scrolled) [data-site-header].kd-header .nav > a:hover {
  background:rgba(255,255,255,.11) !important;
  color:#fff !important;
}
html body.drone-landing-page:not(.has-scrolled) [data-site-header].kd-header .kb-language-trigger {
  background:rgba(255,255,255,.10) !important;
  color:#f0f6fb !important;
  border-color:rgba(220,237,249,.26) !important;
}
html body.drone-landing-page:not(.has-scrolled) [data-site-header].kd-header .kb-language-trigger:hover {
  background:rgba(255,255,255,.18) !important;
}
@media (min-width:1101px) {
  html body.drone-landing-page.has-scrolled [data-site-header].kd-header.rail {
    background:#fff !important;
    color:#10283a !important;
    border-color:#d7e3eb !important;
    box-shadow:0 16px 38px rgba(8,32,54,.16) !important;
  }
  html body.drone-landing-page.has-scrolled [data-site-header].kd-header :is(.brand-copy b,.nav > a,.menu-toggle) {
    color:#10283a !important;
  }
  html body.drone-landing-page.has-scrolled [data-site-header].kd-header .kb-language-trigger {
    background:#f2f6f9 !important;
    color:#203648 !important;
    border-color:#d4dfe8 !important;
  }
}
/* Giant, deliberate editorial statements rather than decorative UI. */
body.drone-landing-page .kd-manifesto {
  overflow:hidden;
  background:#10283a;
  color:#f7fbff;
  padding:clamp(88px,11vw,190px) 0;
}
body.drone-landing-page .kd-manifesto-inner {max-width:1420px;}
body.drone-landing-page .kd-manifesto-type {
  margin:0;
  font-weight:760;
  line-height:.93;
  letter-spacing:-.078em;
  color:#fff;
}
body.drone-landing-page .kd-manifesto-row {
  display:block;
  padding:.06em 0 .12em;
  border-bottom:1px solid rgba(228,240,249,.2);
  overflow:visible;
}
body.drone-landing-page .kd-manifesto-row:first-child {border-top:1px solid rgba(228,240,249,.2);}
body.drone-landing-page .kd-manifesto-word {
  display:block;
  width:100%;
  max-width:100%;
  font-size:clamp(72px,14.4vw,226px);
  line-height:1.05;
  letter-spacing:-.075em;
  white-space:nowrap;
  font-weight:760;
  color:#fff;
}
body.drone-landing-page .kd-manifesto-row:nth-child(2) .kd-manifesto-word {
  color:#b1c9dc;
}
body.drone-landing-page .kd-manifesto-row:nth-child(3) .kd-manifesto-word {
  text-align:right;
}
html[dir="rtl"] body.drone-landing-page .kd-manifesto-row:nth-child(3) .kd-manifesto-word {text-align:left;}
/* Existing section headings gain scale without cropped glyphs. */
body.drone-landing-page .kd-spotlight h2 {
  max-width:none;
  font-size:clamp(70px,9.5vw,150px);
  line-height:1.03;
  overflow-wrap:break-word;
}
body.drone-landing-page .kd-engineering-title h2 {
  font-size:clamp(65px,8.2vw,124px);
  line-height:1.04;
}
body.drone-landing-page .kd-resources h2 {
  font-size:clamp(66px,8.4vw,128px);
  line-height:1.04;
}
body.drone-landing-page .kd-intro h2 {
  font-size:clamp(68px,8.1vw,126px);
  line-height:1.04;
}
body.drone-landing-page .kd-outro h2 {
  font-size:clamp(60px,7.4vw,116px);
  line-height:1.05;
}
@media (max-width:760px) {
  body.drone-landing-page .kd-manifesto {padding:72px 0;}
  body.drone-landing-page .kd-manifesto-word {font-size:clamp(54px,15vw,116px);}
  body.drone-landing-page :is(.kd-spotlight h2,.kd-engineering-title h2,.kd-resources h2,.kd-intro h2,.kd-outro h2) {
    font-size:clamp(44px,10.5vw,76px);
    line-height:1.08;
  }
}
@media (prefers-reduced-motion:no-preference) {
  body.drone-landing-page.kd-motion-ready .kd-manifesto-row.is-visible .kd-manifesto-word {
    animation:kd-section-rise-safe 1000ms cubic-bezier(.19,1,.22,1) both;
  }
}
