/*
Theme Name: KP Técnica — Renovación
Version: 1.0.0
Text Domain: kp-tecnica
*/
:root{--ink:#152836;--muted:#52606e;--accent:#df4835;--paper:#f6f5f1;--line:#dedfdc;--radius:14px;--width:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:17px;line-height:1.75;background:#fff}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button,input,textarea{font:inherit}img{max-width:100%;height:auto}h1,h2,h3,h4,h5{color:var(--ink);line-height:1.15;letter-spacing:-.035em;margin:0 0 24px;font-weight:700}h1{font-size:clamp(38px,5.4vw,76px)}h2{font-size:clamp(29px,3.2vw,44px)}h3{font-size:26px}h4{font-size:23px}h5{font-size:20px}p{margin:0 0 23px}ul,ol{padding-left:24px}li{margin-bottom:8px}.kp-wrap{width:min(calc(100% - 64px),var(--width));margin:auto}.kp-skip{position:absolute;left:-9999px}.kp-skip:focus{left:15px;top:15px;background:#fff;padding:12px;z-index:100}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.kp-topbar{background:var(--ink);color:#fff;font-size:13px}.kp-topbar .kp-wrap{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.kp-topbar a{text-decoration:none}.kp-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.kp-header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px}.kp-brand{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.kp-brand img{width:204px;max-height:68px;object-fit:contain}.kp-brand-text{font-size:25px;font-weight:800;letter-spacing:-.04em}.kp-nav ul{display:flex;align-items:center;gap:25px;list-style:none;margin:0;padding:0}.kp-nav li{margin:0}.kp-nav a{font-size:13px;font-weight:700;text-decoration:none;display:block;padding:12px 0}.kp-nav .current-menu-item>a,.kp-nav a:hover{color:var(--accent)}.kp-nav .menu-item:last-child>a{padding:11px 19px;border:1px solid var(--ink);border-radius:6px}.kp-nav-toggle{display:none;border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 13px;color:var(--ink)}.kp-title-band{background:var(--paper);padding:66px 0 58px;border-bottom:1px solid var(--line)}.kp-eyebrow{font-size:12px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--accent)!important;margin:0 0 25px!important}.kp-title-band h1{margin:0;font-size:clamp(36px,5vw,62px)}.kp-breadcrumb{margin:0 0 23px;font-size:13px;color:var(--muted)}.kp-body{padding:54px 0 86px;min-height:45vh}.kp-body .elementor{width:100%}.kp-body .e-con{--container-default-padding-top:0;--container-default-padding-bottom:0;--container-default-padding-left:0;--container-default-padding-right:0;--gap:24px;--row-gap:24px;--column-gap:24px}.kp-row{margin-bottom:42px;gap:36px!important;align-items:flex-start!important}.kp-row>.e-con-inner{gap:36px!important;align-items:flex-start!important}.kp-column{flex:1;min-width:260px;gap:10px!important}.kp-grid{gap:24px!important;width:100%;align-items:stretch!important}.kp-panel{background:var(--paper);padding:32px!important;border:1px solid #ecece7;border-radius:var(--radius);min-width:240px;flex:1;gap:12px!important;transition:transform .2s,box-shadow .2s}.kp-panel:hover{transform:translateY(-3px);box-shadow:0 15px 30px #1528360b}.kp-panel h3{font-size:24px}.kp-panel .kp-original-image img{max-height:100px;object-fit:contain;width:auto}.kp-grid.three_columns>.kp-panel{flex-basis:30%}.kp-grid.two_columns>.kp-panel{flex-basis:46%}.kp-original-image img{border-radius:8px;object-fit:contain;max-height:620px;width:auto}.kp-body .elementor-widget-text-editor{color:var(--muted)}.kp-body .elementor-widget-text-editor h1{font-size:42px}.kp-body .elementor-widget-text-editor h2{font-size:32px}.kp-hero{background:var(--ink);border-radius:18px;padding:0!important;overflow:hidden;margin:0 0 64px;gap:0!important;align-items:stretch!important}.kp-hero-copy{flex:1;min-width:320px;padding:64px 50px!important;gap:0!important;justify-content:center!important}.kp-hero-title h1{font-size:clamp(43px,4.8vw,70px)!important;color:#fff!important;line-height:1.05!important;letter-spacing:-.05em!important}.kp-hero-subtitle h2{font-size:21px!important;color:#ced7dc!important;font-weight:400!important;line-height:1.5!important;letter-spacing:0!important}.kp-hero .kp-eyebrow{color:#ffb4a8!important;font-size:10px!important}.kp-hero-visual{width:46%!important;min-width:280px;flex:1;padding:0!important;min-height:440px}.kp-hero-visual .elementor-widget,.kp-hero-visual .elementor-widget-container{height:100%}.kp-hero-visual img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;border-radius:0!important}.kp-button .elementor-button,.kp-action{background:var(--accent)!important;color:#fff!important;border:0!important;border-radius:6px!important;padding:17px 25px!important;font-weight:700!important;text-decoration:none;display:inline-block;font-size:14px!important;line-height:1.3!important}.kp-hero .kp-button{margin-top:20px}.kp-button .elementor-button:hover,.kp-action:hover{background:#bd3625!important}.kp-gallery img{border-radius:8px}.kp-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.kp-project-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;transition:transform .2s}.kp-project-card:hover{transform:translateY(-4px)}.kp-project-card>a{text-decoration:none;display:block}.kp-project-card img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}.kp-project-card-body{padding:25px}.kp-project-card h2{font-size:23px;letter-spacing:-.02em;margin:8px 0 15px}.kp-project-card p{font-size:14px;color:var(--muted);margin:0}.kp-project-card time{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.kp-pagination{margin-top:35px;display:flex;gap:10px;justify-content:center}.kp-pagination a,.kp-pagination span{display:inline-flex;padding:7px 15px;border:1px solid var(--line);text-decoration:none;border-radius:5px}.kp-pagination .current{background:var(--ink);color:#fff}.kp-cta-strip{background:var(--paper);border-block:1px solid var(--line);padding:43px 0}.kp-cta-strip .kp-wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.kp-cta-strip h2{font-size:30px;margin:0}.kp-cta-strip p{margin:10px 0 0;color:var(--muted);font-size:15px}.kp-footer{background:var(--ink);color:#ccd4d9;padding:58px 0 24px;font-size:14px}.kp-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.kp-footer h2{font-size:20px;letter-spacing:-.02em;color:#fff}.kp-footer strong{color:#fff}.kp-footer ul{list-style:none;padding:0}.kp-footer a{text-decoration:none}.kp-footer a:hover{text-decoration:underline}.kp-footer-bottom{margin-top:42px;padding-top:22px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:20px;font-size:12px}.kp-preview-note{padding:12px 16px;background:#fff2df;border-left:3px solid #bb6f12;font-size:14px;line-height:1.5;margin-bottom:25px}.wpcf7 label{font-size:14px;font-weight:600}.wpcf7 input:not([type=checkbox]),.wpcf7 textarea{border:1px solid #cbd0d2;border-radius:6px;padding:11px 13px;width:100%;background:#fafbf9;max-width:100%}.wpcf7 textarea{height:150px}.wpcf7 input[type=submit]{background:#66757d;color:#fff;cursor:not-allowed}.wp-caption{max-width:100%}.gallery{display:flex;flex-wrap:wrap;gap:16px}.gallery-item{margin:0;flex:1;min-width:200px}.gallery-item img{border:0!important;border-radius:8px}.kp-search{display:flex;gap:8px}.kp-search input{padding:12px;border:1px solid var(--line);border-radius:5px;min-width:0}.kp-search button{padding:12px;background:var(--ink);color:#fff;border:0;border-radius:5px}
@media(min-width:1025px){.kp-body:has(.kp-hero){padding-top:35px}.kp-body .kp-hero .kp-hero-copy{width:54%!important;flex:none!important}.kp-body .kp-hero .kp-hero-visual{width:46%!important;flex:none!important}}
@media(max-width:1100px){.kp-nav ul{gap:17px}.kp-nav a{font-size:12px}.kp-brand img{width:170px}.kp-header-inner{gap:18px}.kp-hero-copy{padding:45px 30px!important}}
@media(max-width:900px){.kp-wrap{width:calc(100% - 40px)}.kp-header-inner{min-height:80px;flex-wrap:wrap;padding:10px 0}.kp-nav-toggle{display:block}.kp-nav{display:none;flex-basis:100%;width:100%;padding:10px 0 20px}.kp-nav.is-open{display:block}.kp-nav ul{display:block}.kp-nav a{font-size:15px;padding:10px 0}.kp-nav .menu-item:last-child>a{display:inline-block;margin-top:8px}.kp-topbar .kp-wrap>span{display:none}.kp-topbar .kp-wrap{justify-content:center}.kp-body{padding-top:35px}.kp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-hero{flex-direction:column!important}.kp-hero-copy,.kp-hero-visual{width:100%!important;min-width:0}.kp-hero-copy{padding:42px 28px!important}.kp-hero-visual{min-height:280px;max-height:360px}.kp-grid.three_columns>.kp-panel{flex-basis:45%}.kp-title-band{padding:43px 0}.kp-footer-grid{gap:26px;grid-template-columns:1.2fr 1fr}}
@media(max-width:600px){body{font-size:16px}.kp-wrap{width:calc(100% - 32px)}.kp-topbar .kp-wrap{gap:22px;font-size:11px}.kp-brand img{width:155px}.kp-hero{border-radius:12px;margin-bottom:42px}.kp-hero-title h1{font-size:45px!important}.kp-hero-subtitle h2{font-size:18px!important}.kp-hero-visual{max-height:260px;min-height:240px}.kp-grid{flex-direction:column!important}.kp-panel,.kp-column{min-width:0;width:100%!important;flex-basis:100%!important}.kp-row{flex-direction:column!important;gap:20px!important;margin-bottom:26px}.kp-row>.e-con-inner{flex-direction:column!important;gap:20px!important}.kp-panel{padding:27px!important}.kp-project-grid{grid-template-columns:1fr}.kp-footer-grid{grid-template-columns:1fr;gap:25px}.kp-footer-bottom{flex-direction:column}.kp-cta-strip .kp-wrap{align-items:flex-start;flex-direction:column}.kp-cta-strip h2{font-size:28px}.kp-title-band h1{font-size:38px}.kp-body .elementor-widget-text-editor h1{font-size:33px}.kp-body .elementor-widget-text-editor h2{font-size:28px}.kp-body{padding-bottom:50px}.kp-hero-copy{padding:35px 24px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.kp-body .kp-hero{border-radius:18px!important;overflow:hidden!important;margin:0 0 64px!important}.kp-body .kp-row{margin-bottom:42px!important}.kp-body .kp-panel{border-radius:14px!important}.kp-body .kp-hero-copy{padding:64px 50px!important}.kp-body .kp-hero-copy>.elementor-widget{margin-bottom:14px}.kp-body .kp-hero-visual{padding:0!important}.kp-single-image{display:block;margin:0 auto 38px;border-radius:12px;max-height:580px;object-fit:contain}.kp-body .kp-original-image img{border-radius:8px!important}
@media(max-width:900px){.kp-body .kp-hero-copy{padding:42px 28px!important}}@media(max-width:600px){.kp-body .kp-hero{margin-bottom:38px!important;border-radius:12px!important}.kp-body .kp-hero-copy{padding:35px 24px!important}.kp-body .kp-row{margin-bottom:26px!important}}
.kp-social{display:flex;flex-wrap:wrap;gap:17px;font-size:12px}.kp-footer h2:not(:first-child){margin-top:28px}.kp-footer-grid{grid-template-columns:1.1fr 1fr 1.1fr}
@media(max-width:900px){.kp-footer-grid{grid-template-columns:1fr 1fr}.kp-footer-grid>div:last-child{grid-column:1/-1}.kp-footer iframe{width:100%}}@media(max-width:600px){.kp-footer-grid{grid-template-columns:1fr}.kp-footer-grid>div:last-child{grid-column:auto}}
/* Tres pasos alineados y fotografías de automoción ampliadas. */
.home .kp-body .kp-row:has(.wp-image-394){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px!important;align-items:stretch!important}
.home .kp-body .kp-row:has(.wp-image-394)>.kp-column{width:100%!important;min-width:0;flex:none!important}
.home .kp-body .kp-panel:has(.wp-image-448){gap:24px!important}
.home .kp-body .kp-panel .kp-original-image:has(.wp-image-448),.home .kp-body .kp-panel .kp-original-image:has(.wp-image-449){width:100%!important;max-width:none!important}
.home .kp-body .kp-panel img.wp-image-448,.home .kp-body .kp-panel img.wp-image-449{display:block;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain}
@media(max-width:767px){.home .kp-body .kp-row:has(.wp-image-394){grid-template-columns:1fr;gap:28px!important}}

.kp-grid.three_columns > .kp-panel { flex: 0 0 calc((100% - 2 * 24px) / 3); }
.kp-grid.two_columns   > .kp-panel { flex: 0 0 calc((100% - 24px) / 2); }

@media (max-width: 900px) {
  .kp-grid.three_columns > .kp-panel { flex: 0 0 calc((100% - 24px) / 2); }
}