/* Lens & Moments shop — editorial photography storefront, scoped to .lm-store. */
.lm-store{--ink:#22489c;--blue:#244cc6;--paper:#fffdf5;--gold:#edb32e;--line:#bbc5df;--muted:#4e6082;background:var(--paper);color:var(--ink);font-family:'Manrope',Inter,sans-serif;padding:24px 0 70px;isolation:isolate}
.lm-store *{box-sizing:border-box}.lm-store-wrap{width:min(1280px,calc(100% - 64px));margin:auto}.lm-store a{color:inherit;text-decoration:none}.lm-store button,.lm-store input{font:inherit}.lm-store a:focus-visible,.lm-store button:focus-visible,.lm-store input:focus-visible,.lm-store summary:focus-visible{outline:3px solid #b86218;outline-offset:5px}.lm-store-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0 22px;border-bottom:1px solid var(--line);font-size:13px;font-weight:800}.lm-store-top b{background:var(--blue);color:var(--paper);border-radius:50%;padding:5px 9px;margin:0 8px}
.lm-store-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:9%;align-items:end;padding:64px 0 48px}.lm-store-kicker{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.lm-store-intro h1{font:500 clamp(38px,5.7vw,76px)/1.03 'Playfair Display',Georgia,serif;letter-spacing:-.035em;max-width:760px;margin:18px 0 0;text-wrap:balance}.lm-store-intro p{font-size:16px;line-height:1.8;margin:0 0 22px;color:var(--muted)}.lm-store-jump{display:flex;justify-content:space-between;border-bottom:2px solid var(--blue);padding:10px 0;font-size:14px;font-weight:800}.lm-store-jump span{font-size:26px}
.lm-store-collection{scroll-margin-top:110px}.lm-store-collection-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin:32px 0 20px}.lm-store-collection-head h1,.lm-store-collection-head h2{font:500 clamp(25px,3vw,38px)/1.2 'Playfair Display',Georgia,serif;margin:0}.lm-store-collection-head>span,.lm-store-collection-head>a{font-size:13px}.lm-store-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;border-block:1px solid var(--line);padding:18px 0;margin-bottom:30px}.lm-store-categories{display:flex;gap:8px;flex-wrap:wrap}.lm-store-categories a{font-size:12px;font-weight:800;padding:11px 15px;border:1px solid transparent;border-radius:3px}.lm-store-categories a[aria-current],.lm-store-categories a:hover{background:var(--blue);color:var(--paper);border-color:var(--blue)}.lm-store-categories span{font-size:10px;margin-left:6px}.lm-store-search{flex:0 0 240px}.lm-store-search label{display:block;font-size:11px;margin-bottom:4px;font-weight:700}.lm-store-search>div{display:flex;border-bottom:1px solid var(--ink)}.lm-store-search input{width:100%;min-width:0;border:0;background:transparent;padding:8px 0;color:var(--ink);font-size:13px}.lm-store-search button{background:transparent;border:0;color:var(--ink);font-size:23px;padding:5px 10px;cursor:pointer}
.lm-store-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}.lm-store-product{min-width:0}.lm-store-photo{position:relative;display:block;aspect-ratio:1.45;overflow:hidden;background:#e7ebf4;border:1px solid var(--ink);border-radius:5px}.lm-store-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.lm-store-photo:hover img{transform:scale(1.025)}.lm-store-badge{position:absolute;bottom:18px;left:18px;border:1px solid var(--paper);color:var(--paper);background:rgba(36,76,198,.9);backdrop-filter:blur(12px);padding:9px 13px;border-radius:3px;font-size:12px;font-weight:800;box-shadow:3px 3px 0 var(--ink)}.is-free .lm-store-badge{background:var(--gold);color:#304781;border-color:var(--gold)}.lm-store-product-body{padding:20px 2px 0}.lm-store-product-meta{display:flex;justify-content:space-between;gap:16px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.lm-store-product h3{font:500 clamp(24px,2.6vw,34px)/1.17 'Playfair Display',Georgia,serif;margin:12px 0;color:var(--ink);overflow-wrap:anywhere}.lm-store-product p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:55ch}.lm-store-spec{font-size:12px;color:var(--muted);margin-top:14px}.lm-store-product-foot{border-top:1px solid var(--line);margin-top:20px;padding:17px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}.lm-store-product-foot strong{font-size:17px}.lm-store-product-foot del{font-size:12px;font-weight:400;color:var(--muted);margin-left:7px}.lm-store-product-foot a{font-size:12px;font-weight:800;white-space:nowrap}.lm-store-product-foot a span{margin-left:12px}
.lm-store-help{display:flex;align-items:center;gap:24px;margin-top:48px;border:1px solid var(--ink);border-radius:4px;background:#f6c653;padding:26px 30px;box-shadow:5px 5px 0 var(--ink)}.lm-store-help>span{font-size:40px}.lm-store-help h2{font-size:18px;margin:0 0 6px}.lm-store-help p{font-size:13px;line-height:1.7;margin:0;max-width:760px}.lm-store-help>a{margin-left:auto;white-space:nowrap;font-size:12px;font-weight:800}.lm-store-empty{padding:50px 0}.lm-store-empty p{color:var(--muted)}.lm-store-alert{padding:18px;border:1px solid var(--ink);background:#eaf0ff}.lm-store-reset{font-size:13px}
.lm-product-main{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:6%;padding:48px 0 60px;align-items:start}.lm-product-image{display:block;position:relative;background:#e7ebf4;border:1px solid var(--ink);border-radius:5px;overflow:hidden}.lm-product-image img{width:100%;height:auto;max-height:650px;object-fit:contain;display:block}.lm-product-image>span{position:absolute;bottom:14px;right:14px;background:rgba(255,253,245,.94);backdrop-filter:blur(12px);padding:9px 14px;font-size:11px;font-weight:800;border-radius:3px}.lm-product-thumbs{display:flex;gap:12px;margin-top:15px;overflow:auto}.lm-product-thumbs button{padding:3px;background:transparent;border:1px solid var(--line);cursor:pointer;flex:0 0 85px}.lm-product-thumbs button[aria-pressed=true]{border:2px solid var(--blue)}.lm-product-thumbs img{display:block;width:100%;height:65px;object-fit:cover}
.lm-product-buy h1{font:500 clamp(34px,4vw,54px)/1.07 'Playfair Display',Georgia,serif;letter-spacing:-.025em;margin:17px 0 22px;overflow-wrap:anywhere}.lm-product-description{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 24px}.lm-product-price{display:flex;align-items:baseline;gap:12px;margin:20px 0}.lm-product-price strong{font-size:32px}.lm-product-price span,.lm-product-price del{font-size:13px;color:var(--muted)}.lm-product-buy-form{display:flex;align-items:end;gap:14px}.lm-product-buy-form label{display:flex;flex-direction:column;gap:6px;font-size:12px}.lm-product-buy-form input[type=number]{width:75px;height:52px;padding:10px;border:1px solid var(--ink);color:var(--ink);border-radius:3px}.lm-product-buy-form button{display:flex;justify-content:space-between;align-items:center;gap:20px;flex:1;min-height:52px;background:var(--blue);color:var(--paper);border:1px solid var(--blue);border-radius:4px;padding:16px 22px;font-weight:800;cursor:pointer;box-shadow:4px 4px 0 #b6c5ed}.lm-product-buy-form button:disabled{background:#647391;box-shadow:none;cursor:not-allowed}.lm-product-delivery{font-size:12px;line-height:1.7;color:var(--muted);margin:19px 0 24px}.lm-product-specs{font-size:12px;margin:0}.lm-product-specs>div{display:grid;grid-template-columns:95px 1fr;gap:15px;border-top:1px solid var(--line);padding:10px 0}.lm-product-specs dt{color:var(--muted)}.lm-product-specs dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.lm-product-details{display:grid;grid-template-columns:1fr 1fr;gap:6%;border-top:1px solid var(--line);padding:40px 0}.lm-product-story h2{font:500 34px/1.2 'Playfair Display',Georgia,serif;margin:12px 0 20px}.lm-rich-copy{font-size:14px;line-height:1.9;color:var(--muted);overflow-wrap:anywhere}.lm-rich-copy h2,.lm-rich-copy h3{font-family:'Manrope',Inter,sans-serif;font-size:20px;color:var(--ink)}.lm-rich-copy p{margin:0 0 16px}.lm-rich-copy ul,.lm-rich-copy ol{padding-left:24px}.lm-rich-copy li{padding-left:3px;margin:5px 0}.lm-rich-copy a{text-decoration:underline;color:var(--blue)}.lm-product-information details{border-bottom:1px solid var(--line)}.lm-product-information summary{list-style:none;display:flex;justify-content:space-between;font-size:15px;font-weight:800;padding:18px 0;cursor:pointer}.lm-product-information summary::-webkit-details-marker{display:none}.lm-product-information details[open] summary span{transform:rotate(45deg)}.lm-product-information .lm-rich-copy{padding:0 0 20px}
.lm-product-related{padding:24px 28px 30px;background:#e8eefb;border:1px solid var(--line);border-radius:5px;margin-top:15px}.lm-product-related .lm-store-collection-head{margin:0 0 20px}.lm-product-related .lm-store-collection-head h2{font-size:26px}.lm-product-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}.lm-product-related-card{display:flex;align-items:center;gap:18px;padding-top:18px;border-top:1px solid #aabbdd}.lm-product-related-card img{width:100px;height:85px;object-fit:cover;border-radius:3px}.lm-product-related-card h3{font:500 20px/1.2 'Playfair Display',Georgia,serif;margin:7px 0}.lm-product-related-card div>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em}.lm-product-related-card strong{font-size:12px}.lm-product-related-card>span{margin-left:auto;font-size:24px}
.lm-product-dialog{padding:50px 16px 16px;background:var(--paper);border:1px solid var(--ink);border-radius:6px;max-width:96vw;max-height:94vh}.lm-product-dialog::backdrop{background:rgba(36,60,115,.85);backdrop-filter:blur(8px)}.lm-product-dialog>img{max-width:90vw;max-height:78vh;object-fit:contain;display:block}.lm-product-dialog button{position:absolute;right:15px;top:10px;padding:8px 12px;border:0;color:var(--ink);background:transparent;font-weight:800;cursor:pointer}
@media(min-width:1500px){.lm-store-grid:has(> :nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.lm-store-intro{gap:5%;grid-template-columns:1.2fr .8fr;padding-top:38px}.lm-store-tools{align-items:stretch;flex-direction:column}.lm-store-search{flex:auto;max-width:400px}.lm-store-help{flex-wrap:wrap}.lm-store-help>a{margin-left:64px}.lm-product-main{gap:4%}.lm-product-specs>div{grid-template-columns:85px 1fr}}
@media(max-width:640px){.lm-store{padding-top:10px}.lm-store-wrap{width:calc(100% - 32px)}.lm-store-top{font-size:11px;gap:10px}.lm-store-intro{display:block;padding:34px 0 20px}.lm-store-intro h1{font-size:44px;margin-bottom:25px}.lm-store-intro p{font-size:14px}.lm-store-grid{grid-template-columns:1fr;gap:30px}.lm-store-collection-head{margin-top:24px}.lm-store-categories a{padding:10px;font-size:11px}.lm-store-tools{gap:18px;padding:14px 0}.lm-store-photo{aspect-ratio:1.4}.lm-store-product h3{font-size:29px}.lm-store-help{padding:20px;gap:12px;margin-top:30px}.lm-store-help>span{display:none}.lm-store-help>a{margin:3px 0 0}.lm-product-main{display:block;padding:25px 0 32px}.lm-product-buy{margin-top:30px}.lm-product-buy h1{font-size:38px}.lm-product-details{display:block;padding:28px 0}.lm-product-story{margin-bottom:25px}.lm-product-related{padding:20px 16px}.lm-product-related .lm-store-collection-head{align-items:start;flex-direction:column;gap:9px}.lm-product-related-card img{width:78px;height:78px}.lm-product-related-card h3{font-size:19px}.lm-product-image img{max-height:460px}.lm-product-related-grid{display:block}.lm-product-related-card+.lm-product-related-card{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.lm-store *{scroll-behavior:auto!important;transition:none!important}}
