@font-face{font-family:LabBub;src:url(/fonts/modak-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:LabSans;src:url(/fonts/lexend-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:LabSans;src:url(/fonts/lexend-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:LabSans;src:url(/fonts/lexend-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:LabSans;src:url(/fonts/lexend-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:LabSans;src:url(/fonts/lexend-800.woff2) format("woff2");font-weight:800;font-display:swap}

:root{
  --ink:#0a0618;--purple:#b44cff;--acid:#b8ff2a;--cyan:#2ef0ff;--magenta:#ff4dff;
  --ivory:#f4fff8;--mute:#c8d4e0;--line:rgba(46,240,255,.42);
  --pod:#140a28;--go:#081400;--go-text:#081400;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--ink);color:var(--ivory);
  font-family:LabSans,system-ui,sans-serif;font-size:16px;line-height:1.55;font-weight:500}
img{max-width:100%;height:auto;display:block}
a{color:var(--cyan);text-decoration:none}
a:hover{color:var(--acid)}
:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.lb-skip{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}
.lb-skip:focus{left:8px;top:8px;width:auto;height:auto;padding:8px 12px;background:var(--acid);color:var(--ink);z-index:90}

.lb-pulse{height:4px;background:linear-gradient(90deg,var(--purple),var(--cyan),var(--acid),var(--purple));background-size:200% 100%}

/* header — big blob mark + 56px wordmark, 44px pills, CTA top-right */
.lb-pod{display:grid;grid-template-columns:auto 1fr auto auto;grid-template-rows:auto auto;
  grid-template-areas:"brand mid go burger" "brand nav nav nav";
  align-items:center;column-gap:12px;row-gap:4px;padding:6px 14px 8px;height:auto;min-height:0;
  background:linear-gradient(180deg,#160a2c 0%,#0a0618 100%);border-bottom:1px solid var(--line);position:relative;z-index:20}
.lb-brand{grid-area:brand;display:flex;align-items:center;gap:8px;color:var(--acid);white-space:nowrap;flex:none;align-self:center}
.lb-brand img{width:76px;height:76px;flex:none;border-radius:50%;object-fit:cover;
  box-shadow:0 0 0 2px #b8ff2a66,0 0 22px #b44cffaa}
.lb-word{font-family:LabBub,LabSans,sans-serif;font-weight:400;font-size:56px;line-height:1;
  letter-spacing:.01em;display:flex;align-items:baseline;gap:0}
.lb-word i{font-style:normal;color:var(--acid);text-shadow:0 0 16px #b8ff2acc,0 2px 0 #041008}
.lb-word b{font-weight:400;background:linear-gradient(90deg,#e878ff 0%,#c44cff 40%,#2ef0ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 12px #b44cffcc)}
.lb-pod>.lb-go{grid-area:go;height:48px;min-height:48px;padding:0 18px;font-size:15px;justify-self:end}
.lb-burger{grid-area:burger;display:none;background:none;border:1px solid var(--acid);color:var(--acid);
  border-radius:10px;padding:8px 10px;font:inherit;min-height:44px}
.lb-nav{grid-area:nav;display:flex;flex-wrap:nowrap;gap:6px;margin-left:0;align-items:center;justify-content:flex-start}
.lb-chip{display:inline-flex;align-items:center;gap:6px;height:44px;min-height:44px;padding:0 12px;border-radius:999px;
  border:1px solid #b44cff88;background:linear-gradient(180deg,#2a1450,#12081f);
  color:var(--ivory);font-weight:800;font-size:14px;box-shadow:inset 0 1px 0 #2ef0ff33,0 2px 0 #0008}
.lb-chip svg{width:20px;height:20px;flex:none}
.lb-chip[aria-current="page"],.lb-chip:hover{border-color:var(--acid);color:var(--acid);
  box-shadow:0 0 0 1px var(--acid),0 0 14px #b44cff66}
.lb-go{display:inline-flex;align-items:center;justify-content:center;gap:6px;
  height:44px;min-height:44px;padding:0 16px;border-radius:999px;font-weight:800;font-size:14px;letter-spacing:.04em;
  background:linear-gradient(180deg,#d4ff5a,#8fe000);color:var(--go-text);border:1px solid #f6ffb0;
  box-shadow:0 0 18px #b8ff2a88,0 3px 0 #3a6200}
.lb-go:hover{color:var(--ink);filter:brightness(1.08)}
.lb-go-hero{height:56px;min-height:56px;padding:0 28px;font-size:18px;font-weight:800;border-radius:999px}

.lb-tick{height:20px;overflow:hidden;background:#12081e;border-bottom:1px solid #2ef0ff55}
.lb-tick-track{display:flex;align-items:center;justify-content:center;gap:18px;white-space:nowrap;
  font-size:12px;font-weight:800;color:var(--acid);letter-spacing:.06em;text-transform:uppercase;line-height:20px;padding:0 12px}
.lb-tick b{color:var(--cyan);margin:0;font-weight:800}
.lb-tick i{font-style:normal;color:#ffd36a;margin:0 2px}

/* compact organic lab hero — 252px, title centered over the art */
.lb-hero{position:relative;height:252px;overflow:hidden;margin:0;border-bottom:1px solid var(--line)}
.lb-hero-art{width:100%;height:252px;object-fit:cover;object-position:center 46%;display:block;filter:saturate(1.12) brightness(1.08)}
.lb-hero-box{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,58%) 1fr 170px;gap:8px;align-items:center;
  padding:10px 22px 12px;background:linear-gradient(90deg,rgba(6,3,16,.22) 0%,rgba(6,3,16,.08) 42%,rgba(6,3,16,.04) 70%,rgba(6,3,16,.28) 100%)}
.lb-hero-copy{grid-column:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.lb-hero-copy h1{margin:0 0 10px;display:flex;flex-direction:column;align-items:center;gap:0}
.lb-h1-main,.lb-h1-sub{position:relative;display:inline-block;font-family:LabBub,LabSans,sans-serif;font-weight:400;line-height:.86}
.lb-h1-main{font-size:82px;letter-spacing:.01em}
.lb-h1-sub{font-size:52px;letter-spacing:.1em;margin-top:-2px}
.lb-h1-stroke{position:absolute;left:0;top:0;z-index:0;pointer-events:none;white-space:nowrap;
  color:#2a0858;-webkit-text-stroke:8px #2a0858;
  text-shadow:0 0 16px #c44cff,0 0 32px #2ef0ff99,0 5px 0 #140428}
.lb-h1-fill{position:relative;z-index:1;white-space:nowrap;
  background:linear-gradient(105deg,#ffffff 0%,#f4b8ff 14%,#e050ff 36%,#7a80ff 58%,#2ef0ff 86%,#c8ffff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.lb-h1-sub .lb-h1-fill{background:linear-gradient(180deg,#f7ffb0 0%,#c6ff3a 42%,#8ee000 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.lb-h1-sub .lb-h1-stroke{text-shadow:0 0 14px #b8ff2aaa,0 0 22px #2ef0ff66,0 4px 0 #140428}
.lb-flask{grid-column:3;width:154px;height:176px;align-self:center;justify-self:end;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;
  border-radius:50% 50% 46% 46%;padding:16px 10px 18px;
  background:radial-gradient(circle at 50% 40%,rgba(46,240,255,.42),rgba(10,40,28,.82) 58%,rgba(8,6,20,.9));
  border:3px solid var(--cyan);
  box-shadow:0 0 0 2px #b8ff2a55,0 0 28px #2ef0ff66,inset 0 0 24px #0008,inset 0 0 0 6px #102018;color:var(--acid)}
.lb-flask strong{font-family:LabBub,LabSans,sans-serif;font-size:1.85rem;font-weight:400;line-height:1;
  color:var(--acid);text-shadow:0 0 12px #b8ff2a}
.lb-flask span{font-size:.72rem;font-weight:800;letter-spacing:.14em;color:#f4fff8;text-transform:uppercase}

/* slim test-tube promo rail — art + one 28px two-line title, colored rims, no sentences, no buttons */
.lb-tubes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px 12px 4px}
.lb-tube{position:relative;display:block;height:124px;border-radius:18px;overflow:hidden;
  border:3px solid #c060ff;box-shadow:0 0 0 1px #2a0858,0 0 14px #b44cff55}
.lb-tube:nth-child(2){border-color:#b8ff2a;box-shadow:0 0 0 1px #143000,0 0 14px #b8ff2a55}
.lb-tube:nth-child(3){border-color:#2ef0ff;box-shadow:0 0 0 1px #003038,0 0 14px #2ef0ff55}
.lb-tube img{width:100%;height:124px;object-fit:cover;object-position:center;display:block}
.lb-tube-title{position:absolute;left:0;top:0;bottom:0;width:52%;padding:8px 10px 8px 14px;
  display:flex;align-items:center;color:#fff;font-family:LabSans,sans-serif;font-weight:800;font-size:28px;line-height:1.05;
  background:linear-gradient(90deg,rgba(8,4,20,.72),rgba(8,4,20,.18) 70%,transparent);
  text-shadow:0 2px 0 #000,0 3px 10px #000,0 0 8px #000}
.lb-tube .lb-badge{top:8px;right:8px;left:auto;font-size:11px;min-height:22px;padding:2px 8px}
.lb-tube:hover{filter:brightness(1.06)}

/* specimen tray of 8 bubble-framed tiles, art fills, 16-17px high-contrast plaques */
.lb-tray{padding:4px 12px 8px;display:grid;grid-template-columns:repeat(8,1fr);gap:8px}
.lb-tray h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.lb-tile{position:relative;display:block;border-radius:16px;overflow:hidden;
  border:2px solid #2ef0ff99;background:#080412;box-shadow:0 0 12px #b44cff33}
.lb-tile img{width:100%;height:220px;object-fit:cover;object-position:center;display:block}
.lb-tile:hover{border-color:var(--acid);box-shadow:0 0 18px #b8ff2a77;transform:translateY(-2px)}
.lb-plaque{display:flex;align-items:center;justify-content:center;min-height:36px;padding:5px 3px;
  background:#080412;border-top:1px solid #2ef0ff99;
  color:#ffffff;font-family:LabSans,sans-serif;font-weight:800;font-size:17px;line-height:1.1;
  text-align:center;text-shadow:0 1px 2px #000}
.lb-badge{position:absolute;top:6px;left:6px;z-index:1;min-height:20px;padding:2px 7px;
  border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.08em;color:#081400;
  background:var(--acid);box-shadow:0 0 8px #b8ff2a88}
.lb-badge.hot{background:var(--magenta);color:#fff8f0;box-shadow:0 0 8px #ff4dff88}
.lb-badge.novo{background:var(--cyan);color:#061018;box-shadow:0 0 8px #2ef0ff88}

.lb-facts{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;align-items:center;
  margin:8px 12px 0;padding:10px 16px;border-radius:16px;
  background:linear-gradient(90deg,#160a2c,#0c1020);
  border:1px solid var(--line);box-shadow:0 0 16px #2ef0ff22;
  font-size:13px;font-weight:700;color:var(--ivory)}
.lb-facts b{color:var(--acid);letter-spacing:.08em;text-transform:uppercase}
.lb-facts i{font-style:normal;color:var(--cyan)}
.lb-facts em{font-style:normal;color:var(--mute);font-weight:600;font-size:12px}

/* below-fold rooms */
.lb-rooms{padding:28px 16px 10px;max-width:1180px;margin:0 auto}
.lb-rooms h2{font-family:LabBub,sans-serif;font-weight:400;font-size:32px;margin:0 0 14px;
  background:linear-gradient(90deg,var(--acid),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.lb-roomgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.lb-room{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--pod)}
.lb-room img{width:100%;height:120px;object-fit:cover}
.lb-room strong{display:block;padding:10px 12px 12px;font-size:15px;color:var(--ivory)}
.lb-room:hover{border-color:var(--acid)}

.lb-revtease{padding:10px 16px 28px;max-width:1180px;margin:0 auto}
.lb-revtease h2{font-family:LabBub,sans-serif;font-weight:400;font-size:32px;margin:0 0 14px;color:var(--acid)}
.lb-revgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.lb-revgrid a{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--pod)}
.lb-revgrid img{width:100%;aspect-ratio:1200/630;object-fit:cover}
.lb-revgrid strong{display:block;padding:10px 12px;font-size:14px;color:var(--ivory);line-height:1.3}

/* inner pages */
.lb-crumb{font-size:.9rem;color:var(--mute);margin:0 0 10px}
.lb-wrap{max-width:860px;margin:0 auto;padding:28px 18px 48px}
.lb-wrap.wide{max-width:1180px}
.lb-wrap h1{font-family:LabBub,LabSans,sans-serif;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;
  margin:0 0 14px;color:var(--acid);text-shadow:0 0 16px #b44cff66;font-weight:400}
.lb-lead{font-size:1.05rem;color:var(--ivory);font-weight:600}
.lb-fig{margin:16px 0 22px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.lb-fig img{width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}
.lb-fig figcaption{padding:8px 12px;font-size:.85rem;color:var(--mute);background:#12081e}
.lb-wrap h2{color:var(--cyan);font-size:1.35rem;margin:1.6em 0 .5em;font-family:LabBub,LabSans,sans-serif;font-weight:400}
.lb-wrap h3{color:var(--acid);font-size:1.1rem;margin:1.3em 0 .4em}
.lb-wrap p,.lb-wrap li{color:var(--ivory)}
.lb-wrap ul,.lb-wrap ol{padding-left:1.2em}
.lb-go-rec,.lb-wrap .lb-go{height:48px;min-height:48px;padding:0 22px;font-size:16px;margin:8px 0}
.lb-recbox{margin:22px 0;padding:16px;border-radius:16px;border:1px solid var(--line);background:#140a28}
.lb-recbox p{margin:8px 0 0;font-size:.9rem;color:var(--mute)}
.lb-visit{display:inline-flex;margin-top:8px;font-weight:800;color:var(--acid)}

/* reviews hub */
.lb-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 16px}
.lb-tools input{flex:1;min-width:200px;height:42px;border-radius:999px;border:1px solid var(--line);
  background:#12081e;color:var(--ivory);padding:0 14px;font:inherit}
.lb-tbtn{height:38px;padding:0 12px;border-radius:999px;border:1px solid #b44cff88;
  background:#160a2c;color:var(--ivory);font:inherit;font-weight:800;cursor:pointer}
.lb-tbtn[aria-pressed="true"]{border-color:var(--acid);color:var(--acid);box-shadow:0 0 10px #b8ff2a44}
.lb-slips{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.lb-slip{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;
  padding:10px;border-radius:14px;border:1px solid var(--line);background:var(--pod)}
.lb-slip img{width:48px;height:48px;border-radius:10px;object-fit:cover}
.lb-mono{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  background:#2a1458;color:var(--acid);font-weight:800;font-size:20px}
.lb-slip .bay{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);font-weight:800}
.lb-more{margin:16px auto;display:block;height:42px;padding:0 18px;border-radius:999px;
  border:1px solid var(--acid);background:#160a2c;color:var(--acid);font:inherit;font-weight:800;cursor:pointer}
.lb-feats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0 0 22px}
.lb-feats a{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--pod)}
.lb-feats img{width:100%;aspect-ratio:1200/630;object-fit:cover}
.lb-feats strong{display:block;padding:10px 12px 2px;color:var(--ivory)}
.lb-feats span{display:block;padding:0 12px 12px;color:var(--mute);font-size:.9rem}

.lb-foot{margin-top:12px;padding:28px 18px 40px;background:#080412;border-top:1px solid var(--line)}
.lb-foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}
.lb-foot h2{font-family:LabBub,sans-serif;font-weight:400;font-size:26px;color:var(--acid);margin:0 0 8px}
.lb-foot a{display:block;margin:4px 0;color:var(--cyan);font-weight:700}
.lb-18{max-width:1180px;margin:18px auto 0;color:var(--mute);font-size:.88rem}

@media (max-width:1100px){
  .lb-word{font-size:48px}
  .lb-brand img{width:64px;height:64px}
  .lb-h1-main{font-size:68px}
  .lb-h1-sub{font-size:44px}
  .lb-tray{grid-template-columns:repeat(4,1fr)}
  .lb-roomgrid,.lb-revgrid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:880px){
  .lb-pod{grid-template-columns:auto 1fr auto;grid-template-areas:"brand go burger"}
  .lb-burger{display:inline-flex}
  .lb-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;
    background:#12081e;padding:10px;border-bottom:1px solid var(--line);z-index:30}
  .lb-pod.is-open .lb-nav{display:flex}
  .lb-hero{height:auto}
  .lb-hero-art{height:220px}
  .lb-hero-box{grid-template-columns:1fr;padding:12px;background:linear-gradient(180deg,rgba(6,3,16,.2),rgba(6,3,16,.78))}
  .lb-hero-copy,.lb-flask{grid-column:1}
  .lb-h1-main{font-size:52px}
  .lb-h1-sub{font-size:36px}
  .lb-h1-stroke{-webkit-text-stroke:5px #2a0858}
  .lb-flask{width:100%;height:auto;border-radius:18px;flex-direction:row;gap:12px;padding:10px;justify-content:flex-start}
  .lb-tubes{grid-template-columns:1fr}
  .lb-tube-title{width:70%;font-size:24px}
  .lb-tray{grid-template-columns:repeat(2,1fr)}
  .lb-tile img{height:180px}
  .lb-slips,.lb-feats,.lb-foot-grid{grid-template-columns:1fr}
  .lb-word{font-size:40px}
  .lb-brand img{width:56px;height:56px}
  .lb-tick-track{justify-content:flex-start;overflow:hidden}
}
