/*
Theme Name: Portal de Adquisiciones SAG
Theme URI: https://adquisiciones.sag.gob.hn/
Description: Theme institucional para el Portal de Adquisiciones de la Secretaría de Agricultura y Ganadería de Honduras. Diseñado para trabajar con el plugin Portal de Adquisiciones SAG.
Version: 1.1.2
Author: QUANTICO / Javier Romero
License: GPL-2.0-or-later
Text Domain: portal-adquisiciones-sag
*/

:root{
 --sag-blue:#005baa;
 --sag-blue-dark:#003f78;
 --sag-blue-soft:#eaf3fb;
 --sag-gold:#d5a21a;
 --sag-gold-dark:#b98908;
 --sag-green:#4d8f3a;
 --sag-red:#c9252d;
 --sag-text:#243746;
 --sag-muted:#6b7780;
 --sag-border:#e5e9ed;
 --sag-bg:#f5f7f9;
 --sag-white:#fff;
 --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--sag-text);font-family:Georgia,"Times New Roman",serif;line-height:1.6}
a{color:var(--sag-blue);text-decoration:none}
a:hover{color:var(--sag-blue-dark)}
img{max-width:100%;height:auto}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}

/* top utility bar */
.sag-topbar{background:var(--sag-blue-dark);color:#fff;font-size:13px}
.sag-topbar .container{min-height:44px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}
.sag-top-widget{padding:6px 14px;min-height:54px;display:flex;align-items:center;justify-content:center;text-align:center;border-right:1px solid rgba(255,255,255,.14)}
.sag-top-widget:first-child{justify-content:center}
.sag-top-widget:last-child{border-right:0;justify-content:center}
.sag-top-widget .widget{width:100%;margin:0}
.sag-top-widget .widget-title{margin:0 0 3px;color:#fff;font-size:12px;font-weight:700}
.sag-top-widget input,.sag-top-widget select,.sag-top-widget button{max-width:100%}
.sag-top-widget a{color:#fff}
.sag-top-widget strong{font-weight:700}

/* masthead */
.sag-masthead{background:#fff;padding:22px 0 18px;border-bottom:1px solid #edf0f2}
.sag-masthead-inner{display:flex;align-items:center;justify-content:center;min-height:118px}
.sag-logo-link{display:flex;align-items:center;justify-content:center}
.sag-logo-link .custom-logo{max-width:min(520px,80vw);max-height:105px;width:auto;height:auto;object-fit:contain}
.sag-site-title{font-size:28px;font-weight:800;color:var(--sag-blue-dark)}

/* nav */
.sag-nav{background:#fff;border-bottom:4px solid var(--sag-blue)}
.sag-menu{display:flex;justify-content:center;align-items:stretch;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.sag-menu>li{margin:0}
.sag-menu>li>a{display:block;padding:14px 22px;color:var(--sag-text);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.15px;border-top:3px solid transparent;transition:.18s ease}
.sag-menu>li>a:hover,.sag-menu>li.current-menu-item>a,.sag-menu>li.current_page_item>a{background:var(--sag-blue);color:#fff;border-top-color:var(--sag-blue)}
.sag-menu-notice{padding:14px;text-align:center;color:#6b7780;font-size:12px}
.sag-mobile-toggle{display:none}

/* hero/search */
.sag-hero{position:relative;background:linear-gradient(135deg,var(--sag-blue-dark),var(--sag-blue));padding:48px 0 54px;color:#fff}
.sag-hero h1{margin:0 0 8px;font-size:34px;line-height:1.15;font-weight:800}
.sag-hero p{margin:0 0 28px;opacity:.92;font-size:16px}
.sag-search-box{background:#fff;padding:18px;border-radius:4px;box-shadow:0 12px 34px rgba(0,35,70,.22)}
.sag-search-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px}
.sag-field label{display:block;color:var(--sag-text);font-size:11px;font-weight:800;text-transform:uppercase;margin:0 0 5px}
.sag-field input,.sag-field select{width:100%;height:48px;border:1px solid #d8dee3;border-radius:2px;background:#fff;color:#263640;padding:0 13px;font:inherit;font-size:14px}
.sag-search-btn{height:48px;border:0;border-radius:2px;padding:0 25px;background:var(--sag-gold);color:#fff;font-weight:800;text-transform:uppercase;cursor:pointer}
.sag-search-btn:hover{background:var(--sag-gold-dark)}

/* content */
.sag-section{padding:44px 0}
.sag-section.alt{background:var(--sag-bg)}
.sag-section-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.sag-section-title{margin:0;color:var(--sag-blue-dark);font-size:25px;line-height:1.2;font-weight:800}
.sag-section-title:after{content:"";display:block;width:55px;height:4px;background:var(--sag-gold);margin-top:9px}
.sag-section-link{font-size:13px;font-weight:800;text-transform:uppercase;color:var(--sag-blue)}

/* cards */
.sag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sag-card{background:#fff;border:1px solid var(--sag-border);border-radius:3px;overflow:hidden;box-shadow:0 5px 18px rgba(20,46,65,.06);transition:transform .18s,box-shadow .18s}
.sag-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(20,46,65,.12)}
.sag-card-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#e8f0f6,#cbd9e5);display:flex;align-items:center;justify-content:center;overflow:hidden}
.sag-card-thumb img{width:100%;height:100%;object-fit:cover}
.sag-default-thumb{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--sag-blue-dark);font-weight:900;text-align:center;padding:20px}
.sag-default-thumb .mark{font-size:36px;line-height:1;margin-bottom:8px}
.sag-card-body{padding:19px}
.sag-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.sag-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:2px;background:var(--sag-blue-soft);color:var(--sag-blue-dark);font-size:10px;font-weight:800;text-transform:uppercase}
.sag-status{display:inline-flex;padding:4px 8px;border-radius:2px;font-size:10px;font-weight:900;text-transform:uppercase}
.sag-status.available{background:#eaf7ee;color:#19713d}
.sag-status.expired{background:#fdebed;color:#bd2028}
.sag-card h3{font-size:19px;line-height:1.3;margin:0 0 10px;color:#1e3546}
.sag-card h3 a{color:inherit}
.sag-card-info{font-size:12px;color:var(--sag-muted);margin:5px 0}
.sag-card-info strong{color:#4c5b64}
.sag-card-footer{padding-top:14px;margin-top:14px;border-top:1px solid #edf0f2;display:flex;justify-content:space-between;align-items:center;gap:10px}
.sag-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;background:var(--sag-blue);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;border-radius:2px}
.sag-btn:hover{background:var(--sag-blue-dark);color:#fff}
.sag-btn.disabled{background:#9da7ad;pointer-events:none}

/* archive/search */
.sag-results-head{background:var(--sag-bg);border-bottom:1px solid var(--sag-border);padding:26px 0}
.sag-results-head h1{margin:0;color:var(--sag-blue-dark);font-size:28px}
.sag-empty{padding:50px;text-align:center;background:#fff;border:1px solid var(--sag-border)}

/* single */
.sag-single-wrap{padding:42px 0}
.sag-single{max-width:920px;margin:0 auto}
.sag-breadcrumb{font-size:12px;color:var(--sag-muted);margin-bottom:15px}
.sag-single h1{font-size:38px;line-height:1.18;color:var(--sag-blue-dark);margin:0 0 14px}
.sag-single-summary{font-size:17px;color:#56636b;margin:0 0 20px}
.sag-single-status{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.sag-info-table{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--sag-border);border:1px solid var(--sag-border);margin:24px 0 30px}
.sag-info-item{background:#fff;padding:14px 16px}
.sag-info-item small{display:block;text-transform:uppercase;font-size:10px;font-weight:800;color:var(--sag-muted);margin-bottom:3px}
.sag-info-item strong{font-size:14px;color:#263c4a}
.sag-single-content{font-size:16px}
.sag-single-content h2,.sag-single-content h3{color:var(--sag-blue-dark)}
.sag-docs{background:var(--sag-bg);padding:20px;margin:30px 0}
.sag-docs h3{margin:0 0 12px;color:var(--sag-blue-dark)}
.sag-apply{background:var(--sag-blue-dark);color:#fff;padding:25px;margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.sag-apply h3{margin:0;color:#fff;font-size:19px}
.sag-apply .sag-btn{background:var(--sag-gold)}
.sag-apply .sag-btn:hover{background:var(--sag-gold-dark)}

/* footer */
.sag-footer-main{background:var(--sag-gold);color:#fff;padding:34px 0}
.sag-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}
.sag-footer-main h3,.sag-footer-main .widget-title{margin:0 0 10px;font-size:15px;text-transform:uppercase;color:#fff}
.sag-footer-main .widget{margin:0 0 18px}
.sag-footer-main .widget ul{list-style:none;margin:0;padding:0}
.sag-footer-main .widget li{margin:0 0 7px}
.sag-footer-main p,.sag-footer-main li{font-size:13px;margin:0 0 7px}
.sag-footer-main a{color:#fff}
.sag-footer-main ul{list-style:none;padding:0;margin:0}
.sag-footer-bottom{background:#3c4145;color:#fff;font-size:12px;padding:14px 0}
.sag-footer-bottom .container{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.sag-footer-bottom a{color:#fff;font-size:10px}

/* login */
.sag-login-page{min-height:100vh;background:linear-gradient(135deg,var(--sag-blue-dark),var(--sag-blue));display:flex;align-items:center;justify-content:center;padding:30px}
.sag-login-card{width:min(440px,100%);background:#fff;padding:38px;box-shadow:0 18px 60px rgba(0,0,0,.22);border-radius:4px}
.sag-login-brand{text-align:center;margin-bottom:25px}
.sag-login-brand img{max-width:270px;max-height:95px;object-fit:contain}
.sag-login-card h1{text-align:center;color:var(--sag-blue-dark);font-size:23px;margin:0 0 22px}
.sag-login-card .login-username,.sag-login-card .login-password{margin-bottom:15px}
.sag-login-card label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:6px;color:#43515a}
.sag-login-card input[type=text],.sag-login-card input[type=password]{width:100%;height:48px;border:1px solid #d5dce1;padding:0 12px;border-radius:2px}
.sag-login-submit{width:100%;height:48px;border:0;background:var(--sag-blue);color:#fff;font-weight:800;text-transform:uppercase;cursor:pointer}
.sag-login-submit:hover{background:var(--sag-blue-dark)}
.sag-login-links{text-align:center;margin-top:18px;font-size:12px}
.sag-login-error{background:#fdebed;color:#a61c24;border-left:4px solid var(--sag-red);padding:10px;margin-bottom:15px;font-size:13px}

/* responsive */
@media (max-width:900px){
 .sag-grid{grid-template-columns:repeat(2,1fr)}
 .sag-search-grid{grid-template-columns:1fr 1fr}
 .sag-search-btn{width:100%}
 .sag-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
 .container{width:min(var(--container),calc(100% - 26px))}
 .sag-topbar .container{grid-template-columns:1fr 1fr}
 .sag-top-widget,.sag-top-widget:first-child,.sag-top-widget:last-child{justify-content:center}
 .sag-masthead-inner{gap:15px;min-height:90px}
 .sag-logo-link .custom-logo{max-width:82vw;max-height:78px}
 .sag-menu{display:none}
 .sag-mobile-toggle{display:block;width:100%;border:0;background:#fff;padding:13px;color:var(--sag-blue);font-weight:800}
 .sag-hero{padding:34px 0 40px}
 .sag-hero h1{font-size:27px}
 .sag-search-grid{grid-template-columns:1fr}
 .sag-grid{grid-template-columns:1fr}
 .sag-section{padding:34px 0}
 .sag-info-table{grid-template-columns:1fr 1fr}
 .sag-single h1{font-size:29px}
 .sag-apply{align-items:flex-start;flex-direction:column}
 .sag-footer-grid{grid-template-columns:1fr}
}
@media (max-width:430px){
 .sag-topbar .container{grid-template-columns:1fr}
 .sag-top-widget{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
 .sag-info-table{grid-template-columns:1fr}
}


/* v1.1.2 — correcciones de desbordamiento y comportamiento responsive */
html, body {
  width: 100%;
  max-width: 100%;
}
body {
  overflow-x: clip;
}
.container,
.sag-topbar .container,
.sag-masthead-inner,
.sag-nav .container,
.sag-hero .container,
.sag-section .container,
.sag-footer-grid,
.sag-footer-bottom .container {
  min-width: 0;
  max-width: 100%;
}
.sag-topbar .container > *,
.sag-footer-grid > *,
.sag-search-grid > *,
.sag-grid > *,
.sag-info-table > *,
.sag-top-widget,
.sag-footer-widget-area {
  min-width: 0;
  max-width: 100%;
}
.sag-top-widget *,
.sag-footer-widget-area *,
.sag-card,
.sag-card-body,
.sag-single,
.sag-single-content {
  overflow-wrap: anywhere;
}
.sag-top-widget img,
.sag-footer-widget-area img,
.sag-top-widget iframe,
.sag-footer-widget-area iframe,
.sag-top-widget video,
.sag-footer-widget-area video {
  max-width: 100%;
}
.sag-top-widget input,
.sag-top-widget select,
.sag-top-widget textarea,
.sag-footer-widget-area input,
.sag-footer-widget-area select,
.sag-footer-widget-area textarea {
  max-width: 100%;
}
.sag-menu {
  min-width: 0;
}
.sag-menu > li,
.sag-menu > li > a {
  min-width: 0;
}
.sag-search-box,
.sag-search-grid,
.sag-field {
  min-width: 0;
}
.sag-search-grid > * {
  min-width: 0;
}
.sag-card-footer {
  flex-wrap: wrap;
}
.sag-single-content img,
.sag-single-content iframe,
.sag-single-content video,
.sag-single-content table,
.entry-content img,
.entry-content iframe,
.entry-content video,
.entry-content table {
  max-width: 100%;
}
.sag-single-content table,
.entry-content table {
  display: block;
  overflow-x: auto;
}

@media (max-width: 1100px) {
  .sag-topbar .container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sag-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sag-menu > li > a {
    padding-inline: 14px;
  }
}
@media (max-width: 700px) {
  .container {
    width: calc(100% - 26px);
  }
  .sag-topbar .container {
    grid-template-columns: minmax(0, 1fr);
  }
  .sag-top-widget {
    border-right: 0;
  }
  .sag-search-grid,
  .sag-grid,
  .sag-footer-grid,
  .sag-info-table {
    grid-template-columns: minmax(0, 1fr);
  }
  .sag-section-header {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .sag-menu {
    flex-direction: column;
    align-items: stretch;
  }
  .sag-menu > li > a {
    width: 100%;
  }
  .sag-empty {
    padding: 28px 16px;
  }
  .sag-login-page {
    padding: 16px;
  }
  .sag-login-card {
    padding: 26px 20px;
  }
}
