:root{
  --bg:#12110E;
  --surface:#1C1A16;
  --surface-2:#252119;
  --line:#3A3327;
  --amber:#F5A623;
  --amber-dim:#8A6420;
  --teal:#4FD1C5;
  --text:#F2EFE9;
  --muted:#9C958A;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Sora',sans-serif;line-height:1.5;}
code,.mono{font-family:'JetBrains Mono',monospace;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px;}
.narrow{max-width:760px;}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(18,17,14,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);}
nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;flex-wrap:wrap;gap:10px;}
.logo{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:18px;}
.logo span{color:var(--amber);}
.navlinks{display:flex;gap:22px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);flex-wrap:wrap;}
.navlinks a:hover,.navlinks a.active{color:var(--amber);}
.cta-nav{border:1px solid var(--amber);color:var(--amber);padding:8px 14px;border-radius:4px;font-size:13px;font-family:'JetBrains Mono',monospace;white-space:nowrap;}
.cta-nav:hover{background:var(--amber);color:#12110E;}

/* BREADCRUMB */
.crumb{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted);padding:18px 0 0;}
.crumb a:hover{color:var(--amber);}

/* PAGE HEADER (secciones internas) */
.page-hero{padding:40px 0 50px;border-bottom:1px solid var(--line);}
.page-hero .section-tag{font-family:'JetBrains Mono',monospace;color:var(--teal);font-size:13px;margin-bottom:8px;}
.page-hero h1{font-size:34px;margin:0 0 12px;}
.page-hero p{color:var(--muted);max-width:620px;font-size:15px;}

/* SECTION */
.section{padding:60px 0;border-bottom:1px solid var(--line);}
.section-tag{font-family:'JetBrains Mono',monospace;color:var(--teal);font-size:13px;margin-bottom:8px;}
.section h2{font-size:26px;margin:0 0 8px;}
.section-sub{color:var(--muted);font-size:15px;margin-bottom:32px;max-width:620px;}

/* FILTER TABS */
.filters{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap;}
.filter-tab{font-family:'JetBrains Mono',monospace;font-size:12.5px;padding:8px 14px;border:1px solid var(--line);border-radius:20px;color:var(--muted);}
.filter-tab.active,.filter-tab:hover{border-color:var(--amber);color:var(--amber);}

