/** Shopify CDN: Minification failed

Line 333:2 Unexpected "@media"

**/
/* Lagoon 8·8·8 — scoped styles (auto-generated, all rules under .lg888) */
.lg888{
    --teal:   #00746a;
    --deep:   #0b3a40;
    --deeper: #07292e;
    --gold:   #f4d23f;
    --gold-d: #e6bf1f;
    --ink:    #11201f;
    --mute:   #5d6b69;
    --line:   #e3e0d8;
    --sand:   #f2efe8;
    --cream:  #fbf9f4;
    --white:  #ffffff;
    --font-display: "Fjalla One", "Oswald", "Arial Narrow", sans-serif;
    --font-body: "Lato", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
    --maxw: 1240px;
  }
  .lg888 *{ box-sizing:border-box; }
  .lg888{ margin:0; padding:0; }
  .lg888{
    background:var(--cream);
    color:var(--ink);
    font-family:var(--font-body);
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    line-height:1.6;
  }
  .lg888 a{ color:inherit; text-decoration:none; }
  .lg888 img{ display:block; max-width:100%; }
  .lg888 h1, .lg888 h2, .lg888 h3, .lg888 h4{ font-family:var(--font-display); font-weight:400; margin:0; letter-spacing:-0.005em; line-height:1.02; }
  .lg888 .wrap{ max-width:var(--maxw); margin:0 auto; padding:0 32px; }
  .lg888 .eyebrow{
    font-family:var(--font-body); font-weight:900; text-transform:uppercase;
    letter-spacing:0.22em; font-size:12px; color:var(--teal);
  }
  .lg888 .eyebrow.on-dark{ color:var(--gold); }

  .lg888 /* ---------- NAV ---------- */
  .nav{
    position:sticky; top:0; z-index:50;
    background:rgba(251,249,244,0.92);
    backdrop-filter:saturate(1.2) blur(10px);
    border-bottom:1px solid var(--line);
  }
  .lg888 .nav-inner{ display:flex; align-items:center; justify-content:space-between; height:72px; }
  .lg888 .logo{ font-family:var(--font-display); font-size:30px; color:var(--deep); letter-spacing:-0.01em; }
  .lg888 .nav-links{ display:flex; gap:38px; align-items:center; }
  .lg888 .nav-links a{ font-size:15px; font-weight:700; color:var(--ink); opacity:0.82; }
  .lg888 .nav-links a:hover{ opacity:1; color:var(--teal); }
  .lg888 .nav-cta{
    font-family:var(--font-body); font-weight:900; font-size:13px; letter-spacing:0.04em;
    background:var(--deep); color:#fff; padding:11px 20px; border-radius:8px;
  }
  .lg888 .nav-cta:hover{ background:var(--teal); color:#fff; }

  .lg888 /* ---------- HERO ---------- */
  .hero{ position:relative; background:var(--deeper); color:#fff; overflow:hidden; }
  .lg888 .hero-grid{ display:grid; grid-template-columns:1.05fr 0.95fr; min-height:640px; }
  .lg888 .hero-copy{ padding:88px 64px 88px 0; display:flex; flex-direction:column; justify-content:center; }
  .lg888 .hero-copy .inner{ max-width:560px; margin-left:auto; padding-left:32px; }
  .lg888 .hero-tag{ display:flex; align-items:center; gap:14px; margin-bottom:26px; }
  .lg888 .hero-tag .yr{ font-family:var(--font-display); color:var(--gold); font-size:13px; letter-spacing:0.16em; }
  .lg888 .hero-tag .rule{ height:1px; width:54px; background:rgba(255,255,255,0.28); }
  .lg888 .hero h1{ font-size:clamp(46px,5.6vw,82px); color:#fff; line-height:0.96; text-transform:uppercase; }
  .lg888 .hero h1 .gold{ color:var(--gold); }
  .lg888 .hero-sub{ margin-top:24px; font-size:19px; line-height:1.55; color:rgba(255,255,255,0.82); max-width:480px; }
  .lg888 .hero-sub strong{ color:#fff; font-weight:700; }

  .lg888 .hero-media{ position:relative; }
  .lg888 .hero-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
  .lg888 .hero-media image-slot{ position:absolute; inset:0; width:100%; height:100%; }
  .lg888 .hero-media::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(90deg, var(--deeper) 0%, rgba(7,41,46,0.45) 22%, rgba(7,41,46,0) 55%);
  }
  .lg888 .hero-formula{
    position:absolute; left:0; bottom:0; z-index:3;
    display:flex; align-items:flex-end; gap:0;
    background:rgba(7,41,46,0.0);
  }

  .lg888 /* 8·8·8 stat band */
  .formula-band{
    background:var(--deep); border-top:1px solid rgba(255,255,255,0.08);
  }
  .lg888 .formula-inner{ display:grid; grid-template-columns:repeat(3,1fr); }
  .lg888 .fcell{ padding:34px 40px; border-left:1px solid rgba(255,255,255,0.1); }
  .lg888 .fcell:first-child{ border-left:none; }
  .lg888 .fcell .num{ font-family:var(--font-display); font-size:62px; color:var(--gold); line-height:1; }
  .lg888 .fcell .lbl{ margin-top:8px; font-size:13px; font-weight:900; letter-spacing:0.14em; text-transform:uppercase; color:#fff; }
  .lg888 .fcell .desc{ margin-top:6px; font-size:14px; color:rgba(255,255,255,0.62); line-height:1.45; }

  .lg888 /* ---------- EMAIL CAPTURE ---------- */
  .signup{ background:var(--white); border-bottom:1px solid var(--line); }
  .lg888 .signup-inner{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:center; padding:64px 0; }
  .lg888 .signup h2{ font-size:clamp(30px,3.2vw,44px); color:var(--deep); text-transform:uppercase; line-height:0.98; }
  .lg888 .signup .lede{ margin-top:16px; color:var(--mute); font-size:16px; max-width:380px; }
  .lg888 .signup .lede b{ color:var(--ink); font-weight:700; }
  .lg888 form.capture{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .lg888 form.capture .full{ grid-column:1 / -1; }
  .lg888 form.capture input{
    width:100%; padding:17px 18px; border:1.5px solid var(--line); border-radius:10px;
    font-family:var(--font-body); font-size:16px; color:var(--ink); background:var(--cream);
  }
  .lg888 form.capture input:focus{ outline:none; border-color:var(--teal); background:#fff; }
  .lg888 form.capture input::placeholder{ color:#9aa3a1; }
  .lg888 .btn-gold{
    grid-column:1 / -1; border:none; cursor:pointer;
    background:var(--gold); color:var(--deep);
    font-family:var(--font-display); font-size:19px; letter-spacing:0.02em; text-transform:uppercase;
    padding:18px; border-radius:10px; transition:background .15s;
  }
  .lg888 .btn-gold:hover{ background:var(--gold-d); }
  .lg888 .form-note{ grid-column:1 / -1; font-size:12.5px; color:var(--mute); text-align:center; margin-top:2px; }
  .lg888 .form-success{
    display:none; padding:30px; border:1.5px solid var(--teal); border-radius:12px;
    background:var(--sand); color:var(--deep);
  }
  .lg888 .form-success h3{ font-size:26px; text-transform:uppercase; color:var(--deep); }
  .lg888 .form-success p{ margin:8px 0 0; color:var(--mute); font-size:15px; }
  .lg888 form.capture.sent{ display:none; }
  .lg888 .form-success.sent{ display:block; }
  .lg888 /* Klaviyo embed mount — when a company ID is set the host form replaces the
     styled fallback below; give the slot room to render. */
  [data-klaviyo-slot]{ min-height:10px; }

  .lg888 /* ---------- SECTION SCAFFOLD ---------- */
  section{ scroll-margin-top:80px; }
  .lg888 .sec-head{ max-width:680px; }
  .lg888 .sec-head h2{ font-size:clamp(34px,4vw,58px); color:var(--deep); text-transform:uppercase; margin-top:14px; }
  .lg888 .sec-head p{ margin-top:18px; font-size:18px; color:var(--mute); line-height:1.6; }

  .lg888 /* ---------- HOW TO COMPETE ---------- */
  .compete{ padding:108px 0; }
  .lg888 .protocol{ margin-top:52px; display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid var(--line); border-radius:16px; overflow:hidden; background:#fff; }
  .lg888 .pstep{ padding:44px 38px; border-left:1px solid var(--line); }
  .lg888 .pstep:first-child{ border-left:none; }
  .lg888 .pstep .pnum{ font-family:var(--font-display); font-size:15px; letter-spacing:0.18em; color:var(--teal); }
  .lg888 .pstep h3{ font-size:27px; color:var(--deep); text-transform:uppercase; margin-top:18px; }
  .lg888 .pstep p{ margin-top:12px; color:var(--mute); font-size:15.5px; line-height:1.6; }
  .lg888 .pstep .big{ font-family:var(--font-display); font-size:46px; color:var(--ink); line-height:1; }
  .lg888 .compete-note{
    margin-top:32px; display:flex; gap:16px; align-items:flex-start;
    padding:26px 30px; background:var(--deep); color:#fff; border-radius:14px;
  }
  .lg888 .compete-note .key{ font-family:var(--font-display); font-size:14px; letter-spacing:0.16em; color:var(--gold); text-transform:uppercase; white-space:nowrap; padding-top:3px; }
  .lg888 .compete-note p{ margin:0; font-size:16px; line-height:1.6; color:rgba(255,255,255,0.86); }
  .lg888 .compete-note p b{ color:#fff; font-weight:700; }

  .lg888 /* ---------- WHAT YOU WIN ---------- */
  .win{ padding:108px 0; background:var(--deeper); color:#fff; }
  .lg888 .win .sec-head h2{ color:#fff; }
  .lg888 .win .sec-head p{ color:rgba(255,255,255,0.7); }
  .lg888 .prizes{ margin-top:54px; display:flex; flex-direction:column; gap:22px; }
  .lg888 .prize-hero{ display:grid; grid-template-columns:1fr 1.08fr; border-radius:24px; overflow:hidden; border:1px solid rgba(244,210,63,0.45); background:linear-gradient(125deg, var(--deep) 0%, #0c474a 100%); box-shadow:0 0 0 1px rgba(244,210,63,0.06), 0 40px 80px -40px rgba(0,0,0,0.6); }
  .lg888 .prize-hero-media{ position:relative; min-height:420px; }
  .lg888 .prize-hero-media image-slot{ position:absolute; inset:0; width:100%; height:100%; }
  .lg888 .prize-hero-media .ph-tag{ position:absolute; top:22px; left:22px; z-index:2; background:var(--gold); color:var(--deep); font-family:var(--font-display); font-size:13px; letter-spacing:0.08em; text-transform:uppercase; padding:8px 14px; border-radius:8px; }
  .lg888 .prize-hero-body{ padding:52px 50px; display:flex; flex-direction:column; justify-content:center; }
  .lg888 .prize-hero .tier{ font-size:12px; font-weight:900; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); }
  .lg888 .prize-hero h3{ font-size:clamp(38px,4.2vw,58px); color:#fff; text-transform:uppercase; margin-top:12px; line-height:0.94; }
  .lg888 .value-badge{ align-self:flex-start; white-space:nowrap; margin-top:20px; background:var(--gold); color:var(--deep); font-family:var(--font-display); font-size:19px; letter-spacing:0.02em; text-transform:uppercase; padding:9px 20px; border-radius:99px; }
  .lg888 .kit{ margin-top:26px; }
  .lg888 .kititem{ display:flex; align-items:center; gap:14px; padding:15px 0; border-top:1px solid rgba(255,255,255,0.13); }
  .lg888 .kititem:first-child{ border-top:none; }
  .lg888 .kititem .kdot{ width:26px; height:26px; flex-shrink:0; border-radius:50%; background:rgba(244,210,63,0.16); color:var(--gold); display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:900; }
  .lg888 .kititem .kt b{ display:block; color:#fff; font-weight:700; font-size:16.5px; }
  .lg888 .kititem .kt span{ display:block; color:rgba(255,255,255,0.6); font-size:13.5px; }
  .lg888 .prize-hero .meta{ margin-top:24px; font-size:13.5px; color:rgba(255,255,255,0.55); }
  .lg888 .prize-secondary{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
  .lg888 .prize2{ position:relative; overflow:hidden; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.12); border-radius:20px; padding:40px 36px; display:flex; flex-direction:column; }
  .lg888 .prize2 .ghost{ position:absolute; right:18px; top:2px; font-family:var(--font-display); font-size:120px; line-height:1; color:rgba(244,210,63,0.08); pointer-events:none; }
  .lg888 .prize2 .tier{ font-size:12px; font-weight:900; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); position:relative; }
  .lg888 .prize2 h3{ font-size:32px; color:#fff; text-transform:uppercase; margin-top:12px; line-height:0.98; position:relative; }
  .lg888 .prize2 p{ margin-top:14px; color:rgba(255,255,255,0.72); font-size:15px; line-height:1.6; flex:1; position:relative; }
  .lg888 .prize2 ul{ margin:18px 0 0; padding:0; list-style:none; position:relative; }
  .lg888 .prize2 li{ font-size:15px; color:rgba(255,255,255,0.86); padding:11px 0; border-top:1px solid rgba(255,255,255,0.1); display:flex; gap:10px; }
  .lg888 .prize2 li:before{ content:"—"; color:var(--gold); }

  .lg888 /* ---------- THE CASE FOR RECOVERY ---------- */
  .recovery{ padding:112px 0; background:var(--cream); border-top:1px solid var(--line); }
  .lg888 .recovery-grid{ display:grid; grid-template-columns:0.82fr 1.18fr; gap:64px; align-items:center; }
  .lg888 .recovery-media{ border-radius:18px; overflow:hidden; aspect-ratio:4/5; position:relative; box-shadow:0 30px 60px -30px rgba(11,58,64,0.5); }
  .lg888 .recovery-media image-slot{ width:100%; height:100%; }
  .lg888 .recovery h2{ font-size:clamp(32px,3.7vw,54px); color:var(--deep); text-transform:uppercase; margin-top:14px; line-height:1.0; }
  .lg888 .recovery .lead{ margin-top:22px; font-size:19px; color:var(--ink); line-height:1.62; max-width:540px; }
  .lg888 .recovery .args{ margin-top:32px; }
  .lg888 .rarg{ padding:24px 0; border-top:1px solid var(--line); display:grid; grid-template-columns:46px 1fr; gap:22px; align-items:start; }
  .lg888 .rarg:last-child{ border-bottom:1px solid var(--line); }
  .lg888 .rarg .rn{ font-family:var(--font-display); font-size:30px; color:var(--gold-d); line-height:1; }
  .lg888 .rarg .rt{ font-size:16px; color:var(--mute); line-height:1.62; }
  .lg888 .rarg .rt b{ color:var(--deep); font-weight:700; }
  .lg888 .recovery .source{ margin-top:26px; font-size:15.5px; color:var(--ink); line-height:1.6; max-width:560px; font-style:italic; }
  .lg888 .recovery .source b{ font-style:normal; font-weight:700; color:var(--teal); }

  .lg888 /* ---------- HOW TO JOIN ---------- */
  .join{ padding:108px 0; }
  .lg888 .join-grid{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
  .lg888 .join-media{ position:relative; border-radius:18px; overflow:hidden; aspect-ratio:4/5; }
  .lg888 .join-media image-slot{ width:100%; height:100%; }
  .lg888 .join-list{ margin-top:34px; display:flex; flex-direction:column; gap:0; }
  .lg888 .jrow{ display:flex; gap:22px; padding:24px 0; border-top:1px solid var(--line); }
  .lg888 .jrow:last-child{ border-bottom:1px solid var(--line); }
  .lg888 .jrow .jk{ font-family:var(--font-display); font-size:14px; letter-spacing:0.14em; color:var(--teal); text-transform:uppercase; width:118px; flex-shrink:0; padding-top:3px; }
  .lg888 .jrow .jv{ font-size:16px; color:var(--ink); line-height:1.55; }
  .lg888 .jrow .jv b{ font-weight:700; }
  .lg888 .jrow .jv .muted{ color:var(--mute); }

  .lg888 /* ---------- FINISHER SHOWCASE ---------- */
  .finish{ padding:108px 0; background:var(--sand); }
  .lg888 .finish-gallery{ margin-top:52px; columns:4 200px; column-gap:18px; }
  .lg888 .finish-gallery image-slot{ display:block; width:100%; height:auto; margin:0 0 18px; break-inside:avoid; border-radius:14px; }
  .lg888 .finisher-quote{ margin-top:56px; max-width:880px; }
  .lg888 .finisher-quote blockquote{ margin:0; font-family:var(--font-display); font-size:clamp(26px,3vw,40px); line-height:1.12; color:var(--deep); text-transform:uppercase; }
  .lg888 .finisher-quote cite{ display:block; margin-top:20px; font-style:normal; font-size:14px; font-weight:900; letter-spacing:0.04em; color:var(--mute); }

  .lg888 /* ---------- LEADERBOARD PLACEHOLDER ---------- */
  .board{ padding:108px 0; }
  .lg888 .board-shell{
    margin-top:48px; border:1px solid var(--line); border-radius:18px; overflow:hidden; background:#fff;
  }
  .lg888 .board-bar{ display:flex; align-items:center; justify-content:space-between; padding:22px 30px; background:var(--deep); color:#fff; gap:20px; flex-wrap:wrap; }
  .lg888 .board-bar .bt{ font-family:var(--font-display); font-size:22px; text-transform:uppercase; letter-spacing:0.02em; color:#fff !important; }
  .lg888 .board-bar .status{ display:flex; align-items:center; gap:10px; font-size:13px; font-weight:700; letter-spacing:0.04em; color:rgba(255,255,255,0.82) !important; }
  .lg888 .board-bar .status .lb-rangelabel{ color:#fff !important; }
  .lg888 .board-bar .dot{ width:9px; height:9px; border-radius:50%; background:var(--gold); }
  .lg888 .board-empty{ padding:80px 30px; text-align:center; }
  .lg888 .board-empty .grid-skel{ max-width:680px; margin:0 auto 34px; display:flex; flex-direction:column; gap:12px; }
  .lg888 .skel-row{ display:grid; grid-template-columns:1.6fr repeat(4,1fr); gap:12px; }
  .lg888 .skel-cell{ height:14px; border-radius:6px; background:repeating-linear-gradient(90deg,var(--sand),var(--sand) 12px,#eceae3 12px,#eceae3 24px); }
  .lg888 .skel-cell.dark{ background:var(--line); }
  .lg888 .board-empty h3{ font-size:30px; color:var(--deep); text-transform:uppercase; }
  .lg888 .board-empty p{ margin:14px auto 0; max-width:480px; color:var(--mute); font-size:16px; }
  .lg888 .board-empty .open-when{ margin-top:22px; display:inline-flex; align-items:center; gap:12px; padding:12px 20px; border:1.5px solid var(--line); border-radius:99px; font-size:13px; font-weight:900; letter-spacing:0.12em; text-transform:uppercase; color:var(--teal); }

  .lg888 /* ---------- LEADERBOARD (Phase 1) ---------- */
  .lb-toolbar{ margin-top:44px; display:flex; flex-wrap:wrap; gap:24px; align-items:flex-end; justify-content:space-between; }
  .lg888 .lb-filters{ display:flex; flex-wrap:wrap; gap:18px 22px; align-items:flex-end; }
  .lg888 .lb-field{ display:flex; flex-direction:column; gap:8px; }
  .lg888 .lb-field[hidden]{ display:none; }
  .lg888 .lb-field > label{ font-size:11px; font-weight:900; letter-spacing:0.14em; text-transform:uppercase; color:var(--mute); }
  .lg888 .seg{ display:inline-flex; background:#fff; border:1px solid var(--line); border-radius:11px; padding:4px; gap:2px; }
  .lg888 .seg button{ border:none; background:none; cursor:pointer; font-family:var(--font-body); font-weight:700; font-size:13.5px; color:var(--mute); padding:9px 16px; border-radius:8px; transition:.12s; }
  .lg888 .seg button:hover{ color:var(--ink); }
  .lg888 .seg button.active{ background:var(--deep); color:#fff; }
  .lg888 .lb-field select, .lg888 .lb-field input[type=date]{ font-family:var(--font-body); font-size:14px; padding:11px 13px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); }
  .lg888 .lb-daterange{ display:flex; gap:8px; align-items:center; }
  .lg888 .lb-daterange .to{ color:var(--mute); }
  .lg888 .btn-log{ border:none; cursor:pointer; background:var(--deep); color:#fff; font-family:var(--font-body); font-weight:900; font-size:14px; letter-spacing:0.02em; padding:13px 22px; border-radius:10px; }
  .lg888 .btn-log:hover{ background:var(--teal); }

  .lg888 .lb-table-wrap{ overflow-x:auto; }
  .lg888 table.lb{ width:100%; border-collapse:collapse; min-width:880px; }
  .lg888 table.lb thead th{ text-align:left; font-family:var(--font-body); font-size:11px; font-weight:900; letter-spacing:0.12em; text-transform:uppercase; color:var(--mute); padding:16px 22px; border-bottom:1px solid var(--line); background:var(--cream); }
  .lg888 table.lb tbody td{ padding:16px 22px; border-bottom:1px solid var(--line); vertical-align:middle; font-size:15px; }
  .lg888 table.lb tbody tr:last-child td{ border-bottom:none; }
  .lg888 table.lb tbody tr:hover{ background:var(--cream); }
  .lg888 .lb-rank{ font-family:var(--font-display); font-size:21px; color:#b7bdbb; width:40px; }
  .lg888 tr.top .lb-rank{ color:var(--gold-d); }
  .lg888 .lb-athlete{ display:flex; flex-direction:column; gap:3px; }
  .lg888 .lb-athlete .nm{ font-weight:700; color:var(--ink); display:flex; align-items:center; gap:9px; }
  .lg888 .lb-athlete .meta{ font-size:12.5px; color:var(--mute); }
  .lg888 .fin-tag{ font-family:var(--font-body); font-size:10px; font-weight:900; letter-spacing:0.08em; text-transform:uppercase; color:var(--teal); background:rgba(0,116,106,0.1); padding:2px 8px; border-radius:99px; }
  .lg888 .lb-sleep{ white-space:nowrap; }
  .lg888 .lb-sleep .hrs{ font-family:var(--font-display); font-size:20px; color:var(--deep); }
  .lg888 .lb-sleep .hrs small, .lg888 .miles-total small{ font-size:12px; color:var(--mute); margin-left:1px; }
  .lg888 .lb-sleep .sub{ display:block; font-size:11.5px; color:var(--mute); margin-top:1px; }
  .lg888 .lb-score{ font-family:var(--font-display); font-size:20px; color:var(--ink); }
  .lg888 .lb-score.muted{ color:#c2c7c5; }
  .lg888 .badge{ display:inline-flex; align-items:center; gap:5px; font-size:10.5px; font-weight:900; letter-spacing:0.06em; text-transform:uppercase; padding:4px 10px; border-radius:99px; }
  .lg888 .badge.oura{ background:#eef1ff; color:#3b46c4; }
  .lg888 .badge.whoop{ background:#e8faf0; color:#0f8a52; }
  .lg888 .badge.strava{ background:#fff0e8; color:#dd5320; }
  .lg888 .badge.manual{ background:var(--sand); color:var(--mute); }
  .lg888 .verified{ color:var(--teal); font-weight:900; font-size:13px; }
  .lg888 .lb-miles{ white-space:nowrap; }
  .lg888 .miles-total{ font-family:var(--font-display); font-size:20px; color:var(--ink); }
  .lg888 .miles-bar{ margin-top:7px; height:6px; width:130px; border-radius:99px; overflow:hidden; display:flex; background:var(--line); }
  .lg888 .miles-bar i{ display:block; height:100%; }
  .lg888 .miles-bar .run, .lg888 .miles-legend em.run{ background:var(--teal); }
  .lg888 .miles-bar .bike, .lg888 .miles-legend em.bike{ background:var(--gold-d); }
  .lg888 .miles-bar .walk, .lg888 .miles-legend em.walk{ background:#9bb0ad; }
  .lg888 .miles-legend{ display:flex; align-items:center; gap:6px; font-size:11.5px; color:var(--mute); margin-top:6px; }
  .lg888 .miles-legend em{ display:inline-block; width:8px; height:8px; border-radius:2px; }
  .lg888 .lb-days .days-pill{ font-family:var(--font-display); font-size:21px; color:var(--deep); }
  .lg888 .lb-days .days-pill small{ font-size:13px; color:var(--mute); }

  .lg888 .lb-connect{ margin-top:22px; display:flex; flex-wrap:wrap; gap:18px; align-items:center; justify-content:space-between; padding:24px 28px; border:1px dashed var(--line); border-radius:14px; background:#fff; }
  .lg888 .lb-connect .ct{ font-size:14px; color:var(--mute); max-width:560px; line-height:1.5; }
  .lg888 .lb-connect .ct b{ color:var(--ink); font-weight:700; }
  .lg888 .connect-btns{ display:flex; gap:10px; flex-wrap:wrap; }
  .lg888 .btn-connect{ border:1px solid var(--line); background:var(--cream); border-radius:10px; padding:11px 16px; font-family:var(--font-body); font-weight:700; font-size:13.5px; color:var(--mute); display:flex; gap:8px; align-items:center; cursor:not-allowed; }
  .lg888 .btn-connect .soon{ font-size:9.5px; font-weight:900; letter-spacing:0.08em; text-transform:uppercase; background:var(--sand); color:var(--mute); padding:2px 7px; border-radius:99px; }

  .lg888 .lb-manual{ margin-top:20px; border:1px solid var(--line); border-radius:16px; background:#fff; padding:28px 30px; }
  .lg888 .lb-manual-head{ display:flex; flex-direction:column; gap:4px; margin-bottom:20px; }
  .lg888 .lb-manual-head b{ font-family:var(--font-display); font-size:20px; color:var(--deep); text-transform:uppercase; letter-spacing:0.01em; }
  .lg888 .lb-manual-head span{ font-size:13.5px; color:var(--mute); }
  .lg888 .lb-manual-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .lg888 .lb-manual-grid label{ display:flex; flex-direction:column; gap:7px; font-size:11px; font-weight:900; letter-spacing:0.1em; text-transform:uppercase; color:var(--mute); }
  .lg888 .lb-manual-grid input, .lg888 .lb-manual-grid select{ font-family:var(--font-body); font-weight:400; font-size:15px; letter-spacing:0; text-transform:none; padding:12px 13px; border:1.5px solid var(--line); border-radius:9px; background:var(--cream); color:var(--ink); }
  .lg888 .lb-manual-grid input:focus, .lg888 .lb-manual-grid select:focus{ outline:none; border-color:var(--teal); background:#fff; }
  .lg888 .lb-manual-actions{ margin-top:22px; display:flex; align-items:center; gap:18px; }
  .lg888 .lb-manual-actions .btn-gold{ width:auto; grid-column:auto; padding:14px 34px; }
  .lg888 .btn-text{ border:none; background:none; cursor:pointer; font-family:var(--font-body); font-weight:700; font-size:14px; color:var(--mute); }
  .lg888 .btn-text:hover{ color:var(--ink); }
  .lg888 .lb-manual-status{ font-size:13px; font-weight:700; color:var(--teal); }
  .lg888 .lb-blank{ text-align:center; color:var(--mute); padding:48px 22px !important; font-size:15px; }
  .lg888 .lb-blank b{ color:var(--deep); }

  .lg888 /* ---------- FINAL CTA ---------- */
  .final{ padding:104px 0; background:var(--deeper); color:#fff; text-align:center; }
  .lg888 .final h2{ font-size:clamp(38px,5vw,72px); text-transform:uppercase; color:#fff; line-height:0.96; }
  .lg888 .final h2 .gold{ color:var(--gold); }
  .lg888 .final p{ margin:20px auto 36px; max-width:520px; color:rgba(255,255,255,0.74); font-size:18px; }
  .lg888 .final .btn-gold{ display:inline-block; width:auto; padding:18px 52px; }

  .lg888 /* ---------- FOOTER ---------- */
  footer{ background:var(--deep); color:rgba(255,255,255,0.7); padding:54px 0 40px; border-top:1px solid rgba(255,255,255,0.08); }
  .lg888 .foot-inner{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
  .lg888 .foot-inner .logo{ color:#fff; }
  .lg888 .foot-links{ display:flex; gap:28px; flex-wrap:wrap; }
  .lg888 .foot-links a{ font-size:14px; font-weight:700; opacity:0.8; }
  .lg888 .foot-links a:hover{ opacity:1; color:var(--gold); }
  .lg888 .foot-fine{ margin-top:30px; font-size:12.5px; color:rgba(255,255,255,0.4); }

  .lg888 /* ---------- RESPONSIVE ---------- */
  @media(max-width:1080px){
    .hero-grid{ grid-template-columns:1fr; }
    .hero-media{ min-height:380px; order:-1; }
    .hero-media::after{ background:linear-gradient(0deg, var(--deeper) 0%, rgba(7,41,46,0) 60%); }
    .hero-copy{ padding:56px 0; }
    .hero-copy .inner{ margin:0; padding:0; max-width:none; }
    .signup-inner, .join-grid{ grid-template-columns:1fr; gap:36px; }
    .prizes{ grid-template-columns:1fr; }
    .protocol, .formula-inner{ grid-template-columns:1fr; }
    .pstep{ border-left:none; border-top:1px solid var(--line); }
    .pstep:first-child{ border-top:none; }
    .fcell{ border-left:none; border-top:1px solid rgba(255,255,255,0.1); }
    .fcell:first-child{ border-top:none; }
    .prize-hero{ grid-template-columns:1fr; }
    .prize-hero-media{ min-height:280px; }
    .prize-secondary{ grid-template-columns:1fr; }
    .recovery-grid{ grid-template-columns:1fr; gap:36px; }
    .recovery-media{ max-width:440px; }
    .finish-gallery{ columns:2 150px; }
    .lb-manual-grid{ grid-template-columns:repeat(2,1fr); }
    .lb-toolbar{ gap:18px; }
  }
  @media(max-width:720px){
    .lg888 .wrap{ padding:0 20px; }
    .lg888 .nav-links{ display:none; }
    .lg888 form.capture{ grid-template-columns:1fr; }
    .lg888 .hero-copy{ padding:44px 0; }
    .lg888 .compete-note{ flex-direction:column; gap:8px; }
    .lg888 .lb-manual-grid{ grid-template-columns:1fr; }
    .lg888 .lb-filters{ gap:14px 16px; }
  }

/* ── Shopify image markup (replaces the standalone <image-slot>) ─────────── */
.lg888 .recovery-media img{ width:100%; height:100%; object-fit:cover; }
.lg888 .join-media img{ width:100%; height:100%; object-fit:cover; }
.lg888 .prize-hero-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.lg888 .finish-gallery .finish-cell{ display:block; width:100%; margin:0 0 18px; break-inside:avoid; border-radius:14px; overflow:hidden; position:relative; background:#e9e5dc; }
.lg888 .finish-gallery .finish-cell img{ width:100%; height:100%; object-fit:cover; display:block; }
.lg888 .finish-cell .finish-ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; text-align:center; padding:14px; color:#9aa3a1; font-size:13px; }
