/* ===== RMK Enterprises ===== */
:root{
  --navy:#0d0a2b;
  --indigo:#2b1a63;
  --orange:#f7a51a;
  --ink:#111;
  --paper:#fff;
  --soft:#fafafa;
  --line:rgba(255,255,255,.55);
  --font:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --wrap:1100px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
ul{margin:0;padding:0;list-style:none}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.container{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--orange);color:#000;padding:8px 14px;z-index:200;border-radius:4px}
.skip-link:focus{left:8px}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(13,10,43,.94);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:#fff;font-size:1.2rem;font-weight:400}
.brand b{font-weight:700;color:var(--orange)}
.primary-nav ul{display:flex;align-items:center;gap:6px}
.primary-nav a{display:block;color:#e9e6ff;text-decoration:none;font-size:.92rem;font-weight:500;padding:8px 14px;border-radius:6px;transition:color .2s,background .2s}
.primary-nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.primary-nav a.nav-cta{background:var(--orange);color:#1a1200;font-weight:600;margin-left:8px}
.primary-nav a.nav-cta:hover{background:#ffb93d}
.nav-toggle{display:none;width:44px;height:44px;border:0;background:transparent;cursor:pointer;padding:10px;flex-direction:column;justify-content:center;gap:5px}
.nav-toggle span{display:block;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .25s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:460px;display:grid;place-items:center;padding:60px 24px;overflow:hidden;isolation:isolate;
  background:radial-gradient(ellipse at 20% 40%,rgba(90,60,200,.55),transparent 55%),linear-gradient(135deg,#0a0724 0%,#231458 55%,#150d3d 100%)}
.hero::before{content:"";position:absolute;z-index:-2;left:-130px;top:-110px;width:780px;height:780px;background:url(../assets/globe.svg) center/contain no-repeat;opacity:.95}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:url(../assets/network.svg) left top/1400px auto no-repeat;opacity:.55;mask-image:linear-gradient(90deg,#000 20%,transparent 75%);-webkit-mask-image:linear-gradient(90deg,#000 20%,transparent 75%)}
.hero-box{width:min(658px,100%);min-height:224px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 24px;border:1px solid var(--line);background:rgba(10,8,32,.55);backdrop-filter:blur(2px)}
.hero h1{margin:0;font-size:clamp(2.2rem,5.2vw,3.15rem);line-height:1.05;font-weight:700;color:#fff;letter-spacing:.01em}
.hero h1 span{display:block;margin-top:6px;font-size:.72em;font-weight:600;color:var(--orange)}
.hero p{margin:16px 0 0;color:var(--orange);font-weight:600;font-size:clamp(.95rem,2vw,1.15rem)}

/* ---------- About ---------- */
.about{padding:88px 0 64px;background:#fff}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px}
.about h2{margin:0 0 24px;font-size:clamp(1.8rem,3.4vw,2.3rem);font-weight:400;line-height:1.2}
.tri-list li{position:relative;padding-left:22px;margin-bottom:6px;font-size:.93rem;line-height:1.42}
.tri-list li::before{content:"";position:absolute;left:0;top:.5em;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:9px solid #111}

/* ---------- Mission ---------- */
.mission{position:relative;padding:60px 0 72px;color:#fff;isolation:isolate;
  background:radial-gradient(ellipse at 30% 0%,rgba(30,70,140,.55),transparent 60%),linear-gradient(90deg,#08122c 0%,#050a1c 45%,#000 100%)}
.mission::before{content:"";position:absolute;inset:0;z-index:-1;background:url(../assets/network.svg) left center/1500px auto no-repeat;opacity:.5;mask-image:linear-gradient(90deg,#000 30%,transparent 80%);-webkit-mask-image:linear-gradient(90deg,#000 30%,transparent 80%)}
.mission-copy{max-width:620px}
.mission h2{margin:0 0 36px;text-align:center;font-size:clamp(1.9rem,3.6vw,2.4rem);font-weight:500}
.mission h3{margin:0 0 8px;font-size:1.7rem;font-weight:500;letter-spacing:-.01em}
.mission p{margin:0 0 30px;font-size:.95rem;font-weight:500;line-height:1.4}
.mission p:last-child{margin-bottom:0}

/* ---------- Solutions ---------- */
.solutions{padding:80px 0 96px;background:var(--soft)}
.solutions h2{margin:0 0 52px;text-align:center;font-size:clamp(1.7rem,3.4vw,2.2rem);font-weight:700;letter-spacing:.01em}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 22px}
.card{position:relative;aspect-ratio:250/316;overflow:hidden;background:#0a1230;box-shadow:0 2px 8px rgba(0,0,0,.35);transition:transform .25s ease,box-shadow .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(20,10,80,.4)}
.card img{width:100%;height:100%;object-fit:cover}
.card h3{position:absolute;inset:auto 0 0 0;margin:0;padding:64px 12px 20px;text-align:center;color:#fff;font-size:clamp(1.05rem,1.9vw,1.4rem);font-weight:500;line-height:1.12;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.85) 62%,#000)}
.card--storage{background:linear-gradient(160deg,#101a52,#0a1030)}
.card--cyber{background:linear-gradient(160deg,#2b0f5c,#0d0824)}
.card--uc{background:linear-gradient(160deg,#152040,#070d1e)}
.card--ai{background:linear-gradient(160deg,#0c2447,#050b1a)}
.card--edu{background:linear-gradient(160deg,#0e1a3d,#050a18)}
.card--m2m{background:linear-gradient(160deg,#10204a,#050a18)}
.card--rfid{background:linear-gradient(160deg,#063a48,#050a1c)}
.card--bank{background:linear-gradient(160deg,#3b2a38,#0b0a12)}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:#cfcbe8;padding:64px 0 0;font-size:.92rem}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:40px}
.site-footer h4{margin:0 0 16px;color:#fff;font-size:1rem;font-weight:600}
.site-footer li{margin-bottom:8px}
.site-footer a{text-decoration:none;color:#cfcbe8}
.site-footer a:hover{color:var(--orange)}
.site-footer address{font-style:normal;line-height:1.9}
.footer-note{margin:16px 0 0;max-width:290px;line-height:1.6}
.footer-bottom{margin-top:48px;padding-block:22px;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem}
.footer-bottom p{margin:0}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .nav-toggle{display:flex}
  .primary-nav{position:absolute;top:72px;left:0;right:0;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.1);max-height:0;overflow:hidden;transition:max-height .3s ease}
  .primary-nav.is-open{max-height:420px}
  .primary-nav ul{flex-direction:column;align-items:stretch;padding:12px 24px 20px;gap:2px}
  .primary-nav a.nav-cta{margin:8px 0 0;text-align:center}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .hero::before{width:640px;height:640px;left:-220px;top:-110px}
}
@media (max-width:520px){
  .cards{gap:14px}
  .card h3{padding:48px 8px 14px}
  .footer-grid{grid-template-columns:1fr}
  .about{padding-top:64px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}
