/* Root variables from the provided CSS (Bootstrap with custom overrides) */
:root, [data-bs-theme=light] {
  --bs-blue:#0d6efd;
  --bs-indigo:#6610f2;
  --bs-purple:#6f42c1;
  --bs-pink:#d63384;
  --bs-red:#dc3545;
  --bs-orange:#fd7e14;
  --bs-yellow:#ffc107;
  --bs-green:#198754;
  --bs-teal:#20c997;
  --bs-cyan:#0dcaf0;
  --bs-black:#000;
  --bs-white:#fff;
  --bs-gray:#6c757d;
  --bs-gray-dark:#343a40;
  --bs-gray-100:#f8f9fa;
  --bs-gray-200:#e9ecef;
  --bs-gray-300:#dee2e6;
  --bs-gray-400:#ced4da;
  --bs-gray-500:#adb5bd;
  --bs-gray-600:#6c757d;
  --bs-gray-700:#495057;
  --bs-gray-800:#343a40;
  --bs-gray-900:#212529;
  --bs-primary:#0d6efd;
  --bs-secondary:#6c757d;
  --bs-success:#198754;
  --bs-info:#0dcaf0;
  --bs-warning:#ffc107;
  --bs-danger:#dc3545;
  --bs-light:#f8f9fa;
  --bs-dark:#212529;
  --bs-primary-rgb:34,39,81;
  --bs-secondary-rgb:108,117,125;
  --bs-success-rgb:25,135,84;
  --bs-info-rgb:13,202,240;
  --bs-warning-rgb:255,193,7;
  --bs-danger-rgb:220,53,69;
  --bs-light-rgb:248,249,250;
  --bs-dark-rgb:33,37,41;
  --bs-primary-text-emphasis:#052c65;
  --bs-secondary-text-emphasis:#2b2f32;
  --bs-success-text-emphasis:#0a3622;
  --bs-info-text-emphasis:#055160;
  --bs-warning-text-emphasis:#664d03;
  --bs-danger-text-emphasis:#58151c;
  --bs-light-text-emphasis:#495057;
  --bs-dark-text-emphasis:#495057;
  --bs-primary-bg-subtle:#cfe2ff;
  --bs-secondary-bg-subtle:#e2e3e5;
  --bs-success-bg-subtle:#d1e7dd;
  --bs-info-bg-subtle:#cff4fc;
  --bs-warning-bg-subtle:#fff3cd;
  --bs-danger-bg-subtle:#f8d7da;
  --bs-light-bg-subtle:#fcfcfd;
  --bs-dark-bg-subtle:#ced4da;
  --bs-primary-border-subtle:#9ec5fe;
  --bs-secondary-border-subtle:#c4c8cb;
  --bs-success-border-subtle:#a3cfbb;
  --bs-info-border-subtle:#9eeaf9;
  --bs-warning-border-subtle:#ffe69c;
  --bs-danger-border-subtle:#f1aeb5;
  --bs-light-border-subtle:#e9ecef;
  --bs-dark-border-subtle:#adb5bd;
  --bs-white-rgb:255,255,255;
  --bs-black-rgb:0,0,0;
  --bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  --bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  --bs-gradient:linear-gradient(180deg,rgba(255,255,255,0.15),rgba(255,255,255,0));
  --bs-body-font-family:var(--bs-font-sans-serif);
  --bs-body-font-size:1rem;
  --bs-body-font-weight:400;
  --bs-body-line-height:1.5;
  --bs-body-color:#646464;
  --bs-body-color-rgb:33,37,41;
  --bs-body-bg:#fff;
  --bs-body-bg-rgb:255,255,255;
  --bs-emphasis-color:#000;
  --bs-emphasis-color-rgb:0,0,0;
  --bs-secondary-color:rgba(33,37,41,0.75);
  --bs-secondary-color-rgb:33,37,41;
  --bs-secondary-bg:#e9ecef;
  --bs-secondary-bg-rgb:233,236,239;
  --bs-tertiary-color:rgba(33,37,41,0.5);
  --bs-tertiary-color-rgb:33,37,41;
  --bs-tertiary-bg:#f8f9fa;
  --bs-tertiary-bg-rgb:248,249,250;
  --bs-heading-color:inherit;
  --bs-link-color:#48c0aa;
  --bs-link-color-rgb:72,192,170;
  --bs-link-decoration:none;
  --bs-link-hover-color:#0a58ca;
  --bs-link-hover-color-rgb:57,164,144;
  --bs-code-color:#d63384;
  --bs-highlight-color:#212529;
  --bs-highlight-bg:#fff3cd;
  --bs-border-width:1px;
  --bs-border-style:solid;
  --bs-border-color:#dee2e6;
  --bs-border-color-translucent: rgba(0,0,0,0.175);
  --bs-border-radius:0.375rem;
  --bs-border-radius-sm:0.25rem;
  --bs-border-radius-lg:0.5rem;
  --bs-border-radius-xl:1rem;
  --bs-border-radius-xxl:2rem;
  --bs-border-radius-2xl:var(--bs-border-radius-xxl);
  --bs-border-radius-pill:50rem;
  --bs-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);
  --bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0,0,0,0.075);
  --bs-box-shadow-lg:0 1rem 3rem rgba(0,0,0,0.175);
  --bs-box-shadow-inset:inset 0 1px 2px rgba(0,0,0,0.075);
  --bs-focus-ring-width:0.25rem;
  --bs-focus-ring-opacity:0.25;
  --bs-focus-ring-color:rgba(13,110,253,0.25);
  --bs-form-valid-color:#198754;
  --bs-form-valid-border-color:#198754;
  --bs-form-invalid-color:#dc3545;
  --bs-form-invalid-border-color:#dc3545;
}

