/* Scoped to the revised home and the EPGS-6-10 sample page. */
.gs2 { --gs2-ink:#132b45; --gs2-muted:#526377; --gs2-blue:#0758dc; --gs2-line:#dce4ed; --gs2-pale:#f2f6fb; color:var(--gs2-ink); font-size:16px; line-height:1.65; }
.gs2 *, .gs2 *::before, .gs2 *::after { box-sizing:border-box; }
.gs2 a { text-decoration:none; }
.gs2 a:focus-visible, .gs2 button:focus-visible, .gs2 summary:focus-visible { outline:3px solid #4489fb; outline-offset:5px; }
.gs2 h1, .gs2 h2, .gs2 h3, .gs2 p, .gs2 dl { margin:0; }
.gs2 h1, .gs2 h2, .gs2 h3 { color:var(--gs2-ink); font-weight:650; letter-spacing:-.035em; line-height:1.14; }
.gs2 h2 { font-size:clamp(30px,3vw,42px); }
.gs2 h3 { font-size:21px; }
.gs2 p { color:var(--gs2-muted); }
.gs2 p + p { margin-top:16px; }
.gs2 img { display:block; max-width:100%; height:auto; }
.gs2-wrap { width:min(1180px,calc(100% - 80px)); margin-inline:auto; }
.gs2-section { padding-block:80px; scroll-margin-top:24px; }
.gs2-eyebrow { display:block; color:var(--gs2-blue); font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.13em; line-height:1.5; margin-bottom:16px; }
.gs2-actions { display:flex; gap:20px; align-items:center; flex-wrap:wrap; margin-top:28px; }
.gs2 .gs2-button { display:inline-flex; gap:28px; justify-content:center; align-items:center; min-height:50px; padding:13px 22px; background:var(--gs2-blue); border:1px solid var(--gs2-blue); border-radius:6px; color:#fff; font-size:14px; font-weight:700; line-height:1.4; transition:background .15s; }
.gs2 .gs2-button:hover { background:#0344b0; color:#fff; }
.gs2 .gs2-button-outline { border-color:#6c7e96; background:transparent; }
.gs2 .gs2-button-outline:hover { background:#243d5b; }
.gs2 .gs2-text-link { color:var(--gs2-blue); font-size:14px; font-weight:700; line-height:1.5; }
.gs2 .gs2-text-link:hover { text-decoration:underline; }
.gs2-section-heading { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:32px; }
.gs2-section-heading > p { max-width:370px; font-size:15px; }
.gs2-step { display:block; color:var(--gs2-blue); font-size:13px; font-weight:700; letter-spacing:.08em; margin-bottom:24px; }
.gs2-home { width:100%; max-width:none !important; margin-inline:0; }
.home .entry-content { margin-top:0; }
.home .inside-article { padding:0; }
.gs2-hero { position:relative; isolation:isolate; display:flex; align-items:center; min-height:calc(100svh - 84px); background:#10253e; color:#fff; padding:62px 0 56px; overflow:hidden; }
.gs2 .gs2-banner-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
.gs2-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(5,12,24,.94) 0%,rgba(5,12,24,.82) 30%,rgba(5,12,24,.36) 55%,rgba(5,12,24,.06) 78%); }
.gs2-hero-grid { display:block; }
.gs2-hero-copy { width:min(660px,58%); }
.gs2-hero .gs2-eyebrow { color:#9cbfff; }
.gs2-hero h1 { color:#fff; font-size:clamp(40px,4.8vw,66px); font-weight:550; letter-spacing:-.045em; margin-bottom:22px; }
.gs2-hero-copy > p { color:#c6d3e3; max-width:530px; font-size:17px; line-height:1.7; }
.gs2-hero-facts { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:38px; padding-top:22px; border-top:1px solid #3b4f67; color:#b7c8dc; font-size:11px; }
.gs2-hero-facts strong { color:#fff; font-size:18px; margin-right:5px; }
.gs2-hero-facts > span:last-child { flex-basis:100%; }
.gs2-hero-product { display:block; border-radius:10px; background:#fff; color:var(--gs2-ink); overflow:hidden; box-shadow:0 20px 60px #06111e50; }
.gs2-product-caption { display:flex; justify-content:space-between; padding:18px 24px 0; color:#526377; font-size:12px; }
.gs2-hero-product > img { width:100%; height:300px; object-fit:contain; padding:12px 35px; }
.gs2-hero-product-bottom { display:flex; justify-content:space-between; gap:15px; padding:20px 24px; border-top:1px solid var(--gs2-line); }
.gs2-hero-product-bottom span { display:block; font-size:10px; color:#526377; margin-bottom:5px; }
.gs2-hero-product-bottom strong { display:block; color:var(--gs2-ink); font-size:17px; }
.gs2-paths { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--gs2-line); border-radius:8px; overflow:hidden; }
.gs2-path { display:flex; flex-direction:column; padding:28px 24px; color:var(--gs2-ink); background:#fff; }
.gs2-path + .gs2-path { border-left:1px solid var(--gs2-line); }
.gs2-path h3 { margin-bottom:12px; }
.gs2-path p { font-size:14px; margin-bottom:26px; }
.gs2-path:hover { background:var(--gs2-pale); }
.gs2-path-footer { display:flex; justify-content:space-between; margin-top:auto; color:var(--gs2-blue); font-size:12px; font-weight:700; }
.gs2-model-section { background:var(--gs2-pale); }
.gs2-model-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.gs2-model-card { border:1px solid var(--gs2-line); border-radius:8px; background:#fff; overflow:hidden; }
.gs2-model-image { display:block; background:#fff; border-bottom:1px solid var(--gs2-line); }
.gs2-model-image img { width:100%; height:210px; padding:22px; object-fit:contain; }
.gs2-model-copy { padding:22px 20px; }
.gs2-model-copy .gs2-eyebrow { margin-bottom:8px; }
.gs2-model-copy h3 { font-size:21px; }
.gs2-model-copy h3 a { color:var(--gs2-ink); }
.gs2-model-copy > p { font-size:12px; margin-top:8px; min-height:40px; }
.gs2-spec-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:24px 0 !important; }
.gs2-spec-tiles > div { min-width:0; }
.gs2-spec-tiles dt { margin:0 0 3px; font-size:10px; font-weight:500; color:var(--gs2-muted); }
.gs2-spec-tiles dd { margin:0; color:var(--gs2-ink); font-size:16px; font-weight:700; overflow-wrap:anywhere; line-height:1.5; }
.gs2-model-copy .gs2-spec-tiles dd { font-size:13px; }
.gs2-process { display:grid; grid-template-columns:1fr 1fr; gap:100px; }
.gs2-process > div > p { max-width:400px; margin:20px 0 24px; }
.gs2-steps { list-style:none; margin:0; padding:0; }
.gs2-steps li { display:flex; gap:24px; padding:24px 0; border-top:1px solid var(--gs2-line); }
.gs2-steps li > span { color:var(--gs2-blue); font-size:12px; font-weight:700; padding-top:4px; }
.gs2-steps h3 { margin-bottom:10px; }
.gs2-steps p { font-size:14px; }
.gs2-resource-section { background:var(--gs2-pale); }
.gs2-resources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.gs2-resources > a, .gs2-resources > article { display:block; padding:28px; border:1px solid var(--gs2-line); background:#fff; border-radius:8px; }
.gs2-resources h3 { margin-bottom:14px; }
.gs2-resources p { font-size:14px; }
.gs2-resources .gs2-text-link { display:block; margin-top:24px; }
.gs2-faq { display:grid; grid-template-columns:1fr 1.3fr; gap:70px; }
.gs2-faq details { border-top:1px solid var(--gs2-line); padding:19px 0; }
.gs2-faq details:last-child { border-bottom:1px solid var(--gs2-line); }
.gs2-faq summary { cursor:pointer; font-weight:650; font-size:16px; padding-right:12px; }
.gs2-faq details p { margin-top:15px; font-size:14px; }
.gs2-bottom-cta { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:40px 44px; margin-bottom:72px; border-radius:10px; background:#10253e; }
.gs2-bottom-cta h2 { color:#fff; font-size:34px; }
.gs2-bottom-cta .gs2-eyebrow { color:#9cbfff; }
.gs2-bottom-cta p { color:#c6d3e3; margin-top:14px; }
.gs2-anchor { display:block; scroll-margin-top:24px; }
.gs2-product { background:#fff; width:100%; }
.gs2-breadcrumb { display:flex; gap:12px; padding-top:28px; font-size:12px; color:var(--gs2-muted); }
.gs2-breadcrumb a { color:var(--gs2-blue); }
.gs2-product-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:72px; padding:34px 0 55px; }
.gs2-product-media { min-width:0; }
.gs2-main-image { border:1px solid var(--gs2-line); border-radius:8px; overflow:hidden; background:#fff; }
.gs2-main-image img { width:100%; height:360px; padding:25px; object-fit:contain; }
.gs2-gallery { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:12px; }
.gs2-thumb { display:block; padding:5px; border:1px solid var(--gs2-line); border-radius:5px; background:#fff; cursor:pointer; min-height:54px; }
.gs2-thumb[aria-pressed="true"] { border-color:var(--gs2-blue); box-shadow:inset 0 0 0 1px var(--gs2-blue); }
.gs2-thumb img { width:100%; height:50px; object-fit:contain; }
.gs2-product-intro h1 { font-size:clamp(36px,4vw,54px); }
.gs2-product-intro h1 span { display:block; margin-top:8px; font-size:25px; font-weight:500; letter-spacing:-.02em; color:var(--gs2-muted); }
.gs2-product-intro > p { margin-top:22px; }
.gs2-product-intro .gs2-spec-tiles { gap:0; border-block:1px solid var(--gs2-line); }
.gs2-product-intro .gs2-spec-tiles > div { padding:16px 12px 16px 0; }
.gs2-product-intro .gs2-spec-tiles dt { font-size:11px; }
.gs2-product-intro .gs2-spec-tiles dd { font-size:21px; }
.gs2-product-intro .gs2-small { font-size:12px; }
.gs2-product-nav { border-block:1px solid var(--gs2-line); background:#fff; }
.gs2-product-nav > div { display:flex; gap:36px; overflow:auto; }
.gs2-product-nav a { display:block; padding:19px 0; font-size:13px; font-weight:700; color:var(--gs2-ink); white-space:nowrap; }
.gs2-product-nav a:hover { color:var(--gs2-blue); }
.gs2-product-spec-section { display:grid; grid-template-columns:1fr 1.25fr; gap:70px; }
.gs2-product-spec-section p { margin:20px 0 24px; }
.gs2-spec-table-wrap { border:1px solid var(--gs2-line); border-radius:8px; overflow:hidden; }
.gs2 .gs2-spec-table { border-collapse:collapse; border:0; width:100%; margin:0; font-size:14px; table-layout:fixed; }
.gs2-spec-table caption { text-align:left; background:var(--gs2-pale); padding:18px 22px; font-size:12px; font-weight:700; }
.gs2 .gs2-spec-table th, .gs2 .gs2-spec-table td { padding:14px 22px; border:0; border-bottom:1px solid var(--gs2-line); text-align:left; overflow-wrap:anywhere; }
.gs2-spec-table th { font-weight:500; color:var(--gs2-muted); width:55%; }
.gs2-spec-table td { font-weight:650; }
.gs2-spec-table tr:last-child th, .gs2-spec-table tr:last-child td { border-bottom:0; }
.gs2-file-list { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 24px; padding:0; border:1px solid var(--gs2-line); border-radius:8px; }
.gs2-file-list li { display:flex; gap:18px; padding:26px 24px; }
.gs2-file-list li + li { border-left:1px solid var(--gs2-line); }
.gs2-file-list li > span { color:var(--gs2-blue); font-size:12px; font-weight:700; }
.gs2-file-list h3 { font-size:18px; margin-bottom:10px; }
.gs2-file-list p { font-size:13px; }
.gs2-inquiry-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:start; }
.gs2-inquiry-layout h2 { margin-bottom:22px; }
.gs2-inquiry-layout > div > .gs2-text-link { display:inline-block; margin-top:24px; }
.gs2-inquiry-layout .gs-inquiry-form { margin:0; padding:28px; border:1px solid var(--gs2-line); box-shadow:none; background:#fff; border-radius:8px; }
.gs2-related { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.gs2-related > a { display:flex; align-items:center; gap:24px; padding:24px; border:1px solid var(--gs2-line); border-radius:8px; color:var(--gs2-ink); }
.gs2-related img { width:90px; height:90px; object-fit:contain; }
.gs2-related > a > span > span { display:block; margin-top:8px; color:var(--gs2-blue); font-size:13px; }
@media (max-width:1100px) {
 .gs2-hero-grid { gap:35px; }
 .gs2-model-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gs2-paths { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gs2-path:nth-child(3) { border-left:0; }
 .gs2-path:nth-child(n+3) { border-top:1px solid var(--gs2-line); }
 .gs2-product-hero, .gs2-product-spec-section, .gs2-inquiry-layout { gap:36px; }
 .gs2-process { gap:45px; }
}
@media (max-width:767px) {
 .gs2-wrap { width:calc(100% - 36px); }
 .gs2-section { padding-block:48px; }
 .gs2-hero { padding:38px 0 32px; min-height:calc(100svh - 66px); }
 .gs2-hero-copy { width:100%; }
 .gs2 .gs2-banner-image { object-position:74% center; }
 .gs2-hero::before { background:linear-gradient(90deg,rgba(5,12,24,.92),rgba(5,12,24,.62)); }
 .gs2-hero-grid { grid-template-columns:1fr; gap:30px; }
 .gs2-hero h1 { font-size:43px; }
 .gs2-hero-copy > p { font-size:15px; }
 .gs2-eyebrow { font-size:10px; margin-bottom:12px; }
 .gs2-actions { gap:12px; margin-top:22px; }
 .gs2-actions .gs2-button { flex:1 1 auto; padding-inline:16px; font-size:13px; }
 .gs2-hero-facts { margin-top:24px; gap:8px 20px; padding-top:18px; }
 .gs2-hero-facts > span:last-child { flex-basis:auto; }
 .gs2-hero-product > img { height:225px; padding:15px 30px; }
 .gs2-hero-product-bottom { padding:16px 20px; }
 .gs2-section-heading { display:block; margin-bottom:24px; }
 .gs2-section-heading > p, .gs2-section-heading > a { display:block; margin-top:18px; }
 .gs2-path { padding:24px 18px; }
 .gs2-path h3 { font-size:19px; }
 .gs2-path p { font-size:13px; }
 .gs2-step { margin-bottom:18px; }
 .gs2-model-grid { gap:12px; }
 .gs2-model-image img { height:150px; padding:15px; }
 .gs2-model-copy { padding:18px 14px; }
 .gs2-model-copy h3 { font-size:18px; overflow-wrap:anywhere; }
 .gs2-model-copy > p { min-height:60px; }
 .gs2-model-copy .gs2-spec-tiles { grid-template-columns:1fr; gap:10px; }
 .gs2-model-copy .gs2-spec-tiles dd { font-size:13px; }
 .gs2-process, .gs2-faq { grid-template-columns:1fr; gap:28px; }
 .gs2-resources { grid-template-columns:1fr; gap:14px; }
 .gs2-resources > a, .gs2-resources > article { padding:24px; }
 .gs2-bottom-cta { display:block; padding:28px 24px; margin-bottom:48px; }
 .gs2-bottom-cta h2 { font-size:30px; }
 .gs2-bottom-cta .gs2-button { margin-top:24px; }
 .gs2-product-hero { grid-template-columns:1fr; gap:28px; padding-block:25px 38px; }
 .gs2-product-intro { grid-row:1; }
 .gs2-product-intro h1 { font-size:40px; }
 .gs2-product-intro > p { font-size:15px; }
 .gs2-product-intro .gs2-spec-tiles { margin-block:18px !important; }
 .gs2-product-intro .gs2-spec-tiles > div { padding-block:12px; }
 .gs2-main-image img { height:290px; }
 .gs2-product-nav > div { gap:24px; }
 .gs2-product-spec-section, .gs2-inquiry-layout { grid-template-columns:1fr; gap:28px; }
 .gs2-file-list { grid-template-columns:1fr; }
 .gs2-file-list li + li { border-left:0; border-top:1px solid var(--gs2-line); }
 .gs2-spec-table th, .gs2-spec-table td { padding:13px 16px !important; }
 .gs2-inquiry-layout .gs-inquiry-form { padding:20px; }
 .gs2-related { grid-template-columns:1fr; gap:14px; }
 .gs2-related > a { padding:18px; }
}
@media (prefers-reduced-motion:reduce) { .gs2 * { transition:none !important; } }
