/* global.css */

/* Make footer stick to bottom */
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
}

/* Override Bootstrap container max-width on large screens */
@media (min-width: 1200px) {
  .container {
    max-width: 100% !important;
  }
}

/* Font Face */
@font-face {
  font-family: 'NRT';
  src: url('content/fonts/NRT-Bold.otf') format('opentype');
  font-weight: bold;
  font-style: normal;
}

/* General Image Constraint */
img {
  max-width: 100%;
  height: auto;
}

/* Gallery Container Styling */
.gallery {
  background-color: #fff;
  border-radius: 15px;
  padding: 20px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* Gallery Column (if used) */
.gallery-column {
  display: flex;
  flex-direction: column;
}

/* Gallery Item Styling */
.gallery-item {
  background-color: #f8f8f8;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  margin-bottom: 15px;
}

/* Gallery Images */
.gallery-item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* Carousel (Slider) Rounded Style */
.carousel.rounded {
  border-radius: 15px;
  overflow: hidden;
}

/* Carousel Images Styling */
.carousel-inner .carousel-item img {
  object-fit: cover;
}

/* Slider Styling */
/* Desktop: Force slider dimensions to 1920px x 600px */
@media screen and (min-width: 769px) {
  .slider-container .slider {
    width: 100%;
    max-width: 1920px;
    height: 600px;         /* Fixed slider height */
    margin: 0 auto;
    overflow: hidden;
  }
  .slider-container .slider .slider-item {
    width: 100%;
    max-width: 1920px;
    height: 600px;
  }
  .slider-container .slider .slider-item img {
    width: 100%;
    max-width: 1920px;
    height: 600px;
    object-fit: cover;
  }
}

/* Mobile: Responsive scaling */
@media screen and (max-width: 768px) {
  .slider-container .slider {
    width: 100%;
    height: auto;
  }
  .slider-container .slider .slider-item {
    width: 100%;
    height: auto;
  }
  .slider-container .slider .slider-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}

/* NRT Caption for Slider */
.nrt-caption {
  font-family: 'NRT', sans-serif;
  color: black;
  transition: color 0.3s ease;
}
.nrt-caption:hover {
  color: red;
}

/* Gallery Caption Styling */
.gallery-caption {
  font-family: 'NRT', sans-serif;
  color: black;
  transition: color 0.3s ease;
  text-align: center;
  margin-top: 10px;
}
.gallery-caption:hover {
  color: red;
}
