:root{
  --bg: #ffffff;
  --purple: #6B46FF; /* morado principal */
  --purple-600: #5a38d6;
  --blue: #1E90FF;   /* azul de acento */
  --muted: #e9eefb;
  --text: #111827;
  --card: #f8f9ff;
  --radius: 14px;
  --shadow: 0 6px 18px rgba(13, 32, 80, 0.08);
}

/* Reset básico */
*{box-sizing: border-box;margin:0;padding:0}
html,body{height:100%;font-family: 'Poppins', sans-serif;background:var(--bg);color:var(--text);}

/* NAV */
nav{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 20px;margin:18px;border-radius:18px;background:linear-gradient(90deg,var(--muted), #f2f6ff);
  box-shadow:var(--shadow);
}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:100px;height:100px;object-fit:contain;border-radius:10px}
.brand h1{font-size:1.05rem;color:var(--purple);letter-spacing:0.4px}

/* Nav links */
.nav-links{display:flex;gap:10px;align-items:center}
.nav-links a{
  display:inline-block;padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:600;font-size:0.94rem;color:var(--purple-600);
  background:transparent;transition:transform .18s ease, background .18s ease, color .18s ease;
}
.nav-links a:hover{transform:translateY(-3px);background:rgba(107,70,255,0.08)}

/* Call-to-action primary */
.cta{background:linear-gradient(90deg,var(--purple),var(--blue));color:white;padding:10px 16px;border-radius:999px;box-shadow:0 6px 18px rgba(27, 113, 255, 0.12)}

/* Hamburger for mobile */
.hamburger{display:none;background:transparent;border:0;padding:8px;border-radius:8px}

/* Main layout */
.container{max-width:1200px;margin:18px auto;padding:0 18px}
.grid{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}

/* Hero image */
.hero{background:var(--card);padding:14px;border-radius:var(--radius);box-shadow:var(--shadow);}
.hero img{width:100%;height:auto;display:block;border-radius:12px}
.hero-title{color:var(--purple);margin-bottom:6px;font-size:1.3rem}

/* Aside */
aside{background:linear-gradient(180deg, rgba(107,70,255,0.06), rgba(30,144,255,0.03));padding:18px;border-radius:14px;border:1px solid rgba(107,70,255,0.06)}
aside h2{color:var(--purple);font-size:1.1rem;margin-bottom:8px}
aside p{font-size:0.95rem;line-height:1.45;margin-bottom:12px}
.aside-images{display:flex;flex-direction:column;gap:12px}
.aside-images img{width:100%;max-width:200px;border-radius:8px;object-fit:cover}

/* Content text styles */
.card{background:white;padding:16px;border-radius:12px;border:1px solid rgba(16,24,40,0.03)}
.muted{color:#475569;font-size:0.95rem}

/* Footer small */
footer{margin:28px 18px 60px;text-align:center;color:#64748b}

/* Responsive adjustments */
@media (max-width: 900px){
  .grid{grid-template-columns:1fr 300px}
}
@media (max-width: 720px){
  .nav-links{display:none}
  .hamburger{display:inline-flex}
  .grid{grid-template-columns:1fr;}
  aside{order:2}
  .hero{order:1}
}

/* Mobile menu panel */
.mobile-panel{display:none;position:fixed;inset:72px 16px auto 16px;background:white;padding:12px;border-radius:12px;box-shadow:var(--shadow);z-index:70}
.mobile-panel.show{display:block}
.mobile-panel a{display:block;padding:12px 10px;border-radius:10px;color:var(--purple-600);text-decoration:none}
.mobile-panel a:hover{background:rgba(30,144,255,0.04)}

/* Small helpers */
.small{font-size:0.88rem;color:#475569}
.alt-color{color:var(--blue)}
