/* Choosing your appointment (change request 20/10/2026), ported from Subiaco's mark.css.
   Existing tokens only. styles.css stays byte identical across both sites, so these live here. */
.fees__policy-card {
  padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
  border-radius: var(--radius-lg);
  background: color-mix(in srgb, var(--bone) 70%, transparent);
  border: 1px solid color-mix(in srgb, var(--pine) 18%, transparent);
  -webkit-backdrop-filter: blur(14px) saturate(1.4);
  backdrop-filter: blur(14px) saturate(1.4);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55),
              0 18px 42px -26px color-mix(in srgb, var(--ink) 55%, transparent);
  gap: clamp(1.25rem, 1rem + 1.5vw, 2rem);
}
.fees__policy-h {
  font-size: clamp(1.15rem, 1rem + .5vw, 1.5rem);
  line-height: var(--lh-snug);
  margin-bottom: .5rem;
}
.fees__policy-item p { margin-top: 0; }


.fees__grid--solo { grid-template-columns: 1fr; }
.choose .section-head { margin-bottom: clamp(1.6rem, 1rem + 2vw, 2.6rem); }
.choose__cards { display: grid; grid-template-columns: 1fr; gap: clamp(1rem, 0.6rem + 1.5vw, 1.8rem); }
@media (min-width: 761px) { .choose__cards { grid-template-columns: repeat(2, 1fr); align-items: stretch; } }
.choose__card { display: flex; flex-direction: column; }
.choose__card p { font-size: 0.97rem; line-height: 1.6; color: var(--text); margin: 0 0 0.8rem; }
.choose__title { font-family: var(--font-display); font-weight: 600; font-size: clamp(1.4rem, 1.15rem + 0.9vw, 1.8rem); color: var(--forest); line-height: 1.1; margin: 0 0 0.5rem; }
.choose__card .choose__format { font-family: var(--font-mono); font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--pine); margin: 0 0 1.1rem; padding-bottom: 0.9rem; border-bottom: 2px solid var(--oak); }
.choose__card .choose__link { margin: auto 0 0; padding-top: 0.6rem; }
.choose__link a { color: var(--pine); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
.choose__link a:hover { color: var(--oak); }
@media (min-width: 761px) { .choose__policy { grid-template-columns: repeat(3, 1fr); } }
.choose__acc > summary { list-style: none; display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.choose__acc > summary::-webkit-details-marker { display: none; }
.choose__acc-icon { display: none; }
@media (min-width: 761px) { .choose__acc > summary { pointer-events: none; cursor: default; } }
@media (max-width: 760px) {
  .choose__policy { gap: 0; }
  .choose__acc { padding: 0.95rem 0; }
  .choose__acc > summary { cursor: pointer; }
  .choose__acc > summary .fees__policy-h { margin: 0; }
  .choose__acc-icon { display: inline-block; flex: none; width: 0.6rem; height: 0.6rem; margin-top: 0.4rem;
    border-right: 2px solid var(--pine); border-bottom: 2px solid var(--pine); transform: rotate(45deg); transition: transform 0.2s ease; }
  .choose__acc[open] .choose__acc-icon { transform: rotate(-135deg); margin-top: 0.65rem; }
  .choose__acc-body { padding-top: 0.7rem; }
}
.fees__policy-item a { color: var(--pine); }

.fees .container.choose { margin-top: clamp(2.5rem, 1.5rem + 3.5vw, 4.5rem); }

/* Teal floating card (Jenny, 21/10/2026): Choosing your appointment sits in
   the same .sec-green card as About and Appointments, with the type inverted to contrast. */
.fees__green { padding-block: clamp(2.25rem, 1.5rem + 3vw, 4rem); margin-top: clamp(2.5rem, 1.5rem + 3.5vw, 4.5rem); }
.fees__green .container.choose { margin-top: 0; }
.fees__green .section-head__lead { color: color-mix(in srgb, var(--bone) 88%, transparent); }
.fees__green .choose__card { background: color-mix(in srgb, var(--bone) 9%, transparent); border-color: color-mix(in srgb, var(--bone) 20%, transparent); box-shadow: none; }
.fees__green .choose__card p, .fees__green .fees__policy-item p { color: color-mix(in srgb, var(--bone) 90%, transparent); }
.fees__green .choose__title, .fees__green .fees__policy-h { color: var(--bone); }
.fees__green .choose__card .choose__format { color: var(--oak); border-bottom-color: var(--oak); }
.fees__green .choose__link a, .fees__green .fees__policy-item a { color: var(--oak); }
.fees__green .choose__link a:hover, .fees__green .fees__policy-item a:hover { color: var(--bone); }
.fees__green .fees__policy-card { background: color-mix(in srgb, var(--bone) 7%, transparent); border-color: color-mix(in srgb, var(--bone) 18%, transparent); box-shadow: none; }
.fees__green .fees__policy-item { border-top-color: var(--oak); }
.fees__green .fees__amt { color: var(--oak); font-weight: 600; }
.fees__green .choose__acc-icon { border-color: var(--oak); }
.fees__green .section-head--center { text-align: left; max-width: none; }
.fees__green .section-head--center .section-head__lead { margin-inline: 0; max-width: 62ch; }
.fees__green h2 em { color: var(--oak); }
@media (max-width: 760px) { .fees__green { margin-top: 2.5rem; } }