/* Dark theme variables from provided CSS */
[data-bs-theme=dark] {
  color-scheme:dark;
  --bs-body-color:#dee2e6;
  --bs-body-color-rgb:222,226,230;
  --bs-body-bg:#212529;
  --bs-body-bg-rgb:33,37,41;
  --bs-emphasis-color:#fff;
  --bs-emphasis-color-rgb:255,255,255;
  --bs-secondary-color:rgba(222,226,230,0.75);
  --bs-secondary-color-rgb:222,226,230;
  --bs-secondary-bg:#343a40;
  --bs-secondary-bg-rgb:52,58,64;
  --bs-tertiary-color:rgba(222,226,230,0.5);
  --bs-tertiary-color-rgb:222,226,230;
  --bs-tertiary-bg:#2b3035;
  --bs-tertiary-bg-rgb:43,48,53;
  --bs-primary-text-emphasis:#6ea8fe;
  --bs-secondary-text-emphasis:#a7acb1;
  --bs-success-text-emphasis:#75b798;
  --bs-info-text-emphasis:#6edff6;
  --bs-warning-text-emphasis:#ffda6a;
  --bs-danger-text-emphasis:#ea868f;
  --bs-light-text-emphasis:#f8f9fa;
  --bs-dark-text-emphasis:#dee2e6;
  --bs-primary-bg-subtle:#031633;
  --bs-secondary-bg-subtle:#161719;
  --bs-success-bg-subtle:#051b11;
  --bs-info-bg-subtle:#032830;
  --bs-warning-bg-subtle:#332701;
  --bs-danger-bg-subtle:#2c0b0e;
  --bs-light-bg-subtle:#343a40;
  --bs-dark-bg-subtle:#1a1d20;
  --bs-primary-border-subtle:#084298;
  --bs-secondary-border-subtle:#41464b;
  --bs-success-border-subtle:#0f5132;
  --bs-info-border-subtle:#087990;
  --bs-warning-border-subtle:#997404;
  --bs-danger-border-subtle:#842029;
  --bs-light-border-subtle:#495057;
  --bs-dark-border-subtle:#343a40;
  --bs-heading-color:inherit;
  --bs-link-color:#6ea8fe;
  --bs-link-hover-color:#8bb9fe;
  --bs-link-color-rgb:110,168,254;
  --bs-link-hover-color-rgb:139,185,254;
  --bs-code-color:#e685b5;
  --bs-highlight-color:#dee2e6;
  --bs-highlight-bg:#664d03;
  --bs-border-color:#495057;
  --bs-border-color-translucent:rgba(255,255,255,0.15);
  --bs-form-valid-color:#75b798;
  --bs-form-valid-border-color:#75b798;
  --bs-form-invalid-color:#ea868f;
  --bs-form-invalid-border-color:#ea868f;
}

