/*
Theme Name: Vexus Elementor
Theme URI: https://metodovexus.com.br
Author: Método VEXUS
Author URI: https://metodovexus.com.br
Description: Tema premium Elementor Pro do Método VEXUS — landing nativa em containers, widgets editáveis, templates de header/footer e mídia importada para a Biblioteca do WordPress.
Version: 4.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: vexus
*/

:root {
  --vexus-bg: #050505;
  --vexus-graphite: #111114;
  --vexus-card: #0d0d10;
  --vexus-primary: #0081f4;
  --vexus-electric: #00a3ff;
  --vexus-white: #ffffff;
  --vexus-muted: rgba(255, 255, 255, 0.68);
  --vexus-border: rgba(0, 129, 244, 0.22);
  --vexus-gradient: linear-gradient(135deg, #0081f4, #00a3ff);
  --vexus-glow: 0 0 70px -18px rgba(0, 163, 255, 0.72);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  background: var(--vexus-bg);
  color: var(--vexus-white);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
img { max-width: 100%; height: auto; }
a { color: inherit; }
.site-main { min-height: 50vh; }
.vexus-elementor-main { width: 100%; overflow: hidden; }
.elementor-page .site-main { min-height: 0; }

.vexus-empty-home {
  max-width: 760px;
  margin: 120px auto;
  padding: 48px 24px;
  text-align: center;
}
.vexus-empty-home h1 {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 48px;
  margin: 0 0 16px;
}
.vexus-empty-home p { color: var(--vexus-muted); }

.vexus-fallback-header,
.vexus-fallback-footer {
  position: relative;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: 1240px;
  margin: 0 auto;
  padding: 20px;
}
.vexus-fallback-header img,
.vexus-fallback-footer img { width: 170px; height: auto; display: block; }
.vexus-fallback-nav ul { display: flex; gap: 20px; list-style: none; margin: 0; padding: 0; }
.vexus-fallback-nav a { color: var(--vexus-muted); text-decoration: none; font-size: 13px; }
.vexus-fallback-footer {
  justify-content: center;
  flex-direction: column;
  border-top: 1px solid var(--vexus-border);
}
.vexus-fallback-footer p { color: var(--vexus-muted); margin: 0; }

.entry-content,
.is-wordpress-page {
  max-width: 960px;
  margin: 80px auto;
  padding: 0 24px;
  color: var(--vexus-muted);
}
.entry-content h1,
.entry-content h2,
.entry-content h3 { color: var(--vexus-white); font-family: "Playfair Display", Georgia, serif; }
.entry-content a { color: var(--vexus-electric); }

.vexus-wp-page { max-width: 1180px; margin: 0 auto; padding: 140px 24px 90px; }
.vexus-wp-card { margin-bottom: 28px; padding: 34px; border: 1px solid var(--vexus-border); border-radius: 20px; background: linear-gradient(180deg, rgba(20,20,26,.92), rgba(8,8,12,.96)); box-shadow: 0 28px 76px -38px rgba(0,0,0,.95); }
.vexus-wp-header { margin-bottom: 34px; }
.vexus-wp-header h1, .vexus-wp-card h1, .vexus-wp-card h2, .vexus-wp-card h3, .vexus-wp-page > h1 { margin: 0 0 16px; font-family: "Playfair Display", Georgia, serif; color: var(--vexus-white); line-height: 1.08; }
.vexus-wp-header h1, .vexus-wp-page > h1 { font-size: clamp(42px, 6vw, 78px); background: linear-gradient(135deg, #fff 0%, #a8c8ff 58%, #00a3ff 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.vexus-wp-card p, .vexus-wp-page p { color: var(--vexus-muted); }
.vexus-wp-card a { color: inherit; text-decoration: none; }
.vexus-wp-card a:hover { color: var(--vexus-electric); }
.vexus-wp-kicker { margin-bottom: 10px; color: var(--vexus-primary); font-size: 11px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; }
.vexus-center { text-align: center; }
.vexus-wp-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.vexus-card-image { display: block; margin-bottom: 18px; border-radius: 14px; overflow: hidden; }
.vexus-card-image img, .vexus-featured-image img { width: 100%; height: auto; display: block; border-radius: 14px; }
.vexus-featured-image { margin-bottom: 32px; }
.vexus-pagination, .vexus-post-nav { display: flex; justify-content: center; gap: 12px; margin-top: 42px; }
.vexus-post-nav { justify-content: space-between; }
.page-numbers, .vexus-wp-button, .comment-form input[type="submit"], .search-form input[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 11px 18px; border: 1px solid rgba(0,163,255,.58); border-radius: 999px; color: var(--vexus-white); background: var(--vexus-gradient); font-weight: 800; text-decoration: none; }
.comment-list { list-style: none; padding: 0; }
.comment-form input:not([type="submit"]), .comment-form textarea, .search-form input[type="search"] { width: 100%; padding: 12px 14px; border: 1px solid var(--vexus-border); border-radius: 12px; background: rgba(5,5,8,.7); color: var(--vexus-white); }
.vexus-search-form { max-width: 520px; margin: 24px auto 0; }

@media (max-width: 760px) {
  .vexus-fallback-header { flex-direction: column; align-items: flex-start; }
  .vexus-fallback-nav ul { flex-wrap: wrap; }
  .vexus-wp-grid { grid-template-columns: 1fr; }
  .vexus-wp-page { padding-top: 90px; }
}