/* Native responsive layout: never scale a fixed-width page with CSS zoom.
   Keep photo frames, compact groups and accessible controls independent. */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; }
html body{width:100%;min-width:0;}
html[data-theme] body #app main img{max-width:100%;}
html[data-theme] body #app main :is(.drone-service-card,.service-card,.lane-card,.client-card,.team-card,.industry-card) img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;}
html[data-theme] body #app main :is(.solution-visual,.photo-panel,.detail-figure) img{width:100%;height:auto;max-height:none;object-fit:contain;}
html[data-theme] body #app main .drone-product-card img{object-fit:contain;}
html[data-theme] body #app main .route-reference-image{height:auto;aspect-ratio:3/1;background-size:contain;background-repeat:no-repeat;}
@media(max-width:1099px){
  html[data-theme]{--header-height:64px;--gutter:24px;--section-gap:40px;}
  html[data-theme] body #app .site-header{height:64px;}
  html[data-theme] body #app .nav-shell{gap:8px;}
  html[data-theme] body #app .brand{min-width:0;}
  html[data-theme] body #app .brand img{width:100px;height:40px;}
  html[data-theme] body #app .brand-tagline{display:none;}
  html[data-theme] body #app .menu-toggle{display:grid;width:44px;height:44px;min-width:44px;padding:10px;margin-left:auto;}
  html[data-theme] body #app .nav-actions{gap:6px;}
  html[data-theme] body #app .nav-panel{top:64px;max-height:calc(100dvh - 64px);padding:12px 24px;}
  html[data-theme] body #app .nav-panel.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;align-items:start;}
  html[data-theme] body #app .nav-panel .nav-link{height:auto;min-height:44px;font-size:14px;white-space:normal;padding:10px;}
  html[data-theme] body #app .nav-dropdown{height:auto;}
  html[data-theme] body #app .nav-dropdown-menu{position:static;min-width:0;}
  html[data-theme] body #app .nav-dropdown-menu a{white-space:normal;}
  html[data-theme] body #app :is(.theme-trigger,.language-btn,.utility-rail-toggle){height:44px;min-height:44px;}
  html[data-theme] body #app .theme-trigger{width:44px;padding:10px;}
  html[data-theme] body #app .theme-trigger span{display:none;}
  html[data-theme] body #app .language-btn{font-size:13px;padding:8px 2px;}
  html[data-theme] body #app .nav-actions>.quote-btn{display:none;}
  html[data-theme] body #app .utility-rail-toggle{width:44px;padding:10px;}
  html[data-theme] body #app main :is(.page-hero,.drone-hero,.drone-export-hero){min-height:0;height:auto;--hero-height:0px;overflow:visible;}
  html[data-theme] body #app main :is(.page-hero-inner,.drone-hero-inner){min-height:0;height:auto;padding-block:28px;align-items:center;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy){width:56%;max-width:none;min-height:0;padding:0;display:block;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy) h1{font-size:34px;line-height:1.3;letter-spacing:0;margin:12px 0;max-width:none;text-wrap:balance;}
  html[data-theme] body #app main .drone-hero-copy h2{font-size:19px;line-height:1.5;margin:10px 0;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy)>p{font-size:15px;line-height:1.75;margin:12px 0;max-width:none;}
  html[data-theme] body #app main .page-hero::before,html[data-theme] body #app main .drone-hero-media{inset:0;width:100%;height:100%;transform:none;background-size:contain;background-position:center;background-repeat:no-repeat;opacity:1;}
  html[data-theme] body #app main .page-hero::after,html[data-theme] body #app main .drone-hero-media::after{background:linear-gradient(90deg,var(--mist) 0%,color-mix(in srgb,var(--mist) 95%,transparent) 28%,transparent 80%);}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;max-width:none;}
  html[data-theme] body #app main .hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
  html[data-theme] body #app main .hero-actions>*{min-height:44px;font-size:14px;padding:10px 14px;width:auto;}
  html[data-theme] body #app main :is(.drone-service-grid,.service-grid,.service-five-grid,.drone-product-grid,.advantage-grid,.drone-why-grid,.industry-grid,.client-grid,.topic-grid){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px;}
  html[data-theme] body #app main :is(.drone-solution-grid,.two-col,.team-intro){gap:24px;}
  html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding-block:20px;}
  html[data-theme] body #app main :is(.drone-stat,.stat){min-width:0;padding:8px;text-align:center;}
  html[data-theme] body #app main :is(.drone-stat,.stat) strong{font-size:26px;line-height:1.2;white-space:nowrap;}
  html[data-theme] body #app main :is(.drone-stat,.stat) small{font-size:12px;line-height:1.5;}
  html[data-theme] body #app main :is(.process-row,.drone-process-grid){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 0;}
  html[data-theme] body #app main .process-row::before{display:none;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item):nth-child(n){display:flex;flex-direction:column;align-items:center;text-align:center;min-height:0;padding:8px 5px;border:0;gap:0;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item)>span{width:40px;height:40px;margin:0 auto 7px;grid-area:auto;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item)>span svg{width:22px;height:22px;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item)>b{position:static;display:block;background:transparent;width:auto;height:auto;margin:0 0 3px;font-size:11px;line-height:1.4;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item)>strong{display:block;font-size:14px;line-height:1.5;align-self:auto;text-align:center;grid-area:auto;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item)>small{display:block;font-size:12px;line-height:1.5;text-align:center;max-width:none;margin:5px 0 0;grid-area:auto;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item):nth-child(n)::before{content:"";display:block;left:calc(50% + 24px);top:28px;width:calc(100% - 48px);height:1px;background:var(--line);transform:none;animation:none;}
  html[data-theme] body #app main :is(.process-item,.drone-process-item):nth-child(4n)::before,html[data-theme] body #app main :is(.process-item,.drone-process-item)>i{display:none;}
}
@media(max-width:599px){
  html[data-theme]{--gutter:16px;--section-gap:32px;}
  html[data-theme] body{font-size:14px;line-height:1.7;}
  html[data-theme] body #app .site-header{height:60px;}
  html[data-theme]{--header-height:60px;}
  html[data-theme] body #app .nav-shell{gap:4px;}
  html[data-theme] body #app .brand img{width:82px;height:36px;}
  html[data-theme] body #app .nav-actions{gap:2px;}
  html[data-theme] body #app .nav-panel{top:60px;padding:12px 16px;max-height:calc(100dvh - 60px);}
  html[data-theme] body #app main :is(.page-hero,.drone-hero,.drone-export-hero){display:flex;flex-direction:column;background:var(--mist);}
  /* Keep the complete wide photograph at its own ratio; text never obscures it. */
  html[data-theme] body #app main .page-hero::before,html[data-theme] body #app main .drone-hero-media{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:3/1;flex:none;z-index:0;background-size:contain;background-position:center;order:0;}
  html[data-theme] body #app main .page-hero::after,html[data-theme] body #app main .drone-hero-media::after{display:none;}
  html[data-theme] body #app main :is(.page-hero-inner,.drone-hero-inner){display:block;padding:20px 0 24px;order:1;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy){width:100%;min-height:0;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy) h1{font-size:28px;line-height:1.35;margin:8px 0 10px;font-weight:700;}
  html[data-theme] body #app main .drone-hero-copy h2{font-size:17px;margin:8px 0;line-height:1.5;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy)>p{font-size:14px;line-height:1.75;margin:10px 0;}
  html[data-theme] body #app main .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.02em;padding:0;background:none;border:0;}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points){gap:10px 12px;margin-top:14px;}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points)>span{grid-template-columns:20px minmax(0,1fr);gap:2px 6px;}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points) b{font-size:12px;line-height:1.5;}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points) small{font-size:12px;line-height:1.5;}
  html[data-theme] body #app main :is(.hero-points,.drone-hero-points) svg{width:18px;height:18px;}
  html[data-theme] body #app main .hero-actions{gap:8px;}
  html[data-theme] body #app main .hero-actions>*{font-size:13px;min-height:44px;gap:6px;padding:10px 12px;flex:1 1 auto;}
  html[data-theme] body #app main :is(.section,.drone-solution-section,.drone-network-section,.drone-cta-section,.drone-export-cta,.network-section,.value-strip,.blue-band){padding-block:30px;}
  html[data-theme] body #app main :is(.section-title,.drone-section-heading){margin-bottom:20px;}
  html[data-theme] body #app main :is(.section-title,.drone-section-heading) h2,html[data-theme] body #app main :is(.drone-solution-grid,.cta-box,.drone-cta,.drone-export-cta-inner,.network-panel,.newsletter-inner) h2{font-size:22px;line-height:1.4;margin:0 0 10px;}
  html[data-theme] body #app main :is(.section-title,.drone-section-heading) p{font-size:13px;line-height:1.7;margin-top:8px;}
  html[data-theme] body #app main .title-rule{width:28px;height:2px;margin-bottom:10px;}
  html[data-theme] body #app main :is(.drone-service-grid,.service-grid,.service-five-grid,.drone-product-grid,.advantage-grid,.drone-why-grid,.industry-grid,.client-grid,.topic-grid,.drone-issues-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;}
  html[data-theme] body #app main :is(.drone-service-card,.service-card,.advantage-item,.drone-why-grid>article,.industry-card,.client-card,.topic-card):nth-child(n){padding:0;border:0;min-width:0;}
  html[data-theme] body #app main :is(.card-body,.drone-card-body){padding:12px 0 0;}
  html[data-theme] body #app main :is(.drone-service-card,.service-card,.drone-why-grid>article,.advantage-item,.industry-card,.client-card,.topic-card) h3{font-size:15px;line-height:1.5;margin:8px 0 6px;}
  html[data-theme] body #app main :is(.drone-service-card,.service-card,.drone-why-grid>article,.advantage-item,.industry-card,.client-card,.topic-card) p{font-size:13px;line-height:1.7;margin:0;min-height:0;}
  html[data-theme] body #app main .text-link{font-size:13px;min-height:44px;margin-top:4px;}
  html[data-theme] body #app main :is(.drone-card-icon,.card-icon){width:28px;height:28px;margin-bottom:4px;}
  html[data-theme] body #app main :is(.drone-card-icon,.card-icon) svg{width:20px;height:20px;}
  html[data-theme] body #app main .drone-service-card img{border-radius:6px;}
  html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid){grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px;padding-block:20px;}
  html[data-theme] body #app main .stats-grid:has(>.stat:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr));}
  html[data-theme] body #app main :is(.drone-stat,.stat){display:block;padding:0 5px;border:0;}
  html[data-theme] body #app main :is(.drone-stat,.stat) strong{font-size:24px;display:block;}
  html[data-theme] body #app main :is(.drone-stat,.stat) small{font-size:11px;display:block;margin-top:6px;}
  html[data-theme] body #app main .drone-stat>svg{width:19px;height:19px;margin-bottom:6px;}
  html[data-theme] body #app main :is(.drone-solution-grid,.two-col,.team-intro){display:grid;grid-template-columns:minmax(0,1fr);gap:20px;}
  html[data-theme] body #app main .solution-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;}
  html[data-theme] body #app main .solution-list>a{padding:12px 8px;gap:6px;min-width:0;align-items:flex-start;}
  html[data-theme] body #app main .solution-list b{font-size:13px;line-height:1.5;}
  html[data-theme] body #app main .solution-list small{font-size:12px;line-height:1.6;margin-top:4px;}
  html[data-theme] body #app main .solution-list svg{width:16px;height:16px;margin-top:3px;}
  html[data-theme] body #app main .solution-list>a>svg:last-child{display:none;}
  html[data-theme] body #app main .solution-visual{min-width:0;}
  html[data-theme] body #app main .solution-badges{position:static;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:12px;}
  html[data-theme] body #app main .solution-badges span{font-size:13px;gap:7px;}
  html[data-theme] body #app main .drone-product-card{min-height:0;padding:12px;}
  html[data-theme] body #app main .drone-product-card img{height:auto;aspect-ratio:1.45;max-height:none;object-fit:contain;margin:0 0 10px;}
  html[data-theme] body #app main .drone-product-card h3{font-size:14px;line-height:1.5;}
  html[data-theme] body #app main .drone-issues-grid article:nth-child(n){padding:10px 0 14px;border:0;border-bottom:1px solid var(--line);}
  html[data-theme] body #app main .drone-issues-grid .issue-icon{width:40px;height:40px;margin-bottom:10px;}
  html[data-theme] body #app main .drone-issues-grid .issue-icon svg{width:22px;height:22px;}
  html[data-theme] body #app main .drone-issues-grid article>b{top:2px;left:calc(50% + 10px);}
  html[data-theme] body #app main .drone-issues-grid h3{font-size:15px;line-height:1.5;margin-bottom:6px;}
  html[data-theme] body #app main .drone-issues-grid p{font-size:13px;line-height:1.7;}
  html[data-theme] body #app main :is(.drone-global-stats,.value-grid,.blue-band-grid,.us-advantage-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;}
  html[data-theme] body #app main :is(.value-item,.band-item):nth-child(n){padding:8px;border:0;}
  html[data-theme] body #app main :is(.value-item,.band-item) strong{font-size:15px;}
  html[data-theme] body #app main :is(.value-item,.band-item) p{font-size:13px;}
  html[data-theme] body #app main .copy-block p,html[data-theme] body #app main .team-intro>div>p{font-size:14px;line-height:1.85;}
  html[data-theme] body #app main .stats-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:20px 0;}
  html[data-theme] body #app main .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;}
  html[data-theme] body #app main .team-card h3{font-size:15px;margin:10px 0 4px;}
  html[data-theme] body #app main .team-card p{font-size:13px;line-height:1.6;}
  html[data-theme] body #app main .lane-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;}
  html[data-theme] body #app main .lane-card{display:flex;flex-direction:column;gap:0;}
  html[data-theme] body #app main .lane-card-copy{padding:14px 0;min-width:0;}
  html[data-theme] body #app main .lane-card h3{font-size:17px;line-height:1.45;margin:0 0 10px;}
  html[data-theme] body #app main .lane-details{display:block;padding:0;font-size:13px;line-height:1.8;}
  html[data-theme] body #app main .eta-grid{grid-template-columns:minmax(0,1fr);font-size:13px;gap:8px;}
  html[data-theme] body #app main .eta-grid strong{font-size:17px;}
  html[data-theme] body #app main .lane-card li{font-size:13px;line-height:1.75;}
  html[data-theme] body #app main .drone-partners,html[data-theme] body #app main .partner-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
  html[data-theme] body #app main .drone-partners>.partner-card:last-child:nth-child(odd){grid-column:auto;width:auto;justify-self:stretch;}
  html[data-theme] body #app main .partner-card{min-height:74px;padding:12px 6px;}
  html[data-theme] body #app main .drone-cta,html[data-theme] body #app main .drone-export-cta-inner,html[data-theme] body #app main .cta-box{padding:20px 0;gap:16px;}
  html[data-theme] body #app main .network-explorer{padding:12px 8px;}
  html[data-theme] body #app main .network-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
  html[data-theme] body #app main .network-modes button{min-height:44px;font-size:13px;padding:8px;}
  html[data-theme] body #app main .news-article{display:grid;grid-template-columns:32% minmax(0,1fr);gap:12px;padding:18px 0;}
  html[data-theme] body #app main .news-article>img{width:100%;height:auto;object-fit:contain;align-self:start;}
  html[data-theme] body #app main .news-article h3{font-size:16px;line-height:1.5;margin-bottom:6px;}
  html[data-theme] body #app main .news-article p{font-size:13px;line-height:1.7;}
  html[data-theme] body #app main .category-tabs{flex-wrap:wrap;gap:6px;}
  html[data-theme] body #app main .category-tabs button{min-height:44px;font-size:13px;padding:8px 10px;}
  html[data-theme] body #app main .contact-form-wrap{padding:20px 16px;}
  html[data-theme] body #app main .contact-list a{overflow-wrap:anywhere;}
  html[data-theme] body #app main .faq-grid{grid-template-columns:1fr;gap:10px;}
  html[data-theme] body #app main .detail-heading h1{font-size:24px;line-height:1.5;}
  html[data-theme] body #app main .detail-copy{font-size:15px;line-height:1.9;}
  html[data-theme] body #app main .detail-pagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  html[data-theme] body #app .site-footer{padding-top:28px;}
  html[data-theme] body #app .footer-grid{gap:22px 16px;}
  html[data-theme] body #app .footer-brand p{font-size:13px;line-height:1.75;margin:12px 0;}
  html[data-theme] body #app .footer-column h3{font-size:15px;margin-bottom:10px;}
  html[data-theme] body #app .footer-column>a{min-height:44px;font-size:13px;padding-block:10px;}
  html[data-theme] body #app .footer-column p{font-size:13px;}
  html[data-theme] body #app .qr-code img{width:104px;height:104px;}
  html[data-theme] body #app .quote-dialog{padding:24px 18px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);}
  html[data-theme] body #app .dialog-heading h2{font-size:21px;}
  html[data-theme] body #app :is(.quote-form,.contact-form) :is(input,select,textarea){font-size:16px;}
}
@media(max-width:359px){
  html[data-theme]{--gutter:12px;}
  html[data-theme] body #app .brand img{width:72px;}
  html[data-theme] body #app .theme-trigger{display:none;}
  html[data-theme] body #app main :is(.page-hero-copy,.drone-hero-copy) h1{font-size:26px;}
  html[data-theme] body #app main :is(.process-row,.drone-process-grid){grid-template-columns:repeat(2,minmax(0,1fr));}
  html[data-theme] body #app main :is(.process-item,.drone-process-item):nth-child(2n)::before{display:none;}
}

