
/* =============================================================
   ALEJANDRA RASTRILLA · ELEMENTOR V3
   Scope: only sections carrying class .arx-v3
   ============================================================= */

:root{
  --arx-green:#0E6B3D;
  --arx-green-dark:#09532F;
  --arx-green-pale:#EDF6F0;
  --arx-purple:#7137A5;
  --arx-purple-dark:#4F2477;
  --arx-purple-pale:#F4EEF9;
  --arx-black:#111111;
  --arx-ink:#2d2d2d;
  --arx-grey:#666666;
  --arx-line:#E8E8E8;
  --arx-white:#FFFFFF;
  --arx-soft:#F8F8F7;
}

.arx-v3{
  font-family:Arial,Helvetica,sans-serif;
  color:var(--arx-ink);
}
.arx-v3 > .elementor-container{
  max-width:1180px;
}
.arx-v3 .elementor-widget-heading .elementor-heading-title{
  text-transform:none;
  letter-spacing:-.035em;
}
.arx-v3 h1.elementor-heading-title,
.arx-v3 h2.elementor-heading-title{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--arx-black);
}
.arx-v3 h1.elementor-heading-title{
  font-size:clamp(54px,6.1vw,84px);
  line-height:.94;
  letter-spacing:-.055em;
}
.arx-v3 h2.elementor-heading-title{
  font-size:clamp(42px,4.5vw,64px);
  line-height:1;
  letter-spacing:-.045em;
}
.arx-v3 h3.elementor-heading-title{
  font-size:29px;
  line-height:1.1;
}
.arx-v3 .elementor-widget-text-editor{
  line-height:1.6;
}
.arx-v3 .elementor-button{
  border-radius:11px;
  font-weight:800;
  padding:13px 18px;
}

/* Navigation */
.arx-v3-nav{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--arx-line);
  box-shadow:0 6px 20px rgba(0,0,0,.035);
}
.arx-v3-nav > .elementor-container{
  min-height:68px;
  align-items:center;
}
.arx-v3-nav .elementor-widget-heading{margin-bottom:0}
.arx-v3-nav .elementor-widget-text-editor{margin-bottom:0}

