/* =====================================================================
   North 2026 · nuevo estilo sobre Salient + WPBakery
   Solo actua en paginas con body.np26 (lo pone el plugin North 2026).
   Prefijos: #ajax-content-wrap (contenido), #header-outer (menu), #footer-outer (pie),
   #slide-out-widget-area (menu movil): los IDs ganan a las reglas del tema y del plugin de fuentes
   sin tener que llenar todo de !important.
   Clases de los elementos de WPBakery ("Nombre de clase extra"):
     filas: np26-hero, np26-pres, np26-philo, np26-gal, np26-tes, np26-ig-head, np26-ig
     bloques: np26-eyebrow (antetitulo), np26-h2 (titulo de seccion), np26-lead (entradilla),
              np26-close (frase de cierre), np26-link (enlace con flecha), np26-down (Descubrir)
   ===================================================================== */

body.np26 {
  --ivory: #f7f3ec; --sand: #ede5d8; --stone: #d9cfbf; --ink: #1d1a17; --ink-2: #4a443d; --muted: #6b6258;
  --gold: #bca965; --gold-deep: #9c8a48; --night: #12100e;
  --serif: "Cormorant Garamond", Cormorant, Georgia, serif;
  --sans: "Jost", "Helvetica Neue", Arial, sans-serif;
  --pad: clamp(1.25rem, 4vw, 4rem);
  --ease: cubic-bezier(.22, .61, .36, 1);
  --section: clamp(4rem, min(11vw, 15vh), 10rem);
  background: var(--ivory) !important;
  -webkit-font-smoothing: antialiased;
}

/* ---------- 1. Tipografia base (fuera Times y cursivas impuestas) ---------- */
.np26 #ajax-content-wrap, .np26 #header-outer, .np26 #footer-outer, .np26 #slide-out-widget-area {
  font-family: var(--sans); font-weight: 300; font-style: normal; color: var(--ink);
}
/* :where() = especificidad minima (solo cuenta el ID): gana a las reglas del tema y del plugin de fuentes,
   pero cualquier regla de este archivo con una clase mas (entradilla, antetitulo...) la puede cambiar */
.np26 #ajax-content-wrap :where(p, li, a, span, div, label, input, textarea, select, button, blockquote, td, th, strong, b):where(:not([class*="fa-"]):not([class*="icon-"])),
.np26 #footer-outer :where(p, li, a, span, div, label, input, textarea, select, button, strong, b):where(:not([class*="fa-"]):not([class*="icon-"])),
.np26 #header-outer :where(a, span, li),
.np26 #slide-out-widget-area :where(p, li, a, span) {
  font-family: var(--sans); font-style: normal;
}
.np26 #ajax-content-wrap :is(h1, h2, h3, h4, h5, h6), .np26 #footer-outer :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--serif); font-weight: 300; font-style: normal; letter-spacing: -.01em; text-transform: none; color: inherit; margin: 0;
}
/* palabras envueltas en <span> dentro de un titulo (efectos de texto de Salient): misma letra que el titulo */
.np26 #ajax-content-wrap :is(h1, h2, h3, h4, h5, h6) span:not([class*="fa-"]):not([class*="icon-"]) { font-family: inherit; font-style: inherit; }
.np26 #ajax-content-wrap :is(h1, h2, h3, h4) em, .np26 #ajax-content-wrap em {
  font-family: var(--serif); font-style: italic; color: var(--gold-deep);
}
.np26 #ajax-content-wrap :is(strong, b) { font-weight: 400; }
.np26 #ajax-content-wrap p { font-size: 1rem; line-height: 1.7; padding-bottom: 0; margin: 0 0 1.1em; }
.np26 #ajax-content-wrap .wpb_text_column { margin-bottom: 0; }
.np26 #ajax-content-wrap .wpb_text_column .wpb_wrapper > :last-child { margin-bottom: 0; }
.np26 #ajax-content-wrap a { transition: color .3s; }
.np26 #ajax-content-wrap .container-wrap, .np26 .container-wrap { background: var(--ivory); padding-bottom: 0; }
.np26 :focus-visible { outline: 1px solid var(--gold); outline-offset: 4px; }

/* Antetitulo (linea + versalitas espaciadas) */
.np26 #ajax-content-wrap .wpb_text_column.np26-eyebrow p {
  font-size: .72rem; font-weight: 400; letter-spacing: .32em; text-transform: uppercase; color: var(--muted); margin: 0;
}
.np26 #ajax-content-wrap .wpb_text_column.np26-eyebrow p::before {
  content: ""; display: inline-block; width: 2.4em; height: 1px; background: currentColor; vertical-align: middle; margin-right: 1em; opacity: .6;
}
/* Titulo de seccion */
.np26 #ajax-content-wrap .np26-h2 { margin-top: 1rem; }
.np26 #ajax-content-wrap .wpb_text_column.np26-h2 h2 { font-size: clamp(2.2rem, min(5vw, 9vh), 4.2rem); line-height: 1.02; }
/* Enlace con flecha */
.np26 #ajax-content-wrap .np26-link { margin-top: 3.5rem; }
.np26 #ajax-content-wrap .np26-link a {
  display: inline-flex; align-items: center; gap: .8rem; font-size: .74rem; font-weight: 400; letter-spacing: .26em; text-transform: uppercase;
  color: var(--ink); border-bottom: 1px solid var(--gold); padding-bottom: .35em;
}
.np26 #ajax-content-wrap .np26-link a::after { content: "↓"; transition: transform .5s var(--ease); }
.np26 #ajax-content-wrap .np26-link a:hover { color: var(--gold-deep); }
.np26 #ajax-content-wrap .np26-link a:hover::after { transform: translateY(4px); }

/* Botones de Salient (nectar_btn): linea fina en tinta; sobre fotos (Instagram de la portada) van en marfil */
.np26 #ajax-content-wrap .nectar-button {
  font-family: var(--sans) !important; font-size: .74rem !important; font-weight: 400 !important; letter-spacing: .26em; text-transform: uppercase;
  background: transparent !important; color: var(--ink) !important; border: 1px solid var(--ink) !important; border-radius: 0 !important; box-shadow: none !important;
  padding: 1.05em 2.1em !important; line-height: 1.2 !important; transition: background .45s var(--ease), color .45s var(--ease), border-color .45s;
}
.np26 #ajax-content-wrap .nectar-button span { font-family: inherit !important; color: inherit !important; }
.np26 #ajax-content-wrap .nectar-button:hover { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; transform: none !important; }
.np26 #ajax-content-wrap .np26-ig .nectar-button { background: var(--ivory) !important; border-color: var(--ivory) !important; }
.np26 #ajax-content-wrap .np26-ig .nectar-button:hover { background: var(--gold) !important; border-color: var(--gold) !important; }

/* Separacion vertical comun de las secciones (las filas traen padding 0 en linea) */
.np26 #ajax-content-wrap :is(.np26-pres, .np26-philo, .np26-tes) { padding-top: var(--section) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-tes { padding-bottom: var(--section) !important; }

/* Aparicion suave al hacer scroll (solo navegadores con animaciones ligadas al scroll; el resto lo ve sin animar) */
@supports ((animation-timeline: view()) and (animation-range: entry)) {
  @media (prefers-reduced-motion: no-preference) {
    .np26 #ajax-content-wrap :is(.np26-pres, .np26-philo, .np26-gal, .np26-tes, .np26-about, .np26-services, .np26-film, .np26-weddings, .np26-faq, .np26-places, .np26-incl, .np26-revs) .wpb_text_column,
    .np26 #ajax-content-wrap :is(.np26-values, .np26-tes__grid, .np26-services__grid, .np26-film__grid, .np26-packs__grid, .np26-photos) .wpb_column,
    .np26 #ajax-content-wrap .np26-weddings .np26-wcard {
      animation: np26-reveal linear both; animation-timeline: view(); animation-range: entry 0% entry 55%;
    }
  }
}
@keyframes np26-reveal { from { opacity: 0; transform: translateY(28px); } }
/* alternativa (np26.js la activa solo donde no hay animaciones ligadas al scroll, p. ej. Firefox) */
.np26-io .np26-io-item { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--ease), transform .9s var(--ease); }
.np26-io .np26-io-item.is-in { opacity: 1; transform: none; }

/* =====================================================================
   1b. ELEMENTOS GENERALES (todas las paginas: bodas, Trabajos, Servicios, Contacto, Blog...)
   Van antes que los de la portada: a igualdad de especificidad, gana lo de la portada.
   ===================================================================== */

/* Cabecera de pagina de Salient (titulo sobre foto) */
/* la foto de Salient va con z-index 9: el velo justo encima (mismo nivel, despues en el orden) y el titulo por encima de todo */
.np26 #page-header-bg::after { content: ""; position: absolute; inset: 0; z-index: 9; pointer-events: none;
  background: linear-gradient(180deg, rgb(10 9 8 / .45) 0%, rgb(10 9 8 / 0) 30%, rgb(10 9 8 / 0) 55%, rgb(10 9 8 / .55) 100%); }
.np26 #page-header-bg .container { position: relative; z-index: 10; }
.np26 #page-header-bg .inner-wrap { display: flex; flex-direction: column-reverse; align-items: flex-start; gap: 1.1rem; }
.np26 #page-header-bg h1 {
  font-family: var(--serif) !important; font-weight: 300 !important; font-style: normal !important; text-transform: none !important;
  font-size: clamp(3rem, min(7vw, 12vh), 6.4rem) !important; line-height: 1 !important; letter-spacing: -.01em !important; color: #fff !important; margin: 0 !important;
}
.np26 #page-header-bg .subheader {
  font-family: var(--sans) !important; font-style: normal !important; font-weight: 400 !important; font-size: .72rem !important; line-height: 1 !important;
  letter-spacing: .32em !important; text-transform: uppercase; color: rgb(255 255 255 / .88) !important; opacity: 1 !important;
}
.np26 #page-header-bg .subheader::before { content: ""; display: inline-block; width: 2.4em; height: 1px; background: currentColor; vertical-align: middle; margin-right: 1em; opacity: .6; }

/* Filas con foto de fondo (portadillas de Servicios, Blog, Quienes somos): texto claro y velo para que se lea */
.np26 #ajax-content-wrap .wpb_row:has(> .row-bg-wrap .row-bg.using-image) { color: #fff; }
.np26 #ajax-content-wrap .wpb_row:has(> .row-bg-wrap .row-bg.using-image) > .row-bg-wrap::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgb(10 9 8 / .35), rgb(10 9 8 / .55));
}
.np26 #ajax-content-wrap .wpb_row:has(> .row-bg-wrap .row-bg.using-image) :is(h1, h2, h3, h4, p, li, a, span, em) { color: #fff; }

/* Bloques de texto */
.np26 #ajax-content-wrap .wpb_text_column h1 { font-size: clamp(2.4rem, min(4.4vw, 8vh), 4.2rem); line-height: 1.05; margin: 0 0 .5em; }
.np26 #ajax-content-wrap .wpb_text_column h2 { font-size: clamp(1.9rem, min(3vw, 6vh), 2.8rem); line-height: 1.1; margin: 1.6em 0 .5em; }
.np26 #ajax-content-wrap .wpb_text_column h3 { font-size: clamp(1.45rem, 2.1vw, 1.9rem); line-height: 1.15; margin: 1.5em 0 .45em; }
.np26 #ajax-content-wrap .wpb_text_column h4 { font-size: 1.35rem; line-height: 1.2; margin: 1.4em 0 .4em; }
.np26 #ajax-content-wrap .wpb_text_column .wpb_wrapper > :is(h1, h2, h3, h4):first-child { margin-top: 0; }
.np26 #ajax-content-wrap .wpb_text_column :is(h1, h2, h3, h4) + :is(h2, h3, h4) { margin-top: .2em; }
.np26 #ajax-content-wrap .wpb_text_column p { color: var(--ink-2); }
.np26 #ajax-content-wrap .wpb_text_column :is(p, li) strong { color: var(--ink); }
.np26 #ajax-content-wrap .wpb_text_column :is(p, li) a { color: var(--ink); border-bottom: 1px solid var(--gold); }
.np26 #ajax-content-wrap .wpb_text_column :is(p, li) a:hover { color: var(--gold-deep); }
.np26 #ajax-content-wrap .wpb_text_column :is(ul, ol) { margin: 0 0 1.2em; padding: 0; list-style: none; }
/* el tema pone la vineta (punto) en cada <li>: fuera, la marca es la raya dorada de abajo */
.np26 #ajax-content-wrap .wpb_text_column li { list-style: none !important; }
.np26 #ajax-content-wrap .wpb_text_column li::marker { content: none; }
.np26 #ajax-content-wrap .wpb_text_column li { position: relative; padding-left: 1.6em; margin-bottom: .55em; line-height: 1.65; color: var(--ink-2); }
.np26 #ajax-content-wrap .wpb_text_column li::before { content: ""; position: absolute; left: 0; top: .82em; width: .9em; height: 1px; background: var(--gold); }
.np26 #ajax-content-wrap blockquote { border: 0 !important; padding: 0 !important; margin: 0 0 1em; font-size: inherit; background: none; }
.np26 #ajax-content-wrap blockquote::before { display: none !important; }
.np26 #ajax-content-wrap blockquote :is(p, h1, h2, h3) { font-family: var(--serif); font-style: italic; color: var(--ink); }
/* Primer parrafo de un bloque, solo en negrita y seguido de un titulo ("BODA EN BILBAO") = antetitulo */
.np26 #ajax-content-wrap .wpb_text_column .wpb_wrapper > p:first-child:has(> strong:only-child):has(+ :is(h1, h2, h3)) {
  font-size: .74rem; letter-spacing: .3em; text-transform: uppercase; color: var(--gold-deep); margin-bottom: 1.2rem;
}
.np26 #ajax-content-wrap .wpb_text_column .wpb_wrapper > p:first-child:has(> strong:only-child):has(+ :is(h1, h2, h3)) strong { font-weight: 400; color: inherit; }
/* Textos a ancho completo: columna de lectura de ~70 caracteres (fuera de la portada) */
.np26 #ajax-content-wrap .wpb_row:not([class*="np26-"]) .vc_col-sm-12 > .vc_column-inner > .wpb_wrapper > .wpb_text_column { max-width: 46rem; margin-inline: auto; }
/* Contenido sin WPBakery (Politica de privacidad) */
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) { max-width: 46rem; margin-inline: auto; padding: var(--section) 0; }
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) :is(h2, h3) { margin: 1.6em 0 .5em; }
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) h2 { font-size: clamp(1.9rem, 3vw, 2.6rem); }
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) h3 { font-size: 1.5rem; }
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) :is(p, li) { color: var(--ink-2); }
.np26 #ajax-content-wrap .main-content > .row:not(:has(.wpb_row)) img { max-width: 180px; height: auto; }
/* Titulos especiales de Salient: tipografia nueva (sus tamanos se respetan) */
.np26 #ajax-content-wrap :is(.vc_custom_heading, .nectar-split-heading h2, .nectar-animated-title h3, .nectar-fancy-ul + h3) {
  font-family: var(--serif) !important; font-style: normal !important; font-weight: 300 !important; letter-spacing: -.005em; line-height: 1.15 !important;
}
.np26 #ajax-content-wrap .nectar-animated-title h3 { color: var(--ink) !important; }
/* el dorado de estos titulos sobre arena no se lee (2,7:1): en tinta */
.np26 #ajax-content-wrap .wpb_row:not(:has(> .row-bg-wrap .row-bg.using-image)) .vc_custom_heading { color: var(--ink) !important; }
.np26 #ajax-content-wrap .nectar-fancy-ul li { font-size: 1rem; line-height: 1.6; color: var(--ink-2); margin-bottom: .7em; }
.np26 #ajax-content-wrap .nectar-fancy-ul li i { color: var(--gold) !important; }
.np26 #ajax-content-wrap .nectar-fancy-ul li em { font-style: normal; font-family: inherit; color: inherit; }

/* Separador con texto (vc_text_separator: "Fotografia", "Video", "Instagram") */
.np26 #ajax-content-wrap .vc_separator { margin-bottom: clamp(2rem, 4vw, 3rem) !important; }
.np26 #ajax-content-wrap .vc_separator .vc_sep_line { border-color: var(--stone) !important; }
.np26 #ajax-content-wrap .vc_separator h4 {
  font-family: var(--serif); font-style: italic; font-weight: 300; font-size: clamp(1.6rem, 2.4vw, 2.2rem); text-transform: none; letter-spacing: 0; color: var(--ink); padding: 0 .5em;
}
.np26 #ajax-content-wrap .vc_separator .vc_icon_element-inner { background: none !important; width: auto !important; height: auto !important; }
.np26 #ajax-content-wrap .vc_separator .vc_icon_element-icon { color: var(--ink) !important; font-size: 1.3rem !important; position: static !important; transform: none !important; }
.np26 #ajax-content-wrap .vc_separator .vc_icon_element { margin: 0 0 0 1.4em !important; }

