:root{--s25-yellow:#F2E63D;--s25-yellow2:#F2E63D;--s25-dark:#20262c;--s25-dark2:#2b3137;--s25-text:#181d22;--s25-muted:#69717a;--s25-line:#e4e7ea;--s25-soft:#f5f6f7;--s25-white:#fff;--s25-red:#560216;--s25-green:#2ca24c;--s25-shadow:0 8px 30px rgba(20,28,36,.08)}
*{box-sizing:border-box}.s25-standalone{margin:0;background:#eef1f3;color:var(--s25-text);font-family:Arial,Helvetica,sans-serif}.s25-standalone.admin-bar .s25-site-shell{margin-top:0}.s25-site-shell{max-width:1500px;margin:18px auto;background:#fff;box-shadow:0 14px 45px rgba(18,24,30,.14);overflow:hidden;border-radius:18px}.s25-main{min-height:520px;background:#f8f9fa}.s25-site-header{background:#fff}.s25-head-inner{min-height:160px;padding:20px 48px;display:grid;grid-template-columns:auto auto 1fr;gap:28px;align-items:center;background:linear-gradient(115deg,#fff 0%,#fff 68%,#f4f5f6 68%,#fff 100%);position:relative;overflow:hidden}.s25-head-inner.has-no-motto{grid-template-columns:auto 1fr}.s25-head-inner.has-no-tools{grid-template-columns:auto auto}.s25-head-inner.has-no-motto.has-no-tools{grid-template-columns:auto}.s25-head-inner:after{content:"";position:absolute;right:-40px;bottom:-70px;width:310px;height:160px;background:linear-gradient(135deg,transparent 0 45%,rgba(245,196,0,.9) 46% 58%,rgba(56,61,67,.10) 59% 72%,transparent 73%)}.s25-brand{display:flex;align-items:center;gap:18px;color:#111!important;text-decoration:none!important;z-index:1}.s25-brand img{width:112px;height:112px;object-fit:contain}.s25-brand div{display:flex;flex-direction:column;line-height:.95}.s25-brand strong{font-size:42px;letter-spacing:-1px}.s25-brand span{font-size:24px;font-weight:800;margin-top:7px}.s25-brand small{font-size:15px;letter-spacing:.35em;margin-top:8px;color:#444}.s25-motto{border-left:3px solid var(--s25-yellow);padding-left:25px;display:flex;gap:24px;align-items:center;z-index:1}.s25-motto strong{font-size:23px;line-height:1.05}.s25-motto span{color:#666;font-size:15px;line-height:1.15}.s25-head-tools{margin-left:auto;width:min(100%,560px);z-index:1}.s25-utility{display:flex;justify-content:flex-end;gap:18px;font-size:13px;margin-bottom:18px}.s25-utility a,.s25-utility span{color:#222;text-decoration:none}.s25-top-search{display:flex;justify-content:flex-end}.s25-top-search input{width:100%;height:46px;border:1px solid #ccd1d6;border-right:0;border-radius:10px 0 0 10px;padding:0 16px;font-size:15px;background:#fff}.s25-top-search button{width:55px;border:0;background:var(--s25-yellow);border-radius:0 10px 10px 0;cursor:pointer}.s25-top-search .dashicons{font-size:23px;width:23px;height:23px}.s25-menu-toggle{display:none}.s25-main-nav{display:flex;gap:0;background:linear-gradient(90deg,#1e242a,#252b31);padding:0 42px;border-bottom:3px solid var(--s25-yellow)}.s25-main-nav a{color:#fff!important;text-decoration:none!important;text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.02em;padding:18px 20px;display:flex;align-items:center;gap:6px;transition:.2s}.s25-main-nav a.is-home{background:var(--s25-yellow);color:#111!important}.s25-main-nav a:hover{background:#343b42}.s25-main-nav a.is-home:hover{background:var(--s25-yellow2)}
.s25-portal-home,.s25-page{max-width:100%;margin:0 auto}.s25-home-hero{min-height:260px;display:grid;grid-template-columns:1.15fr 1fr;position:relative;overflow:hidden;background:#fff}.s25-hero-copy{padding:48px 70px 44px;background:linear-gradient(135deg,#fff 0%,#fff 68%,#eef0f2 68%,#d9dde1 88%,#fff 88%);z-index:2}.s25-hero-copy>span,.s25-page-title>span{font-weight:900;font-size:22px;letter-spacing:.03em}.s25-hero-copy h1{font-size:48px;line-height:1.02;margin:8px 0 8px;letter-spacing:-1.6px}.s25-hero-copy i{display:block;width:76px;height:5px;background:var(--s25-yellow);margin:14px 0}.s25-hero-copy p{font-size:19px;color:#555;margin:0}.s25-hero-visual{background-size:cover;background-position:center;min-height:260px;position:relative}.s25-hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(245,196,0,.92) 0 7%,transparent 7% 100%)}.s25-counter{position:absolute;right:26px;bottom:26px;z-index:4;background:#fff;border:2px solid var(--s25-yellow);border-radius:14px;padding:16px 18px;display:flex;gap:13px;align-items:center;box-shadow:var(--s25-shadow);min-width:230px}.s25-counter>.dashicons{background:var(--s25-yellow);border-radius:50%;padding:8px;width:38px;height:38px;font-size:22px}.s25-counter div{display:flex;flex-direction:column}.s25-counter small{font-weight:700}.s25-counter strong{font-size:28px;line-height:1.05}.s25-counter em{font-style:normal;color:#777;font-size:12px}.s25-counter>b{color:var(--s25-yellow);font-size:32px;margin-left:auto}.s25-home-section{padding:20px 34px 14px}.s25-section-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.s25-section-head h2{font-size:22px;margin:0;text-transform:uppercase}.s25-section-head a{color:#1672c4!important;text-decoration:none;font-size:13px}.s25-services{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.s25-service{display:grid;grid-template-columns:58px 1fr 28px;align-items:center;gap:12px;min-height:100px;padding:14px 16px;background:#fff;border:1px solid var(--s25-line);border-radius:12px;color:#111!important;text-decoration:none!important;box-shadow:0 3px 12px rgba(10,20,30,.04);transition:.18s}.s25-service:hover{transform:translateY(-2px);box-shadow:var(--s25-shadow)}.s25-service.is-primary{background:linear-gradient(135deg,#fff8d5,#fff);border-color:#f2cf47}.s25-service>.dashicons{font-size:44px;width:48px;height:48px}.s25-service div{display:flex;flex-direction:column;gap:5px}.s25-service strong{font-size:18px;line-height:1.05}.s25-service small{font-size:14px;color:#68717a;line-height:1.2}.s25-service>b{width:25px;height:25px;display:flex;align-items:center;justify-content:center;background:var(--s25-yellow);border-radius:50%;font-size:22px}.s25-service:nth-child(n+5){min-height:84px}.s25-dashboard{padding:0 26px 26px;display:grid;gap:14px}.s25-dashboard-1{grid-template-columns:1fr}.s25-dashboard-2{grid-template-columns:repeat(2,1fr)}.s25-dashboard-3{grid-template-columns:1.25fr 1fr 1fr}.s25-dashboard-4{grid-template-columns:repeat(2,1fr)}.s25-panel{background:#fff;border:1px solid var(--s25-line);border-radius:12px;overflow:hidden}.s25-panel>header{display:flex;align-items:center;gap:9px;padding:13px 15px;background:#f2f3f4;border-bottom:1px solid var(--s25-line)}.s25-panel-notices>header{background:var(--s25-yellow)}.s25-panel>header strong{text-transform:uppercase;font-size:15px}.s25-panel>header a{margin-left:auto;color:#1672c4!important;text-decoration:none;font-size:12px}.s25-list,.s25-mini-news,.s25-mini-docs{display:flex;flex-direction:column}.s25-list-item,.s25-mini-news>a,.s25-mini-docs>a{display:grid;align-items:center;gap:10px;padding:12px 13px;border-bottom:1px solid #eceef0;text-decoration:none!important;color:#111!important}.s25-list-item{grid-template-columns:44px 9px 1fr 20px}.s25-list-item time{display:flex;flex-direction:column;align-items:center;background:#f6f7f8;padding:5px;border-radius:7px}.s25-list-item time b{font-size:18px}.s25-list-item time span{font-size:11px}.s25-list-item i{width:8px;height:8px;background:var(--s25-yellow);border-radius:50%}.s25-list-item:first-child i{background:#560216}.s25-list-item div,.s25-mini-news>a div,.s25-mini-docs>a div{display:flex;flex-direction:column;gap:3px}.s25-list-item strong,.s25-mini-news strong,.s25-mini-docs strong{font-size:14px}.s25-list-item small,.s25-mini-news small,.s25-mini-docs small{font-size:11px;color:#777}.s25-mini-news>a{grid-template-columns:62px 1fr 20px}.s25-mini-news img{width:62px;height:46px;object-fit:cover;border-radius:5px}.s25-mini-news>a>.dashicons:first-child{width:62px;height:46px;font-size:34px;background:#eef0f2;display:flex;align-items:center;justify-content:center}.s25-mini-docs>a{grid-template-columns:34px 1fr 20px}.s25-mini-docs>a>.dashicons:first-child{background:#560216;color:#fff;width:34px;height:34px;border-radius:6px;display:flex;align-items:center;justify-content:center}.s25-social-panel{border-top:1px solid var(--s25-line);padding:14px}.s25-social-panel h3{margin:0 0 5px;text-transform:uppercase;font-size:15px}.s25-social-panel p{margin:0 0 10px;color:#777;font-size:12px}.s25-socials{display:flex;flex-wrap:wrap;gap:8px}.s25-social{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none!important;color:#111!important}.s25-social>span{width:39px;height:39px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:900;background:#555}.s25-social em{font-size:10px;font-style:normal}.s25-social-facebook>span{background:#2767c8}.s25-social-instagram>span{background:#dd2a7b}.s25-social-x>span{background:#111}.s25-social-youtube>span{background:#560216}.s25-social-whatsapp>span{background:#20af5a}.s25-social.is-disabled{opacity:.35}.s25-site-footer{min-height:54px;background:#23292f;color:#fff;display:grid;grid-template-columns:1fr auto auto;gap:30px;align-items:center;padding:12px 32px;font-size:13px;border-bottom:4px solid var(--s25-yellow)}.s25-site-footer>div:first-child{display:flex;gap:18px;align-items:center}.s25-site-footer>div:first-child span{color:#cdd1d5}.s25-footer-social{display:flex;align-items:center;gap:8px}.s25-footer-social .s25-socials{gap:4px}.s25-footer-social .s25-social>span{width:24px;height:24px;border-radius:50%;font-size:12px}.s25-footer-social .s25-social em{display:none}.s25-site-footer small{color:#cdd1d5}
.s25-page{padding:34px 40px 44px}.s25-page-title{background:linear-gradient(135deg,#fff 0%,#fff 70%,#f0f2f3 70%,#dfe3e6 100%);border-left:7px solid var(--s25-yellow);padding:26px 30px;margin-bottom:24px;border-radius:10px;box-shadow:0 3px 12px rgba(10,20,30,.03)}.s25-page-title>span{font-size:14px;color:#6a727b;text-transform:uppercase}.s25-page-title h1{font-size:38px;margin:6px 0 8px}.s25-page-title p{margin:0;color:#646c75;font-size:17px}.s25-content-card{max-width:1180px;margin:34px auto;background:#fff;border-radius:12px;padding:34px;border:1px solid var(--s25-line);box-shadow:var(--s25-shadow)}.s25-content-card h1{font-size:36px;border-bottom:4px solid var(--s25-yellow);padding-bottom:12px}.s25-page-block{background:#fff;border:1px solid var(--s25-line);border-radius:12px;padding:22px;margin-bottom:24px}.s25-page-block h2{margin-top:0}.s25-search{display:flex;gap:10px;margin:18px 0 22px}.s25-search input{flex:1;min-height:46px;padding:0 14px;border:1px solid #cfd4d8;border-radius:8px;font-size:16px}.s25-search button{background:var(--s25-yellow);border:0;border-radius:8px;padding:0 22px;font-weight:800;cursor:pointer}.s25-docs{display:grid;gap:11px}.s25-doc{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--s25-line);border-radius:10px;padding:13px}.s25-pdf{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:9px;background:var(--s25-red);color:#fff;font-size:12px;font-weight:900}.s25-doc h3{margin:0 0 4px}.s25-doc p{margin:0;color:#737b83}.s25-doc-actions{display:flex;gap:7px}.s25-doc-actions a{padding:9px 12px;background:#252b31;color:#fff!important;text-decoration:none!important;border-radius:6px;font-size:13px}.s25-doc-actions a:last-child{background:var(--s25-yellow);color:#111!important}.s25-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.s25-card{background:#fff;border:1px solid var(--s25-line);border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(15,20,25,.05)}.s25-card-img,.s25-card-placeholder{width:100%;height:210px;object-fit:cover}.s25-card-placeholder{display:flex;align-items:center;justify-content:center;background:#eef0f2}.s25-card-placeholder .dashicons{font-size:50px;width:50px;height:50px;color:#9aa1a7}.s25-card-body{padding:16px}.s25-card-body h3{margin:5px 0 9px;font-size:20px}.s25-card-body h3 a{color:#20262c!important;text-decoration:none!important}.s25-card-body p{color:#626b73}.s25-date{font-size:12px;font-weight:800;color:#777}.s25-link{font-weight:800;text-decoration:none!important;color:#c18f00!important}.s25-results article{background:#fff;border-bottom:1px solid #e7e9eb;padding:16px}.s25-results h3{margin:0 0 4px}.s25-results a{color:#20262c!important}.s25-empty{padding:20px;color:#777;background:#fafafa;border-radius:8px}
.s25-request{background:#fff;border:1px solid #e1e4e7;border-radius:13px;overflow:hidden;box-shadow:0 5px 18px rgba(15,20,25,.05);margin-top:26px}.s25-request-head{background:var(--s25-yellow);display:flex;align-items:center;justify-content:space-between;padding:14px 18px}.s25-request-head>div{display:flex;align-items:center;gap:8px}.s25-request-head strong{font-size:18px}.s25-request-head small{font-weight:700}.s25-request-body{padding:20px 22px}.s25-request-body h2{margin:0 0 5px}.s25-request-body>p{margin:0 0 18px;color:#69717a}.s25-request-form{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.s25-request-form label,.s25-request-form fieldset{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;margin:0}.s25-request-form b{color:#560216}.s25-request-form input[type=text],.s25-request-form input[type=tel],.s25-request-form input[type=email],.s25-request-form input[type=file],.s25-request-form textarea{width:100%;border:1px solid #d0d5d9;border-radius:7px;background:#fff;padding:11px 12px;font:inherit;font-weight:400}.s25-request-form textarea{resize:vertical;min-height:140px}.s25-request-type{border:0;padding:0;display:grid!important;grid-template-columns:1fr 1fr 1fr;align-content:end}.s25-request-type legend{font-weight:700;margin-bottom:7px}.s25-request-type label{display:flex;flex-direction:row;align-items:center;font-weight:400}.s25-request-form .wide{grid-column:1/-1}.s25-file{position:relative}.s25-file>span{font-weight:800}.s25-file small{color:#777;font-weight:400}.s25-privacy{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px!important;font-weight:400!important}.s25-form-actions{align-items:flex-end}.s25-form-actions button{margin-left:auto;background:var(--s25-yellow);border:0;border-radius:8px;padding:12px 22px;font-weight:900;display:flex;align-items:center;gap:7px;cursor:pointer}.s25-alert{padding:12px 14px;border-radius:8px;margin:0 0 16px}.s25-alert.success{background:#eaf8ee;border:1px solid #a4d8b0;color:#17662a}.s25-alert.error{background:#fff0f1;border:1px solid #e7b4b8;color:#560216}.s25-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.s25-char-count{align-self:flex-end;color:#777;font-weight:400}
@media(max-width:1180px){.s25-site-shell{margin:0;border-radius:0}.s25-head-inner{grid-template-columns:auto 1fr;padding:18px 28px}.s25-head-inner.has-no-tools{grid-template-columns:auto}.s25-motto{display:none}.s25-services{grid-template-columns:repeat(3,1fr)}.s25-dashboard,.s25-dashboard-1,.s25-dashboard-2,.s25-dashboard-3,.s25-dashboard-4{grid-template-columns:repeat(2,1fr)}.s25-dashboard-1{grid-template-columns:1fr}.s25-request-form{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.s25-head-inner,.s25-head-inner.has-no-motto,.s25-head-inner.has-no-tools,.s25-head-inner.has-no-motto.has-no-tools{grid-template-columns:1fr;padding:15px 20px}.s25-brand img{width:72px;height:72px}.s25-brand strong{font-size:30px}.s25-brand span{font-size:18px}.s25-brand small{font-size:12px}.s25-head-tools{width:100%;margin:0}.s25-utility{display:none}.s25-menu-toggle{display:flex;width:100%;border:0;background:#20262c;color:#fff;padding:12px 18px;align-items:center;gap:7px;font-weight:800}.s25-main-nav{display:none;flex-direction:column;padding:0}.s25-main-nav.is-open{display:flex}.s25-main-nav a{padding:13px 20px;border-bottom:1px solid #343b42}.s25-home-hero{grid-template-columns:1fr}.s25-hero-copy{padding:34px 26px}.s25-hero-copy h1{font-size:38px}.s25-hero-visual{min-height:220px}.s25-counter{right:18px;bottom:18px}.s25-services{grid-template-columns:repeat(2,1fr)}.s25-dashboard,.s25-dashboard-1,.s25-dashboard-2,.s25-dashboard-3,.s25-dashboard-4{grid-template-columns:1fr}.s25-grid{grid-template-columns:repeat(2,1fr)}.s25-site-footer{grid-template-columns:1fr;gap:9px}.s25-footer-social{justify-content:flex-start}.s25-request-form{grid-template-columns:1fr}.s25-request-form .wide{grid-column:auto}.s25-request-type{grid-template-columns:1fr 1fr 1fr}.s25-page{padding:24px 18px}}
@media(max-width:560px){.s25-head-inner{min-height:auto}.s25-brand img{width:58px;height:58px}.s25-brand strong{font-size:24px}.s25-brand span{font-size:15px}.s25-brand small{font-size:10px}.s25-top-search input{font-size:13px}.s25-hero-copy h1{font-size:32px}.s25-counter{position:relative;right:auto;bottom:auto;margin:-8px 16px 14px}.s25-services{grid-template-columns:1fr}.s25-dashboard{padding:0 14px 20px}.s25-grid{grid-template-columns:1fr}.s25-doc{grid-template-columns:52px 1fr}.s25-doc-actions{grid-column:1/-1}.s25-search{flex-direction:column}.s25-search button{min-height:44px}.s25-request-type{grid-template-columns:1fr}.s25-site-footer{padding:14px 18px}.s25-site-footer>div:first-child{flex-direction:column;align-items:flex-start;gap:4px}.s25-footer-social{align-items:flex-start;flex-direction:column}}

/* v2.5: contador en el pie de página y compatibilidad con el tema de WordPress */
.s25-footer-counter{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:8px 12px;min-width:170px;color:#fff}
.s25-footer-counter>.dashicons{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--s25-yellow);color:#111;font-size:18px}
.s25-footer-counter>div{display:flex;flex-direction:column;line-height:1.05}
.s25-footer-counter small{font-size:10px;font-weight:700;color:#d9dde1}
.s25-footer-counter strong{font-size:20px;line-height:1.1;color:#fff}
.s25-footer-counter em{font-size:10px;font-style:normal;color:#cdd1d5}
.s25-site-footer{grid-template-columns:minmax(220px,1fr) auto auto auto}
.s25-footer-brand{display:flex;gap:18px;align-items:center}
.s25-footer-brand span{color:#cdd1d5}
.s25-footer-tagline{color:#cdd1d5}
.s25-theme-counter-wrap{max-width:1500px;margin:0 auto;padding:10px 18px 14px;background:var(--s25-dark,#20262c);border-bottom:4px solid var(--s25-yellow,#F2E63D)}
.s25-footer-counter-theme{width:max-content;max-width:100%;margin-left:auto}

/* Permite que el contenido del portal conserve el aspecto 2.3 dentro de un tema de bloques. */
.s25-theme-mode .s25-portal-home,.s25-theme-mode .s25-page{max-width:1500px;margin-left:auto;margin-right:auto}
.s25-theme-mode .wp-block-post-content:has(.s25-portal-home),.s25-theme-mode .entry-content:has(.s25-portal-home),.s25-theme-mode .wp-block-post-content:has(.s25-page),.s25-theme-mode .entry-content:has(.s25-page){max-width:none!important;width:100%!important;padding-left:0!important;padding-right:0!important}
.s25-theme-mode .s25-home-hero,.s25-theme-mode .s25-home-section,.s25-theme-mode .s25-dashboard,.s25-theme-mode .s25-page{font-family:Arial,Helvetica,sans-serif}

@media(max-width:850px){
  .s25-site-footer{grid-template-columns:1fr;gap:10px}
  .s25-footer-counter-theme{margin-left:0}
  .s25-footer-counter{width:100%;max-width:280px}
}

/* v2.6: identidad visual institucional gris grafito + dorado + blanco */
.s25-head-inner{background:linear-gradient(115deg,#fff 0%,#fff 66%,#f1f2f3 66%,#e2e4e6 82%,#fff 100%)}
.s25-head-inner:after{background:linear-gradient(135deg,transparent 0 43%,rgba(212,176,58,.96) 44% 55%,rgba(63,67,72,.18) 56% 70%,transparent 71%)}
.s25-motto{border-left-color:var(--s25-yellow)}
.s25-main-nav{background:linear-gradient(90deg,var(--s25-dark),#4a4f54)}
.s25-home-hero{background:#fff}
.s25-hero-copy{background:linear-gradient(135deg,#fff 0%,#fff 66%,#f2f3f4 66%,#d9dcdf 87%,#fff 87%)}
.s25-hero-visual:before{background:linear-gradient(120deg,rgba(212,176,58,.92) 0 7%,rgba(63,67,72,.18) 7% 12%,transparent 12% 100%)}
.s25-service.is-primary{background:linear-gradient(135deg,#fbf7e8,#fff);border-color:rgba(212,176,58,.72)}
.s25-service:hover{border-color:rgba(212,176,58,.72)}
.s25-page-title{background:linear-gradient(135deg,#fff 0%,#fff 70%,#f1f2f3 70%,#dfe1e3 100%)}
.s25-request,.s25-panel,.s25-content-card,.s25-card,.s25-doc{border-color:#d9dcdf}
.s25-footer-counter>.dashicons{background:var(--s25-yellow);color:#272b2f}
.s25-footer-counter{background:rgba(255,255,255,.07);border-color:rgba(212,176,58,.42)}
.s25-site-footer{box-shadow:inset 0 3px 0 rgba(212,176,58,.85)}
.s25-theme-counter-wrap{background:var(--s25-dark,#3F4348);border-bottom-color:var(--s25-yellow,#F2E63D)}

/* v2.7.2: maqueta institucional rojo + amarillo + gris degradado claro */
.s25-standalone{background:#eef0f2}
.s25-site-shell{max-width:none;margin:0;border-radius:0;box-shadow:none}
.s25-topbar{background:linear-gradient(90deg,#737a81 0%,#666d74 48%,#858c92 100%);color:#fff;font-size:13px}
.s25-topbar-inner{max-width:1380px;margin:0 auto;min-height:32px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.s25-contact-strip{display:flex;align-items:center;gap:24px}.s25-contact-strip a,.s25-contact-strip span{color:#fff!important;text-decoration:none!important;display:flex;align-items:center;gap:7px}.s25-contact-strip .dashicons{font-size:16px;width:16px;height:16px}
.s25-topbar-tools{display:flex;align-items:center;gap:18px}.s25-topbar-tools .s25-socials{gap:8px}.s25-topbar-tools .s25-social>span{width:24px;height:24px;background:transparent!important;font-size:17px}.s25-topbar-tools .s25-social em{display:none}.s25-topbar-tools .s25-top-search{width:235px}.s25-topbar-tools .s25-top-search input{height:28px;border:0;border-radius:5px 0 0 5px;font-size:12px;padding:0 10px}.s25-topbar-tools .s25-top-search button{height:28px;width:34px;border-radius:0 5px 5px 0;background:#f4f4f4!important;color:#222!important}.s25-topbar-tools .s25-top-search .dashicons{font-size:17px;width:17px;height:17px}
.s25-brand-banner{min-height:168px;background-size:cover;background-position:center right;display:flex;align-items:center;padding:18px max(24px,calc((100% - 1380px)/2 + 24px));position:relative;overflow:hidden}.s25-brand-banner:after{content:"";position:absolute;right:-50px;bottom:-54px;width:420px;height:120px;background:linear-gradient(160deg,transparent 0 38%,#F2E63D 39% 47%,#560216 48% 66%,#560216 67% 100%);transform:skewX(-18deg);opacity:.95}.s25-brand-v27{position:relative;z-index:2;display:flex;align-items:center;gap:18px;color:#fff!important;text-decoration:none!important}.s25-brand-v27 img{width:145px;height:122px;object-fit:contain}.s25-brand-divider{width:2px;height:105px;background:#F2E63D}.s25-brand-words{display:flex;flex-direction:column}.s25-brand-words strong{font-size:28px;line-height:1.03;letter-spacing:-.02em}.s25-brand-words em{display:block;width:310px;max-width:100%;height:2px;background:#F2E63D;margin:10px 0 9px}.s25-brand-words small{font-size:15px;letter-spacing:.36em}
.s25-main-nav{padding:0 max(18px,calc((100% - 1380px)/2 + 18px));background:linear-gradient(90deg,#560216,#560216)!important;border-bottom:0;justify-content:center}.s25-main-nav a{font-size:13px;padding:15px 18px;border-left:1px solid rgba(255,255,255,.08);white-space:nowrap}.s25-main-nav a b{font-size:15px;line-height:1}.s25-main-nav a.is-home{background:#F2E63D!important;color:#560216!important}.s25-main-nav a:hover{background:#560216!important}.s25-main-nav a.is-home:hover{background:#F2E63D!important}.s25-menu-toggle{background:#560216!important}
.s25-main{background:#f7f7f7}
.s25-home-hero-v27{height:330px;min-height:330px;display:block;position:relative;background:#fff;overflow:hidden}.s25-home-hero-v27 .s25-hero-photo{position:absolute;inset:0;background-size:cover;background-position:center right}.s25-home-hero-v27:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-56px;height:102px;background:linear-gradient(165deg,transparent 0 23%,#F2E63D 24% 30%,#560216 31% 48%,#fff 49% 100%);z-index:2}.s25-hero-copy-v27{position:relative;z-index:3;width:min(680px,52%);padding:42px 0 40px max(40px,calc((100% - 1180px)/2));background:none!important}.s25-hero-copy-v27>span{display:block;font-size:42px;line-height:.95;font-weight:900;color:#30343a;letter-spacing:-1.5px}.s25-hero-copy-v27 h1{font-size:48px;line-height:.95;color:#560216;margin:5px 0 8px;letter-spacing:-1.8px}.s25-hero-copy-v27 p{max-width:500px;font-size:17px;line-height:1.25;color:#3e4349;margin:0 0 16px}.s25-hero-button{display:inline-flex;align-items:center;gap:20px;background:#560216;color:#fff!important;text-decoration:none!important;font-weight:900;border-radius:26px;padding:12px 26px}.s25-hero-button span{font-size:22px}.s25-hero-arrow{position:absolute;z-index:4;top:46%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(48,52,58,.72);color:#fff;font-size:34px;line-height:1;cursor:default}.s25-hero-arrow.left{left:28px}.s25-hero-arrow.right{right:28px}.s25-hero-dots{position:absolute;z-index:4;bottom:26px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.s25-hero-dots b,.s25-hero-dots i{width:13px;height:13px;border-radius:50%;background:#fff;display:block}.s25-hero-dots b{background:#560216}
.s25-home-shortcuts{position:relative;z-index:5;max-width:1380px;margin:-3px auto 0;padding:0 22px}.s25-services-v27{grid-template-columns:repeat(8,1fr);gap:8px}.s25-service-v27{min-height:108px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 8px!important;border:0!important;border-radius:6px!important;text-align:center;color:#fff!important;box-shadow:0 3px 10px rgba(0,0,0,.16)!important}.s25-service-v27.is-red{background:linear-gradient(145deg,#560216,#560216)!important}.s25-service-v27.is-dark{background:linear-gradient(145deg,#81878d,#62686e)!important}.s25-service-v27>.dashicons{font-size:38px;width:40px;height:40px;color:#fff}.s25-service-v27 strong{font-size:14px;line-height:1.08;text-transform:uppercase}.s25-service-v27:hover{transform:translateY(-2px);filter:brightness(1.05)}
.s25-home-lower{max-width:1380px;margin:0 auto;padding:18px 22px 26px;display:grid;grid-template-columns:1.7fr 1fr;gap:24px;background:#fff}.s25-home-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;border-left:5px solid #F2E63D;padding-left:10px}.s25-home-heading h2{font-size:20px;margin:0;color:#30343a}.s25-home-heading a{font-size:11px;text-decoration:none!important;color:#333!important;font-weight:700}.s25-home-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.s25-home-news-card{background:#fff;border:1px solid #e0e2e5;border-radius:7px;overflow:hidden;box-shadow:0 2px 7px rgba(0,0,0,.05)}.s25-home-news-media{display:block;height:138px;background:#eceff1}.s25-home-news-img{width:100%;height:138px;object-fit:cover}.s25-home-news-media>.dashicons{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:44px;color:#8e949a}.s25-home-news-body{padding:10px 12px 13px}.s25-home-news-body small{display:flex;gap:5px;align-items:center;font-size:10px;font-weight:700;color:#555;text-transform:uppercase}.s25-home-news-body small .dashicons{font-size:12px;width:12px;height:12px}.s25-home-news-body h3{font-size:16px;line-height:1.1;margin:5px 0}.s25-home-news-body h3 a{color:#30343a!important;text-decoration:none!important}.s25-home-news-body p{font-size:12px;line-height:1.25;color:#62676c;margin:0}.s25-home-calls{display:flex;flex-direction:column;border:1px solid #e2e4e7;border-radius:7px;overflow:hidden}.s25-home-calls>a{display:grid;grid-template-columns:32px 1fr auto 18px;gap:9px;align-items:center;min-height:47px;padding:8px 12px;border-bottom:1px solid #e6e7e9;color:#30343a!important;text-decoration:none!important}.s25-home-calls>a:last-child{border-bottom:0}.s25-call-icon{width:28px;height:28px;border-radius:6px;background:#560216;color:#fff;display:flex;align-items:center;justify-content:center}.s25-call-icon .dashicons{font-size:16px;width:16px;height:16px}.s25-home-calls strong{font-size:12px;line-height:1.15}.s25-home-calls time{font-size:9px;color:#6c7176;white-space:nowrap}.s25-home-calls>a>.dashicons{font-size:15px;width:15px;height:15px}
.s25-page-title{border-left-color:#F2E63D}.s25-doc-actions a:last-child{background:#F2E63D!important;color:#1c1c1c!important}.s25-pdf{background:#560216}
.s25-site-footer-v27{display:block!important;padding:0!important;background:linear-gradient(100deg,#777e84 0%,#656c72 50%,#858c92 100%)!important;border:0!important;box-shadow:none!important}.s25-footer-main{max-width:1380px;margin:0 auto;padding:28px 22px 20px;display:grid;grid-template-columns:1.6fr .7fr .7fr .8fr;gap:35px;align-items:start}.s25-footer-identity{display:flex;gap:18px;align-items:center}.s25-footer-identity img{width:115px;height:92px;object-fit:contain}.s25-footer-identity div{display:flex;flex-direction:column;color:#fff}.s25-footer-identity strong{font-size:16px;line-height:1.08}.s25-footer-identity span{margin-top:8px;padding-top:8px;border-top:2px solid #F2E63D;font-size:11px;letter-spacing:.28em}.s25-footer-links{display:flex;flex-direction:column;gap:4px}.s25-footer-links strong,.s25-footer-social-v27>strong{color:#fff;margin-bottom:4px}.s25-footer-links a{color:#ddd!important;text-decoration:none!important;font-size:12px}.s25-footer-social-v27{border-left:1px solid rgba(255,255,255,.34);padding-left:28px}.s25-footer-social-v27 .s25-socials{margin-top:8px}.s25-footer-social-v27 .s25-social>span{border-radius:50%;width:29px;height:29px;background:#fff!important;color:#686e74!important}.s25-footer-social-v27 .s25-social em{display:none}.s25-footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding:11px max(22px,calc((100% - 1380px)/2 + 22px));display:flex;justify-content:space-between;gap:20px;color:#d9dbde;font-size:10px}.s25-footer-bottom a{color:#e4e6e8!important;text-decoration:none!important}.s25-footer-bottom span:last-child{display:flex;gap:14px;align-items:center}.s25-footer-bottom i{width:1px;height:13px;background:rgba(255,255,255,.3)}
.s25-footer-counter{display:none!important}

@media(max-width:1180px){.s25-services-v27{grid-template-columns:repeat(4,1fr)}.s25-home-lower{grid-template-columns:1fr}.s25-brand-v27 img{width:120px}.s25-brand-words strong{font-size:24px}.s25-main-nav a{padding:14px 12px;font-size:11px}.s25-footer-main{grid-template-columns:1.4fr 1fr 1fr}}
@media(max-width:850px){.s25-topbar-inner{align-items:flex-start;flex-direction:column;padding:8px 16px}.s25-topbar-tools{width:100%;justify-content:space-between}.s25-topbar-tools .s25-top-search{width:min(100%,340px)}.s25-brand-banner{min-height:135px;padding:15px 18px}.s25-brand-v27 img{width:92px;height:88px}.s25-brand-divider{height:80px}.s25-brand-words strong{font-size:19px}.s25-brand-words small{font-size:10px}.s25-brand-words em{width:220px}.s25-menu-toggle{display:flex;width:100%;border:0;color:#fff;padding:12px 18px;align-items:center;gap:7px;font-weight:800}.s25-main-nav{display:none;flex-direction:column;padding:0}.s25-main-nav.is-open{display:flex}.s25-main-nav a{padding:13px 18px;border-bottom:1px solid rgba(255,255,255,.14)}.s25-home-hero-v27{height:310px}.s25-hero-copy-v27{width:72%;padding:38px 25px}.s25-hero-copy-v27>span{font-size:34px}.s25-hero-copy-v27 h1{font-size:40px}.s25-services-v27{grid-template-columns:repeat(2,1fr)}.s25-home-news-grid{grid-template-columns:1fr 1fr}.s25-footer-main{grid-template-columns:1fr 1fr}.s25-footer-identity{grid-column:1/-1}.s25-footer-social-v27{border-left:0;padding-left:0}.s25-footer-bottom{flex-direction:column}}
@media(max-width:560px){.s25-contact-strip{gap:10px;flex-direction:column;align-items:flex-start}.s25-topbar-tools{align-items:flex-start;flex-direction:column}.s25-brand-banner{min-height:115px}.s25-brand-v27{gap:10px}.s25-brand-v27 img{width:72px;height:72px}.s25-brand-divider{height:60px}.s25-brand-words strong{font-size:14px}.s25-brand-words small{font-size:8px;letter-spacing:.18em}.s25-brand-words em{width:170px;margin:6px 0}.s25-home-hero-v27{height:300px}.s25-hero-copy-v27{width:88%;padding:32px 22px}.s25-hero-copy-v27>span{font-size:27px}.s25-hero-copy-v27 h1{font-size:34px}.s25-hero-copy-v27 p{font-size:14px}.s25-hero-arrow{display:none}.s25-services-v27{grid-template-columns:1fr 1fr}.s25-home-news-grid{grid-template-columns:1fr}.s25-footer-main{grid-template-columns:1fr}.s25-footer-links-secondary strong{display:none}.s25-footer-bottom span:last-child{flex-wrap:wrap}}

/* v2.7.2 - aclarado visual solicitado */
.s25-brand-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.14));z-index:1;pointer-events:none}
.s25-brand-v27{z-index:2}
.s25-service-v27.is-dark:hover{filter:brightness(1.08)}

/* Slider funcional v2.7.3 */
.s25-home-hero-v27.s25-slider{position:relative}
.s25-slider .s25-slides{position:absolute;inset:0;z-index:1}
.s25-slider .s25-slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s ease}
.s25-slider .s25-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}
.s25-slider .s25-slide .s25-hero-photo{position:absolute;inset:0;background-size:cover;transition:transform 7s ease}
.s25-slider .s25-slide.is-active .s25-hero-photo{transform:scale(1.025)}
.s25-slider .s25-slide .s25-hero-copy-v27{position:relative;z-index:3}
.s25-slider .s25-hero-arrow{cursor:pointer;z-index:8;transition:background .2s ease,transform .2s ease}
.s25-slider .s25-hero-arrow:hover{background:rgba(48,52,58,.9);transform:translateY(-50%) scale(1.06)}
.s25-slider .s25-hero-dots{z-index:9}
.s25-slider .s25-hero-dot{width:13px;height:13px;border-radius:50%;border:0;background:#fff;padding:0;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.s25-slider .s25-hero-dot.is-active{background:#560216}
.s25-slider .s25-hero-dot:focus-visible,.s25-slider .s25-hero-arrow:focus-visible{outline:3px solid #F2E63D;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.s25-slider .s25-slide,.s25-slider .s25-slide .s25-hero-photo{transition:none!important;transform:none!important}}


/* v2.7.4 - corrección visual para acercar la portada al mockup aprobado */
.s25-standalone{background:#f4f4f4}
.s25-site-shell{max-width:none;margin:0;background:#fff;box-shadow:none;border-radius:0}
.s25-topbar{background:linear-gradient(90deg,#5e656c 0%,#6c737a 38%,#7d848b 100%)}
.s25-topbar-inner,.s25-home-shortcuts,.s25-home-lower,.s25-footer-main{max-width:1536px}
.s25-brand-banner{min-height:182px;padding:18px max(28px,calc((100% - 1536px)/2 + 28px));background-position:center center}
.s25-brand-banner:before{background:linear-gradient(90deg,rgba(255,255,255,.02) 0%,rgba(255,255,255,.12) 48%,rgba(255,255,255,.02) 100%)}
.s25-brand-banner:after{right:-45px;bottom:-40px;width:470px;height:135px;background:linear-gradient(160deg,transparent 0 37%,#F2E63D 38% 45%,#560216 46% 66%,#560216 67% 100%)}
.s25-brand-v27{gap:22px}
.s25-brand-v27 img{width:162px;height:138px}
.s25-brand-divider{height:115px}
.s25-brand-words strong{font-size:31px;line-height:1.04}
.s25-brand-words em{width:340px;height:3px;margin:10px 0}
.s25-brand-words small{font-size:15px;letter-spacing:.4em}
.s25-main-nav{padding:0 max(0px,calc((100% - 1536px)/2));background:#560216;border-bottom:0;min-height:46px}
.s25-main-nav a{padding:16px 18px;font-size:13px;background:transparent}
.s25-main-nav a.is-home{background:#f3d466;color:#560216!important}
.s25-main-nav a:hover{background:#560216}
.s25-main-nav a.is-home:hover{background:#f3d466}
.s25-main-nav a b{font-size:10px;opacity:.9}
.s25-home-hero-v27{height:408px;min-height:408px;background:#fff}
.s25-home-hero-v27:after{left:-3%;right:-3%;bottom:-54px;height:110px;background:linear-gradient(167deg,transparent 0 20%,#F2E63D 21% 27%,#560216 28% 45%,#fff 46% 100%)}
.s25-slider .s25-slide .s25-hero-photo{background-size:cover;background-position:center center}
.s25-hero-copy-v27{width:min(650px,46%);padding:64px 0 34px max(82px,calc((100% - 1170px)/2));}
.s25-hero-copy-v27>span{font-size:62px;line-height:.9;color:#2f3439;letter-spacing:-2.3px}
.s25-hero-copy-v27 h1{font-size:63px;line-height:.9;color:#560216;letter-spacing:-2.4px;margin:4px 0 8px}
.s25-hero-copy-v27 p{max-width:470px;font-size:17px;color:#43484e;margin:0 0 14px}
.s25-hero-button{padding:13px 28px;border-radius:26px;font-size:15px;box-shadow:0 6px 18px rgba(180,0,14,.12)}
.s25-hero-button span{font-size:24px}
.s25-hero-arrow{width:46px;height:46px;background:rgba(94,99,105,.72)}
.s25-hero-arrow.left{left:36px}.s25-hero-arrow.right{right:36px}
.s25-hero-dots{bottom:24px}
.s25-home-shortcuts{margin:-52px auto 0;padding:0 24px;z-index:8}
.s25-services-v27{gap:10px}
.s25-service-v27{min-height:112px!important;border-radius:8px!important}
.s25-service-v27 strong{font-size:14px;letter-spacing:0}
.s25-service-v27.is-red{background:linear-gradient(145deg,#560216,#560216)!important}
.s25-service-v27.is-dark{background:linear-gradient(145deg,#81878d,#666d73)!important}
.s25-home-lower{padding:16px 24px 30px;background:#fff;grid-template-columns:1.72fr 1fr}
.s25-home-heading{margin:0 0 10px;border-left:5px solid #F2E63D;padding-left:12px}
.s25-home-heading h2{font-size:20px;letter-spacing:.01em}
.s25-home-news-grid{gap:14px}
.s25-home-news-card{border-radius:8px}
.s25-home-news-media,.s25-home-news-img{height:140px}
.s25-home-news-body{padding:10px 14px 14px}
.s25-home-news-body h3{font-size:17px}
.s25-home-calls{border-radius:8px}
.s25-home-calls>a{min-height:48px;padding:8px 14px}
.s25-home-calls strong{font-size:13px}
.s25-site-footer-v27{background:linear-gradient(100deg,#6e757c 0%,#61686f 52%,#7a8188 100%)!important}
.s25-footer-main{padding:30px 24px 20px;grid-template-columns:1.7fr .75fr .75fr .8fr}
.s25-footer-identity img{width:128px;height:102px}
.s25-footer-identity strong{font-size:17px}
.s25-footer-identity span{font-size:12px}
.s25-footer-bottom{padding:12px max(24px,calc((100% - 1536px)/2 + 24px));font-size:11px}
@media(max-width:1180px){.s25-home-hero-v27{height:350px;min-height:350px}.s25-hero-copy-v27{width:55%;padding:48px 26px}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:48px}.s25-home-shortcuts{margin:0 auto;padding:12px 18px 0}.s25-home-lower{grid-template-columns:1fr}}
@media(max-width:850px){.s25-site-shell{overflow:hidden}.s25-brand-banner{min-height:140px}.s25-home-hero-v27{height:310px;min-height:310px}.s25-hero-copy-v27{width:78%;padding:40px 24px}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:40px}.s25-home-shortcuts{margin:0 auto;padding:12px 16px 0}}
@media(max-width:560px){.s25-brand-v27 img{width:78px;height:78px}.s25-brand-words strong{font-size:15px}.s25-main-nav{padding:0}.s25-home-hero-v27{height:290px;min-height:290px}.s25-hero-copy-v27{width:90%;padding:32px 18px}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:32px}.s25-home-lower{padding:14px 14px 24px}}


/* v2.7.8 — maqueta aprobada, sin superposición de tarjetas sobre el slider */
.s25-site-shell{max-width:none!important;margin:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
.s25-main{background:#fff!important}
.s25-topbar{background:linear-gradient(90deg,#555d64 0%,#697178 48%,#7c848b 100%)!important}
.s25-topbar-inner{max-width:1370px!important;min-height:30px!important;padding:0 24px!important}
.s25-brand-banner{min-height:170px!important;padding:8px max(26px,calc((100% - 1370px)/2 + 26px))!important;background-position:center center!important;background-size:cover!important}
.s25-brand-banner:before{background:linear-gradient(90deg,rgba(56,64,72,.12) 0%,rgba(255,255,255,.06) 55%,rgba(255,255,255,.01) 100%)!important}
.s25-brand-banner:after{right:-40px!important;bottom:-42px!important;width:445px!important;height:126px!important;opacity:1!important}
.s25-brand-v27{gap:18px!important}
.s25-brand-v27 img{width:215px!important;height:160px!important;object-fit:cover!important;border-radius:0!important}
.s25-brand-divider{height:116px!important;width:2px!important}
.s25-brand-words strong{font-size:28px!important;line-height:1.03!important;letter-spacing:-.015em!important}
.s25-brand-words em{width:310px!important;height:2px!important;margin:10px 0 9px!important}
.s25-brand-words small{font-size:14px!important;letter-spacing:.36em!important}
.s25-main-nav{min-height:49px!important;padding:0 max(0px,calc((100% - 1370px)/2))!important;background:#560216!important;border-bottom:0!important}
.s25-main-nav a{padding:16px 18px!important;font-size:13px!important;color:#fff!important}
.s25-main-nav a.is-home{background:#F2E63D!important;color:#560216!important}
.s25-main-nav a:hover{background:#560216!important}
.s25-main-nav a.is-home:hover{background:#F2E63D!important}
.s25-home-hero-v27{height:250px!important;min-height:250px!important;overflow:hidden!important}
.s25-home-hero-v27:after{display:none!important}
.s25-slider .s25-slide .s25-hero-photo{background-size:cover!important;background-position:center center!important;transform:none!important}
.s25-hero-copy-v27{width:min(590px,48%)!important;padding:29px 0 20px max(42px,calc((100% - 1168px)/2))!important}
.s25-hero-copy-v27>span{font-size:50px!important;line-height:.94!important;color:#30343a!important;letter-spacing:-1.8px!important}
.s25-hero-copy-v27 h1{font-size:52px!important;line-height:.92!important;color:#560216!important;margin:3px 0 7px!important;letter-spacing:-1.8px!important}
.s25-hero-copy-v27 p{max-width:470px!important;font-size:16px!important;line-height:1.2!important;color:#41464c!important;margin:0 0 12px!important}
.s25-hero-button{padding:11px 26px!important;border-radius:24px!important;font-size:13px!important;gap:18px!important;background:#560216!important}
.s25-hero-arrow{top:44%!important;width:42px!important;height:42px!important;background:linear-gradient(145deg,rgba(113,119,125,.78),rgba(68,74,80,.78))!important}
.s25-hero-arrow.left{left:38px!important}.s25-hero-arrow.right{right:38px!important}
.s25-hero-dots{bottom:10px!important}
.s25-slider .s25-hero-dot{width:13px!important;height:13px!important}
.s25-home-shortcuts{max-width:1370px!important;margin:10px auto 0!important;padding:0 22px!important}
.s25-services-v27{grid-template-columns:repeat(8,1fr)!important;gap:8px!important}
.s25-service-v27{min-height:108px!important;border-radius:6px!important;box-shadow:0 2px 7px rgba(0,0,0,.13)!important}
.s25-service-v27.is-red{background:linear-gradient(145deg,#560216 0%,#560216 100%)!important}
.s25-service-v27.is-dark{background:linear-gradient(145deg,#81888e 0%,#5e666d 100%)!important}
.s25-service-v27>.dashicons{font-size:37px!important;width:39px!important;height:39px!important}
.s25-service-v27 strong{font-size:13px!important;color:#fff!important}
.s25-home-lower{max-width:1370px!important;margin:0 auto!important;padding:12px 22px 26px!important;grid-template-columns:1.7fr 1fr!important;gap:22px!important;background:#fff!important}
.s25-home-heading{border-left:5px solid #F2E63D!important;padding-left:10px!important;margin:0 0 10px!important}
.s25-home-heading h2{font-size:20px!important;color:#30343a!important}
.s25-home-news-grid{gap:12px!important}.s25-home-news-media,.s25-home-news-img{height:136px!important}
.s25-home-news-body h3{font-size:16px!important}.s25-home-calls>a{min-height:47px!important}
.s25-site-footer-v27{background:linear-gradient(100deg,#596168 0%,#656d74 48%,#7a8289 100%)!important}
.s25-footer-main{max-width:1370px!important;padding:26px 22px 18px!important}
.s25-footer-identity img{width:112px!important;height:84px!important;object-fit:cover!important}
.s25-footer-bottom{padding:11px max(22px,calc((100% - 1370px)/2 + 22px))!important}
@media(max-width:1180px){.s25-brand-v27 img{width:165px!important;height:124px!important}.s25-brand-words strong{font-size:23px!important}.s25-home-hero-v27{height:280px!important;min-height:280px!important}.s25-hero-copy-v27{width:58%!important;padding:36px 28px!important}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:43px!important}.s25-services-v27{grid-template-columns:repeat(4,1fr)!important}.s25-home-lower{grid-template-columns:1fr!important}}
@media(max-width:850px){.s25-brand-v27 img{width:120px!important;height:90px!important}.s25-brand-banner{min-height:135px!important}.s25-home-hero-v27{height:300px!important;min-height:300px!important}.s25-hero-copy-v27{width:78%!important}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:38px!important}.s25-home-shortcuts{padding:10px 16px 0!important}.s25-services-v27{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:560px){.s25-brand-v27 img{width:95px!important;height:72px!important}.s25-brand-words strong{font-size:14px!important}.s25-home-hero-v27{height:290px!important;min-height:290px!important}.s25-hero-copy-v27{width:92%!important;padding:34px 20px!important}.s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{font-size:32px!important}.s25-home-lower{padding:12px 14px 22px!important}}


/* v2.7.9 - slider editable y tipografía responsiva */
@media(min-width:1181px){
  .s25-hero-copy-v27{width:min(760px,54%)}
  .s25-hero-copy-v27>span{font-size:clamp(42px,3.25vw,54px);white-space:nowrap}
  .s25-hero-copy-v27 h1{font-size:clamp(43px,3.35vw,56px);white-space:nowrap}
}
@media(max-width:1180px){
  .s25-hero-copy-v27>span,.s25-hero-copy-v27 h1{white-space:normal}
}

/* v3.0.7: resalta en amarillo la sección actual del menú */
.s25-main-nav a.is-home-link{background:transparent!important;color:#fff!important}
.s25-main-nav a.is-home-link:hover{background:#560216!important;color:#fff!important}
.s25-main-nav a.is-current{background:#F2E63D!important;color:#560216!important}
.s25-main-nav a.is-current:hover{background:#F2E63D!important;color:#560216!important}

/* v3.0.8 - Hover amarillo en todo el menu y logo transparente */
.s25-main-nav a:hover,
.s25-main-nav a.is-home:hover,
.s25-main-nav a.is-home-link:hover,
.s25-main-nav a.is-current:hover {
    background:#F2E63D !important;
    color:#560216 !important;
}
.s25-main-nav a:hover .dashicons,
.s25-main-nav a:hover b,
.s25-main-nav a:hover span {
    color:#560216 !important;
}
.s25-brand img {
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    object-fit:contain !important;
}

/* v3.0.11 - Marco normativo por categorías */
.s25-normative-groups{display:grid;gap:22px}.s25-normative-group{background:#fff;border:1px solid var(--s25-line);border-radius:12px;padding:18px 18px 20px}.s25-normative-group>h2{margin:0 0 14px;padding:0 0 10px;border-bottom:3px solid var(--s25-yellow);font-size:24px;color:#333}.s25-normative-group .s25-docs{gap:9px}.s25-normative-group .s25-doc{box-shadow:none}


/* v3.0.13 - paleta institucional definitiva y Marco normativo visible */
.s25-main-nav{background:#560216!important}
.s25-main-nav a{color:#fff!important}
.s25-main-nav a:hover,.s25-main-nav a.is-current,.s25-main-nav a.is-current:hover,.s25-main-nav a.is-home:hover{background:#f2e63d!important;color:#560216!important}
.s25-main-nav a:hover .dashicons,.s25-main-nav a.is-current .dashicons{color:#560216!important}
.s25-search button,.s25-doc-actions a:first-child{background:#560216!important;color:#fff!important}
.s25-doc-actions a:last-child{background:#f2e63d!important;color:#30343a!important}
.s25-pdf{background:#560216!important;color:#fff!important}
.s25-page-title{border-left-color:#f2e63d!important}
.s25-normative-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}
.s25-normative-group{background:#fff;border:1px solid #e1e3e6;border-radius:10px;padding:16px 16px 18px;min-width:0}
.s25-normative-group>h2{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:0 0 9px;border-bottom:3px solid #f2e63d;font-size:20px;color:#30343a}
.s25-normative-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:14px;background:#560216;color:#fff;font-size:12px;font-weight:800}
.s25-normative-empty{padding:12px 13px;border-radius:7px;background:#f4f5f6;color:#5f646a;font-size:14px}
.s25-normative-group .s25-doc{margin-top:8px}
.s25-normative-uncategorized{grid-column:1/-1;border-style:dashed}
@media(max-width:900px){.s25-normative-groups{grid-template-columns:1fr}}


/* v3.0.14 — paleta institucional completa: todo rojo de interfaz = #560216 */
:root{--s25-red:#560216!important;--s25-yellow:#F2E63D!important;--s25-yellow2:#F2E63D!important}
.s25-main-nav{background:#560216!important}
.s25-menu-toggle,.s25-hero-button,.s25-pdf,.s25-call-icon{background:#560216!important}
.s25-service-v27.is-red{background:#560216!important}
.s25-hero-copy-v27 h1{color:#560216!important}
.s25-slider .s25-hero-dot.is-active,.s25-slider .s25-hero-dots b{background:#560216!important}
.s25-list-item:first-child i,.s25-mini-docs>a>.dashicons:first-child{background:#560216!important}
.s25-social-youtube>span{background:#560216!important}
.s25-brand-banner:after{background:linear-gradient(160deg,transparent 0 38%,#F2E63D 39% 47%,#560216 48% 100%)!important}
.s25-main-nav a:hover,.s25-main-nav a.is-home:hover,.s25-main-nav a.is-home-link:hover,.s25-main-nav a.is-current,.s25-main-nav a.is-current:hover{background:#F2E63D!important;color:#560216!important}
.s25-main-nav a:hover .dashicons,.s25-main-nav a:hover b,.s25-main-nav a:hover span,.s25-main-nav a.is-current .dashicons,.s25-main-nav a.is-current b,.s25-main-nav a.is-current span{color:#560216!important}

/* v3.0.15 — paleta oficial completa suministrada por el usuario
   #C5A059 dorado | #D90416 rojo | #560216 vino | #F2E63D amarillo
   #F2F2F2 gris claro | #0D0D0D negro | #9E9E9E gris | #FFFFFF blanco */
:root{
  --s25-wine:#560216!important;
  --s25-red:#D90416!important;
  --s25-yellow:#F2E63D!important;
  --s25-gold:#C5A059!important;
  --s25-bg:#F2F2F2!important;
  --s25-text:#0D0D0D!important;
  --s25-muted:#9E9E9E!important;
  --s25-white:#FFFFFF!important;
}
.s25-standalone,.s25-main{background:#F2F2F2!important;color:#0D0D0D!important}
.s25-main-nav{background:#560216!important}
.s25-main-nav a{color:#FFFFFF!important}
.s25-main-nav a:hover,.s25-main-nav a.is-current,.s25-main-nav a.is-current:hover,.s25-main-nav a.is-home:hover{background:#F2E63D!important;color:#560216!important}
.s25-main-nav a:hover .dashicons,.s25-main-nav a.is-current .dashicons{color:#560216!important}
.s25-main-nav a.is-home:not(:hover):not(.is-current){background:#F2E63D!important;color:#560216!important}
.s25-hero-button,.s25-search button,.s25-top-search button,.s25-form-actions button,.s25-doc-actions a:first-child,.s25-call-icon{background:#D90416!important;color:#FFFFFF!important}
.s25-hero-button:hover,.s25-search button:hover,.s25-top-search button:hover,.s25-form-actions button:hover,.s25-doc-actions a:first-child:hover{background:#560216!important;color:#FFFFFF!important}
.s25-pdf,.s25-mini-docs>a>.dashicons:first-child,.s25-normative-count{background:#560216!important;color:#FFFFFF!important}
.s25-page-title{border-left-color:#C5A059!important}
.s25-home-heading{border-left-color:#C5A059!important}
.s25-footer-identity span{border-top-color:#C5A059!important}
.s25-site-footer,.s25-site-footer-v27{background:#0D0D0D!important;border-bottom-color:#C5A059!important}
.s25-footer-links a{color:#F2F2F2!important}
.s25-footer-links a:hover{color:#F2E63D!important}
.s25-footer-bottom{color:#9E9E9E!important}
.s25-footer-bottom a{color:#FFFFFF!important}
.s25-footer-bottom a:hover{color:#F2E63D!important}
.s25-hero-copy-v27 h1,.s25-page-title h1,.s25-page-title h2{color:#560216!important}
.s25-hero-copy-v27 p,.s25-page-title p,.s25-service small,.s25-request-body>p{color:#9E9E9E!important}
.s25-slider .s25-hero-dot.is-active,.s25-slider .s25-hero-dots b{background:#D90416!important}
.s25-slider .s25-hero-dot:focus-visible,.s25-slider .s25-hero-arrow:focus-visible{outline-color:#F2E63D!important}
.s25-request-head,.s25-panel-notices>header{background:#C5A059!important;color:#0D0D0D!important}
.s25-service-v27.is-red{background:linear-gradient(145deg,#560216 0%,#D90416 100%)!important;color:#FFFFFF!important}
.s25-section-head a,.s25-panel>header a,.s25-home-heading a{color:#D90416!important}
.s25-section-head a:hover,.s25-panel>header a:hover,.s25-home-heading a:hover{color:#560216!important}
.s25-doc-actions a:last-child{background:#F2E63D!important;color:#0D0D0D!important}
.s25-home-news-card,.s25-home-calls,.s25-doc,.s25-card,.s25-content-card,.s25-page-block,.s25-panel,.s25-request{background:#FFFFFF!important}
.s25-home-news-body h3 a,.s25-home-calls>a,.s25-brand,.s25-service,.s25-list-item,.s25-mini-news>a,.s25-mini-docs>a{color:#0D0D0D!important}
.s25-home-news-body p,.s25-home-calls time,.s25-list-item small,.s25-mini-news small,.s25-mini-docs small{color:#9E9E9E!important}
/* Franjas gráficas generadas por CSS: vino + rojo + amarillo de la nueva paleta. */
.s25-brand-banner:after{background:linear-gradient(160deg,transparent 0 37%,#F2E63D 38% 45%,#D90416 46% 66%,#560216 67% 100%)!important}
.s25-home-hero-v27:after{background:linear-gradient(167deg,transparent 0 20%,#F2E63D 21% 27%,#D90416 28% 37%,#560216 38% 45%,#FFFFFF 46% 100%)!important}

/* v3.0.17 — eliminar por completo las franjas decorativas del header y del slider */
.s25-brand-banner:after,
.s25-home-hero-v27:after{
    content:none!important;
    display:none!important;
    background:none!important;
}

/* v3.0.19 — identidad visual final: paleta HEX exacta + logo oficial + sin franjas */
:root{
  --s25-wine:#560216!important;
  --s25-red:#D90416!important;
  --s25-gold:#C5A059!important;
  --s25-yellow:#F2E63D!important;
  --s25-bg:#F2F2F2!important;
  --s25-black:#0D0D0D!important;
  --s25-gray:#9E9E9E!important;
  --s25-white:#FFFFFF!important;
}
.s25-standalone,.s25-main{background:#F2F2F2!important;color:#0D0D0D!important}
.s25-main-nav{background:#560216!important}
.s25-main-nav a,.s25-main-nav a.is-home-link{background:#560216!important;color:#FFFFFF!important}
.s25-main-nav a:hover,.s25-main-nav a.is-current,.s25-main-nav a.is-current:hover,.s25-main-nav a.is-home:hover,.s25-main-nav a.is-home-link:hover{background:#F2E63D!important;color:#560216!important}
.s25-main-nav a:hover .dashicons,.s25-main-nav a.is-current .dashicons,.s25-main-nav a:hover b,.s25-main-nav a:hover span{color:#560216!important}
.s25-hero-button,.s25-search button,.s25-top-search button,.s25-form-actions button,.s25-doc-actions a:first-child,.s25-call-icon{background:#D90416!important;color:#FFFFFF!important}
.s25-hero-button:hover,.s25-search button:hover,.s25-top-search button:hover,.s25-form-actions button:hover,.s25-doc-actions a:first-child:hover{background:#560216!important;color:#FFFFFF!important}
.s25-doc-actions a:last-child{background:#F2E63D!important;color:#0D0D0D!important}
.s25-pdf,.s25-mini-docs>a>.dashicons:first-child,.s25-normative-count{background:#560216!important;color:#FFFFFF!important}
.s25-page-title,.s25-home-heading{border-left-color:#C5A059!important}
.s25-normative-group>h2{border-bottom-color:#F2E63D!important;color:#0D0D0D!important}
.s25-section-head a,.s25-panel>header a,.s25-home-heading a{color:#D90416!important}
.s25-section-head a:hover,.s25-panel>header a:hover,.s25-home-heading a:hover{color:#560216!important}
.s25-home-news-card,.s25-home-calls,.s25-doc,.s25-card,.s25-content-card,.s25-page-block,.s25-panel,.s25-request,.s25-normative-group{background:#FFFFFF!important}
.s25-site-footer,.s25-site-footer-v27{background:#0D0D0D!important;border-bottom-color:#C5A059!important}
.s25-footer-links a{color:#F2F2F2!important}.s25-footer-links a:hover{color:#F2E63D!important}
.s25-footer-bottom{color:#9E9E9E!important}.s25-footer-bottom a{color:#FFFFFF!important}.s25-footer-bottom a:hover{color:#F2E63D!important}
.s25-footer-identity span{border-top-color:#C5A059!important}
.s25-brand img,.s25-brand-v27 img,.s25-footer-identity img{background:transparent!important;border:0!important;box-shadow:none!important;object-fit:contain!important;image-rendering:auto!important}
.s25-brand-banner:after,.s25-home-hero-v27:after{content:none!important;display:none!important;background:none!important}

/* v3.0.20 — nueva portada: sin imagen anterior del encabezado y carrusel sin superposiciones */
.s25-brand-banner{
  background-image:linear-gradient(105deg,#560216 0%,#560216 48%,#0D0D0D 100%)!important;
}
.s25-brand-banner:before{background:linear-gradient(90deg,rgba(197,160,89,.08),rgba(255,255,255,.02))!important}
.s25-slider .s25-slide{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:none!important;
}
.s25-slider .s25-slide.is-active{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  z-index:2!important;
}
.s25-slider .s25-slide .s25-hero-photo{
  background-size:cover!important;
  background-position:center center!important;
  transform:none!important;
}
.s25-hero-copy-v27>span{color:#FFFFFF!important;text-shadow:0 2px 10px rgba(0,0,0,.28)!important}
.s25-hero-copy-v27 h1{color:#F2E63D!important;text-shadow:0 2px 10px rgba(0,0,0,.28)!important}
.s25-hero-copy-v27 p{color:#F2F2F2!important;text-shadow:0 1px 5px rgba(0,0,0,.32)!important}
.s25-hero-button{box-shadow:0 8px 22px rgba(0,0,0,.20)!important}

/* v3.0.22 encabezado superior con banner institucional */
.s25-brand-banner.s25-brand-banner--institutional{
  min-height:300px!important;
  padding:0!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.s25-brand-banner.s25-brand-banner--institutional:before,
.s25-brand-banner.s25-brand-banner--institutional:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
.s25-brand-banner.s25-brand-banner--institutional .s25-brand-v27{
  display:block!important;
  width:100%!important;
  min-height:300px!important;
}
.s25-brand-banner.s25-brand-banner--institutional .s25-brand-v27 img,
.s25-brand-banner.s25-brand-banner--institutional .s25-brand-divider,
.s25-brand-banner.s25-brand-banner--institutional .s25-brand-words{
  display:none!important;
}
@media(max-width:850px){
  .s25-brand-banner.s25-brand-banner--institutional{min-height:210px!important;background-position:center center!important}
  .s25-brand-banner.s25-brand-banner--institutional .s25-brand-v27{min-height:210px!important}
}
@media(max-width:560px){
  .s25-brand-banner.s25-brand-banner--institutional{min-height:160px!important;background-position:left center!important}
  .s25-brand-banner.s25-brand-banner--institutional .s25-brand-v27{min-height:160px!important}
}


/* ===== v3.0.24 ajustes de encabezado, slider y buscador ===== */
.s25-brand-banner.s25-brand-banner--graphic{
  min-height:0 !important;
  padding:0 !important;
  background:none !important;
  display:block !important;
}
.s25-brand-banner.s25-brand-banner--graphic:before,
.s25-brand-banner.s25-brand-banner--graphic:after{
  content:none !important;
  display:none !important;
}
.s25-brand-graphic-link{
  display:block;
  text-decoration:none;
}
.s25-brand-graphic-img{
  display:block;
  width:100%;
  height:220px;
  object-fit:cover;
  object-position:center center;
}

.s25-home-hero-v27.s25-slider{
  height:340px !important;
  min-height:340px !important;
  background:#ffffff !important;
  padding:0 !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider:after,
.s25-home-hero-v27.s25-slider .s25-hero-photo,
.s25-home-hero-v27.s25-slider .s25-hero-copy,
.s25-home-hero-v27.s25-slider .s25-hero-copy-v27{
  display:none !important;
}
.s25-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .28s ease;
  background:#fff;
}
.s25-slide.is-active{
  opacity:1;
  visibility:visible;
}
.s25-slide-media{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  padding:10px 64px 44px;
}
.s25-slide-image{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:center center;
  border-radius:10px;
  box-shadow:0 8px 26px rgba(13,13,13,.10);
}
.s25-slide-actions{
  position:absolute;
  right:20px;
  bottom:14px;
  z-index:5;
  display:flex;
  gap:10px;
  align-items:center;
}
.s25-slide-view{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:10px 18px;
  border-radius:20px;
  background:#560216;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:700;
  box-shadow:0 3px 10px rgba(0,0,0,.15);
}
.s25-slide-view.secondary{
  background:#C5A059;
  color:#0D0D0D !important;
}
.s25-hero-arrow{
  top:50% !important;
}
.s25-hero-dots{
  bottom:14px !important;
}
.s25-hero-dot{
  width:12px;
  height:12px;
  border:none;
  border-radius:999px;
  background:#9E9E9E;
  cursor:pointer;
  padding:0;
}
.s25-hero-dot.is-active{background:#D90416}

@media (max-width: 1024px){
  .s25-brand-graphic-img{height:180px}
  .s25-home-hero-v27.s25-slider{height:300px !important; min-height:300px !important}
}
@media (max-width: 782px){
  .s25-brand-graphic-img{height:140px; object-position:left center}
  .s25-home-hero-v27.s25-slider{height:250px !important; min-height:250px !important}
  .s25-slide-media{padding:10px 48px 52px}
  .s25-slide-actions{left:12px; right:12px; bottom:12px; gap:8px; justify-content:flex-end}
  .s25-slide-view{padding:8px 12px; min-height:34px; font-size:13px}
}
@media (max-width: 560px){
  .s25-brand-graphic-img{height:118px}
  .s25-home-hero-v27.s25-slider{height:210px !important; min-height:210px !important}
  .s25-slide-media{padding:8px 40px 50px}
  .s25-slide-actions{justify-content:center; flex-wrap:wrap}
}

/* ===== v3.0.25 slider institucional: fade + zoom suave ===== */
.s25-home-hero-v27.s25-slider .s25-slide{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .75s ease-in-out, visibility .75s ease-in-out !important;
  will-change:opacity;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:2 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-media{
  overflow:hidden;
}
.s25-home-hero-v27.s25-slider .s25-slide-image{
  transform:scale(1);
  transform-origin:center center;
  will-change:transform;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active .s25-slide-image{
  animation:s25-slider-zoom 8s linear forwards;
}
.s25-home-hero-v27.s25-slider:hover .s25-slide.is-active .s25-slide-image,
.s25-home-hero-v27.s25-slider:focus-within .s25-slide.is-active .s25-slide-image{
  animation-play-state:paused;
}
@keyframes s25-slider-zoom{
  from{transform:scale(1)}
  to{transform:scale(1.025)}
}
@media (prefers-reduced-motion: reduce){
  .s25-home-hero-v27.s25-slider .s25-slide{
    transition:none !important;
  }
  .s25-home-hero-v27.s25-slider .s25-slide.is-active .s25-slide-image{
    animation:none !important;
    transform:none !important;
  }
}


/* ===== v3.0.26 Contacto institucional + mapa ===== */
.s25-contact-page{max-width:1380px;margin:0 auto}
.s25-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0 22px}
.s25-contact-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e2e2;border-radius:12px;padding:20px;color:#0D0D0D!important;text-decoration:none!important;box-shadow:0 4px 14px rgba(13,13,13,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.s25-contact-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(13,13,13,.09);border-color:#C5A059}
.s25-contact-card>.dashicons{width:44px;height:44px;line-height:44px;font-size:30px;border-radius:50%;background:#F2F2F2;color:#D90416;flex:0 0 44px;text-align:center}
.s25-contact-card strong{display:block;font-size:18px;color:#560216;margin-bottom:5px}.s25-contact-card p{margin:0 0 5px;line-height:1.42;font-size:15px}.s25-contact-card small{color:#777}
.s25-contact-map-wrap{background:#fff;border:1px solid #ddd;border-radius:14px;overflow:hidden;box-shadow:0 5px 18px rgba(13,13,13,.06)}
.s25-contact-map-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:3px solid #C5A059}.s25-contact-map-head strong{display:block;font-size:21px;color:#560216}.s25-contact-map-head span{font-size:14px;color:#6d6d6d}.s25-contact-map-head>a{background:#D90416;color:#fff!important;text-decoration:none!important;padding:10px 18px;border-radius:22px;font-weight:800;white-space:nowrap}.s25-contact-map-head>a:hover{background:#560216}
.s25-contact-map-link{display:block;position:relative;background:#F2F2F2}.s25-contact-map{display:block;width:100%;height:420px;border:0}.s25-contact-map-note{margin:0;padding:12px 18px;background:#F2F2F2;color:#555;font-size:13px}
@media(max-width:1050px){.s25-contact-grid{grid-template-columns:repeat(2,1fr)}.s25-contact-map{height:380px}}
@media(max-width:620px){.s25-contact-grid{grid-template-columns:1fr}.s25-contact-map-head{align-items:flex-start;flex-direction:column}.s25-contact-map{height:320px}.s25-contact-card{padding:16px}}

/* ===== v3.0.27 encabezado equilibrado + slider legible ===== */
.s25-brand-banner.s25-brand-banner--graphic{
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  background:#fff !important;
  overflow:hidden !important;
}
.s25-brand-graphic-link{display:block !important;line-height:0 !important;background:#fff !important}
.s25-brand-graphic-img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:300px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
}

.s25-home-hero-v27.s25-slider{
  height:460px !important;
  min-height:460px !important;
  background:#F2F2F2 !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide{
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:1 !important;
  transition:opacity 1s ease-in-out, visibility 1s step-end !important;
  background:#F2F2F2 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:2 !important;
  transition:opacity 1s ease-in-out, visibility 0s step-start !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-media{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:18px 72px 58px !important;
  overflow:hidden !important;
  background:#F2F2F2 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:8px !important;
  box-shadow:0 8px 24px rgba(13,13,13,.12) !important;
  transform:scale(1) !important;
  transform-origin:center center !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
  animation:s25-slider-zoom-v327 8s ease-out forwards !important;
}
@keyframes s25-slider-zoom-v327{
  from{transform:scale(1)}
  to{transform:scale(1.018)}
}
.s25-home-hero-v27.s25-slider .s25-slide-actions{
  right:20px !important;
  bottom:14px !important;
  left:auto !important;
  z-index:6 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-view.secondary{
  background:#C5A059 !important;
  color:#0D0D0D !important;
}
.s25-home-hero-v27.s25-slider .s25-hero-dots{bottom:18px !important;z-index:7 !important}
.s25-home-hero-v27.s25-slider .s25-hero-arrow{z-index:7 !important;background:rgba(86,2,22,.74) !important}

@media(max-width:1100px){
  .s25-home-hero-v27.s25-slider{height:390px !important;min-height:390px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:14px 58px 56px !important}
}
@media(max-width:782px){
  .s25-brand-graphic-img{height:120px !important;max-height:none !important;object-fit:cover !important;object-position:left center !important}
  .s25-home-hero-v27.s25-slider{height:320px !important;min-height:320px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:10px 46px 60px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-actions{right:10px !important;bottom:12px !important}
}
@media(max-width:560px){
  .s25-brand-graphic-img{height:104px !important}
  .s25-home-hero-v27.s25-slider{height:260px !important;min-height:260px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:8px 38px 56px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-view.secondary{font-size:12px !important;padding:7px 11px !important}
}
@media(prefers-reduced-motion:reduce){
  .s25-home-hero-v27.s25-slider .s25-slide{transition:none !important}
  .s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{animation:none !important;transform:none !important}
}

/* ===== v3.0.28 - slider ampliado, fondo integrado, fade visible y zoom mínimo ===== */
.s25-brand-banner.s25-brand-banner--graphic{
  background:#fff !important;
}
.s25-brand-graphic-img{
  width:100% !important;
  height:auto !important;
  max-height:260px !important;
  object-fit:cover !important;
  object-position:center center !important;
}

.s25-home-hero-v27.s25-slider{
  height:520px !important;
  min-height:520px !important;
  background:#ececec !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide{
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:1 !important;
  transition:opacity 1.2s ease-in-out, visibility 1.2s step-end !important;
  background:#ececec !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:2 !important;
  transition:opacity 1.2s ease-in-out, visibility 0s step-start !important;
}
.s25-home-hero-v27.s25-slider .s25-slide::before{
  content:"";
  position:absolute;
  inset:-28px;
  background-image:var(--s25-slide-bg);
  background-size:cover;
  background-position:center center;
  filter:blur(20px);
  opacity:.24;
  transform:scale(1.04);
  z-index:0;
  transition:opacity 1.2s ease-in-out;
}
.s25-home-hero-v27.s25-slider .s25-slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.70);
  z-index:1;
}
.s25-home-hero-v27.s25-slider .s25-slide-media{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px 86px 62px !important;
  overflow:hidden !important;
  background:transparent !important;
  z-index:2 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:min(1120px,100%) !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:10px !important;
  box-shadow:0 14px 34px rgba(13,13,13,.18) !important;
  transform:scale(1) !important;
  transform-origin:center center !important;
  will-change:transform,opacity;
}
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
  animation:s25-slider-zoom-v328 8s ease-out forwards !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active::before{
  animation:s25-slider-backdrop-v328 8s ease-out forwards;
}
@keyframes s25-slider-zoom-v328{
  from{transform:scale(1)}
  to{transform:scale(1.012)}
}
@keyframes s25-slider-backdrop-v328{
  from{transform:scale(1.04)}
  to{transform:scale(1.075)}
}
.s25-home-hero-v27.s25-slider .s25-slide-actions{
  position:absolute !important;
  right:26px !important;
  bottom:16px !important;
  left:auto !important;
  z-index:8 !important;
  display:flex !important;
  gap:10px !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-view{
  min-height:38px !important;
  padding:9px 16px !important;
  border-radius:20px !important;
  font-size:14px !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-view.secondary{
  background:#C5A059 !important;
  color:#0D0D0D !important;
}
.s25-home-hero-v27.s25-slider .s25-hero-dots{
  bottom:20px !important;
  z-index:9 !important;
}
.s25-home-hero-v27.s25-slider .s25-hero-arrow{
  z-index:9 !important;
  background:rgba(86,2,22,.76) !important;
}

@media(max-width:1180px){
  .s25-brand-graphic-img{max-height:230px !important}
  .s25-home-hero-v27.s25-slider{height:460px !important;min-height:460px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:14px 64px 62px !important}
}
@media(max-width:850px){
  .s25-brand-graphic-img{height:150px !important;max-height:none !important;object-position:center center !important}
  .s25-home-hero-v27.s25-slider{height:350px !important;min-height:350px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:10px 48px 62px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-actions{right:12px !important;bottom:12px !important}
}
@media(max-width:560px){
  .s25-brand-graphic-img{height:118px !important}
  .s25-home-hero-v27.s25-slider{height:280px !important;min-height:280px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:8px 38px 60px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-actions{left:8px !important;right:8px !important;justify-content:center !important}
  .s25-home-hero-v27.s25-slider .s25-slide-view{font-size:12px !important;padding:7px 10px !important}
}
@media(prefers-reduced-motion:reduce){
  .s25-home-hero-v27.s25-slider .s25-slide{transition:none !important}
  .s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run,
  .s25-home-hero-v27.s25-slider .s25-slide.is-active::before{animation:none !important;transform:none !important}
}

/* ===== v3.0.29 - transición cinematográfica: blur progresivo + fade + zoom mínimo ===== */
.s25-home-hero-v27.s25-slider .s25-slide{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  filter:blur(6px) !important;
  transform:scale(.992) !important;
  transition:
    opacity 1.5s ease-in-out,
    filter 1.5s ease-in-out,
    transform 1.5s ease-in-out,
    visibility 1.5s step-end !important;
  will-change:opacity,filter,transform;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  filter:blur(0) !important;
  transform:scale(1) !important;
  transition:
    opacity 1.5s ease-in-out,
    filter 1.5s ease-in-out,
    transform 1.5s ease-in-out,
    visibility 0s step-start !important;
}

/* El contenido central entra de ligeramente borroso a nítido. */
.s25-home-hero-v27.s25-slider .s25-slide-media{
  opacity:.86 !important;
  filter:blur(5px) !important;
  transform:scale(.994) !important;
  transition:opacity 1.5s ease-in-out,filter 1.5s ease-in-out,transform 1.5s ease-in-out !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active .s25-slide-media{
  opacity:1 !important;
  filter:blur(0) !important;
  transform:scale(1) !important;
}

/* El fondo difuso acompaña el cambio sin saltos bruscos. */
.s25-home-hero-v27.s25-slider .s25-slide::before{
  filter:blur(24px) !important;
  opacity:.18 !important;
  transition:opacity 1.5s ease-in-out,filter 1.5s ease-in-out,transform 1.5s ease-in-out !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active::before{
  filter:blur(18px) !important;
  opacity:.26 !important;
}

/* Zoom mínimo durante el tiempo visible de cada diapositiva. */
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
  animation:s25-slider-zoom-v329 8s ease-out forwards !important;
}
@keyframes s25-slider-zoom-v329{
  0%{transform:scale(1)}
  82%{transform:scale(1.016)}
  100%{transform:scale(1.018)}
}

@media(prefers-reduced-motion:reduce){
  .s25-home-hero-v27.s25-slider .s25-slide,
  .s25-home-hero-v27.s25-slider .s25-slide-media,
  .s25-home-hero-v27.s25-slider .s25-slide::before{
    transition:none !important;
    filter:none !important;
    transform:none !important;
  }
  .s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
    animation:none !important;
    transform:none !important;
  }
}


/* ===== v3.0.30 - desenfoque progresivo visible antes del cambio ===== */
.s25-home-hero-v27.s25-slider .s25-slide{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  filter:blur(0) !important;
  transform:scale(1) !important;
  transition:none !important;
  z-index:1 !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  filter:blur(0) !important;
  transform:scale(1) !important;
  z-index:2 !important;
}

/* Fase 1: la imagen visible se desenfoca antes de que aparezca la siguiente. */
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-blurring{
  opacity:.38 !important;
  visibility:visible !important;
  pointer-events:none !important;
  filter:blur(9px) !important;
  transform:scale(1.018) !important;
  z-index:3 !important;
  transition:
    opacity .85s cubic-bezier(.4,0,.2,1),
    filter .85s cubic-bezier(.4,0,.2,1),
    transform .85s cubic-bezier(.4,0,.2,1) !important;
}

/* Estado inicial de la nueva imagen: visible pero todavía borrosa. */
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-pre-enter{
  opacity:0 !important;
  visibility:visible !important;
  pointer-events:none !important;
  filter:blur(12px) !important;
  transform:scale(.988) !important;
  z-index:5 !important;
  transition:none !important;
}

/* Fase 2: la siguiente imagen pasa de borrosa a nítida. */
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-entering{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
  filter:blur(0) !important;
  transform:scale(1) !important;
  z-index:5 !important;
  transition:
    opacity 1.05s cubic-bezier(.22,.61,.36,1),
    filter 1.05s cubic-bezier(.22,.61,.36,1),
    transform 1.05s cubic-bezier(.22,.61,.36,1) !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-leaving{
  opacity:0 !important;
  visibility:visible !important;
  pointer-events:none !important;
  filter:blur(12px) !important;
  transform:scale(1.025) !important;
  z-index:4 !important;
  transition:
    opacity 1.05s ease-in-out,
    filter 1.05s ease-in-out,
    transform 1.05s ease-in-out !important;
}

/* Evita que el contenedor interno duplique el blur de la diapositiva. */
.s25-home-hero-v27.s25-slider .s25-slide-media{
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  transition:none !important;
}

/* Zoom mínimo solo durante el tiempo de lectura, después de la transición. */
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
  animation:s25-slider-zoom-v330 8s ease-out forwards !important;
}
@keyframes s25-slider-zoom-v330{
  from{transform:scale(1)}
  to{transform:scale(1.018)}
}

@media(prefers-reduced-motion:reduce){
  .s25-home-hero-v27.s25-slider .s25-slide,
  .s25-home-hero-v27.s25-slider .s25-slide.s25-is-blurring,
  .s25-home-hero-v27.s25-slider .s25-slide.s25-is-pre-enter,
  .s25-home-hero-v27.s25-slider .s25-slide.s25-is-entering,
  .s25-home-hero-v27.s25-slider .s25-slide.s25-is-leaving{
    transition:none !important;
    filter:none !important;
    transform:none !important;
  }
}

/* ===== v3.0.31 — encabezado nítido y transición blur/fade más visible ===== */
.s25-brand-banner.s25-brand-banner--crisp{
  position:relative!important;
  min-height:190px!important;
  padding:0!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 76% 45%,rgba(197,160,89,.12),transparent 34%),
    linear-gradient(110deg,#ffffff 0%,#f7f4ee 58%,#eef1f2 100%)!important;
  border-bottom:1px solid rgba(86,2,22,.12)!important;
}
.s25-brand-banner.s25-brand-banner--crisp:before{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;
  background:
    linear-gradient(125deg,rgba(86,2,22,.08) 0 1px,transparent 1px 100%),
    radial-gradient(circle at 93% 14%,rgba(158,158,158,.18) 0 1.5px,transparent 1.7px)!important;
  background-size:auto,12px 12px!important;
  opacity:.28!important;pointer-events:none!important;
}
.s25-brand-banner.s25-brand-banner--crisp:after{
  content:""!important;display:block!important;position:absolute!important;left:-60px!important;bottom:-88px!important;
  width:380px!important;height:160px!important;transform:rotate(8deg)!important;
  background:linear-gradient(145deg,#560216 0 45%,#D90416 46% 63%,#C5A059 64% 71%,transparent 72%)!important;
  opacity:.98!important;pointer-events:none!important;
}
.s25-brand-crisp-inner{
  position:relative;z-index:2;max-width:1380px;margin:0 auto;min-height:190px;padding:20px 30px;
  display:grid;grid-template-columns:minmax(440px,1.1fr) minmax(600px,1.5fr);align-items:center;gap:46px;
}
.s25-brand-crisp-identity{display:flex;align-items:center;gap:19px;color:#0D0D0D!important;text-decoration:none!important;min-width:0}
.s25-brand-crisp-identity img{width:150px;height:132px;object-fit:contain;flex:0 0 auto;image-rendering:auto}
.s25-brand-crisp-rule{width:2px;height:108px;background:#C5A059;flex:0 0 auto}
.s25-brand-crisp-copy{display:flex;flex-direction:column;min-width:0}
.s25-brand-crisp-copy strong{font-size:28px;line-height:1.02;letter-spacing:-.02em;font-weight:760;color:#0D0D0D}
.s25-brand-crisp-copy i{display:block;width:min(330px,100%);height:3px;background:#C5A059;margin:11px 0 9px}
.s25-brand-crisp-copy small{font-size:14px;font-style:normal;letter-spacing:.34em;color:#560216;font-weight:800}
.s25-brand-values{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:start}
.s25-brand-values>div{position:relative;text-align:center;padding:2px 18px 0;min-height:116px}
.s25-brand-values>div+div:before{content:"";position:absolute;left:0;top:20px;width:1px;height:78px;background:#C5A059}
.s25-brand-values .dashicons{width:48px;height:48px;line-height:48px;font-size:38px;color:#560216;border:2px solid #560216;border-radius:50%;margin-bottom:8px}
.s25-brand-values strong,.s25-brand-values small{display:block}
.s25-brand-values strong{font-size:14px;line-height:1.1;color:#0D0D0D;font-weight:900}
.s25-brand-values small{font-size:11px;line-height:1.15;color:#30343a;margin-top:3px;font-weight:700}

/* Barra superior compacta, limpia y legible. */
.s25-topbar{background:#252a2e!important}
.s25-topbar-inner{max-width:1380px!important;padding-left:24px!important;padding-right:24px!important}
.s25-contact-strip{gap:18px!important;min-width:0;flex-wrap:nowrap!important}
.s25-contact-strip>a,.s25-contact-strip>span{font-size:12px!important;white-space:nowrap!important;color:#fff!important}
.s25-contact-strip .dashicons{color:#C5A059!important}
.s25-top-address{max-width:520px;overflow:hidden;text-overflow:ellipsis}
.s25-topbar-tools{margin-left:auto}

/* Slider más integrado a la página. */
.s25-home-hero-v27.s25-slider{height:510px!important;min-height:510px!important;background:#f6f4f0!important}
.s25-home-hero-v27.s25-slider .s25-slide:before{opacity:.18!important;filter:blur(28px)!important;transform:scale(1.07)!important}
.s25-home-hero-v27.s25-slider .s25-slide-media{padding:18px 74px 62px!important}
.s25-home-hero-v27.s25-slider .s25-slide-image{max-width:min(1220px,94%)!important;max-height:410px!important;border-radius:14px!important;box-shadow:0 12px 34px rgba(13,13,13,.14)!important}
.s25-home-hero-v27.s25-slider .s25-slide-actions{right:28px!important;bottom:18px!important}
.s25-home-hero-v27.s25-slider .s25-slide-view.secondary{background:#C5A059!important;color:#0D0D0D!important}

/* Fase de salida: desenfoque perceptible, no instantáneo. */
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-blurring{
  opacity:.52!important;filter:blur(13px)!important;transform:scale(1.024)!important;
  transition:opacity 1.25s ease-in-out,filter 1.25s ease-in-out,transform 1.25s ease-in-out!important;
}
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-pre-enter{opacity:0!important;filter:blur(15px)!important;transform:scale(.986)!important}
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-entering{
  opacity:1!important;filter:blur(0)!important;transform:scale(1)!important;
  transition:opacity 1.15s ease-in-out,filter 1.15s ease-in-out,transform 1.15s ease-in-out!important;
}
.s25-home-hero-v27.s25-slider .s25-slide.s25-is-leaving{
  opacity:0!important;filter:blur(15px)!important;transform:scale(1.028)!important;
  transition:opacity 1.15s ease-in-out,filter 1.15s ease-in-out,transform 1.15s ease-in-out!important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{animation:s25-slider-zoom-v331 8s ease-out forwards!important}
@keyframes s25-slider-zoom-v331{from{transform:scale(1)}to{transform:scale(1.016)}}

@media(max-width:1180px){
  .s25-brand-crisp-inner{grid-template-columns:1fr;gap:12px;padding:16px 22px}
  .s25-brand-banner.s25-brand-banner--crisp{min-height:258px!important}
  .s25-brand-crisp-identity{justify-content:center}
  .s25-brand-values{max-width:800px;width:100%;margin:0 auto}
  /* v3.0.83: la dirección no se oculta en tabletas */
  .s25-home-hero-v27.s25-slider{height:440px!important;min-height:440px!important}
  .s25-home-hero-v27.s25-slider .s25-slide-image{max-height:350px!important}
}
@media(max-width:850px){
  .s25-brand-banner.s25-brand-banner--crisp{min-height:230px!important}
  .s25-brand-crisp-inner{padding:13px 16px}
  .s25-brand-crisp-identity img{width:105px;height:92px}
  .s25-brand-crisp-rule{height:74px}
  .s25-brand-crisp-copy strong{font-size:20px}
  .s25-brand-crisp-copy small{font-size:10px;letter-spacing:.24em}
  .s25-brand-values>div{padding:0 8px;min-height:92px}
  .s25-brand-values .dashicons{width:38px;height:38px;line-height:38px;font-size:29px}
  .s25-brand-values strong{font-size:11px}.s25-brand-values small{font-size:9px}
  /* v3.0.83: el horario no se oculta en móviles */
  .s25-home-hero-v27.s25-slider{height:340px!important;min-height:340px!important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:12px 52px 58px!important}
  .s25-home-hero-v27.s25-slider .s25-slide-image{max-height:270px!important}
}
@media(max-width:560px){
  .s25-brand-banner.s25-brand-banner--crisp{min-height:195px!important}
  .s25-brand-crisp-identity{gap:10px}
  .s25-brand-crisp-identity img{width:78px;height:70px}
  .s25-brand-crisp-rule{height:58px}
  .s25-brand-crisp-copy strong{font-size:15px}.s25-brand-crisp-copy i{margin:5px 0;height:2px}.s25-brand-crisp-copy small{font-size:8px;letter-spacing:.18em}
  .s25-brand-values{grid-template-columns:repeat(2,1fr);gap:4px}
  .s25-brand-values>div{min-height:55px;padding:0 4px;display:grid;grid-template-columns:32px 1fr;text-align:left;column-gap:6px;align-items:center}
  .s25-brand-values>div+div:before{display:none}
  .s25-brand-values .dashicons{grid-row:1/3;width:30px;height:30px;line-height:30px;font-size:22px;margin:0}
  .s25-brand-values strong{font-size:9px}.s25-brand-values small{font-size:8px;margin:0}
  .s25-home-hero-v27.s25-slider{height:275px!important;min-height:275px!important}
  .s25-home-hero-v27.s25-slider .s25-slide-media{padding:8px 38px 56px!important}
  .s25-home-hero-v27.s25-slider .s25-slide-image{max-height:210px!important}
}

/* v3.0.32 — detalle de Acciones realizadas */
.s25-action-single{max-width:1100px;margin:0 auto;padding:34px 20px 54px}
.s25-action-single .s25-content-card{padding:clamp(22px,4vw,44px)}
.s25-action-back{display:inline-block;margin-bottom:18px;font-weight:700;text-decoration:none}
.s25-action-meta{font-weight:600}
.s25-action-featured{margin:24px 0;border-radius:16px;overflow:hidden}
.s25-action-featured img{display:block;width:100%;height:auto}
.s25-action-content{font-size:1.03rem;line-height:1.75}
.s25-action-content .wp-block-gallery{margin:26px 0}
.s25-action-video{margin-top:30px;padding-top:22px;border-top:1px solid #e5e5e5}
.s25-action-video iframe,.s25-action-video video{display:block;max-width:100%;width:100%;min-height:360px;border:0;border-radius:14px}
@media (max-width:700px){.s25-action-video iframe,.s25-action-video video{min-height:220px}}

/* v3.0.34 — Noticias individuales dentro del diseño institucional */
.s25-news-single .s25-action-back{display:inline-flex;align-items:center;margin-bottom:18px;font-weight:800;text-decoration:none!important;color:#560216!important}
.s25-news-single .s25-action-content img{max-width:100%;height:auto;border-radius:12px}
.s25-news-single .s25-action-content iframe,.s25-news-single .s25-action-content video{max-width:100%}
.s25-news-single .s25-action-content>*:first-child{margin-top:0}


/* v3.0.35 — Contador de visitas visible junto a Síguenos */
.s25-footer-main{grid-template-columns:1.55fr .7fr .7fr 1.18fr!important}
.s25-footer-social-v27{display:flex!important;align-items:flex-start;gap:18px;border-left:1px solid rgba(255,255,255,.34);padding-left:24px!important}
.s25-footer-social-block{min-width:92px}
.s25-footer-social-block>strong{display:block;color:#fff;margin-bottom:4px}
.s25-footer-social-block .s25-socials{margin-top:8px}
.s25-footer-counter{display:flex!important;align-items:center;gap:9px;min-width:132px;margin:0!important;padding:8px 10px!important;border:1px solid rgba(197,160,89,.58)!important;border-radius:9px!important;background:rgba(255,255,255,.075)!important;color:#fff!important;box-shadow:none!important}
.s25-footer-counter>.dashicons{display:flex!important;align-items:center;justify-content:center;flex:0 0 30px;width:30px!important;height:30px!important;padding:0!important;border-radius:50%;background:#C5A059!important;color:#0D0D0D!important;font-size:18px!important;line-height:30px!important}
.s25-footer-counter>div{display:flex;flex-direction:column;line-height:1.05}
.s25-footer-counter small{font-size:10px!important;font-weight:800!important;color:#F2F2F2!important;text-transform:uppercase;letter-spacing:.04em}
.s25-footer-counter strong{font-size:20px!important;line-height:1.1!important;color:#FFFFFF!important;margin:2px 0}
.s25-footer-counter em{font-size:9px!important;font-style:normal!important;color:#C5A059!important}
@media(max-width:1180px){.s25-footer-main{grid-template-columns:1.35fr 1fr 1fr!important}.s25-footer-social-v27{grid-column:2/-1}}
@media(max-width:850px){.s25-footer-main{grid-template-columns:1fr 1fr!important}.s25-footer-social-v27{grid-column:1/-1;border-left:0!important;padding-left:0!important}}
@media(max-width:560px){.s25-footer-main{grid-template-columns:1fr!important}.s25-footer-social-v27{flex-wrap:wrap;gap:14px}.s25-footer-counter{min-width:150px}}


/* v3.0.38 — curvas institucionales en el encabezado.
   Sustituye el bloque geométrico angular por las líneas curvas vino/rojo/dorado
   tomadas del diseño institucional aprobado. */
.s25-brand-banner.s25-brand-banner--crisp:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:-8px!important;
  right:auto!important;
  bottom:-10px!important;
  width:455px!important;
  height:188px!important;
  transform:none!important;
  background-image:url('sntsa25-curvas-v3038.png')!important;
  background-repeat:no-repeat!important;
  background-position:left bottom!important;
  background-size:contain!important;
  opacity:1!important;
  pointer-events:none!important;
  z-index:1!important;
}
@media(max-width:1180px){
  .s25-brand-banner.s25-brand-banner--crisp:after{width:390px!important;height:160px!important;bottom:-8px!important}
}
@media(max-width:850px){
  .s25-brand-banner.s25-brand-banner--crisp:after{width:300px!important;height:124px!important;bottom:-6px!important;left:-16px!important;opacity:.96!important}
}
@media(max-width:560px){
  .s25-brand-banner.s25-brand-banner--crisp:after{width:225px!important;height:94px!important;bottom:-4px!important;left:-22px!important;opacity:.92!important}
}


/* v3.0.39 — curvas limpias del encabezado.
   Elimina cualquier fragmento de logotipo/texto de la imagen auxiliar y conserva
   únicamente las curvas institucionales vino/rojo/dorado en la esquina inferior izquierda. */
.s25-brand-banner.s25-brand-banner--crisp:after{
  background-image:url('sntsa25-curvas-v3039.png')!important;
  background-size:contain!important;
  background-position:left bottom!important;
  background-repeat:no-repeat!important;
}


/* v3.0.42 — logo transparente real y curvas completas en el encabezado */
.s25-brand-banner.s25-brand-banner--crisp:after{left:0!important;bottom:-1px!important;width:520px!important;height:215px!important;transform:none!important;background-image:url('sntsa25-curvas-v3039.png')!important;background-repeat:no-repeat!important;background-position:left bottom!important;background-size:contain!important;opacity:1!important}
.s25-brand-crisp-identity img{object-fit:contain!important;image-rendering:auto!important}
@media(max-width:1180px){.s25-brand-banner.s25-brand-banner--crisp:after{width:430px!important;height:178px!important;left:0!important;bottom:-1px!important}}
@media(max-width:850px){.s25-brand-banner.s25-brand-banner--crisp:after{width:320px!important;height:134px!important;left:0!important;bottom:-1px!important}}
@media(max-width:560px){.s25-brand-banner.s25-brand-banner--crisp:after{width:235px!important;height:100px!important;left:0!important;bottom:-1px!important}}


/* v3.0.43 — limpieza visual del logo y de las curvas */
.s25-brand-banner.s25-brand-banner--crisp:after{left:0!important;bottom:-1px!important;width:470px!important;height:175px!important;background-image:url('sntsa25-curvas-v3039.png')!important;background-repeat:no-repeat!important;background-position:left bottom!important;background-size:contain!important;opacity:1!important;filter:none!important}
.s25-brand-crisp-identity{gap:18px!important}
.s25-brand-crisp-identity img{max-width:170px!important;width:170px!important;height:auto!important;display:block!important;object-fit:contain!important;background:transparent!important;box-shadow:none!important;border:0!important}
@media(max-width:1180px){.s25-brand-banner.s25-brand-banner--crisp:after{width:390px!important;height:145px!important}.s25-brand-crisp-identity img{max-width:148px!important;width:148px!important}}
@media(max-width:850px){.s25-brand-banner.s25-brand-banner--crisp:after{width:300px!important;height:112px!important}.s25-brand-crisp-identity img{max-width:132px!important;width:132px!important}}


/* v3.0.44 — usar el encabezado institucional aprobado como imagen única para evitar artefactos del logo y las curvas. */
.s25-brand-banner.s25-brand-banner--image{position:relative;background:#F7F4EE!important;overflow:hidden!important;border:0!important;line-height:0!important}
.s25-brand-banner-link{display:block!important;text-decoration:none!important}
.s25-brand-banner-image{display:block!important;width:100%!important;height:auto!important;max-width:none!important}
@media(max-width:1180px){.s25-brand-banner-image{width:100%!important;height:auto!important}}
@media(max-width:850px){.s25-brand-banner-image{width:100%!important;height:auto!important}}
@media(max-width:560px){.s25-brand-banner-image{width:100%!important;height:auto!important}}

/* v3.0.45 — Bienvenida editable en portada */
.s25-home-welcome{
  background:#fff;
  padding:34px 28px 30px;
  border-bottom:1px solid rgba(197,160,89,.28);
}
.s25-home-welcome-inner{
  max-width:1080px;
  margin:0 auto;
  text-align:center;
}
.s25-home-welcome h2{
  margin:0;
  color:#560216;
  font-size:clamp(28px,3vw,38px);
  line-height:1.1;
  font-weight:800;
  letter-spacing:.01em;
}
.s25-home-welcome-rule{
  display:block;
  width:72px;
  height:3px;
  margin:13px auto 18px;
  background:#C5A059;
  border-radius:999px;
}
.s25-home-welcome-text{
  max-width:960px;
  margin:0 auto;
  color:#333;
  font-size:16px;
  line-height:1.7;
  text-align:justify !important;
  text-align-last:left;
}
.s25-home-welcome-text p{margin:0 0 10px;text-align:justify !important;text-align-last:left}
.s25-home-welcome-text p:last-child{margin-bottom:0}
.s25-home-welcome-button{
  display:inline-block;
  margin-top:20px;
  padding:11px 24px;
  background:#560216;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:800;
  border-radius:7px;
  transition:transform .15s ease,background .15s ease;
}
.s25-home-welcome-button:hover{background:#D90416;transform:translateY(-1px)}
@media(max-width:700px){
  .s25-home-welcome{padding:26px 18px 24px}
  .s25-home-welcome-text{font-size:15px;line-height:1.6}
}


/* v3.0.50 — videos externos compatibles: Facebook, YouTube, Vimeo y MP4/WebM */
.s25-video-embed{width:100%;max-width:960px;margin:10px auto 0}
.s25-video-embed iframe{display:block;width:100%!important;max-width:100%!important;height:540px!important;border:0!important;border-radius:14px;background:#f2f2f2}
.s25-video-direct .wp-video,.s25-video-direct video{width:100%!important;max-width:100%!important;height:auto!important;border-radius:14px}
.s25-video-fallback{text-align:center;margin:12px 0 0!important}
.s25-video-fallback a{display:inline-block;padding:10px 16px;border-radius:8px;background:#560216;color:#fff!important;text-decoration:none!important;font-weight:700}
.s25-video-fallback a:hover{background:#D90416}
@media(max-width:700px){.s25-video-embed iframe{height:360px!important}}
@media(max-width:480px){.s25-video-embed iframe{height:260px!important}}


/* v3.0.52 — centrar reproductores de Facebook en Noticias y Acciones realizadas */
.s25-video-facebook{
  width:100%!important;
  max-width:560px!important;
  margin:20px auto 0!important;
}
.s25-video-facebook iframe{
  display:block!important;
  width:100%!important;
  max-width:560px!important;
  height:314px!important;
  margin:0 auto!important;
  border:0!important;
  border-radius:12px!important;
}
.s25-action-video .s25-video-facebook,
.s25-news-single .s25-video-facebook{
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:620px){
  .s25-video-facebook{max-width:100%!important;}
  .s25-video-facebook iframe{height:calc((100vw - 56px) * .560714)!important;max-height:314px!important;min-height:210px!important;}
}

/* v3.0.54 — Legibilidad en Noticias (publicadas y futuras).
   Solo aplica a entradas individuales, no a Acciones, Convenios o Convocatorias. */
.s25-news-single .s25-action-content {
  font-size:17px;
  line-height:1.9;
  text-align:justify;
  text-justify:inter-word;
  overflow-wrap:break-word;
  hyphens:auto;
}
.s25-news-single .s25-action-content p {
  text-align:justify !important;
  text-justify:inter-word;
  line-height:1.9 !important;
  margin-top:0 !important;
  margin-bottom:1.45em !important;
  overflow-wrap:break-word;
}
.s25-news-single .s25-action-content > p:last-child { margin-bottom:0 !important; }
.s25-news-single .s25-action-content h2,
.s25-news-single .s25-action-content h3,
.s25-news-single .s25-action-content h4 { line-height:1.35; margin-top:1.4em; margin-bottom:.6em; text-align:left; }
.s25-news-single .s25-action-content ul,
.s25-news-single .s25-action-content ol { margin:0 0 1.35em; padding-left:1.8em; line-height:1.85; }
.s25-news-single .s25-action-content figure,
.s25-news-single .s25-action-content .wp-block-image,
.s25-news-single .s25-action-content .wp-block-gallery { margin-top:1.4em; margin-bottom:1.4em; }
.s25-news-single .s25-action-content figcaption { text-align:center; line-height:1.5; }
@media (max-width:620px) {
  .s25-news-single .s25-action-content { font-size:16px; line-height:1.75; }
  .s25-news-single .s25-action-content p { line-height:1.75 !important; margin-bottom:1.2em !important; }
}


/* v3.0.58 — Párrafos justificados y separados en Noticias y Acciones realizadas.
   Incluye las entradas anteriores; no modifica PDF, multimedia ni la portada.
   Un texto centrado o alineado explícitamente desde el editor conserva su estilo. */
.s25-action-single .s25-action-content {
  font-size:17px;
  line-height:1.9;
  overflow-wrap:break-word;
}
.s25-action-single .s25-action-content > p,
.s25-action-single .s25-action-content > .wp-block-paragraph {
  display:block;
  margin:0 0 1.5em !important;
  line-height:1.9 !important;
  overflow-wrap:break-word;
}
.s25-action-single .s25-action-content > p:not([style*="text-align"]):not(.has-text-align-center):not(.has-text-align-right):not(.has-text-align-left),
.s25-action-single .s25-action-content > .wp-block-paragraph:not([style*="text-align"]):not(.has-text-align-center):not(.has-text-align-right):not(.has-text-align-left) {
  text-align:justify !important;
  text-justify:inter-word;
}
.s25-action-single .s25-action-content > p:last-child { margin-bottom:0 !important; }
.s25-action-single .s25-action-content h2,
.s25-action-single .s25-action-content h3,
.s25-action-single .s25-action-content h4 { text-align:left;line-height:1.4;margin:1.5em 0 .65em; }
.s25-action-single .s25-action-content li { line-height:1.75; }
.s25-action-single .s25-action-content figure,
.s25-action-single .s25-action-content .wp-block-image,
.s25-action-single .s25-action-content .wp-block-gallery { margin:1.45em 0; }
.s25-action-single .s25-action-content figcaption { text-align:center; }
@media(max-width:620px) {
  .s25-action-single .s25-action-content { font-size:16px;line-height:1.75; }
  .s25-action-single .s25-action-content > p { line-height:1.75 !important;margin-bottom:1.2em !important; }
}


/* v3.0.59 — Galerías homogéneas en Noticias y Acciones realizadas.
   Compatibilidad: shortcode clásico [gallery], bloques Gutenberg y galería propia.
   Evita floats heredados, desbordes y que el siguiente párrafo rodee fotos. */
.s25-action-single .s25-action-content { display: flow-root; }
.s25-action-single .s25-action-content > p { clear: both; }
.s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery, .blocks-gallery-grid),
.s25-action-single .s25-editor-gallery {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:start;
    width:100% !important;
    max-width:100% !important;
    margin:26px 0 30px !important;
    padding:0 !important;
    list-style:none !important;
    float:none !important;
    clear:both !important;
    box-sizing:border-box;
}
.s25-action-single .s25-action-content .gallery .gallery-item,
.s25-action-single .s25-action-content .wp-block-gallery .wp-block-image,
.s25-action-single .s25-action-content .wp-block-gallery figure,
.s25-action-single .s25-action-content .blocks-gallery-grid .blocks-gallery-item,
.s25-action-single .s25-editor-gallery .s25-gallery-photo {
    float:none !important;
    clear:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    flex:none !important;
    overflow:hidden;
    box-sizing:border-box;
    border-radius:9px;
}
.s25-action-single .s25-action-content .gallery br { display:none !important; }
.s25-action-single .s25-action-content .gallery :is(.gallery-icon, .gallery-icon a),
.s25-action-single .s25-action-content :is(.wp-block-gallery, .blocks-gallery-grid) a,
.s25-action-single .s25-editor-gallery .s25-gallery-photo {
    display:block !important;
    width:100%;
    aspect-ratio:4 / 3;
    overflow:hidden;
    border-radius:9px;
    background:#f1f2f3;
}
.s25-action-single .s25-action-content .gallery .gallery-item img,
.s25-action-single .s25-action-content .wp-block-gallery img,
.s25-action-single .s25-action-content .blocks-gallery-grid img,
.s25-action-single .s25-editor-gallery img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    aspect-ratio:4 / 3 !important;
    object-fit:cover !important;
    object-position:center;
    max-width:100% !important;
    border:0 !important;
    box-shadow:none !important;
    margin:0 !important;
    cursor:zoom-in;
    border-radius:9px;
}
.s25-action-single .s25-action-content .gallery .gallery-caption,
.s25-action-single .s25-action-content .wp-block-gallery figcaption {
    display:block;
    position:static;
    background:none;
    color:#424242;
    font-size:13px;
    line-height:1.4;
    padding:7px 4px 0;
    text-align:center;
}
.s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery) + p { clear:both; margin-top:1.5em; }
.s25-managed-gallery { margin:28px 0; clear:both; }
.s25-managed-gallery h2 { font-size:21px; color:#560216; margin:0 0 14px; }
.s25-editor-gallery { margin-top:0 !important; }
.s25-gallery-lightbox {
    position:fixed; inset:0; z-index:100000;
    background:rgba(5,5,8,.95);
    display:flex; align-items:center; justify-content:center;
    padding:54px 58px; box-sizing:border-box;
}
.s25-gallery-lightbox[hidden] { display:none!important; }
.s25-gallery-lightbox__figure { display:flex; flex-direction:column; gap:12px; align-items:center; justify-content:center; max-width:100%; margin:0; }
.s25-gallery-lightbox__image { display:block; max-width:min(100%,1100px); max-height:calc(100vh - 150px); width:auto; height:auto; object-fit:contain; border-radius:5px; }
.s25-gallery-lightbox__status { color:#fff; text-align:center; font-size:15px; }
.s25-gallery-lightbox__button { position:absolute; border:1px solid rgba(255,255,255,.5); background:rgba(0,0,0,.6); color:#fff; font-size:25px; min-width:44px; min-height:44px; line-height:1; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.s25-gallery-lightbox__button:hover,.s25-gallery-lightbox__button:focus-visible { background:#560216; outline:2px solid #f2e63d; outline-offset:2px; }
.s25-gallery-lightbox__close { top:12px; right:14px; }
.s25-gallery-lightbox__prev { left:12px; top:50%; transform:translateY(-50%); }
.s25-gallery-lightbox__next { right:12px; top:50%; transform:translateY(-50%); }
body.s25-gallery-open { overflow:hidden; }
@media(max-width:850px) {
  .s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery, .blocks-gallery-grid),
  .s25-action-single .s25-editor-gallery { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; }
}
@media(max-width:480px) {
  .s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery, .blocks-gallery-grid),
  .s25-action-single .s25-editor-gallery { grid-template-columns:minmax(0,1fr) !important; }
  .s25-gallery-lightbox { padding:60px 42px; }
}
@media(prefers-reduced-motion:no-preference) {
  .s25-action-single .s25-editor-gallery img,
  .s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery) img { transition:transform .22s ease; }
  .s25-action-single .s25-editor-gallery a:hover img,
  .s25-action-single .s25-action-content :is(.gallery, .wp-block-gallery) a:hover img { transform:scale(1.025); }
}

/* WP 5.x gallery blocks place their list inside a wrapper. Do not shrink the list to one grid cell. */
.s25-action-single .s25-action-content .wp-block-gallery:has(> .blocks-gallery-grid) { display:block !important; }
.s25-gallery-lightbox__button[hidden] { display:none !important; }

/* v3.0.60: elemento independiente "Formatos" en el menú principal.
   Ajuste compacto para conservar una sola línea en escritorios sin afectar menú móvil. */
@media (min-width:851px) {
  .s25-main-nav { gap:0; }
  .s25-main-nav a { padding:15px clamp(7px, .79vw, 13px)!important; font-size:clamp(10px,.74vw,12px)!important; }
}


/* v3.0.61 — Menú principal Documentos > Formatos / Normatividad. */
.s25-site-header { position:relative; z-index:50; }
.s25-main-nav { position:relative; z-index:60; overflow:visible; }
.s25-main-nav .s25-nav-dropdown { position:relative; display:flex; align-self:stretch; flex:0 0 auto; }
.s25-main-nav .s25-nav-dropdown-head { display:flex; align-items:stretch; }
.s25-main-nav .s25-nav-dropdown-head > a { display:flex; align-items:center; gap:6px; }
.s25-main-nav .s25-submenu-toggle { display:flex; align-items:center; justify-content:center; padding:0 9px; min-width:30px; color:#fff; background:#560216; border:0; cursor:pointer; font-family:inherit; font-size:19px; }
.s25-main-nav .s25-submenu-toggle:focus-visible { outline:2px solid #F2E63D; outline-offset:-3px; }
.s25-main-nav .s25-nav-dropdown.is-current > .s25-nav-dropdown-head > a,
.s25-main-nav .s25-nav-dropdown.is-current > .s25-nav-dropdown-head > button,
.s25-main-nav .s25-nav-dropdown.is-expanded > .s25-nav-dropdown-head > a,
.s25-main-nav .s25-nav-dropdown.is-expanded > .s25-nav-dropdown-head > button { background:#F2E63D!important; color:#560216!important; }
.s25-main-nav .s25-nav-submenu { display:none; position:absolute; top:100%; left:0; z-index:101; min-width:215px; background:#fff; border:1px solid #e6e6e6; border-top:3px solid #C5A059; box-shadow:0 10px 24px rgba(0,0,0,.18); flex-direction:column; }
.s25-main-nav .s25-nav-submenu > a { display:block!important; color:#373737!important; background:#fff!important; text-transform:none!important; font-size:14px!important; font-weight:600!important; line-height:1.4!important; letter-spacing:normal!important; padding:15px 16px!important; border-bottom:1px solid #ededed!important; white-space:nowrap; }
.s25-main-nav .s25-nav-submenu > a:last-child { border-bottom:0!important; }
.s25-main-nav .s25-nav-submenu > a:hover,
.s25-main-nav .s25-nav-submenu > a:focus-visible,
.s25-main-nav .s25-nav-submenu > a.is-current { background:#fff8de!important; color:#560216!important; }
@media(min-width:851px){
  .s25-main-nav .s25-nav-dropdown:hover > .s25-nav-submenu,
  .s25-main-nav .s25-nav-dropdown:focus-within > .s25-nav-submenu,
  .s25-main-nav .s25-nav-dropdown.is-expanded > .s25-nav-submenu { display:flex; }
  .s25-main-nav .s25-nav-dropdown:hover > .s25-nav-dropdown-head > a,
  .s25-main-nav .s25-nav-dropdown:hover > .s25-nav-dropdown-head > button,
  .s25-main-nav .s25-nav-dropdown:focus-within > .s25-nav-dropdown-head > a,
  .s25-main-nav .s25-nav-dropdown:focus-within > .s25-nav-dropdown-head > button { background:#F2E63D!important; color:#560216!important; }
  .s25-main-nav .s25-nav-dropdown-head > a { padding-right:5px!important; }
}
@media(max-width:850px){
  .s25-main-nav .s25-nav-dropdown { display:block; width:100%; }
  .s25-main-nav .s25-nav-dropdown-head { width:100%; }
  .s25-main-nav .s25-nav-dropdown-head > a { flex:1; }
  .s25-main-nav .s25-submenu-toggle { width:50px; border-bottom:1px solid rgba(255,255,255,.14); border-left:1px solid rgba(255,255,255,.18); }
  .s25-main-nav .s25-nav-submenu { position:static; box-shadow:none; min-width:0; width:100%; border-top:0; }
  .s25-main-nav .s25-nav-dropdown.is-expanded > .s25-nav-submenu { display:flex; }
  .s25-main-nav .s25-nav-submenu > a { padding:14px 30px!important; }
}

/* 3.0.63: paginación accesible de noticias y actividades unificadas */
.s25-news-pagination{margin:24px 0 12px;display:flex;justify-content:center}
.s25-news-pagination ul.page-numbers{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.s25-news-pagination a.page-numbers,.s25-news-pagination span.page-numbers{display:inline-block;padding:9px 13px;border-radius:8px;border:1px solid #d2d2d2;background:#fff;color:#560216;text-decoration:none;font-weight:700}
.s25-news-pagination .page-numbers.current{background:#560216;color:#fff;border-color:#560216}

/* v3.0.67 — Evita columnas flotantes, palabras partidas y fotografías
   mezcladas con los párrafos de Noticias y Acciones antiguas. */
.s25-action-single .s25-action-content {display:flow-root; min-width:0; clear:both;}
.s25-action-single .s25-action-content p {float:none!important; clear:both!important; hyphens:none!important; word-break:normal!important; overflow-wrap:break-word; text-align:justify; margin-bottom:1.35em!important; line-height:1.85!important;}
.s25-action-single .s25-action-content p img {float:none!important;}
.s25-action-single .s25-action-content img {max-width:100%!important;height:auto;}
.s25-action-single .s25-managed-gallery {clear:both!important; float:none!important; width:100%; max-width:100%; margin:28px 0!important;}
.s25-action-single .s25-managed-gallery .s25-editor-gallery {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important; align-items:stretch!important;}
.s25-action-single .s25-managed-gallery .s25-editor-gallery .s25-gallery-photo {display:block!important;width:100%!important;aspect-ratio:4/3;float:none!important;clear:none!important;min-width:0;max-width:100%;padding:0!important;margin:0!important;overflow:hidden;}
.s25-action-single .s25-managed-gallery .s25-editor-gallery .s25-gallery-photo img {display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;aspect-ratio:4/3;margin:0!important;float:none!important;}
@media(max-width:850px){.s25-action-single .s25-managed-gallery .s25-editor-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:480px){.s25-action-single .s25-managed-gallery .s25-editor-gallery{grid-template-columns:minmax(0,1fr)!important;}}


/* v3.0.68 — Legibilidad y separación real de párrafos, sin guiones automáticos. */
.s25-action-single .s25-action-content > p {
  margin-block-start: 0 !important;
  margin-block-end: 1.5em !important;
  line-height: 1.9 !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
  word-spacing: normal;
  white-space: normal;
}
.s25-action-single .s25-action-content > p + p { margin-top: 0.55em !important; }
.s25-action-single .s25-action-content > p:last-child { margin-bottom: 0 !important; }

.s25-action-single .s25-action-content > p:not([style*="text-align"]):not(.has-text-align-center):not(.has-text-align-right):not(.has-text-align-left) {
  text-align: justify !important;
}


/* v3.0.69 — Separación legible de TODOS los bloques de noticia.
   Incluye contenido clásico con DIV y SPAN; no modifica galerías. */
.s25-action-single .s25-action-content,
.s25-action-single .s25-action-content p,
.s25-action-single .s25-action-content div,
.s25-action-single .s25-action-content span {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  -ms-hyphens: none !important;
  word-break: normal !important;
}
.s25-action-single .s25-action-content > p,
.s25-action-single .s25-action-content > .s25-readable-paragraph,
.s25-action-single .s25-action-content > div.s25-readable-paragraph {
  display: block !important;
  float: none !important;
  clear: both !important;
  text-align: justify !important;
  text-justify: inter-word;
  line-height: 1.9 !important;
  margin: 0 0 1.45em !important;
  padding: 0 !important;
  overflow-wrap: break-word;
}
.s25-action-single .s25-action-content > p:last-child,
.s25-action-single .s25-action-content > .s25-readable-paragraph:last-child {margin-bottom:0 !important;}
.s25-action-single .s25-action-content > p + p,
.s25-action-single .s25-action-content > p + .s25-readable-paragraph,
.s25-action-single .s25-action-content > .s25-readable-paragraph + .s25-readable-paragraph {margin-top:0 !important;}
@media(max-width:620px){
 .s25-action-single .s25-action-content > p,
 .s25-action-single .s25-action-content > .s25-readable-paragraph {line-height:1.75 !important;margin-bottom:1.2em !important;}
}

/* v3.0.70 — Pegados de Facebook: párrafos reales y fotografías en cuadrícula. */
.s25-action-single .s25-action-content > p.s25-fb-paragraph,
.s25-news-single .s25-action-content > p.s25-fb-paragraph {
  display: block !important;
  clear: both !important;
  float: none !important;
  text-align: justify !important;
  line-height: 1.9 !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}
.s25-action-single .s25-action-content > .s25-fb-photo-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  clear: both !important;
  width: 100% !important;
  margin: 12px 0 28px !important;
  padding: 0 !important;
}
.s25-action-single .s25-action-content .s25-fb-photo {
  display: block !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
}
.s25-action-single .s25-action-content .s25-fb-photo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: 9px;
  margin: 0 !important;
}
@media(max-width:800px) {
  .s25-action-single .s25-action-content > .s25-fb-photo-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:520px) {
  .s25-action-single .s25-action-content > .s25-fb-photo-grid {grid-template-columns:1fr !important;}
}


/* v3.0.72 — Cinco diapositivas y clic directo sobre la imagen para ampliarla. */
.s25-home-hero-v27.s25-slider .s25-slide-expand{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:auto;
  max-width:100%;
  max-height:100%;
  cursor:zoom-in;
  text-decoration:none !important;
  outline-offset:5px;
}
.s25-home-hero-v27.s25-slider .s25-slide-expand:focus-visible{
  outline:3px solid #560216;
  border-radius:14px;
}
body.s25-slider-lightbox-open{overflow:hidden !important}
.s25-slider-lightbox{
  position:fixed;
  inset:0;
  z-index:2147483600;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(4,5,11,.94);
  padding:58px 56px 44px;
  box-sizing:border-box;
}
.s25-slider-lightbox__figure{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0;
  width:100%;
  height:100%;
  min-width:0;
}
.s25-slider-lightbox__image{
  display:block;
  max-width:100%;
  max-height:calc(100vh - 135px);
  width:auto;
  height:auto;
  object-fit:contain;
  border:0;
  border-radius:4px;
  box-shadow:0 12px 40px rgba(0,0,0,.25);
}
.s25-slider-lightbox__status{
  color:#fff;
  padding-top:14px;
  font-size:14px;
  text-align:center;
}
.s25-slider-lightbox__button{
  position:absolute;
  border:1px solid rgba(255,255,255,.5);
  border-radius:50%;
  width:44px;
  height:44px;
  background:rgba(86,2,22,.9);
  color:#fff;
  font-size:32px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.s25-slider-lightbox__button:focus-visible{
  outline:3px solid #f2e63d;
  outline-offset:3px;
}
.s25-slider-lightbox__close{top:12px;right:18px}
.s25-slider-lightbox__prev{left:10px;top:50%;transform:translateY(-50%)}
.s25-slider-lightbox__next{right:10px;top:50%;transform:translateY(-50%)}
@media(max-width:600px){
  .s25-slider-lightbox{padding:58px 18px 64px}
  .s25-slider-lightbox__image{max-height:calc(100vh - 150px)}
  .s25-slider-lightbox__button{width:40px;height:40px}
  .s25-slider-lightbox__prev,.s25-slider-lightbox__next{top:auto;bottom:8px;transform:none}
  .s25-slider-lightbox__prev{left:calc(50% - 55px)}
  .s25-slider-lightbox__next{right:calc(50% - 55px)}
}
/* El estilo histórico del slider bloqueaba los clics sobre las imágenes. */
.s25-home-hero-v27.s25-slider .s25-slide.is-active .s25-slide-media{
  pointer-events:auto !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active .s25-slide-expand{
  pointer-events:auto !important;
}


/* =======================================================================
 * v3.0.74 — Slider tipo banner panorámico (referencia ~1903 × 565 px)
 * Ancho completo sin tarjetas ni bordes. El clic conserva el lightbox v3.0.72.
 * ======================================================================= */
.s25-home-hero-v27.s25-slider{
  display:block !important;
  position:relative !important;
  width:100vw !important;
  max-width:none !important;
  height:clamp(385px, 29.7vw, 565px) !important;
  min-height:0 !important;
  margin:0 0 0 calc(50% - 50vw) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#183e48 !important;
  overflow:hidden !important;
}
/* El modo de WordPress, a diferencia del sitio independiente, limita a 1500px. */
.s25-theme-mode .s25-portal-home:has(.s25-home-hero-v27.s25-slider){
  max-width:100% !important;
}
.s25-home-hero-v27.s25-slider:after,
.s25-home-hero-v27.s25-slider .s25-slide:before{
  display:none !important;
  content:none !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-media{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-expand{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  cursor:zoom-in !important;
  overflow:hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:var(--s25-slide-position, center center) !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
/* Controles encima del banner, con margen para su visibilidad. */
.s25-home-hero-v27.s25-slider .s25-hero-dots{
  bottom:19px !important;
  z-index:9 !important;
}
.s25-home-hero-v27.s25-slider .s25-hero-arrow{
  z-index:9 !important;
}
/* El botón opcional sigue siendo independiente del enlace de ampliar foto. */
.s25-home-hero-v27.s25-slider .s25-slide-actions{
  z-index:10 !important;
  bottom:18px !important;
}
@media (min-width:1904px){
  .s25-home-hero-v27.s25-slider{height:565px !important}
}
@media (max-width:1100px){
  .s25-home-hero-v27.s25-slider{
    height:clamp(300px, 36vw, 420px) !important;
    min-height:0 !important;
  }
}
@media (max-width:700px){
  .s25-home-hero-v27.s25-slider{
    height:clamp(220px, 55vw, 340px) !important;
    min-height:0 !important;
  }
  .s25-home-hero-v27.s25-slider .s25-hero-arrow{
    width:36px !important;
    height:36px !important;
  }
  .s25-home-hero-v27.s25-slider .s25-hero-arrow.left{left:8px !important}
  .s25-home-hero-v27.s25-slider .s25-hero-arrow.right{right:8px !important}
  .s25-home-hero-v27.s25-slider .s25-slide-actions{
    bottom:42px !important;
    right:10px !important;
    left:auto !important;
  }
  .s25-home-hero-v27.s25-slider .s25-hero-dots{bottom:9px !important}
}
@media (prefers-reduced-motion:reduce){
  .s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run{
    animation:none !important;
    transform:none !important;
  }
}


/* ======================================================================
 * v3.0.75 — Ajuste automático para imágenes EXISTENTES del slider
 * No modifica imágenes almacenadas, IDs, URLs, orden ni contenido del portal.
 * Muestra la imagen entera (sin crop) y rellena el formato panorámico con un
 * fondo desenfocado creado de esa MISMA imagen. Funciona en retratos, fotos
 * cuadradas y panorámicas. El clic sigue ampliando la imagen original.
 * ====================================================================== */
.s25-home-hero-v27.s25-slider .s25-slide::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: -34px !important;
  z-index: 0 !important;
  background-image: var(--s25-slide-bg) !important;
  background-size: cover !important;
  background-position: var(--s25-slide-position, center center) !important;
  background-repeat: no-repeat !important;
  filter: blur(24px) brightness(.70) !important;
  transform: scale(1.02) !important;
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
  pointer-events: none !important;
}
.s25-home-hero-v27.s25-slider .s25-slide.is-active::before {
  filter: blur(24px) brightness(.70) !important;
  transform: scale(1.02) !important;
  animation: none !important;
}
.s25-home-hero-v27.s25-slider .s25-slide::after {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: rgba(5, 8, 14, .09) !important;
  pointer-events: none !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-media {
  z-index: 2 !important;
  overflow: hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-expand {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  overflow: hidden !important;
}
.s25-home-hero-v27.s25-slider .s25-slide-image,
.s25-home-hero-v27.s25-slider .s25-slide-image.s25-zoom-run {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  animation: none !important; /* evita cortar tipografía de carteles */
}
/* El botón de destino opcional, las flechas y los puntos no cambian de lugar. */
.s25-home-hero-v27.s25-slider .s25-slide-actions {z-index:10 !important;}
.s25-home-hero-v27.s25-slider .s25-hero-arrow,
.s25-home-hero-v27.s25-slider .s25-hero-dots {z-index:12 !important;}
@media (max-width: 700px) {
  /* Más área de lectura en teléfono: flyers verticales no se recortan. */
  .s25-home-hero-v27.s25-slider {height:clamp(310px, 76vw, 440px) !important;}
  .s25-home-hero-v27.s25-slider .s25-slide::before {
    filter:blur(20px) brightness(.70) !important;
  }
}


/* =====================================================================
 * v3.0.76 — Menú alineado al encabezado institucional.
 * El banner usa padding horizontal: max(26px, (ancho - 1370px)/2 + 26px).
 * Se aplica el MISMO margen a la barra guinda para hacer coincidir ambos
 * bordes. Solo en escritorio; el menú de celular conserva su acordeón.
 * No altera enlaces, submenús, colores, slider ni el HTML del portal.
 * ===================================================================== */
@media (min-width: 1151px) {
  .s25-site-header > .s25-main-nav {
    width: auto !important;
    max-width: none !important;
    margin-left: max(26px, calc((100% - 1370px) / 2 + 26px)) !important;
    margin-right: max(26px, calc((100% - 1370px) / 2 + 26px)) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: space-between !important;
    gap: 0 !important;
  }
}
/* En pantallas medianas los accesos usan todo el ancho disponible.
 * Se conservan los puntos de ruptura y el menú plegable ya existentes. */
@media (min-width: 851px) and (max-width: 1150px) {
  .s25-site-header > .s25-main-nav {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: center !important;
    gap: 0 !important;
  }
}


/* ========================================================================
 * v3.0.77 — Encabezado + menú + slider con bordes laterales coincidentes.
 * El slider v3.0.74 forzaba 100vw y margen negativo (de borde a borde).
 * Anulamos ambas reglas sin afectar el tamaño de imagen ni su lightbox:
 * v3.0.75 mantiene object-fit:contain y fondo difuminado automáticamente.
 * El margen se calcula en cada contenedor; es idéntico en todos ellos.
 * ======================================================================== */
.s25-site-header,
.s25-portal-home{
  --s25-frame-gutter: max(26px, calc((100% - 1370px) / 2 + 26px));
}

/* La imagen aprobada es el referente único de ancho para barra y slider. */
.s25-site-header .s25-brand-banner.s25-brand-banner--image{
  padding-left:var(--s25-frame-gutter) !important;
  padding-right:var(--s25-frame-gutter) !important;
}

/* Escritorio y tableta horizontal: barra guinda del mismo ancho. */
@media (min-width:851px){
  .s25-site-header > .s25-main-nav{
    width:auto !important;
    max-width:none !important;
    margin:0 var(--s25-frame-gutter) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    justify-content:space-between !important;
    gap:0 !important;
  }
}

/* Anula el ancho 100vw de v3.0.74. El margen corresponde exactamente
   al de la imagen institucional y al del menú, también al abrir el sitio
   desde la plantilla propia de WordPress (sin editar la imagen cargada). */
.s25-portal-home > .s25-home-hero-v27.s25-slider{
  width:auto !important;
  max-width:none !important;
  margin:0 var(--s25-frame-gutter) !important;
  padding:0 !important;
  box-sizing:border-box !important;
}

/* En móviles se usa un margen menor para que los carteles se lean mejor,
   manteniendo los tres elementos alineados y el menú plegable. */
@media (max-width:850px){
  .s25-site-header,
  .s25-portal-home{
    --s25-frame-gutter:16px;
  }
  .s25-site-header > .s25-menu-toggle{
    width:calc(100% - 32px) !important;
    margin:0 16px !important;
  }
  .s25-site-header > .s25-main-nav{
    width:auto !important;
    max-width:none !important;
    margin:0 var(--s25-frame-gutter) !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
}


/* ========================================================================
 * v3.0.78 — Navegación principal compacta, centrada y sin huecos excesivos.
 * Mantiene la barra exterior alineada con banner y slider de v3.0.77.
 * Los items no deben crecer ni separarse mediante space-between.
 * Solo modifica escritorio; el acordeón móvil de <=850px queda intacto.
 * ======================================================================== */
@media (min-width: 851px) {
  .s25-site-header > .s25-main-nav {
    justify-content: center !important;
    align-items: stretch !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
  }
  .s25-site-header > .s25-main-nav > a,
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .s25-site-header > .s25-main-nav > a {
    padding: 15px clamp(9px, 1vw, 16px) !important;
    white-space: nowrap !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    align-items: stretch !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head > a {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 15px 3px 15px clamp(9px, 1vw, 16px) !important;
    white-space: nowrap !important;
  }
  .s25-site-header > .s25-main-nav .s25-nav-dropdown-head > .s25-submenu-toggle {
    flex: 0 0 24px !important;
    width: 24px !important;
    min-width: 24px !important;
    padding: 0 4px !important;
    margin: 0 !important;
  }
  .s25-site-header > .s25-main-nav > a > b {
    margin-left: 0 !important;
    display: inline-block !important;
  }
}
/* Barra de 851–1100 px: reduce espaciado sin volver a estirar opciones. */
@media (min-width: 851px) and (max-width: 1100px) {
  .s25-site-header > .s25-main-nav > a {
    padding: 14px 8px !important;
    font-size: 11px !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head > a {
    padding: 14px 2px 14px 8px !important;
    font-size: 11px !important;
  }
  .s25-site-header > .s25-main-nav .s25-nav-dropdown-head > .s25-submenu-toggle {
    flex-basis: 20px !important;
    min-width: 20px !important;
    width: 20px !important;
    padding: 0 2px !important;
  }
}


/* ========================================================================
 * v3.0.79 — Escudo oficial SNTSA legible en el pie de página.
 * El mapa de Puebla y las letras del escudo son negros en la imagen PNG;
 * sobre el fondo negro institucional se perdían los trazos. Enmarcamos
 * SOLO la fotografía del logo en una placa marfil (sin recolorear el logo).
 * Se conserva el diseño del footer, menú, slider y la adaptabilidad móvil.
 * ======================================================================== */
.s25-site-footer-v27 .s25-footer-identity > img {
  box-sizing: border-box !important;
  flex: 0 0 110px !important;
  display: block !important;
  width: 110px !important;
  height: 132px !important;
  max-width: 110px !important;
  max-height: none !important;
  padding: 8px !important;
  background: #fcfaf4 !important;
  border: 1px solid rgba(197,160,89,.78) !important;
  border-radius: 11px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.24) !important;
  object-fit: contain !important;
  object-position: center !important;
  image-rendering: auto !important;
}
.s25-site-footer-v27 .s25-footer-identity {
  gap: 16px !important;
  align-items: center !important;
}
@media (max-width: 850px) {
  .s25-site-footer-v27 .s25-footer-identity > img {
    flex-basis: 98px !important;
    width: 98px !important;
    max-width: 98px !important;
    height: 119px !important;
  }
}
@media (max-width: 560px) {
  .s25-site-footer-v27 .s25-footer-identity > img {
    flex-basis: 90px !important;
    width: 90px !important;
    max-width: 90px !important;
    height: 108px !important;
    padding: 6px !important;
  }
}


/* ========================================================================
 * v3.0.80 — Enlaces de interés en una sola columna (orden de administración).
 * Evita que el tercer enlace «IMSS Bienestar» se coloque a la derecha.
 * No cambia los links configurados ni los estilos de escudo, slider o menú.
 * ======================================================================== */
.s25-site-footer-v27 .s25-footer-main {
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1.33fr) minmax(0, 1.12fr) !important;
  column-gap: 28px;
}
.s25-site-footer-v27 .s25-footer-links {
  min-width: 0;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
}
.s25-site-footer-v27 .s25-footer-links a {
  display: block !important;
  width: auto !important;
  max-width: 100%;
  white-space: normal;
  line-height: 1.4;
}
.s25-site-footer-v27 .s25-footer-social-v27 {
  grid-column: auto !important;
}
@media (max-width: 1180px) {
  .s25-site-footer-v27 .s25-footer-main {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    row-gap: 22px;
  }
  .s25-site-footer-v27 .s25-footer-social-v27 {
    grid-column: 1 / -1 !important;
    border-left: 0 !important;
    padding-left: 0 !important;
  }
}
@media (max-width: 700px) {
  .s25-site-footer-v27 .s25-footer-main {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px;
  }
  .s25-site-footer-v27 .s25-footer-identity {
    grid-column: 1 / -1;
  }
  .s25-site-footer-v27 .s25-footer-social-v27 {
    grid-column: 1 / -1 !important;
    flex-wrap: wrap;
  }
}


/* ========================================================================
 * v3.0.81 — Navegación equilibrada en toda la anchura de la barra guinda.
 * Soluciona grandes huecos a ambos lados del conjunto de opciones cuando
 * se aplicó justify-content:center en v3.0.78. Cada acceso crece solo lo
 * necesario, con sus textos y flechas centrados, sin quitar los márgenes
 * externos que alinean encabezado, menú y slider.
 * Los submenús siguen siendo independientes y no se cambia el móvil.
 * ======================================================================== */
@media (min-width: 1151px) {
  .s25-site-header > .s25-main-nav {
    justify-content: space-between !important;
    align-items: stretch !important;
  }
  .s25-site-header > .s25-main-nav > a,
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
  }
  .s25-site-header > .s25-main-nav > a {
    justify-content: center !important;
    text-align: center !important;
    padding-left: 9px !important;
    padding-right: 9px !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head > a {
    flex: 0 1 auto !important;
    justify-content: center !important;
    padding-left: 9px !important;
    padding-right: 3px !important;
  }
  .s25-site-header > .s25-main-nav .s25-nav-dropdown-head > .s25-submenu-toggle {
    flex: 0 0 22px !important;
    width: 22px !important;
    min-width: 22px !important;
    padding: 0 3px !important;
  }
}
/* Tablet horizontal: ocupa el ancho disponible, pero respeta el tamaño
 * compacto de los botones y evita que invadan el menú vecino. */
@media (min-width: 851px) and (max-width: 1150px) {
  .s25-site-header > .s25-main-nav {
    justify-content: space-between !important;
  }
}


/* ======================================================================
 * v3.0.82 — Flechas de submenús alineadas y unidas visualmente al título.
 * Corrige el glifo «⌄» que quedaba bajo la línea de texto, y la excesiva
 * separación visual de «¿Quiénes somos?» y «Documentos» en escritorio.
 * No modifica enlaces, submenús, fondo institucional ni el slider.
 * ====================================================================== */
@media (min-width:851px) {
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head {
    display:flex !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:0 !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head > a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 1 auto !important;
    padding-right:2px !important;
    margin-right:0 !important;
    line-height:1.15 !important;
  }
  .s25-site-header > .s25-main-nav .s25-nav-dropdown-head > .s25-submenu-toggle {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 18px !important;
    width:18px !important;
    min-width:18px !important;
    padding:0 3px 0 0 !important;
    margin:0 !important;
    border:0 !important;
    font-size:0 !important;
    line-height:1 !important;
  }
}
/* La flecha dibujada en CSS evita el descentrado propio del carácter Unicode. */
.s25-site-header > .s25-main-nav .s25-submenu-toggle > span[aria-hidden="true"] {
  display:none !important;
}
.s25-site-header > .s25-main-nav .s25-submenu-toggle::after {
  content:"";
  display:block;
  flex:0 0 6px;
  width:6px;
  height:6px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .15s ease;
}
.s25-site-header > .s25-main-nav .s25-nav-dropdown.is-expanded > .s25-nav-dropdown-head > .s25-submenu-toggle::after {
  transform:translateY(2px) rotate(225deg);
}
@media (max-width:850px) {
  .s25-site-header > .s25-main-nav .s25-submenu-toggle::after {
    width:7px;
    height:7px;
  }
}


/* ======================================================================
 * v3.0.83 — Contacto visible en dispositivos móviles.
 * Mostrar siempre los datos configurados en SNTSA 25 > Configuración:
 * teléfono, horario y domicilio. Respetar enlaces a teléfono y Google Maps.
 * El buscador y las redes comparten línea para evitar espacios innecesarios.
 * No modifica el encabezado, slider ni menú de escritorio.
 * ====================================================================== */
@media (min-width:851px) and (max-width:1180px) {
  .s25-site-header .s25-topbar-inner {
    flex-wrap:wrap;
    gap:8px 16px;
    padding-top:7px !important;
    padding-bottom:7px !important;
  }
  .s25-site-header .s25-contact-strip {
    flex:1 1 490px;
    flex-wrap:wrap !important;
    align-items:center;
    gap:6px 16px !important;
  }
  .s25-site-header .s25-contact-strip .s25-top-address {
    display:flex !important;
    flex:1 1 100%;
    max-width:none;
    overflow:visible;
    text-overflow:clip;
    white-space:normal !important;
    overflow-wrap:break-word;
  }
  .s25-site-header .s25-topbar-tools {
    margin-left:auto;
  }
}
@media (max-width:850px) {
  .s25-site-header .s25-topbar-inner {
    display:flex;
    flex-direction:column;
    align-items:stretch !important;
    gap:10px !important;
    padding:10px 16px 12px !important;
  }
  .s25-site-header .s25-contact-strip {
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    gap:6px !important;
    width:100%;
    min-width:0;
  }
  .s25-site-header .s25-contact-strip > a,
  .s25-site-header .s25-contact-strip > span {
    display:flex !important;
    align-items:flex-start !important;
    gap:8px;
    width:100%;
    min-width:0;
    color:#fff !important;
    font-size:12px !important;
    line-height:1.45;
    white-space:normal !important;
    overflow-wrap:break-word;
  }
  .s25-site-header .s25-contact-strip .s25-top-hours,
  .s25-site-header .s25-contact-strip .s25-top-address {
    display:flex !important;
    max-width:none !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  .s25-site-header .s25-contact-strip .dashicons {
    display:inline-block;
    flex:0 0 17px;
    width:17px;
    height:17px;
    font-size:17px;
    line-height:1;
    margin-top:1px;
  }
  .s25-site-header .s25-topbar-tools {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
    width:100% !important;
    min-width:0;
    margin:0 !important;
  }
  .s25-site-header .s25-topbar-tools .s25-socials {
    flex:0 0 auto;
  }
  .s25-site-header .s25-topbar-tools .s25-top-search {
    flex:1 1 0%;
    min-width:0;
    max-width:none !important;
    width:auto !important;
    margin:0;
  }
  .s25-site-header .s25-topbar-tools .s25-top-search input {
    min-width:0;
    width:100%;
  }
  .s25-site-header .s25-topbar-tools .s25-top-search button {
    flex:0 0 36px;
    width:36px !important;
  }
}


/* ======================================================================
 * v3.0.84 — Corrección visual de los menús desplegables en escritorio.
 * La cabecera del desplegable ocupa todo su elemento de navegación.
 * Se pinta la superficie COMPLETA en estado actual, hover o foco, para
 * eliminar la franja guinda junto a «¿Quiénes somos?» y «Documentos».
 * No cambia el marcado, el orden, las URLs ni el comportamiento móvil.
 * ====================================================================== */
@media (min-width:851px) {
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown > .s25-nav-dropdown-head {
    box-sizing:border-box !important;
    width:100% !important;
    background:#560216 !important;
  }
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown.is-current > .s25-nav-dropdown-head,
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown.is-expanded > .s25-nav-dropdown-head,
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown:hover > .s25-nav-dropdown-head,
  .s25-site-header > .s25-main-nav > .s25-nav-dropdown:focus-within > .s25-nav-dropdown-head {
    background:#F2E63D !important;
  }
}
