:root{
  --ink:#071016;--ink-2:#0c171d;--panel:#101d24;--panel-2:#13232b;
  --gold:#b8860b;--gold-light:#d3aa39;--cream:#f4f0e6;--white:#fff;
  --muted:#8f9ba1;--line:rgba(255,255,255,.11);--max:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:Inter,Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.topbar{background:#04090c;border-bottom:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#aeb7ba}.topbar-inner{height:38px;display:flex;align-items:center;justify-content:space-between}.topbar-links{display:flex;gap:28px}.status-dot,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8fa52a;box-shadow:0 0 0 4px rgba(143,165,42,.1);margin-right:7px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(7,16,22,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-wrap{height:78px;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:11px;min-width:255px}.brand-mark{width:43px;height:43px;border:1px solid rgba(184,134,11,.55);display:grid;place-items:center;background:#080f13}.brand-mark img{width:34px;height:34px;object-fit:contain}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font:800 22px Manrope,sans-serif;letter-spacing:.08em;color:var(--white)}.brand-copy small{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:var(--gold-light);white-space:nowrap}.main-nav{display:flex;gap:27px;align-items:center;margin-left:auto}.main-nav a{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#b7c0c3;position:relative;padding:31px 0}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a.active:after{content:"";height:2px;background:var(--gold-light);position:absolute;left:0;right:0;bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:13px 20px;border:1px solid transparent;font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:800;transition:.25s}.btn-gold{background:var(--gold);color:#080d0f}.btn-gold:hover{background:var(--gold-light);transform:translateY(-2px)}.btn-outline{border-color:rgba(184,134,11,.6);color:var(--cream);background:transparent}.btn-outline:hover{background:rgba(184,134,11,.12)}.nav-cta{white-space:nowrap}.menu-toggle{display:none;background:none;border:0}.menu-toggle span{display:block;width:25px;height:2px;background:#fff;margin:5px}
.hero{min-height:calc(100vh - 116px);display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 35%,rgba(184,134,11,.09),transparent 32%),linear-gradient(115deg,#071016 45%,#0a151b)}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to right,#000,transparent)}.hero-grid{width:min(1360px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative}.hero-content{padding:70px 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.22em;color:var(--gold-light);text-transform:uppercase}.eyebrow-line{width:35px;height:1px;background:var(--gold-light);display:inline-block;vertical-align:middle;margin-right:10px}.hero h1{font:800 clamp(48px,6vw,82px)/.99 Manrope,sans-serif;letter-spacing:-.055em;margin:25px 0;color:#f7f3e9;max-width:700px}.hero h1 em,.section-intro h2 em,.section-heading-row h2 em,.tech-content h2 em,.industry-heading h2 em,.cta-box h2 em{font-style:normal;color:var(--gold-light)}.hero-lead{max-width:620px;color:#aab4b7;font-size:16px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:28px;margin:35px 0 55px}.btn-large{padding:17px 24px}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:7px}.text-link span{color:var(--gold-light);margin-left:10px}.hero-proof{display:flex;gap:48px;border-top:1px solid var(--line);padding-top:24px}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font:800 29px Manrope;color:#fff}.hero-proof strong span{color:var(--gold-light)}.hero-proof small{font-size:9px;color:#79868b;text-transform:uppercase;letter-spacing:.11em;margin-top:2px}
.hero-visual{padding:25px 0}.visual-frame{height:620px;position:relative;border:1px solid rgba(184,134,11,.4);padding:12px}.visual-image{height:100%;overflow:hidden;position:relative}.visual-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.08)}.image-overlay{position:absolute;inset:12px;background:linear-gradient(0deg,rgba(3,8,10,.85),transparent 48%,rgba(3,8,10,.18))}.visual-caption{position:absolute;left:38px;bottom:35px;display:flex;flex-direction:column;gap:5px}.visual-caption div{font-size:9px;letter-spacing:.16em;color:#b9c2c5}.visual-caption strong{font:700 25px Manrope;color:#fff}.visual-caption small{color:#9ba6a9;font-size:11px}.floating-card{position:absolute;background:rgba(10,21,27,.94);border:1px solid rgba(184,134,11,.45);padding:15px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 15px 40px #0005;min-width:225px}.card-top{top:55px;right:-45px}.card-bottom{bottom:90px;left:-48px}.mini-icon{width:30px;height:30px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold-light)}.floating-card strong{display:block;font-size:11px}.floating-card small{display:block;color:#7f8b8f;font-size:9px;margin-top:2px}.pulse{animation:pulse 2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(184,134,11,.08)}}
.hero-scroll{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.2em;color:#657277}.hero-scroll span{color:var(--gold-light);font-size:14px;margin-left:10px}
.trust-strip{background:#0a151b;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between}.trust-label{font-size:9px;letter-spacing:.17em;color:#69777b}.sector-list{display:flex;gap:42px;color:#899397;font:700 11px Manrope;letter-spacing:.12em}
.section{padding:120px 0}.section-intro{display:grid;grid-template-columns:.8fr 1.8fr;gap:80px;margin-bottom:65px}.section-number{display:inline-block;font-size:10px;color:#68767a;letter-spacing:.15em;margin-right:13px}.section-intro h2,.section-heading-row h2,.tech-content h2,.industry-heading h2,.cta-box h2{font:800 clamp(38px,4vw,58px)/1.08 Manrope;letter-spacing:-.045em;margin:0}.section-intro p{max-width:620px;color:#929da0;font-size:15px;margin-top:25px}.advantage-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.advantage-card{padding:30px 27px;min-height:310px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.3s}.advantage-card:hover{background:#0c1a21;transform:translateY(-5px)}.advantage-card.featured{background:linear-gradient(145deg,#16272e,#0d1a20)}.card-index{position:absolute;right:20px;top:22px;color:#59676b;font-size:9px}.line-icon{font-size:30px;color:var(--gold-light);margin:35px 0 45px}.advantage-card h3{font:700 20px Manrope;margin:0 0 12px}.advantage-card p{font-size:12px;color:#899598;line-height:1.75}.advantage-card a{position:absolute;bottom:27px;font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold-light)}
.services-section{background:#f0ede5;color:#0b151a}.services-section .eyebrow,.services-section .section-number{color:#8c6810}.section-heading-row{display:grid;grid-template-columns:.8fr 2fr auto;gap:30px;align-items:end;margin-bottom:55px}.section-heading-row h2{color:#0b151a}.section-heading-row .text-link{color:#1d292d}.services-list{border-top:1px solid #c9c5bc}.service-row{display:grid;grid-template-columns:70px 70px 1fr 40px;align-items:center;gap:20px;padding:24px 10px;border-bottom:1px solid #d3cfc6;transition:.25s}.service-row:hover{background:#e7e3d9;padding-left:22px}.service-no{font:600 10px Manrope;color:#928c82}.service-icon{font-size:24px;color:#a87b09}.service-row h3{font:700 18px Manrope;margin:0 0 3px}.service-row p{font-size:11px;color:#697477;margin:0}.service-arrow{font-size:20px;color:#a87b09;text-align:right}
.technology{background:#071016}.tech-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.tech-visual{height:560px;position:relative;display:grid;place-items:center}.tech-screen{width:78%;height:78%;border:1px solid rgba(184,134,11,.5);padding:10px;position:relative;background:#03080a;overflow:hidden}.tech-screen img{width:100%;height:100%;object-fit:cover;opacity:.75;filter:grayscale(.25)}.screen-label,.screen-status{position:absolute;background:#071016d9;border:1px solid rgba(184,134,11,.35);padding:7px 10px;font-size:8px;letter-spacing:.13em}.screen-label{top:25px;left:25px}.screen-status{bottom:25px;right:25px}.screen-status span{display:inline-block;width:6px;height:6px;background:#8fa52a;border-radius:50%;margin-right:6px}.scan-line{position:absolute;left:10px;right:10px;top:45%;height:1px;background:var(--gold);opacity:.55;animation:scan 4s linear infinite}@keyframes scan{0%{top:20%}50%{top:80%}100%{top:20%}}.tech-orbit{position:absolute;border:1px solid rgba(184,134,11,.13);border-radius:50%}.orbit-one{width:85%;height:85%}.orbit-two{width:105%;height:105%}.tech-content h2{margin:22px 0}.tech-content>p{color:#8d999d;max-width:550px;font-size:14px}.tech-points{list-style:none;padding:20px 0;margin:25px 0;border-top:1px solid var(--line)}.tech-points li{display:flex;gap:20px;padding:14px 0}.tech-points li>span{font-size:9px;color:var(--gold-light);padding-top:4px}.tech-points strong{display:block;font-size:12px}.tech-points small{color:#768388;font-size:10px}
.industries{background:#0b171d}.industry-heading{display:grid;grid-template-columns:.8fr 2fr;gap:80px;margin-bottom:55px}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.industry-grid article{min-height:280px;padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s}.industry-grid article:hover{background:#101f27}.industry-grid article>span{font-size:9px;color:var(--gold-light)}.industry-grid h3{font:700 22px Manrope;margin:65px 0 12px}.industry-grid p{font-size:11px;color:#7f8c90;min-height:50px}.industry-grid a{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-light)}
.cta-section{padding:55px 0;background:#070f14}.cta-box{border:1px solid rgba(184,134,11,.42);background:linear-gradient(100deg,#111f25,#0a151b);padding:58px 65px;display:flex;justify-content:space-between;align-items:center}.cta-box h2{margin-top:14px}
.footer{background:#04090c;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.3fr 1.5fr;gap:60px;padding:70px 0}.footer-brand p{color:#718084;font-size:11px;max-width:330px;margin:25px 0}.footer-status{font-size:9px;color:#859094;text-transform:uppercase;letter-spacing:.1em}.footer-col{display:flex;flex-direction:column;gap:10px}.footer-col h4{font-size:9px;text-transform:uppercase;letter-spacing:.17em;color:var(--gold-light);margin:4px 0 13px}.footer-col a,.footer-col p{font-size:11px;color:#7f8b8f;margin:0;line-height:1.9}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line);min-height:65px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:#59666a}.footer-bottom a{color:#8d979a}.floating-call{display:none}
@media(max-width:1000px){.main-nav{gap:15px}.brand{min-width:220px}.nav-wrap{gap:18px}.hero-grid{gap:35px}.visual-frame{height:530px}.advantage-grid,.industry-grid{grid-template-columns:repeat(2,1fr)}.section-intro{gap:35px}.tech-grid{gap:45px}}
@media(max-width:760px){
 .container{width:min(var(--max),calc(100% - 32px))}.topbar-links{display:none}.topbar-inner{justify-content:center}.nav-wrap{height:70px}.brand{min-width:0}.brand-copy small{display:none}.main-nav{position:absolute;top:70px;left:0;right:0;background:#071016;border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;padding:10px 20px}.main-nav.open{display:flex}.main-nav a{padding:15px;border-bottom:1px solid var(--line)}.main-nav a.active:after{display:none}.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;width:min(var(--max),calc(100% - 32px))}.hero-content{padding:70px 0 25px}.hero h1{font-size:48px}.hero-actions{align-items:flex-start;flex-direction:column;margin-bottom:40px;gap:22px}.hero-proof{gap:25px}.hero-visual{padding:25px 0 70px}.visual-frame{height:460px}.card-top{right:-5px;top:30px}.card-bottom{left:-5px;bottom:45px}.hero-scroll{display:none}.trust-inner{flex-direction:column;align-items:flex-start;padding:25px 0;gap:18px}.sector-list{flex-wrap:wrap;gap:14px 25px}.section{padding:75px 0}.section-intro,.section-heading-row,.industry-heading,.tech-grid{grid-template-columns:1fr;gap:25px}.section-heading-row{align-items:start}.advantage-grid,.industry-grid{grid-template-columns:1fr}.advantage-card{min-height:275px}.service-row{grid-template-columns:35px 35px 1fr 25px;gap:10px}.service-row p{display:none}.tech-visual{height:390px;order:2}.tech-screen{width:82%;height:80%}.cta-box{padding:40px 25px;flex-direction:column;align-items:flex-start;gap:30px}.footer-main{grid-template-columns:1fr 1fr;gap:40px}.footer-brand{grid-column:1/-1}.footer-bottom{padding:20px 0;flex-direction:column;align-items:flex-start}.floating-call{display:grid;place-items:center;position:fixed;right:18px;bottom:18px;width:48px;height:48px;background:var(--gold);color:#081015;z-index:40;font-size:18px;border-radius:50%;box-shadow:0 8px 25px #0008}}
@media(max-width:420px){.hero h1{font-size:42px}.hero-proof{gap:15px}.hero-proof strong{font-size:24px}.floating-card{min-width:190px;padding:11px}.floating-card small{font-size:8px}.footer-main{grid-template-columns:1fr}}

/* ===== INNER PAGES ===== */
.page-hero{padding:105px 0 85px;background:radial-gradient(circle at 75% 30%,rgba(184,134,11,.11),transparent 30%),#071016;border-bottom:1px solid var(--line)}
.page-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end}
.page-hero h1{font:800 clamp(45px,6vw,76px)/1.02 Manrope;margin:18px 0 20px;letter-spacing:-.055em}.page-hero h1 em{font-style:normal;color:var(--gold-light)}.page-hero p{max-width:650px;color:#929da0;font-size:15px}.page-index{font-size:10px;color:#66757a;letter-spacing:.16em;text-align:right}
.content-section{padding:105px 0}.two-col{display:grid;grid-template-columns:.75fr 1.65fr;gap:90px}.content-section h2{font:800 clamp(34px,4vw,53px)/1.08 Manrope;letter-spacing:-.045em;margin:0 0 22px}.content-section h2 em{font-style:normal;color:var(--gold-light)}.content-section h3{font:700 20px Manrope}.content-section p{font-size:14px;color:#8e9a9e;line-height:1.9}.lead-copy{font-size:18px!important;color:#c3cbcc!important;line-height:1.8!important}.gold-rule{width:55px;height:2px;background:var(--gold-light);margin:20px 0 28px}
.value-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:60px}.value-card{padding:35px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:230px}.value-card .num{color:var(--gold-light);font-size:9px;letter-spacing:.15em}.value-card h3{margin-top:55px}.value-card p{font-size:11px;line-height:1.7}
.process{background:#f0ede5;color:#0b151a}.process .eyebrow,.process .section-number{color:#8c6810}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c9c5bc}.process-card{padding:30px 25px;border-right:1px solid #d3cfc6}.process-card:last-child{border-right:0}.process-card span{color:#9a710b;font-size:10px}.process-card h3{margin:50px 0 10px}.process-card p{color:#697477;font-size:11px}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);margin-top:60px}.service-detail{background:#0c181f;padding:38px;min-height:310px;transition:.25s}.service-detail:hover{background:#11232b}.service-detail .service-icon{font-size:29px}.service-detail h3{font-size:21px;margin:30px 0 10px}.service-detail p{font-size:11px}.service-detail ul{padding-left:18px;color:#78868a;font-size:10px;line-height:2}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-list{margin-top:40px;border-top:1px solid var(--line)}.contact-item{padding:22px 0;border-bottom:1px solid var(--line)}.contact-item span{display:block;color:var(--gold-light);font-size:9px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:7px}.contact-item strong,.contact-item a{font-size:15px}.contact-item small{display:block;color:#79868a;font-size:10px;margin-top:4px}.contact-form{background:#0c181f;border:1px solid var(--line);padding:35px}.contact-form h3{font:700 23px Manrope;margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field.full{grid-column:1/-1}.field label{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#829095}.field input,.field textarea,.field select{width:100%;background:#071016;border:1px solid #26343a;color:#fff;padding:13px;font:12px Inter;outline:0}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}.form-note{font-size:9px;color:#667479;margin-top:12px}
.career-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px}.career-box{background:#0c181f;border:1px solid var(--line);padding:35px}.career-box h3{margin-top:0}.career-box li{color:#859296;font-size:11px;margin:10px 0}.notice{border-left:2px solid var(--gold);padding:14px 18px;background:#0b171d;color:#899598;font-size:11px;margin-top:25px}
.policy{max-width:900px}.policy h2{font-size:30px;margin-top:45px}.policy p,.policy li{font-size:12px;color:#8e9a9e;line-height:1.9}.policy ul{padding-left:20px}
@media(max-width:760px){.page-hero{padding:75px 0 65px}.page-hero-grid,.two-col,.contact-layout,.career-grid{grid-template-columns:1fr;gap:35px}.page-index{text-align:left}.value-grid,.service-detail-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.process-card{border-right:0;border-bottom:1px solid #d3cfc6}.content-section{padding:75px 0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}


/* =========================================================
   CSI PROFESSIONAL MOTION SYSTEM
   Restrained, premium motion for a private-security brand.
   ========================================================= */

:root {
  --csi-ease: cubic-bezier(.2,.75,.2,1);
  --csi-fast: 180ms;
  --csi-base: 420ms;
  --csi-slow: 850ms;
}

/* Smooth page arrival */
body { animation: csiPageIn 650ms var(--csi-ease) both; }
@keyframes csiPageIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Hero entrance sequence */
.hero-content > * {
  animation: csiHeroIn 800ms var(--csi-ease) both;
}
.hero-content > *:nth-child(1) { animation-delay: 70ms; }
.hero-content > *:nth-child(2) { animation-delay: 150ms; }
.hero-content > *:nth-child(3) { animation-delay: 230ms; }
.hero-content > *:nth-child(4) { animation-delay: 310ms; }

@keyframes csiHeroIn {
  from { opacity: 0; transform: translateY(26px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Hero visual depth */
.hero-media, .hero-image, .hero-visual {
  animation: csiVisualIn 950ms var(--csi-ease) 180ms both;
}
@keyframes csiVisualIn {
  from { opacity: 0; transform: translate3d(30px,18px,0) scale(.965); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); }
}

/* Ambient hero glow */
.hero::before, .page-hero::before {
  animation: csiAmbient 9s ease-in-out infinite alternate;
}
@keyframes csiAmbient {
  from { transform: scale(1) translate3d(0,0,0); opacity: .5; }
  to { transform: scale(1.08) translate3d(1%,-1%,0); opacity: .85; }
}

/* Scroll reveal */
.reveal, .reveal-up, .reveal-left, .reveal-right, [data-reveal] {
  opacity: 0;
  will-change: transform, opacity;
  transition:
    opacity var(--csi-slow) var(--csi-ease),
    transform var(--csi-slow) var(--csi-ease);
}
.reveal-up, [data-reveal="up"] { transform: translateY(38px); }
.reveal-left, [data-reveal="left"] { transform: translateX(-38px); }
.reveal-right, [data-reveal="right"] { transform: translateX(38px); }

.reveal.is-visible, .reveal-up.is-visible, .reveal-left.is-visible,
.reveal-right.is-visible, [data-reveal].is-visible {
  opacity: 1;
  transform: translate3d(0,0,0);
}

/* Staggered grids */
.stagger > * { opacity: 0; transform: translateY(24px); }
.stagger.is-visible > * {
  animation: csiStaggerIn 650ms var(--csi-ease) both;
}
.stagger.is-visible > *:nth-child(1) { animation-delay: 50ms; }
.stagger.is-visible > *:nth-child(2) { animation-delay: 110ms; }
.stagger.is-visible > *:nth-child(3) { animation-delay: 170ms; }
.stagger.is-visible > *:nth-child(4) { animation-delay: 230ms; }
.stagger.is-visible > *:nth-child(5) { animation-delay: 290ms; }
.stagger.is-visible > *:nth-child(6) { animation-delay: 350ms; }
.stagger.is-visible > *:nth-child(7) { animation-delay: 410ms; }
.stagger.is-visible > *:nth-child(8) { animation-delay: 470ms; }

@keyframes csiStaggerIn {
  to { opacity: 1; transform: translateY(0); }
}

/* Premium card lift + light sweep */
.service-card, .capability-card, .industry-card, .value-card,
.feature-card, .tech-card, .contact-card, .career-card {
  position: relative;
  overflow: hidden;
  transition:
    transform 420ms var(--csi-ease),
    box-shadow 420ms ease,
    border-color 280ms ease;
}
.service-card::after, .capability-card::after, .industry-card::after,
.value-card::after, .feature-card::after, .tech-card::after,
.contact-card::after, .career-card::after {
  content: "";
  position: absolute;
  top: -120%;
  bottom: -120%;
  left: -70%;
  width: 48%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent);
  transform: rotate(14deg);
  transition: left 850ms var(--csi-ease);
  pointer-events: none;
}
.service-card:hover, .capability-card:hover, .industry-card:hover,
.value-card:hover, .feature-card:hover, .tech-card:hover,
.contact-card:hover, .career-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 24px 55px rgba(0,0,0,.26);
}
.service-card:hover::after, .capability-card:hover::after, .industry-card:hover::after,
.value-card:hover::after, .feature-card:hover::after, .tech-card:hover::after,
.contact-card:hover::after, .career-card:hover::after {
  left: 145%;
}

/* Buttons: controlled sheen */
.btn, .button, a.btn {
  position: relative;
  overflow: hidden;
  transition: transform 220ms var(--csi-ease), box-shadow 220ms ease;
}
.btn::before, .button::before, a.btn::before {
  content: "";
  position: absolute;
  top: 0; bottom: 0; left: -130%;
  width: 65%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.24), transparent);
  transform: skewX(-18deg);
  transition: left 650ms var(--csi-ease);
  pointer-events: none;
}
.btn:hover, .button:hover, a.btn:hover { transform: translateY(-3px); }
.btn:hover::before, .button:hover::before, a.btn:hover::before { left: 155%; }

/* Image micro-zoom */
.service-card img, .industry-card img, .hero-media img,
.hero-image img, .hero-visual img {
  transition: transform 700ms var(--csi-ease), filter 450ms ease;
}
.service-card:hover img, .industry-card:hover img,
.hero-media:hover img, .hero-image:hover img, .hero-visual:hover img {
  transform: scale(1.035);
}

/* Security status pulse */
.pulse-dot, .status-dot, .live-dot {
  animation: csiPulse 2.2s ease-out infinite;
}
@keyframes csiPulse {
  0% { box-shadow: 0 0 0 0 rgba(211,170,57,.55); }
  70% { box-shadow: 0 0 0 12px rgba(211,170,57,0); }
  100% { box-shadow: 0 0 0 0 rgba(211,170,57,0); }
}

/* Header transition */
.site-header, header {
  transition: background-color 350ms ease, box-shadow 350ms ease,
              backdrop-filter 350ms ease;
}
.site-header.scrolled, header.scrolled {
  box-shadow: 0 10px 35px rgba(0,0,0,.24);
  backdrop-filter: blur(14px);
}

/* Form interaction */
input, textarea, select {
  transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms var(--csi-ease);
}
input:focus, textarea:focus, select:focus {
  transform: translateY(-1px);
  box-shadow: 0 0 0 3px rgba(184,134,11,.14);
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;
  }
  body { animation: none !important; }
}

/* ─── RESPONSIVE: ALL PAGES ─── */

/* Small tablets & large phones (≤ 820px) */
@media (max-width: 820px) {
  /* Topbar */
  .topbar-inner {
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 12px;
    font-size: 0.7rem;
    padding: 6px 0;
  }
  .topbar-links a {
    font-size: 0.7rem;
  }

  /* Header */
  .nav-wrap {
    flex-wrap: wrap;
    padding: 10px 16px;
  }
  .brand-copy strong {
    font-size: 1rem;
  }
  .brand-copy small {
    font-size: 0.55rem;
  }
  .main-nav {
    display: none;
    width: 100%;
    flex-direction: column;
    background: #0b171d;
    padding: 16px 0;
    border-top: 1px solid rgba(212, 175, 55, 0.15);
    margin-top: 10px;
  }
  .main-nav.open {
    display: flex;
  }
  .main-nav a {
    padding: 10px 0;
    font-size: 0.9rem;
    border-bottom: 1px solid rgba(255,255,255,0.05);
  }
  .nav-cta {
    display: none; /* hidden on mobile, shown in nav if needed */
  }
  .menu-toggle {
    display: flex;
  }

  /* Hero (home) */
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 20px 16px 40px;
  }
  .hero-content h1 {
    font-size: 2.2rem;
  }
  .hero-content .hero-lead {
    font-size: 1rem;
  }
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .hero-proof {
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start;
  }
  .hero-proof div {
    min-width: 80px;
  }
  .hero-visual .visual-frame {
    min-height: 300px;
  }
  .hero-scroll {
    display: none;
  }

  /* Trust strip */
  .trust-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 16px;
  }
  .sector-list {
    flex-wrap: wrap;
    gap: 8px 16px;
  }
  .sector-list span {
    font-size: 0.7rem;
  }

  /* Section headings */
  .section-intro,
  .section-heading-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .section-heading-row h2 {
    font-size: 1.6rem;
  }

  /* Advantage cards */
  .advantage-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .advantage-card {
    padding: 20px;
  }

  /* Services list (home) */
  .services-list .service-row {
    flex-wrap: wrap;
    padding: 14px 12px;
    gap: 6px 12px;
  }
  .service-row .service-no {
    font-size: 0.8rem;
  }
  .service-row h3 {
    font-size: 1rem;
  }
  .service-row p {
    font-size: 0.85rem;
  }

  /* Technology section */
  .tech-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .tech-visual {
    order: 1;
  }
  .tech-content {
    order: 2;
  }

  /* Industries */
  .industry-grid {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }

  /* CTA */
  .cta-box {
    flex-direction: column;
    text-align: center;
    gap: 20px;
    padding: 30px 20px;
  }
  .cta-box h2 {
    font-size: 1.6rem;
  }

  /* Footer */
  .footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
  .footer-brand {
    grid-column: 1 / -1;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 8px;
    text-align: center;
    font-size: 0.7rem;
  }
  .floating-call {
    width: 50px;
    height: 50px;
    font-size: 1.6rem;
    bottom: 16px;
    right: 16px;
  }
}

/* ─── MOBILE (≤ 480px) ─── */
@media (max-width: 480px) {
  /* General */
  .container {
    padding: 0 16px;
  }

  /* Topbar */
  .topbar-links {
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }

  /* Header */
  .brand-mark img {
    width: 36px;
  }
  .brand-copy strong {
    font-size: 0.9rem;
  }
  .brand-copy small {
    font-size: 0.5rem;
  }

  /* Home hero */
  .hero-content h1 {
    font-size: 1.8rem;
  }
  .hero-content .eyebrow {
    font-size: 0.6rem;
  }
  .hero-proof div {
    min-width: 60px;
  }
  .hero-proof strong {
    font-size: 1.4rem;
  }
  .hero-proof small {
    font-size: 0.6rem;
  }
  .hero-visual .visual-frame {
    min-height: 220px;
  }
  .visual-caption strong {
    font-size: 1rem;
  }
  .floating-card {
    display: none; /* hide on very small screens to avoid clutter */
  }

  /* Trust strip */
  .sector-list span {
    font-size: 0.6rem;
    padding: 4px 8px;
  }

  /* Section headings */
  .section-number {
    font-size: 0.7rem;
  }
  .eyebrow {
    font-size: 0.6rem;
  }
  h2 {
    font-size: 1.4rem;
  }

  /* Advantage cards */
  .advantage-card .card-index {
    font-size: 1.2rem;
  }
  .advantage-card h3 {
    font-size: 1rem;
  }

  /* Services list */
  .service-row .service-icon {
    font-size: 1.2rem;
  }
  .service-row p {
    display: none; /* hide description on tiny screens to save space */
  }

  /* Technology */
  .tech-points li {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  /* Industries */
  .industry-grid {
    grid-template-columns: 1fr;
  }
  .industry-heading h2 {
    font-size: 1.4rem;
  }

  /* About page hero */
  .page-hero-grid {
    padding: 20px 0 30px;
    gap: 20px;
  }
  .page-hero-grid .hero-text h1 {
    font-size: 1.8rem;
  }
  .page-hero-grid .hero-image {
    aspect-ratio: 4 / 3;
    max-height: 200px;
  }
  .page-hero-grid .hero-image .image-badge {
    padding: 6px 12px;
    bottom: 10px;
    left: 10px;
    right: 10px;
  }
  .page-hero-grid .hero-image .image-badge span {
    font-size: 0.6rem;
  }
  .page-hero-grid .hero-image .image-badge span small {
    font-size: 0.5rem;
  }

  /* Two-col layout (about, training) */
  .two-col {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .two-col .lead-copy {
    font-size: 1.1rem;
  }

  /* Value cards (about, direction) */
  .value-grid {
    grid-template-columns: 1fr !important;
  }
  .value-card {
    padding: 16px;
  }

  /* Services page - detail grid */
  .service-detail-grid {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }
  .service-detail {
    padding: 20px 16px !important;
  }
  .service-detail ul {
    font-size: 0.8rem;
  }

  /* Process (about) */
  .process-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* Training section (services) */
  .value-grid {
    grid-template-columns: 1fr !important;
  }

  /* Footer */
  .footer-main {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .footer-col.contact {
    grid-column: 1;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 4px;
    font-size: 0.6rem;
  }
  .footer-bottom a {
    font-size: 0.6rem;
  }
  .floating-call {
    width: 44px;
    height: 44px;
    font-size: 1.3rem;
    bottom: 12px;
    right: 12px;
  }
}

/* ─── TABLET (768px–1024px) ─── */
@media (min-width: 481px) and (max-width: 1024px) {
  .service-detail-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .value-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .advantage-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .industry-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .process-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-main {
    grid-template-columns: 1fr 1fr;
  }
}

/* ─── MENU TOGGLE VISIBILITY ─── */
.menu-toggle {
  display: none;
  background: none;
  border: none;
  flex-direction: column;
  gap: 5px;
  padding: 6px;
  cursor: pointer;
}
.menu-toggle span {
  display: block;
  width: 26px;
  height: 2px;
  background: #f5f0e8;
  transition: 0.3s;
}
.menu-toggle.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.menu-toggle.open span:nth-child(2) { opacity: 0; }
.menu-toggle.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* Show toggle on smaller screens */
@media (max-width: 820px) {
  .menu-toggle {
    display: flex;
  }
}

/* ============================================================
   CSS PROTECTION – Anti-Copy & Anti-Selection
   ============================================================ */

/* Prevent text selection globally */
body {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Allow selection on inputs, textareas, and form elements */
input, textarea, select, [contenteditable="true"] {
    -webkit-user-select: text !important;
    -moz-user-select: text !important;
    -ms-user-select: text !important;
    user-select: text !important;
}

/* Prevent image dragging */
img, a img, picture, figure img {
    -webkit-user-drag: none;
    user-drag: none;
    -webkit-touch-callout: none;
}

/* Prevent text selection on service rows and cards */
.service-row, .advantage-card, .value-card, .service-detail,
.industry-grid article, .process-card, .contact-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Disable print styles (optional) */
@media print {
    body, .page-hero, .content-section, .footer, .site-header, .topbar {
        display: none !important;
    }
    /* Show a watermark or message */
    body::before {
        content: "🔒 Content is protected and cannot be printed";
        display: block;
        text-align: center;
        font-size: 20px;
        color: #d4af37;
        padding: 50px;
        font-family: Inter, sans-serif;
    }
}

/* Honeypot field – hidden from users but visible to bots */
#honeypot {
    position: absolute;
    left: -9999px;
    top: -9999px;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
}