/*
Theme Name: FATALnet
Theme URI: https://fatalnet.local/
Author: FATALnet
Author URI: https://fatalexceptionsinc.com/
Description: A premium dark cyber / command-center WooCommerce theme for the FATALnet Tech Toolkit — First Edition USB stick.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fatalnet
Tags: e-commerce, custom-logo, dark, one-column, two-columns, block-styles, featured-images, responsive-layout, woocommerce
*/

:root {
  --fatal-red: #EF4444;
  --fatal-red-dark: #991B1B;
  --fatal-bg: #0A0A0A;
  --fatal-panel: #111113;
  --fatal-panel-2: #18181B;
  --fatal-border: rgba(239, 68, 68, .38);
  --fatal-text: #F8FAFC;
  --fatal-muted: #A1A1AA;
  --fatal-soft: #D4D4D8;
  --fatal-radius: 20px;
  --fatal-shadow: 0 24px 80px rgba(0,0,0,.55), 0 0 48px rgba(239,68,68,.12);
  --fatal-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--fatal-font);
  background: radial-gradient(circle at 20% 0%, rgba(239,68,68,.13), transparent 26%), radial-gradient(circle at 90% 20%, rgba(127,29,29,.24), transparent 24%), var(--fatal-bg);
  color: var(--fatal-text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }

.fatal-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.fatal-site { min-height: 100vh; overflow-x: hidden; }

.fatal-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(10,10,10,.78);
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(18px);
}
.fatal-header__inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 0; }
.fatal-logo { display:flex; align-items:center; gap:12px; font-weight:900; letter-spacing:.02em; }
.fatal-logo img { max-height:46px; width:auto; }
.fatal-logo__mark { width:44px; height:28px; border-radius:999px; background:linear-gradient(145deg,#ff2b2b,#7f0f0f); box-shadow:0 0 22px rgba(239,68,68,.45); }
.fatal-logo__text { font-size:1.25rem; }
.fatal-logo__text span { color:var(--fatal-red); }
.fatal-nav { display:flex; align-items:center; gap:22px; font-weight:650; color:#E5E7EB; }
.fatal-nav a { opacity:.9; }
.fatal-nav a:hover { color:var(--fatal-red); opacity:1; }
.fatal-cart { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid var(--fatal-border); border-radius:999px; background:rgba(239,68,68,.08); }
.fatal-menu-toggle { display:none; background:transparent; color:#fff; border:1px solid var(--fatal-border); border-radius:12px; padding:9px 12px; }

.fatal-hero { position:relative; padding:92px 0 72px; overflow:hidden; }
.fatal-hero:before { content:""; position:absolute; inset:-2px; background:linear-gradient(90deg, rgba(10,10,10,.92), rgba(10,10,10,.68), rgba(10,10,10,.94)), var(--fatal-hero-image, none); background-size:cover; background-position:center; opacity:.95; z-index:-2; }
.fatal-hero:after { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to bottom, #000, transparent 92%); z-index:-1; }
.fatal-hero__grid { display:grid; grid-template-columns: 1.02fr .98fr; gap:50px; align-items:center; }
.fatal-eyebrow { color:var(--fatal-red); font-weight:800; text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; }
.fatal-hero h1 { margin:12px 0 18px; font-size:clamp(2.6rem, 6vw, 5.8rem); line-height:.94; letter-spacing:-.07em; }
.fatal-hero p { color:var(--fatal-soft); font-size:1.12rem; max-width:650px; }
.fatal-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:30px; }
.fatal-btn, .button, button.single_add_to_cart_button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  background:linear-gradient(135deg, var(--fatal-red), #B91C1C) !important;
  color:white !important; border:0 !important; border-radius:999px !important;
  padding:14px 22px !important; font-weight:850 !important; box-shadow:0 10px 34px rgba(239,68,68,.28); cursor:pointer;
}
.fatal-btn--ghost { background:rgba(255,255,255,.05) !important; border:1px solid rgba(255,255,255,.14) !important; box-shadow:none; }
.fatal-card { border:1px solid rgba(255,255,255,.09); background:linear-gradient(180deg, rgba(24,24,27,.9), rgba(10,10,10,.72)); border-radius:var(--fatal-radius); box-shadow:var(--fatal-shadow); overflow:hidden; }
.fatal-product-frame { padding:14px; transform: perspective(900px) rotateY(-6deg) rotateX(3deg); }
.fatal-product-frame img { border-radius:16px; box-shadow:0 0 70px rgba(239,68,68,.15); }

.fatal-section { padding:78px 0; }
.fatal-section__head { max-width:760px; margin-bottom:34px; }
.fatal-section h2 { font-size:clamp(2rem, 4vw, 3.3rem); line-height:1; letter-spacing:-.045em; margin:0 0 14px; }
.fatal-section__head p { color:var(--fatal-muted); }
.fatal-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:18px; }
.fatal-feature { padding:22px; border:1px solid rgba(255,255,255,.08); border-radius:18px; background:linear-gradient(180deg, rgba(24,24,27,.74), rgba(10,10,10,.58)); position:relative; overflow:hidden; }
.fatal-feature:before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, transparent, var(--fatal-red), transparent); opacity:.75; }
.fatal-feature__icon { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--fatal-border); border-radius:14px; background:rgba(239,68,68,.08); color:var(--fatal-red); margin-bottom:14px; }
.fatal-feature h3 { margin:0 0 8px; font-size:1.05rem; }
.fatal-feature p { color:var(--fatal-muted); margin:0; }
.fatal-split { display:grid; grid-template-columns: .95fr 1.05fr; gap:28px; align-items:center; }
.fatal-panel { padding:28px; border:1px solid rgba(255,255,255,.1); border-radius:var(--fatal-radius); background:rgba(17,17,19,.72); }
.fatal-checks { display:grid; gap:12px; padding:0; list-style:none; margin:20px 0 0; }
.fatal-checks li { display:flex; gap:10px; color:var(--fatal-soft); }
.fatal-checks li:before { content:"✓"; color:var(--fatal-red); font-weight:900; }

