/* Portal ZOFRACOBIJA 1.2.0 — rediseño institucional.
   Referencia estructural: produccion.gob.bo. Sin dependencia de GeoData. */
:root{--zf-navy:#0b3742;--zf-teal:#126675;--zf-deep:#082e36;--zf-lime:#89cc32;--zf-ink:#122f38;--zf-muted:#61737b;--zf-line:#dfe8e9;--zf-paper:#f6f8f8;--zf-white:#fff;--zf-shadow:0 18px 48px rgba(12,48,55,.08)}
body{color:var(--zf-ink)}
.zf-government-bar{background:var(--zf-deep);color:#edf6f5;font-size:12px;line-height:1.5}
.zf-government-inner{min-height:32px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.zf-government-inner a{color:#c8ea98;font-weight:700;white-space:nowrap}
.zf-government-sep{padding:0 7px;color:var(--zf-lime)}
.site-header{position:relative;z-index:60;box-shadow:0 3px 18px rgba(10,45,49,.06)}
.site-header>.amazon-strip{height:12px!important;background-size:auto 16px!important;background-position:center center!important;opacity:.8}
.site-header .header-inner{min-height:91px!important;height:auto;gap:20px}
.site-header .brand{min-width:0;gap:10px}
.site-header .brand-mark{max-width:64px}
.site-header .brand .custom-logo{width:auto;max-width:68px;max-height:68px;object-fit:contain}
.site-header .brand-text strong{font-weight:900;letter-spacing:-.02em;font-size:24px;line-height:1}
.site-header .brand-text>span{font-size:11px;max-width:246px;line-height:1.2;display:block}
.site-header .main-nav{gap:6px}
.site-header .main-nav>ul{gap:2px}
.site-header .main-nav>ul a{padding:10px 8px;font-size:13px;font-weight:750}
.site-header .main-nav>ul a:hover,.site-header .main-nav>ul .current-menu-item>a{color:#0a6370}
.site-header .systems-toggle{border-radius:10px}
.site-header .search-toggle{border-radius:50%}
.home .site-canvas{background:#fff!important;background-image:none!important;min-height:0}
.ministerial-home{width:100%;overflow:hidden;line-height:1.5}
.ministerial-home .wrap,.zf-news-archive .wrap{max-width:1230px;padding-left:32px;padding-right:32px}
.ministerial-home .zf-overline,.zf-news-archive .zf-overline{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--zf-teal);font-weight:850;margin-bottom:11px}
.zf-intro{background:radial-gradient(circle at 15% 30%,rgba(136,204,50,.13),transparent 27%),linear-gradient(125deg,#f6fbf9,#eef7f5);border-bottom:1px solid var(--zf-line);padding:34px 0 42px}
.zf-intro-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center}
.zf-intro-copy{padding:20px 0}
.zf-eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid #c6dcd8;background:#fff;border-radius:100px;padding:8px 14px;font-size:12px;color:#35616c;font-weight:750}
.zf-eyebrow-dot{width:8px;height:8px;background:#69b72c;border-radius:50%;box-shadow:0 0 0 4px #e6f4dc}
.zf-intro h1{font-size:clamp(37px,4.3vw,61px);line-height:1.07;letter-spacing:-.042em;font-weight:900;color:var(--zf-deep);margin:21px 0 18px}
.zf-intro h1 span{display:block;color:#28845d;font-size:.69em;margin-top:8px;letter-spacing:-.034em}
.zf-intro-copy>p{color:#536b71;font-size:17px;line-height:1.7;max-width:470px;margin:0 0 28px}
.zf-intro-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.zf-button{font-weight:800;min-height:46px;display:inline-flex;gap:14px;align-items:center;justify-content:center;border-radius:10px;padding:12px 20px;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s;font-size:14px}
.zf-button:hover{transform:translateY(-1px)}
.zf-button-primary{background:var(--zf-teal);color:#fff;box-shadow:0 8px 18px rgba(9,95,109,.17)}
.zf-button-primary:hover{background:#064653;color:#fff}
.zf-button-ghost{border:1px solid #bfd6d0;background:#fff;color:var(--zf-deep)}
.zf-button-ghost:hover{border-color:var(--zf-teal);color:var(--zf-teal)}
.zf-intro-foot{margin-top:35px;color:#627d7e;font-size:12px;font-weight:650;display:flex;gap:12px;align-items:center}
.zf-foot-line{width:35px;height:2px;background:var(--zf-lime);flex:none}
.zf-featured-visual{height:438px;min-height:438px;position:relative;border-radius:20px;overflow:hidden;box-shadow:0 22px 48px rgba(3,61,64,.21);background:#12565f}
.zf-hero-slider{position:relative;height:100%!important;min-height:100%!important;width:100%;isolation:isolate}
.zf-hero-slider::after{display:none!important}
.zf-hero-slider .zf-visual-slide{position:absolute;inset:0;width:100%;min-height:100%!important;display:block!important;background-size:cover;background-repeat:no-repeat;background-position:center;opacity:0!important;pointer-events:none!important;visibility:hidden;transform:scale(1.015)!important;transition:opacity 1.1s ease,transform 7.5s ease!important}
.zf-hero-slider .zf-visual-slide.is-active{opacity:1!important;visibility:visible;pointer-events:auto!important;transform:scale(1)!important}
.zf-hero-slider .zf-visual-slide::before{display:none!important}
.zf-hero-slider .zf-slide-label{position:absolute;z-index:5;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(5,28,32,.84));min-height:120px;display:flex;align-items:flex-end;color:#fff;font-size:13px;font-weight:760;padding:55px 24px 23px;gap:4px}
.zf-slide-label span{opacity:.75;font-weight:500}
.zf-hero-slider .slider-arrow{z-index:8;top:16px!important;bottom:auto!important;transform:none!important;width:34px;height:34px;font-size:22px;background:rgba(255,255,255,.93)!important}
.zf-hero-slider .slider-prev{left:auto!important;right:60px}
.zf-hero-slider .slider-next{right:17px!important}
.zf-hero-slider .slider-dots{z-index:9;bottom:19px;left:auto;right:18px;justify-content:flex-end;width:auto}
.zf-hero-slider .slider-dot{border:1px solid rgba(255,255,255,.66);width:8px;height:8px}
.zf-hero-slider .slider-dot.is-active{width:22px;border-radius:12px;background:var(--zf-lime)}
.zf-section-heading h2{font-size:clamp(27px,3vw,36px);line-height:1.16;letter-spacing:-.025em;color:var(--zf-deep);font-weight:850;margin:0 0 8px}
.zf-section-heading p{color:var(--zf-muted);font-size:14px;line-height:1.65;max-width:420px;margin:0}
.zf-heading-inline{display:flex;justify-content:space-between;align-items:end;gap:26px;margin-bottom:28px}
.zf-heading-inline>p{max-width:325px;text-align:right}
.zf-access-section{background:#fff;padding:68px 0 75px}
.zf-access-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.zf-access-tile{display:flex;flex-direction:column;align-items:flex-start;min-height:244px;padding:23px 22px 22px;border:1px solid var(--zf-line);background:#fff;border-radius:15px;color:var(--zf-deep);box-shadow:0 6px 16px rgba(15,52,58,.03);position:relative;transition:transform .2s,border-color .2s,box-shadow .2s}
.zf-access-tile:hover{transform:translateY(-5px);border-color:#9bc6be;box-shadow:var(--zf-shadow);color:var(--zf-deep)}
.zf-access-number{position:absolute;right:22px;top:20px;color:#a9b8b6;font-size:12px;font-weight:750}
.zf-access-symbol{background:#e6f4f0;border-radius:12px;color:#0c7983;width:49px;height:49px;display:grid;place-items:center;font-size:27px;font-weight:700;margin-bottom:20px}
.zf-access-tile strong{font-size:17px;line-height:1.3;letter-spacing:-.01em;margin-bottom:8px}
.zf-access-tile small{color:#647b7f;font-size:13px;line-height:1.5}
.zf-access-link{display:flex;align-items:center;gap:8px;color:#0c6a6c;font-size:12px;font-weight:850;letter-spacing:.01em;margin-top:auto;padding-top:18px}
.zf-access-tile:hover .zf-access-link{color:#25884a}
.zf-news-section{background:#f2f6f5;padding:70px 0 81px;border-top:1px solid #edf2f0;border-bottom:1px solid #e4eeeb}
.zf-news-heading{margin-bottom:26px}
.zf-news-heading .zf-text-link{font-size:14px;color:#0c6978;font-weight:800;border-bottom:1px solid #b6d3ce;padding-bottom:4px;white-space:nowrap}
.zf-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.zf-news-card{overflow:hidden;border-radius:15px;border:1px solid #e1e9e8;background:#fff;box-shadow:0 7px 20px rgba(10,50,55,.04);display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}
.zf-news-card:hover{transform:translateY(-3px);box-shadow:var(--zf-shadow)}
.zf-news-image{display:block;position:relative;background:#e9f2ee;aspect-ratio:16/9;overflow:hidden}
.zf-news-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.zf-news-card:hover .zf-news-image img{transform:scale(1.035)}
.zf-news-placeholder{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:linear-gradient(135deg,#084954,#248678);color:#fff;text-align:center}
.zf-news-placeholder>span{font-weight:900;letter-spacing:.09em;font-size:18px}
.zf-news-placeholder small{font-weight:500;opacity:.85;font-size:12px}
.zf-news-copy{padding:22px 23px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.zf-news-meta{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#657b7d;font-size:12px;font-weight:750}
.zf-priority-label{background:#e5f5d6;color:#397820;padding:4px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.045em;font-size:10px}
.zf-news-copy h3,.zf-news-copy h2{margin:0;color:var(--zf-deep);font-size:18px;font-weight:850;line-height:1.37;letter-spacing:-.01em}
.zf-news-copy h3 a,.zf-news-copy h2 a{color:inherit}
.zf-news-copy h3 a:hover,.zf-news-copy h2 a:hover{color:var(--zf-teal)}
.zf-news-copy p{color:#667c80;font-size:13px;line-height:1.62;margin:0 0 8px}
.zf-read-more{margin-top:auto;color:#0b6d73;font-size:13px;font-weight:850}
.zf-news-empty{display:flex;align-items:center;gap:20px;padding:27px 30px;border:1px dashed #bfd7d1;background:#fff;border-radius:14px;color:#566b70}
.zf-news-empty>span{font-size:36px;color:#5c9896}
.zf-news-empty h3{margin:0 0 7px;font-size:17px;color:var(--zf-deep)}
.zf-news-empty p{font-size:13px;margin:0}
.zf-news-empty>a{margin-left:auto;color:var(--zf-teal);font-weight:800;white-space:nowrap}
.zf-economy-section{background:#fff;padding:68px 0}
.zf-economy-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:40px;align-items:center}
.zf-economy-title h2{font-size:29px;line-height:1.2;letter-spacing:-.025em;margin:0 0 10px;color:var(--zf-deep)}
.zf-economy-title>p{max-width:310px;color:#657b81;font-size:14px;margin:0}
.zf-economy-items{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.zf-economy-card{display:flex;gap:14px;min-height:168px;padding:23px 17px;background:#f5f9f7;border-radius:15px;border:1px solid #dce9e4}
.zf-economy-icon{flex:0 0 48px;width:48px;height:48px;background:#dceee9;color:#075963;border-radius:13px;display:grid;place-items:center;font-size:19px;font-weight:900}
.zf-economy-card>div{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.zf-economy-card strong{color:var(--zf-deep);font-size:13px}
.zf-economy-card b{font-size:20px;letter-spacing:-.02em;line-height:1.2;color:#134b55}
.zf-economy-card small{font-size:12px;color:#687c7e}
.zf-economy-card a{font-size:12px;color:#0d6c78;font-weight:800;margin-top:auto}
.zf-highlight-section{padding:0 0 58px;background:#fff}
.zf-highlight-card{display:grid;grid-template-columns:.55fr 1.5fr auto;align-items:center;gap:22px;padding:27px 33px;background:linear-gradient(120deg,#0b4b54,#14746c);border-radius:16px;color:white}
.zf-highlight-badge{font-weight:850;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#d4f19c}
.zf-highlight-card h2{font-size:21px;line-height:1.3;color:#fff;margin:0 0 8px}
.zf-highlight-card p{color:#deebe9;font-size:13px;margin:0}
.zf-button-light{background:#fff;color:var(--zf-deep)}
.zf-final-section{background:linear-gradient(120deg,#ebf5ef,#f6faf8);padding:60px 0;border-top:1px solid #dcebe2}
.zf-final-layout{display:flex;justify-content:space-between;align-items:center;gap:26px}
.zf-final-section h2{font-size:27px;line-height:1.3;color:var(--zf-deep);max-width:560px;letter-spacing:-.02em;margin:0 0 8px}
.zf-final-section p{margin:0;color:#65787d;font-size:14px}
.zf-final-section .zf-button{flex-shrink:0}
.zf-modal-backdrop[hidden]{display:none!important}
.zf-modal-backdrop{position:fixed;inset:0;background:rgba(4,24,28,.66);backdrop-filter:blur(4px);z-index:99999;display:flex;justify-content:center;align-items:center;padding:20px;overflow:auto}
.zf-modal{background:#fff;color:var(--zf-ink);border-radius:18px;box-shadow:0 25px 70px rgba(0,0,0,.35);width:min(100%,560px);max-height:calc(100vh - 40px);overflow:auto;outline:none}
.zf-modal-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 22px;background:#eef6f2;font-weight:850;color:#1a6470;font-size:12px;letter-spacing:.04em}
.zf-modal-close{width:34px;height:34px;border:0;border-radius:8px;background:#fff;color:#16444e;font-size:25px;line-height:1;cursor:pointer}
.zf-modal-photo{height:180px;background:#edf4f1}
.zf-modal-photo img{width:100%;height:100%;object-fit:cover;display:block}
.zf-modal-content{padding:28px}
.zf-modal-content time{font-size:12px;color:#74898c}
.zf-modal-content h2{color:var(--zf-deep);font-size:26px;line-height:1.23;margin:10px 0 15px}
.zf-modal-content p{color:#576e75;font-size:15px;line-height:1.68;margin:0 0 22px}
.zf-modal-content .zf-button{width:100%}
.zf-modal-secondary{margin:14px auto 0;display:block;border:0;background:transparent;color:#47636b;cursor:pointer;text-decoration:underline;font-size:13px;padding:8px}
body.zf-modal-open{overflow:hidden}
.zf-news-archive{padding:60px 0 85px;background:#f5f9f7!important}
.zf-archive-hero{padding-bottom:30px;margin-bottom:26px;border-bottom:1px solid #d9e5e0}
.zf-archive-hero h1{font-size:clamp(32px,4vw,50px);color:var(--zf-deep);margin:0 0 12px}
.zf-archive-hero p{color:#5b747b;margin:0}
.zf-news-pagination{display:flex;gap:10px;margin-top:32px;flex-wrap:wrap}
.zf-news-pagination .page-numbers{padding:7px 13px;background:#fff;border:1px solid #dce7e4;border-radius:8px}
.zf-news-pagination .page-numbers.current{background:var(--zf-teal);color:#fff}
.site-footer{background:linear-gradient(115deg,#092d36,#0c5155)!important}
.site-footer>.amazon-strip{height:26px!important;background-size:auto 26px!important}
.site-footer .footer-main{padding:47px 0}
.site-footer .footer-bottom{background:#062b31!important;color:#d9edeb!important}
.site-footer .footer-bottom a{color:#e6f7ed}
@media(max-width:1100px){
 .site-header .brand-text strong{font-size:21px}
 .site-header .brand-text>span{font-size:10px;max-width:200px}
 .zf-intro-grid{gap:28px}
 .zf-featured-visual{height:405px;min-height:405px}
 .zf-intro h1{font-size:47px}
 .zf-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .zf-access-tile{min-height:210px}
 .zf-economy-layout{grid-template-columns:1fr}
 .zf-economy-title>p{max-width:none}
}
@media(max-width:1000px){
 .site-header .main-nav{z-index:80;box-shadow:0 18px 26px rgba(2,28,33,.11)}
 .site-header .main-nav>ul a{font-size:15px}
 .zf-intro-grid{grid-template-columns:1fr}
 .zf-intro-copy{padding:0}
 .zf-featured-visual{height:390px;min-height:390px}
 .zf-intro h1{font-size:50px;max-width:650px}
 .zf-intro-copy>p{max-width:660px}
 .zf-intro-foot{margin-top:23px}
 .zf-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .zf-highlight-card{grid-template-columns:1fr auto}
 .zf-highlight-badge{grid-column:1/-1}
}
@media(max-width:700px){
 .ministerial-home .wrap,.zf-news-archive .wrap{padding-left:18px;padding-right:18px}
 .zf-government-inner{font-size:10px;min-height:30px}
 .zf-government-inner>a{display:none}
 .site-header>.amazon-strip{height:9px!important;background-size:auto 14px!important}
 .site-header .header-inner{min-height:75px!important}
 .zf-intro{padding:28px 0 32px}
 .zf-intro h1{font-size:clamp(34px,8vw,46px);margin:17px 0}
 .zf-intro-copy>p{font-size:15px;line-height:1.6}
 .zf-intro-actions{align-items:stretch}
 .zf-button{font-size:13px;padding:12px 15px}
 .zf-featured-visual{height:270px;min-height:270px;border-radius:14px}
 .zf-hero-slider .zf-slide-label{font-size:11px;min-height:90px;padding:36px 17px 16px;flex-wrap:wrap}
 .zf-hero-slider .slider-dots{bottom:17px}
 .zf-access-section,.zf-news-section{padding:48px 0}
 .zf-section-heading{display:block}
 .zf-heading-inline>p{max-width:100%;text-align:left;margin-top:12px}
 .zf-section-heading h2{font-size:29px}
 .zf-access-grid{gap:12px}
 .zf-access-tile{padding:17px;min-height:200px}
 .zf-news-heading .zf-text-link{display:inline-block;margin-top:13px}
 .zf-news-grid{grid-template-columns:1fr}
 .zf-news-image{aspect-ratio:16/9}
 .zf-economy-section{padding:47px 0}
 .zf-economy-items{grid-template-columns:1fr}
 .zf-economy-card{min-height:140px}
 .zf-highlight-card{grid-template-columns:1fr;padding:24px}
 .zf-highlight-badge{grid-column:auto}
 .zf-highlight-card .zf-button{justify-self:start}
 .zf-final-section{padding:45px 0}
 .zf-final-layout{display:block}
 .zf-final-layout .zf-button{margin-top:22px}
 .zf-news-empty{align-items:flex-start;flex-wrap:wrap}
 .zf-news-empty>a{margin-left:0;width:100%}
 .zf-modal-content{padding:20px}
 .zf-modal-content h2{font-size:22px}
}
@media(max-width:430px){
 .zf-access-grid{grid-template-columns:1fr}
 .zf-access-tile{min-height:178px}
 .zf-intro-actions .zf-button{width:100%;justify-content:space-between}
 .zf-intro-foot{line-height:1.4}
 .zf-featured-visual{height:235px;min-height:235px}
 .zf-hero-slider .zf-slide-label{font-size:10px}
 .zf-hero-slider .slider-dots{display:none}
}
@media(prefers-reduced-motion:reduce){.zf-hero-slider .zf-visual-slide,.zf-news-image img,.zf-news-card,.zf-access-tile,.zf-button{transition:none!important;transform:none!important}}

.zf-news-links{display:flex;align-items:center;gap:23px;flex-wrap:wrap}
@media(max-width:700px){.zf-news-links{margin-top:16px}}


/* ================================================================
   v1.3.0 — CARRUSEL PANORÁMICO + COLLAGE INSTITUCIONAL CELESTE
   Referencia de composición: portal del Ministerio de Producción.
   Paleta propia de ZOFRACOBIJA: celeste, blanco y azul institucional.
   ================================================================ */
:root{
  --zf-navy:#0a3957;
  --zf-teal:#078bb9;
  --zf-deep:#08334f;
  --zf-ink:#193c51;
  --zf-muted:#5c7180;
  --zf-lime:#36b9e8;
  --zf-line:#d6e8f2;
  --zf-paper:#f2f9fd;
  --zf-shadow:0 18px 48px rgba(9,58,89,.10);
  --zofra-petrol:#075f85;
  --zofra-petrol-2:#074563;
  --zofra-ink:#103f58;
  --zofra-green:#36b9e8;
  --zofra-green-soft:#e7f7ff;
  --zofra-line:#d7eaf3;
  --zofra-bg:#f6fbfe;
}
.zf-government-bar{background:#08334f;color:#f0faff}
.zf-government-inner a{color:#9ee8ff}
.zf-government-sep{color:#4cc6f2}
.site-header{border-bottom:1px solid #d6e8f0}
.site-header>.amazon-strip{background-color:#f0faff!important;filter:hue-rotate(90deg) saturate(.8);opacity:.35}
.site-header .brand .brand-text strong,.site-header .main-nav>ul a:hover,.site-header .main-nav>ul .current-menu-item>a{color:#075e85}
.site-header .main-nav .current-menu-item>a::after{background:#36b9e8}
.site-header .system-link{border-color:#a7def1;color:#075e85!important}
.site-header .nav-toggle{background:#e6f7ff;color:#075e85}
.home .site-canvas{background:#fff!important}
/* Carrusel a toda la anchura: ninguna columna o tarjeta limita la fotografía. */
.ministerial-home .zf-intro-full{
  padding:0!important;margin:0!important;position:relative;
  width:100%;border:0;background:#0a405a;overflow:hidden;
}
.zf-intro-full .zf-collage-slider{
  width:100%;height:clamp(475px,35vw,605px)!important;
  min-height:475px!important;max-height:none;
  position:relative;overflow:hidden;isolation:isolate;
  background:#084e73;
}
.zf-collage-slider::after{display:none!important}
.zf-collage-slider .zf-collage-slide{
  position:absolute;inset:0;width:100%;height:100%;min-height:100%!important;
  padding:0;margin:0;background:none!important;display:block!important;
  opacity:0!important;visibility:hidden;pointer-events:none!important;
  transform:scale(1.018)!important;
  transition:opacity .85s ease,transform 6.5s ease!important;
  overflow:hidden;
}
.zf-collage-slider .zf-collage-slide.is-active{
  z-index:3;opacity:1!important;visibility:visible;pointer-events:auto!important;
  transform:scale(1)!important;
}
.zf-collage-slider .zf-collage-slide::before{content:none!important;display:none!important}
.zf-collage-base,.zf-collage-shade,.zf-collage-decor{position:absolute;inset:0;pointer-events:none}
.zf-collage-base{z-index:0;background-position:center 44%;background-size:cover;background-repeat:no-repeat;filter:saturate(1.06)}
.zf-collage-shade{
  z-index:1;
  background:linear-gradient(90deg,rgba(5,43,68,.97) 0%,rgba(4,53,83,.93) 25%,rgba(4,68,104,.78) 42%,rgba(10,69,104,.22) 67%,rgba(9,48,74,.08) 100%);
}
.zf-collage-decor{z-index:2;opacity:.82;background:linear-gradient(158deg,transparent 15%,rgba(31,162,210,.12) 44%,transparent 61%)}
.zf-collage-decor::before{content:"";position:absolute;bottom:-5%;left:-4%;width:70%;height:18%;transform:skewY(-5deg);background:linear-gradient(90deg,rgba(55,190,239,.55),rgba(55,190,239,0));opacity:.25}
.zf-collage-inner{position:relative;z-index:5;height:100%;display:flex;align-items:center;pointer-events:none}
.zf-collage-copy{width:min(100%,595px);max-width:55%;padding:42px 0 65px;color:#fff;text-shadow:0 2px 16px rgba(0,32,48,.15);pointer-events:auto}
.zf-collage-kicker{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:#bfefff;margin-bottom:20px;padding-left:14px;border-left:4px solid #36b9e8}
.zf-intro-full h1,.zf-intro-full h2{
  color:#fff!important;text-transform:uppercase;font-size:clamp(42px,5.2vw,79px);
  font-weight:900;line-height:1.02;letter-spacing:-.045em;
  margin:0 0 17px;text-wrap:balance;text-shadow:0 4px 26px rgba(0,31,49,.29)
}
.zf-intro-full h1 span,.zf-intro-full h2 span{display:block;color:#9de8ff!important;font-size:.57em;line-height:1.16;margin-top:12px;font-weight:850;letter-spacing:-.026em;text-transform:none}
.zf-intro-full .zf-collage-copy>p{font-size:clamp(15px,1.35vw,18px);max-width:515px;margin:0 0 24px;line-height:1.58;color:#f1faff;text-shadow:0 2px 10px rgba(0,19,41,.35)}
.zf-intro-full .zf-intro-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.zf-intro-full .zf-button{min-height:45px;border-radius:8px;font-size:13px;padding:12px 18px}
.zf-intro-full .zf-button-primary{color:#053751;background:#53c9ef;box-shadow:0 8px 22px rgba(2,20,34,.20)}
.zf-intro-full .zf-button-primary:hover{background:#9ce7ff;color:#03283c}
.zf-intro-full .zf-button-ghost{color:#fff;background:rgba(8,45,69,.3);border:1px solid rgba(234,249,255,.7)}
.zf-intro-full .zf-button-ghost:hover{background:rgba(255,255,255,.16);color:#fff}
/* Fotomontaje: tres paneles inclinados con fotografías reales de ZOFRACOBIJA. */
.zf-collage-panels{position:absolute;z-index:4;top:0;right:0;width:55%;height:100%;pointer-events:none;overflow:hidden;isolation:isolate}
.zf-collage-panel{position:absolute;height:110%;top:-5%;overflow:hidden;background:#39bce8;filter:drop-shadow(-9px 0 10px rgba(0,30,52,.25))}
.zf-collage-panel img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);filter:saturate(1.07) contrast(1.035)}
.zf-panel-1{left:4%;width:38%;clip-path:polygon(25% 0,100% 0,77% 100%,0 100%);z-index:1}
.zf-panel-2{left:34%;width:40%;clip-path:polygon(25% 0,100% 0,75% 100%,0 100%);z-index:2;border-left:0}
.zf-panel-3{left:66%;width:45%;clip-path:polygon(23% 0,100% 0,77% 100%,0 100%);z-index:3}
.zf-collage-panels::before{content:"";position:absolute;z-index:4;inset:0;border-left:5px solid rgba(55,186,230,.9);transform:skewX(-15deg) translateX(13%);pointer-events:none;opacity:.48}
.zf-collage-slider .slider-arrow{
  z-index:12;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;
  width:43px;height:43px;font-size:28px;color:#075d83;
  border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.87)!important;
  box-shadow:0 6px 18px rgba(0,24,36,.2)
}
.zf-collage-slider .slider-prev{left:18px!important;right:auto!important}
.zf-collage-slider .slider-next{right:18px!important}
.zf-collage-slider .slider-arrow:hover,.zf-collage-slider .slider-arrow:focus-visible{background:#fff!important;color:#024666;outline:3px solid #6bd9ff}
.zf-collage-slider .slider-dots{position:absolute;z-index:13;bottom:17px;left:0;right:0;width:auto;display:flex;align-items:center;justify-content:center;gap:9px}
.zf-collage-slider .slider-dot{width:10px;height:10px;border:1px solid #fff;border-radius:50%;opacity:.9;background:rgba(255,255,255,.4);cursor:pointer}
.zf-collage-slider .slider-dot.is-active{width:27px;border-radius:8px;background:#52cef1;border-color:#52cef1}
/* Variaciones del collage (composición fotográfica, no tarjetas). */
.zf-collage-slide-2 .zf-panel-1{width:39%;left:7%;clip-path:polygon(20% 0,100% 0,75% 100%,0 100%)}
.zf-collage-slide-2 .zf-panel-2{width:45%;left:38%;clip-path:ellipse(48% 49% at 53% 51%);outline:5px solid #43c1ec}
.zf-collage-slide-2 .zf-panel-3{width:36%;left:74%;clip-path:polygon(24% 0,100% 0,77% 100%,0 100%)}
.zf-collage-slide-3 .zf-panel-1{left:1%;width:42%;clip-path:polygon(36% 0,100% 0,85% 100%,0 100%)}
.zf-collage-slide-3 .zf-panel-2{left:35%;width:48%;clip-path:polygon(50% 0,100% 23%,100% 77%,50% 100%,0 77%,0 23%);top:8%;height:84%;border:5px solid #35bcea}
.zf-collage-slide-3 .zf-panel-3{left:76%;width:34%;clip-path:polygon(28% 0,100% 0,80% 100%,0 100%)}
.zf-collage-slide-4 .zf-panel-1{left:3%;width:43%;clip-path:polygon(26% 0,100% 0,75% 100%,0 100%)}
.zf-collage-slide-4 .zf-panel-2{left:39%;width:42%;clip-path:polygon(24% 0,100% 0,74% 100%,0 100%)}
.zf-collage-slide-4 .zf-panel-3{left:73%;width:37%;clip-path:polygon(24% 0,100% 0,76% 100%,0 100%)}
/* Acentos de celeste en el resto de la portada y encabezado. */
.zf-access-section{padding-top:60px;background:#fff}
.zf-access-symbol{background:#e8f8ff;color:#078bb9}
.zf-access-link,.zf-read-more,.zf-news-heading .zf-text-link{color:#078ab6}
.zf-access-tile:hover{border-color:#9cddf2}
.zf-news-section{background:#f0f8fc;border-color:#dcebf4}
.zf-news-placeholder{background:linear-gradient(125deg,#075a80,#1bb0df)}
.zf-priority-label{color:#056b97;background:#def5ff}
.zf-economy-card{background:#f1f9fd;border-color:#dcebf3}
.zf-economy-icon{background:#daf3ff;color:#08769f}
.zf-economy-card a{color:#0789b5}
.zf-highlight-card{background:linear-gradient(125deg,#075379,#1397c4)}
.zf-highlight-badge{color:#c7f1ff}
.zf-final-section{background:linear-gradient(120deg,#eaf7fd,#f8fcff);border-color:#d6eaf3}
.zf-button-primary{background:#138eba;color:#fff}
.zf-button-primary:hover{background:#07688f;color:#fff}
.zf-button-ghost{border-color:#bbe2f2}
.zf-modal-top{background:#eaf8ff;color:#075579}
.site-footer{background:linear-gradient(115deg,#083450,#07587a)!important}
.site-footer .footer-bottom{background:#062b44!important}
@media(max-width:1100px){
  .zf-collage-slider .zf-collage-copy{max-width:57%}
  .zf-intro-full h1,.zf-intro-full h2{font-size:clamp(41px,5vw,63px)}
  .zf-collage-panels{width:55%}
}
@media(max-width:800px){
  .zf-intro-full .zf-collage-slider{height:620px!important;min-height:620px!important}
  .zf-collage-shade{background:linear-gradient(180deg,rgba(4,44,70,.97) 0%,rgba(4,47,76,.93) 30%,rgba(8,68,101,.71) 55%,rgba(7,71,99,.14) 100%)}
  .zf-collage-inner{align-items:flex-start}
  .zf-collage-copy{max-width:100%!important;width:min(100%,590px);padding:47px 0 0}
  .zf-intro-full h1,.zf-intro-full h2{font-size:clamp(37px,7vw,57px)}
  .zf-intro-full .zf-collage-copy>p{max-width:560px}
  .zf-collage-panels{top:auto;bottom:0;width:100%;height:40%}
  .zf-panel-1{left:0;width:40%}
  .zf-panel-2{left:33%;width:40%}
  .zf-panel-3{left:68%;width:40%}
  .zf-collage-slide-2 .zf-panel-2{left:36%;width:47%}
  .zf-collage-slide-3 .zf-panel-2{left:30%;width:50%}
  .zf-collage-slider .slider-arrow{width:36px;height:36px}
  .zf-collage-slider .slider-prev{left:10px!important}
  .zf-collage-slider .slider-next{right:10px!important}
}
@media(max-width:520px){
  .zf-intro-full .zf-collage-slider{height:590px!important;min-height:590px!important}
  .zf-collage-copy{padding:30px 0 0}
  .zf-collage-kicker{font-size:10px;margin-bottom:16px;letter-spacing:.09em}
  .zf-intro-full h1,.zf-intro-full h2{font-size:clamp(32px,9vw,44px);margin-bottom:12px}
  .zf-intro-full h1 span,.zf-intro-full h2 span{font-size:.64em;margin-top:8px}
  .zf-intro-full .zf-collage-copy>p{font-size:13px;line-height:1.5;margin-bottom:17px;max-width:330px}
  .zf-intro-full .zf-intro-actions{gap:7px;max-width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .zf-intro-full .zf-intro-actions .zf-button{width:100%;min-height:38px;justify-content:center;font-size:11px;padding:9px 8px;gap:5px;text-align:center}
  .zf-collage-panels{height:35%}
  .zf-collage-slider .slider-dots{bottom:12px}
  .zf-collage-slider .slider-arrow{width:32px;height:32px;font-size:22px;top:auto!important;bottom:12px!important;transform:none!important}
}
@media(prefers-reduced-motion:reduce){.zf-collage-slider .zf-collage-slide,.zf-collage-panel img{transition:none!important;transform:none!important}}

/* Coherencia cromática en páginas institucionales existentes. */
.institution-hero h1,.institution-hero h2,.page-content h1{color:#075f85}
.institution-page--v127 .mission-card--mission,.mission-card--mission{background:linear-gradient(125deg,#075277,#0e94c1)!important}
.institution-page--v127 .mission-card--vision,.mission-card--vision{background:#eaf8ff!important;color:#073e5c!important}
.institution-page--v127 .mission-card--vision .mission-icon,.mission-card--vision .mission-icon{color:#0789b7}
.org-node--top,.institution-page--v127 .org-node--top{background:#075c83!important;border-color:#075c83!important}
.org-node--executive,.institution-page--v127 .org-node--executive{background:#eaf8ff!important;border-color:#9bdaef!important}
.org-line{background:#39bdea!important}
.authority-card--featured,.institution-page--v127 .authority-card--featured{background:linear-gradient(135deg,#084668,#1199c5)!important}
.services-heading{background:linear-gradient(120deg,#064965 0%,#0d86b5 65%,#35b9e8 100%)!important}
.services-heading .services-kicker,.service-detail-label{color:#b5edff}
.service-category-card:hover,.service-option-card:hover{border-color:#66c8ec}
.service-category-card.is-active{background:#e8f8ff;border-color:#33b9e8;box-shadow:inset 0 0 0 1px #33b9e8}
.service-category-icon,.service-option-icon,.service-detail-icon{background:#e2f6ff;color:#047eab}
.service-category-card b{background:#087fa9}
.zofra-doc-button{background:#35bae8!important;color:#053d5a!important}
.zofra-aduana-actions>a:not(.zofra-doc-button){color:#087fa9!important}
/* Evitar que el logo se coloree artificialmente; conserva su identidad institucional. */


/* ================================================================
   v1.3.1 — Fotomontaje equilibrado y portada libre de botones CTA.
   Imagen principal de tamaño predominante + dos tomas secundarias.
   Los accesos de servicios permanecen en la sección inmediatamente inferior.
   ================================================================ */
.zf-intro-full .zf-intro-actions{display:none!important}
.zf-intro-full .zf-collage-copy{padding-bottom:36px}
.zf-intro-full .zf-collage-copy>p{margin-bottom:0}
.zf-intro-full .zf-collage-panels{
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:12px;
  position:absolute;
  right:2.3%;top:7%;bottom:auto;
  width:48%;height:86%;
  overflow:visible;
  border-radius:0;
  pointer-events:none;
}
.zf-intro-full .zf-collage-panels::before{display:none!important}
.zf-intro-full .zf-collage-panels .zf-collage-panel,
.zf-intro-full .zf-collage-slide-2 .zf-collage-panel,
.zf-intro-full .zf-collage-slide-3 .zf-collage-panel,
.zf-intro-full .zf-collage-slide-4 .zf-collage-panel{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;
  right:auto!important;bottom:auto!important;
  width:auto!important;height:auto!important;
  min-width:0;min-height:0;
  border:0!important;
  outline:0!important;
  border-radius:12px;
  clip-path:none!important;
  filter:none!important;
  background:#0b6288;
  box-shadow:0 15px 30px rgba(0,30,52,.26);
}
.zf-intro-full .zf-collage-panels .zf-panel-1{grid-column:1;grid-row:1/span 2}
.zf-intro-full .zf-collage-panels .zf-panel-2{grid-column:2;grid-row:1}
.zf-intro-full .zf-collage-panels .zf-panel-3{grid-column:2;grid-row:2}
.zf-intro-full .zf-collage-panels .zf-collage-panel img{
  object-fit:cover;object-position:50% 50%;
  transform:none!important;transition:transform .6s ease;
  filter:saturate(1.02) contrast(1.015);
  border-radius:12px;
}
.zf-intro-full .zf-collage-slide-1 .zf-panel-1 img{object-position:52% center}
.zf-intro-full .zf-collage-slide-1 .zf-panel-2 img{object-position:48% center}
.zf-intro-full .zf-collage-slide-1 .zf-panel-3 img{object-position:54% center}
.zf-intro-full .zf-collage-slide-2 .zf-panel-1 img{object-position:46% center}
.zf-intro-full .zf-collage-slide-2 .zf-panel-2 img{object-position:42% center}
.zf-intro-full .zf-collage-slide-3 .zf-panel-1 img{object-position:50% center}
.zf-intro-full .zf-collage-slide-4 .zf-panel-1 img{object-position:52% center}
@media(max-width:1100px){
  .zf-intro-full .zf-collage-panels{width:47%;right:2%;gap:9px}
  .zf-intro-full .zf-collage-panels .zf-collage-panel,
  .zf-intro-full .zf-collage-panels .zf-collage-panel img{border-radius:9px}
}
@media(max-width:800px){
  .zf-intro-full .zf-collage-panels{
    width:calc(100% - 36px);right:18px;left:18px;
    top:auto;bottom:18px;height:40%;gap:10px;
    grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  }
  .zf-intro-full .zf-collage-copy{padding-top:40px;padding-bottom:0}
}
@media(max-width:520px){
  .zf-intro-full .zf-collage-panels{
    width:calc(100% - 24px);right:12px;left:12px;
    height:38%;bottom:22px;gap:7px;
    grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);
  }
  .zf-intro-full .zf-collage-copy{padding-top:28px}
  .zf-intro-full .zf-collage-panels .zf-collage-panel,
  .zf-intro-full .zf-collage-panels .zf-collage-panel img{border-radius:7px}
}


/* ===============================================================
   v1.3.3 — Familias geométricas coherentes por diapositiva.
   1: paralelogramos inclinados | 2: rombos | 3: círculos |
   4: triángulos. Las fotografías conservan proporciones naturales
   mediante object-fit y puntos de atención configurados por panel.
   =============================================================== */
.zf-intro-full .zf-intro-actions { display:none!important; }
@media(min-width:1101px) {
  .zf-intro-full .zf-collage-copy { transform:translateX(-30px); }
}
@media(min-width:801px) and (max-width:1100px) {
  .zf-intro-full .zf-collage-copy { transform:translateX(-12px); }
}
.zf-intro-full .zf-collage-copy { max-width:49%; }
.zf-intro-full .zf-collage-copy h1,
.zf-intro-full .zf-collage-copy h2 { max-width:560px; }
.zf-intro-full .zf-collage-copy h1 span,
.zf-intro-full .zf-collage-copy h2 span {
  max-width:510px;
  font-size:.50em;
}
.zf-intro-full .zf-collage-panels {
  position:absolute!important;
  display:block!important;
  overflow:visible!important;
  isolation:isolate;
  top:6%!important;
  right:2.1%!important;
  bottom:auto!important;
  left:auto!important;
  width:48%!important;
  height:88%!important;
  pointer-events:none;
  background:none!important;
  gap:0!important;
}
.zf-intro-full .zf-collage-panels::before { display:none!important; }
.zf-intro-full .zf-collage-panels .zf-collage-panel {
  position:absolute!important;
  inset:auto!important;
  left:var(--cx)!important;
  top:var(--cy)!important;
  right:auto!important;
  bottom:auto!important;
  width:var(--cw)!important;
  height:var(--ch)!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  clip-path:var(--mask)!important;
  box-shadow:none!important;
  background:#1488b1;
  filter:drop-shadow(0 12px 16px rgba(0,37,64,.2))!important;
  transform:none!important;
}
.zf-intro-full .zf-collage-panels .zf-collage-panel img {
  display:block!important;
  width:100%!important;
  height:100%!important;
  border-radius:0!important;
  object-fit:cover!important;
  object-position:var(--point,50% 50%)!important;
  transform:scale(1.015)!important;
  filter:saturate(1.06) contrast(1.02);
}
/* Primera diapositiva: rectángulos inclinados, con cortes sutiles.
   Predomina una imagen horizontal amplia, acompañada de dos tomas. */
.zf-collage-slide-1 .zf-panel-1 {
  --cx:0%; --cy:4%; --cw:63%; --ch:92%;
  --mask:polygon(13% 0,100% 0,87% 100%,0 100%);
  --point:54% 50%; z-index:2;
}
.zf-collage-slide-1 .zf-panel-2 {
  --cx:59%; --cy:0%; --cw:43%; --ch:49%;
  --mask:polygon(13% 0,100% 0,87% 100%,0 100%);
  --point:52% 46%; z-index:3;
}
.zf-collage-slide-1 .zf-panel-3 {
  --cx:59%; --cy:51%; --cw:43%; --ch:49%;
  --mask:polygon(13% 0,100% 0,87% 100%,0 100%);
  --point:47% 42%; z-index:3;
}
/* Segunda: rombos amplios, pensados para planos medios y generales.
   Tres figuras homogéneas, sin triángulos ni paneles mezclados. */
.zf-collage-slide-2 .zf-panel-1 {
  --cx:0%; --cy:11%; --cw:53%; --ch:78%;
  --mask:polygon(50% 0,100% 50%,50% 100%,0 50%);
  --point:46% 48%; z-index:2;
}
.zf-collage-slide-2 .zf-panel-2 {
  --cx:48%; --cy:2%; --cw:53%; --ch:79%;
  --mask:polygon(50% 0,100% 50%,50% 100%,0 50%);
  --point:55% 50%; z-index:3;
}
.zf-collage-slide-2 .zf-panel-3 {
  --cx:36%; --cy:52%; --cw:36%; --ch:48%;
  --mask:polygon(50% 0,100% 50%,50% 100%,0 50%);
  --point:50% 50%; z-index:4;
}
/* Tercera: tres círculos verdaderos; el diámetro depende de la
   altura del collage, no del ancho de pantalla. */
.zf-intro-full .zf-collage-slide-3 .zf-collage-panels .zf-collage-panel {
  width:auto!important;
  aspect-ratio:1 / 1!important;
  clip-path:circle(49.3% at 50% 50%)!important;
  border-radius:50%!important;
}
.zf-collage-slide-3 .zf-panel-1 {
  --cx:2%; --cy:7%; --ch:86%; --point:51% 48%;
  z-index:2;
}
.zf-collage-slide-3 .zf-panel-2 {
  --cx:56%; --cy:0%; --ch:54%; --point:51% 45%;
  z-index:3;
}
.zf-collage-slide-3 .zf-panel-3 {
  --cx:57%; --cy:49%; --ch:51%; --point:54% 48%;
  z-index:4;
}
/* Cuarta: composición triangular complementaria.
   Una forma grande a la izquierda y dos triángulos opuestos. */
.zf-collage-slide-4 .zf-panel-1 {
  --cx:0%; --cy:3%; --cw:64%; --ch:94%;
  --mask:polygon(0 0,100% 50%,0 100%);
  --point:46% 50%; z-index:2;
}
.zf-collage-slide-4 .zf-panel-2 {
  --cx:48%; --cy:0%; --cw:52%; --ch:55%;
  --mask:polygon(0 0,100% 0,50% 100%);
  --point:50% 46%; z-index:3;
}
.zf-collage-slide-4 .zf-panel-3 {
  --cx:48%; --cy:45%; --cw:52%; --ch:55%;
  --mask:polygon(50% 0,100% 100%,0 100%);
  --point:50% 47%; z-index:4;
}
@media(max-width:1100px) {
  .zf-intro-full .zf-collage-copy {max-width:51%;}
  .zf-intro-full .zf-collage-panels {width:47%!important;right:2%!important;}
}
@media(max-width:800px) {
  .zf-intro-full .zf-collage-copy {
    max-width:100%!important;
    transform:none!important;
  }
  .zf-intro-full .zf-collage-panels {
    top:auto!important;
    bottom:26px!important;
    left:3%!important;
    right:3%!important;
    width:94%!important;
    height:36%!important;
  }
  .zf-intro-full .zf-collage-copy h1 span,
  .zf-intro-full .zf-collage-copy h2 span {font-size:.57em;}
}
@media(max-width:520px) {
  .zf-intro-full .zf-collage-copy {padding-top:28px!important;}
  .zf-intro-full .zf-collage-panels {
    top:auto!important;
    bottom:29px!important;
    left:3%!important;
    right:3%!important;
    width:94%!important;
    height:34%!important;
  }
  .zf-collage-slide-1 .zf-panel-1 {--cw:62%;}
  .zf-collage-slide-2 .zf-panel-1 {--cw:53%;}
  .zf-collage-slide-2 .zf-panel-2 {--cw:53%;}
}
@media(prefers-reduced-motion:reduce) {
  .zf-intro-full .zf-collage-panels .zf-collage-panel img {transform:none!important;}
}
