/* Shared product navigation and client catalogue. Loaded after the base stylesheet. */
.products-nav{display:flex;align-items:center;gap:.2rem;position:relative}
.products-dropdown summary{display:grid;place-items:center;width:32px;height:40px;cursor:pointer;list-style:none;border-radius:6px;color:var(--blue-900)}
.products-dropdown summary::-webkit-details-marker{display:none}
.products-dropdown[open] summary{background:var(--blue-100)}
.products-submenu{position:absolute;top:100%;left:0;width:290px;padding:.65rem;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:60}
.products-submenu a{display:block;padding:.65rem .75rem;font-size:.95rem;line-height:1.4;border-radius:6px}
.products-submenu a:hover{background:var(--blue-050)}
.products-submenu a::after{display:none}
.products-nav .products-dropdown>summary{display:flex;gap:.55rem;width:auto;padding:0 .2rem;font-weight:600;font-size:inherit;font-family:inherit;color:inherit}
.products-dropdown>summary[aria-current="page"]{color:var(--blue-900)}
.products-submenu{max-height:calc(100dvh - 110px);overflow-y:auto}
.product-menu-group{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.25rem 0}
.product-menu-group+.product-menu-group{border-top:0}
.product-menu-children{padding-left:.9rem}
.product-menu-children a{font-size:.88rem;padding:.45rem .75rem;font-weight:400}
a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #2583d6;outline-offset:4px}
.mobile-nav{max-height:100dvh;overflow-y:auto}
.mobile-nav .products-nav{display:grid;grid-template-columns:1fr 44px;gap:0;width:100%}
.mobile-nav .products-dropdown{display:contents}
.mobile-nav .products-dropdown summary{grid-column:2;grid-row:1;width:44px;height:48px;color:#fff}
.mobile-nav .products-dropdown[open] summary{color:var(--blue-900)}
.mobile-nav .products-submenu{position:static;grid-column:1/-1;width:auto;box-shadow:none;background:var(--blue-050);margin-bottom:.6rem}
.mobile-nav .products-dropdown:not([open]) .products-submenu{display:none}
.mobile-nav .products-submenu a{font-size:.95rem;padding:.6rem .75rem;color:var(--blue-900)}
.mobile-nav .products-nav{display:block}
.mobile-nav .products-dropdown{display:block}
.mobile-nav .products-dropdown>summary{display:flex;justify-content:space-between;width:100%;height:auto;padding:.75rem 0;font-size:1.45rem;color:#d9eaff}
.mobile-nav .products-dropdown[open]>summary{background:transparent;color:#fff}
.mobile-nav .products-submenu{max-height:none}
.products-page .products-hero{min-height:360px}
.products-page .about-hero-content{padding:4rem 0}
.products-page .about-hero-content h1{max-width:12ch;font-size:clamp(3rem,6vw,5.5rem)}
.catalogue-intro{padding-top:4rem;padding-bottom:1rem}
.catalogue-intro h2,.catalogue-heading h2,.catalogue-contact h2{font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.15;margin:.5rem 0 1rem;color:var(--blue-950)}
.catalogue-intro>p{max-width:760px}
.catalogue-categories{display:flex;gap:.65rem;flex-wrap:wrap;margin:1.8rem 0}
.catalogue-categories a{border:1px solid var(--line);border-radius:999px;padding:.65rem 1rem;background:#fff;color:var(--blue-900);font-weight:600}
.catalogue-categories a:hover{background:var(--blue-100)}
.catalogue-section{padding-top:2.5rem;padding-bottom:1.5rem;scroll-margin-top:110px}
.anchor-target,.catalogue-card{scroll-margin-top:110px}
.catalogue-heading{margin-bottom:1.5rem}
.catalogue-heading .eyebrow{font-size:.75rem;color:var(--text-700)}
.catalogue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.catalogue-card{display:flex;flex-direction:column;overflow:hidden;background:white;border:1px solid var(--line);border-radius:16px}
.catalogue-media{margin:0;padding:1.5rem;background:#f5f7fa;min-height:310px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.catalogue-media img{width:100%;height:260px;object-fit:contain;mix-blend-mode:multiply}
.catalogue-media figcaption{font-size:.75rem;color:var(--text-700);margin-top:.7rem;text-align:center}
.catalogue-enquiry{color:var(--blue-900)}
.catalogue-enquiry span{font-size:2rem;font-weight:700}
.catalogue-enquiry a{text-decoration:underline}
.catalogue-copy{padding:1.6rem;display:flex;flex-direction:column;flex:1}
.catalogue-brand{text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:700;color:var(--blue-800);margin:0 0 .5rem}
.catalogue-copy h3{font-size:1.8rem;line-height:1.2;margin:0 0 .5rem;color:var(--blue-950)}
.catalogue-kind{margin:0 0 1rem;color:var(--text-700)}
.catalogue-copy dl{margin:0 0 1.5rem;font-size:.95rem}
.catalogue-copy dl>div{display:grid;grid-template-columns:135px 1fr;gap:1rem;padding:.65rem 0;border-top:1px solid var(--line)}
.catalogue-copy dt{color:var(--text-700)}
.catalogue-copy dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.catalogue-actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.datasheet-link{font-weight:600;color:var(--blue-800);text-decoration:underline;text-underline-offset:4px}
.catalogue-contact{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:2rem;padding:2.5rem;margin-top:3rem;margin-bottom:4rem;border-radius:16px;background:var(--blue-100)}
.catalogue-contact a[href^="mailto:"]{text-decoration:underline;overflow-wrap:anywhere}
.catalogue-contact-intro{flex:1 1 320px}
.catalogue-contact-intro h2{margin:.4rem 0 .9rem}
.catalogue-contact-intro>p{margin:0;max-width:52ch;color:var(--blue-950)}
.catalogue-contact-card{flex:0 1 340px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6rem}
.catalogue-contact-card h3{margin:0 0 1.1rem;font-size:1.1rem;color:var(--blue-950)}
.catalogue-contact-card dl{margin:0 0 1.4rem;display:grid;gap:.9rem}
.catalogue-contact-card dl>div{display:grid;gap:.15rem}
.catalogue-contact-card dt{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-700)}
.catalogue-contact-card dd{margin:0;font-weight:600;color:var(--blue-950);overflow-wrap:anywhere}
.catalogue-contact-card dd a{color:var(--blue-800)}
.catalogue-contact-card .btn{width:100%}
.contact-details{padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:var(--blue-050)}
.contact-details h2{margin-top:0}.contact-details a{color:var(--blue-800);overflow-wrap:anywhere}
.contact-details dl{margin:1.1rem 0 0;display:grid;gap:.9rem}
.contact-details dl>div{display:grid;gap:.15rem}
.contact-details dt{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-700)}
.contact-details dd{margin:0;font-weight:600;color:var(--blue-950);overflow-wrap:anywhere}
.contact-details-note{margin:1.2rem 0 0;color:var(--text-700);font-size:.9rem}
.contact-copy .eyebrow,.catalogue-intro .eyebrow,.catalogue-contact .eyebrow{color:var(--blue-800)}
.contact .contact-form{max-width:850px;margin:2rem auto 0}
@media(max-width:700px){.catalogue-grid{grid-template-columns:1fr}.catalogue-contact{flex-direction:column;align-items:flex-start;padding:1.5rem}.catalogue-contact-card{width:100%}.catalogue-copy{padding:1.2rem}.catalogue-copy dl>div{grid-template-columns:110px 1fr;gap:.6rem}.products-page .products-hero{min-height:270px}.catalogue-media img{height:220px}.catalogue-media{min-height:270px}.catalogue-intro{padding-top:2.5rem}}
