

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Outfit',sans-serif;background:#f0efec;color:#1a1a1a;-webkit-font-smoothing:antialiased;overflow-x:hidden}
:root{
  --blue:#2a9fd8;--blue-dark:#1a7fb8;--blue-light:#e8f4fb;
  --gray:#6b6b6b;--gray-light:#f0efec;--dark:#1a1a1a;
  --dark-section:#123b5a;--white:#ffffff;--text-muted:#666;
  --border:#dddcda;--radius:10px;
  --shadow:0 2px 16px rgba(0,0,0,0.07);
  --shadow-h:0 8px 36px rgba(0,0,0,0.13)
}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 3.5rem;height:70px}
.nav-logo{display:flex;align-items:center;gap:0;text-decoration:none;flex-shrink:0;min-width:0;overflow:visible}
.nav-links{display:flex;align-items:center;gap:2rem}
.nav-links a{font-size:14px;font-weight:500;color:var(--dark);text-decoration:none;transition:color .2s;cursor:pointer}
.nav-links a:hover{color:var(--blue)}
.nav-cta{background:#D42B2B;color:#fff!important;padding:9px 22px;border-radius:6px;font-size:13.5px!important;font-weight:600!important;transition:background .2s,transform .15s;cursor:pointer}
.nav-cta:hover{background:#B22222!important;transform:translateY(-1px)}
.slc-overlay{position:fixed;inset:0;background:rgba(9,9,15,.7);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s;padding:1rem}
.slc-overlay.open{opacity:1;pointer-events:all}
.slc-box{background:#fff;border-radius:14px;padding:2.5rem 2rem;width:100%;max-width:480px;transform:translateY(20px);transition:transform .25s;position:relative}
.slc-overlay.open .slc-box{transform:translateY(0)}
.slc-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:#6b6f7a;font-size:22px;line-height:1;padding:4px 8px}
.slc-close:hover{color:#13162b}
.slc-title{font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:800;color:#13162b;margin-bottom:.25rem;letter-spacing:-.02em}
.slc-sub{font-size:13.5px;color:#6b6f7a;margin-bottom:1.5rem;font-weight:300}
.slc-label{font-size:12px;font-weight:600;color:#13162b;display:block;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.05em}
.slc-input,.slc-textarea{width:100%;border:1.5px solid #e0e2ea;border-radius:7px;padding:10px 13px;font-family:'Barlow',sans-serif;font-size:14px;color:#13162b;background:#f8f9fc;outline:none;transition:border-color .2s;box-sizing:border-box}
.slc-input:focus,.slc-textarea:focus{border-color:#2b8fd4;background:#fff}
.slc-textarea{min-height:100px;resize:vertical}
.slc-field{margin-bottom:1rem}
.slc-btn{width:100%;background:#D42B2B;color:#fff;border:none;padding:13px;border-radius:8px;font-family:'Barlow',sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:background .2s;margin-top:.5rem}
.slc-btn:hover{background:#B22222}
.slc-success{text-align:center;padding:1rem 0}
.slc-success-icon{font-size:48px;margin-bottom:1rem}
.slc-success h3{font-size:20px;font-weight:700;color:#13162b;margin-bottom:.5rem}
.slc-success p{font-size:14px;color:#6b6f7a;font-weight:300}
.nav-burger{display:none;background:none;border:none;cursor:pointer;padding:6px;flex-direction:column;gap:5px}
.nav-burger span{display:block;width:22px;height:2px;background:var(--dark);border-radius:1px;transition:transform .25s,opacity .25s}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* NAV DROPDOWN — Herramientas */
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-trigger{font-size:14px;font-weight:500;color:var(--dark);cursor:pointer;display:flex;align-items:center;gap:4px;transition:color .2s;padding:4px 0;background:none;border:none;font-family:'Outfit',sans-serif}
.nav-dropdown-trigger:hover,.nav-dropdown:hover .nav-dropdown-trigger,.nav-dropdown.dd-open .nav-dropdown-trigger,.nav-dropdown.active .nav-dropdown-trigger{color:var(--blue)}
.nav-dropdown-trigger svg{width:11px;height:11px;transition:transform .2s;flex-shrink:0}
.nav-dropdown:hover .nav-dropdown-trigger svg,.nav-dropdown.dd-open .nav-dropdown-trigger svg{transform:rotate(180deg)}
.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;left:auto;transform:translateY(-4px);background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.11);min-width:230px;max-width:calc(100vw - 2rem);padding:6px;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;z-index:200}
.nav-dropdown-menu::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;pointer-events:all;transform:translateY(0)}
.nav-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 10px;border-radius:8px;text-decoration:none;color:var(--dark);cursor:pointer;transition:background .15s,color .15s;border:none;background:none;width:100%;text-align:left;font-family:'Outfit',sans-serif}
.nav-dropdown-item:hover{background:var(--blue-light);color:var(--blue)}
.nav-dropdown-ico{width:34px;height:34px;border-radius:7px;background:var(--blue-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-dropdown-txt{display:flex;flex-direction:column;gap:1px;flex:1}
.nav-dropdown-name{font-size:13px;font-weight:600;color:inherit;line-height:1.2}
.nav-dropdown-desc{font-size:11px;font-weight:400;color:var(--text-muted)}
.nav-dropdown-badge{font-size:9px;font-weight:700;background:var(--blue);color:#fff;padding:2px 6px;border-radius:20px;letter-spacing:.06em;flex-shrink:0}

/* HERO */
.hero{background:var(--dark-section);min-height:calc(100vh - 70px);display:flex;align-items:center;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;opacity:0;animation:bgFadeIn 1.6s cubic-bezier(.22,.9,.36,1) .3s forwards}
.hero-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@keyframes bgFadeIn{0%{opacity:0}100%{opacity:.28}}

/* MIND FORMULAS */
.mind-layer{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.mind-layer .f{position:absolute;font-family:'DM Mono',monospace;color:rgba(42,159,216,.18);white-space:nowrap;animation:mindFloat linear infinite;will-change:transform,opacity}
.mind-layer .f.bright{color:rgba(42,159,216,.32)}
.mind-layer .f.dim{color:rgba(255,255,255,.09)}
@keyframes mindFloat{0%{transform:translateY(0) translateX(0);opacity:0}8%{opacity:1}85%{opacity:1}100%{transform:translateY(-110vh) translateX(40px);opacity:0}}
@keyframes mindPulse{0%,100%{opacity:.08}50%{opacity:.2}}
.mind-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(42,159,216,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(42,159,216,.03) 1px,transparent 1px);background-size:60px 60px;animation:mindPulse 8s ease-in-out infinite}
.mind-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(42,159,216,.15),transparent);animation:mindScan linear infinite;will-change:transform}
@keyframes mindScan{0%{transform:translateY(100vh)}100%{transform:translateY(-10vh)}}
.hero-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(28,28,26,.94) 0%,rgba(28,28,26,.62) 60%,rgba(28,28,26,.84) 100%)}
.hero-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:5rem 3.5rem;width:100%;display:grid;grid-template-columns:1fr 400px;gap:5rem;align-items:center}
.hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:1.5rem}
.hero-tag::before{content:'';width:22px;height:2px;background:var(--blue);border-radius:1px;display:block}
.hero h1{font-size:clamp(34px,4.2vw,56px);font-weight:800;line-height:1.09;color:#fff;letter-spacing:-.02em;margin-bottom:1.25rem}
.hero h1 span{color:var(--blue)}
.hero-sub{font-size:15.5px;font-weight:300;color:rgba(255,255,255,.72);line-height:1.72;max-width:480px;margin-bottom:2.25rem}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.btn-p{display:inline-block;background:var(--blue);color:#fff;padding:13px 28px;border-radius:7px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,transform .15s}
.btn-p:hover{background:var(--blue-dark);transform:translateY(-1px)}
.btn-o{display:inline-block;background:transparent;border:1.5px solid rgba(255,255,255,.25);color:rgba(255,255,255,.7);padding:13px 28px;border-radius:7px;font-size:14px;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s}
.btn-o:hover{border-color:rgba(255,255,255,.55);color:#fff}
.hero-stats{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:14px;backdrop-filter:blur(8px);overflow:hidden}
.stat{padding:1.4rem 1.7rem;transition:background .2s}
.stat:hover{background:rgba(255,255,255,.04)}
.stat+.stat{border-top:1px solid rgba(255,255,255,.07)}
.stat-n{font-size:38px;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1;margin-bottom:4px}
.stat-n span{color:var(--blue)}
.stat-l{font-size:12px;font-weight:300;color:rgba(255,255,255,.62);letter-spacing:.02em}

/* SECTIONS */
.section{padding:6rem 0}
.si{max-width:1200px;margin:0 auto;padding:0 3.5rem}
.sh{margin-bottom:3.5rem}
.stag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.75rem}
.stag::before{content:'';width:18px;height:2px;background:var(--blue);border-radius:1px;display:block}
.stit{font-size:clamp(26px,3.2vw,40px);font-weight:800;line-height:1.08;letter-spacing:-.02em;color:var(--dark);margin-bottom:.85rem}
.stit.l{color:#fff}
.sdesc{font-size:15px;font-weight:300;color:var(--text-muted);line-height:1.7;max-width:520px}
.sdesc.l{color:rgba(255,255,255,.68)}

/* PROPUESTA */
#propuesta{background:var(--gray-light)}
.pv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.pv-card .cbody-list{list-style:none;padding:0;margin:.75rem 0 0}
.pv-card .cbody-list li{font-size:13px;color:var(--text-muted);padding:4px 0;display:flex;align-items:flex-start;gap:8px;line-height:1.5;font-weight:300}
.pv-card .cbody-list li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:7px}
.pv-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2.25rem 1.85rem;box-shadow:var(--shadow);position:relative;overflow:hidden;transition:box-shadow .25s,transform .25s}
.pv-card:hover{box-shadow:var(--shadow-h);transform:translateY(-3px)}
.pv-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.pv-card:hover::after{transform:scaleX(1)}
.cn{font-size:72px;font-weight:900;color:rgba(0,0,0,.15);line-height:1;letter-spacing:-.03em;margin-bottom:1rem;transition:color .25s}
.pv-card:hover .cn{color:rgba(42,159,216,.12)}
.cdiv{width:32px;height:2.5px;background:var(--blue);border-radius:2px;margin-bottom:1.1rem}
.ctit{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dark);margin-bottom:.9rem}
.cbody{font-size:14px;font-weight:300;color:var(--text-muted);line-height:1.75}

/* SERVICIOS */
#servicios{background:var(--dark-section);position:relative;overflow:hidden}
.srv-bg{position:absolute;inset:0;background:url('../louscontrol_images/imagen_webp.webp') center/cover;background-attachment:fixed;opacity:.12;animation:bgPan 20s ease-in-out 0s infinite alternate}
.srv-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,28,26,.97) 0%,rgba(28,28,26,.9) 100%)}
#servicios .si{position:relative;z-index:1}
.srv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;margin-top:3.5rem}
.srv-item{background:rgba(28,28,26,.95);padding:1.5rem 1.4rem;display:flex;align-items:flex-start;gap:14px;transition:background .2s;cursor:default}
.srv-item:hover{background:rgba(42,159,216,.06)}
.srv-ico{flex-shrink:0;width:36px;height:36px;border-radius:8px;background:rgba(42,159,216,.12);display:flex;align-items:center;justify-content:center;color:var(--blue);transition:background .2s}
.srv-item:hover .srv-ico{background:rgba(42,159,216,.22)}
.srv-ico svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.srv-name{font-size:13.5px;font-weight:400;color:rgba(255,255,255,.88);line-height:1.45;padding-top:7px}

/* METODOLOGÍA */
#metodo{background:#fff}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.step{padding:2rem 1.75rem;border-right:1px solid var(--border);transition:background .2s}
.step:last-child{border-right:none}
.step:hover{background:var(--blue-light)}
.step-n{font-size:64px;font-weight:900;color:rgba(0,0,0,.05);line-height:1;letter-spacing:-.03em;margin-bottom:1rem;transition:color .2s}
.step:hover .step-n{color:rgba(42,159,216,.13)}
.step-bar{width:28px;height:2.5px;background:var(--blue);border-radius:2px;margin-bottom:1rem}
.step-tit{font-size:15px;font-weight:700;color:var(--dark);margin-bottom:.65rem}
.step-body{font-size:13.5px;color:var(--text-muted);line-height:1.65;font-weight:300}

/* CTA */
#cta{background:var(--gray-light)}
.cta-box{background:#fff;border:1px solid var(--border);border-radius:16px;padding:4rem;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:3rem}
.cta-left h2{font-size:clamp(24px,2.8vw,36px);font-weight:800;letter-spacing:-.02em;line-height:1.12;color:var(--dark);margin-bottom:.75rem}
.cta-left h2 span{color:var(--blue)}
.cta-left p{font-size:15px;color:var(--text-muted);line-height:1.65;max-width:440px;font-weight:300}
.cta-right{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;gap:.85rem}
.cta-lbl{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.cta-email{font-size:17px;font-weight:500;color:var(--blue);text-decoration:none;border-bottom:1.5px solid rgba(42,159,216,.3);padding-bottom:3px;transition:border-color .2s}
.cta-email:hover{border-color:var(--blue)}
.cta-addr{font-size:13px;color:var(--text-muted);font-weight:300;line-height:1.5}
.cta-linkedin{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--blue);text-decoration:none;transition:opacity .2s}
.cta-linkedin:hover{opacity:.75}

/* FOOTER */
footer{background:var(--dark-section);border-top:1px solid rgba(255,255,255,.06);padding:2.5rem 3.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.25rem}
.fl{font-size:14px;font-weight:700;color:rgba(255,255,255,.7);letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;gap:6px}
.fl-dot{color:var(--blue);font-size:18px;line-height:1}
.fn{display:flex;gap:2rem}
.fn a{font-size:12.5px;color:rgba(255,255,255,.5);text-decoration:none;transition:color .2s;font-weight:300;cursor:pointer}
.fn a:hover{color:rgba(255,255,255,.82)}
.fc{font-size:12px;color:rgba(255,255,255,.4);font-weight:300}

/* ── NEWSLETTER ── */
.newsletter{background:#13161e;padding:3rem 3.5rem;border-top:1px solid rgba(255,255,255,.05)}
.nl-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:2.5rem;align-items:center}
.nl-left{color:#fff}
.nl-tag{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}
.nl-title{font-size:22px;font-weight:700;color:#fff;letter-spacing:-.01em;margin-bottom:4px}
.nl-sub{font-size:13.5px;color:rgba(255,255,255,.55);font-weight:300;line-height:1.5;max-width:520px}
.nl-form{display:flex;gap:8px;align-items:stretch;min-width:380px}
.nl-input{flex:1;padding:13px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#fff;font-family:'Outfit',sans-serif;font-size:14px;outline:none;transition:border-color .15s,background .15s;min-width:0}
.nl-input::placeholder{color:rgba(255,255,255,.35)}
.nl-input:focus{border-color:var(--blue);background:rgba(255,255,255,.07)}
.nl-btn{background:var(--blue);color:#fff;border:none;padding:13px 22px;border-radius:8px;font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s;white-space:nowrap}
.nl-btn:hover{background:var(--blue-dark);transform:translateY(-1px)}
.nl-btn:disabled{opacity:.6;cursor:wait;transform:none}
.nl-success{max-width:1200px;margin:0 auto;color:#6FE0B8;font-size:14px;font-weight:500;padding-top:1rem;display:flex;align-items:center;gap:8px}
.nl-success::before{content:'✓';font-size:18px;font-weight:700}
.nl-disclaimer{max-width:1200px;margin:1rem auto 0;font-size:11px;color:rgba(255,255,255,.32);font-weight:300}
@media(max-width:700px){
  .newsletter{padding:2rem 1.25rem}
  .nl-inner{grid-template-columns:1fr;gap:1.25rem}
  .nl-title{font-size:19px}
  .nl-sub{font-size:13px}
  .nl-form{min-width:0;flex-direction:column}
  .nl-btn{padding:13px}
}
.fc a{color:rgba(255,255,255,.45);text-decoration:none;transition:color .2s;font-weight:300}
.fc a:hover{color:rgba(255,255,255,.75)}

/* LEGAL PAGE */
.legal-body{max-width:820px;margin:0 auto;padding:3rem 3.5rem 5rem}
.legal-body h2{font-size:20px;font-weight:700;color:var(--dark);margin:2.5rem 0 .75rem;letter-spacing:-.01em}
.legal-body h3{font-size:16px;font-weight:600;color:var(--dark);margin:1.5rem 0 .5rem}
.legal-body p,.legal-body li{font-size:14px;color:var(--text-muted);line-height:1.75;font-weight:300}
.legal-body ul{padding-left:1.25rem;margin:.5rem 0}
.legal-body li{margin-bottom:.35rem}
@media(max-width:700px){.legal-body{padding:2rem 1.5rem 4rem}}

/* ── CHATBOT IA ── */
.chat-fab{position:fixed;bottom:28px;right:28px;z-index:9998;width:60px;height:60px;border-radius:50%;background:var(--blue);border:none;cursor:pointer;box-shadow:0 4px 20px rgba(42,159,216,.4);display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}
.chat-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(42,159,216,.55)}
.chat-fab svg{width:28px;height:28px;fill:#fff}
.chat-fab .chat-fab-close{display:none}
.chat-fab.open .chat-fab-icon{display:none}
.chat-fab.open .chat-fab-close{display:block}
.chat-badge{position:absolute;top:-2px;right:-2px;width:18px;height:18px;border-radius:50%;background:#E24B4A;border:2px solid #fff;font-size:0}
.chat-fab.open .chat-badge{display:none}

.chat-panel{position:fixed;bottom:100px;right:28px;z-index:9997;width:380px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 140px);background:#fff;border-radius:16px;box-shadow:0 12px 48px rgba(0,0,0,.18);display:none;flex-direction:column;overflow:hidden;border:1px solid var(--border)}
.chat-panel.open{display:flex}

.chat-header{background:var(--dark-section);padding:18px 20px;display:flex;align-items:center;gap:12px;flex-shrink:0}
.chat-avatar{width:38px;height:38px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chat-avatar svg{width:20px;height:20px;fill:#fff}
.chat-header-info{flex:1}
.chat-header-name{font-size:14px;font-weight:700;color:#fff}
.chat-header-status{font-size:11px;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:5px}
.chat-header-status::before{content:'';width:6px;height:6px;border-radius:50%;background:#1D9E75;display:inline-block}
.chat-powered{font-size:9px;color:rgba(255,255,255,.35);letter-spacing:.04em}

.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f8f8f6}
.chat-msg{max-width:85%;padding:11px 15px;border-radius:12px;font-size:13.5px;line-height:1.6;font-weight:300;word-wrap:break-word}
.chat-msg.bot{align-self:flex-start;background:#fff;color:var(--dark);border:1px solid var(--border);border-bottom-left-radius:4px}
.chat-msg.user{align-self:flex-end;background:var(--blue);color:#fff;border-bottom-right-radius:4px}
.chat-msg.bot strong{color:var(--blue);font-weight:600}
.chat-msg.bot ul,.chat-msg.bot ol{margin:.5em 0;padding-left:1.2em}
.chat-msg.bot li{margin-bottom:.25em}
.chat-typing{align-self:flex-start;background:#fff;border:1px solid var(--border);border-radius:12px;border-bottom-left-radius:4px;padding:11px 18px;display:none;gap:4px}
.chat-typing.active{display:flex}
.chat-typing span{width:6px;height:6px;border-radius:50%;background:#bbb;animation:chatDot 1.2s infinite}
.chat-typing span:nth-child(2){animation-delay:.2s}
.chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes chatDot{0%,80%,100%{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}

.chat-input-wrap{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;background:#fff;flex-shrink:0}
.chat-input{flex:1;border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:13.5px;font-family:'Outfit',sans-serif;resize:none;outline:none;min-height:40px;max-height:80px;line-height:1.4;transition:border-color .2s}
.chat-input:focus{border-color:var(--blue)}
.chat-input::placeholder{color:#aaa}
.chat-send{width:40px;height:40px;border-radius:8px;background:var(--blue);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,opacity .2s;flex-shrink:0}
.chat-send:hover{background:var(--blue-dark)}
.chat-send:disabled{opacity:.4;cursor:not-allowed}
.chat-send svg{width:18px;height:18px;fill:#fff}

.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;background:#f8f8f6}
.chat-sug{font-size:11.5px;padding:6px 12px;border-radius:16px;border:1px solid var(--border);background:#fff;color:var(--text-muted);cursor:pointer;transition:border-color .2s,color .2s;font-family:'Outfit',sans-serif;font-weight:400}
.chat-sug:hover{border-color:var(--blue);color:var(--blue)}

@media(max-width:700px){
  .chat-fab{bottom:18px;right:18px;width:54px;height:54px}
  .chat-panel{bottom:82px;right:16px;width:calc(100vw - 32px);height:calc(100vh - 120px)}
}

/* COOKIE BANNER */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--dark-section);border-top:1px solid rgba(255,255,255,.1);padding:1.25rem 2rem;display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.cookie-banner p{font-size:13px;color:rgba(255,255,255,.72);font-weight:300;margin:0;line-height:1.5}
.cookie-banner a{color:var(--blue);text-decoration:none}
.cookie-banner a:hover{text-decoration:underline}
.cookie-btn{background:var(--blue);color:#fff;border:none;padding:9px 22px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}
.cookie-btn:hover{background:var(--blue-dark)}
.cookie-btn-rej{background:transparent;color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.2);padding:9px 22px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s}
.cookie-btn-rej:hover{border-color:rgba(255,255,255,.5);color:#fff}

/* PARALLAX SECTIONS */
.parallax-section{position:relative;padding:6rem 0;overflow:hidden}
.parallax-bg{position:fixed;top:0;left:0;width:100%;height:100vh;background-size:cover;background-position:center;z-index:-2;pointer-events:none}
.parallax-wrap{position:relative;overflow:hidden}
.parallax-wrap::before{content:'';position:absolute;inset:0;background-attachment:fixed;background-size:cover;background-position:center;opacity:.12;z-index:0;animation:bgPan 20s ease-in-out 0s infinite alternate}
.parallax-wrap.img1::before{background-image:url('../louscontrol_images/imagen_fondo.jpg')}
.parallax-wrap.img2::before{background-image:url('../louscontrol_images/imagen_webp.webp')}
.parallax-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(28,28,26,.92) 0%,rgba(28,28,26,.78) 50%,rgba(28,28,26,.88) 100%);z-index:0}
.parallax-wrap>.si{position:relative;z-index:1}
.parallax-wrap.light::after{background:linear-gradient(135deg,rgba(240,239,236,.92) 0%,rgba(240,239,236,.82) 50%,rgba(240,239,236,.9) 100%)}
/* NAV LOGO */
.nav-logo-img{height:32px;width:auto;display:block;max-width:160px;object-fit:contain}
.fl-logo{height:36px;width:auto;display:block;background:#fff;padding:6px 10px;border-radius:5px;box-sizing:content-box}

/* REVEAL */
.rev{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.rev.up{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

/* RESPONSIVE */
@media(max-width:1024px){
  .hero-in{grid-template-columns:1fr;gap:2.5rem}
  .hero-stats{display:grid;grid-template-columns:repeat(3,1fr)}
  .stat+.stat{border-top:none;border-left:1px solid rgba(255,255,255,.07)}
  .pv-grid{grid-template-columns:1fr}
  .srv-grid{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .step:nth-child(2){border-right:none}
  .step:nth-child(3){border-right:1px solid var(--border);border-top:1px solid var(--border)}
  .step:nth-child(4){border-right:none;border-top:1px solid var(--border)}
  .cta-box{flex-direction:column}
}
@media(max-width:900px){
  nav{padding:0 1.5rem}
  .nav-logo{flex-shrink:0}
  .nav-logo-img{height:28px;max-width:140px}
  .nav-burger{display:flex}
  .nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;padding:1.5rem;gap:0;border-bottom:1px solid var(--border);box-shadow:0 8px 24px rgba(0,0,0,.1);max-height:calc(100vh - 70px);overflow-y:auto}
  .nav-links.mobile-open{display:flex}
  .nav-links a{padding:.75rem 0;border-bottom:1px solid var(--border);font-size:15px}
  .nav-links a:last-child{border-bottom:none}
  .nav-links .nav-cta{text-align:center;margin-top:.5rem;border-bottom:none}
  .nav-dropdown{flex-direction:column;align-items:stretch;width:100%;border-bottom:1px solid var(--border)}
  .nav-dropdown-trigger{padding:.75rem 0;font-size:15px;width:100%;justify-content:space-between}
  .nav-dropdown-menu{position:static;right:auto;left:auto;transform:none;opacity:1;pointer-events:all;box-shadow:none;border:none;border-radius:0;padding:0;display:none;min-width:0;max-width:none;background:transparent;width:100%}
  .nav-dropdown-menu::before{display:none}
  .nav-dropdown.dd-open .nav-dropdown-menu{display:block}
  .nav-dropdown-item{padding:.7rem .25rem;border-radius:6px;width:100%}
  .nav-dropdown-ico{width:30px;height:30px}
  .nav-dropdown-name{font-size:14px}
  .nav-dropdown-desc{font-size:11.5px}
}
@media(max-width:700px){
  .si{padding:0 1.5rem}
  .hero-in{padding:4rem 1.5rem}
  .hero-stats{grid-template-columns:1fr}
  .stat+.stat{border-left:none;border-top:1px solid rgba(255,255,255,.07)}
  .srv-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .step{border-right:none!important;border-bottom:1px solid var(--border)}
  .step:last-child{border-bottom:none}
  footer{flex-direction:column;align-items:flex-start;padding:2rem 1.5rem}
  .fn{flex-wrap:wrap;gap:1rem}
  .cta-box{padding:2rem 1.5rem}
}


/* ── SISTEMA DE PAGINAS ── */
.page{display:none}.page.active{display:block}
.nav-logo{cursor:pointer}

/* ── PAGE HEROES ── */
.page-hero{background:var(--dark-section);padding:5rem 3.5rem 4rem;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:url('../louscontrol_images/imagen_fondo.jpg') center/cover;background-attachment:fixed;opacity:.12;animation:bgPan 20s ease-in-out 0s infinite alternate}
.page-hero-in{position:relative;z-index:1;max-width:1200px;margin:0 auto}
.page-hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:1rem}
.page-hero-tag::before{content:'';width:18px;height:2px;background:var(--blue);border-radius:1px;display:block}
.page-hero h1{font-size:clamp(32px,4vw,52px);font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.02em;margin-bottom:.75rem}
.page-hero p{font-size:15px;color:rgba(255,255,255,.68);font-weight:300;max-width:560px;line-height:1.7}

/* ── INSIGHTS ── */
.insights-featured{max-width:1200px;margin:3rem auto 0;padding:0 3.5rem}
.feat-card{display:block;border-radius:14px;overflow:hidden;height:400px;background:#111;position:relative;cursor:pointer;transition:transform .25s,box-shadow .25s}
.feat-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.25)}
a.feat-card,a.post-card,a.feat-card:hover,a.post-card:hover{text-decoration:none;color:inherit}
.feat-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55}
.feat-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.15) 60%,transparent 100%)}
.feat-body{position:absolute;bottom:0;left:0;right:0;padding:2.5rem}
.feat-badge{display:inline-block;background:var(--blue);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:20px;margin-bottom:.85rem}
.feat-body h2{font-size:clamp(18px,2.5vw,26px);font-weight:800;color:#fff;line-height:1.2;margin-bottom:.5rem;letter-spacing:-.01em}
.feat-meta{font-size:12.5px;color:rgba(255,255,255,.65)}
.feat-excerpt{font-size:14px;color:rgba(255,255,255,.72);margin-top:.5rem;line-height:1.55}
.feat-logo-wm{position:absolute;top:22px;right:24px;z-index:3;background:rgba(255,255,255,.94);padding:9px 16px;border-radius:6px;box-shadow:0 4px 18px rgba(0,0,0,.22);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.feat-logo-wm img,.feat-logo-wm svg{height:24px;width:auto;display:block}
@media (max-width:640px){.feat-logo-wm{top:14px;right:14px;padding:6px 11px}.feat-logo-wm img,.feat-logo-wm svg{height:18px}}
.ar-img-wrap{position:relative;margin:1.5rem 0;border-radius:var(--radius);overflow:hidden;background:#0a0e1a}
.ar-img-wrap img.ar-img{margin:0;display:block;border-radius:0}
.ar-img-logo{position:absolute;bottom:22px;left:24px;background:rgba(255,255,255,.95);padding:10px 18px;border-radius:6px;box-shadow:0 4px 18px rgba(0,0,0,.22)}
.ar-img-logo img,.ar-img-logo svg{height:28px;width:auto;display:block}
@media (max-width:640px){.ar-img-logo{bottom:14px;left:14px;padding:7px 12px}.ar-img-logo img,.ar-img-logo svg{height:20px}}
@keyframes lcAiPulse{0%,100%{opacity:.55}50%{opacity:1}}
.lc-logo-ai .lc-pulse{animation:lcAiPulse 2.4s ease-in-out infinite}
.posts-section{background:var(--gray-light);padding:3.5rem 0 5rem}
.posts-inner{max-width:1200px;margin:0 auto;padding:0 3.5rem}
.posts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.post-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:box-shadow .2s,transform .2s;position:relative;display:grid;grid-template-columns:180px 1fr}
.post-card:hover{box-shadow:var(--shadow-h);transform:translateY(-3px)}
.post-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.post-card:hover::after{transform:scaleX(1)}
.post-thumb{min-height:160px;background-size:cover;background-position:center;background-color:#e5e7eb}
.post-body{padding:1.25rem 1.4rem;display:flex;flex-direction:column;justify-content:center}
.post-meta{font-size:11px;color:rgba(0,0,0,.35);margin-bottom:.4rem}
.post-body h3{font-size:14.5px;font-weight:700;line-height:1.35;color:var(--dark);margin-bottom:.5rem;letter-spacing:-.01em}
.post-excerpt{font-size:12.5px;color:var(--text-muted);line-height:1.55;font-weight:300}
.post-link{display:inline-flex;align-items:center;gap:5px;margin-top:.75rem;font-size:12px;font-weight:600;color:var(--blue)}
/* ARTICLE READER */
.article-reader{display:none;max-width:800px;margin:0 auto;padding:2.5rem 3.5rem 4rem}
.article-reader.active{display:block}
.article-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--blue);cursor:pointer;margin-bottom:2rem;border:none;background:none;font-family:inherit;padding:0}
.article-back:hover{opacity:.7}
.article-reader .ar-date{font-size:12px;color:var(--text-muted);margin-bottom:.75rem}
.article-reader h2{font-size:clamp(24px,3vw,36px);font-weight:800;color:var(--dark);line-height:1.15;letter-spacing:-.02em;margin-bottom:1.5rem}
.article-reader .ar-lead{font-size:16px;font-weight:400;color:var(--text-muted);line-height:1.7;margin-bottom:2rem;border-left:3px solid var(--blue);padding-left:1.25rem}
.article-reader h3{font-size:18px;font-weight:700;color:var(--dark);margin:2rem 0 .75rem}
.article-reader p{font-size:15px;color:#444;line-height:1.8;margin-bottom:1rem}
.article-reader ul{list-style:none;padding:0;margin:0 0 1.25rem}
.article-reader li{font-size:14px;color:#555;padding:6px 0;padding-left:18px;position:relative;line-height:1.65}
.article-reader li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--blue);position:absolute;left:0;top:13px}
.article-reader .ar-highlight{background:var(--blue-light);border-radius:var(--radius);padding:1.25rem 1.5rem;margin:1.5rem 0;font-size:14px;color:var(--dark);line-height:1.7}
.article-reader .ar-highlight strong{color:var(--blue)}
.article-reader .ar-img{width:100%;border-radius:var(--radius);margin:1.5rem 0}
.article-reader .ar-cta{background:var(--blue);color:#fff;border-radius:var(--radius);padding:1.75rem 2rem;margin-top:2.5rem;text-align:center}
.article-reader .ar-cta p{color:rgba(255,255,255,.92);font-size:15px;margin-bottom:1rem;font-weight:500}
.article-reader .ar-cta-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.article-reader .ar-cta-primary{background:#fff;color:var(--blue-dark);padding:11px 22px;border-radius:7px;font-weight:700;text-decoration:none;font-size:14px;transition:transform .15s,background .15s}
.article-reader .ar-cta-primary:hover{background:#f0efec;transform:translateY(-1px);text-decoration:none}
.article-reader .ar-cta-secondary{color:rgba(255,255,255,.85);padding:11px 22px;border-radius:7px;font-weight:500;text-decoration:underline;font-size:13.5px}
.article-reader .ar-cta-secondary:hover{color:#fff}
@media(max-width:700px){
  .article-reader{padding:1.25rem 1rem 3rem}
  .article-reader h2{font-size:23px!important;line-height:1.18!important;margin-bottom:1.15rem!important}
  .article-reader .ar-lead{font-size:15px!important;padding-left:1rem!important;margin-bottom:1.5rem!important}
  .article-reader h3{font-size:17px!important;margin:1.6rem 0 .6rem!important}
  .article-reader p,.article-reader li{font-size:14.5px!important;line-height:1.65!important}
  .article-reader .ar-img{margin:1rem 0!important}
  .article-reader .ar-highlight{padding:1rem 1.15rem!important;font-size:13.5px!important}
  .article-reader .ar-cta{padding:1.25rem 1.25rem!important;margin-top:2rem!important}
  .article-reader table{font-size:11.5px!important}
  .article-reader table th,.article-reader table td{padding:8px 9px!important}
  /* PropTech — stats hero: 4 cols → 2 cols */
  .article-reader [style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;margin:.5rem 0 1.6rem!important}
  .article-reader [style*="grid-template-columns:repeat(4,1fr)"] > div{padding:11px 13px!important}
  .article-reader [style*="grid-template-columns:repeat(4,1fr)"] > div > div:first-child{font-size:21px!important}
  .article-reader [style*="grid-template-columns:repeat(4,1fr)"] > div > div:nth-child(2){font-size:10.5px!important;line-height:1.35!important}
  /* PropTech — case-box & tools grid: 2 cols → 1 col */
  .article-reader [style*="background:#2e3138"]{padding:18px 18px!important;margin:22px 0!important}
  .article-reader [style*="background:#2e3138"] h3{font-size:17px!important}
  .article-reader [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
  /* PropTech — pullquotes */
  .article-reader [style*="border-top:2px solid #2b8fd4"]{padding:14px 0!important;margin:22px 0!important}
  .article-reader [style*="border-top:2px solid #2b8fd4"] p{font-size:17px!important;line-height:1.3!important}
  /* PropTech — advantages numbered list */
  .article-reader [style*="border-right:2px solid #2b8fd4"]{font-size:24px!important;width:30px!important;padding-right:10px!important}
  /* Insights portada feat-card mobile */
  .insights-featured{padding:0 1rem!important;margin-top:2rem!important}
  .feat-card{height:auto!important;min-height:340px}
  .feat-body{padding:1.5rem 1.25rem!important}
  .feat-body h2{font-size:19px!important;line-height:1.2!important}
  .feat-excerpt{font-size:13px!important;line-height:1.5!important}
  .feat-badge{font-size:9.5px!important;padding:3px 9px!important}
}
/* ── ARTICLE RICH COMPONENTS ── */
.s-div{display:flex;align-items:center;gap:12px;margin:2.5rem 0 1.4rem}
.s-div-num{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);white-space:nowrap}
.s-div-line{flex:1;height:1px;background:var(--border)}
.callout{border-radius:10px;padding:1.4rem 1.6rem;margin:1.8rem 0}
.callout-alert{background:var(--dark-section);border-left:4px solid #e05555}
.callout-alert .call-title{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#f07070;margin-bottom:.5rem}
.callout-alert p{font-size:14px!important;color:rgba(255,255,255,.72)!important;line-height:1.65!important;margin-bottom:0!important}
.callout-info{background:var(--blue-light);border-left:4px solid var(--blue)}
.callout-info .call-title{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-dark);margin-bottom:.5rem}
.callout-info p{font-size:14px!important;color:#1a4a6a!important;line-height:1.65!important;margin-bottom:0!important}
.risk-table{width:100%;border-collapse:collapse;margin:1.8rem 0;font-size:14px}
.risk-table th{background:var(--dark-section);color:rgba(255,255,255,.6);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.7rem 1rem;text-align:left}
.risk-table td{padding:.8rem 1rem;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.55}
.risk-table tr:last-child td{border-bottom:none}
.risk-table tr:nth-child(even) td{background:rgba(0,0,0,.02)}
.risk-table td:first-child{font-weight:700;color:var(--dark)}
.lc-list{list-style:none!important;margin:1rem 0 1.4rem!important;padding:0!important}
.lc-list li{display:block!important;font-size:14.5px;line-height:1.65;color:#2c2c2c;padding-left:1.1rem!important;padding-top:0!important;padding-bottom:.55rem!important;position:relative!important}
.lc-list li::before{content:''!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--blue)!important;position:absolute!important;left:0!important;top:.52em!important;margin-top:0!important}
.ar-conclusion{background:var(--dark-section);border-radius:12px;padding:2.2rem 2.4rem;margin:3rem 0}
.ar-conclusion h3{font-size:13px!important;font-weight:700!important;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)!important;margin-bottom:1.1rem!important;margin-top:0!important}
.ar-conclusion p{font-size:15px!important;color:rgba(255,255,255,.65)!important;line-height:1.75!important;margin-bottom:0!important}
.source-note{font-size:12px;color:#999;border-top:1px solid var(--border);padding-top:1.2rem;margin-top:3rem;line-height:1.6}

/* ── EQUIPO ── */
.team-section{background:var(--gray-light);padding:4rem 0 5rem}
.team-inner{max-width:1200px;margin:0 auto;padding:0 3.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 2rem}
.team-card{text-align:center;display:flex;flex-direction:column;align-items:center}
.team-photo{width:110px;height:110px;border-radius:50%;background-size:cover;background-position:center top;background-color:#123b5a;filter:grayscale(100%);flex-shrink:0;margin-bottom:1.1rem;transition:filter .3s,transform .3s}
.team-card:hover .team-photo{filter:grayscale(0%);transform:scale(1.05)}
.team-info-name{font-size:16px;font-weight:700;color:var(--dark);letter-spacing:-.01em;margin-bottom:3px}
.team-info-role{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:.7rem}
.team-info-bio{font-size:12.5px;color:var(--text-muted);line-height:1.65;font-weight:300;max-width:320px;margin:0 auto .85rem}
.team-formation{display:none}

/* ── PROCESOS REFACTORED ── */
#lc-procesos{font-family:'Outfit',sans-serif;max-width:1080px;margin:0 auto;padding:32px 20px 48px;box-sizing:border-box;color:#333}
.proc-hero{border-left:4px solid var(--blue);background:#fff;border:0.5px solid #e0e0e0;border-left:4px solid var(--blue);border-radius:10px;padding:28px 32px;margin-bottom:32px}
.proc-tag{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);display:flex;align-items:center;gap:8px}
.proc-tag-line{display:inline-block;width:28px;height:1px;background:var(--blue);opacity:.4;vertical-align:middle}
.proc-h2{margin:0 0 10px;font-size:22px;font-weight:600;color:#1a1a1a;line-height:1.25}
.proc-desc{margin:0 0 22px;font-size:14px;color:#58595B;line-height:1.65;max-width:600px}
.proc-badges{display:flex;flex-wrap:wrap;gap:8px}
.proc-badge{font-size:12px;padding:5px 13px;border-radius:20px;border:1px solid #b3d9f2;color:var(--blue);background:#e8f4fb}
.proc-section-lbl{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.proc-section-lbl span:first-child{display:block;width:16px;height:2px;background:var(--blue);border-radius:1px}
.proc-section-lbl span:last-child{font-size:11px;font-weight:600;color:#999;letter-spacing:.07em;text-transform:uppercase}
.proc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:28px}
.proc-fase{background:#fff;border:0.5px solid #e0e0e0;border-top:3px solid #e0e0e0;border-radius:10px;padding:16px}
.proc-fase.active{border-top-color:var(--blue)}
.proc-fase-num{font-size:11px;font-weight:600;color:#aaa;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.proc-fase-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 9px;border-radius:10px;background:#e8f4fb;color:var(--blue);border:1px solid #b3d9f2;margin-bottom:10px}
.proc-fase-badge.gray{background:#F4F4F4;color:#58595B;border-color:#ddd}
.proc-fase-badge.warn{background:#FFF3E0;color:#854F0B;border-color:#FAC775}
.proc-fase-title{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:10px;line-height:1.3}
.proc-fase ul{list-style:none;padding:0;margin:0}
.proc-fase li{font-size:12px;color:#666;padding:3px 0;display:flex;align-items:flex-start;gap:6px;line-height:1.4}
.proc-dot{width:5px;height:5px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:4px;display:inline-block}
.proc-dot.dim{opacity:.4}
.proc-dot.gray{background:#58595B}
.proc-transv{margin-bottom:28px}
.proc-transv-items{display:flex;flex-wrap:wrap;gap:10px}
.proc-transv-item{font-size:12px;padding:7px 14px;border-radius:8px;background:#f5f5f5;border:0.5px solid #ddd;color:#58595B;display:flex;align-items:center;gap:7px}
.proc-cta{background:var(--blue);border-radius:10px;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.proc-cta p:first-child{margin:0 0 4px;font-size:15px;font-weight:600;color:#fff}
.proc-cta p:last-child{margin:0;font-size:12px;color:rgba(255,255,255,.75)}
.proc-cta-btn{display:inline-block;font-size:13px;font-weight:600;background:#fff;color:var(--blue);border:none;padding:11px 24px;border-radius:8px;cursor:pointer;text-decoration:none;white-space:nowrap}
.proc-opt-tag{display:inline-block;font-size:10px;font-weight:600;padding:1px 7px;border-radius:6px;background:#FFF3E0;color:#854F0B;margin-left:4px;vertical-align:middle}

/* ── SERVICIOS PAGE ── */
.srv-page-wrap{max-width:1200px;margin:0 auto;padding:3rem 3.5rem 5rem}
.srv-cat{margin-bottom:3rem}
.srv-cat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}
.srv-cat-num{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:4px}
.srv-cat-title{font-size:clamp(20px,2.5vw,28px);font-weight:800;color:var(--dark);line-height:1.15;letter-spacing:-.02em}
.srv-cat-desc{font-size:14px;color:var(--text-muted);line-height:1.7;font-weight:300;max-width:600px;margin-top:.5rem}
.srv-cat-badge{flex-shrink:0;background:var(--blue-light);color:var(--blue);font-size:11px;font-weight:700;padding:6px 14px;border-radius:20px;letter-spacing:.04em}
.srv-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.srv-detail-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;position:relative;transition:box-shadow .25s,transform .25s}
.srv-detail-card:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}
.srv-detail-card h4{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:.5rem}
.srv-detail-card p{font-size:13px;color:var(--text-muted);line-height:1.65;font-weight:300}
.srv-detail-card .srv-card-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);background:var(--blue-light);padding:3px 10px;border-radius:12px;margin-top:.75rem}
.srv-tools{margin-top:1.5rem;background:var(--gray-light);border-radius:var(--radius);padding:1.25rem 1.5rem}
.srv-tools-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(0,0,0,.3);margin-bottom:.75rem}
.srv-tools-list{display:flex;flex-wrap:wrap;gap:.5rem}
.srv-tools-item{font-size:12px;padding:5px 12px;border-radius:6px;background:#fff;border:1px solid var(--border);color:var(--text-muted);font-weight:400}
.srv-highlight{background:var(--blue);border-radius:var(--radius);padding:1.5rem 2rem;color:#fff;margin-top:1rem}
.srv-highlight strong{color:#fff}
.srv-highlight p{font-size:13px;line-height:1.65;color:rgba(255,255,255,.85)}
.srv-divider{height:1px;background:var(--border);margin:2.5rem 0}
@media(max-width:700px){
  .srv-page-wrap{padding:2rem 1.5rem 4rem}
  .srv-cat-header{flex-direction:column;gap:.75rem}
}

/* ── WRAPPERS ── */
.procesos-wrap{max-width:1200px;margin:0 auto;padding:3rem 3.5rem 5rem}
.plan-wrap{max-width:1200px;margin:0 auto;padding:3rem 3.5rem 5rem}

/* ── CALC SCOPED ── */
.wrap{max-width:900px;margin:0 auto;padding:32px 20px 60px;}

/* HEADER */
.hdr{background:#fff;border-left:4px solid #2a9fd8;border:0.5px solid #e0e0e0;border-left:4px solid #2a9fd8;border-radius:10px;padding:24px 28px;margin-bottom:20px;}
.hdr img{height:28px;width:auto;display:block;margin-bottom:10px;}
.hdr h1{font-size:20px;font-weight:600;color:#1a1a1a;margin-bottom:6px;}
.hdr p{font-size:13px;color:#666;line-height:1.55;}

/* GRID INPUTS */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media(max-width:620px){.grid2{grid-template-columns:1fr;}}
.card{background:#fff;border:0.5px solid #e0e0e0;border-radius:10px;padding:18px 20px;}
.sec-title{font-size:11px;font-weight:700;color:#2a9fd8;letter-spacing:.07em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.sec-title::before{content:'';display:block;width:12px;height:2px;background:#2a9fd8;border-radius:1px;}
.field{margin-bottom:11px;}
.field:last-child{margin-bottom:0;}
.field label{display:flex;justify-content:space-between;font-size:12px;color:#666;margin-bottom:4px;}
.field label span{font-size:11px;color:#aaa;}
.iw{position:relative;}
.iw input{width:100%;padding:8px 38px 8px 12px;font-size:13px;border:0.5px solid #ccc;border-radius:7px;background:#f9f9f9;color:#333;outline:none;transition:border .15s;}
.iw input:focus{border-color:#2a9fd8;background:#fff;}
.sfx{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:#aaa;pointer-events:none;}

/* PARÁMETROS — LOCK / DESBLOQUEO POR CÓDIGO */
.lc-lock-wrap{margin-top:0.9rem;display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.lc-lock-text{font-size:0.85rem;color:var(--blue);font-weight:500;letter-spacing:.01em;margin:0;flex:1;min-width:220px;}
.lc-lock-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.lc-lock-status{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:6px;letter-spacing:.01em;}
.lc-lock-status.locked{background:#fef0ef;color:#B22222;border:.5px solid #f5c2c0;}
.lc-lock-status.unlocked{background:#e6f7ee;color:#1D9E75;border:.5px solid #b8e6cd;}
.lc-lock-btn{background:#1a1a1a;color:#fff;border:none;padding:8px 16px;font-size:12.5px;font-weight:600;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s,transform .15s;font-family:'Outfit',sans-serif;}
.lc-lock-btn:hover{background:#2a9fd8;transform:translateY(-1px);}
.lc-lock-form{display:none;align-items:center;gap:8px;flex-wrap:wrap;}
.lc-lock-form.open{display:inline-flex;}
.lc-lock-input{padding:8px 12px;font-size:13px;border:1px solid #ccc;border-radius:7px;background:#f9f9f9;color:#333;outline:none;font-family:'Outfit',sans-serif;width:170px;}
.lc-lock-input:focus{border-color:#2a9fd8;background:#fff;}
.lc-lock-confirm{background:#2a9fd8;color:#fff;border:none;padding:8px 14px;font-size:12.5px;font-weight:600;border-radius:7px;cursor:pointer;font-family:'Outfit',sans-serif;}
.lc-lock-confirm:hover{background:#1a7fb8;}
.lc-lock-cancel{background:#fff;color:#666;border:.5px solid #ccc;padding:8px 12px;font-size:12.5px;font-weight:500;border-radius:7px;cursor:pointer;font-family:'Outfit',sans-serif;}
.lc-lock-cancel:hover{background:#f5f5f5;}
.lc-lock-msg{font-size:11.5px;font-weight:600;}
.lc-lock-msg.err{color:#E24B4A;}
.lc-lock-msg.ok{color:#1D9E75;}
#lc-calc.lc-locked .iw input[disabled]{background:#ececec!important;color:#9a9a9a!important;cursor:not-allowed;border-color:#dcdcdc;}
#lc-calc.lc-locked .grid2{position:relative;}

/* MÉTRICAS RÁPIDAS */
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px;}
.mc{background:#f5f5f5;border-radius:8px;padding:13px 15px;}
.mc.blue{background:#2a9fd8;}
.mc-label{font-size:11px;color:#888;margin-bottom:3px;font-weight:500;}
.mc.blue .mc-label{color:rgba(255,255,255,.7);}
.mc-val{font-size:19px;font-weight:600;color:#1a1a1a;line-height:1.1;}
.mc.blue .mc-val{color:#fff;}
.mc-val.ok{color:#1D9E75;} .mc-val.warn{color:#BA7517;} .mc-val.bad{color:#E24B4A;}

/* VIABILIDAD */
.via-card{background:#fff;border:0.5px solid #e0e0e0;border-radius:10px;padding:18px 20px;margin-bottom:16px;}
.via-bar{height:8px;border-radius:4px;background:#eee;margin-top:10px;overflow:hidden;}
.via-fill{height:100%;border-radius:4px;transition:width .5s,background .5s;}
.via-lbl{font-size:12px;margin-top:6px;font-weight:600;}

/* GRÁFICOS */
.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media(max-width:620px){.charts-grid{grid-template-columns:1fr;}}
.chart-card{background:#fff;border:0.5px solid #e0e0e0;border-radius:10px;padding:18px 20px;}
.chart-title{font-size:11px;font-weight:700;color:#2a9fd8;letter-spacing:.07em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.chart-title::before{content:'';display:block;width:12px;height:2px;background:#2a9fd8;border-radius:1px;}
.chart-wrap{position:relative;height:220px;}

/* DESGLOSE */
.dsg{background:#fff;border:0.5px solid #e0e0e0;border-radius:10px;padding:18px 20px;margin-bottom:16px;}
.dsg-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:.5px solid #f0f0f0;font-size:13px;}
.dsg-row:last-child{border-bottom:none;}
.dsg-row.tot{font-weight:600;padding-top:10px;}
.dsg-row.tot .amt{color:#2a9fd8;}
.dsg-lbl{color:#666;}
.dsg-row.tot .dsg-lbl{color:#1a1a1a;}
.amt{color:#1a1a1a;font-variant-numeric:tabular-nums;}

/* RESUMEN EJECUTIVO */
.resumen{background:linear-gradient(135deg,#003d6b 0%,#2a9fd8 100%);border-radius:10px;padding:28px;margin-bottom:16px;color:#fff;}
.res-top{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap;}
.res-logo-wrap{background:#fff;border-radius:8px;padding:8px 18px;display:inline-flex;align-items:center;}
.res-logo{height:24px;width:auto;display:block;}
.res-div{width:1px;height:34px;background:rgba(255,255,255,.25);}
.res-eye{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:3px;}
.res-hl{font-size:15px;font-weight:600;color:#fff;}
.res-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:9px;margin-bottom:18px;}
.rk{background:rgba(255,255,255,.1);border-radius:8px;padding:11px 13px;border:.5px solid rgba(255,255,255,.15);}
.rk-lbl{font-size:10px;color:rgba(255,255,255,.6);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;}
.rk-val{font-size:17px;font-weight:600;color:#fff;line-height:1.1;}
.rk-val.ok{color:#5DCAA5;} .rk-val.warn{color:#FAC775;} .rk-val.bad{color:#F09595;}
.res-verdict{background:rgba(255,255,255,.08);border-radius:8px;padding:14px 16px;margin-bottom:18px;border-left:3px solid rgba(255,255,255,.35);}
.res-vtitle{font-size:11px;font-weight:700;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
.res-vtext{font-size:13px;color:#fff;line-height:1.65;}
.res-bullets{display:flex;flex-direction:column;gap:6px;margin-bottom:22px;}
.rb{font-size:13px;color:rgba(255,255,255,.92);padding:9px 14px;border-radius:7px;background:rgba(255,255,255,.07);border-left:3px solid rgba(255,255,255,.35);line-height:1.4;display:flex;align-items:flex-start;gap:10px;}
.rb-icon{flex-shrink:0;width:16px;height:16px;margin-top:1px;opacity:.85;}
.res-cta-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-top:18px;border-top:.5px solid rgba(255,255,255,.15);}
.res-cta-text .t{font-size:14px;font-weight:600;color:#fff;}
.res-cta-text .s{font-size:12px;color:rgba(255,255,255,.65);margin-top:3px;}
.res-btn{display:inline-block;font-size:13px;font-weight:700;background:#fff;color:#2a9fd8;padding:11px 22px;border-radius:8px;text-decoration:none;white-space:nowrap;}
.res-btn:hover{background:#e8f4fb;}

/* DISCLAIMER */
.disc{background:#e8f4fb;border:.5px solid #B3D9F2;border-radius:8px;padding:13px 18px;font-size:12px;color:#58595B;line-height:1.6;}
.disc strong{color:#2a9fd8;}


/* ── RESPONSIVE EXTRA ── */
@media(max-width:1024px){
  .team-inner{grid-template-columns:repeat(2,1fr)}
  .posts-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  .team-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .page-hero{padding:3.5rem 1.5rem 3rem}
  .insights-featured,.posts-inner,.team-inner,.procesos-wrap,.plan-wrap{padding-left:1rem;padding-right:1rem}
  .posts-grid{grid-template-columns:1fr;gap:1rem}
  .post-card{grid-template-columns:120px 1fr}
  .post-body{padding:.9rem .95rem!important}
  .post-body h3{font-size:14.5px!important;line-height:1.25!important}
  .post-meta{font-size:10.5px!important;margin-bottom:.35rem!important}
  .post-excerpt{font-size:12.5px!important;line-height:1.45!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
  .post-link{font-size:11.5px!important}
  .team-inner{grid-template-columns:repeat(2,1fr);gap:1.5rem 1rem}
  .team-photo{width:80px;height:80px}
}
@media(max-width:480px){
  .post-card{grid-template-columns:1fr}
  .post-thumb{height:140px!important}
}

/* ── INDICADORES DE MERCADO ── */
.ind-widgets{max-width:1200px;margin:0 auto;padding:3rem 3.5rem 5rem}
.ind-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.kpi-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;position:relative;overflow:hidden;transition:box-shadow .25s,transform .25s}
.kpi-card:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}
.kpi-value{font-size:28px;font-weight:800;color:var(--dark);letter-spacing:-.02em;line-height:1.1;margin-bottom:4px}
.kpi-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.kpi-sub{font-size:11px;color:#aaa;font-weight:300}
.kpi-up{color:#1D9E75}
.kpi-dn{color:#E24B4A}
.ind-chart-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;margin-bottom:2rem;box-shadow:var(--shadow)}
.ind-chart-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}
.ind-chart-hd h3{font-size:16px;font-weight:700;color:var(--dark)}
.ind-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}
.prices-table{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}
.prices-table h3{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:1rem}
.prices-table table{width:100%;border-collapse:collapse;font-size:13px}
.prices-table th{text-align:left;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:6px 8px;border-bottom:1px solid var(--border)}
.prices-table td{padding:5px 8px;border-bottom:1px solid #f0f0f0;color:var(--dark);font-weight:400}
.prices-table tr:last-child td{border-bottom:none;font-weight:700;color:var(--blue)}
.price-bar{display:inline-block;height:6px;border-radius:3px;background:var(--blue);vertical-align:middle;margin-left:6px;opacity:.5}
.mort-grid{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}
.mort-grid h3{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:1rem}
.mort-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:1rem}
.mort-field label{display:block;font-size:11px;color:var(--text-muted);margin-bottom:3px;font-weight:500}
.mort-field input{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:6px;background:#f9f9f9;font-family:inherit;outline:none;transition:border-color .15s}
.mort-field input:focus{border-color:var(--blue);background:#fff}
.mort-results{background:var(--gray-light);border-radius:8px;padding:1rem;margin-bottom:.75rem}
.mort-row{display:flex;justify-content:space-between;padding:4px 0;font-size:13px}
.mort-rlabel{color:var(--text-muted);font-weight:400}
.mort-rval{font-weight:600;color:var(--dark)}
.amort-toggle{background:none;border:1px solid var(--border);border-radius:6px;padding:7px 16px;font-size:12px;font-weight:600;color:var(--blue);cursor:pointer;font-family:inherit;transition:background .15s}
.amort-toggle:hover{background:var(--blue-light)}
.amort-wrap{display:none;margin-top:.75rem;max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:8px}
.amort-wrap.open{display:block}
.amort-table{width:100%;border-collapse:collapse;font-size:11.5px}
.amort-table th{position:sticky;top:0;background:#fff;font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:6px 6px;border-bottom:1px solid var(--border);text-align:right}
.amort-table th:first-child{text-align:left}
.amort-table td{padding:4px 6px;border-bottom:1px solid #f5f5f5;text-align:right;color:var(--dark);font-variant-numeric:tabular-nums}
.amort-table td:first-child{text-align:left;color:var(--text-muted)}
.amort-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:.75rem}
.amort-sum-item{background:var(--gray-light);border-radius:6px;padding:8px 10px;text-align:center}
.amort-sum-item .mort-rlabel{font-size:10px;display:block;margin-bottom:2px}
.amort-sum-item .mort-rval{font-size:14px}
.tools-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.tool-btn{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;text-decoration:none;transition:box-shadow .2s,transform .2s}
.tool-btn:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}
.tool-ico{width:36px;height:36px;border-radius:8px;background:var(--blue-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue);font-size:16px;font-weight:700}
.tool-txt{font-size:13px;font-weight:600;color:var(--dark);line-height:1.3}
.tool-txt span{display:block;font-size:11px;font-weight:300;color:var(--text-muted);margin-top:2px}
.ind-source{font-size:11px;color:#aaa;font-weight:300;text-align:center;margin-top:1rem}
.ind-source a{color:var(--blue);text-decoration:none}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#1D9E75;margin-right:5px;animation:livePulse 2s infinite}
.live-lbl{font-size:10px;color:#1D9E75;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
@keyframes livePulse{0%,100%{opacity:1}50%{opacity:.4}}
.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmerAnim 1.5s infinite}
@keyframes shimmerAnim{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media(max-width:1024px){
  .ind-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .ind-two-col{grid-template-columns:1fr}
  .tools-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .ind-widgets{padding:2rem 1.5rem 4rem}
  .ind-kpi-grid{grid-template-columns:1fr}
  .tools-grid{grid-template-columns:1fr}
  .mort-inputs{grid-template-columns:1fr}
  .amort-summary{grid-template-columns:1fr}
}

/* TRACK RECORD CARDS */
.tr-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.tr-card:hover{box-shadow:var(--shadow-h);transform:translateY(-3px)}
.tr-card.tr-dark{background:var(--dark-section);border-color:rgba(255,255,255,.07);box-shadow:0 4px 24px rgba(0,0,0,.18)}
.tr-card.tr-dark:hover{box-shadow:0 8px 36px rgba(0,0,0,.28);transform:translateY(-3px)}
.tr-card.tr-dark .tr-title{color:#fff}
.tr-card.tr-dark .tr-desc{color:rgba(255,255,255,.48)}
.tr-card.tr-dark .tr-kpis{background:rgba(255,255,255,.08)}
.tr-card.tr-dark .tr-kpi{background:rgba(255,255,255,.04)}
.tr-card.tr-dark .tr-kpi-lbl{color:rgba(255,255,255,.35)}
.tr-card.tr-dark .tr-kpi-val{color:#fff}
.tr-card-body{padding:1.5rem 1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem}
.tr-badges{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.65rem;flex-wrap:wrap;gap:6px}
.tr-badge{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:20px}
.tr-badge.blue{background:#E6F3FB;color:#0078C8;border:1px solid #B3D9F2}
.tr-badge.green{background:#E8F5E9;color:#2E7D32;border:1px solid #A5D6A7}
.tr-badge.amber{background:#FFF3E0;color:#854F0B;border:1px solid #FAC775}
.tr-badge.purple{background:#F3E5F5;color:#6A1B9A;border:1px solid #CE93D8}
.tr-badge.gray{background:#f4f4f4;color:#58595B;border:1px solid #ddd}
.tr-badge.amber-outline{background:rgba(250,199,117,.15);color:#FAC775;border:1px solid rgba(250,199,117,.35)}
.tr-badge.green-outline{background:rgba(29,158,117,.15);color:#6FE0B8;border:1px solid rgba(29,158,117,.35)}
.tr-badge.purple-outline{background:rgba(106,27,154,.2);color:#CE93D8;border:1px solid rgba(106,27,154,.35)}
.tr-badge.gray-outline{background:rgba(150,150,150,.2);color:#ccc;border:1px solid rgba(150,150,150,.3)}
.tr-title{font-size:15px;font-weight:800;color:var(--dark);line-height:1.3;margin-bottom:.4rem}
.tr-desc{font-size:12.5px;font-weight:300;color:var(--text-muted);line-height:1.65}
.tr-kpis{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border-radius:7px;overflow:hidden;margin-top:auto}
.tr-kpi{background:#fafafa;padding:.7rem .85rem}
.tr-kpi:nth-child(n+3){border-top:1px solid var(--border)}
.tr-kpi-lbl{font-size:9.5px;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.07em;margin-bottom:3px}
.tr-kpi-val{font-size:15px;font-weight:800;color:var(--dark)}
.tr-footer{padding:.6rem 1.6rem;background:#f7f7f5;border-top:1px solid var(--border);font-size:11px;color:var(--gray)}
@media(max-width:1024px){
  #page-casos .hero-in > div:last-child{grid-template-columns:repeat(3,1fr) !important}
  #page-casos section .si > div[style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr 1fr !important}
}
@media(max-width:700px){
  #page-casos .hero-in > div:last-child{grid-template-columns:repeat(2,1fr) !important}
  #page-casos .hero-in > div:last-child > div{padding:1rem !important}
  #page-casos .hero-in > div:last-child > div > div:nth-child(2){font-size:22px !important}
  #page-casos section .si > div[style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr !important}
  #page-casos section .si > div[style*="grid-template-columns:repeat(5"]{grid-template-columns:repeat(2,1fr) !important}
  .tr-card-body{padding:1.2rem 1.1rem}
  .tr-card:hover{transform:none}
  .tr-kpi-val{font-size:13px}
  .tr-kpi-lbl{font-size:8.5px}
  .tr-title{font-size:14px}
  .tr-desc{font-size:12px}
  .tr-badge{font-size:9px;padding:2px 8px}
  .tr-footer{font-size:10px;padding:.5rem 1.1rem}
}

/* SELECCIÓN DE ACTIVOS - PASSWORD GATE */
.activos-gate{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:3rem 1.5rem}
.activos-gate-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:3rem;max-width:440px;width:100%;text-align:center;box-shadow:var(--shadow)}
.activos-gate-icon{margin-bottom:1.25rem}
.activos-gate-title{font-family:'Outfit',sans-serif;font-size:20px;font-weight:800;color:var(--dark);margin-bottom:.65rem}
.activos-gate-desc{font-size:13px;color:var(--text-muted);line-height:1.7;font-weight:300;margin-bottom:1.75rem}
.activos-gate-form{display:flex;gap:.5rem;margin-bottom:1rem}
.activos-gate-input{flex:1;padding:12px 16px;border:1.5px solid var(--border);border-radius:8px;font-family:'Outfit',sans-serif;font-size:14px;color:var(--dark);outline:none;transition:border-color .2s}
.activos-gate-input:focus{border-color:var(--blue)}
.activos-gate-btn{background:var(--blue);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-family:'Outfit',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,transform .15s;white-space:nowrap}
.activos-gate-btn:hover{background:var(--blue-dark);transform:translateY(-1px)}
.activos-gate-error{color:#E24B4A;font-size:12px;font-weight:500;margin-bottom:.75rem}
.activos-gate-hint{font-size:11px;color:var(--text-muted);font-weight:300}
.activos-gate-hint a{color:var(--blue);text-decoration:none}
.activos-gate-hint a:hover{text-decoration:underline}

/* Dos áreas de Lous Control */
.lc-home{background:var(--dark-section);color:#fff;padding:6rem 0 5rem}
.lc-home h1{font-size:clamp(36px,5vw,64px);line-height:1.08;letter-spacing:-.03em;max-width:850px;margin:1rem 0 1.5rem}
.lc-home h1 span{color:var(--blue)}
.lc-home-lead{font-size:18px;line-height:1.7;color:#c7c7c5;max-width:690px;margin-bottom:3rem}
.lc-areas{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.lc-area{padding:2.5rem;border:1px solid #52524e;border-radius:14px;background:#262623;display:flex;flex-direction:column;align-items:flex-start}
.lc-area-business{background:#e8f4fb;color:var(--dark);border-color:#c1e0f0}
.lc-area small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#69bee7;font-weight:600}
.lc-area-business small{color:#17698f}
.lc-area h2{font-size:30px;line-height:1.15;margin:1.1rem 0}
.lc-area p{font-size:16px;line-height:1.7;color:#d2d2ce;margin-bottom:1.4rem}
.lc-area-business p{color:#454f56}
.lc-area ul{padding-left:1.2rem;line-height:1.8;margin-bottom:2rem;font-size:14px}
.lc-area .btn-p{margin-top:auto}
.lc-business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.lc-business-grid h3{font-size:19px;margin-bottom:.9rem}
.lc-contact{background:var(--dark-section);color:#fff;padding:3rem;border-radius:14px}
.lc-contact h2{font-size:30px;margin-bottom:1rem}
.lc-contact p{color:#d2d2ce;line-height:1.7;margin-bottom:1.5rem;max-width:650px}
.nav-links{gap:1.25rem}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:1100px) and (min-width:901px){nav{padding:0 1rem}.nav-links{gap:.65rem}.nav-links a{font-size:12px}}
@media(max-width:900px){.lc-areas,.lc-business-grid{grid-template-columns:1fr}.lc-home{padding:3.5rem 0}.lc-area{padding:1.75rem}.lc-contact{padding:2rem}}


[data-lc-area][hidden]{display:none!important}
#empresa-servicios,#empresa-financiacion,#empresa-fiscal,#empresa-metodo{scroll-margin-top:95px}
.nav-links{gap:1rem}
@media(min-width:901px) and (max-width:1250px){nav{padding:0 1rem}.nav-links{gap:.65rem}.nav-links a{font-size:12px}.nav-cta{padding:9px 12px}}
/* Ubicación activa en la navegación */
.nav-links > a:not(.nav-cta){position:relative}
.nav-links > a.active,.nav-links > a.area-active,.nav-links > a.section-active{color:var(--blue);font-weight:600}
.nav-links > a:not(.nav-cta)::after{content:'';position:absolute;left:0;right:0;bottom:-9px;height:2px;border-radius:2px;background:var(--blue);opacity:0;transform:scaleX(.55);transition:opacity .2s,transform .2s}
.nav-links > a.active::after,.nav-links > a.area-active::after,.nav-links > a.section-active::after{opacity:.65;transform:scaleX(1)}
.nav-dropdown.active .nav-dropdown-trigger{box-shadow:0 2px 0 rgba(42,159,216,.65)}
@media(max-width:900px){.nav-links > a:not(.nav-cta)::after{bottom:2px}}

/* Cabecera con áreas permanentes y desplegables accesibles. */
.lc-nav-area{position:relative}
.lc-nav-area>summary,.lc-nav-tools>summary{list-style:none;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0}
.lc-nav-area summary::-webkit-details-marker{display:none}
.lc-nav-area>summary{border-bottom:2px solid transparent}
.lc-nav-area>summary.active,.lc-nav-area>summary.area-active{color:var(--blue);border-bottom-color:rgba(42,159,216,.6);font-weight:600}
.lc-nav-area[open]>summary span,.lc-nav-tools[open]>summary span{transform:rotate(180deg)}
.lc-nav-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:270px;max-height:calc(100vh - 110px);overflow-y:auto;padding:10px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 35px #0002}
.nav-links .lc-nav-panel a,.lc-nav-tools>summary{display:block;padding:11px 13px;border-radius:6px;color:var(--dark);text-decoration:none;font-size:14px;line-height:1.4;border:0}
.lc-nav-tools>summary{display:flex}
.nav-links .lc-nav-panel a:hover,.lc-nav-tools>summary:hover{background:var(--blue-light);color:var(--blue)}
.nav-links .lc-nav-panel a.active,.nav-links .lc-nav-panel a.section-active{background:var(--blue-light);color:var(--blue);font-weight:600;box-shadow:inset 2px 0 var(--blue)}
.lc-nav-tools.active>summary{color:var(--blue);background:var(--blue-light)}
.lc-tools-list{margin:0 0 6px 12px;border-left:1px solid var(--border)}
.nav-links .lc-tools-list a{font-size:13px}
.lc-nav-area summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:900px){.lc-nav-area{width:100%;border-bottom:1px solid var(--border)}.lc-nav-area>summary{padding:14px 0;font-size:15px}.lc-nav-panel{position:static;min-width:0;max-height:none;box-shadow:none;border:0;padding:0 0 12px;border-radius:0}.nav-links .lc-nav-panel a{font-size:14px;padding:11px 13px}.nav-links.mobile-open{align-items:stretch}}


/* Narrativa de decisiones, texto progresivo y recorrido horizontal. */
.lc-impact{background:#123b5a;padding:8rem 0;color:#fff}
.lc-impact h2{font-size:clamp(34px,5.5vw,68px);line-height:1.12;letter-spacing:-.035em;max-width:960px;font-weight:700}
.lc-impact p{font-size:17px;color:#adb1ad;line-height:1.7;margin-top:2rem;max-width:590px}
.lc-light-text .lc-word{color:var(--lc-dim,#6d736f);transition:color .28s ease,text-shadow .28s ease}
.lc-light-text .lc-word.lit{color:var(--lc-lit,#fff)}
.lc-light-text .lc-word.lit:nth-child(4n){color:var(--blue)}
#page-empresa .page-hero .lc-light-text{--lc-dim:#747c80;--lc-lit:#fff}
#page-empresa .page-hero{background:#123b5a}
#page-empresa .page-hero h1{font-size:clamp(38px,5vw,68px);max-width:900px;letter-spacing:-.035em;line-height:1.08}
#page-empresa .page-hero p{color:#c2c9c7;max-width:760px;line-height:1.8}
.lc-method{height:230vh;min-height:1200px;position:relative;background:#123b5a;color:#fff;scroll-margin-top:70px}
.lc-method-pin{position:sticky;top:70px;padding:3.5rem 0 2rem;overflow:hidden}
.lc-method-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2rem}
.lc-method-heading h2{font-size:clamp(30px,3.8vw,48px);line-height:1.08;letter-spacing:-.025em;margin:.4rem 0 1rem}
.lc-method-heading p{font-size:15px;line-height:1.7;color:#b2b7b3;max-width:620px}
.lc-rail-controls{display:flex;gap:12px;align-items:center;flex-shrink:0}
.lc-rail-controls button{width:42px;height:42px;border:1px solid #5a625c;border-radius:50%;color:#fff;background:transparent;font-size:20px;cursor:pointer}
.lc-rail-controls button:hover{background:var(--blue);border-color:var(--blue)}
.lc-rail-controls button:disabled{opacity:.3;cursor:default}
.lc-rail-controls span{font-size:12px;color:#b2b7b3;font-variant-numeric:tabular-nums}
.lc-rail-window{overflow:hidden;padding:3px}
.lc-method-track{display:flex;gap:20px;will-change:transform}
.lc-method-card{flex:0 0 350px;padding:1.6rem;border:1px solid #4c554e;background:#232723;border-radius:14px;position:relative;min-height:335px}
.lc-method-card:focus{outline:2px solid var(--blue);outline-offset:-3px}
.lc-method-num{position:absolute;right:1.3rem;top:1rem;font-size:48px;color:#394a40;font-weight:700;line-height:1}
.lc-method-phase{position:relative;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;color:#64bde5;margin:1rem 0 1.4rem}
.lc-method-card h3{font-size:24px;line-height:1.18;letter-spacing:-.02em;margin-bottom:1rem;max-width:280px}
.lc-method-card p{color:#c0c8c2;font-size:14px;line-height:1.7}
.lc-method-result{border-top:1px solid #485149;padding-top:1rem;margin-top:1.3rem;font-size:13px;line-height:1.6;color:#f3f5f3}
.lc-method-result span{display:block;color:#76bddb;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.lc-method-progress{height:2px;background:#424b44;margin-top:1.8rem}
.lc-method-progress>div{height:100%;width:0;background:var(--blue)}
.lc-rail-hint{font-size:11px;color:#a2ada5;margin-top:1rem;letter-spacing:.03em}
.lc-decisions{background:#e8ede9}
.lc-scenario-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:1.5rem}
.lc-scenario-tabs button{font:inherit;font-size:13px;font-weight:600;padding:15px 12px;border-radius:7px;border:1px solid #bbc6bd;background:transparent;color:#39483d;text-align:left;cursor:pointer;line-height:1.4}
.lc-scenario-tabs button[aria-selected="true"]{background:#123b5a;color:#fff;border-color:#123b5a}
.lc-scenario-panel{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #c1cdc3;border-radius:16px;background:#fff;overflow:hidden}
.lc-case-story{padding:2.5rem}
.lc-case-story h3{font-size:clamp(25px,3vw,36px);line-height:1.13;letter-spacing:-.025em;margin:.5rem 0 1rem}
.lc-case-story p{font-size:15px;line-height:1.75;color:#59685e}
.lc-case-choice{border-left:2px solid var(--blue);padding-left:20px;margin:1.8rem 0}
.lc-case-choice>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#287d9e;font-weight:700}
.lc-case-choice h4{font-size:20px;line-height:1.3;margin:.6rem 0}
.lc-case-story .lc-case-measure{font-size:12px;color:#526d5d}
.lc-case-model{background:#f2f5f2;padding:2.5rem}
.lc-case-field{margin:1.2rem 0}
.lc-case-field label{display:flex;justify-content:space-between;gap:1rem;font-size:12px;color:#405146;line-height:1.5;margin-bottom:12px}
.lc-case-field output{font-weight:700;color:#173e2a;white-space:nowrap}
.lc-case-field input{width:100%;accent-color:#267c98;cursor:pointer}
.lc-case-output{background:#123b5a;color:#fff;border-radius:10px;padding:1.5rem;margin-top:1.5rem}
.lc-case-output>span{font-size:12px;color:#bdcec0;display:block}
.lc-case-output strong{font-size:clamp(28px,3vw,42px);letter-spacing:-.03em;display:block;margin:.5rem 0}
.lc-case-output p{font-size:12px;line-height:1.65;color:#d0ded4}
.lc-case-assumptions{font-size:11px;line-height:1.65;color:#5c6c61;margin-top:1rem}
@media(max-width:900px),(max-height:740px){.lc-method{height:auto;min-height:0;padding:3rem 0}.lc-method-pin{position:static;padding:0}.lc-rail-window{overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin}.lc-method-card{scroll-snap-align:start;flex-basis:min(350px,82vw)}.lc-method-track{transform:none!important}.lc-method-heading{align-items:flex-start;flex-direction:column;gap:1rem}.lc-impact{padding:5rem 0}.lc-scenario-tabs{grid-template-columns:1fr 1fr}.lc-scenario-panel{grid-template-columns:1fr}.lc-case-story,.lc-case-model{padding:1.6rem}}
@media(prefers-reduced-motion:reduce){.lc-method{height:auto;min-height:0;padding:3rem 0}.lc-method-pin{position:static;padding:0}.lc-rail-window{overflow-x:auto;scroll-snap-type:x mandatory}.lc-method-track{transform:none!important}.lc-light-text .lc-word{color:var(--lc-lit,#fff);transition:none}html{scroll-behavior:auto}}


/* Una sola escena continua: texto fijado y transición ligada al scroll. */
.lc-story{height:250vh;position:relative;background:#123b5a;color:#fff}
.lc-story-pin{position:sticky;top:70px;height:calc(100svh - 70px);min-height:480px;overflow:hidden;background:radial-gradient(ellipse at 85% 30%,#2a9fd83f,transparent 60%),#123b5a}
.lc-story-stage{height:100%;position:relative;display:grid;align-items:center}
.lc-story-scene{grid-area:1/1;will-change:opacity,transform;padding:3rem 0 5rem;max-width:1000px}
.lc-story-scene[data-story-scene="1"]{opacity:0;pointer-events:none;transform:translateY(35px)}
.lc-story h1,.lc-story h2{font-size:clamp(38px,5.7vw,78px);font-weight:700;line-height:1.08;letter-spacing:-.04em;margin:1.4rem 0 2rem;max-width:1000px}
.lc-story p{color:#deedf6;line-height:1.8;font-size:17px;max-width:680px}
.lc-story .stag{font-size:11px;color:#66b6d9}
.lc-story .lc-word{transition:none;text-shadow:none}
.lc-light-text .lc-word.lit:nth-child(4n){color:var(--lc-lit,#fff)}
.lc-story-foot{position:absolute;bottom:2.5rem;left:3.5rem;right:3.5rem;display:flex;align-items:center;gap:20px;color:#a4b2a9;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.lc-story-progress{height:1px;background:#4b5a50;flex:1}
.lc-story-progress i{height:1px;background:#6bb8d7;display:block;width:0}
@media(max-width:900px){.lc-story{height:230vh}.lc-story h1,.lc-story h2{font-size:clamp(36px,7vw,60px)}.lc-story p{font-size:15px}.lc-story-foot{left:1.5rem;right:1.5rem;bottom:1.5rem}.lc-story-pin{min-height:420px}}
@media(max-height:580px){.lc-story-pin{min-height:0}.lc-story h1,.lc-story h2{font-size:clamp(28px,4.5vw,48px);margin:1rem 0}.lc-story p{font-size:13px}.lc-story-scene{padding:1.5rem 0 3rem}.lc-story-foot{bottom:1rem}}
@media(prefers-reduced-motion:reduce){.lc-story{height:auto}.lc-story-pin{position:static;height:auto;min-height:0;overflow:visible}.lc-story-stage{display:block}.lc-story-scene{opacity:1!important;transform:none!important;pointer-events:auto!important;padding:4rem 0}.lc-story-scene[data-story-scene="1"]{opacity:1;transform:none}.lc-story-foot{display:none}}


/* Casos editoriales para reflexionar: una lectura horizontal, sin calculadora. */
.lc-reflections{background:#fcfdfb;padding:6rem 0;color:#123b5a}
.lc-reflections-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:center;margin-bottom:3.5rem}
.lc-reflections .stit{color:#123b5a;font-size:clamp(32px,4vw,48px);line-height:1.13;letter-spacing:-.03em}
.lc-reflections .sdesc{color:#486375}
.lc-reflection-disclaimer{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#68796f;margin-top:1.2rem}
.lc-reflections-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;font-size:12px;color:#486375}
.lc-reflections-controls>div{display:flex;gap:8px}
.lc-reflections-controls button{width:38px;height:38px;border:1px solid #bfcfc7;border-radius:50%;font-size:18px;color:#315c62;background:transparent;cursor:pointer}
.lc-reflections-controls button:hover{background:#e8f2ec}
.lc-reflections-controls button:disabled{opacity:.3;cursor:default}
.lc-reflections-track{display:flex;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9fbeb2 #e9f0eb;padding:0 3px 22px}
.lc-reflection-card{flex:0 0 340px;scroll-snap-align:start;border-top:1px solid #c9d8d0;padding:1.5rem 4px 1rem;display:flex;flex-direction:column}
.lc-reflection-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.2rem;color:#17698f}
.lc-reflection-top>span:first-child{font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.lc-reflection-top>span:last-child{font-size:30px;line-height:1}
.lc-reflection-card h3{font-size:27px;letter-spacing:-.025em;line-height:1.2;font-weight:500;margin:0 0 .9rem;color:#123b5a}
.lc-reflection-sub{font-size:16px;line-height:1.6;color:#486375;min-height:76px}
.lc-reflection-situation{font-size:14px;line-height:1.8;color:#486375;margin:1.5rem 0;min-height:105px}
.lc-reflection-question{font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.015em;color:#123b5a;padding:1.5rem 0;border-top:1px solid #dbe5df;min-height:154px}
.lc-reflection-next{display:flex;gap:12px;align-items:flex-start;margin-top:1.4rem}
.lc-reflection-next>span{color:#ad8535;font-size:22px}
.lc-reflection-label{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#486375;display:block;margin-bottom:.7rem}
.lc-reflection-next p{font-size:14px;line-height:1.8;color:#486375}
.lc-reflection-goal{margin-top:auto;padding-top:1.5rem;font-size:12px;line-height:1.6;color:#286479;font-weight:500}
.lc-reflection-footer{max-width:760px;margin-top:3rem;font-size:20px;line-height:1.6;letter-spacing:-.015em;color:#486375}
@media(max-width:900px){.lc-reflections-heading{grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}.lc-reflections{padding:4rem 0}.lc-reflection-card{flex-basis:min(340px,82vw)}.lc-reflections-track{gap:32px}.lc-reflection-footer{font-size:17px}.lc-reflection-question{font-size:21px}}


/* Seis cajetillas sin numeración: recorrido horizontal con el scroll. */
.lc-reflections{height:310vh;min-height:1500px;padding:0;position:relative;background:#f4f8fc}
.lc-reflections-pin{position:sticky;top:70px;padding:2rem 0 1.5rem;overflow:hidden}
.lc-reflections-heading{margin-bottom:1.2rem;gap:3rem}
.lc-reflections .stit{font-size:clamp(30px,3.2vw,42px)}
.lc-reflections-controls{margin-bottom:1rem}
.lc-reflections-track{padding:2px 3px 14px;scroll-snap-type:none}
.lc-reflection-card{flex-basis:340px;background:#fff;border:1px solid #bddbed;border-radius:13px;padding:1.25rem 1.4rem;box-shadow:0 4px 18px #123b5a05}
.lc-reflection-top{justify-content:flex-end;margin-bottom:.6rem}
.lc-reflection-top>span:last-child{font-size:25px}
.lc-reflection-card h3{font-size:25px}
.lc-reflection-sub{font-size:15px;min-height:70px}
.lc-reflection-situation{font-size:13px;line-height:1.6;margin:.8rem 0;min-height:85px}
.lc-reflection-question{font-size:20px;padding:1rem 0;min-height:115px}
.lc-reflection-next{margin-top:.8rem}
.lc-reflection-next p{font-size:13px;line-height:1.6}
.lc-reflection-label{font-size:9px;margin-bottom:.5rem}
.lc-reflection-goal{padding-top:1rem;font-size:11px}
@media(max-width:900px),(max-height:900px){.lc-reflections{height:auto;min-height:0;padding:4rem 0}.lc-reflections-pin{position:static;padding:0;overflow:visible}.lc-reflections-track{scroll-snap-type:x mandatory}.lc-reflection-card{flex-basis:min(340px,82vw)}}
@media(prefers-reduced-motion:reduce){.lc-reflections{height:auto;min-height:0;padding:4rem 0}.lc-reflections-pin{position:static;padding:0}.lc-reflections-track{scroll-snap-type:x mandatory}}


/* Datos ilustrativos, barras animadas y transición de foco en cada cajetilla. */
.lc-reflections{background:radial-gradient(ellipse at 50% 60%,#2a9fd815,transparent 70%),#f4f8fc}
.lc-reflections-track{padding:12px 8px 24px;gap:32px}
.lc-case-visual{--chart:#8fc8e6;flex:0 0 365px;border-radius:24px;padding:1.5rem;box-shadow:0 15px 32px #123b5a0a;opacity:.72;transform:translateY(10px) scale(.985);transition:opacity .6s ease,transform .65s cubic-bezier(.2,.7,.2,1),border-color .5s,box-shadow .5s}
.lc-case-visual.is-visible{opacity:1;transform:translateY(0) scale(1)}
.lc-case-visual.is-focused,.lc-case-visual:hover,.lc-case-visual:focus-visible{border-color:#2a9fd8;box-shadow:0 18px 40px #123b5a20;outline:2px solid #2a9fd855;outline-offset:4px}
.lc-case-visual[data-tone="sand"]{--chart:#dfcda1}
.lc-case-visual[data-tone="blue"]{--chart:#a6c6d2}
.lc-case-visual[data-tone="clay"]{--chart:#d5aca2}
.lc-case-visual .lc-reflection-top{justify-content:flex-start;margin:0 0 1.4rem}
.lc-case-visual .lc-reflection-top>span{width:48px;height:48px;border-radius:16px;background:#e8f4fb;display:grid;place-items:center;color:#17698f;font-size:27px}
.lc-case-visual h3{font-size:25px;min-height:60px;margin-bottom:.5rem}
.lc-case-visual .lc-reflection-sub{font-size:14px;min-height:65px;line-height:1.6}
.lc-case-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:1rem 0 1.2rem}
.lc-case-metrics>div{background:#f4f8fc;border-radius:13px;padding:12px;min-height:104px;display:flex;flex-direction:column;justify-content:space-between;gap:15px}
.lc-case-metrics dt{font-size:11px;line-height:1.4;color:#486375}
.lc-case-metrics dd{font-size:23px;line-height:1.15;letter-spacing:-.025em;font-weight:600;color:#123b5a;margin:0}
.lc-case-visual:first-child .lc-case-metrics>div:last-child dd{font-size:17px}
.lc-case-chart{margin:0}
.lc-case-bars{height:74px;display:flex;align-items:flex-end;gap:10px;padding:0 4px}
.lc-case-bars span{flex:1;background:var(--chart);height:var(--bar-height);border-radius:6px 6px 0 0;transform:scaleY(.1);transform-origin:bottom;opacity:.4;transition:transform .9s cubic-bezier(.22,.8,.3,1) var(--bar-delay),opacity .7s var(--bar-delay)}
.lc-case-visual.is-visible .lc-case-bars span{transform:scaleY(1);opacity:1}
.lc-case-chart figcaption{font-size:9px;line-height:1.5;color:#6b8175;margin-top:8px}
.lc-case-prompt{font-size:16px;color:#335b54;font-weight:500;line-height:1.45;margin:1rem 0 0;padding-top:1rem;border-top:1px solid #e1e9e3;min-height:64px}
.lc-case-visual .lc-reflection-next{padding-top:.6rem;margin-top:auto;min-height:85px}
.lc-case-visual .lc-reflection-next p{font-size:13px;line-height:1.6}
@media(max-width:900px){.lc-case-visual{flex-basis:min(365px,82vw);padding:1.3rem}.lc-case-metrics dd{font-size:21px}}
@media(prefers-reduced-motion:reduce){.lc-case-visual{opacity:1;transform:none;transition:none}.lc-case-bars span{transform:none;opacity:1;transition:none}}


/* Carrusel automático: sin tramo fijado al desplazamiento vertical. */
.lc-reflections{height:auto;min-height:0;padding:5rem 0}
.lc-reflections-pin{position:static;padding:0;overflow:visible}
.lc-reflections-track{scroll-snap-type:x mandatory}
.lc-reflections-controls button[data-reflect-pause]{font-size:14px}
@media(max-width:900px){.lc-reflections{padding:4rem 0}}


/* Movimiento continuo y controles adaptados a pantallas pequeñas. */
.lc-reflections-track{scroll-snap-type:none!important;scroll-behavior:auto;touch-action:pan-x pan-y pinch-zoom}
.lc-case-visual[hidden]{display:none!important}
.lc-reflections-controls button{min-width:44px;min-height:44px}
.si,.hero-in,.page-hero-in,.team-inner,.srv-page-wrap{min-width:0}
img,video{max-width:100%}
.nav-burger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
.lc-nav-area>summary,.lc-nav-tools>summary{min-height:44px}
input,textarea,select{font:inherit}
@media(max-width:900px){
  nav{padding-left:1.1rem;padding-right:1.1rem}
  .nav-links{padding:1rem 1.25rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));max-height:calc(100dvh - 70px);overscroll-behavior:contain}
  .nav-links a,.lc-nav-panel a{min-height:44px}
  .slc-input,.slc-textarea,input[type="email"],input[type="text"],input[type="tel"]{font-size:16px}
  .slc-box{max-height:calc(100dvh - 2rem);overflow-y:auto;padding:2rem 1.25rem}
  .lc-story{height:185svh}.lc-story-pin{min-height:0;height:calc(100svh - 70px)}
  .lc-story-scene{padding:2rem 0 4rem}.lc-story h1,.lc-story h2{font-size:clamp(32px,8.3vw,58px);line-height:1.12;margin:1rem 0 1.3rem}
  .lc-story p{font-size:15px;line-height:1.65}
  .lc-story-foot{left:1.25rem;right:1.25rem;font-size:9px;gap:12px}
  .lc-reflections-heading{gap:1rem}.lc-reflections-controls{gap:10px}.lc-reflections-controls>span{max-width:55%;font-size:11px;line-height:1.5}
  .lc-case-visual{flex-basis:min(340px,calc(100vw - 54px));padding:1.2rem}
  .lc-case-metrics dd{font-size:21px;overflow-wrap:anywhere}
  .lc-case-visual h3{font-size:24px;min-height:0;margin-bottom:.8rem}
  .lc-case-visual .lc-reflection-sub{min-height:60px}
  .lc-method-heading h2{font-size:32px}.lc-method-card{min-height:0}
  .hero-in{padding:3rem 1.25rem;gap:2rem}.hero-stats{width:100%}
  .srv-bg{background-attachment:scroll}
  .lc-impact{padding:4rem 0}.lc-impact h2{font-size:clamp(31px,8vw,48px)}
}
@media(max-width:600px){
  .si,.page-hero-in{padding-left:1.25rem;padding-right:1.25rem}
  .section{padding:3.5rem 0}.lc-home{padding-top:3rem}
  .lc-home h1{font-size:clamp(32px,9vw,44px)}.lc-home-lead{font-size:16px}
  .lc-area{padding:1.5rem}.lc-area h2{font-size:27px}
  .lc-contact{padding:1.5rem}.lc-contact h2{font-size:26px}
  .lc-business-grid{gap:1rem}.pv-card{padding:1.5rem}
  .team-info-bio{font-size:14px;line-height:1.7}
  .btn-p,.btn-o{min-height:44px;padding:12px 20px}
  .lc-rail-controls button{width:44px;height:44px}
  .lc-reflections-controls>div{gap:5px}
  .cookie-banner,#cookieBanner{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}
  .newsletter input{min-width:0;max-width:100%}
  footer{overflow-wrap:anywhere}
}
@media(max-height:520px) and (orientation:landscape){.lc-story{height:auto}.lc-story-pin{height:auto;position:static}.lc-story-stage{display:block}.lc-story-scene{padding:2rem 0;opacity:1!important;transform:none!important}.lc-story-foot{display:none}}
@media(prefers-reduced-motion:reduce){.mind-layer,.hero-bg{animation:none}.lc-story{height:auto}.lc-case-visual,.lc-case-bars span{transition:none}}


.lc-reflections-track{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;overflow-x:auto;user-select:none}
.lc-reflection-card{touch-action:pan-x pan-y pinch-zoom}
/* Cajetillas compactas: señal, indicadores, gráfico y acción. */
.lc-case-visual{padding:1.2rem;flex-basis:335px;border-radius:20px}
.lc-case-visual .lc-reflection-top{margin-bottom:.9rem}
.lc-case-visual .lc-reflection-top>span{width:40px;height:40px;border-radius:12px;font-size:24px}
.lc-case-visual h3{font-size:23px;min-height:54px;margin-bottom:.4rem}
.lc-case-visual .lc-reflection-sub{font-size:13px;line-height:1.5;min-height:42px}
.lc-case-metrics{margin:.8rem 0 1rem;gap:8px}
.lc-case-metrics>div{min-height:87px;padding:10px;gap:12px}
.lc-case-metrics dd{font-size:22px}
.lc-case-bars{height:58px}
.lc-case-visual .lc-reflection-next{border-top:1px solid #e1e9e3;padding-top:1rem;margin-top:1rem;min-height:76px}
.lc-case-visual .lc-reflection-next p{font-size:12px;line-height:1.6}
@media(max-width:600px){.lc-case-visual{flex-basis:min(310px,calc(100vw - 54px));padding:1.1rem}.lc-case-visual h3{font-size:22px}.lc-case-metrics dd{font-size:21px}}

/* Un método central y contenidos conectados; sin recorridos forzados. */
.lc-method-hub{height:auto;min-height:0;padding:4rem 0;background:#123b5a;color:#fff;scroll-margin-top:90px}
.lc-method-hub h2{font-size:clamp(34px,4.2vw,54px);line-height:1.08;letter-spacing:-.035em;margin:.5rem 0 1rem}
.lc-hub-lead{color:#bac9be;font-size:15px;line-height:1.7;margin-bottom:2rem}
.lc-hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.lc-hub-card{background:#243229;border:1px solid #475d4e;border-radius:12px;padding:1.4rem;display:flex;flex-direction:column;min-height:210px}
.lc-hub-phase{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#a9ddf5}
.lc-hub-card h3{font-size:22px;line-height:1.2;letter-spacing:-.02em;margin:1rem 0 1.5rem;font-weight:500}
.lc-hub-card a{color:#d6e9df;text-decoration:none;font-size:12px;margin-top:auto;line-height:1.5;padding:10px 0;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #4b5f50}
.lc-hub-card a:hover{color:#6ac2eb}
.lc-stage{background:#fff;scroll-margin-top:90px}
.lc-plan-line{display:grid;grid-template-columns:repeat(3,1fr);margin:2rem 0;gap:2rem}
.lc-plan-line>div{border-top:2px solid #c7dbd0;padding-top:1rem}
.lc-plan-line h3{font-size:19px;margin-bottom:.6rem}
.lc-plan-line p{font-size:14px;line-height:1.7;color:#5d6b62}
.lc-stage-next{display:inline-block;margin-top:1rem;color:#247e9d;font-size:14px;font-weight:500;text-decoration:none;padding:12px 0}
.lc-company-intro{background:#123b5a;color:#fff;padding:5rem 0}
.lc-company-intro h1{font-size:clamp(40px,5.5vw,72px);line-height:1.06;letter-spacing:-.04em;margin:1rem 0 1.5rem;max-width:900px}
.lc-company-intro h1 span{color:#54b2d8}
.lc-company-intro p{font-size:17px;line-height:1.75;color:#c3cec6;max-width:680px}
.lc-company-intro a{display:inline-block;margin-top:1.6rem;color:#8ccce3;text-decoration:none;padding:12px 0;font-size:14px}
.lc-method-context{font-size:13px;line-height:1.7;color:#546d60;border-left:2px solid #8eb9a5;padding-left:15px;margin:1.5rem 0;max-width:800px}
.lc-nav-panel .lc-nav-substep{padding-left:26px!important;font-size:13px!important}
@media(max-width:1050px){.lc-hub-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.lc-method-hub{padding:3rem 0}.lc-hub-grid{gap:10px}.lc-hub-card{padding:1rem;min-height:195px}.lc-hub-card h3{font-size:19px}.lc-hub-phase{font-size:10px}.lc-hub-card a{font-size:11px}.lc-plan-line{grid-template-columns:1fr;gap:1.3rem}.lc-company-intro{padding:3rem 0}.lc-company-intro p{font-size:15px}}


.lc-asset-execution{background:var(--dark-section);position:relative;overflow:hidden;scroll-margin-top:90px}.lc-asset-execution .si{position:relative;z-index:1}#empresa-plan,#empresa-seguimiento,#lc-decisiones,#activos-seguimiento{scroll-margin-top:90px}

/* Fases distintas y una única implantación visual. */
.lc-structure{background:#eaf0eb}
.lc-phase-delivery{border-top:1px solid #c6d8cc;margin-top:2rem;padding-top:1.3rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.lc-phase-delivery>span{font-size:10px;color:#547267;letter-spacing:.09em;text-transform:uppercase}
.lc-phase-delivery strong{font-size:17px;font-weight:500;color:#244f45}
.lc-phase-delivery a{margin-left:auto;color:#287f9d;text-decoration:none;font-size:13px;padding:12px 0}
.lc-implant{background:#f3f6f2}
.lc-solutions-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:2.3rem}
.lc-solution{background:#fff;border:1px solid #d6e1d7;border-radius:18px;padding:2rem;display:flex;flex-direction:column;align-items:flex-start;min-width:0;scroll-margin-top:95px}
.lc-solution-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#e8f4fb;color:#337765;margin-bottom:1.2rem}
.lc-solution-icon svg{width:30px;height:30px}
.lc-solution-tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#587b6d}
.lc-solution h3{font-size:clamp(27px,3vw,37px);line-height:1.12;letter-spacing:-.03em;font-weight:600;margin:.8rem 0 1.2rem}
.lc-solution>p{font-size:15px;line-height:1.7;color:#5b6e63;max-width:400px}
.lc-solution-chips{display:flex;flex-wrap:wrap;gap:7px;padding-top:1.5rem;margin-top:auto}
.lc-solution-chips span{border:1px solid #d4e2d8;border-radius:20px;padding:7px 11px;font-size:11px;color:#486958}
.lc-solution-funds{background:#123b5a;color:#fff;border-color:#123b5a}
.lc-solution-funds .lc-solution-tag{color:#a9d6c4}
.lc-solution-funds .lc-solution-icon{color:#a9d6c4;background:#345043}
.lc-funding-pair{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:14px;margin:.4rem 0 1.5rem}
.lc-funding-pair>div{border-top:1px solid #5c7a66;padding-top:1rem}
.lc-funding-pair span{font-size:11px;color:#a9ddf5;font-weight:500}
.lc-funding-pair p{font-size:15px;line-height:1.5;color:#deedf6;margin-top:.6rem}
.lc-solution-tax{background:#e8f4fb;border-color:#bddbed}
.lc-solution-detail{width:100%;margin-top:auto;padding-top:1.3rem}
.lc-solution-detail summary{cursor:pointer;font-size:12px;line-height:1.6;padding:10px 0;font-weight:500}
.lc-solution-detail p{font-size:13px;line-height:1.7;margin:.7rem 0}
.lc-solution-funds .lc-solution-detail p{color:#deedf6}
@media(max-width:650px){.lc-solutions-grid{grid-template-columns:1fr;gap:14px}.lc-solution{padding:1.5rem}.lc-solution h3{font-size:30px}.lc-solution>p{font-size:14px}.lc-phase-delivery{align-items:flex-start;flex-direction:column;gap:.7rem}.lc-phase-delivery a{margin-left:0}.lc-funding-pair{gap:12px}}


.newsletter[hidden]{display:none!important}
/* Portada: áreas protagonistas y servicios fáciles de reconocer. */
.lc-home .lc-area h2{font-size:clamp(32px,3.5vw,44px);line-height:1.1;letter-spacing:-.035em;margin:.6rem 0 1rem}
.lc-area-promise{font-size:18px;line-height:1.4;font-weight:500;margin-bottom:1.2rem;color:#a9d7eb}
.lc-area-business .lc-area-promise{color:#285d75}
.lc-home .lc-area ul{list-style:none;padding:0;width:100%;margin:0 0 2rem}
.lc-home .lc-area li{padding:10px 0;border-bottom:1px solid #ffffff20;font-size:14px;line-height:1.5}
.lc-home .lc-area-business li{border-bottom-color:#bfd7e1}
@media(max-width:600px){.lc-home .lc-area h2{font-size:34px}.lc-area-promise{font-size:16px}}

.lc-company-intro h1.lc-light-text .lc-word{transition:none}
.lc-company-manifesto{font-size:clamp(27px,3.8vw,45px);line-height:1.2;letter-spacing:-.025em;font-weight:600;max-width:900px;margin:3rem 0 0;padding-top:2rem;border-top:1px solid #3e5146}
@media(max-width:600px){.lc-company-manifesto{font-size:29px;margin-top:2rem;padding-top:1.5rem}}


/* Tres mensajes sucesivos: lectura natural con iluminación al avanzar. */
.lc-three-messages{padding:0;background:#123b5a}
.lc-scroll-message{min-height:78svh;display:flex;flex-direction:column;justify-content:center;padding:4rem 0;max-width:1000px}
.lc-three-messages .lc-scroll-message h1,.lc-three-messages .lc-scroll-message h2{font-size:clamp(36px,5.3vw,70px);line-height:1.1;letter-spacing:-.035em;font-weight:700;max-width:1000px;margin:1rem 0 1.8rem}
.lc-three-messages .lc-scroll-message p{font-size:17px;max-width:740px;line-height:1.8}
.lc-three-messages .lc-scroll-message a{font-size:14px;line-height:1.6;margin-top:1.4rem}
.lc-edic-initial{font-size:30px;line-height:1;color:#a9ddf5;display:block;font-weight:700;margin-bottom:.6rem;letter-spacing:-.03em}
.lc-hub-phase .lc-edic-name{display:block;font-size:11px}
@media(max-width:600px){.lc-scroll-message{min-height:70svh;padding:3rem 0}.lc-three-messages .lc-scroll-message h1,.lc-three-messages .lc-scroll-message h2{font-size:clamp(32px,8.2vw,45px);margin-bottom:1.3rem}.lc-three-messages .lc-scroll-message p{font-size:15px}.lc-edic-initial{font-size:27px}}
@media(prefers-reduced-motion:reduce){.lc-scroll-message{min-height:0;padding:3rem 0}}


/* Tres frases horizontales, controladas por el desplazamiento vertical. */
.lc-ge-horizontal{height:330svh;position:relative;background:#123b5a;color:#fff}
.lc-ge-pin{position:sticky;top:70px;height:calc(100svh - 70px);overflow:hidden;background:radial-gradient(ellipse at 85% 45%,#2a9fd833,transparent 65%),#123b5a}
.lc-ge-track{display:flex;width:100%;height:100%;will-change:transform}
.lc-ge-message{flex:0 0 100%;min-width:0;display:flex;align-items:center;padding:2rem 0 5rem}
.lc-ge-message>.si{width:100%}
.lc-ge-message h1,.lc-ge-message h2{font-size:clamp(36px,5.2vw,70px);line-height:1.12;font-weight:700;letter-spacing:-.035em;margin:1.2rem 0 1.7rem;max-width:1000px}
.lc-ge-message p{font-size:17px;line-height:1.8;max-width:750px;color:#deedf6}
.lc-ge-message a{display:inline-block;padding:12px 0;margin-top:1.2rem;font-size:14px;line-height:1.5;color:#a9ddf5;text-decoration:none}
.lc-ge-word{display:inline-block;white-space:nowrap}
.lc-ge-letter{color:#64849a}
.lc-ge-navigation{position:absolute;bottom:1.8rem;left:max(1.25rem,calc((100vw - 1088px)/2));right:max(1.25rem,calc((100vw - 1088px)/2));display:flex;align-items:center;gap:22px;font-size:10px;color:#a9c6d8;letter-spacing:.08em;text-transform:uppercase}
.lc-ge-navigation>div:nth-child(2){display:flex;gap:1px}
.lc-ge-navigation button{min-width:36px;min-height:44px;border:0;background:transparent;position:relative;cursor:pointer}
.lc-ge-navigation button::after{content:'';display:block;width:7px;height:7px;margin:auto;background:#64849a;border-radius:50%;transition:background .3s,transform .3s}
.lc-ge-navigation button[aria-current]::after{background:#7ac7e4;transform:scale(1.35)}
.lc-ge-progress{height:1px;background:#64849a;flex:1}
.lc-ge-progress i{height:1px;width:0;background:#7ac7e4;display:block}
@media(max-width:600px){.lc-ge-horizontal{height:310svh}.lc-ge-message{padding:1.4rem 0 4.5rem}.lc-ge-message h1,.lc-ge-message h2{font-size:clamp(29px,7.7vw,43px);line-height:1.16;margin:.8rem 0 1.2rem}.lc-ge-message p{font-size:14px;line-height:1.65}.lc-ge-message a{font-size:12px;margin-top:.7rem}.lc-ge-navigation{gap:10px;bottom:1rem;font-size:9px}}
@media(max-height:500px){.lc-ge-message h1,.lc-ge-message h2{font-size:clamp(24px,5vh,36px);margin:.5rem 0}.lc-ge-message p{font-size:12px;line-height:1.5}.lc-ge-message .stag{font-size:9px}.lc-ge-message{padding:1rem 0 3rem}.lc-ge-message a{margin-top:.3rem;font-size:11px}.lc-ge-navigation{bottom:.3rem}}
@media(prefers-reduced-motion:reduce){.lc-ge-horizontal{height:auto}.lc-ge-pin{height:auto;position:static;overflow:visible}.lc-ge-track{display:block;transform:none!important}.lc-ge-message{padding:3rem 0}.lc-ge-letter{color:#f9fbf9!important}.lc-ge-navigation{display:none}}


.lc-hub-phase .lc-edic-name{font-size:clamp(21px,2.2vw,29px);font-weight:700;letter-spacing:-.02em;text-transform:none;color:#a9ddf5;line-height:1.2}.lc-hub-phase{display:block;margin-bottom:.4rem}

.lc-diagnostic{background:#e8f4fb;scroll-margin-top:90px}
.lc-diagnostic-contact{display:flex;gap:2rem;align-items:center;justify-content:space-between;border-top:1px solid #bddbed;padding-top:1.5rem}
.lc-diagnostic-contact p{font-size:13px;line-height:1.7;color:#486375;max-width:520px}
.lc-diagnostic button,.lc-offering-hero button{border:0;font-family:inherit;cursor:pointer}
.lc-offering-hero{background:#123b5a;color:#fff;padding:4rem 0}
.lc-offering-hero>.si>a{display:inline-block;margin-bottom:2rem;color:#a9ddf5;font-size:13px;text-decoration:none}
.lc-offering-hero h1{font-size:clamp(36px,5vw,64px);letter-spacing:-.035em;line-height:1.1;margin:1rem 0 1.4rem}
.lc-offering-hero p{max-width:740px;font-size:17px;line-height:1.8;color:#deedf6;margin-bottom:2rem}
.lc-offering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.lc-offering-grid h2{font-size:23px;line-height:1.25;margin:.6rem 0 1rem}
.lc-offering-grid p{font-size:15px;line-height:1.8;color:#486375}
.lc-offering-decision{margin-top:3rem;padding:2rem;border-radius:14px;background:#e8f4fb}
.lc-offering-decision h2{font-size:26px;line-height:1.2;margin-bottom:1rem}
.lc-offering-decision p{font-size:16px;line-height:1.7;max-width:750px;color:#486375}
.lc-offering-link,.lc-offering-decision a{display:inline-block;font-size:13px;line-height:1.6;color:#17698f;padding:12px 0;margin-top:.6rem;text-decoration:none;font-weight:500}
.lc-solution-funds .lc-offering-link{color:#9fd8e6}
.lc-offering-decision .lc-offering-note{font-size:12px;margin-top:1rem}
@media(max-width:700px){.lc-diagnostic-contact{flex-direction:column;align-items:flex-start;gap:1rem}.lc-offering-grid{grid-template-columns:1fr;gap:1.5rem}.lc-offering-hero{padding:3rem 0}.lc-offering-hero p{font-size:15px}.lc-offering-decision{padding:1.5rem}}

/* Regreso contextual visible durante la lectura del servicio. */
.lc-service-return{position:sticky;top:70px;z-index:55;background:#e8f4fb;border-bottom:1px solid #bddbed}
.lc-service-return a{display:inline-flex;align-items:center;min-height:48px;padding:12px 0;font-size:14px;font-weight:600;color:#17698f;text-decoration:none;line-height:1.5}
.lc-service-return a:hover{color:#167fa9}
.lc-service-return+.lc-offering-hero>.si>a{display:none}
@media(max-width:600px){.lc-service-return a{font-size:13px;min-height:48px}}

.lc-consult-guide{height:auto;max-height:min(680px,calc(100dvh - 120px));width:390px}
.lc-consult-guide .chat-header{gap:12px;flex-shrink:0}
.lc-guide-close{margin-left:auto;width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:25px;cursor:pointer}
.lc-guide-body{overflow-y:auto;padding:1.3rem;overscroll-behavior:contain}
.lc-guide-step{font-size:10px;color:#17698f;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:.8rem}
.lc-guide-body h2{font-size:25px;line-height:1.15;letter-spacing:-.02em;margin:0 0 .8rem;color:#203b30;outline:none}
.lc-guide-body>p{font-size:13px;line-height:1.65;color:#5b6a61;margin-bottom:1rem}
.lc-guide-options{display:grid;gap:7px}
.lc-guide-options button{font:inherit;font-size:13px;text-align:left;line-height:1.5;padding:12px 13px;min-height:44px;background:#f0f5f1;border:1px solid #d4e1d8;color:#294f3d;border-radius:8px;cursor:pointer}
.lc-guide-options button:hover{border-color:#5d9c85;background:#e6f1e9}
#lc-guide-contact{display:grid;gap:10px}
#lc-guide-contact[hidden],.lc-guide-options[hidden]{display:none!important}
.lc-guide-summary{font-size:14px;line-height:1.7;color:#526c5d;margin:0 0 .5rem}
.lc-guide-primary{font:inherit;font-size:14px;font-weight:600;padding:13px;border:0;border-radius:8px;background:#267c9a;color:white;cursor:pointer;min-height:46px}
#lc-guide-contact>a{font-size:13px;text-decoration:none;padding:12px;border:1px solid #d0dfd5;border-radius:8px;color:#315e4b;min-height:44px}
.lc-guide-back{font:inherit;font-size:12px;text-align:left;color:#527362;border:0;background:transparent;padding:10px 0;cursor:pointer}
.lc-guide-body .lc-guide-privacy{font-size:10px;line-height:1.6;color:#6b7b70;border-top:1px solid #e2e9e4;padding-top:1rem;margin:1.2rem 0 0}
@media(max-width:600px){.lc-consult-guide{right:12px;bottom:82px;width:calc(100vw - 24px);max-width:none;max-height:calc(100dvh - 110px);height:auto}.lc-guide-body{padding:1.1rem}.lc-guide-body h2{font-size:24px}.lc-guide-options button{font-size:14px}}


.lc-contact-error{font-size:13px;line-height:1.6;color:#9b3028;background:#fff2ef;padding:12px;border-radius:7px;margin-top:12px}.lc-contact-error[hidden]{display:none}

/* GA y GE: dos áreas diferenciadas por tonos de azul. */
.lc-home{background:#f4f8fc;color:#123b5a}
.lc-home h1{color:#123b5a}
.lc-home h1 span{color:#17698f}
.lc-home .hero-tag{color:#17698f}
.lc-home .lc-home-lead{color:#486375}
.lc-home .lc-areas{gap:clamp(1.5rem,3vw,3rem)}
.lc-home .lc-area{background:#123b5a;color:#fff;border:1px solid #17698f;box-shadow:0 18px 44px #123b5a12}
.lc-home .lc-area h2{color:#fff}
.lc-home .lc-area small{color:#a9ddf5}
.lc-home .lc-area .lc-area-promise{color:#b7e6fa}
.lc-home .lc-area p{color:#deedf6}
.lc-home .lc-area li{color:#f0f7fb;border-bottom-color:#ffffff26}
.lc-home .lc-area .btn-p{background:#e8f4fb;color:#123b5a;border:1px solid #e8f4fb}
.lc-home .lc-area .btn-p:hover{background:#fff;color:#123b5a}
.lc-home .lc-area-business{background:#e8f4fb;color:#123b5a;border-color:#bddbed;box-shadow:0 18px 44px #123b5a0b}
.lc-home .lc-area-business h2{color:#123b5a}
.lc-home .lc-area-business small{color:#17698f}
.lc-home .lc-area-business .lc-area-promise{color:#17698f}
.lc-home .lc-area-business p{color:#3f5d71}
.lc-home .lc-area-business li{color:#173e57;border-bottom-color:#bddbed}
.lc-home .lc-area-business .btn-p{background:#17698f;color:#fff;border-color:#17698f}
.lc-home .lc-area-business .btn-p:hover{background:#123b5a;color:#fff}
.lc-home .lc-area .btn-p:focus-visible{outline:3px solid #49b9ec;outline-offset:5px}
@media(max-width:600px){.lc-home .lc-areas{gap:1.5rem}.lc-home .lc-area .btn-p{max-width:100%;white-space:normal}}


/* Palette commune : accent, interaction, surfaces et contraste. */
:root{--blue:#2a9fd8;--blue-dark:#17698f;--blue-light:#e8f4fb;--navy:#123b5a;--blue-muted:#486375;--blue-border:#bddbed}
.btn-p{background:var(--blue-dark);color:#fff}
.btn-p:hover{background:var(--navy)}
.nav-links a:hover,.nav-dropdown-trigger:hover,.nav-dropdown.active .nav-dropdown-trigger{color:var(--blue-dark)}
.lc-nav-area>summary.active,.lc-nav-area>summary.area-active{color:var(--blue-dark);border-bottom-color:var(--blue)}
.nav-links .lc-nav-panel a.active,.nav-links .lc-nav-panel a.section-active{color:var(--blue-dark);background:var(--blue-light);box-shadow:inset 2px 0 var(--blue)}
.nav-links .lc-nav-panel a:hover,.lc-nav-tools>summary:hover{color:var(--blue-dark)}
.lc-home .lc-area:not(.lc-area-business) .btn-p{background:var(--blue-light);color:var(--navy)}
.lc-home .lc-area-business .btn-p{background:var(--blue-dark);color:#fff}
.lc-home .lc-area-business .btn-p:hover{background:var(--navy)}
.lc-case-visual[data-tone="blue"]{--chart:#8fc8e6}
.lc-reflections-controls button{color:var(--blue-dark);border-color:var(--blue-border)}
.lc-reflections-controls button:hover{background:var(--blue-light)}


/* Entrada editorial: lectura iluminada, ligada al scroll sin bloquearlo. */
.lc-home-intro{position:relative;isolation:isolate}
.lc-home-intro-pin{position:relative;isolation:isolate}
.lc-home-intro-pin::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-12% -10%;background:radial-gradient(ellipse at var(--intro-x,20%) 42%,#2a9fd81a,transparent 58%);opacity:var(--intro-glow,.5)}
.lc-home.intro-enhanced{padding-top:0}
.intro-enhanced .lc-home-intro{height:165svh}
.intro-enhanced .lc-home-intro-pin{position:sticky;top:70px;min-height:calc(100svh - 70px);display:flex;flex-direction:column;justify-content:center;padding:3rem 0}
.lc-home .lc-home-intro h1{font-size:clamp(42px,6.4vw,80px);max-width:1050px;line-height:1.08;letter-spacing:-.045em}
.lc-intro-word{display:inline-block;white-space:nowrap}
.lc-intro-letter{display:inline;will-change:auto}
.lc-home .lc-home-intro .lc-home-lead{max-width:760px;margin-bottom:0}
.lc-intro-cue{display:flex;align-items:center;gap:14px;margin-top:2.5rem;color:var(--blue-dark);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.lc-intro-cue::before{content:"";width:42px;height:1px;background:var(--blue);transform:scaleX(var(--intro-progress,.1));transform-origin:left}
@media(max-width:600px){.intro-enhanced .lc-home-intro{height:155svh}.intro-enhanced .lc-home-intro-pin{padding:2rem 0}.lc-home .lc-home-intro h1{font-size:clamp(36px,10vw,54px)}.lc-home .lc-home-intro .lc-home-lead{font-size:16px;line-height:1.7}.lc-intro-cue{margin-top:1.8rem}}
@media(max-height:560px){.intro-enhanced .lc-home-intro{height:auto}.intro-enhanced .lc-home-intro-pin{position:relative;min-height:0;padding:3rem 0}.lc-home .lc-home-intro h1{font-size:clamp(32px,7vh,48px)}}
@media(prefers-reduced-motion:reduce){.intro-enhanced .lc-home-intro{height:auto}.intro-enhanced .lc-home-intro-pin{position:static;min-height:0;padding:4rem 0}.lc-home-intro-pin::before{display:none}}


/* GE: fondo empresarial propio, con lectura continua sobre una imagen ambiental. */
.lc-ge-pin{isolation:isolate;background:#102f48}
.lc-ge-pin::before{content:"";position:absolute;inset:-3%;z-index:-2;pointer-events:none;background-image:url("../louscontrol_images/gestion-empresarial-fondo.webp");background-position:center right;background-size:cover;opacity:.7;animation:lc-ge-atmosphere 26s ease-in-out infinite alternate;transform-origin:75% 50%}
.lc-ge-pin::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(10,33,51,.94) 0%,rgba(13,42,62,.87) 45%,rgba(13,42,62,.46) 100%),linear-gradient(0deg,rgba(10,33,51,.8),transparent 30%)}
.lc-ge-track,.lc-ge-navigation{z-index:1}
.lc-ge-message p{color:#deedf6}
@keyframes lc-ge-atmosphere{from{transform:scale(1)}to{transform:scale(1.045) translateX(-.5%)}}
@media(max-width:600px){.lc-ge-pin::before{background-position:68% center;opacity:.55}.lc-ge-pin::after{background:linear-gradient(90deg,rgba(10,33,51,.94),rgba(13,42,62,.76)),linear-gradient(0deg,rgba(10,33,51,.8),transparent 35%)}}
@media(prefers-reduced-motion:reduce){.lc-ge-pin::before{animation:none;transform:none}}


/* GE: fórmulas de explotación ilustrativas; capa decorativa independiente del texto. */
.lc-ge-financial-layer{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;mask-image:linear-gradient(0deg,#000 0%,#000 18%,#0003 35%,#0002 66%,#000 85%);-webkit-mask-image:linear-gradient(0deg,#000 0%,#000 18%,#0003 35%,#0002 66%,#000 85%)}
.lc-ge-financial-grid{position:absolute;inset:0;background-image:linear-gradient(#a9ddf509 1px,transparent 1px),linear-gradient(90deg,#a9ddf509 1px,transparent 1px);background-size:80px 80px;opacity:.5}
.lc-ge-formula{position:absolute;left:var(--x);top:var(--y);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:var(--size);line-height:1.5;white-space:nowrap;color:#a9ddf5;opacity:0;animation:lc-ge-formula-drift var(--duration) linear var(--delay) infinite;letter-spacing:.025em}
.lc-ge-formula:nth-child(3n){color:#e8f4fb}
@keyframes lc-ge-formula-drift{0%{transform:translate3d(0,90px,0);opacity:0}15%{opacity:.3}75%{opacity:.23}100%{transform:translate3d(-45px,-140px,0);opacity:0}}
.lc-ge-financial-chart{position:absolute;right:3%;bottom:10%;width:min(35vw,500px);opacity:.2;color:#a9ddf5}
.lc-ge-chart-axis{stroke:currentColor;stroke-width:1;opacity:.35}
.lc-ge-chart-bars rect{fill:currentColor;opacity:.22;transform-box:fill-box;transform-origin:bottom;animation:lc-ge-bar-breathe 4s ease-in-out infinite alternate}
.lc-ge-chart-bars rect:nth-child(even){animation-delay:-1.5s}
.lc-ge-chart-line{stroke:#a9ddf5;stroke-width:2;stroke-dasharray:1;animation:lc-ge-line-trace 6s ease-in-out infinite}
@keyframes lc-ge-bar-breathe{from{transform:scaleY(.65)}to{transform:scaleY(1)}}
@keyframes lc-ge-line-trace{0%{stroke-dashoffset:1;opacity:.3}45%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.lc-ge-track{position:relative}
#page-empresa:not(.active) .lc-ge-financial-layer *{animation-play-state:paused}
@media(max-width:600px){.lc-ge-formula{font-size:11px}.lc-ge-formula:nth-of-type(n+6){display:none}.lc-ge-financial-chart{width:65vw;right:-8%;bottom:12%;opacity:.13}.lc-ge-financial-grid{background-size:55px 55px}}
@media(prefers-reduced-motion:reduce){.lc-ge-financial-layer *{animation:none!important}.lc-ge-formula{opacity:.14;transform:none}.lc-ge-chart-line{stroke-dashoffset:0}}


/* GE: cámara ambiental más perceptible sobre la fotografía corporativa. */
.lc-ge-pin::before{background-image:url("../louscontrol_images/gestion-empresarial-web-portatil.webp");inset:-5%;opacity:.88;transform-origin:78% 58%;animation:lc-ge-camera 14s ease-in-out infinite alternate}
.lc-ge-pin::after{background:linear-gradient(90deg,rgba(10,33,51,.94) 0%,rgba(13,42,62,.82) 43%,rgba(13,42,62,.23) 100%),linear-gradient(0deg,rgba(10,33,51,.72),transparent 28%)}
@keyframes lc-ge-camera{0%{transform:scale(1.015) translate3d(.5%,.4%,0);filter:brightness(.94)}100%{transform:scale(1.16) translate3d(-2%,-1%,0);filter:brightness(1.07)}}
@media(max-width:600px){.lc-ge-pin::before{opacity:.7;animation-duration:18s;background-position:68% center}.lc-ge-pin::after{background:linear-gradient(90deg,rgba(10,33,51,.94),rgba(13,42,62,.7)),linear-gradient(0deg,rgba(10,33,51,.8),transparent 35%)}}
@media(prefers-reduced-motion:reduce){.lc-ge-pin::before{animation:none;transform:none;filter:none}}



/* Track Record: operaciones en un solo escenario, sin numeración. */
#page-casos .hero{min-height:0}
#page-casos .hero-in{padding-top:2.5rem!important;padding-bottom:2.5rem!important;gap:1.5rem!important}
#page-casos .hero h1{font-size:clamp(32px,4vw,48px)}
#page-casos .hero-sub{margin-bottom:0!important}
.lc-tr-deck{padding:2.5rem 0 3rem;background:var(--gray-light)}
.lc-tr-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.lc-tr-categories{display:flex;flex-wrap:wrap;gap:.5rem}
.lc-tr-categories button{border:1px solid #bddbed;background:#fff;color:#17698f;border-radius:30px;padding:10px 16px;min-height:44px;font:500 13px Outfit,sans-serif;cursor:pointer}
.lc-tr-categories button[aria-pressed="true"]{background:#123b5a;color:#fff;border-color:#123b5a}
.lc-tr-controls{display:flex;gap:8px}
.lc-tr-controls button{min-width:44px;min-height:44px;border-radius:50%;border:1px solid #bddbed;background:#fff;color:#123b5a;font-size:19px;cursor:pointer}
.lc-tr-controls button:focus-visible,.lc-tr-categories button:focus-visible{outline:3px solid #2a9fd8;outline-offset:3px}
.lc-tr-slides{display:grid;position:relative;overflow:hidden}
.lc-tr-slide{grid-area:1/1;min-width:0;visibility:hidden;opacity:0;transform:translateX(28px);transition:opacity .5s ease,transform .5s ease,visibility .5s;pointer-events:none}
.lc-tr-slide.is-current{visibility:visible;opacity:1;transform:translateX(0);pointer-events:auto}
.lc-tr-slide .sh{margin-bottom:1.5rem}
.lc-tr-slide .stit{font-size:clamp(27px,3vw,37px)}
.lc-tr-slide .sdesc{font-size:14px;max-width:800px}
.lc-tr-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
.lc-tr-slide .tr-card{margin:0;min-width:0}
.lc-tr-slide .rev{opacity:1!important;transform:none!important}
.lc-tr-deck button{font-family:inherit}
@media(max-width:900px){.lc-tr-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.lc-tr-cards{grid-template-columns:1fr}.lc-tr-deck{padding:2rem 0}.lc-tr-toolbar{gap:.8rem}.lc-tr-categories button{font-size:12px;padding:9px 12px}#page-casos .hero .rev.d3{grid-template-columns:repeat(2,minmax(0,1fr))!important}#page-casos .hero .rev.d3>div{padding:1rem!important}}
@media(prefers-reduced-motion:reduce){.lc-tr-slide{transition:none;transform:none}}


/* Carrusel con desplazamiento real: sigue el dedo y mantiene el scroll vertical. */
.lc-tr-slides{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch;align-items:stretch}
.lc-tr-slides::-webkit-scrollbar{display:none}
.lc-tr-slides.is-moving{scroll-snap-type:none}
.lc-tr-slide,.lc-tr-slide.is-current{flex:0 0 100%;width:100%;min-width:0;visibility:visible;opacity:1;transform:none;transition:none;pointer-events:auto;scroll-snap-align:start}



/* Preguntas comerciales útiles, sin nuevas vías de contacto. */
.lc-ge-search{background:#fff}
.lc-seo-questions{max-width:850px;margin-top:2rem}
.lc-seo-questions details{border-top:1px solid #bddbed;padding:1rem 0}
.lc-seo-questions summary{cursor:pointer;color:#123b5a;font-size:17px;font-weight:600;line-height:1.5;min-height:44px;padding:.5rem 0}
.lc-seo-questions p{color:#486375;line-height:1.8;font-size:15px;padding:.5rem 0;max-width:780px}

