@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500&family=Instrument+Serif:ital@0;1&family=Noto+Sans+Thai:wght@400;500&display=swap');

:root{--ink:#11110f;--paper:#f3f0e8;--white:#fff;--line:rgba(17,17,15,.18);--muted:#6c6a64;--pad:clamp(20px,4vw,64px);--section:clamp(72px,10vw,150px);--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans','Noto Sans Thai',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:74px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}img{display:block;max-width:100%}.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}.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:#fff;padding:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.announcement{height:28px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;font-size:10px;letter-spacing:.12em}.site-header{height:74px;position:sticky;top:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--pad);z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,36px);font-size:11px;letter-spacing:.1em}.nav-right{justify-content:flex-end}.nav a,.nav button,.menu-toggle{position:relative}.nav a:after,.nav button:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:currentColor;transition:right .25s}.nav a:hover:after,.nav button:hover:after{right:0}.wordmark{font-family:var(--serif);font-size:29px;letter-spacing:.04em;line-height:1}.menu-toggle{display:none;font-size:11px;letter-spacing:.1em}.mega-menu{position:absolute;left:0;right:0;top:74px;background:var(--paper);border-bottom:1px solid var(--line);padding:38px var(--pad) 46px;display:grid;grid-template-columns:repeat(3,1fr) 1.5fr;gap:40px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s;max-height:calc(100vh - 74px);overflow-y:auto}.site-header.mega-open .mega-menu{opacity:1;visibility:visible;transform:none}.mega-menu>div{display:flex;flex-direction:column;gap:9px}.mega-menu a{width:max-content}.mega-menu>div>a{position:relative}.mega-menu>div>a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:1px;background:currentColor;pointer-events:none;transition:right .25s}.mega-menu>div>a:hover:after,.mega-menu>div>a:focus-visible:after{right:0}.menu-label{display:block;font-size:10px;letter-spacing:.12em;color:var(--muted);margin-bottom:12px}.mega-feature{min-height:180px;background:#d9d0c2;display:flex!important;flex-direction:column;justify-content:flex-end;padding:22px;width:auto!important}.mega-feature strong{font-family:var(--serif);font-size:28px;font-weight:400}.mega-feature span,.mega-feature small{font-size:10px;letter-spacing:.12em}.search-panel{position:absolute;left:0;right:0;top:74px;background:var(--paper);border-bottom:1px solid var(--line);padding:36px var(--pad);z-index:3;max-height:calc(100vh - 74px);overflow-y:auto}.search-panel label{display:block;font-family:var(--serif);font-size:32px;margin-bottom:18px}.search-panel div{display:flex;border-bottom:1px solid var(--ink)}.search-panel input{flex:1;border:0;background:transparent;padding:12px 0;outline:0;font-size:18px}.search-panel button{font-size:11px;letter-spacing:.12em}.mobile-menu{position:absolute;left:0;right:0;top:74px;padding:26px var(--pad);background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100vh - 74px);overflow-y:auto}.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:26px}

.nav a:focus-visible:after,.nav button:focus-visible:after,.nav a[aria-current="page"]:after,.nav button[aria-current="page"]:after{right:0}.mobile-menu>a[aria-current="page"]{text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:6px}

.hero{height:calc(100svh - 28px);min-height:630px;position:relative;background:#c9bda9;color:#fff;overflow:hidden}
.hero img,.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.3),transparent 60%)}
.hero-slider{position:relative;overflow:hidden}
.hero-slides-track{position:absolute;inset:0;width:100%;height:100%}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;visibility:hidden;pointer-events:none;z-index:0;transition:opacity .85s cubic-bezier(.2,0,0,1),visibility .85s}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hero-slide img,.hero-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 6s ease}
.hero-slide.is-active img,.hero-slide.is-active video{transform:scale(1)}
.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.35),transparent 65%);z-index:1}
.hero-slide .hero-copy{z-index:2}
.hero-progress{position:absolute;left:50%;bottom:clamp(22px,4vw,48px);z-index:10;display:flex;width:min(560px,calc(100% - 40px));transform:translateX(-50%);gap:8px}.hero-progress-item{position:relative;flex:1;height:44px;padding:0}.hero-progress-track{position:absolute;left:0;right:0;top:50%;height:1px;overflow:hidden;background:rgba(255,255,255,.35)}.hero-progress-track i{display:block;width:100%;height:100%;background:#fff;transform:scaleX(var(--hero-progress-value,0));transform-origin:left center;will-change:transform}.hero-progress-item:focus-visible{outline:2px solid #fff;outline-offset:2px}.hero-progress-item:not(.is-active):hover .hero-progress-track{background:rgba(255,255,255,.7)}
.hero-copy{position:absolute;left:var(--pad);bottom:clamp(48px,8vw,100px);z-index:1;max-width:520px}
.hero-copy>span,.section-heading span,.editorial-copy>span,.fit-feature>span,.lens-feature span,.listing-hero>span,.eyebrow,.guide-hero>span,.content-page>span,.contact-layout>div>span,.collection-story>span,.collection-hero div>span{font-size:10px;letter-spacing:.16em}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(64px,8vw,124px);line-height:.78;letter-spacing:-.025em;margin:24px 0}
.hero p{font-size:16px;max-width:380px}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}
.button{min-height:48px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:.1em;border:1px solid currentColor;transition:.2s}
.button:hover{transform:translateY(-2px)}.button.light{background:#fff;color:#111;border-color:#fff}.button.dark{background:var(--ink);color:#fff;border-color:var(--ink)}.button.block{display:flex;width:100%}
.text-link{font-size:11px;letter-spacing:.1em;border-bottom:1px solid currentColor;padding-bottom:4px}.light-link{color:#fff}
.section{padding:var(--section) var(--pad)}
.product-section{padding-top:clamp(72px,8vw,120px)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px}
.section-heading h2{font-family:var(--serif);font-size:clamp(38px,4vw,64px);font-weight:400;margin:6px 0 0}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,32px)}
.product-visual{aspect-ratio:4/5;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e7e1d6}
.product-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.9),transparent 55%)}
.product-badge{position:absolute;top:14px;left:14px;font-size:9px;letter-spacing:.12em;z-index:2}
.frame-art{position:relative;width:68%;height:26%;display:flex;gap:4%;z-index:1;filter:drop-shadow(0 12px 7px rgba(0,0,0,.18));transition:transform .45s}
.product-visual:hover .frame-art{transform:scale(1.05) rotate(-2deg)}
.frame-art i{width:48%;height:100%;display:block;border:clamp(7px,1vw,13px) solid #151515;border-radius:42% 42% 47% 47%;position:relative}
.frame-art:before{content:"";position:absolute;left:47%;right:47%;top:34%;height:8px;background:#151515}.frame-art:after{content:"";position:absolute;left:-15%;right:-15%;top:28%;height:5px;background:#151515;z-index:-1}
.tone-tortoise .frame-art i,.tone-tortoise .frame-art:before,.tone-tortoise .frame-art:after{border-color:#5e3323;background-color:#5e3323}.tone-metal .frame-art i{border-color:#7c7f80}.tone-metal .frame-art:before,.tone-metal .frame-art:after{background:#7c7f80}.tone-olive .frame-art i{border-color:#55583b}.tone-olive .frame-art:before,.tone-olive .frame-art:after{background:#55583b}.tone-burgundy .frame-art i{border-color:#682934}.tone-burgundy .frame-art:before,.tone-burgundy .frame-art:after{background:#682934}
.product-meta{display:flex;justify-content:space-between;gap:12px;padding-top:15px}.product-meta div{display:flex;flex-direction:column}.product-meta a,.product-meta>span{font-size:12px}.product-meta div span,.product-fit{color:var(--muted);font-size:11px}.product-fit{margin-top:5px}
.product-card-home .product-fit{display:none}.product-card-home .product-meta{padding-top:18px}
.model-looks{padding:clamp(20px,3vw,48px) var(--pad) var(--section);background:#eef0f2}
.model-looks-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}
.model-looks-heading span{font-size:10px;letter-spacing:.16em;color:var(--muted)}
.model-looks-heading h2{margin:7px 0 0;font-family:var(--serif);font-size:clamp(42px,5vw,74px);font-weight:400;line-height:.9}
.model-looks-actions{display:flex;align-items:flex-end}
.model-looks-track{display:flex;gap:clamp(10px,1.5vw,24px);overflow-x:auto;padding-bottom:18px;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;touch-action:auto;cursor:grab;scrollbar-width:none;-ms-overflow-style:none}
.model-looks-track::-webkit-scrollbar{display:none;width:0;height:0}
.model-looks-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.model-look-card{flex:0 0 calc((100% - clamp(30px,4.5vw,72px))/4);min-width:0;scroll-snap-align:start}
.model-look-visual{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:#d9dde0}
.model-look-visual img{width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;user-select:none;transition:transform .55s cubic-bezier(.2,0,0,1)}
.model-look-visual:hover img{transform:scale(1.025)}
.model-look-visual:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.model-look-meta{display:flex;justify-content:space-between;gap:12px;padding-top:14px;font-size:10px;letter-spacing:.04em}
.model-look-meta>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.model-look-meta a{font-size:11px}.model-look-meta div span,.model-look-meta>span{color:var(--muted)}
.brand-statement{padding:var(--section) var(--pad);text-align:center;background:#111;color:#fff}.brand-statement p{font-family:var(--serif);font-style:italic;font-size:clamp(22px,3vw,42px)}.brand-statement h2{font-family:var(--serif);font-weight:400;font-size:clamp(60px,10vw,150px);line-height:.82;margin:38px 0 0}
.category-grid{display:grid;grid-template-columns:1fr 1fr}.category-tile{aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:space-between;padding:var(--pad);position:relative;overflow:hidden}.category-sun{background:#beb6a7}.category-optical{background:#d8d5cf}.category-tile:after{content:"";position:absolute;width:56%;height:24%;left:22%;top:40%;border:clamp(10px,2vw,25px) solid rgba(17,17,15,.8);border-radius:45%;box-shadow:0 20px 20px rgba(0,0,0,.12);transition:transform .5s}.category-tile:hover:after{transform:scale(1.05) rotate(-3deg)}.category-optical:after{border-radius:16%}.category-tile span,.category-tile small{font-size:10px;letter-spacing:.12em}.category-tile h2{font-family:var(--serif);font-size:clamp(46px,6vw,92px);font-weight:400;margin:auto 0 0;z-index:1}
.editorial-split{display:grid;grid-template-columns:1.25fr .75fr;min-height:760px}.editorial-image{overflow:hidden}.editorial-image img{width:100%;height:100%;object-fit:cover;object-position:65% center}.editorial-copy{padding:var(--section) var(--pad);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:#d9c9ba}.editorial-copy h2{font-family:var(--serif);font-size:clamp(58px,7vw,110px);font-weight:400;line-height:.85;margin:25px 0 35px}.editorial-copy p{font-size:17px;max-width:440px;margin:0 0 38px}
.fit-feature{padding:clamp(100px,15vw,220px) var(--pad);background:#cdd1c3}.fit-feature h2{font-family:var(--serif);font-size:clamp(64px,9vw,140px);font-weight:400;line-height:.82;margin:30px 0}.fit-feature p{max-width:510px;font-size:17px;margin-bottom:36px}
.lens-feature{padding:var(--section) var(--pad);display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;background:#e2d8ca}.lens-feature h2{font-family:var(--serif);font-size:clamp(60px,8vw,125px);font-weight:400;line-height:.82;margin:28px 0 0}.lens-feature>div:last-child{align-self:end;display:flex;flex-direction:column;align-items:flex-start;gap:25px}.lens-feature p{font-size:18px;max-width:490px}


.listing-hero,.guide-hero{padding:clamp(90px,12vw,170px) var(--pad) clamp(60px,8vw,110px);border-bottom:1px solid var(--line)}.listing-hero h1,.guide-hero h1,.content-page>h1,.contact-layout h1{font-family:var(--serif);font-size:clamp(72px,12vw,180px);font-weight:400;line-height:.8;margin:30px 0}.listing-hero p{color:var(--muted)}.catalogue{padding:35px var(--pad) var(--section)}.filters{display:flex;gap:10px;margin-bottom:35px}.filters select,.filters input{background:transparent;border:1px solid var(--line);min-height:44px;padding:0 14px;font-size:10px;letter-spacing:.08em}.filters input{min-width:240px}.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-state{padding:80px 0;text-align:center;color:var(--muted)}

.pdp{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(380px,.65fr);align-items:start}.pdp-gallery{display:grid;grid-template-columns:1fr 1fr}.pdp-gallery.single-image{grid-template-columns:1fr}.pdp-image{aspect-ratio:1/1.15;background:#e5ded3;display:flex;align-items:center;justify-content:center;position:relative;border-right:1px solid var(--paper);border-bottom:1px solid var(--paper)}.pdp-image small{position:absolute;left:18px;bottom:15px;font-size:9px;letter-spacing:.1em}.pdp-info{position:sticky;top:74px;padding:clamp(45px,6vw,90px) clamp(28px,4vw,64px)}.pdp-info h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,5vw,78px);line-height:.9;margin:17px 0 10px}.pdp-price{font-size:18px;margin:12px 0 28px}.pdp-info .lead{font-family:var(--serif);font-size:23px;line-height:1.25}.swatch-row{display:flex;align-items:center;gap:10px;margin:32px 0}.swatch-row>span{font-size:10px;letter-spacing:.1em;margin-right:auto}.swatch-row button{width:26px;height:26px;border-radius:50%;background:#171717;border:3px solid var(--paper);outline:1px solid var(--line)}.swatch-row button:nth-of-type(2){background:#673c2d}.swatch-row button:nth-of-type(3){background:#a5a5a5}.fit-summary{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:20px 0;margin:25px 0}.fit-summary>div{display:flex;justify-content:space-between;font-size:11px}.fit-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.fit-summary dl div{display:flex;flex-direction:column}.fit-summary dt{font-size:9px;letter-spacing:.1em;color:var(--muted)}.fit-summary dd{margin:4px 0 0}.fit-summary p{font-size:11px;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;font-size:11px;letter-spacing:.08em}details p{color:var(--muted)}

.collection-list{display:grid;grid-template-columns:repeat(3,1fr);padding:0 var(--pad) var(--section);gap:1px}.collection-list a{min-height:520px;background:#ddd3c5;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;transition:filter .25s}.collection-list a:nth-child(2){background:#bbb6ae}.collection-list a:nth-child(3){background:#cbd0c8}.collection-list a:hover{filter:brightness(.95)}.collection-list span,.collection-list small{font-size:10px;letter-spacing:.12em}.collection-list h2{font-family:var(--serif);font-size:50px;font-weight:400;line-height:.9;margin:15px 0}.collection-list p{max-width:330px}.collection-hero{height:calc(100svh - 102px);min-height:600px;position:relative;color:#fff}.collection-hero img{width:100%;height:100%;object-fit:cover}.collection-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 60%)}.collection-hero div{position:absolute;left:var(--pad);bottom:8vw;z-index:1}.collection-hero h1{font-family:var(--serif);font-size:clamp(72px,12vw,180px);font-weight:400;line-height:.8;margin:20px 0}.collection-hero p{font-size:17px}.collection-story{padding:var(--section) var(--pad);text-align:center}.collection-story h2{font-family:var(--serif);font-size:clamp(62px,9vw,135px);font-weight:400;line-height:.82;margin:30px 0}.collection-story p{font-family:var(--serif);font-size:25px}

.guide-hero{max-width:none}.guide-hero p{font-family:var(--serif);font-size:clamp(22px,3vw,38px);max-width:740px}.guide-hero.lens{background:#d8c7b8}.guide-steps{display:grid;grid-template-columns:repeat(2,1fr)}.guide-steps article,.lens-grid article{min-height:360px;padding:var(--pad);border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.guide-steps span,.lens-grid span{font-size:10px;letter-spacing:.1em}.guide-steps h2,.lens-grid h2{font-family:var(--serif);font-size:clamp(38px,5vw,68px);font-weight:400;margin:auto 0 20px}.guide-steps p,.lens-grid p{max-width:420px;color:var(--muted)}.measurement-diagram{display:grid;grid-template-columns:1fr 1fr;padding:var(--section) var(--pad);gap:8vw;align-items:center;background:#171717;color:#fff}.diagram-frame{aspect-ratio:2/1;position:relative;border:18px solid #f2eee5;border-radius:40%;display:flex;align-items:flex-end;justify-content:space-around;padding:20px}.diagram-frame:before{content:"";position:absolute;left:47%;right:47%;top:32%;height:10px;background:#f2eee5}.diagram-frame span{font-size:11px}.measurement-diagram h2{font-family:var(--serif);font-size:clamp(50px,7vw,100px);font-weight:400;line-height:.9}.measurement-diagram .button{background:#fff;color:#111;border-color:#fff;margin-top:25px}.lens-grid{display:grid;grid-template-columns:repeat(4,1fr)}.lens-grid article{min-height:430px}.partner-strip{display:grid;grid-template-columns:1fr 1fr;padding:var(--section) var(--pad);background:#111;color:#fff;gap:8vw}.partner-strip h2{font-family:var(--serif);font-size:clamp(50px,7vw,100px);font-weight:400;margin:25px 0}.partner-strip p{align-self:end;font-size:18px}.information-note{margin:60px var(--pad);padding:28px;border:1px solid var(--line);display:flex;gap:40px}.information-note p{margin:0;color:var(--muted)}.partner-list{display:grid;grid-template-columns:1fr 1fr;padding:0 var(--pad) var(--section);gap:1px}.partner-list article{background:#ded8cd;padding:45px;min-height:320px;display:flex;flex-direction:column}.partner-list span,.partner-list small{font-size:10px;letter-spacing:.1em}.partner-list h2{font-family:var(--serif);font-size:48px;font-weight:400;margin:auto 0 10px}.partner-list small{color:var(--muted)}

.content-page{padding:clamp(90px,12vw,170px) var(--pad);max-width:1150px}.content-page>h1{margin-bottom:80px}.content-page>h2{font-family:var(--serif);font-size:clamp(32px,5vw,64px);font-weight:400}.content-page>p{font-size:18px;max-width:720px}.content-page details{max-width:850px}.content-page details summary{font-family:var(--serif);font-size:26px;letter-spacing:0}.contact-layout{padding:clamp(90px,12vw,170px) var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-layout form{display:flex;flex-direction:column;gap:23px}.contact-layout label{font-size:10px;letter-spacing:.1em}.contact-layout input,.contact-layout textarea{width:100%;display:block;margin-top:8px;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;outline:0;font-size:16px}.contact-layout textarea{border:1px solid var(--line);padding:15px;resize:vertical}.contact-layout button{align-self:flex-start}.not-found{padding:15vw var(--pad);text-align:center}.not-found span{font-size:11px}.not-found h1{font-family:var(--serif);font-size:clamp(70px,12vw,180px);font-weight:400;line-height:.8}

.site-footer{padding:70px var(--pad) 25px;background:#111;color:#fff;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px}.site-footer>div:not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-intro strong{font-family:var(--serif);font-size:35px;font-weight:400}.footer-intro p{max-width:310px;color:#aaa}.site-footer a{color:#d4d4d4}.site-footer a:hover{color:#fff}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.2);padding-top:24px;margin-top:45px;font-size:10px;letter-spacing:.1em}

@media(max-width:960px){.nav{display:none}.site-header{grid-template-columns:1fr auto 1fr}.menu-toggle{display:block;justify-self:start}.wordmark{font-size:24px}.search-toggle{display:block!important;justify-self:end}.nav-right{display:flex}.nav-right a{display:none}.nav-right .search-toggle{display:block}.product-grid{grid-template-columns:repeat(2,1fr)}.model-look-card{flex-basis:calc((100% - 14px)/2)}.catalogue-grid{grid-template-columns:repeat(2,1fr)}.pdp{grid-template-columns:1fr}.pdp-info{position:static}.collection-list{grid-template-columns:1fr}.collection-list a{min-height:420px}.lens-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){html{scroll-padding-top:62px}.announcement{font-size:9px}.site-header{height:62px}.wordmark{font-size:21px}.mega-menu{display:none}.mobile-menu,.search-panel{top:62px}.hero{height:calc(100svh - 28px);min-height:650px}.hero img{object-position:66% center}.hero:after{background:linear-gradient(0deg,rgba(0,0,0,.56),transparent 70%)}.hero-copy{left:20px;right:20px;bottom:38px}.hero h1{font-size:65px}.hero p{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.section-heading{align-items:flex-end}.product-grid{gap:22px 10px}.product-meta{font-size:11px}.brand-statement h2{font-size:58px}.category-grid{grid-template-columns:1fr}.category-tile{aspect-ratio:4/4.2}.editorial-split{grid-template-columns:1fr}.editorial-image{height:70vh}.editorial-copy{min-height:500px}.lens-feature{grid-template-columns:1fr;gap:55px}.filters{overflow-x:auto;padding-bottom:8px}.filters select,.filters input{flex:0 0 auto}.filters input{min-width:190px}.catalogue-grid{grid-template-columns:repeat(2,1fr)}.pdp-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.pdp-image{flex:0 0 88%;scroll-snap-align:start}.pdp-info{padding:45px 20px}.fit-summary dl{grid-template-columns:1fr 1fr}.guide-steps,.lens-grid{grid-template-columns:1fr}.guide-steps article,.lens-grid article{min-height:300px}.measurement-diagram{grid-template-columns:1fr}.partner-strip,.partner-list,.contact-layout{grid-template-columns:1fr}.information-note{flex-direction:column;gap:10px}.site-footer{grid-template-columns:1fr 1fr;gap:40px 25px}.footer-intro{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px}.collection-hero{height:75svh}.collection-hero h1{font-size:70px}}

/* Production media and interaction quality gate */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #2365d8;outline-offset:4px}
.frame-art{display:none!important}
.product-visual:before{display:none}
.product-visual.has-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.product-visual.has-photo:hover img{transform:scale(1.025)}
.media-pending{width:min(72%,300px);display:flex;flex-direction:column;gap:10px;text-align:center;color:#77736b}
.media-pending:before{content:"";display:block;width:44px;height:1px;background:currentColor;margin:0 auto 14px}
.media-pending>span{font-size:10px;letter-spacing:.14em}.media-pending small{font-size:11px;line-height:1.45}
.category-tile:after{display:none}.category-sun{background:#4a443c;color:#fff}.category-optical{background:linear-gradient(135deg,#d8d5cf,#ebe7df)}
.category-sun:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.62),rgba(0,0,0,.05) 65%);z-index:0}
.category-tile{isolation:isolate}.category-tile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center;z-index:0;transition:transform .6s}.category-tile:hover>img{transform:scale(1.02)}
.category-tile:before{display:none}.category-optical{color:#fff}
.category-tile span,.category-tile small,.category-tile h2{position:relative;z-index:2;text-shadow:0 2px 18px rgba(0,0,0,.78)}
.collection-list a{position:relative;overflow:hidden;color:#fff}.collection-list a:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.02) 72%);z-index:1}.collection-list a>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}.collection-list a:hover>img{transform:scale(1.025)}.collection-list a>span,.collection-list a>h2,.collection-list a>p,.collection-list a>small{position:relative;z-index:2}
.pdp-image{margin:0;overflow:hidden}.pdp-image img,.pdp-image video{width:100%;height:100%;object-fit:cover}.pdp-video{background:#171815}.pdp-video video{display:block}.pdp-image.campaign-reference img{object-position:67% center}
.pdp-video figcaption{position:absolute;left:18px;bottom:15px;margin:0;font-size:9px;letter-spacing:.1em;background:rgba(243,240,232,.88);padding:6px 8px;color:var(--ink)}
@media (hover:hover) and (pointer:fine) and (min-width:681px){
  .pdp-image.has-photo img{transform:scale(1);transform-origin:var(--pdp-zoom-x,50%) var(--pdp-zoom-y,50%);transition:transform .52s cubic-bezier(.22,.61,.36,1),transform-origin .12s linear;will-change:transform}
  .pdp-image.has-photo:hover img{transform:scale(1.04)}
}
@media(prefers-reduced-motion:reduce){.pdp-image.has-photo img,.pdp-image.has-photo:hover img{transform:none;will-change:auto}}
.content-page{max-width:1440px}.content-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,.7fr);gap:clamp(50px,10vw,150px)}
.content-layout h2{font-family:var(--serif);font-size:clamp(32px,5vw,64px);font-weight:400;margin-top:0}.content-layout>div>p{font-size:18px;max-width:720px}
.content-status{border:1px solid var(--line);padding:24px;margin-top:48px;max-width:720px}.content-status strong,.support-nav>span{font-size:10px;letter-spacing:.12em}.content-status p{color:var(--muted);margin-bottom:0}
.support-nav{display:flex;flex-direction:column;align-self:start;border-top:1px solid var(--ink)}.support-nav>span{padding:18px 0;color:var(--muted)}.support-nav a{padding:13px 0;border-top:1px solid var(--line)}
.form-status{min-height:24px;color:var(--muted);margin:0}
.product-grid[aria-busy="true"]{opacity:.48;pointer-events:none}
.editorial-media-state{display:flex;align-items:center;justify-content:center;background:#d4cec3}.collection-hero-pending{background:linear-gradient(135deg,#171714,#3d3b36)}.collection-hero-pending>.media-pending{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);z-index:1;color:rgba(255,255,255,.56)}
.lens-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.lens-grid article{min-width:0}.lens-grid h2{overflow-wrap:anywhere}
@media(max-width:960px){.lens-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.lens-grid{grid-template-columns:1fr}.menu-toggle,.search-toggle{min-height:44px;min-width:44px}}
@media(max-width:380px){.lens-feature{grid-template-columns:minmax(0,1fr)}.lens-feature>div{min-width:0}.lens-feature h2,.collection-story h2{overflow-wrap:anywhere}}
@media(max-width:960px){.content-layout{grid-template-columns:1fr}.support-nav{max-width:520px}}
@media(max-width:680px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-visual .media-pending small{display:none}.product-visual .media-pending{width:82%}.content-page>h1,.contact-layout h1,.listing-hero h1,.guide-hero h1{overflow-wrap:anywhere}.collection-hero h1{font-size:clamp(52px,18vw,70px)}}
@media(max-width:380px){.catalogue-grid,.product-grid{grid-template-columns:1fr}.product-section .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card-home .product-meta{display:grid;grid-template-columns:1fr;gap:4px}.site-footer{grid-template-columns:1fr}.site-footer>div{grid-column:1/-1}.hero h1{font-size:56px}.pdp-image{flex-basis:94%}}
@media(max-width:680px){.model-looks{padding-right:0;padding-left:0}.model-looks-heading{padding:0 var(--pad)}.model-looks-track{gap:12px;padding:0 var(--pad) 18px;scroll-padding-left:var(--pad)}.model-look-card{flex:0 0 min(78vw,330px)}.model-look-meta{padding-right:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Truthful controls and compact responsive catalogue refinements */
.colour-swatch{width:26px;height:26px;border-radius:50%;background:#171717;border:3px solid var(--paper);outline:1px solid var(--line)}
.swatch-row strong{font-size:11px;font-weight:500}
.variant-selector{display:grid;gap:12px;margin:30px 0;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.variant-selector>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px}
.variant-selector>div:first-child span{font-size:10px;letter-spacing:.1em}.variant-selector>div:first-child strong{font-size:11px;font-weight:500;text-align:right}
.variant-selector>small{font-size:9px;color:var(--muted);letter-spacing:.06em}
.variant-swatches{display:flex;flex-wrap:wrap;gap:11px}
.variant-swatch{width:34px;height:34px;padding:3px;border:1px solid var(--line);border-radius:50%;background:var(--paper);transition:border-color .18s ease,transform .18s ease}
.variant-swatch span{display:block;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,var(--frame-colour) 0 50%,var(--lens-colour) 50% 100%)}
.variant-swatch:hover{transform:translateY(-2px);border-color:var(--ink)}.variant-swatch.is-active{border:2px solid var(--ink);padding:3px}.variant-swatch:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.content-layout .prose{font-size:18px;max-width:720px}
.support-empty{padding:80px var(--pad)}
@media(max-width:680px){
  .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}
  .filters select,.filters input{width:100%;min-width:0}
  .filters input,.filters select:last-child{grid-column:1/-1}
  .pdp-gallery{scrollbar-width:none}
  .pdp-gallery::-webkit-scrollbar{display:none}
}
@media(max-width:380px){
  .filters{grid-template-columns:1fr}
  .filters input,.filters select:last-child{grid-column:1}
}

/* Product decision details and differentiated fit education */
.pdp-info h1{font-size:clamp(44px,4.2vw,58px);overflow-wrap:normal}
@media(max-width:420px){.pdp-info h1{font-size:clamp(40px,13vw,54px);overflow-wrap:anywhere}}
.availability-status{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.availability-status span{font-size:9px;letter-spacing:.12em;color:var(--muted)}
.availability-status strong{font-size:11px;font-weight:500;text-align:right}
.availability-status[data-status="in_stock"] strong:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#3f704d}
.compatibility-list{margin:14px 0;padding:0;list-style:none;color:var(--muted)}
.compatibility-list li{position:relative;padding:5px 0 5px 18px}
.compatibility-list li:before{content:"✓";position:absolute;left:0;color:var(--ink)}
.detail-link{display:inline-block;margin-top:6px;padding-bottom:3px;border-bottom:1px solid currentColor;font-size:10px;letter-spacing:.08em}
.measurement-key{min-height:300px;display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,28px);position:relative;border-top:1px solid rgba(255,255,255,.45);border-bottom:1px solid rgba(255,255,255,.45)}
.measurement-key span{font-family:var(--serif);font-size:clamp(55px,8vw,120px);line-height:1}
.measurement-key i{font-family:var(--serif);font-size:clamp(26px,4vw,58px);font-style:normal;color:rgba(255,255,255,.55)}
.measurement-key small{position:absolute;left:0;bottom:16px;font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.6)}
@media(max-width:680px){
  .measurement-key{min-height:210px}
  .measurement-key small{left:50%;transform:translateX(-50%);width:100%;text-align:center}
  .availability-status{align-items:flex-start;flex-direction:column;gap:5px}
  .availability-status strong{text-align:left}
}

/* Direct-manipulation hero carousel */
.hero-slides-track{touch-action:pan-y;user-select:none;cursor:grab}
.hero-slider.is-dragging .hero-slides-track{cursor:grabbing}
.hero-slide{transform:translate3d(0,0,0);will-change:transform,opacity}
.hero-slide.is-active{z-index:2}
.hero-slide.is-drag-preview{opacity:1;visibility:visible;z-index:1}
.hero-slider.is-dragging .hero-slide.is-active{transform:translate3d(var(--hero-drag-x,0),0,0);transition:none}
.hero-slider.is-settling .hero-slide.is-active{transform:translate3d(var(--hero-drag-x,0),0,0);transition:transform .28s cubic-bezier(.22,.61,.36,1)}
.hero-slider.is-dragging .hero-slide img,.hero-slider.is-dragging .hero-slide video,.hero-slider.is-settling .hero-slide img,.hero-slider.is-settling .hero-slide video{transition:none}
.hero-slider:focus-visible{outline:2px solid #fff;outline-offset:-4px}
@media(prefers-reduced-motion:reduce){.hero-slide{will-change:auto}}
@media(prefers-reduced-motion:reduce){.hero-progress-track i{will-change:auto}.hero-progress-item.is-active .hero-progress-track{background:#fff}}

/* Footer social and direct-contact channels. */
.site-footer{grid-template-columns:minmax(230px,1.55fr) repeat(3,minmax(115px,.72fr)) minmax(210px,1fr)}
.footer-connect{display:grid!important;align-content:start;gap:34px!important}
.footer-connect section{display:grid;gap:12px}
.footer-connect .menu-label{margin:0;color:#aaa}
.footer-social-links{display:flex;align-items:center;gap:9px}
.footer-icon-link{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff!important;transition:border-color .2s ease,background-color .2s ease,opacity .2s ease}
.footer-icon-link svg,.footer-contact-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-icon-link svg .is-filled{fill:currentColor;stroke:none}
.footer-icon-link:hover{border-color:#fff;background:rgba(255,255,255,.09)}
.footer-icon-link.is-disabled{border-color:rgba(255,255,255,.13);color:#777!important;cursor:default}
.footer-channel-status{color:#777;font-size:9px;line-height:1.45;letter-spacing:.06em}
.footer-contact-list{display:grid;gap:11px}
.footer-contact-link{display:flex;align-items:center;gap:11px;width:fit-content;min-height:36px;color:#fff!important;font-size:12px}
.footer-contact-link svg{flex:0 0 26px;width:26px;height:26px}
.footer-contact-link svg .line-details{fill:none;stroke:#111;stroke-width:1.15}
.footer-contact-link:first-child svg{fill:#fff;stroke:#fff}
.footer-contact-link span{text-decoration:underline;text-underline-offset:3px}
.footer-contact-link:hover span{text-decoration-thickness:2px}
.footer-contact-link.is-disabled{color:#777!important;cursor:default}
.footer-contact-link.is-disabled span{text-decoration:none}
.footer-contact-link.is-disabled svg{fill:#777;stroke:#777}
.footer-contact-link.is-disabled svg .line-details{stroke:#111}
@media(max-width:1120px){.site-footer{grid-template-columns:1.4fr repeat(3,1fr)}.footer-connect{grid-column:1/-1;grid-template-columns:1fr 1fr!important;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}}
@media(max-width:680px){.footer-connect{grid-template-columns:1fr 1fr!important;gap:28px 24px!important}.footer-icon-link{width:44px;height:44px}.footer-contact-link{min-height:44px}}
@media(max-width:380px){.footer-connect{grid-template-columns:1fr!important}.footer-connect section{min-width:0}.footer-contact-link{max-width:100%}.footer-contact-link span{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.footer-icon-link{transition:none}}
