/* DroneData responsive usability refinements — homepage, navigation, services,
   fleet and news only. No contact-form rules or submission changes. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { min-width:0; }
img,svg { max-width:100%; }
#root, #root > div, main { min-width:0; }

/* A compact, reachable 44px navigation target on phones and tablets. */
@media (max-width:1023px){
  nav.fixed { padding:12px clamp(12px,3vw,24px)!important; gap:12px; }
  nav.fixed > div:first-child { flex:0 1 auto; min-width:0; }
  nav.fixed > div:last-child { flex:0 0 auto; gap:12px; }
  nav.fixed button[aria-label="Open navigation"],
  nav.fixed button[aria-label="Close navigation"] {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 44px;
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    border:1px solid rgba(255,255,255,.26);
    border-radius:6px;
    background:rgba(8,11,20,.45);
    color:#ffffff!important;
    cursor:pointer;
    touch-action:manipulation;
  }
  nav.fixed[class*="bg-brand-offwhite"] button[aria-label="Open navigation"],
  nav.fixed[class*="bg-brand-offwhite"] button[aria-label="Close navigation"]{
    color:#1c2232!important;
    background:#fff;
    border-color:rgba(28,34,50,.22);
  }
  nav.fixed button[aria-label="Open navigation"]:focus-visible,
  nav.fixed button[aria-label="Close navigation"]:focus-visible,
  nav.fixed .dd-site-logo-button:focus-visible{
    outline:3px solid #ea8f54!important;
    outline-offset:3px!important;
  }
  /* When expanded, keep all mobile menu choices visible and reachable. */
  nav.fixed div[class*="absolute"][class*="top-full"] {
    max-height:calc(100dvh - 96px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    background:#f4f3ef;
    box-shadow:0 18px 35px rgba(10,15,27,.2);
  }
  nav.fixed div[class*="absolute"][class*="top-full"] > button {
    min-height:44px;
    touch-action:manipulation;
    text-align:left;
  }
}
@media (max-width:700px){
  nav.fixed { padding:10px 14px!important; gap:8px; }
  nav.fixed > div:first-child { gap:0!important; }
  nav.fixed .dd-site-logo-button { margin:0!important; }
  nav.fixed > div:last-child { gap:0!important; }
  /* Header contact is available inside the menu at this size. Hiding its
     duplicate from the header prevents the hamburger from sliding offscreen. */
  nav.fixed > div:last-child > .dd-mobile-header-contact-hidden { display:none!important; }
  nav.fixed .dd-site-logo-button { max-width:calc(100vw - 94px)!important; }
  nav.fixed .dd-site-logo { max-width:calc(100vw - 94px)!important; height:auto!important; }
  .dd-home-hero { padding-left:clamp(16px,6vw,24px); padding-right:clamp(16px,6vw,24px); }
  .dd-home-hero-content, .dd-home-hero p { max-width:100%; }
  .dd-home-hero-kicker { overflow-wrap:break-word; }
  .dd-news-main,.dd-news-feature-story,.dd-news-feature-index { min-width:0; }
  .dd-news-hero-inner,.dd-news-hero h1 { min-width:0; }
  .dd-news-hero h1 { overflow-wrap:normal; }
  .dd-news-feature-story h3,.dd-news-card h4 { overflow-wrap:break-word; }
  .dd-news-cta { min-width:0; }
  .dd-news-filters { scroll-padding-inline:16px; }
  .dd-news-filters button { min-height:42px; }
  #platform .grid > .group:hover {transform:none;}
}
@media (max-width:360px){
  .dd-home-hero { padding-top:104px; }
  .dd-news-hero h1 { font-size:clamp(38px,13vw,48px); }
  .dd-news-hero h1 span:last-child { font-size:clamp(26px,9vw,33px); }
  .dd-news-feature-story { padding:1.4rem; }
  .dd-news-card {padding:1.4rem;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;}
  nav.fixed button,.dd-site-logo {transition:none!important;}
  #platform .grid > .group:hover{transform:none!important;}
}
/* Defensive fallback for older header scripts that reapply display:inline-flex
   with inline !important. Absolutely remove only the duplicate header CTA
   from the narrow phone layout, never the menu's CONTACT link or the form. */
@media (max-width:700px){
  nav.fixed > div:last-child > button.dd-contact-box-v33 {
    position:absolute!important;
    left:-9999px!important;
    top:0!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}
