/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.7.1753694167
Updated: 2025-07-28 11:16:07

*/

/* ===============================
   FONTS (assegura’t que Google Fonts es carreguen al <head>)
================================ */
body {
  font-family: 'Open Sans', sans-serif !important;
  color: #222;
  background-color: #fff;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600;
  line-height: 1.2;
}

/* ===============================
   SISTEMA DE COLORS NEUROVOZ
================================ */
:root {
  --neuroz-blue: #1F4FD8;
  --neuroz-blue-hover: #163ca6;
  --neuroz-blue-soft: rgba(31, 79, 216, 0.08);
}

/* ===============================
   HERO (text llegible sobre overlay blau)
================================ */

/* Overlay del hero (gradient blau fi) */
.home .elementor-background-overlay {
  background: linear-gradient(
    135deg,
    rgba(31,79,216,0.95),
    rgba(31,79,216,0.75)
  ) !important;
}

/* ===============================
   ENLLAÇOS
================================ */
a {
  color: var(--neuroz-blue);
  text-decoration: none;
  transition: color .2s ease;
}
a:hover {
  color: var(--neuroz-blue-hover);
  text-decoration: underline;
}

/* ===============================
   BOTONS (base)
================================ */
.elementor-button,
button,
input[type="submit"] {
  border-radius: 10px;
  transition: all .2s ease;
}

/* Botó principal */
.btn-neuroz-primary .elementor-button {
  background-color: #FFFFFF !important;
  color: var(--neuroz-blue) !important;
  border: 2px solid #FFFFFF !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.25);
}
.btn-neuroz-primary .elementor-button:hover {
  background-color: transparent !important;
  color: #FFFFFF !important;
  border-color: #FFFFFF !important;
  box-shadow: none;
}

