@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}
html{scroll-behavior:auto}
:root{--lx-bg:#151712;--lx-card:#1c1f1a;--lx-line:rgba(245,242,235,.12);--lx-ink:#f7f5f0;--lx-mute:#a7a59c;--lx-gold:#c89b3c;--lx-primary:var(--color-primary);--lx-cream:#faf8f5;--lx-max:1240px;--lx-r:16px;--lx-r-lg:22px;--font-display:'Plus Jakarta Sans',system-ui,sans-serif;--font-sans:'Plus Jakarta Sans',system-ui,sans-serif;--lx-shadow:0 16px 48px rgba(0,0,0,.30);--lx-shadow-soft:0 12px 40px rgba(20,23,18,.07)}
body{margin:0;background:var(--lx-bg);color:var(--lx-mute);font:var(--text-body-md);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--lx-gold);text-decoration:none;transition:color .15s linear}
a:hover{color:var(--lx-ink)}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--lx-ink);margin:0;text-wrap:balance}
p{text-wrap:pretty}
.wrap{max-width:var(--lx-max);margin:0 auto;padding:0 48px}
.eyebrow{font:var(--text-caption-md);letter-spacing:.14em;text-transform:uppercase;color:var(--lx-gold);margin:0 0 20px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:'';width:28px;height:1px;background:var(--lx-gold)}
.eyebrow[style*="--noline"]::before{display:none}
.display-xl{font:700 clamp(44px,6vw,82px)/1.06 var(--font-display);letter-spacing:-.02em}
.display-lg{font:700 clamp(30px,4vw,50px)/1.14 var(--font-display);letter-spacing:-.015em}
.display-md{font:600 clamp(23px,2.6vw,32px)/1.25 var(--font-display);letter-spacing:-.01em}
.lead{font:400 18px/1.75 var(--font-sans);color:var(--lx-mute);max-width:58ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 30px;border-radius:999px;font-family:var(--font-sans);font-weight:600;letter-spacing:.01em;font-size:15px;cursor:pointer;border:1px solid transparent;transition:all .2s ease;white-space:nowrap}
.btn-primary{background:var(--lx-gold);color:#151712}
.btn-primary:hover{background:#d9ae4e;transform:translateY(-2px);box-shadow:0 12px 30px color-mix(in srgb,var(--lx-gold) 34%,transparent)}
.btn-gold{background:transparent;color:var(--lx-gold);border-color:color-mix(in srgb,var(--lx-gold) 50%,transparent)}
.btn-gold:hover{border-color:var(--lx-gold);color:var(--lx-ink);background:color-mix(in srgb,var(--lx-gold) 10%,transparent)}
.btn-ghost{background:transparent;color:var(--lx-mute);border-color:var(--lx-line)}
.btn-ghost:hover{color:var(--lx-ink);border-color:var(--lx-mute)}
.section-light .btn-gold{color:#8a6a1f;border-color:#d8ccb4}
.section-light .btn-gold:hover{color:#151712;background:rgba(200,155,60,.12)}
.corner{position:absolute;top:0;left:0;width:12px;height:12px;background:var(--lx-gold)}
.corner.gold{background:var(--lx-gold)}

/* loader */
.loader{position:fixed;inset:0;background:var(--lx-bg);z-index:5000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;transition:opacity .7s ease,visibility .7s}
.loader.done{opacity:0;visibility:hidden}
.loader img{width:150px;filter:drop-shadow(0 8px 40px rgba(0,0,0,.5));animation:lx-breathe 2.4s ease-in-out infinite}
.loader .bar{width:180px;height:1px;background:var(--lx-line);overflow:hidden}
.loader .bar i{display:block;height:100%;width:40%;background:var(--lx-gold);animation:lx-load 1.4s ease-in-out infinite}
.loader .word{font:var(--text-caption-md);letter-spacing:.3em;text-transform:uppercase;color:var(--lx-mute)}
@keyframes lx-load{0%{transform:translateX(-100%)}100%{transform:translateX(450%)}}
@keyframes lx-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:900;transition:background .3s ease,box-shadow .3s ease;background:color-mix(in srgb,var(--lx-bg) 90%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--lx-line)}
.nav.scrolled{background:var(--lx-bg);box-shadow:0 8px 30px rgba(0,0,0,.28)}
.nav-inner{max-width:var(--lx-max);margin:0 auto;padding:0 48px;height:84px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.nav-brand{display:flex;align-items:center;gap:15px;padding:6px 0}
.nav-brand img{height:60px;width:auto;object-fit:contain;flex-shrink:0}
.nav-brand .word{font:600 17px/1.1 var(--font-display);letter-spacing:.12em;color:var(--lx-ink)}
.nav-brand .word small{display:block;font:400 9px/1 var(--font-sans);letter-spacing:.32em;color:var(--lx-gold);margin-top:5px}
.nav-links{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}
.nav-links>li{position:relative}
.nav-links a{font:500 12px/1 var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--lx-mute);padding:12px 0}
.nav-links a:hover,.nav-links a.active{color:var(--lx-gold)}
.mega{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);background:var(--lx-card);border:1px solid var(--lx-line);border-radius:14px;padding:24px;display:none;grid-template-columns:repeat(3,180px);gap:20px}
.nav-links li:hover .mega{display:grid}
.mega h5{font:var(--text-caption-md);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-gold);margin:0 0 12px}
.mega a{display:block;text-transform:none;letter-spacing:0;font:400 14px/1.4 var(--font-sans);padding:5px 0;color:var(--lx-mute)}
.nav-cta{display:flex;align-items:center;gap:18px}
.nav-cta .btn{height:42px;padding:0 22px;font-size:11px}
.nav-burger{display:none;background:none;border:1px solid var(--lx-line);border-radius:12px;color:var(--lx-ink);width:44px;height:44px;font-size:18px;cursor:pointer}
.mobile-menu{display:none;position:fixed;inset:84px 0 0;background:var(--lx-bg);z-index:890;padding:32px 48px;flex-direction:column;gap:6px;overflow:auto}
.mobile-menu.open{display:flex}
.mobile-menu a{font:500 15px/1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-mute);padding:16px 0;border-bottom:1px solid var(--lx-line)}
@media (max-width:1120px){.nav-links{display:none}.nav-cta .btn{display:none}.nav-burger{display:block}}