*, *::before, *::after {
  box-sizing: border-box;
}

/* fonts */
@import url('https://fonts.googleapis.com/css2?family=Bitter:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, 
h1 > a, h2 > a, h3 > a, h4 > a, h5 > a, h6 > a, .h1 > a, .h2 > a, .h3 > a, .h4 > a, .h5 > a, .h6 > a {
  font-family: "Bitter", serif !important;
  font-optical-sizing: auto;
  color: #1E2655;
}
.h1.homepage-issue-identifier {
    font-family: "Bitter", serif !important;
}
.pkp_page_index div.description {
    max-height: 130px;
    overflow: hidden;
}

/****** NAV *************/

.has_site_logo .pkp_head_wrapper {
  width: 100%;
}

.has_site_logo .pkp_navigation_primary_row {
  padding: 0 2rem;
}

.has_site_logo nav.pkp_site_nav_menu {
  background-color: rgba(30,38,85);
  border-bottom: solid 3px rgba(59,195,173,1);
  padding-top: 9px;
}

.has_site_logo #navigationPrimary li > a{
  border-bottom: solid 5px transparent;
  font-family: 'Bitter' !important;
  text-transform: uppercase;
  color: #FEFEFE;
  font-weight: bold;
  transition: 0.3s;
}

.has_site_logo .pkp_navigation_primary {
  max-width: none;
}

.has_site_logo ul#navigationPrimary {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

@media (max-width: 992px) {
  .has_site_logo .pkp_structure_head .pkp_head_wrapper {
    height: 80px;
    display: flex;
    align-items: center;
  }

  .has_site_logo .pkp_structure_head ul#navigationPrimary {
    justify-content: space-around;
    align-items: center;
  }

  .has_site_logo .pkp_structure_head .pkp_site_nav_toggle {
    right: 0!important;
    left: unset!important;
  }

  .has_site_logo .pkp_structure_head .pkp_navigation_primary_row,
  .has_site_logo .pkp_structure_head .pkp_site_nav_menu--isOpen {
    padding: 0;
  }

  .has_site_logo .pkp_structure_head #navigationPrimary li {
    border-bottom: 1px solid #cccccc22;
    padding: 1rem .5rem;
    text-align: center;
  }

  .has_site_logo .pkp_structure_head #navigationPrimary li a:hover {
    text-decoration: none;
    color: rgba(59,195,173,1);
  }

  .has_site_logo .pkp_structure_head #navigationPrimary li a img {
    width: 30%;
  }

  .has_site_logo .pkp_structure_head  #navigationUser {
    padding-left: 3rem;
  }

  .has_site_logo .pkp_structure_head #navigationUser li a {
    color: #fff;
    margin-bottom: 1rem;
  }
  
  .has_site_logo .pkp_structure_head #navigationUser li a:hover {
    text-decoration: none;
    color: rgba(59,195,173,1);
  }

  .has_site_logo .pkp_navigation_user.pkp_navigation_user {
    border-top: none!important;
  }
  .has_site_logo .pkp_structure_head #navigationPrimary li {
    border-bottom: none!important;
  }
  .has_site_logo .pkp_structure_head .pkp_navigation_primary_row {
    border-bottom: 1px solid #cccccc22;
  }
}

