/* GOFIVAL integrated homepage: component-scoped, no changes to the approved engineering-b variant. */
.gfi-categories,.gfi-products{background:#f3f4f5;color:#101b33;padding:28px 0}
.gfi-categories{padding-block:18px}.gfi-categories .gfi-section-head{margin-bottom:12px}
.gfi-categories>.container,.gfi-products>.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:24px}
.gfi-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 16px}
.gfi-section-head>div{flex:0 0 auto}.gfi-section-head>div>p{font-size:11px;line-height:1.4;letter-spacing:.08em;color:#4d5968;font-weight:600;margin:0 0 4px}
.gfi-section-head h2{font-size:27px;line-height:1.2;letter-spacing:-.02em;margin:0;color:#041d8c}
.gfi-section-head>p{font-size:14px;line-height:1.4;color:#4d5968;margin:0;max-width:58ch}.gfi-section-head>a{color:#041d8c;min-height:44px;display:inline-flex;align-items:center;font-size:14px;font-weight:600;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.gfi-category-grid{display:grid;grid-template-columns:repeat(var(--gfi-columns,4),minmax(0,1fr));max-width:var(--gfi-grid-max,1248px);gap:16px}.gfi-category-card{position:relative;height:190px;overflow:hidden;border:1px solid #d8dde4;border-radius:6px;background:#3a4654}.gfi-category-image{position:absolute;inset:0;background:#43515e}.gfi-category-image img{display:block;width:100%;height:100%;object-fit:contain}.gfi-category-placeholder{position:absolute;inset:0;background:#43515e}.gfi-category-hit{position:absolute;inset:0;z-index:1}.gfi-category-hit:focus-visible{outline:3px solid #fff;outline-offset:-4px}.gfi-category-overlay{position:absolute;z-index:2;pointer-events:none;inset:auto 0 0;padding:10px 12px;background:linear-gradient(0deg,rgba(5,13,25,.9),rgba(5,13,25,.68));backdrop-filter:blur(9px) saturate(115%);color:#fff}.gfi-category-overlay h3{margin:0 0 4px;font-size:14px;font-weight:600;line-height:1.2;overflow-wrap:normal}.gfi-category-overlay h3 a,.gfi-category-overlay li a{color:#fff;text-decoration:none}.gfi-category-overlay h3 a:focus-visible,.gfi-category-overlay li a:focus-visible{outline:2px solid #fff;outline-offset:2px}.gfi-category-overlay{max-height:100%;overflow-y:auto}.gfi-category-children{pointer-events:auto}.gfi-category-children summary{font-size:12px;line-height:1.35;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.gfi-category-overlay ul{list-style:none;display:grid;gap:4px;padding:8px 0 0;margin:0}.gfi-category-overlay li{font-size:12px;line-height:1.35}.gfi-category-overlay li a{text-decoration:underline;text-underline-offset:2px}
.gfi-products{padding-top:28px;padding-bottom:36px}.gfi-product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.gfi-product-card{min-width:0;background:#fff;border:1px solid #d8dde4;border-radius:6px;overflow:hidden}.gfi-product-card>a{display:block;height:100%;color:#101b33;text-decoration:none}.gfi-product-card>a:focus-visible{outline:3px solid #041d8c;outline-offset:-3px}.gfi-product-image{height:150px;padding:9px;display:flex;align-items:center;justify-content:center;background:#fff}.gfi-product-image img{display:block;width:100%;height:100%;object-fit:contain}.gfi-product-image span{font-size:12px;color:#4d5968}.gfi-product-copy{padding:10px 12px 13px}.gfi-product-copy h3{font-size:16px;line-height:1.25;color:#041d8c;margin:0 0 5px;overflow-wrap:anywhere}.gfi-product-copy p{font-size:13px;line-height:1.35;color:#4d5968;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}
.gfv-page-content .gfi-semantic-icons .gfh-section-head .gfh-eyebrow,.gfv-page-content .gfv-updates .gfh-section-head .gfh-eyebrow{color:#4d5968}
body.home .site-footer .footer-bottom span{color:#4d5968}
.gfi-semantic-icons .gfh-capability-grid>a>p{text-wrap:pretty}
.gfi-semantic-icons .gfh-capability-grid>a>span{width:44px;height:44px;display:grid;place-items:center;border-radius:6px;background:#edf1fa;color:#041d8c}.gfi-semantic-icons .gfh-capability-grid>a>span svg{display:block;width:24px;height:24px}
@media(hover:hover) and (pointer:fine){.gfi-product-card:hover,.gfi-category-card:hover{border-color:#041d8c}.gfi-category-overlay a:hover{text-decoration:underline}.gfi-product-card:hover h3{text-decoration:underline}}
@media(max-width:1279px){.gfi-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gfi-product-image{height:140px}}
@media(max-width:1023px){.gfi-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023px){.gfi-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.gfi-categories,.gfi-products{padding-block:24px}.gfi-categories>.container,.gfi-products>.container{padding-inline:20px}.gfi-section-head{align-items:start;flex-wrap:wrap;gap:8px}.gfi-section-head>p{width:100%}.gfi-section-head h2{font-size:23px}.gfi-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gfi-product-image{height:130px}.gfi-product-copy{padding:9px 10px 11px}.gfi-product-copy h3{font-size:14px}.gfi-product-copy p{font-size:12px}.gfi-category-grid{gap:12px}.gfi-category-card{height:150px}.gfi-category-overlay{padding:8px}.gfi-category-overlay h3{font-size:13px}.gfi-category-overlay li{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gfi-product-card,.gfi-category-card{transition:none}}

/* Homepage category cards: restrained overlay and readable titles. */
.gfi-categories .gfi-section-head{margin-bottom:12px}
.gfi-category-card{height:190px;box-shadow:0 3px 12px rgba(15,23,42,.08);transition:border-color 160ms ease-out}
.gfi-category-image img{object-fit:contain}
.gfi-category-overlay{min-height:78px;max-height:none;overflow:visible;display:flex;flex-direction:column;justify-content:center;padding:10px 12px;background:linear-gradient(0deg,rgba(5,13,25,.88),rgba(5,13,25,.64));backdrop-filter:blur(5px);pointer-events:none}
.gfi-category-overlay h3{font-size:15px;font-weight:600;line-height:1.25;margin:0;overflow-wrap:normal}
.gfi-category-count{font-size:12px;line-height:1.3;margin:4px 0 0;color:#fff}
@media(max-width:767px){.gfi-category-card{height:160px}.gfi-category-overlay{min-height:76px;padding:8px}.gfi-category-overlay h3{font-size:13px;line-height:1.25}.gfi-category-count{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gfi-category-card{transition:none}}

.gfi-category-image,.gfi-category-placeholder{background:#111923}