/* Galerias (vc_gallery en mosaico): columnas CSS en lugar de las posiciones de isotope */
.np26 #ajax-content-wrap .wpb_gallery .portfolio-wrap { margin: 0 !important; padding: 0 !important; }
.np26 #ajax-content-wrap .wpb_gallery .portfolio-items.masonry-items {
  columns: 3 320px; column-gap: clamp(.5rem, 1vw, .9rem); height: auto !important; margin: 0 !important; padding: 0 !important; width: auto !important; opacity: 1 !important;
}
.np26 #ajax-content-wrap .wpb_gallery .portfolio-items.masonry-items > .col {
  position: relative !important; left: auto !important; top: auto !important; transform: none !important; float: none !important;
  width: 100% !important; margin: 0 0 clamp(.5rem, 1vw, .9rem) !important; padding: 0 !important; break-inside: avoid; display: block; opacity: 1 !important;
}
.np26 #ajax-content-wrap .wpb_gallery .portfolio-items.masonry-items > .col .inner-wrap { opacity: 1 !important; transform: none !important; }
.np26 #ajax-content-wrap .wpb_gallery .work-item { overflow: hidden; background: var(--sand); margin: 0 !important; cursor: zoom-in; }
.np26 #ajax-content-wrap .wpb_gallery .work-item img { width: 100% !important; height: auto !important; max-width: 100% !important; display: block; transition: transform 1.2s var(--ease); }
.np26 #ajax-content-wrap .wpb_gallery .work-item:hover img { transform: scale(1.035); }
.np26 #ajax-content-wrap .wpb_gallery :is(.work-info-bg, .portfolio-loading) { display: none !important; }
.np26 #ajax-content-wrap .wpb_gallery .work-info a:focus-visible { outline: 2px solid var(--gold); outline-offset: -4px; }
@media (max-width: 560px) { .np26 #ajax-content-wrap .wpb_gallery .portfolio-items.masonry-items { columns: 2; } }
/* Carruseles (flickity) de Servicios */
.np26 #ajax-content-wrap .nectar-flickity .cell { box-shadow: none !important; }
.np26 #ajax-content-wrap .nectar-flickity .flickity-page-dots .dot { background: var(--stone) !important; }
.np26 #ajax-content-wrap .nectar-flickity .flickity-page-dots .dot.is-selected { background: var(--gold) !important; }
/* Visor (fancybox de Salient) */
.np26 .fancybox-bg { background: #0c0b0a; }
.np26 .fancybox-is-open .fancybox-bg { opacity: .96; }
.np26 .fancybox-infobar { font-family: var(--sans); font-size: .72rem; letter-spacing: .24em; color: var(--stone); }
.np26 .fancybox-button { background: transparent; color: var(--ivory); }
.np26 .fancybox-button:hover { color: var(--gold); }

/* Tarjetas con foto (columnas con imagen de fondo + enlace nectar_cta o video): indice de Trabajos, 917, bodas con video */
.np26 #ajax-content-wrap .wpb_column[data-using-bg="true"]:has(:is(.nectar-cta, .nectar_video_lightbox)) { overflow: hidden; }
.np26 #ajax-content-wrap .wpb_column[data-using-bg="true"]:has(:is(.nectar-cta, .nectar_video_lightbox)) > .vc_column-inner { position: relative; }
.np26 #ajax-content-wrap .wpb_column[data-using-bg="true"]:has(:is(.nectar-cta, .nectar_video_lightbox)) .column-image-bg { transition: transform 1.4s var(--ease); }
.np26 #ajax-content-wrap .wpb_column[data-using-bg="true"]:has(:is(.nectar-cta, .nectar_video_lightbox)):hover .column-image-bg { transform: scale(1.05); }
.np26 #ajax-content-wrap .wpb_column[data-using-bg="true"]:has(:is(.nectar-cta, .nectar_video_lightbox)) .column-bg-overlay-wrap {
  opacity: 1 !important; background: linear-gradient(180deg, rgb(10 9 8 / 0) 45%, rgb(10 9 8 / .62) 100%);
}
.np26 #ajax-content-wrap .nectar-cta :is(h3, h4) { font-family: var(--serif) !important; font-style: normal !important; font-weight: 300 !important; font-size: clamp(1.4rem, 2vw, 1.85rem) !important; line-height: 1.15 !important; letter-spacing: 0 !important; text-transform: none !important; }
.np26 #ajax-content-wrap .nectar-cta .link_text { color: #fff !important; }
.np26 #ajax-content-wrap .nectar-cta .link_text .text { font-family: inherit !important; }
.np26 #ajax-content-wrap .nectar-cta .line { background-color: var(--gold) !important; }
.np26 #ajax-content-wrap .nectar-cta .next-arrow polyline { stroke: var(--gold); }
/* Boton de video (play + nombre) */
/* un solo circulo: contorno blanco fino que se rellena de dorado al pasar el raton. El circulo dorado del tema
   (.inner-wrap::before) se vacia; el borde y el fondo van en .play, redondeado (antes salia un cuadrado alrededor) */
.np26 #ajax-content-wrap .nectar_video_lightbox .play {
  background: rgb(255 255 255 / .1) !important; border: 1px solid rgb(255 255 255 / .85) !important; border-radius: 50% !important; box-shadow: none !important;
  transition: background .4s, border-color .4s;
}
.np26 #ajax-content-wrap .nectar_video_lightbox .play::before, .np26 #ajax-content-wrap .nectar_video_lightbox .play::after { display: none !important; }
.np26 #ajax-content-wrap .nectar_video_lightbox .play .inner-wrap::before { background: transparent !important; box-shadow: none !important; }
.np26 #ajax-content-wrap .nectar_video_lightbox:hover .play, .np26 #ajax-content-wrap .nectar_video_lightbox:focus-visible .play { background: var(--gold) !important; border-color: var(--gold) !important; }
.np26 #ajax-content-wrap .nectar_video_lightbox .play svg path { fill: #fff !important; }
.np26 #ajax-content-wrap .nectar_video_lightbox .link-text h6 { font-family: var(--serif) !important; font-style: italic !important; font-weight: 300 !important; font-size: clamp(1.4rem, 2vw, 1.8rem) !important; text-transform: none !important; letter-spacing: 0 !important; color: #fff !important; }

/* Preguntas frecuentes (toggles de Salient) */
.np26 #ajax-content-wrap .toggles .toggle { border-bottom: 1px solid var(--stone) !important; border-top: 0 !important; margin: 0 !important; background: none !important; }
.np26 #ajax-content-wrap .toggles .toggle:first-child { border-top: 1px solid var(--stone) !important; }
.np26 #ajax-content-wrap .toggles .toggle > h3 a {
  font-family: var(--serif) !important; font-style: normal !important; font-weight: 400 !important; font-size: clamp(1.15rem, 1.6vw, 1.4rem) !important; line-height: 1.3 !important;
  color: var(--ink) !important; padding: 1.15rem 3rem 1.15rem 0 !important; text-transform: none !important; letter-spacing: 0 !important; background: none !important;
}
/* fuera el subrayado decorativo del estilo "minimal" y su icono: un + / – discreto a la derecha */
.np26 #ajax-content-wrap .toggles .toggle > h3::before, .np26 #ajax-content-wrap .toggles .toggle > h3::after { display: none !important; }
.np26 #ajax-content-wrap .toggles .toggle > h3 a i { display: none !important; }
.np26 #ajax-content-wrap .toggles .toggle > h3 { display: block !important; width: 100%; }
.np26 #ajax-content-wrap .toggles .toggle > h3 a { position: relative; display: block !important; width: 100%; }
.np26 #ajax-content-wrap .toggles .toggle > h3 a::after {
  content: "+"; position: absolute; right: .2rem; top: 50%; translate: 0 -50%; font-family: var(--sans); font-weight: 300; font-size: 1.5rem; line-height: 1; color: var(--gold-deep);
}
.np26 #ajax-content-wrap .toggles .toggle.open > h3 a::after { content: "–"; }
.np26 #ajax-content-wrap .toggles .toggle.open > h3 a { color: var(--gold-deep) !important; }
/* columnas "boxed" de Salient (caja blanca con sombra): fuera, es del estilo antiguo */
.np26 #ajax-content-wrap .wpb_column.boxed > .vc_column-inner { background: none !important; box-shadow: none !important; }
.np26 #ajax-content-wrap .toggles .toggle > div { padding: 0 0 1.2rem !important; }

/* Formularios de Contact Form 7 (pagina de Contacto y pie) */
.np26 .wpcf7 label { font-family: var(--sans) !important; font-style: normal; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }
.np26 .wpcf7 :is(input[type=text], input[type=tel], input[type=email], input[type=url], input[type=date], textarea, select) {
  font-family: var(--sans) !important; font-size: 1rem !important; font-style: normal; color: var(--ink) !important; letter-spacing: 0; text-transform: none;
  background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--muted) !important; border-radius: 0 !important; padding: .7em 0 !important; box-shadow: none !important; width: 100%;
}
.np26 .wpcf7 textarea { min-height: 9rem; resize: vertical; }
.np26 .wpcf7 :is(input, textarea, select):focus { border-bottom-color: var(--gold-deep) !important; outline: none; }
.np26 .wpcf7 ::placeholder { color: var(--muted); opacity: 1; }
.np26 .wpcf7 input[type=submit] {
  font-family: var(--sans) !important; font-style: normal; font-size: .74rem !important; font-weight: 400; letter-spacing: .26em; text-transform: uppercase;
  background: var(--ink) !important; color: var(--ivory) !important; border: 1px solid var(--ink) !important; border-radius: 0 !important; padding: 1.05em 2.1em !important;
  box-shadow: none !important; transition: background .4s, border-color .4s; margin-top: .6rem; cursor: pointer;
}
.np26 .wpcf7 input[type=submit]:hover { background: var(--gold) !important; border-color: var(--gold) !important; }
.np26 .wpcf7 .wpcf7-not-valid-tip { font-family: var(--sans) !important; font-style: normal; font-size: .8rem; color: #9b3b2e; }
/* Respuesta del formulario. Si falta algo: aviso discreto con filete rojizo. Enviado: nota en serif con antetitulo dorado; en el
   formulario de Contacto (.np26-form) los campos se recogen y queda solo la nota (np26.js la deja a la vista) */
.np26 #ajax-content-wrap .wpcf7 .wpcf7-response-output {
  font-family: var(--sans); font-style: normal; font-size: .92rem; line-height: 1.55; color: var(--ink-2); background: rgb(155 59 46 / .05);
  margin: 1.6rem 0 0 !important; padding: .9rem 1.2rem !important; border: 0 !important; border-left: 2px solid #9b3b2e !important; border-radius: 0;
}
.np26 #ajax-content-wrap .wpcf7 form.sent .wpcf7-response-output {
  font-family: var(--serif); font-style: italic; font-size: clamp(1.3rem, 2.1vw, 1.65rem); line-height: 1.4; color: var(--ink); background: var(--sand);
  padding: clamp(1.8rem, 4vw, 2.8rem) clamp(1.4rem, 3.5vw, 2.6rem) !important; border: 0 !important; border-top: 1px solid var(--gold) !important;
}
.np26 #ajax-content-wrap .wpcf7 form.sent .wpcf7-response-output::before {
  content: "Mensaje enviado"; display: block; margin-bottom: 1rem;
  font-family: var(--sans); font-style: normal; font-size: .72rem; letter-spacing: .26em; text-transform: uppercase; color: var(--gold-deep);
}
.np26 #ajax-content-wrap .wpcf7 form.sent .np26-form { display: none; }
.np26 #ajax-content-wrap .wpcf7 form.sent:has(.np26-form) .wpcf7-response-output {
  margin: 0 !important; padding: 0 !important; border: 0 !important; background: none; font-size: clamp(1.6rem, 2.6vw, 2.1rem); line-height: 1.3;
}
.np26 #ajax-content-wrap .np26-contact__form:has(form.sent) .np26-contact__formtitle { display: none; }

/* Blog: listado de entradas (nectar_blog) y barra lateral */
.np26 #ajax-content-wrap .post-area article.post { margin-bottom: clamp(2.5rem, 5vw, 4rem) !important; padding-bottom: clamp(2.5rem, 5vw, 4rem); border-bottom: 1px solid var(--stone); }
.np26 #ajax-content-wrap .post-area .post-featured-img { transition: transform 1.2s var(--ease); }
.np26 #ajax-content-wrap .post-area .post-featured-img-wrap { overflow: hidden; }
.np26 #ajax-content-wrap .post-area article:hover .post-featured-img { transform: scale(1.04); }
.np26 #ajax-content-wrap .post-area .meta-category a { font-family: var(--sans) !important; font-size: .7rem !important; letter-spacing: .3em; text-transform: uppercase; color: var(--gold-deep) !important; background: none !important; padding: 0 !important; }
.np26 #ajax-content-wrap .post-area .post-header h3.title, .np26 #ajax-content-wrap .post-area .post-header h3.title a {
  font-family: var(--serif) !important; font-style: normal !important; font-weight: 300 !important; font-size: clamp(1.6rem, 2.4vw, 2.2rem) !important; line-height: 1.15 !important; color: var(--ink) !important;
}
.np26 #ajax-content-wrap .post-area .excerpt { font-size: 1rem; line-height: 1.7; color: var(--ink-2); }
.np26 #ajax-content-wrap .post-area .grav-wrap .text :is(a, span) { font-size: .78rem !important; letter-spacing: .08em; color: var(--muted) !important; }
.np26 #ajax-content-wrap #sidebar :is(h4, .widget-title) { font-family: var(--sans) !important; font-style: normal; font-size: .72rem !important; letter-spacing: .3em; text-transform: uppercase; color: var(--gold-deep) !important; }
.np26 #ajax-content-wrap #sidebar :is(a, li) { font-size: .95rem; color: var(--ink-2) !important; }
.np26 #ajax-content-wrap #pagination :is(a, span) { font-family: var(--sans) !important; color: var(--ink) !important; border-radius: 0 !important; }

/* ---------- 2. Cabecera de Salient ---------- */
.np26 #header-outer { background-color: rgb(247 243 236 / .95) !important; box-shadow: none !important; border-bottom: 1px solid var(--stone);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); transition: background-color .4s, border-color .4s; }
.np26 #header-outer.transparent { background-color: transparent !important; border-bottom-color: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
.np26 #header-outer header#top nav > ul.sf-menu > li > a {
  font-family: var(--sans) !important; font-size: .72rem !important; font-weight: 400 !important; letter-spacing: .2em; text-transform: uppercase;
  color: var(--ink) !important;
}
.np26 #header-outer.transparent header#top nav > ul.sf-menu > li > a { color: #fff !important; }
.np26 #header-outer header#top nav > ul.sf-menu > li > a:hover, .np26 #header-outer header#top nav > ul.sf-menu > li.current-menu-item > a { color: var(--gold-deep) !important; }
.np26 #header-outer.transparent header#top nav > ul.sf-menu > li > a:hover { color: #fff !important; opacity: .8; }
/* subrayado animado de Salient en dorado */
.np26 #header-outer header#top nav > ul.sf-menu > li > a::after { border-color: var(--gold) !important; }
/* Elemento de menu con la clase "button_bordered" (ahora Trabajos): recuadro fino */
.np26 #header-outer header#top nav > ul.sf-menu > li.button_bordered > a::before {
  border: 1px solid currentColor !important; border-radius: 0 !important; background: none !important; opacity: .7;
}
.np26 #header-outer header#top nav > ul.sf-menu > li.button_bordered > a::after { display: none; }
/* Submenu (Trabajos > Fotografia / Video) */
.np26 #header-outer .sf-menu li ul { background: var(--ivory) !important; border: 1px solid var(--stone); box-shadow: 0 20px 40px -24px rgb(29 26 23 / .35) !important; }
.np26 #header-outer .sf-menu li ul li a { font-family: var(--sans) !important; font-size: .7rem !important; letter-spacing: .18em; text-transform: uppercase; color: var(--ink) !important; background: none !important; }
.np26 #header-outer .sf-menu li ul li a:hover { color: var(--gold-deep) !important; }
/* Boton "Menu" movil */
.np26 #header-outer .slide-out-widget-area-toggle .label { font-family: var(--sans) !important; font-style: normal !important; letter-spacing: .24em; text-transform: uppercase; font-size: .7rem !important; }

/* ---------- 3. Menu movil (panel lateral de Salient) ---------- */
.np26 #slide-out-widget-area { background: var(--night) !important; }
.np26 #slide-out-widget-area .off-canvas-menu-container .menu > li > a {
  /* los textos del menu estan en mayusculas en WordPress: serif algo mas pequena y espaciada */
  font-family: var(--serif) !important; font-weight: 300 !important; font-size: clamp(1.5rem, 6.4vw, 2.1rem) !important; line-height: 1.25 !important;
  text-transform: none; letter-spacing: .06em; color: var(--ivory) !important;
}
.np26 #slide-out-widget-area .off-canvas-menu-container .menu > li > a:first-letter { text-transform: uppercase; }
.np26 #slide-out-widget-area .off-canvas-menu-container .menu > li > a:hover { color: var(--gold) !important; }
.np26 #slide-out-widget-area .sub-menu a { font-family: var(--sans) !important; font-size: .78rem !important; letter-spacing: .2em; text-transform: uppercase; color: var(--stone) !important; }
.np26 #slide-out-widget-area .bottom-meta-wrap, .np26 #slide-out-widget-area .bottom-text { font-family: var(--sans) !important; font-style: normal; color: var(--stone) !important; font-size: .8rem; letter-spacing: .12em; }
.np26 #slide-out-widget-area .off-canvas-social-links a { color: var(--stone) !important; }

/* ---------- 3b. Cabecera y menu propios (los pinta el plugin con las entradas del menu de WordPress) ----------
   Solo si existen (#np26-nav) se oculta la cabecera de Salient; si no, se queda la suya con los estilos de los apartados 2 y 3. */