@media(max-width:599px){
html[data-theme] body #app main .drone-stat:nth-child(n){grid-column:auto;}
html[data-theme] body #app main .drone-stat:last-child{grid-column:2 / 4;}
html[data-theme] body #app main .drone-product-card h3{padding-right:18px;}
html[data-theme] body #app main .drone-service-card .drone-card-body{padding:10px 0 0;}
html[data-theme] body #app main .drone-why-grid>article:nth-child(n){padding:14px 4px;border:0;}
html[data-theme] body #app main .drone-why-grid>article>svg{width:32px;height:32px;padding:4px;}
}

@media(max-width:1099px){
html[data-theme] body #app main img{height:auto;aspect-ratio:auto;object-fit:contain;}
}
@media(max-width:599px){
html[data-theme] body #app main .drone-product-card{padding:10px;}
html[data-theme] body #app main .drone-product-card img{aspect-ratio:1.78;object-fit:contain;margin:0;}
html[data-theme] body #app main .drone-product-card strong{padding:12px 20px 4px 0;font-size:14px;line-height:1.5;}
html[data-theme] body #app main .drone-global-stats{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0;gap:8px;}
html[data-theme] body #app main .drone-global-stats>span{padding:8px 0;border:0;grid-column:auto;}
html[data-theme] body #app main .drone-global-stats b{font-size:24px;min-width:0;}
html[data-theme] body #app main .drone-global-stats small{font-size:12px;}
html[data-theme] body #app main .drone-global-grid{gap:20px;}
html[data-theme] body #app main .team-grid figcaption{padding:12px 0;}
html[data-theme] body #app main .team-grid strong{font-size:15px;}
html[data-theme] body #app main .team-grid span{font-size:13px;}
}

