/* Ajustes para que Kadence se vea como Bridge en duapara (fase 2 de la migración).
   Cada regla indica qué rol de docs/migracion-tema iguala. */

/* Menú principal: Bridge no muestra la flecha del submenú (Contacto). */
.main-navigation .dropdown-nav-toggle { display: none; }
.main-navigation .nav-drop-title-wrap { padding-right: 0; } /* el hueco que dejaba la flecha */


/* Títulos base de Bridge (stylesheet.min.css de duapara, modificado): fuente y grosor con !important,
   que mandan sobre el CSS personalizado salvo donde éste también usa !important (secciones dp-*, en Ubuntu).
   FreightDispMedium → Cormorant Garamond 600 (única variante servida: «normal» se pinta con la 600). */
h1 { font-size: 60px; font-family: 'Cormorant Garamond'!important; font-weight:normal!important; line-height: 1.25em; }
h2 { font-size: 27px; font-family: 'Cormorant Garamond'!important; line-height: 2em; text-transform:uppercase; font-weight:normal!important; }
h3 { font-size: 27px!important; font-family: 'Cormorant Garamond'!important; line-height: 1.304347826086957em; font-weight:normal!important; }
h4 { font-size: 19px; font-family: 'Cormorant Garamond'!important; line-height: 1.375em; font-weight:normal!important; }
h5 { font-size: 20px; font-family: 'Cormorant Garamond'!important; text-transform:uppercase; font-weight:normal!important; }
h6 { font-size: 13px; font-family: 'Cormorant Garamond'!important; line-height: 1.538461538461538em; text-transform:uppercase; letter-spacing:1px; font-weight:600; }
/* Resto de reglas de títulos de Bridge (stylesheet.min.css, a continuación de las anteriores; faltaban en la fase 2). */
.h2, .h3, h2, h3 { text-transform: uppercase; letter-spacing: 1px; font-weight: 600; }
.h1, h1 { font-size: 30px; line-height: 1.25em; }
.h2, h2 { font-size: 24px; line-height: 1.384615384615385em; }
.h3, h3 { font-size: 17px; line-height: 1.304347826086957em; }
.h4, h4 { font-size: 19px; line-height: 1.375em; font-weight: 400; }
.h5, .h6, h5, h6 { font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }
.h5, h5 { font-size: 15px; line-height: 1.571428571428571em; }
.h6, h6 { font-size: 13px; line-height: 1.538461538461538em; }

/* Estilos generados por las opciones de Bridge (style_dynamic.css) para elementos genéricos, en su orden.
   Se cargan después de los títulos base, igual que en Bridge. */