body.np26:has(#np26-nav) :is(#header-outer, #header-space, #search-outer, #slide-out-widget-area, #slide-out-widget-area-bg) { display: none !important; }
body.np26 { --np26-top: var(--wp-admin--admin-bar--height, 0px); --np26-nav-h: 108px; }
/* paginas sin foto/video arriba: el contenido empieza debajo de la cabecera (con foto, la cabecera va transparente encima) */
body.np26:has(#np26-nav):not(:has(#page-header-bg, .np26-hero, #ajax-content-wrap .main-content > .row > .wpb_row:first-of-type > .row-bg-wrap .row-bg.using-image)) #ajax-content-wrap { padding-top: var(--np26-nav-h); }
.np26 .np26-nav {
  position: fixed; inset: var(--np26-top) 0 auto 0; z-index: 9990; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  padding: .75rem var(--pad); color: var(--ink); background: rgb(247 243 236 / .92); -webkit-backdrop-filter: blur(14px) saturate(1.2); backdrop-filter: blur(14px) saturate(1.2);
  box-shadow: 0 1px 0 rgb(29 26 23 / .08); font-family: var(--sans); font-weight: 300; font-style: normal;
  transition: background-color .6s var(--ease), color .6s var(--ease), padding .6s var(--ease), box-shadow .6s;
}
/* sobre la foto o el video de arriba: transparente y en blanco hasta que se baja */
body.np26:has(#page-header-bg, .np26-hero, #ajax-content-wrap .main-content > .row > .wpb_row:first-of-type > .row-bg-wrap .row-bg.using-image) .np26-nav:not(.is-solid) {
  background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; color: #fff; padding-block: 1.4rem;
}
.np26 .np26-nav ul { list-style: none; margin: 0; padding: 0; }
.np26 .np26-nav li { margin: 0; padding: 0; }
.np26 .np26-nav li::before, .np26 .np26-nav li::marker { content: none; }
.np26 .np26-nav a { color: inherit; text-decoration: none; font-family: var(--sans); font-style: normal; }
.np26 .np26-nav__logo { grid-column: 2; grid-row: 1; justify-self: center; position: relative; display: block; width: clamp(118px, 11vw, 150px); line-height: 0; }
.np26 .np26-nav__logo img { width: 100%; height: auto; max-width: 100%; transition: opacity .5s; }
.np26 .np26-nav__logo .is-light { opacity: 0; }
.np26 .np26-nav__logo .is-dark { position: absolute; inset: 0; opacity: 1; }
body.np26:has(#page-header-bg, .np26-hero, #ajax-content-wrap .main-content > .row > .wpb_row:first-of-type > .row-bg-wrap .row-bg.using-image) .np26-nav:not(.is-solid) .np26-nav__logo .is-light { opacity: 1; }
body.np26:has(#page-header-bg, .np26-hero, #ajax-content-wrap .main-content > .row > .wpb_row:first-of-type > .row-bg-wrap .row-bg.using-image) .np26-nav:not(.is-solid) .np26-nav__logo .is-dark { opacity: 0; }
.np26 .np26-nav__side { grid-row: 1; grid-column: 1; }
.np26 .np26-nav__side--r { grid-column: 3; justify-self: end; }
.np26 .np26-nav__links { display: flex; align-items: center; gap: clamp(.9rem, 1.7vw, 2.2rem); }
.np26 .np26-nav__links a { display: inline-block; font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; font-weight: 400; position: relative; padding: .4em 0; white-space: nowrap; }
.np26 .np26-nav__links a::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--gold);
  transform: scaleX(0); transform-origin: right; transition: transform .5s var(--ease);
}
.np26 .np26-nav__links a:hover::after, .np26 .np26-nav__links a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; }
.np26 .np26-nav__links .np26-nav__cta { border: 1px solid currentColor; padding: .75em 1.4em; transition: background .3s, border-color .3s, color .3s; }
.np26 .np26-nav__links .np26-nav__cta::after { display: none; }
.np26 .np26-nav__links .np26-nav__cta:hover { background: var(--gold); border-color: var(--gold); color: #fff; }
.np26 .np26-burger {
  display: none; grid-column: 3; grid-row: 1; justify-self: end; align-items: center; gap: .8rem; background: none; border: 0; color: inherit; cursor: pointer; padding: .5rem;
  font: 400 .7rem/1 var(--sans); font-style: normal; letter-spacing: .24em; text-transform: uppercase;
}
.np26 .np26-burger span { display: block; width: 26px; height: 1px; background: currentColor; box-shadow: 0 7px 0 currentColor; margin-bottom: 7px; }
.np26 .np26-skip { position: absolute; left: 1rem; top: 1rem; z-index: 2; background: var(--ink); color: var(--ivory) !important; padding: .7em 1.2em; font-size: .75rem; letter-spacing: .14em; }
/* invisible salvo cuando se llega con el teclado (Tab) */
.np26 .np26-skip:not(:focus) { width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.np26 .np26-nav :focus-visible, .np26 .np26-menu :focus-visible { outline: 1px solid var(--gold); outline-offset: 4px; }
@media (max-width: 1200px) {
  body.np26 { --np26-nav-h: 92px; }
  .np26 .np26-nav { grid-template-columns: auto 1fr auto; }
  .np26 .np26-nav__logo { grid-column: 1; justify-self: start; }
  .np26 .np26-nav__side { display: none; }
  .np26 .np26-burger { display: inline-flex; }
}
/* Menu a pantalla completa (dialog: el foco queda dentro y Escape lo cierra) */
.np26 .np26-menu {
  position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0;
  background: var(--night); color: var(--ivory); font-family: var(--sans); font-style: normal; font-weight: 300; overflow: auto;
  opacity: 0; transition: opacity .5s var(--ease), display .5s allow-discrete, overlay .5s allow-discrete;
}
.np26 .np26-menu[open] { opacity: 1; }
@starting-style { .np26 .np26-menu[open] { opacity: 0; } }
.np26 .np26-menu::backdrop { background: transparent; }
.np26 .np26-menu__in { min-height: 100%; display: grid; grid-template-columns: 1.2fr 1fr; }
.np26 .np26-menu__nav { padding: calc(var(--np26-top) + 6rem) var(--pad) 3rem; display: flex; flex-direction: column; justify-content: center; }
.np26 .np26-menu__nav ol { list-style: none; margin: 0; padding: 0; counter-reset: np26m; }
.np26 .np26-menu__nav li { counter-increment: np26m; overflow: hidden; margin: 0; padding: 0; }
.np26 .np26-menu__nav li::before, .np26 .np26-menu__nav li::marker { content: none; }
.np26 .np26-menu__nav ol a {
  display: flex; align-items: baseline; gap: 1.2rem; font-family: var(--serif); font-style: normal; font-size: clamp(2.1rem, 5.2vw, 4.4rem); line-height: 1.12; font-weight: 300;
  color: var(--ivory); text-decoration: none; transition: color .35s;
}
.np26 .np26-menu__nav ol a::before { content: "0" counter(np26m); font: 400 .72rem/1 var(--sans); letter-spacing: .2em; color: var(--gold); }
.np26 .np26-menu__nav ol a:hover, .np26 .np26-menu__nav ol a[aria-current="page"] { color: var(--gold); font-style: italic; }
.np26 .np26-menu[open] .np26-menu__nav li a { animation: np26-rise .9s var(--ease) both; animation-delay: calc(var(--i) * 70ms + 120ms); }
@keyframes np26-rise { from { transform: translateY(105%); opacity: 0; } }
.np26 .np26-menu__foot { margin-top: 3rem; display: flex; flex-wrap: wrap; gap: 1rem 2.5rem; }
.np26 .np26-menu__foot a { font-family: var(--sans); font-size: .8rem; letter-spacing: .12em; color: var(--stone); text-decoration: none; }
.np26 .np26-menu__foot a:hover { color: var(--gold); }
.np26 .np26-menu__aside { position: relative; overflow: hidden; }
.np26 .np26-menu__aside img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; opacity: .75; }
.np26 .np26-menu__aside p { position: absolute; left: 2rem; bottom: 2rem; right: 2rem; margin: 0; font-family: var(--sans); font-size: .9rem; line-height: 1.9; color: var(--ivory); }
.np26 .np26-menu__close {
  position: absolute; top: calc(var(--np26-top) + 1.4rem); right: var(--pad); z-index: 2; background: none; border: 0; color: var(--ivory); cursor: pointer; padding: .8rem;
  font: 400 .7rem/1 var(--sans); font-style: normal; letter-spacing: .24em; text-transform: uppercase;
}
@media (max-width: 860px) { .np26 .np26-menu__in { grid-template-columns: 1fr; } .np26 .np26-menu__aside { display: none; } }
@media (prefers-reduced-motion: reduce) { .np26 .np26-menu[open] .np26-menu__nav li a { animation: none; } }
/* los anclajes (#peliculas, #galeria…) quedan por debajo de la cabecera fija */
.np26 #ajax-content-wrap [id] { scroll-margin-top: calc(var(--np26-nav-h) + var(--np26-top)); }

/* ---------- 4. Cabecera de video ---------- */
.np26 #ajax-content-wrap .np26-hero { min-height: max(560px, 100svh); }
/* En movil Salient oculta los videos al cargar y solo muestra el de fondo cuando oye su evento "play"; si el video ya ha arrancado
   antes (el MP4 ligero arranca enseguida), se queda transparente y la cabecera se ve en blanco. Se deja siempre a la vista */
.np26 #ajax-content-wrap .np26-hero .nectar-video-wrap,
.np26 #ajax-content-wrap .np26-hero .nectar-video-wrap video { opacity: 1 !important; visibility: visible !important; }
.np26 #ajax-content-wrap .np26-hero::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(180deg, rgb(10 9 8 / .5) 0%, rgb(10 9 8 / 0) 26%, rgb(10 9 8 / 0) 62%, rgb(10 9 8 / .55) 100%); }
.np26 #ajax-content-wrap .np26-hero > .row_col_wrap_12 { position: relative; z-index: 3; padding: 0 var(--pad) clamp(2rem, 6vh, 3.5rem); }
.np26 #ajax-content-wrap .np26-hero .vc_column_container > .vc_column-inner > .wpb_wrapper {
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 1rem;
}
.np26 #ajax-content-wrap .np26-hero .np26-eyebrow p { color: rgb(255 255 255 / .88); }
.np26 #ajax-content-wrap .np26-hero .np26-down { justify-self: center; }
.np26 #ajax-content-wrap .np26-hero .np26-down p { margin: 0; }
.np26 #ajax-content-wrap .np26-hero .np26-down a {
  display: grid; justify-items: center; gap: .8rem; font-size: .66rem; font-weight: 400; letter-spacing: .3em; text-transform: uppercase; color: #fff;
  border-bottom: 0 !important; padding-bottom: 0;   /* sin el subrayado dorado de los enlaces de texto: solo la linea animada */
}
.np26 #ajax-content-wrap .np26-hero .np26-down a::after {
  content: ""; width: 1px; height: 56px; background: linear-gradient(#fff, #fff) 0 0 / 100% 100% no-repeat, rgb(255 255 255 / .35);
  animation: np26-drip 2.4s var(--ease) infinite;
}
@keyframes np26-drip { from { background-position: 0 -56px, 0 0; } to { background-position: 0 56px, 0 0; } }
/* Boton de pausa del video: discreto y sin cambio al pasar el raton (lo pidieron Fran y Heli); con teclado, contorno fino */
.np26 #ajax-content-wrap .np26-pause,
.np26 #ajax-content-wrap .np26-pause:hover {
  justify-self: end; margin-right: 64px;   /* a la derecha flota el boton de WhatsApp */
  display: grid; place-items: center; width: 30px; height: 30px; padding: 0; cursor: pointer;
  border: 1px solid rgb(255 255 255 / .28); border-radius: 50% !important; background: none; color: rgb(255 255 255 / .6); box-shadow: none;
}
.np26 #ajax-content-wrap .np26-pause svg { width: 9px; height: 9px; fill: currentColor; }
.np26 #ajax-content-wrap .np26-pause:focus { outline: none; }
.np26 #ajax-content-wrap .np26-pause:focus-visible { outline: 1px solid rgb(255 255 255 / .8); outline-offset: 3px; }
@media (max-width: 760px) {
  .np26 #ajax-content-wrap .np26-hero .vc_column_container > .vc_column-inner > .wpb_wrapper { grid-template-columns: 1fr auto; }
  .np26 #ajax-content-wrap .np26-hero .np26-eyebrow { display: none; }
  .np26 #ajax-content-wrap .np26-hero .np26-down { justify-self: start; }
}

/* ---------- 5. Presentacion ---------- */
.np26 #ajax-content-wrap .np26-pres .np26-pres__title { padding-right: clamp(1rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-pres h1 { font-size: clamp(2.3rem, min(4.2vw, 8vh), 4.4rem); line-height: 1.04; margin-top: 1.2rem; color: var(--ink); }
.np26 #ajax-content-wrap .np26-pres h1 em { display: block; }
.np26 #ajax-content-wrap .np26-lead { margin-bottom: 1.6rem; }
.np26 #ajax-content-wrap .wpb_text_column.np26-lead p { font-family: var(--serif); font-size: clamp(1.5rem, min(2.4vw, 4.5vh), 2.2rem); line-height: 1.3; font-weight: 300; color: var(--ink); }
.np26 #ajax-content-wrap .np26-pres__text p { color: var(--ink-2); }
/* dorado sobre marfil = 3:1, solo valido como texto grande: nunca por debajo de 24px */
.np26 #ajax-content-wrap .np26-close { margin-top: 2rem; }
.np26 #ajax-content-wrap .np26-close p { font-family: var(--serif); font-style: italic; font-size: clamp(1.55rem, 2vw, 1.8rem); line-height: 1.35; color: var(--gold-deep); }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-pres .np26-pres__title { padding-right: 0; margin-bottom: 2.5rem; } }

/* ---------- 6. Filosofia ---------- */
.np26 #ajax-content-wrap .np26-values { margin-top: clamp(2rem, 4vw, 3rem); border-top: 1px solid var(--stone); counter-reset: np26v; padding-top: 0 !important; }
.np26 #ajax-content-wrap .np26-values .wpb_column { counter-increment: np26v; padding-top: 2.2rem; }
.np26 #ajax-content-wrap .np26-values h3 { font-size: clamp(1.7rem, 2.4vw, 2.3rem); line-height: 1.05; margin: 0 0 1rem; color: var(--ink); }
.np26 #ajax-content-wrap .np26-values h3::before {
  content: counter(np26v, decimal-leading-zero); display: block; margin-bottom: 1rem;
  font-family: var(--serif); font-style: italic; font-size: 3.6rem; line-height: 1; color: var(--gold);
}
.np26 #ajax-content-wrap .np26-values p { font-size: .98rem; color: var(--ink-2); }
/* frase-resumen de cada valor (parrafo en negrita), como entradilla en serif */
.np26 #ajax-content-wrap .np26-values p > strong:only-child {
  display: block; font-family: var(--serif); font-style: italic; font-weight: 400; font-size: 1.3rem; line-height: 1.35; color: var(--ink);
}

/* ---------- 7. Galeria (vc_gallery de Salient) ---------- */
.np26 #ajax-content-wrap .np26-gal { padding: var(--section) clamp(.6rem, 2vw, 2rem) clamp(3rem, 6vw, 5rem) !important; background: var(--ivory); }
.np26 #ajax-content-wrap .np26-gal :is(.np26-eyebrow, .np26-h2) { padding-inline: calc(var(--pad) - clamp(.6rem, 2vw, 2rem)); }
.np26 #ajax-content-wrap .np26-gal .np26-h2 { margin-bottom: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-gal__grid { margin: 0 !important; }   /* el mosaico es el general de las galerias (1b) */
/* Galeria plegada (la activa np26.js): corte a 1,5 pantallas sobre .portfolio-wrap (las columnas siguen equilibradas) */
.np26 #ajax-content-wrap .np26-gal.is-collapsible:not(.is-open) .np26-gal__grid .portfolio-wrap { max-height: 150vh; overflow: hidden; }
.np26 #ajax-content-wrap .np26-gal__more { display: flex; justify-content: center; position: relative; z-index: 2; margin-top: -10rem; padding: 7rem 0 1.5rem;
  background: linear-gradient(180deg, rgb(247 243 236 / 0), var(--ivory) 62%); }
.np26 #ajax-content-wrap .np26-gal.is-open .np26-gal__more { display: none; }.np26 #ajax-content-wrap .np26-gal__more button {
  font-family: var(--sans); font-style: normal; font-size: .74rem; font-weight: 400; letter-spacing: .26em; text-transform: uppercase; line-height: 1.2;
  background: var(--ivory); color: var(--ink); border: 1px solid var(--ink); border-radius: 0; padding: 1.05em 2.1em; cursor: pointer;
  transition: background .45s var(--ease), color .45s var(--ease), border-color .45s;
}
.np26 #ajax-content-wrap .np26-gal__more button:hover { background: var(--gold); border-color: var(--gold); color: #fff; }

/* ---------- 8. Testimonios + resenas ---------- */
.np26 #ajax-content-wrap .np26-tes__grid { margin-top: clamp(2.5rem, 5vw, 4rem); padding: 0 !important; }
.np26 #ajax-content-wrap .np26-tes__card .img-with-aniamtion-wrap { margin-bottom: 1.6rem; }
.np26 #ajax-content-wrap .np26-tes__card .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-tes__card .img-with-aniamtion-wrap img {
  width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; transition: transform 1.2s var(--ease); opacity: 1;
}
.np26 #ajax-content-wrap .np26-tes__card:hover .img-with-aniamtion-wrap img { transform: scale(1.04); }
.np26 #ajax-content-wrap .np26-tes__card h3 { font-size: clamp(1.6rem, 2.2vw, 2.1rem); line-height: 1.05; margin-bottom: 1rem; color: var(--ink); }
.np26 #ajax-content-wrap .np26-tes__card h3::before { content: "“"; display: block; font-size: 3.2rem; line-height: .5; height: .45em; color: var(--gold); }
.np26 #ajax-content-wrap .np26-tes__card p { font-size: .97rem; line-height: 1.75; color: var(--ink-2); margin-bottom: .8em; }
.np26 #ajax-content-wrap .np26-reviews { margin-top: clamp(3rem, 6vw, 5rem); padding-top: 3rem; border-top: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-reviews .ti-widget :is(.ti-name, .ti-rating-text strong) { font-family: var(--serif) !important; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-tes__card { max-width: 560px; margin: 0 auto 3rem !important; float: none; } }