/* GRID / CARDS */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:20px;transition:border-color .15s, transform .15s;display:block;}
.card:hover{border-color:var(--amber-dim);transform:translateY(-2px);}
.card-file{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted);margin-bottom:10px;}
.card h3{font-size:16px;margin:0 0 10px;color:var(--text);}
.card p{color:var(--muted);font-size:13px;margin:0 0 16px;}
.card-foot{display:flex;align-items:center;justify-content:space-between;}
.tag{font-family:'JetBrains Mono',monospace;font-size:11px;padding:3px 8px;border-radius:3px;background:var(--surface-2);color:var(--teal);}
.tag.free{color:#7EE787;}
.tag.soon{color:var(--muted);}
.dl{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--amber);border:1px solid var(--amber-dim);padding:6px 12px;border-radius:4px;}
.dl:hover{background:var(--amber);color:#12110E;}

/* PACKAGES (terminal window) */
.pkg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;}
.pkg{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.pkg.featured{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber);}
.pkg-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);}
.dot{width:9px;height:9px;border-radius:50%;}
.dot.r{background:#E5534B;} .dot.y{background:#F5A623;} .dot.g{background:#3FB950;}
.pkg-bar span{margin-left:8px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}
.pkg-body{padding:22px;}
.pkg-body h3{font-size:18px;margin:0 0 4px;}
.pkg-body .desc{color:var(--muted);font-size:13px;margin-bottom:18px;}
.price-line{font-family:'JetBrains Mono',monospace;font-size:20px;margin-bottom:18px;}
.price-line .kw{color:var(--teal);}
.price-line .val{color:var(--amber);font-weight:700;}
.feat-list{list-style:none;padding:0;margin:0 0 24px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);}
.feat-list li{margin-bottom:9px;padding-left:18px;position:relative;}
.feat-list li::before{content:"//";position:absolute;left:0;color:var(--teal);}
.buy-btn{display:block;text-align:center;width:100%;padding:12px;font-family:'JetBrains Mono',monospace;font-size:13px;border-radius:4px;border:1px solid var(--amber);color:var(--amber);}
.buy-btn:hover{background:var(--amber);color:#12110E;}
.buy-btn .blink{animation:blink 1s steps(1) infinite;}
.badge-top{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:#12110E;background:var(--amber);padding:3px 10px;border-radius:0 0 6px 0;position:absolute;}
@keyframes blink{50%{opacity:0;}}

/* BUTTONS genéricos */
.btn{font-family:'JetBrains Mono',monospace;font-size:14px;padding:12px 22px;border-radius:4px;border:1px solid var(--amber);color:var(--amber);display:inline-block;}
.btn.primary{background:var(--amber);color:#12110E;}
.btn:hover{opacity:.85;}

/* FICHA DE PRODUCTO */
.ficha{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start;}
@media(max-width:760px){.ficha{grid-template-columns:1fr;}}
.ficha-main h1{font-size:28px;margin:0 0 6px;}
.ficha-meta{font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);margin-bottom:24px;}
.ficha-main h2{font-size:16px;color:var(--teal);margin:28px 0 10px;font-family:'JetBrains Mono',monospace;}
.ficha-main ul{color:var(--muted);font-size:14px;padding-left:20px;}
.ficha-main li{margin-bottom:6px;}
.preview-box{background:var(--surface);border:1px dashed var(--line);border-radius:6px;padding:18px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);margin:16px 0;}
.buy-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:24px;position:sticky;top:90px;}
.buy-panel .price{font-family:'JetBrains Mono',monospace;font-size:28px;color:var(--amber);margin-bottom:6px;}
.buy-panel .old-price{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--muted);text-decoration:line-through;margin-left:8px;}
.buy-panel .includes{font-size:12.5px;color:var(--muted);margin:14px 0 20px;}
.buy-panel .includes li{margin-bottom:6px;}

/* TESTIMONIOS / SOBRE MI */
.about-grid{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:start;}
@media(max-width:640px){.about-grid{grid-template-columns:1fr;}}
.avatar-box{width:100%;aspect-ratio:1;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;color:var(--muted);font-size:12px;text-align:center;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);padding:18px 0;}
.faq-item h3{font-size:15px;margin:0 0 8px;color:var(--text);}
.faq-item p{color:var(--muted);font-size:14px;margin:0;}

/* LEGAL TABS */
.legal-tabs{display:flex;gap:8px;margin-bottom:30px;flex-wrap:wrap;border-bottom:1px solid var(--line);}
.legal-tab{font-family:'JetBrains Mono',monospace;font-size:12.5px;padding:10px 16px;color:var(--muted);border-bottom:2px solid transparent;}
.legal-tab.active{color:var(--amber);border-color:var(--amber);}
.legal-block{display:none;}
.legal-block.active{display:block;}
.legal-block h2{font-size:20px;color:var(--teal);margin:26px 0 10px;}
.legal-block h2:first-child{margin-top:0;}
.legal-block p, .legal-block li{color:var(--muted);font-size:14px;}
.legal-block strong{color:var(--text);}
.placeholder-note{background:var(--surface-2);border:1px solid var(--amber-dim);border-radius:6px;padding:14px 18px;font-size:12.5px;color:var(--amber);margin-bottom:24px;font-family:'JetBrains Mono',monospace;}

/* CONTACT FORM */
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);margin-bottom:6px;}
.form-group input,.form-group textarea{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:12px;color:var(--text);font-family:'Sora',sans-serif;font-size:14px;}
.form-group textarea{resize:vertical;min-height:120px;}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--amber);}

footer{padding:40px 0;text-align:center;color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:12px;}
