/* Catalog components use the same product anatomy and editorial tokens as the homepage. */
.catalog-page .catalog-intro{gap:7%;padding:40px 0 32px}
.catalog-page .catalog-intro aside{position:relative;padding:30px;background:#f3f6f4;border:1px solid var(--line);border-radius:3px;overflow:hidden}
.catalog-page:not([data-catalog-brand=""]) .catalog-intro aside{justify-content:center;gap:24px}
.catalog-page .catalog-intro aside:has(.catalog-intro-image){padding:0;border:0;min-height:310px}
.catalog-intro-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.catalog-intro-caption{position:relative;z-index:1;margin-top:auto;padding:28px;color:white;background:linear-gradient(transparent,#172127b0);font-size:25px;line-height:1.3;letter-spacing:-.5px}
.catalog-page .catalog-assurance{gap:18px 32px;border:0;padding:18px 0 30px;font-size:15px;color:#53666e}
.catalog-page .catalog-assurance>span{display:flex;align-items:center;gap:10px;line-height:24px}
.catalog-page .catalog-assurance span:before{display:none}
.catalog-assurance .icon{width:25px;height:25px;flex:none;color:#244957}
.catalog-page .catalog-brand-tile{padding:20px 18px;gap:16px;min-height:104px;background:#f7f9f6;border-color:#e0e7e1;border-radius:2px;transition:background .25s,border-color .25s,transform .25s}
.catalog-page .catalog-brand-tile>.brand-emblem{width:56px;height:48px}
.catalog-page .catalog-brand-tile strong{font-size:17px;line-height:24px}
.catalog-page .catalog-brand-tile:hover{background:#eff4f0;border-color:#a3b6ae;transform:translateY(-3px)}
.catalog-page .catalog-code-links{gap:16px;padding:22px 0 34px}
.catalog-page .catalog-code-links button{padding:10px 0 8px;min-width:72px;text-align:left;background:none;border:0;border-top:1px solid #cdd8d5;line-height:28px;font-size:22px}
.catalog-page .catalog-code-links button:hover{border-color:var(--blue)}
.catalog-page .catalog-filters.finder-tool{padding:24px;background:#f4f6f4;border:1px solid #dce4e0;border-radius:3px;gap:16px;margin-bottom:28px}
.catalog-page .catalog-filters.finder-tool label{margin:0}
.catalog-page .catalog-filters.finder-tool label>span{font-size:14px;line-height:22px;color:#53686f;margin-bottom:8px}
.catalog-page .catalog-filters.finder-tool input,.catalog-page .catalog-filters.finder-tool select{min-height:52px;height:52px;font-size:15px;padding:12px 14px;border-color:#cfdad6;border-radius:2px}
.catalog-page .catalog-filters.finder-tool .catalog-query input{padding-left:42px}
.catalog-page .catalog-query .icon{top:16px}
.catalog-page .catalog-products{align-items:stretch;gap:24px}
.catalog-page .engine-card{border:0;border-radius:3px;box-shadow:none;overflow:visible;min-width:0}
.catalog-page .engine-card .product-front{position:static;inset:auto;height:100%;display:flex;flex-direction:column;overflow:hidden;border:1px solid #d8e0e0;border-radius:3px;backface-visibility:visible;transform:none;transition:border-color .25s,box-shadow .25s}
.catalog-page .engine-card:hover .product-front{border-color:#91abdc;box-shadow:0 12px 32px #213c440c}
.catalog-page .engine-card .product-stage{position:relative;flex:none;min-height:0;height:250px;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#fff 0%,#eef2f1 72%,#e7edec 100%)}
.catalog-page .engine-card .product-stage:after{content:'';position:absolute;left:22%;right:22%;bottom:27px;height:15px;border-radius:50%;background:#17212718;filter:blur(14px);z-index:0}
.catalog-page .engine-card .new-label{font-size:13px;line-height:20px;padding:5px 9px;top:12px;right:12px;border:1px solid #e4ebe4;background:#f9fbf9e6;border-radius:2px}
.catalog-page .engine-card .stage-code{left:20px;bottom:32px;color:#647b841a;font-size:clamp(62px,6.2vw,100px);letter-spacing:-4px;z-index:0}
.catalog-page .engine-photo{position:absolute;inset:0;aspect-ratio:auto;background:none;display:flex;align-items:center;justify-content:center;overflow:visible;z-index:1}
.catalog-page .engine-photo>img{position:static;width:100%;height:100%;padding:27px 30px 37px;object-fit:contain;background:none;filter:drop-shadow(0 10px 7px #24363b0e);transition:transform .35s;z-index:1}
.catalog-page .engine-card:hover .engine-photo>img{transform:translateY(-4px) scale(1.035)}
.catalog-page .engine-card .photo-open{position:absolute;left:20px;bottom:7px;z-index:3;display:flex;align-items:center;gap:8px;min-height:32px;font-size:14px;line-height:22px;padding:3px 0;color:#43636d}
.catalog-page .engine-card .photo-open .icon{width:19px;height:19px;flex:none}
.catalog-page .engine-card .photo-open:hover{color:var(--blue)}
.catalog-page .engine-card .product-info{flex:1;padding:18px 20px 16px;min-height:142px}
.catalog-page .engine-card .product-title{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}
.catalog-page .engine-card .product-title>div{min-width:0}
.catalog-page .engine-card .product-title .eyebrow{font-size:13px;line-height:20px;letter-spacing:.4px;overflow-wrap:anywhere}
.catalog-page .engine-card h3{font-size:34px;line-height:40px;font-weight:500;letter-spacing:-1px;margin:0;overflow-wrap:anywhere}
.catalog-page .engine-card .engine-emblem{width:56px;height:44px;flex:none;display:flex;align-items:center;justify-content:center}
.catalog-page .engine-card .engine-emblem img{width:100%;height:100%;object-fit:contain;max-height:42px}
.catalog-page .engine-wordmark{font-size:12px;font-weight:700;letter-spacing:-.4px;color:#637a73;text-align:center}
.catalog-page .engine-card .product-specs{font-size:14px;line-height:22px;gap:12px;margin-top:9px;color:#65727b;align-items:start}
.catalog-page .engine-card .product-specs>span:first-child{white-space:nowrap}
.catalog-page .engine-card .product-specs>span+span{padding-left:12px}
.catalog-page .engine-application{font-size:13px;line-height:21px;color:#7a8a8e;min-height:0;margin:7px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.catalog-page .engine-card .product-purchase{padding:15px 20px;min-height:88px;display:flex;align-items:center;gap:12px;justify-content:space-between;border-top:1px solid #e4e9e8;background:white}
.catalog-page .engine-card .product-purchase strong{display:block;font-size:28px;line-height:34px;letter-spacing:-.6px;font-weight:600;white-space:nowrap}
.catalog-page .engine-card .product-purchase small{display:block;font-size:13px;line-height:21px;color:#7a8a8e;margin-top:3px}
.catalog-page .engine-card .product-cta{min-height:46px;padding:11px 14px;font-size:15px;line-height:22px}
.catalog-page .catalog-empty{padding:44px 32px;background:#f4f6f4;border:1px solid #dce4e0;border-radius:3px}
.catalog-page .catalog-help{background:#e9f0f0;border:1px solid #d5e0df;border-radius:3px;padding:32px 36px}
.catalog-page .catalog-help h2{font-size:clamp(30px,3vw,40px);letter-spacing:-1px;margin:14px 0}
.catalog-page .catalog-help p{font-size:17px;line-height:28px;color:#53666f}
.catalog-page .catalog-help .eyebrow{color:#476975}
.catalog-page .catalog-help .button{background:white;color:var(--ink);border-color:#cbd9d9;gap:12px}
.catalog-page .catalog-help .button:hover{background:var(--blue);color:white;border-color:var(--blue)}
.engine-dialog-photo{position:relative;flex-direction:column;gap:12px;background:radial-gradient(ellipse at 50% 50%,#fff,#eef2f1 72%,#e7edec);min-width:0}
.engine-dialog-photo img{min-height:0;flex:1}
.engine-photo-switch{flex:none;display:flex;gap:24px;width:100%;justify-content:center;border-top:1px solid #d9e3df;padding-top:16px;font-size:14px}
.engine-photo-switch button{padding:4px 0;border-bottom:2px solid transparent}
.engine-photo-switch button[aria-pressed=true]{color:var(--blue);border-bottom-color:var(--blue)}
.engine-dialog-info .button .icon{width:20px;height:20px;flex:none}
@media(max-width:1200px){.catalog-page .engine-card .product-stage{height:235px}.catalog-page .engine-card .product-info{padding:16px}.catalog-page .engine-card .product-purchase{padding:15px 16px}.catalog-page .engine-card .product-purchase strong{font-size:26px}.catalog-page .engine-card .product-cta{padding-inline:12px;font-size:14px}.catalog-page .catalog-filters.finder-tool{gap:14px;padding:22px}}
@media(max-width:960px){.catalog-page .engine-card .product-stage{height:260px}.catalog-page .catalog-help{padding:30px}.catalog-page .catalog-brand-tile{padding:18px 14px;gap:12px}.catalog-page .catalog-brand-tile strong{font-size:15px}.catalog-page .catalog-intro-caption{font-size:22px;padding:24px}}
@media(max-width:760px){.catalog-page .catalog-intro{padding:28px 0 20px}.catalog-page .catalog-intro aside{display:none}.catalog-page .catalog-assurance{padding:20px 0 26px;gap:12px 20px;font-size:13px}.catalog-assurance .icon{width:22px;height:22px}.catalog-page .catalog-products{gap:18px}.catalog-page .engine-card .product-stage{height:220px}.catalog-page .engine-card .product-info{min-height:140px;padding:16px}.catalog-page .engine-card h3{font-size:31px;line-height:38px}.catalog-page .engine-card .product-title .eyebrow{font-size:12px}.catalog-page .engine-card .engine-emblem{width:48px;height:38px}.catalog-page .engine-card .product-specs{font-size:12px;line-height:20px;gap:9px}.catalog-page .engine-card .product-specs>span+span{padding-left:9px}.catalog-page .engine-application{font-size:12px;line-height:20px}.catalog-page .engine-card .product-purchase{padding:14px 16px;flex-wrap:wrap;gap:10px}.catalog-page .engine-card .product-cta{width:100%;min-height:42px;justify-content:center}.catalog-page .catalog-filters.finder-tool{padding:20px;gap:16px}.catalog-page .catalog-filters.finder-tool input,.catalog-page .catalog-filters.finder-tool select{font-size:14px}.catalog-page .catalog-help{padding:28px;gap:24px}.catalog-page .catalog-help .button{max-width:none}.catalog-page .catalog-brand-tile{min-height:92px;padding:14px 12px;gap:10px}.catalog-page .catalog-brand-tile>.brand-emblem{width:42px;height:40px}.catalog-page .catalog-brand-tile strong{font-size:14px}.engine-dialog-photo{height:320px}.engine-dialog-photo img{max-height:240px}.engine-photo-switch{padding-top:12px}}
@media(max-width:580px){.catalog-page .catalog-products{grid-template-columns:1fr}.catalog-page .engine-card .product-stage{height:270px}.catalog-page .engine-card .stage-code{font-size:90px}.catalog-page .engine-card .product-info{min-height:0;padding:18px 20px}.catalog-page .engine-card .product-title .eyebrow{font-size:13px}.catalog-page .engine-card .product-specs{font-size:14px;line-height:22px}.catalog-page .engine-card .product-purchase{padding:15px 20px;flex-wrap:nowrap}.catalog-page .engine-card .product-cta{width:auto;font-size:14px;min-height:46px}.catalog-page .engine-card .product-purchase strong{font-size:27px}.catalog-page .catalog-help{padding:26px}.catalog-page .catalog-help .button{white-space:normal;text-align:center;font-size:14px}.catalog-page .catalog-filters.finder-tool{padding:18px}.catalog-page .engine-card .engine-emblem{width:56px;height:44px}}
@media(max-width:380px){.catalog-page .catalog-brand-grid{grid-template-columns:1fr}.catalog-page .catalog-brand-tile{gap:18px;padding:16px}.catalog-page .catalog-brand-tile strong{font-size:16px}.catalog-page .catalog-brand-tile .brand-wordmark{display:block;font-size:12px;width:42px}.catalog-page .engine-card .product-purchase{padding:14px 16px;gap:8px}.catalog-page .engine-card .product-purchase strong{font-size:25px}.catalog-page .engine-card .product-cta{padding-inline:10px}.catalog-page .engine-card .product-info{padding-inline:16px}.catalog-page .catalog-filters.finder-tool{grid-template-columns:1fr}.catalog-page .catalog-filters.finder-tool label{grid-column:1/-1}.catalog-page .catalog-filters.finder-tool select{font-size:15px}.catalog-page .catalog-intro h1{font-size:34px}}
@media(max-width:580px){.catalog-page .catalog-filters.finder-tool label:has(select[name=sort]){grid-column:1/-1}.catalog-page .catalog-filters.finder-tool .filter-reset{padding:0;line-height:24px;justify-self:start}}
@media(max-height:450px){.engine-dialog-photo{height:auto;min-height:280px}}
@media(prefers-reduced-motion:reduce){.catalog-page .engine-card img,.catalog-page .engine-card .product-front,.catalog-page .catalog-brand-tile{transition:none}.catalog-page .catalog-brand-tile:hover,.catalog-page .engine-card:hover .engine-photo>img{transform:none}}
