/* =============================== */
/* GLOBAL STYLES */
/* =============================== */
body {
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
background: linear-gradient(to bottom, #FFFFFF, #FFFFD7);
min-height: 100vh;
}

a, a:visited {
color: #ffffff;
text-decoration: none;
}

a:hover, a:focus {
color: #ffffff;
text-decoration: none;
}

.container {
max-width: 1024px; /* smaller than 1200px */
width: 100%;
margin: 0 auto;
}

/* =============================== */
/* NAVBAR */
/* =============================== */
.navbar-custom {
background-color: #4682B4;
position: sticky;
top: 0;
width: 100%; /* full-width background */
z-index: 1030;
padding: 0.5rem 1rem;
}

/* constrain inner content */
.navbar-custom .container-fluid {
max-width: 1024px; /* aligns with cards/footer */
margin: 0 auto;
padding-left: 0; /* flush left */
padding-right: 0;
box-sizing: border-box;
}

.navbar-brand {
font-weight: bold;
color: #fff;
}

.navbar-nav .nav-link {
color: #FFFFF0 !important;
font-weight: 500;
padding: 0.5rem 0.75rem;
}

.navbar-nav .nav-link:hover {
color: #FFFFF0 !important;
}

.navbar .dropdown-menu {
background-color: #663600;
}

.navbar .dropdown-menu .dropdown-item {
color: #fff;
}

.navbar .dropdown-menu .dropdown-item:hover {
background-color: #555;
}

.navbar .dropdown:hover .dropdown-menu {
display: block;
}

/* breadcrumb fix */
.navbar .breadcrumb {
background: transparent;
margin-bottom: 0;
padding: 0.5rem 0;
}

.navbar .breadcrumb-item a {
color: #fff !important;
text-decoration: none !important;
transition: color 0.2s ease;
}

.navbar .breadcrumb-item a:hover {
color: #ffcc00 !important;
}

.navbar .breadcrumb-item.active {
color: #ffcc00 !important;
}

.navbar .breadcrumb-item + .breadcrumb-item::before {
color: #fff !important;
padding: 0 0.25rem;
font-weight: normal;
}

/* =============================== */
/* HERO SECTION */
/* =============================== */
.hero-two-column .hero-image {
display: flex;
justify-content: center;
align-items: center;
padding: 0; /* remove extra padding */
}

.hero-two-column .hero-img {
width: 100%; /* make it fill the column */
max-width: 550px; /* keeps it from getting too huge */
height: auto;
}

.hero-two-column .hero-text {
box-sizing: border-box;
color: #333;
font-size: 0.95rem; /* slightly smaller, adjust as needed */
line-height: 1.5; /* keeps it readable */
}

@media (max-width: 768px) {
.hero-two-column .hero-image,
.hero-two-column .hero-text {
width: 100%;
flex: none;
background-color: #ffffff;
padding: 1.5rem;
}
}

/* =============================== */
/* CARDS */
/* =============================== */
.card {
display: flex;
flex-direction: column;
height: 100%;
background-color: #FFFFFf !important;
transform: none;
transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
transform: none;
box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.card-body {
display: flex;
justify-content: center;
align-items: center;
flex-grow: 1;
padding: 0.5rem;
text-align: center;
height: 60px;
}

.card a, .card-body a {
color: #004466 !important;
text-decoration: none;
display: inline-block;
}

.card a:hover, .card-body a:hover,
.card a:focus, .card-body a:focus {
color: #DAA520 !important;
text-decoration: none;
}

.card-img-top {
width: 100%;
height: auto;
object-fit: cover;
display: block;
}

/* POLAROID CARDS */
.card.polaroid {
background-color: #fff;
border: 1px solid #ccc;
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
padding: 10px;
border-radius: 4px;
text-align: center;
transition: all 0.2s ease-in-out;
}

.card.polaroid img {
display: block;
width: 100%;
border-radius: 2px;
margin-bottom: 10px;
}

.card.polaroid .card-body {
padding: 0;
font-size: 0.9rem;
color: #333;
}

/* =============================== */
/* ALERT */
/* =============================== */
.alert-custom {
background-color: #8FBC8F;
color: #FFFFD7;
text-align: center;
}


/* =============================== */
/* FOOTER BASE STYLES */
/* =============================== */
footer {
background-color: #4682b4;
color: #ffffff !important;
font-family: Arial, sans-serif;
}

footer a {
color: #ffffff !important;
text-decoration: none;
font-weight: bold;
transition: color 0.3s ease;
}

footer a:hover {
color: #FFFFD7;
}

footer h5, footer h6 {
color: #FFFFD7;
font-weight: bold;
margin-bottom: 0.2rem;
}

footer hr {
width: 200px;
background-color: #FFFFD7;
height: 3px;
border: none;
margin: 0.25rem 0 0.5rem 0;
}

footer .mb-1 {
margin-bottom: 0.25rem;
}

footer .top-section {
background-color: rgba(0, 0, 0, 0.2);
height: 40px;
text-align: center;
margin-top: 2rem;
margin-bottom: 0.5rem;
color: #FFFFD7;
}

footer .container-fluid {
padding: 0.5rem 1rem;
max-width: 1024px;
margin: 0 auto;
box-sizing: border-box;
}

footer .row {
display: flex;
flex-wrap: wrap;
gap: 1.5rem;
margin-left: 0;
margin-right: 0;
justify-content: center;
}

footer .col {
flex: 1 1 0;
min-width: 180px;
padding-left: 0;
padding-right: 0;
margin-right: 0;
}

footer .col:first-child {
position: relative;
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
}

footer .col:first-child .mb-1 {
width: 100%;
position: relative;
padding-right: 0;
box-sizing: border-box;
}

footer .col:first-child .mb-1 a {
display: inline-block;
max-width: 100%;
}

footer .col:first-child .mb-1 .pattern-count {
position: absolute;
right: 0;
top: 0;
bottom: 0;
display: flex;
align-items: center;
font-weight: normal;
white-space: nowrap;
padding-left: 5px;
}

footer .col:nth-child(2),
footer .col:nth-child(3) {
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
}

footer .col:last-child {
margin-right: 0;
}

@media (min-width: 992px) {
footer .col:not(:last-child) {
border-right: none;
padding-right: 0;
margin-right: 0;
}
}

footer .copyright {
background-color: rgba(0,0,0,0.2);
text-align: center;
padding: 1rem 0;
margin-top: 0;
}

#footer-thumbnails {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 3px;
width: auto;
max-width: 100%;
}

#footer-thumbnails a {
flex: 0 0 70px;
height: 70px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}

