:root {
         --bg: #0b0b0c;
         --panel: #0f0f12;
         --text: #d0d0d0;
         --muted: #8a8a8a;
         --accent: #7b001c;
         --accent-light: #a31c3a;
         --link: #aab2ff;
         --shadow: rgba(0,0,0,.5);
         }
         * { box-sizing: border-box; }
         html, body { height: 100%; }
         body {
         margin: 0;
         font-family: "IBM Plex Mono", monospace;
         background: var(--bg);
         color: var(--text);
         line-height: 1.6;
         letter-spacing: .2px;
         }
         a { color: var(--link); text-decoration: none; }
         a:hover { text-decoration: underline; }
         .container { max-width: 1100px; margin: 0 auto; padding: 24px; }
         header { position: sticky; top: 0; backdrop-filter: blur(6px); background: linear-gradient(to bottom, rgba(11,11,12,.8), rgba(11,11,12,.35)); border-bottom: 1px solid #1d1d22; z-index: 50; }
         .nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
         .logo {
         display: inline-flex;
         align-items: center;
         font-weight: 600;
         text-transform: lowercase;
         letter-spacing: 1px;
         font-size: 20px;
         transition: all .3s ease;
         }
         .logo:hover {
         transform: scale(1.05);
         }
         .logo-box {
         display: flex;
         align-items: center;
         justify-content: center;
         padding: 6px 12px;
         border-radius: 4px;
         background: linear-gradient(to top, var(--accent) 50%, var(--accent-light) 50%);
         color: #d0d0d0;
         box-shadow: 0 0 0 1px #2b0b13 inset, 0 0 20px rgba(123,0,28,.55);
         animation: logo-glow 4s ease-in-out infinite alternate;
         position: relative;
         overflow: hidden;
         }
         .logo-box::after {
         content: '';
         position: absolute;
         inset: 0;
         background: linear-gradient(90deg, transparent, rgba(255,255,255,.15), transparent);
         animation: logo-scan 2.5s linear infinite;
         pointer-events: none;
         }
         @keyframes logo-glow {
         0% {
         box-shadow: 0 0 0 1px #2b0b13 inset, 0 0 20px rgba(123,0,28,.55);
         filter: brightness(1);
         }
         50% {
         box-shadow: 0 0 0 1px #2b0b13 inset, 
         0 0 35px rgba(123,0,28,.9), 
         0 0 55px rgba(163,28,58,.5);
         filter: brightness(1.12);
         }
         100% {
         box-shadow: 0 0 0 1px #2b0b13 inset, 0 0 20px rgba(123,0,28,.55);
         filter: brightness(1);
         }
         }
         @keyframes logo-scan {
         0% { transform: translateX(-150%); }
         100% { transform: translateX(300%); }
         }
         nav ul { list-style: none; display: flex; gap: 18px; padding: 0; margin: 0; }
         nav a { 
         padding: 8px 10px; 
         border-radius: 8px; 
         transition: all .25s cubic-bezier(0.23,1,.32,1);
         }
         nav a:hover {
         background: rgba(123,0,28,.18);
         color: #fff;
         box-shadow: 0 0 15px rgba(123,0,28,.45);
         text-shadow: 0 0 8px rgba(163,28,58,.6);
         }
         nav a:focus-visible { outline: 2px dashed var(--accent); outline-offset: 2px; }
         .term { background: var(--panel); border: 1px solid #1d1d22; border-radius: 16px; box-shadow: 0 12px 40px var(--shadow); overflow: hidden; }
         .term-top { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; border-bottom: 1px solid #1d1d22; background: linear-gradient(to bottom, #17171b, #131317); }
         .dots { display: inline-flex; gap: 8px; }
         .dot { width: 10px; height: 10px; border-radius: 50%; background: #3a3a40; box-shadow: 0 0 0 1px #232328 inset; }
         .dot.red { background: #ff5f56; }
         .dot.yellow { background: #ffbd2e; }
         .dot.green { background: #27c93f; }
         .title { color: #888; font-size: 12px; }
         .term-body { padding: 24px; }
         .prompt { color: #7ddc98; }
         .path { color: #9cb2ff; }
         .caret { display: inline-block; width: 10px; height: 1.2em; background: var(--text); vertical-align: -2px; animation: blink 1s steps(2, jump-none) infinite; }
         @keyframes blink { 50% { opacity: 0; } }
         section { padding: 56px 0; border-bottom: 1px dashed #22232a; }
         section:last-of-type { border-bottom: none; padding-bottom: 24px; }
         h1, h2, h3 { font-weight: 600; margin: 0 0 14px; letter-spacing: .5px; }
         h1 { font-size: clamp(26px, 4vw, 42px); }
         h2 { font-size: clamp(18px, 3vw, 26px); color: #c4c4c4; }
         p { margin: 0 0 12px; color: #c9c9c9; }
         .muted { color: var(--muted); }
         .grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
         .card { 
         padding: 18px; 
         border: 1px solid #1d1d22; 
         border-radius: 12px; 
         background: linear-gradient(180deg, rgba(255,255,255,.02), transparent 40%); 
         transition: all .3s cubic-bezier(0.23,1,.32,1);
         }
         .card:hover {
         border-color: #4a0f1b;
         box-shadow: 0 0 25px rgba(123,0,28,.45), 
         0 0 45px rgba(123,0,28,.2);
         transform: translateY(-4px);
         }
         .btn { 
         display: inline-flex; 
         align-items: center; 
         gap: 10px; 
         padding: 12px 16px; 
         border: 1px solid #2c2c33; 
         border-radius: 10px; 
         background: #131318; 
         color: var(--text); 
         cursor: pointer; 
         transition: all .25s cubic-bezier(0.23,1,.32,1); 
         }
         .btn:hover { 
         transform: translateY(-2px); 
         box-shadow: 0 10px 35px rgba(0,0,0,.3), 
         0 0 20px rgba(123,0,28,.35);
         }
         .btn.acc { 
         border-color: #3b0e18; 
         background: linear-gradient(180deg, rgba(123,0,28,.18), rgba(123,0,28,.08)); 
         }
         /* Estilo chamativo para o botão Enviar */
         /* Botão Enviar (neon) */
         .btn.neon-send {
         position: relative;
         z-index: 1;
         padding: 16px 36px;
         border: none;
         cursor: pointer;
         overflow: hidden;
         background: linear-gradient(145deg, rgba(123,0,28,0.25), rgba(123,0,28,0.10));
         color: #ffccd5;
         font-family: "IBM Plex Mono", "Segoe UI", Arial, sans-serif;
         font-size: 1.18rem;
         font-weight: 500;
         letter-spacing: 1.1px;
         text-transform: uppercase;
         text-shadow: 0 0 6px rgba(163,28,58,0.7);
         box-shadow:
         0 0 12px rgba(123,0,28,0.5) inset,
         0 0 20px rgba(163,28,58,0.35);
         transition: all 0.4s cubic-bezier(0.23,1,0.32,1);
         }
         .btn.neon-send::before {
         content: '';
         position: absolute;
         inset: -2px;
         background: linear-gradient(45deg, transparent, #a31c3a, #7b001c, #a31c3a, transparent);
         background-size: 300% 300%;
         border-radius: 12px;
         opacity: 0.7;
         z-index: -1;
         pointer-events: none;
         animation: borderFlow 4s linear infinite;
         transition: opacity 0.5s ease;
         }
         .btn.neon-send::after {
         content: '';
         position: absolute;
         inset: -10px;
         background: radial-gradient(circle at 50% 50%, rgba(163,28,58,0.45), transparent 70%);
         border-radius: 50%;
         opacity: 0.5;
         filter: blur(12px);
         z-index: -2;
         pointer-events: none;
         transition: opacity 0.5s ease;
         }
         .btn.neon-send:hover {
         transform: translateY(-4px) scale(1.04);
         box-shadow:
         0 0 25px rgba(123,0,28,0.8) inset,
         0 0 50px rgba(163,28,58,0.6);
         text-shadow:
         0 0 12px rgba(163,28,58,1),
         0 0 20px rgba(123,0,28,0.9);
         }
         .btn.neon-send:hover::before,
         .btn.neon-send:hover::after {
         opacity: 1;
         }
         .btn.neon-send:active {
         transform: translateY(1px) scale(0.97);
         box-shadow: 0 0 30px rgba(123,0,28,0.9) inset;
         }
         /* animação borda */
         @keyframes borderFlow {
         0%   { background-position: 0% 50%; }
         100% { background-position: 300% 50%; }
         }
         /* wrappers */
         .photo-wrap,
         .map-wrap {
         aspect-ratio: 16/9;
         border: 1px dashed #34343c;
         border-radius: 12px;
         display: grid;
         place-items: center;
         background: #111116;
         overflow: hidden;
         }
         .photo-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 12px; display: block; }
         .placeholder { color: #676a74; font-size: 14px; }
         footer { padding: 28px 0 44px; color: var(--muted); font-size: 14px; }
         /* ambient light + soft relief */
         body::before{
         content:"";
         position:fixed;
         inset:0;
         background:
         radial-gradient(800px 400px at 20% 10%, rgba(123,0,28,.28), transparent 65%),
         radial-gradient(700px 350px at 80% 80%, rgba(123,0,28,.22), transparent 65%),
         radial-gradient(600px 300px at 50% 40%, rgba(163,28,58,.12), transparent 70%);
         pointer-events:none;
         z-index:-2;
         animation:ambientMove 14s ease-in-out infinite alternate;
         }
         @keyframes ambientMove{
         0%{transform:translateY(0) translateX(0);}
         100%{transform:translateY(-18px) translateX(22px);}
         }
         /* particle canvas - CIRCUIT NETWORK */
         #particles{
         position:fixed;
         inset:0;
         z-index:-3;
         pointer-events:none;
         }
         /* reveal animation */
         .reveal{
         opacity:0;
         transform:translateY(30px);
         transition:all .7s cubic-bezier(0.23,1,.32,1);
         }
         .reveal.visible{
         opacity:1;
         transform:translateY(0);
         }
         /* boot screen */
         #boot{
         position:fixed;
         inset:0;
         background:#000;
         color:#7ddc98;
         font-family:"IBM Plex Mono",monospace;
         padding:30px;
         z-index:9999;
         display:flex;
         align-items:center;
         }
         @media (max-width:768px){
         .grid{grid-template-columns:1fr;}
         .card{grid-column:span 12 !important;}
         nav ul{flex-wrap:wrap;}
         }
