/* cableadoestructurado.mx — V2.2 premium visual layer */
:root{--v22-blue-glow:rgba(11,92,255,.24);--v22-soft:#edf5ff;--v22-deep:#051a3e}
body{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.site-header{mix-blend-mode:normal}.site-header.scrolled{background:rgba(255,255,255,.91);box-shadow:0 12px 40px rgba(10,50,110,.07)}
.hero-v22{min-height:100svh;grid-template-columns:minmax(0,.94fr) minmax(480px,1.06fr);gap:4vw;background:linear-gradient(105deg,#fff 0%,#fff 47%,#f4f8ff 47%,#edf5ff 100%)}
.hero-v22:before{opacity:.7;background-size:88px 88px}.hero-v22:after{right:-6vw;top:-12vw;width:60vw;height:60vw;background:radial-gradient(circle,rgba(24,160,251,.19),rgba(11,92,255,.05) 45%,transparent 70%)}
.hero-v22 .hero-copy{max-width:760px}.hero-v22 h1{font-size:clamp(58px,6vw,104px);max-width:920px}.hero-v22 .hero-copy>p{max-width:650px}
.hero-photo-stage{min-height:650px;align-items:center;justify-content:center}.hero-photo-shell{position:relative;width:min(100%,760px);height:clamp(480px,62vh,680px);border-radius:36px;overflow:hidden;box-shadow:0 38px 110px rgba(7,27,58,.22);border:1px solid rgba(255,255,255,.7);isolation:isolate;transform:perspective(1200px) rotateY(-2.5deg)}
.hero-photo-shell:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(4,25,62,.02),rgba(4,25,62,.22) 75%,rgba(4,25,62,.55));pointer-events:none}.hero-photo-shell:after{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.25);border-radius:24px;z-index:3;pointer-events:none}
.hero-photo-shell img{width:100%;height:100%;object-fit:cover;animation:none!important;filter:none!important;will-change:transform;transform:scale(1.06)}
.hero-photo-scan{position:absolute;z-index:4;left:0;right:0;height:1px;top:18%;background:linear-gradient(90deg,transparent,rgba(117,205,255,.95),transparent);box-shadow:0 0 24px rgba(74,178,255,.9);animation:v22scan 7s ease-in-out infinite;opacity:.8}
.hero-photo-index{position:absolute;z-index:5;left:38px;right:38px;bottom:32px;display:flex;justify-content:space-between;align-items:end;color:#fff}.hero-photo-index span{font-size:9px;letter-spacing:.22em}.hero-photo-index strong{font-size:12px;letter-spacing:.14em}
.hero-v22 .visual-halo{width:76%;opacity:.6;transform:translate(9%,-2%)}.hero-v22 .signal-card{z-index:8;border-color:rgba(255,255,255,.48);box-shadow:0 18px 55px rgba(7,27,58,.18)}.hero-v22 .signal-card-a{left:-2%;top:18%}.hero-v22 .signal-card-b{right:-1%;top:48%}.hero-v22 .signal-card-c{left:7%;bottom:9%}
@keyframes v22scan{0%,100%{top:15%;opacity:.15}50%{top:82%;opacity:.9}}
.v22-intro{padding-bottom:90px}.v22-intro .statement h2{font-size:clamp(44px,5.25vw,82px)}
.capability-experience{position:relative;padding:30px 0 120px;background:linear-gradient(180deg,#fff,#f6faff 78%,#fff);overflow:hidden}.capability-experience:before{content:"";position:absolute;left:5vw;top:10%;width:1px;height:75%;background:linear-gradient(transparent,rgba(11,92,255,.25),transparent)}
.capability-heading{display:grid;grid-template-columns:.35fr 1.1fr .7fr;gap:5vw;align-items:end;padding-bottom:55px}.capability-heading h2{font-size:clamp(42px,5vw,78px);line-height:.98;letter-spacing:-.055em;color:var(--navy);font-weight:540;margin:0}.capability-heading p{font-size:16px;color:var(--muted);margin:0 0 4px}
.capability-rail{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.capability-panel{border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 22px 70px rgba(16,64,130,.08);min-height:520px;display:flex;flex-direction:column;position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}.capability-panel:hover{transform:translateY(-8px);box-shadow:0 32px 90px rgba(16,64,130,.15)}
.capability-panel:nth-child(1){grid-column:span 7}.capability-panel:nth-child(2){grid-column:span 5}.capability-panel:nth-child(3){grid-column:span 5}.capability-panel:nth-child(4){grid-column:span 7}.capability-panel:nth-child(5){grid-column:3/span 8}
.capability-photo{height:310px;position:relative;overflow:hidden;background:#eaf3ff}.capability-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,27,58,.22))}.capability-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease)}.capability-panel:hover .capability-photo img{transform:scale(1.055)}.capability-number{position:absolute;z-index:2;top:22px;left:22px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);font-size:10px;color:var(--primary);font-weight:800;box-shadow:0 12px 30px rgba(7,27,58,.12)}
.capability-copy{padding:26px 28px 30px}.capability-copy>span{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--primary);font-weight:800}.capability-copy h3{font-size:clamp(27px,2.4vw,39px);line-height:1;letter-spacing:-.04em;color:var(--navy);margin:10px 0 12px}.capability-copy p{color:var(--muted);font-size:13px;max-width:720px}.capability-copy .service-tags{margin-top:20px}
.immersive-stage{position:relative;min-height:92svh;display:flex;align-items:stretch;overflow:hidden;background:var(--v22-deep);isolation:isolate}.immersive-media{position:absolute;inset:0}.immersive-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04);transform:scale(1.02)}.immersive-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,21,53,.95) 0%,rgba(4,21,53,.82) 42%,rgba(4,21,53,.35) 72%,rgba(4,21,53,.22) 100%),linear-gradient(180deg,rgba(5,26,62,.12),rgba(5,26,62,.55))}.immersive-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:92px 92px;mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.65) 70%,transparent)}
.immersive-content{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:1.2fr .65fr;gap:9vw;align-items:end;padding-top:140px;padding-bottom:110px;color:#fff}.eyebrow.light{color:#b9d3ff}.immersive-copy h2{font-size:clamp(52px,6.2vw,102px);line-height:.91;letter-spacing:-.065em;font-weight:520;max-width:980px;margin:22px 0 26px;color:#fff}.immersive-copy p{font-size:17px;line-height:1.65;color:#c8d7ed;max-width:700px;margin:0 0 34px}.immersive-stats{align-self:end;border-top:1px solid rgba(255,255,255,.22)}.immersive-stats>div{display:grid;grid-template-columns:115px 1fr;align-items:center;min-height:92px;border-bottom:1px solid rgba(255,255,255,.18)}.immersive-stats strong{font-size:32px;letter-spacing:-.04em;color:#fff}.immersive-stats span{font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.13em;color:#a9c1df}
.v22-process{margin-top:0;border-radius:0;max-width:none;padding-left:max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)));padding-right:max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)));background:linear-gradient(135deg,#061d46,#0a3574 72%,#0b5cff)}.v22-process .showcase-grid{max-width:var(--max);margin:auto}.v22-process .section-label{color:#9bbcff}.v22-process .showcase-copy h2{color:#fff}.v22-process .showcase-copy p{color:#bcd0eb}
.v22-projects{padding-bottom:130px}.project-cinematic-grid{display:grid;grid-template-columns:1.18fr .82fr;grid-template-rows:repeat(2,minmax(310px,1fr));gap:18px}.project-cinema-card{position:relative;border-radius:28px;overflow:hidden;min-height:330px;background:#071b3a;box-shadow:0 25px 75px rgba(9,42,90,.12);isolation:isolate}.project-cinema-1{grid-row:span 2;min-height:700px}.project-cinema-media,.project-cinema-media img,.project-cinema-shade{position:absolute;inset:0}.project-cinema-media img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}.project-cinema-shade{background:linear-gradient(180deg,rgba(5,23,55,.02) 20%,rgba(5,23,55,.3) 55%,rgba(5,23,55,.94) 100%)}.project-cinema-card:hover .project-cinema-media img{transform:scale(1.055)}.project-cinema-copy{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}.project-cinema-copy .project-card-top{color:#b4cae8}.project-cinema-copy h3{font-size:clamp(25px,2.5vw,42px);line-height:1.02;color:#fff;margin:13px 0 10px;max-width:700px}.project-cinema-copy p{color:#d0def0;max-width:680px;margin:0;font-size:13px}.project-cinema-copy .project-metrics span{background:rgba(255,255,255,.11);color:#fff;border-color:rgba(255,255,255,.24);backdrop-filter:blur(10px)}
.v22-cta{overflow:hidden;background:linear-gradient(135deg,#f4f9ff,#fff 55%,#eaf3ff);border-color:rgba(11,92,255,.18)}.v22-cta:before{content:"";position:absolute;right:-100px;top:-180px;width:480px;height:480px;border-radius:50%;border:1px solid rgba(11,92,255,.15);box-shadow:0 0 0 70px rgba(11,92,255,.025),0 0 0 140px rgba(11,92,255,.018)}
.page-hero-photo{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:5vw;align-items:center!important;padding-top:140px!important;padding-bottom:70px!important;background:linear-gradient(105deg,#fff 0%,#fff 51%,#f0f6ff 51%,#eaf3ff 100%)}.page-hero-photo .page-hero-copy{max-width:850px}.page-hero-photo .page-hero-media{position:relative;z-index:2;height:min(58vh,560px);border-radius:30px;overflow:hidden;box-shadow:0 32px 90px rgba(7,27,58,.18);border:1px solid rgba(255,255,255,.8)}.page-hero-photo .page-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(7,27,58,.22))}.page-hero-photo .page-hero-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--ease)}.page-hero-photo:hover .page-hero-media img{transform:scale(1.025)}.page-hero-photo .page-index{z-index:3;color:rgba(11,92,255,.12)}
@media(max-width:1100px){.hero-v22{grid-template-columns:1fr .88fr}.hero-photo-stage{min-height:540px}.hero-photo-shell{height:520px}.capability-heading{grid-template-columns:.3fr 1fr}.capability-heading p{grid-column:2}.capability-panel:nth-child(n){grid-column:span 6}.capability-panel:nth-child(5){grid-column:3/span 8}.immersive-content{grid-template-columns:1fr .55fr}.page-hero-photo{grid-template-columns:1fr .8fr}}
@media(max-width:900px){.hero-v22{grid-template-columns:1fr;background:linear-gradient(180deg,#fff 0%,#f4f8ff 100%)}.hero-photo-stage{min-height:520px}.hero-photo-shell{width:100%;height:500px;transform:none}.capability-heading{grid-template-columns:1fr;gap:18px}.capability-heading p{grid-column:auto;max-width:720px}.capability-panel:nth-child(n){grid-column:span 12;display:grid;grid-template-columns:.9fr 1.1fr;min-height:310px}.capability-photo{height:100%}.immersive-content{grid-template-columns:1fr;gap:60px}.immersive-stats{max-width:620px}.project-cinematic-grid{grid-template-columns:1fr;grid-template-rows:none}.project-cinema-1{grid-row:auto;min-height:520px}.project-cinema-card{min-height:420px}.page-hero-photo{grid-template-columns:1fr;padding-top:125px!important}.page-hero-photo .page-hero-media{height:420px}.page-hero-photo .page-index{top:auto;bottom:20px}}
@media(max-width:650px){.hero-v22{padding-bottom:45px}.hero-photo-stage{min-height:400px;margin-top:28px}.hero-photo-shell{height:390px;border-radius:24px}.hero-photo-shell:after{inset:12px;border-radius:17px}.hero-photo-index{left:23px;right:23px;bottom:20px}.hero-v22 .signal-card{transform:scale(.75)}.hero-v22 .signal-card-a{left:-8%;top:15%}.hero-v22 .signal-card-b{right:-8%;top:47%}.hero-v22 .signal-card-c{left:1%;bottom:3%}.capability-experience{padding-bottom:85px}.capability-heading{padding-bottom:32px}.capability-panel:nth-child(n){display:flex;min-height:0}.capability-photo{height:235px}.capability-copy{padding:23px}.immersive-stage{min-height:auto}.immersive-content{padding-top:105px;padding-bottom:85px}.immersive-copy h2{font-size:clamp(45px,13vw,68px)}.immersive-stats>div{grid-template-columns:95px 1fr}.project-cinema-1,.project-cinema-card{min-height:460px}.project-cinema-copy{left:22px;right:22px;bottom:22px}.project-cinema-copy p{display:none}.page-hero-photo{min-height:auto!important;padding-bottom:55px!important}.page-hero-photo .page-hero-media{height:300px;border-radius:22px}.page-hero-photo .page-index{display:none}}

/* Inner-page refinement */
.projects-page .project-card{padding:12px;border-radius:24px;box-shadow:0 20px 65px rgba(13,52,105,.07)}.projects-page .project-card-large .project-image{height:340px;border-radius:18px}.projects-page .project-card h3,.projects-page .project-card p,.projects-page .project-card .project-card-top,.projects-page .project-card .project-metrics{margin-left:8px;margin-right:8px}.projects-page .project-card .project-metrics{margin-bottom:10px}
.client-wall{padding-top:30px}.client-logo-grid{border:1px solid var(--line);border-radius:28px;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fbff)}.client-logo{background:rgba(255,255,255,.7);transition:.35s var(--ease)}.client-logo:hover{background:#fff;box-shadow:inset 0 0 0 1px rgba(11,92,255,.12)}.client-glyph{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#eef5ff;font-size:13px;color:var(--primary);font-weight:800}.sector-grid article{border-radius:24px;background:linear-gradient(145deg,#fff,#f8fbff);transition:.35s var(--ease)}.sector-grid article:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(13,52,105,.08);border-color:rgba(11,92,255,.18)}
.mv-card{border-radius:30px;overflow:hidden;position:relative}.mv-card:first-child{background:linear-gradient(145deg,#f2f7ff,#fff)}.mv-card:last-child{background:linear-gradient(145deg,#071b3a,#0b397a);color:#fff}.mv-card:last-child h2{color:#fff}.mv-card:last-child p{color:#bed0e9}.mv-card:last-child>span{color:#8bb5ff}.value-card{border-radius:22px;transition:.35s var(--ease)}.value-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(13,52,105,.08)}
.contact-form-wrap{border-radius:30px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 30px 100px rgba(13,52,105,.09)}.response-card{border-radius:20px;background:linear-gradient(135deg,#eef5ff,#f9fcff)}
@media(max-width:650px){.projects-page .project-card-large .project-image{height:270px}.client-logo-grid{border-radius:20px}.mv-card{border-radius:24px}}
