        :root {
            --primary-green: #7CB342;
            --dark-green: #558B2F;
            --light-green: #9CCC65;
            --primary-yellow: #FDD835;
            --dark-yellow: #FBC02D;
            --accent-purple: #9C27B0;
            --dark-bg: #1a1a1a;
            --text-dark: #2c3e50;
            --text-light: #666;
            --white: #ffffff;
            --gray-bg: #f5f5f5;
            --glass-bg: rgba(255, 255, 255, 0.95);
            --sector-a: rgb(128,187,70);
            --sector-b: rgb(242,113,114);
            --sector-c: rgb(248,246,176);
            --sector-conf: rgb(255,189,121);
            --sector-ronda: rgb(172,88,0);
            --sector-gastro: rgb(130,108,79);
            --sector-acceso: rgb(20,79,255);            
        }
        * { margin:0; padding:0; box-sizing:border-box; }
        body { font-family:'Open Sans',sans-serif; color:var(--text-dark); overflow-x:hidden; background:var(--white); }
        h1,h2,h3,h4,h5,h6 { font-family:'Montserrat',sans-serif; font-weight:700; }
        .navbar { position:fixed; top:0; width:100%; background:rgba(255,255,255,.95); backdrop-filter:blur(10px); z-index:1000; padding:15px 0; box-shadow:0 2px 20px rgba(0,0,0,.1); transition:all .3s ease; }
        .navbar.scrolled { padding:10px 0; background:rgba(255,255,255,.98); }
      

        .logo{
        display:flex;
        align-items:center;
        text-decoration:none;
        }

        .logo img{
        height:45px;
        width:auto;
        display:block;
        }


        .btn-nav { background:var(--primary-green); color:white !important; padding:10px 25px; border-radius:25px; transition:all .3s !important; }
        .btn-nav:hover { background:var(--dark-green); transform:translateY(-2px); box-shadow:0 5px 15px rgba(124,179,66,.4); }
        .btn-nav::after { display:none !important; }
        .mobile-menu { display:none; font-size:1.5rem; cursor:pointer; }
        .hero { margin-top:80px; min-height:90vh; 
          background:
            /* linear-gradient(135deg, rgba(26,26,26,.8), rgba(26,26,26,.6)), 
            url('https://images.unsplash.com/photo-1540575467063-178a50c2df87?w=1920') center/cover;  */
             linear-gradient(rgba(0,0,0,.6), rgba(0,0,0,.6)),
              url('../assets/header.png');
          display:flex; 
          align-items:center; 
          position:relative; 
          overflow:hidden; 
        }
        .hero::before { content:''; position:absolute; top:-50%; right:-20%; width:800px; height:800px; background:radial-gradient(circle, rgba(124,179,66,.2) 0%, transparent 70%); animation:pulse 4s ease-in-out infinite; }
        @keyframes pulse { 0%,100%{transform:scale(1);opacity:.5;} 50%{transform:scale(1.1);opacity:.8;} }
        .hero-container { max-width:1400px; margin:0 auto; padding:0 30px; display:grid; grid-template-columns:1.2fr 1fr; gap:60px; align-items:center; position:relative; z-index:2; width:100%; }
        .hero-content h1 { font-size:4rem; color:white; line-height:1.1; margin-bottom:20px; text-transform:uppercase; letter-spacing:-1px; }
        .hero-content h1 .highlight { color:var(--primary-yellow); display:block; font-size:5rem; text-shadow:0 0 30px rgba(253,216,53,.5); }
        .edition-badge { display:inline-block; background:var(--primary-green); color:white; padding:8px 20px; border-radius:20px; font-weight:700; font-size:.9rem; margin-bottom:20px; text-transform:uppercase; letter-spacing:2px; animation:glow 2s ease-in-out infinite; }
        @keyframes glow { 0%,100%{box-shadow:0 0 10px rgba(124,179,66,.5);} 50%{box-shadow:0 0 25px rgba(124,179,66,.8);} }
        .hero-subtitle { font-size:1.3rem; color:rgba(255,255,255,.9); margin-bottom:30px; line-height:1.6; }
        .hero-date { display:flex; align-items:center; gap:20px; background:rgba(255,255,255,.1); backdrop-filter:blur(10px); padding:20px 30px; border-radius:15px; border:1px solid rgba(255,255,255,.2); margin-bottom:30px; }
        .date-icon { width:60px; height:60px; background:var(--primary-yellow); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.5rem; color:var(--dark-bg); }
        .date-text h3 { color:white; font-size:1.5rem; margin-bottom:5px; }
        .date-text p { color:rgba(255,255,255,.8); font-size:.95rem; }
        .hero-buttons { display:flex; gap:20px; flex-wrap:wrap; }
        .btn-primary { background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); color:white; padding:15px 35px; border-radius:30px; text-decoration:none; font-weight:700; display:inline-flex; align-items:center; gap:10px; transition:all .3s; border:none; cursor:pointer; font-size:1rem; box-shadow:0 5px 20px rgba(124,179,66,.4); }
        .btn-primary:hover { transform:translateY(-3px); box-shadow:0 10px 30px rgba(124,179,66,.6); }
        .btn-secondary { background:transparent; color:white; padding:15px 35px; border-radius:30px; text-decoration:none; font-weight:700; display:inline-flex; align-items:center; gap:10px; transition:all .3s; border:2px solid white; cursor:pointer; font-size:1rem; }
        .btn-secondary:hover { background:white; color:var(--dark-bg); transform:translateY(-3px); }
        .hero-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
        .stat-card { background:rgba(255,255,255,.1); backdrop-filter:blur(10px); padding:25px; border-radius:15px; text-align:center; border:1px solid rgba(255,255,255,.2); transition:all .3s; }
        .stat-card:hover { transform:translateY(-5px); background:rgba(255,255,255,.15); border-color:var(--primary-yellow); }
        .stat-number { font-size:2.5rem; font-weight:800; color:var(--primary-yellow); display:block; }
        .stat-label { color:rgba(255,255,255,.9); font-size:.9rem; margin-top:5px; }
        .about, .activities, .map-section, .business-round, .gallery, .news, .contact, .sponsors { padding:100px 0; }
        .about, .business-round, .news, .contact, .sponsors, .map-section { background:var(--white); }
        .activities, .gallery { background:var(--gray-bg); }
        .schedule, .location { background:linear-gradient(135deg, var(--dark-bg) 0%, #2d3436 100%); color:white; }
        .schedule { padding:100px 0; position:relative; overflow:hidden; }
        .location { padding:100px 0 0; }
        .card-exp {transition:.3s;}
        .card-exp:hover {transform:translateY(-6px);box-shadow:0 15px 40px rgba(0,0,0,.2);}
        .section-container { max-width:1400px; margin:0 auto; padding:0 30px; }
        .section-header { text-align:center; margin-bottom:60px; }
        .section-tag { display:inline-block; background:rgba(124,179,66,.1); color:var(--primary-green); padding:8px 20px; border-radius:20px; font-weight:700; font-size:.85rem; text-transform:uppercase; letter-spacing:2px; margin-bottom:15px; }
        .section-title { font-size:2.8rem; color:var(--text-dark); margin-bottom:20px; line-height:1.2; }
        .section-subtitle { font-size:1.1rem; color:var(--text-light); max-width:700px; margin:0 auto; line-height:1.8; }
        .about-grid, .business-content, .location-content, .contact-wrapper { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
        .about-image { position:relative; }
        .about-image img { width:100%; border-radius:20px; box-shadow:0 20px 60px rgba(0,0,0,.15); }
        .experience-badge { position:absolute; bottom:-20px; right:-20px; background:var(--primary-yellow); color:var(--dark-bg); padding:30px; border-radius:20px; text-align:center; box-shadow:0 10px 30px rgba(0,0,0,.2); animation:float 3s ease-in-out infinite; }
        @keyframes float { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);} }
        .experience-badge .years { font-size:3rem; font-weight:800; display:block; line-height:1; }
        .about-content h3, .business-text h3, .contact-info h3 { font-size:2rem; margin-bottom:20px; }
        .about-content p, .business-text p, .contact-info > p { color:var(--text-light); line-height:1.8; margin-bottom:20px; font-size:1.05rem; }
        .features-list, .business-features, .location-details, .contact-list { list-style:none; }
        .features-list li, .business-features li, .location-details li { display:flex; gap:15px; margin-bottom:15px; }
        .features-list i, .location-details i, .contact-method i { width:40px; height:40px; background:rgba(124,179,66,.1); color:var(--primary-green); border-radius:50%; display:flex; align-items:center; justify-content:center; }

        .about-showcase{
          padding:100px 0 110px;
          background:linear-gradient(180deg, #fbfcfd 0%, #f3f6f8 100%);
          position:relative;
          overflow:hidden;
        }
        .about-showcase::before{
          content:'';
          position:absolute;
          top:-120px;
          right:-120px;
          width:360px;
          height:360px;
          background:radial-gradient(circle, rgba(124,179,66,.14) 0%, rgba(124,179,66,0) 68%);
          pointer-events:none;
        }
        .about-showcase-header{ margin-bottom:48px; }
        .about-showcase-grid{
          display:grid;
          grid-template-columns:minmax(0, 1.02fr) minmax(0, .98fr);
          grid-template-areas:
            'intro video'
            'image story';
          gap:30px;
          align-items:stretch;
        }
        .about-intro-card,
        .about-video-card,
        .about-image-card,
        .about-story-card{
          background:#fff;
          border:1px solid #e5ebf0;
          border-radius:28px;
          box-shadow:0 20px 50px rgba(23,39,58,.08);
        }
        .about-intro-card{
          grid-area:intro;
          padding:34px;
          position:relative;
          overflow:hidden;
        }
        .about-intro-card::before{
          content:'';
          position:absolute;
          inset:0 auto 0 0;
          width:5px;
          background:linear-gradient(180deg, var(--primary-green), var(--primary-yellow));
        }
        .about-card-kicker{
          display:inline-flex;
          align-items:center;
          gap:10px;
          margin-bottom:16px;
          font-size:.83rem;
          font-weight:800;
          color:var(--primary-green);
          text-transform:uppercase;
          letter-spacing:1.5px;
        }
        .about-intro-card h3{
          font-size:2.35rem;
          line-height:1.12;
          margin-bottom:16px;
          color:#1b2b3d;
        }
        .about-intro-card p{
          color:#58697a;
          font-size:1.03rem;
          line-height:1.75;
          margin-bottom:20px;
        }
        .about-pill-row{
          display:flex;
          flex-wrap:wrap;
          gap:12px;
          margin-bottom:24px;
        }
        .about-pill{
          display:inline-flex;
          align-items:center;
          gap:8px;
          background:rgba(124,179,66,.10);
          color:#3d5c2a;
          border:1px solid rgba(124,179,66,.16);
          border-radius:999px;
          padding:10px 14px;
          font-size:.92rem;
          font-weight:700;
        }
        .about-highlight-list{
          list-style:none;
          display:grid;
          gap:14px;
          margin-bottom:28px;
        }
        .about-highlight-list li{
          display:flex;
          align-items:flex-start;
          gap:14px;
          color:#2f4152;
          line-height:1.5;
        }
        .about-check{
          flex:0 0 28px;
          width:28px;
          height:28px;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          border-radius:50%;
          background:linear-gradient(135deg, var(--primary-green), var(--dark-green));
          color:#fff;
          box-shadow:0 10px 22px rgba(124,179,66,.26);
          font-size:.78rem;
          margin-top:1px;
        }
        .about-actions{
          display:flex;
          flex-wrap:wrap;
          gap:14px;
        }
        .about-link-btn{
          display:inline-flex;
          align-items:center;
          justify-content:center;
          gap:10px;
          padding:15px 24px;
          border-radius:999px;
          border:1px solid #d8e0e7;
          background:#fff;
          color:#24384d;
          font-weight:700;
          text-decoration:none;
          transition:all .3s ease;
        }
        .about-link-btn:hover{
          border-color:var(--primary-green);
          color:var(--primary-green);
          transform:translateY(-2px);
          box-shadow:0 10px 24px rgba(23,39,58,.08);
        }
        .about-video-card{
          grid-area:video;
          padding:24px 24px 26px;
          position:relative;
          overflow:hidden;
        }
        .about-video-card::before{
          content:'';
          position:absolute;
          inset:0 0 auto 0;
          height:4px;
          background:linear-gradient(90deg, var(--primary-green), var(--primary-yellow));
        }
        .about-video-copy{ margin-bottom:16px; }
        .about-video-tag{
          display:inline-flex;
          align-items:center;
          gap:8px;
          margin-bottom:14px;
          padding:8px 14px;
          border-radius:999px;
          border:1px solid rgba(124,179,66,.16);
          background:rgba(124,179,66,.09);
          color:var(--primary-green);
          font-size:.8rem;
          font-weight:800;
          letter-spacing:1px;
          text-transform:uppercase;
        }
        .about-video-copy h3{
          font-size:2rem;
          line-height:1.16;
          color:#1b2b3d;
          margin-bottom:10px;
        }
        .about-video-copy p{
          color:#5b6b7c;
          line-height:1.65;
          margin:0;
        }
        .about-video-frame{
          width:100%;
          aspect-ratio:16/9;
          background:#111821;
          border-radius:22px;
          overflow:hidden;
          box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
        }
        .about-video-frame iframe{
          width:100%;
          height:100%;
          display:block;
          border:0;
        }
        .about-image-card{
          grid-area:image;
          padding:20px;
        }
        .about-image-wrap{
          position:relative;
          overflow:visible;
        }
        .about-image-wrap img{
          width:100%;
          border-radius:24px;
          display:block;
          box-shadow:0 20px 60px rgba(0,0,0,.14);
        }
        .about-image-card .experience-badge{
          bottom:-26px;
          right:24px;
          padding:24px 26px;
          border-radius:22px;
          animation:float 3s ease-in-out infinite;
        }
        .about-image-card .experience-badge .years{ font-size:2.8rem; }
        .about-image-card .experience-badge .text{ font-size:1.05rem; }
        .about-image-caption{
          display:flex;
          justify-content:space-between;
          gap:18px;
          align-items:center;
          padding:22px 8px 6px;
          color:#2f4152;
          font-size:.95rem;
        }
        .about-image-caption span{
          display:inline-flex;
          align-items:center;
          gap:8px;
          color:#6b7d8f;
          font-weight:700;
        }
        .about-image-caption strong{
          color:#1b2b3d;
          font-family:'Montserrat',sans-serif;
          font-size:1rem;
        }
        .about-story-card{
          grid-area:story;
          padding:34px;
        }
        .about-story-card h3{
          font-size:2rem;
          color:#1b2b3d;
          margin-bottom:18px;
        }
        .about-story-card p{
          color:#5c6d7e;
          line-height:1.85;
          margin-bottom:18px;
          font-size:1.03rem;
        }
        .about-story-features{ margin-top:8px; }
        .about-story-features li{
          padding:10px 0;
          border-top:1px solid #edf1f4;
          margin-bottom:0;
          align-items:center;
        }
        .about-story-features li:first-child{ border-top:0; }
        @media(max-width:1100px){
          .about-showcase-grid{
            grid-template-columns:1fr;
            grid-template-areas:
              'intro'
              'video'
              'image'
              'story';
          }
          .about-intro-card h3{ font-size:2.1rem; }
          .about-video-copy h3{ font-size:1.85rem; }
        }
        @media(max-width:767px){
          .about-showcase{ padding:82px 0 92px; }
          .about-showcase-grid{ gap:22px; }
          .about-intro-card,
          .about-video-card,
          .about-image-card,
          .about-story-card{ border-radius:24px; }
          .about-intro-card,
          .about-story-card{ padding:26px 22px; }
          .about-video-card,
          .about-image-card{ padding:18px; }
          .about-intro-card h3{ font-size:1.9rem; }
          .about-video-copy h3,
          .about-story-card h3{ font-size:1.7rem; }
          .about-actions{ flex-direction:column; }
          .about-actions .btn-primary,
          .about-link-btn{ width:100%; }
          .about-image-card .experience-badge{
            right:16px;
            bottom:-18px;
            padding:18px 20px;
          }
          .about-image-card .experience-badge .years{ font-size:2.2rem; }
          .about-image-caption{
            flex-direction:column;
            align-items:flex-start;
            padding-top:24px;
          }
        }
        @media(max-width:576px){
          .about-showcase-header{ margin-bottom:34px; }
          .about-intro-card h3{ font-size:1.72rem; }
          .about-intro-card p,
          .about-story-card p,
          .about-highlight-list li,
          .about-video-copy p{ font-size:.98rem; }
          .about-video-frame{ border-radius:18px; }
          .about-pill-row{ gap:10px; }
          .about-pill{ width:100%; justify-content:flex-start; }
          .about-story-features li{ align-items:flex-start; }
        }

        .activities-refined{
          position:relative;
          padding:90px 0 110px;
          background:linear-gradient(180deg, #edf2f5 0%, #f6f8fa 18%, #f5f5f5 100%);
          overflow:hidden;
        }
        .activities-refined::before{
          content:'';
          position:absolute;
          top:0;
          left:0;
          right:0;
          height:54px;
          background:linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,0) 100%);
          pointer-events:none;
        }
        .activities-refined::after{
          content:'';
          position:absolute;
          top:18px;
          left:50%;
          transform:translateX(-50%);
          width:min(220px, calc(100% - 80px));
          height:3px;
          border-radius:999px;
          background:linear-gradient(90deg, rgba(124,179,66,0) 0%, rgba(124,179,66,.75) 50%, rgba(124,179,66,0) 100%);
          opacity:.85;
          pointer-events:none;
        }
        .activities-header{
          max-width:820px;
          margin:0 auto 54px;
        }

        /* GRID */
        .activities-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
        gap:30px;
        margin-top:40px;
        }

        /* CARD */
        .activity-card{
        background:linear-gradient(180deg,#ffffff 0%, #fbfcfd 100%);
        border-radius:24px;
        overflow:hidden;
        position:relative;
        transition:.35s ease;
        border:1px solid #e2e9ef;
        box-shadow:0 16px 42px rgba(18,35,52,.08);
        display:flex;
        flex-direction:column;
        height:100%;
        }

        .activity-card:hover{
        transform:translateY(-8px);
        box-shadow:0 24px 54px rgba(18,35,52,.14);
        }

        /* TOP COLOR */
        .activity-image{
        height:128px;
        display:flex;
        align-items:center;
        justify-content:center;
        color:#fff;
        font-size:2.2rem;
        position:relative;
        background:linear-gradient(135deg,#7CB342,#689F38);
        }

        .activity-image::after{
        content:'';
        position:absolute;
        inset:auto 24px 18px;
        height:1px;
        background:rgba(255,255,255,.26);
        }

        .activity-image i{
        opacity:.78;
        }


        /* AJUSTE COLORES EXISTENTES */
        .activity-card:nth-child(2) .activity-image{
        background:linear-gradient(135deg,#8E24AA,#6A1B9A) !important;
        }

        .activity-card:nth-child(3) .activity-image{
        background:linear-gradient(135deg,#2D8CEB,#1E6FBF) !important;
        }

        /* ICONO FLOTANTE */
        .activity-icon{
        position:absolute;
        top:94px;
        left:26px;

        width:56px;
        height:56px;
        border-radius:16px;

        display:flex;
        align-items:center;
        justify-content:center;

        font-size:1.2rem;

        background:#fff;
        color:#333;
        border:1px solid #eef2f5;
        box-shadow:0 10px 22px rgba(18,35,52,.16);
        }

        /* CONTENT */
        .activity-content{
        padding:40px 26px 28px;
        position:relative;
        display:flex;
        flex-direction:column;
        flex:1;
        }

        .activity-eyebrow{
        display:inline-block;
        margin-bottom:12px;
        color:#7CB342;
        font-size:.78rem;
        font-weight:800;
        text-transform:uppercase;
        letter-spacing:1.3px;
        }

        .activity-content h3{
        font-size:1.28rem;
        margin-bottom:12px;
        font-weight:700;
        color:#223446;
        }

        .activity-content p{
        color:#617182;
        font-size:.97rem;
        line-height:1.72;
        margin-bottom:18px;
        flex:1;
        }

        /* LINK */
        .activity-link{
        margin-top:auto;
        font-weight:700;
        color:#7CB342;
        text-decoration:none;
        display:inline-flex;
        align-items:center;
        gap:8px;
        }

        .activity-link i{
        transition:.2s;
        }

        .activity-link:hover i{
        transform:translateX(4px);
        }

        /* FEATURED (Ronda) */
        .activity-card.featured{
        border:1.5px solid rgba(142,36,170,.24);
        box-shadow:0 18px 45px rgba(106,27,154,.12);
        }
        .activity-card.featured::before{
        content:'';
        position:absolute;
        top:16px;
        right:16px;
        width:12px;
        height:12px;
        border-radius:50%;
        background:#FDD835;
        box-shadow:0 0 0 8px rgba(253,216,53,.12);
        z-index:2;
        }

        @media(max-width:767px){
          .activities-refined{
            padding:78px 0 90px;
          }
          .activities-header{
            margin-bottom:38px;
          }
          .activity-content{
            padding:40px 22px 24px;
          }
          .activity-icon{
            left:22px;
          }
        }

        /* HEADER */
        .section-header{
        text-align:center;
        }

        .section-title{
        font-size:2.4rem;
        font-weight:700;
        letter-spacing:-0.3px;
        }

        .section-subtitle{
        color:#666;
        margin-top:10px;
        }


        .map-container { background:white; border-radius:30px; box-shadow:0 20px 80px rgba(0,0,0,.1); overflow:hidden; }
        .map-container img {border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);}
        .map-header { background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); color:white; padding:30px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; }
        .map-search { position:relative; min-width:300px; }
        .map-search input { width:100%; padding:15px 50px 15px 20px; border:none; border-radius:30px; font-size:1rem; outline:none; }
        .map-search button { position:absolute; right:5px; top:50%; transform:translateY(-50%); background:var(--primary-yellow); border:none; width:40px; height:40px; border-radius:50%; cursor:pointer; color:var(--dark-bg); }

        .map-wrapper{
          position:relative;
          border-radius:20px;
          overflow:hidden;
        }

        .map-img{
          width:100%;
          display:block;
        }

        /* ZONAS INTERACTIVAS */
        .sector{
          position:absolute;
          cursor:pointer;
          border-radius:8px;
          transition:.2s;
        }

        /* HOVER */
        .sector:hover{
          transform:scale(1.01);
          box-shadow:0 0 0 2px rgba(0,0,0,.15) inset;
        }

        /* ACTIVO */
        .sector.active{
          background:rgba(245,227,0,.3);
          box-shadow:0 0 0 2px #F5E300 inset;
        }

        .sector,
        .sector-card{
          transition:all .2s ease;
        }

        .sector-popup { position:absolute; background:white; padding:20px; border-radius:15px; box-shadow:0 10px 40px rgba(0,0,0,.2); display:none; z-index:100; min-width:250px; border-left:4px solid var(--primary-green); }
        .sector-popup.active { display:block; animation:popupIn .3s ease; }
        @keyframes popupIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
        .popup-close, .modal-close { position:absolute; top:10px; right:10px; background:none; border:none; font-size:1.2rem; cursor:pointer; color:var(--text-light); }
        .stand-layer { position:absolute; inset:40px; }
        .stand-node { position:absolute; width:20px; height:20px; border-radius:6px; border:2px solid rgba(255,255,255,.95); box-shadow:0 4px 12px rgba(0,0,0,.18); cursor:pointer; transition:transform .2s ease, box-shadow .2s ease; }
        .stand-node:hover { transform:scale(1.18); box-shadow:0 8px 18px rgba(0,0,0,.28); z-index:2; }
        .stand-node.ocupado { background:var(--primary-green); }
        .stand-node.libre { background:#cfcfcf; }
        .stand-legend { display:flex; justify-content:center; gap:25px; align-items:center; flex-wrap:wrap; padding:0 40px 30px; background:#f8f9fa; }
        .legend-item { display:flex; align-items:center; gap:10px; font-weight:600; color:var(--text-dark); }
        .legend-dot { width:14px; height:14px; border-radius:4px; }
        .exhibitors-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:25px; padding:40px; background:var(--gray-bg); }
        .exhibitor-card { background:white; border-radius:15px; padding:25px; box-shadow:0 5px 20px rgba(0,0,0,.08); transition:all .3s; cursor:pointer; border:2px solid transparent; }
        .exhibitor-card:hover { transform:translateY(-5px); box-shadow:0 15px 40px rgba(0,0,0,.12); border-color:var(--primary-green); }
        .exhibitor-logo { width:80px; height:80px; background:linear-gradient(135deg,var(--gray-bg),white); border-radius:15px; display:flex; align-items:center; justify-content:center; margin-bottom:15px; font-size:2rem; color:var(--primary-green); overflow:hidden; }
        .exhibitor-logo img, .exhibitor-logo-large img, .sponsor-logo img { width:100%; height:100%; object-fit:contain; }
        .schedule::before { content:''; position:absolute; width:100%; height:100%; background:radial-gradient(circle at 20% 50%, rgba(124,179,66,.1) 0%, transparent 50%), radial-gradient(circle at 80% 50%, rgba(253,216,53,.1) 0%, transparent 50%); }
        .schedule-header { text-align:center; margin-bottom:45px; position:relative; z-index:2; }
        .schedule-header h2 { font-size:2.8rem; }
        .schedule-tabs { display:flex; justify-content:center; gap:18px; margin-bottom:28px; flex-wrap:wrap; position:relative; z-index:2; }
        .tab-btn { background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.10); color:white; padding:16px 24px; border-radius:24px; cursor:pointer; font-weight:700; font-size:1rem; transition:all .3s; font-family:'Montserrat',sans-serif; min-width:190px; box-shadow:0 10px 30px rgba(0,0,0,.14); }
        .tab-btn small { display:block; margin-top:4px; font-size:.78rem; font-weight:600; opacity:.72; text-transform:uppercase; letter-spacing:.08em; }
        .tab-btn:hover { transform:translateY(-3px); border-color:rgba(255,255,255,.24); background:rgba(255,255,255,.14); }
        .tab-btn.active { background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); border-color:transparent; box-shadow:0 14px 36px rgba(124,179,66,.35), 0 0 0 3px rgba(124,179,66,.12); transform:translateY(-2px) scale(1.02); }
        .schedule-active-indicator { max-width:1000px; margin:0 auto 22px; padding:14px 18px; border-radius:18px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08); display:flex; align-items:center; justify-content:space-between; gap:16px; position:relative; z-index:2; backdrop-filter:blur(14px); }
        .schedule-active-day { display:flex; align-items:center; gap:14px; }
        .schedule-active-day .indicator-dot { width:12px; height:12px; border-radius:50%; background:var(--primary-yellow); box-shadow:0 0 0 8px rgba(253,216,53,.14); }
        .schedule-active-day h3 { font-size:1.05rem; margin:0; color:white; }
        .schedule-active-day p { margin:2px 0 0; color:rgba(255,255,255,.72); font-size:.88rem; }
        .schedule-day-count { color:var(--primary-yellow); font-weight:700; font-size:.92rem; white-space:nowrap; }
        .schedule-content { max-width:1000px; margin:0 auto; position:relative; z-index:2; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); border-radius:24px; padding:18px 14px 18px 18px; backdrop-filter:blur(12px); max-height:640px; overflow:auto; scroll-behavior:smooth; }
        .schedule-content::-webkit-scrollbar { width:10px; }
        .schedule-content::-webkit-scrollbar-track { background:rgba(255,255,255,.06); border-radius:14px; }
        .schedule-content::-webkit-scrollbar-thumb { background:linear-gradient(180deg,var(--primary-green),var(--primary-yellow)); border-radius:14px; }
        .schedule-day { display:none; }
        .schedule-day.active { display:block; animation:fadeIn .45s ease; }
        .schedule-day-track { display:flex; flex-direction:column; gap:16px; padding-right:6px; }
        @keyframes fadeIn { from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);} }
        .schedule-item { background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.08); border-left:4px solid var(--primary-yellow); padding:22px 24px; border-radius:18px; display:grid; grid-template-columns:120px 64px 1fr 160px; gap:24px; align-items:center; transition:transform .28s ease, background .28s ease, box-shadow .28s ease, border-color .28s ease; backdrop-filter:blur(10px); opacity:0; transform:translateY(14px); animation:scheduleCardIn .45s ease forwards; }
        .schedule-item:nth-child(2) { animation-delay:.04s; }
        .schedule-item:nth-child(3) { animation-delay:.08s; }
        .schedule-item:nth-child(4) { animation-delay:.12s; }
        .schedule-item:nth-child(5) { animation-delay:.16s; }
        @keyframes scheduleCardIn { to { opacity:1; transform:translateY(0); } }
        .schedule-item:hover { background:rgba(255,255,255,.09); transform:translateX(8px); box-shadow:0 16px 30px rgba(0,0,0,.18); border-color:rgba(255,255,255,.16); }
        .schedule-time { font-weight:800; color:var(--primary-yellow); font-size:1.18rem; letter-spacing:.01em; }
        .schedule-icon { width:56px; height:56px; border-radius:16px; display:flex; align-items:center; justify-content:center; background:rgba(124,179,66,.12); color:var(--primary-yellow); font-size:1.2rem; border:1px solid rgba(255,255,255,.08); }
        .schedule-info h4 { margin-bottom:6px; font-size:1.1rem; color:white; }
        .schedule-info p { color:rgba(255,255,255,.72); font-size:.96rem; line-height:1.65; margin:0; }
        .schedule-type { text-align:right; }
        .type-badge { display:inline-flex; align-items:center; justify-content:center; padding:9px 16px; border-radius:999px; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; min-width:120px; }
        .type-conference { background:rgba(124,179,66,.18); color:white; border:1px solid rgba(124,179,66,.38); }
        .type-workshop { background:rgba(253,216,53,.18); color:var(--primary-yellow); border:1px solid rgba(253,216,53,.38); }
        .type-networking { background:rgba(231,76,60,.18); color:#ffb5ac; border:1px solid rgba(231,76,60,.35); }
        .business-card { background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); color:white; padding:40px; border-radius:25px; box-shadow:0 20px 60px rgba(124,179,66,.3); position:relative; overflow:hidden; }
        .business-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:30px; }
        .b-stat { background:rgba(255,255,255,.15); padding:20px; border-radius:15px; text-align:center; backdrop-filter:blur(10px); }
        .b-stat .number { font-size:2rem; font-weight:800; display:block; }
        .participate { padding:100px 0; background:linear-gradient(135deg,var(--primary-yellow) 0%, #ffeb3b 100%); position:relative; overflow:hidden; }
        .participate-content { text-align:center; position:relative; z-index:2; max-width:800px; margin:0 auto; }
        .participate h2 { font-size:3rem; color:var(--dark-bg); margin-bottom:20px; }
        .participate p { font-size:1.2rem; color:rgba(0,0,0,.7); margin-bottom:40px; line-height:1.8; }
        .btn-dark { background:var(--dark-bg); color:white; padding:18px 50px; border-radius:35px; text-decoration:none; font-weight:700; font-size:1.1rem; display:inline-flex; align-items:center; gap:12px; transition:all .3s; box-shadow:0 10px 30px rgba(0,0,0,.2); }
        .sponsors-tier { margin-bottom:60px; }
        .tier-header { text-align:center; margin-bottom:40px; }
        .tier-badge { display:inline-block; padding:10px 30px; border-radius:25px; font-weight:700; font-size:.9rem; text-transform:uppercase; letter-spacing:2px; }
        .tier-platinum { background:linear-gradient(135deg,#e0e0e0,#bdbdbd); color:var(--dark-bg); }
        .tier-gold { background:linear-gradient(135deg,#ffd700,#ffaa00); color:var(--dark-bg); }
        .tier-silver { background:linear-gradient(135deg,#c0c0c0,#a0a0a0); color:white; }
        .sponsors-grid { display:flex; justify-content:center; align-items:center; gap:40px; flex-wrap:wrap; }
        .sponsor-logo { width:180px; height:100px; background:var(--gray-bg); border-radius:15px; display:flex; align-items:center; justify-content:center; font-weight:700; color:var(--text-light); transition:all .3s; border:2px solid transparent; overflow:hidden; padding:10px; text-align:center; }
        .sponsors-grid.platinum .sponsor-logo { width:220px; height:120px; font-size:1.2rem; }
        .gallery-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
        .gallery-item { position:relative; border-radius:15px; overflow:hidden; aspect-ratio:1; cursor:pointer; background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); }
        .gallery-item img { width:100%; height:100%; object-fit:cover; transition:all .5s; }
        .gallery-item:hover img { transform:scale(1.1); opacity:.85; }
        .gallery-overlay { position:absolute; bottom:0; left:0; right:0; padding:20px; background:linear-gradient(transparent, rgba(0,0,0,.8)); color:white; transform:translateY(100%); transition:all .3s; }
        .gallery-item:hover .gallery-overlay { transform:translateY(0); }
        .news-date { position:absolute; top:20px; left:20px; background:white; padding:10px 15px; border-radius:10px; text-align:center; box-shadow:0 5px 15px rgba(0,0,0,.1); }
        .news-date .day { display:block; font-size:1.5rem; font-weight:800; color:var(--primary-green); line-height:1; }
        .news-date .month { font-size:.8rem; text-transform:uppercase; color:var(--text-light); font-weight:600; }
        .news-category { display:inline-block; background:rgba(124,179,66,.1); color:var(--primary-green); padding:5px 12px; border-radius:15px; font-size:.75rem; font-weight:700; text-transform:uppercase; margin-bottom:15px; width:fit-content; }
        .location-content { padding-bottom:100px; }
        .location-info h2 { font-size:2.5rem; margin-bottom:30px; }
        .location-details i { width:50px; height:50px; background:rgba(124,179,66,.2); border-radius:12px; }
        .map-embed { width:100%; height:100%; min-height:400px; border-radius:20px; overflow:hidden; box-shadow:0 20px 60px rgba(0,0,0,.3); }
        .map-embed iframe { width:100%; height:100%; border:none; }
        .contact-methods { display:flex; flex-direction:column; gap:25px; }
        .contact-method { display:flex; align-items:center; gap:20px; padding:20px; background:var(--gray-bg); border-radius:15px; transition:all .3s; text-decoration:none; color:inherit; }
        .contact-method.whatsapp i { background:#25d366; color:white; }
        .contact-form { background:white; padding:40px; border-radius:25px; box-shadow:0 20px 60px rgba(0,0,0,.08); }
        .form-group { margin-bottom:25px; }
        .form-group label { display:block; margin-bottom:8px; font-weight:600; }
        .form-group input, .form-group textarea, .form-group select { width:100%; padding:15px 20px; border:2px solid #e0e0e0; border-radius:12px; font-size:1rem; font-family:'Open Sans',sans-serif; }
        .form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
        .footer { background:var(--dark-bg); color:white; padding:60px 0 30px; }
        .footer-content { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:60px; margin-bottom:50px; }
        .social-links { display:flex; gap:15px; }
        .social-links a { width:40px; height:40px; background:rgba(255,255,255,.1); border-radius:50%; display:flex; align-items:center; justify-content:center; color:white; text-decoration:none; }
        .footer-bottom { border-top:1px solid rgba(255,255,255,.1); padding-top:30px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; }
        .modal { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.8); z-index:2000; align-items:center; justify-content:center; padding:20px; }
        .modal.active { display:flex; }
        .modal-content { background:white; border-radius:25px; max-width:800px; width:100%; max-height:90vh; overflow-y:auto; position:relative; }
        .modal-header { background:linear-gradient(135deg,var(--primary-green),var(--dark-green)); color:white; padding:40px; position:relative; }
        .modal-body { padding:40px; }
        .exhibitor-detail { display:grid; grid-template-columns:150px 1fr; gap:30px; margin-bottom:30px; }
        .exhibitor-logo-large { width:150px; height:150px; background:var(--gray-bg); border-radius:20px; display:flex; align-items:center; justify-content:center; font-size:3rem; color:var(--primary-green); overflow:hidden; }
        .exhibitor-meta { display:flex; gap:20px; margin-bottom:20px; flex-wrap:wrap; }
        .meta-tag { background:rgba(124,179,66,.1); color:var(--primary-green); padding:5px 15px; border-radius:20px; font-size:.85rem; font-weight:600; }
        .fade-in { opacity:0; transform:translateY(30px); transition:all .8s ease; }
        .fade-in.visible { opacity:1; transform:translateY(0); }
        @media (max-width: 1024px) {
            .hero-container,.about-grid,.business-content,.location-content,.contact-wrapper { grid-template-columns:1fr; }
            .hero-content h1{font-size:3rem;} .hero-content h1 .highlight{font-size:3.5rem;} .activities-grid,.news-grid{grid-template-columns:1fr;} .gallery-grid{grid-template-columns:repeat(2,1fr);} .footer-content{grid-template-columns:1fr 1fr;} .schedule-tabs{gap:12px;} .tab-btn{min-width:160px; padding:14px 18px;} .schedule-active-indicator{flex-direction:column; align-items:flex-start;} .schedule-content{padding:16px 10px 16px 14px; max-height:560px;} .schedule-item{grid-template-columns:1fr; gap:15px;} .schedule-type{text-align:left;}
        }
        @media (max-width: 768px) {
            .nav-links{display:none;} .mobile-menu{display:block;} .hero-content h1{font-size:2.2rem;} .hero-content h1 .highlight{font-size:2.5rem;} .section-title{font-size:2rem;} .gallery-grid,.footer-content,.form-row,.exhibitor-detail{grid-template-columns:1fr;} .hero-stats{grid-template-columns:1fr;} .map-header{padding:20px;} .map-search{min-width:100%;}
        }
        html {
         scroll-behavior:smooth;
        }
        .cta-expositor{
          background:#6FBF3A;
          padding:100px 0;
          color:#fff;
        }

        .container-cta{
          max-width:1400px;
          margin:auto;
          display:grid;
          grid-template-columns:1.2fr .8fr;
          gap:50px;
          align-items:center;
          padding:0 30px;
        }

        .cta-tag{
          letter-spacing:3px;
          font-size:.8rem;
          opacity:.8;
        }

        .cta-left h2{
          font-size:3rem;
          font-family:'Montserrat';
          font-weight:800;
          margin:10px 0 30px;
        }

        .cta-left h2 span{
          color:#F5E300;
        }

        .cta-list{
          list-style:none;
        }

        .cta-list li{
          display:flex;
          gap:15px;
          padding:15px 0;
          border-bottom:1px solid rgba(255,255,255,.2);
          font-size:.95rem;
        }

        .cta-list strong{
          color:#F5E300;
          font-size:1.3rem;
        }

        .cta-right{
          display:flex;
          justify-content:center;
        }

        .cta-box{
          background:#fff;
          padding:40px;
          border-radius:6px;
          color:#333;
          width:100%;
          max-width:420px;
        }

        .cta-box h3{
          font-size:1.5rem;
          margin-bottom:15px;
        }

        .cta-box h3 span{
          color:#6FBF3A;
        }

        .cta-box p{
          font-size:.9rem;
          margin-bottom:25px;
          color:#555;
        }

        .btn-dark{
          display:block;
          background:#111;
          color:#fff;
          text-align:center;
          padding:15px;
          margin-bottom:10px;
          text-decoration:none;
        }

        .btn-green{
          display:block;
          background:#6FBF3A;
          color:#fff;
          text-align:center;
          padding:15px;
          text-decoration:none;
        }        


        /* NAVBAR */
        .navbar{
        position:fixed;
        top:0;
        width:100%;
        z-index:1000;

        background:rgba(255,255,255,0.9);
        backdrop-filter:blur(10px);

        border-bottom:1px solid rgba(0,0,0,0.05);
        }

        /* CONTENEDOR */
        .nav-container{
        max-width:1400px;
        margin:auto;
        padding:15px 40px;

        display:flex;
        justify-content:space-between;
        align-items:center;
        }

        /* LOGO */
        .logo img{
        height:45px;
        }

        /* MENU */
        .nav-links {
        list-style:none;
        display:flex;
        align-items:center;
        gap:30px;
        }

        .nav-links a{
        text-decoration:none;
        color:#2c3e50;
        font-weight:600;
        font-size:.95rem;
        position:relative;
        transition:.3s;
        }

        /* HOVER LINE */
        .nav-links a::after{
        content:"";
        position:absolute;
        bottom:-6px;
        left:0;
        width:0%;
        height:2px;
        background:#7CB342;
        transition:.3s;
        }

        .nav-links a:hover::after{
        width:100%;
        }

        .nav-links a:hover{
        color:#7CB342;
        }

        /* BOTON CONTACTO */
        .btn-contacto{
        background:#7CB342;
        color:#fff !important;
        padding:10px 20px;
        border-radius:25px;
        box-shadow:0 5px 15px rgba(124,179,66,.3);
        }

        .btn-contacto::after{
        display:none;
        }

        .btn-contacto:hover{
        background:#689F38;
        }        

        .hero-logo{
        margin:20px 0 30px;
        }

        .hero-logo img{
        width:120%;
        max-width:700px;
        height:auto;
        display:block;
        animation:fadeIn 1s ease;
        }

        @keyframes fadeIn{
            from{opacity:0; transform:translateY(20px);}
            to{opacity:1; transform:translateY(0);}
            }

            .hero-left{
            max-width:650px;
            }

            @media(max-width:900px){

            .hero-logo img{
            max-width:90%;
            width:100%;
            margin:auto;
            }

        }

        .sectores-cards{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
        gap:20px;
        margin-top:30px;
        }

        .sector-card{
        background:#fff;
        border-radius:12px;
        padding:18px;
        cursor:pointer;
        transition:.2s;

        border:1px solid #eee;
        }

        .sector-card:hover{
            transform:translateY(-3px);
            box-shadow:0 10px 25px rgba(0,0,0,.08);
            border-color:#ddd;
        }

        .sector-card.active{
            transform:translateY(-4px);
            border:2px solid transparent;
            box-shadow:0 12px 30px rgba(0,0,0,.12);
            background:#fff;
        }

        .sector-card h4{
        margin-bottom:5px;
        font-size:1rem;
        }

        .sector-card p{
        font-size:.9rem;
        color:#666;
        margin-bottom:5px;
        }

        .sector-card span{
        font-size:.85rem;
        color:#7CB342;
        font-weight:600;
        }

        .sector-card[data-sector="A"].active{
        border-color:var(--sector-a);
        }

        .sector-card[data-sector="B"].active{
        border-color:var(--sector-b);
        }

        .sector-card[data-sector="C"].active{
        border-color:var(--sector-c);
        }

        .sector-card[data-sector="CONF"].active{
        border-color:var(--sector-conf);
        }

        .sector-card[data-sector="ROND"].active{
        border-color:var(--sector-ronda);
        }

        .sector-card[data-sector="GASTRO"].active{
        border-color:var(--sector-gastro);
        }

        .map-wrapper{
        position:relative;
        width:100%;
        }

        .map-img{
        width:100%;
        display:block;
        }

        /* zonas */
        .sector{
        position:absolute;
        cursor:pointer;
        border-radius:6px;
        transition:.2s;
        }

        /* hover */
        .sector:hover{
        background:rgba(124,179,66,.25);
        box-shadow:0 0 0 2px #7CB342 inset;
        }

        /* activo */
        .sector.active{
            transform:scale(1.02);
            backdrop-filter:blur(1px);

            box-shadow:
                0 0 0 3px rgba(255,255,255,.9) inset,
                0 0 20px rgba(0,0,0,.25);

            z-index:2;
        }        

        .sector[data-sector="A"].active{
        background:rgba(128,187,70,.45);
        }

        .sector[data-sector="B"].active{
        background:rgba(242,113,114,.45);
        }

        .sector[data-sector="C"].active{
        background:rgba(248,246,176,.6);
        }

        .sector[data-sector="CONF"].active{
        background:rgba(255,189,121,.5);
        }

        .sector[data-sector="ROND"].active{
        background:rgba(172,88,0,.5);
        }

        .sector[data-sector="GASTRO"].active{
        background:rgba(130,108,79,.5);
        }        


        .map-tooltip{
        position:absolute;
        pointer-events:none;
        background:#111;
        color:#fff;
        padding:10px 14px;
        border-radius:8px;
        font-size:.85rem;
        opacity:0;
        transform:translateY(10px);
        transition:.2s;
        z-index:999;
        }

        .map-tooltip.show{
        opacity:1;
        transform:translateY(0);
        }

        .sector-result{
        margin-top:30px;
        }

        .sector-list{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
        gap:15px;
        }

        .expo-card{
        background:#fff;
        border-radius:10px;
        padding:15px;
        display:flex;
        align-items:center;
        gap:10px;
        border:1px solid #eee;
        transition:.2s;
        }

        .expo-card:hover{
        box-shadow:0 6px 15px rgba(0,0,0,.08);
        }

        .expo-card img{
        width:40px;
        height:40px;
        object-fit:contain;
        } 

        .expositor-card {
        border: none;
        border-radius: 12px;
        transition: all 0.25s ease;
        cursor: pointer;
        }

        .expositor-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0,0,0,0.15);
        } 

      /* =========================================================
        BLOQUE SPONSORS
      ========================================================= */
      .cp-sponsors-v2{
        padding: 140px 0 120px;
        background: radial-gradient(circle at 20% 30%, rgba(141,198,63,0.15), transparent 40%),
                    radial-gradient(circle at 80% 20%, rgba(215,223,35,0.10), transparent 40%),
                    linear-gradient(180deg, #11161c 0%, #0b0f14 100%);
      }

      .cp-sponsors-container{
        max-width: 1320px;
        margin: 0 auto;
        padding: 0 40px; /* 🔥 aire lateral */
      }

      /* HEADER */

      .cp-sponsors-header{
        display: grid;
        grid-template-columns: 1.2fr 1fr;
        gap: 60px;
        margin-bottom: 80px;
      }

      .cp-sponsors-kicker{
        color:#d7df23;
        font-size:13px;
        letter-spacing:2px;
        margin-bottom:15px;
        display:block;
      }

      .cp-sponsors-title{
        font-size: clamp(2.2rem, 3.5vw, 3.2rem); /* 🔥 más chico */
        font-weight:900;
        line-height:1.1;
      }

      .cp-sponsors-title span{
        color:#d7df23;
      }

      .cp-sponsors-right p{
        color:rgba(255,255,255,0.92);
        line-height:1.7;
        margin-bottom:20px;
      }

      .cp-badge-edicion{
        display:inline-flex;
        align-items:center;
        gap:10px;
        padding:10px 18px;
        border-radius:50px;
        border:1px solid rgba(255,255,255,0.2);
      }

      .cp-badge-edicion span{
        width:10px;
        height:10px;
        background:#d7df23;
        border-radius:50%;
      }

      /* GRID */

      .cp-sponsors-grid{
        display:grid;
        grid-template-columns: repeat(4,1fr);
        gap:30px;
        margin-bottom:80px;
      }

      /* CARD */

      .cp-sponsor-card{
        background: rgba(255,255,255,0.05);
        border:1px solid rgba(215,223,35,0.25);
        border-radius:20px;
        padding:30px;
        transition: all .3s ease;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;        
      }

      .cp-sponsor-card:hover{
        transform: translateY(-6px);
        border-color:#d7df23;
      }

      .cp-label{
        font-size:12px;
        color:#d7df23;
        letter-spacing:1px;
        margin-bottom:15px;
        display:block;
      }

      /* LOGO */

      .cp-logo-box{
          height: 90px; /* 🔥 altura fija */
          display:flex;
          align-items:center;
          justify-content:center;
          border:1px dashed rgba(255,255,255,0.2);
          border-radius:12px;
          margin-bottom:15px;
          overflow:hidden; /* 🔥 CLAVE */
      }

      .cp-logo-box img{
          max-width: 100%;
          max-height: 90px; 
          object-fit: contain;
          display:block;
          background: transparent;
      }

      .cp-logo-placeholder{
        opacity:.7;
      }

      /* TEXT */

      .cp-sponsor-card h3{
        font-size:18px;
        margin-bottom:10px;
      }

      .cp-sponsor-card p{
        font-size:14px;
        color:rgba(255,255,255,0.92);
        line-height:1.6;
      }

      /* CTA */

      .cp-sponsors-cta{
        display:flex;
        justify-content:space-between;
        align-items:center;
        gap:40px;
        border-top:1px solid rgba(255,255,255,0.1);
        padding-top:40px;
      }

      .cp-cta-left{
        display:flex;
        align-items:center;
        gap:20px;
      }

      .cp-cta-left p{
        margin:0;
        color:rgba(255,255,255,0.7);
      }

      .cp-icon{
        font-size:28px;
      }

      /* BOTON */

      .cp-btn-primary{
        background:#d7df23;
        color:#000;
        padding:16px 28px;
        border-radius:50px;
        font-weight:700;
        text-decoration:none;
        transition:.3s;
      }

      .cp-btn-primary:hover{
        transform:translateY(-2px);
        box-shadow:0 10px 25px rgba(215,223,35,0.3);
      }

      /* RESPONSIVE */

      @media(max-width:992px){
        .cp-sponsors-header{
          grid-template-columns:1fr;
        }

      }

      @media(max-width:600px){

        .cp-sponsors-cta{
          flex-direction:column;
          align-items:flex-start;
        }
      }

      /* =========================
        AUSPICIANTES 
      ========================= */

      .cp-auspiciantes{
        padding: 120px 0;
        background: linear-gradient(180deg, #1a2129 0%, #202833 100%);
        border-top: 1px solid rgba(255,255,255,0.06);
      }

      .cp-auspiciantes-container{
        max-width: 1320px;
        margin: 0 auto;
        padding: 0 40px;
      }

      /* HEADER */

      .cp-auspiciantes-header{
        text-align: center;
        max-width: 700px;
        margin: 0 auto 60px;
      }

      .cp-auspiciantes-kicker{
        color:#d7df23;
        font-size:12px;
        letter-spacing:2px;
        display:block;
        margin-bottom:10px;
      }

      .cp-auspiciantes-title{
        font-size: clamp(1.8rem, 2.5vw, 2.4rem);
        font-weight:800;
        margin-bottom:15px;
      }

      .cp-auspiciantes-title span{
        color:#d7df23;
      }

      .cp-auspiciantes-header p{
        color:rgba(255,255,255,0.65);
        line-height:1.6;
      }

      /* GRID */

      .cp-auspiciantes-grid{
        display:grid;
        grid-template-columns: repeat(6,1fr);
        gap:20px;
      }

      /* ITEM */

      .cp-auspiciante-item{
        padding:28px 22px 24px;
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:12px;
      }

      .cp-auspiciante-item:hover{
        border-color:#d7df23;
        transform: translateY(-3px);
        background: rgba(255,255,255,0.06);
      }

      /* LOGO */

      .cp-auspiciante-logo{
        font-size:13px;
        opacity:0.6;
      }

      .cp-auspiciante-logo img{
        max-width:100%;
        max-height:50px;
        margin-bottom:5px;
        object-fit:contain;
        filter: grayscale(100%) brightness(1.1);
        transition:.3s;
      }

      .cp-auspiciante-item:hover img{
        filter: grayscale(0%);
      }

      .cp-auspiciante-nombre{
        font-size:13px;
        text-align:center;
        color: rgba(255,255,255,0.85);
        font-weight:500;
      }

      .cp-auspiciante-item{
        background: rgba(255,255,255,0.06);
        border:1px solid rgba(255,255,255,0.10);
        border-radius:16px;
        transition: all .3s ease;
      }

      .cp-auspiciante-item:hover{
        background: rgba(255,255,255,0.10);
        border-color:#d7df23;
        transform: translateY(-4px);
      }

      section{
        position:relative;
      }

      section + section::before{
        content:"";
        position:absolute;
        top:0;
        left:50%;
        transform:translateX(-50%);
        width:80%;
        height:1px;
        background: linear-gradient(90deg, transparent, rgba(255,255,255,0.08), transparent);
      }      
      /* RESPONSIVE */

      @media(max-width:992px){
        .cp-auspiciantes-grid{
          grid-template-columns: repeat(3,1fr);
        }
      }

      @media(max-width:600px){
        .cp-auspiciantes-grid{
          grid-template-columns: repeat(2,1fr);
        }
      }

      .cp-cta-final{
        padding: 120px 0;
        background: linear-gradient(180deg, #202833 0%, #151b22 100%);
      }

      .cp-cta-box{
        background: linear-gradient(135deg, rgba(215,223,35,0.08), rgba(255,255,255,0.05));
        border:1px solid rgba(215,223,35,0.25);
        border-radius:24px;
        padding:60px;
        display:flex;
        justify-content:space-between;
        gap:40px;
        align-items:center;
      }

      .cp-cta-kicker{
        color:#d7df23;
        font-size:12px;
        letter-spacing:2px;
        margin-bottom:10px;
        display:block;
      }

      .cp-cta-content h2{
        font-size: clamp(2rem, 3vw, 2.8rem);
        margin-bottom:20px;
      }

      .cp-cta-content h2 span{
        color:#d7df23;
      }

      .cp-cta-content p{
        color:rgba(255,255,255,0.85);
        margin-bottom:30px;
        max-width:500px;
      }

      .cp-cta-actions{
        display:flex;
        gap:15px;
      }

      .cp-btn-primary-xl{
        background:#d7df23;
        color:#000;
        padding:18px 30px;
        border-radius:50px;
        font-weight:800;
        text-decoration:none;
      }

      .cp-btn-secondary{
        border:1px solid rgba(255,255,255,0.3);
        padding:18px 25px;
        border-radius:50px;
        color:#fff;
        text-decoration:none;
      }

      .cp-cta-highlight{
        background: rgba(255,255,255,0.08);
        padding:30px;
        border-radius:18px;
        text-align:center;
      }

      .cp-cta-highlight strong{
        display:block;
        font-size:18px;
      }

      .cp-cta-highlight span{
        font-size:14px;
        color:rgba(255,255,255,0.7);
      }

      .cp-colaboradores{
        padding:80px 0;
        background:#151b22;
        text-align:center;
      }

      .cp-section-title{
        margin-bottom:40px;
        font-size:20px;
        color:#d7df23;
      }

      .cp-logos-grid{
        display:grid;
        grid-template-columns: repeat(4,1fr);
        gap:30px;
      }

      .cp-logo-item{
        padding:20px;
        border:1px solid rgba(255,255,255,0.1);
        border-radius:12px;
      }      


      .cp-organizan{
        padding:80px 0 100px;
        background:#11161c;
      }

      /* =========================
        RONDA DE NEGOCIOS
      ========================= */

      .cp-ronda{
        padding: 96px 0 84px;
        background: linear-gradient(180deg, #f5f7f9 0%, #eef2f5 100%);
      }

      .cp-ronda-container{
        max-width: 1240px;
        margin: 0 auto;
        padding: 0 32px;
      }

      .cp-ronda-layout{
        display:grid;
        grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr);
        grid-template-areas:
          "intro video"
          "date results";
        gap: 28px 36px;
        align-items:start;
      }

      .cp-ronda-intro{
        grid-area:intro;
        padding: 24px 8px 0 0;
      }

      .cp-ronda-kicker{
        display:block;
        margin-bottom:14px;
        color:#6fbf3a;
        font-size:13px;
        font-weight:700;
        letter-spacing:2.4px;
        text-transform:uppercase;
      }

      .cp-ronda-intro h2{
        margin:0 0 18px;
        color:#11243a;
        font-size:clamp(2.45rem, 4.4vw, 4.15rem);
        line-height:1.02;
        letter-spacing:-1.2px;
      }

      .cp-ronda-intro p{
        max-width:680px;
        margin:0 0 28px;
        color:#435467;
        font-size:1.04rem;
        line-height:1.62;
      }

      .cp-ronda-list{
        list-style:none;
        padding:0;
        margin:0 0 30px;
        display:grid;
        gap:14px;
      }

      .cp-ronda-list li{
        display:flex;
        align-items:flex-start;
        gap:14px;
        color:#1f3144;
        font-size:1.01rem;
        line-height:1.45;
      }

      .cp-ronda-check{
        flex:0 0 28px;
        width:28px;
        height:28px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:#6fbf3a;
        color:#fff;
        font-size:12px;
        box-shadow:0 10px 20px rgba(111,191,58,.24);
        margin-top:1px;
      }

      .cp-btn-ronda{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:10px;
        padding:17px 28px;
        border-radius:999px;
        background:linear-gradient(135deg, #7ccb3f, #63b52f);
        color:#fff;
        font-weight:700;
        font-size:1.02rem;
        text-decoration:none;
        box-shadow:0 14px 28px rgba(111,191,58,.25);
        transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
      }

      .cp-btn-ronda:hover{
        transform:translateY(-2px);
        box-shadow:0 18px 34px rgba(111,191,58,.30);
        background:linear-gradient(135deg, #73c338, #5cab2b);
      }

      .cp-ronda-video-card,
      .cp-ronda-date-card,
      .cp-ronda-results-card{
        background:#fff;
        border:1px solid #dfe7ee;
        border-radius:28px;
        box-shadow:0 18px 48px rgba(17,36,58,.09);
      }

      .cp-ronda-video-card{
        grid-area:video;
        padding:24px 24px 26px;
        position:relative;
        overflow:hidden;
      }

      .cp-ronda-video-card::before{
        content:"";
        position:absolute;
        inset:0 0 auto 0;
        height:4px;
        background:linear-gradient(90deg, #6fbf3a, #d5df22);
      }

      .cp-ronda-video-copy{
        margin-bottom:16px;
      }

      .cp-ronda-video-tag{
        display:inline-flex;
        align-items:center;
        gap:8px;
        margin-bottom:16px;
        padding:8px 14px;
        border-radius:999px;
        border:1px solid rgba(111,191,58,.16);
        background:rgba(111,191,58,.08);
        color:#6fbf3a;
        font-size:.82rem;
        font-weight:800;
        letter-spacing:1px;
        text-transform:uppercase;
      }

      .cp-ronda-video-copy h3{
        margin:0 0 10px;
        color:#11243a;
        font-size:clamp(1.9rem, 2.2vw, 2.35rem);
        line-height:1.16;
      }

      .cp-ronda-video-copy p{
        margin:0;
        color:#506173;
        font-size:1rem;
        line-height:1.55;
      }

      .cp-ronda-video-frame{
        width:100%;
        aspect-ratio:16/9;
        border-radius:22px;
        overflow:hidden;
        background:#0f1820;
        box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
      }

      .cp-ronda-video-frame iframe{
        width:100%;
        height:100%;
        display:block;
        border:0;
      }

      .cp-ronda-date-card{
        grid-area:date;
        padding:20px 28px 22px;
        border-left:5px solid #6fbf3a;
      }

      .cp-ronda-results-card{
        grid-area:results;
        padding:18px 28px 24px;
        border-left:5px solid #6fbf3a;
      }

      .cp-ronda-box-head{
        display:flex;
        align-items:center;
        gap:16px;
        margin-bottom:14px;
      }

      .cp-ronda-box-head h3{
        margin:0;
        color:#11243a;
        font-size:1.95rem;
        line-height:1.18;
      }

      .cp-ronda-box-head-results h3{
        font-size:1.15rem;
      }

      .cp-ronda-box-head-results p{
        margin:3px 0 0;
        color:#667789;
        font-size:.96rem;
      }

      .cp-ronda-box-icon,
      .cp-ronda-item-icon,
      .cp-ronda-result-icon{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        color:#6fbf3a;
        background:rgba(111,191,58,.11);
        border:1px solid rgba(111,191,58,.12);
      }

      .cp-ronda-box-icon{
        width:56px;
        height:56px;
        flex:0 0 56px;
        font-size:1.35rem;
      }

      .cp-ronda-date-item{
        display:flex;
        align-items:flex-start;
        gap:16px;
        padding:14px 0;
        border-top:1px solid #e9eef3;
      }

      .cp-ronda-date-item:first-of-type{
        border-top:0;
        padding-top:10px;
      }

      .cp-ronda-item-icon{
        width:46px;
        height:46px;
        flex:0 0 46px;
        font-size:1.14rem;
      }

      .cp-ronda-item-copy{
        display:flex;
        align-items:baseline;
        flex-wrap:wrap;
        gap:10px;
        padding-top:8px;
      }

      .cp-ronda-item-copy strong{
        color:#6fbf3a;
        font-size:1.04rem;
      }

      .cp-ronda-item-copy span{
        color:#33465a;
        font-size:1.02rem;
        line-height:1.45;
      }

      .cp-ronda-results-grid{
        display:grid;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap:14px;
      }

      .cp-ronda-result-item{
        min-height:126px;
        padding:18px 16px 16px;
        border-radius:18px;
        background:#f8fafb;
        border:1px solid #edf1f4;
        display:flex;
        flex-direction:column;
        gap:10px;
        justify-content:flex-start;
      }

      .cp-ronda-result-icon{
        width:44px;
        height:44px;
        font-size:1.1rem;
      }

      .cp-ronda-result-item strong{
        color:#11243a;
        font-size:2.1rem;
        line-height:1;
        letter-spacing:-.8px;
      }

      .cp-ronda-result-item span:last-child{
        color:#5f7184;
        font-size:.95rem;
        line-height:1.35;
      }

      @media(max-width:1199px){
        .cp-ronda-layout{
          grid-template-columns:minmax(0, 1fr) minmax(380px, .92fr);
          gap:26px 28px;
        }

        .cp-ronda-intro h2{
          font-size:clamp(2.3rem, 4vw, 3.6rem);
        }
      }

      @media(max-width:991px){
        .cp-ronda{
          padding:80px 0 72px;
        }

        .cp-ronda-layout{
          grid-template-columns:1fr;
          grid-template-areas:
            "intro"
            "video"
            "date"
            "results";
          gap:24px;
        }

        .cp-ronda-intro{
          padding:0;
        }

        .cp-ronda-intro p{
          max-width:none;
        }
      }

      @media(max-width:767px){
        .cp-ronda-container{
          padding:0 22px;
        }

        .cp-ronda-video-card,
        .cp-ronda-date-card,
        .cp-ronda-results-card{
          border-radius:24px;
          padding-left:20px;
          padding-right:20px;
        }

        .cp-ronda-video-card{
          padding-top:22px;
        }

        .cp-ronda-box-head{
          gap:12px;
        }

        .cp-ronda-box-icon{
          width:50px;
          height:50px;
          flex-basis:50px;
        }

        .cp-ronda-item-copy{
          flex-direction:column;
          align-items:flex-start;
          gap:3px;
          padding-top:4px;
        }

        .cp-ronda-results-grid{
          grid-template-columns:repeat(2, minmax(0, 1fr));
        }
      }

      @media(max-width:576px){
        .cp-ronda{
          padding:70px 0 64px;
        }

        .cp-ronda-container{
          padding:0 18px;
        }

        .cp-ronda-intro h2{
          font-size:clamp(2rem, 10vw, 2.75rem);
        }

        .cp-ronda-intro p,
        .cp-ronda-list li,
        .cp-ronda-video-copy p,
        .cp-ronda-item-copy span{
          font-size:.97rem;
        }

        .cp-ronda-list{
          gap:12px;
          margin-bottom:24px;
        }

        .cp-btn-ronda{
          width:100%;
        }

        .cp-ronda-video-copy h3{
          font-size:1.95rem;
        }

        .cp-ronda-video-frame{
          border-radius:18px;
        }

        .cp-ronda-results-grid{
          gap:12px;
        }

        .cp-ronda-result-item{
          min-height:112px;
          padding:16px 14px 14px;
        }

        .cp-ronda-result-item strong{
          font-size:1.85rem;
        }
      }

      @media(max-width:399px){
        .cp-ronda-results-grid{
          grid-template-columns:1fr;
        }
      }


      /* =========================
        EDICIÓN ANTERIOR V2
      ========================= */

      .cp-edicion-anterior{
        position:relative;
        padding: 88px 0 110px;
        background: linear-gradient(180deg, #eef2f5 0%, #f4f7f9 92px, #f4f7f9 100%);
      }

      .cp-edicion-anterior::before{
        content:"";
        position:absolute;
        top:0;
        left:50%;
        width:min(1120px, calc(100% - 48px));
        height:1px;
        transform:translateX(-50%);
        background:linear-gradient(90deg, transparent, rgba(111,191,58,.32), rgba(215,223,35,.24), transparent);
      }

      .cp-edicion-anterior::after{
        content:"";
        position:absolute;
        top:0;
        left:0;
        right:0;
        height:88px;
        pointer-events:none;
        background:radial-gradient(circle at 50% 0%, rgba(111,191,58,.08), transparent 52%);
      }

      /* HEADER */

      .cp-edicion-header{
        position:relative;
        z-index:1;
        text-align:center;
        max-width:700px;
        margin:0 auto 50px;
      }

      .cp-edicion-header span{
        color:#6fbf3a;
        font-size:13px;
        letter-spacing:2px;
      }

      .cp-edicion-header h2{
        font-size:32px;
        margin:10px 0;
        color:#1c2b39;
      }

      .cp-edicion-header p{
        color:#5a6a7a;
      }

      /* CARROUSEL */

      .cp-edicion-carousel{
        overflow:hidden;
        border-radius:12px;
        margin-bottom:40px;
      }

      .cp-carousel-track{
        display:flex;
        gap:15px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        padding-bottom:10px;
      }

      .cp-carousel-track img{
        width:300px;
        height:200px;
        object-fit:cover;
        border-radius:10px;
        scroll-snap-align:start;
        transition:.3s;
      }

      .cp-carousel-track img:hover{
        transform:scale(1.03);
      }

      /* STATS */

      .cp-edicion-stats{
        display:flex;
        justify-content:center;
        gap:20px;
        flex-wrap:wrap;
        margin-bottom:50px;
      }

      .cp-badge{
        background:#ffffff;
        padding:18px 25px;
        border-radius:12px;
        text-align:center;
        box-shadow:0 5px 15px rgba(0,0,0,0.05);
      }

      .cp-badge strong{
        display:block;
        font-size:22px;
        color:#6fbf3a;
      }

      .cp-badge span{
        font-size:14px;
        color:#4a5a6a;
      }

      /* BLOQUE ACADÉMICO */

      .cp-edicion-academico{
        background:#ffffff;
        padding:30px;
        border-radius:14px;
        border-left:5px solid #6fbf3a;
        box-shadow:0 10px 25px rgba(0,0,0,0.05);
        max-width:900px;
        margin:0 auto;
      }

      .cp-edicion-academico h3{
        margin-bottom:15px;
        color:#1c2b39;
      }

      .cp-edicion-academico p{
        color:#4a5a6a;
        margin-bottom:15px;
      }

      .cp-edicion-academico ul{
        margin-bottom:15px;
        padding-left:20px;
      }

      .cp-edicion-academico li{
        margin-bottom:6px;
      }

      .cp-edicion-org{
        font-size:13px;
        color:#6b7b8a;
      }

      /* BOTÓN */

      .cp-btn-libro{
        display:inline-block;
        margin-top:10px;
        background:#6fbf3a;
        color:#fff;
        padding:12px 20px;
        border-radius:25px;
        text-decoration:none;
      }

      .cp-btn-libro:hover{
        background:#5aa52f;
      }

      .cp-slider{
        position:relative;
        overflow:hidden;
        border-radius:12px;
        margin-bottom:40px;
      }

      .cp-slider-track{
        display:flex;
        transition: transform .5s ease;
      }

      .cp-slide{
        display:flex;
        justify-content:center;
      }

      .cp-slide img{
        width: 85%;
        max-width: 700px;
        height: 220px; /* 🔥 clave */
        object-fit: cover;
        border-radius: 14px;
      }

/* =========================
   GALERÍA EDICIÓN ANTERIOR
========================= */

.cp-edicion-galeria{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:22px;
  margin: 40px 0 60px;
}

/* CARD */

.cp-img{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  background:#ddd;
  box-shadow: 0 10px 25px rgba(0,0,0,0.06);
}

/* IMAGEN */

.cp-img img{
  width:100%;
  height:200px; /* 🔥 tamaño correcto */
  object-fit:cover;
  display:block;
  transition: transform .35s ease;
}

/* HOVER SUAVE */

.cp-img:hover img{
  transform: scale(1.05);
}

/* RESPONSIVE */

@media(max-width:992px){
  .cp-edicion-galeria{
    grid-template-columns: repeat(2,1fr);
  }
}

@media(max-width:600px){
  .cp-edicion-galeria{
    grid-template-columns: 1fr;
  }
}

      /* BOTONES */

      .cp-slider-btn{
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        background:rgba(0,0,0,0.4);
        color:#fff;
        border:none;
        font-size:24px;
        padding:8px 12px;
        cursor:pointer;
        border-radius:50%;
      }

      .cp-slider-btn.prev{ left:10px; }
      .cp-slider-btn.next{ right:10px; }


      /* BLOQUE MÁS LIVIANO */

      .cp-edicion-academico{
        display:flex;
        justify-content:space-between;
        gap:20px;
        background:#ffffff;
        border-radius:12px;
        padding:20px 25px;
        border-left:4px solid #6fbf3a;
        max-width:800px;
        margin:0 auto;
      }

      /* TEXTO */

      .cp-academico-texto h4{
        margin-bottom:10px;
        color:#1c2b39;
      }

      .cp-academico-texto p{
        font-size:14px;
        color:#4a5a6a;
        margin-bottom:10px;
      }

      .cp-academico-texto ul{
        font-size:13px;
        margin-bottom:10px;
      }

      /* LINK */

      .cp-link-libro{
        color:#6fbf3a;
        font-weight:600;
        text-decoration:none;
      }

      .cp-link-libro:hover{
        text-decoration:underline;
      }

      /* ORGANIZADORES */

      .cp-academico-org{
        display:flex;
        align-items:flex-end;
        font-size:12px;
        color:#6b7b8a;
      }

      /* RESPONSIVE */

      @media(max-width:768px){
        .cp-edicion-academico{
          flex-direction:column;
        }
      }      


/* CONTENEDOR GENERAL */

.cp-edicion-bottom{
  display:grid;
  grid-template-columns: 1fr 1.3fr;
  gap:40px;
  margin-top:40px;
}

/* IZQUIERDA */

.cp-edicion-left{
  display:flex;
  align-items:flex-start;
}

/* STATS */

.cp-edicion-stats{
  display:grid;
  grid-template-columns: repeat(2,1fr);
  gap:18px;
  width:100%;
}

.cp-badge{
  background:#ffffff;
  padding:18px;
  border-radius:12px;
  text-align:center;
  box-shadow:0 5px 15px rgba(0,0,0,0.05);
}

.cp-badge strong{
  display:block;
  font-size:22px;
  color:#6fbf3a;
}

.cp-badge span{
  font-size:13px;
  color:#4a5a6a;
}

/* DERECHA */

.cp-edicion-right{
  display:flex;
  flex-direction:column;
  gap:20px;
}

/* BLOQUES */

.cp-edicion-academico,
.cp-edicion-conferencias{
  background:#ffffff;
  padding:18px 20px;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,0.05);
}

/* BORDE DIFERENCIADOR */

.cp-edicion-academico{
  border-left:4px solid #6fbf3a;
}

.cp-edicion-conferencias{
  border-left:4px solid #3a7bd5;
}

/* TITULOS */

.cp-edicion-academico h4,
.cp-edicion-conferencias h4{
  margin-bottom:10px;
  color:#1c2b39;
}

/* TEXTO */

.cp-edicion-academico p{
  font-size:14px;
  margin-bottom:10px;
  color:#4a5a6a;
}

.cp-edicion-academico ul{
  font-size:13px;
  margin-bottom:10px;
}

.cp-edicion-conferencias ul{
  font-size:13px;
  line-height:1.5;
}

/* LINK */

.cp-link-libro{
  display:inline-block;
  margin-top:5px;
  color:#6fbf3a;
  font-weight:600;
  text-decoration:none;
}

/* SMALL */

.cp-edicion-academico small{
  display:block;
  margin-top:8px;
  font-size:11px;
  color:#6b7b8a;
}

/* RESPONSIVE */

@media(max-width:992px){
  .cp-edicion-bottom{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   GALERIA PRO 2026 - LIGHTBOX
========================================================= */
.cp-galeria-pro{padding:110px 0;background:radial-gradient(circle at 8% 12%, rgba(124,179,66,.14), transparent 32%),radial-gradient(circle at 90% 18%, rgba(253,216,53,.13), transparent 34%),linear-gradient(180deg,#f7faf5 0%,#eef4ec 100%)}
.cp-galeria-pro-header{text-align:center;max-width:780px;margin:0 auto 42px}.cp-galeria-pro-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--primary-green);font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}.cp-galeria-pro-kicker:before,.cp-galeria-pro-kicker:after{content:"";width:28px;height:3px;border-radius:10px;background:var(--primary-yellow)}.cp-galeria-pro-header h2{font-size:clamp(2rem,3vw,3rem);color:#12351f;margin-bottom:14px;line-height:1.12}.cp-galeria-pro-header p{color:#5b6c61;font-size:1.06rem;line-height:1.75}.cp-galeria-pro-panel{background:rgba(255,255,255,.92);border:1px solid rgba(124,179,66,.14);border-radius:28px;box-shadow:0 24px 70px rgba(34,73,38,.10);padding:34px}.cp-galeria-pro-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:14px;margin-bottom:28px;border-radius:22px;background:#f7faf5;border:1px solid #e3eadf}.cp-galeria-pro-filter{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:999px;border:1px solid transparent;background:#fff;color:#54645b;font-family:'Montserrat',sans-serif;font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:all .25s ease}.cp-galeria-pro-filter i{color:#6f7e74;font-size:.95rem;transition:all .25s ease}.cp-galeria-pro-filter:hover,.cp-galeria-pro-filter.active{background:#fff;border-color:var(--primary-green);color:#2d5f1f;box-shadow:0 10px 24px rgba(124,179,66,.16);transform:translateY(-2px)}.cp-galeria-pro-filter:hover i,.cp-galeria-pro-filter.active i{color:var(--primary-green)}.cp-galeria-pro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cp-galeria-pro-card{position:relative;min-height:220px;border:0;border-radius:18px;overflow:hidden;cursor:pointer;background:#dfe8dd;box-shadow:0 12px 30px rgba(0,0,0,.08);isolation:isolate;opacity:0;transform:translateY(12px);animation:cpGalleryIn .38s ease forwards}@keyframes cpGalleryIn{to{opacity:1;transform:translateY(0)}}.cp-galeria-pro-card:nth-child(3n+1){grid-row:span 2;min-height:458px}.cp-galeria-pro-card:nth-child(6n+2){grid-column:span 2}.cp-galeria-pro-card img{width:100%;height:100%;min-height:220px;display:block;object-fit:cover;transition:transform .45s ease,filter .45s ease}.cp-galeria-pro-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(9,34,18,.82) 100%);opacity:.86;z-index:1;transition:opacity .3s ease}.cp-galeria-pro-card:hover img{transform:scale(1.07);filter:saturate(1.08)}.cp-galeria-pro-card:hover:after{opacity:.96}.cp-galeria-pro-card-info{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px;color:#fff;text-align:left}.cp-galeria-pro-card-info span{display:inline-flex;align-items:center;gap:7px;width:fit-content;padding:6px 11px;border-radius:999px;background:rgba(253,216,53,.94);color:#18310f;font-family:'Montserrat',sans-serif;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.cp-galeria-pro-card-info h3{font-size:1rem;margin:0;line-height:1.25;text-shadow:0 2px 10px rgba(0,0,0,.28)}.cp-galeria-pro-loading,.cp-galeria-pro-empty{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:10px;min-height:180px;border:1px dashed #cbd8c6;border-radius:18px;color:#5b6c61;background:#fff;font-weight:700}.cp-galeria-pro-actions{display:flex;justify-content:center;margin-top:30px}.cp-galeria-load-more{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:15px 34px;background:linear-gradient(135deg,var(--primary-green),var(--dark-green));color:#fff;font-family:'Montserrat',sans-serif;font-weight:900;cursor:pointer;box-shadow:0 14px 30px rgba(124,179,66,.28);transition:all .25s ease}.cp-galeria-load-more:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(124,179,66,.36)}.cp-galeria-load-more[hidden]{display:none}.cp-galeria-pro-features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}.cp-galeria-pro-features article{display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:20px;background:rgba(255,255,255,.82);border:1px solid rgba(124,179,66,.12);box-shadow:0 12px 28px rgba(34,73,38,.07)}.cp-galeria-pro-features i{font-size:1.65rem;color:#234a2a;min-width:32px}.cp-galeria-pro-features h3{font-size:.95rem;color:#1d3223;margin-bottom:6px;text-transform:uppercase;letter-spacing:.02em}.cp-galeria-pro-features p{color:#5b6c61;font-size:.88rem;line-height:1.55}.cp-galeria-lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(15,23,18,.88);backdrop-filter:blur(10px);z-index:3000}.cp-galeria-lightbox.active{display:flex}.cp-lightbox-card{position:relative;width:min(980px,88vw);max-height:88vh;border-radius:22px;overflow:hidden;background:#101914;box-shadow:0 30px 90px rgba(0,0,0,.42);border:1px solid rgba(255,255,255,.14)}.cp-lightbox-card img{width:100%;max-height:68vh;object-fit:contain;display:block;background:#0c120f}.cp-lightbox-info{padding:18px 22px 22px;color:#fff;background:linear-gradient(180deg,#101914 0%,#152218 100%)}.cp-lightbox-info span{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(253,216,53,.95);color:#16290e;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.cp-lightbox-info h3{font-size:1.25rem;margin-bottom:6px}.cp-lightbox-info p{color:rgba(255,255,255,.76);line-height:1.6;margin:0}.cp-lightbox-counter{position:absolute;top:14px;left:14px;z-index:2;padding:7px 12px;border-radius:999px;background:rgba(0,0,0,.48);color:#fff;font-weight:800;font-size:.85rem}.cp-lightbox-close,.cp-lightbox-nav{border:0;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#1b2b20;cursor:pointer;transition:all .25s ease;box-shadow:0 12px 28px rgba(0,0,0,.22)}.cp-lightbox-close{position:absolute;top:22px;right:24px;z-index:3001}.cp-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3001}.cp-lightbox-prev{left:26px}.cp-lightbox-next{right:26px}.cp-lightbox-close:hover,.cp-lightbox-nav:hover{background:var(--primary-yellow);transform:translateY(-50%) scale(1.05)}.cp-lightbox-close:hover{transform:scale(1.05)}@media(max-width:1100px){.cp-galeria-pro-grid{grid-template-columns:repeat(3,1fr)}.cp-galeria-pro-card:nth-child(6n+2){grid-column:span 1}.cp-galeria-pro-features{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.cp-galeria-pro{padding:78px 0}.cp-galeria-pro-panel{padding:22px;border-radius:22px}.cp-galeria-pro-grid{grid-template-columns:1fr 1fr;gap:12px}.cp-galeria-pro-card,.cp-galeria-pro-card:nth-child(3n+1){min-height:210px;grid-row:auto}.cp-galeria-pro-card-info h3{font-size:.9rem}.cp-galeria-pro-features{grid-template-columns:1fr}.cp-lightbox-nav{width:40px;height:40px}.cp-lightbox-prev{left:12px}.cp-lightbox-next{right:12px}.cp-lightbox-card{width:92vw}}@media(max-width:520px){.cp-galeria-pro-grid{grid-template-columns:1fr}.cp-galeria-pro-tabs{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.cp-galeria-pro-filter{white-space:nowrap}.cp-galeria-lightbox{padding:14px}.cp-lightbox-card{width:96vw}}


/* =========================
   NOTICIAS PRO
========================= */

.noticias-section {
  background: #f9fafb;
  padding: 80px 0;
}

.section-title {
  font-size: 2.2rem;
  font-weight: 700;
  color: #2c3e50;
}

.section-subtitle {
  color: #6c757d;
  font-size: 1rem;
}

/* CARD */

.noticia-card {
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0,0,0,0.06);
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.noticia-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

/* Imagen */

.noticia-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

/* Contenido */

.noticia-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

/* Fecha */

.noticia-fecha {
  font-size: 0.85rem;
  font-weight: 600;
  color: #28a745; /* Verde institucional */
  margin-bottom: 10px;
}

/* Título */

.noticia-titulo {
  font-size: 1.2rem;
  font-weight: 700;
  color: #2c3e50;
  margin-bottom: 10px;
}

/* Resumen */

.noticia-resumen {
  font-size: 0.95rem;
  color: #555;
  margin-bottom: 15px;
  flex-grow: 1;
}

/* Botón */

.noticia-btn {
  align-self: flex-start;
  background: linear-gradient(45deg, #28a745, #80bb46);
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: 25px;
  font-size: 0.85rem;
  transition: all 0.3s ease;
  text-decoration: none;
}

.noticia-btn:hover {
  background: linear-gradient(45deg, #218838, #6aa838);
  text-decoration: none;
  color: #fff;
}

/* Destacado */

.noticia-destacada {
  border: 2px solid #80bb46;
}

/* Responsive */

@media (max-width: 992px) {
  .noticia-img {
    height: 180px;
  }
}

@media (max-width: 768px) {
  .noticia-img {
    height: 160px;
  }
}

/* =========================
   NOTICIAS V2 (ESTILO REAL)
========================= */

.noticia-card-v2 {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  height: 100%;
}

.noticia-card-v2:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.15);
}

/* Imagen */

.noticia-img-wrapper {
  position: relative;
  height: 220px;
  overflow: hidden;
}

.noticia-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Badge fecha (CLAVE) */

.noticia-badge {
  position: absolute;
  top: 15px;
  right: 15px;
  background: #80bb46;
  color: #fff;
  padding: 8px 10px;
  font-weight: 700;
  border-radius: 6px;
  text-align: center;
  font-size: 14px;
  line-height: 1.1;
}

.noticia-badge span {
  display: block;
  font-size: 11px;
}

/* Contenido */

.noticia-content {
  padding: 20px;
}

.noticia-titulo {
  font-size: 16px;
  font-weight: 700;
  color: #2c3e50;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.noticia-resumen {
  font-size: 14px;
  color: #666;
  margin-bottom: 15px;
}

/* Botón */

.noticia-btn {
  background: #80bb46;
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 13px;
  transition: 0.3s;
}

.noticia-btn:hover {
  background: #6aa838;
}

/* Responsive */

@media (max-width: 768px) {
  .noticia-img-wrapper {
    height: 180px;
  }
}


/* =========================
   NOTICIAS FINAL (GRID PRO)
========================= */

.cp-news{
  padding:100px 0;
  background:#f4f7f9;
}

/* GRID */

.cp-news-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
  margin-top:40px;
}

/* CARD */

.cp-news-card{
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 25px rgba(0,0,0,.06);
  transition:.3s;
  display:flex;
  flex-direction:column;
}

.cp-news-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}

/* IMAGE */

.cp-news-img{
  position:relative;
  height:180px;
}

.cp-news-img img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* BADGE FECHA */

.cp-news-date{
  position:absolute;
  top:12px;
  right:12px;

  background:#7CB342;
  color:#fff;

  padding:8px 10px;
  border-radius:6px;

  text-align:center;
  font-weight:700;
  font-size:14px;
  line-height:1;
}

.cp-news-date span{
  display:block;
  font-size:10px;
  margin-top:2px;
}

/* CONTENT */

.cp-news-body{
  padding:18px;
  display:flex;
  flex-direction:column;
  flex-grow:1;
}

/* TITLE */

.cp-news-title{
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  color:#1c2b39;
  margin-bottom:10px;
}

/* TEXT */

.cp-news-text{
  font-size:13px;
  color:#5a6a7a;
  line-height:1.5;
  margin-bottom:15px;
  flex-grow:1;
}

/* BUTTON */

.cp-news-btn{
  background:#7CB342;
  color:#fff;
  border:none;
  padding:8px 14px;
  border-radius:6px;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
  width:fit-content;
  transition:.3s;
}

.cp-news-btn:hover{
  background:#689F38;
}

/* RESPONSIVE */

@media(max-width:992px){
  .cp-news-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .cp-news-grid{
    grid-template-columns:1fr;
  }
}

/* =========================
   ANIMACIÓN CARDS
========================= */

.cp-news-card{
  opacity:0;
  transform:translateY(20px);
  animation:fadeUp .6s ease forwards;
}

.cp-news-card:nth-child(2){animation-delay:.1s;}
.cp-news-card:nth-child(3){animation-delay:.2s;}
.cp-news-card:nth-child(4){animation-delay:.3s;}

@keyframes fadeUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* =========================
   PAGINACIÓN
========================= */

.cp-news-pagination{
  margin-top:30px;
  display:flex;
  justify-content:center;
  gap:10px;
}

.cp-page-btn{
  padding:8px 14px;
  border-radius:6px;
  border:none;
  background:#e0e0e0;
  cursor:pointer;
  font-weight:600;
}

.cp-page-btn.active{
  background:#7CB342;
  color:#fff;
}

/* =========================
   MODAL PRO
========================= */

.cp-news-modal{
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,.75);
  z-index:9999;

  align-items:center;
  justify-content:center;
  padding:20px;
}

.cp-news-modal.active{
  display:flex;
}

.cp-news-modal-content{
  background:#fff;
  border-radius:12px;
  max-width:800px;
  width:100%;
  overflow:hidden;
  animation:modalIn .3s ease;
}

@keyframes modalIn{
  from{transform:scale(.9);opacity:0;}
  to{transform:scale(1);opacity:1;}
}

.cp-news-modal-content img{
  width:100%;
  height:300px;
  object-fit:cover;
}

.cp-news-modal-body{
  padding:25px;
}

.cp-news-modal-body h2{
  margin-bottom:10px;
}

.cp-news-modal-body span{
  color:#7CB342;
  font-size:14px;
  display:block;
  margin-bottom:15px;
}

.cp-news-close{
  position:absolute;
  top:20px;
  right:30px;
  font-size:30px;
  color:#fff;
  cursor:pointer;
}

.sponsor-card {
    background: linear-gradient(135deg, #0f1a13, #1b2c20);
    border: 1px solid rgba(40,167,69,0.3);
    border-radius: 16px;
    padding: 25px;
    color: #fff;
    height: 100%;
    transition: all .3s ease;
}

.sponsor-card:hover {
    transform: translateY(-5px);
    border-color: #8cc63f;
}

.sponsor-label {
    font-size: 11px;
    letter-spacing: 2px;
    color: #d4ff00;
    margin-bottom: 15px;
}

.sponsor-logo-box {
    border: 1px dashed rgba(255,255,255,0.2);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 15px;
    text-align: center;
}

.sponsor-logo-box img {
    max-width: 100%;
    max-height: 60px;
    object-fit: contain;
}

.sponsor-title {
    font-weight: 600;
    margin-bottom: 10px;
}

.sponsor-desc {
    font-size: 13px;
    opacity: 0.85;
}

.sponsors-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-top: 70px;
}

.sponsor-card {
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(218,255,0,0.35);
    border-radius: 18px;
    padding: 32px 30px;
    min-height: 330px;
    color: #ffffff;
}

.sponsor-kicker {
    font-size: 12px;
    letter-spacing: 2px;
    color: #d7ff00;
    font-weight: 700;
    margin-bottom: 18px;
}

.sponsor-logo-frame {
    height: 95px;
    border: 1px dashed rgba(255,255,255,0.28);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    color: rgba(34,55,82,0.7);
    font-size: 15px;
}

.sponsor-logo {
    max-width: 82%;
    max-height: 65px;
    object-fit: contain;
}

.sponsor-card h3 {
    font-size: 19px;
    font-weight: 800;
    color: #233752;
    margin-bottom: 14px;
}

.sponsor-card p {
    font-size: 15px;
    line-height: 1.55;
    color: #ffffff;
    margin: 0;
}

@media (max-width: 1199px) {
    .sponsors-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .sponsors-grid {
        grid-template-columns: 1fr;
        margin-top: 45px;
    }
}

.skeleton {
    background: linear-gradient(90deg,#2c3642,#3a4654,#2c3642);
    background-size: 200% 100%;
    animation: shimmer 1.2s infinite;
    border-radius: 16px;
    height: 260px;
}

@keyframes shimmer {
    0% {background-position: -200% 0;}
    100% {background-position: 200% 0;}
}




.auspiciantes-grid{
display:grid;
grid-template-columns:repeat(6,1fr);
gap:20px;
margin-top:50px;
}

.ausp-card{
transition: all .3s ease;
background:#2c3642;
border-radius:16px;
padding:20px;
text-align:center;
color:#fff;
}

.ausp-card img{
max-height:40px;
margin-bottom:10px;
}

.ausp-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
}

@media(max-width:1200px){
.auspiciantes-grid{
grid-template-columns:repeat(3,1fr);
}
}

@media(max-width:768px){
.auspiciantes-grid{
grid-template-columns:repeat(2,1fr);
}
}



/* ========= agregado el 28-04-26  ================ */
.cp-agenda-tabs{
    display:flex;
    gap:15px;
    margin-bottom:25px;
}

.cp-tab{
    padding:10px 18px;
    border-radius:25px;
    border:1px solid rgba(255,255,255,0.2);
    cursor:pointer;
    color:#fff;
}

.cp-tab.active{
    background:#d7ff00;
    color:#000;
}

.cp-agenda-item{
    border-left:3px solid #d7ff00;
    padding:12px 15px;
    margin-bottom:12px;
    background:rgba(255,255,255,0.03);
    border-radius:8px;
}

.cp-agenda-hora{
    font-weight:700;
    font-size:14px;
    color:#d7ff00;
}

.cp-agenda-titulo{
    font-weight:600;
}

.cp-agenda-lugar{
    font-size:13px;
    opacity:0.7;
}



/* ========= agregado el 28-04-26  ================ */
.cp-galeria-grid{
    display:grid;
    grid-template-columns: repeat(3,1fr);
    gap:25px;
}

.cp-galeria-card{
    position:relative;
    overflow:hidden;
    border-radius:18px;
}

.cp-galeria-img img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.cp-galeria-overlay{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    padding:20px;
    background:linear-gradient(to top, rgba(0,0,0,0.7), transparent);
    color:#fff;
}



/* =========================================================
   FRONTEND_FINAL_POLISH_V1
   Pulido quirúrgico: CTA expositor, contacto y footer
========================================================= */

/* CTA EXPOSITOR FINAL */
.cta-expositor{
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.22), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(245,227,0,.24), transparent 30%),
    linear-gradient(135deg,#6fbf3a 0%, #4f9f2f 100%);
  padding:110px 0;
  color:#fff;
  overflow:hidden;
}

.container-cta{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:58px;
  align-items:center;
  padding:0 40px;
}

.cta-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  letter-spacing:2px;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  color:rgba(255,255,255,.9);
}

.cta-tag:before{
  content:"";
  width:34px;
  height:3px;
  border-radius:999px;
  background:#f5e300;
}

.cta-left h2{
  font-size:clamp(2.4rem,4vw,4rem);
  line-height:1.04;
  font-weight:900;
  margin:18px 0 22px;
  letter-spacing:-1px;
}

.cta-left h2 span{
  color:#f5e300;
  text-shadow:0 10px 30px rgba(0,0,0,.12);
}

.cta-intro{
  max-width:760px;
  color:rgba(255,255,255,.92);
  font-size:1.08rem;
  line-height:1.75;
  margin-bottom:28px;
}

.cta-list{
  list-style:none;
  display:grid;
  gap:12px;
}

.cta-list li{
  display:flex;
  gap:16px;
  align-items:flex-start;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  border-radius:16px;
  font-size:.98rem;
  line-height:1.55;
  backdrop-filter:blur(10px);
}

.cta-list strong{
  color:#f5e300;
  min-width:34px;
  font-size:1.18rem;
  line-height:1;
}

.cta-right{
  display:flex;
  justify-content:center;
}

.cta-box{
  width:100%;
  max-width:440px;
  background:#fff;
  color:#25313d;
  padding:42px;
  border-radius:24px;
  box-shadow:0 28px 70px rgba(18,43,17,.24);
  position:relative;
}

.cta-box:before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(111,191,58,.16);
  border-radius:18px;
  pointer-events:none;
}

.cta-box-label{
  display:inline-flex;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(111,191,58,.12);
  color:#4f9f2f;
  font-weight:900;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:16px;
}

.cta-box h3{
  font-size:1.8rem;
  margin-bottom:12px;
  color:#17212b;
}

.cta-box h3 span{
  color:#6fbf3a;
}

.cta-box p{
  color:#5a6875;
  font-size:.98rem;
  line-height:1.7;
  margin-bottom:24px;
}

.cta-mini-data{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:24px;
}

.cta-mini-data div{
  padding:14px;
  border-radius:14px;
  background:#f4f7f1;
  border:1px solid #e1ecd9;
}

.cta-mini-data i{
  color:#6fbf3a;
  margin-bottom:8px;
}

.cta-mini-data strong,
.cta-mini-data span{
  display:block;
}

.cta-mini-data strong{
  font-size:.82rem;
  color:#17212b;
  margin-bottom:3px;
}

.cta-mini-data span{
  font-size:.75rem;
  color:#6d7883;
}

.cta-box .btn-dark,
.cta-box .btn-green{
  position:relative;
  z-index:1;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.02em;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  transition:all .25s ease;
}

.cta-box .btn-dark:hover,
.cta-box .btn-green:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}

.cta-box small{
  display:block;
  color:#7a858f;
  margin-top:16px;
  line-height:1.55;
}

/* CONTACTO FINAL */
.contact{
  background:
    radial-gradient(circle at 10% 12%, rgba(124,179,66,.10), transparent 28%),
    linear-gradient(180deg,#ffffff 0%,#f4f7f9 100%);
}

.contact-method{
  border:1px solid rgba(124,179,66,.10);
}

.contact-method:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(0,0,0,.08);
  border-color:rgba(124,179,66,.28);
}

.contact-form{
  border:1px solid rgba(124,179,66,.14);
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
  border-color:var(--primary-green);
  box-shadow:0 0 0 4px rgba(124,179,66,.12);
  outline:none;
}

.contact-form.was-validated input:invalid,
.contact-form.was-validated textarea:invalid,
.contact-form.was-validated select:invalid{
  border-color:#dc3545;
  box-shadow:0 0 0 4px rgba(220,53,69,.10);
}

.form-status{
  display:none;
  padding:13px 16px;
  border-radius:12px;
  margin-bottom:20px;
  font-weight:700;
  line-height:1.45;
}

.form-status.success{
  display:block;
  background:#eaf7ed;
  color:#1f7a34;
  border:1px solid rgba(40,167,69,.20);
}

.form-status.error{
  display:block;
  background:#fdecec;
  color:#b4232c;
  border:1px solid rgba(220,53,69,.20);
}

.form-status.warning{
  display:block;
  background:#fff8df;
  color:#856404;
  border:1px solid rgba(253,216,53,.40);
}

.hp-field{
  position:absolute !important;
  left:-9999px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.contact-submit{
  width:100%;
  justify-content:center;
}

.contact-submit:disabled{
  opacity:.75;
  cursor:not-allowed;
  transform:none;
}

.form-note{
  margin-top:14px;
  color:#7a858f;
  font-size:.84rem;
  line-height:1.55;
}

/* FOOTER FINAL */
.footer{
  background:
    radial-gradient(circle at 12% 0%, rgba(124,179,66,.16), transparent 32%),
    linear-gradient(180deg,#11161c 0%,#090d11 100%);
  padding:72px 0 28px;
}

.footer-content-pro{
  grid-template-columns:1.7fr 1fr 1fr 1.2fr;
  gap:48px;
  align-items:start;
}

.footer-logo{
  display:inline-flex;
  margin-bottom:22px;
}

.footer-logo img{
  height:58px;
  width:auto;
  object-fit:contain;
}

.footer-brand p{
  color:rgba(255,255,255,.72);
  line-height:1.75;
  margin-bottom:18px;
}

.footer-institutional-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(124,179,66,.12);
  border:1px solid rgba(124,179,66,.20);
  color:rgba(255,255,255,.86);
  font-size:.85rem;
  margin-bottom:20px;
}

.footer-column h4{
  color:#f5e300;
  margin-bottom:20px;
  font-size:.95rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.footer-column ul{
  list-style:none;
}

.footer-column li{
  margin-bottom:12px;
  color:rgba(255,255,255,.72);
}

.footer-column a{
  color:rgba(255,255,255,.72);
  text-decoration:none;
  display:inline-flex;
  align-items:flex-start;
  gap:9px;
  line-height:1.45;
  transition:.25s ease;
}

.footer-column a:hover{
  color:#f5e300;
  transform:translateX(3px);
}

.footer-column i{
  color:var(--primary-green);
  margin-top:3px;
  min-width:14px;
}

.footer-contact a{
  word-break:break-word;
}

.footer-organizers{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  padding:20px 0;
  margin-bottom:24px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.footer-organizers span{
  color:#f5e300;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.78rem;
}

.footer-organizers strong{
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:8px 14px;
  font-size:.88rem;
}

.footer-bottom{
  color:rgba(255,255,255,.55);
  font-size:.88rem;
}

/* responsive polish */
@media(max-width:1024px){
  .container-cta,
  .footer-content-pro{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:768px){
  .container-cta{
    grid-template-columns:1fr;
    padding:0 24px;
  }

  .cta-box{
    max-width:100%;
    padding:32px 24px;
  }

  .cta-mini-data{
    grid-template-columns:1fr;
  }

  .footer-content-pro{
    grid-template-columns:1fr;
    gap:34px;
  }

  .footer-bottom{
    align-items:flex-start;
  }
}


/* =========================================================
   REVISIÓN RESPONSIVE / TERMINACIÓN PROFESIONAL 2026
   Ajustes aplicados sobre observaciones cprev_001 a cprev_008
========================================================= */

/* cprev_001: aire lateral en sectores y título de resultado */
.sectores-cards{
  margin:30px 30px 0 !important;
}

.sector-result{
  margin:30px 30px 0 !important;
}

#sector-title{
  padding-left:0;
  margin-left:0;
}

.map-container{
  overflow:hidden;
}

/* Sponsors / auspiciantes: mayor contraste en bloques oscuros */
.cp-sponsors-title,
.cp-auspiciantes-title{
  color:#c6c6c6 !important;
}

.cp-sponsors-title span,
.cp-auspiciantes-title span,
.cp-cta-content h2 span{
  color:#d7df23 !important;
}

.cp-sponsors-right p,
.cp-auspiciantes-header p{
  color:rgba(255,255,255,.88) !important;
}

.cp-badge-edicion,
.cp-cta-left strong,
.cp-cta-left p{
  color:rgba(255,255,255,.82) !important;
}

.cp-cta-left strong{
  display:block;
  color:#c6c6c6 !important;
  margin-bottom:4px;
}

.cp-sponsor-card h3{
  color:#ffffff !important;
}

/* Navbar mobile real con menú hamburguesa */
.mobile-menu{
  appearance:none;
  border:0;
  background:transparent;
  color:#2c3e50;
  width:44px;
  height:44px;
  border-radius:12px;
  align-items:center;
  justify-content:center;
  transition:background .25s ease, color .25s ease, transform .25s ease;
}

.mobile-menu:hover{
  background:rgba(124,179,66,.10);
  color:var(--primary-green);
}

@media (max-width: 1024px){
  .tab-btn{
    min-width:170px !important;
  }
}

@media (max-width: 900px){
  .navbar{
    padding:0 !important;
  }

  .nav-container{
    padding:12px 18px !important;
    min-height:72px;
  }

  .logo img{
    height:42px !important;
    max-width:220px;
  }

  .mobile-menu{
    display:flex !important;
    z-index:1002;
    flex:0 0 44px;
    font-size:1.35rem;
  }

  .nav-links{
    position:fixed !important;
    top:72px;
    left:0;
    right:0;
    display:flex !important;
    flex-direction:column;
    align-items:stretch !important;
    gap:0 !important;
    width:100%;
    max-height:calc(100vh - 72px);
    overflow:auto;
    padding:10px 22px 22px !important;
    background:rgba(255,255,255,.98);
    border-top:1px solid rgba(0,0,0,.06);
    box-shadow:0 22px 44px rgba(0,0,0,.14);
    transform:translateY(-125%);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:transform .32s ease, opacity .25s ease, visibility .25s ease;
    z-index:1001;
  }

  body.nav-open .nav-links{
    transform:translateY(0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  body.nav-open{
    overflow:hidden;
  }

  .nav-links li{
    width:100%;
  }

  .nav-links a{
    display:flex !important;
    width:100%;
    justify-content:flex-start;
    align-items:center;
    padding:14px 2px !important;
    border-bottom:1px solid rgba(44,62,80,.08);
    font-size:.98rem !important;
  }

  .nav-links a::after{
    display:none !important;
  }

  .nav-links .btn-contacto{
    justify-content:center;
    margin-top:14px;
    border-bottom:0;
    padding:13px 18px !important;
  }
}

@media (max-width: 768px){
  .hero{
    min-height:auto !important;
    padding:68px 0 2.2rem !important;
    align-items:flex-start !important;
  }

  .hero-container{
    padding:0 22px 0 !important;
    gap:28px !important;
  }

  .hero-content{
    width:100%;
  }

  .hero-logo{
    margin:16px 0 22px !important;
  }

  .hero-logo img{
    width:100% !important;
    max-width:320px !important;
    margin:0 auto !important;
  }

  .hero-subtitle{
    font-size:1.02rem !important;
    text-align:center;
    margin-bottom:22px !important;
  }

  .hero-date{
    padding:16px 18px !important;
    gap:14px !important;
    margin-bottom:22px !important;
  }

  .date-icon{
    width:48px !important;
    height:48px !important;
    flex:0 0 48px;
  }

  .date-text h3{
    font-size:1.05rem !important;
  }

  .hero-buttons{
    width:100%;
    flex-direction:column;
    gap:12px !important;
  }

  .hero-buttons .btn-primary,
  .hero-buttons .btn-secondary{
    width:100% !important;
    justify-content:center;
    text-align:center;
    padding:15px 20px !important;
  }

  .hero-stats{
    width:100%;
    padding-bottom:2rem !important;
    gap:16px !important;
  }

  .stat-card{
    padding:24px 18px !important;
  }

  .map-section{
    padding:72px 0 !important;
  }

  .map-section .section-container{
    padding:0 14px !important;
  }

  .map-header{
    padding:22px 18px !important;
  }

  .map-title h3{
    font-size:1.05rem;
  }

  .sector-result,
  .sectores-cards{
    margin:22px 1rem 0 !important;
  }

  #sector-title{
    padding-left:0 !important;
  }

  .sectores-cards{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .sector-card{
    padding:17px 18px !important;
  }

  .exhibitors-grid{
    grid-template-columns:1fr !important;
    padding:1rem !important;
    justify-items:center;
    gap:22px !important;
  }

  .exhibitor-card{
    width:100%;
    max-width:330px;
    margin:0 auto;
  }

  .exhibitor-logo{
    margin-left:0;
  }

  .schedule{
    padding:72px 0 !important;
  }

  .schedule-header{
    padding:0 18px;
    margin-bottom:34px !important;
  }

  .schedule-header h2{
    font-size:2rem !important;
  }

  .schedule-tabs{
    width:100%;
    flex-direction:column;
    align-items:stretch;
    padding:0 16px;
    gap:12px !important;
  }

  .tab-btn{
    width:100% !important;
    min-width:0 !important;
    padding:15px 18px !important;
    white-space:normal;
    border-radius:22px !important;
  }

  .tab-btn small{
    line-height:1.35;
    letter-spacing:.06em !important;
  }

  .schedule-active-indicator{
    margin:0 16px 22px !important;
  }

  .schedule-content{
    margin:0 16px;
  }

  .cp-sponsors-v2{
    padding:88px 0 82px !important;
  }

  .cp-sponsors-container,
  .cp-auspiciantes-container{
    padding:0 28px !important;
  }

  .cp-sponsors-header{
    gap:32px !important;
    margin-bottom:48px !important;
  }

  .cp-sponsors-title{
    font-size:clamp(2rem, 12vw, 3.05rem) !important;
  }

  .cp-sponsors-cta{
    align-items:stretch !important;
    gap:24px !important;
  }

  .cp-cta-left{
    align-items:flex-start !important;
  }

  .cp-btn-primary{
    width:100%;
    text-align:center;
    justify-content:center;
  }

  .cp-auspiciantes{
    padding:82px 0 !important;
  }

  .cp-auspiciantes-title{
    font-size:clamp(1.85rem, 10vw, 2.45rem) !important;
    line-height:1.15;
  }
}

@media (max-width: 480px){
  .nav-container{
    padding:10px 14px !important;
  }

  .logo img{
    height:38px !important;
    max-width:190px;
  }

  .nav-links{
    top:64px;
    max-height:calc(100vh - 64px);
  }

  .hero{
    margin-top:64px !important;
    padding-top:50px !important;
  }

  .edition-badge{
    display:block;
    width:max-content;
    margin:0 auto 16px !important;
  }

  .hero-date{
    align-items:flex-start !important;
  }

  .stat-number{
    font-size:2.25rem !important;
  }

  .map-container{
    border-radius:22px !important;
  }

  .sector-result,
  .sectores-cards{
    margin-left:1rem !important;
    margin-right:1rem !important;
  }
}

/* =========================================================
   EDICIÓN 2025 - REDISEÑO PROFESIONAL DE RESUMEN
   Implementación basada en la referencia aprobada
========================================================= */
.cp-edicion-anterior{
  background:
    radial-gradient(circle at 8% 10%, rgba(124,179,66,.08), transparent 26%),
    linear-gradient(180deg,#f8fafb 0%,#eef3f5 100%);
}

.cp-edicion-header{
  max-width: 840px;
}

.cp-edicion-header h2{
  position: relative;
  display: inline-block;
  padding-bottom: 16px;
}

.cp-edicion-header h2::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 74px;
  height: 5px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: linear-gradient(90deg,var(--primary-green),var(--light-green));
}

.cp-edicion-galeria{
  margin: 34px 0 34px;
  gap: 20px;
}

.cp-img{
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(24,43,57,.10);
}

.cp-img img{
  height: 210px;
  filter: saturate(1.04) contrast(1.02);
}

.cp-edicion-bottom.cp-edicion-dashboard{
  display: grid;
  grid-template-columns: minmax(320px, 1.05fr) minmax(320px, 1fr) minmax(340px, .98fr);
  gap: 24px;
  align-items: stretch;
  margin-top: 36px;
}

.cp-edicion-card{
  position: relative;
  overflow: hidden;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(36,74,43,.08);
  border-top: 4px solid var(--primary-green);
  border-radius: 22px;
  padding: 28px;
  box-shadow: 0 18px 48px rgba(17,34,50,.09);
}

.cp-edicion-card::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 8% 10%, rgba(124,179,66,.10), transparent 26%),
    radial-gradient(circle at 96% 0%, rgba(253,216,53,.08), transparent 24%);
}

.cp-card-head,
.cp-kpi-grid,
.cp-academic-list,
.cp-pdf-cta,
.cp-org-line,
.cp-talks-list{
  position: relative;
  z-index: 1;
}

.cp-card-head{
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 22px;
}

.cp-card-icon{
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(124,179,66,.13);
  color: var(--primary-green);
  font-size: 1.35rem;
  box-shadow: inset 0 0 0 1px rgba(124,179,66,.08);
}

.cp-card-head h3{
  margin: 3px 0 6px;
  color: #162637;
  font-size: clamp(1.18rem, 1.45vw, 1.45rem);
  line-height: 1.18;
}

.cp-card-head p{
  margin: 0;
  color: #657487;
  font-size: .95rem;
  line-height: 1.55;
}

.cp-kpi-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}

.cp-kpi-item{
  min-height: 150px;
  border-radius: 16px;
  padding: 22px 20px;
  background: linear-gradient(180deg,#fbfdf9 0%,#f4f8f1 100%);
  border: 1px solid rgba(124,179,66,.10);
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82);
}

.cp-kpi-icon{
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  color: var(--primary-green);
  border: 1px solid rgba(124,179,66,.55);
  background: rgba(255,255,255,.78);
  font-size: 1.15rem;
}

.cp-kpi-item strong{
  color: var(--primary-green);
  font-size: clamp(2rem, 3vw, 2.85rem);
  line-height: .95;
  letter-spacing: -.04em;
  font-family: 'Montserrat', sans-serif;
}

.cp-kpi-item > span:last-child{
  margin-top: 8px;
  color: #405066;
  font-size: 1rem;
  line-height: 1.25;
}

.cp-academic-list,
.cp-talks-list{
  list-style: none;
  margin: 0;
  padding: 0;
}

.cp-academic-list{
  margin-top: 10px;
}

.cp-academic-list li{
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 0;
  color: #213247;
  font-weight: 700;
  border-bottom: 1px solid rgba(38,54,71,.08);
}

.cp-academic-list li span{
  width: 38px;
  height: 38px;
  border-radius: 50%;
  flex: 0 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(124,179,66,.12);
  color: var(--primary-green);
}

.cp-academic-list li:last-child{
  border-bottom: 0;
}

.cp-pdf-cta{
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 16px;
  margin-top: 24px;
  padding: 18px 20px;
  border-radius: 16px;
  border: 1.5px solid rgba(124,179,66,.68);
  background: linear-gradient(135deg, rgba(124,179,66,.08), rgba(255,255,255,.96));
  color: #3a8d28;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}

.cp-pdf-cta:hover{
  transform: translateY(-3px);
  border-color: var(--primary-green);
  box-shadow: 0 16px 34px rgba(124,179,66,.18);
  background: linear-gradient(135deg, rgba(124,179,66,.14), rgba(255,255,255,.98));
}

.cp-pdf-icon{
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #3a8d28;
  font-size: 1.55rem;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(124,179,66,.34);
}

.cp-pdf-text strong{
  display: block;
  color: #3a8d28;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  line-height: 1.25;
}

.cp-pdf-text small{
  display: block;
  margin-top: 5px;
  color: #5f6f82;
  font-size: .82rem;
  line-height: 1.35;
}

.cp-pdf-arrow{
  color: var(--primary-green);
  font-size: 1rem;
}

.cp-org-line{
  margin: 14px 0 0;
  color: #718093;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cp-talks-list{
  margin-top: 6px;
}

.cp-talks-list li{
  position: relative;
  padding: 10px 0 10px 18px;
  color: #526174;
  line-height: 1.45;
  border-bottom: 1px solid rgba(38,54,71,.08);
}

.cp-talks-list li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 1.15em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--primary-green);
  box-shadow: 0 0 0 4px rgba(124,179,66,.10);
}

.cp-talks-list li:last-child{
  border-bottom: 0;
}

.cp-talks-list strong{
  color: #1f3044;
  font-weight: 800;
}

@media(max-width:1280px){
  .cp-edicion-bottom.cp-edicion-dashboard{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .cp-talks-panel{
    grid-column: 1 / -1;
  }

  .cp-talks-list{
    columns: 2;
    column-gap: 34px;
  }

  .cp-talks-list li{
    break-inside: avoid;
  }
}

@media(max-width:900px){
  .cp-edicion-bottom.cp-edicion-dashboard{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .cp-talks-panel{
    grid-column: auto;
  }

  .cp-talks-list{
    columns: 1;
  }
}

@media(max-width:600px){
  .cp-edicion-anterior{
    padding: 78px 0;
  }

  .cp-edicion-header{
    text-align: left;
    margin-bottom: 30px;
  }

  .cp-edicion-header h2{
    font-size: 1.75rem;
  }

  .cp-edicion-header h2::after{
    left: 0;
    transform: none;
    width: 56px;
  }

  .cp-edicion-galeria{
    margin: 28px 0 28px;
  }

  .cp-img img{
    height: 220px;
  }

  .cp-edicion-card{
    padding: 22px;
    border-radius: 20px;
  }

  .cp-card-head{
    gap: 12px;
  }

  .cp-card-icon{
    width: 48px;
    height: 48px;
    flex-basis: 48px;
  }

  .cp-kpi-grid{
    gap: 12px;
  }

  .cp-kpi-item{
    min-height: 132px;
    padding: 18px 16px;
  }

  .cp-kpi-icon{
    width: 42px;
    height: 42px;
  }

  .cp-pdf-cta{
    grid-template-columns: auto 1fr;
    padding: 16px;
  }

  .cp-pdf-arrow{
    grid-column: 1 / -1;
    justify-self: flex-end;
  }
}

@media(max-width:420px){
  .cp-kpi-grid{
    grid-template-columns: 1fr;
  }

  .cp-kpi-item{
    min-height: auto;
  }
}