.fatal-footer { border-top:1px solid rgba(255,255,255,.08); background:#070707; padding:40px 0; color:var(--fatal-muted); }
.fatal-footer__grid { display:grid; grid-template-columns: 1fr auto; gap:24px; align-items:center; }
.fatal-footer nav { display:flex; gap:18px; flex-wrap:wrap; }
.fatal-disclaimer { margin-top:16px; font-size:.85rem; color:#8A8A93; }

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb { color:var(--fatal-muted); margin:26px auto; width:min(1180px, calc(100% - 40px)); }
.woocommerce div.product { width:min(1180px, calc(100% - 40px)); margin:40px auto 80px; }
.woocommerce div.product div.images, .woocommerce div.product div.summary { margin-bottom:0; }
.woocommerce div.product div.images img { border-radius:20px; background:#111; border:1px solid rgba(255,255,255,.08); box-shadow:var(--fatal-shadow); }
.woocommerce div.product .product_title { font-size:clamp(2rem,4vw,4rem); letter-spacing:-.05em; line-height:1; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color:var(--fatal-red); font-size:2rem; font-weight:900; }
.woocommerce div.product form.cart { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.woocommerce .quantity .qty { background:#111; color:#fff; border:1px solid rgba(255,255,255,.16); border-radius:12px; padding:12px; }
.woocommerce-tabs, .related.products, .upsells.products { width:min(1180px, calc(100% - 40px)); margin:50px auto; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding:0; border-bottom:1px solid rgba(255,255,255,.12); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:#111; border:1px solid rgba(255,255,255,.12); border-radius:12px 12px 0 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color:#fff; }
.woocommerce div.product .woocommerce-tabs .panel { background:rgba(17,17,19,.65); border:1px solid rgba(255,255,255,.08); border-radius:0 18px 18px 18px; padding:24px; }
.woocommerce ul.products li.product { background:rgba(17,17,19,.72); border:1px solid rgba(255,255,255,.08); border-radius:18px; padding:14px !important; overflow:hidden; }
.woocommerce ul.products li.product a img { border-radius:14px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#fff; font-weight:850; }
.woocommerce-message, .woocommerce-info { background:#111 !important; color:#fff !important; border-top-color:var(--fatal-red) !important; }

@media (max-width: 880px) {
  .fatal-menu-toggle { display:inline-flex; }
  .fatal-nav { display:none; position:absolute; top:74px; left:20px; right:20px; flex-direction:column; align-items:flex-start; background:#111; border:1px solid var(--fatal-border); padding:18px; border-radius:18px; }
  .fatal-nav.is-open { display:flex; }
  .fatal-hero__grid, .fatal-split { grid-template-columns:1fr; }
  .fatal-grid { grid-template-columns:1fr; }
  .fatal-product-frame { transform:none; }
  .fatal-footer__grid { grid-template-columns:1fr; }
}
