/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

:root {
  /* --primary-colors --*/
  --white-ish:#F9F7F7;
  --light-gray: #DBE2EF;
  --bluish-gray: #e4e9f1;
  --blue-light:#669bbc;
  --blue-medium: #0077b6;
  --blue-medium-rgb: rgb(0, 119, 182);
  --blue-dark:#0f4c75;
  --dark-b: #003566;
  --gray-black: #415a77;
  --darker-b:#1B262C;

  /* https://colorhunt.co/palette/f9f7f7dbe2ef3f72af112d4e */
}

html {
  scroll-behavior: smooth;
}

html, body {
    height:100%;
    scroll-anchor: none !important;
}

/* Use the root variable for primary color in your CSS */
body {
  background-color: var(--light-gray);
  /* font-family: "Open Sans", sans-serif; */
  font-family: 'Ubuntu Sans', sans-serif;
  color: var(--gray-black);
  /* padding-bottom: 600px; */
}

/* .ref-author-lemos {
    font-weight: 700; 
    color:var(--darker-b);
}

.ref-journal{
    font-weight: 700 !important; 
    font-style: italic !important;
    color:var(--blue-medium) !important;
} */


nav {
	background-color:var(--blue-dark);
    /* height: 5rem; */
}

.navbar-brand{
	color:var(--light-gray) !important;
	font-size:1.75rem !important;
    font-weight: 700;
}

.navbar-nav .nav-link{
	color: var(--light-gray) !important;
	border-bottom: 2px solid transparent;
	transition: all 0.2s ease;
}

.navbar-nav .nav-item.active .nav-link,
.navbar-nav .nav-link.active {
	color: #ffffff !important;
	font-weight: 700 !important;
	border-bottom: 2px solid var(--blue-light) !important;
}

.navbar-expand-lg{
    font-size:1.2rem !important;
}


/* buttons */




#header_middle_letter{
    color: var(--blue-light);
}

a {
  color:var(--blue-light);
}

a:hover {
  color: var(--blue-medium) !important;
  /* text-decoration: none !important; */
  /* font-size:1.3rem !important; */
}

h1, h2, h3, h4, h5, h6 {
  /* font-family: "Raleway", sans-serif;
   */
   font-family: 'Ubuntu Sans', sans-serif;
}


/* footer */

.footer-lemos {
  background-color: #0f4c75;
  font-size: smaller;
}

.footer-lemos-nifme {
    background-color: #1B262C;
    font-size: smaller;
  }

.footer-icons{
    color: var(--blue-light);   
}

.footer-icons:hover{
    color: var(--blue-medium);   
}


#page-container {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.scroll-section {
  scroll-margin-top: 80px; /* Offset for sticky subnav at top: 0 */
}
  
#content-wrap {
    padding-bottom: 2.5rem;
}

#footer {
    margin-top: auto;
    width: 100%;
    position: relative;
}

/* Card override for design consistency with Publications page */
.card {
  background-color: var(--bluish-gray) !important;
  border-radius: 5px !important;
  border: 1px solid var(--blue-light) !important;
}

/* Sidebar social icons list style reset */
.social-icons {
  list-style-type: none !important;
}

/* --- Global Premium Button Styles --- */
.btn-blue {
  font-family: 'Ubuntu Sans', sans-serif !important;
  color: var(--white-ish) !important;
  background-color: var(--blue-light) !important;
  border: 2px solid var(--blue-medium) !important;
  border-radius: 4px !important;
  padding: 0.2rem 0.65rem !important; /* Premium compact padding */
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

/* Prevent nested link tag background color leak */
.btn-blue a,
.btn-blue a:hover,
.btn-blue a:focus,
.btn-blue a:active {
  color: var(--white-ish) !important;
  background-color: transparent !important;
  border: none !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 100% !important;
}

/* Icon style inside button */
.btn-blue i {
  color: var(--white-ish) !important;
  font-size: 0.85rem !important;
  margin-left: 0.35rem !important;
  transition: transform 0.2s ease !important;
}

/* Hover effects */
.btn-blue:hover {
  background-color: var(--blue-medium) !important;
  border-color: var(--blue-medium) !important;
  color: var(--white-ish) !important;
  transform: translateY(-1.5px) !important;
  box-shadow: 0 4px 8px rgba(0, 119, 182, 0.22) !important;
  text-decoration: none !important;
}

.btn-blue:hover i {
  transform: scale(1.15) !important;
}

/* Ensure no conflicts with bootstrap or standard buttons */
button.btn-blue {
  line-height: inherit !important;
}

/* Custom Elements layout stability */
header-component {
  display: block;
  min-height: 56px;
  background-color: var(--blue-dark);
}