/* Capturing the header makes a separate plane and interrupts backdrop optics. */
@view-transition{navigation:none}
.site-header{view-transition-name:none}
.site-header nav a[aria-current]{text-decoration:none}
.site-header nav a[aria-current]::after{transform:scaleX(1)}
.floating-back-top{z-index:20}
html.page-leaving main,html.page-leaving .page-world{opacity:1;transition:none}
html.page-bridge::after{content:'';position:fixed;inset:0;z-index:29;background:#f6f8f4;opacity:0;pointer-events:none;transition:opacity .44s cubic-bezier(.22,.7,.2,1);will-change:opacity}
html.page-arriving::after,html.page-departing::after{opacity:1;pointer-events:auto}
html.page-departing::after{transition-duration:.20s}
html.page-arriving::before{content:'';position:fixed;z-index:31;left:calc(50% - 38px);top:52%;width:76px;height:2px;border-radius:2px;background:#78966b;transform-origin:left;animation:navigation-breathe 1.2s ease-in-out infinite alternate;pointer-events:none}
@keyframes navigation-breathe{from{opacity:.2;transform:scaleX(.35)}to{opacity:.65;transform:scaleX(1)}}
html.page-returning .world canvas{transition:none}
/* The marker belongs to its line, not the stretched heading grid. */
.services .section-heading>.kicker{align-self:start;justify-self:start;align-items:center;padding-top:6px}
/* Input tool, list caption and service rows have different visual roles. */
.catalogue-search{margin:0 0 48px;padding:25px 28px 28px;border-radius:20px;background:#e2ecd8;box-shadow:inset 0 1px 0 #f9fcf5}
.catalogue-search label{font-size:14px;font-weight:450;color:#426142;margin-bottom:3px}
.catalogue-search-control{padding-top:8px;padding-bottom:10px;border-bottom-color:#91aa83}
.catalogue-result-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;row-gap:8px;align-items:baseline;border:0;padding:0 0 24px;margin:0;background:none;cursor:default}
.catalogue-result-heading h2{font-size:21px;font-weight:450;letter-spacing:-.025em;line-height:1.35}
.catalogue-result-heading p{grid-column:1;margin:0;font-size:14px;line-height:1.55;color:#647963;max-width:none}
#catalogue-count{grid-column:2;grid-row:1/3;align-self:center;padding:0;background:none;border-radius:0;font-size:13px;color:#72816e;font-variant-numeric:tabular-nums}
.catalogue-list{border-top:2px solid #507346}
.catalogue-service:first-child{padding-top:29px}
@media(max-width:600px){
 .catalogue-search{padding:19px 20px 22px;margin-bottom:34px;border-radius:16px}
 .catalogue-result-heading{column-gap:14px;padding-bottom:20px}
 .catalogue-result-heading h2{font-size:20px}
 .catalogue-result-heading p{font-size:13px}
 #catalogue-count{font-size:12px}
}
@media(prefers-reduced-motion:reduce){html.page-bridge::after{transition:none}html.page-arriving::before{animation:none;opacity:.4}}

/* v14: the route question joins the accepted firm/light heading rhythm. */
.route-copy h2{font-weight:210;font-variation-settings:'SHRP' 95;letter-spacing:-.045em;color:#406c48}
.route-copy h2::first-line,.route-copy h2>.sm-line:first-of-type{font-weight:520;font-variation-settings:'SHRP' 28;letter-spacing:-.055em;color:var(--ink)}
@media(max-width:780px){.route-copy h2{font-weight:240}}
