/* Compact service catalogue, extending the established RAS visual style. */
.services-overview{padding-bottom:84px}
.services-overview .service-card h2{font-size:1.3rem;letter-spacing:-.025em;margin-bottom:12px}
.service-card{display:flex;flex-direction:column}
.service-card-body{display:flex;flex-direction:column;flex:1}
.service-card-body .text-link{align-self:flex-start;margin-top:auto;font-size:.9rem}
.service-card-body p{min-height:0}
.service-card-body h2,.service-card-body h3{overflow-wrap:anywhere}
.site-header nav a.nav-current{color:var(--navy);border-bottom-color:var(--teal)}
.catalog-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:.9rem;color:var(--muted);padding-block:30px 36px}
.catalog-breadcrumb a:hover{color:var(--teal-ink);text-decoration:underline}
.catalog-breadcrumb [aria-current]{color:var(--navy)}
.catalog-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"intro browser" "photo browser" "contact browser";grid-template-rows:min-content min-content min-content;column-gap:72px;row-gap:26px;align-items:start;padding-bottom:52px}
.catalog-intro{grid-area:intro;min-width:0}
.catalog-intro .eyebrow{margin-bottom:13px;font-size:.875rem}
.catalog-intro h1{font-size:clamp(2rem,3.5vw,3.55rem);line-height:1.12;overflow-wrap:anywhere;margin-bottom:22px}
.catalog-intro .lead{font-size:1.0625rem;line-height:1.75;margin-bottom:0}
.catalog-browser{grid-area:browser;min-width:0;background:var(--surface);padding:30px;border:1px solid var(--line);border-radius:var(--radius)}
.catalog-browser>.eyebrow{font-size:.875rem;margin-bottom:12px}
.catalog-browser h2{font-size:clamp(1.55rem,2.4vw,2rem);line-height:1.2;letter-spacing:-.025em;margin-bottom:14px}
.catalog-hint{color:var(--muted);font-size:.9375rem;line-height:1.6;margin-bottom:23px}
.catalog-groups{display:flex;flex-direction:column;gap:12px}
.catalog-group{background:white;border:1px solid #d5e3eb;border-radius:10px;overflow:clip}
.catalog-group[open]{border-color:#8bc9d8;box-shadow:0 6px 18px #02284a06}
.catalog-group summary{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label toggle" "count toggle";column-gap:16px;row-gap:4px;padding:17px 18px;list-style:none;cursor:pointer;color:var(--navy);min-height:78px}
.catalog-group summary::-webkit-details-marker{display:none}
.catalog-group summary::marker{content:""}
.catalog-group summary:focus-visible{outline-offset:-4px;border-radius:9px}
.catalog-group summary:hover{background:#f2fafc}
.catalog-group[open] summary{border-bottom:1px solid var(--line);background:#edf8fb}
.catalog-group-label{grid-area:label;font-size:1rem;font-weight:700;line-height:1.45;overflow-wrap:anywhere}
.catalog-group-count{grid-area:count;font-size:.875rem;font-weight:500;line-height:1.45;color:var(--muted)}
.catalog-toggle{grid-area:toggle;align-self:center;width:28px;height:28px;background:var(--navy);border-radius:50%;position:relative;flex:none}
.catalog-toggle::before,.catalog-toggle::after{content:"";position:absolute;background:var(--teal);border-radius:2px;inset:13px 8px;height:2px}
.catalog-toggle::after{transform:rotate(90deg)}
.catalog-group[open] .catalog-toggle::after{display:none}
.catalog-group-content{padding:4px 18px 8px}
.catalog-group-content li+li{border-top:1px solid #e9eff3}
.catalog-service{display:flex;gap:16px;justify-content:space-between;align-items:center;min-height:58px;padding-block:14px;font-size:1rem;line-height:1.55}
.catalog-service>span:first-child{min-width:0;overflow-wrap:anywhere}
.catalog-service:hover{color:var(--teal-ink)}
.catalog-item-action{flex:none;font-size:.875rem;color:var(--teal-ink);font-weight:650;border-bottom:1px solid #98d6e3;line-height:1.4;padding-bottom:2px}
.catalog-photo{grid-area:photo;margin:0;border-radius:var(--radius);aspect-ratio:1.35;overflow:hidden}
.catalog-photo img{width:100%;height:100%;object-fit:cover;object-position:45% 50%}
.catalog-contact{grid-area:contact;display:flex;flex-wrap:wrap;gap:18px 24px;align-items:center}
.catalog-contact p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.65}
.catalog-contact p a{font-size:1.125rem;color:var(--navy);font-weight:700}
.catalog-related{display:flex;flex-wrap:wrap;gap:10px;padding-block:22px 64px;border-top:1px solid var(--line)}
.catalog-related>span{width:100%;font-size:1rem;font-weight:650;color:var(--navy);margin-bottom:5px}
.catalog-related a{border:1px solid var(--line);border-radius:6px;padding:9px 13px;font-size:.9rem;background:var(--surface)}
.catalog-related a:hover{border-color:#8bc9d8;background:#e3f5fa}
@media(max-width:1100px){.catalog-layout{column-gap:38px}.catalog-browser{padding:24px}}
@media(max-width:760px){.catalog-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "browser" "photo" "contact";row-gap:26px;padding-bottom:34px}.catalog-breadcrumb{padding-block:23px 29px}.catalog-browser{padding:24px}.catalog-intro h1{font-size:clamp(2rem,6vw,2.9rem)}.catalog-photo{aspect-ratio:1.55}.catalog-related{padding-bottom:40px}.services-overview{padding-bottom:50px}}
@media(max-width:430px){.catalog-browser{padding:20px 16px}.catalog-group summary{padding:15px 13px;column-gap:10px}.catalog-group-content{padding-inline:13px}.catalog-service{gap:10px}.catalog-item-action{font-size:.875rem}.catalog-related a{font-size:.875rem}.catalog-breadcrumb{font-size:.875rem}}