/* Botó secundari */
.btn-neuroz-secondary .elementor-button {
  background-color: transparent !important;
  color: #FFFFFF !important;
  border: 2px solid rgba(255,255,255,0.9) !important;
}
.btn-neuroz-secondary .elementor-button:hover {
  background-color: rgba(255,255,255,0.15) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

/* ===============================
   MENÚ HEADER (Astra + Elementor)
================================ */
.elementor-nav-menu .elementor-item {
  color: #FFFFFF !important;
  font-weight: 500;
}
.elementor-nav-menu .elementor-item:hover {
  color: #E9EEFF !important;
}

/* Dropdown (fora verd, blau Neurovoz) */
.elementor-nav-menu ul.sub-menu {
  background-color: rgba(31, 79, 216, 0.95) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  padding: 6px 0;
}
.elementor-nav-menu ul.sub-menu > li {
  background: transparent !important;
}
.elementor-nav-menu ul.sub-menu > li > a {
  color: #FFFFFF !important;
  padding: 10px 16px;
  display: block;
}
.elementor-nav-menu ul.sub-menu > li > a:hover {
  background-color: rgba(255,255,255,0.12) !important;
}

/* Header sticky (quan baixes scroll, fons clar) */
.elementor-sticky--active .elementor-nav-menu .elementor-item {
  color: var(--neuroz-blue) !important;
}
.elementor-sticky--active .elementor-nav-menu .elementor-item:hover {
  color: var(--neuroz-blue-hover) !important;
}

/* ===============================
   ICONES
================================ */
.elementor-icon,
.elementor-icon svg {
  color: var(--neuroz-blue);
  fill: var(--neuroz-blue);
}

/* ===============================
   FORMULARIS
================================ */
input, textarea, select {
  border-radius: 6px;
}
input:focus,
textarea:focus,
select:focus {
  border-color: var(--neuroz-blue);
  box-shadow: 0 0 0 2px var(--neuroz-blue-soft);
  outline: none;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  accent-color: var(--neuroz-blue);
}


/* MENÚ SOBRE EL HERO (fons blau) */
.home .elementor-nav-menu .elementor-item,
.home .ast-primary-header-bar .menu-link,
.home header a {
  color: #FFFFFF !important;
}

.home .elementor-nav-menu .elementor-item:hover,
.home .ast-primary-header-bar .menu-link:hover,
.home header a:hover {
  color: #E9EEFF !important;
}

/* HEADER STICKY (quan baixes scroll i el fons és clar) */
.elementor-sticky--active .elementor-nav-menu .elementor-item,
.elementor-sticky--active .ast-primary-header-bar .menu-link,
.elementor-sticky--active header a {
  color: #1F4FD8 !important;
}

.elementor-sticky--active .elementor-nav-menu .elementor-item:hover,
.elementor-sticky--active .ast-primary-header-bar .menu-link:hover,
.elementor-sticky--active header a:hover {
  color: #163ca6 !important;
}


/* HERO ALEXANDRA: forçar títols en blanc */
.hero-alexandra h1,
.hero-alexandra h2,
.hero-alexandra h3,
.hero-alexandra .elementor-heading-title,
.hero-alexandra p {
  color: #FFFFFF !important;
}




/* Overlay hero Alexandra amb gradient */
.hero-alexandra .elementor-background-overlay {
  background: linear-gradient(
    90deg,
    rgba(31,79,216,0.95) 0%,
    rgba(31,79,216,0.85) 45%,
    rgba(31,79,216,0.70) 100%
  ) !important;
}

/* Padding del hero */
.hero-alexandra {
  padding-top: 110px !important;
  padding-bottom: 110px !important;
}


/* Frase inferior del hero */
.hero-alexandra .frase-hero {
  font-size: 0.95rem;
  opacity: 0.85;
  font-style: italic;
}


/* =========================
   HERO ALEXANDRA (ajustos finals)
   Requereix classe: hero-alexandra
   I a la frase: frase-hero
========================= */

/* Textos en blanc dins el hero */
.hero-alexandra h1,
.hero-alexandra h2,
.hero-alexandra h3,
.hero-alexandra .elementor-heading-title,
.hero-alexandra p,
.hero-alexandra .elementor-widget-text-editor {
  color: #FFFFFF !important;
}

/* Overlay amb gradient (més profunditat) */
.hero-alexandra .elementor-background-overlay {
  background: linear-gradient(
    90deg,
    rgba(31,79,216,0.95) 0%,
    rgba(31,79,216,0.85) 45%,
    rgba(31,79,216,0.70) 100%
  ) !important;
}




/* Aire vertical (respira millor) */
.hero-alexandra {
  padding-top: 110px !important;
  padding-bottom: 110px !important;
}

/* Micro-sombra per llegibilitat (efecte premium) */
.hero-alexandra h1,
.hero-alexandra h2,
.hero-alexandra p {
  text-shadow: 0 2px 12px rgba(0,0,0,0.25);
}

/* Nom més “brand” */
.hero-alexandra h1,
.hero-alexandra .elementor-heading-title {
  letter-spacing: 0.06em;
}

/* Frase final més fina i separada */
.hero-alexandra .frase-hero {
  font-size: 0.95rem;
  opacity: 0.85;
  font-style: italic;
  margin-top: 24px;
}


.hero-alexandra .fundadora {
  font-size: 1.15rem;
  letter-spacing: 0.03em;
  opacity: 0.95;
}




/* Forçar menú blanc sobre hero */
.hero-alexandra .elementor-nav-menu--main .elementor-item,
.hero-alexandra .elementor-nav-menu .elementor-item {
  color: #FFFFFF !important;
}

.hero-alexandra .elementor-nav-menu--main .elementor-item:hover,
.hero-alexandra .elementor-nav-menu .elementor-item:hover {
  color: rgba(255,255,255,0.8) !important;
}


.hero-alexandra .frase-final {
  margin-top: 24px;
  opacity: 0.9;
}



/* Menú blanc sobre el hero d'Alexandra */
.hero-alexandra .elementor-nav-menu--main .elementor-item,
.hero-alexandra .elementor-nav-menu .elementor-item {
  color: #FFFFFF !important;
}

.hero-alexandra .elementor-nav-menu--main .elementor-item:hover,
.hero-alexandra .elementor-nav-menu .elementor-item:hover {
  color: rgba(255,255,255,0.85) !important;
}


/* H1 en blanc dins de qualsevol hero */
.hero-neurovoz h1,
.hero-neurovoz .elementor-heading-title {
  color: #ffffff !important;
}

/* Subtítols del hero */
.hero-neurovoz .elementor-widget-text-editor,
.hero-neurovoz p {
  color: rgba(255,255,255,0.9) !important;
}


h1, .elementor-heading-title {
  color: var(--neuroz-blue) !important;
}


.hero-neurovoz h1 {
  text-shadow: 0 4px 20px rgba(0,0,0,0.25);
}


.hero-neurovoz h1 {
  text-shadow: 0 6px 24px rgba(0,0,0,0.35);
}


/* Només estètica del botó (no toca files ni columnes) */
/* Botó principal blau (variant) */
.btn-neuroz-primary-blue .elementor-button {
  background-color: var(--neuroz-blue) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--neuroz-blue) !important;
  box-shadow: 0 10px 24px rgba(47, 91, 255, 0.35);
}

