/* Service chooser and detail pages extend the existing River line identity. */
.service-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.service-choice{min-width:0}
.service-choice-link{display:flex;flex-direction:column;height:100%;color:var(--ink);text-decoration:none;background:var(--paper);border:1px solid #aabdc0;border-radius:12px;overflow:hidden;transition:border-color 160ms ease,transform 160ms var(--ease-out)}
.service-choice-art{padding:12px 18px 0;background:#dce8e8}
.service-choice-art img{display:block;width:100%;height:auto}
.service-art-marketing,.service-art-branding{background:var(--sand)}
.service-art-social,.service-art-video{background:#d5e4e6}
.service-choice-copy{display:flex;flex:1;flex-direction:column;padding:26px 28px 28px}
.service-choice h3{font-family:var(--serif);font-size:1.75rem;font-weight:400;letter-spacing:-.025em;line-height:1.2;margin:0 0 20px;overflow-wrap:anywhere}
.service-choice ul{margin:0 0 24px;padding-left:20px;font-size:.94rem;color:var(--muted)}
.service-choice li+li{margin-top:8px}
.service-choice li::marker{color:var(--blue)}
.service-choice-more{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;font-size:.9rem;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#87999e}
.service-choice-link:focus-visible{outline:3px solid #bd753e;outline-offset:6px}
.service-choice-note{max-width:75ch;margin:32px 0 0;color:var(--muted);font-size:.95rem}
@media(hover:hover) and (pointer:fine){.service-choice-link:hover{transform:translateY(-3px);border-color:var(--blue)}.service-choice-link:hover .service-choice-more{color:var(--blue)}}
.service-detail-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:64px;align-items:center;padding-block:64px 88px}
.service-back{display:inline-block;min-height:44px;margin-bottom:22px;font-size:.9rem}
.service-detail h1{font-size:clamp(2.75rem,4.5vw,4.4rem);letter-spacing:-.03em;overflow-wrap:anywhere}
.service-detail-lead{font-size:1.18rem;max-width:48ch;margin-bottom:30px;color:var(--muted)}
.service-detail-art{border-radius:12px;padding:28px;background:#dce8e8}
.service-detail-art img{display:block;width:100%;height:auto}
.service-detail-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:100px;padding-block:64px 88px;border-top:1px solid var(--line)}
.service-detail h2{font-size:clamp(2.3rem,3.4vw,3.3rem);letter-spacing:-.03em;overflow-wrap:anywhere}
.service-detail-body>*,.service-detail-faq>*,.service-detail-next>.wrap>*{min-width:0}
.service-detail-example{font-size:1.05rem;color:var(--muted);max-width:65ch;margin-bottom:40px}
.service-detail-list>div{border-top:1px solid var(--line);padding:25px 0}
.service-detail-list h3{font-size:1.15rem;letter-spacing:0;margin-bottom:10px}
.service-detail-list p{max-width:65ch;color:var(--muted);margin:0}
.service-detail-start ul{padding-left:20px;margin:0 0 44px;color:var(--muted)}
.service-detail-start li+li{margin-top:16px}
.service-detail-start h3{font-size:1.15rem;letter-spacing:0;margin-bottom:14px}
.service-detail-start p{color:var(--muted)}
.service-detail-faq{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;padding-block:64px 88px;border-top:1px solid var(--line)}
.service-detail-faq details{border-bottom:1px solid var(--line);padding:20px 0}
.service-detail-faq details:first-child{padding-top:0}
.service-detail-faq summary{cursor:pointer;font-weight:500;min-height:44px;align-content:center}
.service-detail-faq details p{margin:18px 0 0;color:var(--muted);max-width:65ch}
.service-detail-sources{font-size:.85rem;color:var(--muted);margin-top:28px}
.service-detail-next{background:var(--ink);color:var(--paper);padding-block:64px}
.service-detail-next>.wrap{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:start}
.service-detail-next h2{margin:0}.service-detail-next h2 em{color:#b6d0d7}
.service-detail-next p{max-width:50ch}
.service-detail-next .button{background:var(--paper);color:var(--ink)}
.service-detail .button:focus-visible{transition:none;transform:none}
.service-detail-email{font-size:.9rem;margin:22px 0 0;overflow-wrap:anywhere}
@media(min-width:761px) and (max-width:1100px){.service-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail-hero{gap:36px}.service-detail-body{gap:48px}.service-detail-faq,.service-detail-next>.wrap{gap:40px}}
@media(max-width:760px){.service-choice-grid{grid-template-columns:1fr;gap:24px}.service-choice-art{padding:8px 22px 0}.service-choice-copy{padding:24px}.service-choice h3{font-size:1.75rem}.service-detail-hero{grid-template-columns:1fr;gap:36px;padding-block:36px 56px}.service-detail h1{font-size:clamp(2.6rem,10vw,3.4rem)}.service-detail-art{padding:16px}.service-detail-body,.service-detail-faq,.service-detail-next>.wrap{grid-template-columns:1fr;gap:40px}.service-detail-body,.service-detail-faq{padding-block:48px 56px}.service-detail-start{border-top:1px solid var(--line);padding-top:40px}.service-detail-next{padding-block:48px}.service-back{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.service-choice-link,.service-detail .button{transition:none}.service-choice-link:hover,.service-detail .button:hover,.service-detail .button:active{transform:none}}