/* ---------- 9. Instagram ---------- */
.np26 #ajax-content-wrap .np26-ig-head { padding: var(--section) 0 clamp(2rem, 4vw, 3rem) !important; }
.np26 #ajax-content-wrap .np26-sep { margin: 0 !important; }   /* el separador es el general (1b) */
.np26 #ajax-content-wrap .np26-ig > .row_col_wrap_12 { display: grid !important; grid-template-columns: repeat(3, 1fr); }
.np26 #ajax-content-wrap .np26-ig .np26-ig__ph { width: auto !important; margin: 0 !important; aspect-ratio: 1 / 1; overflow: visible; }
.np26 #ajax-content-wrap .np26-ig .np26-ig__ph .column-image-bg-wrap { overflow: hidden; }
.np26 #ajax-content-wrap .np26-ig .column-image-bg { transition: transform 1.2s var(--ease); }
.np26 #ajax-content-wrap .np26-ig .np26-ig__ph:hover .column-image-bg { transform: scale(1.05); }
.np26 #ajax-content-wrap .np26-ig .np26-ig__ph > .vc_column-inner { height: 100%; display: grid; place-items: center; }
.np26 #ajax-content-wrap .np26-ig .wpb_wrapper { position: relative; z-index: 3; white-space: nowrap; }
@media (max-width: 690px) { .np26 #ajax-content-wrap .np26-ig .nectar-button { font-size: .62rem !important; letter-spacing: .18em; padding: .9em 1.2em !important; } }

/* ---------- 10. Pie (widgets de Salient, editables en Apariencia > Widgets) con el aspecto oscuro del muestrario ---------- */
.np26 #footer-outer { background: var(--night) !important; color: var(--stone) !important; border-top: 0; }
.np26 #footer-outer #footer-widgets { padding: clamp(4rem, 7vw, 6rem) 0 clamp(2.5rem, 4vw, 3.5rem) !important; background: transparent !important; }
.np26 #footer-outer #footer-widgets .container { max-width: 1320px; padding-inline: var(--pad); }
.np26 #footer-outer #footer-widgets p { font-size: .95rem; line-height: 1.75; color: rgb(217 207 191 / .85) !important; font-style: normal; }
.np26 #footer-outer #footer-widgets p em, .np26 #footer-outer #footer-widgets p strong { font-style: normal; }
/* Titulos de los widgets del pie, segun como esten escritos:
   parrafo solo en negrita (CERTIFICADO DE PROFESIONALIDAD) -> versalitas doradas;
   parrafo en cursiva+negrita (NORTHPRODUCCIONES, Dejanos aqui...) -> titulo en serif */
.np26 #footer-outer #footer-widgets p > strong:only-child {
  font-family: var(--sans) !important; font-size: .68rem; font-weight: 400; letter-spacing: .3em; text-transform: uppercase; color: var(--gold);
}
.np26 #footer-outer #footer-widgets p > em:only-child > strong:only-child, .np26 #footer-outer #footer-widgets p > strong:only-child > em:only-child {
  font-family: var(--serif) !important; font-style: italic; font-size: 1.6rem; line-height: 1.25; font-weight: 300; letter-spacing: 0; text-transform: none; color: var(--ivory);
}
.np26 #footer-outer #footer-widgets p[style*="font-size"] { font-size: 1rem !important; }
.np26 #footer-outer a { color: var(--ivory) !important; }
.np26 #footer-outer a:hover { color: var(--gold) !important; }
/* logos en negro (p. ej. mywed) sobre fondo oscuro: en claro */
.np26 #footer-outer img[src*="black"] { filter: invert(1) brightness(1.8); }
/* formulario del pie sobre oscuro */
.np26 #footer-outer #footer-widgets .wpcf7 label { color: var(--stone); }
.np26 #footer-outer #footer-widgets .wpcf7 :is(input[type=text], input[type=tel], input[type=email], input[type=url], textarea, select) { color: var(--ivory) !important; border-bottom-color: rgb(217 207 191 / .45) !important; }
.np26 #footer-outer #footer-widgets .wpcf7 :is(input, textarea, select):focus { border-bottom-color: var(--gold) !important; }
.np26 #footer-outer #footer-widgets .wpcf7 ::placeholder { color: rgb(217 207 191 / .7); }
.np26 #footer-outer #footer-widgets .wpcf7 input[type=submit] { background: var(--ivory) !important; color: var(--ink) !important; border-color: var(--ivory) !important; }
.np26 #footer-outer #footer-widgets .wpcf7 input[type=submit]:hover { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
.np26 #footer-outer #footer-widgets .wpcf7 .wpcf7-not-valid-tip { color: #e7a99c; }
.np26 #footer-outer #footer-widgets .wpcf7 .wpcf7-response-output { color: var(--stone); background: rgb(231 169 156 / .08); border-left-color: #e7a99c !important; }
.np26 #footer-outer #footer-widgets .wpcf7 form.sent .wpcf7-response-output { color: var(--ivory); background: rgb(255 255 255 / .05); }
.np26 #footer-outer #footer-widgets .wpcf7 form.sent .wpcf7-response-output::before { color: var(--gold); }
.np26 #footer-outer #copyright { background: var(--night) !important; border-top: 1px solid rgb(217 207 191 / .15); padding: 1.8rem 0 2rem !important; }
.np26 #footer-outer #copyright .container { max-width: 1320px; padding-inline: var(--pad); }
.np26 #footer-outer #copyright p { font-size: .72rem !important; letter-spacing: .16em; text-transform: uppercase; color: rgb(217 207 191 / .7) !important; }
.np26 #footer-outer #copyright .social a, .np26 #footer-outer #copyright .social i { color: var(--stone) !important; }
.np26 #footer-outer #copyright .social a:hover i { color: var(--gold) !important; }

/* =====================================================================
   12. PORTADA · PROPUESTA LIBRE (borrador 3684). Clases propias: no tocan la portada fiel ni el resto de paginas.
   filas: np26-hero2, np26-about, np26-services, np26-film, np26-weddings, np26-tes2, np26-steps, np26-faq, np26-places, np26-cta
   ===================================================================== */
.np26 #ajax-content-wrap :is(.np26-about, .np26-services, .np26-weddings, .np26-faq, .np26-places) { padding-top: var(--section) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-intro { margin-top: 1.3rem; max-width: 54ch; }
.np26 #ajax-content-wrap .np26-intro p { font-size: 1.06rem; color: var(--ink-2); }
.np26 #ajax-content-wrap .np26-center { text-align: center; margin-top: clamp(2rem, 4vw, 3rem); }
/* fondo a todo el ancho en filas "dentro del contenedor" */
.np26 #ajax-content-wrap :is(.np26-steps) { box-shadow: 0 0 0 100vmax var(--sand); clip-path: inset(0 -100vmax); background: var(--sand); }

/* Cabecera con titulo (H1 con las cuatro zonas) y dos llamadas a la accion sobre el video */
/* velo: arriba para el menu y, sobre todo, en la esquina inferior izquierda donde va el texto (el video tiene zonas muy claras) */
/* display block: el clearfix del tema deja el ::after de las filas en display:table y asi mide 0x0 (el velo no se veia) */
.np26 #ajax-content-wrap .np26-hero2::after {
  display: block;
  background: radial-gradient(ellipse 85% 75% at 0% 100%, rgb(10 9 8 / .78) 0%, rgb(10 9 8 / .45) 45%, rgb(10 9 8 / 0) 75%),
              linear-gradient(180deg, rgb(10 9 8 / .5) 0%, rgb(10 9 8 / 0) 24%, rgb(10 9 8 / 0) 55%, rgb(10 9 8 / .5) 100%);
}
.np26 #ajax-content-wrap .np26-hero2 :is(.np26-hero__title h1, .np26-hero__sub p, .np26-eyebrow p) { text-shadow: 0 1px 28px rgb(10 9 8 / .45); }
.np26 #ajax-content-wrap .np26-hero2 .vc_column_container > .vc_column-inner > .wpb_wrapper { display: block; max-width: 64rem; }
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__title h1 {
  font-size: clamp(2.4rem, min(5.4vw, 9vh), 5.6rem); line-height: 1.02; color: #fff; margin: 1.1rem 0 1.3rem; text-wrap: balance;
}
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__title h1 em { display: block; color: rgb(232 220 178); }
/* el margen va en el bloque: el del parrafo lo anula la regla general "el ultimo parrafo de un bloque sin margen" */
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__sub { margin-bottom: clamp(1.9rem, 4vh, 2.8rem); }
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__sub p {
  font-family: var(--serif); font-style: italic; font-size: clamp(1.15rem, 1.8vw, 1.55rem); line-height: 1.45; color: rgb(255 255 255 / .92); max-width: 42ch;
}
.np26 #ajax-content-wrap .np26-hero2 a.nectar-button { margin: 0 .8rem .8rem 0 !important; }
.np26 #ajax-content-wrap .np26-hero2 a.nectar-button:first-of-type { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
.np26 #ajax-content-wrap .np26-hero2 a.nectar-button:nth-of-type(2) { color: #fff !important; border-color: rgb(255 255 255 / .75) !important; }
.np26 #ajax-content-wrap .np26-hero2 a.nectar-button:hover { background: #fff !important; border-color: #fff !important; color: var(--ink) !important; }
.np26 #ajax-content-wrap .np26-hero2 .np26-down { position: absolute; left: 50%; bottom: 0; translate: -50% 0; }
.np26 #ajax-content-wrap .np26-hero2 .np26-pause { position: absolute; right: calc(var(--pad) + 64px); bottom: calc(clamp(2rem, 6vh, 3.5rem) + 6px); margin: 0; }
@media (max-width: 760px) {
  .np26 #ajax-content-wrap .np26-hero2 .np26-hero__title h1 { font-size: clamp(2.1rem, 9vw, 2.8rem); }
  .np26 #ajax-content-wrap .np26-hero2 .np26-down { display: none; }
  /* en movil los botones van apilados y el ancho cambia de pagina a pagina: la pausa sube encima del texto, sobre el video */
  .np26 #ajax-content-wrap .np26-hero2 .np26-pause { right: 0; bottom: auto; top: -46px; }
  .np26 #ajax-content-wrap .np26-hero2 .np26-eyebrow { display: block; }
  .np26 #ajax-content-wrap .np26-hero2 .np26-eyebrow p { font-size: .62rem; letter-spacing: .18em; }
  .np26 #ajax-content-wrap .np26-hero2 .np26-eyebrow p::before { display: none; }
}

/* Quienes somos: foto + texto */
.np26 #ajax-content-wrap .np26-about > .row_col_wrap_12 { align-items: center; }
.np26 #ajax-content-wrap .np26-about .np26-about__text { padding-left: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-about .np26-lead { margin: 1.4rem 0 1.4rem; }
.np26 #ajax-content-wrap .np26-about .np26-lead p { font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.8rem); line-height: 1.35; color: var(--ink); }
.np26 #ajax-content-wrap .np26-about .np26-link, .np26 #ajax-content-wrap :is(.np26-card, .np26-film__text, .np26-faq__text, .np26-places__text) .np26-link { margin-top: 1.8rem; }
.np26 #ajax-content-wrap .np26-about .np26-link a::after, .np26 #ajax-content-wrap :is(.np26-card, .np26-film__text, .np26-faq__text, .np26-places__text) .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap .np26-about .np26-link a:hover::after, .np26 #ajax-content-wrap :is(.np26-card, .np26-film__text, .np26-faq__text, .np26-places__text) .np26-link a:hover::after { transform: translateX(4px); }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-about .np26-about__img { margin-bottom: 2.5rem; } }

/* Que hacemos: tres tarjetas (foto 4:5 + titulo + texto + enlace) */
.np26 #ajax-content-wrap .np26-services__grid { margin-top: clamp(2.5rem, 5vw, 4rem); padding: 0 !important; }
.np26 #ajax-content-wrap :is(.np26-card, .np26-tes__card) .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-card .img-with-aniamtion-wrap { margin-bottom: 1.5rem; }
.np26 #ajax-content-wrap .np26-card .img-with-aniamtion-wrap img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; transition: transform 1.2s var(--ease); opacity: 1; }
.np26 #ajax-content-wrap .np26-card:hover .img-with-aniamtion-wrap img { transform: scale(1.04); }
.np26 #ajax-content-wrap .np26-card h3 { font-size: clamp(1.6rem, 2.2vw, 2.1rem); margin: 0 0 .7rem; color: var(--ink); }
.np26 #ajax-content-wrap .np26-card p { font-size: .98rem; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-card { max-width: 560px; margin: 0 auto 3rem !important; float: none; } }

/* Peliculas: banda oscura, texto + dos tarjetas de video */
/* banda oscura a todo el ancho (antes quedaba como un cuadro negro con laterales claros) */
.np26 #ajax-content-wrap .np26-film { background: var(--night); padding: var(--section) var(--pad) !important; box-shadow: 0 0 0 100vmax var(--night); clip-path: inset(0 -100vmax); }
.np26 #ajax-content-wrap .np26-film > .row_col_wrap_12 { align-items: center; max-width: 1320px; margin-inline: auto; }
.np26 #ajax-content-wrap .np26-film .np26-film__text { padding-right: clamp(0rem, 3vw, 3rem); }
.np26 #ajax-content-wrap .np26-film :is(h2, p, a) { color: var(--ivory); }
.np26 #ajax-content-wrap .np26-film .np26-eyebrow p { color: var(--stone) !important; }
.np26 #ajax-content-wrap .np26-film h2 em { color: var(--gold); }
.np26 #ajax-content-wrap .np26-film .wpb_text_column:not(.np26-eyebrow, .np26-h2, .np26-link) p { color: rgb(217 207 191 / .9); margin-top: 1.3rem; }
.np26 #ajax-content-wrap .np26-film .np26-link a { color: var(--ivory) !important; }
.np26 #ajax-content-wrap .np26-film__grid { padding: 0 !important; }
.np26 #ajax-content-wrap .np26-film__card { aspect-ratio: 3 / 4; }
.np26 #ajax-content-wrap .np26-film__card > .vc_column-inner { height: 100%; display: grid; place-items: center; }
.np26 #ajax-content-wrap .np26-film__card .column-bg-overlay-wrap { background: linear-gradient(180deg, rgb(10 9 8 / .15), rgb(10 9 8 / .45)) !important; }
@media (max-width: 999px) {
  .np26 #ajax-content-wrap .np26-film .np26-film__text { padding-right: 0; margin-bottom: 2.5rem; }
  .np26 #ajax-content-wrap .np26-film__card { aspect-ratio: 4 / 3; margin-bottom: 1rem !important; }
}

/* Bodas recientes: cuatro tarjetas con foto y enlace a la boda */
.np26 #ajax-content-wrap .np26-weddings .np26-wcard { aspect-ratio: 3 / 4; margin-top: clamp(2.5rem, 5vw, 4rem); }
.np26 #ajax-content-wrap .np26-weddings .np26-wcard > .vc_column-inner { height: 100%; display: flex; align-items: flex-end; padding: 1.4rem 1.4rem 1.2rem !important; }
.np26 #ajax-content-wrap .np26-weddings .np26-wcard .nectar-cta :is(h3, h4) { font-size: clamp(1.2rem, 1.5vw, 1.45rem) !important; text-align: left; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-weddings .np26-wcard { aspect-ratio: 4 / 3; margin-top: 1rem; } }

/* Opiniones (version libre): extracto en serif cursiva + lugar */
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card p:not(.np26-place) { font-family: var(--serif); font-style: italic; font-size: 1.22rem; line-height: 1.5; color: var(--ink); }
.np26 #ajax-content-wrap .np26-tes2 .np26-place { font-size: .7rem; letter-spacing: .26em; text-transform: uppercase; color: var(--muted); margin: -.4rem 0 1rem; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card h3::before { display: none; }

/* Como trabajamos: cuatro pasos sobre arena */
.np26 #ajax-content-wrap .np26-steps { padding: var(--section) 0 !important; margin-top: var(--section); }
.np26 #ajax-content-wrap .np26-steps .np26-values { margin-top: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-steps .np26-values h3 { font-size: clamp(1.45rem, 2vw, 1.9rem); }

/* Preguntas frecuentes: texto a la izquierda, desplegables a la derecha */
.np26 #ajax-content-wrap .np26-faq .np26-faq__text { padding-right: clamp(0rem, 3vw, 3rem); }
.np26 #ajax-content-wrap .np26-faq .np26-faq__text .wpb_text_column:not(.np26-eyebrow, .np26-h2, .np26-link) { margin-top: 1.3rem; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-faq .np26-faq__text { padding-right: 0; margin-bottom: 2rem; } }
/* preguntas agrupadas (Servicios): subtitulo pequeno de cada grupo, como un antetitulo */
.np26 #ajax-content-wrap .np26-faq .np26-faq__group h3 {
  margin: 0 0 .4rem !important; font-family: var(--sans) !important; font-style: normal; font-weight: 400; font-size: .72rem !important;
  line-height: 1.4; letter-spacing: .26em; text-transform: uppercase; color: var(--gold-deep);
}
.np26 #ajax-content-wrap .np26-faq .toggles + .np26-faq__group, .np26 #ajax-content-wrap .np26-faq .toggles + .wpb_text_column.np26-faq__group { margin-top: clamp(2.2rem, 4vw, 3rem) !important; }
/* el titulo de la izquierda acompana al bajar por la lista de preguntas (la columna ya ocupa todo el alto de la fila) */
@media (min-width: 1000px) { .np26 #ajax-content-wrap .np26-faq .np26-faq__text > .vc_column-inner { position: sticky; top: calc(var(--np26-nav-h, 108px) + 1.5rem); } }

/* Donde trabajamos: indice de lugares (nombre en serif + zona en versalitas) */
.np26 #ajax-content-wrap .np26-places .np26-places__text { padding-right: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-places .np26-places__text .wpb_text_column:not(.np26-eyebrow, .np26-h2, .np26-link) { margin-top: 1.3rem; }
.np26 #ajax-content-wrap .np26-places__list ul { border-top: 1px solid var(--stone); margin: 0; }
.np26 #ajax-content-wrap .np26-places__list li { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding: 1rem 0; margin: 0; border-bottom: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-places__list li::before { display: none; }
.np26 #ajax-content-wrap .np26-places__list li a {
  font-family: var(--serif); font-size: clamp(1.25rem, 1.9vw, 1.7rem); line-height: 1.2; color: var(--ink); border: 0; transition: color .3s, translate .5s var(--ease);
}
.np26 #ajax-content-wrap .np26-places__list li a:hover { color: var(--gold-deep); translate: 6px 0; }
.np26 #ajax-content-wrap .np26-places__list li span { font-size: .68rem; letter-spacing: .24em; text-transform: uppercase; color: var(--muted); white-space: nowrap; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-places .np26-places__text { padding-right: 0; margin-bottom: 2rem; } }

/* Llamada final sobre foto */
.np26 #ajax-content-wrap .np26-cta { padding: clamp(6rem, 14vw, 11rem) var(--pad) !important; margin-top: var(--section); text-align: center; }
.np26 #ajax-content-wrap .np26-cta .wpb_wrapper > * { margin-inline: auto; }
/* la foto de fondo tiene zonas muy claras: velo mas denso que el general para que el texto blanco se lea */
.np26 #ajax-content-wrap .np26-cta > .row-bg-wrap::after { background: radial-gradient(ellipse 70% 80% at 50% 50%, rgb(10 9 8 / .62), rgb(10 9 8 / .42)) !important; }
.np26 #ajax-content-wrap .np26-cta .np26-eyebrow p { color: rgb(255 255 255 / .88); }
.np26 #ajax-content-wrap .np26-cta .np26-h2 h2 { color: #fff; }
.np26 #ajax-content-wrap .np26-cta .np26-h2 h2 em { color: rgb(232 220 178); display: block; }
.np26 #ajax-content-wrap .np26-cta .np26-intro { max-width: 46ch; margin: 1.3rem auto 2.2rem; }
.np26 #ajax-content-wrap .np26-cta .np26-intro p { color: rgb(255 255 255 / .92); }
.np26 #ajax-content-wrap .np26-cta .nectar-button { background: var(--ivory) !important; border-color: var(--ivory) !important; color: var(--ink) !important; }
.np26 #ajax-content-wrap .np26-cta .nectar-button:hover { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
.np26 #ajax-content-wrap .np26-cta .np26-cta__contact { margin-top: 1.8rem; }
.np26 #ajax-content-wrap .np26-cta .np26-cta__contact p { font-size: .9rem; letter-spacing: .08em; }
.np26 #ajax-content-wrap .np26-cta .np26-cta__contact a { border-bottom: 1px solid rgb(255 255 255 / .45); }

/* =====================================================================
   13. PAGINA "VIDEOS DE BODA" (fila np26-films dentro de la banda np26-film): pelicula destacada 16:9 + dos 16:10
   ===================================================================== */
