@font-face{font-family:ViroSans;src:local('Arial');font-display:swap} :root{--navy:#03243a;--navy-deep:#011d2f;--orange:#ff8a16;--orange-dark:#bd5100;--ink:#082b43;--muted:#586978;--line:#d9e3e9;--ice:#f1f6f9;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:ViroSans,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}svg{flex-shrink:0}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{line-height:1.1;letter-spacing:-.04em}h2{font-size:clamp(2rem,3.6vw,3rem)}h3{font-size:1.4rem}p{color:var(--muted)}:focus-visible{outline:3px solid var(--orange);outline-offset:5px} [hidden]{display:none!important}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;left:20px;top:-100px;background:var(--navy);color:#fff;padding:12px;z-index:1000}.skip-link:focus{top:10px}.site-header{height:90px;background:white;border-bottom:1px solid #e8eef2;position:relative;z-index:30}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{width:162px;display:inline-flex;align-items:center}.brand img{width:100%;height:auto}.brand-text{font-weight:700;font-size:34px;letter-spacing:-2px;position:relative;line-height:1.5}.brand-text:after{content:'';position:absolute;top:0;bottom:0;left:47px;width:65px;border:2px solid var(--orange);border-radius:6px;z-index:-1}.main-nav{display:flex;align-items:center;gap:38px}.main-nav>a,.nav-products>summary{font-size:14px;font-weight:600;cursor:pointer;list-style:none}.nav-products>summary::-webkit-details-marker{display:none}.nav-products>summary{display:flex;align-items:center;gap:8px}.main-nav>a:hover,.nav-products>summary:hover{color:var(--orange-dark)}.main-nav .button{color:var(--ink)}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;border:1px solid transparent;background:var(--orange);color:var(--navy-deep);font-weight:600;font-size:14px;line-height:1.3;padding:16px 23px;border-radius:7px;transition:background .2s,transform .2s;min-height:50px}.button:hover{background:#ffa641;transform:translateY(-2px)}.button.dark{background:var(--navy);color:#fff}.button.dark:hover{background:#124a68}.button.outline{border-color:var(--line);background:#fff}.button svg,.text-link svg{width:19px;height:19px}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--orange-dark);font-size:14px;font-weight:600}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.mega-menu{position:absolute;right:calc((100vw - min(var(--max),100vw - 64px))/2);top:78px;width:640px;background:#fff;box-shadow:0 18px 40px #03243a1c;border:1px solid var(--line);border-radius:10px;padding:30px;display:grid;grid-template-columns:1.4fr 1fr;gap:28px}.mega-menu strong{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.mega-menu a{display:block;padding:6px 0;font-size:15px}.mega-menu a:hover{color:var(--orange-dark)}.mega-menu .view-all{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;font-weight:600}.menu-toggle{display:none;border:0;background:none;color:var(--navy);padding:8px}.hero{position:relative;isolation:isolate;background:var(--navy-deep);color:#fff;min-height:490px;display:grid;place-items:center;text-align:center;overflow:hidden;border-radius:0 0 50% 5% / 0 0 7% 2%}.hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 49%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent,#011d2f18 25%,#011d2f22 75%,transparent)}.hero-copy{padding:68px 20px 80px;max-width:790px}.eyebrow{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.25em;margin-bottom:23px}.hero .eyebrow{color:#c4d1d9}.hero h1{font-size:clamp(2.8rem,5.5vw,4.8rem);font-weight:750;line-height:1.04;letter-spacing:-.052em;margin-bottom:22px}.hero h1 span{display:block;color:var(--orange)}.hero p{max-width:400px;margin:0 auto 28px;color:#d8e1e7;line-height:1.55;font-size:16px}.fields{padding:57px 0 50px;text-align:center}.section-intro h2{margin-bottom:10px}.section-intro p{margin:0}.field-groups{display:grid;grid-template-columns:2fr 1fr;margin-top:33px;gap:32px}.field-group+.field-group{padding-left:32px;border-left:1px solid var(--line)}.field-items{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:12px}.field{display:flex;flex-direction:column;align-items:center;gap:14px;font-size:15px;font-weight:700;line-height:1.25}.field-icon{width:108px;height:108px;border-radius:100%;background:var(--navy);color:var(--orange);display:grid;place-items:center;transition:transform .2s,background .2s;box-shadow:0 5px 15px #082b430a}.field-icon svg{width:48px;height:48px;stroke-width:1.35}.field:hover .field-icon{transform:translateY(-5px);background:#0b3b57}.group-caption{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.13em;font-weight:600;margin-top:25px;color:var(--muted);text-transform:uppercase}.group-caption:before,.group-caption:after{content:'';height:1px;background:#c4d2dc;flex:1}.story{padding:32px 0 64px;display:grid;grid-template-columns:1.6fr 1fr;gap:92px}.story h2{margin-bottom:20px}.accent{color:var(--orange-dark)}.story-copy p{max-width:580px;margin-bottom:20px}.story-year{border-left:1px solid var(--line);padding-left:55px;align-self:center}.year{font-size:clamp(4.5rem,8vw,7.5rem);line-height:1;letter-spacing:-.07em;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--orange);margin-bottom:8px}.story-year h3{font-size:18px;margin-bottom:16px;letter-spacing:-.02em}.story-year p{max-width:250px;line-height:1.5;font-size:15px}.portfolio{padding:4px 0 62px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:24px}.section-heading h2{margin:0}.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.featured{position:relative;isolation:isolate;overflow:hidden;border-radius:9px;min-height:328px;padding:36px 33px;display:flex;align-items:center;background:var(--navy-deep);color:white}.featured img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.featured.light{background:#eaf3f8;color:var(--ink)}.featured-copy{max-width:56%}.featured .eyebrow{font-size:10px;letter-spacing:.08em;color:#f3c18b;margin-bottom:18px}.featured.light .eyebrow{color:var(--muted)}.featured h3{font-size:29px;line-height:1.1;margin-bottom:18px}.featured p{font-size:14px;color:#d7e2e9;line-height:1.5}.featured.light p{color:var(--muted)}.featured .text-link{color:#ffb054}.featured.light .text-link{color:var(--orange-dark)}.quality-band{background:var(--orange);padding:43px 0;color:var(--navy-deep)}.quality-inner{display:grid;grid-template-columns:1.25fr 2fr;gap:34px}.quality-lead h2{font-size:34px;margin-bottom:14px}.quality-lead p{color:var(--navy);font-size:14px;line-height:1.5;margin-bottom:14px;max-width:300px}.quality-lead a{font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.quality-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.pillar{padding-left:20px;border-left:1px solid #7c3c0240}.pillar h3{font-size:16px;letter-spacing:-.015em;line-height:1.3;margin-bottom:17px}.pillar p{font-size:13px;color:#193949;line-height:1.5}.contact{padding:63px 0 65px;display:grid;grid-template-columns:1fr 1.07fr;gap:74px}.contact h2{max-width:440px;margin-bottom:20px}.contact .intro{max-width:410px;margin-bottom:24px}.contact-details{list-style:none;padding:0;margin:0;display:grid;gap:17px}.contact-details li{display:flex;align-items:flex-start;gap:16px;font-size:14px;line-height:1.5}.contact-details svg{width:21px;height:21px;margin-top:1px}.contact-details a:hover{text-decoration:underline}.contact-details .phone-pair{display:flex;flex-wrap:wrap;gap:7px 16px}.contact-form{padding:25px;background:var(--ice);border-radius:9px;display:grid;grid-template-columns:1fr 1fr;gap:15px 18px}.form-field{display:grid;gap:6px}.form-field label{font-size:13px;font-weight:600}.required{color:var(--orange-dark)}.wide{grid-column:1/-1}input,textarea,select{width:100%;padding:11px 13px;border:1px solid #d6e1e8;border-radius:5px;background:#fff;color:var(--ink);font-size:14px;min-width:0}input::placeholder,textarea::placeholder{color:#738391}textarea{resize:vertical;min-height:95px}.contact-form .button{width:100%;min-height:45px;padding:12px 18px}.form-note{font-size:12px;line-height:1.4;color:var(--muted);margin:0}.form-result{font-size:14px;line-height:1.5;margin:0;padding-top:8px}.site-footer{padding:45px 0 20px;background:var(--navy);color:#e8eff4}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.3fr;gap:35px}.footer-column:not(:first-child){border-left:1px solid #ffffff24;padding-left:32px}.footer-brand .brand{margin-bottom:18px;position:relative;z-index:0}.footer-brand .brand-text{color:#fff;font-size:32px}.footer-brand p{font-size:12px;max-width:220px;color:#bdcdd8;line-height:1.7}.footer-column h3{font-size:14px;letter-spacing:0;font-weight:600;margin:0 0 16px}.footer-column>a{display:block;font-size:12px;color:#c6d4de;margin-bottom:5px}.footer-column>a:hover{color:var(--orange)}.footer-column p{font-size:12px;color:#c6d4de}.newsletter{display:flex;margin:15px 0 8px}.newsletter input{border:0;border-radius:5px 0 0 5px;font-size:12px}.newsletter button{background:var(--orange);border:0;color:var(--navy);border-radius:0 5px 5px 0;min-width:43px;display:grid;place-items:center}.newsletter svg{width:21px}.footer-bottom{margin-top:32px;padding-top:20px;border-top:1px solid #ffffff24;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a6bdcb}.footer-bottom a{margin-left:22px}.page-hero{background:var(--navy);color:#fff;padding:52px 0 59px;position:relative;overflow:hidden}.breadcrumbs{font-size:12px;display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px;color:#a8becd}.breadcrumbs a:hover{color:var(--orange)}.page-hero h1{font-size:clamp(2.4rem,4.5vw,4rem);max-width:950px;margin-bottom:18px}.page-hero p{color:#cbd9e2;max-width:690px;margin:0}.page-hero .eyebrow{color:var(--orange);letter-spacing:.15em;margin:0 0 18px}.catalogue-layout{display:grid;grid-template-columns:225px 1fr;gap:44px;padding:50px 0 70px}.catalogue-nav h2{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}.catalogue-nav a{font-size:14px;display:block;padding:9px 12px;border-radius:5px;line-height:1.4;margin-bottom:3px}.catalogue-nav a:hover,.catalogue-nav a[aria-current=page]{background:var(--ice);color:var(--orange-dark)}.catalogue-nav .sub{font-size:12px;padding-left:24px;color:var(--muted)}.catalogue-toolbar{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-bottom:28px}.search-field{position:relative;flex:1;max-width:440px}.search-field input{padding:14px 15px 14px 43px;background:var(--ice);border:0}.search-field svg{position:absolute;left:14px;top:15px;width:19px;height:19px}.result-count{font-size:13px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-card{border:1px solid var(--line);padding:26px;border-radius:9px;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s;min-height:220px}.product-card:hover{border-color:var(--orange);box-shadow:0 8px 25px #03243a0a}.product-card .product-symbol{height:41px;width:41px;color:var(--orange-dark);margin-bottom:25px}.product-card .eyebrow{font-size:10px;letter-spacing:.07em;color:var(--muted);margin-bottom:12px}.product-card h2{font-size:23px;line-height:1.2;margin-bottom:25px;letter-spacing:-.025em}.product-card .text-link{margin-top:auto;font-size:13px}.empty-state{background:var(--ice);border-radius:8px;padding:50px;text-align:center}.empty-state h2{font-size:27px}.empty-state p{max-width:430px;margin:0 auto 25px}.product-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:70px;padding:50px 0 75px}.product-content{font-size:16px;line-height:1.8;min-width:0}.product-content p,.product-content li{color:#40596b;text-align:left!important}.product-content strong{color:var(--ink)}.product-content>p:first-child{font-size:24px;margin-bottom:25px;color:var(--ink)}.product-content p:empty{display:none}.product-content ul{padding-left:22px}.product-content li{margin-bottom:16px;padding-left:5px}.table-scroll{max-width:100%;overflow:auto;margin:30px 0;border:1px solid var(--line);border-radius:8px}.product-content table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;min-width:480px}.product-content td{padding:15px 19px;border-bottom:1px solid var(--line);vertical-align:top;width:auto!important}.product-content tr:nth-child(odd){background:var(--ice)}.product-content td:first-child{width:31%!important;min-width:150px}.product-content td p{margin:0 0 8px}.product-content tr:last-child td{border:0}.product-aside{align-self:start;position:sticky;top:35px;background:var(--ice);padding:28px;border-radius:8px}.product-aside .eyebrow{font-size:11px;margin-bottom:16px;color:var(--muted);letter-spacing:.1em}.product-aside h2{font-size:25px;margin-bottom:16px}.product-aside p{font-size:14px}.product-aside .button{width:100%;font-size:13px;gap:8px;margin:10px 0}.product-aside .aside-link{font-size:13px;display:block;margin-top:17px}.document-layout{padding:60px 0 80px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:65px}.document-nav{align-self:start;position:sticky;top:35px}.document-nav a{display:block;font-size:14px;padding:11px 0;border-bottom:1px solid var(--line)}.document-content{max-width:790px}.document-content h2{font-size:32px;margin:42px 0 23px}.document-content h2:first-child{margin-top:0}.document-content h3{font-size:21px;letter-spacing:-.025em;margin:35px 0 15px}.document-content p,.document-content li{color:#425b6d;font-size:16px;line-height:1.8}.document-content ul,.document-content ol{padding-left:22px}.document-content li{padding-left:5px;margin-bottom:13px}.map-panel{background:var(--ice);padding:0 0 60px}.map-panel iframe{display:block;width:100%;height:350px;border:0;border-radius:10px}.contact-page{padding-top:60px}.hours{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);font-size:14px}.hours strong{display:block;margin-bottom:6px}.mobile-only{display:none}@media(min-width:1450px){.hero{min-height:540px}.hero-copy{padding-block:80px 90px}}@media(max-width:1050px){.main-nav{gap:23px}.field-icon{width:88px;height:88px}.field-icon svg{width:42px;height:42px}.story{gap:55px}.featured{padding:30px 24px;min-height:300px}.featured h3{font-size:25px}.quality-inner{grid-template-columns:1fr;gap:26px}.quality-lead{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.quality-lead p{max-width:400px}.quality-lead a{grid-column:2}.quality-lead h2{grid-row:1/3}.contact{gap:42px}.footer-grid{gap:20px}.footer-column:not(:first-child){padding-left:20px}.product-layout{gap:35px;grid-template-columns:minmax(0,1fr) 230px}.catalogue-layout{gap:28px;grid-template-columns:200px 1fr}.product-card{padding:22px}.product-card h2{font-size:21px}}@media(max-width:760px){.container{width:calc(100% - 40px)}.site-header{height:75px}.brand{width:143px}.brand-text{font-size:30px}.brand-text:after{left:42px;width:58px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:75px;background:white;padding:20px;box-shadow:0 18px 25px #03243a15;align-items:stretch;gap:0}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a,.nav-products>summary{padding:14px 8px;font-size:16px}.main-nav .button{margin-top:12px;padding:15px}.mega-menu{position:static;box-shadow:none;width:100%;padding:10px 10px 20px;border:0;display:block}.mega-menu>div{margin-bottom:20px}.mega-menu a{font-size:14px}.hero{min-height:470px;border-radius:0 0 50% 5% / 0 0 5% 1%}.hero-art{object-position:49% center;opacity:.75}.hero:after{background:linear-gradient(90deg,#011d2f16,#011d2f88 25%,#011d2f88 75%,#011d2f16)}.hero-copy{padding:55px 22px 70px}.hero h1{font-size:clamp(2.55rem,8.5vw,4rem)}.hero .eyebrow{font-size:9px;letter-spacing:.15em}.hero p{max-width:330px;font-size:15px}.fields{padding:44px 0 32px}.section-intro p{font-size:14px}.field-groups{grid-template-columns:1fr;gap:25px;margin-top:28px}.field-group+.field-group{padding-left:0;border-left:0;width:68%;margin:0 auto}.field-icon{width:70px;height:70px}.field-icon svg{width:34px;height:34px}.field{font-size:12px;gap:11px}.field-items{gap:7px}.group-caption{font-size:9px;margin-top:20px}.story{grid-template-columns:1fr;gap:27px;padding:25px 0 47px}.story h2{font-size:34px}.story p{font-size:15px}.story-year{padding:20px 0 0;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1fr;gap:10px 30px;align-items:center}.year{grid-row:1/3;font-size:80px;margin:0}.story-year h3{margin:0;align-self:end}.story-year p{font-size:13px;margin:0;align-self:start}.portfolio{padding-bottom:42px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-heading h2{font-size:33px}.featured-grid{grid-template-columns:1fr;gap:16px}.featured{min-height:270px;padding:27px}.featured h3{font-size:29px}.featured-copy{max-width:58%}.featured p{font-size:13px}.quality-band{padding:35px 0}.quality-lead{display:block}.quality-lead h2{font-size:32px}.quality-lead p{max-width:300px}.quality-pillars{grid-template-columns:1fr 1fr;gap:24px 18px}.pillar{padding-left:15px}.pillar h3{font-size:16px;margin-bottom:12px}.pillar p{font-size:13px;margin:0}.contact{grid-template-columns:1fr;gap:28px;padding:45px 0}.contact h2{font-size:35px;max-width:330px}.contact .intro{font-size:15px}.contact-form{padding:22px 18px;gap:15px 12px}.contact-details li{font-size:13px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-column:not(:first-child){padding-left:0;border:0}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:none;margin-bottom:0}.footer-contact{grid-column:1/-1;max-width:340px}.footer-bottom{flex-direction:column;font-size:11px;gap:12px}.footer-bottom a{margin:0 18px 0 0}.site-footer{padding-top:35px}.page-hero{padding:30px 0 40px}.page-hero h1{font-size:36px}.page-hero p{font-size:15px}.breadcrumbs{font-size:11px;margin-bottom:22px}.catalogue-layout{grid-template-columns:1fr;padding-top:28px;gap:25px}.catalogue-nav{display:flex;overflow-x:auto;gap:5px;padding-bottom:10px}.catalogue-nav h2{display:none}.catalogue-nav a{flex:0 0 auto;font-size:12px;white-space:nowrap;border:1px solid var(--line)}.catalogue-nav .sub{display:none}.catalogue-toolbar{gap:14px;flex-wrap:wrap}.search-field{max-width:none;min-width:220px}.result-count{font-size:12px}.product-grid{gap:12px}.product-card{padding:19px 15px;min-height:215px}.product-card h2{font-size:18px;overflow-wrap:anywhere}.product-card .eyebrow{font-size:9px;line-height:1.5}.product-card .product-symbol{width:34px;height:34px;margin-bottom:18px}.product-card .text-link{font-size:12px}.product-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.product-aside{position:static}.product-content{font-size:15px}.product-content td{padding:13px}.document-layout{grid-template-columns:1fr;padding-top:25px;gap:25px}.document-nav{position:static;display:flex;overflow-x:auto;gap:20px}.document-nav a{white-space:nowrap;font-size:13px}.document-content h2{font-size:29px}.document-content p,.document-content li{font-size:15px}.map-panel iframe{height:270px}.empty-state{padding:35px 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.site-header,.site-footer,.product-aside,.breadcrumbs{display:none}.page-hero{background:#fff;color:#000;padding:15px 0}.page-hero .eyebrow{color:#222}.product-layout{display:block;padding:0}.container{width:100%}.table-scroll{overflow:visible}.product-content table{min-width:0}.product-content td{font-size:10pt}.product-content{font-size:11pt}.page-hero h1{font-size:24pt}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand img{height:72px;object-fit:contain}.footer-brand .brand img{height:auto}.featured.light img{opacity:.85}

/* Contact and privacy release: 2026-09-23. */
.form-privacy{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.form-privacy a,.privacy-layout a{text-decoration:underline;text-underline-offset:3px}.footer-contact .footer-inquiry{display:inline-flex;align-items:center;gap:10px;color:#ffac54;margin-top:13px;font-weight:600}.privacy-layout{max-width:900px;padding-block:42px 70px}.privacy-updated{font-size:13px;color:var(--muted)}.contact-form button:disabled{cursor:wait;opacity:.7}
