/* Service pages. All classes prefixed `svc-` so nothing leaks into
   styles.css or chat-widget.css. Tokens come from styles.css :root. */

.svc-crumb{padding:104px 0 0}
.svc-crumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;
  font-size:.82rem;letter-spacing:.04em;color:var(--ink-soft)}
.svc-crumb li+li::before{content:"/";margin-right:8px;opacity:.45}
.svc-crumb a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .25s var(--ease)}
.svc-crumb a:hover{border-bottom-color:var(--gold)}
.svc-crumb [aria-current="page"]{color:var(--ink)}

.svc-hero{padding:34px 0 52px;border-bottom:1px solid var(--line)}
.svc-hero-inner{max-width:760px}
.svc-hero h1{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;
  font-size:clamp(2.1rem,5.2vw,3.5rem);line-height:1.08;letter-spacing:-.01em;
  margin:.35em 0 .5em;color:var(--forest-deep)}
.svc-lede{font-size:clamp(1.02rem,1.6vw,1.19rem);line-height:1.62;color:var(--ink-soft);margin:0 0 1.9em}
.svc-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:26px}
.svc-status{font-size:.88rem;line-height:1.6;color:var(--ink-soft);
  border-left:2px solid var(--gold-soft);padding:2px 0 2px 16px;margin:0;max-width:60ch}

.svc-body{padding-top:56px;max-width:calc(760px + 2 * clamp(1.2rem,4vw,2.6rem))}
.svc-body h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;
  font-size:clamp(1.5rem,3vw,2.05rem);line-height:1.2;color:var(--forest-deep);
  margin:2.1em 0 .55em}
.svc-body h2:first-child{margin-top:0}
.svc-body p{font-size:1.01rem;line-height:1.75;color:var(--ink);margin:0 0 1.15em}
.svc-body a:not(.btn){color:var(--forest);text-decoration:none;border-bottom:1px solid var(--gold-soft);
  transition:border-color .25s var(--ease),color .25s var(--ease)}
.svc-body a:not(.btn):hover{color:var(--gold);border-bottom-color:var(--gold)}

.svc-faq{margin:3.4em 0 0;padding-top:2.4em;border-top:1px solid var(--line)}
.svc-faq h2{margin-top:0}
.svc-faq-item{border-bottom:1px solid var(--line);padding:2px 0}
.svc-faq-item summary{cursor:pointer;list-style:none;padding:18px 34px 18px 0;position:relative;
  font-weight:500;font-size:1rem;line-height:1.5;color:var(--forest-deep)}
.svc-faq-item summary::-webkit-details-marker{display:none}
.svc-faq-item summary::after{content:"";position:absolute;right:6px;top:50%;width:9px;height:9px;
  border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);
  transform:translateY(-70%) rotate(45deg);transition:transform .28s var(--ease)}
.svc-faq-item[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.svc-faq-item summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.svc-faq-item p{padding:0 0 20px;margin:0;color:var(--ink-soft);line-height:1.72;max-width:66ch}

.svc-cta{margin:3.6em 0 0;padding:40px;background:var(--bg-2);border-radius:var(--radius);
  border:1px solid var(--line)}
.svc-cta h2{margin:0 0 .5em}
.svc-cta p{margin-bottom:1.6em;color:var(--ink-soft)}

@media (max-width:720px){
  .svc-crumb{padding-top:88px}
  .svc-hero{padding:26px 0 40px}
  .svc-body{padding-top:42px}
  .svc-cta{padding:28px 22px}
}

@media (prefers-reduced-motion:reduce){
  .svc-faq-item summary::after{transition:none}
}
