:root {
    --color-navy: #075a3b;
    --color-navy-dark: #043e2a;
    --color-gold: #efe2c6;
    --color-red: #c62032;
    --color-green: #075a3b;
    --color-cream: #f7f2e8;
    --color-gray-50: #faf8f3;
    --color-gray-200: #e5e8ee;
    --color-gray-600: #5b6472;
    --font-heading: 'Poppins', sans-serif;
    --font-body: 'Inter', sans-serif;
}

body {
    font-family: var(--font-body);
    color: #1f2733;
    background: linear-gradient(180deg, #fff 0, var(--color-cream) 100%);
    min-height: 100vh;
}

h1, h2, h3, h4, h5, .brand-text { font-family: var(--font-heading); font-weight: 600; }

/* Navbar */
.navbar-institutional {
    background: linear-gradient(90deg, var(--color-green) 0%, var(--color-navy-dark) 78%, #8f1625 100%);
    border-bottom: 4px solid var(--color-red);
    padding: .55rem 0;
}
.navbar-institutional .nav-link { color: rgba(255,255,255,0.85); font-weight: 500; }
.navbar-institutional .nav-link:hover { color: #fff; text-decoration: underline; text-decoration-color: #efcbd0; text-underline-offset: 5px; }
.brand-logo { width: 52px; height: 58px; object-fit: contain; filter: drop-shadow(0 3px 4px rgba(0,0,0,.22)); }
.brand-copy { display:flex; flex-direction:column; line-height:1.08; }
.brand-copy small { color:rgba(255,255,255,.72); font-size:.62rem; margin-top:.22rem; letter-spacing:.025em; }
.brand-text { color: #fff; font-size: 1.15rem; }

.btn-accent {
    background-color: var(--color-red); border-color: var(--color-red); color: #fff;
    font-weight: 600;
}
.btn-accent:hover { background-color: #a91627; border-color: #a91627; color: #fff; }
.btn-primary { background-color: var(--color-green); border-color: var(--color-green); }
.btn-primary:hover { background-color: var(--color-navy-dark); border-color: var(--color-navy-dark); }
.btn-outline-primary { color: var(--color-green); border-color: var(--color-green); }
.btn-outline-primary:hover { background-color: var(--color-green); border-color: var(--color-green); }

/* Hero */
.hero-section {
    background: linear-gradient(120deg, rgba(4,62,42,.95), rgba(7,90,59,.88), rgba(143,22,37,.72)),
                url('https://images.unsplash.com/photo-1496588152823-86ff7695e68f?auto=format&fit=crop&w=1600&q=60') center/cover;
    color: #fff;
    padding: 6rem 0 5rem;
}
.hero-section h1 { font-size: 2.6rem; line-height: 1.2; }
.hero-badge {
    display: inline-block; background: rgba(244,180,0,.15); color: var(--color-gold);
    border: 1px solid rgba(244,180,0,.4); border-radius: 30px; padding: .35rem 1rem;
    font-size: .8rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
}

/* Cards */
.business-card { border: 1px solid #ded8cc; border-radius: 18px; overflow: hidden; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; height: 100%; background: #fff; }
.business-card:hover { transform: translateY(-5px); box-shadow: 0 16px 36px rgba(4,62,42,.14); border-color: rgba(7,90,59,.45); }
.business-card .card-img-top { height: 180px; object-fit: cover; background: var(--color-gray-200); }
.badge-category { background: var(--color-green); color: #fff; font-weight: 500; }
.badge-featured { background: var(--color-red); color: #fff; font-weight: 600; }
.badge-verified { background: #1e824c; color: #fff; }

.stat-card { border-radius: 14px; background: #fff; border: 1px solid var(--color-gray-200); padding: 1.5rem; text-align: center; }
.stat-card .stat-number { font-family: var(--font-heading); font-size: 2rem; font-weight: 700; color: var(--color-navy); }

.section-title { font-weight: 700; color: var(--color-navy); }
.section-eyebrow { color: var(--color-red); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: .8rem; }

.footer-institutional { background: linear-gradient(110deg, var(--color-navy-dark), var(--color-green)); border-top:4px solid var(--color-red); }
.footer-links li { margin-bottom: .4rem; }
.footer-links a { color: rgba(255,255,255,.75); text-decoration: none; }
.footer-links a:hover { color: var(--color-gold); }

.status-badge-pendiente { background:#fff3cd; color:#7a5b00; }
.status-badge-en_revision { background:#e2e8ff; color:#2b3fa0; }
.status-badge-aprobado { background:#d4f4dd; color:#136c3a; }
.status-badge-rechazado { background:#fbdede; color:#a11d2f; }
.status-badge-suspendido { background:#eee; color:#555; }
.status-badge-inactivo { background:#eee; color:#888; }

.admin-sidebar { background: var(--color-navy-dark); min-height: calc(100vh - 76px); }
.admin-sidebar a { color: rgba(255,255,255,.8); display: block; padding: .65rem 1rem; border-radius: 8px; text-decoration: none; }
.admin-sidebar a:hover, .admin-sidebar a.active { background: rgba(244,180,0,.15); color: var(--color-gold); }

.detail-back { display:inline-flex; gap:.45rem; align-items:center; color:var(--color-green); text-decoration:none; font-weight:600; margin-bottom:1rem; }
.detail-description { color:#4f574f; font-size:1.05rem; line-height:1.75; white-space:pre-line; }
.detail-heading { color:var(--color-green); }
.detail-highlight { display:flex; gap:.8rem; align-items:center; background:var(--color-cream); border-left:4px solid var(--color-red); border-radius:10px; padding:1rem 1.2rem; margin:1.5rem 0; }
.detail-highlight i { color:var(--color-red); font-size:1.4rem; }
.detail-sidebar { background:#fff; border:1px solid #ded8cc; border-top:5px solid var(--color-green); border-radius:18px; padding:1.5rem; box-shadow:0 14px 35px rgba(4,62,42,.09); position:sticky; top:100px; }
.business-logo { width:92px; height:92px; object-fit:contain; border:1px solid #e5ded2; border-radius:16px; padding:.5rem; background:#fff; margin-bottom:1rem; }

@media (max-width: 991.98px) {
    .detail-sidebar { position:static; }
    .brand-copy small { display:none; }
}

/* Sección institucional UNESUM */
.unesum-hero { background:linear-gradient(120deg,rgba(4,62,42,.98),rgba(7,90,59,.92) 65%,rgba(143,22,37,.9)); color:#fff; padding:5rem 0; border-bottom:5px solid var(--color-red); }
.unesum-hero h1 { font-size:clamp(2.2rem,5vw,4rem); font-weight:700; line-height:1.08; margin:.75rem 0 1rem; }
.unesum-hero .lead { max-width:850px; color:rgba(255,255,255,.86); }
.unesum-kicker { color:#ffd9de; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:.82rem; }
.unesum-seal { width:min(240px,70vw); max-height:280px; object-fit:contain; filter:drop-shadow(0 16px 20px rgba(0,0,0,.3)); }
.unesum-info-card { background:#fff; padding:2rem; border-radius:18px; border:1px solid #e1dacd; border-top:5px solid var(--color-green); box-shadow:0 12px 30px rgba(4,62,42,.07); }
.unesum-info-card p { color:#56605b; line-height:1.75; margin-bottom:0; }
.unesum-service-card { display:block; height:100%; background:#fff; padding:1.75rem; border:1px solid #e1dacd; border-radius:18px; color:#26342d; text-decoration:none; transition:.2s ease; }
.unesum-service-card:hover { transform:translateY(-5px); box-shadow:0 15px 35px rgba(4,62,42,.12); border-color:var(--color-green); color:#26342d; }
.unesum-service-card h3 { color:var(--color-green); font-size:1.15rem; margin:1rem 0 .75rem; }
.unesum-service-card p { color:#647068; line-height:1.6; }
.unesum-service-card strong { color:var(--color-red); font-size:.9rem; }
.service-icon { display:inline-flex; align-items:center; justify-content:center; width:50px; height:50px; background:var(--color-cream); color:var(--color-green); border-radius:14px; font-size:1.4rem; }
.unesum-links-panel { display:grid; grid-template-columns:1fr 1.25fr; gap:2rem; align-items:center; background:#fff; border-radius:20px; border:1px solid #e1dacd; padding:2rem; }
.unesum-link-grid { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; }
.unesum-link-grid a { color:var(--color-green); background:var(--color-cream); border-radius:10px; padding:.9rem 1rem; text-decoration:none; font-weight:600; }
.unesum-link-grid a:hover { background:var(--color-green); color:#fff; }
.unesum-contact,.unesum-official { background:#fff; border-radius:18px; border:1px solid #e1dacd; padding:2rem; }
.unesum-contact p { color:#5e6962; }
.unesum-contact p i { color:var(--color-red); width:24px; }
.unesum-contact a:not(.btn) { color:var(--color-green); }
.unesum-official { background:var(--color-green); color:#fff; }
.unesum-official>i { font-size:2rem; color:#ffd9de; }
.unesum-official p { color:rgba(255,255,255,.78); }
.unesum-official a { color:#fff; font-weight:700; }
@media (max-width:767.98px) { .unesum-links-panel { grid-template-columns:1fr; } .unesum-link-grid { grid-template-columns:1fr; } }

/* Editor y catálogo de productos */
.catalog-editor { background:#fff; border:1px solid #ded8cc; border-top:5px solid var(--color-green); border-radius:18px; padding:1.5rem; }
.catalog-empty { border:1px dashed #c9c2b6; border-radius:12px; padding:1.25rem; text-align:center; color:#727970; background:var(--color-cream); }
.product-editor-card { background:#faf9f6; border:1px solid #ded8cc; border-radius:14px; padding:1.25rem; margin-bottom:1rem; }
.product-number { color:var(--color-green); }
.product-preview { height:100px; border:1px dashed #c9c2b6; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#8a8f89; overflow:hidden; background:#fff; }
.product-preview img { width:100%; height:100%; object-fit:cover; }
.product-catalog-card { height:100%; background:#fff; border:1px solid #ded8cc; border-radius:16px; overflow:hidden; }
.product-catalog-card img,.product-placeholder { width:100%; height:190px; object-fit:cover; }
.product-catalog-card.product-open{cursor:pointer;transition:transform .2s,box-shadow .2s}.product-catalog-card.product-open:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(18,74,49,.14)}.product-image-button,.gallery-image-button,.main-image-button{display:block;width:100%;padding:0;border:0;background:transparent;position:relative}.product-image-button:after,.gallery-image-button:after,.main-image-button:after{content:'\f62c';font-family:'bootstrap-icons';position:absolute;right:12px;bottom:12px;width:36px;height:36px;border-radius:50%;background:rgba(0,78,52,.88);color:#fff;display:grid;place-items:center}.catalog-view-hint{font-size:.72rem;color:#08704b;margin-top:.5rem}.media-viewer[hidden]{display:none}.media-viewer{position:fixed;z-index:3000;inset:0;background:rgba(4,26,18,.88);display:grid;place-items:center;padding:1.5rem}.media-viewer-card{width:min(920px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.4)}.media-viewer-image{width:100%;max-height:65vh;object-fit:contain;background:#eee9df;border-radius:22px 22px 0 0}.media-viewer-content{padding:1.4rem 1.6rem}.media-viewer-close{position:absolute;z-index:2;right:14px;top:14px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#063f2c;box-shadow:0 4px 18px rgba(0,0,0,.25)}.media-viewer-price{color:#d21e34;font-weight:800;font-size:1.2rem}.image-location-help{min-height:58px;margin:.2rem 0 .6rem;padding:.55rem .65rem;border-radius:9px;background:#f3f7f4;color:#56655e;font-size:.72rem;line-height:1.4}
.product-placeholder { display:flex; align-items:center; justify-content:center; background:var(--color-cream); color:var(--color-green); font-size:2rem; }
.product-price { color:var(--color-red); font-size:1.15rem; font-weight:700; }

/* Página de inicio enriquecida */
.home-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#043e2a 0%,#086b48 62%,#8f1625 140%);color:#fff;padding:6.5rem 0 7rem}.home-hero:after{content:"";position:absolute;inset:auto 0 0;height:6px;background:var(--color-red)}
.home-hero-shape{position:absolute;border-radius:50%;filter:blur(2px);opacity:.16}.shape-one{width:420px;height:420px;background:#fff;right:-170px;top:-190px}.shape-two{width:280px;height:280px;border:55px solid #e4b9a0;left:-150px;bottom:-160px}
.home-kicker{display:inline-flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:#ffd7dc}.home-hero-title{font-size:clamp(3rem,6vw,5.6rem);font-weight:700;line-height:1.02;margin:1rem 0 .65rem;color:#f4d8aa;text-transform:uppercase}.home-hero-title .visual-value{color:inherit}.home-hero-subtitle{max-width:720px;margin:0 0 1.35rem;font-size:clamp(1.45rem,2.45vw,2.45rem);font-weight:650;line-height:1.13;letter-spacing:.015em;color:#f4d8aa;text-transform:uppercase}.home-hero-subtitle .visual-value{color:inherit}.home-hero p{font-size:1.16rem;line-height:1.75;max-width:700px;color:rgba(255,255,255,.82)}.hero-trust{font-size:.85rem;color:rgba(255,255,255,.72)}.hero-trust i{color:#ffc8cf;margin-right:.35rem}
.hero-collage{position:relative;min-height:430px}.hero-main-img{width:86%;height:390px;object-fit:cover;border-radius:60px 12px 60px 12px;border:8px solid rgba(255,255,255,.12);box-shadow:0 30px 55px rgba(0,0,0,.3)}.hero-mini-img{position:absolute;width:145px;height:145px;object-fit:cover;border-radius:50%;right:0;bottom:-15px;border:7px solid #fff}.hero-float-card{position:absolute;left:-35px;bottom:30px;background:#fff;color:#174732;border-radius:16px;padding:1rem 1.2rem;box-shadow:0 18px 40px rgba(0,0,0,.2);display:grid;grid-template-columns:auto 1fr;column-gap:.65rem}.hero-float-card i{grid-row:1/3;color:var(--color-red);font-size:1.5rem}.hero-float-card strong,.hero-float-card small{display:block}.hero-float-card small{color:#69746e;font-size:.72rem}
.home-stats{position:relative;margin-top:-42px;z-index:3}.home-stats .container{background:#fff;border-radius:22px;box-shadow:0 18px 50px rgba(4,62,42,.16);overflow:hidden}.home-stat{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.65rem;border-right:1px solid #e5ded2}.home-stat>i{font-size:1.8rem;color:var(--color-red)}.home-stat strong{display:block;color:var(--color-green);font:700 2rem var(--font-heading);line-height:1}.home-stat span{font-size:.82rem;color:#6a746e}
.home-section{padding:6rem 0}.bg-cream{background:#f5f0e5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem}.section-heading h2{font-size:clamp(2rem,4vw,3rem);color:var(--color-green);font-weight:700;margin:.3rem 0}.section-heading p{color:#6b746f;margin:0}.section-heading>a{white-space:nowrap;color:var(--color-red);font-weight:700;text-decoration:none}
.category-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem}.category-tile{position:relative;min-height:145px;background:#fff;border:1px solid #dfd8cc;border-radius:18px;padding:1.25rem .9rem;text-align:center;text-decoration:none;color:#244535;transition:.25s ease}.category-tile>span{display:flex;width:52px;height:52px;border-radius:14px;background:#edf5ef;color:var(--color-green);align-items:center;justify-content:center;font-size:1.35rem;margin:0 auto .8rem}.category-tile strong{display:block;font-size:.78rem}.category-tile>i{position:absolute;right:.7rem;top:.65rem;color:#c7cdc9}.category-tile:hover{transform:translateY(-7px);background:var(--color-green);color:#fff;box-shadow:0 15px 30px rgba(4,62,42,.18)}.category-tile:hover span{background:rgba(255,255,255,.15);color:#fff}
.impact-section{overflow:hidden}.impact-images{position:relative;padding:0 2rem 2rem 0}.impact-images>img{width:100%;height:480px;object-fit:cover;border-radius:24px 80px 24px 24px}.impact-badge{position:absolute;right:0;bottom:0;background:var(--color-red);color:#fff;padding:1.4rem 1.6rem;border-radius:18px;box-shadow:0 14px 30px rgba(114,17,31,.25)}.impact-badge strong,.impact-badge span{display:block}.impact-badge span{font-size:.75rem;opacity:.8}.lead-small{font-size:1.07rem;color:#606b65;line-height:1.75}.benefit-list{display:grid;gap:1.2rem;margin:1.6rem 0}.benefit-list>div{display:flex;align-items:center;gap:1rem}.benefit-list i{flex:0 0 48px;height:48px;border-radius:14px;background:#edf5ef;color:var(--color-green);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.benefit-list strong,.benefit-list span{display:block}.benefit-list span{color:#6a746e;font-size:.9rem}.benefit-list strong{color:#214c38;font-size:1rem}
.steps-line{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;position:relative}.steps-line:before{content:"";position:absolute;top:48px;left:16%;right:16%;height:2px;background:#c9d7cc}.step-item{text-align:center;position:relative}.step-item>b{position:absolute;z-index:3;background:var(--color-red);color:#fff;font-size:.78rem;line-height:30px;width:30px;height:30px;border-radius:50%;top:-6px;left:calc(50% + 30px);box-shadow:0 5px 12px rgba(143,22,37,.25)}.step-item>span{position:relative;display:flex;width:92px;height:92px;border-radius:50%;background:var(--green,#075a3b);color:#fff;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.2rem;border:8px solid #e5ede7}.step-item h3{font-size:1.1rem;color:var(--color-green)}.step-item p{color:#717a74;font-size:.9rem;max-width:260px;margin:auto}
.cities-band{background:linear-gradient(105deg,#043e2a,#08704b);color:#fff;padding:4.5rem 0}.cities-band>span,.cities-band .col-lg-4>span{text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;color:#ffc9d0}.cities-band h2{font-size:2.5rem;font-weight:700;margin:.5rem 0}.cities-band p{color:rgba(255,255,255,.7)}.city-cloud{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.city-cloud a{display:grid;grid-template-columns:auto 1fr;color:#fff;text-decoration:none;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);border-radius:13px;padding:.9rem}.city-cloud i{grid-row:1/3;margin-right:.5rem;color:#ffcbd1}.city-cloud strong{font-size:.85rem}.city-cloud small{font-size:.65rem;opacity:.65}.city-cloud a:hover{background:#fff;color:var(--color-green)}
.unesum-home-card{display:grid;grid-template-columns:170px 1fr 230px;gap:2rem;align-items:center;background:#fff;border:1px solid #ded8cc;border-radius:26px;padding:2.5rem;box-shadow:0 18px 45px rgba(4,62,42,.09)}.unesum-home-logo{text-align:center}.unesum-home-logo img{max-width:135px;max-height:170px}.unesum-home-card h2{color:var(--color-green);font-size:2rem}.unesum-home-card p{color:#66716a}.unesum-values{display:grid;gap:.7rem}.unesum-values span{background:#f4f0e6;color:var(--color-green);padding:.8rem;border-radius:10px;font-weight:600}.unesum-values i{margin-right:.5rem;color:var(--color-red)}
.home-cta{background:linear-gradient(120deg,rgba(143,22,37,.96),rgba(92,11,25,.96)),url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1600&q=70') center/cover;color:#fff;padding:5.5rem 0;margin-bottom:-3rem}.home-cta>div>span{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;color:#ffd0d5}.home-cta h2{font-size:clamp(2.2rem,5vw,4rem);font-weight:700;margin:.6rem 0}.home-cta p{color:rgba(255,255,255,.76);font-size:1.05rem}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal-delay{transition-delay:.15s}.reveal.is-visible{opacity:1;transform:none}
/* V71 · Controles accesibles del mosaico y color de portada */
.hero-mosaic-editor-toolbar{
    position:absolute;
    z-index:30;
    right:18px;
    top:18px;
    display:flex;
    align-items:center;
    gap:.55rem;
    padding:.55rem .65rem;
    border:1px solid rgba(255,255,255,.5);
    border-radius:14px;
    background:rgba(3,67,46,.9);
    color:#fff;
    box-shadow:0 12px 34px rgba(0,0,0,.26);
    backdrop-filter:blur(8px);
}
.hero-mosaic-editor-toolbar>span{font-size:.74rem;font-weight:700;white-space:nowrap}
.hero-mosaic-editor-toolbar>div{display:flex;gap:.3rem}
.hero-mosaic-toolbar-button.visual-image-pencil{position:static!important;width:32px;height:32px;border-width:2px;font-size:.72rem;font-weight:800;padding:0}
.hero-heading-color-button{
    position:relative;
    z-index:8;
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    margin:.15rem 0 .5rem;
    padding:.46rem .7rem;
    border:1px solid rgba(255,255,255,.54);
    border-radius:10px;
    background:rgba(3,67,46,.78);
    color:#fff;
    font-size:.76rem;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,0,0,.2);
}
.hero-heading-color-button:hover{background:#075a3b}
.hero-color-editor-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0 1rem}
.hero-color-editor-row input[type=color]{width:86px;height:58px;padding:.25rem;border:1px solid #dce2de;border-radius:12px;background:#fff;cursor:pointer}
.hero-color-editor-row output{font-weight:800;color:#30483b;letter-spacing:.04em}
.visual-editor-active .hero-mosaic-tile{pointer-events:none}
.visual-editor-active .hero-mosaic-tile .hero-mosaic-pencil{pointer-events:auto}
.home-stats .count-up{font-variant-numeric:tabular-nums}

@media(max-width:1199px){.category-grid{grid-template-columns:repeat(4,1fr)}.city-cloud{grid-template-columns:repeat(3,1fr)}}
@media(max-width:991px){.home-hero{padding:4.5rem 0 6rem}.hero-collage{min-height:380px}.unesum-home-card{grid-template-columns:130px 1fr}.unesum-values{grid-column:1/3;grid-template-columns:repeat(3,1fr)}.city-cloud{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.home-hero-title{font-size:3rem}.home-hero-subtitle{font-size:1.35rem;line-height:1.2;margin-bottom:1.1rem}.hero-collage{display:none}.home-stat{border-right:0;border-bottom:1px solid #e5ded2}.section-heading{display:block}.section-heading>a{display:inline-block;margin-top:1rem}.category-grid{grid-template-columns:repeat(2,1fr)}.steps-line{grid-template-columns:1fr}.steps-line:before{display:none}.city-cloud{grid-template-columns:1fr 1fr}.unesum-home-card{grid-template-columns:1fr;text-align:center}.unesum-values{grid-column:auto;grid-template-columns:1fr}.unesum-home-card .d-flex{justify-content:center}.home-section{padding:4rem 0}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.category-tile{transition:none}}
.pagination{gap:.35rem;justify-content:center}.pagination .page-link{width:auto!important;height:auto!important;min-width:40px;padding:.55rem .8rem!important;font-size:.9rem!important;line-height:1.2!important;border-radius:8px!important}.pagination svg{width:18px!important;height:18px!important}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.home-event-card{background:#fff;border:1px solid #ded8cc;border-radius:20px;overflow:hidden;box-shadow:0 12px 30px rgba(4,62,42,.08)}.home-event-card>img{width:100%;height:250px;object-fit:cover}.home-event-card h3{font-size:1.25rem;color:var(--color-green);margin:.65rem 0}.home-event-card p{color:#69736d;font-size:.9rem}.home-event-card small{display:block;color:#777;margin-bottom:.8rem}.home-event-card a{color:var(--color-red);font-weight:700;text-decoration:none}.event-date{display:inline-block;background:#edf5ef;color:var(--color-green);border-radius:20px;padding:.3rem .7rem;font-size:.75rem;font-weight:700}
@media(max-width:991px){.event-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.event-grid{grid-template-columns:1fr}}

/* Sobre el proyecto: narrativa visual */
.project-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(4,62,42,.97),rgba(7,90,59,.9) 58%,rgba(143,22,37,.88));color:#fff;padding:6rem 0 7rem;border-bottom:5px solid var(--color-red)}
.project-hero:before{content:"";position:absolute;width:430px;height:430px;border:80px solid rgba(255,255,255,.05);border-radius:50%;left:-240px;top:-180px}.project-kicker{display:inline-flex;gap:.5rem;align-items:center;color:#ffd3d9;text-transform:uppercase;letter-spacing:.09em;font-weight:700;font-size:.8rem}.project-hero h1{font-size:clamp(3rem,5.6vw,5.2rem);line-height:1.02;font-weight:700;margin:1rem 0 1.4rem}.project-hero p{font-size:1.12rem;line-height:1.75;color:rgba(255,255,255,.82);max-width:650px}.project-collage{position:relative;height:460px}.project-photo-main{width:77%;height:440px;object-fit:cover;border-radius:25px 90px 25px 25px;box-shadow:0 30px 55px rgba(0,0,0,.28)}.project-photo-side{position:absolute;right:0;top:45px;width:195px;height:235px;object-fit:cover;border:8px solid rgba(255,255,255,.92);border-radius:22px}.project-photo-label{position:absolute;right:20px;bottom:-4px;background:#fff;color:#214a38;padding:1rem 1.2rem;border-radius:16px;box-shadow:0 16px 35px rgba(0,0,0,.2);display:grid;grid-template-columns:auto 1fr;column-gap:.7rem}.project-photo-label i{grid-row:1/3;font-size:1.5rem;color:var(--color-red)}.project-photo-label span{font-size:.72rem;color:#68716c}.project-stats{margin-top:-38px;position:relative;z-index:3}.project-stats>.container{background:#fff;border-radius:22px;box-shadow:0 18px 45px rgba(4,62,42,.16);overflow:hidden}.project-stats .row>div>div{text-align:center;padding:1.55rem;border-right:1px solid #e4ddd1}.project-stats strong{display:block;font:700 2.2rem var(--font-heading);color:var(--color-green)}.project-stats span{color:#68716c;font-size:.84rem}.project-section{padding-top:6rem;padding-bottom:6rem}.project-cream{background:#f2ecdf}.project-image-frame{position:relative;padding:0 2rem 2rem 0}.project-image-frame img{width:100%;height:480px;object-fit:cover;border-radius:22px 75px 22px 22px}.project-image-frame span{position:absolute;right:0;bottom:0;background:var(--color-red);color:#fff;border-radius:16px;padding:1.2rem 1.4rem;font-weight:700;box-shadow:0 14px 30px rgba(143,22,37,.25)}.project-image-frame i{margin-right:.5rem}.project-title{font-size:clamp(2rem,4vw,3.3rem);font-weight:700;color:var(--color-green);line-height:1.12;margin:.5rem 0 1.1rem}.project-lead{font-size:1.06rem;line-height:1.75;color:#66706a}.project-benefits{display:grid;gap:1rem;margin-top:1.6rem}.project-benefits>div{display:flex;gap:1rem;align-items:center;padding:1rem;background:#fff;border:1px solid #e1dacd;border-radius:15px}.project-benefits i{display:flex;flex:0 0 48px;height:48px;align-items:center;justify-content:center;border-radius:13px;background:#edf5ef;color:var(--color-green);font-size:1.25rem}.project-benefits strong,.project-benefits span{display:block}.project-benefits span{font-size:.88rem;color:#6b746f}.project-benefits strong{font-size:1rem;color:#214a38}.project-heading{max-width:760px;margin:0 auto 3rem}.project-heading>p{color:#6c756f}.project-axis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.project-axis-grid article{position:relative;overflow:hidden;background:#fff;border-radius:20px;padding:1.6rem;border:1px solid #ddd5c7;min-height:240px;transition:.25s}.project-axis-grid article:hover{transform:translateY(-7px);box-shadow:0 18px 35px rgba(4,62,42,.12)}.project-axis-grid article>span{position:absolute;right:1rem;top:.6rem;font:700 3rem var(--font-heading);color:#edf0eb}.project-axis-grid article>i{display:flex;width:55px;height:55px;align-items:center;justify-content:center;border-radius:15px;background:var(--color-green);color:#fff;font-size:1.4rem}.project-axis-grid h3{color:var(--color-green);font-size:1.15rem;margin:1.2rem 0 .7rem}.project-axis-grid p{color:#68726c;font-size:.9rem}.project-journey{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.project-journey>div{position:relative;text-align:center;background:#fff;border:1px solid #ded7ca;border-radius:20px;padding:2rem 1rem}.project-journey b{position:absolute;top:-15px;left:calc(50% - 15px);width:30px;height:30px;border-radius:50%;background:var(--color-red);color:#fff;line-height:30px}.project-journey i{display:block;color:var(--color-green);font-size:2.2rem}.project-journey h3{font-size:1rem;color:var(--color-green);margin:1rem 0 .5rem}.project-journey p{font-size:.82rem;color:#6c756f;margin:0}.project-audience{background:linear-gradient(115deg,#043e2a,#08704b 70%,#8f1625);color:#fff;padding:6rem 0}.project-audience h2{font-size:clamp(2.2rem,4vw,3.5rem);font-weight:700}.project-audience p{color:rgba(255,255,255,.72);line-height:1.7}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.audience-grid>div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:1.4rem}.audience-grid i{display:block;font-size:1.5rem;color:#ffd3d9;margin-bottom:.75rem}.audience-grid strong,.audience-grid span{display:block}.audience-grid span{font-size:.82rem;color:rgba(255,255,255,.68);margin-top:.3rem}.project-note{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;background:#fff;border:1px solid #ded7ca;border-left:5px solid var(--color-red);border-radius:18px;padding:1.5rem}.project-note>i{font-size:2rem;color:var(--color-red)}.project-note p{margin:.2rem 0 0;color:#68716c;font-size:.85rem}.project-note>a{color:var(--color-green);font-weight:700;text-decoration:none;white-space:nowrap}

/* UNESUM: página institucional visual */
.uni-hero{overflow:hidden;background:linear-gradient(120deg,#043e2a 0%,#08704b 58%,#8f1625 130%);color:#fff;padding:6rem 0 7rem;border-bottom:5px solid var(--color-red)}.uni-hero h1{font-size:clamp(3rem,5.5vw,5.2rem);font-weight:700;line-height:1.03;margin:.9rem 0 1.25rem}.uni-hero p{font-size:1.12rem;line-height:1.7;color:rgba(255,255,255,.8)}.uni-collage{height:470px;position:relative}.uni-main-photo{width:73%;height:410px;object-fit:cover;border-radius:30px 90px 30px 30px;border:7px solid rgba(255,255,255,.1);box-shadow:0 25px 50px rgba(0,0,0,.25)}.uni-second-photo{position:absolute;right:0;bottom:0;width:220px;height:250px;object-fit:cover;border:8px solid #fff;border-radius:25px}.uni-logo-card{position:absolute;right:25px;top:-25px;background:rgba(255,255,255,.95);border-radius:20px;padding:.8rem 1.1rem;box-shadow:0 16px 35px rgba(0,0,0,.2);text-align:center;color:var(--color-green)}.uni-logo-card img{display:block;width:85px;height:105px;object-fit:contain;margin:auto}.uni-logo-card span{font-size:.7rem;font-weight:700}.uni-intro{position:relative;margin-top:-45px;z-index:3}.uni-intro>.container{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 20px 50px rgba(4,62,42,.16)}.uni-intro h2,.uni-heading h2{font-size:clamp(2rem,4vw,3.1rem);color:var(--color-green);font-weight:700}.uni-intro p{color:#626d66;line-height:1.75}.uni-quick-links{display:flex;gap:.7rem;flex-wrap:wrap}.uni-quick-links a{padding:.65rem .9rem;background:#f3eee3;border-radius:9px;color:var(--color-green);font-weight:600;text-decoration:none;font-size:.8rem}.uni-fact-card{height:100%;background:linear-gradient(135deg,var(--color-green),#043e2a);color:#fff;border-radius:18px;padding:1.6rem;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:1rem}.uni-fact-card strong{font:700 2.5rem var(--font-heading);color:#ffd2d8}.uni-fact-card span{font-size:.85rem;color:rgba(255,255,255,.74)}.uni-fact-card hr{grid-column:1/3;width:100%;border-color:rgba(255,255,255,.25)}.uni-section{padding-top:5.5rem;padding-bottom:5.5rem}.uni-mission{height:100%;padding:2.3rem;border-radius:22px;background:#fff;border:1px solid #ddd6ca;border-top:6px solid var(--color-green);box-shadow:0 13px 35px rgba(4,62,42,.08)}.uni-mission>span{color:var(--color-red);text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.75rem}.uni-mission h2{color:var(--color-green);font-size:1.65rem;margin:.75rem 0}.uni-mission p{color:#626d66;line-height:1.7}.uni-vision{background:#f1eadf;border-top-color:var(--color-red)}.uni-gallery-section{background:#f1ecdf;padding:6rem 0}.uni-heading{max-width:780px;margin:0 auto 3rem}.uni-heading p{color:#68726c}.uni-gallery{display:grid;grid-template-columns:1.3fr .7fr .7fr 1.3fr;grid-template-rows:380px;gap:1rem}.uni-gallery figure{position:relative;overflow:hidden;border-radius:22px;margin:0}.uni-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.uni-gallery figure:hover img{transform:scale(1.06)}.uni-gallery figcaption{position:absolute;inset:auto 0 0;padding:2.6rem 1.2rem 1.2rem;background:linear-gradient(transparent,rgba(0,0,0,.82));color:#fff}.uni-gallery strong,.uni-gallery span{display:block}.uni-gallery span{font-size:.75rem;color:rgba(255,255,255,.72)}.uni-function-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.uni-function-grid>a{position:relative;background:#fff;border:1px solid #ded7ca;border-radius:22px;padding:2rem;color:#26382e;text-decoration:none;transition:.25s;overflow:hidden}.uni-function-grid>a:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(4,62,42,.14)}.uni-function-grid>a>i{display:flex;width:58px;height:58px;align-items:center;justify-content:center;background:var(--color-green);color:#fff;border-radius:16px;font-size:1.5rem}.uni-function-grid>a>span{position:absolute;right:1rem;top:.4rem;font:700 4.5rem var(--font-heading);color:#eff1ed}.uni-function-grid h3{position:relative;color:var(--color-green);font-size:1.25rem;margin:1.3rem 0 .7rem}.uni-function-grid p{color:#68726c;font-size:.9rem;line-height:1.6}.uni-function-grid b{color:var(--color-red);font-size:.85rem}.uni-offer{background:linear-gradient(115deg,#043e2a,#08704b 68%,#8f1625);color:#fff;padding:5.5rem 0}.uni-offer .col-lg-5>img{width:100%;height:410px;object-fit:cover;border-radius:24px 75px 24px 24px;box-shadow:0 25px 50px rgba(0,0,0,.25)}.uni-offer .col-lg-7>span{color:#ffcbd2;text-transform:uppercase;font-size:.76rem;letter-spacing:.09em;font-weight:700}.uni-offer h2{font-size:clamp(2.2rem,4vw,3.4rem);font-weight:700}.uni-offer p{color:rgba(255,255,255,.72)}.offer-modes{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.offer-modes>div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:13px;padding:1rem}.offer-modes i{color:#ffcbd2;margin-right:.5rem}.campus-list{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.5rem}.campus-list>div{background:#fff;border:1px solid #ded7ca;border-radius:12px;padding:.9rem;color:var(--color-green);font-weight:600}.campus-list i{color:var(--color-red);margin-right:.45rem}.uni-access{background:#fff;border-radius:22px;padding:2rem;border:1px solid #ded7ca}.uni-access>span{color:var(--color-red);text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}.uni-access h2{color:var(--color-green);margin:.5rem 0 1.2rem}.uni-access>a{display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;padding:.9rem;border-bottom:1px solid #eee8dc;text-decoration:none;color:var(--color-green)}.uni-access>a>i{grid-row:1/3;font-size:1.4rem;color:var(--color-red)}.uni-access b,.uni-access em{display:block}.uni-access em{font-size:.75rem;color:#717a74;font-style:normal}.uni-contact-band{padding:5rem 0;background:#ece5d8}.uni-contact-band>.container{display:grid;grid-template-columns:1.4fr .8fr;gap:1.5rem}.uni-contact-band>.container>div{background:#fff;border-radius:20px;padding:2rem}.uni-contact-band>.container>div:last-child{background:var(--color-green);color:#fff}.uni-contact-band span{color:var(--color-red);text-transform:uppercase;font-size:.74rem;font-weight:700}.uni-contact-band h2{color:var(--color-green);font-size:2rem}.uni-contact-band p{color:#68716c}.uni-contact-band p i{color:var(--color-red);margin-right:.5rem}.uni-contact-band div:last-child p{color:rgba(255,255,255,.72)}.uni-contact-band div:last-child>i{font-size:2rem;color:#ffcbd2}
@media(max-width:991px){.project-axis-grid,.project-journey{grid-template-columns:1fr 1fr}.uni-gallery{grid-template-columns:1fr 1fr;grid-template-rows:320px 320px}.uni-function-grid{grid-template-columns:1fr}.uni-contact-band>.container{grid-template-columns:1fr}.uni-collage{margin-top:2rem}.project-collage{margin-top:2rem}}
@media(max-width:767px){.project-collage,.uni-collage{display:none}.project-hero,.uni-hero{padding:4.5rem 0}.project-stats{margin-top:0}.project-stats .row>div>div{border-right:0;border-bottom:1px solid #e4ddd1}.project-axis-grid,.project-journey,.audience-grid,.uni-gallery,.campus-list{grid-template-columns:1fr}.uni-gallery{grid-template-rows:repeat(4,310px)}.project-note{grid-template-columns:auto 1fr}.project-note>a{grid-column:2}.project-section,.uni-section{padding-top:4rem;padding-bottom:4rem}}

/* Movimiento institucional y carrusel */
.uni-main-photo{animation:uniFloat 6s ease-in-out infinite}.uni-second-photo{animation:uniFloat 6s ease-in-out 1.2s infinite}.uni-logo-card{animation:uniFloatSoft 5s ease-in-out .5s infinite}.project-photo-main,.guide-visual>img{animation:uniKenBurns 12s ease-in-out infinite alternate}.project-photo-side{animation:uniFloat 5.5s ease-in-out .7s infinite}
@keyframes uniFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(.7deg)}}@keyframes uniFloatSoft{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}@keyframes uniKenBurns{0%{transform:scale(1)}100%{transform:scale(1.055)}}
.uni-slider{position:relative;overflow:hidden;padding:0 0 3.8rem}.uni-slider-track{display:flex;gap:1rem;transition:transform .75s cubic-bezier(.22,.61,.36,1);will-change:transform}.uni-slider figure{position:relative;overflow:hidden;flex:0 0 calc((100% - 2rem)/3);height:420px;border-radius:24px;margin:0;background:#ddd}.uni-slider figure:nth-child(even){margin-top:28px;height:392px}.uni-slider img{width:100%;height:100%;object-fit:cover;transition:transform 5s ease}.uni-slider figure:hover img{transform:scale(1.1)}.uni-slider figcaption{position:absolute;inset:auto 0 0;padding:4rem 1.35rem 1.35rem;background:linear-gradient(transparent,rgba(0,0,0,.88));color:#fff}.uni-slider strong,.uni-slider span{display:block}.uni-slider span{font-size:.78rem;color:rgba(255,255,255,.74)}.uni-slider-control{position:absolute;top:45%;z-index:3;width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:var(--color-green);box-shadow:0 10px 25px rgba(0,0,0,.18);transition:.2s}.uni-slider-control:hover{background:var(--color-red);color:#fff;transform:scale(1.08)}.uni-slider-control.prev{left:14px}.uni-slider-control.next{right:14px}.uni-slider-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:.5rem}.uni-slider-dots button{width:9px;height:9px;border:0;border-radius:20px;padding:0;background:#a9b4ac;transition:.25s}.uni-slider-dots button.active{width:30px;background:var(--color-red)}
.uni-contact-rows{display:grid;gap:.7rem;margin-top:1rem}.uni-contact-rows>div{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:.7rem;background:#f7f3ea;border-radius:12px;padding:.75rem}.uni-contact-rows>div>i{display:flex;width:46px;height:46px;align-items:center;justify-content:center;border-radius:12px;background:#fff;color:var(--color-red);font-size:1.15rem}.uni-contact-rows p{margin:0!important}.uni-contact-rows strong,.uni-contact-rows small{display:block}.uni-contact-rows strong{color:#174732}.uni-contact-rows small{color:#69736d;font-size:.78rem;margin-top:.15rem}

/* Guía visual de participación */
.guide-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#043e2a,#08704b 62%,#8f1625 135%);color:#fff;padding:6.5rem 0 7.5rem;border-bottom:5px solid var(--color-red)}.guide-orb{position:absolute;border-radius:50%;opacity:.08}.orb-one{width:500px;height:500px;border:90px solid #fff;right:-260px;top:-220px}.orb-two{width:260px;height:260px;background:#ffd8dd;left:-150px;bottom:-150px}.guide-kicker{display:inline-flex;align-items:center;gap:.5rem;color:#ffd1d7;font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.guide-hero h1{font-size:clamp(3rem,5.7vw,5.4rem);font-weight:700;line-height:1.02;margin:1rem 0 1.3rem}.guide-hero p{font-size:1.1rem;line-height:1.75;color:rgba(255,255,255,.78);margin-bottom:2rem}.guide-visual{position:relative;height:450px;overflow:visible}.guide-visual>img{width:85%;height:430px;object-fit:cover;border-radius:70px 22px 70px 22px;border:8px solid rgba(255,255,255,.12);box-shadow:0 28px 55px rgba(0,0,0,.28)}.guide-float{position:absolute;display:flex;align-items:center;gap:.75rem;background:#fff;color:#164631;padding:.9rem 1.1rem;border-radius:15px;box-shadow:0 15px 32px rgba(0,0,0,.22);animation:uniFloat 5s ease-in-out infinite}.guide-float i{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:12px;background:#edf5ef;color:var(--color-green);font-size:1.2rem}.guide-float strong,.guide-float span{display:block}.guide-float span{font-size:.7rem;color:#6c756f}.guide-float strong{font-size:.86rem;color:#164631}.float-a{right:0;top:45px}.float-b{left:-30px;bottom:15px;animation-delay:1s}.guide-summary{position:relative;margin-top:-42px;z-index:4}.guide-summary>.container{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-radius:22px;box-shadow:0 18px 45px rgba(4,62,42,.16);overflow:hidden}.guide-summary>.container>div{display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;align-items:center;padding:1.5rem;border-right:1px solid #e1dbcf}.guide-summary i{grid-row:1/3;color:var(--color-red);font-size:1.7rem}.guide-summary strong,.guide-summary span{display:block}.guide-summary strong{color:var(--color-green)}.guide-summary span{font-size:.76rem;color:#707972}.guide-section{padding-top:7rem;padding-bottom:7rem}.guide-heading{max-width:750px;margin:0 auto 3.5rem}.guide-heading h2{font-size:clamp(2.2rem,4.5vw,3.7rem);color:var(--color-green);font-weight:700}.guide-heading p{color:#69736d}.guide-roadmap{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;position:relative}.guide-roadmap:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:linear-gradient(var(--color-green),var(--color-red));opacity:.15}.guide-roadmap article{position:relative;display:grid;grid-template-columns:auto 1fr;gap:1rem;background:#fff;border:1px solid #ded7ca;border-radius:20px;padding:1.5rem;box-shadow:0 10px 26px rgba(4,62,42,.06);opacity:0;transform:translateY(24px);transition:.6s ease}.guide-roadmap article.guide-visible{opacity:1;transform:none}.guide-roadmap article:hover{border-color:var(--color-green);transform:translateY(-5px);box-shadow:0 18px 38px rgba(4,62,42,.13)}.guide-roadmap article>b{position:absolute;right:1rem;top:.5rem;font:700 3rem var(--font-heading);color:#edf0eb}.guide-step-icon{display:flex;width:60px;height:60px;align-items:center;justify-content:center;border-radius:17px;background:var(--color-green);color:#fff;font-size:1.5rem}.guide-roadmap article:nth-child(4n+2) .guide-step-icon,.guide-roadmap article:nth-child(4n+3) .guide-step-icon{background:var(--color-red)}.guide-roadmap article>div:last-child>span{color:var(--color-red);font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.guide-roadmap h3{position:relative;color:var(--color-green);font-size:1.13rem;margin:.25rem 0 .45rem}.guide-roadmap p{color:#69736d;font-size:.85rem;margin:0;line-height:1.55}.guide-tips{background:#f0eadf;padding:6rem 0}.guide-tips img{width:100%;height:440px;object-fit:cover;border-radius:24px 75px 24px 24px;box-shadow:0 20px 45px rgba(4,62,42,.14);animation:uniFloatSoft 7s ease-in-out infinite}.guide-tips .col-lg-7>span{color:var(--color-red);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.guide-tips h2{font-size:clamp(2.2rem,4vw,3.4rem);font-weight:700;color:var(--color-green)}.guide-checks{display:grid;gap:.9rem;margin-top:1.5rem}.guide-checks>div{display:flex;gap:.9rem;align-items:center;background:#fff;border-radius:14px;padding:1rem;opacity:0;transform:translateX(25px);transition:.6s ease}.guide-checks>div.guide-visible{opacity:1;transform:none}.guide-checks i{display:flex;flex:0 0 38px;height:38px;border-radius:50%;align-items:center;justify-content:center;background:#e7f2e9;color:var(--color-green);font-weight:700}.guide-checks p{margin:0}.guide-checks strong,.guide-checks small{display:block}.guide-checks small{color:#6c756f;margin-top:.2rem}.guide-cta{background:linear-gradient(115deg,rgba(143,22,37,.96),rgba(80,9,20,.97)),url('../images/project/productos.jpg') center/cover;color:#fff;padding:6rem 0;margin-bottom:-3rem}.guide-cta>div>i{font-size:2rem;color:#ffd2d8}.guide-cta h2{font-size:clamp(2.4rem,5vw,4.2rem);font-weight:700}.guide-cta p{color:rgba(255,255,255,.75)}.guide-reveal{opacity:0;transform:translateY(25px);transition:.75s ease}.guide-reveal.guide-visible{opacity:1;transform:none}
@media(max-width:1099px){.uni-slider figure{flex-basis:calc((100% - 1rem)/2)}}
@media(max-width:767px){.uni-slider figure{flex-basis:100%;height:390px}.uni-slider figure:nth-child(even){margin-top:0;height:390px}.guide-visual{display:none}.guide-summary{margin-top:0}.guide-summary>.container{grid-template-columns:1fr}.guide-summary>.container>div{border-right:0;border-bottom:1px solid #e1dbcf}.guide-roadmap{grid-template-columns:1fr}.guide-roadmap:before{display:none}.guide-tips img{height:330px}.guide-hero{padding:4.5rem 0}.guide-section{padding-top:5rem;padding-bottom:5rem}}
@media(prefers-reduced-motion:reduce){.uni-main-photo,.uni-second-photo,.uni-logo-card,.project-photo-main,.project-photo-side,.guide-visual>img,.guide-float,.guide-tips img{animation:none}.uni-slider-track{transition:none}}

/* Editor visual administrativo */
.visual-admin-header{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.25rem}.visual-admin-header h1{font-size:2.35rem;color:var(--color-green);font-weight:700;margin:.2rem 0}.visual-admin-header p{margin:0;color:#68716c}.visual-devices{display:flex;align-items:center}.visual-devices>button{width:44px;height:42px;border:1px solid #d8dcd9;background:#fff;color:#68716c;font-size:1.15rem}.visual-devices>button:first-child{border-radius:10px 0 0 10px}.visual-devices>button:nth-child(3){border-radius:0 10px 10px 0}.visual-devices>button.active{background:var(--color-green);border-color:var(--color-green);color:#fff}.visual-help{display:flex;align-items:center;gap:.8rem;background:#edf5ef;border:1px solid #cfe1d4;border-radius:13px;padding:.85rem 1rem;margin-bottom:1rem;color:#315542}.visual-help>i{font-size:1.25rem;color:var(--color-green)}.visual-help>span:nth-child(2){flex:1}.visual-status{font-size:.75rem;white-space:nowrap;color:#338455}.visual-status i{font-size:.55rem;margin-right:.3rem;animation:statusPulse 1.8s infinite}@keyframes statusPulse{50%{opacity:.3}}.visual-stage{background:#dfe4e1;border-radius:18px;padding:18px;min-height:780px;overflow:auto}.visual-browser{width:100%;max-width:100%;margin:0 auto;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 18px 45px rgba(20,35,27,.2);transition:max-width .45s ease}.visual-browser-bar{height:42px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#f3f4f3;border-bottom:1px solid #ddd}.visual-browser-bar>i{width:10px;height:10px;border-radius:50%;background:#ef5964}.visual-browser-bar>i:nth-child(2){background:#e7b43f}.visual-browser-bar>i:nth-child(3){background:#4dbd70}.visual-browser-bar>span{margin-left:8px;flex:1;max-width:520px;background:#fff;border:1px solid #ddd;border-radius:7px;color:#89908b;font-size:.7rem;padding:.35rem .7rem}.visual-browser iframe{display:block;width:100%;height:900px;border:0;background:#fff}.visual-browser.is-mobile iframe{height:780px}
.visual-editor-active .visual-editable{position:relative;display:inline;border-radius:7px;transition:.2s}.visual-editor-active .visual-editable-block{display:inline-block}.visual-pencil{position:absolute;z-index:20;right:-18px;top:-18px;width:34px;height:34px;border:3px solid #fff;border-radius:50%;background:#d21e34;color:#fff;box-shadow:0 7px 18px rgba(0,0,0,.28);font-size:.8rem;opacity:.92;transition:.2s;animation:pencilAttention 2.6s ease-in-out infinite}.visual-pencil:hover{opacity:1;transform:scale(1.15);background:#075a3b}.visual-editor-active .visual-editable:hover{outline:2px dashed #ffd15c;outline-offset:6px;background:rgba(255,209,92,.1)}.visual-image-editable{position:relative}.visual-image-pencil{position:absolute;z-index:25;right:14px;top:14px;width:42px;height:42px;border:3px solid #fff;border-radius:50%;background:#d21e34;color:#fff;box-shadow:0 7px 18px rgba(0,0,0,.28)}.visual-image-pencil:hover{background:#075a3b;transform:scale(1.08)}@keyframes pencilAttention{0%,75%,100%{box-shadow:0 7px 18px rgba(0,0,0,.28);transform:scale(1)}85%{box-shadow:0 0 0 8px rgba(255,255,255,.18);transform:scale(1.1)}}
.inline-editor-backdrop{position:fixed;z-index:9999;inset:0;background:rgba(2,24,16,.64);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.inline-editor-backdrop[hidden]{display:none}.inline-editor-card{width:min(540px,100%);background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 28px 80px rgba(0,0,0,.38);animation:editorIn .22s ease}.inline-editor-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:1.2rem}.inline-editor-head small{color:var(--color-red);font-weight:700;letter-spacing:.08em}.inline-editor-head h3{color:var(--color-green);margin:.25rem 0 0}.inline-editor-head>button{width:38px;height:38px;border:0;border-radius:50%;background:#f0eee9;color:#45524b}.inline-editor-card>label{display:block;font-weight:600;color:#30483b;margin-bottom:.4rem}.inline-editor-card textarea{width:100%;border:2px solid #dce2de;border-radius:12px;padding:.9rem;resize:vertical;outline:none}.inline-editor-card textarea:focus{border-color:var(--color-green);box-shadow:0 0 0 4px rgba(7,90,59,.1)}.inline-editor-hint{font-size:.76rem;color:#6c756f;margin:.55rem 0 1.2rem}.inline-editor-hint i{color:var(--color-green)}.inline-editor-actions{display:flex;justify-content:flex-end;gap:.7rem}.inline-saved{display:none;margin-top:1rem;padding:.7rem;border-radius:9px;background:#e8f5eb;color:#19713d;text-align:center;font-weight:600}.inline-saved.show{display:block}@keyframes editorIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}body.inline-editing{overflow:hidden}
@media(max-width:991px){.visual-admin-header{display:block}.visual-devices{margin-top:1rem}.visual-help{align-items:start}.visual-status{display:none}.visual-stage{padding:8px}}

/* Autoridades UNESUM */
.uni-authorities{padding:6rem 0;background:linear-gradient(180deg,#f3eee4,#fff)}.uni-authorities-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem}.uni-authorities-heading h2{font-size:clamp(2.3rem,4.5vw,3.8rem);color:var(--color-green);font-weight:700;margin:.4rem 0}.uni-authorities-heading p{color:#68726c;max-width:700px;margin:0}.uni-authorities-heading>a{white-space:nowrap;color:var(--color-green);font-weight:700;text-decoration:none;background:#fff;border:1px solid #d9d2c6;border-radius:11px;padding:.8rem 1rem}.authority-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.authority-card{display:grid;grid-template-columns:43% 57%;overflow:hidden;min-height:510px;background:#fff;border:1px solid #ded7ca;border-radius:26px;box-shadow:0 18px 45px rgba(4,62,42,.1);transition:.35s ease}.authority-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(4,62,42,.16)}.authority-photo{position:relative;overflow:hidden;background:#e7e2d8}.authority-photo:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(3,37,25,.8))}.authority-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 7s ease;animation:authorityBreath 9s ease-in-out infinite alternate}.authority-card:hover .authority-photo img{transform:scale(1.07)}.authority-photo>span{position:absolute;z-index:2;left:1rem;right:1rem;bottom:1rem;color:#fff;font-weight:700;font-size:.8rem}.authority-photo>span i{margin-right:.35rem;color:#ffd2d8}.authority-content{padding:2rem;display:flex;flex-direction:column;justify-content:center}.authority-content>span{color:var(--color-red);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.authority-content h3{color:var(--color-green);font-size:1.45rem;line-height:1.2;margin:.7rem 0 1rem}.authority-content p{color:#657069;font-size:.88rem;line-height:1.7}.authority-focus{display:flex;gap:.5rem;flex-wrap:wrap;margin:.7rem 0 1.3rem}.authority-focus span{background:#f2eee5;color:#315541;border-radius:20px;padding:.4rem .65rem;font-size:.68rem;font-weight:600}.authority-focus i{color:var(--color-red);margin-right:.25rem}.authority-content>a{color:var(--color-red);font-weight:700;text-decoration:none;font-size:.83rem}.authority-source{text-align:center;color:#747c77;font-size:.75rem;margin:1.5rem 0 0}.authority-source i{color:var(--color-green)}@keyframes authorityBreath{from{transform:scale(1)}to{transform:scale(1.035)}}
@media(max-width:1199px){.authority-card{grid-template-columns:1fr;min-height:auto}.authority-photo{height:390px}.authority-content{min-height:340px}}
@media(max-width:767px){.uni-authorities-heading{display:block}.uni-authorities-heading>a{display:inline-block;margin-top:1rem}.authority-grid{grid-template-columns:1fr}.authority-photo{height:420px}.authority-content{min-height:auto}.uni-authorities{padding:4.5rem 0}}
@media(prefers-reduced-motion:reduce){.authority-photo img{animation:none}}

/* Términos, privacidad y resumen de registro */
.terms-summary-link{display:block;border:0;background:transparent;color:var(--color-green);font-size:.76rem;padding:.4rem 0 0;text-decoration:underline}.terms-modal{border:0;border-radius:20px;overflow:hidden}.terms-modal .modal-header{background:linear-gradient(110deg,var(--color-green),var(--color-navy-dark));color:#fff;border-bottom:4px solid var(--color-red);padding:1.3rem 1.5rem}.terms-modal .modal-header span{font-size:.68rem;color:#ffd0d6;letter-spacing:.08em}.terms-modal .btn-close{filter:invert(1)}.terms-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.terms-summary-grid>div{border:1px solid #e0d9cd;border-radius:15px;padding:1rem}.terms-summary-grid i{display:flex;width:42px;height:42px;align-items:center;justify-content:center;background:#edf5ef;color:var(--color-green);border-radius:11px;font-size:1.15rem}.terms-summary-grid h3{font-size:.95rem;color:var(--color-green);margin:.8rem 0 .4rem}.terms-summary-grid p{font-size:.78rem;color:#68716c;margin:0;line-height:1.55}.terms-alert{display:flex;gap:.8rem;background:#fff2f3;border-left:4px solid var(--color-red);padding:1rem;margin-top:1rem;border-radius:10px}.terms-alert i{color:var(--color-red);font-size:1.2rem}.terms-alert p{font-size:.8rem;margin:0;color:#5f6260}
.legal-hero{background:linear-gradient(120deg,#043e2a,#08704b 67%,#8f1625);color:#fff;padding:6rem 0;border-bottom:5px solid var(--color-red)}.legal-hero>div>span{display:inline-flex;align-items:center;gap:.5rem;color:#ffd1d7;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:700}.legal-hero h1{font-size:clamp(3rem,5.5vw,5rem);font-weight:700;line-height:1.05;margin:1rem 0}.legal-hero p{max-width:750px;color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.7}.legal-hero>div>div{font-size:.78rem;color:rgba(255,255,255,.65)}.legal-layout{display:grid;grid-template-columns:260px 1fr;gap:3rem;padding-top:5rem;padding-bottom:6rem;align-items:start}.legal-index{position:sticky;top:100px;background:#fff;border:1px solid #ddd6ca;border-radius:16px;padding:1rem;display:grid;box-shadow:0 12px 30px rgba(4,62,42,.07)}.legal-index>strong{color:var(--color-green);padding:.45rem .65rem .8rem;border-bottom:1px solid #eee7dc;margin-bottom:.4rem}.legal-index>a{color:#606b65;text-decoration:none;font-size:.76rem;padding:.48rem .65rem;border-radius:7px}.legal-index>a:hover{background:#edf5ef;color:var(--color-green)}.legal-content{max-width:900px}.legal-notice{display:flex;gap:.9rem;background:#edf5ef;border:1px solid #cee0d3;border-radius:14px;padding:1.2rem;margin-bottom:2rem}.legal-notice i{color:var(--color-green);font-size:1.3rem}.legal-notice p{margin:0;color:#496253;font-size:.88rem;line-height:1.6}.legal-content>section{position:relative;background:#fff;border:1px solid #e1dacd;border-radius:18px;padding:2rem;margin-bottom:1.2rem;scroll-margin-top:100px}.legal-content>section>span{position:absolute;right:1.2rem;top:.6rem;font:700 3.5rem var(--font-heading);color:#f0f1ed}.legal-content h2{position:relative;color:var(--color-green);font-size:1.35rem;margin-bottom:1rem}.legal-content p,.legal-content li{color:#606b65;font-size:.89rem;line-height:1.75}.legal-content li{margin-bottom:.35rem}.legal-contact{display:inline-flex;gap:.8rem;align-items:center;text-decoration:none;background:#f3eee4;border-radius:13px;padding:.9rem 1rem;color:var(--color-green)}.legal-contact>i{font-size:1.35rem;color:var(--color-red)}.legal-contact strong,.legal-contact small{display:block}.legal-contact small{font-size:.68rem;color:#747b77}.legal-review{display:flex;gap:1rem;background:#fff4de;border:1px solid #ecd5a8;border-radius:15px;padding:1.2rem}.legal-review>i{font-size:1.4rem;color:#9b6812}.legal-review strong{color:#6e4b10}.legal-review p{font-size:.8rem;margin:.25rem 0 0;color:#77684f}
@media(max-width:991px){.legal-layout{grid-template-columns:1fr}.legal-index{position:static;grid-template-columns:1fr 1fr}.legal-index>strong{grid-column:1/3}.legal-hero{padding:4.5rem 0}}
@media(max-width:600px){.terms-summary-grid,.legal-index{grid-template-columns:1fr}.legal-index>strong{grid-column:auto}.legal-content>section{padding:1.4rem}.legal-content>section>span{font-size:2.4rem}.legal-layout{gap:1.5rem;padding-top:3rem}}

/* Mensajería interna y alertas */
.nav-alert-badge,.admin-nav-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:20px;background:#d21e34;color:#fff;font-size:.65rem;font-weight:800}.nav-alert-badge{position:absolute;right:-5px;top:-4px;border:2px solid #075a3b}.admin-nav-badge{float:right;margin-left:auto}.inbox-stat{display:flex;align-items:center;justify-content:space-between;text-decoration:none;padding:1rem 1.4rem}.inbox-stat span{color:var(--color-red);font-weight:700}.entrepreneur-tip{height:100%;display:flex;align-items:center;gap:1rem;background:linear-gradient(110deg,#075a3b,#0a704d);color:#fff;padding:1.4rem;border-radius:18px}.entrepreneur-tip>i{font-size:2rem;color:#ffd1d7}.entrepreneur-tip>div{flex:1}.entrepreneur-tip p{margin:.3rem 0 0;font-size:.78rem;color:rgba(255,255,255,.75)}.recent-views-card{background:#fff;border:1px solid #ded8cc;border-radius:18px;padding:1.25rem;height:100%}.recent-views-card h2{font-size:1rem;color:var(--color-green)}.recent-views-card>div{display:flex;justify-content:space-between;border-top:1px solid #eee8dc;padding:.55rem 0;font-size:.75rem}.recent-views-card small{color:#7a817d}.business-inquiry-box{text-align:center;background:#edf5ef;border-radius:14px;padding:1rem}.business-inquiry-box>i{font-size:1.6rem;color:var(--color-green)}.business-inquiry-box strong,.business-inquiry-box p{display:block}.business-inquiry-box p{font-size:.72rem;color:#657069}.inquiry-modal .modal-header{background:#075a3b;color:#fff;border-bottom:4px solid #d21e34}.inquiry-modal .modal-header small{color:#ffd1d7}.inbox-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:2rem}.conversation-list{background:#fff;border:1px solid #ddd6ca;border-radius:18px;overflow:hidden}.conversation-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;text-decoration:none;color:#25362d;border-bottom:1px solid #eee8de}.conversation-row:hover{background:#f4f8f5}.conversation-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#075a3b;color:#fff;font-weight:800}.conversation-copy{display:grid;flex:1}.conversation-copy small{color:#176345}.conversation-copy em{font-style:normal;font-size:.75rem;color:#717975}.conversation-meta{text-align:right;font-size:.68rem;color:#777}.conversation-meta b{display:block;margin:.3rem 0 0 auto;width:23px;height:23px;border-radius:50%;background:#d21e34;color:#fff;line-height:23px;text-align:center}.inbox-empty{text-align:center;padding:4rem}.inbox-empty i{font-size:3rem;color:#9aa59e}.chat-shell{background:#fff;border:1px solid #ddd6ca;border-radius:20px;overflow:hidden}.chat-shell>header{display:flex;justify-content:space-between;align-items:center;background:#f6f2e9;padding:1.2rem 1.5rem;border-bottom:1px solid #ded7ca}.chat-shell header span,.chat-shell header p{font-size:.72rem;color:#707973;margin:0}.chat-shell header h1{color:#075a3b;font-size:1.35rem;margin:.2rem 0}.chat-messages{padding:1.5rem;min-height:360px;background:#fbfaf7;display:flex;flex-direction:column;gap:.8rem}.chat-bubble{max-width:72%;padding:.8rem 1rem;border-radius:16px;background:#fff;border:1px solid #e0d9cd}.chat-bubble.mine{align-self:flex-end;background:#e6f3e9;border-color:#c5dfcc}.chat-bubble p{margin:.25rem 0;white-space:pre-wrap}.chat-bubble small{font-size:.62rem;color:#778078}.chat-compose{display:flex;gap:.8rem;padding:1rem;border-top:1px solid #e2dbcf}.chat-compose textarea{flex:1;border:1px solid #d8d1c4;border-radius:12px;padding:.8rem;resize:vertical}.chat-compose button{align-self:end}

/* Campos de contraseña */
.password-field{position:relative}.password-field .form-control{padding-right:3rem}.password-field>button{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);width:38px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--color-green);display:grid;place-items:center}.password-field>button:hover{background:#edf5ef}

/* Vitrina destacada y transición hacia la iniciativa */
.featured-section{padding-bottom:3rem}.featured-heading{padding:1.5rem 1.75rem;border-left:5px solid var(--color-red);border-radius:0 18px 18px 0;background:linear-gradient(90deg,#f5f0e5 0%,rgba(245,240,229,.18) 85%)}.impact-intro-section{padding:1.5rem 0 0}.impact-intro{max-width:880px;margin:0 auto}.impact-intro h2{font-size:clamp(2rem,4vw,3.25rem);color:var(--color-green);font-weight:750;margin:.45rem 0 .8rem}.impact-intro p{color:#67736c;font-size:1.05rem;max-width:760px;margin:auto}

/* Imágenes reales y revisión administrativa */
.business-card-no-image{height:180px;background:repeating-linear-gradient(135deg,#f3efe6,#f3efe6 12px,#ece7dd 12px,#ece7dd 24px);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#788078;gap:.4rem}.business-card-no-image i{font-size:2rem;color:#9ba29d}.business-card-no-image span{font-size:.75rem;font-weight:600}.detail-no-image{height:420px;border:2px dashed #c8c1b5;border-radius:18px;background:#f3efe6;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#6e776f;padding:2rem}.detail-no-image i{font-size:3.5rem;color:#a3aaa5}.detail-no-image strong,.detail-no-image span{display:block}.detail-no-image strong{color:#4f5e55;font-size:1.15rem;margin:.6rem 0 .25rem}.detail-no-image span{font-size:.82rem}.product-placeholder{flex-direction:column;gap:.5rem}.product-placeholder span{font-size:.7rem}.admin-preview-banner{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:.8rem;background:#18251f;color:#fff;padding:.8rem 1.2rem;border-bottom:4px solid var(--color-red)}.admin-preview-banner>i{font-size:1.4rem;color:#ffd1d7}.admin-preview-banner>div{flex:1}.admin-preview-banner strong,.admin-preview-banner span{display:block}.admin-preview-banner span{font-size:.72rem;color:rgba(255,255,255,.68)}.admin-preview-banner button{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:8px;padding:.45rem .7rem;font-size:.78rem}
.business-upload-preview{height:130px;margin-top:.7rem;border:1px dashed #c8c1b5;border-radius:12px;background:#f6f2e9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:#7b827d;overflow:hidden;text-align:center;padding:.5rem}.business-upload-preview.important{border-color:#d58b94;background:#fff5f6}.business-upload-preview img{width:100%;height:100%;object-fit:cover;border-radius:8px}.business-upload-preview i{font-size:1.5rem}.business-upload-preview span{font-size:.7rem}.business-gallery-preview{height:130px;margin-top:.7rem;border:1px dashed #c8c1b5;border-radius:12px;background:#f6f2e9;display:flex;align-items:center;justify-content:center;gap:.4rem;color:#7b827d;overflow:auto;padding:.5rem}.business-gallery-preview img{flex:0 0 90px;width:90px;height:105px;object-fit:cover;border-radius:8px}.business-gallery-preview span{font-size:.7rem}
.admin-review-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.25rem}.admin-review-heading h1{font-size:2.5rem;color:var(--color-green);font-weight:700;margin:.25rem 0}.admin-review-heading p{margin:0;color:#667069}.approval-blocked,.approval-ready{display:flex;gap:1rem;align-items:start;border-radius:15px;padding:1rem 1.2rem;margin-bottom:1.25rem}.approval-blocked{background:#fff0f1;border:1px solid #f0c4c9;color:#7e2631}.approval-blocked>i{font-size:1.5rem;color:var(--color-red)}.approval-blocked ul{margin:.35rem 0;padding-left:1.2rem}.approval-blocked li,.approval-blocked p{font-size:.78rem;margin-bottom:.15rem}.approval-blocked p{margin:0;font-weight:600}.approval-ready{background:#eaf6ed;border:1px solid #c5e1cc;color:#25633b;align-items:center}.approval-ready>i{font-size:1.35rem}.approval-ready strong,.approval-ready span{display:block}.admin-review-layout{align-items:start}.admin-preview-panel,.admin-media-review,.admin-catalog-review,.admin-data-review{background:#fff;border:1px solid #ded8cd;border-radius:18px;overflow:hidden;margin-bottom:1.3rem}.admin-panel-title{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;border-bottom:1px solid #e7e1d7;background:#faf8f3}.admin-panel-title>div{display:flex;align-items:center;gap:.7rem}.admin-panel-title>div>i{display:flex;width:38px;height:38px;align-items:center;justify-content:center;background:#e8f2ea;border-radius:10px;color:var(--color-green);font-size:1.1rem}.admin-panel-title strong,.admin-panel-title small{display:block}.admin-panel-title strong{color:var(--color-green)}.admin-panel-title small{font-size:.68rem;color:#788079}.preview-live{font-size:.67rem;color:#3b7e53}.preview-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#36a160;margin-right:.3rem;animation:statusPulse 1.7s infinite}.admin-preview-panel iframe{display:block;width:100%;height:720px;border:0;background:#fff}.admin-media-review,.admin-catalog-review,.admin-data-review{padding-bottom:1.2rem}.admin-media-review>.admin-panel-title,.admin-catalog-review>.admin-panel-title,.admin-data-review>.admin-panel-title{margin-bottom:1.2rem}.admin-media-review>h2,.admin-media-review .col-md-4>h2,.admin-media-review .col-md-8>h2{font-size:.82rem;color:#4b5b51;margin:0 1.2rem .6rem}.submitted-main-image{display:block;position:relative;margin:0 1.2rem;height:330px;border-radius:15px;overflow:hidden}.submitted-main-image img{width:100%;height:100%;object-fit:cover}.submitted-main-image>span{position:absolute;right:1rem;bottom:1rem;background:rgba(0,0,0,.72);color:#fff;border-radius:9px;padding:.5rem .7rem;font-size:.7rem}.admin-missing-image{height:240px;margin:0 1.2rem;border:2px dashed #d1c9bc;background:#f5f1e8;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7a817c;text-align:center}.admin-missing-image.compact{height:145px;margin:0}.admin-missing-image i{font-size:2.2rem;color:#a3aaa5}.admin-missing-image strong,.admin-missing-image span{display:block}.admin-missing-image strong{color:#555f59;margin:.5rem 0 .2rem}.admin-missing-image span{font-size:.7rem}.submitted-logo{display:block;height:145px;border:1px solid #e1dbcf;border-radius:12px;overflow:hidden}.submitted-logo img{width:100%;height:100%;object-fit:contain;padding:.5rem}.submitted-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.submitted-gallery a{height:145px;border-radius:10px;overflow:hidden}.submitted-gallery img{width:100%;height:100%;object-fit:cover;transition:.2s}.submitted-gallery img:hover{transform:scale(1.05)}.admin-media-review>.row{padding:0 1.2rem}.admin-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:0 1.2rem}.admin-product-card{display:grid;grid-template-columns:150px 1fr;border:1px solid #e1dbcf;border-radius:14px;overflow:hidden;min-height:160px}.admin-product-card>a,.product-image-missing{position:relative;height:100%;min-height:160px;background:#f2eee5;overflow:hidden}.admin-product-card>a img{width:100%;height:100%;object-fit:cover}.admin-product-card>a>span{position:absolute;right:.5rem;bottom:.5rem;background:rgba(0,0,0,.65);color:#fff;border-radius:8px;padding:.35rem}.product-image-missing{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8a918c;gap:.3rem}.product-image-missing i{font-size:1.8rem}.product-image-missing span{font-size:.7rem}.admin-product-card>div:last-child{padding:1rem}.admin-product-card h3{color:var(--color-green);font-size:1rem}.admin-product-card strong{color:var(--color-red)}.admin-product-card p{font-size:.75rem;color:#747c77;margin-top:.5rem}.admin-empty-catalog{margin:0 1.2rem;padding:1.2rem;border:1px dashed #ccc4b8;border-radius:12px;color:#747c77}.admin-data-review dl{padding:0 1.2rem;margin:0}.admin-data-review dl>div{display:grid;grid-template-columns:190px 1fr;gap:1rem;padding:.75rem;border-bottom:1px solid #eee9df}.admin-data-review dt{font-size:.75rem;color:#657069}.admin-data-review dd{font-size:.82rem;color:#28362e;margin:0}.admin-decision-card{position:sticky;top:95px;background:#fff;border:1px solid #dcd5c9;border-top:5px solid var(--color-green);border-radius:18px;padding:1.4rem;box-shadow:0 14px 35px rgba(4,62,42,.1)}.admin-decision-card>span{font-size:.72rem;color:#747c77}.decision-status{display:inline-block;margin-left:.4rem;padding:.3rem .6rem;border-radius:20px;font-size:.7rem;font-weight:700}.admin-decision-card form:first-of-type{margin-top:1.2rem}.admin-decision-card form small{display:block;color:#a64d58;font-size:.68rem;margin-top:.45rem;text-align:center}.decision-correction{background:#faf8f3;border-radius:12px;padding:1rem}.decision-correction label{font-size:.76rem;font-weight:700;color:#4b5a51;margin-bottom:.5rem}.decision-correction textarea{font-size:.78rem;margin-bottom:.6rem}.previous-rejection{background:#fff1f2;color:#8f2633;border-radius:10px;padding:.7rem;font-size:.72rem;margin-top:.8rem}.previous-rejection strong{display:block;margin-bottom:.2rem}
@media(max-width:1199px){.admin-decision-card{position:static}.admin-preview-panel iframe{height:650px}}
@media(max-width:767px){.admin-review-heading{display:block}.admin-review-heading>a{margin-top:1rem}.admin-product-grid{grid-template-columns:1fr}.admin-product-card{grid-template-columns:120px 1fr}.submitted-gallery{grid-template-columns:1fr 1fr}.admin-data-review dl>div{grid-template-columns:1fr;gap:.25rem}.admin-preview-panel iframe{height:550px}}
.verification-intro{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1.2rem;border-radius:1rem;background:#edf7f2;border:1px solid #c8e3d5}.verification-intro i{font-size:1.8rem;color:#08613f}.verification-intro h5,.verification-intro p{margin:0}.business-location-map{height:380px;border:2px solid #d7e1dc;border-radius:1rem;overflow:hidden;background:#eef2ed}.business-location-map.map-disabled{opacity:.35;pointer-events:none}.verification-badges{display:flex;gap:.5rem;flex-wrap:wrap}.verification-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;background:#f2f3f1;color:#66706b;font-size:.82rem;font-weight:700}.verification-badge.verified{background:#dff6e8;color:#08713f}.verification-badge.pending{background:#fff2cc;color:#8a5b00}
.business-validation-summary{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.25rem;padding:1rem 1.2rem;border:1px solid #ef9aa4;border-left:5px solid #cf2035;border-radius:14px;background:#fff1f3;color:#8f1c2a}.business-validation-summary>i{font-size:1.7rem}.business-validation-summary strong{font-size:1.05rem}.business-validation-summary p{margin:.25rem 0;font-size:.9rem}.business-form .field-error-wrap{position:relative}.business-form .field-error-wrap>.form-control,.business-form .field-error-wrap>.form-select,.business-form .field-error-wrap>.input-group .form-control{border-color:#cf2035!important;padding-right:2.6rem;background-image:none!important}.business-form .field-error-icon{position:absolute;z-index:6;right:.75rem;top:2.45rem;width:1.45rem;height:1.45rem;border-radius:50%;display:grid;place-items:center;background:#cf2035;color:#fff;font-weight:800;font-size:.8rem;pointer-events:none}.business-form .input-group~.field-error-icon{right:7.15rem}.business-form .field-error-message{display:flex;gap:.4rem;align-items:flex-start;margin-top:.4rem;color:#b3192b;font-size:.82rem;font-weight:600}.business-form .field-example{display:block;margin-top:.18rem;color:#5f6864;font-size:.78rem;font-weight:400}.business-form .product-editor-card.has-field-error{border:2px solid #cf2035;background:#fff7f8}.business-form .map-field-error{border-color:#cf2035!important;box-shadow:0 0 0 .2rem rgba(207,32,53,.13)}
.ruc-quick-search{padding:1rem 1.1rem;border:1px solid #c8ded2;border-radius:14px;background:#f8fbf9}.ruc-quick-search-heading{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;color:var(--color-green)}.ruc-quick-search-heading>i{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#e4f2e9;color:#d21e34}.ruc-quick-search-heading strong,.ruc-quick-search-heading small{display:block}.ruc-quick-search-heading small{font-size:.75rem;color:#65716a}.ruc-quick-results{margin-top:.75rem;border:1px solid #d6ddd8;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(5,75,50,.1)}.ruc-quick-result{width:100%;display:grid;grid-template-columns:125px 1fr auto;align-items:center;gap:.8rem;border:0;border-bottom:1px solid #ecefeC;background:#fff;padding:.75rem 1rem;text-align:left;color:#26372e}.ruc-quick-result:last-child{border-bottom:0}.ruc-quick-result:hover,.ruc-quick-result:focus{background:#edf7f1;outline:0}.ruc-quick-number{font-weight:800;color:var(--color-green);font-variant-numeric:tabular-nums}.ruc-quick-result strong,.ruc-quick-result small{display:block}.ruc-quick-result small{font-size:.7rem;color:#6f7973;margin-top:.15rem}.ruc-quick-result>i{color:#d21e34;font-size:1.15rem}@media(max-width:600px){.ruc-quick-result{grid-template-columns:1fr auto}.ruc-quick-number{grid-column:1/3}.ruc-quick-search .input-group{display:block}.ruc-quick-search .input-group>.form-control,.ruc-quick-search .input-group>.btn{width:100%;border-radius:8px!important}.ruc-quick-search .input-group>.btn{margin-top:.5rem}}
.ruc-official-actions{display:flex;gap:.45rem;flex-wrap:wrap}.ruc-official-actions .btn{font-weight:700}

/* V53 · conversación: marca de agua institucional y ubicación compartida */
.chat-messages{position:relative;isolation:isolate;overflow:hidden}
.chat-messages::before{content:"";position:absolute;inset:0;background-image:url('../images/logo-unesum.webp');background-repeat:no-repeat;background-position:center 48%;background-size:180px auto;opacity:.075;filter:grayscale(.08);pointer-events:none;z-index:0}
.chat-messages>.chat-bubble{position:relative;z-index:1}
.chat-compose-main{display:flex;flex:1;flex-direction:column;gap:.55rem}
.chat-compose-main textarea{width:100%}
.chat-location-tools{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.chat-location-card{display:flex;align-items:center;gap:.65rem;margin:.55rem 0;padding:.7rem;border-radius:12px;background:rgba(255,255,255,.72);border:1px solid #cddbd1}
.chat-location-card>i{font-size:1.35rem;color:var(--color-green)}
.chat-location-card>div{display:grid;flex:1;min-width:150px}
.chat-location-card b{font-size:.78rem;color:#124d38}
.chat-location-card small{font-size:.62rem!important;color:#6c7770!important}
@media(max-width:640px){.chat-messages::before{background-size:120px auto}.chat-compose{flex-direction:column}.chat-compose>button{width:100%}.chat-location-card{align-items:flex-start;flex-wrap:wrap}.chat-location-card .btn{width:100%}}


/* V54 · estados de publicación y nuevas postulaciones */
.status-cell{min-width:210px}.status-cell .badge{display:inline-flex;align-items:center;padding:.48rem .72rem;border-radius:999px;font-weight:750;letter-spacing:.01em}.status-cell small{display:block;margin-top:.38rem;color:#737b76;font-size:.68rem}.business-row-new{background:#fffaf0!important;box-shadow:inset 4px 0 0 #d21e34}.new-submission-badge{display:inline-flex;align-items:center;gap:.22rem;background:#d21e34;color:#fff;border-radius:999px;padding:.2rem .48rem;font-size:.62rem;font-weight:800;letter-spacing:.025em;text-transform:uppercase}.submission-age{display:block;margin-top:.25rem;color:#7a817d;font-size:.68rem}.admin-review-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.review-summary-card{display:flex;align-items:center;gap:.85rem;text-decoration:none;background:#fff;border:1px solid #ded8cc;border-radius:16px;padding:1rem 1.1rem;color:#234136;transition:.18s}.review-summary-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(4,62,42,.09);color:#075a3b}.review-summary-card strong,.review-summary-card small{display:block}.review-summary-card strong{font-family:var(--font-heading);font-size:1.55rem;line-height:1;color:#075a3b}.review-summary-card small{margin-top:.18rem;color:#68736d}.review-summary-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#edf5ef;color:#075a3b;font-size:1.1rem}.review-summary-new{border-color:#efb9c0;background:#fff8f8}.review-summary-new .review-summary-icon{background:#fde6e9;color:#b1182b}.review-summary-new strong{color:#b1182b}.review-summary-published .review-summary-icon{background:#e4f4e8;color:#177044}.admin-stat-link{display:block;text-decoration:none;color:inherit;height:100%;transition:.18s}.admin-stat-link:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(4,62,42,.09)}.admin-stat-alert{border-color:#efb6be;background:#fff8f8}.admin-stat-alert .stat-number,.admin-stat-alert .small{color:#b1182b!important}.chat-business-status{display:flex;align-items:center;gap:.5rem;margin-top:.45rem}.chat-business-status>span{font-size:.68rem!important;color:#68736d!important}.chat-business-status>b{display:inline-flex;padding:.25rem .55rem;border-radius:999px;font-size:.66rem;font-weight:800}.chat-messages::before{opacity:.075;background-size:180px auto}.chat-bubble{backdrop-filter:blur(.2px)}
@media(max-width:767px){.admin-review-summary{grid-template-columns:1fr}.status-cell{min-width:170px}.chat-business-status{align-items:flex-start;flex-direction:column;gap:.25rem}}

/* =========================
   V55 · Administración SRI + Eventos de portada
   ========================= */
.admin-page-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.35rem}.admin-page-hero.compact{align-items:center}.admin-page-hero h1{font-family:var(--font-heading);font-size:clamp(2rem,3vw,2.8rem);font-weight:800;color:var(--color-green);margin:.15rem 0 .35rem}.admin-page-hero p{max-width:850px;color:#68736d;margin:0;line-height:1.55}.admin-page-hero .section-eyebrow{color:var(--color-red)}

/* SRI */
.sri-overview-grid{display:grid;grid-template-columns:minmax(310px,.8fr) minmax(520px,1.5fr);gap:1.25rem;align-items:stretch}.sri-index-card,.sri-import-card{background:#fff;border:1px solid #e1dbcf;border-radius:22px;box-shadow:0 12px 34px rgba(4,62,42,.055)}.sri-index-card{padding:1.45rem;position:relative;overflow:hidden}.sri-index-card:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-80px;top:-80px;background:radial-gradient(circle,rgba(8,104,71,.12),rgba(8,104,71,0) 68%)}.sri-index-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;position:relative;z-index:1}.sri-index-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#e7f3eb;color:var(--color-green);font-size:1.35rem}.sri-index-status{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .65rem;border-radius:999px;background:#e8f5ec;color:#237348;font-weight:750;font-size:.72rem}.sri-index-status i{width:8px;height:8px;border-radius:50%;background:#24a15c;box-shadow:0 0 0 4px rgba(36,161,92,.12)}.sri-index-number{font-family:var(--font-heading);font-size:clamp(2.7rem,5vw,4rem);line-height:1;color:#10281f;font-weight:850;margin:1.2rem 0 .35rem;letter-spacing:-.04em}.sri-index-card h2{font-size:1.18rem;color:var(--color-green);font-weight:800}.sri-index-card>p{color:#68736d;font-size:.87rem;line-height:1.55}.sri-index-details{display:grid;gap:.6rem;margin:1rem 0}.sri-index-details>div{display:flex;align-items:flex-start;gap:.65rem;padding:.7rem;border-radius:12px;background:#faf8f3}.sri-index-details i{color:var(--color-green);font-size:1rem;margin-top:.1rem}.sri-index-details strong,.sri-index-details small{display:block}.sri-index-details strong{font-size:.78rem;color:#2c463a}.sri-index-details small{font-size:.68rem;color:#727c76;margin-top:.12rem}.sri-source-note{display:flex;align-items:flex-start;gap:.65rem;padding:.8rem;border-radius:12px;background:#f6f3ec;color:#5f6c65;font-size:.74rem}.sri-source-note.success{background:#edf7f0;color:#2c6745}.sri-source-note.warning{background:#fff6df;color:#82631b}.sri-source-note i{font-size:1rem;margin-top:.05rem}.sri-source-note strong,.sri-source-note small{display:block}.sri-source-note small{margin-top:.15rem;line-height:1.35}.sri-import-card{padding:1.45rem}.sri-import-heading{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1rem}.sri-import-heading>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#f1ece2;color:var(--color-green);font-size:1.25rem}.sri-import-heading h2{font-size:1.35rem;color:#1e3329;margin:0 0 .2rem;font-weight:800}.sri-import-heading p{margin:0;color:#6d7771;font-size:.82rem}.sri-import-explainer{display:flex;align-items:center;gap:.7rem;background:#eef6f0;border:1px solid #d5e9da;border-radius:12px;padding:.75rem .85rem;margin-bottom:1.15rem;color:#3f6650;font-size:.76rem}.sri-import-explainer i{font-size:1.05rem;color:#1d7d4c}.sri-import-form .form-control{min-height:46px;border-radius:10px}.sri-file-input{position:relative}.sri-file-input>i{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);color:#6f8177;pointer-events:none}.sri-info-strip{display:grid;grid-template-columns:auto 1fr;gap:.9rem;margin-top:1.25rem;background:#fff8e7;border:1px solid #f0d991;border-radius:16px;padding:1rem 1.15rem;color:#684f16}.sri-info-icon{width:38px;height:38px;border-radius:11px;background:#ffefbf;display:grid;place-items:center;font-size:1.05rem}.sri-info-strip strong{display:block;color:#644a12;margin-bottom:.2rem}.sri-info-strip p{margin:0;font-size:.78rem;line-height:1.5}.sri-command-guide{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:.75rem;align-items:center;margin-top:1.25rem}.sri-command-guide>div{background:#fff;border:1px solid #e2ddd3;border-radius:14px;padding:.85rem}.sri-command-guide>i{color:#a3aaa5}.sri-command-number{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--color-green);color:#fff;font-weight:800;font-size:.7rem;margin-right:.4rem}.sri-command-guide strong{font-size:.74rem;color:#415249}.sri-command-guide code{display:block;margin-top:.55rem;padding:.55rem .65rem;border-radius:8px;background:#17231e;color:#eaf4ee;font-size:.68rem;overflow:auto}

/* Admin events */
.event-placement-note{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;background:linear-gradient(135deg,#edf7f0,#f9f4e9);border:1px solid #d7e5da;border-radius:16px;padding:.9rem 1rem;margin-bottom:1rem}.event-placement-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#0b6746;color:#fff;font-size:1.05rem}.event-placement-note strong,.event-placement-note span{display:block}.event-placement-note strong{color:#244337}.event-placement-note span{font-size:.75rem;color:#65736c;margin-top:.12rem}.event-placement-note>a{white-space:nowrap;text-decoration:none;font-size:.75rem;font-weight:800;color:var(--color-green)}.event-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1.3rem}.event-stat-card{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid #e2ddd3;border-radius:15px;padding:.85rem 1rem}.event-stat-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#f2eee6;color:#466355}.event-stat-card strong,.event-stat-card small{display:block}.event-stat-card strong{font-family:var(--font-heading);font-size:1.45rem;line-height:1;color:#17352a}.event-stat-card small{margin-top:.17rem;color:#758079;font-size:.67rem}.event-stat-live{background:#eef7f1;border-color:#cfe5d6}.event-stat-live .event-stat-icon{background:#dcefe2;color:#147145}.event-empty-state{display:grid;grid-template-columns:270px 1fr;align-items:center;gap:2rem;background:#fff;border:1px solid #e2ddd3;border-radius:22px;padding:2rem;min-height:310px}.event-empty-illustration{height:220px;border-radius:18px;background:linear-gradient(145deg,#eaf4ed,#f7f2e8);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.event-empty-illustration>span{position:absolute;top:1rem;left:1rem;width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#fff;color:var(--color-green);box-shadow:0 8px 20px rgba(0,0,0,.07);font-size:1.2rem}.event-empty-illustration img{width:115px;opacity:.55}.event-empty-state h2{font-size:1.7rem;color:var(--color-green);margin:.3rem 0}.event-empty-state p{max-width:720px;color:#6c7770;line-height:1.6}.event-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.event-admin-card{background:#fff;border:1px solid #e1dbcf;border-radius:18px;overflow:hidden;box-shadow:0 9px 26px rgba(4,62,42,.06);transition:.18s}.event-admin-card:hover{transform:translateY(-2px);box-shadow:0 13px 32px rgba(4,62,42,.09)}.event-admin-card.is-hidden{opacity:.72}.event-admin-media{height:190px;position:relative;background:#eef0ea;overflow:hidden}.event-admin-media>img,.event-admin-noimage{width:100%;height:100%}.event-admin-media>img{object-fit:cover}.event-admin-noimage{display:grid;place-items:center;background:linear-gradient(135deg,#e8f1eb,#f6efe3)}.event-admin-noimage img{width:90px;opacity:.45}.event-admin-badges{position:absolute;left:.7rem;top:.7rem;display:flex;gap:.35rem;flex-wrap:wrap}.event-status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .5rem;border-radius:999px;font-size:.61rem;font-weight:800;backdrop-filter:blur(7px)}.event-status-pill.published{background:rgba(225,248,232,.95);color:#176d43}.event-status-pill.hidden{background:rgba(238,239,238,.94);color:#626a65}.event-status-pill.expired{background:rgba(255,239,220,.95);color:#8b5522}.event-order-pill{position:absolute;right:.7rem;bottom:.65rem;background:rgba(18,35,28,.82);color:#fff;padding:.26rem .48rem;border-radius:8px;font-size:.58rem}.event-admin-body{padding:1rem}.event-admin-meta{display:flex;gap:.55rem;flex-wrap:wrap;color:#6c7972;font-size:.65rem}.event-admin-body h2{font-size:1.08rem;color:#183c2e;margin:.55rem 0 .35rem;font-weight:800}.event-admin-body p{font-size:.76rem;color:#727c76;line-height:1.48;min-height:46px}.event-admin-actions{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;border-top:1px solid #eee9df;padding-top:.75rem}.event-admin-actions form{margin-left:auto}.event-editor-form{max-width:1280px}.event-form-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.7fr);gap:1rem;align-items:start}.event-form-main,.event-form-side{display:grid;gap:1rem}.event-form-section{background:#fff;border:1px solid #e1dbcf;border-radius:18px;padding:1.15rem}.event-form-section-title{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.event-form-section-title>span{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#edf5ef;color:var(--color-green);font-size:1rem}.event-form-section-title strong,.event-form-section-title small{display:block}.event-form-section-title strong{color:#254538}.event-form-section-title small{font-size:.68rem;color:#77817b;margin-top:.12rem}.event-image-preview{height:220px;border:1px dashed #d0c8bb;border-radius:14px;overflow:hidden;margin-bottom:.8rem;background:#f7f4ed;display:grid;place-items:center}.event-image-preview>img{width:100%;height:100%;object-fit:cover}.event-image-preview>div{text-align:center;color:#879089}.event-image-preview>div img{display:block;width:85px;opacity:.45;margin:0 auto .5rem}.event-image-preview>div span{font-size:.72rem}.event-publish-card{background:linear-gradient(145deg,#0a6545,#074f38);color:#fff;border-radius:18px;padding:1.1rem;box-shadow:0 12px 30px rgba(4,62,42,.14)}.event-publish-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.12);margin-bottom:.7rem}.event-publish-card strong{display:block}.event-publish-card p{font-size:.72rem;color:rgba(255,255,255,.74);line-height:1.45;margin:.25rem 0 .7rem}.event-publish-card a{color:#fff;font-weight:800;font-size:.72rem;text-decoration:none}.event-publish-switch{display:flex;align-items:flex-start;gap:.55rem;padding:.65rem .7rem;border-radius:11px;background:#f7f5ef}.event-publish-switch input{margin-top:.16rem}.event-publish-switch strong,.event-publish-switch small{display:block}.event-publish-switch strong{font-size:.76rem;color:#345045}.event-publish-switch small{font-size:.63rem;color:#7b847f;margin-top:.1rem}.event-form-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem;padding:1rem;background:#fff;border:1px solid #e1dbcf;border-radius:15px}

/* Eventos en portada */
.home-events-showcase{padding:4.5rem 0;background:linear-gradient(180deg,#fff 0,#f8f3e9 100%);position:relative;overflow:hidden}.home-events-showcase:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-240px;background:radial-gradient(circle,rgba(5,100,68,.1),rgba(5,100,68,0) 67%)}.home-events-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem;position:relative}.home-events-heading h2{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--color-green);margin:.25rem 0}.home-events-heading p{margin:0;color:#68736d}.home-events-location{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .75rem;border-radius:999px;background:#fff;border:1px solid #e2dbcf;color:#547064;font-size:.72rem;font-weight:750;white-space:nowrap}.home-events-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.72fr);gap:1rem;position:relative}.home-event-featured{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid #ded8cc;border-radius:22px;overflow:hidden;min-height:390px;box-shadow:0 16px 38px rgba(4,62,42,.08)}.home-event-featured-media{position:relative;min-height:390px;overflow:hidden;background:#edf0e9}.home-event-featured-media>img{width:100%;height:100%;object-fit:cover}.event-featured-tag{position:absolute;top:1rem;left:1rem;display:inline-flex;align-items:center;gap:.35rem;background:rgba(9,86,61,.92);color:#fff;border-radius:999px;padding:.42rem .7rem;font-size:.68rem;font-weight:800;backdrop-filter:blur(5px)}.home-event-featured-body{padding:2rem;display:flex;flex-direction:column;justify-content:center}.event-meta-line{display:flex;gap:.6rem;flex-wrap:wrap}.event-meta-line span{display:inline-flex;align-items:center;gap:.32rem;color:#617068;font-size:.7rem}.home-event-featured h3{font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.1;color:#133e2d;font-weight:850;margin:.8rem 0}.home-event-featured p{color:#69746e;line-height:1.65}.home-event-featured .btn{align-self:flex-start;margin-top:.5rem}.home-events-side{display:grid;gap:.75rem}.home-event-compact{display:grid;grid-template-columns:125px 1fr;background:#fff;border:1px solid #e1dbcf;border-radius:16px;overflow:hidden;min-height:118px;box-shadow:0 8px 22px rgba(4,62,42,.05)}.home-event-compact-media{height:100%;min-height:118px;background:#eef0ea}.home-event-compact-media>img{width:100%;height:100%;object-fit:cover}.home-event-compact>div:last-child{padding:.8rem}.home-event-compact .event-date{font-size:.62rem;padding:.24rem .45rem}.home-event-compact h3{font-size:.88rem;color:#1b4936;font-weight:800;margin:.42rem 0 .25rem;line-height:1.2}.home-event-compact small{display:block;font-size:.63rem;color:#758079;margin-bottom:.32rem}.home-event-compact a{font-size:.66rem;font-weight:800;color:var(--color-red);text-decoration:none}.event-image-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#e7f1ea,#f7efe3)}.event-image-fallback img{width:110px;opacity:.48}.event-image-fallback.compact img{width:64px}.home-events-more{display:flex;justify-content:flex-end;margin-top:.8rem;color:#748079;font-size:.7rem}

@media(max-width:1199px){.event-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-events-layout{grid-template-columns:1fr}.home-events-side{grid-template-columns:repeat(3,1fr)}.home-event-compact{grid-template-columns:1fr}.home-event-compact-media{height:120px}.sri-command-guide{grid-template-columns:1fr}.sri-command-guide>i{display:none}}
@media(max-width:991px){.sri-overview-grid{grid-template-columns:1fr}.event-admin-stats{grid-template-columns:repeat(2,1fr)}.event-form-grid{grid-template-columns:1fr}.home-event-featured{grid-template-columns:1fr}.home-event-featured-media{min-height:300px}.home-events-side{grid-template-columns:1fr 1fr}.event-placement-note{grid-template-columns:auto 1fr}.event-placement-note>a{grid-column:2}}
@media(max-width:767px){.admin-page-hero{display:block}.admin-page-hero .btn{margin-top:.8rem}.event-admin-grid{grid-template-columns:1fr}.event-admin-stats{grid-template-columns:1fr 1fr}.event-placement-note{grid-template-columns:1fr}.event-placement-icon{margin-bottom:.1rem}.event-placement-note>a{grid-column:auto}.event-empty-state{grid-template-columns:1fr;padding:1.25rem}.event-empty-illustration{height:170px}.home-events-heading{display:block}.home-events-location{margin-top:.8rem}.home-events-side{grid-template-columns:1fr}.home-event-featured-body{padding:1.3rem}.sri-command-guide{margin-bottom:1rem}}
@media(max-width:500px){.event-admin-stats{grid-template-columns:1fr}.home-event-compact{grid-template-columns:105px 1fr}.home-event-compact-media{height:auto}.sri-index-number{font-size:2.6rem}}

/* V56 · registro de identidad binacional */
.register-step{border:1px solid #e5e0d7;border-radius:18px;padding:1.15rem;background:#fff}.register-step-heading{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1rem}.register-step-heading>span{flex:0 0 38px;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--color-green);color:#fff;font-weight:800}.register-step-heading h2{font-size:1.05rem;color:#183f30;margin:.08rem 0 .2rem;font-weight:800}.register-step-heading p{font-size:.75rem;color:#707a74;margin:0;line-height:1.5}.identity-status{display:flex;align-items:flex-start;gap:.65rem;padding:.75rem .85rem;border-radius:12px;background:#f3f6f4;border:1px solid #dce5df;color:#496157;font-size:.75rem;line-height:1.45}.identity-status i{font-size:1rem;margin-top:.05rem}.identity-status.is-success{background:#edf8f1;border-color:#bfe2ca;color:#176841}.identity-status.is-warning{background:#fff8e8;border-color:#eedaa0;color:#795d13}.identity-status.is-error{background:#fff0f1;border-color:#efc2c7;color:#9a2732}.identity-status.is-loading{background:#eef5fb;border-color:#c8dced;color:#315f7c}.identity-autofilled{background:#eef8f1!important;border-color:#b9ddc4!important}.identity-upload-box{display:flex;align-items:center;gap:.9rem;border:1.5px dashed #cfc8ba;background:#faf8f2;border-radius:14px;padding:1rem;cursor:pointer;transition:.18s}.identity-upload-box:hover{border-color:var(--color-green);background:#f3f8f4}.identity-upload-box>i{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#e8f2eb;color:var(--color-green);font-size:1.2rem}.identity-upload-box span{display:flex;flex-direction:column}.identity-upload-box strong{font-size:.84rem;color:#254537}.identity-upload-box small{font-size:.68rem;color:#78817c}.identity-upload-box input{margin-left:auto;max-width:360px;font-size:.75rem}@media(max-width:767px){.register-step{padding:1rem}.identity-upload-box{align-items:flex-start;flex-wrap:wrap}.identity-upload-box input{width:100%;max-width:none;margin-left:0}}

/* V63 · indicador de fortaleza de contraseña y envío seguro del registro */
.password-strength-meter{--strength-color:#c94a55}.password-strength-track{height:7px;border-radius:999px;background:#e9e7e2;overflow:hidden}.password-strength-track>span{display:block;height:100%;width:0;border-radius:inherit;background:var(--strength-color);transition:width .22s ease,background-color .22s ease}.password-strength-meter[data-level="0"]{--strength-color:#c94a55}.password-strength-meter[data-level="1"]{--strength-color:#c94a55}.password-strength-meter[data-level="2"]{--strength-color:#e6962f}.password-strength-meter[data-level="3"]{--strength-color:#d2a600}.password-strength-meter[data-level="4"]{--strength-color:#24834f}.password-strength-summary{display:flex;justify-content:space-between;gap:.8rem;margin-top:.4rem;font-size:.69rem;color:#6e7772}.password-strength-summary strong{color:var(--strength-color);white-space:nowrap}.password-strength-rules{display:grid;grid-template-columns:1fr 1fr;gap:.28rem .75rem;margin-top:.55rem}.password-strength-rules span{display:flex;align-items:center;gap:.32rem;font-size:.66rem;color:#7b827e;transition:color .18s}.password-strength-rules span i{font-size:.72rem}.password-strength-rules span.is-complete{color:#23764a;font-weight:700}.password-match-status{display:flex;align-items:center;gap:.32rem;margin-top:.45rem;font-size:.69rem;color:#7a817d}.password-match-status.is-match{color:#23764a;font-weight:700}.password-match-status.is-mismatch{color:#a43842;font-weight:700}#register-submit:disabled{cursor:wait;opacity:.82}@media(max-width:575px){.password-strength-rules{grid-template-columns:1fr}}


/* V65: horarios estructurados y ubicación pública */
.business-hours-editor{border:1px solid #d9e2dd;border-radius:16px;padding:1rem;background:#fbfcfb}.business-hours-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:.85rem}.business-hours-grid{display:grid;gap:.55rem}.business-hour-row{display:grid;grid-template-columns:minmax(175px,1fr) minmax(320px,1.6fr) 85px;gap:1rem;align-items:center;padding:.7rem .8rem;border:1px solid #e3e8e5;border-radius:12px;background:#f6f7f6;transition:.2s ease}.business-hour-row.is-open{border-color:#b9dccb;background:#f2faf6}.business-day-toggle{display:flex;align-items:center;gap:.65rem;margin:0;cursor:pointer}.business-day-toggle input{width:1.05rem;height:1.05rem;accent-color:#08613f}.business-day-short{width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;background:#e5e9e7;color:#56615b;font-weight:800}.business-hour-row.is-open .business-day-short{background:#08613f;color:#fff}.business-day-name{font-weight:700}.business-hour-times{display:flex;align-items:end;gap:.55rem}.business-hour-times label{flex:1;margin:0}.business-hour-times label span{display:block;font-size:.74rem;color:#657069;margin-bottom:.2rem}.business-hour-separator{padding-bottom:.55rem;color:#657069}.business-hour-state{font-size:.78rem;font-weight:700;color:#777;text-align:right}.business-hour-row.is-open .business-hour-state{color:#08713f}.verification-badge-link{text-decoration:none!important;cursor:pointer}.verification-badge-link:hover{filter:brightness(.96);box-shadow:0 0 0 2px rgba(8,113,63,.1)}.verification-badge.virtual{background:#eef4f1;color:#35614f}.verification-badge.neutral{background:#edf3f5;color:#45606a}.business-hours-public{font-size:.82rem;color:#5f6864}.business-hours-public summary{cursor:pointer;font-weight:700;color:#415149}.business-hours-public-list{margin-top:.55rem;border-top:1px solid #e4e8e6;padding-top:.45rem}.business-hours-public-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.2rem 0}.business-hours-public-list strong{color:#25352e;font-weight:700}
@media(max-width:768px){.business-hours-heading{align-items:flex-start;flex-direction:column}.business-hour-row{grid-template-columns:1fr}.business-hour-times{width:100%}.business-hour-state{text-align:left}.business-day-short{width:1.8rem;height:1.8rem}}


/* V68 · foto de perfil */
.profile-photo-section{background:#f9fbf9;border:1px solid #e0e8e3;border-radius:16px;padding:1rem 1.1rem}.profile-photo-editor{display:grid;grid-template-columns:132px minmax(0,1fr);gap:1.25rem;align-items:center}.profile-photo-preview{width:124px;height:124px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#0b6847,#0a4935);border:4px solid #fff;box-shadow:0 8px 25px rgba(4,62,42,.18);color:#fff;font-size:2.15rem;font-weight:800}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-controls{min-width:0}.nav-profile-link{display:flex!important;align-items:center;gap:.35rem}.nav-profile-avatar{width:27px;height:27px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.72)}.dashboard-user-heading{display:flex;align-items:center;gap:1rem}.dashboard-profile-avatar{flex:0 0 66px;width:66px;height:66px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#0b6847,#0a4935);color:#fff;text-decoration:none;border:3px solid #fff;box-shadow:0 7px 22px rgba(4,62,42,.18);font-size:1.35rem;font-weight:800}.dashboard-profile-avatar img{width:100%;height:100%;object-fit:cover}.dashboard-profile-avatar:hover{color:#fff;transform:translateY(-1px)}
@media(max-width:575px){.profile-photo-editor{grid-template-columns:1fr}.profile-photo-preview{width:108px;height:108px}.dashboard-user-heading{align-items:flex-start}.dashboard-profile-avatar{width:56px;height:56px;flex-basis:56px}}

/* =========================================================
   V71 · Portada mosaico "UNESUM SIN FRONTERAS"
   Varias imágenes de emprendimientos integradas al fondo.
   ========================================================= */
.home-hero-mosaic{
    position:relative;
    min-height:760px;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding:6.2rem 0 6.6rem;
    background:#034c34;
    isolation:isolate;
}
.home-hero-mosaic:after{
    content:"";
    position:absolute;
    z-index:8;
    inset:auto 0 0;
    height:6px;
    background:var(--color-red);
}
.home-hero-mosaic-grid{
    position:absolute;
    z-index:0;
    inset:0 0 0 auto;
    width:min(66vw,1120px);
    height:100%;
    display:grid;
    grid-template-columns:1.05fr 1fr .9fr;
    grid-template-rows:1fr 1fr;
    gap:4px;
    overflow:hidden;
    background:#063f2c;
}
.hero-mosaic-tile{
    position:relative;
    min-width:0;
    min-height:0;
    margin:0;
    overflow:hidden;
    background:#0b553c;
}
.hero-mosaic-tile img{
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.9) brightness(.77) contrast(1.04);
    transform:scale(1.015);
    transition:transform .55s ease,filter .55s ease;
}
.home-hero-mosaic:not(.visual-editor-active) .hero-mosaic-tile:hover img{
    transform:scale(1.055);
    filter:saturate(1) brightness(.84) contrast(1.04);
}
.hero-mosaic-tile-1{clip-path:polygon(0 0,100% 0,90% 100%,0 100%)}
.hero-mosaic-tile-2{clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}
.hero-mosaic-tile-3{clip-path:polygon(0 0,100% 0,100% 100%,8% 100%)}
.hero-mosaic-tile-4{clip-path:polygon(0 0,90% 0,100% 100%,0 100%)}
.hero-mosaic-tile-5{clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)}
.hero-mosaic-tile-6{clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}
.home-hero-mosaic-shade{
    position:absolute;
    z-index:1;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg,rgba(2,67,45,.99) 0%,rgba(2,76,51,.98) 30%,rgba(3,83,56,.88) 47%,rgba(3,68,47,.42) 68%,rgba(2,43,31,.22) 100%),
        linear-gradient(0deg,rgba(3,57,40,.45),rgba(3,57,40,.08) 55%,rgba(3,57,40,.18));
}
.home-hero-mosaic-content{z-index:3;width:100%}
.home-hero-mosaic .shape-one{z-index:2;right:-190px;top:-210px;opacity:.12}
.home-hero-mosaic .shape-two{z-index:2;opacity:.08}
.home-hero-mosaic .home-kicker{
    color:#ffdadf;
    font-size:.82rem;
    letter-spacing:.085em;
    text-shadow:0 2px 12px rgba(0,0,0,.35);
}
.home-hero-mosaic .home-hero-title{
    max-width:900px;
    margin:1.15rem 0 .65rem;
    font-size:clamp(4rem,7.2vw,7.15rem);
    line-height:.92;
    letter-spacing:-.035em;
    color:var(--hero-heading-color,#F2D49E);
    text-shadow:0 5px 28px rgba(0,0,0,.22);
}
.home-hero-mosaic .home-hero-subtitle{
    max-width:880px;
    margin:.7rem 0 0;
    font-size:clamp(1.35rem,2.35vw,2.35rem);
    line-height:1.08;
    font-weight:750;
    letter-spacing:.015em;
    color:var(--hero-heading-color,#F2D49E);
    text-shadow:0 3px 18px rgba(0,0,0,.4);
}
.home-hero-subtitle-accent{
    width:112px;
    height:5px;
    margin:1rem 0 1.1rem;
    border-radius:20px;
    background:var(--color-red);
    box-shadow:0 4px 15px rgba(0,0,0,.18);
}
.home-hero-mosaic .home-hero-intro{
    max-width:700px;
    margin:0;
    font-size:1.12rem;
    line-height:1.68;
    color:rgba(255,255,255,.9);
    text-shadow:0 2px 16px rgba(0,0,0,.32);
}
.home-hero-mosaic .home-hero-actions .btn{
    min-height:54px;
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    border-radius:11px;
    font-weight:700;
    box-shadow:0 12px 28px rgba(0,0,0,.15);
}
.home-binational-card{
    width:min(500px,100%);
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:.9rem;
    padding:.75rem 1rem;
    border:1px solid rgba(255,255,255,.28);
    border-radius:16px;
    background:rgba(3,67,46,.58);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    box-shadow:0 12px 32px rgba(0,0,0,.14);
}
.home-binational-icon{
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff;
    color:var(--color-red);
    font-size:1.45rem;
}
.home-binational-copy strong,.home-binational-copy small{display:block}
.home-binational-copy strong{font-size:1.02rem;color:#fff}
.home-binational-copy small{margin-top:.12rem;color:rgba(255,255,255,.72);font-size:.78rem}
.home-binational-flags{
    display:flex;
    align-items:center;
    gap:.35rem;
    padding-left:.9rem;
    border-left:1px solid rgba(255,255,255,.24);
}
.home-binational-flags span{
    width:39px;
    height:39px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff;
    overflow:hidden;
    box-shadow:0 5px 12px rgba(0,0,0,.18);
}
.home-binational-flags span img{width:100%;height:100%;display:block;object-fit:cover}
.home-hero-mosaic .hero-trust{color:rgba(255,255,255,.78);text-shadow:0 2px 10px rgba(0,0,0,.25)}
.home-hero-mosaic .hero-trust i{color:#ffb9c2}
.hero-mosaic-pencil{
    top:12px!important;
    right:12px!important;
    width:38px;
    height:38px;
    pointer-events:auto;
}
.visual-editor-active .home-hero-mosaic-grid{z-index:4}
.visual-editor-active .home-hero-mosaic-shade{z-index:2}
.visual-editor-active .home-hero-mosaic-content{z-index:5}

@media(max-width:1199px){
    .home-hero-mosaic{min-height:720px;padding:5.5rem 0 5.8rem}
    .home-hero-mosaic-grid{width:70vw}
    .home-hero-mosaic .home-hero-title{font-size:clamp(3.7rem,7.2vw,6rem);max-width:760px}
}
@media(max-width:991px){
    .home-hero-mosaic{min-height:690px;padding:5rem 0}
    .home-hero-mosaic-grid{width:100%;opacity:.62}
    .home-hero-mosaic-shade{
        background:linear-gradient(90deg,rgba(2,62,43,.97) 0%,rgba(2,67,46,.94) 52%,rgba(2,58,41,.68) 100%);
    }
    .home-hero-mosaic .home-hero-title{max-width:720px}
    .home-hero-mosaic .home-hero-subtitle{max-width:700px}
}
@media(max-width:767px){
    .home-hero-mosaic{min-height:auto;padding:4.25rem 0 4.8rem}
    .home-hero-mosaic-grid{
        display:grid;
        width:100%;
        grid-template-columns:1fr 1fr;
        grid-template-rows:repeat(3,1fr);
        gap:2px;
        opacity:.4;
    }
    .home-hero-mosaic-shade{
        background:linear-gradient(180deg,rgba(2,62,43,.94),rgba(2,66,45,.97) 58%,rgba(2,55,39,.98));
    }
    .hero-mosaic-tile{clip-path:none!important}
    .home-hero-mosaic .home-kicker{font-size:.7rem;line-height:1.45}
    .home-hero-mosaic .home-hero-title{
        font-size:clamp(3rem,15vw,4.4rem);
        line-height:.91;
        margin-top:.9rem;
    }
    .home-hero-mosaic .home-hero-subtitle{
        font-size:clamp(1.15rem,5.4vw,1.55rem);
        line-height:1.13;
        max-width:100%;
    }
    .home-hero-subtitle-accent{width:78px;height:4px;margin:.85rem 0 1rem}
    .home-hero-mosaic .home-hero-intro{font-size:1rem;line-height:1.6}
    .home-hero-actions{gap:.7rem!important}
    .home-hero-mosaic .home-hero-actions .btn{width:100%;justify-content:center}
    .home-binational-card{grid-template-columns:auto 1fr;padding:.7rem .8rem}
    .home-binational-flags{grid-column:1/3;border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:.6rem 0 0;margin-top:.15rem}
    .home-binational-flags span{width:34px;height:34px}
    .hero-mosaic-editor-toolbar{left:10px;right:10px;top:10px;justify-content:space-between;gap:.35rem;padding:.45rem .5rem}
    .hero-mosaic-editor-toolbar>span{font-size:.68rem}
    .hero-mosaic-toolbar-button.visual-image-pencil{width:28px;height:28px}
}


/* =========================================================
   Ajuste V71 · Encabezado y portada balanceados
   - Logo y nombre institucional más hacia la izquierda.
   - Contenido de portada mejor alineado y con uso parejo del ancho.
   ========================================================= */
.site-shell{
    width:min(1540px,100%);
    margin:0 auto;
    padding-left:clamp(18px,2.6vw,44px);
    padding-right:clamp(18px,2.6vw,44px);
}
.navbar-institutional .site-shell{
    align-items:center;
}
.navbar-institutional .navbar-brand{
    margin-right:1.5rem;
    min-width:0;
}
.navbar-institutional .brand-copy{
    min-width:0;
}
.navbar-institutional .brand-text{
    display:block;
    font-size:clamp(1rem,1.18vw,1.5rem);
    white-space:nowrap;
}
.home-hero-mosaic-content.site-shell{
    max-width:none;
}
.home-hero-mosaic .row{
    --bs-gutter-x:0;
}
.home-hero-copy{
    padding-right:min(3vw,2.2rem);
}
.home-hero-mosaic .home-kicker,
.home-hero-mosaic .home-hero-title,
.home-hero-mosaic .home-hero-subtitle,
.home-hero-mosaic .home-hero-intro,
.home-hero-mosaic .home-hero-actions,
.home-hero-mosaic .home-binational-card,
.home-hero-mosaic .hero-trust{
    max-width:min(100%,960px);
}
@media(max-width:991px){
    .site-shell{
        padding-left:20px;
        padding-right:20px;
    }
    .navbar-institutional .brand-text{
        white-space:normal;
        line-height:1.08;
    }
}
@media(max-width:767px){
    .site-shell{
        padding-left:16px;
        padding-right:16px;
    }
    .home-hero-copy{
        padding-right:0;
    }
}

/* =========================================================
   Ajuste V71 · Footer institucional ampliado
   Inspirado en la estructura visual institucional de Posgrado.
   ========================================================= */
.footer-unified{
    position:relative;
    overflow:hidden;
    margin-top:0!important;
    padding:4.6rem 0 1.5rem;
    color:#fff;
    background:
        radial-gradient(circle at 10% 15%,rgba(255,255,255,.055),transparent 28%),
        linear-gradient(115deg,#03452f 0%,#075a3b 55%,#064d36 100%);
    border-top:5px solid var(--color-red);
}
.footer-unified:before{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    right:-190px;
    top:-220px;
    border:60px solid rgba(255,255,255,.035);
    border-radius:50%;
    pointer-events:none;
}
.footer-unified-inner{position:relative;z-index:1}
.footer-unified-grid{
    display:grid;
    grid-template-columns:1.35fr .85fr 1fr 1.15fr;
    gap:clamp(2rem,3vw,4rem);
    align-items:start;
}
.footer-unified h2,.footer-unified h3{color:#fff;margin:0}
.footer-unified h3{
    font-size:.85rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.footer-section-line{
    width:100%;
    height:1px;
    margin:.7rem 0 1rem;
    background:rgba(255,255,255,.14);
}
.footer-brand-lockup{
    display:flex;
    align-items:center;
    gap:1rem;
}
.footer-unesum-logo{
    flex:0 0 76px;
    width:76px;
    height:92px;
    object-fit:contain;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.25));
}
.footer-brand-eyebrow{
    display:block;
    margin-bottom:.3rem;
    color:#f3d5d9;
    font-size:.68rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.1em;
}
.footer-brand-column h2{
    font-size:clamp(1.25rem,1.8vw,1.7rem);
    font-weight:800;
    line-height:1.12;
}
.footer-brand-description{
    max-width:420px;
    margin:1.45rem 0 1.2rem;
    color:rgba(255,255,255,.76);
    font-size:.92rem;
    line-height:1.75;
}
.footer-brand-note{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    padding:.55rem .75rem;
    border:1px solid rgba(255,255,255,.15);
    border-radius:10px;
    color:rgba(255,255,255,.82);
    background:rgba(255,255,255,.045);
    font-size:.75rem;
}
.footer-brand-note i{color:#ffc7cf;font-size:1rem}
.footer-links-modern{display:grid;gap:.52rem}
.footer-links-modern a{
    display:inline-flex;
    align-items:center;
    gap:.25rem;
    color:rgba(255,255,255,.8);
    text-decoration:none;
    font-size:.88rem;
    transition:.2s ease;
}
.footer-links-modern a i{color:#efb5bd;font-size:.7rem;transition:.2s ease}
.footer-links-modern a:hover{color:#fff;transform:translateX(4px)}
.footer-links-modern a:hover i{color:#fff}
.footer-authority-card{
    overflow:hidden;
    border-radius:16px;
    background:rgba(255,255,255,.065);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 16px 36px rgba(0,0,0,.14);
}
.footer-authority-card>img{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    object-position:center 26%;
    border-top:4px solid var(--color-red);
}
.footer-authority-copy{padding:.9rem 1rem 1rem}
.footer-authority-copy strong{
    display:block;
    color:#fff;
    font-family:var(--font-heading);
    font-size:.9rem;
    line-height:1.32;
}
.footer-authority-copy span{
    display:block;
    margin-top:.35rem;
    color:#efb9c0;
    font-size:.67rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.footer-contact-list{display:grid;gap:.65rem}
.footer-contact-list p{
    display:grid;
    grid-template-columns:22px 1fr;
    gap:.45rem;
    margin:0;
    color:rgba(255,255,255,.79);
    font-size:.79rem;
    line-height:1.5;
}
.footer-contact-list i{color:#f2b8c0;margin-top:.08rem}
.footer-contact-list a{color:rgba(255,255,255,.88);text-decoration:none;word-break:break-word}
.footer-contact-list a:hover{color:#fff;text-decoration:underline}
.footer-support-person strong{color:#fff;font-size:.79rem}
.footer-support-person small{color:rgba(255,255,255,.6);font-size:.69rem}
.footer-hours{
    margin-top:1.05rem;
    padding-top:.85rem;
    border-top:1px solid rgba(255,255,255,.12);
}
.footer-hours strong,.footer-hours span{display:block}
.footer-hours strong{color:#fff;font-size:.78rem}
.footer-hours span{margin-top:.25rem;color:rgba(255,255,255,.68);font-size:.75rem}
.footer-unified-bottom{
    display:flex;
    justify-content:space-between;
    gap:2rem;
    margin-top:3.2rem;
    padding-top:1.1rem;
    border-top:1px solid rgba(255,255,255,.14);
    color:rgba(255,255,255,.58);
    font-size:.7rem;
}
.footer-unified-bottom p{margin:0}
@media(max-width:1199px){
    .footer-unified-grid{grid-template-columns:1.2fr .8fr 1fr;}
    .footer-contact-column{grid-column:1/4;display:grid;grid-template-columns:1fr 1fr;column-gap:2rem}
    .footer-contact-column h3,.footer-contact-column .footer-section-line{grid-column:1/3}
    .footer-hours{margin-top:0;padding-top:0;border-top:0;border-left:1px solid rgba(255,255,255,.12);padding-left:2rem}
}
@media(max-width:767px){
    .footer-unified{padding:3.4rem 0 1.25rem}
    .footer-unified-grid{grid-template-columns:1fr;gap:2.3rem}
    .footer-contact-column{grid-column:auto;display:block}
    .footer-contact-column h3,.footer-contact-column .footer-section-line{grid-column:auto}
    .footer-hours{margin-top:1rem;padding-top:.85rem;padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}
    .footer-authority-card{max-width:330px}
    .footer-unified-bottom{display:block;margin-top:2.4rem}
    .footer-unified-bottom p+p{margin-top:.45rem}
}


/* =========================================================
   Ajuste V71 · Footer editable y logo UNESUM blanco
   ========================================================= */
.footer-unesum-logo-white{
    width:88px;
    height:104px;
    filter:brightness(0) invert(1) drop-shadow(0 8px 18px rgba(0,0,0,.32));
    opacity:.97;
}
.footer-unified .visual-editable{
    max-width:100%;
}
.footer-unified .visual-editable-block{
    display:inline-block;
}
.footer-unified .visual-pencil{
    width:28px;
    height:28px;
    right:-13px;
    top:-13px;
    border-width:2px;
    font-size:.68rem;
}
.footer-authority-card.visual-image-editable{
    position:relative;
}
.footer-authority-image-pencil{
    top:12px!important;
    right:12px!important;
    width:38px;
    height:38px;
}
.visual-editor-active .footer-unified .visual-editable:hover{
    outline-color:#ffd15c;
    background:rgba(255,209,92,.08);
}
@media(max-width:767px){
    .footer-unesum-logo-white{width:76px;height:90px}
}

/* =========================================================
   Ajuste V71 · Logo híbrido + fotografía de Rectorado estable
   ========================================================= */
.footer-unesum-logo-hybrid{
    width:88px;
    height:104px;
    object-fit:contain;
    filter:drop-shadow(0 8px 18px rgba(0,0,0,.34));
    opacity:1;
}
@media(max-width:767px){
    .footer-unesum-logo-hybrid{width:76px;height:90px}
}

/* =========================================================
   V71 · Mejora de zoom de escritorio y desplazamiento horizontal
   Cuando el navegador se amplía en un equipo con mouse/trackpad,
   la página conserva un ancho mínimo navegable y permite desplazarse
   a izquierda/derecha. En teléfonos/tablets táctiles sigue siendo responsive.
   ========================================================= */
html,body{
    max-width:none;
}
@media (hover:hover) and (pointer:fine) and (min-width:680px) and (max-width:1199.98px){
    html,
    body{
        overflow-x:auto!important;
    }
    body{
        min-width:1120px;
    }
    .footer-unified{
        overflow-x:visible;
    }
}

/* Logo del footer: no recortar el arco exterior y mantener el escudo a color. */
.footer-brand-lockup{
    overflow:visible;
}
.footer-unesum-logo-hybrid{
    flex:0 0 96px;
    width:96px;
    height:122px;
    object-fit:contain;
    object-position:center;
    overflow:visible;
}
@media(max-width:767px){
    .footer-unesum-logo-hybrid{
        flex-basis:82px;
        width:82px;
        height:105px;
    }
}

/* =========================================================
   V71 · Logo del footer suministrado por la institución
   Muestra UNESUM_ACTUA.png tal como fue editado, sin filtros de color.
   ========================================================= */
.footer-unesum-logo-hybrid{
    filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))!important;
    opacity:1!important;
    object-fit:contain!important;
}

/* =========================================================
   V71 · Editor de encuadre de imágenes
   Permite arrastrar y ampliar la fotografía antes de publicarla.
   ========================================================= */
.image-editor-card{
    width:min(680px,100%);
    max-height:min(92vh,860px);
    overflow:auto;
}
.image-crop-workspace{
    margin:.95rem 0 1.15rem;
    padding:1rem;
    border:1px solid #dce4df;
    border-radius:14px;
    background:#f5f7f5;
}
.image-crop-workspace[hidden]{display:none}
.image-crop-stage{
    --crop-ratio:1.3333;
    position:relative;
    width:min(100%,560px);
    aspect-ratio:var(--crop-ratio);
    max-height:430px;
    margin:0 auto;
    overflow:hidden;
    border-radius:12px;
    background:#173e31;
    box-shadow:inset 0 0 0 2px rgba(255,255,255,.6),0 10px 26px rgba(4,62,42,.15);
    cursor:grab;
    touch-action:none;
    user-select:none;
}
.image-crop-stage.is-dragging{cursor:grabbing}
.image-crop-stage>img{
    position:absolute;
    left:0;
    top:0;
    max-width:none!important;
    max-height:none!important;
    object-fit:fill!important;
    pointer-events:none;
    user-select:none;
    will-change:transform,width,height;
}
.image-crop-grid{
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(to right,transparent 33.15%,rgba(255,255,255,.42) 33.15%,rgba(255,255,255,.42) 33.55%,transparent 33.55%,transparent 66.45%,rgba(255,255,255,.42) 66.45%,rgba(255,255,255,.42) 66.85%,transparent 66.85%),
        linear-gradient(to bottom,transparent 33.15%,rgba(255,255,255,.42) 33.15%,rgba(255,255,255,.42) 33.55%,transparent 33.55%,transparent 66.45%,rgba(255,255,255,.42) 66.45%,rgba(255,255,255,.42) 66.85%,transparent 66.85%);
    box-shadow:inset 0 0 0 2px rgba(255,255,255,.86);
}
.image-crop-help{
    margin:.75rem 0 .7rem;
    color:#395b4c;
    font-size:.8rem;
    text-align:center;
}
.image-crop-help i{color:var(--color-red);margin-right:.3rem}
.image-crop-controls{
    display:grid;
    grid-template-columns:auto minmax(120px,1fr) auto;
    align-items:center;
    gap:.8rem;
}
.image-crop-controls label{
    margin:0;
    color:#315542;
    font-size:.8rem;
    font-weight:700;
}
.image-crop-controls input[type=range]{width:100%;accent-color:var(--color-green)}
@media(max-width:575px){
    .image-editor-card{padding:1rem}
    .image-crop-workspace{padding:.7rem}
    .image-crop-controls{grid-template-columns:1fr}
    .image-crop-controls .btn{justify-self:start}
}

/* =========================================================
   V71 · Footer con Rectorado + Vicerrectorado
   Contacto simplificado debajo de las dos autoridades.
   ========================================================= */
.footer-dual-authority .footer-dual-grid{
    grid-template-columns:minmax(300px,1.18fr) minmax(210px,.7fr) minmax(560px,1.75fr);
    gap:clamp(2rem,3vw,4rem);
    align-items:start;
}
.footer-authorities-area{
    min-width:0;
}
.footer-authorities-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1.2rem;
    align-items:start;
}
.footer-authorities-grid .footer-authority-card{
    height:100%;
    display:flex;
    flex-direction:column;
}
.footer-authorities-grid .footer-authority-card>img{
    aspect-ratio:4/3;
    min-height:210px;
    object-fit:cover;
    object-position:center 24%;
}
.footer-authorities-grid .footer-authority-copy{
    flex:1;
    min-height:104px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:1rem 1.1rem 1.05rem;
}
.footer-authorities-grid .footer-authority-copy strong{
    font-size:.92rem;
}
.footer-authorities-grid .footer-authority-copy>span{
    margin-top:.5rem;
}
.footer-support-panel{
    margin-top:1.25rem;
    display:grid;
    grid-template-columns:minmax(165px,.8fr) repeat(3,minmax(0,1fr));
    align-items:stretch;
    overflow:visible;
    border:1px solid rgba(255,255,255,.16);
    border-radius:16px;
    background:rgba(3,58,42,.45);
    box-shadow:0 14px 34px rgba(0,0,0,.12);
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
}
.footer-support-panel-title,
.footer-support-panel-item{
    min-width:0;
    padding:1rem 1.05rem;
}
.footer-support-panel-title{
    display:flex;
    align-items:center;
    gap:.75rem;
}
.footer-support-panel-title small{
    display:block;
    margin-top:.18rem;
    color:rgba(255,255,255,.58);
    font-size:.65rem;
    line-height:1.35;
}
.footer-support-panel-icon{
    flex:0 0 46px;
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.24);
    color:#f3d59b;
    background:rgba(255,255,255,.06);
    font-size:1.2rem;
}
.footer-support-panel-item{
    display:grid;
    grid-template-columns:24px minmax(0,1fr);
    gap:.6rem;
    align-content:center;
    border-left:1px solid rgba(255,255,255,.12);
}
.footer-support-panel-item>i{
    color:#f1c98c;
    margin-top:.08rem;
}
.footer-support-panel-item strong,
.footer-support-panel-item span,
.footer-support-panel-item small{
    display:block;
}
.footer-support-panel-item strong{
    color:#fff;
    font-size:.76rem;
    line-height:1.4;
}
.footer-support-panel-item span{
    margin-top:.16rem;
    color:rgba(255,255,255,.78);
    font-size:.72rem;
    line-height:1.4;
}
.footer-support-panel-item small{
    margin-top:.13rem;
    color:rgba(255,255,255,.56);
    font-size:.64rem;
}
.footer-support-panel-item a{
    color:rgba(255,255,255,.82);
    text-decoration:none;
    word-break:break-word;
}
.footer-support-panel-item a:hover{
    color:#fff;
    text-decoration:underline;
}
.footer-dual-authority .footer-authority-image-pencil{
    z-index:30;
}

@media(max-width:1399px){
    .footer-dual-authority .footer-dual-grid{
        grid-template-columns:minmax(270px,1fr) minmax(190px,.65fr) minmax(500px,1.55fr);
        gap:2rem;
    }
    .footer-support-panel{
        grid-template-columns:1fr 1.1fr 1.1fr;
    }
    .footer-support-panel-title{
        grid-column:1/4;
        border-bottom:1px solid rgba(255,255,255,.12);
    }
    .footer-support-panel-item:first-of-type{
        border-left:0;
    }
}

@media(max-width:1199px){
    .footer-dual-authority .footer-dual-grid{
        grid-template-columns:1.05fr .75fr;
    }
    .footer-authorities-area{
        grid-column:1/3;
    }
    .footer-authorities-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:767px){
    .footer-dual-authority .footer-dual-grid{
        grid-template-columns:1fr;
    }
    .footer-authorities-area{
        grid-column:auto;
    }
    .footer-authorities-grid{
        grid-template-columns:1fr;
        gap:1.6rem;
    }
    .footer-authorities-grid .footer-authority-card{
        max-width:100%;
    }
    .footer-support-panel{
        grid-template-columns:1fr;
    }
    .footer-support-panel-title{
        grid-column:auto;
    }
    .footer-support-panel-item,
    .footer-support-panel-item:first-of-type{
        border-left:0;
        border-top:1px solid rgba(255,255,255,.12);
    }
}

/* =========================================================
   V71 · Footer simplificado en tres columnas
   Información | Enlaces | Contacto
   ========================================================= */
.footer-simple-three .footer-simple-grid{
    grid-template-columns:minmax(320px,1.2fr) minmax(220px,.72fr) minmax(320px,1fr);
    gap:clamp(2.2rem,4vw,5rem);
    align-items:start;
}
.footer-simple-three .footer-brand-column{
    max-width:520px;
}
.footer-simple-three .footer-links-column{
    min-width:0;
}
.footer-simple-three .footer-contact-simple{
    min-width:0;
    display:block;
    grid-column:auto;
}
.footer-simple-three .footer-contact-simple h3,
.footer-simple-three .footer-contact-simple .footer-section-line{
    grid-column:auto;
}
.footer-simple-three .footer-contact-list{
    gap:.8rem;
}
.footer-simple-three .footer-contact-list p{
    font-size:.86rem;
    line-height:1.55;
}
.footer-simple-three .footer-contact-list>p>i{
    margin-top:.15rem;
}
.footer-simple-three .footer-support-person strong{
    font-size:.86rem;
}
.footer-simple-three .footer-support-person small{
    margin-top:.14rem;
    font-size:.74rem;
}
.footer-simple-three .footer-hours{
    margin-top:1.25rem;
    padding-top:1rem;
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
}
.footer-simple-three .footer-hours strong{
    font-size:.86rem;
}
.footer-simple-three .footer-hours span{
    margin-top:.35rem;
    font-size:.82rem;
}

@media(max-width:991px){
    .footer-simple-three .footer-simple-grid{
        grid-template-columns:1fr 1fr;
    }
    .footer-simple-three .footer-contact-simple{
        grid-column:1/3;
        display:grid;
        grid-template-columns:1fr 1fr;
        column-gap:2rem;
    }
    .footer-simple-three .footer-contact-simple h3,
    .footer-simple-three .footer-contact-simple .footer-section-line{
        grid-column:1/3;
    }
    .footer-simple-three .footer-hours{
        margin-top:0;
        padding-top:0;
        padding-left:2rem;
        border-top:0;
        border-left:1px solid rgba(255,255,255,.14);
    }
}

@media(max-width:767px){
    .footer-simple-three .footer-simple-grid{
        grid-template-columns:1fr;
        gap:2.4rem;
    }
    .footer-simple-three .footer-contact-simple{
        grid-column:auto;
        display:block;
    }
    .footer-simple-three .footer-contact-simple h3,
    .footer-simple-three .footer-contact-simple .footer-section-line{
        grid-column:auto;
    }
    .footer-simple-three .footer-hours{
        margin-top:1rem;
        padding-top:.9rem;
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.14);
    }
}
