/* LASERRIX · /o-nas/laser-mediostar-monolith/ — v3 film page (28.10.2026).
   "Cast & Render" look for the page body: paper #f2f0ec, ink #0d0c0b, Inter Tight 400/500, black pills, light veil and grain.
   The shared header keeps its markup and gets the page look here; the final CTA and the footer are the site's own
   and are not restyled (Bogdan 28.10: the footer is the same on every page).
   html.lx-js: the laser stands fixed behind the page; html.lx-intro (every load) plays a 4-second film with nothing
   else on screen, then the header, the haze and the text fade in. The eight text screens are fixed and cross-fade
   as the page scrolls (laser.js); the laser stays on the last frame of the film.
   Without it (no JS): the eight screens are plain blocks with a still each. */

:root{
  --lx-bg:#f2f0ec;--lx-bg-rgb:242,240,236;--lx-fg:#241A16;--lx-fg-rgb:36,26,22;
  --lx-pill:#3D2B26;--lx-pill-rgb:61,43,38;--lx-ease:cubic-bezier(.22,.61,.36,1);
  --lx-font:'Inter Tight','Helvetica Neue',Helvetica,Arial,sans-serif;
  /* backdrop of the film, sampled from the graded video edges */
  --lx-film:linear-gradient(to bottom,#968271 0%,#c1ae9e 25%,#c3b4a6 50%,#d6cec6 60%,#e2ded8 65%,#e8e5e1 75%,#ede9e3 90%,#eae6e1 100%);
}
html{-webkit-text-size-adjust:100%}
body.lx{background:var(--lx-bg);padding-bottom:0;overflow-x:hidden}
.lx-film,.lx-page{font-family:var(--lx-font);font-weight:400;color:var(--lx-fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.lx-film a,.lx-page a{color:inherit}
.lx-film h1,.lx-film h2,.lx-page h2,.lx-page h3{font-family:var(--lx-font);font-weight:400;color:var(--lx-fg);margin:0;text-transform:none}

/* ---------- shared header = the "chrome" ---------- */
body.lx #siteHeader{position:fixed;top:0;left:0;right:0;z-index:40;border-bottom:0;-webkit-backdrop-filter:none;backdrop-filter:none;
  background:linear-gradient(to bottom,rgba(var(--lx-bg-rgb),.94) 0%,rgba(var(--lx-bg-rgb),.78) 72%,rgba(var(--lx-bg-rgb),0) 100%)}
body.lx #siteHeader .header-inner{padding-top:max(12px,calc(env(safe-area-inset-top,0px) + 8px));padding-bottom:14px}
/* logo and language switch: the homepage type (Playfair Display 700 / Inter 700), Bogdan 28.10 */
body.lx #siteHeader .logo{font-family:'Playfair Display',Georgia,serif;font-size:22px;font-weight:700;letter-spacing:.04em;color:#3D2B26}
body.lx #siteHeader .menu-toggle span{background:var(--lx-fg);height:1.5px}
body.lx #siteHeader .lang-current{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:700;letter-spacing:.03em;color:#6B534B}
body.lx #siteHeader .header-cta-btn{background:var(--lx-pill);color:#fff;-webkit-text-fill-color:#fff;border:1px solid rgba(var(--lx-pill-rgb),.12);border-radius:999px;
  box-shadow:0 1px 0 rgba(255,255,255,.10) inset;font-family:var(--lx-font);font-weight:500;font-size:14px;letter-spacing:-.008em;text-transform:none;
  height:40px;padding:0 19px;display:inline-flex;align-items:center;transition:transform .4s var(--lx-ease),background .3s var(--lx-ease)}
body.lx #siteHeader .header-cta-btn:hover{transform:translateY(-2px)}
body.lx #siteHeader .header-phone{color:rgba(var(--lx-fg-rgb),.64);font-family:var(--lx-font);font-weight:400}
body.lx #siteHeader.menu-open{background:transparent}

/* ---------- type ---------- */
.lx-panel h1,.lx-panel h2{font-size:clamp(30px,9.4vw,52px);line-height:.98;letter-spacing:-.036em;max-width:13ch;text-wrap:balance;margin:0 auto}
.lx-eyebrow{display:block;font-size:12px;letter-spacing:.045em;color:rgba(var(--lx-fg-rgb),.64);margin:0 0 12px}
.lx-sub{margin:12px auto 0;font-size:16px;line-height:1.45;letter-spacing:-.008em;color:rgba(var(--lx-fg-rgb),.82);max-width:32ch;text-wrap:pretty}
.lx-page h2{font-size:clamp(28px,7.6vw,64px);line-height:1.02;letter-spacing:-.036em;text-wrap:balance}
.lx-page h3{font-size:18px;line-height:1.25;letter-spacing:-.02em;font-weight:500}
.lx-page p{margin:0}

/* chip on top of each screen: laser name or the key fact, brand brown, see-through, gold dot */
.lx-chip{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:8px 14px 8px 10px;border-radius:999px;
  background:rgba(var(--lx-pill-rgb),.88);color:#fff;font-family:var(--lx-font);font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap;
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lx-chip i{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#c9a14a}
.lx-chip span{opacity:.62;font-weight:400}
.lx-js .lx-chip{position:absolute;left:50%;top:max(68px,calc(env(safe-area-inset-top,0px) + 60px));transform:translateX(-50%);margin:0}

/* ---------- pills and links ---------- */
.lx-pill{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 27px;max-width:min(100%,320px);border-radius:999px;
  background:var(--lx-pill);color:#fff!important;-webkit-text-fill-color:#fff;border:1px solid rgba(var(--lx-pill-rgb),.12);box-shadow:0 1px 0 rgba(255,255,255,.10) inset;
  font-family:var(--lx-font);font-size:15px;font-weight:500;letter-spacing:-.008em;white-space:nowrap;text-decoration:none;
  transition:transform .4s var(--lx-ease),background .3s var(--lx-ease)}
.lx-pill:hover,.lx-pill:focus-visible{transform:translateY(-2px)}
.lx-pill:focus-visible,.lx-link:focus-visible{outline:2px solid var(--lx-fg);outline-offset:2px}
.lx-cta{margin-top:20px;display:flex;flex-direction:column;align-items:center;gap:12px}
.lx-link{font-size:14.5px;letter-spacing:-.008em;color:var(--lx-fg);text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.3);padding-bottom:1px}
.lx-cta-left{align-items:flex-start}

/* ---------- film: static fallback (no JS) ---------- */
.lx-stage{display:none}
.lx-film{padding-top:72px}
.lx-panel{padding:24px 20px 32px;text-align:center}
.lx-still{margin:0 auto 18px;width:min(78vw,420px);aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:var(--lx-film)}
.lx-still img{display:block;width:100%;height:100%;object-fit:cover}

/* ---------- film: live ---------- */
.lx-js .lx-film{position:relative;z-index:1;height:460vh;min-height:2900px;padding:0}
.lx-js .lx-still{display:none}
.lx-js .lx-stage{display:block;position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--lx-bg)}
/* phones: the whole frame is on screen (nothing cut at the sides), from the very top under the see-through header; its bottom melts into the paper under the text */
.lx-js .lx-stage video,.lx-js .lx-stage .lx-poster{position:absolute;left:0;top:0;width:100%;height:auto;aspect-ratio:9/16;
  object-fit:cover;filter:contrast(1.02);
  -webkit-mask-image:linear-gradient(to bottom,#000 0,#000 72%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 72%,transparent 100%)}
.lx-veil{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(to bottom,rgba(var(--lx-bg-rgb),.35) 0%,rgba(var(--lx-bg-rgb),0) 14%,rgba(var(--lx-bg-rgb),0) 50%,rgba(var(--lx-bg-rgb),.55) 66%,rgba(var(--lx-bg-rgb),.9) 80%,rgba(var(--lx-bg-rgb),.97) 100%)}
.lx-grain{position:absolute;inset:-50%;opacity:.13;mix-blend-mode:multiply;pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/></filter><rect width='140' height='140' filter='url(%23n)' opacity='.5'/></svg>")}
.lx-js .lx-panels{position:fixed;inset:0;z-index:20;pointer-events:none}
.lx-js .lx-panel{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;
  padding:96px 18px max(52px,calc(env(safe-area-inset-bottom,0px) + 44px));opacity:0;will-change:opacity,transform}
.lx-js .lx-copy{width:100%}
.lx-js .lx-copy,.lx-js .lx-chip{transition:opacity .9s var(--lx-ease)}
/* a scroll that stops between two screens settles on the nearest one (snap points from laser.js) */
html.lx-js{scroll-snap-type:y proximity}
.lx-snap{position:absolute;left:0;width:1px;height:1px;scroll-snap-align:start;pointer-events:none}
/* stills: the end frame stands behind everything; during the intro the first frame covers it until the film plays */
.lx-poster-start{display:none}
.lx-intro .lx-poster-start{display:block}
.lx-js .lx-stage video{opacity:0;transition:opacity .35s var(--lx-ease)}
.lx-ready .lx-stage video{opacity:1}
.lx-ready .lx-stage .lx-poster{visibility:hidden}
/* intro: only the film; the header, the haze and the text fade in when it ends */
body.lx #siteHeader,.lx-js .lx-veil{transition:opacity .9s var(--lx-ease)}
.lx-intro body.lx #siteHeader,.lx-intro .lx-veil{opacity:0;pointer-events:none}
.lx-intro .lx-panel .lx-copy,.lx-intro .lx-panel .lx-chip{opacity:0!important;pointer-events:none}
/* the content slides over the film; once the film is fully covered the fixed layer switches off */
.lx-past .lx-stage,.lx-past .lx-panels{visibility:hidden}
.lx-page,body.lx .final-e2,body.lx .site-foot{position:relative;z-index:30}
.lx-page{background:var(--lx-bg);box-shadow:0 -1px 0 rgba(var(--lx-fg-rgb),.08)}

/* ---------- sections under the film ---------- */
.lx-sec{padding:48px 0;border-top:1px solid rgba(var(--lx-fg-rgb),.1)}
.lx-sec:first-child{border-top:0}
.lx-w{max-width:1120px;margin:0 auto;padding:0 20px}
.lx-crumbs{margin-bottom:22px;font-size:12px;color:rgba(var(--lx-fg-rgb),.5)}
.lx-crumbs a{text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.2)}
.lx-lead{margin-top:12px!important;max-width:56ch;font-size:16px;line-height:1.5;color:rgba(var(--lx-fg-rgb),.68)}
.lx-fine{margin-top:16px!important;font-size:12px;line-height:1.5;color:rgba(var(--lx-fg-rgb),.5)}
.lx-fine a{text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.3)}

/* w liczbach */
.lx-specs{margin:22px 0 0;padding:0}
.lx-specs div{display:grid;gap:3px;padding:11px 0;border-top:1px solid rgba(var(--lx-fg-rgb),.12)}
.lx-specs dt{font-size:12px;letter-spacing:.03em;color:rgba(var(--lx-fg-rgb),.5)}
.lx-specs dd{margin:0;font-size:15.5px;line-height:1.45}
.lx-specs a{text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.3)}

/* badania */
.lx-studies{list-style:none;margin:22px 0 0;padding:0;display:grid}
.lx-studies li{padding:16px 0;border-top:1px solid rgba(var(--lx-fg-rgb),.12)}
.lx-st-model{font-size:12.5px;letter-spacing:.02em;color:rgba(var(--lx-fg-rgb),.6)}
.lx-st-model b{font-weight:500;color:var(--lx-fg)}
.lx-st-res{margin-top:6px!important;font-size:clamp(19px,5vw,26px);line-height:1.22;letter-spacing:-.022em;color:var(--lx-fg)}
.lx-st-res b{font-weight:500}
.lx-st-src{margin-top:6px!important;font-size:12.5px;line-height:1.5;color:rgba(var(--lx-fg-rgb),.5)}
.lx-st-src a{text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.3);color:rgba(var(--lx-fg-rgb),.72)}

