/* ZOFRACOBIJA 2.0.2 — sistema visual: azul institucional, acentos de emblema naranja y dorado.
   Solo presentación. No modifica el CSS ni la lógica funcional de plugins. */
:root {
  --zf-navy:#073b63;
  --zf-midnight:#062c4c;
  --zf-teal:#11638e;
  --zf-teal-dark:#0b527b;
  --zf-ink:#123d61;
  --zf-slate:#5f7488;
  --zf-mist:#eef5fb;
  --zf-line:#d9e7f2;
  --zf-orange:#e98929;
  --zf-gold:#f5be55;
  --zf-focus:#e9a43e;
  --zf-shadow:0 16px 43px rgba(9,49,80,.075);
}
.zf-site{background:#f8fbfe!important;color:var(--zf-ink)}
.zf-site :focus-visible{outline:3px solid #f1b94b;outline-offset:3px}
.zf-topbar{background:#072e51!important;border-color:rgba(255,255,255,.1)!important}
.zf-topbar-inner{min-height:42px!important}
.zf-state-marker{width:4px;height:20px;flex:none;border-radius:2px;background:linear-gradient(180deg,#c94742 0 33%,#f6c35b 33% 66%,#4fa37b 66% 100%)}
.zf-state-label strong{font-weight:850;letter-spacing:.025em;font-size:12px}
.zf-state-organization{font-size:11px}
.zf-header{background:rgba(255,255,255,.99)!important;border-color:#dce9f2!important;box-shadow:0 7px 24px rgba(7,46,76,.06)}
.zf-header .zf-nav-list a,.zf-header .zf-nav-button{color:#083653!important}
.zf-header .zf-nav-list a:hover,.zf-header .zf-nav-button:hover{color:#d6781a!important}
.zf-header-cta,.zf-header .zf-header-cta{background:#0c5785!important;box-shadow:0 10px 25px rgba(6,60,107,.17)!important}
.zf-header-cta:hover,.zf-header .zf-header-cta:hover{background:#063f68!important}
.zf2-search-trigger{background:#edf4f9!important;border:1px solid #d4e3ec!important;color:#0e4d75!important}
.zf2-search-trigger:hover{border-color:#e59c42!important;color:#a66316!important}
.zf2-hero .zf-hero-slides{height:clamp(470px,52vw,605px);min-height:470px}
.zf2-hero .zf-slide-shade{background:linear-gradient(90deg,rgba(2,29,51,.97),rgba(4,39,66,.85) 33%,rgba(5,49,81,.37) 67%,rgba(3,28,52,.09) 100%)!important}
.zf2-hero .zf-slide-kicker{color:#f4c879!important}
.zf2-hero .zf-slide h1{color:#fff;max-width:690px;text-shadow:0 5px 25px rgba(0,24,42,.18)}
.zf2-hero .zf-btn-primary{background:linear-gradient(115deg,#f6bf54,#e99536)!important;color:#092f4d!important;border-color:#e9a443!important;box-shadow:0 10px 26px rgba(7,38,55,.2)!important;font-weight:850}
.zf2-hero .zf-btn-primary:hover{background:#f9cb73!important;color:#092f4d!important;transform:translateY(-2px)}
.zf2-hero .zf-btn-primary:focus-visible{outline:3px solid white!important}
.zf2-hero .zf-carousel-dot.is-active{background:#f6bd50!important}
.zf2-hero .zf-hero-caption{color:#dfecf7}.zf2-hero .zf-caption-line{background:#e4a23b!important}
/* Home: un único campo de búsqueda visible; nada de duplicación con la cabecera. */
.home .zf2-search-trigger{display:none!important}
.home .zf2-search-modal{display:none!important}
.zf2-search-band{background:linear-gradient(112deg,#edf5fc 0%,#f7fbff 60%,#e8f2fa 100%)!important;border-color:#d9e8f3!important;padding-top:31px;padding-bottom:31px}
.zf2-search-message h2{font-size:clamp(23px,2.5vw,32px);line-height:1.23!important}
.zf2-search-message p:not(.zf-section-kicker){color:#5b7386!important}
.zf2-search-message .zf-section-kicker,.zf-section-kicker{color:#105b86!important}
.zf2-signal{background:#e3f0fb!important;border-color:#c6e0f1!important}.zf2-signal span{background:#d8932b!important}
.zf2-search-entry{background:#fff!important;border:1px solid #c9dce9!important;box-shadow:0 15px 38px rgba(8,66,106,.07)!important}
.zf2-search-entry:focus-within{border-color:#e2a147!important;box-shadow:0 0 0 4px rgba(240,174,78,.13)!important}
.zf2-search-entry button,.zf2-modal-input button,.zf2-results-form button{background:#0b6295!important;color:#fff!important;border-radius:10px!important}
.zf2-search-entry button:hover,.zf2-modal-input button:hover,.zf2-results-form button:hover{background:#074b77!important}
.zf2-suggestion:hover{background:#fff8ec!important}
.zf2-pathways{background:#fff!important;padding-top:72px;padding-bottom:77px}
.zf2-section-head h2,.zf2-enterprise-copy h2{color:#083e64!important}
.zf2-pathway{background:#fff!important;border:1px solid #d9e6f0!important;border-radius:20px!important;box-shadow:0 10px 30px rgba(9,53,89,.057)!important;isolation:isolate;overflow:hidden}
.zf2-pathway:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#0b6296,#74b9dd);opacity:.85}
.zf2-pathway:nth-child(2):before{background:linear-gradient(90deg,#f2ac45,#f7d384)}
.zf2-pathway:hover,.zf2-pathway:focus-visible{transform:translateY(-5px)!important;border-color:#92bed8!important;box-shadow:0 20px 40px rgba(12,68,105,.12)!important}
.zf2-pathway:nth-child(2):hover{border-color:#efc27c!important}
.zf2-pathway-icon{background:#e9f2f9!important;color:#0c5d89!important;border-radius:14px!important}
.zf2-pathway:nth-child(2) .zf2-pathway-icon{background:#fff3df!important;color:#bb711f!important}
.zf2-pathway strong{color:#083f65!important}.zf2-pathway-link{color:#0a5d8e!important}
.zf2-pathway:nth-child(2) .zf2-pathway-link{color:#ae6418!important}
.zf2-pathway-num{color:#9dafbe!important}
.zf2-quote-section{background:#eaf4fb!important;border-top:1px solid #dae8f3!important;border-bottom:1px solid #dae8f3!important}
.zf2-quote-icon{background:#fff!important;color:#0e5e8e!important;border:1px solid #d5e5ef!important}
.zf2-quote-amount strong{color:#064d78!important}.zf2-quote-actions a{color:#085d8b!important}
.zf2-enterprise{background:linear-gradient(116deg,#edf5fc 0%,#f7fafc 100%)!important;padding-top:75px;padding-bottom:80px}
.zf2-enterprise-copy>p:not(.zf-section-kicker){color:#4f6b7f!important}
.zf2-enterprise-actions .zf-btn{background:linear-gradient(110deg,#efab46,#f3c56b)!important;border-color:#ecaa46!important;color:#113751!important;font-weight:850}
.zf2-enterprise-actions .zf-btn:hover{background:#fad485!important;color:#113751!important}
.zf2-enterprise-photo{border-color:#ccdfed!important;box-shadow:0 25px 55px rgba(8,58,98,.12)!important;background:#dfedf7!important}
.zf2-enterprise-photo img{object-fit:contain!important;transform:none!important;filter:none!important}
.zf2-photo-ribbon{background:#092f4edf!important;color:#fff}
.zf2-news{background:#fff!important}
.zf2-news .zf-news-card{border-color:#dce8f0!important;box-shadow:0 12px 30px rgba(8,55,85,.07)!important}
.zf2-news .zf-news-card a:hover{color:#ad681d!important}
.zf-footer{background:linear-gradient(120deg,#062f50 0%,#073e66 100%)!important}
.zf-footer a:hover,.zf-footer button:hover{color:#f4c467!important}
.zf2-modal-header{background:linear-gradient(110deg,#072f50,#135b86)!important}
/* Institución: historia visual más rica y una única fotografía a la vez. */
.zf3-inst-hero{min-height:440px!important;background:#062e4e!important}
.zf3-inst-hero:before{background-image:linear-gradient(90deg,rgba(3,31,54,.96) 0%,rgba(4,42,71,.83) 47%,rgba(6,52,78,.17) 100%),var(--zf3-inst-photo,none)!important}
.zf3-inst-hero .zf3-eyebrow{color:#fac977!important}
.zf3-inst-hero h1{max-width:780px!important;font-size:clamp(38px,5.1vw,63px)!important}
.zf3-inst-text-link{border-color:#f5be55!important}
.zf3-inst-intro{padding:81px 0 87px!important}.zf3-inst-intro-heading h2{color:#083d60!important}
.zf3-inline-link{color:#0b5d8a!important}.zf3-inline-link:hover{color:#b76f23!important}
.zf4-institution-gallery{background:#f1f6fb;padding:74px 0 81px;border-top:1px solid #dce8f2;border-bottom:1px solid #dce8f2}
.zf4-gallery-layout{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:clamp(30px,5.2vw,84px);align-items:center}
.zf4-gallery-copy h2{font-size:clamp(30px,3.3vw,44px);line-height:1.13;letter-spacing:-.04em;color:#073b5f;margin:0 0 16px}
.zf4-gallery-copy>p:not(.zf4-gallery-context){font-size:15px;line-height:1.8;color:#557183;max-width:435px;margin:0 0 25px}
.zf4-gallery-controls{display:flex;align-items:center;gap:15px;margin:22px 0 25px}
.zf4-gallery-controls button{width:46px;height:46px;border:1px solid #bed4e4;border-radius:50%;background:#fff;color:#083f68;font-size:22px;line-height:1;cursor:pointer;transition:background .2s,transform .2s,border-color .2s}
.zf4-gallery-controls button:hover{background:#f2ba62;border-color:#e8ad52;color:#092e49;transform:translateY(-2px)}
.zf4-gallery-controls span{font-size:12px;min-width:65px;color:#365c75;font-weight:850;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.zf4-gallery-context{max-width:430px;font-size:11px;line-height:1.65;color:#70889a;margin:0}
.zf4-photo-slide{margin:0;background:white;border-radius:22px;border:1px solid #dae7f0;box-shadow:0 23px 57px rgba(8,54,86,.11);overflow:hidden}
.zf4-photo-slide[hidden]{display:none!important}
.zf4-photo-frame{height:clamp(270px,32vw,435px);display:grid;place-items:center;background:linear-gradient(135deg,#e1ecf4,#f5f9fc);padding:14px}
.zf4-photo-frame img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain!important;object-position:center;filter:none!important;transform:none!important;box-shadow:none!important}
.zf4-photo-slide figcaption{padding:18px 22px;color:#2c526b;font-size:13px;font-weight:750;min-height:56px;line-height:1.5;border-top:1px solid #e4edf4}
.zf3-inst-timeline{background:#fff!important;padding:86px 0 91px!important}
.zf4-timeline-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;position:relative}
.zf4-timeline-grid .zf3-timeline-item{padding:25px 20px!important;min-height:240px;box-shadow:0 11px 31px rgba(7,55,91,.06)!important}
.zf4-timeline-grid .zf3-timeline-item:before{height:4px;background:linear-gradient(90deg,#0a6194,#eda543)!important}
.zf4-timeline-grid .zf3-year{font-size:clamp(32px,3.5vw,49px)!important;color:#0b5c8a!important}
.zf4-timeline-grid .zf3-timeline-item h3{font-size:15px!important;line-height:1.35;margin-top:18px}
.zf4-timeline-grid .zf3-timeline-item p{font-size:12px;line-height:1.68}
.zf3-inst-services{background:#f4f8fc!important}
.zf3-service-tile{background:white!important;border:1px solid #d9e7f1!important}
.zf3-service-tile:hover{border-color:#efb66a!important;box-shadow:0 20px 40px rgba(10,60,93,.1)!important}
.zf3-service-icon{background:#e8f2fa!important;color:#0d6092!important}
.zf3-service-arrow{color:#c77b2a!important}
.zf3-inst-cta{background:linear-gradient(108deg,#062f50,#0b5684)!important}
.zf3-btn-primary{background:#f6bd58!important;color:#0b3554!important;border:1px solid #edb44f!important;box-shadow:0 9px 23px rgba(2,19,37,.13)}
.zf3-btn-primary:hover{background:#ffd48a!important;color:#0b3554!important}
.zf3-btn-secondary{border-color:#9dbacf!important;color:#fff!important}
/* Directorio empresarial público (plugin separado): acabado coherente, sin alterar registros ni privacidad. */
.zfd{background:#f5f9fd!important;color:#123b5a!important}
.zfd-hero{background-color:#073c64!important;border-bottom:4px solid #e7a342!important}
.zfd-hero .zfd-kicker{color:#ffd48c!important}.zfd-hero h1{letter-spacing:-.047em!important}
.zfd-main{background:#f7fafe!important}
.zfd-intro span{color:#105c8a!important}.zfd-intro h2{color:#083c63!important}
.zfd-counter{background:#fff!important;border:1px solid #d7e7f2!important;box-shadow:0 9px 24px rgba(9,59,90,.05)}
.zfd-tile{background:linear-gradient(130deg,#fff,#f8fbff)!important;border-color:#d9e7f2!important;box-shadow:0 10px 26px rgba(8,61,94,.055)!important}
.zfd-tile:hover,.zfd-tile:focus-visible{transform:translateY(-4px)!important;border-color:#e8a648!important;box-shadow:0 20px 41px rgba(8,58,98,.12)!important}
.zfd-tile-mark{background:#e6f2fc!important;color:#0b6195!important}
.zfd-type-grid .zfd-tile:nth-child(2) .zfd-tile-mark{background:#fff0d9!important;color:#b96e1c!important}
.zfd-tile-total{color:#0b5c90!important}
.zfd .zfd-stage-heading{color:#083e67!important}.zfd-crumb-link{color:#0b5f91!important}
.zfd-company{border-color:#dce9f3!important;box-shadow:0 12px 28px rgba(5,51,82,.057)!important;transition:transform .2s,box-shadow .2s,border-color .2s}
.zfd-company:hover{border-color:#e9b666!important;transform:translateY(-3px);box-shadow:0 20px 39px rgba(5,51,82,.12)!important}
.zfd-company-logo{background:#eaf3fb!important;color:#0a5988!important;border-color:#d4e6f3!important}
.zfd-next{background:linear-gradient(113deg,#e8f2fb,#fff9f0)!important;border:1px solid #d2e4f2!important}
.zfd-next a{background:#efaf4e!important;color:#0a3551!important;border:1px solid #e8a547!important}
.zfd-next a:hover{background:#f8cb75!important;color:#0a3551!important}
.zfd-search input:focus{outline-color:#f0b34f!important}
/* Otros formularios y páginas interiores siguen azul: no sobrescribir plugins de Zofrito y buzón. */
.zf-page-main{background:#fff!important}.zf-page-heading{color:#073e64!important}
.zf-entry-content h2,.zf-entry-content h3{color:#073e64!important}
.zf-entry-content a{color:#0b5e91!important}
.zf-entry-content a:hover{color:#ba731f!important}
@media(max-width:1110px){
 .zf4-timeline-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:850px){
 .zf4-gallery-layout{grid-template-columns:1fr;gap:28px}
 .zf4-gallery-copy>p:not(.zf4-gallery-context){max-width:680px}
 .zf4-timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
 .zf-topbar-inner{min-height:37px!important}
 .zf-state-label strong{font-size:10px!important}
 .zf2-hero .zf-hero-slides{height:495px;min-height:495px}
 .zf2-hero .zf-slide-shade{background:linear-gradient(90deg,rgba(2,29,49,.94),rgba(5,45,71,.70) 72%,rgba(6,45,67,.35))!important}
 .zf2-search-band{padding:27px 0!important}
 .zf2-pathways{padding:55px 0!important}
 .zf2-pathway{min-height:183px!important}
 .zf2-enterprise{padding:55px 0!important}
 .zf4-institution-gallery{padding:54px 0 60px}
 .zf4-photo-frame{height:300px;padding:9px}
 .zf3-inst-intro,.zf3-inst-services,.zf3-inst-timeline{padding:56px 0!important}
 .zf4-timeline-grid{grid-template-columns:1fr!important}
 .zf4-timeline-grid .zf3-timeline-item{min-height:auto!important}
 .zf3-inst-hero{min-height:375px!important}
}
@media(prefers-reduced-motion:reduce){
 .zf2-hero .zf-btn-primary,.zf4-gallery-controls button,.zfd-company{transition:none!important;transform:none!important}
}