/* sections */
.section{padding:128px 0;position:relative}
.section-light{background:var(--lx-cream);color:#5f5d55}
.section-light h1,.section-light h2,.section-light h3,.section-light h4{color:#1a1c17}
.section-light p,.section-light .lead{color:#5f5d55}
.section-light .eyebrow{color:#a07d24}
.section-light .eyebrow::before{background:#a07d24}
.section-light .hairline-top{border-color:#ece7dc}
.section-light .lx-card,.section-light .icard{background:#fff;border-color:#ece7dc;box-shadow:var(--lx-shadow-soft)}
.section-light .lx-card:hover,.section-light .icard:hover{border-color:#e0d3b8;box-shadow:0 20px 54px rgba(20,23,18,.12);transform:translateY(-4px)}
.section-light .lx-card h3,.section-light .icard h3{color:#1a1c17}
.section-light .lx-card p,.section-light .icard p{color:#6d6a60}
.section-light .lx-card .num,.section-light .icard .ic svg{color:#a07d24}
.section-light .icard .ic{border-color:#e6dfd0}
.section-light .product-tile{background:#fff;border-color:#ece7dc;box-shadow:var(--lx-shadow-soft)}
.section-light .product-tile:hover{border-color:#e0d3b8;box-shadow:0 20px 54px rgba(20,23,18,.12);transform:translateY(-4px)}
.section-light .product-tile h4{color:#1a1c17}
.section-light .product-tile p{color:#6d6a60}
.section-light .product-tile .meta{color:#8a877c}
.section-light .product-tile .cat{background:rgba(255,255,255,.9);border-color:#e6dfd0;color:#a07d24}
.section-light .stat{border-color:#ece7dc}
.section-light .stat .num{color:#a07d24}
.section-head{max-width:720px;margin-bottom:72px}
.section-head.center{margin:0 auto 72px;text-align:center}
.section-head.center .eyebrow{justify-content:center}
.section-head p{margin-top:20px}
.hairline-top{border-top:1px solid var(--lx-line)}

/* cards */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.lx-card{background:var(--lx-card);border:1px solid var(--lx-line);border-radius:var(--lx-r);padding:38px 34px;position:relative;transition:border-color .2s ease,transform .3s ease,box-shadow .3s ease}
.lx-card:hover{border-color:color-mix(in srgb,var(--lx-gold) 40%,var(--lx-line));transform:translateY(-4px);box-shadow:var(--lx-shadow)}
.lx-card .num{font:600 13px/1 var(--font-sans);letter-spacing:.1em;color:var(--lx-gold);margin-bottom:22px}
.lx-card h3{font:600 21px/1.3 var(--font-display);margin-bottom:10px}
.lx-card p{margin:0;font:var(--text-body-sm);color:var(--lx-mute);line-height:1.65}
.stat .num{font:700 clamp(40px,4vw,60px)/1 var(--font-display);color:var(--lx-gold)}
.stat .cap{margin-top:10px;font:var(--text-body-sm);color:var(--lx-mute)}
.stat{border-top:1px solid var(--lx-line);padding-top:24px}

/* product imagery + tiles */
.ph{position:relative;overflow:hidden;background:var(--lx-card)}
.ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.6,.2,1)}
.ph .ph-fallback{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(120% 120% at 30% 20%,color-mix(in srgb,var(--lx-gold) 14%,var(--lx-card)),var(--lx-card))}
.ph.broken img{display:none}
.ph.broken .ph-fallback{display:flex}
.ph-fallback .init{font:600 44px/1 var(--font-display);color:var(--lx-gold)}
.ph-fallback .nm{font:var(--text-caption-md);letter-spacing:.12em;text-transform:uppercase;color:var(--lx-mute);text-align:center;padding:0 12px}
.product-tile{position:relative;border:1px solid var(--lx-line);border-radius:var(--lx-r);overflow:hidden;background:var(--lx-card);cursor:pointer;transition:border-color .2s ease,transform .3s ease,box-shadow .3s ease}
.product-tile:hover{border-color:color-mix(in srgb,var(--lx-gold) 45%,var(--lx-line));transform:translateY(-4px);box-shadow:var(--lx-shadow)}
.product-tile:hover .ph img{transform:scale(1.06)}
.product-tile .ph{aspect-ratio:4/3}
.product-tile .body{padding:22px 22px 24px}
.product-tile h4{font:600 19px/1.25 var(--font-display);margin-bottom:6px}
.product-tile .meta{font:var(--text-caption-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--lx-mute)}
.product-tile .cat{position:absolute;top:14px;right:14px;z-index:2;background:color-mix(in srgb,var(--lx-bg) 72%,transparent);backdrop-filter:blur(6px);border:1px solid var(--lx-line);border-radius:999px;padding:6px 13px;font:var(--text-caption-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--lx-gold)}
.product-tile .corner{z-index:2}

/* reveal targets: hidden only when js sets .lx-anim on html */
.lx-anim .reveal{opacity:0;transform:translateY(28px)}

/* forms */
.field{display:flex;flex-direction:column;gap:9px;margin-bottom:22px}
.field label{font:var(--text-caption-md);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-mute)}
.field input,.field select,.field textarea{height:52px;border:1px solid var(--lx-line);border-radius:12px;padding:0 16px;font:var(--text-body-md);font-family:var(--font-sans);background:color-mix(in srgb,var(--lx-card) 60%,transparent);color:var(--lx-ink)}
.field textarea{height:130px;padding:14px 16px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--lx-gold);box-shadow:0 0 0 1px var(--lx-gold)}

/* footer */
.footer{border-top:1px solid var(--lx-line);padding:88px 0 40px;position:relative;background:linear-gradient(180deg,var(--lx-bg),color-mix(in srgb,var(--lx-bg) 86%,black))}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:36px}
.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.footer-brand img{height:64px;width:auto;object-fit:contain}
.footer-brand .word{font:600 18px/1.1 var(--font-display);letter-spacing:.1em;color:var(--lx-ink)}
.footer h4{font:var(--text-caption-md);letter-spacing:.14em;text-transform:uppercase;color:var(--lx-gold);margin:0 0 18px;font-family:var(--font-sans)}
.footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.footer a{color:var(--lx-mute);font-size:14px}
.footer a:hover{color:var(--lx-gold)}
.footer-bottom{margin-top:64px;padding-top:26px;border-top:1px solid var(--lx-line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.cert-chip{border:1px solid var(--lx-line);border-radius:999px;padding:6px 13px;font:var(--text-caption-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-ink)}
.cert-chips{display:flex;gap:10px;flex-wrap:wrap}

/* misc */
.page-hero{padding:190px 0 90px;position:relative;overflow:hidden}
.page-hero .bgimg{position:absolute;inset:0;z-index:0}
.page-hero .bgimg img,.page-hero .bgimg .ph img{opacity:.5;filter:brightness(.58) contrast(1.04) saturate(1.02)}
.page-hero .bgimg::after{content:'';position:absolute;inset:0;background:radial-gradient(120% 100% at 70% 10%,transparent,color-mix(in srgb,var(--lx-bg) 72%,transparent)),linear-gradient(180deg,color-mix(in srgb,var(--lx-bg) 86%,transparent),var(--lx-bg))}
.page-hero .wrap{position:relative;z-index:1}
.breadcrumb{font:var(--text-caption-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-mute);margin-bottom:26px;display:flex;gap:10px}
.breadcrumb a{color:var(--lx-mute)}
.breadcrumb a:hover{color:var(--lx-gold)}
.marquee{overflow:hidden;border-top:1px solid var(--lx-line);border-bottom:1px solid var(--lx-line);padding:22px 0;white-space:nowrap}
.marquee .inner{display:inline-flex;gap:64px;animation:lx-marquee 40s linear infinite;font:500 13px/1 var(--font-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--lx-mute)}
.marquee .inner span i{color:var(--lx-gold);font-style:normal;margin-right:64px}
@keyframes lx-marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.wa-fab{position:fixed;right:28px;bottom:28px;z-index:800;width:56px;height:56px;border-radius:50%;background:var(--lx-primary);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 32px rgba(0,0,0,.45);transition:transform .2s ease}
.wa-fab:hover{transform:scale(1.08)}
.wa-fab svg{width:26px;height:26px;fill:#fff}

/* trust strip */
.trust-strip{border-bottom:1px solid var(--lx-line);background:color-mix(in srgb,var(--lx-card) 45%,var(--lx-bg))}
.trust-strip .wrap{display:grid;grid-template-columns:repeat(6,1fr)}
.trust-item{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:30px 14px;border-right:1px solid var(--lx-line)}
.trust-item:last-child{border-right:none}
.trust-item svg{width:26px;height:26px;color:var(--lx-gold);stroke-width:1.5}
.trust-item .t{font:600 15px/1.2 var(--font-display);color:var(--lx-ink)}
.trust-item .s{font:var(--text-caption-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-mute)}

/* hero additions */
.hero-services{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 auto 34px;max-width:760px}
.hero-services span{font:500 12px/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--lx-mute);border:1px solid var(--lx-line);border-radius:var(--radius-sm);padding:9px 15px}
.hero-services span b{color:var(--lx-gold);font-weight:600}
.hero-badges{display:flex;flex-wrap:wrap;gap:22px 30px;justify-content:center;margin-top:52px;padding-top:32px;border-top:1px solid var(--lx-line);max-width:820px;margin-left:auto;margin-right:auto}
.hero-badges .bd{font:600 13px/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--lx-mute);display:flex;align-items:center;gap:22px}
.hero-badges .bd::after{content:'';width:4px;height:4px;background:var(--lx-gold);transform:rotate(45deg)}
.hero-badges .bd:last-child::after{display:none}

/* icon card */
.icard{background:var(--lx-card);border:1px solid var(--lx-line);border-radius:var(--lx-r);padding:34px 30px;position:relative;transition:border-color .2s ease,transform .3s ease,box-shadow .3s ease}
.icard:hover{border-color:color-mix(in srgb,var(--lx-gold) 40%,var(--lx-line));transform:translateY(-4px);box-shadow:var(--lx-shadow)}
.icard .ic{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border:1px solid var(--lx-line);border-radius:14px;margin-bottom:22px}
.icard .ic svg{width:22px;height:22px;color:var(--lx-gold);stroke-width:1.5}
.icard h3{font:600 20px/1.3 var(--font-display);margin-bottom:9px}
.icard p{margin:0;font:var(--text-body-sm);color:var(--lx-mute);line-height:1.65}

/* packaging grid */
.pkg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--lx-line);border-radius:var(--radius-sm);overflow:hidden}
.pkg-card{padding:32px 26px;border-right:1px solid var(--lx-line);border-bottom:1px solid var(--lx-line);position:relative;transition:background .2s linear}
.pkg-card:hover{background:color-mix(in srgb,var(--lx-card) 60%,transparent)}
.pkg-card .n{font:600 12px/1 var(--font-sans);letter-spacing:.14em;color:var(--lx-gold);margin-bottom:20px}
.pkg-card .ic{margin-bottom:16px}.pkg-card .ic svg{width:30px;height:30px;color:var(--lx-ink);stroke-width:1.3;opacity:.9}
.pkg-card h4{font:600 17px/1.25 var(--font-display);color:var(--lx-ink);margin-bottom:6px}
.pkg-card p{margin:0;font:var(--text-caption-sm);letter-spacing:.04em;color:var(--lx-mute);line-height:1.5}

/* animated timeline */
.timeline{position:relative;margin-top:20px}
.tl-line{position:absolute;left:0;right:0;top:31px;height:1px;background:var(--lx-line)}
.tl-line i{position:absolute;left:0;top:0;height:100%;width:0;background:var(--lx-gold);box-shadow:0 0 12px var(--lx-gold)}
.tl-nodes{display:grid;grid-template-columns:repeat(9,1fr);gap:10px;position:relative}
.tl-node{text-align:center}
.tl-node .dot{width:14px;height:14px;border-radius:50%;border:1px solid var(--lx-line);background:var(--lx-bg);margin:24px auto 0;position:relative;z-index:2;transition:all .4s ease}
.tl-node.on .dot{border-color:var(--lx-gold);background:var(--lx-gold);box-shadow:0 0 0 5px color-mix(in srgb,var(--lx-gold) 20%,transparent)}
.tl-node .st{font:600 11px/1 var(--font-sans);letter-spacing:.08em;color:var(--lx-gold);margin-top:20px}
.tl-node h4{font:600 14px/1.25 var(--font-display);color:var(--lx-ink);margin-top:7px}
.tl-node p{font-size:11.5px;color:var(--lx-mute);margin-top:5px;line-height:1.45}

/* stats band */
.stats-band{border-top:1px solid var(--lx-line);border-bottom:1px solid var(--lx-line)}
.stats-band .wrap{display:grid;grid-template-columns:repeat(6,1fr)}
.stat-big{padding:56px 18px;text-align:center;border-right:1px solid var(--lx-line)}
.stat-big:last-child{border-right:none}
.stat-big .num{font:700 clamp(34px,3.4vw,50px)/1 var(--font-display);color:var(--lx-gold)}
.stat-big .cap{margin-top:12px;font:var(--text-caption-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-mute)}

/* cert wall */
.cert-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--lx-line);border-radius:var(--radius-sm);overflow:hidden}
.cert-logo{aspect-ratio:3/2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-right:1px solid var(--lx-line);border-bottom:1px solid var(--lx-line);text-align:center;padding:20px;transition:background .2s linear}
.cert-logo:hover{background:color-mix(in srgb,var(--lx-card) 60%,transparent)}
.cert-logo .badge{width:44px;height:44px;border:1px solid var(--lx-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font:600 13px/1 var(--font-display);color:var(--lx-gold)}
.cert-logo .nm{font:600 14px/1.2 var(--font-display);color:var(--lx-ink)}
.cert-logo .st{font:var(--text-caption-sm);letter-spacing:.08em;text-transform:uppercase;font-size:10px;color:var(--lx-mute)}
.cert-logo.hold .badge{border-color:var(--lx-gold)}
.cert-logo.prog .badge{border-color:var(--lx-line);color:var(--lx-mute)}
.cert-logo.prog .nm{color:var(--lx-mute)}

/* gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:16px}
.gallery-tile{position:relative;overflow:hidden;border:1px solid var(--lx-line);border-radius:var(--radius-sm)}
.gallery-tile.tall{grid-row:span 2}.gallery-tile.wide{grid-column:span 2}
.gallery-tile .ph{position:absolute;inset:0}
.gallery-tile .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px 18px;background:linear-gradient(transparent,color-mix(in srgb,var(--lx-bg) 92%,transparent));font:600 13px/1.2 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-ink)}
.gallery-tile .ph img{transition:transform .8s cubic-bezier(.2,.6,.2,1)}
.gallery-tile:hover .ph img{transform:scale(1.07)}

/* quick preview modal */
.qp{position:fixed;inset:0;z-index:1800;display:none;align-items:center;justify-content:center;padding:32px;background:rgba(10,8,6,.72);backdrop-filter:blur(6px)}
.qp.open{display:flex}
.qp-panel{max-width:940px;width:100%;max-height:88vh;overflow:auto;background:var(--lx-bg);border:1px solid var(--lx-line);border-radius:var(--lx-r);display:grid;grid-template-columns:1fr 1fr;position:relative}
.qp-photo{position:relative;min-height:360px}
.qp-photo .ph{position:absolute;inset:0}
.qp-body{padding:40px}
.qp-body .cat{font:var(--text-caption-md);letter-spacing:.14em;text-transform:uppercase;color:var(--lx-gold)}
.qp-body h3{font:600 30px/1.1 var(--font-display);color:var(--lx-ink);margin:10px 0 4px}
.qp-body .bot{font:italic 400 15px/1.4 var(--font-display);color:var(--lx-mute);margin-bottom:20px}
.qp-spec{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--lx-line)}
.qp-spec div{padding:13px 0;border-bottom:1px solid var(--lx-line)}
.qp-spec div:nth-child(odd){padding-right:16px}
.qp-spec b{display:block;font:var(--text-caption-sm);letter-spacing:.1em;text-transform:uppercase;font-size:10px;color:var(--lx-mute);margin-bottom:4px}
.qp-spec span{font:500 14px/1.35 var(--font-sans);color:var(--lx-ink)}
.qp-actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.qp-close{position:absolute;top:24px;right:28px;z-index:5;background:none;border:none;color:var(--lx-ink);font-size:30px;cursor:pointer;line-height:1}

/* spec table (product page) */
.spec-table{border-top:1px solid var(--lx-line)}
.spec-table .row{display:grid;grid-template-columns:200px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--lx-line)}
.spec-table .row b{font:var(--text-caption-md);letter-spacing:.08em;text-transform:uppercase;color:var(--lx-mute);font-family:var(--font-sans)}
.spec-table .row span{font:500 15px/1.5 var(--font-sans);color:var(--lx-ink)}

/* magnetic */
.magnetic{transition:transform .25s cubic-bezier(.2,.6,.2,1)}
/* motion polish */
.lx-progress{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--lx-gold),#e6c76e);z-index:950;transition:width .12s linear}
.nav-links a{position:relative}
.nav-links a::after{content:'';position:absolute;left:0;bottom:2px;height:1px;width:0;background:var(--lx-gold);transition:width .25s ease}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.product-tile .ph::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.20) 50%,transparent 66%);transform:translateX(-130%)}
.product-tile:hover .ph::after{transform:translateX(130%);transition:transform .85s ease}
.btn-primary{position:relative;overflow:hidden}
.btn-primary::after{content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);opacity:0;pointer-events:none}
.btn-primary:hover::after{animation:btnshine .7s ease}
@keyframes btnshine{0%{left:-60%;opacity:.8}100%{left:130%;opacity:0}}
.icard .ic svg,.qstep .ic svg{transition:transform .3s ease}
.icard:hover .ic svg,.qstep:hover .ic svg{transform:scale(1.12)}
@media (prefers-reduced-motion:reduce){.lx-progress{transition:none}.product-tile .ph::after,.btn-primary::after{display:none}}

/* accessibility: visible focus + reduced motion */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.chip:focus-visible,.cat-tab:focus-visible,.product-tile:focus-visible,.ring-nav-arrow:focus-visible{outline:2px solid var(--lx-gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.marquee .inner{animation:none;transform:none}.loader img{animation:none}}

@media (max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.pkg-grid{grid-template-columns:repeat(2,1fr)}.cert-wall{grid-template-columns:repeat(2,1fr)}.trust-strip .wrap{grid-template-columns:repeat(3,1fr)}.trust-item:nth-child(3){border-right:none}.stats-band .wrap{grid-template-columns:repeat(3,1fr)}.stat-big:nth-child(3){border-right:none}.tl-nodes{grid-template-columns:repeat(5,1fr);gap:24px 10px}.tl-line{display:none}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.wrap{padding:0 22px}.nav-inner{padding:0 22px;height:74px}.nav-brand img{height:46px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:64px 0}.page-hero{padding:130px 0 56px}.trust-strip .wrap{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(3){border-right:1px solid var(--lx-line)}.trust-item:nth-child(odd){border-right:1px solid var(--lx-line)}.trust-item:nth-child(even){border-right:none}.stats-band .wrap{grid-template-columns:repeat(2,1fr)}.stat-big{border-right:none;padding:38px 12px}.tl-nodes{grid-template-columns:repeat(2,1fr)}.qp-panel{grid-template-columns:1fr}.qp-panel .ph{min-height:220px}.pkg-grid{grid-template-columns:1fr}.cert-wall{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:180px}.gallery-tile.wide{grid-column:span 1}.spec-table .row{grid-template-columns:1fr;gap:4px}}
@media (min-width:721px) and (max-width:1000px){.nav-brand img{height:54px}}