h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, a:hover, p a:hover, .portfolio_share .social_share_holder a:hover, .breadcrumb .current, .breadcrumb a:hover, .q_icon_with_title .icon_with_title_link, .q_counter_holder span.counter, .q_font_awsome_icon i, .q_font_awsome_icon span, .q_dropcap, .q_counter_holder span.counter, nav.mobile_menu ul li a:hover, nav.mobile_menu ul li.active > a, .q_progress_bars_icons_inner.square .bar.active i, .q_progress_bars_icons_inner.circle .bar.active i, .q_progress_bars_icons_inner.normal .bar.active i, .q_font_awsome_icon_stack .fa-circle, .footer_top .q_social_icon_holder:hover .simple_social, .more_facts_button:hover, .box_holder_icon .fa-stack i, .blog_large_image_simple .minimalist_date, nav.content_menu ul li.active:hover i, nav.content_menu ul li:hover i, nav.content_menu ul li.active:hover a, nav.content_menu ul li:hover a, .vc_grid-container .vc_grid-filter.vc_grid-filter-color-grey > .vc_grid-filter-item:hover span, .vc_grid-container .vc_grid-filter.vc_grid-filter-color-grey > .vc_grid-filter-item.vc_active span, .q_font_awsome_icon i:hover, .q_font_awsome_icon span:hover, .fullscreen_search_holder .search_submit:hover { color: #f4c80f; }
h1,h2,h3,h4,h5,h6, .h1,.h2,.h3,.h4,.h5,.h6, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a a, p a, nav.main_menu>ul>li.active > a, .drop_down .wide .second ul li ul li.menu-item-has-children > a, .drop_down .wide .second ul li ul li.menu-item-has-children > a:hover, .title h1, .q_icon_list p, .q_progress_bars_vertical .progress_number, .qbutton, .vc_grid-container .vc_row.vc_grid .vc_grid-item .vc_btn, .vc_grid-container .vc_row.vc_grid .vc_pageable-load-more-btn .vc_btn:hover, .post-password-form input[type='submit'], .load_more a, .blog_load_more_button a, #submit_comment, .drop_down .wide .second ul li .qbutton, .drop_down .wide .second ul li ul li .qbutton, .q_percentage, .portfolio_navigation .portfolio_prev a:hover, .portfolio_navigation .portfolio_next a:hover, .q_tabs .tabs-nav li.active a, .q_accordion_holder.accordion .ui-accordion-header, .q_accordion_holder.accordion.with_icon .ui-accordion-header, .testimonials .testimonial_text_inner p.testimonial_author, .testimonial_content_inner .testimonial_author .website, .q_icon_with_title .icon_with_title_link:hover, .ordered ol li, .q_list.circle ul>li, .q_list.number ul>li, .latest_post_holder .latest_post_date .post_publish_month, .latest_post_inner .post_infos a, .latest_post_holder.dividers .latest_post_date .latest_post_day, .q_masonry_blog article.format-quote .q_masonry_blog_post_text p, .q_masonry_blog article.format-link .q_masonry_blog_post_text p, .q_masonry_blog article .q_masonry_blog_post_info, .blog_holder article.format-quote .post_text .post_title p, .blog_holder article.format-link .post_text .post_title p, .single_links_pages span, .single_links_pages a:hover span, .comment_holder .comment .text .name, .blog_holder.masonry article .post_info, .pagination ul li span, .pagination ul li a:hover, .q_team .q_team_description_inner p, .carousel-inner .item.dark .slider_content .text .qbutton, .carousel-control, .more_facts_button, .carousel-control:hover, input.wpcf7-form-control.wpcf7-submit:not([disabled]) { color: #dab102; }
body { color: #000000; }
body, .wrapper, .content, .full_width, .overlapping_content .content > .container, .more_facts_holder, .comment_holder .comment #respond textarea, .comment_holder .comment #respond input[type='text'], .content .container { background-color:#f7f7f7; }
h1, .h1, .title h1 { color: #000000; font-size: 33px; line-height: 40px; }
h2, .h2, h2 a { color: #000000; font-size: 40px; line-height: 50px; text-transform: none; }
h3, .h3, h3 a { color: #000000; font-size: 22px; font-style: normal; font-weight: 500; text-transform: none; }
h4, .h4, h4 a { color: #000000; }
h5, .h5, h5 a, .q_icon_with_title .icon_text_holder h5.icon_title { color: #000000; font-size: 22px; line-height: 22px; font-style: normal; }
h6, .h6, h6 a { color: #000000; font-family: 'Raleway', sans-serif; }
p { color: #000000; font-family: 'Lato', sans-serif; }
a, p a { color: #d8ad1e; }

/* ---- Pie (medidas de Bridge en pre /about/, escritorio) ----
   Franja superior: #666, 272 px, 4 columnas de 275 px desde el contenedor de 1100; contenido a 72 px del borde. */
.site-footer .site-middle-footer-wrap { background: #666666; }
.site-footer .site-middle-footer-inner-wrap { min-height: 272px; box-sizing: border-box; padding-top: 72px; padding-bottom: 40px; column-gap: 0; align-items: start; }
.site-footer .site-middle-footer-inner-wrap .site-footer-section { padding-right: 15px; }
.site-footer .site-middle-footer-inner-wrap .site-footer-section:not(:first-child) { padding-left: 20px; } /* Bridge: columnas 2-4 con 20 px */
/* Párrafos del pie: en Bridge, #e5e5e5 y sin margen (la regla genérica «p {color:#000}» no les afecta). */
.site-footer .site-middle-footer-wrap p { color: #e5e5e5; margin: 0; }
.site-footer .widget { margin-bottom: 0; }
/* Títulos de los widgets: h5 de Bridge (FreightDispMedium → Cormorant Garamond) 22/22 px, mayúsculas, blancos. */
.site-footer .widget-title { font-family: 'Cormorant Garamond' !important; font-size: 22px !important; line-height: 22px !important;
  font-weight: normal !important; letter-spacing: 1px; text-transform: uppercase; color: #ffffff; margin: 0 0 22px; }
/* Texto: Ubuntu 14/26 #e5e5e5; enlaces blancos (Bridge: .footer_top a #fff !important). */
.site-footer .site-middle-footer-wrap, .site-footer .textwidget { font-family: 'Ubuntu', sans-serif; font-size: 14px; line-height: 26px; color: #e5e5e5; }
.site-footer .site-middle-footer-wrap a { color: #ffffff !important; text-decoration: none; }
/* Franja inferior: negra, 93 px, menú centrado Ubuntu 13 px/500, mayúsculas, 1 px de espaciado, 49 px entre elementos. */
.site-footer .site-bottom-footer-wrap { background: #000000; }
.site-footer .site-bottom-footer-inner-wrap { min-height: 93px; box-sizing: border-box; padding: 36px 0 20px; }
#colophon .footer-navigation .footer-menu-container > ul > li > a { font-family: 'Ubuntu', sans-serif !important; font-size: 13px; font-weight: 500; line-height: 22px;
  letter-spacing: 1px; text-transform: uppercase; color: #ffffff; padding: 0 24.5px; }
#colophon .footer-navigation .footer-menu-container > ul > li > a:hover { color: #ffffff; }

/* ---- Shortcodes de WPBakery (vc_*) con su equivalente del mu-plugin (sección 8) ---- */
.dp-vc-fila { display: flex; flex-wrap: wrap; width: 100%; }
.dp-vc-columna { flex: 0 0 var(--dp-ancho, 100%); max-width: var(--dp-ancho, 100%); box-sizing: border-box; }
@media (max-width: 767px) { .dp-vc-columna { flex-basis: 100%; max-width: 100%; } }
.dp-vc-separador { border: 0; border-top: 1px solid #eaeaea; width: 100%; height: 0; }
.dp-vc-separador-transparent { border-top-color: transparent; }
.dp-vc-separador-small { width: 60px; }
.dp-vc-imagen img { max-width: 100%; height: auto; }

/* ---- [button] y [blockquote] de Bridge (reglas de stylesheet.min.css, style_dynamic.css y responsive, en ese orden) ---- */
blockquote { background: 0 0; border: 0; margin: 0; padding: 0; vertical-align: baseline; outline: 0; }
blockquote:after, blockquote:before { content: ''; content: none; }
.qbutton { position: relative; display: inline-block; width: auto; height: 39px; line-height: 39px; margin: 0; padding: 0 23px; border: 2px solid #303030; font-size: 13px; font-weight: 700; font-family: inherit; text-align: left; color: #303030; text-decoration: none; cursor: pointer; white-space: nowrap; outline: 0; font-style: normal; text-transform: uppercase; letter-spacing: 1px; border-radius: 4px; text-shadow: none; background-color: transparent; transition: color .1s linear, background-color .1s linear, border-color .1s linear; box-sizing: initial !important; }
.qbutton:hover { background-color: #1abc9c; border-color: #1abc9c; color: #fff; text-decoration: none; }
.qbutton.left { text-align: left; } .qbutton.right { text-align: right; } .qbutton.center { text-align: center; }
.qbutton i { margin: 0 0 0 10px; }
.qbutton.small { height: 30px; line-height: 30px; font-size: 12px; padding: 0 17px; } /* Bridge: «Read More» de los listados */
blockquote { quotes: none; position: relative; padding: 14px 14px 14px 10px; border-left: 4px solid transparent; }
blockquote h5 { line-height: 1.5625em; text-transform: none; font-size: 21px; letter-spacing: normal; font-weight: 400; margin: 0 !important; }
blockquote.with_quote_icon h5 { padding: 0 0 0 40px; }
blockquote i.pull-left { font-size: 22px; color: #c1c0c0; margin: 6px 0 0 !important; }
.qbutton:hover { border-color: #f4c80f; background-color: #f4c80f; }
.qbutton { color: #dab102; border-color: #dab102; }
blockquote h5 { color: #000000; }
blockquote i.pull-left { color: #f4c80f; }
.qbutton, .qbutton.medium { color: #000000; border-color: #000000; font-size: 15px; line-height: 35px; height: 35px; font-style: normal; font-weight: 500; border-radius: 3px; letter-spacing: 3px; text-transform: none; border-width: 2px; }
.qbutton:hover, .qbutton.medium:hover { color: #ffffff; background-color: #f4c80f; }
@media only screen and (max-width: 768px) { .qbutton, .qbutton.small { padding: 0 14px; } }
/* pull-left de FontAwesome y tamaño del icono SVG que sustituye a fa-quote-right. */
blockquote i.pull-left { float: left; margin-right: .3em; font-style: normal; line-height: 1; }
blockquote i.pull-left svg { display: block; width: 1em; height: 1em; }
/* Kadence da margen a .entry-content blockquote; en Bridge el reset de blockquote lo deja a 0. */
.entry-content blockquote { margin: 0; }
/* …pero esa misma regla de Kadence gana a .dp-quote (estilos-duapara.css): se repite su margen. */
.entry-content blockquote.dp-quote { margin: 0 auto 16px; }

/* ---- [latest_post] de Bridge, tipo image_in_box (reglas de stylesheet.min.css y style_dynamic.css) ---- */
.latest_post_holder { position: relative; display: inline-block; vertical-align: middle; width: 100%; }
.latest_post_holder li:last-child .latest_post { border-bottom: none; }
.latest_post_holder > ul { list-style: none; display: inline-block; width: 100%; position: relative; margin: 0; padding: 0; }
.latest_post_holder > ul > li { display: block; position: relative; padding-top: 15px; }
@media only screen and (max-width: 600px) { .latest_post_holder > ul > li { width: 100% !important; margin: 0 0 25px !important; } } /* responsive.min.css de Bridge */
.latest_post_holder > ul > li:first-child { padding-top: 0; }
.latest_post, .latest_post a img, .latest_post > a { display: block; position: relative; }
.latest_post_image { width: 95px; float: left; }
.latest_post_image img { width: 100%; float: left; }
.latest_post_text { display: block; width: auto; }
.latest_post_holder.image_in_box .latest_post_text { padding: 0 0 0 116px; }
.latest_post_inner { margin: 0 0 10px !important; }
.latest_post_holder.image_in_box .latest_post_text_inner { display: table-cell; vertical-align: middle; }
.latest_post_holder.image_in_box .latest_post_inner { display: table; width: 100%; margin: 0 !important; }
.latest_post_inner .post_infos { display: block; font-weight: 500; }
.latest_post_holder.image_in_box .latest_post_text .latest_post_title { margin: -3px 0 2px; }
.latest_post_holder.image_in_box .latest_post_text .excerpt { margin: 0 0 8px; }
.latest_post_inner .post_infos a { color: #dab102; margin: 0 7px 0 0; }
.latest_post_inner .post_infos a:hover { color: #d8ad1e; }
.latest_post_holder > ul > li::after { content: ''; display: table; clear: both; }

/* ---- [qode_clients]: rejilla de logos (sin referencia en Bridge, donde salía en crudo) ---- */
.dp-clientes { display: grid; grid-template-columns: repeat(var(--dp-columnas, 5), 1fr); gap: 20px; align-items: center; margin: 20px 0; }
.dp-cliente { text-align: center; }
.dp-cliente img { max-width: 100%; max-height: 110px; width: auto; height: auto; display: inline-block; }
@media (max-width: 767px) { .dp-clientes { grid-template-columns: repeat(2, 1fr); } }

/* ---- Visor de fotos (visor.js) ---- */
html.dp-visor-abierto { overflow: hidden; }
.dp-visor { position: fixed; inset: 0; z-index: 100000; background: rgba(0, 0, 0, .92); display: flex; align-items: center; justify-content: center; }
.dp-visor[hidden] { display: none; }
.dp-visor-imagen { margin: 0; max-width: 90vw; text-align: center; }
.dp-visor-imagen img { display: block; margin: 0 auto; max-width: 90vw; max-height: 82vh; width: auto; height: auto; }
.dp-visor-pie { margin-top: 10px; color: #e5e5e5; font-family: 'Ubuntu', sans-serif; font-size: 14px; line-height: 22px; }
.dp-visor button { position: absolute; background: transparent; border: 0; color: #ffffff; font-size: 44px; line-height: 1; padding: 8px 14px; cursor: pointer; }
.dp-visor button[hidden] { display: none; }
.dp-visor button:hover { color: #f4c80f; }
.dp-visor button:focus-visible { outline: 2px solid #f4c80f; outline-offset: 2px; }
.dp-visor-cerrar { top: 12px; right: 16px; }
.dp-visor-anterior { left: 12px; top: 50%; transform: translateY(-50%); }
.dp-visor-siguiente { right: 12px; top: 50%; transform: translateY(-50%); }
.dp-visor-contador { position: absolute; bottom: 14px; left: 0; right: 0; margin: 0; text-align: center; color: #e5e5e5; font-family: 'Ubuntu', sans-serif; font-size: 13px; letter-spacing: 1px; }

/* ---- Portada (fase 4) ----
   En Bridge, en escritorio, el contenido de la portada empieza 81 px por encima del borde de la página
   (.content {margin-top:-81px}) y la cabecera blanca de 101 px tapa la parte de arriba de la imagen principal.
   Aquí la imagen sube los 182 px que la separan de esa posición y la cabecera queda por encima. */
@media only screen and (min-width: 1001px) {
  .home .entry-content > .dp-hero:first-child { margin-top: -182px; }
  .home #masthead, .blog #masthead { position: relative; z-index: 20; }
  .blog #inner-wrap > .dp-blog-hero:first-child { margin-top: -182px; } /* /blog/: igual que la portada */
}

/* ---- Título de la página (fase 4) ----
   Bridge pone el título en una franja #eee de 52 px bajo la cabecera; en escritorio la cabecera fija la tapa
   (y el contenido empieza 23 px más abajo), en móvil (≤1000 px) se ve. Título: h1 17/22 px, mayúsculas, 1 px. */
.entry-hero.page-hero-section .entry-header { padding: 15px 0; box-sizing: border-box; } /* Bridge: .title con 15 px arriba y abajo; crece si el título ocupa dos líneas */
/* Kadence solo genera el fondo y la altura de la franja en las páginas; los artículos, listados, búsqueda y 404 la usan también (fase 5). */
.entry-hero.page-hero-section .entry-hero-container-inner { background: #eeeeee; }
.entry-hero.page-hero-section .entry-header { min-height: 52px; }
.entry-hero.page-hero-section .entry-title { font-family: 'Cormorant Garamond' !important; font-size: 17px; line-height: 1.304347826086957em;
  font-weight: normal !important; text-transform: uppercase; letter-spacing: 1px; color: #000; margin: 0; padding: 0; }
.entry-hero.page-hero-section .entry-title { width: 100%; }
@media only screen and (max-width: 1000px) { .page:not(.home) .site-main { padding-top: 30px; } } /* artículos, listados, búsqueda y 404: sin hueco en Bridge */ /* Bridge: 30 px tras la franja del título */
@media only screen and (min-width: 1001px) {
  /* Oculto a la vista pero no a lectores de pantalla ni buscadores (en Bridge el h1 sigue ahí, tapado). */
  .entry-hero.page-hero-section { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .page:not(.home) .site-main, .single-post .site-main, .archive .site-main, .search .site-main, .error404 .site-main { padding-top: 23px; }
}

/* ---- Cabecera móvil (fase 4): Bridge, botón del menú a 15 px del borde (fa-bars 14 px #dec6bf) y logo centrado ---- */
#mobile-header .site-header-main-section-left { padding-left: 15px; }
#mobile-header .site-container { padding-left: 0; padding-right: 0; }
#mobile-header .menu-toggle-open { padding: 0; color: #dec6bf; }
#mobile-header .menu-toggle-open .menu-toggle-icon { font-size: 14px; }

/* ---- Pie en móvil (fase 4): Bridge en ≤767 px ----
   Columnas a 15 px del borde, una debajo de otra, 50 px entre ellas; franja gris con 72 px arriba y 52 abajo.
   Menú inferior: un enlace por línea de 35 px (li 12 px), enlaces Ubuntu 11 px/500, mayúsculas, 1 px; 20 px arriba y abajo. */
@media only screen and (max-width: 767px) {
  .site-footer .site-middle-footer-wrap .site-container, .site-footer .site-bottom-footer-wrap .site-container { padding-left: 15px; padding-right: 15px; }
  .site-footer .site-middle-footer-inner-wrap { min-height: 0; padding-top: 72px; padding-bottom: 52px; row-gap: 0; }
  .site-footer .site-middle-footer-inner-wrap .site-footer-section { padding: 0 !important; margin-bottom: 50px; }
  .site-footer .site-middle-footer-inner-wrap .site-footer-section:last-child { margin-bottom: 0; }
  .site-footer .site-bottom-footer-inner-wrap { min-height: 0; padding: 20px 0; }
  .site-footer .footer-navigation, .site-footer .footer-menu-container { display: block; width: 100%; }
  .site-footer .footer-navigation .menu { display: block; }
  .site-footer .footer-navigation .menu > li { display: block; height: 35px; font-size: 12px; line-height: 35px; margin: 0; text-align: center; }
  #colophon .footer-navigation .footer-menu-container > ul > li > a { display: inline; padding: 0; font-size: 11px; line-height: 35px; }
}

/* Subtítulo de la franja del título (fase 5; opción de Bridge en algunos artículos): debajo del título. */
.entry-hero.page-hero-section .entry-header.dp-con-subtitulo { flex-direction: column; align-items: flex-start; justify-content: center; }
.entry-hero.page-hero-section .subtitle { display: block; font-family: 'Raleway', sans-serif; font-weight: 400; font-size: 14px; line-height: 26px; color: #000; }
