.c-service-search { padding-bottom: var(--wp--preset--spacing--space-8); }
.c-service-categories { display: grid; gap: var(--wp--preset--spacing--space-4); margin-bottom: var(--wp--preset--spacing--space-8); }
.c-service-categories a { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 1.25rem; border: 1px solid var(--wp--preset--color--border); border-radius: 1rem; font-weight: 700; text-decoration: none; }
.c-service-filter-title { font-size: var(--wp--preset--font-size--body); margin-bottom: 1rem; }
.c-service-filters, .c-service-tags { display: flex; flex-wrap: wrap; gap: .5rem; }
.c-service-filters button { padding: .65rem 1.2rem; min-height: 44px; border: 1px solid var(--wp--preset--color--control-border); border-radius: 999px; background: white; color: var(--hri-primary); font: inherit; cursor: pointer; }
.c-service-filters button[aria-pressed="true"] { background: var(--hri-primary); color: white; font-weight: 700; }
.c-service-filters button:hover { box-shadow: 0 0 0 1px var(--hri-primary); }
.c-service-search .c-note { margin-top: 1rem; }
.c-service-list { padding-block: var(--wp--preset--spacing--space-10); }
.c-service-row { display: grid; gap: var(--wp--preset--spacing--space-6); padding: var(--wp--preset--spacing--space-4); margin-bottom: var(--wp--preset--spacing--space-6); background: var(--wp--preset--color--surface); border-radius: var(--hri-radius); align-items: center; }
.c-service-row[hidden] { display: none; }
.c-service-row > * { min-width: 0; }
.c-service-row .c-photo { aspect-ratio: 3 / 2; }
.c-service-row__body { padding: var(--wp--preset--spacing--space-2); }
.c-service-row h2 { font-size: var(--hri-h3); margin-bottom: .6rem; }
.c-service-row h3 { margin-bottom: .6rem; }
.c-service-lead { color: var(--hri-primary); font-weight: 700; margin-bottom: .5rem; }
.c-service-tags { margin-block: 1rem; }
.c-service-row .c-button { max-width: 100%; white-space: normal; margin-top: .5rem; }
.c-service-logo { width: 220px; height: auto; max-width: 100%; object-fit: contain; margin-bottom: 1rem; }
.c-service-row--detail { border: 1px solid var(--wp--preset--color--border); scroll-margin-top: 110px; }
.c-service-flow { display: grid; gap: 1.5rem; padding: 0; list-style: none; }
.c-service-flow li { padding: 1.25rem; border-top: 1px solid var(--wp--preset--color--border); }
.c-service-number { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 50%; color: var(--hri-primary); background: var(--wp--preset--color--lavender); font-weight: 700; margin-bottom: 1rem; }
.c-service-flow h3 { margin-bottom: .5rem; }
.c-service-faq { padding: 1.25rem 0; border-bottom: 1px solid var(--wp--preset--color--border); }
.c-service-faq summary { min-height: 44px; cursor: pointer; font-weight: 700; color: var(--hri-ink); }
.c-service-faq p { margin-top: 1rem; }
@media (min-width: 768px) { .c-service-categories { grid-template-columns: repeat(3,minmax(0,1fr)); } .c-service-row { grid-template-columns: minmax(0,5fr) minmax(0,7fr); padding: 1.5rem; } .c-service-flow { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; } }
.c-construction-hero .c-construction-brand { color: #c82430; font-size: clamp(1.6rem, 3vw, 2.3rem); letter-spacing: .14em; margin-bottom: 1rem; }
.c-construction-hero .c-eyebrow { margin-bottom: 1rem; }
.c-construction-logo { width: 260px; height: auto; max-width: 100%; margin-bottom: 1rem; }
.c-construction-tile { background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--border); border-radius: var(--hri-radius); padding: 1.5rem; display: flex; align-items: flex-start; gap: 1rem; }
.c-construction-tile h3 { font-size: 1.15rem; margin-bottom: .75rem; }
.c-construction-icon { color: var(--hri-primary); flex-shrink: 0; }
.c-construction-icon svg { width: 36px; height: 36px; }
.c-construction-creative { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem; margin-top: 1.5rem; padding: 1.5rem; background: white; border-radius: var(--hri-radius); }
.c-construction-creative h3 { margin-bottom: .5rem; }

.c-new-graduate-hero .c-construction-brand{color:#0865b9;font-style:italic;letter-spacing:-.04em}.c-new-graduate-hero .c-photo{border-radius:36px;overflow:hidden}

.c-rpo-hero .c-construction-brand{color:var(--color-navy,#1c1b50);font-size:clamp(1.8rem,3.4vw,3rem)}.c-rpo-hero .c-photo{border-radius:36px;overflow:hidden}

/* Provided logos keep their original proportions. */
.c-service-logo{max-height:150px;object-position:left center}.c-construction-logo{max-height:160px;object-fit:contain;object-position:left center}