#footer-thumbnails img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 8px;
display: block;
}

@media (max-width: 768px) {
footer .row {
flex-direction: column;
gap: 1rem;
}
footer .col {
min-width: 100%;
padding-right: 0;
}
#footer-thumbnails a, #footer-thumbnails img {
width: 60px !important;
height: 60px !important;
}
}

/* FORCE FOOTER HEADINGS GOLD */
footer h5,
footer h6,
footer .col h5,
footer .col h6 {
color: #FFFFD7 !important;
font-weight: bold !important;
}

.text-image-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 20px;
}

/* Image container on the right */
.text-image-wrapper .image-wrapper {
  order: 2;          /* image appears second */
  flex: 0 0 auto;    /* keeps image at its natural size */
  position: relative; /* for PDF overlay */
}

.text-image-wrapper .main-img {
  max-width: 450px;
  width: 100%;
  height: auto;
}

/* Text column on the left */
.text-content {
  order: 1;
  flex: 1 1 0;
}

/* PDF text overlay on image */
/* PDF link overlay */
/* PDF link overlay */
.image-wrapper .pdf-text {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: rgba(255, 255, 215, 0.8); /* soft creamy yellow, 80% opacity */
  color: #000;
  padding: 5px 10px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 4px;
  box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
}

.image-wrapper .pdf-text:hover {
  background-color: rgba(255, 255, 215, 1); /* fully opaque on hover */
  color: #000;
}



/* Responsive for mobile */
@media (max-width: 767px) {
  .text-image-wrapper {
    flex-direction: column;
    align-items: center;
  }
  .text-image-wrapper .image-wrapper {
    order: 1;
  }
  .text-content {
    order: 2;
  }
  .image-wrapper .pdf-text {
    top: 5px;
    right: 5px;
    padding: 3px 6px;
    font-size: 0.8rem;
  }
}

.sidebar a {
  padding-left: 30px;  /* adjust this number for more or less indent */
  text-decoration: none; /* optional: remove underline if you want */
  color: inherit;        /* optional: inherit color from parent */
}

