/* J. Chloel Creative — design tokens, base, layout and core components (original order) */
:root{--ink:#14130F;--green:#051F00;--smoke:#EEEAE0;--silver:#ACA89B;--paper:#F8F6EF;--bg-body:var(--paper);--bg-header:var(--paper);--bg-clients:var(--paper);--bg-verticals:var(--smoke);--bg-equipment:var(--paper);--bg-drone:var(--smoke);--bg-contact:var(--smoke);--bg-footer:var(--smoke);--bg-frame:linear-gradient(160deg,#E2DECF 0%,#D7D2BF 100%);--bg-editor-panel:rgba(248,246,239,.95);--text-body:var(--ink);--text-muted:#52503F;--text-footer:#67655A;--border-footer:rgba(20,19,15,0.12);--border-editor:rgba(20,19,15,.16);--logo-filter:grayscale(1) brightness(0) invert(1) opacity(0.8);--logo-hover-filter:grayscale(0) brightness(1) opacity(1);--display:'Big Shoulders Display',sans-serif;--body:'Archivo',sans-serif;--mono:'IBM Plex Mono',monospace;--serif:'Cormorant Garamond',serif;--container:1180px;--pad:clamp(24px,5vw,72px);--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}a,button{touch-action:manipulation}.btn,.read-more,.back-link,nav.links a,.cap-arrow,.faq-toggle,.brand,.logo-tile{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none !important}.hero-eyebrow,.hero h1,.hero-sub,.hero-cta{opacity:1 !important;transform:none !important}.reveal{transform:none !important;transition:opacity .3s ease !important}}body{font-family:var(--body);background:var(--bg-body);color:var(--text-body);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}section{padding:clamp(64px,10vw,140px) var(--pad)}section[id]{scroll-margin-top:88px}::selection{background:var(--green);color:var(--paper)}a:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:3px}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:120;background:var(--green);transform:scaleX(0);transform-origin:0 50%;pointer-events:none}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--green)}.eyebrow.on-dark{color:var(--silver)}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:0.96;letter-spacing:-0.01em;text-transform:uppercase}header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:20px var(--pad);background:transparent;box-shadow:0 1px 0 rgba(20,19,15,0.08);transition:padding .25s var(--ease-out),box-shadow .25s ease,background .25s ease}header::before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(248,246,239,.88);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4)}header.scrolled{padding:14px var(--pad);box-shadow:0 1px 0 rgba(20,19,15,0.14)}.brand{display:flex;align-items:center;gap:18px;transform-origin:0 50%;transition:transform .25s var(--ease-out)}.brand-icon{height:42px;width:auto;display:block}header.scrolled .brand{transform:scale(.84)}.brand-divider{width:1px;height:34px;background:var(--ink);opacity:0.35}.brand-text{display:flex;flex-direction:column;line-height:1}.wordmark{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:0.01em;color:var(--green)}.brand-sub{font-family:var(--body);font-weight:600;font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--green);margin-top:4px}.nav-wrap{display:flex;align-items:center;gap:36px}.mobile-cta{display:none}nav.links{display:flex;align-items:center;gap:36px}nav.links a.navlink{position:relative;font-family:var(--mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink);transition:color .2s ease}nav.links a.navlink::after{content:'';position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:100% 50%;transition:transform .25s var(--ease-out)}nav.links a.navlink:focus-visible::after{transform:scaleX(1);transform-origin:0 50%}@media (hover:hover) and (pointer:fine){nav.links a.navlink:hover::after{transform:scaleX(1);transform-origin:0 50%}}nav.links a.navlink:focus-visible{color:var(--green)}@media (hover:hover) and (pointer:fine){nav.links a.navlink:hover{color:var(--green)}}.btn{font-family:var(--mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;padding:11px 22px;border:1px solid var(--green);color:var(--paper);background:var(--green);transition:background .2s ease,color .2s ease,transform .16s var(--ease-out),box-shadow .25s ease;white-space:nowrap}.btn:focus-visible{background:transparent;color:var(--green);transform:translateY(-1px);box-shadow:0 10px 24px -12px rgba(5,31,0,.5)}@media (hover:hover) and (pointer:fine){.btn:hover{background:transparent;color:var(--green);transform:translateY(-1px);box-shadow:0 10px 24px -12px rgba(5,31,0,.5)}}.btn:active{transform:scale(.97)}.back-link{display:none;font-family:var(--mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;padding:11px 22px;border:1px solid var(--paper);color:var(--paper);background:transparent;cursor:pointer;transition:background .2s ease,color .2s ease,transform .16s var(--ease-out);white-space:nowrap}.back-link:focus-visible{background:var(--paper);color:var(--ink)}@media (hover:hover) and (pointer:fine){.back-link:hover{background:var(--paper);color:var(--ink)}}.back-link:active{transform:scale(.97)}body.on-subpage .back-link{display:inline-block;border-color:var(--green);color:var(--green)}body.on-subpage .back-link:focus-visible{background:var(--green);color:var(--paper)}@media (hover:hover) and (pointer:fine){body.on-subpage .back-link:hover{background:var(--green);color:var(--paper)}}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;transition:transform .25s var(--ease-out),opacity .2s ease,background .25s ease}body.nav-open .menu-toggle span{background:var(--paper)}body.nav-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}body.nav-open .menu-toggle span:nth-child(2){opacity:0}body.nav-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width:1080px){body.nav-open{overflow:hidden}}.hero{min-height:clamp(480px,74vh,780px);min-height:clamp(480px,74svh,780px);background:radial-gradient(130% 100% at 72% 0%,#1b1a14 0%,var(--ink) 58%);color:var(--paper);display:flex;flex-direction:column;justify-content:center;padding:108px var(--pad) 56px;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;inset:-25% -15%;z-index:1;background:radial-gradient(38% 48% at 70% 28%,rgba(74,158,92,.30),transparent 68%),radial-gradient(30% 42% at 18% 78%,rgba(172,168,155,.12),transparent 70%);filter:blur(48px);animation:hero-aura 18s ease-in-out infinite alternate;pointer-events:none;will-change:transform}@keyframes hero-aura{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2.5%,2%,0) scale(1.07)}}.hero::after{content:'';position:absolute;inset:0;z-index:1;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");background-size:180px 180px;pointer-events:none}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,19,15,.68) 0%,rgba(20,19,15,.62) 48%,rgba(20,19,15,.3) 75%,rgba(20,19,15,.12) 100%)}@media (max-width:760px){.hero-overlay{background:rgba(20,19,15,.62)}}.hero > *:not(.hero-video):not(.hero-overlay){position:relative;z-index:2}.hero-eyebrow{margin-bottom:28px;opacity:0;animation:rise .6s var(--ease-out) forwards .1s}.hero-eyebrow.is-typing{opacity:1;animation:none}.typed-caret{display:inline-block;width:0.6em;height:1.05em;margin-left:2px;vertical-align:-0.15em;background:var(--silver);animation:caret-blink 1s steps(1) infinite}@keyframes caret-blink{0%,50%{opacity:1}50.01%,100%{opacity:0}}.hero h1{font-size:clamp(48px,9vw,124px);max-width:18ch;opacity:0;animation:rise .7s var(--ease-out) forwards .2s}.hero-sub{font-family:var(--body);font-size:clamp(15px,1.6vw,19px);color:var(--smoke);max-width:46ch;margin-top:28px;opacity:0;animation:rise .8s var(--ease-out) forwards .55s}.hero-cta{margin-top:44px;opacity:0;animation:rise .8s var(--ease-out) forwards .7s}@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.hero{min-height:auto;padding-top:96px;padding-bottom:var(--pad)}}.clients{background:var(--ink);padding:32px 0;border-top:1px solid rgba(248,246,239,.06)}.clients-head{text-align:center;margin-bottom:20px;padding:0 var(--pad)}.clients-head h2{font-size:clamp(28px,4vw,44px)}.clients-head .eyebrow{font-size:clamp(24px,3.4vw,38px);letter-spacing:0.16em;margin-bottom:14px;display:block}.clients-title{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:0.06em;line-height:0.96;color:var(--paper);font-size:clamp(34px,5.5vw,64px)}.clients-head h2{margin-top:10px;margin-bottom:18px;line-height:0.96}.clients-head::after{content:'';display:block;width:80px;height:1px;background:var(--paper);margin:14px auto 0;opacity:.35}.logo-marquee{overflow:hidden;width:100%;height:28px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 64px,#000 calc(100% - 64px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 64px,#000 calc(100% - 64px),transparent 100%)}.logo-track{display:flex;align-items:center;width:max-content;height:100%;gap:clamp(28px,4vw,56px);animation:logo-scroll 34s linear infinite}@media (hover:hover) and (pointer:fine){.logo-marquee:hover .logo-track{animation-play-state:paused}}.logo-tile{height:28px;flex:0 0 auto;display:flex;align-items:center;overflow:hidden}.logo-tile{-webkit-tap-highlight-color:transparent;user-select:none;outline:none;border:none;background:transparent}.logo-tile img{-webkit-user-drag:none;border:none;background:transparent;box-shadow:none}@keyframes logo-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media (max-width:760px){.logo-marquee{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%)}.logo-track{gap:28px;animation-duration:24.2s}}@media (prefers-reduced-motion:reduce){.logo-track{animation:none}}.capabilities{background:var(--green);color:var(--paper);padding-top:clamp(44px,5.5vw,76px);padding-bottom:clamp(44px,5.5vw,76px)}.cap-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px;margin-bottom:32px}.cap-head h2{font-size:clamp(28px,4vw,44px);margin-top:8px}.cap-head h2 .typed-caret{background:var(--paper);height:0.9em;vertical-align:-0.08em}.type-on-view{min-height:1.05em}.cap-row{display:flex;align-items:center;gap:clamp(12px,2.5vw,32px)}.cap-grid{display:flex;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:48px;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.cap-grid::-webkit-scrollbar{display:none}.cap-arrow{flex:0 0 auto;width:48px;height:48px;border:none;background:transparent;color:var(--paper);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:color .2s ease,opacity .2s ease,transform .16s var(--ease-out)}.cap-arrow svg{width:30px;height:26px;display:block}.cap-arrow:focus-visible{color:#fff;transform:scale(1.12)}@media (hover:hover) and (pointer:fine){.cap-arrow:hover{color:#fff;transform:scale(1.12)}}.cap-arrow:active{transform:scale(.94)}.cap-arrow[disabled]{opacity:.25;cursor:default;pointer-events:none}@media (max-width:560px){.cap-arrow{width:40px;height:40px}.cap-arrow svg{width:24px;height:21px}}.cap-card{flex:0 0 calc(50% - 24px);min-width:0;display:flex;flex-direction:column;padding-top:26px;border-top:1px solid rgba(248,246,239,0.18);scroll-snap-align:start}.cap-title{font-family:var(--display);font-weight:600;font-size:clamp(18px,2vw,22px);text-transform:uppercase;margin-bottom:18px}.cap-desc{font-size:15px;color:var(--smoke);opacity:0.85;line-height:1.55;margin-bottom:32px;flex-grow:1}.cap-inquire{align-self:flex-start;font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;padding:14px 28px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);transition:background .2s ease,color .2s ease,transform .16s var(--ease-out);white-space:nowrap}.cap-inquire:focus-visible{background:transparent;border-color:var(--paper);color:var(--paper)}@media (hover:hover) and (pointer:fine){.cap-inquire:hover{background:transparent;border-color:var(--paper);color:var(--paper)}}.cap-inquire:active{transform:translateY(1px)}@media (max-width:960px){.cap-grid{gap:32px}.cap-card{flex-basis:calc(50% - 16px)}}@media (max-width:760px){.cap-grid{gap:24px}.cap-card{flex-basis:100%}}.faq{background:var(--green);color:var(--paper);padding-top:clamp(44px,5.5vw,76px);padding-bottom:clamp(44px,5.5vw,76px)}.faq-head{text-align:center;margin-bottom:36px}.faq-head h2{font-family:var(--display);font-weight:600;font-size:clamp(32px,5vw,56px);color:var(--smoke)}.faq-list{max-width:1100px;margin:0 auto}.faq-row{border-top:1px solid rgba(248,246,239,0.18)}.faq-row:first-child{border-top:none}.faq-toggle{display:grid;grid-template-columns:56px 1fr auto;gap:32px;align-items:center;width:100%;padding:28px 0;background:none;border:none;cursor:pointer;text-align:left;color:inherit;font:inherit}.faq-num{font-family:var(--mono);font-size:18px;color:var(--silver);transition:color .25s ease}.faq-q{font-family:var(--body);font-weight:600;font-size:clamp(18px,2vw,22px);color:var(--paper);transition:color .2s ease}.faq-icon{position:relative;width:18px;height:18px;flex:0 0 auto}.faq-icon::before,.faq-icon::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--silver);transition:transform .25s var(--ease-out),opacity .25s ease,background .2s ease}.faq-icon::before{width:18px;height:2px}.faq-icon::after{width:2px;height:18px}.faq-row.open .faq-icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}.faq-row.open .faq-num{color:var(--paper)}.faq-toggle:focus-visible .faq-q{color:#fff}@media (hover:hover) and (pointer:fine){.faq-toggle:hover .faq-q{color:#fff}}@media (hover:hover) and (pointer:fine){.faq-toggle:hover .faq-icon::before,.faq-toggle:hover .faq-icon::after{background:var(--paper)}}.faq-a-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s var(--ease-out)}.faq-row.open .faq-a-wrap{grid-template-rows:1fr}.faq-a{overflow:hidden;min-height:0}.faq-a-inner{font-size:15px;color:var(--smoke);opacity:0.85;line-height:1.6;max-width:60ch;padding:0 0 30px calc(56px + 32px);margin:0;transition:opacity .25s ease .05s}.faq-row:not(.open) .faq-a-inner{opacity:0;transition-delay:0s}@media (max-width:760px){.faq-toggle{grid-template-columns:32px 1fr auto;gap:20px}.faq-a-inner{padding-left:calc(32px + 20px)}}@media (prefers-reduced-motion:reduce){.faq-a-wrap{transition:none}}.verticals{background:var(--ink);padding-top:clamp(44px,5.5vw,76px);padding-bottom:clamp(44px,5.5vw,76px)}.verticals .v-head .eyebrow{color:var(--silver)}.v-head{margin-bottom:32px}.v-head h2{font-size:clamp(17px,4.8vw,44px);margin-top:8px;white-space:nowrap;color:var(--paper)}.v-head h2 .typed-caret{background:var(--paper);height:0.9em;vertical-align:-0.08em}.v-grid{display:flex;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:clamp(20px,3vw,40px);scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.v-grid::-webkit-scrollbar{display:none}.v-card{flex:0 0 calc(50% - clamp(10px,1.5vw,20px));min-width:0;display:flex;flex-direction:column;scroll-snap-align:start}@media (max-width:760px){.v-card{flex:0 0 100%}}.cap-arrow.on-light{color:var(--green)}.cap-arrow.on-light:focus-visible{color:var(--ink)}@media (hover:hover) and (pointer:fine){.cap-arrow.on-light:hover{color:var(--ink)}}.verticals .cap-row{position:relative}.verticals .cap-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;color:var(--paper);filter:drop-shadow(0 2px 10px rgba(20,19,15,.7))}.verticals .cap-arrow.prev{left:16px}.verticals .cap-arrow.next{right:16px}.verticals .cap-arrow:focus-visible{color:#fff;transform:translateY(-50%) scale(1.12)}@media (hover:hover) and (pointer:fine){.verticals .cap-arrow:hover{color:#fff;transform:translateY(-50%) scale(1.12)}}.verticals .cap-arrow:active{transform:translateY(-50%) scale(.94)}.frame{aspect-ratio:4/3;background:var(--bg-frame);position:relative;margin-bottom:18px;overflow:hidden;transition:box-shadow .3s ease}.v-card .frame video{transition:transform .6s var(--ease-out)}@media (hover:hover) and (pointer:fine){.v-card:hover .frame{box-shadow:0 30px 60px -26px rgba(20,19,15,.45)}}@media (hover:hover) and (pointer:fine){.v-card:hover .frame video{transform:scale(1.045)}}.frame .corner{transition:transform .3s var(--ease-out)}@media (hover:hover) and (pointer:fine){.v-card:hover .frame .corner.tl{transform:translate(-6px,-6px)}}@media (hover:hover) and (pointer:fine){.v-card:hover .frame .corner.tr{transform:translate(6px,-6px)}}@media (hover:hover) and (pointer:fine){.v-card:hover .frame .corner.bl{transform:translate(-6px,6px)}}@media (hover:hover) and (pointer:fine){.v-card:hover .frame .corner.br{transform:translate(6px,6px)}}.frame::before,.frame::after,.frame .br-tr,.frame .br-bl{content:''}.frame .corner{position:absolute;width:22px;height:22px}.frame .corner.tl{top:14px;left:14px;border-top:2px solid var(--green);border-left:2px solid var(--green)}.frame .corner.tr{top:14px;right:14px;border-top:2px solid var(--green);border-right:2px solid var(--green)}.frame .corner.bl{bottom:14px;left:14px;border-bottom:2px solid var(--green);border-left:2px solid var(--green)}.frame .corner.br{bottom:14px;right:14px;border-bottom:2px solid var(--green);border-right:2px solid var(--green)}.frame .frame-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--green);opacity:0.55}.frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.drone{position:relative;overflow:hidden}.drone .drone-360{inset:auto;left:var(--pad);top:50%;transform:translateY(-50%);width:min(50%,650px);height:72%;-webkit-mask-image:radial-gradient(72% 72% at 50% 50%,#000 52%,transparent 98%);mask-image:radial-gradient(72% 72% at 50% 50%,#000 52%,transparent 98%)}.drone .drone-360 img{object-fit:contain;object-position:center}.drone-360{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y;overflow:hidden;z-index:0}.drone-360.drag{cursor:grabbing}.drone-360 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;visibility:hidden;-webkit-user-drag:none;user-select:none;pointer-events:none;will-change:opacity}.drone-360 img.on{opacity:1;visibility:visible}.drone-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(20,19,15,.82) 0%,rgba(20,19,15,.55) 45%,rgba(20,19,15,.3) 100%);pointer-events:none}.drone .feature-grid{position:relative;z-index:2}.drone .feature-copy .eyebrow{color:var(--silver)}.drone .feature-copy h2{color:var(--paper)}.drone .feature-copy p{color:var(--smoke);opacity:.85;margin-left:auto}.drone .feature-grid.no-frame{margin-left:auto;margin-right:0;text-align:right}.drone .drone-overlay{background:linear-gradient(280deg,rgba(5,31,0,.95) 0%,rgba(5,31,0,.62) 35%,rgba(5,31,0,.22) 65%,rgba(5,31,0,.08) 100%)}.ronin-360{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y;overflow:hidden;z-index:0}.ronin-360.drag{cursor:grabbing}.ronin-360 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;visibility:hidden;-webkit-user-drag:none;user-select:none;pointer-events:none;will-change:opacity}.ronin-360 img.on{opacity:1;visibility:visible}.ronin-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(20,19,15,.82) 0%,rgba(20,19,15,.55) 45%,rgba(20,19,15,.3) 100%);pointer-events:none}.equipment{position:relative;overflow:hidden}.equipment .ronin-360{inset:auto;right:var(--pad);top:50%;transform:translateY(-50%);width:min(50%,650px);height:72%;-webkit-mask-image:radial-gradient(72% 72% at 50% 50%,#000 52%,transparent 98%);mask-image:radial-gradient(72% 72% at 50% 50%,#000 52%,transparent 98%)}.equipment .ronin-360 img{object-fit:contain;object-position:center}.equipment .feature-grid{position:relative;z-index:2}.equipment .feature-copy .eyebrow{color:var(--silver)}.equipment .feature-copy h2{color:var(--paper)}.equipment .feature-copy p{color:var(--smoke);opacity:.85}.equipment .feature-grid.no-frame{margin-right:auto;text-align:left}.equipment .feature-copy p{margin-left:0}.v-card h3{font-size:clamp(20px,2.2vw,26px);margin-bottom:8px}.v-card p{font-size:15px;color:var(--text-muted);max-width:42ch}.v-card .frame{margin-bottom:0}.v-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:56px 26px 22px;background:linear-gradient(180deg,rgba(20,19,15,0) 0%,rgba(20,19,15,.5) 45%,rgba(20,19,15,.85) 100%);pointer-events:none}.v-card .v-caption h3{color:var(--paper);margin-bottom:6px}.v-card .v-caption p{color:var(--smoke);opacity:.92;min-height:3em}.equipment{background:#3B3B3B}.equipment .ronin-overlay{background:linear-gradient(100deg,rgba(5,31,0,.95) 0%,rgba(5,31,0,.62) 35%,rgba(5,31,0,.22) 65%,rgba(5,31,0,.08) 100%)}.equipment .feature-copy h2::after{content:'';display:block;width:72px;height:2px;background:linear-gradient(90deg,#4a9e5c,var(--green));margin-top:16px}.drone{background:#3B3B3B}.drone .feature-copy h2::after{content:'';display:block;width:72px;height:2px;background:linear-gradient(270deg,#4a9e5c,var(--green));margin-top:16px;margin-left:auto}.feature-grid{display:grid;grid-template-columns:0.8fr 1.1fr;gap:clamp(32px,6vw,80px);align-items:center}.feature-grid.reverse{grid-template-columns:1.1fr 0.8fr}.feature-grid.reverse .frame{order:2}.feature-grid.no-frame{grid-template-columns:1fr;max-width:640px}@media (max-width:760px){.feature-grid{grid-template-columns:1fr}.feature-grid.reverse .frame{order:0}}.feature-copy .eyebrow{margin-bottom:14px;display:block}.feature-copy h2{font-size:clamp(28px,4vw,44px);margin-bottom:18px}.equipment .feature-copy h2 .typed-caret,.drone .feature-copy h2 .typed-caret{background:var(--paper);height:0.9em;vertical-align:-0.08em}.feature-copy p{font-size:16px;max-width:52ch;color:var(--text-muted)}.read-more{display:inline-block;margin-top:28px;font-family:var(--mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;padding:14px 28px;border-radius:999px;border:1px solid var(--paper);color:var(--green);background:var(--paper);transition:background .2s ease,color .2s ease,transform .16s var(--ease-out);white-space:nowrap}.read-more:focus-visible{background:var(--green);color:var(--paper);border-color:var(--green)}@media (hover:hover) and (pointer:fine){.read-more:hover{background:var(--green);color:var(--paper);border-color:var(--green)}}.equipment-detail{position:relative;overflow:hidden;min-height:100vh;min-height:100svh;display:flex;align-items:center;padding:140px var(--pad) 80px}.equipment-detail-copy{position:relative;z-index:2;max-width:640px}.equipment-detail-copy .eyebrow{color:var(--silver);margin-bottom:14px;display:block}.equipment-detail-copy h1{font-family:var(--display);font-weight:700;line-height:0.96;letter-spacing:-0.01em;text-transform:uppercase;font-size:clamp(40px,7vw,84px);color:var(--paper);margin-bottom:22px}.equipment-detail-copy p{font-size:18px;color:var(--smoke);opacity:.85;max-width:46ch;margin-bottom:8px}@media (max-width:760px){.equipment-detail{min-height:auto;padding:120px var(--pad) 64px}}.drone-detail{position:relative;overflow:hidden;min-height:100vh;min-height:100svh;display:flex;align-items:center;padding:140px var(--pad) 80px}.drone-detail-copy{position:relative;z-index:2;max-width:640px}.drone-detail-copy .eyebrow{color:var(--silver);margin-bottom:14px;display:block}.drone-detail-copy h1{font-family:var(--display);font-weight:700;line-height:0.96;letter-spacing:-0.01em;text-transform:uppercase;font-size:clamp(40px,7vw,84px);color:var(--paper);margin-bottom:22px}.drone-detail-copy p{font-size:18px;color:var(--smoke);opacity:.85;max-width:46ch;margin-bottom:8px}@media (max-width:760px){.drone-detail{min-height:auto;padding:120px var(--pad) 64px}}.read-more:active{transform:scale(.97)}.equipment .read-more{margin-left:0}.about{background:var(--ink);color:var(--paper)}.about-grid{display:grid;grid-template-columns:0.8fr 1.1fr;gap:clamp(32px,6vw,80px);align-items:center}@media (max-width:760px){.about-grid{grid-template-columns:1fr}}.about .frame{aspect-ratio:4/5;background:linear-gradient(160deg,#1c1b15 0%,#0e0d0a 100%)}.about .frame .corner{border-color:var(--green) !important;z-index:2}.about .frame .frame-label{color:var(--silver);opacity:0.5}.about-portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.about-copy h2{font-size:clamp(20px,4vw,42px);margin-bottom:8px;white-space:nowrap}.about-copy .role{font-family:var(--mono);font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:#4a9e5c;margin-bottom:22px}.about-copy p{color:var(--smoke);opacity:0.88;font-size:16px;max-width:52ch;margin-bottom:18px}.stat-line{font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:#4a9e5c;margin-top:28px;padding-top:20px;border-top:1px solid rgba(248,246,239,0.18)}.contact{background:var(--bg-contact);text-align:center;position:relative;overflow:hidden;padding-top:clamp(44px,5.5vw,76px);padding-bottom:clamp(44px,5.5vw,76px)}.contact h2{font-size:clamp(34px,6vw,76px);max-width:18ch;margin:0 auto 36px}.contact .btn{font-size:13px;padding:16px 36px;display:inline-block}.contact-mark{position:absolute;top:50%;right:calc(-6% + 96px);width:clamp(560px,58vw,980px);transform:translateY(-50%) rotate(-6deg);opacity:0.07;pointer-events:none;z-index:0;user-select:none}.contact > *:not(.contact-mark){position:relative;z-index:1}@media (max-width:760px){.contact-mark{opacity:0.05;right:-18%}}.contact-grid{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:880px;margin-left:auto;margin-right:auto;text-align:left}@media (max-width:680px){.contact-grid{grid-template-columns:1fr;text-align:center}}.contact-grid .eyebrow{margin-bottom:8px}.contact-grid div p{font-family:var(--body);font-size:15px}@media (hover:hover) and (pointer:fine){.contact-grid div p a:hover{color:var(--green)}}footer{padding:32px var(--pad);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;background:var(--bg-footer);border-top:1px solid var(--border-footer)}footer .wordmark{color:var(--text-body);font-size:14px}footer .foot-right{font-family:var(--body);font-weight:600;font-size:11px;color:var(--text-footer);letter-spacing:0.02em}footer .foot-right a{color:var(--green)}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}.reveal.in{opacity:1;transform:translateY(0)}.cap-grid .reveal:nth-child(2),.v-grid .reveal:nth-child(2),.contact-grid .reveal:nth-child(2),.faq-list .reveal:nth-child(2){transition-delay:.06s}.cap-grid .reveal:nth-child(3),.contact-grid .reveal:nth-child(3),.faq-list .reveal:nth-child(3){transition-delay:.12s}.cap-grid .reveal:nth-child(4),.faq-list .reveal:nth-child(4){transition-delay:.18s}.v-grid .reveal:nth-child(4){transition-delay:.06s}@media (max-width:1080px){nav.links{position:fixed;inset:0;background:var(--ink);flex-direction:column;justify-content:center;gap:30px;transform:translateY(-100%);visibility:hidden;overscroll-behavior:contain;transition:transform .4s var(--ease-drawer),visibility 0s linear .4s}nav.links.open{transform:translateY(0);visibility:visible;transition:transform .4s var(--ease-drawer),visibility 0s}nav.links a.navlink{font-size:16px;color:var(--paper)}nav.links a.navlink:focus-visible{color:var(--silver)}@media (hover:hover) and (pointer:fine){nav.links a.navlink:hover{color:var(--silver)}}.menu-toggle{display:block;z-index:101}header .btn.desktop-only{display:none}.mobile-cta{display:inline-block}.back-link{margin-top:18px}body.on-subpage nav.links .back-link{display:inline-block;border-color:var(--paper);color:var(--paper)}body.on-subpage nav.links .back-link:focus-visible{background:var(--paper);color:var(--ink)}@media (hover:hover) and (pointer:fine){body.on-subpage nav.links .back-link:hover{background:var(--paper);color:var(--ink)}}}.editor-toggle{display:none;position:fixed;right:18px;bottom:18px;z-index:1000;border:1px solid var(--green);background:var(--green);color:var(--paper);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:12px 16px;border-radius:999px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.18)}body.editor-available .editor-toggle{display:block}.editor-panel{position:fixed;left:18px;bottom:18px;z-index:1000;display:none;gap:8px;align-items:center;flex-wrap:wrap;max-width:calc(100vw - 36px);background:var(--bg-editor-panel);border:1px solid var(--border-editor);padding:10px;box-shadow:0 10px 30px rgba(0,0,0,.16)}body.edit-mode .editor-panel{display:flex}.editor-panel button{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--green);background:transparent;color:var(--green);padding:9px 12px;cursor:pointer}.editor-panel .hint{font-family:var(--mono);font-size:11px;color:var(--text-muted);margin-left:4px}body.edit-mode [contenteditable="true"]{outline:1px dashed rgba(12,59,46,.55);outline-offset:3px;cursor:text}body.edit-mode [contenteditable="true"]:focus{outline:2px solid var(--green);background:rgba(248,246,239,.12)}
















@media (max-width:560px){.about-copy h2{white-space:normal}}:root{color-scheme:light}html{scroll-padding-top:88px}h1,h2,h3{text-wrap:balance}@media (pointer:fine){html{overscroll-behavior:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-80px;z-index:300;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:12px 20px;background:var(--green);color:var(--paper);transition:top .2s var(--ease-out)}.skip-link:focus-visible{top:16px}main:focus{outline:none}.hero > #motionToggle{position:absolute;right:var(--pad);bottom:24px;z-index:3;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:9px 14px;border:1px solid rgba(248,246,239,.4);border-radius:999px;background:rgba(20,19,15,.35);color:var(--paper);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s ease,border-color .2s ease,transform .16s var(--ease-out)}.motion-toggle:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.motion-toggle:hover{background:rgba(20,19,15,.6);border-color:var(--paper)}}.motion-toggle:focus-visible{outline:2px solid var(--paper);outline-offset:3px}@media (prefers-reduced-motion:reduce){.motion-toggle{display:none}}body.motion-paused .logo-track,body.motion-paused .hero::before{animation-play-state:paused}.drone-360:focus-visible,.ronin-360:focus-visible{outline:2px solid var(--paper);outline-offset:-8px}.contact-mark{height:auto}.hero .hero-eyebrow{color:var(--smoke)}
@media (prefers-reduced-motion:reduce){.v-card .frame video,.frame .corner,.brand{transition:none !important}.v-card .frame video,.frame .corner{transform:none !important}}

@media (max-width:420px){.hero > #motionToggle{width:38px;height:38px;padding:0;font-size:0;letter-spacing:0;display:grid;place-items:center}.hero > #motionToggle::before{content:"";box-sizing:border-box;width:11px;height:12px;border-left:3px solid currentColor;border-right:3px solid currentColor}.hero > #motionToggle[aria-pressed="true"]::before{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor;margin-left:3px}}
