/* Revisión de contenido y accesibilidad: mantiene la paleta y las tarjetas existentes. */
.skip-link{position:absolute;left:12px;top:-100px;z-index:10000;background:#fff;color:#172d3b;padding:12px}
.skip-link:focus{top:12px}
main{display:block;clear:both}
.kode_top3_content>a{color:inherit;float:right}
.kode_section_heading h1,.kode_section_heading h2{font-size:36px;font-weight:bold;margin-bottom:16px;line-height:1.2}
.kode_history_heading h1{font-size:36px;font-weight:700;line-height:1.2;margin-bottom:20px}
.kode_history_detail h3{font-size:22px;line-height:1.3;margin-bottom:12px;color:var(--cfj-ink,#232b31)}
.kode_pratices_content figcaption h3{font-size:21px;font-weight:700;line-height:1.25;margin:0 0 11px;color:var(--cfj-ink,#232b31)}
.widget2_text .footer-heading{font-size:24px;color:#fff;margin-bottom:20px}
.kode_contact_content h2{font-size:24px;color:inherit;margin-bottom:12px}
.kode_banner_titile h1{font-size:36px;color:#fff;line-height:1.2}
.kode_plumber_heading h2{font-size:30px;margin-bottom:18px}
.kode_section_heading p,.kode_plumber_heading p{max-width:900px;margin:12px auto;line-height:1.65}
.kode_project_wraper .kode_history_heading p{color:#fff}
.kode_project_wraper .botonesp{display:inline-block;margin-bottom:20px;color:#fff}
.cfj-pause{position:absolute;bottom:12px;right:20px;z-index:3;background:#fff;color:#102431;border:1px solid #102431;border-radius:5px;padding:8px 12px}
.slidercarro{max-width:100%}

.slidercarro:focus-within .slide-track,.slidercarro:hover .slide-track{animation-play-state:paused}
.cfj-contact-shortcuts{position:fixed;bottom:20px;right:18px;display:flex;gap:8px;z-index:999}
.cfj-contact-shortcuts a{display:flex;width:48px;height:48px;align-items:center;justify-content:center;background:#102431;color:#fff;border-radius:50%;font-size:25px;border:2px solid #fff}
.cfj-form label{display:block;text-align:left;font-weight:600;margin-bottom:6px}
.cfj-form .field-help{font-size:13px;line-height:1.5;text-align:left;margin:6px 0 14px}
.cfj-form .form-status{clear:both;padding:12px;border-left:3px solid #b12632;margin:18px 0;background:#f5f5f5;color:#172d3b;line-height:1.6}
.cfj-form .form_submit button{padding:14px 20px;border:0;border-radius:6px;color:#fff;background:#a51e2e}
.cfj-form .form_submit button:disabled{opacity:.6;cursor:not-allowed}
.cfj-form input,.cfj-form textarea{max-width:100%;box-sizing:border-box}
.cfj-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.widget2_text a{overflow-wrap:anywhere}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d29228;outline-offset:3px}
@media(max-width:767px){
 .kode_section_heading h1,.kode_history_heading h1,.kode_section_heading h2,.kode_banner_titile h1{font-size:28px}
 .kode_top3_content>a{float:none;display:block}
 .cfj-contact-shortcuts{bottom:12px;right:12px}
 .kode_logo3_service a{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.slidercarro .slide-track{animation:none!important}}


.kode_top3_content>a{color:#fff!important}

.cfj-form label,.cfj-form input,.cfj-form textarea{color:#172d3b!important}
.cfj-form a{color:#8e1d2c!important;text-decoration:underline}
.kode_contact_content h2{color:#172d3b}
.kode_contact_wrap:has(#commentform) .kode_contact_content h2{color:#fff}
.kode_banner_titile{position:relative;z-index:1}
.kode_banner_titile h1{color:#fff!important}
.kode_contact_text a{color:#314b5a;overflow-wrap:anywhere}
.kode_logo3_service .boton{display:inline-block;background:#b72234;color:#fff;padding:12px 18px;border-radius:30px;font-weight:700}

.cfj-intro{clear:both;padding:38px 0;background:#102431;color:#fff;text-align:center}
.cfj-intro h1{font-size:clamp(27px,3vw,40px);font-weight:700;line-height:1.2;color:#fff;max-width:1000px;margin:0 auto 18px}
.cfj-intro p{color:#fff;max-width:950px;margin:0 auto 16px;font-size:16px;line-height:1.65}
.cfj-intro .boton{display:inline-block;margin-top:4px;background:#b72234;color:#fff;padding:12px 22px;border-radius:30px}
.cfj-original-banners{display:flow-root;position:relative;padding-bottom:62px;background:#102431}
/* Mantener un solo banner visible antes de inicializar Slick o si no carga. */
.banner2-center:not(.slick-initialized)>figure:not(:first-child){display:none}
.cfj-pause[hidden]{display:none!important}
.cfj-original-banners .slick-track,.cfj-original-banners .slick-list{transition:none}
.cfj-original-banners .slick-prev.slick-arrow:before,.cfj-original-banners .slick-next.slick-arrow:before{width:40px;height:40px;line-height:40px}
.cfj-original-banners .banner2-center figure{height:auto;min-height:0;aspect-ratio:10/3;background:none}
.cfj-original-banners .banner2-center figure img{display:block;position:static;width:100%;height:auto;aspect-ratio:10/3;object-fit:contain;opacity:1}
.cfj-original-banners figure:before,.cfj-original-banners figure:after{content:none!important}
#bancos .kode_project_fig img{display:block;max-width:100%;height:auto;object-fit:contain;margin:0 auto}
.cfj-original-banners .slick-prev.slick-arrow,.cfj-original-banners .slick-next.slick-arrow{display:block!important;top:auto;bottom:-50px;margin:0;width:40px;height:40px;line-height:40px}
.cfj-original-banners .slick-prev.slick-arrow{left:20px}
.cfj-original-banners .slick-next.slick-arrow{left:72px;right:auto}
.cfj-original-banners .slick-dots{bottom:-50px;left:130px;width:auto}
.cfj-pause{bottom:11px}
.cfj-footer-minimum{clear:both;padding-top:24px;color:#e7eef2}
.cfj-footer-minimum p{color:#e7eef2;font-size:14px;margin-bottom:10px}
.kode_banner{background-image:none;background-color:#102431}
@media(max-width:767px){.cfj-intro{padding:30px 8px}.cfj-intro p{font-size:15px}.cfj-original-banners .slick-dots{display:none!important}}

/* Dirección visible y encabezado adaptable en las cuatro páginas. */
.header_2 .kode_logo3_service{min-width:0;flex-wrap:wrap}
.header_2 .kode_logo3_service>li:first-child{display:block;flex:1 1 240px;min-width:0}
.header_2 .kode_logo3_services_text{display:flex;align-items:center;gap:12px}
.header_2 .kode_logo3_services_text span{float:none;flex:0 0 42px}
.header_2 .kode_logo3_location_list{float:none;padding-left:0;min-width:0}
.header_2 .kode_logo3_location_list p{color:#172d3b;white-space:normal;overflow-wrap:break-word;margin:0}
@media(max-width:991px){
.header_2 .kode_logo3_service{width:100%;justify-content:center}
.header_2 .kode_logo3_service>li:first-child{flex:1 1 100%}
.header_2 .kode_logo3_services_text{justify-content:center}
.header_2 .kode_logo3_location_list{max-width:460px}
}

@media(max-width:767px){.kode_history>.container>.row{display:block;float:none;width:100%;margin-left:0;margin-right:0}.kode_history>.container>.row>[class*="col-"]{float:none;width:100%;padding-left:0;padding-right:0}}

/* Revisión móvil: lectura, controles táctiles y contenido sin solapamientos. */
@media(max-width:767px){
 html{scroll-padding-bottom:90px}
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 #contenido p{font-size:16px;line-height:1.65}
 #contenido .field-help{font-size:14px;line-height:1.55}
 #contenido h1{font-size:clamp(25px,6.8vw,32px);line-height:1.25;overflow-wrap:break-word}
 #contenido .cfj-broker-faq h2{font-size:28px;line-height:1.25}
 #contenido .cfj-broker-faq h3{font-size:21px;line-height:1.35}
 #contenido .cfj-form input,#contenido .cfj-form select,#contenido .cfj-form textarea{font-size:16px!important;max-width:100%;min-width:0}
 #contenido .cfj-form input:not([type=hidden]),#contenido .cfj-form select{min-height:48px}
 #contenido .cfj-form label{font-size:15px;line-height:1.5}
 #contenido .cfj-form button{min-height:48px;white-space:normal}
 #contenido .cfj-form .form_submit{max-width:100%;white-space:normal}
 #contenido .cfj-form a{display:inline-block;min-height:44px;padding:10px 0}
 #contenido .kode_contact_text p,#contenido .kode_contact_text p a{color:#172d3b;font-size:16px;overflow-wrap:anywhere}
 #contenido .kode_contact_text a{display:inline-block;min-height:44px;padding:8px 0}
 #contenido .kode_contact_wrap:has(#commentform) .kode_contact_text p,#contenido .kode_contact_wrap:has(#commentform) .kode_contact_text a,#contenido .kode_contact_wrap:has(#commentform) .kode_contact_content h2{color:#FFFFFF}
 #contenido .kode_contact_wrap:not(:has(#commentform)) .kode_section_heading p{color:#172d3b}
 .header_2 .kode_logo3_service .boton{font-size:14px;min-height:44px}
 #bancos>.container>.row{width:100%;flex:0 0 100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}
 #bancos>.container>.row:before,#bancos>.container>.row:after{display:none}
 #bancos>.container>.row>[class*="col-"]{float:none;width:auto;min-width:0;padding:0}
 #bancos .kode_project_fig{margin:0}
 #bancos .kode_project_fig img{width:100%;height:auto;object-fit:contain}
 .kode_plumber_feature_fig figure img{height:auto;object-fit:contain}
 .cfj-contact-shortcuts{left:0;right:0;bottom:0;justify-content:center;gap:24px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#102431;border-top:1px solid #536775}
 .cfj-contact-shortcuts a{position:static;flex:0 0 48px}
 body:has(.cfj-form input:focus,.cfj-form textarea:focus,.cfj-form select:focus) .cfj-contact-shortcuts{display:none}
 .widget2_service li a{display:inline-block;min-height:44px;padding-top:9px;padding-bottom:9px}
 .widget2_text p,.cfj-footer-minimum p{font-size:15px;line-height:1.65}
 .widget2_social a,.top_arrow{min-width:44px;min-height:44px}
}
@media(max-width:767px) and (orientation:landscape){
 .kode_top_navi_wraper.wrap_2 .navigation .kode_navigation_list>ul{max-height:65vh}
}