@media (min-width: 992px) {
  .has_site_logo .pkp_structure_head ul#navigationPrimary li:first-child {
    margin-left: auto;
  }

  .has_site_logo .pkp_structure_head .pkp_navigation_primary > li > a:hover {
    border-bottom: 5px solid rgb(59, 195, 173)!important;
    color: rgb(59, 195, 173)!important;
  }

  /*Si agregan mas enlaces al menu se romperá*/
  .has_site_logo .pkp_structure_head ul#navigationPrimary li > a {
    border-radius: 100%;
    padding: 10px;
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
    margin: 0px;  
    text-align: center;
  }
  .has_site_logo .pkp_structure_head ul#navigationPrimary li > a:hover {
    border-bottom: none!important;
    background: rgb(72, 192, 170);
  }
  .has_site_logo .pkp_structure_head ul#navigationPrimary li a img {
    vertical-align: middle;
    display: block;
    margin: auto;
    border-style: none;
  }
  ul#navigationPrimary li:first-child a img {
    height: 20px;
  }
}

/********** FOOTER **************/

/*Footer por defecto en portal*/
.pkp_brand_footer {
  display: none;
}

/*Contenedor ppal de todo el footer del portal*/
.has_site_logo .pkp_structure_footer_wrapper {
  background-color: rgb(34, 39, 81);
  color: var(--bs-light) !important;
  margin-top: auto !important;
  padding: 2.5rem 0;
  line-height: var(--bs-body-line-height);
  font-size: 16px;
}

.has_site_logo .pkp_structure_footer_wrapper a:hover {
  color: #f8f9fa;
}

.has_site_logo .pkp_structure_footer_wrapper h5 {
  font-family: 'Bitter';
  margin-top: 0;
  line-height: 1.2;
}


.has_site_logo .pkp_structure_footer_wrapper h5, .h5 {
  font-size: 1.25rem;
}

.has_site_logo .pkp_structure_footer_wrapper ul {
  padding-left: 2rem;
}

.has_site_logo .pkp_structure_footer_wrapper ul,
.has_site_logo .pkp_structure_footer_wrapper ol {
  margin-top: 0;
  margin-bottom: 1rem;
}

.has_site_logo .pkp_structure_footer_wrapper li {
  display: list-item;
}

.has_site_logo .pkp_structure_footer_wrapper a {
  color: rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));
  text-decoration: underline;
}

.has_site_logo .pkp_structure_footer_wrapper a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

.has_site_logo .pkp_structure_footer_wrapper a:not([href]):not([class]),
.has_site_logo .pkp_structure_footer_wrapper a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

.has_site_logo .pkp_structure_footer_wrapper .logo {
  width: 100%;
  max-width: 200px;
  margin: auto;
  display: block;
}

img, svg {
  vertical-align: middle;
  border-style: none;
}

.has_site_logo .pkp_structure_footer_wrapper .social-block a:nth-child(1) img {
  height: 20px;
}

.has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

.has_site_logo .pkp_structure_footer_wrapper .pkp_footer_content > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.has_site_logo .pkp_structure_footer_wrapper .pkp_footer_content {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}


.has_site_logo .pkp_structure_footer_wrapper .logo-column {
  padding-right: 50px;
}

@media (min-width: 768px) {
  .has_site_logo .pkp_structure_footer_wrapper .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
}

.has_site_logo .pkp_structure_footer_wrapper .btn-primary {
  --bs-btn-color:#48c0aa;
  --bs-btn-bg:#00000000;
  --bs-btn-border-color:#48c0aa;
  --bs-btn-hover-color:#ffffff;
  --bs-btn-hover-bg:#48c0aa;
  --bs-btn-hover-border-color:#48c0aa;
  --bs-btn-focus-shadow-rgb:49,132,253;
  --bs-btn-active-color:#fff;
  --bs-btn-active-bg:#0a58ca;
  --bs-btn-active-border-color:#0a53be;
  --bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);
  --bs-btn-disabled-color:#fff;
  --bs-btn-disabled-bg:#0d6efd;
  --bs-btn-disabled-border-color:#0d6efd;
  font-family: 'Open Sans';
}

