.security-page {
  background:
    radial-gradient(circle at 12% 8%, rgba(34,211,238,.07), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(217,70,239,.09), transparent 30%),
    var(--bg);
}
.security-main { overflow: hidden; }
.security-hero {
  position: relative;
  min-height: 930px;
  padding: 160px 0 110px;
  display: grid;
  grid-template-columns: minmax(0, .93fr) minmax(560px, 1.07fr);
  gap: 64px;
  align-items: center;
  isolation: isolate;
}
.security-hero-grid {
  position: absolute;
  inset: 90px calc(50% - 50vw) 0;
  z-index: -3;
  opacity: .16;
  background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size: 58px 58px;
  mask-image: radial-gradient(ellipse at center, #000 5%, transparent 75%);
}
.security-hero::before,.security-hero::after { content:""; position:absolute; z-index:-2; border-radius:50%; filter:blur(110px); opacity:.16; pointer-events:none; }
.security-hero::before { width:380px; height:380px; left:-240px; top:300px; background:var(--cyan); }
.security-hero::after { width:440px; height:440px; right:-260px; top:190px; background:var(--fuchsia); }
.security-hero-copy h1 { margin:28px 0 24px; font-size:clamp(58px,6.1vw,94px); line-height:.94; letter-spacing:-.068em; }
.security-hero-copy h1 span { display:block; }
.security-hero-copy > p { max-width:670px; margin:0; color:#adadba; font-size:clamp(17px,1.4vw,20px); line-height:1.65; letter-spacing:-.018em; }
.security-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.security-hero-principles { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:28px; color:#aaaab8; font:10px var(--font-mono); letter-spacing:.04em; text-transform:uppercase; }
.security-hero-principles > span { display:inline-flex; align-items:center; gap:8px; }
.sm-dot { width:6px; height:6px; border-radius:50%; }
.sm-dot.cyan { background:var(--cyan); box-shadow:0 0 14px rgba(34,211,238,.7); }
.sm-dot.purple { background:var(--fuchsia); box-shadow:0 0 14px rgba(217,70,239,.7); }
.sm-dot.green { background:var(--green); box-shadow:0 0 14px rgba(0,229,139,.7); }

.boundary-console { position:relative; min-height:650px; border:1px solid var(--line-strong); border-radius:30px; overflow:hidden; background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 18%),rgba(9,9,16,.77); box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.04); }
.boundary-console::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:34px 34px; opacity:.25; mask-image:linear-gradient(#000,transparent 92%); }
.boundary-titlebar { position:relative; z-index:2; height:52px; padding:0 19px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); color:#858594; font:9px var(--font-mono); letter-spacing:.12em; }
.boundary-titlebar span:last-child { display:flex; align-items:center; gap:7px; color:#b8b8c1; }
.boundary-titlebar i { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 13px rgba(0,229,139,.8); animation:pulse-dot 1.8s infinite; }
.boundary-path { position:relative; z-index:1; min-height:548px; display:grid; place-items:center; padding:36px 30px 70px; }
.boundary-zone { width:250px; padding:15px 18px; text-align:center; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.035); }
.boundary-zone span,.boundary-gate span { display:block; color:var(--cyan); font:8px var(--font-mono); letter-spacing:.14em; }
.boundary-zone strong,.boundary-gate strong { display:block; margin-top:6px; font-size:14px; }
.boundary-zone small,.boundary-gate small { display:block; margin-top:5px; color:var(--muted); font:9px var(--font-mono); }
.boundary-line { position:relative; width:2px; height:64px; background:linear-gradient(var(--cyan),var(--fuchsia)); }
.moving-request { position:absolute; left:14px; top:6px; padding:5px 7px; border:1px solid rgba(34,211,238,.24); border-radius:7px; background:#0c0c13; color:var(--cyan); font:8px var(--font-mono); animation:boundary-packet 3.2s ease-in-out infinite; }
.boundary-gate { position:relative; width:260px; min-height:200px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:22px; text-align:center; border:1px solid rgba(217,70,239,.34); border-radius:28px; background:radial-gradient(circle,rgba(139,92,246,.12),transparent 65%),rgba(8,8,14,.9); box-shadow:0 0 80px rgba(139,92,246,.13); }
.boundary-gate::before,.boundary-gate::after { content:""; position:absolute; inset:-25px; border:1px solid rgba(139,92,246,.11); border-radius:50%; animation:gate-ring 4s linear infinite; }
.boundary-gate::after { inset:-52px; animation-duration:6s; animation-direction:reverse; }
.gate-logo { width:70px; height:70px; margin-bottom:12px; filter:drop-shadow(0 0 22px rgba(217,70,239,.35)); }
.gate-logo img { width:100%; height:100%; object-fit:contain; border-radius:16px; }
.boundary-gate span { color:var(--fuchsia); }
.boundary-split { width:100%; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:58px; }
.boundary-outcome { padding:12px 10px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); text-align:left; }
.boundary-outcome span { display:block; font:8px var(--font-mono); letter-spacing:.13em; }
.boundary-outcome strong { display:block; margin-top:5px; font-size:10px; color:#c8c8d2; }
.outcome-allow { border-color:rgba(0,229,139,.22); }.outcome-allow span{color:var(--green)}
.outcome-approval { border-color:rgba(217,70,239,.24); }.outcome-approval span{color:var(--fuchsia)}
.outcome-deny { border-color:rgba(255,59,92,.24); }.outcome-deny span{color:var(--red)}
.boundary-log { position:absolute; left:0; right:0; bottom:0; z-index:2; height:48px; padding:0 18px; display:grid; grid-template-columns:auto 1fr 1fr auto; gap:16px; align-items:center; border-top:1px solid var(--line); color:#747482; font:8px var(--font-mono); }
.boundary-log b { color:var(--red); font-weight:500; }

.security-axioms { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); border-radius:22px; overflow:hidden; background:rgba(255,255,255,.014); }
.security-axioms article { min-height:190px; padding:24px; border-right:1px solid var(--line); }
.security-axioms article:last-child { border-right:0; }
.security-axioms article > span { color:var(--fuchsia); font:9px var(--font-mono); }
.security-axioms strong { display:block; margin-top:24px; font-size:16px; letter-spacing:-.02em; }
.security-axioms p { margin:10px 0 0; color:var(--muted); font-size:12px; line-height:1.65; }

.threat-section,.trust-boundary,.decision-lifecycle,.decision-contract,.scope-section,.linux-section,.faq-section { padding-top:140px; }
.threat-workbench { display:grid; grid-template-columns:340px 1fr; margin-top:52px; border:1px solid var(--line-strong); border-radius:26px; overflow:hidden; background:rgba(11,11,18,.76); box-shadow:var(--shadow); }
.threat-tabs { padding:18px; border-right:1px solid var(--line); background:rgba(255,255,255,.012); }
.threat-tab { width:100%; min-height:78px; display:grid; grid-template-columns:8px 1fr; gap:0 12px; align-items:center; padding:15px 16px; border:1px solid transparent; border-radius:14px; background:transparent; text-align:left; cursor:pointer; transition:.22s ease; }
.threat-tab i { grid-row:1/3; width:7px; height:7px; border-radius:50%; background:#5d5d6a; }
.threat-tab span { font-size:13px; font-weight:700; color:#aaaab7; }
.threat-tab small { margin-top:5px; color:#5f5f6e; font:8px var(--font-mono); letter-spacing:.1em; }
.threat-tab:hover { background:rgba(255,255,255,.025); }
.threat-tab.active { border-color:rgba(217,70,239,.28); background:linear-gradient(110deg,rgba(34,211,238,.045),rgba(217,70,239,.075)); }
.threat-tab.active i { background:var(--fuchsia); box-shadow:0 0 14px rgba(217,70,239,.7); }
.threat-tab.active span { color:#fff; }
.threat-detail { min-height:560px; padding:38px; }
.threat-detail-head { display:flex; justify-content:space-between; gap:20px; color:#787887; font:9px var(--font-mono); letter-spacing:.12em; }
.threat-detail-head b { color:var(--red); font-weight:500; }
.threat-detail h3 { max-width:720px; margin:24px 0 12px; font-size:clamp(28px,3vw,46px); line-height:1.05; letter-spacing:-.045em; }
.threat-detail > p { max-width:780px; margin:0; color:#a7a7b4; line-height:1.7; font-size:14px; }
.attack-chain { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:stretch; gap:9px; margin-top:40px; }
.attack-chain > div { min-height:132px; padding:16px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.02); }
.attack-chain > i { align-self:center; color:#5e5e6c; font-style:normal; }
.attack-chain span { color:#70707e; font:8px var(--font-mono); }
.attack-chain strong { display:block; margin-top:16px; font-size:12px; }
.attack-chain small { display:block; margin-top:8px; color:#7f7f8d; font:9px var(--font-mono); line-height:1.45; }
.attack-chain .chain-gate { border-color:rgba(217,70,239,.28); box-shadow:inset 0 0 30px rgba(139,92,246,.06); }
.attack-chain .chain-gate strong { color:#efc7ff; }
.attack-chain .chain-result { border-color:rgba(255,59,92,.24); }
.attack-chain .chain-result strong { color:var(--red); }
.control-response { margin-top:26px; padding:20px; border:1px solid rgba(34,211,238,.16); border-radius:16px; background:linear-gradient(120deg,rgba(34,211,238,.04),rgba(139,92,246,.045)); }
.control-response > span { color:var(--cyan); font:8px var(--font-mono); letter-spacing:.12em; }
.control-response strong { display:block; margin-top:9px; font-size:14px; }
.control-response p { margin:7px 0 0; color:#9393a1; font-size:11px; line-height:1.6; }

.boundary-map { margin-top:52px; display:grid; grid-template-columns:1fr 100px 1.25fr 100px 1.2fr; align-items:center; gap:16px; padding:42px; border:1px solid var(--line-strong); border-radius:28px; background:radial-gradient(circle at center,rgba(139,92,246,.065),transparent 38%),rgba(10,10,17,.72); box-shadow:var(--shadow); }
.map-zone,.map-targets { padding:22px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.022); }
.map-zone > span,.map-targets > span,.map-shield > span { display:block; color:#777786; font:8px var(--font-mono); letter-spacing:.12em; }
.map-zone strong { display:block; margin-top:18px; font-size:20px; }
.map-zone small { display:block; margin-top:8px; color:var(--muted); font:9px var(--font-mono); line-height:1.5; }
.map-arrow { position:relative; height:2px; background:linear-gradient(90deg,var(--cyan),var(--fuchsia)); }
.map-arrow span { position:absolute; left:50%; bottom:10px; transform:translateX(-50%); color:#797987; font:8px var(--font-mono); white-space:nowrap; }
.map-arrow i { position:absolute; right:-1px; top:50%; width:8px; height:8px; border-top:2px solid var(--fuchsia); border-right:2px solid var(--fuchsia); transform:translateY(-50%) rotate(45deg); }
.map-arrow-out { background:linear-gradient(90deg,var(--fuchsia),var(--green)); }.map-arrow-out i{border-color:var(--green)}
.map-shield { min-height:270px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:25px; border:1px solid rgba(217,70,239,.31); border-radius:28px; background:rgba(7,7,12,.88); box-shadow:0 0 70px rgba(139,92,246,.12); text-align:center; }
.map-logo { width:86px; height:86px; margin-bottom:14px; }.map-logo img{width:100%;height:100%;object-fit:contain;border-radius:18px;}
.map-shield > span { color:var(--fuchsia); }.map-shield strong{font-size:22px}.map-shield small{margin-top:8px;color:#858594;font:9px var(--font-mono);line-height:1.55}
.map-targets { display:grid; gap:10px; }.map-targets > span{margin-bottom:8px}.map-targets div{padding:11px 12px;border:1px solid var(--line);border-radius:10px}.map-targets b{display:block;font:9px var(--font-mono);color:#d0d0da}.map-targets small{display:block;margin-top:5px;color:#757583;font:8px var(--font-mono)}
.boundary-note { margin-top:18px; display:grid; grid-template-columns:auto 1fr; gap:22px; align-items:center; padding:20px 24px; border:1px solid rgba(217,70,239,.18); border-radius:16px; background:rgba(139,92,246,.035); }.boundary-note span{color:var(--fuchsia);font:8px var(--font-mono);letter-spacing:.13em}.boundary-note p{margin:0;color:#b7b7c2;font-size:14px;line-height:1.6}

.lifecycle-track { list-style:none; margin:52px 0 0; padding:0; display:grid; grid-template-columns:repeat(7,1fr); border:1px solid var(--line); border-radius:22px; overflow:hidden; background:rgba(255,255,255,.014); }
.lifecycle-track li { position:relative; min-height:220px; padding:22px 18px; border-right:1px solid var(--line); }
.lifecycle-track li:last-child { border-right:0; }
.lifecycle-track li::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:linear-gradient(90deg,var(--cyan),var(--fuchsia)); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.lifecycle-track li:hover::after { transform:scaleX(1); }
.lifecycle-track span { color:#70707e; font:9px var(--font-mono); }
.lifecycle-track strong { display:block; margin-top:46px; font-size:15px; }
.lifecycle-track small { display:block; margin-top:10px; color:#858594; font-size:11px; line-height:1.55; }
.fail-closed { margin-top:22px; padding:28px; display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; border:1px solid rgba(255,59,92,.19); border-radius:20px; background:linear-gradient(110deg,rgba(255,59,92,.045),rgba(139,92,246,.03)); }
.fail-closed span { color:var(--red); font:8px var(--font-mono); letter-spacing:.13em; }.fail-closed h3{max-width:820px;margin:10px 0 0;font-size:21px;line-height:1.3}.fail-state{display:flex;align-items:center;gap:16px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:#0b0b12}.fail-state span{color:#8c8c99}.fail-state i{color:#5f5f6d;font-style:normal}.fail-state strong{color:var(--red);font:12px var(--font-mono)}

.decision-contract { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center; }
.contract-copy h2 { margin:15px 0 15px; font-size:clamp(38px,5vw,66px); line-height:1; letter-spacing:-.055em; }.contract-copy>p{max-width:590px;color:var(--muted);font-size:15px;line-height:1.65}.contract-outcomes{display:grid;gap:10px;margin-top:30px}.contract-outcomes article{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.018)}.contract-outcomes span{font:8px var(--font-mono);letter-spacing:.13em}.contract-outcomes strong{display:block;margin-top:7px;font-size:13px}.contract-outcomes small{display:block;margin-top:5px;color:#797987;font:9px var(--font-mono)}.contract-allow{border-color:rgba(0,229,139,.2)!important}.contract-allow span{color:var(--green)}.contract-approval{border-color:rgba(217,70,239,.22)!important}.contract-approval span{color:var(--fuchsia)}.contract-deny{border-color:rgba(255,59,92,.22)!important}.contract-deny span{color:var(--red)}
.contract-code { border:1px solid var(--line-strong); border-radius:22px; overflow:hidden; background:#09090f; box-shadow:var(--shadow); }.contract-code pre{margin:0;padding:28px;overflow:auto;color:#c7c7d0;font:12px/1.9 var(--font-mono)}

.scope-grid { margin-top:52px; display:grid; grid-template-columns:1fr 1fr .9fr; gap:18px; }.scope-card{min-height:460px;padding:28px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.018)}.scope-label{font:8px var(--font-mono);letter-spacing:.13em}.scope-card h3{margin:22px 0 24px;font-size:25px;line-height:1.15;letter-spacing:-.035em}.scope-card ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}.scope-card li{position:relative;padding-left:20px;color:#9c9caa;font-size:12px;line-height:1.55}.scope-card li::before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%}.scope-protects{border-color:rgba(0,229,139,.18)}.scope-protects .scope-label{color:var(--green)}.scope-protects li::before{background:var(--green)}.scope-not{border-color:rgba(255,59,92,.18)}.scope-not .scope-label{color:var(--red)}.scope-not li::before{background:var(--red)}.scope-layered{border-color:rgba(217,70,239,.2)}.scope-layered .scope-label{color:var(--fuchsia)}.layer-stack{display:grid;gap:8px}.layer-stack span{padding:14px;border:1px solid var(--line);border-radius:11px;color:#aaaab7;font:9px var(--font-mono);background:rgba(255,255,255,.018)}.layer-stack span:nth-child(3){border-color:rgba(217,70,239,.35);color:#efc7ff;box-shadow:0 0 26px rgba(139,92,246,.08)}

.status-matrix { margin-top:52px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.status-matrix article{min-height:330px;padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.008))}.status-matrix span{font:8px var(--font-mono);letter-spacing:.13em}.status-matrix h3{margin:25px 0 20px;font-size:23px}.status-matrix ul{margin:0;padding-left:18px;color:#9696a4;font-size:12px;line-height:2}.status-current{border-color:rgba(0,229,139,.2)!important}.status-current span{color:var(--green)}.status-planned{border-color:rgba(34,211,238,.18)!important}.status-planned span{color:var(--cyan)}.status-research{border-color:rgba(217,70,239,.2)!important}.status-research span{color:var(--fuchsia)}

.faq-list { margin-top:48px; border-top:1px solid var(--line); }.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 4px;cursor:pointer;font-size:17px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary i{font-style:normal;color:var(--fuchsia);font-size:22px;transition:transform .2s ease}.faq-list details[open] summary i{transform:rotate(45deg)}.faq-list p{max-width:850px;margin:-4px 0 25px;color:#9999a7;font-size:13px;line-height:1.75}
.security-cta { margin-top:140px; margin-bottom:110px; padding:42px; display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; border:1px solid rgba(217,70,239,.22); border-radius:26px; background:radial-gradient(circle at 80%,rgba(217,70,239,.12),transparent 35%),linear-gradient(120deg,rgba(34,211,238,.035),rgba(139,92,246,.055)); }.security-cta h2{max-width:760px;margin:14px 0 12px;font-size:clamp(32px,4.3vw,58px);line-height:1.05;letter-spacing:-.05em}.security-cta p{max-width:690px;margin:0;color:#9c9caa;font-size:14px;line-height:1.65}

@keyframes boundary-packet { 0%,10%{transform:translateY(-10px);opacity:0}25%{opacity:1}75%{opacity:1}90%,100%{transform:translateY(50px);opacity:0} }
@keyframes gate-ring { to{transform:rotate(360deg)} }
@media (max-width:1180px){.security-hero{grid-template-columns:1fr;gap:40px;padding-bottom:80px}.security-hero-copy{max-width:850px}.boundary-console{max-width:780px;width:100%;margin:0 auto}.security-axioms{grid-template-columns:1fr 1fr}.security-axioms article:nth-child(2){border-right:0}.security-axioms article:nth-child(-n+2){border-bottom:1px solid var(--line)}.threat-workbench{grid-template-columns:280px 1fr}.attack-chain{grid-template-columns:1fr 1fr}.attack-chain>i{display:none}.boundary-map{grid-template-columns:1fr}.map-arrow{width:2px;height:60px;margin:auto;background:linear-gradient(var(--cyan),var(--fuchsia))}.map-arrow i{right:50%;top:auto;bottom:-1px;transform:translateX(50%) rotate(135deg)}.map-arrow span{left:18px;bottom:auto;top:50%;transform:translateY(-50%)}.lifecycle-track{grid-template-columns:repeat(4,1fr)}.lifecycle-track li:nth-child(4){border-right:0}.lifecycle-track li:nth-child(-n+4){border-bottom:1px solid var(--line)}.scope-grid{grid-template-columns:1fr 1fr}.scope-layered{grid-column:1/-1}.decision-contract{grid-template-columns:1fr}.contract-code{max-width:760px}.main-nav{gap:20px}}
@media (max-width:800px){.security-hero{padding-top:135px;grid-template-columns:1fr}.security-hero-copy h1{font-size:clamp(49px,15vw,72px)}.boundary-console{min-height:610px}.security-axioms{grid-template-columns:1fr}.security-axioms article{border-right:0;border-bottom:1px solid var(--line)}.security-axioms article:last-child{border-bottom:0}.threat-section,.trust-boundary,.decision-lifecycle,.decision-contract,.scope-section,.linux-section,.faq-section{padding-top:100px}.threat-workbench{grid-template-columns:1fr}.threat-tabs{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:12px}.threat-tab{min-width:210px}.threat-detail{padding:26px 20px}.attack-chain{grid-template-columns:1fr}.boundary-map{padding:22px}.lifecycle-track{grid-template-columns:1fr 1fr}.lifecycle-track li{min-height:180px}.lifecycle-track li:nth-child(even){border-right:0}.lifecycle-track li:nth-child(-n+6){border-bottom:1px solid var(--line)}.fail-closed{grid-template-columns:1fr}.scope-grid,.status-matrix{grid-template-columns:1fr}.scope-layered{grid-column:auto}.security-cta{grid-template-columns:1fr;padding:28px}.boundary-log{grid-template-columns:auto 1fr auto}.boundary-log span:nth-child(3){display:none}.decision-contract{padding-top:100px}}
@media (max-width:520px){.security-hero{min-height:auto;padding-bottom:70px}.security-hero-principles{display:grid}.boundary-console{min-height:590px;border-radius:22px}.boundary-path{padding-left:14px;padding-right:14px}.boundary-split{gap:6px}.boundary-outcome strong{font-size:8px}.boundary-zone{width:220px}.boundary-gate{width:225px}.boundary-log{font-size:7px;gap:8px}.threat-detail-head{display:grid}.attack-chain>div{min-height:115px}.boundary-note{grid-template-columns:1fr}.lifecycle-track{grid-template-columns:1fr}.lifecycle-track li{border-right:0!important;border-bottom:1px solid var(--line)!important;min-height:150px}.lifecycle-track li:last-child{border-bottom:0!important}.lifecycle-track strong{margin-top:24px}.contract-code pre{font-size:10px;padding:18px}.security-cta{margin-top:100px;margin-bottom:80px}.security-hero-actions .button{width:100%}}
@media (prefers-reduced-motion:reduce){.moving-request,.boundary-gate::before,.boundary-gate::after{animation:none!important}}
