.suc-catalog-page{margin:0;background:#f7f8fa;color:#16304d}.suc-archive-hero{padding:82px 0 74px;background:linear-gradient(135deg,#012959,#06447e);color:#fff}.suc-archive-hero span{font-weight:800;letter-spacing:.14em;font-size:.76rem;color:#91ca6d}.suc-archive-hero h1{margin:12px 0;font:700 clamp(2.5rem,5vw,4.5rem)/1.05 Georgia,serif}.suc-archive-hero p{max-width:650px;margin:0;font-size:1.08rem;line-height:1.65;color:rgba(255,255,255,.82)}.suc-archive-content{padding:42px 0 90px}.suc-archive-filters{position:relative;z-index:4;display:grid;grid-template-columns:1.35fr repeat(3,1fr) auto;gap:12px;align-items:end;margin-top:-72px;padding:22px;background:#fff;border-radius:16px;box-shadow:0 16px 40px rgba(1,41,89,.16)}.suc-archive-filters label{display:block}.suc-archive-filters label span{display:block;margin-bottom:7px;font-size:.75rem;font-weight:800;color:#012959}.suc-archive-filters input,.suc-archive-filters select{width:100%;height:44px;padding:0 12px;border:1px solid #dbe2e8;border-radius:8px;background:#fff;color:#16304d}.suc-filter-reset{height:44px;padding:0 18px;border:0;border-radius:8px;background:#f26801;color:#fff;font-weight:800;cursor:pointer}.suc-results-bar{display:flex;justify-content:space-between;margin:34px 0 18px;color:#526477}.suc-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.suc-archive-card[hidden]{display:none}.suc-archive-card{overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(1,41,89,.1);transition:.25s}.suc-archive-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(1,41,89,.16)}.suc-archive-card-open{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.suc-archive-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#e8edf1}.suc-archive-media>img,.suc-archive-media>.suc-image-placeholder{width:100%;height:100%;object-fit:cover;transition:transform .4s}.suc-archive-card:hover .suc-archive-media>img{transform:scale(1.04)}.suc-archive-pill{position:absolute;top:14px;left:14px;max-width:calc(100% - 28px);padding:6px 10px;border-radius:99px;background:#f26801;color:#fff;font-size:.7rem;font-weight:800;text-transform:uppercase}.suc-archive-body{display:block;padding:18px}.suc-archive-body strong{display:block;margin-bottom:8px;font:700 1.35rem Georgia,serif;color:#012959}.suc-archive-body small{display:block;margin-bottom:9px;color:#50942b;font-weight:700}.suc-archive-body>span:not(.suc-archive-pill){display:-webkit-box;min-height:43px;overflow:hidden;color:#5b6b7d;font-size:.88rem;line-height:1.55;-webkit-line-clamp:2;-webkit-box-orient:vertical}.suc-archive-body b{display:block;margin-top:16px;color:#012959}.suc-no-results{text-align:center;padding:60px 20px}.suc-no-results[hidden]{display:none}.suc-archive-footer{padding:42px 0;background:#001f44;color:#fff}.suc-archive-footer .suc-shell{display:flex;align-items:center;justify-content:space-between;gap:25px}.suc-archive-footer strong{font-size:1.3rem}.suc-archive-footer p{margin:0;color:rgba(255,255,255,.7)}.suc-archive-footer span{font-size:.75rem;color:rgba(255,255,255,.62)}
body.suc-modal-open{overflow:hidden}.suc-archive-modal[hidden],.suc-archive-lightbox[hidden]{display:none!important}.suc-archive-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:28px}.suc-archive-backdrop{position:absolute;inset:0;background:rgba(0,18,39,.82);backdrop-filter:blur(5px)}.suc-archive-dialog{position:relative;z-index:1;width:min(1120px,100%);max-height:calc(100vh - 56px);overflow:auto;border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.4)}.suc-archive-close{position:absolute;z-index:8;top:14px;right:14px;width:42px;height:42px;border:0;border-radius:50%;background:#012959;color:#fff;font-size:28px;cursor:pointer}.suc-archive-modal-grid{display:grid;grid-template-columns:1.15fr .85fr;min-height:610px}.suc-archive-gallery{padding:18px;background:#edf1f3}.suc-archive-main{position:relative;overflow:hidden;border-radius:14px}.suc-archive-main>button:first-child{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.suc-archive-main img,.suc-archive-noimage{display:block;width:100%;height:470px;object-fit:cover}.suc-archive-main .prev,.suc-archive-main .next,.suc-archive-lightbox .prev,.suc-archive-lightbox .next{position:absolute;z-index:3;top:50%;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#012959;font-size:26px;transform:translateY(-50%);cursor:pointer}.suc-archive-main .prev,.suc-archive-lightbox .prev{left:14px}.suc-archive-main .next,.suc-archive-lightbox .next{right:14px}.suc-archive-main [data-counter]{position:absolute;right:14px;bottom:14px;padding:6px 10px;border-radius:99px;background:rgba(0,31,68,.82);color:#fff;font-size:.75rem}.suc-archive-thumbs{display:flex;gap:9px;overflow:auto;margin-top:10px}.suc-archive-thumbs button{flex:0 0 80px;height:62px;padding:0;overflow:hidden;border:3px solid transparent;border-radius:8px;opacity:.65}.suc-archive-thumbs button.active{border-color:#f26801;opacity:1}.suc-archive-thumbs img{width:100%;height:100%;object-fit:cover}.suc-archive-details{padding:46px 36px}.suc-archive-eyebrow{color:#50942b;font-size:.74rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.suc-archive-details h2{margin:10px 0 18px;font:700 clamp(2rem,3vw,2.8rem)/1.08 Georgia,serif;color:#012959}.suc-archive-copy{color:#526477;line-height:1.7}.suc-archive-details dl{margin-top:24px;border-top:1px solid #dfe5ea}.suc-archive-details dl div{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid #dfe5ea}.suc-archive-details dt{font-weight:800;color:#012959}.suc-archive-details dd{margin:0;color:#596a7c}.suc-archive-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.suc-archive-actions a{padding:12px 17px;border-radius:7px;background:#f26801;color:#fff;font-weight:800}.suc-archive-lightbox{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:65px;background:rgba(0,10,24,.97)}.suc-archive-lightbox>button:first-child{position:absolute;z-index:4;top:18px;right:22px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#012959;font-size:28px}.suc-archive-lightbox img{max-width:100%;max-height:calc(100vh - 100px);object-fit:contain}
@media(max-width:980px){.suc-archive-filters{grid-template-columns:repeat(2,1fr)}.suc-archive-grid{grid-template-columns:repeat(2,1fr)}.suc-archive-modal-grid{display:block}.suc-archive-main img,.suc-archive-noimage{height:420px}}@media(max-width:700px){.suc-archive-hero{padding:60px 0 90px}.suc-archive-filters{grid-template-columns:1fr;margin-top:-72px}.suc-archive-grid{grid-template-columns:1fr}.suc-archive-modal{padding:0}.suc-archive-dialog{width:100%;max-height:100vh;border-radius:0}.suc-archive-gallery{padding:0}.suc-archive-main{border-radius:0}.suc-archive-main img,.suc-archive-noimage{height:42vh;min-height:280px}.suc-archive-thumbs{padding:9px 12px;margin:0}.suc-archive-details{padding:28px 18px 36px}.suc-archive-footer .suc-shell{display:block;text-align:center}.suc-archive-footer p{margin:10px 0}.suc-archive-lightbox{padding:60px 10px}}

/* Aislamiento visual frente a estilos globales de Elementor. */
.suc-catalog-page{--suc-radius:10px;--suc-navy:#012959;--suc-green:#50942b;--suc-orange:#f26801}
.suc-catalog-page :is(.suc-archive-filters,.suc-archive-card,.suc-archive-dialog,.suc-archive-main,.suc-archive-thumb,.suc-filter-reset,.suc-archive-action){border-radius:var(--suc-radius)!important}
.suc-catalog-page .suc-archive-grid{align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}
.suc-catalog-page .suc-archive-card{height:100%;min-width:0;border:1px solid rgba(1,41,89,.1)!important;border-radius:var(--suc-radius)!important;background:#fff!important;color:#16304d!important;box-shadow:0 8px 24px rgba(1,41,89,.09);transition:transform .2s ease,box-shadow .2s ease}
.suc-catalog-page .suc-archive-card:hover,.suc-catalog-page .suc-archive-card:focus-within{border-color:rgba(80,148,43,.42)!important;background:#fff!important;color:#16304d!important;box-shadow:0 13px 30px rgba(1,41,89,.14);transform:translateY(-3px)}
.suc-catalog-page .suc-archive-card-open,.suc-catalog-page .suc-archive-card-open:hover,.suc-catalog-page .suc-archive-card-open:focus,.suc-catalog-page .suc-archive-card-open:focus-visible{display:flex!important;width:100%!important;height:100%!important;min-width:0!important;flex-direction:column!important;padding:0!important;border:0!important;border-radius:var(--suc-radius)!important;background:transparent!important;color:#16304d!important;box-shadow:none!important;text-align:left!important;white-space:normal!important;outline:0!important;transform:none!important;appearance:none!important}
.suc-catalog-page .suc-archive-media{display:block!important;width:100%!important;height:220px!important;min-height:220px!important;aspect-ratio:auto!important;overflow:hidden;border-radius:var(--suc-radius) var(--suc-radius) 0 0!important;background:#e8edf1}
.suc-catalog-page .suc-archive-media>img,.suc-catalog-page .suc-archive-media>.suc-image-placeholder{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;border-radius:0!important}
.suc-catalog-page .suc-archive-body{display:flex!important;min-width:0;flex:1;flex-direction:column;padding:18px!important;background:#fff!important;color:#16304d!important;text-align:left!important}
.suc-catalog-page .suc-archive-body :is(strong,small,span,b){max-width:100%;min-width:0;white-space:normal!important;overflow-wrap:anywhere;word-break:normal}
.suc-catalog-page .suc-archive-body>strong{display:-webkit-box;min-height:2.55em;overflow:hidden;line-height:1.27;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.suc-catalog-page .suc-archive-body small{line-height:1.4}
.suc-catalog-page .suc-archive-body>span:not(.suc-archive-pill):not(.suc-card-category-pill){width:100%;white-space:normal!important;overflow-wrap:anywhere}
.suc-catalog-page .suc-archive-body b{margin-top:auto;padding-top:16px;color:var(--suc-navy)!important}
.suc-catalog-page .suc-filter-reset,.suc-catalog-page .suc-filter-reset:hover,.suc-catalog-page .suc-filter-reset:focus-visible,.suc-catalog-page .suc-archive-action,.suc-catalog-page .suc-archive-action:hover,.suc-catalog-page .suc-archive-action:focus-visible{border-color:var(--suc-orange)!important;background:var(--suc-orange)!important;color:#fff!important;box-shadow:none!important;outline:0!important}
.suc-catalog-page :is(input,select,button,a):focus-visible{outline:3px solid rgba(80,148,43,.3);outline-offset:2px}
.suc-catalog-page .suc-archive-main img{border-radius:var(--suc-radius)!important}
@media(max-width:980px){.suc-catalog-page .suc-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.suc-catalog-page .suc-archive-grid{grid-template-columns:1fr}.suc-catalog-page .suc-archive-dialog{border-radius:0!important}}

/* Controles de modal 2.2.1: prioridad superior a los estilos globales de Elementor. */
.suc-catalog-page .suc-archive-close,
.suc-catalog-page .suc-archive-close:hover,
.suc-catalog-page .suc-archive-close:focus-visible,
.suc-catalog-page .suc-archive-main .prev,
.suc-catalog-page .suc-archive-main .next,
.suc-catalog-page .suc-archive-main .prev:hover,
.suc-catalog-page .suc-archive-main .next:hover,
.suc-catalog-page .suc-archive-main .prev:focus-visible,
.suc-catalog-page .suc-archive-main .next:focus-visible {
    display: inline-flex !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 0 3px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: var(--suc-navy) !important;
    color: #fff !important;
    box-shadow: 0 5px 14px rgba(1,41,89,.22) !important;
    font-family: Arial, sans-serif !important;
    font-size: 28px !important;
    line-height: 1 !important;
    text-align: center !important;
}

.suc-catalog-page .suc-archive-close,
.suc-catalog-page .suc-archive-close:hover,
.suc-catalog-page .suc-archive-close:focus-visible {
    padding: 0 !important;
    font-size: 25px !important;
}

.suc-catalog-page .suc-archive-lightbox .prev,
.suc-catalog-page .suc-archive-lightbox .next,
.suc-catalog-page .suc-archive-lightbox .prev:hover,
.suc-catalog-page .suc-archive-lightbox .next:hover,
.suc-catalog-page .suc-archive-lightbox .prev:focus-visible,
.suc-catalog-page .suc-archive-lightbox .next:focus-visible,
.suc-catalog-page .suc-archive-lightbox > button:first-child,
.suc-catalog-page .suc-archive-lightbox > button:first-child:hover,
.suc-catalog-page .suc-archive-lightbox > button:first-child:focus-visible {
    display: inline-flex !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 0 3px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: var(--suc-navy) !important;
    color: #fff !important;
    box-shadow: 0 5px 14px rgba(0,0,0,.28) !important;
    font-family: Arial, sans-serif !important;
    font-size: 29px !important;
    line-height: 1 !important;
    text-align: center !important;
}

.suc-catalog-page .suc-archive-thumbs button,
.suc-catalog-page .suc-archive-thumbs button:hover,
.suc-catalog-page .suc-archive-thumbs button:focus-visible {
    padding: 0 !important;
    border: 3px solid transparent !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
}

.suc-catalog-page .suc-archive-thumbs button.active,
.suc-catalog-page .suc-archive-thumbs button.active:hover,
.suc-catalog-page .suc-archive-thumbs button.active:focus-visible {
    border-color: var(--suc-orange) !important;
}

.suc-catalog-page .suc-archive-main > button:first-child,
.suc-catalog-page .suc-archive-main > button:first-child:hover,
.suc-catalog-page .suc-archive-main > button:first-child:focus-visible {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.suc-catalog-page .suc-archive-details dl div {
    grid-template-columns: minmax(135px, 145px) minmax(0, 1fr) !important;
    align-items: start;
}

.suc-catalog-page .suc-archive-details dt,
.suc-catalog-page .suc-archive-details dd {
    min-width: 0;
    overflow-wrap: anywhere;
}

.suc-catalog-page .suc-archive-pill {
    border-radius: 999px !important;
    background: var(--suc-orange) !important;
    color: #fff !important;
}

/* La categoría pertenece al contenido del card, no a la fotografía. */
.suc-catalog-page .suc-archive-body > span.suc-card-category-pill {
    display: block !important;
    width: max-content !important;
    align-self: flex-start !important;
    flex: 0 1 auto !important;
    max-width: 100%;
    min-height: 0 !important;
    margin: 0 0 10px;
    padding: 4px 9px;
    overflow: hidden;
    border: 1px solid var(--suc-orange, #f26801);
    border-radius: 999px;
    background: #fff3e9;
    color: #d65300;
    font: 800 .66rem/1.2 Arial, sans-serif;
    letter-spacing: .015em;
    box-sizing: border-box;
    text-overflow: ellipsis !important;
    text-transform: uppercase;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    -webkit-box-orient: initial;
    -webkit-line-clamp: unset;
}

@media(max-width:700px) {
    [data-suc-card-layout][data-mobile-cols="2"] .suc-archive-body > span.suc-card-category-pill {
        max-width: 100%;
        padding: 4px 7px;
        font-size: .59rem;
    }
}

@media(max-width:520px) {
    .suc-catalog-page .suc-archive-details dl div {
        display: block !important;
    }
    .suc-catalog-page .suc-archive-details dt { margin-bottom: 5px; }
}

/* Fecha premium para tarjetas de eventos del catálogo. */
.suc-catalog-page .suc-archive-date-badge {
    position: absolute;
    z-index: 3;
    top: 14px;
    right: 14px;
    display: block;
    width: 58px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 7px 18px rgba(1,31,68,.22);
    color: var(--suc-navy);
    text-align: center;
}

.suc-catalog-page .suc-archive-date-badge b {
    display: block;
    margin: 0;
    padding: 6px 4px 5px;
    background: var(--suc-orange) !important;
    color: #fff !important;
    font-family: Arial, sans-serif;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .04em;
    line-height: 1;
    text-transform: uppercase;
}

.suc-catalog-page .suc-archive-date-badge strong {
    display: block;
    margin: 0;
    padding: 7px 4px 8px;
    color: var(--suc-navy) !important;
    font-family: Georgia, serif;
    font-size: 1.55rem;
    line-height: 1;
}

.suc-catalog-page .suc-archive-tool,
.suc-catalog-page .suc-archive-tool:hover,
.suc-catalog-page .suc-archive-tool:focus-visible { min-height:43px; padding:10px 14px!important; border:1px solid #d6dee5!important; border-radius:10px!important; background:#fff!important; color:var(--suc-navy)!important; box-shadow:none!important; font-size:.82rem; font-weight:800; }
.suc-catalog-page .suc-archive-tool.active { border-color:var(--suc-orange)!important; color:var(--suc-orange)!important; }
.suc-catalog-page .suc-archive-facts { display:flex!important; min-height:0!important; flex-wrap:wrap; gap:6px; margin:0 0 12px; overflow:visible!important; }
.suc-catalog-page .suc-archive-facts i { padding:5px 8px; border-radius:999px; background:#f1f4f6; color:#526477; font-size:.68rem; font-style:normal; font-weight:750; line-height:1.1; }

.suc-archive .suc-archive-details { min-width:0; }
.suc-archive .suc-archive-actions { display:grid!important; width:100%!important; grid-template-columns:42px 42px minmax(0,1fr); gap:10px!important; }
.suc-archive .suc-archive-tool,
.suc-archive .suc-archive-tool:hover,
.suc-archive .suc-archive-tool:focus-visible { display:inline-flex!important; width:42px!important; min-width:42px!important; height:42px!important; min-height:42px!important; align-items:center!important; justify-content:center!important; padding:0!important; border-radius:50%!important; }
.suc-archive .suc-archive-tool svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.suc-archive .suc-archive-tool.active svg { fill:var(--suc-orange); stroke:var(--suc-orange); }
.suc-archive .suc-archive-actions > :is(a,.suc-archive-action-button) { grid-column:1/-1; display:flex!important; width:100%!important; max-width:none!important; min-width:0!important; min-height:46px; align-items:center; justify-content:center; margin:0!important; padding:12px 18px!important; text-align:center; white-space:normal; }
.suc-archive .suc-archive-action-button,
.suc-archive .suc-archive-action-button:hover,
.suc-archive .suc-archive-action-button:focus-visible { border:0!important; border-radius:10px!important; background:var(--suc-orange)!important; color:#fff!important; font-weight:800; }
.suc-archive .suc-archive-details dd a { color:var(--suc-green)!important; font-weight:750; text-decoration:none; }

/* Página de resultados de búsqueda. */
.suc-search-page .suc-search-hero { position:relative; overflow:hidden; padding-bottom:92px; }
.suc-search-page .suc-search-hero:after { content:''; position:absolute; right:-90px; bottom:-170px; width:430px; height:430px; border:75px solid rgba(255,255,255,.055); border-radius:50%; pointer-events:none; }
.suc-search-page .suc-search-hero h1 { max-width:900px; overflow-wrap:anywhere; }
.suc-search-page .suc-search-filters { grid-template-columns:minmax(240px,1.6fr) minmax(170px,.8fr) minmax(170px,.8fr) auto auto; }
.suc-search-page .suc-search-submit,.suc-search-page .suc-search-submit:hover,.suc-search-page .suc-search-submit:focus-visible { height:44px; padding:0 24px; border:0!important; border-radius:8px; background:var(--suc-orange,#f26801)!important; color:#fff!important; box-shadow:none!important; font-weight:850; cursor:pointer; }
.suc-search-page .suc-filter-reset,.suc-search-page .suc-filter-reset:hover,.suc-search-page .suc-filter-reset:focus-visible { border:1px solid #dbe2e8!important; background:#fff!important; color:var(--suc-navy,#012959)!important; box-shadow:none!important; }
.suc-search-page .suc-results-bar { align-items:center; gap:25px; }
.suc-search-page .suc-results-bar strong { color:var(--suc-navy,#012959); }
.suc-search-page .suc-results-bar>span { color:#6b7988; font-size:.86rem; }
.suc-search-page .suc-no-results { margin:20px 0 0; padding:70px 25px; border:1px solid #e0e6eb; border-radius:12px; background:#fff; box-shadow:0 10px 30px rgba(1,41,89,.07); }
.suc-search-page .suc-no-results-icon { display:grid; width:62px; height:62px; place-items:center; margin:0 auto 18px; border-radius:50%; background:#edf5e9; color:var(--suc-green,#50942b); font-size:2rem; font-weight:800; }
.suc-search-page .suc-no-results h2 { margin:0 0 10px; color:var(--suc-navy,#012959); font:700 2rem Georgia,serif; }
.suc-search-page .suc-no-results p { max-width:590px; margin:0 auto 25px; color:#657487; }
.suc-search-page .suc-no-results>div { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; }
.suc-search-page .suc-no-results a { padding:10px 15px; border:1px solid #dbe2e8!important; border-radius:8px; background:#fff!important; color:var(--suc-navy,#012959)!important; font-weight:800; text-decoration:none; }
.suc-search-page .suc-no-results a:hover { border-color:var(--suc-orange,#f26801)!important; color:var(--suc-orange,#f26801)!important; }
@media(max-width:980px){.suc-search-page .suc-search-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.suc-search-page .suc-search-submit,.suc-search-page .suc-filter-reset{width:100%}}
@media(max-width:700px){.suc-search-page .suc-search-hero{padding-bottom:105px}.suc-search-page .suc-search-filters{grid-template-columns:1fr}.suc-search-page .suc-results-bar{display:block}.suc-search-page .suc-results-bar>span{display:block;margin-top:7px}.suc-search-page .suc-no-results{padding:48px 18px}.suc-search-page .suc-no-results>div{display:grid}.suc-search-page .suc-no-results a{text-align:center}}

/* Zona segura móvil para modales y visor de imágenes de los archivos. */
@media (max-width: 820px) {
    .suc-archive-modal {
        align-items:start !important;
        place-items:start center !important;
        padding:calc(56px + env(safe-area-inset-top, 0px)) 10px 10px !important;
    }
    .suc-archive-dialog {
        width:100% !important;
        max-height:calc(100vh - 76px) !important;
        max-height:calc(100dvh - 76px - env(safe-area-inset-top, 0px)) !important;
        border-radius:16px 16px 0 0 !important;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
    }
    .suc-archive-close,
    .suc-archive-lightbox > button:first-child {
        position:fixed !important;
        z-index:1000002 !important;
        top:calc(64px + env(safe-area-inset-top, 0px)) !important;
        right:18px !important;
    }
    .suc-archive-lightbox {
        padding:calc(120px + env(safe-area-inset-top, 0px)) 12px 30px !important;
    }
    .suc-archive-lightbox img {
        max-height:calc(100dvh - 165px - env(safe-area-inset-top, 0px)) !important;
    }
}
.suc-archive-footer a{color:#fff!important;font-size:.78rem;font-weight:800;text-decoration:none}

.suc-event-notice{position:absolute;right:14px;bottom:14px;padding:7px 11px;border-radius:999px;background:#50942b;color:#fff;font-size:.7rem;font-weight:900;text-transform:uppercase;box-shadow:0 5px 15px rgba(0,0,0,.2)}
.suc-past-events{margin-top:72px;padding-top:50px;border-top:1px solid #dce4ea}.suc-past-heading span{color:#50942b;font-size:.72rem;font-weight:900;letter-spacing:.13em}.suc-past-heading h2{margin:8px 0;color:#012959;font:700 clamp(2rem,4vw,3rem)/1.08 Georgia,serif}.suc-past-heading p{margin:0 0 26px;color:#657487}.suc-past-grid .suc-archive-card{opacity:.88}.suc-past-grid .suc-archive-media:after{content:'FINALIZADO';position:absolute;right:14px;bottom:14px;padding:6px 9px;border-radius:999px;background:rgba(1,41,89,.88);color:#fff;font-size:.66rem;font-weight:900}

/* Unified listing cards — same component proportions as the homepage. */
.suc-catalog-page .suc-archive-card { border-radius:10px!important; }
.suc-catalog-page .suc-archive-card-open { border-radius:10px!important; }
.suc-catalog-page .suc-archive-media {
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4/3!important;
    border-radius:10px 10px 0 0!important;
}
.suc-catalog-page .suc-archive-body { padding:20px 20px 22px!important; }
.suc-catalog-page .suc-archive-body>strong {
    display:-webkit-box!important;
    min-height:2.5em;
    margin:0 0 8px!important;
    overflow:hidden;
    color:var(--suc-navy)!important;
    font-family:var(--suc-font-display)!important;
    font-size:1.32rem!important;
    font-weight:700!important;
    line-height:1.25!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.suc-catalog-page .suc-archive-body .suc-review-rating {
    display:flex!important;
    min-height:0!important;
    align-items:center;
    flex-wrap:wrap;
    gap:5px 7px;
    margin:0 0 10px!important;
    color:#657487;
    font-family:Arial,sans-serif!important;
    font-size:.78rem!important;
    line-height:1.25!important;
}
.suc-catalog-page .suc-archive-body .suc-review-stars {
    display:inline-block!important;
    flex:0 0 auto;
    min-height:0!important;
    margin:0!important;
    font-family:Arial,sans-serif!important;
    font-size:1rem!important;
    line-height:1!important;
    overflow:hidden;
    white-space:nowrap!important;
}
.suc-catalog-page .suc-archive-body .suc-review-rating>strong {
    display:inline!important;
    min-height:0!important;
    margin:0!important;
    color:var(--suc-navy)!important;
    font:800 .82rem/1 Arial,sans-serif!important;
    letter-spacing:0!important;
}
.suc-catalog-page .suc-archive-body .suc-review-rating>small {
    display:block!important;
    flex:1 0 100%;
    margin:0!important;
    color:#6a7887!important;
    font-size:.72rem!important;
    font-weight:400!important;
    line-height:1.25!important;
}
.suc-catalog-page .suc-archive-body>.suc-card-location {
    min-height:0!important;
    margin:0 0 9px!important;
    color:var(--suc-green)!important;
    font-size:.83rem!important;
    font-weight:700!important;
    line-height:1.4!important;
}
.suc-catalog-page .suc-archive-body>.suc-card-summary {
    display:-webkit-box!important;
    width:100%;
    min-height:2.75em!important;
    max-height:2.75em!important;
    margin:0 0 18px!important;
    overflow:hidden!important;
    color:#59697b!important;
    font-size:.88rem!important;
    line-height:1.375!important;
    white-space:normal!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.suc-catalog-page .suc-archive-body>.suc-card-more {
    display:flex!important;
    width:100%;
    align-items:center;
    justify-content:space-between;
    margin-top:auto!important;
    padding-top:4px!important;
    color:var(--suc-navy)!important;
}
@media(max-width:700px){
    .suc-catalog-page [data-suc-card-layout][data-mobile-cols="2"] .suc-archive-body{padding:14px!important}
    .suc-catalog-page [data-suc-card-layout][data-mobile-cols="2"] .suc-archive-body>strong{font-size:1rem!important}
    .suc-catalog-page [data-suc-card-layout][data-mobile-cols="2"] .suc-archive-body>.suc-card-summary{min-height:2.7em!important;max-height:2.7em!important;margin-bottom:14px!important;font-size:.75rem!important;line-height:1.35!important}
    .suc-catalog-page [data-suc-card-layout][data-mobile-cols="2"] .suc-archive-body>.suc-card-location{font-size:.75rem!important}
}

/* 4.9.2: estructura estable para modales de páginas dedicadas. */
.suc-catalog-page .suc-archive-dialog {
    width: min(1120px, calc(100vw - 56px)) !important;
    max-width: 1120px !important;
    overflow: hidden !important;
}
.suc-catalog-page .suc-archive-modal-grid {
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 58%) minmax(320px, 42%) !important;
}
.suc-catalog-page .suc-archive-gallery,
.suc-catalog-page .suc-archive-details {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.suc-catalog-page .suc-archive-gallery { overflow: hidden !important; }
.suc-catalog-page .suc-archive-main {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 440px !important;
    min-height: 440px !important;
    max-height: 440px !important;
}
.suc-catalog-page .suc-archive-main > button:first-child {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}
.suc-catalog-page .suc-archive-main img,
.suc-catalog-page .suc-archive-noimage {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 440px !important;
    min-height: 440px !important;
    max-height: 440px !important;
    object-fit: cover !important;
    object-position: center !important;
}
.suc-catalog-page .suc-archive-thumbs {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: thin;
    overscroll-behavior-inline: contain;
}
.suc-catalog-page .suc-archive-thumbs button {
    flex: 0 0 80px !important;
    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
}
.suc-catalog-page .suc-archive-details {
    overflow-x: hidden !important;
    overflow-y: auto !important;
}
.suc-catalog-page .suc-archive-details :is(h2,p,dt,dd,a,span) {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}
@media (min-width:981px) {
    .suc-catalog-page .suc-archive-dialog {
        height: min(720px, calc(100vh - 56px)) !important;
        max-height: calc(100vh - 56px) !important;
    }
    .suc-catalog-page .suc-archive-modal-grid {
        height: 100% !important;
        min-height: 0 !important;
    }
}
@media (max-width:980px) {
    .suc-catalog-page .suc-archive-dialog {
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }
    .suc-catalog-page .suc-archive-modal-grid {
        display: block !important;
        width: 100% !important;
    }
    .suc-catalog-page .suc-archive-details { overflow: visible !important; }
}
@media (max-width:700px) {
    .suc-catalog-page .suc-archive-dialog {
        width: 100% !important;
        max-width: 100% !important;
    }
    .suc-catalog-page .suc-archive-main,
    .suc-catalog-page .suc-archive-main img,
    .suc-catalog-page .suc-archive-noimage {
        height: clamp(280px, 42vh, 390px) !important;
        min-height: 280px !important;
        max-height: 390px !important;
    }
}

/* 4.9.3: acabado móvil del modal dedicado. */
@media (max-width:820px) {
    .suc-catalog-page .suc-archive-dialog {
        border-radius:16px !important;
        clip-path:inset(0 round 16px);
    }
    .suc-catalog-page .suc-archive-gallery {
        border-radius:16px 16px 0 0 !important;
    }
    .suc-catalog-page .suc-archive-main {
        border-radius:16px 16px 10px 10px !important;
    }
    .suc-catalog-page .suc-archive-main > button:first-child,
    .suc-catalog-page .suc-archive-main img,
    .suc-catalog-page .suc-archive-noimage {
        border-radius:inherit !important;
    }
}
