/* Reset & Base */
@font-face {
  font-family: 'Fields';
  src: url('../content/Fields-SemiBold.otf') format('opentype');
  font-weight: 600; /* semibold */
  font-style: normal;
}

body {
      color: #fff;
      padding: 2px;
      background: #F7F1E4; 
      background-repeat: no-repeat;
      background-attachment: fixed;
    }

/* Hero Section */

.hero-banner{
  display: flex; 
  width: 100%;
height: 450px;
overflow: hidden;
margin-bottom: 2rem;
}

.video-container {
position: relative;
flex: 1;
height: 100%;
background-color: transparent;
}

.hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Intro Text */

.intro-text {
position: absolute;
  bottom: 0;               /* distance from bottom edge */
  left: 50%;
  transform: translateX(-50%);/* center horizontally */
  color: white;
  text-align: center;
  z-index: 2;
  padding: 10px;
  background: rgba(89, 133, 196, 0.5); 
  border-radius: 10px;
  font-size: 1.1rem;
  font-weight: bold;
  margin-bottom: 1rem;
}
.schedule-appointment {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 18px;
  background-color: #9bb6dc;        /* your primary color */
  font-size: 1rem;
  font-weight: bold;
  text-decoration: none;            /* removes underline */
  border-radius: 6px;
  transition: background 0.2s ease;
}

.schedule-appointment:hover {
  background-color: #f7f1e4;        /* darker on hover */
}

.talk-text {
  padding: 2rem 1rem;
  text-align: center;
  background-color:transparent;
  color: #68672B;
  font-family: 'Fields', sans-serif; 
  font-weight: 600;
}

.talk-text .lead {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.talk-text .supporting-line {
  font-size: 1rem;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
}

.card-container { 
display: flex; 
flex-direction: row;
gap: 20px; 
justify-content: space-between;
flex-wrap: nowrap;
width: 100%;
max-width: 1200px;
margin: 0 auto;
} 

.card { 
flex: 1; /* makes all cards equal width */ 
background: #f7f7f7; 
border-radius: 8px; 
overflow: hidden; 
box-shadow: 0 2px 6px rgba(0,0,0,0.1); 
display: flex; 
flex-direction: column; 
}


.card img { 
width: 100%; 
height: 200px; 
object-fit: cover; 
} 

.card-content h3 {
  margin: 0 0 10px 0;
  color: #5985c4;
}

.card-content {
padding: 20px;
}

.card-text {
  flex: 1;                  /* allow text to expand */
  color: #5985C4;
  margin-bottom: 20px;
}


.button-container {
  display: flex;
  justify-content: center;  /* center button horizontally */
}

.learn-more {
  display: inline-block;
  padding: 10px 20px;
  border: none;
  border-radius: 8px;
  background-color: #F4C5B4;
  color: #f7F1E4;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
font-family: 'Fields', sans-serif; 
  font-weight: 600;
}

.learn-more:hover {
  background-color: #C6803D;
}


/* Responsive */
@media (max-width: 768px) {
  .main-nav ul {
    flex-direction: column;
    gap: 1rem;
  }

  .hero {
    flex-direction: column;
  }

  .hero-video video,
  .portrait img {
    width: 100%;
    max-width: 90vw;
  }
}
