/* Mobile Dark Mode CSS Fix */
:root {
  color-scheme: dark;
  --bg-color: #000000;
  --text-color: #FFFFFF;
  --accent-color: #FFCC00;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

/* --- GLOBAL STYLES --- */
body {
  background-color: var(--bg-color);
  color: var(--text-color);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  line-height: 1.5;
  padding: 20px 15px;
  text-align: center;
}

p, h1, h2, h3, span, a {
  font-family: inherit;
}

img {
  max-width: 100%;
  height: auto;
  border: none;
  border-radius: 4px;
  transition: transform 0.3s ease;
}

/* --- UTILITY CLASSES --- */
.text-yellow { color: var(--accent-color); }
.text-white { color: #FFFFFF; }

/* --- BALANCED GLOW AND GROW EFFECT --- */
a {
  color: var(--accent-color);
  text-decoration: underline;
  text-underline-offset: 3px;
  display: inline-block; 
  transition: all 0.4s ease-in-out; 
}

a:hover {
  color: #FFCC00;
  text-shadow: 0 0 6px rgba(255, 204, 0, 0.9), 0 0 12px rgba(255, 204, 0, 0.7), 0 0 20px rgba(255, 204, 0, 0.5);
  transform: scale(1.05);
}

h1 { font-size: 1.6rem; line-height: 1.3; margin-bottom: 15px; }
h2 { font-size: 1.3rem; margin-top: 25px; margin-bottom: 12px; }
h3 { font-size: 1.15rem; margin-top: 20px; margin-bottom: 10px; line-height: 1.4; }

/* Brightened paragraph colors for better contrast */
p { font-size: 0.95rem; color: #EEEEEE; max-width: 550px; margin: 0 auto 15px auto; }
.duration { color: #BBBBBB; font-size: 0.85rem; margin-top: 2px; margin-bottom: 15px; }

/* Premium Solid Gold Border Contact Block Layout Configuration */
.cta-block { 
  background: #000000 !important; 
  border: 2px solid var(--accent-color) !important; 
  border-radius: 8px; 
  padding: 15px; 
  margin: 30px auto; 
  max-width: 440px; 
}
.btn-container { margin: 12px 0 4px 0; }
.cta-button {
  display: block;
  background-color: var(--accent-color);
  color: #000000 !important;
  font-weight: bold;
  font-size: 1rem;
  padding: 10px 15px;
  border-radius: 6px;
  text-decoration: none !important;
  transition: all 0.3s ease;
}
.cta-button:hover { 
  background-color: #FFEE99; 
  transform: scale(1.02); 
  box-shadow: 0 4px 10px rgba(255, 204, 0, 0.3); 
}

/* Brightened footer text for better contrast */
.email-text-wrap { font-size: 1rem; margin-top: 1.4rem; color: #EEEEEE; }
.footer-address { 
  color: #BBBBBB; 
  font-size: 0.8rem; 
  margin-top: 15px; 
  border-top: 1px solid #333333; 
  padding-top: 10px; 
  line-height: 1.4;
}
/* --- RESPONSIVE VIDEO CONTAINER --- */
.video-container {
  position: relative;
  padding-bottom: 56.25%; /* Forces the perfect 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
  max-width: 800px; /* Stops it from getting too huge on large desktop monitors */
  margin: 20px auto; /* Centers the video horizontally */
  border-radius: 4px; 
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* --- LOGO IMAGE ROLLOVER EFFECT --- */
.logo-link .logo-hover {
  display: none; /* Hides the illuminated image normally */
}

.logo-link:hover .logo-default {
  display: none; /* Hides the standard image when the mouse hovers */
}

.logo-link:hover .logo-hover {
  display: inline; /* Shows the illuminated image when the mouse hovers */
}
/* Remove borders and gaps above the footer on desktop */
footer.cta-block {
  border-top: none !important;
  margin-top: 0 !important;
  box-shadow: none !important;
}

main, 
.project-item:last-of-type,
.container {
  border-bottom: none !important;
  margin-bottom: 0 !important;
}