.has_site_logo .pkp_structure_footer_wrapper .btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb),.5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;
}

.has_site_logo .pkp_structure_footer_wrapper .btn {
  padding: 10px;
  border-radius: 0;
  margin: auto !important;
  display: block;
  max-width: 150px;
  text-transform: uppercase;
  font-weight: 600;
  color: #fff;
}

.has_site_logo .pkp_structure_footer_wrapper .btn:hover {
  color: #fff;
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}

@media (prefers-reduced-motion: reduce) {
  .has_site_logo .pkp_structure_footer_wrapper .btn {
    transition: none;
  }
}

.has_site_logo .pkp_structure_footer_wrapper .btn:focus {
  outline: 0;
  box-shadow: 0 0 0 var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.has_site_logo .pkp_structure_footer_wrapper .btn:active {
  box-shadow: var(--bs-box-shadow-inset);
}

.has_site_logo .pkp_structure_footer_wrapper .item-list ul {
  margin: 0 0 0.75em 0;
  padding: 0;
}

.has_site_logo .pkp_structure_footer_wrapper .item-list li {
  margin: 0 0 0.25em 1.5em;
  padding: 0;
}

.has_site_logo .pkp_structure_footer_wrapper ul.inline,
.has_site_logo .pkp_structure_footer_wrapper ul.links.inline {
  display: inline;
  padding-left: 0;
}

.has_site_logo .pkp_structure_footer_wrapper ul.inline li {
  display: inline;
  padding: 0 0.5em;
  list-style-type: none;
}

.has_site_logo .pkp_structure_footer_wrapper ul.menu {
  margin-left: 1em;
  padding: 0;
  list-style: none outside;
  text-align: left;
}

.has_site_logo .pkp_structure_footer_wrapper .menu-item {
  margin: 0;
  padding-top: 0.2em;
}

.has_site_logo .pkp_structure_footer_wrapper .hidden {
  display: none;
}

.has_site_logo .pkp_structure_footer_wrapper .position-container {
  position: relative;
}

.has_site_logo .pkp_structure_footer_wrapper ul li::before {
  content: "→ ";
  color: #48c0aa;
  font-family: 'Open Sans';
}

.has_site_logo .pkp_structure_footer_wrapper .title {
  text-transform: uppercase;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  color: white;
}

.has_site_logo .pkp_structure_footer_wrapper .title img {
  margin-right: 5px;
}

.has_site_logo .pkp_structure_footer_wrapper .social-block {
  display: flex;
  gap: 5px;
  justify-content: center;
  margin: 40px 0 45px;
}

.has_site_logo .pkp_structure_footer_wrapper .social-block a {
  justify-content: center;
  align-self: center;
  padding: 10px;
  background: #48c0aa00;
  border-radius: 100%;
  min-width: 40px;
  max-width: 40px;
  min-height: 40px;
  max-height: 40px;
  display: flex;
  transition: 0.3s;
}


.has_site_logo .pkp_structure_footer_wrapper .social-block a:hover {
  background: #48c0aa;
}


.has_site_logo .pkp_structure_footer_wrapper ul {
  padding-left: 0;
}

.has_site_logo .pkp_structure_footer_wrapper ul li {
  list-style: none;
  margin-bottom: 16px;
}

.has_site_logo .pkp_structure_footer_wrapper ul li a {
  font-family: sans-serif;
  display: block;
  margin-top: -25px;
  margin-left: 25px;
  color: #f8f9fa;
  text-decoration: none;

}


@media (min-width: 576px) {
  .has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
    max-width: 720px;
  }
}

@media (max-width: 768px) {
  .has_site_logo .pkp_structure_footer_wrapper .footer-column {
    max-width: 300px;
    margin: auto;
    margin-top: 30px;
  }
}

@media (min-width: 992px) {
  .has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  .has_site_logo .pkp_structure_footer_wrapper .pkp_structure_footer {
    max-width: 1320px;
  }
}
