:root{--ink:#102a36;--navy:#092534;--teal:#126482;--bright:#267c99;--pale:#edf4f7;--line:#dce5e9;--muted:#586b75;--white:#fff;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #309fc1;outline-offset:4px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,4.8vw,4.6rem);font-weight:600}h2{font-size:clamp(2rem,3.2vw,3rem);font-weight:600}h3{font-size:1.25rem;letter-spacing:-.02em}p{color:var(--muted)}.wrap{width:min(1392px,calc(100% - 96px));margin:auto}.skip{position:absolute;top:-80px;left:16px;background:white;padding:12px;z-index:100}.skip:focus{top:8px}.topline{background:var(--navy);color:#d8e9ef;font-size:.875rem}.topline .wrap{display:flex;justify-content:space-between;padding:9px 0;gap:16px}.toplinks{display:flex;gap:24px}.header{background:white;position:relative;z-index:20}.headrow{display:flex;align-items:center;gap:35px;padding:16px 0}.brand{width:225px;flex-shrink:0;overflow:hidden;height:83px;display:block}.brand img{width:225px;margin-top:-22px}.search{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:7px;padding:12px 16px;max-width:510px;flex:1;background:#f8fafb}.search input{border:0;outline:0;background:transparent;width:100%;min-width:0;color:var(--ink);font-size:.9375rem}.search button{background:none;border:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px;color:var(--muted);padding:0}.search svg,.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.headcta{margin-left:auto}.btn{display:inline-flex;justify-content:center;align-items:center;gap:13px;border:1px solid var(--teal);border-radius:6px;background:var(--teal);color:#fff;padding:13px 22px;font-size:.9375rem;font-weight:600;transition:background .2s,transform .2s}.btn:hover{background:var(--navy);border-color:var(--navy)}.btn.light{background:#fff;color:var(--ink);border-color:var(--line)}.btn.light:hover{background:var(--pale)}.btn.ghost{background:transparent;color:var(--ink);border-color:#aec5ce}.btn.small{padding:9px 15px}.textlink{font-size:.9375rem;font-weight:600;color:var(--teal);display:inline-flex;gap:18px;align-items:center}.textlink:hover{text-decoration:underline}.navwrap{border-top:1px solid #eef1f3;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:stretch;justify-content:space-between;gap:5px}.nav>a,.navitem>button{padding:17px 8px;font-size:.875rem;font-weight:600;border:0;background:none;color:var(--ink);white-space:nowrap}.navitem>button{display:flex;align-items:center;gap:6px}.navitem>button svg{width:12px;height:12px}.navitem>button[aria-expanded=true],.nav a:hover,.navitem>button:hover{color:var(--teal);background:var(--pale)}.mega{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 20px 35px #09253420;border-bottom:1px solid var(--line);padding:30px 0;max-height:70vh;overflow:auto}.mega.open{display:block}.megagrid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 35px}.megagrid h3{font-size:.9375rem;letter-spacing:0;margin-bottom:11px}.megagrid a{display:block;font-size:.875rem;color:var(--muted);padding:4px 0}.megahead{display:flex;justify-content:space-between;margin-bottom:25px}.megahead>a{font-weight:600;color:var(--teal)}.close-menu{border:0;background:var(--pale);border-radius:50%;width:32px;height:32px}.mobile-toggle{display:none;border:0;background:var(--pale);padding:10px;border-radius:5px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:700;color:var(--teal);display:block;margin-bottom:20px}.hero{background:#eaf2f6;position:relative;overflow:hidden}.hero-inner{display:grid;grid-template-columns:47% 53%;min-height:532px;align-items:center}.hero-copy{padding:57px 30px 56px 0;position:relative;z-index:1}.hero h1{margin-bottom:23px;max-width:610px}.hero h1 em{font-style:normal;color:var(--teal)}.hero-copy p{font-size:1.0625rem;max-width:420px;margin-bottom:30px}.hero-actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.hero-art{height:100%;position:relative;min-height:470px}.hero-art>img{height:100%;width:calc(100% + 48px);max-width:none;object-fit:cover;position:absolute}.hero-note{position:absolute;bottom:28px;right:0;background:#ffffffef;border:1px solid #ffffff;border-radius:8px;padding:13px 19px;font-size:.8125rem;box-shadow:0 7px 30px #0925340c}.hero-note strong{display:block;font-size:.9375rem}.service-strip{border-bottom:1px solid var(--line)}.service-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 0;gap:24px}.service-strip .item{display:flex;align-items:center;gap:13px;font-size:.875rem}.service-strip .item svg{color:var(--teal);width:27px;height:27px}.service-strip strong{display:block;font-size:.9375rem}.service-strip small{color:var(--muted);font-size:.8125rem}.section{padding:76px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}.section-head h2{margin-bottom:0}.section-head p{margin:10px 0 0;max-width:620px}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.catcard{border:1px solid var(--line);padding:26px 24px 24px;border-radius:10px;min-height:235px;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s;background:#fff}.catcard:hover{transform:translateY(-4px);box-shadow:0 8px 24px #082c3910;border-color:#95bbc9}.catcard .cat-icon{height:58px;width:58px;display:flex;align-items:center;justify-content:center;background:var(--pale);border-radius:12px;color:var(--teal);margin-bottom:27px}.catcard .cat-icon svg{width:29px;height:29px}.catcard h3{font-size:1.15rem;margin:0 25px 8px 0}.catcard p{font-size:.875rem;line-height:1.5;margin-bottom:0}.card-arrow{position:absolute;right:20px;bottom:24px;color:var(--teal)}.catcard.ctacard{background:var(--navy);color:white;justify-content:space-between;border:0}.ctacard .eyebrow,.ctacard p{color:#aecad6}.ctacard h3{font-size:1.9rem;margin:0}.ctacard .textlink{color:white}.feature{display:grid;grid-template-columns:1fr 1fr;gap:24px}.feature-card{position:relative;min-height:420px;border-radius:12px;overflow:hidden;background:var(--pale)}.feature-card img{width:100%;height:420px;object-fit:cover}.feature-copy{position:absolute;bottom:0;left:0;right:0;padding:58px 30px 28px;background:linear-gradient(transparent,#051d2eeb);color:#fff}.feature-copy h3{font-size:1.8rem;margin:10px 0 12px}.feature-copy p{color:#dae5ea;margin-bottom:15px}.feature-copy .textlink{color:white}.soft{background:#f3f7f9}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{border:1px solid var(--line);border-radius:9px;background:white;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.product-card:hover{border-color:#77a8ba;transform:translateY(-3px)}.product-art{height:114px;display:flex;align-items:center;justify-content:center;background:linear-gradient(125deg,#eaf2f6,#f7fafb);color:#39758d;position:relative}.product-art svg{width:38px;height:38px;stroke-width:1.2}.product-meta{padding:19px;flex:1;display:flex;flex-direction:column}.product-meta small{color:var(--muted);font-size:.75rem;display:block;margin-bottom:9px}.product-meta h3{font-size:1.0625rem;line-height:1.35;letter-spacing:-.02em;margin-bottom:18px}.product-meta .textlink{margin-top:auto;font-size:.875rem}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;margin-top:40px}.step span{font-size:.8125rem;background:var(--pale);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--teal);margin-bottom:24px;font-weight:600}.step h3{font-size:1rem;line-height:1.3}.step p{font-size:.875rem}.faqgrid{display:grid;grid-template-columns:1fr 1.35fr;gap:100px}.faqgrid p{max-width:360px}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;font-size:1rem;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:25px}.faq summary:after{content:'+';font-size:1.4rem;font-weight:400;color:var(--teal)}.faq details[open] summary:after{content:'−'}.faq details p{margin:16px 0 3px;font-size:.9375rem;max-width:none}.quote-banner{background:var(--teal);color:white;border-radius:13px;padding:43px 48px;display:flex;justify-content:space-between;align-items:center;gap:35px;margin:0 auto 70px}.quote-banner h2{font-size:2.4rem;margin:0 0 10px}.quote-banner p{color:#d8ebf3;margin:0}.footer{background:var(--navy);color:#d3e2e8;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1.2fr .8fr 1fr;gap:45px}.footer-brand{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:.01em}.footer-brand small{display:block;font-size:.75rem;letter-spacing:.4em;color:#8eb8c9;font-weight:500;margin-top:3px}.footer p{font-size:.875rem;color:#abc0ca;margin-top:20px;max-width:240px}.footer h3{color:#fff;font-size:.9375rem;letter-spacing:0;margin-bottom:20px}.footer a{display:block;font-size:.875rem;color:#abc0ca;margin-bottom:10px}.footer a:hover{color:#fff}.footer .btn{color:white;display:inline-flex;margin-top:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff1c;padding:21px 0;margin-top:42px;font-size:.75rem;color:#9ab4c0}.footer-bottom div{display:flex;gap:24px}.footer-bottom a{font-size:.75rem;margin:0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:.8125rem;color:var(--muted);padding:26px 0}.breadcrumbs a:hover{color:var(--teal)}.page-hero{padding:20px 0 46px;background:var(--pale)}.page-hero h1{font-size:clamp(2.4rem,4.2vw,3.6rem);max-width:800px;margin-bottom:18px}.page-hero p{max-width:700px;margin:0;font-size:1.0625rem}.catalog-layout{display:grid;grid-template-columns:235px 1fr;gap:38px;padding:40px 0 70px}.sidebar h2{font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px}.sidebar a,.sidebar button{display:block;width:100%;text-align:left;border:0;border-radius:6px;background:none;color:var(--muted);padding:10px 13px;font-size:.875rem}.sidebar a:hover,.sidebar button:hover,.sidebar .selected{color:var(--teal);background:var(--pale)}.sidebar .side-group{margin-bottom:28px}.catalog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.catalog-top p{font-size:.875rem;margin:0}.catalog-top select{border:1px solid var(--line);padding:9px;border-radius:5px;color:var(--ink);background:#fff;font-size:.875rem}.catalog-layout .products-grid{grid-template-columns:repeat(3,1fr)}.catalog-search{max-width:none;margin-bottom:20px}.empty{padding:60px 25px;text-align:center;background:var(--pale);border-radius:12px;grid-column:1/-1}.empty h2{font-size:1.7rem}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:8px 0 65px}.detail-image{background:var(--pale);border-radius:12px;overflow:hidden}.detail-image img{aspect-ratio:1.2;object-fit:cover;width:100%}.image-caption{font-size:.75rem;padding:12px 17px;margin:0}.product-detail h1{font-size:clamp(2.5rem,3.9vw,3.6rem);margin-bottom:23px}.product-detail .eyebrow{margin:10px 0 18px}.detail-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0;padding:20px 0;gap:20px}.detail-list small{display:block;color:var(--muted);font-size:.8125rem;margin-bottom:5px}.detail-list strong{font-size:.9375rem}.detail-form{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:end}.field{display:block;font-size:.875rem;font-weight:600;margin-bottom:18px}.field input,.field select,.field textarea{display:block;width:100%;border:1px solid #bacbd3;border-radius:5px;padding:11px 12px;background:white;color:var(--ink);margin-top:7px;min-width:0;font-size:1rem;font-weight:400}.field textarea{resize:vertical;min-height:104px}.detail-form .field{margin:0}.hint{font-size:.8125rem;margin:14px 0 0}.detail-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);padding:35px 0 55px}.detail-content h2{font-size:1.6rem}.detail-content ul{padding-left:20px;color:var(--muted)}.detail-content li{margin-bottom:9px}.article{max-width:820px;padding:50px 0 80px}.article h2{font-size:1.8rem;margin-top:35px}.article h3{margin-top:25px}.article p,.article li{color:var(--muted)}.article li{margin-bottom:12px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{background:var(--pale);padding:30px;border-radius:10px}.info-card h3{font-size:1.25rem}.info-card p{font-size:.9375rem}.quote-dialog{border:0;border-radius:14px;padding:0;width:min(680px,calc(100% - 28px));max-height:90vh;color:var(--ink);box-shadow:0 25px 90px #00182250}.quote-dialog::backdrop{background:#0419239c;backdrop-filter:blur(3px)}.dialog-head{padding:24px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;z-index:2}.dialog-head h2{font-size:1.5rem;margin:0}.icon-btn{border:0;background:var(--pale);color:var(--ink);border-radius:50%;height:34px;width:34px;display:flex;align-items:center;justify-content:center}.dialog-body{padding:25px 28px}.notice{border:1px solid #cadfe8;background:#f0f7fa;color:#3d6171;font-size:.875rem;padding:14px 16px;border-radius:6px;margin-bottom:23px}.quote-items{padding:0;list-style:none;margin:0 0 25px}.quote-items li{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding:14px 0}.quote-items .item-name{font-weight:600;font-size:.9375rem;flex:1}.quote-items input{width:72px;padding:7px;border:1px solid var(--line);border-radius:4px}.quote-items button{border:0;background:transparent;color:var(--muted);font-size:.8125rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .full{grid-column:1/-1}.quote-summary{padding:16px;background:var(--pale);margin-bottom:23px;border-radius:7px;font-size:.875rem}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 23px;border-radius:7px;background:var(--navy);color:#fff;box-shadow:0 5px 30px #0003;z-index:100;max-width:calc(100% - 28px);font-size:.9375rem}.print-only{display:none}.project-empty{padding:40px;background:var(--pale);border-radius:12px;max-width:800px}.project-empty h2{font-size:1.6rem}.pill{display:inline-flex;background:var(--pale);color:var(--teal);border-radius:20px;padding:5px 12px;font-size:.8125rem;margin:0 6px 10px 0}.resultslabel{font-size:.875rem;color:var(--muted)}[hidden]{display:none!important}@media(min-width:1600px){.hero-art>img{width:calc(100% + (100vw - 1392px)/2)}}@media(max-width:1200px){.wrap{width:calc(100% - 56px)}.headrow{gap:20px}.brand{width:200px}.brand img{width:200px;margin-top:-16px}.nav>a,.navitem>button{font-size:.8125rem;padding:16px 3px}.navitem>button svg{display:none}.hero h1{font-size:3.5rem}.hero-inner{min-height:490px}.hero-art{min-height:460px}.hero-art>img{width:calc(100% + 28px)}.categories{grid-template-columns:repeat(4,1fr)}.catcard{padding:22px 18px}.catcard h3{font-size:1rem}.faqgrid{gap:55px}.footer-grid{gap:25px}.catalog-layout{grid-template-columns:200px 1fr;gap:25px}}@media(max-width:960px){.toplinks a:first-child{display:none}.headrow{flex-wrap:wrap;gap:15px}.brand{height:66px;width:175px}.brand img{width:175px;margin-top:-15px}.headcta{margin-left:auto}.mobile-toggle{display:flex}.navwrap{display:none}.navwrap.mobile-open{display:block}.nav{flex-direction:column;max-height:65vh;overflow:auto;padding:12px 0}.nav>a,.navitem>button{width:100%;text-align:left;font-size:.9375rem;padding:12px;justify-content:space-between}.navitem>button svg{display:block}.mega{position:static;padding:15px;max-height:none;box-shadow:none}.megagrid{grid-template-columns:1fr 1fr;gap:20px}.hero-inner{grid-template-columns:1fr 1fr}.hero h1{font-size:3rem}.hero-copy{padding-right:20px}.hero-note{display:none}.categories{grid-template-columns:repeat(2,1fr)}.catcard{min-height:215px}.catcard h3{font-size:1.2rem}.products-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(3,1fr);gap:25px}.service-strip .wrap{grid-template-columns:repeat(2,1fr);gap:18px}.section{padding:55px 0}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px}.catalog-layout{grid-template-columns:180px 1fr;gap:20px}.catalog-layout .products-grid{grid-template-columns:repeat(2,1fr)}.product-detail{gap:30px}.product-detail h1{font-size:2.5rem}.detail-form{grid-template-columns:90px 1fr}.detail-form .btn{padding:13px 12px}.info-grid{grid-template-columns:1fr}.faqgrid{gap:35px}.quote-banner{padding:30px}.quote-banner h2{font-size:2rem}}@media(max-width:640px){.wrap{width:calc(100% - 36px)}.topline .wrap{justify-content:center;font-size:.75rem;padding:7px 0}.toplinks{display:none}.headrow{padding:7px 0 14px;gap:10px}.brand{width:154px;height:65px}.brand img{width:154px;margin-top:-9px}.headcta{font-size:.8125rem;padding:10px 12px;gap:5px}.headcta .icon{display:none}.mobile-toggle{padding:8px}.search{order:4;max-width:none;flex-basis:100%;padding:10px 13px}.hero-inner{grid-template-columns:1fr}.hero-copy{padding:36px 0 20px}.hero h1{font-size:2.9rem;margin-bottom:19px;max-width:390px}.hero-copy p{font-size:1rem;margin-bottom:22px;max-width:350px}.eyebrow{margin-bottom:16px;font-size:.6875rem}.hero-art{height:270px;min-height:270px;margin:0 -18px}.hero-art>img{width:100%;object-position:center}.hero-actions .btn{padding:12px 16px}.hero-note{display:block;bottom:14px;right:18px;padding:9px 14px;font-size:.75rem}.hero-note strong{font-size:.8125rem}.service-strip .wrap{gap:19px 10px;padding:22px 0}.service-strip .item{gap:9px}.service-strip strong{font-size:.8125rem}.service-strip small{font-size:.75rem}.service-strip .item svg{width:23px;height:23px}.section{padding:42px 0}.section-head{display:block;margin-bottom:24px}.section-head .textlink{margin-top:17px}.section-head h2{font-size:2rem;max-width:340px}.section-head p{font-size:.9375rem}.categories{gap:12px}.catcard{padding:19px 15px;min-height:218px}.catcard h3{font-size:1.0625rem;line-height:1.2;margin-right:0}.catcard p{font-size:.8125rem;padding-right:9px}.catcard .cat-icon{width:43px;height:43px;margin-bottom:22px;border-radius:9px}.catcard .cat-icon svg{width:24px;height:24px}.card-arrow{display:none}.ctacard h3{font-size:1.65rem}.ctacard .textlink{font-size:.8125rem;gap:5px}.feature{grid-template-columns:1fr;gap:18px}.feature-card,.feature-card img{height:345px;min-height:345px}.feature-copy{padding:50px 23px 24px}.products-grid{gap:12px}.product-art{height:90px}.product-meta{padding:14px}.product-meta h3{font-size:.9375rem}.product-meta small{font-size:.6875rem}.product-meta .textlink{font-size:.8125rem;gap:8px}.steps{grid-template-columns:repeat(2,1fr);gap:18px 25px;margin-top:28px}.step span{margin-bottom:16px}.faqgrid{grid-template-columns:1fr;gap:25px}.faqgrid h2{margin-bottom:16px}.faqgrid>div>p{margin-bottom:0}.faq summary{font-size:.9375rem}.quote-banner{padding:27px 23px;display:block;margin-bottom:42px}.quote-banner h2{font-size:1.9rem}.quote-banner .btn{margin-top:22px}.footer{padding-top:37px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer p{max-width:290px}.footer-bottom{display:block;margin-top:26px;line-height:1.8}.footer-bottom div{margin-top:12px}.page-hero{padding-bottom:30px}.page-hero h1{font-size:2.45rem}.page-hero p{font-size:1rem}.breadcrumbs{padding:20px 0;font-size:.75rem}.catalog-layout{grid-template-columns:1fr;padding-top:25px}.sidebar{display:flex;gap:15px;overflow:auto;border-bottom:1px solid var(--line)}.sidebar .side-group{margin-bottom:16px;min-width:220px;max-height:170px;overflow:auto}.sidebar a,.sidebar button{padding:7px 10px;font-size:.8125rem}.sidebar h2{font-size:.75rem}.catalog-top{gap:10px}.catalog-top select{max-width:155px;font-size:.8125rem}.product-detail{grid-template-columns:1fr;gap:26px}.detail-image img{aspect-ratio:1.5}.product-detail h1{font-size:2.4rem}.detail-form{grid-template-columns:100px 1fr}.detail-content{grid-template-columns:1fr;gap:20px}.dialog-head,.dialog-body{padding:20px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-actions .btn{width:100%}.quote-items li{flex-wrap:wrap}.quote-items .item-name{min-width:140px}.article{padding:30px 0 50px}.project-empty{padding:25px}.megagrid{grid-template-columns:1fr 1fr}.megahead{gap:15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{header,.topline,.footer,.quote-banner,.breadcrumbs,.btn,.navwrap,dialog{display:none!important}.wrap{width:100%}.hero-art{display:none}.hero-inner{display:block}.section{padding:20px 0}body{font-size:12pt}.print-only{display:block}}

/* Shahid: a print studio on desktop, a pocket catalogue on mobile. */
:root{--ease:cubic-bezier(.22,1,.36,1);--tap:44px}body{font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{min-height:var(--tap)}.btn{border-radius:100px;transition:transform .35s var(--ease),background .25s,box-shadow .35s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0b536225}.btn:active{transform:scale(.96);box-shadow:none}.textlink .icon{transition:transform .35s var(--ease)}a:hover .textlink .icon,.textlink:hover .icon{transform:translateX(4px)}.app-nav,.app-menu{display:none}.hero{margin:22px 24px 0;border-radius:26px;background:#092b3b;isolation:isolate}.hero-inner{width:min(1392px,calc(100% - 64px));min-height:580px;grid-template-columns:49% 51%}.hero-copy{padding:65px 24px 72px 0}.hero .eyebrow{color:#9bd3e4}.hero h1{color:white;font-size:clamp(3rem,5vw,5rem);letter-spacing:-.055em}.hero h1 em{color:#77c7de}.hero-copy p{color:#bfd6e0}.hero .btn:not(.ghost){background:#fff;border-color:#fff;color:#123b4d}.hero .btn.ghost{color:white;border-color:#648797}.hero .btn.ghost:hover{background:#ffffff15}.hero-art{min-height:580px;align-self:stretch}.hero-art>img{width:calc(100% + 60px);mask-image:linear-gradient(90deg,transparent,black 20%);object-position:65% center;animation:art-arrive 1.3s var(--ease) both}.hero-note{color:#133e50;border-radius:14px;right:12px;bottom:28px;box-shadow:0 14px 40px #08273420}.hero-copy .eyebrow{animation:copy-arrive .75s var(--ease) both}.hero-copy h1{animation:copy-arrive 1s .08s var(--ease) both}.hero-copy p{animation:copy-arrive 1s .16s var(--ease) both}.hero-actions{animation:copy-arrive 1s .24s var(--ease) both}.service-strip{border:0}.service-strip .wrap{padding:29px 0;border-bottom:1px solid var(--line)}.catcard{border-radius:20px;transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .3s}.catcard .cat-icon{border-radius:15px;transition:transform .5s var(--ease),background .3s,color .3s}.catcard:hover .cat-icon{transform:rotate(-6deg);background:#126482;color:white}.catcard.ctacard{background:linear-gradient(135deg,#0b3142,#17627a)}.product-card{border-radius:16px;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .3s}.product-card:hover{box-shadow:0 15px 32px #153d5010;transform:translateY(-5px)}.product-art{background:linear-gradient(140deg,#e1eef4,#f4f8fa)}.product-art .icon{transition:transform .6s var(--ease)}.product-card:hover .product-art .icon{transform:scale(1.15) rotate(-5deg)}.feature-card{border-radius:22px}.feature-card img{transition:transform 1.1s var(--ease)}.feature-card:hover img{transform:scale(1.04)}.info-card{border-radius:18px;transition:background .3s,transform .4s var(--ease)}.info-card:hover{background:#e5f0f5;transform:translateY(-3px)}.quote-banner{border-radius:22px;background:linear-gradient(115deg,#0c3547,#176a85)}.page-hero{background:linear-gradient(120deg,#e9f2f6,#f8fafb)}.page-hero h1{letter-spacing:-.055em}.reveal-ready{opacity:0;transform:translateY(23px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--reveal-delay,0ms)}.reveal-ready.is-visible{opacity:1;transform:none}.quote-dialog{border-radius:25px}.quote-dialog[open]{animation:sheet-arrive .4s var(--ease)}.quote-dialog::backdrop,.app-menu::backdrop{animation:backdrop-arrive .3s ease;background:#03182385;backdrop-filter:blur(6px)}.quote-dialog.is-closing,.app-menu.is-closing{animation:sheet-leave .2s ease both}.quote-dialog.is-closing::backdrop,.app-menu.is-closing::backdrop{animation:backdrop-leave .2s ease both}.dialog-head{padding:24px 28px}.dialog-head .icon-btn{height:44px;width:44px}.toast{border-radius:30px;animation:copy-arrive .35s var(--ease);box-shadow:0 12px 35px #00253930}.added-pulse{animation:basket-pulse .5s var(--ease)}.sheet-grip{height:5px;width:38px;border-radius:10px;background:#b5cbd4;margin:12px auto 0}.app-menu[open]{display:block}.app-menu{border:0;padding:0;color:var(--ink);width:min(580px,calc(100% - 32px));max-height:88dvh;border-radius:25px;box-shadow:0 30px 100px #00172750;animation:sheet-arrive .4s var(--ease)}.app-menu .dialog-head{gap:15px}.app-menu .eyebrow{margin-bottom:9px;font-size:.75rem}.app-menu h2{font-size:1.6rem}.app-menu-body{padding:12px 24px 28px}.app-menu-cats{display:grid;gap:6px}.app-menu-cats a{display:flex;align-items:center;gap:14px;border-radius:13px;background:#f0f5f8;padding:14px 15px;font-size:.9375rem;min-height:58px;transition:background .2s,transform .2s}.app-menu-cats a>span{flex:1}.app-menu-cats a>.icon:first-child{color:var(--teal)}.app-menu-cats a>.icon:last-child{width:17px}.app-menu-cats a:active{transform:scale(.98);background:#dcecf2}.app-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:3px 16px;margin-top:20px}.app-menu-links a{font-size:.9375rem;color:var(--muted);padding:10px 5px;min-height:44px}.app-menu-links a:hover{color:var(--teal)}@keyframes copy-arrive{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes art-arrive{from{opacity:0;scale:1.04}to{opacity:1;scale:1}}@keyframes sheet-arrive{from{opacity:0;translate:0 45px}to{opacity:1;translate:0 0}}@keyframes sheet-leave{to{opacity:0;translate:0 35px}}@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}@keyframes backdrop-leave{to{opacity:0}}@keyframes basket-pulse{40%{transform:scale(1.14)}100%{transform:scale(1)}}
@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .16s ease both}::view-transition-new(root){animation:page-in .28s var(--ease) both}@keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:960px){.hero{margin:16px 16px 0;border-radius:22px}.hero-inner{width:calc(100% - 44px)}.hero-copy{padding:42px 20px 42px 0}.hero h1{font-size:3.3rem}.hero-art,.hero-inner{min-height:480px}.hero-art>img{width:calc(100% + 40px)}.navwrap.mobile-open{display:none}.header{position:sticky;top:0;background:#ffffffee;backdrop-filter:blur(16px);border-bottom:1px solid #dce5e980;box-shadow:0 3px 20px #123a4a06}.headrow{padding:8px 0;gap:12px}.brand{height:56px;width:172px}.brand img{width:172px;margin-top:-21px}.headcta{font-size:.8125rem}.headrow>.search{display:none}.mobile-toggle{margin-left:0;border-radius:50%;height:44px;width:44px;align-items:center;justify-content:center}.app-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:35;min-height:72px;padding:7px max(14px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-bottom));background:#fffffff0;backdrop-filter:blur(22px);border-top:1px solid #d8e5eb;box-shadow:0 -8px 28px #123e4d08}.app-nav>a,.app-nav>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative;color:#6b7d86;font-size:.75rem;font-weight:500;min-height:54px;border:0;background:none;border-radius:15px;padding:5px;transition:color .25s,background .25s,transform .3s var(--ease)}.app-nav .icon{width:23px;height:23px}.app-nav .active{color:var(--teal);background:#e9f3f7}.app-nav .active .icon{stroke-width:2}.app-nav>a:active,.app-nav>button:active{transform:scale(.91)}.app-nav .app-badge{position:absolute;top:1px;left:calc(50% + 7px);background:var(--teal);color:white;border:2px solid white;border-radius:12px;min-width:19px;height:19px;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px}.footer{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.toast{bottom:calc(88px + env(safe-area-inset-bottom));white-space:normal;text-align:center}.quote-dialog{width:min(680px,100%);max-height:92dvh;margin:auto auto 0;border-radius:26px 26px 0 0;padding-bottom:env(safe-area-inset-bottom)}.app-menu{width:min(640px,100%);margin:auto auto 0;border-radius:26px 26px 0 0;max-height:91dvh;padding-bottom:env(safe-area-inset-bottom)}.quote-dialog .dialog-head:before{content:'';position:absolute;top:8px;left:calc(50% - 19px);height:4px;width:38px;border-radius:10px;background:#b5cbd4}.quote-dialog .dialog-head{padding-top:27px}.app-menu .dialog-head{padding-top:15px}.app-menu .sheet-grip{position:relative;z-index:3}.catalog-layout{grid-template-columns:1fr;gap:20px}.sidebar{display:flex;flex-direction:column;gap:10px;overflow:visible;border:0;min-width:0}.sidebar .side-group{display:flex;flex-direction:row;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;max-height:none;min-width:0;width:100%;margin:0;padding:3px 2px 7px;scroll-snap-type:x proximity}.sidebar .side-group::-webkit-scrollbar{display:none}.sidebar h2{display:none}.sidebar a,.sidebar button{white-space:nowrap;width:auto;flex-shrink:0;border-radius:100px;border:1px solid var(--line);padding:10px 16px;font-size:.8125rem;min-height:42px;scroll-snap-align:center;background:white}.sidebar .selected{background:var(--navy);border-color:var(--navy);color:white}.catalog-search{border-radius:14px;background:#f0f5f8;min-height:50px;order:initial}.catalog-layout .products-grid{grid-template-columns:repeat(3,1fr)}.page-hero{border-radius:0 0 25px 25px}.breadcrumbs{padding:17px 0}.product-detail{padding-bottom:32px}.detail-image{border-radius:20px}.detail-form{border-radius:17px;padding:15px;background:#eaf3f7}.detail-form .btn{min-height:49px}.detail-form input{border-radius:10px}.headrow .search input,.catalog-search input{font-size:1rem}.quote-items input{min-height:44px;font-size:1rem}.quote-items button{min-height:44px}.field input,.field select,.field textarea{border-radius:11px;min-height:48px}.faq summary{min-height:44px;align-items:center}.hero-note{display:block}.app-menu .dialog-head{position:sticky}}
@media(max-width:640px){body{background:#f8fafb}.topline{display:none}.header{padding-top:env(safe-area-inset-top)}.wrap{width:calc(100% - 36px)}.headrow{height:70px;flex-wrap:nowrap}.brand{height:55px;width:165px}.brand img{width:165px;margin-top:-18px}.headcta{margin-left:auto;font-size:0;padding:10px;border-radius:50%;width:44px;height:44px;background:#edf4f7;color:var(--teal);border:0;gap:0}.headcta .icon{display:block;width:22px;height:22px}.headcta [data-count]{font-size:.75rem;position:absolute;right:75px;top:8px;background:var(--teal);color:white;border-radius:12px;padding:0 4px}.headcta [data-count]:empty{display:none}.hero{margin:12px 12px 0;border-radius:25px;background:#0a2c3c}.hero-inner{width:100%;grid-template-columns:1fr;min-height:0}.hero-copy{padding:30px 25px 0}.hero h1{font-size:clamp(2.5rem,10.5vw,3.35rem);line-height:1.02;margin-bottom:16px;letter-spacing:-.055em}.hero .eyebrow{font-size:.75rem;letter-spacing:.13em;max-width:270px;margin-bottom:16px}.hero-copy p{font-size:.9375rem;line-height:1.5;max-width:300px;margin-bottom:20px}.hero-actions{gap:9px}.hero-actions .btn{font-size:.8125rem;padding:12px 16px;min-height:45px}.hero-actions .btn.ghost{padding:11px 14px}.hero-actions .icon{width:17px}.hero-art{min-height:230px;height:230px;margin:0;overflow:hidden}.hero-art>img{width:100%;height:115%;top:-7%;mask-image:linear-gradient(180deg,transparent,black 27%);object-position:center 58%}.hero-note{right:15px;bottom:15px;border-radius:12px;padding:9px 12px;font-size:.75rem}.hero-note strong{font-size:.8125rem}.service-strip .wrap{grid-template-columns:1fr 1fr;gap:16px 10px;padding:23px 0}.service-strip .item:nth-child(n+3){display:none}.section{padding:35px 0}.section-head{margin-bottom:21px}.section-head .eyebrow{font-size:.75rem;letter-spacing:.14em;margin-bottom:10px}.section-head h2{font-size:1.85rem;line-height:1.13;letter-spacing:-.045em}.section-head p{font-size:.875rem;margin-top:11px}.section-head .textlink{font-size:.8125rem;margin-top:14px}.categories{grid-template-columns:repeat(2,1fr);gap:12px}.catcard{min-height:180px;border:1px solid #e3ebef;border-radius:20px;padding:19px 16px;background:#fff;box-shadow:0 3px 8px #103b4b03}.catcard .cat-icon{height:44px;width:44px;margin-bottom:18px;border-radius:14px}.catcard h3{font-size:1rem;line-height:1.24;letter-spacing:-.02em}.catcard p{font-size:.75rem;margin-top:auto;padding-top:6px}.catcard.ctacard{min-height:180px}.ctacard h3{font-size:1.55rem}.ctacard .eyebrow{font-size:.75rem;letter-spacing:.11em;margin-bottom:10px}.ctacard .textlink{font-size:.75rem;line-height:1.3}.soft{background:#edf3f7}.home-page .section>.wrap>.products-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;gap:13px;padding:3px 2px 18px;margin-right:-18px;scroll-padding:2px;scrollbar-width:thin;scrollbar-color:#b2ccd8 transparent}.home-page .section>.wrap>.products-grid>.product-card{flex:0 0 60%;scroll-snap-align:start;min-height:237px}.home-page .product-art{height:115px}.home-page .product-meta{padding:16px}.home-page .product-meta h3{font-size:1.05rem}.product-meta small{font-size:.75rem}.product-card{border-radius:18px}.feature{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-18px;padding-bottom:14px;scroll-padding:0;gap:14px}.feature-card{flex:0 0 88%;scroll-snap-align:start;min-height:325px;height:325px;border-radius:21px}.feature-card img{height:325px;min-height:325px}.feature-copy{padding:55px 22px 23px}.feature-copy h3{font-size:1.55rem;letter-spacing:-.045em}.feature-copy p{font-size:.875rem}.feature-copy .textlink{font-size:.8125rem}.step{background:white;border:1px solid #e3ebef;border-radius:18px;padding:17px 15px}.steps{gap:11px;margin-top:24px}.step span{background:var(--navy);color:white;height:31px;width:31px;font-size:.75rem;margin-bottom:15px}.step h3{font-size:.9375rem;margin-bottom:9px}.step p{font-size:.8125rem;margin-bottom:0}.faqgrid{gap:22px}.faqgrid h2{font-size:1.9rem}.faq details{padding:10px 0}.faq summary{font-size:.875rem}.faq details p{font-size:.875rem}.info-grid{gap:12px}.info-card{padding:23px}.info-card h3{font-size:1.2rem}.quote-banner{border-radius:21px;padding:25px;margin-bottom:30px}.quote-banner h2{font-size:1.8rem}.quote-banner p{font-size:.9375rem}.footer-grid{gap:25px 20px}.footer-brand{font-size:1.4rem}.footer h3{line-height:1.3}.footer a{min-height:32px}.footer-bottom{margin-top:22px}.catalog-layout{padding-top:17px;gap:16px}.catalog-layout .products-grid{grid-template-columns:repeat(2,1fr);gap:12px}.catalog-top{margin-bottom:16px}.catalog-top select{min-height:42px;border-radius:12px;font-size:.8125rem}.catalog-top p{font-size:.8125rem}.catalog-search{margin-bottom:14px;min-height:49px;border:1px solid #dce7ed}.page-hero{padding-bottom:25px}.page-hero h1{font-size:2.15rem;margin-bottom:13px;max-width:350px}.page-hero p{font-size:.9375rem;line-height:1.5}.page-hero .eyebrow{font-size:.75rem;margin-bottom:12px}.breadcrumbs{font-size:.75rem;gap:7px;line-height:1.7}.product-detail{gap:22px}.product-detail .eyebrow{font-size:.75rem;margin-top:0}.product-detail h1{font-size:2.2rem}.product-detail p{font-size:.9375rem}.detail-list{margin:22px 0;border:0;background:white;border-radius:17px;padding:17px;gap:20px 12px}.detail-list strong{font-size:.875rem}.detail-list small{font-size:.75rem}.detail-form{grid-template-columns:85px 1fr;gap:12px;padding:13px}.detail-form .btn{font-size:.875rem}.detail-form .field{font-size:.75rem}.detail-form input{padding:10px}.detail-content h2{font-size:1.5rem}.detail-content p,.detail-content li{font-size:.9375rem}.image-caption{font-size:.75rem!important;line-height:1.5}.dialog-body{padding:20px}.dialog-head{padding:25px 20px 18px}.dialog-head h2{font-size:1.45rem}.form-actions{position:sticky;bottom:0;background:#fff;padding:10px 0 4px}.form-actions .btn{min-height:48px}.form-actions .btn.light{min-height:44px}.notice{font-size:.8125rem;border-radius:13px;padding:13px}.quote-summary{border-radius:12px;font-size:.8125rem}.quote-items .item-name{font-size:.875rem}.app-menu h2{font-size:1.4rem}.app-menu .dialog-head{padding:14px 20px 19px}.app-menu-body{padding:6px 20px 25px}.app-menu-cats a{font-size:.875rem}.app-nav{view-transition-name:mobile-nav}.header{view-transition-name:mobile-header}::view-transition-old(mobile-nav),::view-transition-new(mobile-nav),::view-transition-old(mobile-header),::view-transition-new(mobile-header){animation:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-ready{opacity:1;transform:none}@view-transition{navigation:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}.hero-art>img{scale:1}}@media print{.app-nav,.app-menu{display:none!important}.reveal-ready{opacity:1;transform:none}}

.contact-email{overflow-wrap:anywhere}.contact-methods{display:grid;gap:16px}.contact-methods .info-card{display:block}.contact-methods h3{margin-top:0}.quick-contact{display:flex;gap:9px;margin-top:20px}.quick-contact a{flex:1;text-align:center;border-radius:24px;padding:12px 10px;background:#126482;color:white;font-size:.875rem;min-height:44px}.quick-contact a:active{transform:scale(.96)}

.quick-enquiry-launch{position:fixed;right:26px;bottom:26px;z-index:34;border:1px solid #ffffff60;background:#126482;color:white;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:100px;box-shadow:0 8px 28px #062d3d35;font-size:.9375rem;font-weight:600;min-height:50px;transition:transform .3s var(--ease),background .2s}.quick-enquiry-launch:hover{transform:translateY(-3px);background:#0c3c50}.quick-enquiry-launch:active{transform:scale(.96)}.quick-enquiry-dialog{max-width:580px}.quick-enquiry-dialog .dialog-head h2{font-size:1.5rem;line-height:1.2}.quick-enquiry-dialog .dialog-head .icon-btn{flex-shrink:0}.quick-enquiry-dialog textarea{min-height:135px}.quick-enquiry-dialog .form-actions{position:static}@media(max-width:960px){.quick-enquiry-launch{right:16px;bottom:calc(88px + env(safe-area-inset-bottom));padding:12px 16px;font-size:.8125rem;min-height:46px}.quick-enquiry-dialog{max-width:680px}.toast{bottom:calc(145px + env(safe-area-inset-bottom))}}@media(max-width:640px){.quick-enquiry-dialog .dialog-head h2{font-size:1.3rem;max-width:265px}.quick-enquiry-dialog .dialog-head{gap:12px}}@media print{.quick-enquiry-launch{display:none!important}}

/* Non-interactive trap for indiscriminate automated form fillers. */
.enquiry-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}

/* Desktop product previews share the existing compact catalogue images. */
.menu-preview{display:none}
@media(min-width:961px){
 .mega-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:32px;align-items:start}
 .mega-body .megagrid{display:block;min-width:0;column-count:3;column-gap:24px;column-fill:balance}
 .mega-body .megagrid>div{display:flow-root;break-inside:avoid;margin-bottom:18px}
 .megagrid a[data-menu-photo]{border-radius:5px;padding:5px 7px;margin-left:-7px;transition:background .16s,color .16s}
 .megagrid a.preview-active,.megagrid a[data-menu-photo]:focus-visible{background:var(--pale);color:var(--teal)}
 .menu-preview:not([hidden]){display:block;position:sticky;top:0;min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
 .menu-preview-link{display:block}
 .menu-preview-art{aspect-ratio:4/3;display:grid;place-items:center;background:#f5f8fa;position:relative}
 .menu-preview-art img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;background:#fff;animation:menu-photo-in .18s ease-out}
 .menu-preview-art img[hidden],.menu-preview-art [hidden]{display:none}
 .menu-preview-art>span{padding:24px;text-align:center;font-size:.8125rem;color:var(--muted)}
 .menu-preview-copy{padding:18px 20px 20px}
 .menu-preview-label{display:block;font-size:.625rem;letter-spacing:.14em;font-weight:700;color:var(--muted);margin-bottom:8px}
 .menu-preview-copy strong{display:block;font-size:1.125rem;line-height:1.3;margin-bottom:16px;color:var(--ink)}
 .menu-preview-cta{font-size:.8125rem;font-weight:600;color:var(--teal)}
 .nav .menu-preview-link:hover{background:#fff}
 .menu-preview-link:hover .menu-preview-cta{text-decoration:underline}
}
@media(min-width:961px) and (max-width:1199px){
 .mega-body{grid-template-columns:minmax(0,1fr) 240px;gap:25px}
 .mega-body .megagrid{column-count:2;column-gap:22px}
}
@keyframes menu-photo-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}

/* Related items appear only after a product is added to an enquiry. */
.related-dialog{width:min(920px,calc(100% - 40px));max-height:90dvh;overflow:hidden}
.related-dialog[open]{display:flex;flex-direction:column}
.related-dialog .dialog-head{flex-shrink:0;gap:18px;align-items:flex-start}
.related-dialog .dialog-head .icon-btn{flex-shrink:0}
.related-dialog .dialog-head h2{font-size:1.7rem;line-height:1.2}
.related-success{display:flex;align-items:center;gap:8px;font-size:.6875rem;letter-spacing:.1em;color:var(--teal);font-weight:700;margin-bottom:10px}
.related-success .icon{width:19px;height:19px}
.related-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:18px}
.related-confirmation{padding:12px 15px;border-radius:10px;background:var(--pale);color:var(--ink);font-size:.9375rem;margin-bottom:12px}
.related-intro{font-size:.875rem;margin-bottom:20px}
.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.related-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}
.related-product-link{display:block}
.related-product-link:hover h3{text-decoration:underline;color:var(--teal)}
.related-product-art{aspect-ratio:4/3;background:#f5f8fa;display:grid;place-items:center;font-size:.8125rem;color:var(--muted)}
.related-product-art img{display:block;width:100%;height:100%;object-fit:contain}
.related-product-link h3{font-size:.9375rem;line-height:1.3;letter-spacing:0;margin:14px;min-height:2.6em;overflow-wrap:anywhere}
.related-product-form{display:grid;gap:10px;margin-top:auto;padding:0 14px 14px}
.related-quantity{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.75rem;color:var(--muted)}
.related-quantity input{width:82px;min-width:0;height:38px;padding:7px 8px;border:1px solid #bacbd3;border-radius:7px;background:#fff;color:var(--ink);font-size:1rem}
.related-product-form .btn{width:100%;min-height:42px;padding:9px 8px;font-size:.8125rem}
.related-product-form .btn[aria-disabled=true]{background:#edf4f7;border-color:#dce5e9;color:var(--teal);cursor:default}
.related-card.is-added{border-color:#83aebd}
.related-empty{font-size:.9375rem;padding:15px 0;margin:0}
.related-status{font-size:.875rem;color:var(--teal);margin:15px 0 0;min-height:1.55em}
.related-footer{flex-shrink:0;border-top:1px solid var(--line);padding:16px 28px 20px;background:#fff}
.related-footer>p{font-size:.8125rem;margin:0 0 10px}
.related-actions{display:flex;justify-content:space-between;gap:12px}
.related-actions .btn{min-height:46px}
@media(max-width:960px){.related-dialog{width:min(680px,100%);max-height:92dvh;margin:auto auto 0}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
 .related-dialog .dialog-head{padding:27px 18px 17px}
 .related-dialog .dialog-head h2{font-size:1.4rem}
 .related-body{padding:17px 18px 8px}
 .related-success{font-size:.625rem;letter-spacing:.08em}
 .related-confirmation,.related-intro{font-size:.8125rem}
 .related-grid{gap:11px}
 .related-product-link h3{font-size:.875rem;margin:12px}
 .related-product-form{padding:0 12px 12px;gap:9px}
 .related-quantity input{width:70px}
 .related-footer{padding:13px 18px calc(14px + env(safe-area-inset-bottom))}
 .related-actions .btn{flex:1;padding:11px 9px;font-size:.8125rem;gap:6px}
 .related-actions .icon{width:17px}
}
@media(max-width:359px){.related-quantity{display:grid;gap:4px}.related-quantity input{width:100%}.related-actions{flex-direction:column}}
@media print{.related-dialog[open]{display:none!important}}

.product-detail-rich{grid-template-columns:1fr 1fr;gap:60px;align-items:start;padding-bottom:42px}.gallery-main{aspect-ratio:1.18;position:relative;border:1px solid #dce7ed;border-radius:22px;overflow:hidden;background:#f0f5f8}.gallery-main>img{width:100%;height:100%;object-fit:contain;background:white}.product-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;gap:11px}.photo-symbol{height:72px;width:72px;border:1px solid #c4d9e3;border-radius:20px;display:flex;align-items:center;justify-content:center;color:#4b8197;background:#e7f0f5;margin-bottom:7px}.photo-symbol .icon{width:33px;height:33px;stroke-width:1.2}.product-photo-empty .eyebrow{font-size:.75rem;letter-spacing:.15em;color:#68838f;margin:0}.product-photo-empty strong{font-size:1.7rem;letter-spacing:-.04em;line-height:1.2;max-width:360px;color:#304f5e}.product-photo-empty>span[data-photo-label]{font-size:.9375rem;color:#496a7a}.product-photo-empty small{font-size:.8125rem;color:#68838f}.gallery-index{position:absolute;left:18px;top:16px;border:1px solid #d5e3e9;border-radius:30px;background:#ffffffe6;padding:4px 10px;color:#5f7a87;font-size:.75rem}.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:13px}.gallery-thumb{background:transparent;border:1px solid #dce6ec;border-radius:13px;overflow:hidden;padding:0;color:#65808d;transition:border-color .2s,background .2s;min-width:0}.gallery-thumb>.thumb-visual{display:flex;align-items:center;justify-content:center;height:75px;background:#edf3f7}.gallery-thumb .icon{width:24px;height:24px;stroke-width:1.2}.gallery-thumb>.thumb-visual img{width:100%;height:100%;object-fit:cover}.gallery-thumb>span:last-child{display:block;padding:9px 6px;font-size:.8125rem}.gallery-thumb.selected{border-color:var(--teal);color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.gallery-thumb:hover{border-color:#8eb6c7}.gallery-note{margin-top:12px;font-size:.75rem}.product-intro .product-lead{font-size:1.0625rem;line-height:1.7}.product-intro h1{font-size:clamp(2.35rem,3.7vw,3.6rem)}.product-highlights{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 14px}.product-highlights>span{border:1px solid #d9e6eb;background:#f6f9fa;color:#32576a;padding:7px 12px;border-radius:30px;font-size:.8125rem}.availability-note{font-size:.8125rem;line-height:1.6;margin-bottom:25px}.product-direct{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:16px}.product-direct>button{border:0;background:none;padding:0;font-size:.875rem;text-align:left;min-height:44px}.product-direct>a{font-size:.875rem;color:var(--muted)}.product-section-nav{display:flex;gap:10px;border-bottom:1px solid var(--line);padding:10px 0 17px;background:#ffffffed;backdrop-filter:blur(14px);position:sticky;top:0;z-index:10;overflow-x:auto;scrollbar-width:none}.product-section-nav a{white-space:nowrap;padding:10px 19px;border-radius:30px;background:#edf4f7;color:#28566a;font-size:.875rem;min-height:44px}.product-section-nav a:hover{background:#daeaf1}.product-info-section{display:grid;grid-template-columns:1fr 1.6fr;gap:65px;padding:48px 0;border-bottom:1px solid var(--line);scroll-margin-top:90px}.product-section-heading h2{font-size:2rem;line-height:1.15;margin:0 0 16px}.product-section-heading .eyebrow{font-size:.75rem;margin-bottom:16px}.product-section-heading p{font-size:.9375rem}.product-overview-body h3{font-size:1.1rem}.product-uses{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 27px}.product-uses li{padding:12px 18px;border-radius:12px;background:#edf4f7;font-size:.9375rem;color:#28566a}.product-consideration{border-left:3px solid #82b7cb;padding:0 0 0 22px}.product-consideration p{font-size:.9375rem;line-height:1.7;margin-bottom:0}.product-specs{border-collapse:separate;border-spacing:0;width:100%;font-size:.9375rem;border:1px solid var(--line);border-radius:15px;overflow:hidden}.product-specs caption{text-align:left;font-weight:600;font-size:1.125rem;margin-bottom:15px}.product-specs th{width:32%;text-align:left;vertical-align:top;font-weight:600;background:#f0f5f8;color:#264858}.product-specs td{color:var(--muted);background:#fff}.product-specs td,.product-specs th{padding:17px 18px;border-bottom:1px solid var(--line);line-height:1.6}.product-specs tr:last-child>*{border-bottom:0}.artwork-checklist{list-style:none;padding:0;margin:0 0 20px}.artwork-checklist li{display:flex;align-items:flex-start;gap:16px;margin-bottom:21px}.artwork-checklist li>span{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#e7f1f6;display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:.75rem;font-weight:600}.artwork-checklist p{font-size:.9375rem;line-height:1.7;margin:2px 0 0}.product-next{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 30px;background:#edf4f7;border-radius:20px;margin:40px 0 55px}.product-next h2{font-size:1.8rem;margin-bottom:12px}.product-next p{font-size:.9375rem;margin:0}.product-next>.btn{flex-shrink:0}.product-photo-placeholder{flex-direction:column;gap:10px;background:#edf3f6}.product-photo-placeholder>span{font-size:.75rem;color:#647e8a}.product-photo-placeholder>.icon{width:29px;height:29px}.product-photo-card>img{width:100%;height:100%;object-fit:cover}.product-info-section .faq summary{line-height:1.5}.product-info-section .faq details:first-child{padding-top:5px}
@media(max-width:960px){.product-detail-rich{gap:30px}.product-info-section{grid-template-columns:1fr 1.5fr;gap:30px}.product-section-nav{top:73px;top:calc(73px + env(safe-area-inset-top))}.product-info-section{scroll-margin-top:155px}.product-section-heading h2{font-size:1.75rem}.product-next{padding:27px}.product-next h2{font-size:1.6rem}.product-next .btn{font-size:.8125rem}.product-specs td,.product-specs th{padding:14px}.product-intro .product-lead{font-size:1rem}.gallery-main{aspect-ratio:1}.product-photo-empty strong{font-size:1.4rem}.gallery-thumbs{gap:8px}.gallery-thumb>.thumb-visual{height:62px}.gallery-thumb>span:last-child{font-size:.75rem}}
@media(max-width:640px){.product-detail-rich{grid-template-columns:1fr;gap:25px;padding-bottom:22px}.gallery-main{aspect-ratio:1.24;border-radius:21px}.product-photo-empty{padding:30px 20px;gap:9px}.photo-symbol{height:56px;width:56px;border-radius:16px;margin-bottom:3px}.photo-symbol .icon{width:28px;height:28px}.product-photo-empty strong{font-size:1.5rem;max-width:280px}.product-photo-empty .eyebrow{font-size:.75rem;margin-bottom:0}.gallery-thumb>.thumb-visual{height:55px}.gallery-thumb>span:last-child{font-size:.75rem;padding:8px 5px}.gallery-note{font-size:.75rem;margin-top:10px}.product-highlights{margin:20px 0 12px;gap:7px}.product-highlights>span{font-size:.75rem;padding:7px 10px}.product-intro h1{font-size:2.15rem}.product-intro .product-lead{font-size:.9375rem;line-height:1.7}.product-intro .availability-note{font-size:.8125rem;margin-bottom:20px}.product-direct{gap:8px 15px;margin-top:10px}.product-direct>button,.product-direct>a{font-size:.8125rem}.product-section-nav{margin:0 -18px;padding:9px 18px 12px;top:calc(70px + env(safe-area-inset-top));gap:7px;border-top:1px solid var(--line)}.product-section-nav a{font-size:.8125rem;padding:10px 14px}.product-info-section{grid-template-columns:1fr;gap:20px;padding:30px 0;scroll-margin-top:155px}.product-section-heading h2{font-size:1.7rem;margin-bottom:0}.product-section-heading .eyebrow{margin-bottom:10px}.product-section-heading p{font-size:.875rem;margin:13px 0 0}.product-uses{gap:8px;margin-bottom:22px}.product-uses li{font-size:.8125rem;padding:10px 12px}.product-consideration{padding-left:15px}.product-consideration h3{font-size:1rem;line-height:1.4}.product-consideration p{font-size:.875rem}.product-specs{font-size:.875rem;border-radius:13px}.product-specs th{width:34%;font-size:.8125rem}.product-specs th,.product-specs td{padding:13px 11px;line-height:1.6;overflow-wrap:anywhere}.product-specs caption{font-size:1rem}.artwork-checklist li{gap:12px;margin-bottom:19px}.artwork-checklist p{font-size:.875rem}.artwork-checklist li>span{width:29px;height:29px}.product-info-section .faq summary{font-size:.875rem}.product-next{padding:25px 22px;display:block;margin:30px 0 35px}.product-next h2{font-size:1.6rem}.product-next p{font-size:.875rem}.product-next>.btn{margin-top:20px;min-height:46px;font-size:.875rem}.product-gallery .gallery-main{touch-action:pan-y}}
@media print{.product-section-nav,.gallery-thumbs,.gallery-main,.gallery-note,.product-direct{display:none}.product-info-section{display:block;break-inside:avoid}.product-info-section .faq details{display:block}.product-info-section .faq details>p{display:block!important}.product-info-section{padding:20px 0}.product-detail-rich{display:block}}
/* Visual product pages: original lightweight diagrams and selectable preferences. */
.visual-product-page{--diagram-accent:#398d99;--diagram-paper:#fff;color:#123746;padding-bottom:20px}.visual-product-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:8px 0 30px}.visual-product-heading h1{font-size:clamp(1.9rem,3.2vw,2.8rem);line-height:1.15;letter-spacing:-.04em;margin:9px 0 13px;max-width:850px}.visual-product-heading>div>p{font-size:.96rem;line-height:1.6;max-width:730px;margin:0;color:#496471}.visual-product-heading .eyebrow{font-size:.7rem;margin:0}.product-use-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:260px;flex-shrink:0}.product-use-tags span{font-size:.7rem;line-height:1.4;background:#eef4f5;border-radius:25px;padding:7px 11px;color:#325968}.visual-product-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;padding:0 0 55px;align-items:start}.visual-gallery-column{position:sticky;top:22px;min-width:0}.visual-product-hero .gallery-main{aspect-ratio:1.12;border-radius:20px;background:#fff}.gallery-expand{position:absolute;bottom:15px;right:15px;border:1px solid #dce6eb;border-radius:30px;display:flex;align-items:center;gap:6px;padding:8px 13px;background:#fffffff2;color:#173f50;min-height:40px;font-size:.75rem;box-shadow:0 3px 12px #102b3710}.gallery-expand svg{width:17px;height:17px}.gallery-expand:hover{background:#eaf4f5}.visual-product-hero .gallery-note{color:#536b76;font-size:.72rem;line-height:1.55;margin:12px 3px 0}.visual-product-hero .gallery-thumb>span:last-child{color:#355565}.visual-product-hero .gallery-thumb.selected{background:#edf7f7}.visual-configurator{border:1px solid #dce8eb;border-radius:20px;background:#fbfdfd;padding:25px;min-width:0}.config-heading h2{font-size:1.45rem;margin:7px 0 8px;letter-spacing:-.025em}.config-heading .eyebrow{font-size:.67rem;margin:0}.config-heading p{font-size:.8rem;line-height:1.5;color:#4e6974;margin:0 0 22px;max-width:390px}.visual-choices{border:0;padding:0;margin:0 0 20px;min-width:0}.visual-choices legend{display:flex;gap:8px;align-items:center;font-size:.83rem;font-weight:650;line-height:1.4;margin-bottom:9px;padding:0;color:#1a414f}.visual-choices legend>span{font-size:.65rem;border:1px solid #cedeE3;background:#fff;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;color:#517781}.visual-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.visual-option{position:relative;display:flex;min-width:0;cursor:pointer}.visual-option input{position:absolute;opacity:0;width:1px;height:1px;left:50%;top:50%}.visual-option-body{display:flex;align-items:center;flex-direction:column;text-align:center;border:1px solid #d9e5e8;border-radius:11px;padding:9px 5px;width:100%;min-height:115px;color:#244b5c;background:#fff;transition:background .18s,border-color .18s,box-shadow .18s;position:relative}.choice-diagram{display:block;width:72px;height:55px;flex-shrink:0;color:#276276;margin:0 auto 4px}.visual-option-body strong{font-size:.73rem;line-height:1.35;font-weight:650;overflow-wrap:anywhere;max-width:100%}.visual-option-body small{font-size:.66rem;line-height:1.4;color:#526d78;display:block;margin:4px 0 0;overflow-wrap:anywhere}.choice-tick{display:none;position:absolute;top:5px;right:5px;background:#126482;color:white;border-radius:50%;width:16px;height:16px;place-items:center;font-size:.6rem}.visual-option input:checked+.visual-option-body{border-color:#126482;box-shadow:inset 0 0 0 1px #126482;background:#edf7f7;--diagram-paper:#edf7f7}.visual-option input:checked+.visual-option-body .choice-tick{display:grid}.visual-option:hover .visual-option-body{border-color:#729eac}.visual-option input:focus-visible+.visual-option-body{outline:3px solid #cc9b45;outline-offset:3px}.choice-help{grid-column:1/-1}.choice-help .visual-option-body{flex-direction:row;justify-content:center;gap:8px;min-height:32px;padding:7px 24px}.choice-help .choice-diagram{display:none}.choice-help .visual-option-body strong{font-weight:500;font-size:.7rem}.choice-help .visual-option-body small{margin:0;font-size:.66rem}.choice-help .choice-tick{top:50%;transform:translateY(-50%);right:9px}.custom-requirements{border-top:1px solid #dde8eb;border-bottom:1px solid #dde8eb;margin:2px 0 17px}.custom-requirements summary{font-size:.78rem;line-height:1.5;padding:13px 0;cursor:pointer;color:#254d5e}.custom-requirements summary>span{font-size:.66rem;color:#566f78;float:right;margin-left:7px}.custom-fields{padding:4px 0 10px}.custom-fields .field{font-size:.76rem;margin:0 0 12px}.custom-fields input,.custom-fields textarea{font-size:.85rem;min-height:44px;width:100%;resize:vertical}.config-submit{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:end;gap:12px}.config-submit .field{font-size:.74rem;margin:0;gap:6px}.config-submit input{font-size:.96rem;padding:10px 12px;min-height:47px;width:100%;border-radius:9px}.config-submit .btn{min-height:47px;font-size:.85rem;justify-content:center;padding:12px 16px}.config-note{font-size:.7rem;line-height:1.4;color:#536e79;text-align:center;margin:12px 0 0}.visual-product-config .product-direct{justify-content:space-between;gap:8px;margin:9px 3px 0}.visual-product-config .product-direct button,.visual-product-config .product-direct a{font-size:.76rem;color:#28566a}.visual-section-heading{margin-bottom:23px}.visual-section-heading .eyebrow{font-size:.68rem;letter-spacing:.14em;margin:0 0 10px}.visual-section-heading h2{font-size:clamp(1.6rem,2.5vw,2.1rem);line-height:1.2;margin:0;letter-spacing:-.035em}.product-story{padding:38px 0 45px;border-top:1px solid #e1e9ec}.product-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-story-card{margin:0;background:#f4f8f9;border:1px solid #dfe8eb;border-radius:18px;overflow:hidden}.product-story-card>div{aspect-ratio:1.65;background:white;overflow:hidden}.product-story-card img{width:100%;height:100%;object-fit:contain;display:block}.product-story-card figcaption{padding:22px 23px 23px;position:relative}.product-story-card h3{font-size:1.25rem;margin:0 0 7px;letter-spacing:-.025em}.product-story-card p{font-size:.85rem;line-height:1.55;color:#4a6570;margin:0;max-width:380px}.story-number{position:absolute;right:21px;top:20px;font-size:.67rem;color:#386879}.visual-image-note{font-size:.72rem;color:#566e79;margin:12px 0 0}.product-preparation{padding:30px 0 48px}.preparation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.preparation-card{position:relative;background:#f0f6f6;border-radius:15px;padding:25px;--diagram-paper:#f0f6f6}.preparation-card .choice-diagram{width:96px;height:77px;margin:0 0 19px}.step-number{position:absolute;right:21px;top:23px;font-size:.7rem;color:#54707c}.preparation-card h3{font-size:1.1rem;line-height:1.3;margin:0 0 9px;letter-spacing:-.02em}.preparation-card p{font-size:.84rem;line-height:1.6;color:#47636f;margin:0}.guide-download{display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid #dbe7eb;padding:20px 24px;border-radius:14px;margin-top:18px}.guide-download>div{display:flex;align-items:center;gap:15px;min-width:0}.guide-download .icon{width:27px;height:27px;color:#17657d;flex-shrink:0}.guide-download strong{display:block;font-size:.94rem;line-height:1.4}.guide-download span{display:block;font-size:.76rem;color:#526d78;margin-top:4px}.guide-download .btn{font-size:.8rem;white-space:nowrap;min-height:45px;flex-shrink:0}.guide-download .guide-format{font-size:.62rem;margin:0;display:inline-block;padding:3px 5px;background:#e5eff2;border-radius:4px;color:#285164}.product-help{padding:12px 0 45px;max-width:900px;margin:auto}.product-disclosure{border-bottom:1px solid #d9e5e9}.product-disclosure summary{font-size:.93rem;font-weight:600;line-height:1.5;padding:20px 32px 20px 0;cursor:pointer;color:#214856;list-style:none;position:relative}.product-disclosure summary::-webkit-details-marker{display:none}.product-disclosure summary:after{content:'+';position:absolute;right:6px;top:17px;font-size:1.25rem;font-weight:400;color:#28627a}.product-disclosure[open] summary:after{content:'−'}.disclosure-content{padding:0 0 23px;font-size:.88rem;color:#46626f;line-height:1.7}.disclosure-content p{font-size:.88rem;line-height:1.7;margin:0 0 12px}.disclosure-content p:last-child{margin-bottom:0}.compact-specs{margin:22px 0}.compact-specs>div{display:grid;grid-template-columns:155px minmax(0,1fr);border-top:1px solid #e3e9eb;padding:13px 0;gap:20px}.compact-specs dt{font-size:.82rem;color:#254e5c;font-weight:600}.compact-specs dd{margin:0;font-size:.84rem}.option-comparison{margin-bottom:22px}.option-comparison h3{font-size:.87rem;margin:0 0 13px}.option-comparison ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.option-comparison li{background:#f3f8f8;border-radius:12px;padding:16px;--diagram-paper:#f3f8f8}.option-comparison .choice-diagram{margin:0 0 9px}.option-comparison strong{font-size:.8rem;color:#234b5c}.option-comparison li p{font-size:.78rem;margin-top:5px}.product-related,.product-recent{padding:35px 0 50px;border-top:1px solid #e3ebed}.product-related .section-head h2{font-size:1.9rem}.product-related .section-head .eyebrow{font-size:.68rem;margin-bottom:9px}.recent-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.recent-product-card{display:block;border:1px solid #dde7ea;border-radius:14px;overflow:hidden;background:#fff;color:#193f50}.recent-product-art{aspect-ratio:1.35;background:#f5f9f9}.recent-product-art img{width:100%;height:100%;object-fit:contain}.recent-product-card h3{font-size:.89rem;padding:15px 16px;margin:0;line-height:1.4}.recent-product-card:hover{border-color:#33788f}.enquiry-item-details{min-width:0}.enquiry-item-options{font-size:.76rem;line-height:1.6;margin:7px 0 0;color:#486572;overflow-wrap:anywhere}.enquiry-item-options>div{display:block}.quick-product-selection{padding:12px 15px;border-radius:9px;background:#eef6f7;white-space:pre-line;font-size:.8rem!important;line-height:1.65!important;overflow-wrap:anywhere}.product-zoom{width:min(1100px,96vw);max-width:none;max-height:94dvh;border:0;border-radius:18px;padding:0;background:#fff;box-shadow:0 20px 90px #001e3650;color:#163e50}.product-zoom::backdrop{background:#071c2ee0;backdrop-filter:blur(5px)}.zoom-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 20px;border-bottom:1px solid #e4ecee}.zoom-toolbar p{margin:0;font-size:.88rem;color:#294f5e}.zoom-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:10px 48px}.zoom-stage img{display:block;width:100%;height:calc(85dvh - 120px);object-fit:contain}.zoom-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:44px;border-radius:10px;border:1px solid #d7e5e9;background:#f0f6f8;color:#1b5970;font-size:1.25rem;z-index:1}.zoom-arrow:first-child{left:7px}.zoom-arrow:last-child{right:7px}.zoom-hint{text-align:center;font-size:.72rem;color:#526e79;margin:0;padding:6px 15px 16px}
@media(min-width:1100px){.visual-product-page .gallery-thumbs .thumb-visual{height:86px}}
@media(max-width:1050px){.visual-product-heading{align-items:flex-start}.product-use-tags{max-width:200px}.visual-product-hero{gap:24px;grid-template-columns:1fr 1fr}.visual-configurator{padding:18px}.visual-gallery-column{top:100px}.visual-option-body{min-height:112px;padding:7px 4px}.choice-diagram{width:58px;height:47px}.visual-option-body strong{font-size:.7rem}.visual-option-body small{font-size:.64rem}.config-submit{grid-template-columns:75px 1fr;gap:8px}.config-submit .btn{font-size:.75rem;padding:10px}.preparation-card{padding:20px}.product-story-card p{max-width:85%}}
@media(max-width:760px){.visual-product-heading{display:block;padding:5px 0 23px}.visual-product-heading h1{font-size:1.85rem;line-height:1.2;margin:8px 0 11px}.visual-product-heading>div>p{font-size:.88rem}.product-use-tags{max-width:none;justify-content:flex-start;margin-top:14px}.product-use-tags span{font-size:.66rem;padding:6px 10px}.visual-product-hero{display:grid;grid-template-columns:1fr;gap:24px;padding-bottom:35px}.visual-gallery-column{position:static}.visual-product-hero .gallery-main{aspect-ratio:1.2}.visual-product-hero .gallery-thumbs .thumb-visual{height:66px}.visual-product-hero .gallery-note{font-size:.68rem}.visual-configurator{padding:20px 17px;border-radius:16px}.config-heading h2{font-size:1.35rem}.config-heading p{font-size:.78rem;margin-bottom:20px}.visual-option-body{min-height:117px;padding:9px 5px}.choice-diagram{width:70px;height:55px}.visual-option-body strong{font-size:.74rem}.visual-option-body small{font-size:.68rem}.visual-choices legend{font-size:.82rem}.choice-help .visual-option-body{min-height:36px}.config-submit{grid-template-columns:85px minmax(0,1fr);gap:11px}.config-submit .btn{font-size:.86rem}.config-note{font-size:.69rem}.visual-product-config .product-direct a,.visual-product-config .product-direct button{font-size:.74rem}.product-story{padding:25px 0 35px}.product-story-grid{gap:15px}.product-story-card figcaption{padding:17px 16px}.product-story-card h3{font-size:1.05rem;max-width:90%}.product-story-card p{font-size:.76rem;max-width:none}.story-number{display:none}.visual-section-heading{margin-bottom:18px}.visual-section-heading h2{font-size:1.6rem}.preparation-grid{gap:10px}.preparation-card{padding:17px 13px}.preparation-card .choice-diagram{width:70px;height:56px;margin:8px auto 16px}.step-number{right:12px;top:12px;font-size:.62rem}.preparation-card h3{font-size:.9rem}.preparation-card p{font-size:.76rem;line-height:1.55}.guide-download{padding:18px;gap:16px;align-items:stretch;flex-direction:column}.guide-download strong{font-size:.86rem}.guide-download .btn{align-self:flex-start}.product-preparation{padding:16px 0 30px}.product-help{padding:5px 0 35px}.product-disclosure summary{font-size:.86rem;padding-top:17px;padding-bottom:17px}.compact-specs>div{grid-template-columns:105px minmax(0,1fr);gap:12px}.compact-specs dt,.compact-specs dd{font-size:.79rem}.option-comparison ul{gap:8px}.option-comparison li{padding:12px}.option-comparison .choice-diagram{width:60px;height:48px}.option-comparison li p{font-size:.73rem}.recent-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recent-product-card h3{font-size:.8rem;padding:12px}.product-related,.product-recent{padding:25px 0 35px}.product-related .section-head h2{font-size:1.6rem}.product-related .section-head{align-items:flex-start}.product-related .section-head>a{font-size:.73rem}.product-zoom{width:calc(100vw - 18px);border-radius:14px;max-height:90dvh}.zoom-toolbar{padding:12px}.zoom-toolbar p{font-size:.8rem}.zoom-stage{padding:8px 34px}.zoom-arrow{width:32px;height:43px;border-radius:8px}.zoom-arrow:first-child{left:2px}.zoom-arrow:last-child{right:2px}.zoom-stage img{height:calc(80dvh - 105px)}.zoom-hint{font-size:.67rem}}
@media(max-width:480px){.product-story-grid{grid-template-columns:1fr}.product-story-card>div{aspect-ratio:1.6}.product-story-card figcaption{padding:18px}.product-story-card h3{font-size:1.17rem}.product-story-card p{font-size:.83rem}.preparation-grid{grid-template-columns:1fr}.preparation-card{display:grid;grid-template-columns:72px 1fr;gap:4px 16px;padding:19px 18px}.preparation-card .choice-diagram{grid-row:1/3;margin:0;align-self:center;width:70px;height:58px}.preparation-card .step-number{display:none}.preparation-card h3{font-size:1rem;margin:0 0 3px}.preparation-card p{font-size:.82rem}.option-comparison ul{grid-template-columns:1fr}.option-comparison li{display:flex;align-items:center;gap:15px;padding:14px}.option-comparison .choice-diagram{margin:0;flex-shrink:0}.option-comparison strong{font-size:.82rem}.option-comparison li p{font-size:.78rem}.visual-product-heading h1{font-size:1.7rem}.config-submit .btn{font-size:.8rem}.custom-requirements summary{font-size:.73rem}.custom-requirements summary>span{font-size:.6rem}.visual-option-body strong{font-size:.71rem}.visual-option-body small{font-size:.65rem}.visual-configurator{padding:18px 13px}}
@media(prefers-reduced-motion:reduce){.visual-option-body{transition:none}}
@media print{.visual-product-config,.product-related,.product-recent,.product-zoom{display:none}.visual-gallery-column{position:static}.product-story-grid,.preparation-grid{display:block}.product-story-card,.preparation-card{break-inside:avoid;margin-bottom:18px}.visual-product-heading{display:block}.guide-download .btn{display:none}}
/* Avoid overlapping the persistent site header; keep enquiry variants readable. */
.visual-gallery-column{position:static}
.enquiry-item-details{flex:1;min-width:0}
.quote-items>li{display:grid;grid-template-columns:minmax(0,1fr) 72px 65px;gap:12px;align-items:center}
.quote-items>li>input{width:72px;min-width:0}
.quote-items>li>button{padding:0;text-align:right}
.choice-help .visual-option-body{min-height:44px}
@media(max-width:480px){.quote-items>li{grid-template-columns:minmax(0,1fr) 72px;gap:6px 12px}.enquiry-item-details{grid-row:1/3}.quote-items>li>input,.quote-items>li>button{grid-column:2}.quote-items>li>button{text-align:center}.visual-product-hero .config-note{font-size:.7rem}.visual-product-hero .config-heading p{font-size:.78rem}}

.visual-choice-grid.choice-count-2,.visual-choice-grid.choice-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Configuration previews reuse the product's inline vector artwork. */
.gallery-main.is-config-preview{aspect-ratio:auto;min-height:390px;background:#f5f9fa}
.config-preview{display:grid;grid-template-rows:minmax(150px,1fr) auto;min-height:390px;color:#164f64;background:linear-gradient(145deg,#f6fafb,#eaf3f6)}
.config-preview-art{display:flex;align-items:center;justify-content:center;min-width:0;padding:34px 28px 12px}
.config-preview-art .config-preview-diagram,.config-preview-art .choice-diagram{display:block;width:min(72%,280px);height:auto;max-height:220px;margin:0;color:#165b70;filter:drop-shadow(0 8px 7px #15556812)}
.config-preview-art .config-preview-image{width:100%;height:230px;object-fit:contain;border-radius:10px;background:#fff;filter:none}
.config-preview-copy{padding:12px 23px 23px;text-align:center;min-width:0}
.config-preview-eyebrow{display:block;font-size:.63rem;font-weight:700;letter-spacing:.14em;color:#437083;margin-bottom:8px}
.config-preview-copy>strong{display:block;font-size:1.08rem;line-height:1.35;color:#143d50;overflow-wrap:anywhere}
.config-preview-copy>p{font-size:.74rem;line-height:1.55;color:#496573;margin:8px auto 12px;max-width:390px}
.config-preview-selections{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}
.config-preview-chip{display:inline-block;border:1px solid #c7dde5;border-radius:7px;background:#fff;padding:5px 8px;font-size:.66rem;line-height:1.45;color:#285266;overflow-wrap:anywhere;max-width:100%}
.gallery-thumbs:has([data-config-preview-tab]:not([hidden])){grid-template-columns:repeat(4,minmax(0,1fr))}
.config-preview-tab .thumb-visual{color:#195e74;background:#e4f1f4}
.config-preview-tab .thumb-visual svg{width:55px;height:44px}
.config-preview-tab.selected .thumb-visual{background:#d5eaf0}
.config-preview-link{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid #bcd8e2;background:#edf6f8;color:#174f63;padding:11px 13px;margin:0 0 18px;border-radius:9px;min-height:44px;text-align:left;font-size:.77rem;font-weight:600;cursor:pointer}
.config-preview-link:hover{background:#e0f0f4}
.config-preview-link .icon{width:18px;height:18px;flex-shrink:0}
.product-gallery{scroll-margin-top:110px}
.zoom-config-preview{width:100%;min-height:min(580px,70dvh);border-radius:10px}
.zoom-config-preview .config-preview-art{min-height:180px;padding-top:20px}
.zoom-config-preview .config-preview-diagram{width:min(75%,440px);max-height:360px}
.zoom-config-preview .config-preview-image{height:min(400px,45dvh)}
.zoom-config-preview .config-preview-copy{padding-bottom:20px}
@media(max-width:760px){.gallery-main.is-config-preview,.config-preview{min-height:340px}.config-preview{grid-template-rows:minmax(130px,1fr) auto}.config-preview-art{padding:34px 18px 6px}.config-preview-art .choice-diagram{width:180px;max-height:150px}.config-preview-art .config-preview-image{height:190px}.config-preview-copy{padding:10px 15px 19px}.config-preview-copy>strong{font-size:.97rem}.config-preview-copy>p{font-size:.7rem}.config-preview-chip{font-size:.63rem;padding:4px 6px}.gallery-thumbs:has([data-config-preview-tab]:not([hidden])){gap:6px}.gallery-thumbs:has([data-config-preview-tab]:not([hidden])) .gallery-thumb>span:last-child{font-size:.64rem;padding:9px 3px}.visual-product-hero .gallery-thumbs:has([data-config-preview-tab]:not([hidden])) .thumb-visual{height:57px}.zoom-config-preview .config-preview-art{padding:26px 8px 6px}.zoom-config-preview .config-preview-copy{padding:12px}.zoom-config-preview .choice-diagram{width:210px;max-height:210px}.zoom-config-preview .config-preview-image{height:200px}.zoom-config-preview{min-height:370px}.config-preview-link{font-size:.74rem}}
.gallery-main.is-config-preview .gallery-expand{top:12px;bottom:auto;right:12px}
.gallery-main.is-config-preview .gallery-index{top:19px;left:13px;font-size:.62rem;padding:3px 8px}
.gallery-main.is-config-preview .config-preview-art{padding-top:60px}

.product-photo-placeholder>span{color:#405e6d}
.product-photo-card>img,.gallery-thumb>.thumb-visual img{object-fit:contain;background:#fff}
