@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap";.site-header[data-astro-cid-qgrrgaau]{position:sticky;top:0;z-index:var(--z-header);background:#f4f8fbeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(14,165,233,.12);transition:background var(--transition-base),box-shadow var(--transition-base)}.site-header[data-astro-cid-qgrrgaau].scrolled{background:#f4f8fbf7;box-shadow:0 2px 20px #07111b14}.header-inner[data-astro-cid-qgrrgaau]{display:flex;align-items:center;gap:var(--space-6);height:var(--header-height)}@media (max-width: 767px){.header-inner[data-astro-cid-qgrrgaau]{justify-content:space-between}}.header-logo[data-astro-cid-qgrrgaau]{flex-shrink:0;display:flex;align-items:center;gap:var(--space-3);text-decoration:none}.logo-img[data-astro-cid-qgrrgaau]{height:48px;width:48px;object-fit:contain;flex-shrink:0}.logo-wordmark[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;line-height:1.1}.logo-wordmark__name[data-astro-cid-qgrrgaau]{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--color-security-graphite)}.logo-wordmark__sub[data-astro-cid-qgrrgaau]{font-family:var(--font-heading);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-sensor-grey)}.logo-wordmark__ltd[data-astro-cid-qgrrgaau]{font-size:.7em;opacity:.7}.logo-fallback[data-astro-cid-qgrrgaau]{display:none;align-items:center;gap:var(--space-3)}.logo-icon[data-astro-cid-qgrrgaau]{flex-shrink:0}.logo-text[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;line-height:1.1}.logo-name[data-astro-cid-qgrrgaau]{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--color-security-graphite)}.logo-sub[data-astro-cid-qgrrgaau]{font-family:var(--font-heading);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-sensor-grey)}.logo-ltd[data-astro-cid-qgrrgaau]{font-size:.65em;color:var(--color-sensor-grey);opacity:.7}.header-nav[data-astro-cid-qgrrgaau]{flex:1}.nav-list[data-astro-cid-qgrrgaau]{display:flex;align-items:center;gap:var(--space-1);list-style:none}.nav-item[data-astro-cid-qgrrgaau]{position:relative}.nav-link[data-astro-cid-qgrrgaau],.nav-link--btn[data-astro-cid-qgrrgaau]{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-steel-graphite);text-decoration:none;border-radius:var(--radius-md);background:none;border:none;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),background var(--transition-fast);position:relative}.nav-link[data-astro-cid-qgrrgaau]:after{content:"";position:absolute;bottom:2px;left:var(--space-3);right:var(--space-3);height:2px;background:var(--color-camera-blue);border-radius:var(--radius-full);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.nav-link[data-astro-cid-qgrrgaau]:hover,.nav-link--btn[data-astro-cid-qgrrgaau]:hover{color:var(--color-camera-blue);background:#0ea5e90f}.nav-link[data-astro-cid-qgrrgaau]:hover:after{transform:scaleX(1)}.nav-link[data-astro-cid-qgrrgaau].is-active{color:var(--color-camera-blue);font-weight:var(--fw-semibold)}.nav-link[data-astro-cid-qgrrgaau].is-active:after{transform:scaleX(1)}.dropdown-arrow[data-astro-cid-qgrrgaau]{transition:transform var(--transition-fast)}.has-dropdown[data-astro-cid-qgrrgaau]:hover .dropdown-arrow[data-astro-cid-qgrrgaau],.has-dropdown[data-astro-cid-qgrrgaau]:focus-within .dropdown-arrow[data-astro-cid-qgrrgaau]{transform:rotate(180deg)}.dropdown[data-astro-cid-qgrrgaau]{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:260px;background:#fff;border:1px solid rgba(14,165,233,.15);border-radius:var(--radius-lg);box-shadow:0 8px 32px #07111b1f,0 0 0 1px #0ea5e90f;padding:var(--space-2);opacity:0;visibility:hidden;transform:translate(-50%) translateY(-6px);transition:opacity var(--transition-base),transform var(--transition-base),visibility var(--transition-base);pointer-events:none}.has-dropdown[data-astro-cid-qgrrgaau]:hover .dropdown[data-astro-cid-qgrrgaau],.has-dropdown[data-astro-cid-qgrrgaau]:focus-within .dropdown[data-astro-cid-qgrrgaau]{opacity:1;visibility:visible;transform:translate(-50%) translateY(0);pointer-events:auto}.dropdown-grid[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;gap:var(--space-1)}.dropdown-item[data-astro-cid-qgrrgaau]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);text-decoration:none;color:var(--color-steel-graphite);font-size:var(--text-sm);font-weight:var(--fw-medium);transition:background var(--transition-fast),color var(--transition-fast)}.dropdown-item[data-astro-cid-qgrrgaau]:hover{background:#0ea5e912;color:var(--color-camera-blue)}.dropdown-item__dot[data-astro-cid-qgrrgaau]{width:6px;height:6px;border-radius:50%;background:var(--color-mist-grey);flex-shrink:0;transition:background var(--transition-fast)}.dropdown-item[data-astro-cid-qgrrgaau]:hover .dropdown-item__dot[data-astro-cid-qgrrgaau]{background:var(--color-camera-blue)}.header-cta[data-astro-cid-qgrrgaau]{flex-shrink:0}.menu-toggle[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;justify-content:space-between;width:28px;height:20px;padding:0;background:none;border:none;cursor:pointer;flex-shrink:0;margin-left:auto}.menu-toggle__bar[data-astro-cid-qgrrgaau]{display:block;width:100%;height:2px;background:var(--color-security-graphite);border-radius:var(--radius-full);transition:transform var(--transition-base),opacity var(--transition-fast);transform-origin:center}.menu-toggle[data-astro-cid-qgrrgaau][aria-expanded=true] .menu-toggle__bar[data-astro-cid-qgrrgaau]:nth-child(1){transform:translateY(9px) rotate(45deg)}.menu-toggle[data-astro-cid-qgrrgaau][aria-expanded=true] .menu-toggle__bar[data-astro-cid-qgrrgaau]:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle[data-astro-cid-qgrrgaau][aria-expanded=true] .menu-toggle__bar[data-astro-cid-qgrrgaau]:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-menu[data-astro-cid-qgrrgaau]{overflow:hidden;max-height:0;transition:max-height .35s ease;background:#f4f8fbfa;border-top:1px solid rgba(14,165,233,.1)}.mobile-menu[data-astro-cid-qgrrgaau][aria-hidden=false]{max-height:520px}.mobile-nav-list[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;padding:var(--space-4) var(--space-6) var(--space-6);gap:var(--space-1);list-style:none}.mobile-nav-link[data-astro-cid-qgrrgaau]{display:block;padding:var(--space-3) 0;font-size:var(--text-base);font-weight:var(--fw-medium);color:var(--color-steel-graphite);text-decoration:none;border-bottom:1px solid rgba(14,165,233,.08);transition:color var(--transition-fast)}.mobile-nav-link[data-astro-cid-qgrrgaau]:hover,.mobile-nav-link[data-astro-cid-qgrrgaau].is-active{color:var(--color-camera-blue)}.mobile-sub-list[data-astro-cid-qgrrgaau]{display:flex;flex-direction:column;padding-left:var(--space-4);margin-top:var(--space-1);gap:var(--space-1);list-style:none}.mobile-sub-link[data-astro-cid-qgrrgaau]{display:block;padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--color-sensor-grey);text-decoration:none;transition:color var(--transition-fast)}.mobile-sub-link[data-astro-cid-qgrrgaau]:hover{color:var(--color-camera-blue)}.mobile-cta[data-astro-cid-qgrrgaau]{margin-top:var(--space-4)}@media (min-width: 768px){.hide-desktop[data-astro-cid-qgrrgaau]{display:none!important}}@media (max-width: 767px){.hide-mobile[data-astro-cid-qgrrgaau],.header-nav[data-astro-cid-qgrrgaau]{display:none!important}}.site-footer[data-astro-cid-so7jxkal]{background:var(--color-security-graphite);color:var(--color-text-primary);padding-top:var(--space-16);padding-bottom:var(--space-8);position:relative;overflow:hidden}.site-footer[data-astro-cid-so7jxkal]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(14,165,233,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(14,165,233,.025) 1px,transparent 1px);background-size:50px 50px;pointer-events:none}.footer-inner[data-astro-cid-so7jxkal]{position:relative;z-index:1}.footer-top[data-astro-cid-so7jxkal]{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-16);margin-bottom:var(--space-12)}@media (max-width: 767px){.footer-top[data-astro-cid-so7jxkal]{grid-template-columns:1fr;gap:var(--space-10)}}.footer-logo-wrap[data-astro-cid-so7jxkal]{background:#f4f8fb0f;border:1px solid rgba(14,165,233,.15);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);display:inline-flex;margin-bottom:var(--space-6)}.footer-logo-link[data-astro-cid-so7jxkal]{display:flex;align-items:center;gap:var(--space-3)}.footer-logo-img[data-astro-cid-so7jxkal]{height:44px;width:44px;object-fit:contain;flex-shrink:0}.footer-logo-fallback[data-astro-cid-so7jxkal]{display:none}.footer-logo-wordmark[data-astro-cid-so7jxkal]{display:flex;flex-direction:column;line-height:1.15}.footer-logo-name[data-astro-cid-so7jxkal]{font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--color-ice-white)}.footer-logo-sub[data-astro-cid-so7jxkal]{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-sensor-grey)}.footer-tagline[data-astro-cid-so7jxkal]{font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);color:var(--color-signal-cyan);text-transform:uppercase;margin-bottom:var(--space-3)}.footer-description[data-astro-cid-so7jxkal]{font-size:var(--text-sm);color:var(--color-sensor-grey);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.footer-signal-line[data-astro-cid-so7jxkal]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.signal-pulse[data-astro-cid-so7jxkal]{display:block;width:6px;height:6px;border-radius:50%;background:var(--color-status-green);animation:pulse-status 2.5s ease-in-out infinite}.footer-signal-line[data-astro-cid-so7jxkal]:after{content:"";flex:1;max-width:80px;height:1px;background:linear-gradient(90deg,var(--color-signal-cyan),transparent);opacity:.4}.footer-email[data-astro-cid-so7jxkal]{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-signal-cyan);text-decoration:none;transition:color var(--transition-fast)}.footer-email[data-astro-cid-so7jxkal]:hover{color:var(--color-soft-ice)}.footer-nav-columns[data-astro-cid-so7jxkal]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}@media (max-width: 639px){.footer-nav-columns[data-astro-cid-so7jxkal]{grid-template-columns:repeat(2,1fr)}}.footer-nav-heading[data-astro-cid-so7jxkal]{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-camera-blue);margin-bottom:var(--space-4)}.footer-nav-list[data-astro-cid-so7jxkal]{display:flex;flex-direction:column;gap:var(--space-2);list-style:none}.footer-nav-link[data-astro-cid-so7jxkal]{font-size:var(--text-sm);color:var(--color-sensor-grey);text-decoration:none;transition:color var(--transition-fast)}.footer-nav-link[data-astro-cid-so7jxkal]:hover{color:var(--color-ice-white)}.footer-cta-wrap[data-astro-cid-so7jxkal]{margin-top:var(--space-6)}.footer-divider[data-astro-cid-so7jxkal]{height:1px;background:linear-gradient(90deg,transparent 0%,rgba(14,165,233,.3) 30%,rgba(34,199,255,.4) 50%,rgba(14,165,233,.3) 70%,transparent 100%);margin-bottom:var(--space-8)}.footer-bottom[data-astro-cid-so7jxkal]{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.footer-legal-block[data-astro-cid-so7jxkal]{flex:1;min-width:240px}.footer-company-statement[data-astro-cid-so7jxkal]{font-size:var(--text-sm);color:var(--color-mist-grey);margin-bottom:var(--space-2)}.footer-address[data-astro-cid-so7jxkal]{font-size:var(--text-xs);color:var(--color-sensor-grey);line-height:var(--leading-relaxed);margin-bottom:var(--space-1)}.footer-address-note[data-astro-cid-so7jxkal]{display:block;font-size:var(--text-xs);color:var(--color-steel-graphite);margin-top:var(--space-1);font-style:italic}.footer-sic[data-astro-cid-so7jxkal]{font-size:var(--text-xs);color:var(--color-steel-graphite)}.footer-copyright[data-astro-cid-so7jxkal]{font-size:var(--text-xs);color:var(--color-steel-graphite);white-space:nowrap;align-self:flex-end}:root{--color-security-graphite: #07111B;--color-carbon-black: #03070C;--color-deep-navy: #0B1826;--color-panel-navy: #102033;--color-steel-graphite: #1B2C3A;--color-ice-white: #F4F8FB;--color-mist-grey: #DCE7EF;--color-sensor-grey: #7F91A1;--color-camera-blue: #0EA5E9;--color-signal-cyan: #22C7FF;--color-electric-blue: #008FE8;--color-status-green: #32D583;--color-soft-ice: #BDEFFF;--color-bg-primary: var(--color-security-graphite);--color-bg-secondary: var(--color-deep-navy);--color-bg-panel: var(--color-panel-navy);--color-bg-light: var(--color-ice-white);--color-bg-mist: var(--color-mist-grey);--color-text-primary: var(--color-ice-white);--color-text-secondary: var(--color-mist-grey);--color-text-muted: var(--color-sensor-grey);--color-text-dark: var(--color-security-graphite);--color-text-dark-secondary: var(--color-steel-graphite);--color-accent: var(--color-camera-blue);--color-accent-bright: var(--color-signal-cyan);--color-accent-deep: var(--color-electric-blue);--color-status: var(--color-status-green);--font-heading: "Space Grotesk", "Sora", system-ui, sans-serif;--font-body: "Inter", "Source Sans 3", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--leading-tight: 1.2;--leading-snug: 1.375;--leading-normal: 1.6;--leading-relaxed: 1.75;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .05em;--tracking-wider: .1em;--tracking-widest: .15em;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold:800;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--space-40: 10rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.5);--shadow-glow: 0 0 24px rgba(14,165,233,.2);--shadow-glow-sm: 0 0 12px rgba(14,165,233,.15);--shadow-card: 0 2px 12px rgba(0,0,0,.35), 0 0 0 1px rgba(14,165,233,.08);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--transition-spring: .3s cubic-bezier(.34,1.56,.64,1);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1440px;--header-height: 72px;--z-base: 0;--z-raised: 10;--z-overlay: 100;--z-modal: 200;--z-header: 300;--z-toast: 400}@keyframes pulse-status{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@keyframes scan-line{0%{transform:translateY(-100%);opacity:0}10%{opacity:.6}90%{opacity:.6}to{transform:translateY(300%);opacity:0}}@keyframes signal-draw{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes lens-pulse{0%,to{box-shadow:0 0 #0ea5e900}50%{box-shadow:0 0 0 8px #0ea5e91f}}@keyframes glow-button{0%,to{box-shadow:0 0 #0ea5e900}50%{box-shadow:0 0 20px 4px #0ea5e940}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes count-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.animate-fade-up{animation:fade-up .6s ease both}.animate-fade-in{animation:fade-in .5s ease both}.animate-lens-pulse{animation:lens-pulse 3s ease-in-out infinite}.animate-float{animation:float-subtle 4s ease-in-out infinite}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.hero-scan{position:absolute;inset:0;overflow:hidden;pointer-events:none}.hero-scan:after{content:"";position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(14,165,233,.4),transparent);animation:scan-line 8s linear infinite;top:0}.service-card__icon-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#0ea5e91a;border:1.5px solid rgba(14,165,233,.25);transition:border-color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.service-card:hover .service-card__icon-wrap{border-color:#0ea5e999;background:#0ea5e92e;box-shadow:0 0 0 6px #0ea5e914}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-dark);background:var(--color-ice-white);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-100%;left:var(--space-4);z-index:var(--z-toast);padding:var(--space-3) var(--space-6);background:var(--color-camera-blue);color:#fff;font-weight:var(--fw-semibold);border-radius:var(--radius-md);text-decoration:none;transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-4)}:focus-visible{outline:2px solid var(--color-camera-blue);outline-offset:3px;border-radius:var(--radius-sm)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--fw-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:inherit}h1{font-size:clamp(var(--text-3xl),5vw,var(--text-6xl))}h2{font-size:clamp(var(--text-2xl),3.5vw,var(--text-4xl))}h3{font-size:clamp(var(--text-xl),2.5vw,var(--text-2xl))}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{line-height:var(--leading-relaxed);color:inherit}a{color:var(--color-camera-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-signal-cyan)}img,video{max-width:100%;height:auto;display:block}ul,ol{list-style:none}button{cursor:pointer;font-family:inherit;border:none;background:none}input,textarea,select{font-family:var(--font-body)}.container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--space-6)}@media (min-width: 768px){.container{padding-inline:var(--space-8)}}@media (min-width: 1024px){.container{padding-inline:var(--space-12)}}.section{padding-block:var(--space-20)}.section--lg{padding-block:var(--space-32)}.section--sm{padding-block:var(--space-12)}.section--dark{background:var(--color-security-graphite);color:var(--color-text-primary)}.section--navy{background:var(--color-deep-navy);color:var(--color-text-primary)}.section--panel{background:var(--color-panel-navy);color:var(--color-text-primary)}.section--light{background:var(--color-ice-white);color:var(--color-text-dark)}.section--mist{background:var(--color-mist-grey);color:var(--color-text-dark)}.section-label{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-camera-blue);margin-bottom:var(--space-4)}.section-label:before{content:"";display:inline-block;width:20px;height:2px;background:var(--color-camera-blue);border-radius:var(--radius-full)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:.01em;border-radius:var(--radius-md);border:1.5px solid transparent;text-decoration:none;cursor:pointer;transition:background var(--transition-base),color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast);white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--color-camera-blue);color:#fff;border-color:var(--color-camera-blue);box-shadow:0 0 #0ea5e900}.btn--primary:hover{background:var(--color-signal-cyan);border-color:var(--color-signal-cyan);color:var(--color-security-graphite);box-shadow:0 0 20px #0ea5e959}.btn--outline{background:transparent;color:var(--color-camera-blue);border-color:var(--color-camera-blue)}.btn--outline:hover{background:#0ea5e91a;color:var(--color-signal-cyan);border-color:var(--color-signal-cyan)}.btn--outline-white{background:transparent;color:#fff;border-color:#fff6}.btn--outline-white:hover{background:#ffffff14;border-color:#ffffffb3}.btn--ghost-dark{background:transparent;color:var(--color-camera-blue);border-color:#0ea5e940}.btn--ghost-dark:hover{background:#0ea5e914;border-color:var(--color-camera-blue)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.text-accent{color:var(--color-camera-blue)}.text-cyan{color:var(--color-signal-cyan)}.text-muted{color:var(--color-sensor-grey)}.text-ice{color:var(--color-ice-white)}.text-mist{color:var(--color-mist-grey)}.text-status{color:var(--color-status-green)}.status-dot{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-status-green)}.status-dot:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-status-green);animation:pulse-status 2s ease-in-out infinite}.camera-frame{position:relative}.camera-frame:before,.camera-frame:after,.camera-frame>.frame-corner-br,.camera-frame>.frame-corner-bl{content:"";position:absolute;width:20px;height:20px;border-color:var(--color-camera-blue);border-style:solid;opacity:.5}.camera-frame:before{top:0;left:0;border-width:2px 0 0 2px}.camera-frame:after{top:0;right:0;border-width:2px 2px 0 0}.camera-frame>.frame-corner-br{bottom:0;right:0;border-width:0 2px 2px 0}.camera-frame>.frame-corner-bl{bottom:0;left:0;border-width:0 0 2px 2px}.signal-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,var(--color-camera-blue) 30%,var(--color-signal-cyan) 50%,var(--color-camera-blue) 70%,transparent 100%);opacity:.4;margin-block:var(--space-16)}.grid-overlay{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(14,165,233,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(14,165,233,.04) 1px,transparent 1px);background-size:40px 40px}.lens-ring{position:absolute;border-radius:50%;border:1px solid rgba(14,165,233,.2);pointer-events:none}.card{background:var(--color-panel-navy);border:1px solid rgba(14,165,233,.1);border-radius:var(--radius-xl);padding:var(--space-8);transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.card:hover{border-color:#0ea5e94d;box-shadow:var(--shadow-glow);transform:translateY(-3px)}.card--light{background:#fff;border-color:#0ea5e91f;box-shadow:var(--shadow-sm)}.card--light:hover{border-color:#0ea5e94d;box-shadow:0 8px 32px #0ea5e91f}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-sensor-grey)}.breadcrumb a{color:var(--color-sensor-grey);transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--color-camera-blue)}.breadcrumb .sep{opacity:.5}.breadcrumb .current{color:var(--color-text-dark);font-weight:var(--fw-medium)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-text-dark)}.form-label .required{color:var(--color-camera-blue);margin-left:var(--space-1)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-dark);background:#fff;border:1.5px solid var(--color-mist-grey);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-camera-blue);box-shadow:0 0 0 3px #0ea5e91f}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-sensor-grey)}.form-textarea{resize:vertical;min-height:120px}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237F91A1' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:var(--space-10)}.prose{max-width:72ch;color:var(--color-text-dark)}.prose h2{font-size:var(--text-2xl);margin-top:var(--space-12);margin-bottom:var(--space-4);color:var(--color-security-graphite)}.prose h3{font-size:var(--text-xl);margin-top:var(--space-8);margin-bottom:var(--space-3);color:var(--color-security-graphite)}.prose p{margin-bottom:var(--space-4);color:var(--color-steel-graphite)}.prose ul,.prose ol{list-style:disc;padding-left:var(--space-6);margin-bottom:var(--space-4)}.prose li{margin-bottom:var(--space-2);color:var(--color-steel-graphite)}.prose a{text-decoration:underline;text-underline-offset:3px}.prose strong{font-weight:var(--fw-semibold);color:var(--color-security-graphite)}.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}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.block{display:block}.hidden{display:none}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.gap-12{gap:var(--space-12)}.flex-wrap{flex-wrap:wrap}.flex-col{flex-direction:column}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1023px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 639px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.text-center{text-align:center}.text-left{text-align:left}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-medium{font-weight:var(--fw-medium)}.font-semibold{font-weight:var(--fw-semibold)}.font-bold{font-weight:var(--fw-bold)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.relative{position:relative}.absolute{position:absolute}.overflow-hidden{overflow:hidden}.max-w-prose{max-width:65ch}.max-w-screen-sm{max-width:var(--container-sm)}.max-w-screen-lg{max-width:var(--container-lg)}.mx-auto{margin-inline:auto}.bg-dark{background:var(--color-security-graphite)}.bg-navy{background:var(--color-deep-navy)}.bg-panel{background:var(--color-panel-navy)}.bg-light{background:var(--color-ice-white)}.bg-mist{background:var(--color-mist-grey)}.border-top-accent{border-top:2px solid rgba(14,165,233,.2)}.border-bottom-accent{border-bottom:1px solid rgba(14,165,233,.15)}.divider{height:1px;background:#0ea5e926;margin-block:var(--space-12)}@media (max-width: 767px){.hide-mobile{display:none!important}}@media (min-width: 768px){.hide-desktop{display:none!important}}
