/* Only the two accompaniment routes load this stylesheet. */
.service-page{background:var(--white)}
.service-page h1{font-size:clamp(2.5rem,5.5vw,5.1rem);line-height:1.08;max-width:920px}
.service-page h2{font-size:clamp(2rem,3.5vw,3.6rem);line-height:1.12}
.service-page h3{font-size:1.28rem;line-height:1.3;letter-spacing:-.02em}
.service-page .eyebrow{font-size:.8rem;letter-spacing:.12em}
.service-page section{scroll-margin-top:94px}
.service-page section:not(.hero){padding:80px var(--gutter)}
.service-page .service-hero{padding:72px var(--gutter) 80px;background:var(--navy);color:var(--white)}
.service-hero .intro{color:#c3d5dc;font-size:clamp(1.08rem,2vw,1.25rem);max-width:680px}
.breadcrumb{display:inline-block;margin-bottom:32px;color:#bfd1d7;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
.service-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}
.service-page .light{background:var(--white)}.service-page .mist{background:var(--mist)}.service-page .dark{background:var(--navy-deep);color:var(--white)}
.service-page .light .eyebrow,.service-page .mist .eyebrow{color:var(--aqua-dark)}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.service-page .copy{max-width:650px}.service-page .copy p{color:var(--muted)}.service-page .dark .copy p{color:#c3d5dc}
.service-page .copy p:last-child{margin-bottom:0}
.service-page .standfirst{max-width:760px;font-size:1.12rem}
.service-page .text-link{color:var(--aqua-dark);text-decoration:underline;text-underline-offset:5px;font-weight:700}
.service-page .dark .text-link{color:var(--aqua-light)}
.video-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:36px;max-width:880px}
.video-pair figure{margin:0;min-width:0}
.demo-video{display:block;width:100%;height:420px;object-fit:contain;background:#03131f}
.video-pair figcaption{padding-top:15px;font-size:.9375rem;line-height:1.5}
.video-pair figcaption strong{display:block;font-size:1.1rem;margin-bottom:6px}
.media-note{font-size:.875rem;color:var(--muted);max-width:740px;margin:22px 0}
.dark .media-note{color:#c3d5dc}
.context-rows{margin:0}.context-rows div{padding:18px 0;border-bottom:1px solid var(--line-light)}
.context-rows dt{font-weight:750;margin-bottom:6px}.context-rows dd{margin:0;color:var(--muted)}
.delivery{display:flex;align-items:center;gap:28px;margin-top:28px}.delivery strong{font-size:clamp(3rem,6vw,5.5rem);letter-spacing:-.06em;line-height:1;color:var(--aqua)}
.delivery p{max-width:400px;margin:0;color:#c3d5dc}
.service-page .app-carousel{margin-top:40px;max-width:1060px}
.service-page .phone-frame{max-width:280px}
.service-page .app-carousel figure:nth-child(2){margin-top:28px}
.service-page .app-carousel figcaption{max-width:280px}
.feedback-line{margin-top:48px;padding-top:24px;border-top:1px solid var(--line-light);max-width:870px}
.feedback-line h3{margin-bottom:12px}.feedback-line p{color:var(--muted)}
.weekly{display:grid;grid-template-columns:.45fr 1fr;gap:60px}
.weekly-day{font-size:clamp(3.4rem,7vw,6.5rem);font-weight:850;line-height:1;color:var(--aqua);letter-spacing:-.055em}
.weekly-day span{display:block;margin-top:16px;font-size:1rem;letter-spacing:0;font-weight:500;color:#c3d5dc}
.weekly ul{padding-left:20px;color:#c3d5dc}.weekly li{padding:6px 0}
.dose{display:flex;flex-wrap:wrap;gap:10px 24px;padding:22px 0;margin:24px 0;border-block:1px solid var(--line-light);font-weight:700;color:var(--aqua-dark)}
.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:36px}
.phases article{border-top:2px solid var(--aqua-dark);padding-top:20px}.phases p{color:var(--muted);margin-bottom:0}
.process-cycle{margin-top:36px;max-width:960px;border-left:2px solid var(--aqua);padding:0 0 0 24px}
.process-cycle ol{display:flex;flex-wrap:wrap;gap:12px 28px;list-style:none;padding:0;margin:0}
.process-cycle li{font-weight:700;display:flex;gap:20px}.process-cycle li:not(:last-child)::after{content:"→";color:var(--aqua)}
.process-cycle p{margin:24px 0 0;color:#c3d5dc}.process-cycle p span{color:var(--aqua);font-size:1.5rem;margin-right:8px}
.service-page .closing{background:var(--aqua);color:var(--navy)}.closing h2{max-width:860px}.closing p{max-width:620px}
.film-summary{display:flex;flex-wrap:wrap;gap:18px 32px;margin:28px 0;color:var(--aqua-light);font-size:1.1rem;font-weight:750}
.guide-nav{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:32px}.guide-nav a{font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}
.guide-rule{padding:22px 0;border-bottom:1px solid var(--line-light)}.guide-rule:first-child{padding-top:0}
.guide-rule h3{margin-bottom:10px}.guide-rule p{margin:0;color:var(--muted)}
.framing-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:28px 0}.framing-pair figure{margin:0;min-width:0}.framing-pair img{display:block;width:100%;height:auto}.framing-pair figcaption{margin-top:12px;font-size:1rem;font-weight:700}
.service-page .app-carousel{position:relative}
.service-page .carousel-nav button{position:relative;width:44px;height:44px;border:0;background:transparent}
.service-page .carousel-nav button::after{content:"";position:absolute;inset:16px;border:1px solid var(--aqua-dark);border-radius:50%}
.service-page .carousel-nav button[aria-current="true"]{background:transparent}
.service-page .carousel-nav button[aria-current="true"]::after{background:var(--aqua-dark)}
.error-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 32px;padding-left:20px;color:var(--muted)}
.checklist{border:0;margin:28px 0 0;padding:0;max-width:820px;min-width:0}.checklist legend{font-size:1rem;color:var(--muted);margin-bottom:14px}
.checklist label{display:flex;align-items:flex-start;gap:14px;padding:18px 0;border-bottom:1px solid var(--line-light);cursor:pointer}
.checklist input{flex:0 0 auto;width:22px;height:22px;margin:2px 0 0;accent-color:var(--aqua-dark)}
.checklist input:focus-visible{outline:3px solid var(--aqua-dark);outline-offset:4px}.checklist input:checked+span{color:var(--aqua-dark)}
.check-progress{margin-top:22px;color:var(--aqua-dark);font-weight:700}
.pdf-link{display:inline-block;margin-top:24px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:860px){.editorial-split{grid-template-columns:1fr;gap:26px}.weekly{grid-template-columns:1fr;gap:32px}.weekly-day span{display:inline;margin-left:14px}.phases{gap:20px}}
@media(max-width:700px){
.service-page section:not(.hero),.service-page .service-hero{padding:52px 20px}
.service-page h1{font-size:clamp(2.3rem,10vw,3.3rem);letter-spacing:-.045em}.service-page h2{font-size:clamp(1.95rem,8vw,2.7rem)}
.service-page .eyebrow{font-size:.75rem}.breadcrumb{margin-bottom:24px}
.service-actions{align-items:flex-start;flex-direction:column}.service-actions .button,.closing .button{width:100%}
.video-pair{grid-template-columns:1fr;gap:32px}.demo-video{height:auto;max-height:460px;aspect-ratio:512/824;object-fit:contain}
.delivery{align-items:flex-start;gap:18px}.delivery strong{white-space:nowrap;font-size:3rem}.delivery p{font-size:.9375rem}
.phases{grid-template-columns:1fr}.phases article{padding-top:16px}.phases h3{margin-bottom:8px}
.service-page .app-carousel figure,.service-page .app-carousel figure:nth-child(2){flex-basis:min(82vw,330px);margin-top:0}
.service-page .phone-frame{max-width:300px}.service-page .app-carousel figcaption{max-width:300px}
.error-list{grid-template-columns:1fr;gap:12px}.process-cycle{padding-left:18px}.process-cycle ol{gap:14px 20px}
.film-summary{gap:10px 22px}.framing-pair{grid-template-columns:1fr;margin-block:24px}
}
