    :root{
      --ink:#000009;
      --blue:#0C8FD3;
      --blue-2:#2F9CD2;
      --blue-3:#7BC4E8;
      --blue-light:#EAF6FF;
      --deep:#062E4F;
      --green:#8DE590;
      --green-strong:#58C25F;
      --red:#ED254E;
      --paper:#F7FAFD;
      --surface:#FFFFFF;
      --line:#DDE7F0;
      --muted:#5A6475;
      --soft:#F1F5FA;
      --shadow:0 26px 70px -34px rgba(6,46,79,.42);
      --sans:'Montserrat',system-ui,-apple-system,Segoe UI,sans-serif;
      --serif:'Libre Baskerville',Georgia,serif;
      --baskerville:'Libre Baskerville';
    }

    .libre-baskerville-uno {
      font-family: "Libre Baskerville", serif;
      font-optical-sizing: auto;
      font-weight: 500;
      font-style: normal;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background:var(--surface);
      color:var(--ink);
      font-family:var(--sans);
      line-height:1.55;
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
    }
    a{text-decoration:none;color:inherit}
    .wrap{max-width:1180px;margin:0 auto;padding:0 28px}

    .nav{
      position:sticky;top:0;z-index:20;
      background:rgba(255,255,255,.9);
      backdrop-filter:saturate(140%) blur(12px);
      border-bottom:1px solid var(--line);
    }
    .nav-in{height:72px;display:flex;align-items:center;justify-content:space-between}
    .logo{font-weight:900;font-size:27px;letter-spacing:-.04em;color:var(--ink)}
    .nav-links{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:700;color:var(--muted)}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;
      border:none;border-radius:999px;padding:14px 24px;
      background:var(--blue);color:#fff;font-weight:800;font-size:15px;
      box-shadow:0 12px 28px -12px rgba(12,143,211,.9);
      cursor:pointer;transition:.2s ease;
    }
    .btn:hover{transform:translateY(-2px);background:#0A7FBD}
    .btn.ghost{background:#fff;color:var(--blue);border:1px solid var(--line);box-shadow:none}

    .kicker{
      display:flex;align-items:center;gap:10px;
      margin:0 0 16px;
      color:var(--blue);
      text-transform:uppercase;
      letter-spacing:.18em;
      font-size:12px;
      font-weight:900;
    }
    .kicker:before{
      content:"";width:15px;height:17px;background:currentColor;display:inline-block;
      clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);
    }
    .kicker.green{color:var(--green-strong)}
    .kicker.red{color:var(--red)}

    /* TITULOS */
    h1,h2,h3{margin:0;color:var(--ink);}
    h1{
      font-size:clamp(42px,5.8vw,76px);
      font-weight:900;
      margin-bottom:20px;
      line-height:1.1;
      letter-spacing:0;
    }
    h2{
      font-size:clamp(32px,4.4vw,56px);font-weight:900;margin-bottom:16px;
      line-height:1.08;letter-spacing:-.035em;
    }
    h3{font-size:24px;font-weight:900;margin-bottom:10px;
      font-family:var(--baskerville);
      line-height:1.08;letter-spacing:-.035em;
    }
    p{margin:0;color:var(--muted);font-size:17px}
    .lead{font-size:20px;max-width:55ch;margin-bottom:30px}
    .section-head{max-width:930px;margin-bottom:52px}
    .section-head.center{text-align:center;margin-left:auto;margin-right:auto}
    .section-head .sub{max-width:72ch}

    .hero{
      background:radial-gradient(120% 100% at 85% 15%,rgba(12,143,211,.16),transparent 40%),
                 linear-gradient(180deg,#fff 0%,#F7FAFD 100%);
      padding:86px 0 72px;
    }
    .hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:56px;align-items:center}
    .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
    .hero-card{
      border:1px solid var(--line);
      background:#fff;
      border-radius:24px;
      padding:22px;
      box-shadow:var(--shadow);
    }
    .mini-browser{height:16px;display:flex;gap:6px;margin-bottom:16px}
    .mini-browser span{width:9px;height:9px;border-radius:50%;background:#D5E2EE}
    .hero-card img{width:100%;display:block;border-radius:16px;border:1px solid var(--line)}

    /* section{padding:90px 0} */

    /* Unified prospect generator + Prismax traceability section */
    .unified-flow{
      background:#F7FAFD;
      padding:92px 0;
    }

    .value-map{
      background:#fff;
      border:1px solid var(--line);
      border-radius:24px;
      padding:54px 44px 46px;
      box-shadow:0 24px 70px -42px rgba(6,46,79,.45);
      position:relative;
      overflow:hidden;
    }

    .value-map:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 18% 26%,rgba(141,229,144,.16),transparent 23%),
        radial-gradient(circle at 82% 24%,rgba(12,143,211,.12),transparent 24%);
      pointer-events:none;
    }

    .map-title{
      position:relative;
      text-align:center;
      margin-bottom:38px;
      z-index:2;
    }
    .map-title h3{
      font-family:var(--serif);
      font-size:clamp(13px,3.5vw,40px);
      margin-bottom:10px;
      letter-spacing:-.025em;
      white-space:nowrap;
    }
    @media(max-width:680px){
      .value-map{padding:34px 14px 30px!important}
    }
    .map-kicker-wrap{
      display:inline-block;
      margin:0 auto 22px;
    }
    .map-kicker{
      font-family:var(--serif);
      font-weight:800;
      font-size:clamp(34px,4.6vw,52px);
      color:var(--ink);
      letter-spacing:-.02em;
      line-height:1.1;
      white-space:nowrap;
    }
    @media(max-width:680px){
      .map-kicker{font-size:clamp(22px,7vw,34px);white-space:normal;text-align:center}
      .map-kicker-wrap{max-width:100%}
    }
    .map-kicker-bar{
      width:100%;
      height:4px;
      border-radius:999px;
      background:var(--ink);
      margin-top:8px;
    }
    .map-title p{
      max-width:760px;
      margin:0 auto;
      font-weight:600;
    }

    .grouped-flow{
      position:relative;
      z-index:2;
      display:grid;
      grid-template-columns:2fr 4fr;
      gap:18px;
      align-items:stretch;
      width:100%;
    }

    .flow-group{
      border-radius:22px;
      padding:18px;
      display:flex;
      flex-direction:column;
      min-width:0;
    }

    .flow-group.generator{
      border:2px dashed var(--green-strong);
      background:rgba(141,229,144,.08);
    }

    .flow-group.trace{
      border:2px dashed var(--blue);
      background:rgba(12,143,211,.055);
    }

    .group-title{
      text-align:center;
      text-transform:uppercase;
      letter-spacing:.13em;
      font-size:12px;
      font-weight:900;
      margin-bottom:16px;
    }

    .flow-group.generator .group-title{color:#2C7D34}
    .flow-group.trace .group-title{color:var(--deep)}

    .flow-items{
      display:grid;
      align-items:stretch;
      gap:14px;
      min-width:0;
    }

    .flow-group.generator .flow-items{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .flow-group.trace .flow-items{
      grid-template-columns:repeat(4,minmax(0,1fr));
    }

    .flow-item{
      min-height:118px;
      border-radius:18px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      align-items:center;
      text-align:center;
      padding:16px 10px;
      box-shadow:0 16px 34px -26px rgba(6,46,79,.46);
      position:relative;
      min-width:0;
    }

    .flow-item strong{
      font-family:var(--serif);
      font-size:clamp(15px,1.35vw,20px);
      font-weight:800;
      line-height:1.08;
      margin-bottom:8px;
      color:var(--deep);
      white-space:normal;
    }
    .flow-item span{
      font-size:clamp(10px,.9vw,13px);
      font-weight:700;
      color:var(--deep);
      line-height:1.25;
    }

    .flow-item.generator{
      background:var(--green);
      border:1px solid rgba(44,125,52,.15);
    }
    .flow-item.prospect{
      background:var(--blue-light);
      border:1px solid #D9ECF8;
    }
    .flow-item.quote{background:var(--blue-3)}
    .flow-item.project{background:var(--blue-2)}
    .flow-item.income{background:var(--blue)}

    .flow-item.project strong,
    .flow-item.income strong,
    .flow-item.project span,
    .flow-item.income span{
      color:#fff;
    }

    .flow-item:not(:last-child):after{
      content:"→";
      position:absolute;
      right:-14px;
      top:50%;
      transform:translate(50%,-50%);
      color:var(--blue);
      font-size:22px;
      font-weight:800;
      z-index:5;
    }

    .flow-group.generator .flow-item:last-child:after{
      content:"→";
      position:absolute;
      right:-32px;
      top:50%;
      transform:translate(50%,-50%);
      color:var(--blue);
      font-size:24px;
      font-weight:800;
      z-index:8;
    }

    .map-footer{
      position:relative;
      z-index:2;
      margin-top:32px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:22px;
      align-items:stretch;
    }

    .map-note{
      border-radius:18px;
      padding:22px;
      border:1px solid var(--line);
      background:#fff;
    }
    .map-note.generator{
      border-color:rgba(88,194,95,.45);
      background:linear-gradient(180deg,rgba(141,229,144,.18),#fff);
    }
    .map-note.trace{
      border-color:rgba(12,143,211,.38);
      background:linear-gradient(180deg,rgba(12,143,211,.10),#fff);
    }
    .map-note b{
      display:block;
      margin-bottom:8px;
      font-size:16px;
      color:var(--ink);
    }
    .map-note p{
      font-size:14.5px;
      font-weight:600;
    }


    /* proof section */
    .proof{
      background:#fff;
      padding:90px 0;
    }
    .proof-stack{display:grid;gap:52px}
    .proof-row{
      display:grid;
      grid-template-columns:.82fr 1.18fr;
      gap:48px;
      align-items:center;
    }
    .proof-row.reverse{grid-template-columns:1.18fr .82fr}
    .proof-row.reverse .proof-copy{order:2}
    .proof-row.reverse .proof-visual{order:1}

    .proof-tag{
      display:block;
      text-transform:uppercase;
      letter-spacing:.12em;
      font-size:12px;
      font-weight:900;
      margin-bottom:12px;
    }
    .blue{color:var(--blue)}
    .green-text{color:#2C7D34}
    .red{color:var(--red)}

    .proof-copy p{max-width:42ch}

    .ui-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      padding:22px 22px 24px;
      box-shadow:var(--shadow);
    }
    .ui-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px;flex-wrap:wrap}
    .ui-title{font-weight:900;font-size:14px;display:flex;align-items:center;gap:8px;color:var(--ink)}
    .ui-title:before{
      content:"";width:14px;height:16px;background:var(--blue);display:inline-block;flex:none;
      clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);
    }
    .ui-kpi{font-size:13px;color:var(--muted)}
    .ui-kpi b{color:var(--ink);font-size:15px;font-weight:900}

    .status{display:grid;grid-template-columns:140px 1fr 92px;gap:12px;align-items:center;padding:8px 0}
    .status .label{font-size:13px;font-weight:700;color:#273142}
    .track{height:12px;background:var(--soft);border-radius:999px;overflow:hidden}
    .fill{height:100%;border-radius:999px;background:var(--blue)}
    .amt{font-size:13px;font-weight:900;text-align:right}

    table.matrix{width:100%;border-collapse:collapse;font-size:13px}
    .matrix th,.matrix td{padding:10px 10px;text-align:right;white-space:nowrap}
    .matrix th:first-child,.matrix td:first-child{text-align:left}
    .matrix th{
      font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;
      border-bottom:1px solid var(--line);font-weight:800
    }
    .matrix td:first-child{font-weight:800;color:#2C3545}
    .matrix tbody tr:not(:last-child) td{border-bottom:1px solid #F0F3F8}
    .matrix .total td{border-top:2px solid var(--line);font-weight:900;color:var(--ink);padding-top:12px}
    .pill{display:inline-block;border-radius:7px;padding:4px 9px;font-weight:900}
    .pill.fact{background:rgba(12,143,211,.12);color:#0A6FA3}
    .pill.pend{background:rgba(237,37,78,.10);color:#C01B3C}
    .pill.ok{background:rgba(141,229,144,.28);color:#256E2C}
    .dash{color:#AAB2C0;font-weight:700}

    .chart{width:100%;height:auto;display:block}
    .legend{display:flex;gap:20px;margin-top:14px;font-size:12.5px;color:var(--muted);font-weight:700}
    .legend i{width:11px;height:11px;display:inline-block;border-radius:3px;margin-right:6px;vertical-align:-1px}

    .screens-real{background:var(--paper)}
    .screens-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
    .screen{
      background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px;
      box-shadow:0 18px 50px -32px rgba(6,46,79,.45)
    }
    .screen img{width:100%;display:block;border-radius:14px;border:1px solid var(--line)}
    .screen h3{font-size:20px;margin:16px 6px 6px}
    .screen p{font-size:14px;margin:0 6px 10px}

    
    .fit h2,.fit h3{color:#fff}
    .fit p{color:rgba(255,255,255,.82)}
    .fit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
    .fit-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.20);border-radius:18px;padding:22px}
    .fit-card h3{font-size:20px}

    /* Cards "¿Prismax es para tu empresa?" — icono en círculo, todo centrado, texto más grande */
    #foryou .fit-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:15px;padding:30px 22px}
    #foryou .fit-icon{margin:0 auto;align-self:center;width:62px;height:62px;min-width:62px}
    #foryou .fit-icon svg{width:29px;height:29px}
    #foryou .fit-card h3{margin:0}
    #foryou .fit-card p{margin:0;font-size:17.5px;line-height:1.55}

    .cta-section{background:#fff}
    .cta{
      background:#062E4F;
      color:#fff;
      border-radius:32px;
      padding:54px;
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:34px;
      align-items:center;
    }
    .cta h2{color:#fff}
    .cta p{color:rgba(255,255,255,.82)}
    form{background:#fff;border-radius:22px;padding:24px;color:var(--ink)}
    input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 15px;font:inherit;margin-bottom:12px}
    textarea{min-height:96px;resize:vertical}
    .note{font-size:12px;margin-top:12px;color:var(--muted)}

    footer{border-top:1px solid var(--line);padding:34px 0;color:var(--muted)}
    .foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

    @media(max-width:1060px){
      .value-map{padding:44px 24px 40px}
      .grouped-flow{grid-template-columns:2fr 4fr;gap:12px}
      .flow-group{padding:14px}
      .flow-items{gap:10px}
      .flow-item{min-height:104px;padding:12px 8px}
      .flow-item:not(:last-child):after{right:-10px;font-size:18px}
      .flow-group.generator .flow-item:last-child:after{right:-23px;font-size:20px}
    }

    @media(max-width:920px){
      .hero-grid,.proof-row,.proof-row.reverse,.cta{grid-template-columns:1fr}
      .proof-row.reverse .proof-copy,.proof-row.reverse .proof-visual{order:initial}
      .screens-grid{grid-template-columns:1fr}
      .fit-grid{grid-template-columns:1fr 1fr}
      .map-footer{grid-template-columns:1fr}
      .nav-links a:not(.btn){display:none}
    }

    @media(max-width:680px){
      .wrap{padding:0 20px}
      .hero{padding:58px 0}
      section{padding:64px 0}
      .value-map{padding:28px 10px}
      .grouped-flow{grid-template-columns:2fr 4fr;gap:6px}
      .flow-group{border-radius:16px;padding:8px}
      .group-title{font-size:8px;letter-spacing:.08em;margin-bottom:8px}
      .flow-items{gap:5px}
      .flow-item{min-height:78px;border-radius:12px;padding:8px 4px}
      .flow-item strong{font-size:10px;margin-bottom:4px}
      .flow-item span{font-size:7px}
      .flow-item:not(:last-child):after{right:-5px;font-size:12px}
      .flow-group.generator .flow-item:last-child:after{right:-13px;font-size:13px}
      .map-footer{grid-template-columns:1fr}
      .chain-line{font-size:12px}
      .status{grid-template-columns:105px 1fr 78px;gap:8px}
      .fit-grid{grid-template-columns:1fr}
      .cta{padding:32px 20px}
    }
  
    /* Optimized unified proof section */
    .proof-optimized .trace-stack{
      display:grid;
      grid-template-columns:minmax(0,1fr);
      gap:64px;
    }

    .trace-row{
      display:grid;
      grid-template-columns:.72fr 1.28fr;
      gap:46px;
      align-items:center;
    }

    .trace-row.reverse{
      grid-template-columns:1.28fr .72fr;
    }

    .trace-row.reverse .trace-copy{order:2}
    .trace-row.reverse .dash-card{order:1}

    .trace-copy h3{
      font-size:clamp(25px,2.6vw,34px);
      margin-bottom:12px;
      letter-spacing:-.025em;
    }

    .trace-copy p{
      font-size:16px;
      line-height:1.65;
      max-width:42ch;
    }

    .dash-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:24px;
      padding:26px;
      box-shadow:0 26px 70px -34px rgba(6,46,79,.42);
      overflow:hidden;
    }

    .dash-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      flex-wrap:wrap;
      margin-bottom:22px;
    }

    .dash-title{
      display:flex;
      align-items:center;
      gap:10px;
      color:var(--ink);
      font-weight:900;
      font-size:18px;
      letter-spacing:-.015em;
    }

    .hex{
      width:16px;
      height:18px;
      background:var(--blue);
      display:inline-block;
      clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);
      flex:none;
    }

    .dash-kpi{
      color:var(--muted);
      font-size:14px;
      font-weight:600;
    }

    .dash-kpi b{
      color:var(--ink);
      font-weight:900;
      font-size:18px;
      margin-left:4px;
    }

    .dash-question{
      margin:4px 0 18px;
      font-size:22px;
      color:var(--deep);
      letter-spacing:-.02em;
    }

    .table-wrap{
      width:100%;
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }

    .heat-table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      color:var(--deep);
      font-size:14px;
      min-width:780px;
    }

    .heat-table th{
      text-align:center;
      font-weight:900;
      color:var(--deep);
      padding:12px 10px;
      border-bottom:1px solid var(--line);
      white-space:nowrap;
    }

    .heat-table th:first-child,
    .heat-table td:first-child{
      text-align:left;
    }

    .heat-table td{
      padding:13px 10px;
      text-align:center;
      border-bottom:1px solid #EDF2F7;
      font-weight:700;
      vertical-align:middle;
      white-space:nowrap;
    }

    .heat-table td:first-child{
      font-weight:900;
      color:var(--deep);
    }

    .cot-table tbody td:nth-child(n+2):nth-child(-n+6){
      border-left:1px solid #fff;
      border-right:1px solid #fff;
    }

    .project-table thead th{
      background:linear-gradient(180deg,#06345A,#062E4F);
      color:#fff;
      border-bottom:0;
    }

    .project-table thead th:first-child{
      border-top-left-radius:12px;
    }

    .project-table thead th:last-child{
      border-top-right-radius:12px;
    }

    .project-table .summary td{
      background:linear-gradient(180deg,#0C61A0,#0A4D83);
      color:#fff;
      font-weight:900;
      border-bottom:1px solid rgba(255,255,255,.18);
    }

    .project-table td:nth-child(2){
      text-align:left;
      color:#2F4360;
      font-weight:600;
      white-space:normal;
      min-width:170px;
    }

    .total-cell,
    .heat-table tfoot td{
      font-weight:900!important;
      color:var(--ink)!important;
      background:#fff!important;
    }

    .heat-table tfoot td{
      border-top:2px solid var(--line);
      border-bottom:0;
      padding-top:18px;
      font-size:15px;
    }

    .b1{background:#EFF7FE;color:#0B66A1!important}
    .b2{background:#DFF0FC;color:#0B66A1!important}
    .b3{background:#CFE8FA;color:#0B66A1!important}
    .b4{background:#B9DDF6;color:#075D9A!important}
    .b5{background:#A4D2F2;color:#064F85!important}
    .b6{background:#8FC8EF;color:#063F6E!important}
    .b7{background:#78BDEC;color:#04395F!important}
    .b8{background:#55ABE6;color:#033151!important}

    .overdue{
      background:#FFE3E8!important;
      color:#D8183D!important;
      font-weight:900!important;
    }

    .empty{
      color:#B5BFCC!important;
      background:#fff!important;
      font-weight:700!important;
    }

    @media(max-width:980px){
      .trace-row,
      .trace-row.reverse{
        grid-template-columns:1fr;
      }
      .trace-row.reverse .trace-copy,
      .trace-row.reverse .dash-card{
        order:initial;
      }
    }

    @media(max-width:680px){
      .dash-card{
        padding:18px;
        border-radius:18px;
      }
      .dash-title{
        font-size:16px;
      }
      .dash-kpi b{
        font-size:16px;
      }
      .heat-table{
        font-size:12px;
        min-width:720px;
      }
    }

  
    /* Clean horizontal arrows for Generador + Trazabilidad */
    .clean-arrows.grouped-flow{
      grid-template-columns:minmax(245px, 1.95fr) 28px minmax(520px, 4.05fr);
      gap:8px;
      align-items:stretch;
    }

    .clean-arrows .flow-items{
      display:grid;
      align-items:center;
      gap:8px;
      width:100%;
    }

    .clean-arrows .flow-items-2{
      grid-template-columns:minmax(82px,1fr) 18px minmax(82px,1fr);
    }

    .clean-arrows .flow-items-4{
      grid-template-columns:minmax(92px,1fr) 18px minmax(92px,1fr) 18px minmax(92px,1fr) 18px minmax(92px,1fr);
    }

    .clean-arrows .flow-item:after,
    .clean-arrows .flow-group.generator .flow-item:last-child:after{
      display:none!important;
      content:none!important;
    }

    .flow-connector,
    .group-connector{
      color:var(--blue);
      font-size:20px;
      font-weight:900;
      display:flex;
      align-items:center;
      justify-content:center;
      line-height:1;
      opacity:.95;
    }

    .group-connector{
      padding-top:45px;
      font-size:22px;
    }

    .clean-arrows .flow-item{
      min-width:0;
      width:100%;
    }

    @media(max-width:1060px){
      .clean-arrows.grouped-flow{
        grid-template-columns:minmax(210px, 1.85fr) 22px minmax(430px, 4.15fr);
        gap:6px;
      }
      .clean-arrows .flow-items-2{
        grid-template-columns:minmax(68px,1fr) 14px minmax(68px,1fr);
      }
      .clean-arrows .flow-items-4{
        grid-template-columns:minmax(72px,1fr) 12px minmax(72px,1fr) 12px minmax(72px,1fr) 12px minmax(72px,1fr);
      }
      .flow-connector{font-size:16px}
      .group-connector{font-size:18px;padding-top:40px}
    }

    @media(max-width:680px){
      .clean-arrows.grouped-flow{
        grid-template-columns:minmax(116px, 1.9fr) 12px minmax(210px, 4.1fr)!important;
        gap:3px;
      }
      .clean-arrows .flow-group{
        padding:6px;
      }
      .clean-arrows .group-title{
        font-size:7px;
        letter-spacing:.055em;
        margin-bottom:6px;
        white-space:normal;
      }
      .clean-arrows .flow-items{
        gap:3px;
      }
      .clean-arrows .flow-items-2{
        grid-template-columns:minmax(47px,1fr) 7px minmax(47px,1fr);
      }
      .clean-arrows .flow-items-4{
        grid-template-columns:minmax(42px,1fr) 6px minmax(42px,1fr) 6px minmax(42px,1fr) 6px minmax(42px,1fr);
      }
      .flow-connector{
        font-size:9px;
      }
      .group-connector{
        font-size:10px;
        padding-top:31px;
      }
      .clean-arrows .flow-item{
        min-height:66px;
        padding:6px 3px;
        border-radius:10px;
      }
      .clean-arrows .flow-item strong{
        font-size:8.2px;
        line-height:1.02;
        margin-bottom:3px;
      }
      .clean-arrows .flow-item span{
        font-size:6.2px;
        line-height:1.1;
      }
    }

  
    /* FINAL: Horizontal-only value map. Keeps every step in one row. */
    .value-map{
      overflow:hidden;
    }

    .flow-scroll{
      position:relative;
      z-index:3;
      width:100%;
      overflow-x:auto;
      overflow-y:hidden;
      -webkit-overflow-scrolling:touch;
      padding:2px 0 6px;
    }

    .flow-scroll::-webkit-scrollbar{
      height:8px;
    }

    .flow-scroll::-webkit-scrollbar-track{
      background:#EEF5FB;
      border-radius:999px;
    }

    .flow-scroll::-webkit-scrollbar-thumb{
      background:#BBDDF3;
      border-radius:999px;
    }

    .horizontal-flow{
      display:flex!important;
      flex-direction:row!important;
      align-items:stretch!important;
      justify-content:center;
      gap:14px;
      min-width:960px;
      width:max-content;
      margin:0 auto;
    }

    .horizontal-flow .flow-group{
      flex:0 0 auto;
      border-radius:22px;
      padding:18px 16px;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
    }

    .horizontal-flow .flow-group.generator{
      width:315px;
      border:2px dashed var(--green-strong);
      background:rgba(141,229,144,.08);
    }

    .horizontal-flow .flow-group.trace{
      width:625px;
      border:2px dashed var(--blue);
      background:rgba(12,143,211,.055);
    }

    .horizontal-flow .group-title{
      text-align:center;
      text-transform:uppercase;
      letter-spacing:.13em;
      font-size:12px;
      font-weight:900;
      margin:0 0 16px;
      line-height:1.2;
      white-space:nowrap;
    }

    .horizontal-flow .generator .group-title{
      color:#2C7D34;
    }

    .horizontal-flow .trace .group-title{
      color:var(--deep);
    }

    .horizontal-flow .flow-row{
      display:flex!important;
      flex-direction:row!important;
      align-items:center!important;
      justify-content:center!important;
      gap:10px!important;
      flex-wrap:nowrap!important;
      width:100%;
    }

    .horizontal-flow .flow-item{
      width:132px!important;
      height:106px!important;
      min-height:106px!important;
      flex:0 0 132px!important;
      border-radius:16px!important;
      padding:12px 8px!important;
      display:flex!important;
      flex-direction:column!important;
      justify-content:center!important;
      align-items:center!important;
      text-align:center!important;
      box-shadow:0 16px 34px -26px rgba(6,46,79,.46);
      position:relative;
    }

    .horizontal-flow .flow-item strong{
      font-family:var(--serif);
      font-size:17px!important;
      font-weight:800;
      line-height:1.05;
      margin:0 0 7px!important;
      color:var(--deep);
      white-space:normal;
    }

    .horizontal-flow .flow-item span{
      font-size:11.5px!important;
      font-weight:800;
      line-height:1.2;
      color:var(--deep);
      white-space:normal;
    }

    .horizontal-flow .flow-item.generator{
      background:var(--green);
      border:1px solid rgba(44,125,52,.15);
    }

    .horizontal-flow .flow-item.prospect{
      background:var(--blue-light);
      border:1px solid #D9ECF8;
    }

    .horizontal-flow .flow-item.quote{
      background:var(--blue-3);
    }

    .horizontal-flow .flow-item.project{
      background:var(--blue-2);
    }

    .horizontal-flow .flow-item.income{
      background:var(--blue);
    }

    .horizontal-flow .flow-item.project strong,
    .horizontal-flow .flow-item.income strong,
    .horizontal-flow .flow-item.project span,
    .horizontal-flow .flow-item.income span{
      color:#fff;
    }

    .horizontal-flow .flow-item:after,
    .horizontal-flow .flow-group.generator .flow-item:last-child:after,
    .clean-arrows .flow-item:after,
    .clean-arrows .flow-group.generator .flow-item:last-child:after{
      display:none!important;
      content:none!important;
    }

    .horizontal-flow .flow-arrow{
      width:18px!important;
      flex:0 0 18px!important;
      color:var(--blue);
      font-size:19px;
      font-weight:900;
      line-height:1;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      transform:none!important;
      padding:0!important;
      margin:0!important;
    }

    .horizontal-flow .flow-arrow.bridge{
      align-self:center;
      margin-top:28px!important;
      width:22px!important;
      flex-basis:22px!important;
      font-size:22px;
    }

    @media(max-width:1060px){
      .horizontal-flow{
        justify-content:flex-start;
        margin:0;
      }
    }

    @media(max-width:680px){
      .horizontal-flow{
        min-width:890px;
        gap:10px;
      }

      .horizontal-flow .flow-group{
        padding:14px 12px;
        border-radius:18px;
      }

      .horizontal-flow .flow-group.generator{
        width:290px;
      }

      .horizontal-flow .flow-group.trace{
        width:585px;
      }

      .horizontal-flow .flow-item{
        width:122px!important;
        flex-basis:122px!important;
        height:96px!important;
        min-height:96px!important;
      }

      .horizontal-flow .flow-item strong{
        font-size:15px!important;
      }

      .horizontal-flow .flow-item span{
        font-size:10.5px!important;
      }
    }

  
    /* Final refinements: hero image replacement + tighter horizontal flow */
    .hero-card{
      display:flex;
      align-items:center;
      justify-content:center;
      min-height:420px;
      overflow:hidden;
    }

    .hero-card img{
      width:100%!important;
      max-height:430px!important;
      object-fit:contain!important;
      object-position:center center!important;
      border-radius:16px!important;
      border:0!important;
      background:#4289E6;
      display:block;
    }

    .horizontal-flow{
      gap:10px!important;
      min-width:0!important;
      width:100%!important;
    }

    .horizontal-flow .flow-group.generator{
      width:270px!important;
      flex:0 0 270px!important;
    }

    .horizontal-flow .flow-group.trace{
      width:auto!important;
      flex:1 1 auto!important;
      min-width:0!important;
    }

    .horizontal-flow .flow-group{
      padding:16px 12px!important;
    }

    .horizontal-flow .flow-row{
      gap:6px!important;
    }

    .horizontal-flow .flow-item{
      width:auto!important;
      flex:1 1 0!important;
      min-width:0!important;
      height:100px!important;
      min-height:100px!important;
      padding:10px 4px!important;
    }

    .horizontal-flow .flow-item strong{
      font-size:15.5px!important;
      margin-bottom:6px!important;
    }

    .horizontal-flow .flow-item span{
      font-size:10.8px!important;
    }

    .horizontal-flow .flow-arrow{
      width:12px!important;
      flex:0 0 12px!important;
      font-size:15px!important;
    }

    .horizontal-flow .flow-arrow.bridge{
      width:16px!important;
      flex-basis:16px!important;
      font-size:18px!important;
      margin-top:24px!important;
    }

    @media(max-width:680px){
      .hero-card{
        min-height:320px!important;
      }

      .hero-card img{
        max-height:320px!important;
      }

      .horizontal-flow{
        min-width:0!important;
        width:100%!important;
        gap:6px!important;
      }

      .horizontal-flow .flow-group.generator{
        width:auto!important;
        flex:1 1 0!important;
      }

      .horizontal-flow .flow-group.trace{
        width:auto!important;
        flex:2.2 1 0!important;
      }

      .horizontal-flow .flow-group{
        padding:10px 6px!important;
      }

      .horizontal-flow .flow-item{
        width:auto!important;
        flex:1 1 0!important;
        min-width:0!important;
        height:88px!important;
        min-height:88px!important;
        padding:8px 3px!important;
      }

      .horizontal-flow .flow-item strong{
        font-size:11px!important;
      }

      .horizontal-flow .flow-item span{
        font-size:8px!important;
      }

      .horizontal-flow .flow-arrow{
        width:8px!important;
        flex:0 0 8px!important;
        font-size:11px!important;
      }
    }

  
    /* V4 proof: compact, no horizontal scroll */
    .proof-v4 .trace-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:70px}
    .proof-v4 .trace-row{display:grid;grid-template-columns:.70fr 1.30fr;gap:42px;align-items:center}
    .proof-v4 .trace-row.reverse{grid-template-columns:1.30fr .70fr}
    .proof-v4 .trace-row.reverse .trace-copy{order:2}
    .proof-v4 .trace-row.reverse .dash-card{order:1}
    .proof-v4 .trace-copy h3{font-size:clamp(24px,2.6vw,34px);margin-bottom:12px;letter-spacing:-.025em}
    .proof-v4 .trace-copy p{font-size:16px;line-height:1.65;max-width:42ch}
    .no-scroll-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 26px 70px -34px rgba(6,46,79,.42);overflow:hidden}
    .dash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
    .dash-title{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:900;font-size:17px;letter-spacing:-.015em}
    .hex{width:16px;height:18px;background:var(--blue);display:inline-block;clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);flex:none}
    .dash-kpi{color:var(--deep);font-size:10.5px;font-weight:700;text-align:center}
    .dash-kpi b{display:block;color:var(--deep);font-weight:900;font-size:16px;margin-top:3px;white-space:nowrap}
    .ceo-kpi-row{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:8px}
    @media(max-width:900px){
      .ceo-head{flex-direction:column;align-items:stretch!important}
      .ceo-kpi-row{flex-wrap:nowrap;justify-content:space-between;max-width:none;gap:5px}
      .ceo-kpi-row .dash-kpi{min-width:0;flex:1 1 0;padding:8px 4px}
      .ceo-kpi-row .dash-kpi b{font-size:14px}
    }
    @media(max-width:680px){
      .ceo-kpi-row{gap:3px}
      .ceo-kpi-row .dash-kpi{padding:6px 2px;font-size:8.5px}
      .ceo-kpi-row .dash-kpi b{font-size:11px;margin-top:1px}
    }
    @media(max-width:480px){
      .ceo-kpi-row{gap:2px}
      .ceo-kpi-row .dash-kpi{padding:5px 1px;font-size:6.8px;border-radius:8px}
      .ceo-kpi-row .dash-kpi b{font-size:9px}
    }
    .ceo-kpi-row .dash-kpi{
      background:#F4F8FC;
      border:1px solid #DCE9F4;
      border-radius:12px;
      padding:8px 8px;
      width:100px;
      flex:0 0 100px;
      white-space:normal;
      line-height:1.2;
    }
    .ceo-legend{display:flex;flex-direction:column;gap:8px;margin-top:10px;align-items:flex-end}
    .ceo-legend-row{display:flex;gap:16px}
    .ceo-legend-chip{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--deep);white-space:nowrap;line-height:1}
    .ceo-legend-chip i{width:14px;height:14px;border-radius:4px;flex:none;display:inline-block;border:1px solid rgba(6,46,79,.12)}
    .dash-question{margin:2px 0 14px;font-size:20px;color:var(--deep);letter-spacing:-.02em}

    .summary-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:12px}
    .summary-strip div{border:1px solid var(--line);border-radius:12px;padding:9px 6px;text-align:center;background:#F7FBFF}
    .summary-strip span{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);line-height:1.1}
    .summary-strip b{display:block;margin-top:4px;font-size:14px;color:var(--deep);font-weight:900}
    .cot-summary div:nth-child(4),.project-summary div:nth-child(1){background:#EAF6FF;border-color:#BFE3F7}
    .project-summary div:nth-child(1){background:#FFE3E8;border-color:#FFC6D1}

    .fit-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:clamp(9px,.78vw,12px);color:var(--deep)}
    .fit-table th{background:linear-gradient(180deg,#06345A,#062E4F);color:#fff;text-align:center;font-weight:900;padding:9px 4px;border-right:1px solid rgba(255,255,255,.18);line-height:1.05}
    .fit-table th:first-child{border-top-left-radius:10px}
    .fit-table th:last-child{border-top-right-radius:10px;border-right:0}
    .fit-table td{text-align:center;padding:8px 4px;border-right:1px solid #fff;border-bottom:1px solid #EDF2F7;font-weight:800;line-height:1.12;word-break:normal;overflow:hidden}
    .fit-table td:first-child{text-align:left;color:var(--deep);font-weight:900}
    .fit-table td:last-child{font-weight:900;color:var(--ink);background:#fff}
    .cot-fit th:first-child,.cot-fit td:first-child{width:17%}
    .project-fit th:nth-child(1),.project-fit td:nth-child(1){width:15%}
    .project-fit th:nth-child(2),.project-fit td:nth-child(2){width:21%;text-align:left}
    .project-fit th:nth-child(3),.project-fit td:nth-child(3){width:10%}
    .project-fit th:nth-child(n+4),.project-fit td:nth-child(n+4){width:9%}

    .b1{background:#EFF7FE!important;color:#0B66A1!important}
    .b2{background:#DFF0FC!important;color:#0B66A1!important}
    .b3{background:#CFE8FA!important;color:#0B66A1!important}
    .b4{background:#B9DDF6!important;color:#075D9A!important}
    .b5{background:#A4D2F2!important;color:#064F85!important}
    .b6{background:#8FC8EF!important;color:#063F6E!important}
    .b7{background:#78BDEC!important;color:#04395F!important}
    .b8{background:#55ABE6!important;color:#033151!important}
    .overdue{background:#FFE3E8!important;color:#D8183D!important;font-weight:900!important}
    .empty{background:#fff!important;color:#B5BFCC!important}

    .chart-card .chart{width:100%;height:auto;max-height:275px}
    .legend{display:flex;gap:18px;margin-top:10px;font-size:12px;color:var(--muted);font-weight:800}
    .legend i{width:11px;height:11px;display:inline-block;border-radius:3px;margin-right:6px;vertical-align:-1px}

    .ceo-section{padding-top:18px}
    .ceo-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 26px 70px -34px rgba(6,46,79,.42);overflow:hidden}
    .ceo-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
    .ceo-head > div:first-child{flex:0 0 auto;min-width:0}
    .ceo-kicker{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);white-space:nowrap}
    .ceo-head h3{font-size:36px;margin:5px 0 0;color:var(--ink)}
    .ceo-grid{position:relative;padding-left:30px}
    .axis-label.operativo{position:absolute;left:0;top:60px;bottom:60px;writing-mode:vertical-rl;transform:rotate(180deg);background:var(--blue);color:#fff;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px;display:flex;align-items:center;justify-content:center;border-radius:12px;padding:10px 6px}
    .ceo-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:clamp(10px,.9vw,13px);overflow:hidden;border-radius:16px}
    .ceo-table th{background:#20364D;color:#fff;padding:6px 4px;font-weight:900;line-height:1.05;border-right:1px solid rgba(255,255,255,.20)}
    .ceo-table th:first-child{width:20%}
    .ceo-table td{padding:6px 4px;text-align:center;border-right:1px solid #fff;border-bottom:1px solid #EDF2F7;font-weight:900;color:var(--deep)}
    .ceo-table td:first-child.etapa-label{text-align:left;background:#1CA9ED;color:#001B34}
    .ceo-table .op{background:#CDEBFC}
    .ceo-table .ok{background:#2CCAC6;color:#003A3A}
    .ceo-table .risk{background:#F25B78;color:#fff}
    .ceo-table .warning{background:#FFD000;color:#06172C}
    .ceo-table .danger{background:#ED254E;color:#fff}
    .ceo-table tfoot td{background:#20364D!important;color:#fff!important;border-bottom:0}
    .ceo-table tfoot td:nth-child(4){color:#2CCAC6!important}
    .ceo-table tfoot td:nth-child(5){color:#2CCAC6!important}

    @media(max-width:980px){
      .proof-v4 .trace-row,.proof-v4 .trace-row.reverse{grid-template-columns:1fr}
      .proof-v4 .trace-row.reverse .trace-copy,.proof-v4 .trace-row.reverse .dash-card{order:initial}
      .proof-v4 .trace-copy p{max-width:100%}
    }
    @media(max-width:680px){
      .no-scroll-card,.ceo-card{padding:14px;border-radius:18px}
      .summary-strip{gap:4px}
      .summary-strip div{padding:7px 3px;border-radius:9px}
      .summary-strip span{font-size:7px}
      .summary-strip b{font-size:10px}
      .table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px}
      .table-scroll .fit-table{width:auto;min-width:460px;font-size:11px}
      .fit-table th{padding:8px 6px}
      .fit-table td{padding:7px 6px}
      .dash-title{font-size:14px}
      .dash-kpi{font-size:11px}
      .dash-kpi b{font-size:13px}
      .ceo-grid{padding-left:20px}
      .axis-label.operativo{font-size:8px;border-radius:8px}
      .ceo-head h3{font-size:26px}
    }

  
    /* CEO matrix visual upgrade */
    .ceo-section .section-head{
      margin-bottom:14px;
    }
    .ceo-section .section-head h2{
      font-size:clamp(24px,2.6vw,32px);
      margin-bottom:8px;
    }
    .ceo-section .section-head .sub{
      font-size:14px;
    }

    .ceo-card{
      background:linear-gradient(180deg,#FFFFFF 0%,#F9FCFF 100%)!important;
      border:2px solid var(--deep)!important;
      border-radius:22px!important;
      padding:16px!important;
      box-shadow:0 30px 80px -42px rgba(6,46,79,.52)!important;
    }

    .ceo-head{
      align-items:flex-start!important;
      padding-bottom:8px;
      border-bottom:1px solid #E2EEF8;
      margin-bottom:10px!important;
    }

    .ceo-kicker{
      color:var(--blue)!important;
    }

    .ceo-head h3{
      color:var(--deep)!important;
      font-size:24px!important;
      letter-spacing:-.03em;
    }

    .ceo-grid{
      padding-left:34px!important;
    }

    .axis-label.operativo{
      background:var(--blue)!important;
      color:#fff!important;
      box-shadow:0 12px 24px -16px rgba(12,143,211,.8);
    }

    .ceo-table{
      border-radius:18px!important;
      overflow:hidden;
      box-shadow:0 18px 44px -34px rgba(6,46,79,.55);
      border:1px solid #D6E5F1;
      background:#fff;
    }

    .ceo-table th{
      background:#062E4F!important;
      color:#fff!important;
      font-size:10.5px!important;
      padding:7px 4px!important;
      border-right:1px solid rgba(255,255,255,.16)!important;
      text-transform:none;
    }

    .ceo-table th:first-child{
      background:#062E4F!important;
      width:22%!important;
      text-align:left!important;
      padding-left:10px!important;
    }

    .ceo-table td{
      padding:6px 4px!important;
      border-right:1px solid #fff!important;
      border-bottom:1px solid #E7EEF6!important;
      font-size:11px!important;
    }

    .ceo-table td.etapa-label{
      background:#062E4F!important;
      color:#fff!important;
      text-align:left!important;
      padding-left:10px!important;
      font-weight:900!important;
      line-height:1.1;
    }

    .ceo-table .op{
      background:#D7ECFA!important;
      color:#06395F!important;
    }

    .ceo-table .ok{
      background:#28C9C8!important;
      color:#003B3A!important;
    }

    .ceo-table .risk{
      background:#F45D7B!important;
      color:#fff!important;
    }

    .ceo-table .warning{
      background:#FFD000!important;
      color:#062E4F!important;
    }

    .ceo-table .danger{
      background:#ED254E!important;
      color:#fff!important;
    }

    .ceo-table tbody tr:nth-child(even) td.etapa-label{
      background:#0A3C66!important;
    }

    .ceo-table tbody td:last-child{
      background:#F7FAFD!important;
      color:#062E4F!important;
      font-weight:900!important;
    }

    .ceo-table tfoot td{
      background:#062E4F!important;
      color:#fff!important;
      font-weight:900!important;
      border-bottom:0!important;
      padding:14px 8px!important;
    }

    .ceo-table tfoot td.etapa-label{
      background:#062E4F!important;
      color:#fff!important;
      text-align:left!important;
      padding-left:14px!important;
    }

    .ceo-table tfoot td:nth-child(4),
    .ceo-table tfoot td:nth-child(5){
      color:#2CCAC6!important;
    }

    @media(max-width:680px){
      .ceo-card{
        padding:18px!important;
      }
      .ceo-grid{
        padding-left:22px!important;
      }
      .ceo-head h3{
        font-size:28px!important;
      }
      .ceo-table th{
        font-size:7px!important;
        padding:7px 2px!important;
      }
      .ceo-table td{
        font-size:7px!important;
        padding:7px 2px!important;
      }
      .ceo-table th:first-child,
      .ceo-table td.etapa-label{
        padding-left:5px!important;
      }
    }


    

    

    

    

    

    

    

    


    

    

    

    

    

    

    

    

    

    

    

    
    
    
    
    

    

    

    

    

    

    

    

    

    

    .axis-label.operativo{
      background:#0C8FD3!important;
      color:#fff!important;
      font-size:12px!important;
      letter-spacing:.10em!important;
    }

    

  
    /* Hero section aligned to approved reference */
    .nav{
      background:rgba(255,255,255,.92)!important;
      backdrop-filter:saturate(160%) blur(10px);
      border-bottom:1px solid var(--line)!important;
    }

    .nav-in{min-height:58px}
    .logo{
      font-size:28px!important;
      letter-spacing:-.04em!important;
      font-weight:900!important;
      color:var(--ink)!important;
    }
    .nav-links{align-items:center!important;gap:34px!important}
    .nav-links a{
      color:#616C80!important;
      font-weight:800!important;
      font-size:14px!important;
    }
    .nav-links .btn{
      color:#fff!important;
      padding:14px 24px!important;
      border-radius:999px!important;
      box-shadow:0 16px 34px -18px rgba(12,143,211,.55)!important;
    }

    .hero-v2{
      background:
        radial-gradient(circle at 85% 18%, rgba(176, 217, 245, .35), transparent 32%),
        linear-gradient(90deg,#F7F9FC 0%, #F7F9FC 38%, #EAF5FC 100%)!important;
      padding:72px 0 36px!important;
      overflow:hidden;
    }

    .hero-v2 .hero-grid{
      display:grid!important;
      grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr)!important;
      grid-template-areas:"copy visual" "below below"!important;
      column-gap:36px!important;
      row-gap:22px!important;
      align-items:start!important;
    }

    .hero-v2 .hero-copy{max-width:590px;grid-area:copy}
    .hero-v2 .hero-below{grid-area:below;max-width:620px}
    .hero-v2 .hero-visual{grid-area:visual}
    .hero-v2 .kicker{
      margin-bottom:18px!important;
      color:var(--blue)!important;
      font-size:13px!important;
      letter-spacing:.18em!important;
      font-weight:900!important;
      text-transform:uppercase!important;
      display:flex!important;
      align-items:center!important;
      gap:10px!important;
    }
    .hero-v2 .kicker::before{
      content:"";
      width:16px;
      height:18px;
      background:var(--blue);
      display:inline-block;
      clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);
      flex:none;
    }

    /* TITULO DEL HEADER*/
    .hero-v2 h1{
      font-size:clamp(66px, 6.9vw, 84px)!important;
      /* line-height:.98!important;*/
      letter-spacing:-.055em!important; 
      max-width:630px!important;
      margin:0 0 28px!important;
      color:var(--ink)!important;
      font-weight:900!important;
      text-wrap:balance;
    }

    .hero-v2 .lead{
      font-size:17px!important;
      line-height:1.55!important;
      color:#687487!important;
      max-width:520px!important;
      margin:0 0 34px!important;
    }

    .hero-v2 .actions{
      display:flex!important;
      gap:14px!important;
      flex-wrap:wrap!important;
    }

    .hero-v2 .actions .btn{
      padding:14px 26px!important;
      border-radius:999px!important;
      font-size:16px!important;
      font-weight:900!important;
      box-shadow:0 18px 34px -18px rgba(12,143,211,.5)!important;
    }

    .hero-v2 .actions .ghost{
      background:rgba(255,255,255,.72)!important;
      color:var(--blue)!important;
      border:1px solid #D5E3EE!important;
      box-shadow:none!important;
    }

    .hero-v2 .hero-visual{
      position:relative;
      display:flex;
      align-items:stretch;
      align-self:stretch;
      justify-content:flex-end;
      min-height:0;
    }
    .hero-v2 .hero-grid{align-items:stretch!important}
    .hero-v2 .hero-copy{align-self:start!important}
    .hero-v2 .hero-visual{align-self:stretch!important;position:relative!important}
    .hero-v2 .hero-card{position:absolute!important;top:0!important;bottom:0!important;right:0!important;height:100%!important;width:auto!important;display:inline-flex!important;align-items:center!important}
    .hero-v2 .hero-card img{height:100%!important;width:auto!important;object-fit:contain!important;max-height:none!important}

    .hero-v2 .hero-dots{
      position:absolute;
      left:18px;
      top:50%;
      transform:translateY(-50%);
      display:flex;
      gap:8px;
      z-index:1;
    }

    .hero-v2 .hero-dots span{
      width:10px;
      height:10px;
      background:#C7D7E5;
      border-radius:50%;
      display:block;
    }

    .hero-v2 .hero-card{
      position:relative;
      z-index:2;
      width:min(100%, 520px)!important;
      background:#fff!important;
      border:1px solid #D7E3EE!important;
      border-radius:28px!important;
      padding:22px!important;
      box-shadow:0 28px 65px -34px rgba(6,46,79,.38)!important;
      overflow:hidden!important;
      min-height:auto!important;
    }

    .hero-v2 .hero-card .mini-browser{display:none!important}

    .hero-v2 .hero-card img{
      width:100%!important;
      display:block!important;
      border-radius:20px!important;
      background:transparent!important;
      object-fit:cover!important;
      box-shadow:none!important;
      max-height:none!important;
    }

    @media(max-width:980px){
      .hero-v2{padding:56px 0 28px!important}
      .hero-v2 .hero-grid{
        grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
        gap:16px!important;
      }
      .hero-v2 .hero-copy{max-width:100%}
      .hero-v2 h1{
        font-size:clamp(30px, 7.2vw, 72px)!important;
        max-width:700px!important;
      }
      .hero-v2 .lead{max-width:100%!important}
      .hero-v2 .hero-visual{
        justify-content:flex-end!important;
        min-height:auto!important;
        padding-left:0;
      }
      .hero-v2 .hero-dots{left:0}
    }

    @media(max-width:620px){
      .nav-links{gap:12px!important}
      .nav-links a:not(.btn){display:none!important}
      .hero-v2 .hero-dots{left:4px;gap:6px}
      .hero-v2 .hero-dots span{width:8px;height:8px}
      .hero-v2 .hero-card{
        border-radius:22px!important;
        padding:16px!important;
      }
      .hero-v2 .hero-card img{border-radius:16px!important}
    }

  
    

      

      
    }

  
    /* CEO matrix refined: remove vertical cobrado, keep horizontal income axis, add missing subtotal */
    .ceo-grid{
      position:relative!important;
      padding-left:34px!important;
      padding-top:0!important;
    }

    .axis-label.operativo{
      background:#0C8FD3!important;
      color:#fff!important;
      font-size:12px!important;
      letter-spacing:.10em!important;
    }

    

    

    

    

    

    

    

    

    

    

    

    

    
    
    
    
    

    

    

    

    

    

    

    

    

    

    

    

    


    

    

    

    

    

    

    

    

    

    

    

    
    
    
    
    
    

    

    

    

    

    

    

    

    

    

    

    

  
    /* Vista CEO - matriz actualizada */
    .ceo-matrix-updated{
      position:relative;
    }

    .ceo-matrix-updated .axis-proyecto-corner{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      padding:0!important;
    }

    .ceo-matrix-updated .axis-proyecto-filler{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      padding:0!important;
    }

    .ceo-matrix-updated .ceo-table tfoot td.axis-proyecto-filler{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      border-top:0!important;
    }

    .ceo-matrix-updated .axis-proyecto-cell{
      background:#FFFFFF!important;
      padding:0!important;
      position:relative;
      text-align:center;
      vertical-align:middle;
    }
    .ceo-matrix-updated .axis-proyecto-pill{
      position:absolute;
      top:6px;
      bottom:6px;
      left:6px;
      right:6px;
      background:#FFFFFF;
      color:var(--deep);
      border:2px solid var(--blue);
      border-radius:12px;
      box-shadow:0 12px 24px -18px rgba(6,46,79,.12);
      overflow:hidden;
    }
    .ceo-matrix-updated .axis-proyecto-pill .axis-tag{
      font-size:7px;
      font-weight:600;
      color:rgba(6,46,79,.45);
      text-transform:none;
    }

    .ceo-matrix-updated .axis-proyecto-text{
      position:absolute;
      top:50%;
      left:50%;
      transform:translate(-50%,-50%) rotate(180deg);
      writing-mode:vertical-rl;
      font-size:11px;
      font-weight:900;
      letter-spacing:.06em;
      text-transform:uppercase;
      white-space:nowrap;
      line-height:1;
      text-align:center;
    }

    .ceo-matrix-updated .matrix-wrap{
      overflow:hidden;
      border-radius:18px;
      border:3px solid var(--deep);
      box-shadow:0 18px 44px -34px rgba(6,46,79,.55);
      background:#fff;
    }

    .ceo-matrix-updated .ceo-table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      table-layout:fixed;
      font-size:12px;
      color:var(--deep);
    }

    .ceo-matrix-updated .ceo-table th,
    .ceo-matrix-updated .ceo-table td{
      border-right:1px solid rgba(255,255,255,.92);
      border-bottom:1px solid #E7EEF6;
      text-align:center;
      font-weight:900;
      line-height:1.08;
    }

    .ceo-matrix-updated .ceo-table th:last-child,
    .ceo-matrix-updated .ceo-table td:last-child{
      border-right:0;
    }

    .ceo-matrix-updated .ceo-table thead th{
      background:var(--deep);
      color:#fff;
      padding:12px 6px;
    }

    .ceo-matrix-updated .axis-row th{
      padding:0;
      height:42px;
      border-bottom:1px solid rgba(255,255,255,.18);
      background:var(--deep);
    }

    .ceo-matrix-updated .axis-row .blank-corner{
      width:21%;
      background:#FFFFFF!important;
      border-right:1px solid #E7EEF6!important;
      border-bottom:1px solid #E7EEF6!important;
    }

    .ceo-matrix-updated .axis-row .axis-ingresos{
      background:#FFFFFF;
      padding:6px 8px;
      border-right:1px solid #E7EEF6!important;
    }
    .ceo-matrix-updated .axis-row .axis-ingresos .axis-ingreso-tag{
      font-size:10px;
      font-weight:600;
      color:rgba(6,46,79,.4);
      text-transform:none;
      letter-spacing:0;
    }

    .ceo-matrix-updated .axis-row .axis-ingresos > span{
      display:flex;
      align-items:center;
      justify-content:center;
      height:30px;
      min-height:30px;
      background:#FFFFFF;
      color:var(--deep);
      border:2px solid var(--blue);
      border-radius:12px;
      box-shadow:0 12px 24px -18px rgba(6,46,79,.12);
      font-size:12px;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
      white-space:nowrap;
    }

    .ceo-matrix-updated .axis-row .total-top{
      background:#FFFFFF!important;
      border-left:0!important;
      border-bottom:1px solid #E7EEF6!important;
    }

    .ceo-matrix-updated .header-row th:first-child{
      width:21%;
      text-align:left;
      padding-left:14px;
    }

    .ceo-matrix-updated .header-row th{
      font-size:11px;
      min-height:54px;
    }

    .ceo-matrix-updated .ceo-table td{
      padding:5px 4px;
      font-size:11px;
      min-height:56px;
    }

    .ceo-matrix-updated .ceo-table td.etapa-label{
      background:var(--deep);
      color:#fff;
      text-align:left;
      padding-left:14px;
      line-height:1.14;
    }

    .ceo-matrix-updated .ceo-table tbody tr:nth-child(even):not(.subtotal-row) td.etapa-label{
      background:#0A3C66;
    }

    .ceo-matrix-updated .ceo-table td b{
      display:block;
      font-size:15px;
      line-height:1;
      margin-bottom:4px;
      font-weight:900;
    }

    .ceo-matrix-updated .ceo-table td span{
      display:block;
      font-size:10.5px;
      line-height:1;
      font-weight:900;
      opacity:.98;
    }

    .ceo-matrix-updated .op{background:#D7ECFA;color:#06395F}
    .ceo-matrix-updated .ok{background:#28C9C8;color:#003B3A}
    .ceo-matrix-updated .ok-strong{background:#0B8C74;color:#fff;font-weight:900}
    .ceo-matrix-updated .risk{background:#F45D7B;color:#fff}
    .ceo-matrix-updated .danger{background:#ED254E;color:#fff}
    .ceo-matrix-updated .danger-strong{background:#B00D30;color:#fff}
    .ceo-matrix-updated .warning{background:#FFD000;color:#062E4F}
    .ceo-matrix-updated .overdue-soft{background:#FFE3E8;color:#D8183D}
    .ceo-matrix-updated .ok-soft{background:#D6F5EF;color:#0B6F5E}

    .ceo-matrix-updated .empty{
      background:#EEF2F6;
      color:#9AA8B8;
      font-size:0!important;
    }

    .ceo-matrix-updated .empty::before{
      content:"";
      display:block;
      width:22px;
      height:2px;
      background:#B9C5D1;
      margin:8px auto;
      border-radius:999px;
    }

    .ceo-matrix-updated .ceo-table tbody td:last-child{
      background:var(--deep)!important;
      color:#fff!important;
    }

    .ceo-matrix-updated .ceo-table tbody tr.subtotal-row td.etapa-label{
      background:#FFFFFF!important;
      color:var(--deep)!important;
    }

    .ceo-matrix-updated .subtotal-row td.etapa-label::before{
      content:"Entregado"!important;
      display:block;
      color:var(--deep)!important;
      font-size:9px;
      text-transform:uppercase;
      letter-spacing:.12em;
      margin-bottom:3px;
    }

    .ceo-matrix-updated .subtotal-row.subtotal-start td.etapa-label::before{
      content:"6. Entregado"!important;
    }
    .ceo-matrix-updated .subtotal-row:not(.subtotal-start) td.etapa-label::before{
      content:"7. Entregado"!important;
    }

    .ceo-matrix-updated .ceo-table tbody tr.subtotal-row.subtotal-start td.etapa-label{
      color:#8DE590!important;
    }

    .ceo-matrix-updated .ceo-table tbody tr.subtotal-row:not(.subtotal-start) td.etapa-label{
      color:#ED254E!important;
    }

    .ceo-matrix-updated .ceo-table tbody tr.subtotal-row td:last-child{
      background:#FFFFFF!important;
      color:var(--deep)!important;
    }

    .ceo-matrix-updated .subtotal-start td{
      border-top:3px solid var(--deep);
    }

    /* Perimeter navy border: header-row through Total general only */
    .ceo-matrix-updated .header-row th{
      border-top:2px solid var(--deep)!important;
      border-bottom:2px solid var(--deep)!important;
    }
    .ceo-matrix-updated .header-row th:first-child,
    .ceo-matrix-updated .ceo-table tbody tr td.etapa-label,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td.etapa-label{
      border-left:2px solid var(--deep)!important;
    }
    .ceo-matrix-updated .header-row th:last-child,
    .ceo-matrix-updated .ceo-table tbody tr td:last-child,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:last-child{
      border-right:2px solid var(--deep)!important;
    }
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td{
      border-bottom:2px solid var(--deep)!important;
    }

    .ceo-matrix-updated .ceo-table tfoot td{
      background:var(--deep)!important;
      color:#fff!important;
      border-bottom:0;
      padding:8px 4px;
    }

    .ceo-matrix-updated .ceo-table tfoot td.etapa-label{
      text-align:left;
      padding-left:10px;
    }

    .ceo-matrix-updated .ceo-table .header-row th:last-child,
    .ceo-matrix-updated .ceo-table tbody td:last-child,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:last-child{
      border-left:3px solid var(--deep)!important;
    }

    .ceo-matrix-updated .ceo-table .header-row th:nth-last-child(3),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(3),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3){
      border-left:3px solid var(--deep)!important;
    }

    /* Divisor Cobrado Fuera de Tiempo | Cobrado En Tiempo */
    .ceo-matrix-updated .ceo-table .header-row th:nth-last-child(2),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(2),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2){
      border-left:1px solid #C6D4E2!important;
    }

    .ceo-matrix-updated .ceo-table .header-row th:first-child,
    .ceo-matrix-updated .ceo-table tbody td.etapa-label,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td.etapa-label{
      border-left:3px solid var(--deep)!important;
    }

    .ceo-matrix-updated .ceo-table .header-row th:nth-last-child(4),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(4),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(4){
      border-left:1px solid rgba(255,255,255,.92)!important;
    }

    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3) b,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3) span,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2) b,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2) span{
      color:#28C9C8!important;
    }

        .ceo-matrix-updated .ceo-table td.etapa-label .responsable{
      display:block;
      margin-top:5px;
      font-size:10px;
      line-height:1.15;
      font-weight:500;
      color:rgba(255,255,255,.78);
      letter-spacing:0;
      text-transform:none;
    }

    .ceo-matrix-updated .ceo-table .cobrado-head{
      vertical-align:middle;
      background:#FFFFFF!important;
    }

    .ceo-matrix-updated .ceo-table .cobrado-head .head-parent{
      display:block;
      color:var(--deep);
      font-size:9px;
      line-height:1;
      font-weight:900;
      letter-spacing:.12em;
      text-transform:uppercase;
      margin-bottom:4px;
    }

    .ceo-matrix-updated .ceo-table .cobrado-head .head-main{
      display:block;
      font-size:11px;
      line-height:1.05;
      font-weight:900;
      letter-spacing:0;
      text-transform:none;
    }

    .ceo-matrix-updated .ceo-table .cobrado-head .cobrado-ok{color:#8DE590}
    .ceo-matrix-updated .ceo-table .cobrado-head .cobrado-late{color:#ED254E}

    .ceo-matrix-updated .ceo-table .header-owner{
      display:block;
      margin-top:5px;
      font-size:9px;
      line-height:1.1;
      font-weight:500;
      color:rgba(255,255,255,.72);
      letter-spacing:0;
      text-transform:none;
    }

    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-row td{
      border-top:1px solid #FFFFFF!important;
      border-bottom:0!important;
      padding:7px 4px!important;
    }

    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-empty{
      background:#FFFFFF!important;
      color:transparent!important;
      border-top:0!important;
      border-bottom:0!important;
      border-left:0!important;
      border-right:1px solid #E7EEF6!important;
    }

    .ceo-matrix-updated .ceo-table tfoot .total-potential-cell{
      background:#FFD000!important;
      color:#062E4F!important;
      text-align:center!important;
      vertical-align:middle!important;
      border-left:1px solid #fff!important;
      border-top:3px solid var(--deep)!important;
      border-bottom:0!important;
      border-right:0!important;
      padding:14px 4px!important;
    }
    .ceo-matrix-updated .ceo-table tfoot .total-potential-cell b{
      display:block;
      font-size:15px;
      color:#062E4F;
    }
    .ceo-matrix-updated .ceo-table tfoot .total-potential-cell span{
      display:block;
      font-size:16px;
      color:#062E4F;
      margin-top:2px;
      white-space:nowrap;
    }
    .ceo-matrix-updated .ceo-table tfoot .total-potential-cell em{
      display:block;
      font-style:normal;
      font-weight:800;
      font-size:8px;
      letter-spacing:0;
      text-transform:uppercase;
      color:#062E4F;
      margin-top:8px;
      padding-top:8px;
      border-top:1px solid rgba(6,46,79,.25);
    }

    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell{
      background:var(--blue)!important;
      color:#FFFFFF!important;
      text-align:center!important;
      border:3px solid var(--deep)!important;
      padding:14px 6px!important;
      box-shadow:none!important;
    }

    .ceo-matrix-updated .ceo-table tfoot tr.cobrado-total-row td.cobrado-total-cell{
      border-top:3px solid var(--deep)!important;
      border-bottom:3px solid var(--deep)!important;
    }

    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell b{
      display:block!important;
      font-size:15px!important;
      line-height:1.05!important;
      margin:0 0 6px!important;
      color:#FFFFFF!important;
      font-weight:800!important;
    }

    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell span{
      display:block!important;
      font-size:20px!important;
      line-height:1.05!important;
      color:#FFFFFF!important;
      font-weight:900!important;
    }

    .ceo-matrix-updated .matrix-note{
      display:none;
    }

    .ceo-thesis{
      margin:10px 0 0;
      padding-bottom:2px;
      text-align:center;
      font-family:var(--serif);
      font-weight:800;
      font-size:clamp(16px,1.8vw,20px);
      color:var(--deep);
      letter-spacing:-.02em;
      line-height:1.25;
    }

    /* Vista CEO — celdas clicables y panel de detalle */
    .ceo-table td.cell-clickable{
      cursor:pointer;
      position:relative;
      transition:box-shadow .15s ease, transform .15s ease;
    }
    .ceo-table td.cell-clickable:hover{
      box-shadow:inset 0 0 0 2px rgba(6,46,79,.55);
      transform:translateY(-1px);
    }
    .ceo-table td.cell-active{
      box-shadow:inset 0 0 0 2px var(--deep);
    }

    .ceo-detail{
      margin-top:22px;
      border:1.5px solid var(--deep);
      border-radius:16px;
      background:#F7FAFD;
      overflow:hidden;
      animation:ceoDetailIn .22s ease;
    }
    @keyframes ceoDetailIn{
      from{opacity:0;transform:translateY(-6px)}
      to{opacity:1;transform:translateY(0)}
    }
    .ceo-detail-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:14px 18px;
      background:var(--deep);
    }
    .ceo-detail-eyebrow{
      display:block;
      font-size:10px;
      font-weight:800;
      letter-spacing:.12em;
      text-transform:uppercase;
      color:rgba(255,255,255,.6);
      margin-bottom:3px;
    }
    .ceo-detail-head h4{
      margin:0;
      font-family:var(--serif);
      font-size:17px;
      font-weight:800;
      color:#fff;
      line-height:1.3;
    }
    .ceo-detail-close{
      flex:0 0 auto;
      width:30px;
      height:30px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.4);
      background:transparent;
      color:#fff;
      font-size:13px;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .ceo-detail-close:hover{background:rgba(255,255,255,.15)}
    .ceo-detail-scroll{
      width:100%;
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }
    .ceo-detail-table{
      width:100%;
      min-width:0;
      border-collapse:collapse;
      font-size:10.5px;
      table-layout:fixed;
    }
    .ceo-detail-table thead th{
      background:#E9F0F7;
      color:var(--deep);
      font-size:8.5px;
      font-weight:800;
      letter-spacing:.02em;
      text-transform:uppercase;
      text-align:left;
      padding:8px 6px;
      border-bottom:1.5px solid var(--deep);
      white-space:normal;
    }
    .ceo-detail-table tbody td{
      padding:8px 6px;
      border-bottom:1px solid #E2EBF3;
      color:var(--ink);
      white-space:normal;
      font-weight:600;
      overflow-wrap:break-word;
    }
    .ceo-detail-table tbody tr:last-child td{border-bottom:0}
    .ceo-detail-table tbody tr:nth-child(even){background:#EFF5FA}
    .ceo-detail-table td.monto-cell{font-weight:900;color:var(--deep)}
    .ceo-detail-chips{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:10px;
    }
    .ceo-detail-chip{
      display:inline-block;
      padding:5px 12px;
      border-radius:999px;
      font-size:11px;
      font-weight:800;
    }
    .ceo-detail-chip small{
      display:block;
      font-size:9px;
      font-weight:600;
      opacity:.8;
      margin-top:2px;
      text-transform:none;
      letter-spacing:0;
    }
    .ceo-detail-table td.id-cell{font-weight:800;color:rgba(6,46,79,.5)}
    .ceo-detail-table td.status-cell span, .ceo-detail-table td.etapa-cell span{
      display:inline-block;
      padding:3px 7px;
      border-radius:999px;
      font-size:9px;
      font-weight:800;
      white-space:normal;
      line-height:1.2;
    }
    .status-ok{background:#D9F2E6;color:#0E7A48}
    .status-warn{background:#FDEEDB;color:#9A5B0A}
    .status-danger{background:#FCE0E5;color:#B21030}
    .status-neutral{background:#E6EEF6;color:var(--deep)}

    @media(max-width:680px){
      .ceo-detail-head{padding:12px 14px}
      .ceo-detail-head h4{font-size:15px}
      .ceo-detail-table{font-size:11px}
    }

    @media(max-width:900px){
      .ceo-matrix-updated .axis-proyecto-text{font-size:10px}
      .ceo-matrix-updated .matrix-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
      .ceo-matrix-updated .ceo-table{width:100%;min-width:760px;font-size:11px}
      .ceo-matrix-updated .ceo-table th{font-size:9.5px!important;padding:8px 4px!important}
      .ceo-matrix-updated .ceo-table td{font-size:10.5px!important;padding:7px 4px!important}
      .ceo-matrix-updated .ceo-table td.etapa-label{padding-left:10px}
      .ceo-matrix-updated .ceo-table td b{font-size:12px!important}
      .ceo-matrix-updated .ceo-table td span{font-size:10px!important}
      .ceo-matrix-updated .axis-row .axis-ingresos > span{font-size:9.5px}
      .ceo-matrix-updated .ceo-table td.etapa-label .responsable{font-size:9px;margin-top:3px}
      .ceo-matrix-updated .ceo-table .header-owner{font-size:8px;margin-top:3px}
      .ceo-matrix-updated .ceo-table .cobrado-head .head-parent{font-size:8px;margin-bottom:3px}
      .ceo-matrix-updated .ceo-table .cobrado-head .head-main{font-size:9.5px}
      .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell b{font-size:12px!important}
      .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell span{font-size:14px!important}
    }

    @media(max-width:620px){
      .ceo-matrix-updated .axis-proyecto-text{font-size:9px}
      .ceo-matrix-updated .ceo-table{min-width:680px}
      .ceo-matrix-updated .axis-row .axis-ingresos > span{height:26px;min-height:26px;font-size:8px;border-radius:8px}
    }

  
    /* Ajuste sección fit: tarjetas horizontales con icono al estilo referencia */
    .fit{
      background:linear-gradient(125deg,#071B31 0%, #0A3A63 42%, #0C8FD3 100%);
      color:#fff;
      padding:90px 0;
    }

    .fit .section-head.center{
      max-width:900px;
      margin:0 auto;
      text-align:center;
    }

    .fit .section-head h2{
      color:#fff;
    }

    .fit .section-head .sub{
      color:rgba(255,255,255,.9);
      max-width:760px;
      margin:14px auto 0;
    }

    .fit-grid{
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:16px;
      margin-top:38px;
      align-items:stretch;
    }

    .fit-card.fit-card-horizontal{
      display:flex;
      align-items:flex-start;
      gap:16px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.22);
      border-radius:16px;
      padding:18px 18px 18px 16px;
      min-height:140px;
      box-shadow:0 10px 26px -22px rgba(6,46,79,.4);
    }

    .fit-icon{
      width:54px;
      height:54px;
      min-width:54px;
      border-radius:999px;
      background:#D8E9F5;
      color:#0C8FD3;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-top:2px;
    }

    .fit-icon svg{
      width:24px;
      height:24px;
      display:block;
    }

    .fit-copy{
      min-width:0;
    }

    .fit-card h3{
      margin:2px 0 10px;
      color:#FFFFFF;
      font-family:Georgia, "Times New Roman", serif;
      font-size:17px;
      line-height:1.18;
      font-weight:700;
      letter-spacing:0;
    }

    .fit-card p{
      margin:0;
      color:rgba(255,255,255,.92);
      font-size:15.5px;
      line-height:1.55;
    }

    @media (max-width: 1100px){
      .fit-grid{
        gap:12px;
      }
      .fit-card.fit-card-horizontal{
        padding:16px 14px;
        gap:12px;
      }
      .fit-icon{
        width:48px;
        height:48px;
        min-width:48px;
      }
      .fit-card h3{
        font-size:15px;
      }
      .fit-card p{
        font-size:13.5px;
        line-height:1.5;
      }
    }

    @media (max-width: 900px){
      .fit-grid{
        grid-template-columns:repeat(4, minmax(0,1fr));
      }
      .fit-card.fit-card-horizontal{
        min-height:128px;
        padding:14px 12px;
      }
      .fit-icon{
        width:42px;
        height:42px;
        min-width:42px;
      }
      .fit-icon svg{
        width:20px;
        height:20px;
      }
      .fit-card h3{
        font-size:13px;
      }
      .fit-card p{
        font-size:13px;
        line-height:1.5;
      }
    }

    @media (max-width:680px){
      .fit-grid{
        grid-template-columns:1fr!important;
      }
      .fit-card.fit-card-horizontal{
        grid-template-columns:44px minmax(0,1fr)!important;
        min-height:0;
      }
      .fit-icon{
        width:44px;
        height:44px;
        min-width:44px;
      }
      .fit-card h3{font-size:16px}
      .fit-card p{font-size:14px}
    }

    /* Sección problema Dirección (reemplaza síntomas roja) */
    .kicker{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
    .kicker:before{content:"";width:15px;height:17px;background:currentColor;display:inline-block;clip-path:polygon(50% 0,100% 27%,100% 73%,50% 100%,0 73%,0 27%);}
    .ceo-problem{background:radial-gradient(circle at 84% 12%, rgba(12,143,211,.14), transparent 32%),linear-gradient(180deg,#FFFFFF 0%, #F7FAFD 100%);padding:92px 0;}
    .problem-head{max-width:980px;margin:0 auto 42px;text-align:center;}
    .problem-head .kicker{justify-content:center;margin-bottom:18px;}
    .problem-head h2{max-width:900px;margin:0 auto 18px;font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.055em;color:var(--ink);}
    .problem-head p{max-width:820px;margin:0 auto;color:#5D687B;font-size:18px;line-height:1.55;font-weight:600;}
    .problem-board{
      /* background:#FFFFFF;border:1px solid #CFE2F2; */
      /* border-radius:30px;padding:30px; */
      /* box-shadow:0 30px 80px -48px rgba(6,46,79,.52); */
      overflow:hidden;}
    .board-top{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding-bottom:22px;margin-bottom:24px;border-bottom:1px solid #E2EEF8;}
    .board-label{display:block;color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;}
    .board-top strong{display:block;color:var(--deep);font-size:30px;line-height:1.05;letter-spacing:-.04em;font-weight:900;}
    .board-kpi{color:#5A6475;font-size:14px;font-weight:800;white-space:nowrap;}
    .board-kpi b{display:inline-block;margin-left:6px;color:var(--ink);font-weight:900;font-size:18px;}
    .problem-cards{display:flex;flex-direction:column;gap:20px;}
    .problem-card{position:relative;display:flex;align-items:flex-start;gap:22px;width:min(100%,680px);background:linear-gradient(180deg,#FFFFFF 0%,#F9FCFF 100%);border:1px solid #D6E5F1;border-radius:22px;padding:24px 28px;box-shadow:0 20px 46px -38px rgba(6,46,79,.42);overflow:hidden;}
    .problem-card:nth-child(odd){align-self:flex-start;}
    .problem-card:nth-child(even){align-self:flex-end;flex-direction:row-reverse;text-align:right;}
    .problem-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--blue);}
    .problem-card:nth-child(even):before{inset:0 0 0 auto;}
    .problem-card.past:before{background:#94A3B8}.problem-card.sales:before{background:#58C25F}.problem-card.projects:before{background:#ED254E}.problem-card.income:before{background:var(--blue)}
    .problem-icon{width:54px;height:54px;min-width:54px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#E6F4FD;color:var(--blue);margin-bottom:0;margin-top:2px;}
    .problem-card.past .problem-icon{background:#F1F5F9;color:#64748B}.problem-card.sales .problem-icon{background:#EAFBEF;color:#29A045}.problem-card.projects .problem-icon{background:#FFE8EE;color:#ED254E}.problem-card.income .problem-icon{background:#E6F4FD;color:var(--blue)}
    .problem-icon svg{width:25px;height:25px;display:block;}
    .problem-copy{flex:1;min-width:0;}
    .problem-copy span{display:block;margin-bottom:7px;color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
    .problem-card.past .problem-copy span{color:#64748B}.problem-card.sales .problem-copy span{color:#29A045}.problem-card.projects .problem-copy span{color:#ED254E}
    .problem-copy h3{margin:0 0 12px;color:var(--deep);font-size:20px;line-height:1.12;letter-spacing:-.035em;font-weight:900;}
    .problem-copy p{margin:0;color:#5D687B;font-size:14px;line-height:1.55;font-weight:600;}

    .problem-close{
      display:flex;align-items:stretch;gap:0;
      /* background:linear-gradient(135deg,#062E4F 0%, #0C8FD3 100%); */
      padding:0;
      min-height:clamp(340px, 30vw, 480px);
      color: var(--deep);
      box-shadow:0 24px 54px -36px rgba(6,46,79,.72);
      overflow:hidden;
    }
    .problem-close-visual
    {
      flex:0 0 42%;
      max-width:42%;
      align-self:stretch;
      font-size:0;
    }
    .problem-close-visual img
    {
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      display:block;
    }

    .problem-close-copy{
      flex:1;
      min-width:0;
      padding:48px 56px 48px 60px;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .problem-close h3
      {
        margin:0 0 6px;
        color: var(--deep);
        font-size:55px;
        line-height:1.05;
        letter-spacing:-.04em;
        font-weight:900;
      }
    .problem-close p
      {margin:0;
        color:var(--azul)
        font-size:30px;
        line-height:1.45;font-weight:700;}
    @media(max-width:980px){.problem-card{width:min(100%,560px)}.board-top{align-items:flex-start;flex-direction:column}.board-kpi{white-space:normal}}
    @media(max-width:900px){.problem-close{min-height:0;flex-direction:column;align-items:stretch}.problem-close-visual{flex:none;width:100%;max-width:100%;aspect-ratio:16/10}.problem-close-visual img{height:100%}.problem-close-copy{padding:30px 30px 36px}.problem-close h3{font-size:30px}.problem-close p{font-size:18px}}
    @media(max-width:620px){.ceo-problem{padding:68px 0}.problem-board{padding:20px;border-radius:24px}.problem-card{width:100%;align-self:stretch;flex-direction:row;text-align:left}.problem-card:nth-child(even):before{inset:0 auto 0 0}.problem-close-visual{aspect-ratio:3/2}.problem-close-copy{padding:26px 22px 30px}.problem-close h3{font-size:25px}.problem-close p{font-size:16px}}

  
    /* fit section simplificada (imagen 2) */
    .fit-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}
    .fit-card{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.20)!important;border-radius:18px!important;padding:22px!important;display:block!important;min-height:0!important;box-shadow:none!important}
    .fit-card h3{
      font-family:var(--sans)!important;
      font-size:20px!important;
      color:#fff!important;
      margin:3vh 0 1.5vh 0 !important;
      font-weight:900!important;
      letter-spacing:-.02em!important;line-height:1.15!important}
    .fit-card p{color:rgba(255,255,255,.82)!important;font-size:14px!important;line-height:1.55!important;margin:0!important}
    @media(max-width:900px){.fit-grid{grid-template-columns:1fr 1fr!important}}
    @media(max-width:620px){.fit-grid{grid-template-columns:1fr!important}}

    /* === Vista CEO (v2 móvil) === */
.dash-kpi{
      color:var(--muted);
      font-size:14px;
      font-weight:600;
    }
.dash-kpi b{
      color:var(--ink);
      font-weight:900;
      font-size:18px;
      margin-left:4px;
    }
@media(max-width:680px){
.dash-kpi b{
        font-size:16px;
      }

}
.dash-kpi{color:var(--deep);font-size:10.5px;font-weight:700;text-align:center}
.dash-kpi b{display:block;color:var(--deep);font-weight:900;font-size:16px;margin-top:3px;white-space:nowrap}
.ceo-kpi-row{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:8px}
@media(max-width:900px){
.ceo-head{flex-direction:column;align-items:stretch!important}
.ceo-kpi-row{flex-wrap:nowrap;justify-content:space-between;max-width:none;gap:5px}
.ceo-kpi-row .dash-kpi{min-width:0;flex:1 1 0;padding:8px 4px}
.ceo-kpi-row .dash-kpi b{font-size:14px}

}
@media(max-width:680px){
.ceo-kpi-row{gap:3px}
.ceo-kpi-row .dash-kpi{padding:6px 2px;font-size:8.5px}
.ceo-kpi-row .dash-kpi b{font-size:11px;margin-top:1px}

}
@media(max-width:480px){
.ceo-kpi-row{gap:2px}
.ceo-kpi-row .dash-kpi{padding:5px 1px;font-size:6.8px;border-radius:8px}
.ceo-kpi-row .dash-kpi b{font-size:9px}

}
.ceo-kpi-row .dash-kpi{
      background:#F4F8FC;
      border:1px solid #DCE9F4;
      border-radius:12px;
      padding:8px 8px;
      width:100px;
      flex:0 0 100px;
      white-space:normal;
      line-height:1.2;
    }
.ceo-legend{display:flex;flex-direction:column;gap:8px;margin-top:10px;align-items:flex-end}
.ceo-legend-row{display:flex;gap:16px}
.ceo-legend-chip{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--deep);white-space:nowrap;line-height:1}
.ceo-legend-chip i{width:14px;height:14px;border-radius:4px;flex:none;display:inline-block;border:1px solid rgba(6,46,79,.12)}
.ceo-section{padding-top:18px}
.ceo-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 26px 70px -34px rgba(6,46,79,.42);overflow:hidden}
.ceo-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
.ceo-head > div:first-child{flex:0 0 auto;min-width:0}
.ceo-kicker{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);white-space:nowrap}
.ceo-head h3{font-size:36px;margin:5px 0 0;color:var(--ink)}
.ceo-grid{position:relative;padding-left:30px}
.axis-label.operativo{position:absolute;left:0;top:60px;bottom:60px;writing-mode:vertical-rl;transform:rotate(180deg);background:var(--blue);color:#fff;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px;display:flex;align-items:center;justify-content:center;border-radius:12px;padding:10px 6px}
.ceo-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:clamp(10px,.9vw,13px);overflow:hidden;border-radius:16px}
.ceo-table th{background:#20364D;color:#fff;padding:6px 4px;font-weight:900;line-height:1.05;border-right:1px solid rgba(255,255,255,.20)}
.ceo-table th:first-child{width:20%}
.ceo-table td{padding:6px 4px;text-align:center;border-right:1px solid #fff;border-bottom:1px solid #EDF2F7;font-weight:900;color:var(--deep)}
.ceo-table td:first-child.etapa-label{text-align:left;background:#1CA9ED;color:#001B34}
.ceo-table .op{background:#CDEBFC}
.ceo-table .ok{background:#2CCAC6;color:#003A3A}
.ceo-table .risk{background:#F25B78;color:#fff}
.ceo-table .warning{background:#FFD000;color:#06172C}
.ceo-table .danger{background:#ED254E;color:#fff}
.ceo-table tfoot td{background:#20364D!important;color:#fff!important;border-bottom:0}
.ceo-table tfoot td:nth-child(4){color:#2CCAC6!important}
.ceo-table tfoot td:nth-child(5){color:#2CCAC6!important}
@media(max-width:680px){
.no-scroll-card,.ceo-card{padding:14px;border-radius:18px}
.dash-kpi{font-size:11px}
.dash-kpi b{font-size:13px}
.ceo-grid{padding-left:20px}
.axis-label.operativo{font-size:8px;border-radius:8px}
.ceo-head h3{font-size:26px}

}
/* CEO matrix visual upgrade */
    .ceo-section .section-head{
      margin-bottom:14px;
    }
.ceo-section .section-head h2{
      font-size:clamp(24px,2.6vw,32px);
      margin-bottom:8px;
    }
.ceo-section .section-head .sub{
      font-size:14px;
    }
.ceo-card{
      background:linear-gradient(180deg,#FFFFFF 0%,#F9FCFF 100%)!important;
      border:2px solid var(--deep)!important;
      border-radius:22px!important;
      padding:16px!important;
      box-shadow:0 30px 80px -42px rgba(6,46,79,.52)!important;
    }
.ceo-head{
      align-items:flex-start!important;
      padding-bottom:8px;
      border-bottom:1px solid #E2EEF8;
      margin-bottom:10px!important;
    }
.ceo-kicker{
      color:var(--blue)!important;
    }
.ceo-head h3{
      color:var(--deep)!important;
      font-size:24px!important;
      letter-spacing:-.03em;
    }
.ceo-grid{
      padding-left:34px!important;
    }
.axis-label.operativo{
      background:var(--blue)!important;
      color:#fff!important;
      box-shadow:0 12px 24px -16px rgba(12,143,211,.8);
    }
.ceo-table{
      border-radius:18px!important;
      overflow:hidden;
      box-shadow:0 18px 44px -34px rgba(6,46,79,.55);
      border:1px solid #D6E5F1;
      background:#fff;
    }
.ceo-table th{
      background:#062E4F!important;
      color:#fff!important;
      font-size:10.5px!important;
      padding:7px 4px!important;
      border-right:1px solid rgba(255,255,255,.16)!important;
      text-transform:none;
    }
.ceo-table th:first-child{
      background:#062E4F!important;
      width:22%!important;
      text-align:left!important;
      padding-left:10px!important;
    }
.ceo-table td{
      padding:6px 4px!important;
      border-right:1px solid #fff!important;
      border-bottom:1px solid #E7EEF6!important;
      font-size:11px!important;
    }
.ceo-table td.etapa-label{
      background:#062E4F!important;
      color:#fff!important;
      text-align:left!important;
      padding-left:10px!important;
      font-weight:900!important;
      line-height:1.1;
    }
.ceo-table .op{
      background:#D7ECFA!important;
      color:#06395F!important;
    }
.ceo-table .ok{
      background:#28C9C8!important;
      color:#003B3A!important;
    }
.ceo-table .risk{
      background:#F45D7B!important;
      color:#fff!important;
    }
.ceo-table .warning{
      background:#FFD000!important;
      color:#062E4F!important;
    }
.ceo-table .danger{
      background:#ED254E!important;
      color:#fff!important;
    }
.ceo-table tbody tr:nth-child(even) td.etapa-label{
      background:#0A3C66!important;
    }
.ceo-table tbody td:last-child{
      background:#F7FAFD!important;
      color:#062E4F!important;
      font-weight:900!important;
    }
.ceo-table tfoot td{
      background:#062E4F!important;
      color:#fff!important;
      font-weight:900!important;
      border-bottom:0!important;
      padding:14px 8px!important;
    }
.ceo-table tfoot td.etapa-label{
      background:#062E4F!important;
      color:#fff!important;
      text-align:left!important;
      padding-left:14px!important;
    }
.ceo-table tfoot td:nth-child(4),
    .ceo-table tfoot td:nth-child(5){
      color:#2CCAC6!important;
    }
@media(max-width:680px){
.ceo-card{
        padding:18px!important;
      }
.ceo-grid{
        padding-left:22px!important;
      }
.ceo-head h3{
        font-size:28px!important;
      }
.ceo-table th{
        font-size:7px!important;
        padding:7px 2px!important;
      }
.ceo-table td{
        font-size:7px!important;
        padding:7px 2px!important;
      }
.ceo-table th:first-child,
      .ceo-table td.etapa-label{
        padding-left:5px!important;
      }

}
.axis-label.operativo{
      background:#0C8FD3!important;
      color:#fff!important;
      font-size:12px!important;
      letter-spacing:.10em!important;
    }
/* CEO matrix refined: remove vertical cobrado, keep horizontal income axis, add missing subtotal */
    .ceo-grid{
      position:relative!important;
      padding-left:34px!important;
      padding-top:0!important;
    }
.axis-label.operativo{
      background:#0C8FD3!important;
      color:#fff!important;
      font-size:12px!important;
      letter-spacing:.10em!important;
    }
/* Vista CEO - matriz actualizada */
    .ceo-matrix-updated{
      position:relative;
    }
.ceo-matrix-updated .axis-proyecto-corner{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      padding:0!important;
    }
.ceo-matrix-updated .axis-proyecto-filler{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      padding:0!important;
    }
.ceo-matrix-updated .ceo-table tfoot td.axis-proyecto-filler{
      background:#fff!important;
      border-right:1px solid #E7EEF6!important;
      border-top:0!important;
    }
.ceo-matrix-updated .axis-proyecto-cell{
      background:#FFFFFF!important;
      padding:0!important;
      position:relative;
      text-align:center;
      vertical-align:middle;
    }
.ceo-matrix-updated .axis-proyecto-pill{
      position:absolute;
      top:6px;
      bottom:6px;
      left:6px;
      right:6px;
      background:#FFFFFF;
      color:var(--deep);
      border:2px solid var(--blue);
      border-radius:12px;
      box-shadow:0 12px 24px -18px rgba(6,46,79,.12);
      overflow:hidden;
    }
.ceo-matrix-updated .axis-proyecto-pill .axis-tag{
      font-size:7px;
      font-weight:600;
      color:rgba(6,46,79,.45);
      text-transform:none;
    }
.ceo-matrix-updated .axis-proyecto-text{
      position:absolute;
      top:50%;
      left:50%;
      transform:translate(-50%,-50%) rotate(180deg);
      writing-mode:vertical-rl;
      font-size:11px;
      font-weight:900;
      letter-spacing:.06em;
      text-transform:uppercase;
      white-space:nowrap;
      line-height:1;
      text-align:center;
    }
.ceo-matrix-updated .matrix-wrap{
      overflow:hidden;
      border-radius:18px;
      border:3px solid var(--deep);
      box-shadow:0 18px 44px -34px rgba(6,46,79,.55);
      background:#fff;
    }
.ceo-matrix-updated .ceo-table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      table-layout:fixed;
      font-size:12px;
      color:var(--deep);
    }
.ceo-matrix-updated .ceo-table th,
    .ceo-matrix-updated .ceo-table td{
      border-right:1px solid rgba(255,255,255,.92);
      border-bottom:1px solid #E7EEF6;
      text-align:center;
      font-weight:900;
      line-height:1.08;
    }
.ceo-matrix-updated .ceo-table th:last-child,
    .ceo-matrix-updated .ceo-table td:last-child{
      border-right:0;
    }
.ceo-matrix-updated .ceo-table thead th{
      background:var(--deep);
      color:#fff;
      padding:12px 6px;
    }
.ceo-matrix-updated .axis-row th{
      padding:0;
      height:42px;
      border-bottom:1px solid rgba(255,255,255,.18);
      background:var(--deep);
    }
.ceo-matrix-updated .axis-row .blank-corner{
      width:21%;
      background:#FFFFFF!important;
      border-right:1px solid #E7EEF6!important;
      border-bottom:1px solid #E7EEF6!important;
    }
.ceo-matrix-updated .axis-row .axis-ingresos{
      background:#FFFFFF;
      padding:6px 8px;
      border-right:1px solid #E7EEF6!important;
    }
.ceo-matrix-updated .axis-row .axis-ingresos .axis-ingreso-tag{
      font-size:10px;
      font-weight:600;
      color:rgba(6,46,79,.4);
      text-transform:none;
      letter-spacing:0;
    }
.ceo-matrix-updated .axis-row .axis-ingresos > span{
      display:flex;
      align-items:center;
      justify-content:center;
      height:30px;
      min-height:30px;
      background:#FFFFFF;
      color:var(--deep);
      border:2px solid var(--blue);
      border-radius:12px;
      box-shadow:0 12px 24px -18px rgba(6,46,79,.12);
      font-size:12px;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
      white-space:nowrap;
    }
.ceo-matrix-updated .axis-row .total-top{
      background:#FFFFFF!important;
      border-left:0!important;
      border-bottom:1px solid #E7EEF6!important;
    }
.ceo-matrix-updated .header-row th:first-child{
      width:21%;
      text-align:left;
      padding-left:14px;
    }
.ceo-matrix-updated .header-row th{
      font-size:11px;
      min-height:54px;
    }
.ceo-matrix-updated .ceo-table td{
      padding:5px 4px;
      font-size:11px;
      min-height:56px;
    }
.ceo-matrix-updated .ceo-table td.etapa-label{
      background:var(--deep);
      color:#fff;
      text-align:left;
      padding-left:14px;
      line-height:1.14;
    }
.ceo-matrix-updated .ceo-table tbody tr:nth-child(even):not(.subtotal-row) td.etapa-label{
      background:#0A3C66;
    }
.ceo-matrix-updated .ceo-table td b{
      display:block;
      font-size:15px;
      line-height:1;
      margin-bottom:4px;
      font-weight:900;
    }
.ceo-matrix-updated .ceo-table td span{
      display:block;
      font-size:10.5px;
      line-height:1;
      font-weight:900;
      opacity:.98;
    }
.ceo-matrix-updated .op{background:#D7ECFA;color:#06395F}
.ceo-matrix-updated .ok{background:#28C9C8;color:#003B3A}
.ceo-matrix-updated .ok-strong{background:#0B8C74;color:#fff;font-weight:900}
.ceo-matrix-updated .risk{background:#F45D7B;color:#fff}
.ceo-matrix-updated .danger{background:#ED254E;color:#fff}
.ceo-matrix-updated .danger-strong{background:#B00D30;color:#fff}
.ceo-matrix-updated .warning{background:#FFD000;color:#062E4F}
.ceo-matrix-updated .overdue-soft{background:#FFE3E8;color:#D8183D}
.ceo-matrix-updated .ok-soft{background:#D6F5EF;color:#0B6F5E}
.ceo-matrix-updated .empty{
      background:#EEF2F6;
      color:#9AA8B8;
      font-size:0!important;
    }
.ceo-matrix-updated .empty::before{
      content:"";
      display:block;
      width:22px;
      height:2px;
      background:#B9C5D1;
      margin:8px auto;
      border-radius:999px;
    }
.ceo-matrix-updated .ceo-table tbody td:last-child{
      background:var(--deep)!important;
      color:#fff!important;
    }
.ceo-matrix-updated .ceo-table tbody tr.subtotal-row td.etapa-label{
      background:#FFFFFF!important;
      color:var(--deep)!important;
    }
.ceo-matrix-updated .subtotal-row td.etapa-label::before{
      content:"Entregado"!important;
      display:block;
      color:var(--deep)!important;
      font-size:9px;
      text-transform:uppercase;
      letter-spacing:.12em;
      margin-bottom:3px;
    }
.ceo-matrix-updated .subtotal-row.subtotal-start td.etapa-label::before{
      content:"6. Entregado"!important;
    }
.ceo-matrix-updated .subtotal-row:not(.subtotal-start) td.etapa-label::before{
      content:"7. Entregado"!important;
    }
.ceo-matrix-updated .ceo-table tbody tr.subtotal-row.subtotal-start td.etapa-label{
      color:#8DE590!important;
    }
.ceo-matrix-updated .ceo-table tbody tr.subtotal-row:not(.subtotal-start) td.etapa-label{
      color:#ED254E!important;
    }
.ceo-matrix-updated .ceo-table tbody tr.subtotal-row td:last-child{
      background:#FFFFFF!important;
      color:var(--deep)!important;
    }
.ceo-matrix-updated .subtotal-start td{
      border-top:3px solid var(--deep);
    }
/* Perimeter navy border: header-row through Total general only */
    .ceo-matrix-updated .header-row th{
      border-top:2px solid var(--deep)!important;
      border-bottom:2px solid var(--deep)!important;
    }
.ceo-matrix-updated .header-row th:first-child,
    .ceo-matrix-updated .ceo-table tbody tr td.etapa-label,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td.etapa-label{
      border-left:2px solid var(--deep)!important;
    }
.ceo-matrix-updated .header-row th:last-child,
    .ceo-matrix-updated .ceo-table tbody tr td:last-child,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:last-child{
      border-right:2px solid var(--deep)!important;
    }
.ceo-matrix-updated .ceo-table tfoot tr:first-child td{
      border-bottom:2px solid var(--deep)!important;
    }
.ceo-matrix-updated .ceo-table tfoot td{
      background:var(--deep)!important;
      color:#fff!important;
      border-bottom:0;
      padding:8px 4px;
    }
.ceo-matrix-updated .ceo-table tfoot td.etapa-label{
      text-align:left;
      padding-left:10px;
    }
.ceo-matrix-updated .ceo-table .header-row th:last-child,
    .ceo-matrix-updated .ceo-table tbody td:last-child,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:last-child{
      border-left:3px solid var(--deep)!important;
    }
.ceo-matrix-updated .ceo-table .header-row th:nth-last-child(3),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(3),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3){
      border-left:3px solid var(--deep)!important;
    }
/* Divisor Cobrado Fuera de Tiempo | Cobrado En Tiempo */
    .ceo-matrix-updated .ceo-table .header-row th:nth-last-child(2),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(2),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2){
      border-left:1px solid #C6D4E2!important;
    }
.ceo-matrix-updated .ceo-table .header-row th:first-child,
    .ceo-matrix-updated .ceo-table tbody td.etapa-label,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td.etapa-label{
      border-left:3px solid var(--deep)!important;
    }
.ceo-matrix-updated .ceo-table .header-row th:nth-last-child(4),
    .ceo-matrix-updated .ceo-table tbody td:nth-last-child(4),
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(4){
      border-left:1px solid rgba(255,255,255,.92)!important;
    }
.ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3) b,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(3) span,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2) b,
    .ceo-matrix-updated .ceo-table tfoot tr:first-child td:nth-last-child(2) span{
      color:#28C9C8!important;
    }
.ceo-matrix-updated .ceo-table td.etapa-label .responsable{
      display:block;
      margin-top:5px;
      font-size:10px;
      line-height:1.15;
      font-weight:500;
      color:rgba(255,255,255,.78);
      letter-spacing:0;
      text-transform:none;
    }
.ceo-matrix-updated .ceo-table .cobrado-head{
      vertical-align:middle;
      background:#FFFFFF!important;
    }
.ceo-matrix-updated .ceo-table .cobrado-head .head-parent{
      display:block;
      color:var(--deep);
      font-size:9px;
      line-height:1;
      font-weight:900;
      letter-spacing:.12em;
      text-transform:uppercase;
      margin-bottom:4px;
    }
.ceo-matrix-updated .ceo-table .cobrado-head .head-main{
      display:block;
      font-size:11px;
      line-height:1.05;
      font-weight:900;
      letter-spacing:0;
      text-transform:none;
    }
.ceo-matrix-updated .ceo-table .cobrado-head .cobrado-ok{color:#8DE590}
.ceo-matrix-updated .ceo-table .cobrado-head .cobrado-late{color:#ED254E}
.ceo-matrix-updated .ceo-table .header-owner{
      display:block;
      margin-top:5px;
      font-size:9px;
      line-height:1.1;
      font-weight:500;
      color:rgba(255,255,255,.72);
      letter-spacing:0;
      text-transform:none;
    }
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-row td{
      border-top:1px solid #FFFFFF!important;
      border-bottom:0!important;
      padding:7px 4px!important;
    }
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-empty{
      background:#FFFFFF!important;
      color:transparent!important;
      border-top:0!important;
      border-bottom:0!important;
      border-left:0!important;
      border-right:1px solid #E7EEF6!important;
    }
.ceo-matrix-updated .ceo-table tfoot .total-potential-cell{
      background:#FFD000!important;
      color:#062E4F!important;
      text-align:center!important;
      vertical-align:middle!important;
      border-left:1px solid #fff!important;
      border-top:3px solid var(--deep)!important;
      border-bottom:0!important;
      border-right:0!important;
      padding:14px 4px!important;
    }
.ceo-matrix-updated .ceo-table tfoot .total-potential-cell b{
      display:block;
      font-size:15px;
      color:#062E4F;
    }
.ceo-matrix-updated .ceo-table tfoot .total-potential-cell span{
      display:block;
      font-size:16px;
      color:#062E4F;
      margin-top:2px;
      white-space:nowrap;
    }
.ceo-matrix-updated .ceo-table tfoot .total-potential-cell em{
      display:block;
      font-style:normal;
      font-weight:800;
      font-size:8px;
      letter-spacing:0;
      text-transform:uppercase;
      color:#062E4F;
      margin-top:8px;
      padding-top:8px;
      border-top:1px solid rgba(6,46,79,.25);
    }
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell{
      background:var(--blue)!important;
      color:#FFFFFF!important;
      text-align:center!important;
      border:3px solid var(--deep)!important;
      padding:14px 6px!important;
      box-shadow:none!important;
    }
.ceo-matrix-updated .ceo-table tfoot tr.cobrado-total-row td.cobrado-total-cell{
      border-top:3px solid var(--deep)!important;
      border-bottom:3px solid var(--deep)!important;
    }
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell b{
      display:block!important;
      font-size:15px!important;
      line-height:1.05!important;
      margin:0 0 6px!important;
      color:#FFFFFF!important;
      font-weight:800!important;
    }
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell span{
      display:block!important;
      font-size:20px!important;
      line-height:1.05!important;
      color:#FFFFFF!important;
      font-weight:900!important;
    }
.ceo-matrix-updated .matrix-note{
      display:none;
    }
.ceo-thesis{
      margin:10px 0 0;
      padding-bottom:2px;
      text-align:center;
      font-family:var(--serif);
      font-weight:800;
      font-size:clamp(16px,1.8vw,20px);
      color:var(--deep);
      letter-spacing:-.02em;
      line-height:1.25;
    }
/* Vista CEO — celdas clicables y panel de detalle */
    .ceo-table td.cell-clickable{
      cursor:pointer;
      position:relative;
      transition:box-shadow .15s ease, transform .15s ease;
    }
.ceo-table td.cell-clickable:hover{
      box-shadow:inset 0 0 0 2px rgba(6,46,79,.55);
      transform:translateY(-1px);
    }
.ceo-table td.cell-active{
      box-shadow:inset 0 0 0 2px var(--deep);
    }
.ceo-detail{
      margin-top:22px;
      border:1.5px solid var(--deep);
      border-radius:16px;
      background:#F7FAFD;
      overflow:hidden;
      animation:ceoDetailIn .22s ease;
    }
@keyframes ceoDetailIn{
      from{opacity:0;transform:translateY(-6px)}
      to{opacity:1;transform:translateY(0)}
    }
.ceo-detail-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:14px 18px;
      background:var(--deep);
    }
.ceo-detail-eyebrow{
      display:block;
      font-size:10px;
      font-weight:800;
      letter-spacing:.12em;
      text-transform:uppercase;
      color:rgba(255,255,255,.6);
      margin-bottom:3px;
    }
.ceo-detail-head h4{
      margin:0;
      font-family:var(--serif);
      font-size:17px;
      font-weight:800;
      color:#fff;
      line-height:1.3;
    }
.ceo-detail-close{
      flex:0 0 auto;
      width:30px;
      height:30px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.4);
      background:transparent;
      color:#fff;
      font-size:13px;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
    }
.ceo-detail-close:hover{background:rgba(255,255,255,.15)}
.ceo-detail-scroll{
      width:100%;
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }
.ceo-detail-table{
      width:100%;
      min-width:0;
      border-collapse:collapse;
      font-size:10.5px;
      table-layout:fixed;
    }
.ceo-detail-table thead th{
      background:#E9F0F7;
      color:var(--deep);
      font-size:8.5px;
      font-weight:800;
      letter-spacing:.02em;
      text-transform:uppercase;
      text-align:left;
      padding:8px 6px;
      border-bottom:1.5px solid var(--deep);
      white-space:normal;
    }
.ceo-detail-table tbody td{
      padding:8px 6px;
      border-bottom:1px solid #E2EBF3;
      color:var(--ink);
      white-space:normal;
      font-weight:600;
      overflow-wrap:break-word;
    }
.ceo-detail-table tbody tr:last-child td{border-bottom:0}
.ceo-detail-table tbody tr:nth-child(even){background:#EFF5FA}
.ceo-detail-table td.monto-cell{font-weight:900;color:var(--deep)}
.ceo-detail-chips{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:10px;
    }
.ceo-detail-chip{
      display:inline-block;
      padding:5px 12px;
      border-radius:999px;
      font-size:11px;
      font-weight:800;
    }
.ceo-detail-chip small{
      display:block;
      font-size:9px;
      font-weight:600;
      opacity:.8;
      margin-top:2px;
      text-transform:none;
      letter-spacing:0;
    }
.ceo-detail-table td.id-cell{font-weight:800;color:rgba(6,46,79,.5)}
.ceo-detail-table td.status-cell span, .ceo-detail-table td.etapa-cell span{
      display:inline-block;
      padding:3px 7px;
      border-radius:999px;
      font-size:9px;
      font-weight:800;
      white-space:normal;
      line-height:1.2;
    }
@media(max-width:680px){
.ceo-detail-head{padding:12px 14px}
.ceo-detail-head h4{font-size:15px}
.ceo-detail-table{font-size:11px}

}
@media(max-width:900px){
.ceo-matrix-updated .axis-proyecto-text{font-size:10px}
.ceo-matrix-updated .matrix-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ceo-matrix-updated .ceo-table{width:100%;min-width:760px;font-size:11px}
.ceo-matrix-updated .ceo-table th{font-size:9.5px!important;padding:8px 4px!important}
.ceo-matrix-updated .ceo-table td{font-size:10.5px!important;padding:7px 4px!important}
.ceo-matrix-updated .ceo-table td.etapa-label{padding-left:10px}
.ceo-matrix-updated .ceo-table td b{font-size:12px!important}
.ceo-matrix-updated .ceo-table td span{font-size:10px!important}
.ceo-matrix-updated .axis-row .axis-ingresos > span{font-size:9.5px}
.ceo-matrix-updated .ceo-table td.etapa-label .responsable{font-size:9px;margin-top:3px}
.ceo-matrix-updated .ceo-table .header-owner{font-size:8px;margin-top:3px}
.ceo-matrix-updated .ceo-table .cobrado-head .head-parent{font-size:8px;margin-bottom:3px}
.ceo-matrix-updated .ceo-table .cobrado-head .head-main{font-size:9.5px}
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell b{font-size:12px!important}
.ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell span{font-size:14px!important}

}
@media(max-width:620px){
.ceo-matrix-updated .axis-proyecto-text{font-size:9px}
.ceo-matrix-updated .ceo-table{min-width:680px}
.ceo-matrix-updated .axis-row .axis-ingresos > span{height:26px;min-height:26px;font-size:8px;border-radius:8px}

}
.seg-cobrado{background:#0C8FD3;}
/* Ajuste Vista CEO: fondo atrás de Etapas de Ingreso en blanco */
    .ceo-matrix-updated .ceo-table thead .axis-row .axis-ingresos,
    .ceo-matrix-updated .ceo-table thead .axis-row th.axis-ingresos{
      background:#FFFFFF!important;
    }
.ceo-matrix-updated .ceo-table thead .axis-row .axis-ingresos > span{
      background:#FFFFFF!important;
    }

/* --- v2 móvil overrides --- */

  /* v2 móvil: matriz completa sin scroll horizontal */
  @media(max-width:900px){
    .ceo-matrix-updated .matrix-wrap{overflow-x:visible!important}
    .ceo-matrix-updated .ceo-table{min-width:0!important;width:100%!important;table-layout:fixed!important;font-size:clamp(7px,1.15vw,11px)!important}
    .ceo-matrix-updated .ceo-table th{font-size:clamp(6.5px,1.05vw,10px)!important;padding:clamp(3px,.6vw,7px) clamp(1px,.4vw,4px)!important}
    .ceo-matrix-updated .ceo-table td{font-size:clamp(7px,1.1vw,10.5px)!important;padding:clamp(3px,.6vw,7px) clamp(1px,.4vw,4px)!important}
    .ceo-matrix-updated .ceo-table td b{font-size:clamp(8px,1.25vw,12px)!important}
    .ceo-matrix-updated .ceo-table td span{font-size:clamp(6.5px,1vw,10px)!important}
    .ceo-matrix-updated .ceo-table td.etapa-label{padding-left:clamp(4px,.8vw,10px)!important}
    .ceo-matrix-updated .ceo-table td.etapa-label .responsable{font-size:clamp(6px,.9vw,9px)!important;margin-top:2px!important}
    .ceo-matrix-updated .ceo-table .header-owner{font-size:clamp(5.5px,.85vw,8px)!important;margin-top:2px!important}
    .ceo-matrix-updated .ceo-table .cobrado-head .head-parent{font-size:clamp(5.5px,.85vw,8px)!important;margin-bottom:2px!important}
    .ceo-matrix-updated .ceo-table .cobrado-head .head-main{font-size:clamp(6.5px,1vw,9.5px)!important}
    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell b{font-size:clamp(8px,1.25vw,12px)!important}
    .ceo-matrix-updated .ceo-table tfoot .cobrado-total-cell span{font-size:clamp(8px,1.3vw,14px)!important}
    .ceo-matrix-updated .axis-row .axis-ingresos > span{font-size:clamp(6.5px,1vw,10px)!important;height:auto!important;min-height:0!important}
    .ceo-matrix-updated .axis-proyecto-text{font-size:clamp(7px,1vw,10px)!important}
  }
  /* Personalizable en 2 renglones */
  .ceo-matrix-updated .axis-row .axis-ingresos > span{flex-direction:column!important;height:auto!important;min-height:30px!important;line-height:1.15!important;padding:5px 10px!important}
  .ceo-matrix-updated .axis-row .axis-ingresos .axis-ingreso-tag{display:block;margin-top:2px}
  .ceo-matrix-updated .axis-proyecto-pill .axis-tag{display:block;margin-top:2px}
  /* KPIs en 2x2 en móvil para que se vean los 4 */
  @media(max-width:600px){
    .ceo-kpi-row{flex-wrap:wrap!important;gap:6px!important}
    .ceo-kpi-row .dash-kpi{flex:1 1 46%!important;font-size:10px!important}
    .ceo-kpi-row .dash-kpi b{font-size:14px!important}
  }
  /* Detalle: celda Proyecto/Cliente combinada, ambos en bold */
  .ceo-detail-table td.proj-cell{line-height:1.25}
  .ceo-detail-table td.proj-cell .proj-name{display:block;font-weight:800;color:var(--deep)}
  .ceo-detail-table td.proj-cell .cli-name{display:block;font-weight:700;color:#5B6B7E;font-size:.9em;margin-top:1px}
  /* Detalle adaptable: la letra se reduce conforme la pantalla se achica */
  @media(max-width:760px){
    .ceo-detail-scroll{overflow-x:visible!important}
    .ceo-detail-table{font-size:11px!important}
    .ceo-detail-table th{padding:8px 6px!important;font-size:9px!important}
    .ceo-detail-table td{padding:8px 6px!important}
  }
  @media(max-width:560px){
    .ceo-detail-table{font-size:9.5px!important}
    .ceo-detail-table th{padding:6px 4px!important;font-size:8px!important}
    .ceo-detail-table td{padding:6px 4px!important}
    .ceo-detail-chips{gap:6px!important}
    .ceo-detail-chip{font-size:9px!important;padding:4px 9px!important}
  }
  @media(max-width:400px){
    .ceo-detail-table{font-size:8px!important}
    .ceo-detail-table th{font-size:7px!important;padding:5px 3px!important}
    .ceo-detail-table td{padding:5px 3px!important}
  }
  /* "6./7. Entregado" responsive en la columna de etapa */
  @media(max-width:640px){
    .ceo-matrix-updated .subtotal-row td.etapa-label::before{font-size:7px!important;letter-spacing:.02em!important;white-space:normal!important}
  }
  @media(max-width:400px){
    .ceo-matrix-updated .subtotal-row td.etapa-label::before{font-size:6px!important;letter-spacing:0!important}
  }
  /* SEO: título accesible oculto sin afectar el diseño */
  .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  /* filas del detalle: apariencia clickeable (sin función en hover) */
  .ceo-detail-table tbody tr{cursor:pointer}


    /* Chips lista Prismax (difference card) */
    .difference-section .difference-card-prismax ul{list-style:none!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:24px 0 0!important;padding:0!important}
    .difference-section .difference-card-prismax ul li{position:relative!important;display:inline-flex!important;align-items:center!important;gap:8px!important;background:#FFFFFF!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:999px!important;padding:9px 16px 9px 13px!important;margin:0!important;font-weight:800!important;font-size:15px!important;line-height:1.15!important;color:#062E4F!important;letter-spacing:-.01em!important;box-shadow:0 8px 20px -12px rgba(3,20,38,.55)!important;transition:transform .18s ease, box-shadow .18s ease}
    .difference-section .difference-card-prismax ul li:before{content:""!important;display:inline-block!important;width:16px!important;height:16px!important;flex:none!important;margin:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230C8FD3'%3E%3Cpath d='M13 2 4 14h6l-1 8 9-12h-6l1-8z'/%3E%3C/svg%3E") center/contain no-repeat!important}
    .difference-section .difference-card-prismax ul li:hover{transform:translateY(-1px);box-shadow:0 12px 24px -12px rgba(3,20,38,.6)!important}
    @media(max-width:900px){
      .difference-section .difference-card-prismax ul{gap:6px!important}
      .difference-section .difference-card-prismax ul li{font-size:clamp(10px,2.4vw,13px)!important;padding:7px 12px!important}
    }

    /* Implementación Brains (nueva sección) */
    /* Implementación Brains */
    .brains-implementation{
      padding:92px 0;
      background:
        radial-gradient(circle at 82% 12%, rgba(12,143,211,.13), transparent 34%),
        linear-gradient(180deg,#FFFFFF 0%, #F7FAFD 100%);
    }

    .brains-implementation-card{
      display:grid;
      grid-template-columns:1.08fr .92fr;
      gap:32px;
      align-items:stretch;
      background:#FFFFFF;
      border:1px solid var(--line);
      border-radius:32px;
      padding:42px;
      box-shadow:0 30px 80px -48px rgba(6,46,79,.46);
      overflow:hidden;
    }

    .brains-implementation-kicker{
      color:var(--blue);
      margin-bottom:16px;
    }

    .brains-implementation-copy h2{
      margin:0 0 18px;
      max-width:760px;
      color:var(--ink);
      font-size:clamp(36px,4.2vw,58px);
      line-height:1;
      letter-spacing:-.055em;
      font-weight:900;
    }

    .brains-implementation-copy p{
      margin:0 0 18px;
      max-width:680px;
      color:var(--muted);
      font-size:17px;
      line-height:1.62;
      font-weight:600;
    }

    .brains-implementation-copy .brains-implementation-lead{
      color:var(--deep);
      font-size:21px;
      line-height:1.42;
      font-weight:800;
    }

    .brains-implementation-btn{
      margin-top:14px;
    }

    .brains-implementation-panel{
      background:
        radial-gradient(circle at 78% 14%, rgba(12,143,211,.42), transparent 36%),
        linear-gradient(135deg,#000009 0%, #062E4F 100%);
      border-radius:28px;
      padding:34px;
      color:#FFFFFF;
      min-height:460px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      position:relative;
      overflow:hidden;
    }

    .brains-implementation-logo{
      position:relative;
      z-index:1;
      display:block;
      width:min(100%, 310px);
      height:auto;
      object-fit:contain;
      object-position:left center;
      margin-bottom:26px;
    }

    .brains-implementation-metrics{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
    }

    .brains-implementation-metrics div{
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.14);
      border-radius:18px;
      padding:17px;
      min-height:132px;
    }

    .brains-implementation-metrics strong{
      display:block;
      margin-bottom:8px;
      color:var(--green);
      font-size:28px;
      line-height:1;
      font-weight:900;
      letter-spacing:-.035em;
    }

    .brains-implementation-metrics span{
      display:block;
      color:rgba(255,255,255,.82);
      font-size:13px;
      line-height:1.35;
      font-weight:700;
    }

    .brains-implementation-footer{
      margin:22px auto 0;
      max-width:980px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      background:#EAF6FF;
      border:1px solid #CFE8FA;
      border-radius:22px;
      padding:22px 26px;
    }

    .brains-implementation-footer strong{
      color:var(--deep);
      font-size:18px;
      line-height:1.2;
      font-weight:900;
    }

    .brains-implementation-footer span{
      color:var(--muted);
      font-size:15px;
      line-height:1.45;
      font-weight:700;
      max-width:560px;
    }

    @media(max-width:980px){
      .brains-implementation-card{
        grid-template-columns:1fr;
        padding:30px;
      }

      .brains-implementation-panel{
        min-height:0;
      }

      .brains-implementation-footer{
        flex-direction:column;
        align-items:flex-start;
      }
    }

    @media(max-width:620px){
      .brains-implementation{
        padding:68px 0;
      }

      .brains-implementation-card{
        padding:24px;
        border-radius:26px;
      }

      .brains-implementation-copy .brains-implementation-lead{
        font-size:18px;
      }

      .brains-implementation-panel{
        padding:24px;
        border-radius:22px;
      }

      .brains-implementation-logo{
        width:min(100%, 240px);
      }

      .brains-implementation-metrics{
        grid-template-columns:1fr;
      }

      .brains-implementation-metrics div{
        min-height:0;
      }
    }

    /* Formulario demo Prismax */
    .demo-form-section{
      background:#FFFFFF!important;
      color:var(--ink);
      padding:70px 0 56px;
    }

    .demo-form-head{
      max-width:780px;
      margin:0 auto 30px;
      text-align:center;
    }

    .demo-form-head h2{
      margin:0 0 10px;
      color:var(--ink);
      font-size:34px;
      line-height:1.05;
      letter-spacing:-.045em;
      font-weight:900;
    }

    .demo-form-head p{
      margin:0 auto;
      color:#5D687B;
      font-size:17px;
      line-height:1.45;
      max-width:700px;
    }

    .demo-form{
      max-width:780px;
      margin:0 auto;
      background:#FFFFFF;
    }

    .form-grid{
      display:grid;
      grid-template-columns:repeat(2, minmax(0, 1fr));
      gap:28px 18px;
    }

    .form-field{
      min-width:0;
    }

    .form-field.full{
      grid-column:1 / -1;
    }

    .form-field label{
      display:block;
      margin:0 0 8px;
      color:#344052;
      font-size:13px;
      line-height:1.1;
      font-weight:900;
    }

    .form-field label span{
      color:#FF3158;
    }

    .form-field label em{
      font-style:normal;
      font-weight:600;
      color:#6D7787;
    }

    .demo-form input,
    .demo-form select,
    .demo-form textarea{
      width:100%;
      margin:0;
      background:#FFFFFF;
      border:1.5px solid #FF3158;
      border-radius:12px;
      color:#111827;
      font:inherit;
      font-size:15px;
      line-height:1.2;
      padding:14px 16px;
      outline:none;
      box-shadow:0 0 0 4px rgba(255,49,88,.08);
      transition:border-color .18s ease, box-shadow .18s ease;
    }

    .demo-form input,
    .demo-form select{
      height:48px;
    }

    .demo-form textarea{
      min-height:86px;
      resize:vertical;
      border-color:#DDE7F0;
      box-shadow:none;
    }

    .demo-form input::placeholder,
    .demo-form textarea::placeholder{
      color:#7A7F89;
    }

    .demo-form select{
      appearance:auto;
      cursor:pointer;
    }

    .demo-form input:focus,
    .demo-form select:focus,
    .demo-form textarea:focus{
      border-color:var(--blue);
      box-shadow:0 0 0 4px rgba(12,143,211,.12);
    }

    .form-field small{
      display:block;
      margin-top:8px;
      color:#FF3158;
      font-size:12px;
      line-height:1.1;
      font-weight:800;
    }

    .form-field.full:last-child small{
      display:none;
    }

    .demo-submit{
      width:100%;
      margin-top:22px;
      border:0;
      cursor:pointer;
      font-family:var(--sans);
      border-radius:999px!important;
      padding:16px 24px!important;
      font-size:16px!important;
      font-weight:900!important;
      box-shadow:0 16px 34px -18px rgba(12,143,211,.7)!important;
    }

    .demo-note{
      margin:16px 0 0;
      text-align:center;
      color:#687487;
      font-size:12px;
      line-height:1.3;
      font-weight:600;
    }

    @media(max-width:760px){
      .demo-form-section{
        padding:54px 0 44px;
      }

      .demo-form-head h2{
        font-size:30px;
      }

      .demo-form-head p{
        font-size:15px;
      }

      .form-grid{
        grid-template-columns:1fr;
        gap:22px;
      }
    }

  
    /* Sección: No es un ERP. No es un CRM. */
    .difference-section{
      padding:88px 0;
      background:#F5F9FD;
    }

    .difference-section .section-head{
      margin-bottom:38px;
    }

    .difference-section .section-head .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:12px;
      color:var(--blue);
      font-size:14px;
      font-weight:900;
      letter-spacing:.08em;
      text-transform:uppercase;
      margin-bottom:18px;
    }

    .difference-section .section-head .eyebrow i{
      width:16px;
      height:16px;
      background:var(--blue);
      clip-path:polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0% 50%);
      display:inline-block;
    }

    .difference-section .section-head h2{
      margin:0 0 16px;
      color:var(--ink);
      font-size:64px;
      line-height:1.02;
      letter-spacing:-.05em;
      font-weight:900;
      max-width:980px;
    }

    .difference-section .section-head .sub{
      margin:0;
      max-width:980px;
      color:#64748B;
      font-size:24px;
      line-height:1.35;
    }

    .difference-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0, 1fr));
      gap:36px;
      align-items:stretch;
    }

    .difference-card{
      border-radius:18px;
      padding:40px 38px 34px;
      min-height:560px;
      box-shadow:0 12px 32px -24px rgba(6,46,79,.28);
    }

    .difference-card-light{
      background:#FFFFFF;
      border:1px solid #E3ECF5;
      color:var(--ink);
    }

    .difference-card-prismax{
      background:var(--blue);
      border:1px solid rgba(12,143,211,.2);
      color:#FFFFFF;
    }

    .difference-icon{
      width:110px;
      height:110px;
      border-radius:999px;
      background:#EEF4F9;
      color:#06213E;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:24px;
    }

    .difference-icon svg{
      width:54px;
      height:54px;
      display:block;
    }

    .difference-icon-prismax{
      background:#FFFFFF;
      color:var(--blue);
    }

    .difference-card h3{
      margin:0 0 10px;
      color:inherit;
      font-size:56px;
      line-height:1;
      letter-spacing:-.04em;
      font-weight:900;
    }

    .difference-card .accent{
      margin:0 0 18px;
      color:var(--blue);
      font-size:24px;
      line-height:1.12;
      font-weight:900;
    }

    .difference-card .prismax-accent{
      color:#FFFFFF;
    }

    .difference-card p{
      margin:0 0 18px;
      color:inherit;
      font-size:22px;
      line-height:1.23;
    }

    .difference-card-light p{
      color:#5E6C82;
    }

    .difference-card p strong{
      color:var(--ink);
      font-weight:900;
    }

    .difference-card .warn{
      color:#9F0A0A;
      font-weight:900;
    }

    .difference-card .bottom-note{
      margin-top:26px;
      color:#6C7A8F;
    }

    .difference-card-prismax p{
      color:rgba(255,255,255,.95);
    }

    .difference-card-prismax ul{
      margin:26px 0 0 24px;
      padding:0 0 0 18px;
    }

    .difference-card-prismax li{
      margin:8px 0;
      font-size:22px;
      line-height:1.22;
      color:#FFFFFF;
    }

    .difference-card-prismax li::marker{
      color:#FFFFFF;
    }

    .difference-card-prismax li strong{
      font-weight:900;
    }

    @media (max-width: 1200px){
      .difference-section .section-head h2{
        font-size:52px;
      }

      .difference-section .section-head .sub{
        font-size:21px;
      }

      .difference-grid{
        gap:22px;
      }

      .difference-card{
        min-height:0;
        padding:28px 26px 26px;
      }

      .difference-icon{
        width:86px;
        height:86px;
      }

      .difference-icon svg{
        width:42px;
        height:42px;
      }

      .difference-card h3{
        font-size:44px;
      }

      .difference-card .accent{
        font-size:18px;
      }

      .difference-card p,
      .difference-card-prismax li{
        font-size:18px;
      }
    }

    @media (max-width: 900px){
      .difference-section{
        padding:70px 0;
      }

      .difference-grid{
        grid-template-columns:1fr!important;
        gap:20px!important;
      }
      .difference-card{min-height:0;padding:30px 26px}
      .difference-icon{width:64px;height:64px;margin-bottom:14px}
      .difference-icon svg{width:30px;height:30px}
      .difference-card h3{font-size:30px;margin:0 0 6px}
      .difference-card .accent{font-size:17px;margin:0 0 10px;line-height:1.2}
      .difference-card p{font-size:16px;line-height:1.5;margin:0 0 10px}
      .difference-card .bottom-note{margin-top:12px}
      .difference-card-prismax ul{margin:12px 0 0 18px;font-size:16px}

      .difference-section .section-head h2{
        font-size:42px;
      }

      .difference-section .section-head .sub{
        font-size:18px;
      }
    }

  
    /* Frase final CRM */
    .difference-card .crm-note{
      margin-top:26px;
      color:#062E4F!important;
      font-weight:900;
      font-size:24px;
      line-height:1.18;
    }

    @media (max-width:1200px){
      .difference-card .crm-note{
        font-size:19px;
      }
    }

  
    /* Ajustes sección Generador + Trazabilidad */
    .map-footer .map-note{
      display:flex!important;
      align-items:flex-start!important;
      gap:18px!important;
    }

    .map-note-icon{
      width:48px;
      height:48px;
      min-width:48px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-top:2px;
    }

    .map-note-icon svg{
      width:24px;
      height:24px;
      display:block;
    }

    .map-note-icon.generator-icon{
      background:#DDF8DF;
      color:#23A947;
    }

    .map-note-icon.trace-icon{
      background:#E6F4FD;
      color:var(--blue);
    }

    .map-note b{
      display:block;
      margin-bottom:8px;
    }

    /* Formulario sin textos rojos */
    .demo-form .form-field small{
      display:none!important;
    }

    .demo-form input,
    .demo-form select{
      border-color:#DDE7F0!important;
      box-shadow:none!important;
    }

    .demo-form label span{
      color:var(--blue)!important;
    }

    .demo-form input:focus,
    .demo-form select:focus,
    .demo-form textarea:focus{
      border-color:var(--blue)!important;
      box-shadow:0 0 0 4px rgba(12,143,211,.12)!important;
    }

    /* Lanzamiento Agosto 2026 */
    .launch-section{
      padding:86px 0;
      background:
        radial-gradient(circle at 80% 16%, rgba(12,143,211,.18), transparent 34%),
        linear-gradient(135deg,#062E4F 0%, #0A5B8F 48%, #0C8FD3 100%);
      color:#FFFFFF;
      overflow:hidden;
    }

    .launch-card{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:34px;
      align-items:stretch;
    }

    .launch-kicker{
      color:#8DE590!important;
      margin-bottom:18px!important;
    }

    .launch-copy{
      padding:22px 0;
    }

    .launch-copy h2{
      margin:0 0 18px;
      color:#FFFFFF;
      font-size:clamp(46px, 5.5vw, 72px);
      line-height:.98;
      letter-spacing:-.055em;
      font-weight:900;
      max-width:760px;
    }

    .launch-copy p{
      margin:0 0 18px;
      color:rgba(255,255,255,.88);
      font-size:18px;
      line-height:1.55;
      max-width:680px;
    }

    .launch-copy .launch-lead{
      font-size:22px;
      line-height:1.42;
      color:#FFFFFF;
      font-weight:800;
    }

    .launch-btn{
      margin-top:16px;
      background:#FFFFFF!important;
      color:#062E4F!important;
      border:0!important;
      box-shadow:0 18px 42px -24px rgba(0,0,0,.45)!important;
    }

    .launch-panel{
      background:rgba(255,255,255,.96);
      color:#062E4F;
      border:1px solid rgba(255,255,255,.5);
      border-radius:30px;
      padding:34px;
      box-shadow:0 30px 80px -44px rgba(0,0,0,.55);
      position:relative;
      overflow:hidden;
    }

    .launch-panel::before{
      content:"";
      position:absolute;
      inset:auto -50px -80px auto;
      width:220px;
      height:220px;
      border-radius:50%;
      background:rgba(12,143,211,.12);
    }

    .launch-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background:#E6F4FD;
      color:var(--blue);
      border:1px solid #B8DDF3;
      border-radius:999px;
      padding:9px 14px;
      font-size:12px;
      font-weight:900;
      letter-spacing:.08em;
      text-transform:uppercase;
      margin-bottom:22px;
    }

    .launch-panel h3{
      margin:0 0 18px;
      font-size:38px;
      line-height:1;
      letter-spacing:-.04em;
      color:#062E4F;
      font-weight:900;
    }

    .launch-panel ul{
      margin:0;
      padding:0;
      list-style:none;
      display:grid;
      gap:14px;
    }

    .launch-panel li{
      position:relative;
      padding-left:28px;
      font-size:16px;
      line-height:1.35;
      color:#344052;
      font-weight:800;
    }

    .launch-panel li::before{
      content:"";
      position:absolute;
      left:0;
      top:.42em;
      width:12px;
      height:12px;
      border-radius:50%;
      background:#8DE590;
      box-shadow:0 0 0 5px rgba(141,229,144,.22);
    }

    .launch-bottom{
      margin-top:28px;
      padding:18px 20px;
      border-radius:18px;
      background:#062E4F;
      color:#FFFFFF;
    }

    .launch-bottom-title{
      display:block;
      font-size:15px;
      font-weight:800;
      line-height:1.1;
      margin-bottom:12px;
      color:#fff;
    }

    .phase-rows{
      display:flex;
      flex-direction:column;
    }

    .phase-row{
      display:flex;
      align-items:baseline;
      justify-content:space-between;
      gap:10px;
      padding:6px 0;
      font-size:13.5px;
      border-bottom:1px solid rgba(255,255,255,.16);
    }

    .phase-row:last-of-type{
      border-bottom:none;
    }

    .phase-row .phase-range{
      color:rgba(255,255,255,.72);
      font-weight:600;
    }

    .phase-row .phase-disc{
      color:#8DE590;
      font-weight:800;
      white-space:nowrap;
    }

    .phase-note{
      display:block;
      margin-top:12px;
      font-size:11.5px;
      color:rgba(255,255,255,.6);
      line-height:1.4;
    }

    .phase-note-2{
      margin-top:4px;
    }

    .launch-bottom span{
      color:rgba(255,255,255,.8);
      font-size:14px;
      line-height:1.3;
    }

    @media(max-width:900px){
      .launch-card{
        grid-template-columns:1fr;
      }

      .launch-section{
        padding:68px 0;
      }
    }

    @media(max-width:620px){
      .map-footer .map-note{
        flex-direction:column;
      }

      .launch-panel{
        padding:26px;
        border-radius:24px;
      }

      .launch-copy .launch-lead{
        font-size:18px;
      }
    }

  
    /* Ajuste Vista CEO: fondo atrás de Etapas de Ingreso en blanco */
    .ceo-matrix-updated .ceo-table thead .axis-row .axis-ingresos,
    .ceo-matrix-updated .ceo-table thead .axis-row th.axis-ingresos{
      background:#FFFFFF!important;
    }

    .ceo-matrix-updated .ceo-table thead .axis-row .axis-ingresos > span{
      background:#FFFFFF!important;
    }

    /* Ajuste recuadros ¿Prismax es para tu empresa?: texto normal alineado al círculo */
    .fit-card.fit-card-horizontal{
      display:grid!important;
      grid-template-columns:54px minmax(0,1fr)!important;
      column-gap:16px!important;
      row-gap:12px!important;
      align-items:start!important;
    }

    .fit-card.fit-card-horizontal .fit-icon{
      grid-column:1!important;
      grid-row:1!important;
      margin-top:0!important;
    }

    .fit-card.fit-card-horizontal .fit-copy{
      display:contents!important;
    }

    .fit-card.fit-card-horizontal .fit-copy h3{
      grid-column:2!important;
      grid-row:1!important;
      margin:0!important;
      align-self:start!important;
    }

    .fit-card.fit-card-horizontal .fit-copy p{
      grid-column:1 / -1!important;
      grid-row:2!important;
      text-align:left!important;
      margin:0!important;
      padding-left:0!important;
    }

    @media (max-width:1100px){
      .fit-card.fit-card-horizontal{
        grid-template-columns:48px minmax(0,1fr)!important;
        column-gap:12px!important;
      }
    }

    @media (max-width:900px){
      .fit-card.fit-card-horizontal{
        grid-template-columns:42px minmax(0,1fr)!important;
      }
    }

  
    /* Sección Brains proof antes de lanzamiento */
    .brains-proof-section{
      padding:88px 0;
      background:#FFFFFF;
      color:var(--ink);
    }

    .brains-proof-card{
      display:grid;
      grid-template-columns:1.15fr .85fr;
      gap:34px;
      align-items:stretch;
      background:
        radial-gradient(circle at 85% 12%, rgba(12,143,211,.12), transparent 38%),
        linear-gradient(180deg,#FFFFFF 0%,#F7FAFD 100%);
      border:1px solid #D6E5F1;
      border-radius:34px;
      padding:44px;
      box-shadow:0 28px 80px -54px rgba(6,46,79,.45);
    }

    .brains-kicker{
      color:var(--blue)!important;
      margin-bottom:16px!important;
    }

    .brains-proof-copy h2{
      margin:0 0 18px;
      max-width:780px;
      color:var(--ink);
      font-size:clamp(42px, 4.8vw, 64px);
      line-height:1;
      letter-spacing:-.055em;
      font-weight:900;
    }

    .brains-proof-copy p{
      margin:0 0 18px;
      max-width:760px;
      color:#5D687B;
      font-size:17px;
      line-height:1.58;
    }

    .brains-proof-copy .brains-lead{
      color:#062E4F;
      font-size:21px;
      line-height:1.42;
      font-weight:800;
    }

    .brains-link{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      margin-top:10px;
      padding:14px 22px;
      border-radius:999px;
      background:var(--blue);
      color:#FFFFFF;
      text-decoration:none;
      font-weight:900;
      box-shadow:0 16px 34px -20px rgba(12,143,211,.7);
    }

    .brains-proof-panel{
      background:#062E4F;
      color:#FFFFFF;
      border-radius:28px;
      padding:34px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      min-height:430px;
      position:relative;
      overflow:hidden;
    }

    .brains-proof-panel::before{
      content:"";
      position:absolute;
      width:260px;
      height:260px;
      border-radius:50%;
      right:-90px;
      top:-90px;
      background:rgba(12,143,211,.34);
    }

    .brains-logo-word{
      position:relative;
      z-index:1;
      font-size:44px;
      line-height:1;
      letter-spacing:-.06em;
      font-weight:900;
      color:#FFFFFF;
    }

    .proof-metrics{
      position:relative;
      z-index:1;
      display:grid;
      gap:16px;
    }

    .proof-metrics div{
      padding:18px;
      border-radius:18px;
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.14);
    }

    .proof-metrics strong{
      display:block;
      margin-bottom:6px;
      font-size:26px;
      line-height:1;
      color:#8DE590;
      font-weight:900;
    }

    .proof-metrics span{
      display:block;
      color:rgba(255,255,255,.82);
      font-size:14px;
      line-height:1.4;
      font-weight:700;
    }

    .brains-testimonial-strip{
      margin-top:22px;
      display:grid;
      grid-template-columns:.55fr 1fr 1fr;
      gap:18px;
      align-items:stretch;
    }

    .testimonial-label{
      display:flex;
      align-items:center;
      justify-content:center;
      min-height:130px;
      border-radius:22px;
      background:#E6F4FD;
      color:var(--blue);
      font-size:13px;
      font-weight:900;
      letter-spacing:.12em;
      text-transform:uppercase;
      text-align:center;
      padding:18px;
    }

    .testimonial-card{
      min-height:130px;
      border:1px solid #D6E5F1;
      border-radius:22px;
      background:#FFFFFF;
      padding:22px;
      box-shadow:0 18px 44px -34px rgba(6,46,79,.35);
    }

    .testimonial-card p{
      margin:0 0 12px;
      color:#062E4F;
      font-size:18px;
      line-height:1.35;
      font-weight:900;
    }

    .testimonial-card span{
      color:#64748B;
      font-size:13px;
      line-height:1.3;
      font-weight:700;
    }

    @media(max-width:900px){
      .brains-proof-card{
        grid-template-columns:1fr;
        padding:30px;
      }

      .brains-proof-panel{
        min-height:0;
      }

      .brains-testimonial-strip{
        grid-template-columns:1fr;
      }
    }

    @media(max-width:620px){
      .brains-proof-section{
        padding:64px 0;
      }

      .brains-proof-card{
        padding:24px;
        border-radius:26px;
      }

      .brains-proof-copy .brains-lead{
        font-size:18px;
      }

      .brains-proof-copy p{
        font-size:15px;
      }

      .brains-proof-panel{
        padding:26px;
        border-radius:22px;
      }
    }

  
    /* Ajuste sección Brains: quitar testimoniales y usar logo oficial */
    .brains-logo-img{
      position:relative;
      z-index:1;
      display:block;
      width:min(100%, 360px);
      max-height:160px;
      object-fit:contain;
      object-position:left center;
      margin-bottom:34px;
    }

    .brains-testimonial-strip{
      display:none!important;
    }

    @media(max-width:900px){
      .brains-logo-img{
        width:min(100%, 300px);
        max-height:130px;
      }
    }


    /* ===== Pantalla de confirmación (contacto_inicio_gracias) ===== */
    .gracias-section{
      background:radial-gradient(120% 100% at 85% 8%, rgba(12,143,211,.10), transparent 42%),
                 linear-gradient(180deg,#FFFFFF 0%,#F3F9FD 100%);
      min-height:calc(100vh - 72px);
      display:flex;
      align-items:center;
      justify-content:center;
      padding:64px 0;
    }

    .gracias-card{
      background:#FFFFFF;
      border:1px solid var(--line);
      border-radius:26px;
      box-shadow:0 30px 80px -44px rgba(6,46,79,.45);
      width:100%;
      max-width:620px;
      padding:52px 46px;
      text-align:center;
    }

    .gracias-icon{
      width:92px;
      height:92px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      margin:0 auto 26px;
    }

    .gracias-icon svg{
      width:46px;
      height:46px;
      display:block;
    }

    .gracias-icon.ok{
      background:#E4F7EE;
      color:#12A05C;
    }

    .gracias-icon.err{
      background:#FDE7EA;
      color:#D8183D;
    }

    .gracias-card h1{
      font-family:var(--serif);
      font-size:33px;
      line-height:1.14;
      letter-spacing:-.01em;
      color:var(--deep);
      margin:0 0 14px;
    }

    .gracias-lead{
      color:var(--muted);
      font-size:17px;
      line-height:1.6;
      margin:0 auto;
      max-width:470px;
    }

    .gracias-folio{
      display:inline-block;
      margin:20px 0 0;
      background:var(--blue-light);
      border:1px solid #BFE0F3;
      border-radius:999px;
      padding:9px 20px;
      font-size:14px;
      font-weight:700;
      color:var(--deep);
    }

    .gracias-folio b{
      color:var(--blue);
    }

    .gracias-actions{
      display:flex;
      gap:14px;
      justify-content:center;
      flex-wrap:wrap;
      margin-top:32px;
    }

    .gracias-note{
      margin:24px 0 0;
      font-size:13px;
      line-height:1.5;
      color:#8A94A6;
    }

    .gracias-note a{
      color:var(--blue);
      font-weight:700;
    }

    @media(max-width:560px){
      .gracias-section{
        min-height:auto;
        padding:44px 0;
      }
      .gracias-card{
        padding:38px 24px;
        border-radius:20px;
      }
      .gracias-card h1{
        font-size:26px;
      }
      .gracias-lead{
        font-size:15px;
      }
      .gracias-actions{
        flex-direction:column;
      }
      .gracias-actions .btn{
        width:100%;
      }
    }