@media(max-width:599px){
html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid){grid-template-columns:repeat(6,minmax(0,1fr));gap:14px 0;}
html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid)>:nth-child(n){grid-column:span 2;}
html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid)>:nth-child(4){grid-column:2 / 4;}
html[data-theme] body #app main :is(.drone-stats-grid,.stats-grid)>:nth-child(5){grid-column:4 / 6;}
html[data-theme] body #app main .stats-grid:has(>.stat:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;}
html[data-theme] body #app main .stats-grid:has(>.stat:nth-child(4):last-child)>.stat:nth-child(n){grid-column:auto;}
html[data-theme] body #app main .stats-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;}
html[data-theme] body #app main :is(.stats-panel,.stats-grid) .stat>svg{width:24px;height:24px;margin-bottom:6px;}
html[data-theme] body #app main .timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;width:100%;margin:0;}
html[data-theme] body #app main .timeline::before{display:none;}
html[data-theme] body #app main .timeline-item:nth-child(n){padding:0 0 0 12px;min-height:0;border-left:1px solid var(--line);text-align:left;}
html[data-theme] body #app main .timeline-item:nth-child(n)::before{display:none;}
html[data-theme] body #app main .timeline-item strong{font-size:22px;}
html[data-theme] body #app main .timeline-item p{font-size:13px;line-height:1.7;}
}
