/* Nereus Abogados — especialidades v36. Adaptación del prototipo aprobado sobre la v35. */
/* Menú: estructura original y posición del logo intactas, superficie Glass flotante.
   No se replica la animación de la izquierda porque el logo ya está integrado. */
body.nc-v41 .site-header,
body.nc-v41 .site-header.scrolled,
body.nc-v41 .site-header.eq-header-white {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  padding: 10px 0;
  z-index: 100;
}
body.nc-v41 .site-header::before,
body.nc-v41 .site-header.eq-header-white::before {
  display: none !important;
  content: none !important;
}
body.nc-v41 .site-header .nav {
  position: relative;
  z-index: 1;
  min-height: 84px;
  padding: 0 clamp(15px,2.1vw,24px);
  background: rgba(248,247,245,.52) !important;
  border: 0 !important;
  border-radius: 999px;
  box-shadow: 0 10px 28px rgba(12,30,61,.10) !important;
  -webkit-backdrop-filter: blur(9px) saturate(115%);
  backdrop-filter: blur(9px) saturate(115%);
  isolation: isolate;
}
body.nc-v41 .site-header .nav::before,
body.nc-v41 .site-header .nav::after {
  display: none !important;
  content: none !important;
}
body.nc-v41 .site-header .nav > .brand,
body.nc-v41 .site-header .nav > .nav-links,
body.nc-v41 .site-header .nav > .menu-toggle {
  position: relative;
  z-index: 2;
}
/* No cambiar position de language-switcher: es absolute en móvil. */
body.nc-v41 .site-header .nav > .language-switcher { z-index: 3; }
body.nc-v41 .site-header:has(.language-switcher.open),
body.nc-v41.menu-open .site-header { z-index: 200 !important; }
body.nc-v41 .site-header .language-switcher.open,
body.nc-v41 .site-header .language-switcher.open .language-menu { z-index: 25 !important; }
@media (min-width:1181px) {
  body.nc-v41 .site-header .nav-links:not(.open) > a:not(.button) {
    color: #06152a !important;
    font-weight: 800 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
}
@media (max-width:1140px) {
  body.nc-v41 .site-header .nav-links.open {
    position: absolute !important;
    top: calc(100% + 8px);
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    border-radius: 24px !important;
    box-shadow: 0 20px 50px rgba(12,30,61,.18) !important;
    z-index: 10;
  }
}
@media (max-width:940px) {
  body.nc-v41 .site-header { padding: 7px 0; }
  body.nc-v41 .site-header .nav {
    min-height: 76px !important;
    padding: 0 13px;
    border-radius: 999px;
  }
}
@media (prefers-reduced-motion:reduce) {
  body.nc-v41 .site-header .nav {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(248,247,245,.88) !important;
  }
}


/* v41: páginas Actualidad/Contactar. Estilo de v40; paneles aprobados en maqueta v41. */
body.nc-v41 {
 --nc-bg:linear-gradient(90deg,#c5c0bb 0%,#c1bbb5 48%,#bbb5af 100%);
 --nc-panel:#f7f6f4;--nc-navy:#0d1e3a;--nc-ink:#102442;--nc-muted:#526078;
 --nc-gutter:clamp(12px,3vw,48px);
 background:var(--nc-bg);color:var(--nc-ink);
}
body.nc-v41 .site-header .nav{width:min(1180px,calc(100% - 40px));max-width:1180px!important;margin-left:auto;margin-right:auto;}
@media(min-width:941px){body.nc-v41 .site-header .brand-logo{width:100px!important;height:auto!important}}
@media(min-width:621px) and (max-width:940px){body.nc-v41 .site-header .brand-logo{width:108px!important;height:auto!important}}
@media(max-width:620px){body.nc-v41 .site-header .brand-logo{width:90px!important;height:auto!important}}
@media(max-width:620px){body.nc-v41 .site-header .nav{width:calc(100% - 24px)!important}}
body.nc-v41 .site-header .nav-links:not(.open)>a:not(.button){font-weight:800;color:#0d1e3a}
body.nc-v41 .site-header .nav-links > .button{border-radius:100px;background:#0d1e3a;color:white!important}
body.nc-v41 .site-header .language-toggle{background:#0d1e3a;color:#fff;border-radius:100px}
body.nc-v41 main.nc-main{width:100%;max-width:none;min-height:60vh;padding:26px 0 80px;background:transparent!important}
body.nc-v41 main.nc-main>section{
 width:min(1500px,calc(100% - 2*var(--nc-gutter)));max-width:none!important;
 margin:0 auto clamp(17px,2.1vw,30px);padding:clamp(28px,4.6vw,68px)!important;
 border:0!important;border-radius:34px;background:var(--nc-panel)!important;
 box-shadow:0 18px 45px rgba(12,30,61,.075);box-sizing:border-box;overflow:visible;
}
body.nc-v41 main.nc-main > section .shell{max-width:none;width:100%;margin:0;padding:0}
body.nc-v41 main.nc-main h1,
body.nc-v41 main.nc-main h2,
body.nc-v41 main.nc-main h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em;color:var(--nc-navy);text-wrap:initial;}
body.nc-v41 main.nc-main h1{font-size:clamp(43px,5.2vw,78px);line-height:1.06;letter-spacing:-.047em;margin:0 0 23px;max-width:100%}
body.nc-v41 main.nc-main h2{font-size:clamp(33px,3.3vw,54px);line-height:1.11;margin:0 0 22px}
body.nc-v41 main.nc-main h3{font-size:clamp(23px,2.2vw,34px);line-height:1.17;letter-spacing:-.026em}
body.nc-v41 main.nc-main p{line-height:1.75;font-size:15px;color:var(--nc-muted)}
body.nc-v41 main.nc-main .eyebrow{display:block;font-size:11px;letter-spacing:.18em;color:#526987;text-transform:uppercase;font-weight:800;margin:0 0 16px}
body.nc-v41 main.nc-main .eyebrow::before{display:none}
body.nc-v41 main.nc-main .nc-lead{font-size:clamp(16px,1.35vw,19px);line-height:1.75;color:#42526b;max-width:none}
body.nc-v41 main.nc-main a:focus-visible,body.nc-v41 main.nc-main button:focus-visible {outline:3px solid #557fb3;outline-offset:3px}
body.nc-v41 main.nc-main .button,
body.nc-v41 main.nc-main .nc-cta-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 23px;border-radius:99px;border:0;background:var(--nc-navy);color:#fff!important;font-size:13px;font-weight:750;text-decoration:none}
/* ACTUALIDAD: hero, destacada, archivo y CTA. */
body.nc-v41 .news-hero,body.nc-v41 .news-section{padding:clamp(28px,4.6vw,68px)!important}
body.nc-v41 .news-hero .breadcrumbs{display:none}
body.nc-v41 .news-hero .news-hero-copy{text-align:left}
body.nc-v41 .news-hero-copy h1{max-width:none;width:100%;font-size:clamp(38px,4.45vw,68px);margin:0 0 23px;text-align:left}
body.nc-v41 .news-hero-copy p{max-width:none;margin:0;text-align:left;font-size:clamp(16px,1.35vw,19px);text-wrap:initial}
@media(min-width:1200px){body.nc-v41 .news-hero-copy h1{white-space:nowrap;font-size:clamp(40px,4.1vw,68px)}}
body.nc-v41 .news-section{background:var(--nc-panel)!important}
body.nc-v41 .news-heading{margin-bottom:26px}
body.nc-v41 .news-heading .eyebrow{margin:0 0 14px}
body.nc-v41 .news-heading h2{display:none}
body.nc-v41 .featured-article{width:100%;max-width:none;display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:clamp(24px,4vw,68px);align-items:center;background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
body.nc-v41 .featured-image{width:100%;height:auto;aspect-ratio:1.43;min-height:0;border-radius:26px;overflow:hidden;background:#142b4f}
body.nc-v41 .featured-photo{width:100%;height:100%;object-fit:cover}
body.nc-v41 .featured-content{padding:0;min-width:0;display:block}
body.nc-v41 .featured-content h2{font-size:clamp(31px,3.1vw,49px);line-height:1.13;margin:15px 0 16px}
body.nc-v41 .featured-content h2 a{color:#0d1e3a}
body.nc-v41 .featured-content p{margin-bottom:18px}
body.nc-v41 .featured-content .text-link{color:#0d1e3a;font-weight:750;font-size:13px;text-decoration:none;margin:12px 0 0}
body.nc-v41 .article-side-card{max-width:none!important;margin:0!important;background:#fff;border:1px solid #0d1e3a12;box-shadow:none;padding:clamp(24px,3vw,42px);border-radius:24px}
body.nc-v41 .article-side-card h3{margin:12px 0}
body.nc-v41 .article-side-card p{margin:0 0 12px}
body.nc-v41 .article-side-card .text-link{margin:0;text-decoration:none;font-weight:750}
body.nc-v41 .nc-news-archive .shell{width:100%}
body.nc-v41 .nc-cta{background:#0d1e3a!important;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.nc-v41 .nc-cta h2,body.nc-v41 .nc-cta p{color:white!important}
body.nc-v41 .nc-cta .eyebrow{color:#ced8e7!important}
body.nc-v41 .nc-cta .nc-cta-link{background:white;color:#0d1e3a!important;white-space:nowrap}
/* CONTACTAR: tres paneles; el sistema de reserva y formularios siguen siendo los originales. */
body.nc-v41 .nc-contact-hero{min-height:0}
body.nc-v41 .booking-section .booking-intro{display:block;margin-bottom:25px}
body.nc-v41 .booking-section .booking-intro h2{max-width:none;margin:0 0 18px}
body.nc-v41 .booking-section .booking-intro p{max-width:none;margin:0}
body.nc-v41 .booking-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(19px,3vw,45px);align-items:start;background:transparent;box-shadow:none;padding:0;border:0;border-radius:0;overflow:visible}
body.nc-v41 .booking-calendar-panel,body.nc-v41 .booking-fields,
body.nc-v41 .contact-layout>.contact-form{background:white;border:1px solid rgba(13,30,58,.08);border-radius:26px;padding:clamp(23px,2.8vw,40px);box-shadow:none;min-width:0}
body.nc-v41 .booking-calendar{min-height:0}
body.nc-v41 .booking-step-label{color:#526987;font-size:11px}
body.nc-v41 .booking-step-label span{width:27px;height:27px}
body.nc-v41 .booking-section .booking-step-label{position:static!important}
body.nc-v41 .booking-fields .form-grid{display:grid}
body.nc-v41 .booking-calendar-panel h3{font-size:27px;margin:15px 0}
body.nc-v41 .booking-section label,body.nc-v41 .contact-form label{color:#233854;font-weight:730}
body.nc-v41 .booking-section input,body.nc-v41 .booking-section select,body.nc-v41 .booking-section textarea,
body.nc-v41 .contact-form input:not([type=checkbox]):not([type=hidden]),body.nc-v41 .contact-form textarea{border:1px solid #cdd4db;background:#fff;border-radius:11px;padding:13px 15px;box-shadow:none}
body.nc-v41 .booking-section input:focus,body.nc-v41 .contact-form input:focus{outline:2px solid #5f82b4;outline-offset:1px}
body.nc-v41 .booking-status{min-height:20px}
body.nc-v41 .booking-privacy,body.nc-v41 .contact-form .privacy-layer{background:#f4f4f3;border:0;border-radius:14px}
body.nc-v41 .booking-privacy>strong,body.nc-v41 .contact-form .privacy-layer>strong{font:700 13px/1.35 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;color:#485970}
body.nc-v41 .booking-privacy p,body.nc-v41 .contact-form .privacy-layer p{font-size:12px;line-height:1.65}
body.nc-v41 .booking-submit{width:auto}
body.nc-v41 .other-contact-heading{max-width:none;margin:0 0 28px}
body.nc-v41 .other-contact-heading h2{margin:0 0 15px}
body.nc-v41 .other-contact-heading p{max-width:none;margin:0}
body.nc-v41 .contact-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr);gap:clamp(20px,4vw,65px);align-items:start}
body.nc-v41 .contact-layout .contact-sidebar{align-self:start;display:flex;flex-direction:column;gap:0;background:#0d1e3a;color:#fff;border-radius:26px;padding:clamp(23px,2.8vw,40px)}
body.nc-v41 .contact-sidebar .contact-option{padding:0 0 22px;margin:0 0 22px;border:0;border-radius:0;background:transparent;border-bottom:1px solid #ffffff24}
body.nc-v41 .contact-sidebar .contact-option:last-child{border:0;padding:0;margin:0}
body.nc-v41 .contact-sidebar small{color:#b5c2d4;font-size:11px;text-transform:uppercase;font-weight:750;letter-spacing:.12em}
body.nc-v41 .contact-sidebar a{color:#fff;text-decoration:none;font-size:14px;font-weight:680;overflow-wrap:anywhere}
body.nc-v41 .contact-sidebar p{color:#ced9e7;font-size:13px;margin:10px 0 0}
body.nc-v41 .contact-sidebar .whatsapp-option a{border:1px solid #ffffff50;border-radius:99px;padding:11px 17px;display:inline-flex;margin-top:12px}
body.nc-v41 .form-privacy-warning{border-left:3px solid #0d1e3a;background:#f0f3f7;border-radius:8px}
/* ARTÍCULOS: conservar el texto íntegro y estilizar título / cuerpo en paneles. */
body.nc-v41 .article-hero-flat,body.nc-v41 .article-wrap{background:var(--nc-panel)!important}
body.nc-v41 .article-hero-flat .breadcrumbs{margin:0 0 24px;font-size:13px}
body.nc-v41 .article-hero-flat h1{font-size:clamp(38px,4.75vw,68px);max-width:none;line-height:1.1}
body.nc-v41 .article-hero-flat .article-deck{max-width:none;font-size:clamp(16px,1.4vw,19px);margin:20px 0 28px}
body.nc-v41 .article-hero-flat .article-meta{position:static;margin-top:22px}
body.nc-v41 .article-layout{display:block!important;grid-template-columns:1fr!important}
body.nc-v41 .article-body{width:100%;max-width:1120px;margin:0 auto;min-width:0}
body.nc-v41 .article-body p{font-size:16px;line-height:1.85;color:#3c4b61}
body.nc-v41 .article-body h2{font-size:clamp(29px,2.75vw,43px);line-height:1.16;margin:42px 0 19px}
body.nc-v41 .article-body h3{font-size:26px}
body.nc-v41 .article-body a{text-decoration:underline;text-underline-offset:3px}
body.nc-v41 .article-aside{display:none}
body.nc-v41 .article-body .article-intro{max-width:none}
@media(max-width:930px){
 body.nc-v41 .booking-card,body.nc-v41 .contact-layout{grid-template-columns:1fr}
 body.nc-v41 .featured-article{grid-template-columns:1fr}
 body.nc-v41 .featured-image{aspect-ratio:1.66}
 body.nc-v41 .nc-cta{flex-direction:column;align-items:flex-start}
}
@media(max-width:620px){
 body.nc-v41 main.nc-main{padding:15px 0 50px}
 body.nc-v41 main.nc-main>section{width:calc(100% - 24px);padding:clamp(23px,6vw,37px)!important;border-radius:24px;margin-bottom:14px}
 body.nc-v41 main.nc-main h1{font-size:clamp(36px,9.2vw,52px)}
 body.nc-v41 main.nc-main h2{font-size:clamp(30px,7.6vw,42px)}
 body.nc-v41 .news-hero-copy h1{font-size:clamp(36px,9.2vw,52px);white-space:normal}
 body.nc-v41 .featured-image{aspect-ratio:1.28}
 body.nc-v41 .featured-content h2{font-size:clamp(30px,7.5vw,42px)}
 body.nc-v41 .booking-calendar-panel,body.nc-v41 .booking-fields,body.nc-v41 .contact-layout>.contact-form{padding:17px;border-radius:18px}
 body.nc-v41 .form-grid{grid-template-columns:1fr}
 body.nc-v41 .booking-calendar{gap:4px}
 body.nc-v41 .booking-day{min-width:0}
 body.nc-v41 .article-hero-flat h1{font-size:clamp(34px,8.8vw,48px)}
}

/* Correcciones QA: asegurar superficie navy y conservar archivo visible en móvil. */
body.nc-v41 main.nc-main > section.nc-cta{background:#0d1e3a!important}
body.nc-v41 main.nc-main > section.nc-news-archive .article-side-card{display:block!important;visibility:visible!important}


/* v42 · Ajustes exclusivos de Actualidad y Contactar.
   Cabecera de Actualidad en una línea en escritorio, evitando el tamaño heredado
   del H1 general (que tenía mayor especificidad). */
@media (min-width: 1000px) {
  body.nc-v41 main.nc-main .news-hero .news-hero-copy h1 {
    font-size: clamp(31px, 3.3vw, 52px) !important;
    letter-spacing: -.042em;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
    width: 100%;
    max-width: 100%;
  }
}
/* Contactar: texto legible en blanco, también donde la regla global de p
   prevalecía sobre las reglas de la barra lateral navy. */
body.nc-v41 main.nc-main .contact-layout .contact-sidebar,
body.nc-v41 main.nc-main .contact-layout .contact-sidebar .contact-option,
body.nc-v41 main.nc-main .contact-layout .contact-sidebar .contact-option p,
body.nc-v41 main.nc-main .contact-layout .contact-sidebar .contact-option small,
body.nc-v41 main.nc-main .contact-layout .contact-sidebar .contact-option a {
  color: #ffffff !important;
  opacity: 1;
}


/* v43 · ÚNICAMENTE en Contactar: primer panel más compacto en altura.
   Márgenes laterales, títulos, contenido y ancho del panel, intactos. */
body.nc-v41 main.nc-main > section.nc-contact-hero {
  padding-top:clamp(24px,3vw,42px)!important;
  padding-bottom:clamp(24px,3vw,42px)!important;
}
@media (max-width:620px) {
  body.nc-v41 main.nc-main > section.nc-contact-hero {
    padding-top:19px!important;
    padding-bottom:19px!important;
  }
}
/* v43 · Los pies de Actualidad, artículos y Contactar heredan
   sin excepciones el pie claro original de Inicio y Equipo. */