.np26 #ajax-content-wrap .np26-films .np26-intro p { color: rgb(217 207 191 / .9); }
.np26 #ajax-content-wrap .np26-films .np26-film__grid { margin-top: clamp(1rem, 2vw, 1.4rem); }
.np26 #ajax-content-wrap .np26-films .np26-film__grid:first-of-type { margin-top: clamp(2.5rem, 5vw, 4rem); }
.np26 #ajax-content-wrap .np26-films .np26-film__card { aspect-ratio: 16 / 10; }
.np26 #ajax-content-wrap .np26-films .np26-film__card--big { aspect-ratio: 16 / 9; }
.np26 #ajax-content-wrap .np26-films .np26-film__card--big .nectar_video_lightbox .link-text h6 { font-size: clamp(1.8rem, 3vw, 2.6rem) !important; }
.np26 #ajax-content-wrap .np26-film__card .wpb_wrapper { position: static; }   /* para que la etiqueta se coloque respecto a la tarjeta */
.np26 #ajax-content-wrap .np26-film__card .np26-film__place { position: absolute; left: 1.4rem; bottom: 1.1rem; z-index: 3; }
.np26 #ajax-content-wrap .np26-film__card .np26-film__place p { font-size: .68rem; letter-spacing: .26em; text-transform: uppercase; color: rgb(255 255 255 / .85) !important; margin: 0; }
.np26 #ajax-content-wrap .np26-films .np26-link { margin-top: 2.2rem; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-films .np26-film__card, .np26 #ajax-content-wrap .np26-films .np26-film__card--big { aspect-ratio: 16 / 10; } }
/* las fotos de las peliculas son verticales y aqui se ven apaisadas: encuadre alto para que se vean las caras,
   y boton + titulo abajo a la izquierda (encima del lugar) para no taparlas */
.np26 #ajax-content-wrap .np26-film__card .img-with-aniamtion-wrap img { object-position: 50% 12%; }
.np26 #ajax-content-wrap .np26-films .np26-film__card.np26-icard > .vc_column-inner > .wpb_wrapper { justify-content: flex-end; align-items: flex-start; padding: 1.4rem 1.4rem 2.7rem; width: 100%; place-self: stretch; }
.np26 #ajax-content-wrap .np26-films .np26-film__card.np26-icard .img-with-aniamtion-wrap::after { background: linear-gradient(180deg, rgb(10 9 8 / .08) 35%, rgb(10 9 8 / .62) 100%); }

/* =====================================================================
   14. TARJETAS CON IMAGEN (np26-icard): un elemento Imagen de WPBakery ocupa la tarjeta y el enlace/boton va encima
   (bodas, peliculas, Instagram y las tarjetas de Fotografia). Sustituye a las fotos de fondo de columna.
   ===================================================================== */
.np26 #ajax-content-wrap .np26-icard { position: relative; overflow: hidden; }
.np26 #ajax-content-wrap .np26-icard > .vc_column-inner { position: relative; height: 100%; padding: 0 !important; }
.np26 #ajax-content-wrap .np26-icard > .vc_column-inner > .wpb_wrapper {
  position: static; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.4rem 1.4rem 1.2rem;
}
.np26 #ajax-content-wrap .np26-icard .img-with-aniamtion-wrap { position: absolute !important; inset: 0; margin: 0 !important; z-index: 0; }
.np26 #ajax-content-wrap .np26-icard .img-with-aniamtion-wrap :is(.inner, .hover-wrap, .hover-wrap-inner) { width: 100%; height: 100%; }
.np26 #ajax-content-wrap .np26-icard .img-with-aniamtion-wrap img {
  width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; opacity: 1 !important; transition: transform 1.4s var(--ease);
}
.np26 #ajax-content-wrap .np26-icard:hover .img-with-aniamtion-wrap img { transform: scale(1.05); }
.np26 #ajax-content-wrap .np26-icard .img-with-aniamtion-wrap::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgb(10 9 8 / 0) 45%, rgb(10 9 8 / .62) 100%);
}
.np26 #ajax-content-wrap .np26-icard :is(.nectar-cta, .nectar_video_lightbox, .nectar-button) { position: relative; z-index: 2; }
/* peliculas: boton de video en el centro y velo uniforme */
.np26 #ajax-content-wrap .np26-film__card.np26-icard > .vc_column-inner > .wpb_wrapper { justify-content: center; align-items: center; }
.np26 #ajax-content-wrap .np26-film__card.np26-icard .img-with-aniamtion-wrap::after { background: linear-gradient(180deg, rgb(10 9 8 / .15), rgb(10 9 8 / .5)); }
/* Instagram: boton en el centro, sin velo */
.np26 #ajax-content-wrap .np26-ig .np26-icard > .vc_column-inner > .wpb_wrapper { justify-content: center; align-items: center; }
.np26 #ajax-content-wrap .np26-ig .np26-icard .img-with-aniamtion-wrap::after { background: none; }
/* Fotografia (antes Trabajos): tarjetas 4:5 con el nombre de la boda abajo, centrado */
.np26 #ajax-content-wrap .np26-pcard { aspect-ratio: 4 / 5; }
.np26 #ajax-content-wrap .np26-pcard > .vc_column-inner > .wpb_wrapper { align-items: center; text-align: center; padding-bottom: 1.6rem; }

/* =====================================================================
   15. LISTA DE LUGARES con numeros y foto flotante (como el muestrario). La foto es la imagen de cada linea (oculta);
       np26.js la muestra junto al cursor. En movil se ve como miniatura.
   ===================================================================== */
.np26 #ajax-content-wrap .np26-places__list ul { counter-reset: np26p; }
.np26 #ajax-content-wrap .np26-places__list li {
  counter-increment: np26p; display: grid; grid-template-columns: 2.6rem 1fr auto; align-items: baseline; gap: 1rem; transition: opacity .5s var(--ease);
}
.np26 #ajax-content-wrap .np26-places__list li::before {
  display: block; content: counter(np26p, decimal-leading-zero); position: static; width: auto; height: auto; background: none;
  font-family: var(--serif); font-style: italic; font-size: 1rem; color: var(--gold-deep);
}
.np26 #ajax-content-wrap .np26-places__list li a { font-size: clamp(1.35rem, 2.2vw, 2rem); transition: color .4s, translate .7s var(--ease); }
.np26 #ajax-content-wrap .np26-places__list li a:hover, .np26 #ajax-content-wrap .np26-places__list li a:focus-visible { color: var(--gold-deep); font-style: italic; translate: 1rem 0; }
.np26 #ajax-content-wrap .np26-places__list ul:hover li { opacity: .38; }
.np26 #ajax-content-wrap .np26-places__list ul:hover li:hover { opacity: 1; }
.np26 #ajax-content-wrap .np26-places__list img { display: none; }
.np26 .np26-float {
  position: fixed; left: 0; top: 0; z-index: 50; width: clamp(150px, min(15vw, 26vh), 270px); aspect-ratio: 4 / 5; overflow: hidden; pointer-events: none;
  opacity: 0; scale: .9; transition: opacity .45s var(--ease), scale .6s var(--ease); box-shadow: 0 30px 60px -20px rgb(18 16 14 / .45);
}
.np26 .np26-float.is-on { opacity: 1; scale: 1; }
.np26 .np26-float img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 760px) {
  .np26 #ajax-content-wrap .np26-places__list li { grid-template-columns: 2.2rem 1fr 56px; grid-template-rows: auto auto; row-gap: .3rem; align-items: center; }
  .np26 #ajax-content-wrap .np26-places__list li::before { grid-row: 1 / span 2; }
  .np26 #ajax-content-wrap .np26-places__list li span { grid-column: 2; grid-row: 2; white-space: normal; }
  .np26 #ajax-content-wrap .np26-places__list img { display: block; grid-column: 3; grid-row: 1 / span 2; width: 56px !important; height: auto !important; aspect-ratio: 4 / 5; object-fit: cover; }
  .np26 #ajax-content-wrap .np26-places__list ul:hover li { opacity: 1; }
}

/* =====================================================================
   16. OPINIONES DE UNA EN UNA (version libre, np26-tes2): las columnas del WPBakery se convierten en un carrusel con flechas.
       Para anadir una opinion basta con anadir otra columna igual.
   ===================================================================== */
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__grid > .row_col_wrap_12_inner {
  position: relative; display: grid !important; grid-auto-flow: column; grid-auto-columns: 100%; overflow-x: auto; scroll-snap-type: x mandatory;
  scrollbar-width: none; overscroll-behavior-x: contain; margin: 0 !important;
}
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__grid > .row_col_wrap_12_inner::-webkit-scrollbar { display: none; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card { width: auto !important; max-width: none !important; margin: 0 !important; float: none; scroll-snap-align: start; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card > .vc_column-inner > .wpb_wrapper {
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 5vw, 5.5rem); align-items: center;
}
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card .img-with-aniamtion-wrap { margin: 0; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card .wpb_text_column .wpb_wrapper { display: flex; flex-direction: column; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card p:not(.np26-place) {
  order: -1; font-size: clamp(1.4rem, 2.4vw, 2.2rem); line-height: 1.32; margin-bottom: 1.8rem !important;   /* es el ultimo parrafo del bloque */
}
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card p:not(.np26-place)::before { content: "“"; display: block; font-size: 5rem; line-height: .6; height: .5em; color: var(--gold); font-style: normal; }
.np26 #ajax-content-wrap .np26-tes2 .np26-tes__card h3 {
  font-family: var(--sans); font-size: .74rem; font-weight: 400; letter-spacing: .28em; text-transform: uppercase; color: var(--ink); margin: 0 0 .4rem;
}
.np26 #ajax-content-wrap .np26-tes2 .np26-place { margin: 0; }
.np26 #ajax-content-wrap .np26-tes__ctrl { display: flex; align-items: center; gap: 1.4rem; margin-top: 2.8rem; }
.np26 #ajax-content-wrap .np26-tes__ctrl button {
  width: 48px; height: 48px; border-radius: 50% !important; border: 1px solid var(--stone); background: none; color: var(--ink); cursor: pointer;
  font-family: var(--sans); font-style: normal; font-size: 1rem; line-height: 1; padding: 0; transition: background .3s, color .3s, border-color .3s;
}
.np26 #ajax-content-wrap .np26-tes__ctrl button:hover { background: var(--ink); color: var(--ivory); border-color: var(--ink); }
.np26 #ajax-content-wrap .np26-tes__dots { display: flex; gap: .5rem; }
.np26 #ajax-content-wrap .np26-tes__dots i { display: block; width: 26px; height: 1px; background: var(--stone); transition: background .3s, width .4s var(--ease); }
.np26 #ajax-content-wrap .np26-tes__dots i.is-on { width: 46px; background: var(--gold); }
@media (max-width: 760px) {
  .np26 #ajax-content-wrap .np26-tes2 .np26-tes__card > .vc_column-inner > .wpb_wrapper { grid-template-columns: 1fr; gap: 1.6rem; }
  .np26 #ajax-content-wrap .np26-tes2 .np26-tes__card .img-with-aniamtion-wrap { max-width: 70%; }
}

/* =====================================================================
   17. PAGINA SERVICIOS (borrador 3645, build_servicios.py): cabecera con foto, que incluye, packs, album, entrega, opiniones
   ===================================================================== */
/* cabecera algo mas baja que la de la portada; la foto ya trae su velo (np26-hero2), sin el general de filas con foto */
.np26 #ajax-content-wrap .np26-hero--page { min-height: max(540px, 88svh); }
.np26 #ajax-content-wrap .np26-hero--page > .row-bg-wrap::after { display: none; }
/* velo desde la izquierda, donde va el texto, y el texto no pasa del 44 % del ancho para no tapar a la pareja (va en el centro-derecha) */
.np26 #ajax-content-wrap .np26-hero2.np26-hero--page::after {
  background: linear-gradient(90deg, rgb(10 9 8 / .68) 0%, rgb(10 9 8 / .4) 36%, rgb(10 9 8 / 0) 60%),
              linear-gradient(180deg, rgb(10 9 8 / .45) 0%, rgb(10 9 8 / 0) 22%, rgb(10 9 8 / 0) 62%, rgb(10 9 8 / .4) 100%);
}
.np26 #ajax-content-wrap .np26-hero--page .vc_column_container > .vc_column-inner > .wpb_wrapper { max-width: min(64rem, 44vw); }
.np26 #ajax-content-wrap .np26-hero2.np26-hero--page .np26-hero__title h1 { font-size: clamp(2.4rem, min(4.3vw, 8.5vh), 4.6rem); }
.np26 #ajax-content-wrap .np26-hero--page .np26-down { left: auto; right: var(--pad); translate: none; }   /* la pareja va en el centro de la foto */
@media (max-width: 999px) {
  .np26 #ajax-content-wrap .np26-hero--page .vc_column_container > .vc_column-inner > .wpb_wrapper { max-width: none; }
  .np26 #ajax-content-wrap .np26-hero2.np26-hero--page::after { background: linear-gradient(180deg, rgb(10 9 8 / .45) 0%, rgb(10 9 8 / 0) 24%, rgb(10 9 8 / .1) 42%, rgb(10 9 8 / .78) 100%); }
}
@media (max-width: 690px) { .np26 #ajax-content-wrap .np26-hero--page .row-bg { background-position: 58% center !important; } }   /* la pareja, algo a la derecha del centro de la foto */

/* Separacion entre secciones de esta pagina */
.np26 #ajax-content-wrap :is(.np26-incl, .np26-revs) { padding-top: var(--section) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-photos-row { padding-top: clamp(2.5rem, 5vw, 4rem) !important; padding-bottom: 0 !important; }

/* titulos de seccion repartidos en lineas parecidas (sin una palabra sola al final); la portada fiel 3638 se queda como esta */
.np26:not(.page-id-3638) #ajax-content-wrap .wpb_text_column.np26-h2 h2 { text-wrap: balance; }
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__sub p { text-wrap: pretty; }

/* Que incluye: entradilla a la izquierda, lista numerada a la derecha */
.np26 #ajax-content-wrap .np26-incl .wpb_text_column.np26-h2 h2 { font-size: clamp(2.1rem, 3.6vw, 3.4rem); }
.np26 #ajax-content-wrap .np26-incl .np26-h2 h2 em { display: block; }
.np26 #ajax-content-wrap .np26-incl > .row_col_wrap_12 { align-items: flex-start; }
.np26 #ajax-content-wrap .np26-incl .np26-incl__text { padding-right: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-incl .np26-lead { margin: 1.4rem 0 1.1rem; }
.np26 #ajax-content-wrap .np26-incl .np26-lead p { font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.8rem); line-height: 1.35; color: var(--ink); }
.np26 #ajax-content-wrap .np26-incl .np26-link { margin-top: 1.8rem; }
.np26 #ajax-content-wrap .np26-incl__list p { font-size: .72rem; letter-spacing: .3em; text-transform: uppercase; color: var(--muted); margin: .4rem 0 1.2rem; }
.np26 #ajax-content-wrap .np26-incl__list ol { counter-reset: np26i; margin: 0; border-top: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-incl__list li {
  counter-increment: np26i; display: grid; grid-template-columns: 3.4rem 1fr; align-items: baseline;
  padding: 1.1rem 0 !important; margin: 0 !important; border-bottom: 1px solid var(--stone); font-size: 1.04rem; line-height: 1.55; color: var(--ink);
}
.np26 #ajax-content-wrap .np26-incl__list li::before {
  content: counter(np26i, decimal-leading-zero); position: static; width: auto; height: auto; background: none;
  font-family: var(--serif); font-style: italic; font-size: 1.4rem; line-height: 1; color: var(--gold-deep);
}

/* Nota con asterisco bajo una lista o unos pasos (lo que depende del pack) */
.np26 #ajax-content-wrap .np26-foot { margin-top: 1.2rem; }
.np26 #ajax-content-wrap .np26-foot p { font-size: .84rem; line-height: 1.6; color: var(--muted); }
.np26 #ajax-content-wrap .np26-entrega .np26-foot { margin-top: 1.8rem; }

/* Packs: banda arena a todo el ancho y tres tarjetas de igual altura; el Premium (el que mas incluye) en oscuro */
.np26 #ajax-content-wrap .np26-packs { padding: var(--section) 0 !important; margin-top: var(--section); background: var(--sand); box-shadow: 0 0 0 100vmax var(--sand); clip-path: inset(0 -100vmax); }
.np26 #ajax-content-wrap .np26-packs__grid { margin-top: clamp(2.5rem, 5vw, 4rem); padding: 0 !important; counter-reset: np26k; }
.np26 #ajax-content-wrap .np26-packs__grid > .row_col_wrap_12_inner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2vw, 1.6rem); }
/* las filas internas del tema traen margenes negativos (para el hueco entre columnas): con rejilla sobran y descuadran el borde */
.np26 #ajax-content-wrap :is(.np26-packs__grid, .np26-photos) > .row_col_wrap_12_inner { margin-inline: 0 !important; width: auto !important; }
.np26 #ajax-content-wrap .np26-pack { position: relative; width: auto !important; margin: 0 !important; float: none; counter-increment: np26k; background: var(--ivory); border-top: 2px solid var(--gold); }
.np26 #ajax-content-wrap .np26-pack > .vc_column-inner { height: 100%; padding: clamp(1.8rem, 3vw, 2.6rem) !important; }
.np26 #ajax-content-wrap .np26-pack > .vc_column-inner > .wpb_wrapper { height: 100%; display: flex; flex-direction: column; align-items: flex-start; }
.np26 #ajax-content-wrap .np26-pack .wpb_text_column { width: 100%; margin-bottom: 2.2rem; }
.np26 #ajax-content-wrap .np26-pack h3 { font-size: clamp(2.1rem, 3vw, 2.7rem); line-height: 1; margin: 0 0 1.5rem; color: var(--ink); }
.np26 #ajax-content-wrap .np26-pack h3::before {
  content: counter(np26k, decimal-leading-zero); display: block; margin-bottom: 1rem;
  font-family: var(--sans); font-style: normal; font-size: .72rem; letter-spacing: .3em; line-height: 1; color: var(--gold-deep);
}
.np26 #ajax-content-wrap .np26-pack ul { margin: 0; border-top: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-pack li { padding: .8rem 0 .8rem 1.6em !important; margin: 0 !important; border-bottom: 1px solid var(--stone); font-size: .95rem; line-height: 1.55; }
.np26 #ajax-content-wrap .np26-pack li::before { top: 1.58em; }
.np26 #ajax-content-wrap .np26-pack .nectar-button { margin: auto 0 0 !important; }
.np26 #ajax-content-wrap .np26-pack .np26-pack__tag { position: absolute; top: clamp(1.8rem, 3vw, 2.6rem); right: clamp(1.8rem, 3vw, 2.6rem); width: auto; margin: 0; }
.np26 #ajax-content-wrap .np26-pack .np26-pack__tag p { font-size: .66rem; letter-spacing: .26em; text-transform: uppercase; line-height: 1; color: var(--gold); margin: 0; }
.np26 #ajax-content-wrap .np26-pack--featured { background: var(--night); }
.np26 #ajax-content-wrap .np26-pack--featured :is(h3, li) { color: var(--ivory); }
.np26 #ajax-content-wrap .np26-pack--featured h3::before { color: var(--gold); }
.np26 #ajax-content-wrap .np26-pack--featured :is(ul, li) { border-color: rgb(217 207 191 / .2); }
.np26 #ajax-content-wrap .np26-pack--featured .nectar-button { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
.np26 #ajax-content-wrap .np26-pack--featured .nectar-button:hover { background: var(--ivory) !important; border-color: var(--ivory) !important; color: var(--ink) !important; }
.np26 #ajax-content-wrap .np26-packs__note { margin-top: clamp(2.5rem, 5vw, 3.5rem); }
.np26 #ajax-content-wrap .np26-packs__note p { font-family: var(--serif); font-style: italic; font-size: clamp(1.35rem, 2vw, 1.7rem); line-height: 1.35; color: var(--ink); }
.np26 #ajax-content-wrap .np26-packs .np26-link { margin-top: 1.3rem; }
.np26 #ajax-content-wrap :is(.np26-packs, .np26-incl, .np26-faq) .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap :is(.np26-packs, .np26-incl, .np26-faq) .np26-link a:hover::after { transform: translateX(4px); }
@media (max-width: 999px) {
  .np26 #ajax-content-wrap .np26-incl .np26-incl__text { padding-right: 0; margin-bottom: 2.5rem; }
  .np26 #ajax-content-wrap .np26-packs__grid > .row_col_wrap_12_inner { grid-template-columns: minmax(0, 1fr); max-width: 560px; margin-inline: auto; }
}

