.main-nav a[aria-current=page]{color:var(--purple);text-decoration:underline;text-underline-offset:7px}
.services-intro{padding-block:35px 42px}.back-link{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.875rem;margin-bottom:26px}.back-link:hover{text-decoration:underline}.services-intro h1{font-size:clamp(42px,5.5vw,68px);line-height:1.06;letter-spacing:-.055em;margin-block:18px 24px}.services-intro h1 span{color:var(--purple)}.intro-copy{font-size:1.125rem;max-width:620px;line-height:1.75}.service-shortcuts{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.service-shortcuts a{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:14px 19px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:1rem;font-weight:600;min-height:52px;transition:background .2s,border-color .2s}.service-shortcuts a:hover{background:var(--tint);border-color:var(--purple)}.service-shortcuts span{color:var(--purple)}.pricing-note{font-size:.875rem;max-width:760px;margin-top:23px;line-height:1.75}.service-group{padding-block:36px 45px;border-top:1px solid var(--line);scroll-margin-top:20px}.group-heading{display:flex;gap:20px;align-items:flex-start;margin-bottom:26px}.group-number{color:var(--purple);background:var(--tint);border-radius:12px;padding:9px 12px;font-size:.875rem;font-weight:650;flex:none}.group-heading h2{font-size:30px;margin-bottom:9px}.group-heading p{font-size:1rem}.offerings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.offering{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:29px;display:flex;flex-direction:column;scroll-margin-top:115px}.offering:target{border-color:var(--purple)}.offering-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.offering h3{font-size:22px;letter-spacing:-.025em;line-height:1.25}.price{color:var(--purple);font-size:21px;font-weight:700;line-height:1.3;text-align:right;flex:0 0 145px}.price span{display:block;font-size:.875rem;color:var(--muted);font-weight:400;margin-top:6px;line-height:1.5}.offering-description{font-size:1rem;line-height:1.75;margin-block:22px 17px}.offering details{margin-bottom:13px}.offering summary,.booking-questions summary{cursor:pointer;line-height:1.5;padding:12px 0;min-height:48px;font-size:1rem;font-weight:550}.offering summary::marker,.booking-questions summary::marker{color:var(--purple)}summary:focus-visible{outline:3px solid var(--purple);outline-offset:4px;border-radius:4px}.offering ul{padding-left:21px;margin:8px 0 16px;color:var(--muted);font-size:1rem;line-height:1.75}.offering li+li{margin-top:5px}.offering .text-link{margin-top:auto;align-self:flex-start}.booking-info{padding-block:43px;display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;border-top:1px solid var(--line)}.booking-info h2{font-size:30px;margin-block:15px 18px}.booking-info p{font-size:1rem;line-height:1.75}.booking-questions details{border-bottom:1px solid var(--line);padding-block:7px}.booking-questions details:first-child{border-top:1px solid var(--line)}.booking-questions p{padding-block:5px 19px}.plans-note{padding:28px 32px;background:var(--tint);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:37px}.plans-note h2{font-size:23px;margin-bottom:8px}.plans-note p{font-size:1rem}.plans-note .text-link{flex-shrink:0}
@media(max-width:1000px){.offering-top{flex-direction:column;gap:13px}.price{text-align:left;flex:auto}.price span{display:inline;font-size:.875rem;margin-left:9px}.booking-info{gap:35px}.plans-note{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:700px){.services-intro{padding-block:21px 30px}.back-link{margin-bottom:20px}.services-intro h1{font-size:44px}.intro-copy{font-size:1.0625rem}.service-shortcuts{flex-direction:column;gap:9px;margin-top:25px}.service-shortcuts a{width:100%}.offerings{grid-template-columns:1fr;gap:14px}.offering{padding:23px;border-radius:16px}.service-group{padding-block:29px 35px}.group-heading{gap:13px}.group-heading h2{font-size:27px}.group-heading p{font-size:1rem}.offering h3{font-size:22px}.price{font-size:22px}.offering-description{margin-top:17px}.booking-info{grid-template-columns:1fr;gap:25px;padding-block:32px}.booking-info h2{font-size:27px}.plans-note{padding:25px;margin-bottom:28px}.pricing-note{font-size:.875rem}}
@media(prefers-reduced-motion:no-preference){.services-intro{animation:gentle-enter .65s var(--ease-out) both}}
@media print{.services-intro{animation:none!important}.offerings{display:block}.offering{break-inside:avoid;margin-bottom:15px}.service-shortcuts{display:none}}

.service-location{font-size:15px;line-height:1.7;color:var(--muted);margin-top:18px}.service-help{border:1px solid var(--purple);border-radius:10px;padding:10px 15px;min-height:46px;justify-content:center;background:var(--tint)}.offering .price span{max-width:225px;line-height:1.6}.booking-info>div>p+p{margin-top:15px}
