body:has(.maz-catalog),body:has(.maz-catalog-single) { --catalog-ink:#142f45; --catalog-blue:#185678; --catalog-paper:#f4f3ef; --catalog-line:#dfe4e5; --catalog-muted:#62717a; }
body:has(.maz-catalog) .maz-topline,body:has(.maz-catalog-single) .maz-topline { background:var(--catalog-ink); }
body:has(.maz-catalog) .maz-header-cta,body:has(.maz-catalog-single) .maz-header-cta { background:var(--catalog-blue); border-color:var(--catalog-blue); text-transform:none; }
.maz-catalog,.maz-catalog-single { color:var(--catalog-ink); }
.maz-catalog .maz-shell,.maz-catalog-single .maz-shell { width:min(1200px,calc(100% - 80px)); }
.maz-catalog .maz-eyebrow,.maz-catalog-single .maz-eyebrow { color:#557385; font-size:11px; letter-spacing:.18em; }
.maz-catalog .maz-button,.maz-catalog-single .maz-button { border-radius:3px; padding:15px 22px; background:var(--catalog-blue); border-color:var(--catalog-blue); text-transform:none; box-shadow:none; }
.maz-catalog-hero { overflow:hidden; padding:56px 0 0; background:linear-gradient(135deg,#f4f3ef 0%,#edf2f4 100%); }
.maz-catalog-hero .maz-breadcrumbs { margin-bottom:34px; color:var(--catalog-muted); font-size:12px; }
.maz-catalog-hero-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(500px,1.08fr); align-items:center; gap:62px; padding-bottom:56px; }
.maz-catalog-hero-copy { position:relative; z-index:2; padding:28px 0 8px; }
.maz-catalog-hero h1 { margin:17px 0 24px; max-width:12ch; font-size:clamp(54px,5.6vw,82px); line-height:.98; letter-spacing:-.057em; font-weight:680; text-transform:none; }
.maz-catalog-hero h1 em { color:#547283; font-family:Georgia,serif; font-weight:400; }
.maz-catalog-hero-copy > p:not(.maz-eyebrow) { max-width:590px; margin:0 0 28px; color:var(--catalog-muted); font-size:16px; line-height:1.75; }
.maz-catalog-hero-actions { display:flex; align-items:center; gap:28px; }
.maz-catalog-hero-actions .maz-text-link { font-size:13px; }
.maz-catalog-proof { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin:42px 0 0; padding:20px 0 0; border-top:1px solid #ced9dd; list-style:none; }
.maz-catalog-proof li { display:grid; gap:4px; padding-right:16px; }
.maz-catalog-proof strong { color:var(--catalog-ink); font-size:16px; }
.maz-catalog-proof span { color:#71818a; font-size:11px; letter-spacing:.02em; }
.maz-catalog-hero-visual { position:relative; min-height:530px; }
.maz-catalog-hero-visual::before { position:absolute; inset:36px 0 26px 48px; border-radius:8px; background:var(--catalog-ink); content:""; }
.maz-catalog-hero-visual figure { position:absolute; overflow:hidden; margin:0; border:6px solid #fff; border-radius:7px; background:#e5eaeb; box-shadow:0 22px 50px rgba(20,47,69,.18); }
.maz-catalog-hero-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.maz-catalog-hero-main { z-index:2; left:0; top:0; width:66%; height:82%; }
.maz-catalog-hero-small { z-index:3; right:0; width:39%; height:40%; }
.maz-catalog-hero-small--top { top:8%; }
.maz-catalog-hero-small--bottom { bottom:5%; }
.maz-catalog-hero-badge { position:absolute; z-index:4; left:8%; bottom:1%; display:grid; gap:3px; min-width:205px; padding:17px 20px; border-radius:4px; background:#fff; box-shadow:0 12px 28px rgba(20,47,69,.16); }
.maz-catalog-hero-badge span { color:#617985; font-size:10px; font-weight:750; letter-spacing:.14em; text-transform:uppercase; }
.maz-catalog-hero-badge strong { font-size:16px; }
.maz-catalog-nav { display:flex; flex-wrap:wrap; gap:0; border-top:1px solid #d5dcdd; }
.maz-catalog-nav a { flex:1 1 180px; padding:20px 18px; border-right:1px solid #d5dcdd; color:var(--catalog-ink); font-size:13px; font-weight:650; text-align:center; }
.maz-catalog-nav a:first-child { border-left:1px solid #d5dcdd; }
.maz-catalog-nav a:hover { background:#fff; color:var(--catalog-blue); }
.maz-catalog-group { padding:82px 0; scroll-margin-top:110px; }
.maz-catalog-group:nth-of-type(odd) { background:#f7f8f8; }
.maz-catalog-group-head { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:50px; margin-bottom:34px; }
.maz-catalog-group-head h2 { margin:10px 0 0; font-size:clamp(34px,4vw,52px); line-height:1.1; letter-spacing:-.045em; }
.maz-catalog-group-head > p { color:var(--catalog-muted); font-size:15px; line-height:1.7; }
.maz-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.maz-catalog-card { overflow:hidden; border:1px solid var(--catalog-line); border-radius:6px; background:#fff; transition:transform .25s ease,box-shadow .25s ease; }
.maz-catalog-card-media { display:block; overflow:hidden; aspect-ratio:1/1; background:#f2f2ef; }
.maz-catalog-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.maz-catalog-card-body { padding:24px; }
.maz-catalog-card h3 { margin:0 0 12px; font-size:20px; line-height:1.25; }
.maz-catalog-card h3 a { color:var(--catalog-ink); }
.maz-catalog-card p { min-height:76px; margin-bottom:20px; color:var(--catalog-muted); font-size:14px; line-height:1.65; }
.maz-catalog-card .maz-text-link { font-size:12px; text-transform:none; }
.maz-catalog-cta { padding:75px 0; background:var(--catalog-ink); color:#fff; }
.maz-catalog-cta .maz-shell { display:grid; grid-template-columns:1fr auto; align-items:center; gap:40px; }
.maz-catalog-cta .maz-eyebrow { color:#b7ceda; }
.maz-catalog-cta h2 { margin:12px 0; color:#fff; font-size:clamp(32px,4vw,48px); letter-spacing:-.04em; }
.maz-catalog-cta p { max-width:700px; color:#c5d2d9; }
.maz-catalog-cta .maz-button--light { background:#fff; border-color:#fff; color:var(--catalog-ink); }
.maz-product-detail { padding:72px 0 86px; background:var(--catalog-paper); }
.maz-catalog-single .maz-product-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.92fr); gap:72px; align-items:start; }
.maz-catalog-single .maz-product-image { overflow:hidden; margin:0; border-radius:6px; background:#fff; box-shadow:0 18px 48px rgba(20,47,69,.1); }
.maz-catalog-single .maz-product-image img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.maz-catalog-single .maz-product-image figcaption { padding:16px 20px; color:var(--catalog-muted); font-size:12px; }
.maz-product-copy .maz-breadcrumbs { margin-bottom:34px; color:var(--catalog-muted); font-size:12px; }
.maz-product-copy h1 { margin:12px 0 20px; font-size:clamp(42px,5vw,68px); line-height:1.03; letter-spacing:-.05em; text-transform:none; }
.maz-product-copy .maz-lede { color:var(--catalog-muted); font-size:17px; line-height:1.7; }
.maz-catalog-single .maz-specs { margin:32px 0; border-top:1px solid #d5dcdd; }
.maz-catalog-single .maz-spec { display:grid; grid-template-columns:135px 1fr; gap:20px; padding:17px 0; border-bottom:1px solid #d5dcdd; }
.maz-catalog-single .maz-spec dt { color:#516b7a; font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.maz-catalog-single .maz-spec dd { margin:0; color:#334c5b; font-size:14px; line-height:1.6; }
.maz-product-actions { display:flex; align-items:center; gap:26px; }
.maz-product-actions .maz-text-link { font-size:13px; }
.maz-product-context { padding:80px 0; background:#fff; }
.maz-product-context h2 { max-width:18ch; margin:12px 0 24px; font-size:clamp(34px,4vw,50px); line-height:1.12; letter-spacing:-.04em; }
.maz-product-benefits,.maz-product-customize,.maz-product-process,.maz-related-products { padding:88px 0; }
.maz-product-benefits { background:#fff; }
.maz-product-customize { background:#eef2f3; }
.maz-product-process { background:var(--catalog-ink); color:#fff; }
.maz-related-products { background:#f7f8f8; }
.maz-detail-heading { display:grid; grid-template-columns:1fr minmax(280px,.7fr); align-items:end; gap:64px; margin-bottom:40px; }
.maz-detail-heading h2,.maz-related-head h2 { max-width:16ch; margin:10px 0 0; font-size:clamp(34px,4vw,52px); line-height:1.08; letter-spacing:-.045em; }
.maz-detail-heading > p,.maz-detail-heading--split > p { margin:0; color:var(--catalog-muted); font-size:16px; line-height:1.75; }
.maz-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--catalog-line); }
.maz-benefit-card { min-height:250px; padding:34px; border-right:1px solid var(--catalog-line); background:#fff; }
.maz-benefit-card:last-child { border-right:0; }
.maz-benefit-card span,.maz-process-grid span { display:block; margin-bottom:42px; color:#69889a; font-size:12px; font-weight:750; letter-spacing:.14em; }
.maz-benefit-card h3,.maz-process-grid h3,.maz-custom-detail-grid h3 { margin:0 0 12px; font-size:21px; line-height:1.25; }
.maz-benefit-card p,.maz-process-grid p,.maz-custom-detail-grid p { margin:0; color:var(--catalog-muted); font-size:14px; line-height:1.7; }
.maz-custom-detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.maz-custom-detail-grid article { overflow:hidden; background:#fff; border-radius:6px; }
.maz-custom-detail-grid img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.maz-custom-detail-grid article > div { padding:25px; }
.maz-custom-detail-grid small { display:block; margin-bottom:12px; color:#557385; font-size:11px; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.maz-product-process .maz-detail-heading { margin-bottom:48px; }
.maz-product-process .maz-eyebrow { color:#a8c2d0; }
.maz-product-process .maz-detail-heading h2 { color:#fff; }
.maz-process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0; border-top:1px solid rgba(255,255,255,.25); list-style:none; }
.maz-process-grid li { padding:30px 28px 8px 0; }
.maz-process-grid span { margin-bottom:50px; color:#8fb0c1; }
.maz-process-grid h3 { color:#fff; }
.maz-process-grid p { color:#bdcbd2; }
.maz-related-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:36px; }
.maz-product-quote { background:#fff; }
.maz-product-quote .maz-lede { margin-bottom:30px; }
@media(hover:hover) {
 .maz-catalog-card:hover { transform:translateY(-5px); box-shadow:0 18px 38px rgba(20,47,69,.12); }
 .maz-catalog-card:hover img { transform:scale(1.035); }
}
@media(max-width:900px) {
 .maz-catalog .maz-shell,.maz-catalog-single .maz-shell { width:calc(100% - 48px); }
 .maz-catalog-hero-grid,.maz-catalog-group-head { grid-template-columns:1fr; gap:38px; }
 .maz-catalog-hero-visual { min-height:470px; }
 .maz-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .maz-catalog-single .maz-product-layout { gap:42px; }
 .maz-detail-heading { grid-template-columns:1fr; gap:20px; }
 .maz-custom-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .maz-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .maz-catalog .maz-shell,.maz-catalog-single .maz-shell { width:calc(100% - 40px); }
 .maz-catalog-hero { padding-top:44px; }
 .maz-catalog-hero .maz-breadcrumbs { margin-bottom:32px; }
 .maz-catalog-hero h1 { font-size:49px; }
 .maz-catalog-hero-grid { padding-bottom:42px; }
 .maz-catalog-hero-copy { display:flex; flex-direction:column; padding-top:0; }
 .maz-catalog-hero-visual { order:-1; min-height:345px; margin:0 -20px; }
 .maz-catalog-hero-visual::before { inset:28px 0 18px 38px; }
 .maz-catalog-hero-main { width:69%; height:84%; }
 .maz-catalog-hero-small { width:40%; height:41%; border-width:4px; }
 .maz-catalog-hero-badge { left:7%; min-width:178px; padding:14px 16px; }
 .maz-catalog-hero-actions { flex-wrap:wrap; gap:22px; }
 .maz-catalog-proof { margin-top:32px; }
 .maz-catalog-proof strong { font-size:14px; }
 .maz-catalog-proof span { font-size:10px; }
 .maz-catalog-nav { display:grid; grid-template-columns:1fr 1fr; }
 .maz-catalog-nav a { padding:15px 8px; border-bottom:1px solid #d5dcdd; font-size:12px; }
 .maz-catalog-group { padding:56px 0; }
 .maz-catalog-grid { grid-template-columns:1fr; }
 .maz-catalog-card p { min-height:0; }
 .maz-catalog-cta .maz-shell { grid-template-columns:1fr; }
 .maz-catalog-single .maz-product-layout { grid-template-columns:1fr; }
 .maz-catalog-single .maz-product-image { order:-1; }
 .maz-product-detail { padding:0 0 56px; }
 .maz-product-copy { padding-top:10px; }
 .maz-product-copy h1 { font-size:45px; }
 .maz-catalog-single .maz-spec { grid-template-columns:1fr; gap:6px; }
 .maz-product-actions { flex-wrap:wrap; }
 .maz-product-benefits,.maz-product-customize,.maz-product-process,.maz-related-products { padding:58px 0; }
 .maz-benefit-grid,.maz-custom-detail-grid,.maz-process-grid { grid-template-columns:1fr; }
 .maz-benefit-card { min-height:0; border-right:0; border-bottom:1px solid var(--catalog-line); }
 .maz-benefit-card:last-child { border-bottom:0; }
 .maz-benefit-card span,.maz-process-grid span { margin-bottom:26px; }
 .maz-process-grid li { padding:26px 0; border-bottom:1px solid rgba(255,255,255,.18); }
 .maz-related-head { display:grid; gap:22px; }
}
@media(prefers-reduced-motion:reduce) {
 .maz-catalog-card,.maz-catalog-card-media img { transition:none!important; }
}
