:root{--navy:#102c46;--ink:#183449;--orange:#ee7b37;--cream:#f5f4ef;--muted:#637482;--line:#dce2e4}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{outline-offset:5px}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13;letter-spacing:-1.5px}h1{font-size:clamp(38px,4.6vw,68px);font-weight:500}h2{font-size:clamp(30px,3vw,43px);font-weight:500}h3{font-size:23px;letter-spacing:-.6px}p{color:var(--muted)}.topbar{height:36px;background:var(--navy);color:#d7e3ec;padding:0 6%;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.3px}.topbar a{letter-spacing:.4px}header{min-height:100px;display:flex;justify-content:space-between;align-items:center;padding:18px 6%;gap:32px;background:white}.brand{display:inline-grid;position:relative;font-size:36px;line-height:.85;font-weight:800;letter-spacing:2px;padding-right:14px;flex-shrink:0}.brand span{font-size:10px;letter-spacing:4px;margin-top:10px}.brand i{width:7px;height:7px;background:var(--orange);position:absolute;right:0;top:0}nav{display:flex;gap:28px;align-items:center;font-size:13px}nav a[aria-current]{color:#b94d10}nav a:hover,.text-link:hover{color:#bd5319}.button{display:inline-flex;background:var(--orange);color:#102c46;gap:32px;align-items:center;justify-content:space-between;padding:17px 24px;font-weight:600;font-size:13px;border:1px solid var(--orange);line-height:1.4;min-height:49px}.button:hover{background:#f4955e}.button span{font-size:20px}.button.small{padding:11px 19px;min-height:42px}.text-link{font-size:13px;font-weight:600}.hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:590px;background:var(--cream)}.hero-copy{padding:65px 6vw 38px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:27px;line-height:1.5}.eyebrow>span{display:inline-block;background:var(--orange);width:7px;height:7px;margin-right:9px}.hero h1{margin-bottom:26px;letter-spacing:-2.7px;font-size:clamp(42px,4.6vw,66px)}.hero h1 em{font-style:normal;color:#637d89}.hero p{font-size:14px;line-height:1.9}.actions{display:flex;align-items:center;gap:28px;margin:33px 0 50px}.hero-foot{border-top:1px solid #d6ddd9;padding-top:21px;display:flex;gap:27px;font-size:8px;letter-spacing:1.1px;color:#67777b}.hero-art{position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 30%,#e9e9dc 0,#dedfd4 55%,#b8c5be 100%);display:flex;align-items:center}.hero-art img{width:120%;max-width:none;margin-left:-11%;transform:translateY(12px)}.art-number{position:absolute;top:35px;left:35px;font-size:9px;letter-spacing:2px}.vertical{position:absolute;right:22px;top:75px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px}.art-caption{position:absolute;bottom:28px;left:35px;right:35px;border-top:1px solid #aab8b0;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px}.art-caption span:last-child{font-size:9px;text-align:right;letter-spacing:0;color:#425d60}.intro-strip{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:29px 6%;gap:30px}.intro-strip>span{font-size:10px;letter-spacing:2px}.intro-strip p{color:#d1dce4;font-size:18px;line-height:1.5;margin:0}.intro-strip>a{width:49px;height:49px;border:1px solid #5a6d7f;border-radius:50%;text-align:center;line-height:45px;font-size:25px}.section{padding:80px 6%}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{color:#74848a;margin-bottom:18px}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.category-card{background:#e8ece9;padding:32px;position:relative;min-height:340px;overflow:hidden}.category-card .eyebrow{font-size:9px;color:#5c7176}.category-card>div:last-child{display:flex;justify-content:space-between;align-items:end;position:absolute;bottom:28px;left:32px;right:32px}.category-card h3{margin:0;font-size:29px}.category-card>div:last-child span{font-size:11px}.category-card.optical{background:#eeebe5}.frame-icon{position:relative;width:255px;display:flex;gap:26px;transform:rotate(-12deg);margin:60px auto}.frame-icon i{width:115px;height:77px;border:5px solid #92704c;border-radius:33% 37% 45% 45%;box-shadow:inset 0 0 12px #abb5b333}.frame-icon:after{content:'';height:18px;width:32px;border-top:5px solid #92704c;position:absolute;top:24px;left:112px;border-radius:50%}.sunglasses i{background:linear-gradient(135deg,#315259,#668078);border:8px solid #3e332b}.sunglasses:after{border-color:#3e332b}.caption{font-size:12px;margin-top:20px}.story{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9%}.story h2{margin-bottom:30px}.large{font-size:23px;line-height:1.6;color:var(--ink)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid var(--line);padding-top:25px}.steps b{color:#c25b20;font-size:12px}.steps h3{margin:22px 0 14px}.steps p{font-size:14px}.cta{padding:60px 6%;background:#e8edf0;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta .eyebrow{margin-bottom:20px}.cta h2{margin:0}.page-head{padding:65px 6%;background:var(--cream)}.page-head h1{max-width:950px;margin-bottom:22px}.page-head p{max-width:650px;margin-bottom:0}.page-head .eyebrow{color:#b75724}.filters{display:flex;gap:18px;align-items:end;padding-bottom:30px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filters label{width:215px;margin:0}.filters>span{margin-left:auto;font-size:12px;align-self:center}.filters>a{font-size:13px;align-self:center}.empty{text-align:center;padding:70px 15px}.empty-icon{font-size:55px;color:#9aaab0;margin-bottom:10px}.empty h2{font-size:32px}.empty p{max-width:540px;margin:0 auto 30px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-top:35px}.product-card img,.no-image{aspect-ratio:1;object-fit:contain;background:#fff;width:100%;margin-bottom:25px}.no-image{display:grid;place-items:center;color:#829099;font-size:13px}.product-card h2{font-size:25px;margin-bottom:8px}.product-card .eyebrow{margin-bottom:10px}.product-card p{font-size:12px}.product-detail{margin-top:35px}.product-detail h1{font-size:44px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}dl{display:grid;grid-template-columns:100px 1fr;gap:12px;font-size:14px;margin:30px 0}dt{color:var(--muted)}dd{margin:0}.pending{border-left:3px solid var(--orange);padding-left:25px;margin-top:35px}.pending h3{font-size:21px}.inquiry{background:var(--cream);padding:35px}.inquiry h2{font-size:30px}label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:1px solid #c8d1d5;background:#fff;padding:12px;margin-top:7px;color:var(--ink);border-radius:0}textarea{resize:vertical}.checkbox{display:flex;align-items:center;gap:12px}.checkbox input{width:19px;height:19px;margin:0}.login{max-width:450px;margin:0 auto;background:var(--cream);padding:40px}.login h1{font-size:36px}.editor{max-width:700px;margin:30px auto}.editor h1{font-size:40px}.image-preview{max-height:180px}.notice{padding:18px 6%;background:#e4f0e7}.notice.error{background:#ffeadb}.secondary{padding:11px 20px;background:white;border:1px solid #bbc8ce;color:var(--ink)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;min-width:670px}td,th{border-bottom:1px solid var(--line);padding:18px 12px}th{background:var(--cream);font-size:12px}td{font-size:14px}.row-actions{display:flex;gap:18px;align-items:center}.link-button{padding:0;background:none;border:0;color:var(--ink);font-size:14px}.danger{color:#a53224}.status{display:inline-block;padding:4px 10px;background:#f0eee8;font-size:11px}.status.live{background:#def0e4;color:#28603d}.materials{margin-top:70px}.inline-form{display:flex;gap:15px;align-items:end;margin-bottom:20px}.inline-form label{margin:0;width:260px}.preserve{white-space:pre-wrap}footer{background:var(--navy);color:white;padding:60px 6% 24px}footer p{color:#a8bdcd;font-size:12px;max-width:280px}footer .brand{margin-bottom:25px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1.3fr;gap:50px}.footer-top h3{font-size:13px;letter-spacing:0;margin-bottom:22px}.footer-top>div>a:not(.brand){display:block;font-size:12px;color:#d1dce4;margin-bottom:10px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #355169;padding-top:23px;margin-top:40px;font-size:10px;color:#a8bdcd}.floating{position:fixed;bottom:22px;right:22px;background:var(--navy);border:1px solid #7590a3;color:white;border-radius:30px;padding:10px 18px;box-shadow:0 4px 20px #001b3322;font-size:12px;z-index:5}.floating>span{margin:0 10px}.skip{position:fixed;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:0}.menu-button{display:none}.admin h1{font-size:40px}small{color:var(--muted)}
@media(min-width:1600px){header,.section,.page-head,.cta,footer,.intro-strip{padding-left:max(6%,calc((100% - 1400px)/2));padding-right:max(6%,calc((100% - 1400px)/2))}.hero{max-width:1800px;margin:auto}}
@media(max-width:1050px){nav{gap:16px;font-size:12px}header{padding:20px 4%;gap:20px}.hero-copy{padding:50px 5vw 30px}.hero h1{font-size:47px}.actions{flex-wrap:wrap;gap:18px;margin-bottom:30px}.hero-foot{gap:13px;font-size:7px}.hero-art img{width:140%;margin-left:-20%}.hero{min-height:560px}.category-card>div:last-child{align-items:start;gap:10px;flex-direction:column}.hero-copy p br{display:none}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{font-size:8px;padding:0 5%;letter-spacing:.5px}.topbar a{font-size:9px}header{min-height:83px;padding:20px 5%;position:relative}.brand{font-size:29px}.brand span{font-size:8px}.menu-button{display:block;border:1px solid var(--line);padding:8px 12px;background:white;color:var(--ink);font-size:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;z-index:10;padding:20px 5%;box-shadow:0 12px 16px #102c4610}nav.open{display:flex;align-items:stretch;flex-direction:column;gap:0}nav>a{padding:12px}nav .button{margin-top:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 30px}.hero h1{font-size:49px}.hero-art{min-height:370px}.hero-art img{width:100%;margin:-70px 0 -30px;max-height:450px}.art-number{top:22px}.vertical{top:45px}.art-caption{bottom:20px}.intro-strip{padding:30px 6%;flex-wrap:wrap;gap:20px}.intro-strip>span{width:100%;font-size:9px}.intro-strip p{font-size:17px}.section{padding:50px 6%}.section-heading{align-items:start}.section-heading>.text-link{white-space:nowrap;padding-top:8px}.section-heading h2{font-size:29px}.category-grid,.story,.contact-grid{grid-template-columns:1fr;gap:30px}.category-card{min-height:310px}.category-card>div:last-child{flex-direction:row;align-items:end}.story h2{font-size:35px}.steps{grid-template-columns:1fr;gap:25px}.steps h3{margin:15px 0 10px}.cta{padding:45px 6%;align-items:start;flex-direction:column}.cta h2{font-size:32px}.page-head{padding:44px 6%}.page-head h1{font-size:41px}.filters{gap:13px}.filters label{width:calc(50% - 7px)}.filters>span{margin-left:0}.product-grid{gap:20px}.product-card h2{font-size:20px}.product-card .eyebrow{font-size:8px}.product-card .text-link{font-size:11px}.inquiry{padding:24px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:10px;padding-bottom:40px}.footer-top .brand{margin-bottom:20px}.floating{bottom:15px;right:15px}.login{padding:28px}.inline-form{flex-wrap:wrap}.inline-form label{width:100%}.admin .section-heading{flex-wrap:wrap}.admin h1{font-size:33px}.hero-foot{font-size:7px;justify-content:space-between}.eyebrow{font-size:9px}.empty{padding:50px 0}.empty h2{font-size:28px}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background .15s,color .15s}.category-card:hover .frame-icon{transform:rotate(-8deg)}.frame-icon{transition:transform .3s}}
@media(max-width:760px){.section-heading{flex-wrap:wrap}.section-heading>div{flex-basis:100%}.section-heading>h2{flex-basis:100%}.section-heading>.text-link{padding-top:0}.category-card h3{font-size:26px}.category-card>div:last-child{gap:16px}.hero h1{font-size:44px}}

.product-gallery{min-width:0}.gallery-main{display:block;background:#fff;border:1px solid #a8a8a8}.gallery-main img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.gallery-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.gallery-thumbnails a{display:block;border:1px solid #a8a8a8;background:#fff;padding:5px;color:#333;font-size:11px;overflow-wrap:anywhere}.gallery-thumbnails a[aria-current=true]{border:2px solid #0f1a24;padding:4px}.gallery-thumbnails img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.gallery-thumbnails span{display:block;padding:6px 2px}.gallery-editor{border:1px solid #a8a8a8;margin:24px 0;padding:16px}.gallery-edit-item{border-top:1px solid #a8a8a8;padding:16px 0}.gallery-edit-item .image-preview{max-width:180px}@media(max-width:480px){.gallery-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}}

.catalog-categories{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.catalog-categories a{padding:12px 18px;border:1px solid #a8a8a8;color:#333;background:#fff}.catalog-categories a[aria-current=page]{background:#0f1a24;color:#fff;border-color:#0f1a24}.materials .inline-form{align-items:end;flex-wrap:wrap;gap:14px}.materials .inline-form .checkbox{max-width:210px}.materials .inline-form select{min-width:160px}@media(max-width:760px){.catalog-categories{gap:8px}.catalog-categories a{font-size:12px;padding:10px 12px}}

/* White photo displays; owner-approved mild saturation, original image files retained. */
.product-card img,.gallery-main,.gallery-main img,.gallery-thumbnails a,.gallery-thumbnails img{background:#fff}
.product-card img,.gallery-main img,.gallery-thumbnails img{filter:brightness(1.025) contrast(1.04) saturate(1.1);opacity:1;mix-blend-mode:normal}
.gallery-main{border:0}
.gallery-thumbnails a{border-color:#dedede}
.gallery-thumbnails a[aria-current=true]{border-color:#111}
.gallery-fullsize{display:inline-block;margin:4px 0 12px;text-decoration:underline;text-underline-offset:3px;color:#333;font-size:13px}
@media(max-width:540px){.catalog .product-grid{grid-template-columns:1fr;gap:36px}.catalog .product-card h2{font-size:25px}.catalog .product-card img{margin-bottom:18px}}

.catalog-range{font-size:12px;color:#666;margin:0 0 22px}.catalog-pagination{position:static;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:30px 0 0;background:transparent;box-shadow:none;font-size:13px}.catalog-pagination a,.catalog-pagination span[aria-current]{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:44px;padding:8px 13px;border:1px solid #a8a8a8;color:#333}.catalog-pagination span[aria-current]{background:#0f1a24;color:#fff;border-color:#0f1a24}.catalog-pagination .pagination-gap{padding:0 4px;color:#666}.catalog-pagination a:hover{border-color:#0f1a24;color:#0f1a24}@media(max-width:760px){.catalog-pagination{flex-direction:row;gap:6px;padding:26px 0 0;left:auto;right:auto;top:auto;z-index:auto}.catalog-pagination a{padding:8px 10px}.catalog-pagination a[rel]{flex-basis:auto}}

/* Let responsive catalogue images scale both dimensions together. */
.product-card img{height:auto}

.faq{max-width:1100px;margin:0 auto}.faq-item{border-bottom:1px solid #dce2e4}.faq-item:first-of-type{border-top:1px solid #dce2e4}.faq-item summary{cursor:pointer;min-height:56px;padding:18px 8px;font-size:18px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.faq-item summary:focus-visible{outline:2px solid #102c46;outline-offset:3px}.faq-item[open] summary{color:#102c46}.faq-item p{padding:0 8px 18px;margin:0;max-width:850px}@media(max-width:760px){.faq-item summary{font-size:16px;padding:17px 4px}.faq-item p{padding:0 4px 18px;font-size:14px}}

.facility-overview{padding-top:36px;padding-bottom:36px}.facility-overview figure{margin:0}.facility-overview img{display:block;width:100%;height:auto;aspect-ratio:1782/1002;object-fit:contain;background:#f5f5f5}.facility-overview figcaption{font-size:12px;color:#637482;padding-top:12px}.facility-story{background:#f7f7f5}.facility-story .eyebrow{color:#637482}.facility-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.facility-topics article{border-top:1px solid #dce2e4;padding-top:24px}.facility-topics p{font-size:14px}.facility-topics h3{font-size:24px}@media(max-width:760px){.facility-overview{padding-top:24px;padding-bottom:24px}.facility-topics{grid-template-columns:1fr;gap:24px}.facility-topics article{padding-top:18px}}

.facility-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}.facility-gallery-grid figure{margin:0;min-width:0}.facility-gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;background:#f7f7f5}.facility-gallery-grid figcaption{padding-top:18px}.facility-gallery-grid h3{font-size:25px;margin-bottom:10px}.facility-gallery-grid p{font-size:14px;margin-bottom:0}@media(max-width:760px){.facility-gallery-grid{grid-template-columns:1fr;gap:30px}.facility-gallery-grid h3{font-size:23px}}
