:root { --bg:#06101e; --panel:#101d31; --panel2:#14243c; --line:rgba(154,185,230,.2); --text:#f6f8ff; --muted:#abc0dc; --cyan:#58ddcf; --gold:#ffc566; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter,"Segoe UI",Arial,sans-serif; color:var(--text); background:radial-gradient(circle at 20% 0,rgba(55,128,220,.22),transparent 38%),var(--bg); }
a { color:inherit; text-decoration:none; }
button, .primary, .secondary { font:inherit; font-weight:800; border-radius:14px; border:1px solid var(--line); padding:13px 18px; cursor:pointer; }
button, .secondary { background:var(--panel2); color:var(--text); }
.primary { display:inline-block; background:linear-gradient(110deg,var(--cyan),#54aeff); color:#06131b; border:0; }
.hero { min-height:88vh; padding:24px clamp(20px,5vw,72px) 54px; }
nav { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:56px; }
nav strong { font-size:22px; }
nav div { display:flex; gap:16px; align-items:center; color:var(--muted); }
.hero-grid, .split { display:grid; grid-template-columns:1fr 1fr; gap:42px; align-items:center; }
.hero h1 { font-size:clamp(42px,6vw,78px); line-height:.98; margin:0 0 22px; }
.lead { color:var(--muted); font-size:20px; line-height:1.55; max-width:760px; }
.kicker { color:var(--cyan); text-transform:uppercase; letter-spacing:.18em; font-size:12px; font-weight:900; margin:0 0 10px; }
.hero img, figure img { width:100%; border-radius:28px; border:1px solid var(--line); box-shadow:0 30px 80px rgba(0,0,0,.45); }
.hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:28px; }
.section { padding:76px clamp(20px,5vw,72px); border-top:1px solid var(--line); }
.section h2 { font-size:clamp(30px,4vw,52px); margin:0 0 22px; }
.cards, .pricing, .gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
article, .catalog-preview, .resource-box, .download, figure { background:linear-gradient(155deg,rgba(20,36,60,.94),rgba(8,17,32,.94)); border:1px solid var(--line); border-radius:24px; padding:24px; }
article p, .split p, .download p, figcaption { color:var(--muted); line-height:1.6; }
.gallery figure { margin:0; }
.gallery img { aspect-ratio:16/9; object-fit:cover; }
.pricing strong { display:block; color:var(--gold); font-size:34px; margin:8px 0 14px; }
.pricing .featured { border-color:rgba(88,221,207,.55); box-shadow:0 0 40px rgba(88,221,207,.12); }
.status { color:var(--gold); min-height:22px; }
dialog { border:0; border-radius:26px; padding:0; background:transparent; color:var(--text); }
dialog::backdrop { background:rgba(0,0,0,.72); backdrop-filter:blur(8px); }
.auth-card { width:min(440px,calc(100vw - 32px)); background:#0b1729; border:1px solid var(--line); border-radius:26px; padding:28px; position:relative; }
.auth-card label { display:flex; flex-direction:column; gap:8px; color:var(--muted); margin-bottom:14px; font-weight:700; }
input { background:#071120; color:var(--text); border:1px solid var(--line); border-radius:12px; padding:13px; font:inherit; }
.close { position:absolute; right:16px; top:14px; padding:7px 10px; }
.auth-actions { display:flex; gap:10px; }
@media (max-width: 980px) { nav, nav div, .hero-grid, .split, .cards, .pricing, .gallery { grid-template-columns:1fr; flex-direction:column; align-items:flex-start; } }