/* Album: lista de medidas + fila de tres fotos (tambien en la entrega) recortadas iguales */
.np26 #ajax-content-wrap .np26-album .np26-specs { margin-top: 1.4rem; }
.np26 #ajax-content-wrap .np26-album .np26-about__img .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-album .np26-about__img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; opacity: 1 !important; }
.np26 #ajax-content-wrap .np26-photos { margin-top: 0; padding: 0 !important; }
.np26 #ajax-content-wrap .np26-entrega .np26-photos { margin-top: clamp(2.5rem, 5vw, 4rem); }
.np26 #ajax-content-wrap .np26-photos > .row_col_wrap_12_inner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.4rem, 1vw, .8rem); }
.np26 #ajax-content-wrap .np26-photos .wpb_column { width: auto !important; margin: 0 !important; float: none; }
.np26 #ajax-content-wrap .np26-photos .img-with-aniamtion-wrap { margin: 0 !important; }
.np26 #ajax-content-wrap .np26-photos .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 3 / 2; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-photos img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; opacity: 1 !important; }
/* en movil, tira que se desliza con el dedo (tres fotos en 375px quedaban diminutas) y llega a los bordes de la pantalla */
@media (max-width: 690px) {
  .np26 #ajax-content-wrap .np26-photos > .row_col_wrap_12_inner {
    grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 80%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
    margin-inline: calc(-1 * var(--pad)) !important; padding-inline: var(--pad); scroll-padding-inline: var(--pad);
  }
  .np26 #ajax-content-wrap .np26-photos > .row_col_wrap_12_inner::-webkit-scrollbar { display: none; }
  .np26 #ajax-content-wrap .np26-photos .wpb_column { scroll-snap-align: start; }
}

/* Opiniones en su propia seccion (sin la raya de arriba que llevan bajo los testimonios de la portada) */
.np26 #ajax-content-wrap .np26-revs .np26-reviews { margin-top: clamp(2rem, 4vw, 3rem); padding-top: 0; border-top: 0; }
/* Llamada final sin foto: banda oscura a todo el ancho */
.np26 #ajax-content-wrap .np26-cta--dark { background: var(--night); box-shadow: 0 0 0 100vmax var(--night); clip-path: inset(0 -100vmax); }
.np26 #ajax-content-wrap .np26-cta--dark .np26-cta__contact :is(p, a) { color: rgb(255 255 255 / .85); }
.np26 #ajax-content-wrap .np26-cta--dark .np26-eyebrow p { color: var(--stone); }

/* tarjetas de resenas en claro (el widget las trae negras y redondeadas) */
.np26 #ajax-content-wrap .np26-revs .ti-widget .ti-review-item > .ti-inner { background: #fff !important; border: 1px solid var(--stone) !important; border-radius: 0 !important; box-shadow: none !important; }
.np26 #ajax-content-wrap .np26-revs .ti-widget :is(.ti-name, .ti-review-content, .ti-review-content *, .ti-read-more, .ti-read-more *) { color: var(--ink) !important; }
.np26 #ajax-content-wrap .np26-revs .ti-widget .ti-name { font-size: 1.15rem !important; }
.np26 #ajax-content-wrap .np26-revs .ti-widget .ti-date { color: var(--muted) !important; }
.np26 #ajax-content-wrap .np26-revs .ti-widget .ti-review-content { font-family: var(--sans) !important; font-size: .92rem !important; line-height: 1.6 !important; }

/* =====================================================================
   18. QUIENES SOMOS (borrador 3646, build_quienes.py) y CONTACTO (borrador 3647, build_contacto.py)
   ===================================================================== */
.np26 #ajax-content-wrap :is(.np26-qs, .np26-statement, .np26-person, .np26-contact, .np26-where) { padding-top: var(--section) !important; padding-bottom: 0 !important; }
/* primera seccion sin foto de cabecera: el menu ya deja su hueco, asi que menos aire arriba */
.np26 #ajax-content-wrap :is(.np26-qs, .np26-contact) { padding-top: clamp(2.5rem, 6vw, 5rem) !important; }
/* la ultima seccion (si no es la llamada final oscura) deja aire antes del pie */
.np26 #ajax-content-wrap .main-content > .row > .wpb_row[class*="np26-"]:last-child:not(.np26-cta) { padding-bottom: var(--section) !important; }
.np26 #ajax-content-wrap :is(.np26-qs, .np26-person) .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap :is(.np26-qs, .np26-person) .np26-link a:hover::after { transform: translateX(4px); }

/* Titular grande de pagina sin foto de cabecera (Quienes somos, Contacto) */
.np26 #ajax-content-wrap :is(.np26-qs__title, .np26-contact__title) h1 {
  font-size: clamp(2.6rem, min(5vw, 9vh), 5rem); line-height: 1.02; margin: 1.1rem 0 1.5rem; color: var(--ink); text-wrap: balance;
}
.np26 #ajax-content-wrap :is(.np26-qs__title, .np26-contact__title) h1 em { display: block; }
.np26 #ajax-content-wrap :is(.np26-qs, .np26-person, .np26-contact) .wpb_text_column.np26-lead p { font-size: clamp(1.35rem, 2vw, 1.75rem); line-height: 1.35; }

/* Quienes somos: presentacion + foto de los dos a todo el ancho */
.np26 #ajax-content-wrap .np26-qs > .row_col_wrap_12 { align-items: flex-end; }
.np26 #ajax-content-wrap .np26-qs .np26-qs__head { padding-right: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-qs .np26-link { margin-top: 1.8rem; }
.np26 #ajax-content-wrap .np26-wide { padding: clamp(3rem, 6vw, 5rem) 0 0 !important; }
.np26 #ajax-content-wrap .np26-wide .img-with-aniamtion-wrap { margin: 0 !important; }
.np26 #ajax-content-wrap .np26-wide .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 21 / 9; overflow: hidden; background: var(--night); }
.np26 #ajax-content-wrap .np26-wide img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 15%; opacity: 1 !important; }
@media (max-width: 690px) { .np26 #ajax-content-wrap .np26-wide .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 4 / 3; } }

/* Frase de estilo, centrada */
.np26 #ajax-content-wrap .np26-statement { text-align: center; }
.np26 #ajax-content-wrap .np26-statement .np26-eyebrow p::before { display: none; }
.np26 #ajax-content-wrap .np26-statement .wpb_text_column.np26-h2 h2 { max-width: 30ch; margin-inline: auto; font-size: clamp(2rem, min(4vw, 7vh), 3.6rem); line-height: 1.12; }
.np26 #ajax-content-wrap .np26-statement .np26-intro { margin: 1.4rem auto 0; max-width: 46ch; }

/* Fran y Heli: foto 4:5 + biografia; Heli con la foto a la derecha (en movil, foto siempre arriba) */
.np26 #ajax-content-wrap .np26-person > .row_col_wrap_12 { align-items: center; }
.np26 #ajax-content-wrap .np26-person .np26-person__text { padding-left: clamp(0rem, 5vw, 6rem); }
.np26 #ajax-content-wrap .np26-person .np26-person__img .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-person .np26-person__img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 25%; opacity: 1 !important; }
.np26 #ajax-content-wrap .np26-person .np26-lead { margin: 1.4rem 0 1.2rem; }
.np26 #ajax-content-wrap .np26-person .np26-link { margin-top: 2rem; }
@media (min-width: 1000px) {
  .np26 #ajax-content-wrap .np26-person--rev > .row_col_wrap_12 { flex-direction: row-reverse; }
  .np26 #ajax-content-wrap .np26-person--rev .np26-person__text { padding-left: 0; padding-right: clamp(0rem, 5vw, 6rem); }
}
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-person .np26-person__img { margin-bottom: 2.5rem; } .np26 #ajax-content-wrap .np26-person .np26-person__text { padding: 0; } }
/* datos breves (tres) bajo cada biografia */
.np26 #ajax-content-wrap .np26-facts { margin-top: 2rem; }
.np26 #ajax-content-wrap .np26-facts .wpb_wrapper { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-facts p { margin: 0 !important; padding: 1.1rem 1rem 0 0; font-size: .82rem; line-height: 1.45; color: var(--muted); }
.np26 #ajax-content-wrap .np26-facts strong { display: block; margin-bottom: .35rem; font-family: var(--serif); font-size: 1.45rem; line-height: 1.1; color: var(--ink); }
.np26 #ajax-content-wrap .np26-facts strong em { color: inherit; }
@media (max-width: 690px) {
  .np26 #ajax-content-wrap .np26-facts .wpb_wrapper { grid-template-columns: minmax(0, 1fr); }
  .np26 #ajax-content-wrap .np26-facts p { display: grid; grid-template-columns: 9rem 1fr; align-items: baseline; padding: .8rem 0; border-bottom: 1px solid var(--stone); }
  .np26 #ajax-content-wrap .np26-facts strong { margin: 0; font-size: 1.25rem; }
}
/* tres bodas (en vez de cuatro): tarjetas algo menos altas */
.np26 #ajax-content-wrap .np26-weddings--3 .np26-wcard { aspect-ratio: 4 / 5; }

/* Contacto: datos a la izquierda, formulario en tarjeta blanca a la derecha */
.np26 #ajax-content-wrap .np26-contact > .row_col_wrap_12 { align-items: flex-start; }
.np26 #ajax-content-wrap .np26-contact .np26-contact__text { padding-right: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-contact .np26-lead { margin: 0 0 1.1rem; }
.np26 #ajax-content-wrap .np26-contact__list { margin-top: 2rem; }
.np26 #ajax-content-wrap .np26-contact__list ul { margin: 0; border-top: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-contact__list li { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); align-items: baseline; padding: .95rem 0 !important; margin: 0 !important; border-bottom: 1px solid var(--stone); }
.np26 #ajax-content-wrap .np26-contact__list li::before { display: none; }
.np26 #ajax-content-wrap .np26-contact__list li span { font-size: .68rem; letter-spacing: .26em; text-transform: uppercase; color: var(--muted); }
.np26 #ajax-content-wrap .np26-contact__list li a { font-family: var(--serif); font-size: 1.3rem; line-height: 1.3; color: var(--ink); border-bottom: 0; overflow-wrap: anywhere; }
.np26 #ajax-content-wrap .np26-contact__list li a:hover { color: var(--gold-deep); }
.np26 #ajax-content-wrap .np26-contact__form > .vc_column-inner { background: #fff; border-top: 2px solid var(--gold); padding: clamp(1.8rem, 4vw, 3.2rem) !important; }
.np26 #ajax-content-wrap .np26-contact__formtitle h2 { font-size: clamp(1.8rem, 2.6vw, 2.4rem); line-height: 1.1; margin: 0 0 1.4rem; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-contact .np26-contact__text { padding-right: 0; margin-bottom: 2.5rem; } }
@media (max-width: 520px) {   /* en estrecho, la etiqueta encima del dato (el correo no cabe al lado) */
  .np26 #ajax-content-wrap .np26-contact__list li { grid-template-columns: minmax(0, 1fr); row-gap: .25rem; }
  .np26 #ajax-content-wrap .np26-contact__list li a { overflow-wrap: normal; }
}
/* formulario "Contacto 2026": rejilla de dos columnas, servicio como botones y casilla de privacidad */
.np26 #ajax-content-wrap .np26-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.6rem; row-gap: 1.4rem; }
.np26 #ajax-content-wrap .np26-form > p { display: contents; }   /* Contact Form 7 agrupa las etiquetas seguidas en un <p>: sin el, son celdas de la rejilla */
.np26 #ajax-content-wrap .np26-form > *, .np26 #ajax-content-wrap .np26-form > p > * { grid-column: 1 / -1; margin: 0; }
.np26 #ajax-content-wrap .np26-form > p > br { display: none; }
.np26 #ajax-content-wrap :is(.np26-form, .np26-form > p) > .np26-f--half { grid-column: auto; }
.np26 #ajax-content-wrap .np26-form .wpcf7-form-control-wrap { display: block; margin-top: .15rem; }
.np26 #ajax-content-wrap .np26-form .np26-f__label { display: block; margin-bottom: .8rem; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-radio { display: flex; flex-wrap: wrap; gap: .6rem; }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item { position: relative; margin: 0 !important; }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item-label {
  display: inline-block; padding: .85em 1.3em; border: 1px solid var(--stone); font-size: .72rem; letter-spacing: .18em; text-transform: uppercase; color: var(--ink);
  transition: background .3s, color .3s, border-color .3s;
}
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item:hover .wpcf7-list-item-label { border-color: var(--ink); }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item:has(input:checked) .wpcf7-list-item-label { background: var(--ink); border-color: var(--ink); color: var(--ivory); }
.np26 #ajax-content-wrap .np26-f--choice .wpcf7-list-item:has(input:focus-visible) .wpcf7-list-item-label { outline: 1px solid var(--gold); outline-offset: 3px; }
.np26 #ajax-content-wrap .np26-f--legal .wpcf7-list-item { margin: 0; }
.np26 #ajax-content-wrap .np26-f--legal label { display: flex; gap: .7rem; align-items: flex-start; font-size: .88rem; letter-spacing: 0; text-transform: none; line-height: 1.5; color: var(--ink-2); cursor: pointer; }
.np26 #ajax-content-wrap .np26-f--legal input[type=checkbox] { flex: none; width: 1.05rem; height: 1.05rem; margin: .18rem 0 0; accent-color: var(--ink); }
.np26 #ajax-content-wrap .np26-f--legal a { color: var(--ink); border-bottom: 1px solid var(--gold); }
.np26 #ajax-content-wrap .np26-form input[type=submit] { justify-self: start; margin-top: .4rem; }
@media (max-width: 690px) { .np26 #ajax-content-wrap .np26-form { grid-template-columns: minmax(0, 1fr); } .np26 #ajax-content-wrap :is(.np26-form, .np26-form > p) > .np26-f--half { grid-column: 1 / -1; } }
/* Donde estamos */
.np26 #ajax-content-wrap .np26-where .np26-photos { margin-top: clamp(2.5rem, 5vw, 4rem); }

/* =====================================================================
   19. FOTOGRAFIA (borrador 3644, build_fotografia.py): cabecera con el texto arriba, rejilla de bodas, reportaje, galeria
   ===================================================================== */
/* cabecera con el texto ARRIBA (sobre el cielo) cuando la pareja va abajo en el centro de la foto */
.np26 #ajax-content-wrap .np26-hero--top > .row_col_wrap_12 { align-content: flex-start !important; padding-top: calc(var(--np26-nav-h, 108px) + clamp(1.5rem, 5vh, 3.5rem)) !important; }
.np26 #ajax-content-wrap .np26-hero2.np26-hero--top::after {
  background: linear-gradient(180deg, rgb(10 9 8 / .62) 0%, rgb(10 9 8 / .42) 34%, rgb(10 9 8 / 0) 58%, rgb(10 9 8 / 0) 82%, rgb(10 9 8 / .35) 100%),
              linear-gradient(90deg, rgb(10 9 8 / .3) 0%, rgb(10 9 8 / 0) 50%);
}
.np26 #ajax-content-wrap .np26-hero--top .vc_column_container > .vc_column-inner > .wpb_wrapper { max-width: min(64rem, 38vw); }
.np26 #ajax-content-wrap .np26-hero--top .np26-down { display: none; }   /* con el texto arriba quedaba a media altura; "Ver las bodas" ya baja */
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-hero--top .vc_column_container > .vc_column-inner > .wpb_wrapper { max-width: none; } }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-hero2.np26-hero--top::after { background: linear-gradient(180deg, rgb(10 9 8 / .7) 0%, rgb(10 9 8 / .5) 45%, rgb(10 9 8 / 0) 68%); } }
@media (max-width: 690px) {
  .np26 #ajax-content-wrap .np26-hero--top .row-bg { background-position: 48% center !important; }
  /* en movil, titular + un boton: con el subtitulo y el segundo boton el texto tapaba a la pareja (Contacto ya esta en el menu) */
  .np26 #ajax-content-wrap .np26-hero--top :is(.np26-hero__sub, a.nectar-button:nth-of-type(2)) { display: none !important; }
  .np26 #ajax-content-wrap .np26-hero--top a.nectar-button { margin-top: .6rem !important; }
}

/* presentacion: foto vertical de la novia (4:5) */
.np26 #ajax-content-wrap .np26-intro-foto .np26-about__img .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-intro-foto .np26-about__img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 20%; opacity: 1 !important; }

