/* E34-P2 · Experiencia Pública Premium + Formularios GEO */
:root{--p2-ink:#071522;--p2-muted:#597085;--p2-blue:#0875f5;--p2-cyan:#23c9ee;--p2-navy:#061827;--p2-line:#dbe7f1;--p2-soft:#f4f8fc;--p2-radius:26px;--p2-shadow:0 24px 70px rgba(7,42,75,.11)}
html{scroll-behavior:smooth}body{background:#f8fbff;color:var(--p2-ink)}
/* navigation */
.portal-topbar.critical-nav{position:sticky;top:0;z-index:900;min-height:86px;padding:10px clamp(20px,4vw,72px);background:rgba(255,255,255,.91);border-bottom:1px solid rgba(199,217,232,.8);box-shadow:0 10px 35px rgba(7,44,76,.055);backdrop-filter:blur(18px) saturate(150%)}
.critical-nav .brand{gap:13px;min-width:255px}.critical-nav .brand-logo{width:46px;height:46px;border-radius:13px;box-shadow:0 10px 25px rgba(8,117,245,.16)}.critical-nav .brand strong{font-size:.92rem;letter-spacing:.12em}.critical-nav .brand small{font-size:.72rem;color:#0875f5;font-weight:760}.brand-since{display:block;margin-top:2px;font-size:.6rem!important;letter-spacing:.16em;color:#7890a4!important;text-transform:uppercase}
.critical-nav .main-nav{display:flex;align-items:center;gap:4px}.critical-nav .main-nav>a{position:relative;padding:12px 11px;border-radius:11px;font-weight:760;color:#24394d;transition:background .2s ease,color .2s ease,transform .2s ease}.critical-nav .main-nav>a:not(.btn):hover,.critical-nav .main-nav>a:not(.btn).is-active{background:#edf5ff;color:#0875f5}.critical-nav .main-nav>a:not(.btn).is-active:after{content:"";position:absolute;left:17px;right:17px;bottom:5px;height:2px;border-radius:3px;background:linear-gradient(90deg,var(--p2-blue),var(--p2-cyan))}.critical-nav .nav-evos{font-weight:950!important;color:#0875f5!important}.critical-nav .nav-evos:before{content:"INNOVACIÓN";position:absolute;left:50%;top:-3px;transform:translateX(-50%);font-size:.43rem;letter-spacing:.14em;color:#0875f5}.critical-nav .nav-primary-cta{margin-left:8px!important;padding:13px 19px!important;border-radius:13px!important;box-shadow:0 13px 28px rgba(8,117,245,.22)}
.public-nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--p2-line);border-radius:13px;background:#fff;color:var(--p2-ink);font-size:1.35rem;cursor:pointer}
/* universal editorial treatment */
#main-content{overflow:hidden}.critical-public-page #main-content,.home-e2 #main-content,.about-stable #main-content{background:linear-gradient(180deg,#f9fcff 0,#fff 18%,#fff 82%,#f7fbff 100%)}
#main-content>section{position:relative}.eyebrow{letter-spacing:.17em!important;font-weight:900!important}.btn{border-radius:13px;box-shadow:0 10px 25px rgba(8,117,245,.12);transition:transform .18s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(8,117,245,.19)}
.section,.stable-section,.maturity-section{padding-top:clamp(78px,8vw,126px)!important;padding-bottom:clamp(78px,8vw,126px)!important}.section-head h2,.stable-section-head h2{max-width:920px}.section-head p,.stable-section-head p{font-size:1.05rem;line-height:1.75}
.service-visual-card,.stable-service-card,.cap-card,.authority-context-grid article,.maturity-dimension-grid article{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.service-visual-card:hover,.stable-service-card:hover,.cap-card:hover,.authority-context-grid article:hover,.maturity-dimension-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(11,61,104,.11);border-color:#b7d6f2}
/* visual depth for key public heroes */
.ev-hero,.stable-hero,.e12-work-hero,.authority-hero,.maturity-hero{isolation:isolate}.ev-hero:before,.stable-hero:before,.e12-work-hero:before,.authority-hero:before,.maturity-hero:before,.contact-shell:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(rgba(37,113,174,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,113,174,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.72) 62%,transparent 100%)}
.ev-system-map,.stable-visual-card,.services-orbit,.authority-signal{box-shadow:0 35px 90px rgba(7,41,71,.18)!important;border:1px solid rgba(109,183,232,.16)}
/* About page: prevent the visual from feeling like an isolated column */
.about-stable .stable-hero{grid-template-columns:minmax(0,.82fr) minmax(390px,1.18fr);align-items:center}.about-stable .stable-hero-copy{max-width:760px}.about-stable .stable-hero h1{font-size:clamp(3.4rem,5.7vw,6.2rem)}.about-stable .stable-visual-card{min-height:470px;justify-content:center;background:radial-gradient(circle at 82% 12%,rgba(35,201,238,.22),transparent 30%),linear-gradient(145deg,#061827,#0a3156)}
/* Contact conversion page */
body.critical-contact-page{background:#f7fbff}.contact-shell{position:relative;display:grid;grid-template-columns:minmax(330px,.82fr) minmax(600px,1.18fr);gap:clamp(54px,6vw,105px);min-height:calc(100vh - 86px);padding:clamp(70px,7vw,110px) clamp(28px,5vw,96px);align-items:center;background:radial-gradient(circle at 90% 16%,rgba(35,201,238,.12),transparent 30%),linear-gradient(140deg,#eff7ff,#f8fbff 55%,#edf7ff)}
.contact-intro h1{font-size:clamp(3.25rem,5vw,5.55rem);line-height:.98;letter-spacing:-.052em;margin:.45rem 0 1rem}.contact-intro>p{font-size:1.08rem;line-height:1.7;color:var(--p2-muted);max-width:650px}.contact-promises{display:grid;gap:11px;margin-top:25px}.contact-promises span{display:flex;align-items:center;gap:10px;font-weight:780}.contact-promises span:before{content:"";width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,var(--p2-blue),var(--p2-cyan));box-shadow:0 0 0 5px rgba(8,117,245,.09)}
.portal-form{padding:clamp(30px,3.4vw,48px);border-radius:30px;background:rgba(255,255,255,.96);border:1px solid #d8e6f1;box-shadow:var(--p2-shadow)}.portal-form:before{content:"Cuéntanos lo esencial. El contexto técnico lo construimos contigo.";display:block;margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #e4edf5;color:#536c81;font-weight:700}.form-two{gap:20px!important}.form-two label,.radar-save-form label,.m23-contact label{font-weight:850;color:#14293c}.form-two input,.form-two select,.form-two textarea,.radar-save-form input,.radar-save-form select,.m23-contact input,.m23-contact select,.geo-field input,.geo-field select{width:100%;margin-top:8px;border:1px solid #cbdceb;border-radius:13px;background:#fbfdff;min-height:50px;padding:12px 14px;font:inherit;color:#10273a;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.form-two textarea{min-height:150px;resize:vertical}.form-two input:focus,.form-two select:focus,.form-two textarea:focus,.radar-save-form input:focus,.radar-save-form select:focus,.m23-contact input:focus,.m23-contact select:focus,.geo-field input:focus,.geo-field select:focus{outline:0;border-color:#0875f5;background:#fff;box-shadow:0 0 0 4px rgba(8,117,245,.105)}
/* GEO reusable component */
.geo-contact-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;padding:20px;border:1px solid #dbe8f2;border-radius:18px;background:linear-gradient(180deg,#f8fbff,#fff)}.geo-contact-grid.compact{padding:15px;gap:13px}.geo-field{display:block}.geo-field.full{grid-column:1/-1}.geo-field small{display:block;margin-top:7px;color:#6d8295;font-size:.77rem;line-height:1.45;font-weight:600}.geo-phone-row{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(190px,1.22fr);gap:12px}.geo-phone-preview{display:block;margin-top:7px;color:#0b72df!important;font-weight:800!important}.geo-city-status{margin-top:7px!important}.geo-manual[hidden]{display:none!important}.geo-license-note{grid-column:1/-1;font-size:.72rem;color:#7c8fa0;line-height:1.45}.geo-contact-grid select option{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
/* premium footer */
.portal-footer{position:relative;overflow:hidden;padding:64px clamp(28px,5vw,96px) 28px!important;background:linear-gradient(145deg,#051521,#082844)!important;color:#d6e8f4!important;border-top:0!important}.portal-footer:before{content:"";position:absolute;width:520px;height:520px;right:-220px;top:-290px;border-radius:50%;background:radial-gradient(circle,rgba(36,203,238,.18),transparent 66%)}.portal-footer>div{position:relative}.portal-footer a{color:#bfd3e2!important}.portal-footer a:hover{color:#fff!important}.portal-footer .footer-brand strong{font-size:1.2rem;color:#fff}.portal-footer .footer-brand img{background:#fff;border-radius:16px;padding:6px}.footer-bottom{border-color:rgba(255,255,255,.12)!important}
/* EVIA */
.assistant-launcher{box-shadow:0 18px 45px rgba(2,75,133,.28)!important;border:1px solid rgba(255,255,255,.35)!important}.assistant-panel{border-radius:24px!important;box-shadow:0 28px 80px rgba(5,35,60,.3)!important}.assistant-quick-fields .geo-contact-grid{display:grid;background:#f5faff;border-radius:14px;padding:12px;gap:10px}.assistant-quick-fields .geo-phone-row{grid-template-columns:1fr}.assistant-quick-fields .geo-field small,.assistant-quick-fields .geo-license-note{font-size:.68rem}
/* contextual proof strip added to core pages */
.public-proof-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--p2-line);border-bottom:1px solid var(--p2-line);background:#fff}.public-proof-ribbon>span,.public-proof-ribbon>article{padding:21px 24px;text-align:center;border-right:1px solid var(--p2-line);font-weight:760;color:#425b70}.public-proof-ribbon>span:last-child,.public-proof-ribbon>article:last-child{border-right:0}.public-proof-ribbon b,.public-proof-ribbon strong{display:block;margin-bottom:4px;color:#0875f5;font-size:1.02rem}.public-proof-ribbon article span{display:block;font-size:.9rem;line-height:1.45}
@media(max-width:1180px){.critical-nav .main-nav{gap:0}.critical-nav .main-nav>a{padding-left:8px;padding-right:8px;font-size:.88rem}.contact-shell{grid-template-columns:1fr}.contact-intro{max-width:850px}.public-proof-ribbon{grid-template-columns:repeat(2,1fr)}.public-proof-ribbon>span:nth-child(2),.public-proof-ribbon>article:nth-child(2){border-right:0}.public-proof-ribbon>span:nth-child(-n+2),.public-proof-ribbon>article:nth-child(-n+2){border-bottom:1px solid var(--p2-line)}}
@media(max-width:980px){.portal-topbar.critical-nav{min-height:74px}.public-nav-toggle{display:grid;place-items:center;margin-left:auto}.critical-nav .main-nav{display:none;position:absolute;left:18px;right:18px;top:72px;flex-direction:column;align-items:stretch;padding:14px;border:1px solid var(--p2-line);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 22px 55px rgba(7,39,67,.16)}.critical-nav.nav-open .main-nav{display:flex}.critical-nav .main-nav>a{padding:13px 14px}.critical-nav .nav-evos:before{display:none}.critical-nav .nav-primary-cta{margin:8px 0 0!important;text-align:center}.about-stable .stable-hero{grid-template-columns:1fr}.about-stable .stable-visual-card{min-height:390px}.contact-shell{min-height:auto;padding-top:55px}.geo-contact-grid{grid-template-columns:1fr}.geo-phone-row{grid-template-columns:1fr}}
@media(max-width:640px){.critical-nav .brand{min-width:0}.critical-nav .brand strong{font-size:.78rem}.critical-nav .brand small{display:none}.brand-since{display:none!important}.contact-intro h1{font-size:clamp(2.75rem,12vw,4rem)}.portal-form{padding:23px 18px}.geo-contact-grid{padding:14px}.public-proof-ribbon{grid-template-columns:1fr}.public-proof-ribbon>span,.public-proof-ribbon>article{border-right:0!important;border-bottom:1px solid var(--p2-line)}.public-proof-ribbon>span:last-child,.public-proof-ribbon>article:last-child{border-bottom:0}.portal-footer{padding-top:50px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.service-visual-card,.stable-service-card,.cap-card,.authority-context-grid article,.maturity-dimension-grid article{transition:none!important}.btn:hover,.service-visual-card:hover,.stable-service-card:hover,.cap-card:hover,.authority-context-grid article:hover,.maturity-dimension-grid article:hover{transform:none!important}}
@media(min-width:1440px){.authority-e13 .authority-shell{width:min(1500px,calc(100% - 120px))}.authority-e13 .authority-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(440px,.7fr);gap:clamp(60px,6vw,110px)}.authority-e13 .authority-hero-panel{min-height:520px}}
