/** HTML **/

html {
  overflow-x: hidden;
} 

body {
  min-height: 100vh;
}

/** MEDIA QUERIES **/

@media (max-width: 767.98px) {
  section.light, section.dark {
    transform: rotate(0deg);
    transition: transform 0.2s ease;
  }
}

@media (max-width: 767.98px) {
  section.dark {
    transform: none;
  }
}

@media (min-width: 768px) {
  section.light.landing {
    transition: transform 0.4s ease;
    transform: rotate(2deg);
    border-radius: 25px;
    border: 3px solid black;
  }
}

@media (min-width: 768px) {
  section.landing.dark {
    transition: transform 0.4s ease;
    transform: rotate(-1deg);
    border-radius: 25px;
    border: 3px solid black;
  }
}

/** Cards: shadows **/

div.card[data-bs-theme=light] {
  box-shadow: 0px 3px 5px var(--bs-gray);
}

div.card[data-bs-theme=dark] {
  box-shadow: 0px 3px 5px #073c89;
}

/** Cards: minimum height for single-column layouts **/
@media (max-width: 768px) {
  .card {
    min-height: 300px;
  }
}

/** Figure captions **/
figcaption {
  text-align: center;
}

/** Light and dark sections **/

section.dark, section.light {
  padding-top: 1em;
  padding-bottom: 1em;
}

section.light {
  background: rgba(248, 248, 248, .85);
  color: var(--bs-gray-700);
}

section.dark {
  background: linear-gradient(rgba(22,39,71,0.85) 0%, rgba(6,12,17,0.85));
  color: var(--bs-white);
}

section.landing div.section-content {
  margin-bottom: 1em;
}

section.light h1 {
  font-weight: bold;
  text-shadow: 0px 2px 3px var(--bs-white);
  color: var(--bs-gray-700);
}

section.dark h1 {
  font-weight: bold;
  text-shadow: 0px 3px var(--bs-black);
  color: var(--bs-white);
}

/** Badges inside cards need a bit of right margin so they stay separated from each other **/
.card .badge {
  margin-right: 0.5em;
}

.card .badge:last-child {
  margin-right: 0;
}

/** Breadcrumbs links **/
li.breadcrumb-item a {
  text-decoration: none;
}

/** FOOTER **/

footer {
  bottom: 0px;
  padding-top: 2em;
  padding-bottom: 2em;
  width: 100vw;
}

footer a {
  text-decoration: none;
}

footer a:hover {
  transform: scale(1.1);
  filter: drop-shadow(0 0 10px var(--bs-info));
}

footer a {
  transition: transform 0.4s ease, filter 0.4s ease;
}


/** Card transitions for landing and index pages **/

section.landing a .card,
section.projects-index a .card,
section.blog-index a .card,
section.photography-index a .card,
section.articles-index a .card
{
  transform: scale(1.0);
  transition: transform 0.4s ease;
}

section.landing a:hover .card,
section.projects-index a:hover .card,
section.blog-index a:hover .card,
section.photography-index a:hover .card,
section.articles-index a:hover .card
{
  transform: scale(1.03);
  transition: transform 0.2s ease;
}

/* Global links */

a {
  text-decoration: none;
  transition: filter 0.4s ease;
}

a:hover {
  filter: drop-shadow(0 0 5px var(--bs-primary));
  transition: filter 0.2s ease;
}