/* rejilla de bodas: 3 por fila (2 en tableta y movil) + tarjeta final oscura */
.np26 #ajax-content-wrap .np26-bodas { padding-top: var(--section) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-bodas__grid { margin-top: clamp(2.5rem, 5vw, 4rem); padding: 0 !important; }
.np26 #ajax-content-wrap .np26-bodas__grid > .row_col_wrap_12_inner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.6rem, 1.2vw, 1rem); margin-inline: 0 !important; width: auto !important; }
.np26 #ajax-content-wrap .np26-bodas__grid .wpb_column { width: auto !important; margin: 0 !important; float: none; }
.np26 #ajax-content-wrap .np26-bodas__grid .np26-pcard .nectar-cta :is(h3, h4) { font-size: clamp(1.1rem, 1.5vw, 1.4rem) !important; line-height: 1.25; }
.np26 #ajax-content-wrap .np26-nextcard { aspect-ratio: 4 / 5; background: var(--night); }
.np26 #ajax-content-wrap .np26-nextcard > .vc_column-inner { height: 100%; padding: clamp(1.4rem, 3vw, 2.4rem) !important; }
.np26 #ajax-content-wrap .np26-nextcard > .vc_column-inner > .wpb_wrapper { height: 100%; display: flex; flex-direction: column; justify-content: center; }
.np26 #ajax-content-wrap .np26-nextcard h3 { font-size: clamp(1.8rem, 2.6vw, 2.5rem); line-height: 1.05; margin: 0 0 1rem; color: var(--ivory); }
.np26 #ajax-content-wrap .np26-nextcard h3 em { display: block; color: rgb(232 220 178); }
.np26 #ajax-content-wrap .np26-nextcard p { color: rgb(217 207 191 / .9) !important; }
.np26 #ajax-content-wrap .np26-nextcard .np26-link { margin-top: 1.4rem; }
.np26 #ajax-content-wrap .np26-nextcard .np26-link a { color: var(--ivory); }
.np26 #ajax-content-wrap .np26-nextcard .np26-link a::after { content: "→"; }
@media (max-width: 999px) { .np26 #ajax-content-wrap .np26-bodas__grid > .row_col_wrap_12_inner { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .np26 #ajax-content-wrap .np26-bodas__grid .np26-pcard .nectar-cta :is(h3, h4) { font-size: .98rem !important; } .np26 #ajax-content-wrap .np26-nextcard h3 { font-size: 1.5rem; } }

/* el reportaje (banda arena, tres pasos) y la galeria */
.np26 #ajax-content-wrap .np26-reportaje .np26-link { margin-top: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-reportaje .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap .np26-gal--foto { margin-top: 0; }

/* =====================================================================
   20. PLANTILLA DE LAS PAGINAS DE BODA (borradores 3653-3663, build_bodas.py)
   cabecera partida · la historia · video · galerias · otras bodas · cierre
   ===================================================================== */
.np26 #ajax-content-wrap .np26-boda-hero { padding-top: clamp(2.5rem, 6vw, 5rem) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-boda-hero > .row_col_wrap_12 { align-items: center; }
.np26 #ajax-content-wrap .np26-boda-hero .np26-boda__text { padding-right: clamp(0rem, 4vw, 5rem); }
.np26 #ajax-content-wrap .np26-boda__title h1 { font-size: clamp(2.4rem, min(4.6vw, 8.5vh), 4.6rem); line-height: 1.03; margin: 1.1rem 0 1.2rem; color: var(--ink); text-wrap: balance; }
/* aire bajo los titulares: el H1 va solo en su bloque y la regla "ultimo elemento sin margen" le quitaba el de abajo,
   asi que las letras con rabo (y, g, p) tocaban el subtitulo. El margen va en el bloque */
.np26 #ajax-content-wrap :is(.np26-boda__title, .np26-qs__title, .np26-contact__title) { margin-bottom: .9rem; }
.np26 #ajax-content-wrap .np26-hero2 .np26-hero__title { margin-bottom: .7rem; }
.np26 #ajax-content-wrap .np26-boda__sub h2 {
  font-family: var(--sans) !important; font-style: normal; font-weight: 400; font-size: .74rem !important; line-height: 1.6; letter-spacing: .26em; text-transform: uppercase;
  color: var(--gold-deep); margin: 0 0 1.6rem !important;
}
.np26 #ajax-content-wrap .np26-boda-hero .wpb_text_column.np26-lead p { font-size: clamp(1.2rem, 1.7vw, 1.5rem); line-height: 1.45; }
.np26 #ajax-content-wrap .np26-boda-hero .np26-link { margin-top: 2rem; }
.np26 #ajax-content-wrap .np26-boda__img .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-boda__img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 5%; opacity: 1 !important; }
@media (max-width: 999px) {   /* en movil, la foto primero */
  .np26 #ajax-content-wrap .np26-boda-hero > .row_col_wrap_12 { flex-direction: column-reverse; }
  .np26 #ajax-content-wrap .np26-boda-hero .np26-boda__text { padding-right: 0; }
  .np26 #ajax-content-wrap .np26-boda-hero .np26-boda__img { margin-bottom: 2rem; }
}
/* la historia: columna de lectura con sus H2/H3 */
.np26 #ajax-content-wrap .np26-boda-story { padding-top: var(--section) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-story { max-width: 46rem; margin-inline: auto; }
.np26 #ajax-content-wrap .np26-story h2 { font-size: clamp(1.8rem, 2.8vw, 2.5rem); line-height: 1.12; margin: 2.2em 0 .6em; color: var(--ink); }
.np26 #ajax-content-wrap .np26-story h3 { font-size: clamp(1.35rem, 2vw, 1.7rem); line-height: 1.2; margin: 1.9em 0 .5em; color: var(--ink); }
.np26 #ajax-content-wrap .np26-story .wpb_wrapper > :is(h2, h3):first-child { margin-top: 0; }
.np26 #ajax-content-wrap .np26-story p { font-size: 1.04rem; line-height: 1.8; }
/* la regla general del antetitulo (1b) confunde un parrafo con una sola negrita seguido de un titulo: aqui es texto normal */
.np26 #ajax-content-wrap .np26-story .wpb_wrapper > p:first-child { font-size: 1.04rem !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ink-2) !important; margin-bottom: 1.1em !important; }
.np26 #ajax-content-wrap .np26-story .wpb_wrapper > p:first-child strong { color: var(--ink) !important; }
/* parrafo final solo en negrita ("Fotografia de bodas en Santander · Palacio de la Magdalena · ..."): linea de etiquetas (clase puesta por la plantilla) */
.np26 #ajax-content-wrap .np26-story p.np26-tags { margin-top: 2.4rem; padding-top: 1.4rem; border-top: 1px solid var(--stone); font-size: .72rem; line-height: 1.8; letter-spacing: .24em; text-transform: uppercase; color: var(--muted); }
.np26 #ajax-content-wrap .np26-story p.np26-tags strong { color: inherit; }
/* galerias */
.np26 #ajax-content-wrap .np26-boda-gal { padding: var(--section) clamp(.6rem, 2vw, 2rem) 0 !important; }
.np26 #ajax-content-wrap .np26-boda-gal :is(.np26-eyebrow, .np26-h2) { padding-inline: calc(var(--pad) - clamp(.6rem, 2vw, 2rem)); }
.np26 #ajax-content-wrap .np26-boda-gal .np26-h2 { margin-bottom: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-boda__grid { margin: 0 !important; }
/* video (banda oscura, como en la pagina de Videos) */
.np26 #ajax-content-wrap .np26-boda-video { margin-top: var(--section); }
.np26 #ajax-content-wrap .np26-boda-video .np26-link { margin-top: 2rem; }
.np26 #ajax-content-wrap .np26-boda-video .np26-link a::after { content: "→"; }
/* otras bodas */
.np26 #ajax-content-wrap .np26-otras .np26-link { margin-top: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-otras .np26-link a::after, .np26 #ajax-content-wrap .np26-boda-hero .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap .np26-boda-hero .np26-link a::after { content: "↓"; }

/* =====================================================================
   21. TARJETAS EDITORIALES DE BODAS (como en el muestrario): dos columnas desfasadas, numero sobre la foto,
   nombre con cursiva dorada y lugar a la derecha. Fila interna np26-weds + columnas np26-wed (bodas_datos.py).
   Portada libre (6) y Fotografia (11 + tarjeta final).
   ===================================================================== */
.np26 #ajax-content-wrap .np26-weds { margin-top: clamp(2.5rem, 5vw, 4.5rem); padding: 0 !important; counter-reset: np26w; }
.np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(1rem, 2.2vw, 2rem); margin-inline: 0 !important; width: auto !important;
}
.np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > .wpb_column { width: auto !important; margin: 0; float: none; }
.np26 #ajax-content-wrap .np26-wed { position: relative; counter-increment: np26w; }
.np26 #ajax-content-wrap .np26-wed > .vc_column-inner { padding: 0 !important; }
/* el dibujo de 6 del muestrario, repetido */
@media (min-width: 861px) {
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n+1) { grid-column: 1 / span 5; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n+2) { grid-column: 7 / span 6; margin-top: 7rem; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n+3) { grid-column: 2 / span 4; margin-top: -5rem; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n+4) { grid-column: 7 / span 5; margin-top: 2rem; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n+5) { grid-column: 1 / span 6; margin-top: 1rem; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(6n) { grid-column: 8 / span 4; margin-top: 8rem; }
}
.np26 #ajax-content-wrap .np26-wed .img-with-aniamtion-wrap { position: relative; margin: 0 !important; }
.np26 #ajax-content-wrap .np26-wed .img-with-aniamtion-wrap .hover-wrap-inner { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :is(:nth-child(6n+2), :nth-child(6n+5)) .hover-wrap-inner { aspect-ratio: 5 / 6; }
/* encuadre alto (las fotos son verticales y el recorte centrado cortaba cabezas) y zoom desde arriba para no recortarlas al pasar el raton */
.np26 #ajax-content-wrap .np26-wed .img-with-aniamtion-wrap img {
  width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 5%; transform-origin: 50% 0;
  opacity: 1 !important; transition: transform 1.4s var(--ease);
}
.np26 #ajax-content-wrap .np26-wed:hover .img-with-aniamtion-wrap img { transform: scale(1.06); }
.np26 #ajax-content-wrap .np26-wed .img-with-aniamtion-wrap::after {
  content: counter(np26w, decimal-leading-zero); position: absolute; top: 1rem; left: 1rem; z-index: 2;
  font-family: var(--serif); font-size: 1rem; letter-spacing: .1em; color: #fff; mix-blend-mode: difference; pointer-events: none;
}
.np26 #ajax-content-wrap .np26-wed__meta .wpb_wrapper { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding-top: 1.1rem; }
.np26 #ajax-content-wrap .np26-wed__meta h3 { font-size: clamp(1.5rem, 2.2vw, 2.1rem); line-height: 1.1; margin: 0 !important; color: var(--ink); }
.np26 #ajax-content-wrap .np26-wed__meta h3 a { color: inherit; border: 0; }
.np26 #ajax-content-wrap .np26-wed__meta h3 a::after { content: ""; position: absolute; inset: 0; z-index: 3; }   /* toda la tarjeta enlaza */
.np26 #ajax-content-wrap .np26-wed__meta h3 em { color: var(--gold-deep); }
.np26 #ajax-content-wrap .np26-wed__meta p { margin: 0 !important; font-size: .68rem; letter-spacing: .24em; text-transform: uppercase; color: var(--muted); white-space: nowrap; }
.np26 #ajax-content-wrap .np26-wed:hover .np26-wed__meta h3 { color: var(--gold-deep); }
/* variante en 3 columnas iguales (otras bodas al final de cada boda, Quienes somos): sin desfase, todas 4:5 */
.np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; row-gap: 2rem; }
.np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner > .wpb_column { grid-column: auto !important; margin-top: 0 !important; }
.np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner > .wpb_column .hover-wrap-inner { aspect-ratio: 4 / 5 !important; }
.np26 #ajax-content-wrap .np26-weds--3 .np26-wed__meta h3 { font-size: clamp(1.3rem, 1.9vw, 1.8rem); }
@media (max-width: 690px) {   /* en movil, tira que se desliza con el dedo */
  .np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner {
    grid-template-columns: none !important; grid-auto-flow: column; grid-auto-columns: 80%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
    margin-inline: calc(-1 * var(--pad)) !important; padding-inline: var(--pad); scroll-padding-inline: var(--pad);
  }
  .np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner::-webkit-scrollbar { display: none; }
  .np26 #ajax-content-wrap .np26-weds--3 > .row_col_wrap_12_inner > .wpb_column { scroll-snap-align: start; }
}
/* la tarjeta final oscura de Fotografia dentro del dibujo */
.np26 #ajax-content-wrap .np26-weds .np26-nextcard { align-self: start; }
@media (max-width: 860px) {
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2rem; }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(even) { margin-top: 3rem; }
  .np26 #ajax-content-wrap .np26-wed__meta .wpb_wrapper { flex-direction: column; gap: .4rem; }
  .np26 #ajax-content-wrap .np26-wed__meta p { white-space: normal; }
}
@media (max-width: 520px) {
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner { grid-template-columns: minmax(0, 1fr); }
  .np26 #ajax-content-wrap .np26-weds > .row_col_wrap_12_inner > :nth-child(even) { margin-top: 0; }
}

/* =====================================================================
   22. GALERIAS PRIVADAS (3650, 3651) y BLOG (3649): build_privadas.py, build_blog.py
   ===================================================================== */
/* tarjetas de galerias (sin fotos: son privadas) */
.np26 #ajax-content-wrap .np26-gcards { margin-top: clamp(2.5rem, 5vw, 4rem); padding: 0 !important; }
.np26 #ajax-content-wrap .np26-gcards > .row_col_wrap_12_inner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2vw, 1.6rem); margin-inline: 0 !important; width: auto !important; }
.np26 #ajax-content-wrap .np26-gcards .wpb_column { width: auto !important; margin: 0 !important; float: none; }
.np26 #ajax-content-wrap .np26-gcard { background: var(--sand); border-top: 2px solid var(--gold); }
.np26 #ajax-content-wrap .np26-gcard > .vc_column-inner { padding: clamp(1.6rem, 3vw, 2.4rem) !important; }
.np26 #ajax-content-wrap .np26-gcard p { font-size: .68rem; letter-spacing: .26em; text-transform: uppercase; color: var(--gold-deep); margin: 0 0 .8rem !important; }
.np26 #ajax-content-wrap .np26-gcard h3 { font-size: clamp(1.8rem, 2.6vw, 2.4rem); line-height: 1.05; margin: 0 0 1.6rem !important; color: var(--ink); }
.np26 #ajax-content-wrap .np26-priv .np26-foot { margin-top: clamp(2rem, 4vw, 3rem); }
.np26 #ajax-content-wrap .np26-priv .np26-link { margin-top: 1rem; }
.np26 #ajax-content-wrap .np26-priv .np26-link a::after { content: "→"; }
.np26 #ajax-content-wrap .np26-priv--one .nectar-button { margin-top: 1.8rem !important; background: var(--ink) !important; color: var(--ivory) !important; border-color: var(--ink) !important; }
.np26 #ajax-content-wrap .np26-priv--one .nectar-button:hover { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
@media (max-width: 860px) { .np26 #ajax-content-wrap .np26-gcards > .row_col_wrap_12_inner { grid-template-columns: minmax(0, 1fr); } }
/* formulario de contrasena de WordPress (galerias protegidas) */
.np26 #ajax-content-wrap .post-password-form { max-width: 34rem; margin: 0 auto !important; padding: clamp(2rem, 4vw, 3rem) !important; background: #fff; border-top: 2px solid var(--gold); }
.np26 #ajax-content-wrap .post-password-form p { font-family: var(--sans); font-style: normal; color: var(--ink-2); margin: 0; }
.np26 #ajax-content-wrap .post-password-form p:empty { display: none; }
.np26 #ajax-content-wrap .post-password-form p:not(:has(label)) { font-family: var(--serif); font-size: clamp(1.4rem, 2.2vw, 1.8rem); line-height: 1.3; color: var(--ink); margin-bottom: 1.6rem; }
.np26 .post-password-form label { display: block; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }
.np26 .post-password-form input[type=password] {
  display: block; width: 100%; margin-top: .4rem; font-family: var(--sans); font-size: 1rem; color: var(--ink); letter-spacing: .1em;
  background: transparent; border: 0; border-bottom: 1px solid var(--muted); border-radius: 0; padding: .7em 0; box-shadow: none;
}
.np26 .post-password-form input[type=password]:focus { border-bottom-color: var(--gold-deep); outline: none; }
.np26 .post-password-form input[type=submit] {
  margin-top: 1.4rem; font-family: var(--sans); font-size: .74rem; letter-spacing: .26em; text-transform: uppercase; cursor: pointer;
  background: var(--ink); color: var(--ivory); border: 1px solid var(--ink); border-radius: 0; padding: 1.05em 2.1em; transition: background .4s, border-color .4s;
}
.np26 .post-password-form input[type=submit]:hover { background: var(--gold); border-color: var(--gold); }

/* blog: listado editorial a todo el ancho, imagen y texto alternando de lado */
.np26 #ajax-content-wrap .np26-blog { padding-top: clamp(3rem, 6vw, 5rem) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-blog .post-area { width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important; }
.np26 #ajax-content-wrap .np26-blog article.post .article-content-wrap {
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(1.5rem, 4vw, 4.5rem); align-items: center; padding: 0 !important;
}
.np26 #ajax-content-wrap .np26-blog article.post:nth-child(even) .article-content-wrap { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
.np26 #ajax-content-wrap .np26-blog article.post:nth-child(even) .post-featured-img-wrap { order: 2; }
.np26 #ajax-content-wrap .np26-blog .post-featured-img-wrap { width: auto !important; float: none !important; margin: 0 !important; aspect-ratio: 4 / 3; overflow: hidden; background: var(--sand); border-radius: 0 !important; }
.np26 #ajax-content-wrap .np26-blog :is(.post-featured-img-wrap > a, .post-featured-img) { border-radius: 0 !important; }
.np26 #ajax-content-wrap .np26-blog .post-featured-img-wrap > a, .np26 #ajax-content-wrap .np26-blog .post-featured-img { display: block; width: 100%; height: 100%; background-size: cover !important; background-position: center !important; }
.np26 #ajax-content-wrap .np26-blog .post-content-wrap { position: relative; width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.np26 #ajax-content-wrap .np26-blog .post-header h3.title, .np26 #ajax-content-wrap .np26-blog .post-header h3.title a {
  font-family: var(--serif) !important; font-style: normal !important; font-weight: 300 !important; font-size: clamp(1.7rem, 2.6vw, 2.6rem) !important; line-height: 1.12 !important;
  letter-spacing: 0 !important; text-transform: none !important; color: var(--ink) !important;
}
.np26 #ajax-content-wrap .np26-blog article:hover .post-header h3.title a { color: var(--gold-deep) !important; }
.np26 #ajax-content-wrap .np26-blog .meta-category { display: block; margin-bottom: 1rem; }
.np26 #ajax-content-wrap .np26-blog .excerpt { margin-top: 1rem; max-width: 52ch; }
.np26 #ajax-content-wrap .np26-blog .grav-wrap { display: none; }
.np26 #ajax-content-wrap .np26-blog .post-content-wrap::after {
  content: "Leer →"; display: inline-block; margin-top: 1.6rem; padding-bottom: .35em; border-bottom: 1px solid var(--gold);
  font-size: .74rem; letter-spacing: .26em; text-transform: uppercase; color: var(--ink);
}
@media (max-width: 760px) {
  .np26 #ajax-content-wrap .np26-blog article.post .article-content-wrap, .np26 #ajax-content-wrap .np26-blog article.post:nth-child(even) .article-content-wrap { grid-template-columns: minmax(0, 1fr); gap: 1.4rem; }
  .np26 #ajax-content-wrap .np26-blog article.post:nth-child(even) .post-featured-img-wrap { order: 0; }
}

