body 
{
    font-family: Georgia, serif;
    font-size: 1.2em;
    line-height: 1.6;
    color: #4b4032; /* Optional: a softer text color */
    background-color: #fdfcf9; /* Optional: gentle off-white background */

}

#title, #content, #navigation, #footer, #teaserNavigation
{
  padding: 1em;
}


#spotlight
{
  display: flex; 
  align-items: center;

}

.headingBox, .textArea, .article-signoff
{
    margin-left:1em;
}

h1{color: #ffffff; font-size: 4em;}

a{text-decoration: none; color: inherit;}
.tiny{ font-size: 0.7em; }
.specialLink{color: #8b5e3c;}
.link{ text-decoration: underline;}
hr{color: #ffffff;}
.rounded { border-radius: 6px; }
.iconHolder{ border-radius:1em; }

#title
{
  background-image: url('assets/banner.jpg');
  background-size: cover;       /* scales image to cover the div */
  background-position: center;  /* centers the image */
  background-repeat: no-repeat; /* prevents tiling */
  width: 100vw;        /* 100% of the viewport width */
  height: auto;
  text-shadow:
    -1px -1px 0 #000,  
     1px -1px 0 #000,
    -1px  1px 0 #000,
     1px  1px 0 #000;
}

.article-banner
{
    display: block;
    width: 100%;
    height: auto;
    max-height: 200px; /* Optional: controls vertical size */
    object-fit: cover;
    margin: 2em 0;
    border-radius: 0;
}

.article-banner-large
{
    display: block;
    width: 100%;
    height: auto;
    max-height: 350px; /* Optional: controls vertical size */
    object-fit: cover;
    margin: 2em 0;
    border-radius: 0;
}



.iconHolder img {
  transition: transform 0.3s ease;
  padding-right: 1em;
}

.iconHolder img:hover {
  transform: translateY(-5px);
}

.navBoxHeadings{color:#8b5e3c; }

@keyframes fadeSlideUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
    text-shadow: none;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
    text-shadow: 0 0 8px rgba(139, 94, 60, 0.4); /* soft umber glow */

  }
}

.navBoxHeadings {
  display: inline-block;
  animation: fadeSlideUp 1.2s ease-in-out;
}


.article-signoff {
  margin-top: 2em;
  margin-left: 1em;
  font-size: 0.85em;
  font-style: italic;
  color: #6a5d4b; /* soft, warm brown */
  opacity: 0.7;
  letter-spacing: 0.2px;
}




blockquote {
  background-color: #f4f1ec; /* soft beige, matches teaserNavigation */
  border-left: 4px solid #c2b8a3; /* warm accent */
  color: #4b4032; /* matches body text */
  font-style: italic;
  margin: 1.5em 1em;
  padding: 1em 1.5em;
  border-radius: 6px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* subtle shadow */
  transition: background-color 0.3s ease;
}

blockquote:hover {
  background-color: #eae6df; /* gentle hover effect */
}




#teaserNavigation {
  margin-top: 50px;
  padding: 15px;
  background-color: #f4f1ec; /* soft beige */
  border: 1px solid #e0ddd7;
  border-radius: 10px;
  font-family: 'Georgia', serif;
}

#teaserNavigation h2 {
  font-size: 1.4em;
  color: #5a4e3c; /* warm brown */
  margin-bottom: 8px;
  font-weight: normal;
}


.fade-in {
    opacity: 0;
    animation: fadeIn 4s ease-in forwards;
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

.video-container {
  width: 90%;              /* Adjust this to match your title's width */
  max-width: 500px;        /* Optional: cap the width */
  border-radius: 8px;      /* Optional: soft corners */
  box-shadow: 0 4px 16px rgba(0,0,0,0.1); /* Optional: subtle shadow */
}

.video-container iframe {
  width: 100%;
  height: 300px;           /* Adjust height as needed */
  border: 0;
}

@media (max-width: 600px) {
  .video-container iframe {
    height: 200px; /* or even 180px for tighter fit */
  }
}

.image
{
    width:25%;
}

.bigimage {
  max-width: 100%;   /* keeps image within screen/container */
  height: auto;      /* preserves aspect ratio */
  display: block;    /* avoids inline spacing issues */
  margin: 0 auto;    /* centers image horizontally */
}

/* Optional: limit size on larger screens */
@media (min-width: 768px) {
  .bigimage {
    max-width: 500px;  /* adjust to your preferred desktop width */
  }
}


#navigation {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  padding: 1em;
  overflow-wrap: break-word;
  word-break: break-word;
}

@media screen and (max-width: 600px) {
  .tag-cloud-container {
    width: 90%;
    margin: 0 auto;
  }
}

.italic
{
    font-style: italic;  
}