.btn-neuroz-primary-blue .elementor-button:hover {
  background-color: transparent !important;
  color: var(--neuroz-blue) !important;
  border-color: var(--neuroz-blue) !important;
  box-shadow: none;
}

.overlay-text-neurovoz {
  position: relative;
  z-index: 2;
  padding: 80px 80px !important;
}

.overlay-text-neurovoz::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    270deg,
    rgba(255,255,255,0.95) 0%,
    rgba(255,255,255,0.9) 55%,
    rgba(255,255,255,0.6) 75%,
    rgba(255,255,255,0.0) 100%
  );
  z-index: -1;
  border-radius: 16px;
}


.titulo_blog.elementor-widget.elementor-widget-heading h2 {
    color: white !important;
}



.neurovoz-single {
    padding: 60px 20px;
    background: #f7f8fc;
}

.neurovoz-single .container {
    max-width: 800px;
    margin: 0 auto;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

.neurovoz-single h1 {
    color: #1f3fa3;
    margin-bottom: 20px;
}

.neurovoz-single .contenido {
    margin-bottom: 30px;
    line-height: 1.6;
}

.neurovoz-single .email a {
    display: inline-block;
    padding: 12px 20px;
    background: #1f3fa3;
    color: #fff;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 500;
}

.neurovoz-single .email a:hover {
    background: #162d7a;
}


.equipo-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}

.equipo-item {
    background: #fff;
    padding: 25px;
    border-radius: 14px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
}

.equipo-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.equipo-item h3 {
    color: #1f3fa3;
    font-size: 20px;
    margin-bottom: 10px;
}

.equipo-item p {
    font-size: 14px;
    color: #555;
}

.email-btn {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 15px;
    background: #1f3fa3;
    color: #fff;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
}

.email-btn:hover {
    background: #162d7a;
}


@media (max-width: 1024px) {
    .equipo-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .equipo-grid {
        grid-template-columns: 1fr;
    }
}

.menu-link {
  color: white !important;
}


/* En móvil más pequeña */
@media (max-width: 768px) {
 h2.elementor-heading-title.elementor-size-default {
    font-size: 3.5em !important;
}


h2.elementor-heading-title.elementor-size-default
{
font-size: 2em !important;
}




}
@media (max-width: 480px) {
  .hero-alexandra .frase-hero {
    font-size: 0.75rem;
  }
}

@media (max-width: 921px) {
    .ast-builder-menu-mobile .main-navigation .main-header-menu, .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-link, .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu {
        background-color: #7FA3FF!important;
    }
}


ul.main-header-menu.ast-nav-menu.ast-flex.submenu-with-border.astra-menu-animation-fade.stack-on-mobile li a {
    color: white !important;
}