:root{--magenta:#aa0b58;--magenta-dark:#800442;--ink:#28282a;--muted:#6f7375;--line:#e5e5e5;--light:#f3f3f3;--green:#8aa51f;--shell:1260px;font-family:"Trebuchet MS",Arial,sans-serif;color:var(--ink);background:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;font-size:15px;line-height:1.45}button,input{font:inherit}a{color:inherit;text-decoration:none}.shell{width:min(var(--shell),calc(100% - 40px));margin-inline:auto}.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;padding:12px}.skip-link:focus{top:12px}.shipping-bar{height:27px;background:var(--magenta);color:#fff;font-size:12px}.shipping-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.shipping-inner div{display:flex;gap:12px}.site-header{background:#fff;position:relative;z-index:20}.header-main{height:92px;display:grid;grid-template-columns:235px minmax(260px,540px) 180px;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:10px;width:max-content}.brand-mark{width:72px;height:59px;position:relative;display:block}.brand-mark i{position:absolute;width:39px;height:26px;border-radius:80% 20% 80% 20%;background:linear-gradient(135deg,#cb2872,#8c0a58);transform:rotate(35deg)}.brand-mark i:nth-child(1){left:0;top:1px}.brand-mark i:nth-child(2){left:32px;top:1px;transform:scaleX(-1) rotate(35deg)}.brand-mark i:nth-child(3){left:18px;top:26px;transform:rotate(135deg)}.brand-copy{display:flex;flex-direction:column;line-height:.9;color:#5f6669}.brand-copy b{font-size:27px;font-weight:500}.brand-copy strong{font-size:26px;letter-spacing:-1px}.search{display:flex;border-bottom:1px solid var(--magenta);height:42px}.search input{border:0;outline:0;width:100%;font-size:16px;padding:0 8px;color:#6f7275}.search input::placeholder{color:#c8a4b5}.search button{border:0;background:transparent;width:52px;position:relative;cursor:pointer}.search button:before{content:"";position:absolute;width:23px;height:23px;border:3px solid var(--magenta);border-radius:50%;left:8px;top:5px}.search button:after{content:"";position:absolute;width:13px;height:3px;background:var(--magenta);transform:rotate(48deg);left:31px;top:29px}.header-actions{display:flex;justify-content:flex-end;gap:18px;align-items:center}.icon-button,.menu-button{border:0;background:transparent;cursor:pointer}.cart-icon{width:39px;height:36px;position:relative;border-bottom:2px solid #333;transform:skew(-8deg)}.cart-icon:before,.cart-icon:after{content:"";position:absolute;bottom:-8px;width:6px;height:6px;border:1px solid #222;border-radius:50%}.cart-icon:before{left:7px}.cart-icon:after{right:4px}.cart-count{position:absolute;right:-12px;top:-9px;background:var(--magenta);color:#fff;border-radius:50%;width:18px;height:18px;font-size:10px;display:grid;place-items:center}.account-icon{width:28px;height:28px;border:1px solid #555;border-radius:50%;position:relative}.account-icon:before{content:"";position:absolute;width:7px;height:7px;border:1px solid #555;border-radius:50%;top:5px;left:9px}.account-icon:after{content:"";position:absolute;width:14px;height:7px;border:1px solid #555;border-radius:10px 10px 0 0;border-bottom:0;left:6px;bottom:4px}.menu-button{display:none;width:32px}.menu-button span{height:2px;background:#333;display:block;margin:6px 0}.main-nav{border-bottom:1px solid #eee}.nav-row{height:45px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;white-space:nowrap;overflow:hidden}.nav-row a{height:45px;display:flex;align-items:center;font-size:16px;position:relative}.nav-row a.active:after{content:"";height:2px;background:#222;position:absolute;left:0;right:0;bottom:0}.breadcrumb-wrap{background:#f0f1f1}.breadcrumb{min-height:62px;display:flex;align-items:center;gap:15px;color:#6c7274;font-size:12px;font-weight:700}.product-shell{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--light);max-width:none;width:100%;padding-inline:max(20px,calc((100% - var(--shell))/2));align-items:start}.gallery{background:#fff;padding:38px 42px 28px;min-width:0}.main-image-frame{height:min(590px,48vw);min-height:430px;display:grid;place-items:center;position:relative;overflow:hidden}.main-image-frame img{width:100%;height:100%;object-fit:contain;transition:opacity .18s ease}.zoom-button{position:absolute;right:12px;bottom:10px;width:38px;height:38px;border:1px solid #ddd;border-radius:50%;background:#fff;color:var(--magenta);font-size:22px;cursor:pointer}.thumbs{display:flex;gap:9px;overflow-x:auto;padding:10px 2px 4px;scrollbar-width:thin}.thumb{flex:0 0 70px;width:70px;height:70px;padding:4px;border:1px solid #ddd;background:#fff;cursor:pointer}.thumb.active{border:2px solid var(--magenta)}.thumb img{width:100%;height:100%;object-fit:contain}.product-info{padding:22px 18px 50px 43px;position:relative}.maker{font-size:13px;color:#5d6265;margin:0 0 20px}.product-info h1{font-size:27px;line-height:1.25;font-weight:500;max-width:660px;margin:0 0 14px}.price{color:var(--magenta-dark);font-weight:800;font-style:italic;font-size:25px;margin:0 0 14px}.availability{display:flex;gap:12px;align-items:center;color:#555}.stock-check{width:28px;height:28px;border:3px solid var(--green);color:var(--green);font-size:19px;display:grid;place-items:center;transform:rotate(45deg)}.stock-check+span{font-size:14px}.purchase-row{display:flex;align-items:center;gap:14px;margin:34px 0 46px;position:relative}.quantity{height:38px;display:flex}.quantity button,.quantity input{height:38px;border:1px solid #ccc;background:#eee;width:36px;text-align:center}.quantity input{width:48px;background:#fff;border-left:0;border-right:0;appearance:textfield}.quantity input::-webkit-inner-spin-button{display:none}.quantity button{cursor:pointer;font-size:19px}.buy-button{border:0;background:var(--magenta);color:#fff;font-weight:800;font-size:22px;height:42px;min-width:200px;padding:0 24px;cursor:pointer;transition:background .2s}.buy-button:hover,.buy-button:focus-visible{background:var(--magenta-dark)}.gift-badge{margin-left:auto;width:105px;height:105px;border-radius:50%;background:var(--magenta);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.gift-badge span{font-size:25px}.gift-badge small{margin-top:5px}.gift-badge b{font-size:24px}.specs{background:#fff;padding:27px 18px;margin:0}.specs div{display:grid;grid-template-columns:170px 1fr;border-bottom:1px solid #e7e7e7;min-height:54px;align-items:center}.specs div:last-child{border-bottom:0}.specs dt{font-weight:800;color:#5f6264}.specs dd{margin:0;color:#8b154f}.description{padding-top:64px;padding-bottom:40px}.description h2,.glasses-section h2{font-size:21px;margin:0 0 25px;font-weight:800}.description h2:after,.glasses-section h2:after{content:"";display:block;width:48px;height:3px;background:var(--magenta);margin-top:10px}.description-copy{max-width:900px;color:#54585b}.description-copy ul{padding-left:22px;line-height:1.8}.glasses-section{padding-top:35px;padding-bottom:75px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start}.section-heading span{color:#8a8d90;font-size:13px}.glasses-carousel{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;touch-action:auto;scroll-snap-type:none;cursor:grab;user-select:none;padding:8px 2px 18px;scrollbar-width:none}.glasses-carousel::-webkit-scrollbar{display:none}.glasses-carousel.is-dragging{cursor:grabbing}.glass-card{flex:0 0 250px;border:1px solid #e6e6e6;background:#fff;padding:15px;display:flex;flex-direction:column;min-height:430px}.glass-card img{width:100%;height:215px;object-fit:contain;pointer-events:none}.glass-card small{color:#888;font-size:11px}.glass-card h3{font-size:16px;line-height:1.3;font-weight:600;min-height:62px;margin:9px 0}.glass-card .in-stock{font-size:12px;color:var(--green);font-weight:700}.glass-card strong{font-size:19px;color:var(--magenta-dark);margin-top:auto}.card-buy{margin-top:14px;border:0;background:var(--magenta);color:#fff;font-weight:800;height:38px;cursor:pointer}.site-footer{background:#333;color:#fff}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px;padding-block:55px}.footer-grid h3{font-size:25px}.footer-grid h4{color:#e34b91}.footer-grid a{display:block;margin:8px 0;color:#ddd}.footer-bottom{text-align:center;border-top:1px solid #555;padding:17px;color:#bbb;font-size:12px}.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid #ddd;box-shadow:0 -6px 24px #0002;padding:10px max(15px,calc((100% - 760px)/2));display:flex;justify-content:center;gap:70px;transform:translateY(120%);transition:transform .25s}.sticky-buy.visible{transform:translateY(0)}.sticky-buy .buy-button{font-size:16px;min-width:240px}.cookie-banner{position:fixed;z-index:90;left:22px;right:22px;bottom:20px;background:#fff;border:1px solid #ddd;box-shadow:0 8px 30px #0003;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cookie-banner p{margin:5px 0 0;color:#666}.cookie-actions{display:flex;gap:8px;white-space:nowrap}.cookie-actions button{height:38px;padding:0 15px;border:1px solid var(--magenta);color:var(--magenta);background:#fff;cursor:pointer}.cookie-actions button.primary{background:var(--magenta);color:#fff}.cookie-banner.hidden{display:none}.age-gate{position:fixed;inset:0;z-index:100;background:#fffefc;display:grid;place-items:center;padding:20px}.age-gate.hidden{display:none}.age-card{text-align:center;max-width:520px}.age-logo{display:flex;align-items:center;justify-content:center;gap:12px;color:#64696b;font-size:23px;margin-bottom:32px}.age-card h2{font-size:27px}.age-card>div:nth-of-type(2){display:flex;justify-content:center;gap:15px}.age-card button{min-width:100px;height:45px;border:1px solid var(--magenta);background:#fff;color:var(--magenta);font-weight:800;cursor:pointer}.age-card button.age-yes{background:var(--magenta);color:#fff}.age-card label{display:block;margin-top:20px;color:#777}.age-message{color:var(--magenta);font-weight:700}.image-modal{position:fixed;inset:0;background:#000d;z-index:120;display:none;place-items:center;padding:30px}.image-modal.open{display:grid}.image-modal img{max-width:90vw;max-height:90vh;object-fit:contain}.modal-close{position:absolute;right:22px;top:15px;border:0;background:transparent;color:#fff;font-size:42px;cursor:pointer}.toast{position:fixed;z-index:130;left:50%;bottom:90px;transform:translate(-50%,20px);background:#242424;color:#fff;border-radius:4px;padding:11px 16px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}body.sticky-visible{padding-bottom:62px}
@media(max-width:900px){.shell{width:min(100% - 28px,var(--shell))}.shipping-inner{justify-content:center}.shipping-inner div{display:none}.header-main{height:76px;grid-template-columns:1fr auto;gap:10px}.brand-mark{width:54px;height:45px;transform:scale(.75);transform-origin:left center}.brand-copy b{font-size:19px}.brand-copy strong{font-size:18px}.search{display:none}.header-actions{gap:12px}.menu-button{display:block}.main-nav{display:none}.breadcrumb{min-height:48px;gap:8px;overflow:hidden;white-space:nowrap}.product-shell{display:block;padding:0;background:#f3f3f3}.gallery{padding:18px 14px 15px}.main-image-frame{height:auto;min-height:0;aspect-ratio:1/1}.thumbs{padding-top:7px}.thumb{flex-basis:59px;width:59px;height:59px}.product-info{padding:24px 16px 35px}.product-info h1{font-size:22px}.purchase-row{margin:28px 0 28px;flex-wrap:wrap}.gift-badge{position:absolute;right:0;bottom:58px;width:76px;height:76px}.gift-badge b{font-size:17px}.gift-badge small{font-size:9px}.buy-button{font-size:18px;min-width:175px}.specs{padding:16px 12px}.specs div{grid-template-columns:42% 1fr;min-height:51px}.description{padding-top:42px}.glasses-section{padding-top:20px}.glass-card{flex-basis:74vw;max-width:280px}.footer-grid{grid-template-columns:1fr;gap:24px;padding-block:40px}.sticky-buy{gap:10px;padding:9px 12px}.sticky-buy .quantity button{width:33px}.sticky-buy .quantity input{width:43px}.sticky-buy .buy-button{min-width:0;flex:1}.cookie-banner{left:10px;right:10px;bottom:10px;display:block;padding:16px}.cookie-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr}.cookie-actions .primary{grid-column:1/-1}.age-card p{font-size:14px}}
@media(max-width:420px){.brand-copy strong{font-size:16px}.account-icon{display:none}.product-info h1{font-size:20px}.price{font-size:24px}.purchase-row{gap:8px}.quantity button{width:34px}.quantity input{width:43px}.buy-button{min-width:160px;padding-inline:15px}.gift-badge{display:none}.stock-check+span{font-size:13px}.section-heading span{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
