/* Services — light photo hero, white body, booking form */
.page-services { --page-bg: var(--paper); --accent: var(--gold-deep); --dim: var(--ink-2); }

.svc-hero { position: relative; overflow: hidden; background: var(--paper-2); min-height: min(62vh, 560px); display: flex; align-items: flex-end; }
.svc-hero__scrim {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.55) 70%, rgba(255,255,255,.85) 100%);
}
.svc-hero__copy { position: relative; max-width: 580px; padding: clamp(48px, 7vw, 90px) var(--sec-x); box-sizing: content-box; }
.svc-hero .kicker { color: var(--ink-2); margin-bottom: var(--s3); text-shadow: 0 0 10px #fff; }
.svc-hero .h1 { text-shadow: 0 0 12px #fff, 0 0 30px rgba(255,255,255,.95); }
.svc-hero__lead { font-size: 17px; line-height: 1.7; color: var(--ink); max-width: 48ch; margin-top: var(--s4); text-shadow: 0 0 10px #fff, 0 0 24px rgba(255,255,255,.95); }

.svc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr)); gap: var(--s6) clamp(24px, 4vw, 48px); }
.svc-card { display: grid; grid-template-rows: auto auto 1fr; height: 100%; transition: transform .35s ease; }
@media (hover: hover) { .svc-card:hover { transform: translateY(-4px); } }
.svc-card__img { aspect-ratio: 4/3; }
.svc-card__title { font-family: var(--serif); font-weight: 400; font-size: 21px; margin-top: var(--s3); }
.svc-card__body { font-size: 15px; line-height: 1.7; color: var(--ink-3); max-width: 40ch; margin-top: var(--s2); }

.svc-book { background: var(--paper-2); border-top: 1px solid var(--rule); }
.svc-book__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: var(--s6) clamp(32px, 5vw, 64px); }
.svc-book__intro { max-width: 44ch; margin-top: var(--s3); }
.svc-book__where { color: var(--ink-3); margin-top: var(--s4); }
.svc-form { display: grid; gap: var(--s3); }
.svc-form__btn { margin-top: 4px; font-size: 12px; letter-spacing: .16em; --btn-hover: var(--gold); }
.form-done { font-size: 15px; line-height: 1.7; color: var(--gold-deep); outline: none; }