/* HERO: the gradient that was getting lost in import */
.arx-v3-hero{
  background:
    radial-gradient(circle at 94% 8%, rgba(113,55,165,.16), transparent 27%),
    radial-gradient(circle at 4% 88%, rgba(14,107,61,.12), transparent 27%),
    linear-gradient(180deg,#FFFFFF 0%,#FCFCFC 100%)!important;
  padding-top:68px!important;
  padding-bottom:72px!important;
}
.arx-v3-hero > .elementor-container{
  align-items:center;
  min-height:620px;
}
.arx-v3-hero > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap{
  padding-right:38px;
}
.arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap{
  background:linear-gradient(160deg,var(--arx-purple-pale) 0%,#FAF8FC 48%,var(--arx-green-pale) 100%);
  padding:22px!important;
  border-radius:28px;
  box-shadow:0 20px 45px rgba(70,38,91,.08);
}
.arx-v3-hero .elementor-widget-image img{
  border-radius:190px 190px 22px 22px;
  width:100%;
  max-height:460px;
  object-fit:cover;
}
.arx-v3-hero .elementor-widget-button{
  display:inline-block;
  margin-right:8px;
}
.arx-v3-hero .elementor-widget-text-editor:first-child{
  margin-bottom:14px;
}
.arx-v3-hero .elementor-widget-text-editor:first-child p{
  display:inline-block;
  background:var(--arx-green-pale);
  border:1px solid #dcecdf;
  padding:7px 11px;
  border-radius:999px;
}

/* About */
.arx-v3-about{
  background:#fff!important;
  padding-top:92px!important;
  padding-bottom:92px!important;
}
.arx-v3-about > .elementor-container{
  align-items:flex-start;
}
.arx-v3-about > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap{
  padding-right:38px;
}
.arx-v3-about blockquote{
  margin:28px 0!important;
  border-left:6px solid var(--arx-purple)!important;
  background:linear-gradient(135deg,var(--arx-purple-pale),#fff 58%,var(--arx-green-pale))!important;
  border-radius:18px!important;
  padding:22px 24px!important;
}

/* Work */
.arx-v3-work-head,
.arx-v3-work-row{
  background:var(--arx-soft)!important;
}
.arx-v3-work-head{padding-top:80px!important;padding-bottom:18px!important}
.arx-v3-work-row{padding-top:8px!important;padding-bottom:8px!important}
.arx-v3-work-row-last{padding-bottom:78px!important}
.arx-v3-work-row > .elementor-container{
  gap:16px;
}
.arx-v3-work-row > .elementor-container > .elementor-column > .elementor-widget-wrap{
  background:#fff;
  border:1px solid var(--arx-line);
  border-radius:20px;
  padding:27px!important;
  min-height:280px;
  box-shadow:0 10px 28px rgba(0,0,0,.035);
}
.arx-v3-work-row:first-of-type > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap{
  background:linear-gradient(145deg,#fff,var(--arx-green-pale));
}
.arx-v3-work-row:first-of-type > .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap{
  background:linear-gradient(145deg,#fff,var(--arx-purple-pale));
}

/* Research */
.arx-v3-research{
  background:
    radial-gradient(circle at 85% 15%,rgba(113,55,165,.20),transparent 30%),
    linear-gradient(135deg,#111111 0%,#171717 100%)!important;
  padding-top:90px!important;
  padding-bottom:90px!important;
}
.arx-v3-research h2.elementor-heading-title{color:#fff!important}
.arx-v3-research .elementor-widget-text-editor{color:#c9c9c9}
.arx-v3-research > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap{
  padding-right:38px;
}

/* Audiovisual */
.arx-v3-audio-head{padding-top:88px!important;padding-bottom:24px!important;background:#fff!important}
.arx-v3-audio-row{padding-top:10px!important;padding-bottom:10px!important;background:#fff!important}
.arx-v3-audio-row > .elementor-container{
  border-bottom:1px solid var(--arx-line);
  padding-bottom:16px;
}
.arx-v3-audio-row h4.elementor-heading-title{color:var(--arx-purple)}
.arx-v3-audio-end{background:#fff!important;padding-bottom:55px!important}

/* Trajectory */
.arx-v3-traj-head,
.arx-v3-traj-row{
  background:
    radial-gradient(circle at 96% 15%,rgba(113,55,165,.10),transparent 30%),
    var(--arx-purple-pale)!important;
}
.arx-v3-traj-head{padding-top:78px!important;padding-bottom:20px!important}
.arx-v3-traj-row{padding-top:8px!important;padding-bottom:78px!important}
.arx-v3-traj-row > .elementor-container{
  gap:14px;
}
.arx-v3-traj-row > .elementor-container > .elementor-column > .elementor-widget-wrap{
  background:#fff;
  border-radius:18px;
  padding:24px!important;
  min-height:225px;
  box-shadow:0 10px 25px rgba(67,34,84,.05);
}
.arx-v3-traj-row > .elementor-container > .elementor-column:nth-child(1) > .elementor-widget-wrap,
.arx-v3-traj-row > .elementor-container > .elementor-column:nth-child(3) > .elementor-widget-wrap{
  border-top:5px solid var(--arx-purple);
}
.arx-v3-traj-row > .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap{
  border-top:5px solid var(--arx-green);
}

/* Resources */
.arx-v3-resource-head,
.arx-v3-resource-row{
  background:
    radial-gradient(circle at 5% 100%,rgba(14,107,61,.12),transparent 28%),
    var(--arx-green-pale)!important;
}
.arx-v3-resource-head{padding-top:78px!important;padding-bottom:20px!important}
.arx-v3-resource-row{padding-top:8px!important;padding-bottom:78px!important}
.arx-v3-resource-row > .elementor-container{
  background:#fff;
  border:1px solid #dbe8de;
  border-radius:24px;
  padding:31px;
  box-shadow:0 15px 35px rgba(21,66,39,.06);
}
.arx-v3-resource-row > .elementor-container > .elementor-column:nth-child(2){
  border-left:1px solid var(--arx-line);
}

/* Contact gradient */
.arx-v3-contact{
  background:#fff!important;
  padding-top:32px!important;
  padding-bottom:70px!important;
}
.arx-v3-contact > .elementor-container{
  background:linear-gradient(125deg,var(--arx-green-dark) 0%,var(--arx-green) 52%,var(--arx-purple-dark) 100%)!important;
  border-radius:28px;
  padding:46px 44px;
}
.arx-v3-contact h2.elementor-heading-title{color:#fff!important}
.arx-v3-contact .elementor-widget-text-editor{color:#e5eee8}

/* Footer */
.arx-v3-footer{
  background:#fff!important;
  border-top:1px solid var(--arx-line);
  padding-top:20px!important;
  padding-bottom:20px!important;
}
.arx-v3-footer .elementor-widget-text-editor{margin-bottom:0}

/* Responsive */
@media(max-width:1024px){
  .arx-v3 h1.elementor-heading-title{font-size:56px}
  .arx-v3 h2.elementor-heading-title{font-size:44px}
}
@media(max-width:767px){
  .arx-v3 > .elementor-container{max-width:100%}
  .arx-v3 h1.elementor-heading-title{font-size:44px;line-height:.98}
  .arx-v3 h2.elementor-heading-title{font-size:38px}
  .arx-v3-nav > .elementor-container > .elementor-column:nth-child(2){display:none}
  .arx-v3-hero{padding-top:42px!important;padding-bottom:48px!important}
  .arx-v3-hero > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap,
  .arx-v3-about > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap,
  .arx-v3-research > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap{
    padding-right:0!important;
  }
  .arx-v3-work-row > .elementor-container,
  .arx-v3-traj-row > .elementor-container{gap:10px}
  .arx-v3-resource-row > .elementor-container{padding:22px}
  .arx-v3-resource-row > .elementor-container > .elementor-column:nth-child(2){
    border-left:0;
    border-top:1px solid var(--arx-line);
    padding-top:20px;
  }
  .arx-v3-contact > .elementor-container{padding:34px 23px}
}


/* =============================================================
   V3.1 · FIX HERO / COLUMNA DERECHA
   Corrige instalaciones donde Elementor comprime la segunda columna.
   ============================================================= */

@media(min-width: 768px){
  .arx-v3-hero > .elementor-container{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:48px!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:first-child{
    width:62%!important;
    flex:0 0 62%!important;
    max-width:62%!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2){
    width:38%!important;
    flex:0 0 38%!important;
    max-width:38%!important;
    min-width:360px!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap{
    width:100%!important;
    padding:24px!important;
    background:linear-gradient(160deg,var(--arx-purple-pale) 0%,#FAF8FC 50%,var(--arx-green-pale) 100%)!important;
    border-radius:28px!important;
  }

  .arx-v3-hero .elementor-widget-image{
    width:100%!important;
    margin-bottom:14px!important;
  }

  .arx-v3-hero .elementor-widget-image .elementor-widget-container{
    width:100%!important;
  }

  .arx-v3-hero .elementor-widget-image img{
    width:100%!important;
    max-width:100%!important;
    min-height:360px!important;
    max-height:470px!important;
    object-fit:cover!important;
    display:block!important;
  }

  /* En la tarjeta derecha, apila "Trabajo actual" e "Investigación":
     en dos columnas quedan demasiado estrechas en algunas versiones de Elementor. */
  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) .elementor-inner-section > .elementor-container{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) .elementor-inner-section .elementor-column{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) .elementor-inner-section .elementor-widget-wrap{
    width:100%!important;
    background:#fff!important;
    border-radius:14px!important;
    padding:14px 16px!important;
  }

  /* Los dos botones no necesitan ocupar media pantalla cada uno. */
  .arx-v3-hero > .elementor-container > .elementor-column:first-child .elementor-inner-section > .elementor-container{
    display:flex!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:first-child .elementor-inner-section .elementor-column{
    width:auto!important;
    flex:0 0 auto!important;
    max-width:none!important;
  }

  .arx-v3-hero > .elementor-container > .elementor-column:first-child .elementor-inner-section .elementor-widget-wrap{
    padding:0!important;
  }

  .arx-v3-hero .elementor-button{
    min-width:130px;
    text-align:center;
  }
}

/* Títulos: algo menos agresivos que la versión anterior */
.arx-v3 h1.elementor-heading-title{
  font-size:clamp(50px,5.3vw,74px)!important;
  line-height:.96!important;
}
.arx-v3 h2.elementor-heading-title{
  font-size:clamp(38px,4.2vw,58px)!important;
}

/* Más aire superior equilibrado, sin hueco excesivo */
.arx-v3-hero{
  padding-top:54px!important;
  padding-bottom:62px!important;
}
.arx-v3-hero > .elementor-container{
  min-height:560px!important;
}

@media(max-width: 1100px) and (min-width:768px){
  .arx-v3-hero > .elementor-container > .elementor-column:first-child{
    width:58%!important;
    flex-basis:58%!important;
    max-width:58%!important;
  }
  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2){
    width:42%!important;
    flex-basis:42%!important;
    max-width:42%!important;
    min-width:320px!important;
  }
  .arx-v3 h1.elementor-heading-title{
    font-size:52px!important;
  }
}

@media(max-width:767px){
  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2){
    min-width:0!important;
  }
  .arx-v3-hero > .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap{
    margin-top:28px!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .arx-v3-hero .elementor-widget-image img{
    min-height:320px!important;
  }
}