/* entrada del blog (plantilla de Salient: .heading-title + .content-inner). Se aplicara a todas el dia de la sustitucion */
.np26.single-post #ajax-content-wrap .heading-title { padding-top: clamp(2.5rem, 6vw, 5rem) !important; padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important; }
.np26.single-post #ajax-content-wrap .heading-title .section-title { max-width: 52rem; margin-inline: auto; float: none; text-align: center; }
.np26.single-post #ajax-content-wrap .heading-title .meta-category a {
  display: inline-block; padding: 0 !important; border: 0 !important; background: none !important; border-radius: 0 !important;
  font-family: var(--sans) !important; font-size: .72rem !important; letter-spacing: .32em; text-transform: uppercase; color: var(--gold-deep) !important;
}
.np26.single-post #ajax-content-wrap .heading-title h1.entry-title {
  font-family: var(--serif) !important; font-weight: 300 !important; font-style: normal !important; text-transform: none !important; letter-spacing: -.01em !important;
  font-size: clamp(2.4rem, min(5vw, 9vh), 4.4rem) !important; line-height: 1.05 !important; color: var(--ink) !important; margin-top: 1rem !important; text-wrap: balance;
}
/* el texto de las entradas venia centrado en linea: columna de lectura y a la izquierda (como el resto de la web) */
.np26.single-post #ajax-content-wrap .content-inner { max-width: 46rem; margin-inline: auto; }
.np26.single-post #ajax-content-wrap .content-inner :is(p, li, h2, h3, h4) { text-align: left !important; }
.np26.single-post #ajax-content-wrap .content-inner p { font-size: 1.04rem; line-height: 1.8; }
.np26.single-post #ajax-content-wrap .content-inner :is(h1, h2) { font-size: clamp(1.8rem, 2.8vw, 2.5rem); line-height: 1.12; margin: 2.2em 0 .6em; text-align: left !important; }
.np26.single-post #ajax-content-wrap .content-inner h3 { font-size: clamp(1.35rem, 2vw, 1.7rem); margin: 1.9em 0 .5em; }
.np26.single-post #ajax-content-wrap .content-inner :is(h1, h2, h3, p):empty { display: none; }
.np26.single-post #ajax-content-wrap .content-inner p > strong:first-child:not(:only-child) { display: block; font-family: var(--serif); font-size: 1.3rem; font-weight: 400; color: var(--ink); margin-bottom: .2rem; }
/* muchas entradas tienen los parrafos enteros en cursiva (estilo antiguo): con la cursiva dorada en serif no se leian; texto normal */
.np26.single-post #ajax-content-wrap .content-inner :is(p, li) > em:only-child,
.np26.single-post #ajax-content-wrap .content-inner :is(p, li) > span:only-child > em:only-child { font-family: var(--sans); font-style: normal; color: inherit; }
.np26.single-post #ajax-content-wrap .content-inner :is(p, li, h2, h3) span[style] { font-family: inherit !important; font-size: inherit !important; }   /* Times y tamanos puestos a mano */
/* galeria de la entrada: mas ancha que la columna de texto, de 4 en 4 (2 en movil) */
.np26.single-post #ajax-content-wrap .content-inner .wpb_gallery {
  position: relative; left: 50%; transform: translateX(-50%); width: min(1245px, calc(100vw - 2 * var(--pad))) !important; max-width: none !important; margin-top: clamp(2.5rem, 5vw, 4rem) !important;
}
@media (min-width: 1000px) { .np26.single-post #ajax-content-wrap .content-inner .wpb_gallery .portfolio-items.masonry-items { columns: 4 !important; } }
.np26.single-post #ajax-content-wrap .content-inner .img-with-aniamtion-wrap { margin: 0 0 2.5rem !important; }
.np26.single-post #ajax-content-wrap .content-inner .img-with-aniamtion-wrap :is(.hover-wrap, .hover-wrap-inner) { display: block; width: 100% !important; box-shadow: none !important; }
.np26.single-post #ajax-content-wrap .content-inner .img-with-aniamtion-wrap img {
  width: 100% !important; max-width: none !important; box-shadow: none !important;
  max-height: 78vh; object-fit: cover; object-position: 50% 25%;   /* las verticales ocupaban mas de una pantalla */
}
.np26.single-post #ajax-content-wrap .content-inner .img-with-aniamtion-wrap .inner { max-width: none !important; width: 100% !important; }

/* =====================================================================
   23. PAGINAS AUTOMATICAS DE WORDPRESS: no encontrada (404), busqueda y archivo de categoria
   (textos traducidos por el plugin; el bloque de enlaces de la 404 lo coloca np26.js)
   ===================================================================== */
/* 404 */
.np26 #ajax-content-wrap #error-404 { text-align: center; padding: clamp(3rem, 8vw, 7rem) 0 var(--section); }
.np26 #ajax-content-wrap #error-404 h1 {
  font-family: var(--serif) !important; font-style: italic !important; font-weight: 300 !important; text-transform: none !important;
  font-size: clamp(6rem, 18vw, 12rem) !important; line-height: .9 !important; letter-spacing: 0 !important; color: var(--gold) !important; margin: 0 0 1rem !important;
}
.np26 #ajax-content-wrap #error-404 h2 {
  font-family: var(--serif) !important; font-style: normal !important; font-weight: 300 !important; text-transform: none !important;
  font-size: clamp(2rem, 4vw, 3.4rem) !important; line-height: 1.1 !important; letter-spacing: 0 !important; color: var(--ink) !important; margin: 0 !important;
}
.np26 #ajax-content-wrap .np26-404 p { max-width: 42ch; margin: 1.3rem auto 1.6rem; color: var(--ink-2); }
.np26 #ajax-content-wrap .np26-404 ul { display: flex; justify-content: center; flex-wrap: wrap; gap: .8rem 2rem; list-style: none; margin: 0 0 2.6rem; padding: 0; }
.np26 #ajax-content-wrap .np26-404 li { margin: 0; padding: 0; list-style: none !important; }
.np26 #ajax-content-wrap .np26-404 li::marker { content: none; }
.np26 #ajax-content-wrap .np26-404 li::before { display: none; }
.np26 #ajax-content-wrap .np26-404 a { font-size: .74rem; letter-spacing: .26em; text-transform: uppercase; color: var(--ink); border-bottom: 1px solid var(--gold); padding-bottom: .35em; }
.np26 #ajax-content-wrap .np26-404 a:hover { color: var(--gold-deep); }
.np26 #ajax-content-wrap #error-404 .nectar-button { background: var(--ink) !important; color: var(--ivory) !important; border-color: var(--ink) !important; }
.np26 #ajax-content-wrap #error-404 .nectar-button:hover { background: var(--gold) !important; border-color: var(--gold) !important; color: #fff !important; }
.np26 #ajax-content-wrap #error-404 .nectar-button i { display: none; }

/* busqueda: cabecera clara (sin foto) y lista de resultados */
.np26.search #ajax-content-wrap #page-header-bg {
  background: var(--ivory) !important; height: auto !important; padding: calc(var(--np26-nav-h, 108px) + clamp(2rem, 5vw, 4rem)) 0 clamp(1.5rem, 3vw, 2.5rem) !important;
}
.np26.search #ajax-content-wrap #page-header-bg::after { display: none; }
.np26.search #ajax-content-wrap #page-header-bg :is(.container, .row, .col, .inner-wrap) { position: static !important; transform: none !important; }
.np26.search #ajax-content-wrap #page-header-bg :is(.col, .inner-wrap) { width: 100% !important; max-width: 46rem; margin-inline: auto !important; float: none !important; }
.np26.search #ajax-content-wrap .container-wrap { padding-top: 0 !important; }
.np26.search #ajax-content-wrap .main-content > .row, .np26.search #ajax-content-wrap .main-content > .row > .col { padding-top: 0 !important; margin-top: 0 !important; }
.np26.search #ajax-content-wrap #page-header-bg h1 { color: var(--ink) !important; font-size: clamp(2.2rem, 4.4vw, 3.8rem) !important; }
.np26.search #ajax-content-wrap #page-header-bg h1 span { font-style: italic; color: var(--gold-deep); }
.np26.search #ajax-content-wrap #page-header-bg .result-num { display: block; margin-top: 1rem; font-size: .72rem; letter-spacing: .26em; text-transform: uppercase; color: var(--muted); }
.np26.search #ajax-content-wrap #search-results { max-width: 46rem; margin: 0 auto var(--section) !important; padding-top: 0 !important; border-top: 1px solid var(--stone); }
.np26.search #ajax-content-wrap #search-results article.result {
  display: block !important; position: static !important; left: auto !important; top: auto !important; transform: none !important; width: auto !important; float: none !important;
  margin: 0 !important; padding: 1.2rem 0 !important; border-bottom: 1px solid var(--stone); background: none !important; box-shadow: none !important;
}
.np26.search #ajax-content-wrap #search-results article.result :is(.inner-wrap, *) { border-radius: 0 !important; box-shadow: none !important; }
.np26.search #ajax-content-wrap #search-results article.result .inner-wrap { border: 0 !important; }
.np26.search #ajax-content-wrap #search-results article.result .inner-wrap { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 1.4rem; align-items: center; padding: 0 !important; background: none !important; }
.np26.search #ajax-content-wrap #search-results article.result .inner-wrap > a:has(img) { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.np26.search #ajax-content-wrap #search-results article.result .inner-wrap:not(:has(img))::before { content: ""; aspect-ratio: 4 / 5; background: var(--sand); }
.np26.search #ajax-content-wrap #search-results article.result img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: 50% 15%; }
.np26.search #ajax-content-wrap #search-results h2.title { font-family: var(--serif) !important; font-weight: 300 !important; font-size: clamp(1.4rem, 2.2vw, 1.9rem) !important; line-height: 1.15 !important; margin: 0 !important; text-transform: none !important; }
.np26.search #ajax-content-wrap #search-results h2.title a { color: var(--ink) !important; }
.np26.search #ajax-content-wrap #search-results h2.title a:hover { color: var(--gold-deep) !important; }
.np26.search #ajax-content-wrap #search-results h2.title span { display: block; margin-top: .5rem; font-family: var(--sans); font-size: .66rem; letter-spacing: .26em; text-transform: uppercase; color: var(--gold-deep); }
.np26.search #ajax-content-wrap #search-results > h3 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); margin: 2rem 0 .6rem; }
.np26.search #ajax-content-wrap #search-results .search-form { display: flex; gap: 1rem; align-items: flex-end; margin: 1.6rem 0 var(--section); }
.np26.search #ajax-content-wrap #search-results .search-field { flex: 1; font-family: var(--sans); font-size: 1rem; color: var(--ink); background: transparent; border: 0; border-bottom: 1px solid var(--muted); border-radius: 0; padding: .7em 0; box-shadow: none; }
.np26.search #ajax-content-wrap #search-results .search-widget-btn { font-family: var(--sans); font-size: .74rem; letter-spacing: .26em; text-transform: uppercase; background: var(--ink); color: var(--ivory); border: 0; border-radius: 0; padding: 1.05em 1.8em; cursor: pointer; }
.np26.search #ajax-content-wrap #search-results .search-widget-btn .normal { display: none; }

/* archivo de categoria (Blog): cabecera de texto y tarjetas de 3 en 3 con el titulo sobre la foto */
.np26.archive #ajax-content-wrap .page-header-no-bg { padding: clamp(3rem, 7vw, 6rem) 0 clamp(1.5rem, 3vw, 2.5rem) !important; background: var(--ivory) !important; }
.np26.archive #ajax-content-wrap .page-header-no-bg .section-title { padding: 0 !important; }
.np26.archive #ajax-content-wrap .page-header-no-bg .subheader {
  display: block; font-family: var(--sans) !important; font-style: normal !important; font-size: .72rem !important; letter-spacing: .32em; text-transform: uppercase; color: var(--muted) !important;
}
.np26.archive #ajax-content-wrap .page-header-no-bg h1 { font-family: var(--serif) !important; font-weight: 300 !important; font-style: normal !important; text-transform: none !important; font-size: clamp(2.6rem, 5vw, 4.6rem) !important; line-height: 1.02 !important; color: var(--ink) !important; margin-top: 1rem !important; }
/* sin la columna de lectura (regla de paginas solo texto) ni el ancho completo del tema: rejilla dentro del contenedor */
.np26.archive #ajax-content-wrap .main-content > .row { max-width: none !important; margin-inline: 0 !important; padding: 0 !important; }
.np26.archive #ajax-content-wrap .blog-fullwidth-wrap { margin: 0 !important; width: auto !important; left: auto !important; padding: 0 !important; }
.np26.archive #ajax-content-wrap .post-area { width: 100% !important; padding: 0 !important; margin: 0 !important; float: none !important; }
.np26.archive #ajax-content-wrap .posts-container {
  display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2vw, 1.6rem); height: auto !important; margin-bottom: var(--section) !important;
}
.np26.archive #ajax-content-wrap .posts-container > article {
  position: relative !important; left: auto !important; top: auto !important; transform: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; opacity: 1 !important;
}
.np26.archive #ajax-content-wrap .posts-container > article .inner-wrap { opacity: 1 !important; transform: none !important; }
.np26.archive #ajax-content-wrap .posts-container > article :is(.inner-wrap, .post-content, .content-inner) { border-radius: 0 !important; box-shadow: none !important; }
.np26.archive #ajax-content-wrap .posts-container > article .content-inner { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 0 !important; background: var(--sand); }
.np26.archive #ajax-content-wrap .posts-container > article .post-featured-img { position: absolute !important; inset: 0; background-size: cover !important; background-position: 50% 20% !important; border-radius: 0 !important; transition: transform 1.4s var(--ease); }
.np26.archive #ajax-content-wrap .posts-container > article:hover .post-featured-img { transform: scale(1.05); }
.np26.archive #ajax-content-wrap .posts-container > article .content-inner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgb(10 9 8 / 0) 45%, rgb(10 9 8 / .65) 100%); pointer-events: none; }
.np26.archive #ajax-content-wrap .posts-container > article .article-content-wrap { position: absolute !important; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.4rem !important; background: none !important; }
.np26.archive #ajax-content-wrap .posts-container > article .meta-category a { font-family: var(--sans) !important; font-size: .64rem !important; letter-spacing: .26em; text-transform: uppercase; color: rgb(255 255 255 / .85) !important; background: none !important; padding: 0 !important; border: 0 !important; }
.np26.archive #ajax-content-wrap .posts-container > article h3.title, .np26.archive #ajax-content-wrap .posts-container > article h3.title a {
  font-family: var(--serif) !important; font-weight: 300 !important; font-style: normal !important; text-transform: none !important; font-size: clamp(1.3rem, 1.9vw, 1.7rem) !important; line-height: 1.15 !important; color: #fff !important; margin: .5rem 0 0 !important;
}
.np26.archive #ajax-content-wrap .posts-container > article .entire-meta-link { position: absolute; inset: 0; z-index: 3; }
@media (max-width: 860px) { .np26.archive #ajax-content-wrap .posts-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .np26.archive #ajax-content-wrap .posts-container { grid-template-columns: minmax(0, 1fr); } }

/* =====================================================================
   24. PAGINAS LEGALES (Politica de privacidad 3652, build_privacidad.py): cuadro resumen + texto en columna de lectura
   ===================================================================== */
.np26 #ajax-content-wrap .np26-legal-head .vc_column-inner > .wpb_wrapper { max-width: 46rem; margin-inline: auto; }   /* la misma columna que el texto */
.np26 #ajax-content-wrap .np26-legal-head .np26-intro { max-width: 46rem; }
.np26 #ajax-content-wrap .np26-legal-head .np26-foot { margin-top: 1.2rem; }
.np26 #ajax-content-wrap .np26-legal-sum { padding-top: clamp(2.5rem, 5vw, 4rem) !important; padding-bottom: 0 !important; }
.np26 #ajax-content-wrap .np26-legal-table { max-width: 46rem; margin-inline: auto; background: var(--sand); border-top: 2px solid var(--gold); padding: clamp(1.6rem, 3vw, 2.4rem); }
.np26 #ajax-content-wrap .np26-legal-table h2 { font-size: clamp(1.6rem, 2.4vw, 2.1rem); margin: 0 0 1.2rem; }
.np26 #ajax-content-wrap .np26-legal-table p { display: grid; grid-template-columns: 9.5rem minmax(0, 1fr); gap: 1rem; margin: 0 !important; padding: .9rem 0; border-top: 1px solid var(--stone); font-size: .95rem; line-height: 1.6; }
.np26 #ajax-content-wrap .np26-legal-table p strong { font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; color: var(--gold-deep); padding-top: .2em; }
@media (max-width: 600px) { .np26 #ajax-content-wrap .np26-legal-table p { grid-template-columns: minmax(0, 1fr); gap: .3rem; } }
.np26 #ajax-content-wrap .np26-legal .np26-story :is(ul) { margin-bottom: 1.4rem; }
.np26 #ajax-content-wrap .np26-legal .np26-story li { font-size: 1rem; }

/* etiqueta del modo revision (enlace secreto para los clientes): abajo a la izquierda, sin tapar nada */
.np26 .np26-review {
  position: fixed; left: 1rem; bottom: 1rem; z-index: 99990; pointer-events: none; padding: .7em 1.1em;
  background: var(--ink); color: var(--ivory); font-family: var(--sans); font-size: .64rem; line-height: 1.3; letter-spacing: .18em; text-transform: uppercase; opacity: .92;
}
@media (max-width: 520px) { .np26 .np26-review { left: .6rem; bottom: .6rem; max-width: 60vw; font-size: .58rem; letter-spacing: .12em; } }

/* ---------- 11. Menos movimiento ---------- */
@media (prefers-reduced-motion: reduce) {
  .np26 #ajax-content-wrap .np26-hero .np26-down a::after { animation: none; }
  .np26 #ajax-content-wrap :is(.work-item img, .column-image-bg, .img-with-aniamtion-wrap img, .np26-places__list li a) { transition: none !important; }
}
