/* Shared menu rhythm: product images for products, text-led paths for audiences. */
:is(.home-page,.marketing-page) .fmw-nav-panel-paths{padding:23px 0 28px;max-height:calc(100dvh - 92px);overflow-y:auto}
:is(.home-page,.marketing-page) .fmw-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
:is(.home-page,.marketing-page) .fmw-route-card{display:flex;flex-direction:column;min-width:0;min-height:226px;padding:22px;border:1px solid #dce7eb;border-radius:13px;background:#f9fbfc}
:is(.home-page,.marketing-page) .fmw-route-index{display:block;color:#5c7b88;font:800 11px/1.3 Manrope,system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase}
:is(.home-page,.marketing-page) .fmw-route-card h3{margin:27px 0 9px;color:#21323c;font:750 21px/1.25 Manrope,system-ui,sans-serif;letter-spacing:-.025em}
:is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-route-card p{margin:0 0 18px;color:#536d78;font:450 14px/1.5 Manrope,system-ui,sans-serif;letter-spacing:0;text-transform:none}
:is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-route-card>a{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:40px;margin-top:auto;padding:8px 15px;border:1px solid #416f80;border-radius:8px;background:#416f80;color:#fff;font:750 13px/1.3 Manrope,system-ui,sans-serif;text-decoration:none}
:is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-route-card>a:hover{background:#315d6f;border-color:#315d6f;color:#fff}
:is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-menu-head>a{display:inline;min-height:0;padding:4px 0;border:0;border-radius:0;background:none;color:#315e70;font-size:13px;font-weight:750;text-decoration:underline;text-underline-offset:4px}
:is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-menu-head>a:hover{background:none;border:0;color:#1d3945}

/* The case panel starts at the header rule and anchors the hero visually. */
@media(min-width:901px){
 .home-page .fmw-hero-grid{grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);align-items:stretch;gap:clamp(26px,4vw,58px);padding-top:0;padding-bottom:0}
 .home-page .fmw-hero-copy{align-self:center;padding-block:clamp(58px,6.4vw,100px)}
 .home-page .fmw-hero-art{display:flex;flex-direction:column;align-self:stretch}
 .home-page .fmw-hero-art picture{height:100%;min-height:clamp(440px,46vw,620px);aspect-ratio:auto;border-top:0;border-radius:0 0 7px 7px;background:#edf2f3}
 .home-page .fmw-hero-art img{object-fit:cover}
 .home-page .fmw-hero-art figcaption{margin:10px 0 17px}
}
@media(min-width:721px) and (max-width:900px){
 .home-page .fmw-hero-grid{padding-top:0}
 .home-page .fmw-hero-copy{padding-top:56px}
 .home-page .fmw-hero-art picture{aspect-ratio:1.7}
}
@media(max-width:880px){
 :is(.home-page,.marketing-page) .fmw-nav-panel-paths{max-height:none;overflow:visible;padding:10px 0 17px}
 :is(.home-page,.marketing-page) .fmw-route-gallery{padding-inline:7px}
 :is(.home-page,.marketing-page) .fmw-route-grid{grid-template-columns:1fr;gap:9px}
 :is(.home-page,.marketing-page) .fmw-route-card{min-height:0;padding:16px 17px}
 :is(.home-page,.marketing-page) .fmw-route-card h3{margin:8px 0 4px;font-size:17px}
 :is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-route-card p{display:block;margin-bottom:12px;font-size:13px}
 :is(.home-page,.marketing-page) .fmw-nav-panel-paths .fmw-route-card>a{min-height:38px;padding:7px 12px}
}
@media(max-width:720px){.home-page .fmw-hero-grid{padding-top:34px}.home-page .fmw-hero-art picture{height:auto;min-height:0;aspect-ratio:1.18;border:1px solid #d5dfe2;border-radius:6px}}