/* głowice: stamps on skin, one 100 cm² patch per laser */
.lx-stamps{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}
.lx-skin{position:relative;aspect-ratio:1;border-radius:14px;background:linear-gradient(135deg,#e9cdb8,#dcb79c);overflow:hidden}
.lx-skin .g{position:absolute;inset:0;display:grid;padding:3px}
.lx-skin-xl .g{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:3px}
.lx-skin-xl i{border-radius:4px;background:rgba(13,12,11,.84);display:flex;align-items:center;justify-content:center;color:#c9a14a;font-size:10px;font-style:normal;font-weight:500}
.lx-skin-candela .g{grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr);gap:1px}
.lx-skin-candela i{border-radius:50%;background:rgba(13,12,11,.55)}
.lx-skin-alma .g{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(10,1fr);gap:2px}
.lx-skin-alma i{border-radius:2px;background:rgba(13,12,11,.55)}
.lx-skin-lightsheer .g{grid-template-columns:repeat(11,1fr);grid-template-rows:repeat(11,1fr);gap:1.5px}
.lx-skin-lightsheer i{border-radius:1.5px;background:rgba(13,12,11,.55)}
.lx-skin i.miss{background:transparent;outline:1px dashed rgba(200,16,46,.75);outline-offset:-1px}
.lx-skin-n{margin-top:8px!important;font-size:13px;color:rgba(var(--lx-fg-rgb),.6)}
.lx-skin-n b{font-size:30px;font-weight:400;letter-spacing:-.03em;color:var(--lx-fg);margin-right:4px}
.lx-st-xl .lx-skin-n b{font-weight:500}
.lx-skin-l{margin-top:2px!important;font-size:13.5px;line-height:1.35;font-weight:500;color:var(--lx-fg)}
.lx-skin-l span{display:block;font-weight:400;font-size:12px;color:rgba(var(--lx-fg-rgb),.55)}
@media (min-width:720px){.lx-stamps{grid-template-columns:repeat(4,1fr);gap:24px}}

/* pierwsi: brand-brown band, the history runs by itself; touch, hover or focus stops it */
.lx-dark{background:var(--lx-pill);border-top:0;color:#fff}
.lx-dark .lx-eyebrow{color:rgba(255,255,255,.62)}
.lx-dark h2{color:#fff!important}
.lx-tl-wrap{margin-top:22px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;outline:0}
.lx-tl-wrap::-webkit-scrollbar{display:none}
.lx-tl{list-style:none;margin:0;padding:0 0 4px 20px;display:flex;width:max-content}
.lx-tl li{flex:0 0 auto;width:min(62vw,250px);padding:14px 22px 0 0;margin-right:18px;border-top:1px solid rgba(255,255,255,.28)}
.lx-tl b{display:block;font-size:40px;font-weight:400;letter-spacing:-.04em;line-height:1;color:#c9a14a}
.lx-tl p{margin-top:8px!important;font-size:14.5px;line-height:1.45;color:rgba(255,255,255,.86)}
.lx-tl li:nth-child(9n+2),.lx-tl li:nth-child(9n+3){border-top-color:#c9a14a}
.lx-tl li:nth-child(9n+2) p,.lx-tl li:nth-child(9n+3) p{color:#fff}
html:not(.lx-js) .lx-tl li[aria-hidden]{display:none}

/* nagrody */
.lx-aw{list-style:none;margin:18px 0 0;padding:0;display:grid}
.lx-aw li{padding:14px 0;border-top:1px solid rgba(var(--lx-fg-rgb),.12)}
.lx-aw b{display:block;font-size:clamp(19px,5vw,26px);font-weight:400;letter-spacing:-.022em;line-height:1.2}
.lx-aw span{display:block;margin-top:4px;font-size:13.5px;line-height:1.45;color:rgba(var(--lx-fg-rgb),.6)}

/* sprawdź sam */
.lx-docs{list-style:none;margin:22px 0 0;padding:0;display:grid}
.lx-docs li{display:grid;grid-template-columns:84px 1fr;column-gap:14px;align-items:start;padding:14px 0;border-top:1px solid rgba(var(--lx-fg-rgb),.1)}
.lx-docs li>*:not(.lx-doc){grid-column:2}
.lx-doc{grid-row:1 / span 3;display:block;width:84px;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#fff;text-decoration:none}
.lx-doc picture,.lx-doc img{display:block;width:100%;height:100%;object-fit:cover}
.lx-doc-type{display:flex;align-items:center;justify-content:center;background:#e9e6e0}
.lx-doc-type span{font-size:22px;font-weight:500;letter-spacing:-.03em}
.lx-docs h3{font-size:16px}
.lx-docs p{margin-top:4px!important;font-size:13.5px;line-height:1.45;color:rgba(var(--lx-fg-rgb),.64)}
.lx-ext-row{display:flex;flex-wrap:wrap;gap:4px 14px}
.lx-ext{color:var(--lx-fg)!important;text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.3);font-size:13.5px}
.lx-guide{margin-top:24px;padding:20px 18px;border-radius:20px;background:#fff}
.lx-guide h3{font-size:19px}
.lx-guide ol{margin:12px 0 0;padding:0;list-style:none;counter-reset:g;display:grid;gap:10px}
.lx-guide li{counter-increment:g;position:relative;padding-left:32px;font-size:14.5px;line-height:1.5;color:rgba(var(--lx-fg-rgb),.72)}
.lx-guide li::before{content:counter(g);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;border:1px solid rgba(var(--lx-fg-rgb),.3);
  font-size:12px;line-height:21px;text-align:center;color:var(--lx-fg)}
.lx-guide li b{color:var(--lx-fg);font-weight:500}
.lx-guide>p{margin-top:12px!important;font-size:14.5px;color:var(--lx-fg)}

/* dla kogo */
.lx-two{display:grid;gap:10px;margin-top:20px}
.lx-two>div{padding:16px 18px;border-radius:20px;background:#fff}
.lx-two>div:last-child{background:transparent;border:1px solid rgba(var(--lx-fg-rgb),.14)}
.lx-two h3{font-size:16px}
.lx-two ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.lx-two li{position:relative;padding-left:16px;font-size:14.5px;line-height:1.45;color:rgba(var(--lx-fg-rgb),.72)}
.lx-two li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--lx-fg)}
.lx-two>div:last-child li::before{background:transparent;border:1px solid rgba(var(--lx-fg-rgb),.5)}
.lx-two p{margin-top:10px!important;font-size:14.5px;color:var(--lx-fg)}

/* diana */
.lx-diana{display:grid;gap:18px}
.lx-diana figure{margin:0;border-radius:20px;overflow:hidden;max-width:360px}
.lx-diana img{display:block;width:100%;height:auto}

/* opinie */
.lx-rv{display:grid;gap:20px;margin-top:20px}
.lx-rv blockquote{margin:0;padding:0}
.lx-rv blockquote p{font-size:clamp(17px,4.6vw,23px);line-height:1.35;letter-spacing:-.018em;color:var(--lx-fg)}
.lx-rv cite{display:block;margin-top:8px;font-style:normal;font-size:12.5px;font-weight:500}
.lx-rv cite span{font-weight:400;color:rgba(var(--lx-fg-rgb),.5)}

/* faq */
.lx-faq{margin-top:18px;border-bottom:1px solid rgba(var(--lx-fg-rgb),.12)}
.lx-q{border-top:1px solid rgba(var(--lx-fg-rgb),.12)}
.lx-q summary{position:relative;list-style:none;cursor:pointer;padding:15px 36px 15px 0;font-size:16.5px;line-height:1.35;letter-spacing:-.015em}
.lx-q summary::-webkit-details-marker{display:none}
.lx-q summary::after{content:"";position:absolute;right:4px;top:50%;width:13px;height:13px;margin-top:-7px;
  background:linear-gradient(var(--lx-fg),var(--lx-fg)) 50% 50%/13px 1.5px no-repeat,linear-gradient(var(--lx-fg),var(--lx-fg)) 50% 50%/1.5px 13px no-repeat;
  transition:transform .3s var(--lx-ease)}
.lx-q[open] summary::after{transform:rotate(45deg)}
.lx-q p{padding:0 0 16px;max-width:64ch;font-size:15px;line-height:1.55;color:rgba(var(--lx-fg-rgb),.72)}

/* źródła: compact, every link kept */
.lx-notes{padding:28px 0 32px}
.lx-notes h3{font-size:13px;font-weight:500;letter-spacing:.03em;color:rgba(var(--lx-fg-rgb),.6)}
.lx-src{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;line-height:1.5}
.lx-src a{color:rgba(var(--lx-fg-rgb),.6);text-decoration:none;border-bottom:1px solid rgba(var(--lx-fg-rgb),.2)}

/* lightbox */
.lx-lb{border:0;padding:0;background:transparent;max-width:min(94vw,900px);max-height:92vh;overflow:visible;color:#fff}
.lx-lb::backdrop{background:rgba(13,12,11,.86)}
.lx-lb img{display:block;max-width:100%;max-height:82vh;margin:0 auto;border-radius:14px;object-fit:contain}
.lx-lb p{margin-top:12px;text-align:center;font-family:var(--lx-font);font-size:14px;color:rgba(255,255,255,.8)}
.lx-lb-x{position:absolute;top:-46px;right:0;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:24px;line-height:40px;cursor:pointer}

/* ---------- breakpoints ---------- */
@media (max-width:719px){
  body.lx #siteHeader .header-phone{display:none}
}
@media (max-width:480px){
  body.lx #siteHeader .logo{font-size:17px}
  body.lx #siteHeader .lang-current{font-size:11.5px}
}
@media (max-width:350px){
  body.lx #siteHeader .logo{font-size:15px}
}
@media (max-width:420px){
  .lx-panel h1,.lx-panel h2{font-size:clamp(30px,9.8vw,40px);max-width:12ch}
  .lx-eyebrow{font-size:11px;letter-spacing:.04em}
  .lx-js .lx-cta .lx-pill{width:100%;max-width:280px;height:44px;padding:0 20px;font-size:14px}
  body.lx #siteHeader .header-cta-btn{height:36px;padding:0 14px;font-size:13px}
}
@media (max-height:700px) and (max-aspect-ratio:1/1){
  .lx-panel h1,.lx-panel h2{font-size:clamp(26px,8vw,36px)}
  .lx-sub{font-size:14px;margin-top:10px}
  .lx-js .lx-cta{margin-top:12px;gap:8px}
}
@media (min-width:720px){
  .lx-sec{padding:72px 0}
  .lx-w{padding:0 40px}
  .lx-tl{padding:0 0 4px 40px}
  .lx-specs div{grid-template-columns:220px 1fr;gap:20px;align-items:baseline}
  .lx-studies{grid-template-columns:1fr 1fr;column-gap:44px}
  .lx-aw{grid-template-columns:1fr 1fr;column-gap:44px}
  .lx-docs{grid-template-columns:repeat(4,1fr);gap:28px 24px;margin-top:32px}
  .lx-docs li{display:block;padding:0;border-top:0}
  .lx-doc{width:100%;aspect-ratio:4/3.4;border-radius:18px;margin-bottom:12px}
  .lx-doc-type span{font-size:48px}
  .lx-docs h3{font-size:17px}
  .lx-guide{padding:28px 32px}
  .lx-two{grid-template-columns:1fr 1fr;gap:16px}
  .lx-two>div{padding:22px 24px}
  .lx-diana{grid-template-columns:minmax(0,360px) 1fr;align-items:center;gap:44px}
  .lx-rv{grid-template-columns:1fr 1fr;gap:28px 44px}
  .lx-q summary{font-size:18px}
}
/* desktop and landscape: the film is vertical, so the laser stands on the right and the text sits on the left */
@media (min-aspect-ratio:1/1){
  .lx-js .lx-stage{background:var(--lx-film)}
  .lx-js .lx-stage video,.lx-js .lx-stage .lx-poster{top:0;left:auto;right:clamp(24px,8vw,160px);width:calc(100vh * 9 / 16);height:100vh;aspect-ratio:auto;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 16%,#000 84%,transparent 100%);
            mask-image:linear-gradient(to right,transparent 0,#000 16%,#000 84%,transparent 100%)}
  .lx-veil{background:linear-gradient(to bottom,rgba(var(--lx-bg-rgb),.5) 0%,rgba(var(--lx-bg-rgb),0) 16%,rgba(var(--lx-bg-rgb),0) 84%,rgba(var(--lx-bg-rgb),.5) 100%),
    linear-gradient(to right,rgba(var(--lx-bg-rgb),.55) 0%,rgba(var(--lx-bg-rgb),.2) 45%,rgba(var(--lx-bg-rgb),0) 60%)}
  .lx-js .lx-panel{align-items:flex-start;justify-content:center;text-align:left;
    padding:100px calc(100vh * 9 / 16 + clamp(24px,8vw,160px) + 40px) 80px clamp(24px,7vw,140px)}
  .lx-js .lx-panel h1,.lx-js .lx-panel h2{font-size:clamp(30px,5.2vw,92px);max-width:13ch;margin:0}
  .lx-js .lx-sub{font-size:clamp(14px,1.28vw,19px);max-width:42ch;margin-left:0}
  .lx-js .lx-cta{align-items:flex-start}
  .lx-js .lx-copy{max-width:640px}
  .lx-js .lx-chip{position:static;transform:none;margin:0 0 18px}
}
@media (min-width:900px){
  html:not(.lx-js) .lx-film{padding-top:96px}
  html:not(.lx-js) .lx-panel{display:grid;grid-template-columns:minmax(0,320px) 1fr;gap:48px;align-items:center;max-width:1120px;margin:0 auto;text-align:left;padding:28px 40px}
  html:not(.lx-js) .lx-still{margin:0;width:100%}
  html:not(.lx-js) .lx-panel h1,html:not(.lx-js) .lx-panel h2{margin:0;font-size:clamp(40px,5vw,80px)}
  html:not(.lx-js) .lx-sub{margin-left:0}
  html:not(.lx-js) .lx-cta{align-items:flex-start}
  .lx-sec{padding:80px 0}
  .lx-page h2{font-size:clamp(40px,4.6vw,68px)}
}
@media (max-height:520px) and (orientation:landscape){
  .lx-js .lx-panel{padding:72px 24px 48px}
  .lx-panel h1,.lx-panel h2{font-size:clamp(24px,8vh,40px)}
  .lx-sub{margin-top:8px;font-size:13.5px}
  .lx-js .lx-cta{margin-top:12px}
}
