/* R3 services directory. Author: actual claude-opus-5-5 (services slice), 2026-10-03.
   Scoped to body.page-services and .svc-r3-* classes only; no shared selectors are redefined. */
.page-services{--svc-line:#10181624;--svc-strong-line:#1018164d;--svc-sage:#617962;--svc-deep:#2f4a43;--svc-yard:#e4e9df;--svc-ground:#dce6e6;--svc-found:#e9e4da;--svc-test:#e2e3ea}

/* Start: problem chooser + field image */
.page-services .svc-r3-start{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,4vw,64px);max-width:1600px;margin:auto;padding:24px var(--gutter,56px) 96px;align-items:stretch}
.page-services .svc-r3-chooser{background:#fff;border:1px solid var(--svc-strong-line);padding:clamp(28px,3.4vw,52px);display:flex;flex-direction:column;gap:24px}
.page-services .svc-r3-chooser .inner-eyebrow{margin:0}
.page-services .svc-r3-chooser h2{font:400 clamp(36px,4.2vw,60px)/1 var(--display,'Newsreader',serif);letter-spacing:-.035em;margin:0}
.page-services .svc-r3-chooser>p{font:400 17px/1.55 var(--body,'Inter Tight',sans-serif);color:var(--muted,#515e56);margin:0;max-width:52ch}
.page-services .svc-r3-concerns{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.page-services .svc-r3-concern{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--svc-strong-line);background:var(--paper,#eeede7);color:var(--ink,#101816);font:500 15px/1.35 var(--body,'Inter Tight',sans-serif);text-align:left;cursor:pointer}
.page-services .svc-r3-concern svg{flex:none;width:18px;height:18px}
.page-services .svc-r3-start-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:auto;padding-top:8px}
.page-services .svc-r3-start-actions .inner-action{gap:10px}
.page-services .svc-r3-start-actions svg{width:18px;height:18px}
.page-services .svc-r3-figure{margin:0;display:flex;flex-direction:column}
.page-services .svc-r3-figure img{display:block;width:100%;height:100%;min-height:340px;max-height:620px;object-fit:cover;object-position:50% 50%;background:#d7dbd5}
.page-services .svc-r3-figure figcaption{padding-top:18px;font:400 22px/1.25 var(--display,'Newsreader',serif)}
.page-services .svc-r3-figure figcaption>span{display:block;max-width:46ch;font:400 14px/1.5 var(--body,'Inter Tight',sans-serif);color:var(--muted,#515e56);margin-top:8px}

/* Directory */
.page-services .svc-r3-directory{max-width:1600px;margin:auto;padding:0 var(--gutter,56px) 128px}
.page-services .svc-r3-directory-head{display:flex;justify-content:space-between;align-items:end;gap:24px;border-top:1px solid var(--ink,#101816);padding-top:24px;margin-bottom:40px}
.page-services .svc-r3-directory-head h2{font:400 clamp(40px,5vw,72px)/1 var(--display,'Newsreader',serif);letter-spacing:-.04em;margin:0}
.page-services .svc-r3-directory-head p{font:400 16px/1.5 var(--body,'Inter Tight',sans-serif);color:var(--muted,#515e56);margin:0;max-width:40ch}
.page-services .svc-r3-group{display:grid;grid-template-columns:minmax(220px,4fr) minmax(0,8fr);gap:clamp(24px,3.5vw,56px);padding:clamp(28px,3.2vw,48px);margin:0 0 24px;border:1px solid var(--svc-line)}
.page-services .svc-r3-group[data-family="yard"]{background:var(--svc-yard)}
.page-services .svc-r3-group[data-family="ground"]{background:var(--svc-ground)}
.page-services .svc-r3-group[data-family="foundation"]{background:var(--svc-found)}
.page-services .svc-r3-group[data-family="testing"]{background:var(--svc-test)}
.page-services .svc-r3-group-head{display:flex;flex-direction:column;gap:14px}
.page-services .svc-r3-family-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:1.5px solid var(--svc-deep);border-radius:50%;color:var(--svc-deep);background:#ffffff8c}
.page-services .svc-r3-family-icon svg{width:30px;height:30px}
.page-services .svc-r3-group-head h3{font:400 clamp(28px,2.6vw,38px)/1.05 var(--display,'Newsreader',serif);letter-spacing:-.025em;margin:6px 0 0}
.page-services .svc-r3-count{font:600 12px/1.4 var(--body,'Inter Tight',sans-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--muted,#515e56);margin:0}
.page-services .svc-r3-note{font:400 15px/1.55 var(--body,'Inter Tight',sans-serif);color:var(--ink,#101816);margin:0;max-width:36ch}
.page-services .svc-r3-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;align-content:start}
.page-services .svc-r3-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name go" "seen go" "meta go";column-gap:28px;row-gap:6px;align-items:center;padding:22px 24px;background:#fbfaf6;border:1px solid var(--svc-strong-line);color:inherit;text-decoration:none;min-height:44px}
.page-services .svc-r3-name{grid-area:name;font:400 clamp(22px,1.9vw,28px)/1.12 var(--display,'Newsreader',serif);letter-spacing:-.02em}
.page-services .svc-r3-seen{grid-area:seen;font:400 15px/1.5 var(--body,'Inter Tight',sans-serif);color:var(--muted,#515e56);max-width:58ch}
.page-services .svc-r3-meta{grid-area:meta;font:600 13px/1.4 var(--body,'Inter Tight',sans-serif);letter-spacing:.02em;color:var(--svc-deep);margin-top:4px}
.page-services .svc-r3-go{grid-area:go;display:inline-flex;align-items:center;gap:8px;font:600 14px/1.3 var(--body,'Inter Tight',sans-serif);letter-spacing:.03em;white-space:nowrap;padding-bottom:3px;border-bottom:1px solid currentColor}
.page-services .svc-r3-go svg{width:18px;height:18px}

/* Shared affordance details */
.page-services .svc-r3-start svg,.page-services .svc-r3-directory svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.page-services .svc-r3-card:focus-visible,.page-services .svc-r3-concern:focus-visible,.page-services .svc-r3-start-actions a:focus-visible,.page-services .svc-r3-start-actions button:focus-visible{outline:3px solid #577985;outline-offset:4px}
@media(hover:hover){
.page-services .svc-r3-card:hover{border-color:var(--ink,#101816);background:#fff}
.page-services .svc-r3-card:hover .svc-r3-name{color:var(--svc-deep)}
.page-services .svc-r3-concern:hover{border-color:var(--ink,#101816);background:#fff}
}
@media(prefers-reduced-motion:no-preference){
.page-services .svc-r3-card,.page-services .svc-r3-concern{transition:border-color .2s,background-color .2s}
.page-services .svc-r3-go svg{transition:transform .2s ease}
.page-services .svc-r3-card:hover .svc-r3-go svg,.page-services .svc-r3-card:focus-visible .svc-r3-go svg{transform:translateX(4px)}
}
@media(forced-colors:active){.page-services .svc-r3-card,.page-services .svc-r3-concern,.page-services .svc-r3-group{border:1px solid CanvasText}}

@media(max-width:1100px){
.page-services .svc-r3-start{grid-template-columns:1fr}
.page-services .svc-r3-figure img{height:auto;aspect-ratio:16/9;min-height:0}
.page-services .svc-r3-group{grid-template-columns:1fr}
.page-services .svc-r3-group-head{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:18px}
.page-services .svc-r3-group-head>div{flex:1 1 220px}
.page-services .svc-r3-note{flex-basis:100%;max-width:62ch}
}
@media(max-width:760px){
.page-services .svc-r3-start{padding-bottom:64px}
.page-services .svc-r3-concerns{grid-template-columns:1fr}
.page-services .svc-r3-directory{padding-bottom:88px}
.page-services .svc-r3-directory-head{flex-direction:column;align-items:start}
.page-services .svc-r3-group{padding:22px 16px;margin-bottom:16px}
.page-services .svc-r3-family-icon{width:48px;height:48px}
.page-services .svc-r3-family-icon svg{width:26px;height:26px}
.page-services .svc-r3-card{grid-template-columns:1fr;grid-template-areas:"name" "seen" "meta" "go";padding:18px;background:#fff}
.page-services .svc-r3-name{overflow-wrap:anywhere}
.page-services .svc-r3-go{justify-self:start;margin-top:10px}
}
