/* Topic interaction verified from the user's 4.23-second recording.
   Caption expands inside a fixed card; the grid never reflows on hover. */
body.home #categories{padding:64px 48px 72px;max-width:1536px;margin:0 auto;box-sizing:border-box}
body.home #categories .t1-section-header{text-align:center;margin:0 0 32px}
body.home #categories .t1-section-title{font-size:32px;margin:0 0 12px}
body.home #categories .t1-section-desc{max-width:780px;margin:0 auto;font-size:15px}
body.home .zx-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 28px;align-items:stretch}
body.home .zx-category-card{display:block;position:relative;isolation:isolate;container-type:inline-size;min-width:0;aspect-ratio:1;min-height:0;background:#071a2a;border:1px solid #243e51;border-radius:6px;overflow:hidden;text-decoration:none;box-sizing:border-box;box-shadow:0 3px 12px #112d4010;transition:border-color .25s,box-shadow .25s}
body.home .zx-category-media{position:absolute;inset:0;width:100%;height:100%;background:#071a2a;z-index:0}
body.home .zx-category-media img{display:block;box-sizing:border-box;width:100%;height:100%;object-fit:contain;padding:0;transform:none}
body.home .zx-category-copy{position:absolute;inset:auto 0 0;z-index:1;margin:0;padding:10px 34px 10px 14px;display:block;background:rgba(22,47,67,.62);border:0;border-top:1px solid #ffffff26;border-radius:0;box-sizing:border-box;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:background-color .25s}
body.home .zx-category-copy h3{font-family:'Space Grotesk',Arial,sans-serif;font-size:16px;white-space:normal;font-weight:600;line-height:1.3;letter-spacing:0;color:white;text-shadow:0 1px 4px #0008;margin:0;min-height:2.6em;display:flex;align-items:center;overflow-wrap:normal}
body.home .zx-category-copy p{font-size:13px;line-height:1.55;color:#f0f6fa;margin:0;max-height:0;opacity:0;overflow:hidden;transform:translateY(6px);transition:max-height .28s ease,opacity .2s ease,margin-top .28s ease,transform .28s ease}
body.home .zx-category-number,body.home .zx-category-link{display:none}
body.home .zx-category-card::after{content:'\2192';position:absolute;right:0;bottom:0;width:36px;height:36px;z-index:2;background:#db5f11;color:#fff;clip-path:polygon(100% 0,100% 100%,0 100%);font:18px/48px Arial,sans-serif;text-align:right;padding-right:4px;box-sizing:border-box;pointer-events:none}
body.home .zx-category-card:focus-visible{outline:3px solid #db5f11;outline-offset:4px}
body.home .zx-category-card:focus-visible .zx-category-copy{background:rgba(65,103,132,.78)}
body.home .zx-category-card:focus-visible .zx-category-copy p{max-height:7em;opacity:1;margin-top:6px;transform:none}
@media(hover:hover) and (pointer:fine){
body.home .zx-category-card:hover{border-color:#db5f11;box-shadow:0 0 0 1px #db5f1155,0 7px 22px #db5f1126}
body.home .zx-category-card:hover .zx-category-copy{background:rgba(65,103,132,.78)}
body.home .zx-category-card:hover .zx-category-copy p{max-height:7em;opacity:1;margin-top:6px;transform:none}
}
@supports not (backdrop-filter:blur(3px)){body.home .zx-category-copy{background:#16364deb}}
@media(min-width:1600px){body.home .zx-hero-split{padding-left:max(48px,calc((100vw - 1504px)/2));padding-right:max(48px,calc((100vw - 1504px)/2))}}
@media(max-width:1200px){body.home .zx-hero-split{gap:28px;padding:40px 28px}body.home .zx-hero-copy h1{font-size:38px;letter-spacing:-1px}body.home .zx-hero-copy>p{font-size:14px}body.home .zx-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}body.home #categories{padding:48px 28px 56px}}
@media(max-width:760px){body.home .zx-hero-split{grid-template-columns:1fr;gap:28px;padding:34px 20px}body.home .zx-hero-copy{max-width:none}body.home .zx-hero-copy h1{font-size:38px}body.home .zx-hero-copy>p{max-width:none}body.home .zx-kicker{font-size:9px;letter-spacing:.7px;margin-bottom:18px}body.home #categories{padding:40px 20px 48px}body.home #categories .t1-section-title{font-size:28px}body.home .zx-category-grid{gap:24px}}
@media(max-width:600px){body.home .zx-category-grid{grid-template-columns:1fr;gap:24px}body.home .zx-category-copy h3{font-size:16px;min-height:2.6em}body.home .zx-category-copy{padding:12px 38px 12px 16px}body.home .zx-hero-actions{gap:18px}body.home .zx-hero-copy h1{font-size:36px}}
@media(hover:none),(pointer:coarse){body.home .zx-category-copy p{max-height:none;opacity:1;margin-top:6px;transform:none}}
@media(prefers-reduced-motion:reduce){body.home .zx-category-card,body.home .zx-category-copy,body.home .zx-category-copy p{transition:none}}


/* Move the whole marked heading group, including the eyebrow. */
body.home .zx-hero-banner .zx-hero-heading{transform:translateY(40px)}
@media(max-width:600px){body.home .zx-hero-banner .zx-hero-heading{transform:translateY(24px)}}
/* Unified homepage typography, alignment and interaction states. */
body.home :is(h1,h2,h3,h4,h5,p,a,button,input,textarea,label,summary){font-family:'Noto Sans',Arial,sans-serif}
body.home :is(.t1-section-header,.t1-section-desc,.t1-adv-item,.t1-brands-title,.t1-brand-list,.zx-hero-heading,.zx-hero-bottom,.zx-category-copy,.t1-product-info){text-align:center}
body.home .t1-section-desc{margin-left:auto;margin-right:auto;max-width:780px}
body.home .t1-adv-icon{margin-left:auto;margin-right:auto}
body.home .t1-brand-list{justify-content:center}
body.home .t1-section,body.home .t1-brands{box-sizing:border-box;max-width:1536px;margin-left:auto;margin-right:auto}
body.home a,body.home button,body.home summary{transition:color .2s,background-color .2s,border-color .2s,box-shadow .2s,transform .2s}
body.home a:not(.zx-category-card):not(.t1-product-img):hover{color:#db5f11}
body.home .site-nav a{display:inline-block;transform-origin:center}
body.home .site-nav a:hover,body.home .site-nav a:focus-visible{color:#db5f11;transform:scale(1.08)}
body.home :is(.header-cta,.t1-btn-primary,.button-primary,.t1-inquiry-btn):hover{background:#db5f11;color:#fff!important;box-shadow:inset 0 0 0 1px #ffffff55,0 0 0 3px #db5f1126,0 5px 18px #db5f1133}
body.home :is(a,button,summary):focus-visible{outline:3px solid #e8792a;outline-offset:4px}
body.home :is(button,.header-cta,.t1-btn-primary,.t1-inquiry-btn):active{transform:translateY(1px)}
body.home :is(.t1-product-name a,.t1-brand-item,.contact-direct a,.zx-footer-legal a):hover{text-decoration:underline;text-underline-offset:4px}
body.home .t1-product-img:hover img{filter:brightness(1.04)}
body.home .mobile-nav summary:hover{color:#db5f11}
body.home .zx-category-copy h3{font-family:'Noto Sans',Arial,sans-serif;font-size:16px;line-height:1.3;min-height:2.6em}
body.home .zx-hero-banner{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box;aspect-ratio:8/5;min-height:640px;max-height:1000px;padding:40px 48px 30px;background:#071c2b;overflow:hidden}
body.home .zx-hero-background{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:contain}
body.home .zx-hero-banner::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#031320b3 0%,#03132033 27%,transparent 38%,transparent 72%,#031320b3 100%)}
body.home .zx-hero-heading{max-width:880px;width:100%;margin-left:auto;margin-right:auto}
body.home .zx-hero-banner .zx-kicker{color:#ffceaa;font-size:11px;font-weight:600;letter-spacing:1px;margin:0 0 14px}
body.home .zx-hero-banner h1{color:white;font-size:clamp(34px,3.5vw,58px);font-weight:700;line-height:1.12;letter-spacing:-.8px;margin:0;text-shadow:0 2px 15px #00132270}
body.home .zx-hero-bottom{max-width:960px;width:100%;margin-left:auto;margin-right:auto}
body.home .zx-hero-bottom>p{color:#f1f5f8;font-size:15px;line-height:1.6;margin:0 0 16px;text-shadow:0 1px 5px #001322}
body.home .zx-hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px}
body.home .zx-hero-actions a{font-size:14px;padding:12px 22px;line-height:1.5;box-sizing:border-box;text-decoration:none;border-radius:5px}
body.home .zx-banner-secondary{color:#fff;background:#09283e66;border:1px solid #ffffff85}
body.home .zx-banner-secondary:hover{background:#ffffff24;color:#fff!important;border-color:#fff}
body.home .zx-hero-bottom small{display:block;color:#d6e2ea;font-size:10px;line-height:1.5;margin-top:12px}
@media(min-width:901px){body.home .zx-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}}
@media(max-width:900px){body.home .zx-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.home .zx-hero-banner{min-height:650px;aspect-ratio:auto;padding:32px 28px 26px}body.home .zx-hero-banner h1{font-size:38px}}
@media(max-width:600px){body.home .zx-category-grid{grid-template-columns:1fr}body.home .zx-hero-banner{min-height:700px;padding:28px 20px 24px}body.home .zx-hero-banner h1{font-size:34px}body.home .zx-hero-banner .zx-kicker{font-size:9px}body.home .zx-hero-bottom>p{font-size:14px}body.home .zx-hero-actions a{padding:11px 14px;font-size:13px}}
@media(prefers-reduced-motion:reduce){body.home :is(a,button,summary){transition:none}body.home .site-nav a:hover,body.home .site-nav a:focus-visible{transform:none}}

/* Center presentation text; keep form fields readable and operable. */
body.home .zx-category-copy h3{justify-content:center;text-align:center}
body.home .quote-form,body.home .quote-form label,body.home .quote-form .form-note{text-align:left}
body.home .zx-footer-intro .contact-direct{width:100%;max-width:100%;margin-left:0;margin-right:0;text-align:left}
body.home .zx-category-card:focus-visible .zx-category-copy h3,body.home .zx-category-card:hover .zx-category-copy h3{color:#ffbd87}
body.home .zx-banner-secondary:hover,body.home .zx-banner-secondary:focus-visible{color:#ffd3b0!important;border-color:#db5f11;background:#db5f1126;box-shadow:0 0 0 2px #db5f1126}
body.home :is(.header-cta,.t1-btn-primary,.button-primary,.t1-inquiry-btn):focus-visible{background:#db5f11;color:#fff}

/* Review markers: left-align only the RFQ intro and lower the hero title. */
body.home .zx-unified-footer .zx-footer-intro,body.home .zx-unified-footer .zx-footer-intro :is(h2,p){text-align:left}
body.home .zx-footer-intro .zx-footer-brand{margin-left:0;margin-right:0}
body.home .zx-hero-banner #home-title{margin-top:24px}
@media(max-width:600px){body.home .zx-hero-banner #home-title{margin-top:16px}}
