/* JHDC Ruta Serena — Public website design system, WordPress 6.4+ — v2.4.0
 * Without external CSS or font dependencies. No styles target WP admin.
 */
:root{--jhdc-navy:#0b2248;--jhdc-blue:#0868d8;--jhdc-blue-dark:#0954b7;--jhdc-yellow:#ffc400;--jhdc-sub:#64758f;--jhdc-text:#142b4b;--jhdc-soft:#f4f8fd;--jhdc-surface:#fff;--jhdc-border:#e4ebf4;--jhdc-radius:14px;--jhdc-shadow:0 12px 36px rgba(17,48,91,.055)}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body.jhdc-body{margin:0;background:var(--jhdc-surface);color:var(--jhdc-text);font:400 14px/1.62 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.jhdc-body img{max-width:100%;height:auto}body.jhdc-body a{color:inherit;text-decoration:none}body.jhdc-body button{font:inherit;cursor:pointer}body.jhdc-body :focus-visible{outline:3px solid #1f82f3;outline-offset:3px}body.jhdc-body ::selection{background:#d4e8ff;color:#0b2248}
body.jhdc-body h1,body.jhdc-body h2,body.jhdc-body h3,body.jhdc-body p{margin:0}
body.jhdc-body h1,body.jhdc-body h2,body.jhdc-body h3{font-weight:780;letter-spacing:-.045em;line-height:1.13}
.jhdc-icon{display:inline-block;width:19px;height:19px;flex:0 0 auto;vertical-align:middle}.jhdc-shell{width:min(1200px,calc(100% - 60px));margin-inline:auto}
.jhdc-skip{position:fixed;left:12px;top:-90px;z-index:2000;padding:10px 16px;background:#fff;border:1px solid var(--jhdc-blue);border-radius:8px}.jhdc-skip:focus{top:10px}
/* Header */
.jhdc-header{position:sticky;top:0;z-index:50;isolation:isolate;background:rgba(255,255,255,.97);border-bottom:1px solid #eaf0f7;box-shadow:0 4px 18px rgba(34,68,104,.025);backdrop-filter:blur(14px)}.admin-bar .jhdc-header{top:32px}
.jhdc-header-inner{display:flex;min-height:76px;align-items:center;gap:28px;justify-content:space-between}
.jhdc-brand{display:flex;align-items:center;flex:none;width:213px}.jhdc-brand-image{display:block;width:100%;height:auto;object-fit:contain}
.jhdc-nav{margin-left:auto;min-width:0}.jhdc-menu{display:flex;align-items:center;gap:21px;list-style:none;padding:0;margin:0}.jhdc-menu a{font-size:12px;font-weight:670;color:#425775;white-space:nowrap;transition:color .2s}.jhdc-menu a:hover{color:var(--jhdc-blue)}
.jhdc-header-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}.jhdc-access,.jhdc-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:9px;padding:9px 13px;white-space:nowrap;font-size:12px;font-weight:750;transition:background .2s,transform .2s}.jhdc-access{border:1px solid #75a3ea;color:var(--jhdc-blue)!important;background:#fff}.jhdc-access:hover{background:#eef6ff}.jhdc-header-cta{background:var(--jhdc-yellow);color:#172034!important;gap:7px;border:1px solid #f7bb00}.jhdc-header-cta:hover{background:#efb900}.jhdc-header-cta .jhdc-icon{height:15px;width:15px}
.jhdc-mobile-trigger{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #dbe6f4;border-radius:10px;background:#fff;color:#154178}.jhdc-mobile-actions{display:none}
/* Buttons */
.jhdc-btn{min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 19px;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:770;line-height:1.28;white-space:nowrap;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s}.jhdc-btn .jhdc-icon{width:17px;height:17px}.jhdc-btn:hover{transform:translateY(-1px)}.jhdc-btn-primary{background:var(--jhdc-yellow);color:#0c233f!important;border-color:#efb400;box-shadow:0 7px 18px rgba(218,170,0,.11)}.jhdc-btn-primary:hover{background:#f3bc00;box-shadow:0 10px 24px rgba(218,170,0,.15)}.jhdc-btn-ghost{background:#fff;color:var(--jhdc-blue)!important;border-color:#70a3ea}.jhdc-btn-ghost:hover{background:#f4f9ff}
.jhdc-text-link{display:inline-flex;align-items:center;gap:8px;color:var(--jhdc-blue)!important;font-weight:730;font-size:12px;white-space:nowrap}.jhdc-text-link .jhdc-icon{width:15px;height:15px}
/* Hero: a real photo as soft background + accessible DOM mockup */
.jhdc-hero{position:relative;isolation:isolate;background:linear-gradient(120deg,#fff 0%,#edf5ff 100%);overflow:hidden}
.jhdc-hero-bg{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.975) 32%,rgba(250,253,255,.87) 57%,rgba(247,252,255,.46) 100%),url('../images/ruta-serena-edificio.webp');background-size:cover,cover;background-position:center,center 56%;pointer-events:none}
.jhdc-hero-grid{position:relative;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:40px;min-height:542px;padding-top:44px;padding-bottom:44px}
.jhdc-hero-copy{position:relative;z-index:2;max-width:575px}.jhdc-eyebrow{font-size:11px;font-weight:810;letter-spacing:.105em;color:#2469ae;margin-bottom:16px!important;text-transform:uppercase}.jhdc-hero h1{font-size:clamp(37px,3.9vw,53px);line-height:1.12;letter-spacing:-.052em;color:#0b2346;max-width:650px}.jhdc-hero h1 span{color:var(--jhdc-blue)}.jhdc-lead{font-size:15px;line-height:1.74;color:#536781;max-width:505px;margin-top:19px!important}
.jhdc-hero-buttons{display:flex;gap:11px;flex-wrap:wrap;margin-top:27px}.jhdc-hero-features{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:31px}.jhdc-hero-features span{display:inline-flex;gap:7px;align-items:center;font-weight:690;font-size:11px;color:#315575}.jhdc-hero-features .jhdc-icon{color:var(--jhdc-blue);height:17px;width:17px}
.jhdc-hero-visual{min-height:470px;display:flex;align-items:center;justify-content:center;position:relative}.jhdc-device-halo{position:absolute;inset:8% 4% 1% 0%;background:radial-gradient(ellipse at 52% 49%,rgba(40,118,210,.12),rgba(40,118,210,.025) 54%,transparent 70%);border-radius:50%}
.jhdc-phone{z-index:2;position:relative;border:7px solid #162e4d;background:#121d31;border-radius:41px;box-shadow:0 26px 62px rgba(6,38,86,.14),0 4px 12px rgba(4,20,47,.13);padding:4px;overflow:hidden;isolation:isolate}.jhdc-phone-hero{width:245px;height:447px;transform:rotate(2deg)}.jhdc-phone:before{content:"";position:absolute;inset:1px;border:1px solid #52637d;border-radius:36px;pointer-events:none;z-index:4}.jhdc-phone-camera{position:absolute;z-index:5;width:74px;height:17px;left:50%;top:9px;transform:translateX(-50%);border-radius:0 0 14px 14px;background:#13223b}.jhdc-phone-screen{height:100%;overflow:hidden;border-radius:29px;background:#fff;display:flex;flex-direction:column}.jhdc-phone-head{background:linear-gradient(120deg,#0b438c,#0767cb);color:#fff;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:27px 13px 10px;font-size:10px;font-weight:800}.jhdc-phone-head>.jhdc-phone-identity{display:flex;min-width:0;gap:8px;align-items:center}.jhdc-phone-head .jhdc-icon{width:15px;height:15px}.jhdc-phone-brand{display:flex;align-items:center;justify-content:flex-start;flex:0 1 auto;background:transparent;border-radius:0;padding:0;min-width:0;max-width:164px;min-height:auto;box-shadow:none}.jhdc-phone-brand img{display:block;object-fit:contain;width:142px;height:auto;max-width:100%;max-height:44px;filter:drop-shadow(0 1px 1px rgba(3,22,55,.12))}.jhdc-phone-body{padding:18px 13px;flex:1;overflow:hidden}.jhdc-demo-tag{font-size:8px;color:#8594a7;text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:9px}.jhdc-phone-title{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px}.jhdc-phone-title strong{font-size:12px}.jhdc-phone-title span{font-size:8px;padding:3px 5px;border-radius:5px;background:#dcf7eb;color:#17784f;white-space:nowrap}.jhdc-phone h3{font-size:13px;letter-spacing:-.03em;margin:10px 0 11px!important}.jhdc-phone-tabs{display:flex;border-bottom:1px solid #e7edf7;justify-content:space-between;gap:7px;color:#8190a1;font-size:9px;margin:0 -2px 14px}.jhdc-phone-tabs span{padding-bottom:8px}.jhdc-phone-tabs .active{color:var(--jhdc-blue);border-bottom:2px solid var(--jhdc-blue);font-weight:750}.jhdc-phone-timeline{display:grid;gap:5px}.jhdc-phone-event{display:flex;gap:10px;position:relative;padding:3px 0 13px}.jhdc-phone-event:not(:last-child):before{content:"";position:absolute;left:12px;top:28px;bottom:-3px;width:1px;background:#d4e3f2}.jhdc-phone-point{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex:none;border-radius:50%;background:#e4effe;color:#1066c5}.jhdc-phone-point.done{background:#dcf7e7;color:#16865a}.jhdc-phone-point .jhdc-icon{width:13px;height:13px}.jhdc-phone-event>div{padding-top:3px}.jhdc-phone-event strong{display:block;font-size:9.3px;line-height:1.22}.jhdc-phone-event small{display:block;font-size:8.1px;line-height:1.42;color:#708096;margin-top:4px}.jhdc-phone-soft-note{display:flex;align-items:center;gap:5px;background:#eff6fc;border-radius:6px;padding:8px;color:#62788f;font-size:8px;margin-top:8px}.jhdc-phone-soft-note .jhdc-icon{width:12px;height:12px}.jhdc-phone-bottom{display:flex;justify-content:center;margin-top:auto;background:#fff;padding:5px}.jhdc-phone-bottom span{width:56px;height:3px;border-radius:3px;background:#142840}
.jhdc-float{position:absolute;z-index:3;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.96);border:1px solid #e4edf7;box-shadow:0 9px 28px rgba(26,64,109,.07);border-radius:10px;padding:10px 12px;font-size:10px;font-weight:700;color:#315072;white-space:nowrap}.jhdc-float .jhdc-icon{width:16px;height:16px;color:#0a70ce}.jhdc-float-a{top:18%;right:3%}.jhdc-float-a .jhdc-icon{color:#1b9b72}.jhdc-float-b{top:50%;left:2%}.jhdc-float-c{right:1%;bottom:19%}.jhdc-float-c .jhdc-icon{color:#d8a300}
/* status preview band */
.jhdc-case-summary{background:#fff;border-block:1px solid #eaf0f7}.jhdc-summary-grid{display:grid;grid-template-columns:1.38fr repeat(3,1fr);gap:18px;align-items:center;min-height:102px}.jhdc-summary-copy{display:grid;gap:5px;padding-right:16px}.jhdc-summary-copy strong{font-size:15px;line-height:1.28;color:#132d51}.jhdc-summary-copy span{font-size:11px;color:#7788a0;line-height:1.5}.jhdc-mini-step{display:flex;gap:11px;align-items:flex-start;padding-left:17px;border-left:1px solid #e8eef5}.jhdc-mini-number{color:var(--jhdc-blue);font-weight:850;font-size:13px;background:#eaf4ff;height:31px;width:31px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none}.jhdc-mini-step strong{display:block;font-size:11px;color:#284260}.jhdc-mini-step small{display:block;font-size:10px;color:#8493a6;line-height:1.43;margin-top:3px}
/* Sections */
.jhdc-section{padding:77px 0}.jhdc-section-heading{margin-bottom:30px;max-width:880px}.jhdc-section-heading-inline{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.jhdc-section-heading-inline>div{max-width:795px}.jhdc-section-heading-center{max-width:810px;text-align:center;margin-inline:auto}.jhdc-kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--jhdc-blue);font-weight:790;margin-bottom:12px!important}.jhdc-section h2{font-size:clamp(27px,2.8vw,39px);color:#142b4e;line-height:1.17}.jhdc-section-heading p:not(.jhdc-kicker),.jhdc-faq-grid>div>p:last-child{color:var(--jhdc-sub);font-size:13px;line-height:1.75;margin-top:12px}.jhdc-services{background:#fff}
.jhdc-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.jhdc-service-card{display:flex;align-items:flex-start;gap:13px;min-height:120px;background:#fff;border:1px solid #e3ebf5;border-radius:12px;padding:20px 16px;box-shadow:0 4px 20px rgba(23,68,115,.027);transition:transform .2s,box-shadow .2s,border-color .2s}.jhdc-service-card:hover{transform:translateY(-2px);border-color:#bed8f5;box-shadow:var(--jhdc-shadow)}.jhdc-service-icon,.jhdc-pro-icon{flex:none;display:inline-flex;justify-content:center;align-items:center;color:var(--jhdc-blue);background:#e9f4ff;width:41px;height:41px;border-radius:12px}.jhdc-service-icon .jhdc-icon,.jhdc-pro-icon .jhdc-icon{width:22px;height:22px}.jhdc-service-text{display:grid;gap:6px;flex:1}.jhdc-service-text strong{font-size:13px;color:#173456}.jhdc-service-text small{font-size:11px;color:#74849a;line-height:1.53}.jhdc-service-card>.jhdc-icon{width:15px;height:15px;color:#95a9bd;margin-top:7px}
.jhdc-how{background:#f5f9fe;border-block:1px solid #edf2f8}.jhdc-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.jhdc-step{position:relative;padding:0 9px 0 0}.jhdc-step:not(:last-child):before{position:absolute;content:"";top:19px;left:48px;right:-10px;border-top:1px dashed #bad1ec}.jhdc-step-bubble{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:#fff;background:var(--jhdc-blue);font-size:12px;font-weight:770;margin-bottom:17px;box-shadow:0 0 0 5px #e8f3ff}.jhdc-step strong{display:block;font-size:13px;color:#16345b}.jhdc-step p{font-size:11px;color:#6e819a;margin-top:7px;line-height:1.6}
.jhdc-areas{background:#fff}.jhdc-areas-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.jhdc-areas-list a{min-height:59px;border:1px solid #e4ebf4;border-radius:10px;display:flex;align-items:center;gap:10px;padding:12px 13px;color:#274765;font-size:11.6px;font-weight:690;transition:border-color .2s,background .2s}.jhdc-areas-list a:hover{border-color:#c0dcfa;background:#f8fbff}.jhdc-areas-list a>.jhdc-icon:first-child{color:var(--jhdc-blue);width:21px;height:21px}.jhdc-areas-list a span{flex:1}.jhdc-areas-list a>.jhdc-icon:last-child{width:13px;height:13px;color:#a4b1be}
.jhdc-confidence{background:#f6f9fd;border-block:1px solid #edf3f8}.jhdc-confidence-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.jhdc-pro-card{background:#fff;border:1px solid #e9eef6;border-radius:12px;padding:23px 19px;min-height:171px}.jhdc-pro-icon{width:39px;height:39px;margin-bottom:14px}.jhdc-pro-icon .jhdc-icon{width:20px;height:20px}.jhdc-pro-card h3{font-size:13px;letter-spacing:-.02em;line-height:1.34}.jhdc-pro-card p{font-size:11px;color:#718299;margin-top:8px;line-height:1.65}
.jhdc-mobile-section{padding:55px 0 0;background:linear-gradient(115deg,#f0f7ff,#e7f3ff);overflow:hidden}.jhdc-mobile-grid{display:grid;grid-template-columns:1fr .75fr 1fr;gap:40px;align-items:center;min-height:375px}.jhdc-mobile-copy{padding-bottom:52px}.jhdc-mobile-copy h2{font-size:clamp(29px,3vw,38px);line-height:1.16}.jhdc-mobile-copy>p:not(.jhdc-kicker){color:#647892;font-size:13px;line-height:1.75;margin-top:15px}.jhdc-mobile-copy .jhdc-btn{margin-top:22px}.jhdc-mobile-copy .jhdc-install-hint{font-size:10px!important;line-height:1.5!important;margin-top:10px!important}.jhdc-phone-mini{width:206px;height:359px;border-radius:34px;margin:auto auto -45px;transform:rotate(-5deg)}.jhdc-phone-mini .jhdc-phone-screen{border-radius:23px}.jhdc-phone-mini .jhdc-phone-body{padding:10px}.jhdc-phone-mini .jhdc-phone-head{min-height:80px;padding:25px 10px 8px}.jhdc-phone-mini .jhdc-phone-brand{max-width:128px;padding:0;min-height:auto}.jhdc-phone-mini .jhdc-phone-brand img{width:114px;max-height:36px}.jhdc-phone-mini h3{font-size:12px}.jhdc-phone-mini .jhdc-phone-event{padding-bottom:12px}.jhdc-mobile-benefits{display:grid;gap:18px;padding-bottom:38px}.jhdc-mobile-benefits>div{display:flex;gap:12px;align-items:center;color:#375875;font-size:12px;font-weight:620}.jhdc-mobile-benefits .jhdc-icon{width:18px;height:18px;border-radius:50%;color:#fff;background:var(--jhdc-blue);padding:3px}
.jhdc-faq{background:#fff}.jhdc-faq-grid{display:grid;grid-template-columns:.67fr 1.33fr;gap:70px}.jhdc-faq-items{display:grid;gap:9px}.jhdc-faq-items details{background:#fff;border:1px solid #e3ebf4;border-radius:10px;overflow:hidden}.jhdc-faq-items summary{padding:15px 17px;display:flex;justify-content:space-between;gap:15px;cursor:pointer;list-style:none;font-size:12px;font-weight:690;color:#223a5c}.jhdc-faq-items summary::-webkit-details-marker{display:none}.jhdc-faq-items summary span{color:var(--jhdc-blue);font-size:20px;line-height:15px;font-weight:450}.jhdc-faq-items details[open] summary span{transform:rotate(45deg)}.jhdc-faq-items details p{border-top:1px solid #e9eff5;padding:13px 17px 16px;color:#61758e;font-size:12px;line-height:1.7}
.jhdc-final-cta{background:#eef6ff url('../images/ruta-serena-edificio.webp') center 63%/cover;position:relative;isolation:isolate}.jhdc-final-cta:before{position:absolute;inset:0;content:"";z-index:-1;background:linear-gradient(90deg,rgba(9,44,92,.95),rgba(14,71,139,.91))}.jhdc-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:33px}.jhdc-cta-overline{font-size:10px;color:#b6d9ff;text-transform:uppercase;letter-spacing:.1em;font-weight:720;margin-bottom:7px!important}.jhdc-final-cta h2{color:#fff;font-size:clamp(22px,2.3vw,31px)}.jhdc-final-cta .jhdc-cta-inner>div>p:last-child{color:#d1e0f3;font-size:12px;margin-top:7px}
/* Footer */
.jhdc-footer{background:#0d223c;color:#e3edf7}.jhdc-footer-top{display:grid;grid-template-columns:2fr 1.1fr .7fr 1fr;gap:50px;padding:49px 0 35px}.jhdc-footer-brand{width:202px}.jhdc-footer-identity p{font-size:11px;color:#a7bbd0;line-height:1.7;max-width:260px;margin-top:14px!important}.jhdc-foot-seal{display:flex;align-items:center;gap:8px;margin-top:19px;color:#a8c5e5;font-size:10px}.jhdc-foot-seal .jhdc-icon{width:16px;height:16px}.jhdc-footer-links{display:flex;flex-direction:column;gap:9px}.jhdc-footer-links strong{font-size:11px;color:#fff;margin-bottom:6px}.jhdc-footer-links a,.jhdc-footer-links span{font-size:11px;color:#aebed2;line-height:1.4}.jhdc-footer-links a:hover{color:#fff}.jhdc-footer-bottom{padding:17px 0 22px;border-top:1px solid #243850;display:flex;justify-content:space-between;gap:22px;align-items:center;font-size:10px;color:#829ab4}.jhdc-legal-links{display:flex;gap:15px;flex-wrap:wrap}.jhdc-legal-links a{color:#a2b4c9!important}
/* Pages, blog & standard WP blocks */
.jhdc-content-wrap{padding-block:55px 95px;min-height:52vh}.jhdc-content-paper{background:#fff;max-width:970px;margin:auto}.jhdc-content-title{font-size:clamp(32px,4vw,49px);color:#132d52;margin-bottom:25px!important}.jhdc-entry-body{color:#405672;font-size:15px;line-height:1.85}.jhdc-entry-body h2{font-size:28px;margin:35px 0 14px;color:#133960}.jhdc-entry-body h3{font-size:20px;margin:26px 0 10px;color:#133960}.jhdc-entry-body p{margin:12px 0}.jhdc-entry-body a{color:var(--jhdc-blue)!important;text-decoration:underline!important}.jhdc-entry-body ul,.jhdc-entry-body ol{padding-left:22px}.jhdc-entry-body img{border-radius:12px}.jhdc-post-list{display:grid;gap:16px}.jhdc-post-preview{border:1px solid #e4edf7;border-radius:14px;padding:22px}.jhdc-post-preview h2{font-size:22px}.jhdc-post-preview h2 a:hover{color:var(--jhdc-blue)}.jhdc-post-excerpt{font-size:13px;color:#71839a;margin-top:9px}.jhdc-pagination{margin-top:28px}.jhdc-notfound .jhdc-btn{margin-top:23px}.jhdc-content-wrap input[type=search]{padding:10px 13px;border:1px solid #c9d9eb;border-radius:9px}.jhdc-content-wrap input[type=submit]{padding:11px 17px;border:0;border-radius:8px;background:var(--jhdc-blue);color:#fff}
/* WP embeds/pages maintain readable widths */
.jhdc-entry-body .alignwide{max-width:1100px}.jhdc-entry-body :is(table,pre){max-width:100%;overflow-x:auto}.jhdc-entry-body .wp-block-button__link{background:var(--jhdc-blue);border-radius:10px}.jhdc-entry-body .wp-block-file a{color:var(--jhdc-blue)}
@media(max-width:1180px){.jhdc-menu{gap:15px}.jhdc-brand{width:186px}.jhdc-header-inner{gap:15px}.jhdc-shell{width:min(1150px,calc(100% - 48px))}.jhdc-hero-grid{gap:14px}.jhdc-float-c{right:0}.jhdc-float-b{left:0}}
@media(max-width:960px){.jhdc-header-inner{min-height:72px}.jhdc-brand{width:196px}.jhdc-header-actions{margin-left:auto}.jhdc-mobile-trigger{display:inline-flex}.jhdc-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #eaf0f7;border-bottom:1px solid #eaf0f7;box-shadow:0 18px 30px rgba(13,50,99,.08);padding:16px 24px 22px;max-height:calc(100vh - 84px);overflow:auto}.jhdc-nav-open{display:block}.jhdc-menu{display:grid;gap:0}.jhdc-menu a{display:block;padding:12px 4px;font-size:14px;border-bottom:1px solid #f1f5fa}.jhdc-mobile-actions{display:none}.jhdc-hero-grid{grid-template-columns:1fr .8fr;gap:10px}.jhdc-hero h1{font-size:clamp(37px,4.8vw,51px)}.jhdc-hero-visual{transform:scale(.86);transform-origin:center}.jhdc-float{font-size:9px}.jhdc-summary-grid{grid-template-columns:1fr repeat(3,1fr);gap:8px}.jhdc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jhdc-areas-list{grid-template-columns:repeat(3,minmax(0,1fr))}.jhdc-confidence-list{grid-template-columns:repeat(2,minmax(0,1fr))}.jhdc-mobile-grid{gap:25px;grid-template-columns:1.1fr .75fr}.jhdc-mobile-benefits{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(2,1fr);padding:0 0 30px}.jhdc-footer-top{gap:32px;grid-template-columns:1.4fr repeat(3,.8fr)}.jhdc-faq-grid{gap:37px}}
@media(max-width:720px){.jhdc-shell{width:calc(100% - 34px)}html{scroll-padding-top:82px}.jhdc-header-inner{min-height:67px}.jhdc-brand{width:172px}.jhdc-header-actions{display:none}.jhdc-mobile-trigger{margin-left:auto}.jhdc-mobile-actions{display:flex;flex-direction:column;gap:9px;padding-top:17px}.jhdc-mobile-actions .jhdc-btn{width:100%}.jhdc-hero-grid{display:flex;flex-direction:column;align-items:stretch;padding-top:35px;padding-bottom:30px;gap:12px}.jhdc-hero-bg{background-image:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.87)),url('../images/ruta-serena-edificio.webp');background-position:center,67% center}.jhdc-hero h1{font-size:clamp(34px,7.5vw,48px)}.jhdc-lead{font-size:13px;line-height:1.68}.jhdc-hero-features{gap:13px;margin-top:25px}.jhdc-hero-visual{transform:none;min-height:320px}.jhdc-phone-hero{transform:rotate(3deg) scale(.74);transform-origin:center}.jhdc-float{transform:scale(.9)}.jhdc-float-a{top:13%;right:7%}.jhdc-float-b{left:2%;top:48%}.jhdc-float-c{display:none}.jhdc-case-summary{padding:21px 0}.jhdc-summary-grid{grid-template-columns:1fr 1fr;gap:18px}.jhdc-summary-copy{grid-column:1/-1}.jhdc-mini-step{padding-left:0;border:0}.jhdc-section{padding:58px 0}.jhdc-section-heading-inline{align-items:flex-start;flex-direction:column;gap:14px}.jhdc-section-heading{margin-bottom:26px}.jhdc-section h2{font-size:clamp(25px,5.7vw,33px)}.jhdc-service-grid{grid-template-columns:1fr 1fr;gap:10px}.jhdc-service-card{min-height:125px;padding:15px 12px;gap:8px}.jhdc-service-icon{width:34px;height:34px;border-radius:9px}.jhdc-service-icon .jhdc-icon{width:18px;height:18px}.jhdc-service-text strong{font-size:12px}.jhdc-service-text small{font-size:10px}.jhdc-service-card>.jhdc-icon{display:none}.jhdc-step-grid{grid-template-columns:repeat(2,1fr);gap:30px 20px}.jhdc-step:not(:last-child):before{display:none}.jhdc-areas-list{grid-template-columns:repeat(2,minmax(0,1fr))}.jhdc-areas-list a{padding:11px;min-height:58px;font-size:11px}.jhdc-confidence-list{grid-template-columns:repeat(2,1fr);gap:10px}.jhdc-pro-card{padding:17px 13px;min-height:160px}.jhdc-mobile-grid{grid-template-columns:1fr .75fr;gap:13px;min-height:0}.jhdc-mobile-copy{padding:0 0 30px}.jhdc-mobile-copy h2{font-size:27px}.jhdc-phone-mini{transform:rotate(-4deg) scale(.73);transform-origin:bottom center;margin-bottom:-52px}.jhdc-mobile-benefits{grid-column:1/-1;grid-row:2;grid-template-columns:1fr 1fr}.jhdc-faq-grid{grid-template-columns:1fr;gap:26px}.jhdc-cta-inner{align-items:flex-start;flex-direction:column;gap:18px}.jhdc-footer-top{grid-template-columns:repeat(2,1fr);gap:30px;padding:36px 0 25px}.jhdc-footer-identity{grid-column:1/-1}.jhdc-footer-bottom{flex-direction:column;align-items:flex-start}.jhdc-footer-brand{width:190px}}
@media(max-width:450px){.jhdc-hero h1{font-size:clamp(32px,8.3vw,35px)}.jhdc-hero-buttons{gap:9px}.jhdc-hero-buttons .jhdc-btn{padding:10px 12px;font-size:11px}.jhdc-hero-features span{font-size:10px}.jhdc-hero-visual{min-height:306px}.jhdc-phone-hero{transform:rotate(3deg) scale(.7)}.jhdc-float{font-size:9px;padding:8px;box-shadow:0 6px 17px rgba(26,64,109,.06)}.jhdc-float-b{left:-4px}.jhdc-float-a{right:-4px}.jhdc-service-grid{grid-template-columns:1fr}.jhdc-service-card{min-height:0}.jhdc-areas-list a{font-size:10px}.jhdc-mobile-grid{grid-template-columns:1fr}.jhdc-mobile-copy{padding-bottom:4px}.jhdc-phone-mini{grid-row:2;transform:rotate(-4deg) scale(.9);margin-bottom:-24px}.jhdc-mobile-benefits{grid-row:3;grid-column:1;grid-template-columns:1fr 1fr;gap:11px;padding-top:26px}.jhdc-mobile-benefits>div{font-size:11px}.jhdc-confidence-list{grid-template-columns:1fr 1fr}.jhdc-pro-card{min-height:170px}.jhdc-footer-top{gap:22px}}
@media(max-width:782px){.admin-bar .jhdc-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* Ruta Serena 2.1: diseño editorial sobrio y marcas oficiales en las pantallas. */
.jhdc-phone-head .jhdc-icon{flex:0 0 auto;opacity:.9}
.jhdc-phone-hero .jhdc-phone-brand img{filter:none}
.jhdc-hero-copy h1{text-wrap:balance}
.jhdc-hero-copy .jhdc-lead{text-wrap:pretty}
.jhdc-phone-visual img,.jhdc-phone-brand img{user-select:none}
@media(min-width:721px){.jhdc-hero-visual{min-width:0}.jhdc-hero-grid>*{min-width:0}}
@media(max-width:720px){.jhdc-hero-copy h1{text-wrap:pretty}.jhdc-float-b{left:1%}.jhdc-float-a{right:4%}}

.jhdc-phone-head>.jhdc-phone-identity{padding-right:6px}.jhdc-phone-head>.jhdc-phone-identity img{background:transparent}

/* 2.2.0: logos adaptados por superficie */
.jhdc-brand-image,.jhdc-phone-brand-image{display:block;max-width:100%;height:auto}
.jhdc-footer-brand .jhdc-brand-image{filter:none}
.jhdc-phone-brand .jhdc-phone-brand-image{display:block;object-fit:contain;width:142px;height:auto;max-width:100%;max-height:44px;filter:drop-shadow(0 1px 1px rgba(3,22,55,.12))}
.jhdc-phone-mini .jhdc-phone-brand .jhdc-phone-brand-image{width:114px;max-height:36px}

/* Ruta Serena 2.3.0 · Núcleo de marca: variantes explícitas, sin filtros destructivos */
.jhdc-header .jhdc-brand img[data-jcdc-brand="light"]{filter:none!important;opacity:1!important}
.jhdc-footer .jhdc-footer-brand img[data-jcdc-brand="dark"],
.jhdc-phone-brand img[data-jcdc-brand="dark"]{background:transparent!important;filter:none!important;opacity:1!important;mix-blend-mode:normal!important}


/* === Ruta Serena 2.4.0 — interiores públicos, bloques WordPress y documentos legales === */
.jhdc-inner-page{min-height:60vh;background:#fff;overflow:clip}
.jhdc-inner-heading{position:relative;isolation:isolate;border-bottom:1px solid #e8eef6;background:linear-gradient(112deg,#fff 0%,#f5faff 66%,#ebf4ff 100%);padding:34px 0 49px}
.jhdc-inner-heading::before{content:"";position:absolute;z-index:-1;right:0;top:0;bottom:0;width:42%;pointer-events:none;background:radial-gradient(ellipse at 90% 2%,rgba(9,105,218,.065),transparent 62%)}
.jhdc-crumbs{display:flex;gap:10px;align-items:center;min-width:0;flex-wrap:wrap;font-size:11px;color:#71849f;margin-bottom:37px}
.jhdc-crumbs a{color:#1c66c5!important;font-weight:680}.jhdc-crumbs a:hover{text-decoration:underline}.jhdc-crumbs span[aria-current]{font-weight:650;color:#586e8c}
.jhdc-inner-heading .jhdc-kicker{margin:0 0 11px!important;color:#0d65c7;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:820}
.jhdc-inner-title{max-width:820px;font-size:clamp(32px,4.1vw,54px);color:#0b2248;line-height:1.09;letter-spacing:-.05em;overflow-wrap:anywhere}
.jhdc-inner-heading-compact{padding:24px 0 16px}.jhdc-inner-heading-compact .jhdc-crumbs{margin:0}
.jhdc-inner-layout{display:grid;grid-template-columns:minmax(0,1fr) 258px;gap:58px;align-items:start;padding-top:55px;padding-bottom:90px}
.jhdc-inner-legal .jhdc-inner-layout{display:block;max-width:1040px}.jhdc-inner-legal .jhdc-interior-article{max-width:880px;margin-inline:auto}
.jhdc-interior-article{min-width:0}.jhdc-page-prose{color:#455a75;font-size:15px;line-height:1.85;overflow-wrap:break-word}
.jhdc-page-prose> :first-child{margin-top:0!important}
.jhdc-page-prose h1{font-size:clamp(29px,3.25vw,44px);line-height:1.15;margin:0 0 21px!important;color:#0b2248;letter-spacing:-.048em}
.jhdc-page-prose h2{font-size:clamp(23px,2.5vw,32px);line-height:1.2;color:#102e55;margin:45px 0 15px!important;letter-spacing:-.042em}
.jhdc-page-prose h3{font-size:clamp(18px,1.85vw,23px);line-height:1.3;color:#193a60;margin:32px 0 12px!important}
.jhdc-page-prose h4{font-size:17px;color:#173c66;margin:22px 0 10px!important}
.jhdc-page-prose p{margin:13px 0!important}.jhdc-page-prose strong{color:#1c3556;font-weight:750}
.jhdc-page-prose :is(ul,ol){padding-left:25px;margin:13px 0 23px}.jhdc-page-prose li{margin-bottom:9px}.jhdc-page-prose li::marker{color:#0c66cd}
.jhdc-page-prose a:not(.wp-block-button__link){color:#0a62c5!important;text-underline-offset:3px;text-decoration-thickness:1px}
.jhdc-page-prose a:focus-visible{outline-offset:3px}
.jhdc-page-prose blockquote,.jhdc-page-prose .wp-block-quote{background:#f2f8ff;border-left:3px solid #0b72d7;padding:20px 25px;margin:25px 0;border-radius:0 10px 10px 0;color:#214467}
.jhdc-page-prose hr{border:0;border-top:1px solid #e4ebf4;margin:37px 0}
.jhdc-page-prose figure{max-width:100%;margin:24px 0}.jhdc-page-prose figcaption{color:#7b8ea5;font-size:11px;margin-top:9px;text-align:center}
.jhdc-page-prose .wp-block-image img,.jhdc-post-hero-image img{border-radius:12px}
.jhdc-page-prose .wp-block-columns{display:flex;flex-wrap:wrap;gap:17px;align-items:stretch;margin:27px 0}
.jhdc-page-prose .wp-block-columns>.wp-block-column{min-width:0;flex:1 1 0}
.jhdc-page-prose .wp-block-group.is-layout-constrained{max-width:100%}
.jhdc-page-prose .wp-block-group.has-background{padding:22px!important;border-radius:12px}
.jhdc-page-prose .wp-block-columns .wp-block-column:has(>.wp-block-group):not(:last-child){margin-right:0}
.jhdc-page-prose .wp-block-details,.jhdc-page-prose details{border:1px solid #e1eaf5;border-radius:10px;padding:0 16px;margin:8px 0;background:#fff}
.jhdc-page-prose details summary{cursor:pointer;padding:15px 3px;font-weight:730;color:#14345d}.jhdc-page-prose details[open] summary{border-bottom:1px solid #e8eef6;margin-bottom:12px}
.jhdc-page-prose .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:43px;background:#0c69cf;color:#fff!important;font-weight:750;text-decoration:none!important;padding:10px 20px;border-radius:10px;font-size:13px}
.jhdc-page-prose .wp-block-button.is-style-outline .wp-block-button__link{background:#fff;color:#0c65c5!important;border:1px solid #72a4e4}
.jhdc-page-prose :is(table,.wp-block-table table){border-collapse:collapse;width:100%;min-width:0;font-size:13px}
.jhdc-page-prose th{background:#f4f8fd;color:#18365a;text-align:left;font-weight:760}.jhdc-page-prose th,.jhdc-page-prose td{padding:12px 13px;border:1px solid #e0eaf5}
.jhdc-page-prose .wp-block-table{width:100%;overflow-x:auto;margin-block:26px}
.jhdc-page-prose pre{background:#0c2545;color:#ecf4ff;border-radius:10px;padding:18px 21px;overflow-x:auto;font-size:12px}
.jhdc-page-prose .wp-block-file{padding:14px;border:1px solid #e1eaf5;border-radius:10px;margin:15px 0}
.jhdc-page-prose .wp-block-file__button{background:#0b6bd5!important;color:#fff!important;text-decoration:none!important;border-radius:7px;padding:8px 12px}
.jhdc-prose-legal{font-size:14.5px;line-height:1.85}.jhdc-prose-legal h2{margin-top:37px!important;font-size:24px}.jhdc-prose-legal h3{font-size:19px}
.jhdc-interior-aside{position:sticky;top:116px;min-width:0}.admin-bar .jhdc-interior-aside{top:148px}
.jhdc-interior-aside-card{background:#f7faff;border:1px solid #e7edf6;border-radius:15px;padding:25px 21px;box-shadow:0 9px 24px rgba(20,61,106,.028)}
.jhdc-aside-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:12px;color:#096ace;background:#e6f1ff;margin-bottom:19px}
.jhdc-aside-icon .jhdc-icon{width:21px;height:21px}
.jhdc-interior-aside-card h2{font-size:18px;line-height:1.25;color:#15345b;letter-spacing:-.03em;margin:0 0 10px!important}
.jhdc-interior-aside-card p{font-size:12px;line-height:1.65;color:#657c98;margin:0 0 19px!important}
.jhdc-interior-aside-card nav{display:flex;flex-direction:column;gap:2px;border-block:1px solid #e4ebf5;padding:13px 0;margin-bottom:20px}
.jhdc-interior-aside-card nav a{display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:7px;padding:9px 4px;font-size:12px;color:#345575;font-weight:670}
.jhdc-interior-aside-card nav a:hover{background:#edf5ff;color:#005ac3}
.jhdc-interior-aside-card nav a .jhdc-icon{width:13px;height:13px;color:#0b6bce}
.jhdc-interior-aside-card>.jhdc-btn{width:100%;white-space:normal;text-align:center}
.jhdc-post-hero-image{margin:0 0 30px}.jhdc-post-hero-image img{max-height:395px;object-fit:cover;width:100%}
.jhdc-article-date{margin-top:16px!important;font-size:12px;color:#6a819d}
.jhdc-article-bottom{margin-top:42px;padding-top:23px;border-top:1px solid #e6edf5}.jhdc-article-bottom a{display:inline-flex;gap:8px;align-items:center;color:#0a63c9;font-size:13px;font-weight:740}.jhdc-article-bottom .jhdc-icon{width:15px;height:15px;transform:rotate(180deg)}
.jhdc-listing-wrap{padding-top:52px;padding-bottom:90px}.jhdc-archive-description{color:#647d98;font-size:14px;margin-top:14px;max-width:670px}
.jhdc-post-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.jhdc-post-preview{overflow:hidden;border:1px solid #e4edf5;background:#fff;border-radius:13px;padding:0;box-shadow:0 7px 24px rgba(25,68,109,.025);transition:box-shadow .22s,transform .22s}
.jhdc-post-preview:hover{box-shadow:0 14px 38px rgba(15,56,111,.08);transform:translateY(-2px)}
.jhdc-preview-image{display:block;width:100%;aspect-ratio:16/8;overflow:hidden;background:#ecf4fb}.jhdc-preview-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.jhdc-post-preview:hover .jhdc-preview-image img{transform:scale(1.025)}
.jhdc-preview-content{padding:25px}.jhdc-preview-date{color:#8b9db2;font-size:11px;font-weight:630}
.jhdc-post-preview h2{font-size:clamp(18px,1.85vw,23px);letter-spacing:-.032em;margin:8px 0 12px;color:#142f56;line-height:1.25}
.jhdc-post-excerpt{color:#617791;line-height:1.65;font-size:13px;margin:0 0 19px}.jhdc-post-excerpt p{margin:0!important}
.jhdc-card-link{display:inline-flex;align-items:center;gap:8px;color:#0766cc!important;font-size:12px;font-weight:760}.jhdc-card-link .jhdc-icon{width:14px;height:14px}
.jhdc-pagination{margin-top:28px}.jhdc-pagination .nav-links{display:flex;flex-wrap:wrap;gap:7px}.jhdc-pagination .page-numbers{display:flex;min-width:38px;height:38px;padding:8px 12px;align-items:center;justify-content:center;border:1px solid #dce7f4;border-radius:8px;color:#1e4b7f;font-size:12px}.jhdc-pagination .current{background:#0c67cf;color:#fff;border-color:#0c67cf}
.jhdc-empty-state{padding:65px 30px;margin:auto;max-width:700px;text-align:center;border:1px solid #e2eaf5;border-radius:16px;background:linear-gradient(130deg,#fff,#f5faff)}
.jhdc-empty-state>.jhdc-icon{width:36px;height:36px;color:#0b67cf;margin-bottom:16px}.jhdc-empty-state h2{font-size:25px;color:#152f52;margin-bottom:10px!important}.jhdc-empty-state p{font-size:13px;color:#627c99;max-width:490px;margin:0 auto 20px!important}
.jhdc-empty-state>a{display:inline-flex;gap:8px;align-items:center;font-weight:720;color:#0964c4!important;font-size:13px}.jhdc-empty-state>a .jhdc-icon{width:14px;height:14px}
.jhdc-search-box{margin-bottom:24px}.jhdc-search-box form{display:flex;max-width:630px;gap:10px}.jhdc-search-box label{flex:1;min-width:0}.jhdc-search-box input[type=search]{min-height:44px;width:100%;border:1px solid #cbd9e9;padding:12px 15px;border-radius:9px;font-size:13px}.jhdc-search-box input[type=submit]{background:#0d65c8;border:0;border-radius:9px;color:#fff;padding:12px 20px;font-weight:740;cursor:pointer}
.jhdc-404-wrap{padding:90px 0}.jhdc-empty-state-404{max-width:750px}.jhdc-empty-state-404 h1{font-size:clamp(26px,4vw,43px);line-height:1.2;color:#0d2d52;margin:6px 0 18px!important}.jhdc-404-number{font-size:13px;font-weight:800;letter-spacing:.22em;color:#0d6cce}.jhdc-404-actions{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:20px}
@media(max-width:1060px){.jhdc-inner-layout{grid-template-columns:minmax(0,1fr) 225px;gap:34px}}
@media(max-width:800px){.jhdc-inner-layout{grid-template-columns:minmax(0,1fr);gap:26px;padding-block:36px 70px}.jhdc-interior-aside{position:static}.jhdc-interior-aside-card{display:grid;grid-template-columns:1fr;gap:0}.jhdc-inner-heading{padding:26px 0 34px}.jhdc-crumbs{margin-bottom:24px}.jhdc-post-list{grid-template-columns:1fr 1fr}.jhdc-listing-wrap{padding-block:36px 70px}}
@media(max-width:610px){.jhdc-inner-title{font-size:clamp(30px,7.5vw,38px)}.jhdc-inner-heading{padding:23px 0 30px}.jhdc-inner-heading-compact{padding-bottom:12px}.jhdc-crumbs{gap:7px;font-size:10px;margin-bottom:20px}.jhdc-page-prose{font-size:14px;line-height:1.78}.jhdc-page-prose h2{margin-top:34px!important;font-size:24px}.jhdc-page-prose h3{font-size:19px;margin-top:24px!important}.jhdc-page-prose :is(table,.wp-block-table table){font-size:11px}.jhdc-page-prose th,.jhdc-page-prose td{padding:9px}.jhdc-page-prose .wp-block-columns{flex-wrap:wrap!important;gap:12px}.jhdc-page-prose .wp-block-columns>.wp-block-column{flex-basis:100%!important}.jhdc-interior-aside-card{padding:20px}.jhdc-post-list{grid-template-columns:1fr}.jhdc-listing-wrap{padding-bottom:58px}.jhdc-preview-content{padding:22px}.jhdc-404-wrap{padding:50px 0}.jhdc-empty-state{padding:45px 20px}.jhdc-search-box form{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.jhdc-post-preview,.jhdc-preview-image img{transition:none}.jhdc-post-preview:hover,.jhdc-post-preview:hover .jhdc-preview-image img{transform:none}}
