/* ==================== WORK WITH ME PAGE ==================== */

.wwm-hero h1{ font-size: 2.1rem; margin-bottom: 1.3rem; }
@media (min-width: 900px){ .wwm-hero h1{ font-size: 2.75rem; } }
.wwm-hero .prose{ margin-bottom: 2.6rem; }
.wwm-hero .prose p + p{ margin-top: 1.1em; }

.booking-options{
  display:grid;
  grid-template-columns: 1fr;
  gap: 2.2rem;
  max-width: 780px;
}
@media (min-width: 700px){
  .booking-options{ grid-template-columns: 1fr 1fr; gap: 3rem; }
}
.booking-option h2{
  font-family: var(--serif);
  font-weight: 500;
  font-size: 1.4rem;
  color: var(--charcoal-dark);
  margin-bottom: 0.6rem;
}
.booking-option p{
  font-size: 0.98rem;
  color: var(--charcoal);
  margin-bottom: 1.4rem;
}
.booking-option .btn{ width: 100%; text-align:center; }

.session-details h2{ font-size: 2rem; margin-bottom: 2.2rem; }
@media (min-width: 900px){ .session-details h2{ font-size: 2.25rem; } }

.fee-facts{
  display:grid;
  grid-template-columns: 1fr;
  gap: 1.8rem;
}
@media (min-width: 700px){
  .fee-facts{ grid-template-columns: repeat(3, 1fr); gap: 2.5rem; }
}
.fee-fact .value{
  font-family: var(--serif);
  font-weight: 500;
  font-size: 2.1rem;
  color: var(--charcoal-dark);
  margin-bottom: 0.4rem;
}
.fee-fact .label{
  font-family: var(--sans);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--charcoal);
  opacity: 0.8;
}
.fee-note{
  margin-top: 2.2rem;
  font-style: italic;
  font-size: 0.9rem;
  color: var(--charcoal);
  opacity: 0.8;
}

.professional-status .status-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 1.8rem;
}
@media (min-width: 900px){
  .professional-status .status-grid{
    grid-template-columns: 0.8fr 1.2fr;
    gap: 4.5rem;
    align-items: start;
  }
}
.professional-status h2{ font-size: 2rem; margin-bottom: 1rem; }
@media (min-width: 900px){ .professional-status h2{ font-size: 2.25rem; } }
.professional-status .credential-line{ margin-bottom: 0; }
.professional-status .prose p + p{ margin-top: 1.1em; }

.wwm-faq h2{ font-size: 2rem; margin-bottom: 2rem; }
@media (min-width: 900px){ .wwm-faq h2{ font-size: 2.25rem; } }

.faq-list{
  display:flex;
  flex-direction:column;
  max-width: 720px;
}
.faq-item{
  border-bottom: 1px solid var(--line);
  padding: 1.5rem 0;
}
.faq-item:first-child{ padding-top: 0; }
.faq-item summary{
  font-family: var(--serif);
  font-size: 1.15rem;
  color: var(--charcoal-dark);
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary::after{
  content: '+';
  font-family: var(--sans);
  font-size: 1.3rem;
  color: var(--terracotta);
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.faq-item[open] summary::after{ transform: rotate(45deg); }
.faq-answer{
  margin-top: 0.9rem;
  font-size: 0.98rem;
  color: var(--charcoal);
  max-width: 620px;
}
