:root{ --bg:#0b0f14; --surface:#10151d; --surface-2:#161d27; --line:#2c3a4d; --text:#e6ecf3; --dim:#8796a8; --orange:#fd5a01; --amber:#ffb02e; --steel:#93a1b3; --blue:#2f7bff; --green:#22c55e; --red:#ef4444;
  --disp:"Barlow Condensed","Arial Narrow",Arial,sans-serif; --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace; color-scheme:dark; }
*,*::before,*::after{ box-sizing:border-box; }
[hidden]{ display:none !important; }
html{ background:var(--bg); }
body{ margin:0; background:var(--bg); background-image:radial-gradient(1200px 520px at 50% -8%, rgba(38,51,70,.55), rgba(11,15,20,0) 70%); color:var(--text); font-family:var(--mono); font-size:15px; line-height:1.55; min-height:100vh; padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px); }
a{ color:var(--orange); }
button,input,select{ font:inherit; }
:focus-visible{ outline:2px solid var(--orange); outline-offset:2px; }
.site{ display:flex; align-items:center; gap:14px; padding:10px 20px; border-bottom:2px solid var(--orange); background:linear-gradient(180deg,#141a24,#10151d); box-shadow:0 4px 16px rgba(0,0,0,.4); position:sticky; top:0; z-index:5; }
.site .brand{ display:flex; align-items:center; gap:8px; text-decoration:none; }
.site .brand img.i{ height:32px; } .site .brand img.w{ height:26px; }
.site .brand-word{ font-family:'Barlow Condensed',sans-serif; font-weight:900; font-size:28px; letter-spacing:1px; color:#fff; font-style:italic; }
.site .brand-word em{ font-style:italic; color:#ff6b1a; }
.site nav{ margin-left:auto; display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.site nav a, .site nav button{ color:var(--text); text-decoration:none; background:none; border:1px solid transparent; padding:7px 10px; font:600 15px var(--disp); letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.site nav a:hover, .site nav button:hover{ border-color:var(--line); }
.site nav a.cta{ background:var(--orange); color:#111; font-weight:900; }
main{ max-width:960px; margin:0 auto; padding:28px 20px 60px; }
h1{ font:900 44px/1.02 var(--disp); margin:0 0 12px; letter-spacing:.01em; }
h2{ font:800 28px/1.1 var(--disp); margin:32px 0 12px; }
h3{ font:700 20px var(--disp); margin:0 0 6px; }
.lead{ font-size:17px; color:#c9d3de; max-width:60ch; }
.dim{ color:var(--dim); } .small{ font-size:13px; }
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:10px 18px; border:1px solid var(--line); background:linear-gradient(180deg,#1c2534,#161d29); color:var(--text); font:700 18px var(--disp); letter-spacing:.05em; text-transform:uppercase; text-decoration:none; cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.06); }
.btn:hover{ border-color:var(--dim); }
.btn.hot{ background:linear-gradient(180deg,#ff6d1c,#e04e00); border-color:#d94800; color:#111; font-weight:900; box-shadow:0 3px 14px rgba(253,90,1,.32), inset 0 1px 0 rgba(255,255,255,.3); }
.btn:disabled{ opacity:.5; cursor:not-allowed; }
.btn.block{ width:100%; }
.row{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.card{ background:linear-gradient(180deg,rgba(27,35,49,.94),rgba(19,25,36,.94)); backdrop-filter:blur(8px); border:1px solid #37455a; border-top:3px solid var(--orange); box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 30px rgba(0,0,0,.45); padding:20px; }
.grid{ display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.hero{ display:grid; grid-template-columns:1fr 260px; gap:28px; align-items:center; margin:12px 0 28px; }
.hero img{ width:100%; height:auto; }
@media (max-width:720px){ .hero{ grid-template-columns:1fr; } .hero img{ max-width:200px; order:-1; } h1{ font-size:36px; } }
form{ display:flex; flex-direction:column; gap:12px; }
label{ font-size:12px; color:var(--dim); text-transform:uppercase; letter-spacing:.1em; display:flex; flex-direction:column; gap:6px; }
label.inline{ flex-direction:row; align-items:center; gap:8px; text-transform:none; letter-spacing:0; font-size:14px; color:var(--text); }
input[type=email],input[type=password],input[type=text],input[type=date]{ background:var(--surface-2); border:1px solid var(--line); color:var(--text); padding:12px; font-size:16px; border-radius:0; }
input:focus{ border-color:var(--orange); outline:none; }
select{ background:var(--surface-2); border:1px solid var(--line); color:var(--text); padding:12px; font-size:16px; border-radius:0; }
select:focus{ border-color:var(--orange); outline:none; }
.tabs{ display:flex; gap:4px; margin-bottom:16px; }
.tabs button{ flex:1; background:transparent; border:1px solid var(--line); color:var(--dim); padding:10px; font:700 15px var(--disp); letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.tabs button[aria-selected=true]{ background:linear-gradient(180deg,#ff6d1c,#e04e00); border-color:#d94800; color:#111; box-shadow:0 2px 10px rgba(253,90,1,.3), inset 0 1px 0 rgba(255,255,255,.3); }
.msg{ padding:10px 12px; border:1px solid var(--line); font-size:14px; }
.msg.ok{ border-color:var(--green); background:rgba(34,197,94,.08); } .msg.err{ border-color:var(--red); background:rgba(239,68,68,.08); }
.price{ font:900 56px/1 var(--disp); letter-spacing:.01em; text-shadow:0 6px 22px rgba(0,0,0,.5); } .price small{ font:600 18px var(--disp); color:var(--dim); }
ul.checks{ list-style:none; padding:0; margin:14px 0; } ul.checks li{ padding:5px 0 5px 24px; position:relative; } ul.checks li::before{ content:"✓"; color:var(--green); position:absolute; left:0; }
.table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--line); }
table{ width:100%; border-collapse:collapse; font-size:13px; }
th{ text-align:left; font:600 12px var(--disp); letter-spacing:.1em; text-transform:uppercase; color:var(--dim); padding:10px; border-bottom:1px solid var(--line); white-space:nowrap; background:var(--surface); }
td{ padding:10px; border-bottom:1px solid var(--line); white-space:nowrap; }
.pill{ display:inline-block; padding:2px 8px; font:700 12px var(--disp); letter-spacing:.08em; text-transform:uppercase; border:1px solid var(--line); }
.pill.g{ color:var(--green); border-color:#1f5a35; } .pill.r{ color:var(--red); border-color:#6b2424; } .pill.o{ color:var(--orange); border-color:#7a3a10; }
.kv{ display:grid; grid-template-columns:160px 1fr; gap:8px 16px; } @media (max-width:520px){ .kv{ grid-template-columns:1fr; } .kv dt{ margin-top:6px; } }
.kv dt{ color:var(--dim); font-size:13px; } .kv dd{ margin:0; }
footer{ border-top:1px solid var(--line); padding:20px; text-align:center; color:var(--dim); font-size:12px; }

/* ---- Cinematic homepage (matches photoreal game art) ---- */
.hero-cine{ position:relative; overflow:hidden; border-bottom:2px solid var(--orange); background:#07090d; }
.hero-cine img.bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 30%; }
.hero-cine .shade{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(7,9,13,.78), rgba(7,9,13,.30) 42%, rgba(7,9,13,.94)), linear-gradient(90deg, rgba(7,9,13,.88), rgba(7,9,13,.12) 72%); }
.hero-cine-in{ position:relative; max-width:960px; margin:0 auto; padding:76px 20px 68px; }
.eyebrow{ font:700 13px var(--disp); letter-spacing:.30em; text-transform:uppercase; color:var(--amber); margin-bottom:14px; text-shadow:0 2px 10px rgba(0,0,0,.9); }
.hero-cine h1{ font-size:68px; text-shadow:0 6px 28px rgba(0,0,0,.85); margin-bottom:14px; }
.hero-cine .lead{ text-shadow:0 2px 12px rgba(0,0,0,.9); }
.sec-h{ font:800 24px var(--disp); letter-spacing:.14em; text-transform:uppercase; color:var(--text); margin:34px 0 14px; display:flex; align-items:center; gap:12px; }
.sec-h::after{ content:""; flex:1; height:1px; background:linear-gradient(90deg, var(--line), transparent); }
.trade-cards{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:14px; }
.tcard{ position:relative; display:flex; min-height:230px; overflow:hidden; border:1px solid #37455a; border-top:3px solid var(--orange); text-decoration:none; color:var(--text); box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 30px rgba(0,0,0,.45); }
.tcard img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.tcard:hover img{ transform:scale(1.04); }
.tcard .shade{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(7,9,13,.05) 30%, rgba(7,9,13,.92)); }
.tcard .tx{ position:relative; margin-top:auto; padding:18px; width:100%; }
.tcard .tk{ font:900 26px var(--disp); letter-spacing:.04em; text-transform:uppercase; color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.9); }
.tcard .ts{ font:700 12px var(--disp); letter-spacing:.24em; text-transform:uppercase; color:var(--amber); margin:2px 0 8px; }
.tcard p{ margin:0; font-size:13px; color:#c9d3de; text-shadow:0 2px 8px rgba(0,0,0,.9); }
.ref-gold{ border-top:3px solid var(--amber); background:linear-gradient(180deg, rgba(46,34,14,.55), rgba(19,25,36,.94)), radial-gradient(600px 200px at 80% 0%, rgba(255,176,46,.12), transparent 70%); }
.ref-gold h2{ color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.6); }
@media (max-width:720px){ .hero-cine-in{ padding:56px 18px 48px; } .hero-cine h1{ font-size:44px; } .eyebrow{ letter-spacing:.2em; } }

/* Sticky trial bar — mobile: start the free work order without scrolling */
.trialbar{ position:fixed; left:0; right:0; bottom:0; z-index:50; display:none;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  background:rgba(16,21,29,.97); border-top:2px solid var(--orange);
  box-shadow:0 -4px 18px rgba(0,0,0,.5); }
@media (max-width:720px){ .trialbar.show{ display:block; } body.has-trialbar{ padding-bottom:84px; } }
