/*
Theme Name:   The Lantern Gala, Lumen
Theme URI:    https://generosityworks.co.uk/
Template:     lantern-theme
Author:       Generosity Works
Description:  The 2026 redesign of the Lantern Gala demo. A night-sky experience with real lanterns, a live total, a pinned running order and a complete design system that re-dresses every stored page, WooCommerce screen and platform component. Child of The Lantern Gala so the app, kiosk mode, guide search and SEO layer carry over untouched.
Version:      1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain:  lumen
*/

/* =====================================================================
   0. TOKENS
   Night is the default: a gala happens after dark and the lanterns are
   the brand. Paper is for anywhere a guest types card details.
   ===================================================================== */
:root{
  --night:#05091A;
  --night-2:#0A1430;
  --navy:#0B2050;
  --navy-2:#122B66;
  --navy-3:#1A3A86;
  --ink:#F6F2E8;
  --ink-soft:rgba(246,242,232,.74);
  --muted:rgba(246,242,232,.52);
  --faint:rgba(246,242,232,.3);
  --line:rgba(246,242,232,.12);
  --line-2:rgba(246,242,232,.2);
  --glass:rgba(255,255,255,.045);
  --glass-2:rgba(255,255,255,.08);

  --gold:#FFD23E;
  --amber:#F2B705;
  --ember:#FF9A3C;
  --flame:#FF6B2C;
  --blue:#2E6CDF;
  --sky:#8FB3EE;
  --sky-2:#C7D9F9;
  --green:#4ADE80;
  --red:#FF8A80;

  --paper:#FCFBF7;
  --paper-2:#F1EFE7;
  --paper-ink:#0B2050;
  --paper-soft:#3C4A66;
  --paper-muted:#6B778C;
  --paper-line:rgba(11,32,80,.12);

  --f-display:"Fraunces","Iowan Old Style",Georgia,serif;
  --f-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;

  --pad:clamp(1.1rem,5vw,5.5rem);
  --maxw:1240px;
  --r:22px;
  --r-sm:14px;
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --nav-h:76px;
  --glow-gold:0 0 0 1px rgba(255,210,62,.25),0 18px 60px -18px rgba(255,210,62,.55);
  --shadow:0 30px 80px -30px rgba(0,0,0,.65);
}

/* =====================================================================
   1. RESET + BASE
   ===================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
body{margin:0;font-family:var(--f-body);font-size:1rem;line-height:1.6;color:var(--ink);background:var(--night);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;font-feature-settings:"cv11","ss01"}
body.lm-night{background:
  radial-gradient(1200px 700px at 85% -10%,rgba(46,108,223,.22),transparent 60%),
  radial-gradient(900px 600px at 10% 110%,rgba(242,183,5,.12),transparent 60%),
  var(--night)}
body.lm-paper{background:var(--paper);color:var(--paper-ink)}
body.lm-lock{overflow:hidden}
img,svg,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0}
::selection{background:var(--gold);color:var(--navy)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.lm-skip{position:absolute;left:-9999px;top:0;z-index:100000;background:var(--gold);color:var(--navy);padding:.7rem 1.1rem;border-radius:0 0 12px 0;font-weight:800}
.lm-skip:focus{left:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
input,select,textarea{font:inherit;font-size:16px}

/* type helpers */
.lm-eyebrow,.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-family:var(--f-body);font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.lm-eyebrow::before,.eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.7}
.eyebrow__dot{display:none}
.lm-h1,.lm-h2,.h2,.lm-cta__title{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;line-height:1.02;color:var(--ink);font-variation-settings:"opsz" 144,"SOFT" 30}
.lm-h2,.h2{font-size:clamp(2rem,4.4vw,3.6rem)}
.lm-h2 em,.h2 em,.lm-h1 em,.lm-cta__title em,.phero h1 em{font-style:italic;font-weight:400;color:var(--gold)}
.lm-lead,.lede{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.6;color:var(--ink-soft);max-width:56ch}
.lm-lead strong{color:var(--ink)}
.lm-num{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum"}

/* =====================================================================
   2. CHROME: progress, cursor, ribbon, nav, menu
   ===================================================================== */
.lm-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:9500;pointer-events:none}
.lm-progress span{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--blue),var(--gold))}

.lm-cursor{position:fixed;top:0;left:0;z-index:9800;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;
  background:var(--gold);mix-blend-mode:difference;pointer-events:none;opacity:0;transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),opacity .3s}
.lm-cursor.is-on{opacity:1}
.lm-cursor.is-hover{width:52px;height:52px;margin:-26px 0 0 -26px;background:#fff}
@media (hover:none),(pointer:coarse){.lm-cursor{display:none}}

.lm-ribbon{position:relative;z-index:7000;display:flex;align-items:center;justify-content:center;gap:1.2rem;flex-wrap:wrap;
  padding:.5rem var(--pad);font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--navy);
  background:linear-gradient(90deg,var(--amber),var(--gold) 50%,#FFE27A)}
.lm-ribbon b{font-weight:800}
.lm-ribbon__live{display:inline-flex;align-items:center;gap:.45em;padding:.15rem .7rem .15rem .45rem;border-radius:100px;background:rgba(11,32,80,.12)}
.lm-ribbon__live i{width:7px;height:7px;border-radius:50%;background:var(--navy);box-shadow:0 0 0 0 rgba(11,32,80,.5);animation:lm-pulse 2.2s ease-out infinite}
@keyframes lm-pulse{0%{box-shadow:0 0 0 0 rgba(11,32,80,.55)}100%{box-shadow:0 0 0 9px rgba(11,32,80,0)}}
.lm-ribbon a{font-weight:800;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
@media (max-width:640px){.lm-ribbon__when{display:none}}

.lm-nav{position:sticky;top:0;z-index:6500;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  height:var(--nav-h);padding:0 var(--pad);
  background:rgba(5,9,26,.55);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid transparent;transition:background .4s,border-color .4s,transform .5s var(--ease)}
.lm-nav.is-solid{background:rgba(5,9,26,.82);border-bottom-color:var(--line)}
.lm-nav.is-hidden{transform:translateY(-100%)}
body.lm-paper .lm-nav{background:rgba(252,251,247,.86);color:var(--paper-ink)}
body.lm-paper .lm-nav.is-solid{border-bottom-color:var(--paper-line)}
.lm-nav__brand{display:flex;align-items:center;gap:.7rem;font-family:var(--f-display);font-size:1.15rem;font-weight:500;letter-spacing:-.01em;white-space:nowrap}
.lm-nav__brand i{font-style:italic;color:var(--gold);font-weight:400}
.lm-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(160deg,var(--navy-3),var(--navy));color:var(--gold);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 10px 24px -12px rgba(46,108,223,.8)}
.lm-mark svg{width:22px;height:22px}
.lm-nav__links{display:flex;align-items:center;gap:.2rem}
.lm-nav__links>a,.lm-drop__btn{position:relative;display:inline-flex;align-items:center;gap:.35em;padding:.55rem .85rem;border-radius:100px;font-size:.86rem;font-weight:600;color:var(--ink-soft);
  background:none;border:0;cursor:pointer;transition:color .3s,background .3s}
.lm-nav__links>a:hover,.lm-nav__links>a[aria-current],.lm-drop:hover .lm-drop__btn,.lm-drop.is-open .lm-drop__btn{color:var(--ink);background:var(--glass-2)}
body.lm-paper .lm-nav__links>a,body.lm-paper .lm-drop__btn{color:var(--paper-soft)}
body.lm-paper .lm-nav__links>a:hover,body.lm-paper .lm-drop:hover .lm-drop__btn{color:var(--paper-ink);background:rgba(11,32,80,.06)}
.lm-drop{position:relative}
.lm-drop__btn svg{transition:transform .3s var(--ease)}
.lm-drop:hover .lm-drop__btn svg,.lm-drop.is-open .lm-drop__btn svg{transform:rotate(180deg)}
.lm-drop__panel{position:absolute;top:calc(100% + .6rem);left:50%;transform:translate(-50%,8px);min-width:300px;padding:.6rem;
  background:rgba(10,20,48,.92);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--line-2);border-radius:18px;box-shadow:var(--shadow);
  opacity:0;visibility:hidden;transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s .3s}
.lm-drop:hover .lm-drop__panel,.lm-drop.is-open .lm-drop__panel{opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:0s}
.lm-drop__panel a{display:grid;grid-template-columns:34px 1fr;gap:.2rem .7rem;align-items:center;padding:.6rem .7rem;border-radius:12px;transition:background .25s}
.lm-drop__panel a:hover{background:var(--glass-2)}
.lm-drop__panel a b{font-weight:600;font-size:.9rem;color:var(--ink)}
.lm-drop__panel a span{grid-column:2;font-size:.78rem;color:var(--muted)}
.lm-drop__panel a i{grid-row:span 2;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--glass-2);color:var(--gold)}
.lm-drop__panel a i svg{width:18px;height:18px}
body.lm-paper .lm-drop__panel{background:rgba(252,251,247,.96);border-color:var(--paper-line)}
body.lm-paper .lm-drop__panel a b{color:var(--paper-ink)}
body.lm-paper .lm-drop__panel a span{color:var(--paper-muted)}
body.lm-paper .lm-drop__panel a i{background:rgba(11,32,80,.06);color:var(--navy)}
.lm-nav__actions{display:flex;align-items:center;gap:.5rem}
.lm-nav__icon{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--ink-soft);transition:background .3s,color .3s}
.lm-nav__icon:hover{background:var(--glass-2);color:var(--ink)}
.lm-nav__icon svg{width:19px;height:19px}
.lm-nav__count{position:absolute;top:2px;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:100px;background:var(--gold);color:var(--navy);font-size:.66rem;font-weight:800;display:grid;place-items:center}
.lm-nav__count[data-n="0"]{display:none}
body.lm-paper .lm-nav__icon{color:var(--paper-soft)}
.lm-burger{display:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--glass-2);cursor:pointer;place-items:center;position:relative}
.lm-burger span{position:absolute;left:12px;right:12px;height:2px;background:currentColor;border-radius:2px;transition:transform .4s var(--ease),opacity .3s,top .3s}
.lm-burger span:nth-child(1){top:17px}.lm-burger span:nth-child(2){top:25px}
.lm-burger[aria-expanded="true"] span:nth-child(1){top:21px;transform:rotate(45deg)}
.lm-burger[aria-expanded="true"] span:nth-child(2){top:21px;transform:rotate(-45deg)}
.lm-nav__cta{display:inline-flex}
@media (max-width:1180px){.lm-nav__links{display:none}.lm-burger{display:grid}}
@media (max-width:600px){.lm-nav__cta{display:none}.lm-nav__brand>span:last-child{display:none}}

/* language switcher, the parent's markup */
.lang-switch{position:relative}
.lang-switch__btn{display:inline-flex;align-items:center;gap:.35em;padding:.5rem .7rem;border-radius:100px;border:0;background:none;color:var(--ink-soft);font-size:.78rem;font-weight:700;cursor:pointer}
.lang-switch__btn:hover{background:var(--glass-2);color:var(--ink)}
.lang-switch__panel{position:absolute;top:calc(100% + .5rem);right:0;display:none;flex-direction:column;min-width:170px;padding:.5rem;
  background:rgba(10,20,48,.95);border:1px solid var(--line-2);border-radius:14px;box-shadow:var(--shadow);z-index:20}
.lang-switch.is-open .lang-switch__panel,.lang-switch:hover .lang-switch__panel{display:flex}
.lang-switch__opt{text-align:left;padding:.5rem .7rem;border:0;border-radius:8px;background:none;font-size:.86rem;cursor:pointer}
.lang-switch__opt:hover,.lang-switch__opt.is-active{background:var(--glass-2)}
.lang-switch--flat{display:flex;flex-wrap:wrap;gap:.4rem}
.lang-switch--flat .lang-switch__opt{border:1px solid var(--line);border-radius:100px;padding:.4rem .8rem}
.skiptranslate,.goog-te-banner-frame{display:none!important}
body{top:0!important}
#google_translate_element{display:none}

/* full-screen menu */
.lm-menu{position:fixed;inset:0;z-index:6400;display:grid;grid-template-rows:1fr auto;padding:calc(var(--nav-h) + 2.5rem) var(--pad) 2rem;
  background:rgba(5,9,26,.96);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);
  opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility 0s .45s;overflow:auto}
.lm-menu.is-open{opacity:1;visibility:visible;transition-delay:0s}
.lm-menu__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem 3rem;max-width:var(--maxw);width:100%;margin:0 auto}
.lm-menu__group h2{font-family:var(--f-body);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 .9rem;font-weight:700}
.lm-menu__group a{display:block;padding:.38rem 0;font-family:var(--f-display);font-size:clamp(1.25rem,2vw,1.55rem);font-weight:400;letter-spacing:-.01em;color:var(--ink);
  transform:translateY(14px);opacity:0;transition:color .25s,transform .6s var(--ease),opacity .6s var(--ease)}
.lm-menu.is-open .lm-menu__group a{transform:none;opacity:1}
.lm-menu__group a:hover{color:var(--gold)}
.lm-menu__foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;max-width:var(--maxw);width:100%;margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}

/* =====================================================================
   3. BUTTONS
   ===================================================================== */
.lm-btn,.btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.single_add_to_cart_button,.add_to_cart_button,
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.wc-block-components-button,.wp-block-button__link,
.cha-bidbtn,.cha-step,.rg__submit,.lai__btn,.button-primary,.button-hero,.woocommerce-Button,.woocommerce-button{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:50px;padding:.8rem 1.55rem;border-radius:100px;
  font-family:var(--f-body)!important;font-weight:800!important;font-size:.95rem!important;line-height:1.1!important;letter-spacing:.005em;text-decoration:none!important;cursor:pointer;border:0;
  background:var(--gold)!important;color:var(--navy)!important;box-shadow:var(--glow-gold);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .3s,filter .3s;will-change:transform}
.lm-btn:hover,.btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.single_add_to_cart_button:hover,.add_to_cart_button:hover,.cha-bidbtn:hover,.cha-step:hover,.rg__submit:hover,.lai__btn:hover{
  transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,210,62,.35),0 26px 60px -20px rgba(255,210,62,.75);filter:brightness(1.04)}
.lm-btn:active,.btn:active{transform:translateY(0)}
.lm-btn svg{width:18px;height:18px;transition:transform .4s var(--ease)}
.lm-btn:hover svg{transform:translateX(3px)}
.lm-btn--ghost,.btn--soft,.btn--outline,.btn--outline-light,.cha-buynowbtn,.lm-btn--ghost.lm-btn{
  background:var(--glass)!important;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--line-2)}
.lm-btn--ghost:hover,.btn--soft:hover,.cha-buynowbtn:hover{background:var(--glass-2)!important;box-shadow:inset 0 0 0 1px rgba(246,242,232,.4),0 20px 50px -24px rgba(0,0,0,.6)}
.lm-btn--sm,.btn--sm{min-height:40px;padding:.55rem 1.1rem;font-size:.85rem!important}
.lm-btn--lg,.btn--lg{min-height:58px;padding:1rem 2rem;font-size:1.02rem!important}
.btn--app::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='5' y='2' width='14' height='20' rx='3'/><path d='M12 18h.01'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='5' y='2' width='14' height='20' rx='3'/><path d='M12 18h.01'/></svg>") center/contain no-repeat}
body.lm-paper .lm-btn--ghost,body.lm-paper .btn--soft{background:#fff!important;color:var(--paper-ink)!important;box-shadow:inset 0 0 0 1px var(--paper-line)}
.lm-link{display:inline-flex;align-items:center;gap:.5em;font-weight:700;color:var(--gold);border-bottom:1px solid rgba(255,210,62,.35);padding-bottom:2px;transition:border-color .3s,gap .3s}
.lm-link:hover{border-color:var(--gold);gap:.8em}
.lm-link svg{width:16px;height:16px}

/* celebratory confetti */
.lm-burst{position:fixed;z-index:9900;width:8px;height:8px;border-radius:2px;pointer-events:none}

/* =====================================================================
   4. LAYOUT PRIMITIVES
   ===================================================================== */
.lm-wrap,.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.lm-section{position:relative;padding:clamp(4rem,9vw,8rem) var(--pad)}
.lm-section>*{max-width:var(--maxw);margin-left:auto;margin-right:auto}
.lm-section--tight{padding-top:clamp(2.5rem,6vw,5rem);padding-bottom:clamp(2.5rem,6vw,5rem)}
.lm-head{display:flex;flex-direction:column;gap:1rem;margin-bottom:clamp(2rem,4vw,3.5rem)}
.lm-head--split{display:grid;grid-template-columns:1.3fr 1fr;gap:1.5rem 4rem;align-items:end}
.lm-head--split p{color:var(--ink-soft);max-width:44ch;font-size:1.02rem}
.lm-head--center{align-items:center;text-align:center}
.lm-head--center .lm-lead{margin:0 auto}
@media (max-width:860px){.lm-head--split{grid-template-columns:1fr}}

/* glass card */
.lm-card{position:relative;border-radius:var(--r);background:var(--glass);border:1px solid var(--line);overflow:hidden;
  transition:transform .6s var(--ease),border-color .4s,background .4s;transform-style:preserve-3d}
.lm-card::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,210,62,.14),transparent 45%)}
.lm-card:hover{border-color:var(--line-2);background:var(--glass-2)}
.lm-card:hover::before{opacity:1}

/* reveal defaults, GSAP lifts them */
html.lm-js [data-rv],html.lm-js [data-hero]{opacity:0}
html.lm-js [data-split]{visibility:hidden}
.lm-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .04em;margin:0 -.04em}
.lm-w>span{display:inline-block;will-change:transform}
.lm-line{display:block;overflow:hidden;padding:0 .06em;margin:0 -.06em}
.lm-line>span{display:block;will-change:transform}

/* =====================================================================
   5. HOME: HERO
   ===================================================================== */
.lm-hero{position:relative;min-height:calc(100svh - var(--nav-h));display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:3rem;
  padding:clamp(3rem,7vw,6rem) var(--pad) clamp(4rem,8vw,7rem);overflow:hidden;isolation:isolate}
.lm-hero__canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block}
.lm-hero__fallback{position:absolute;inset:0;z-index:-3;pointer-events:none;
  background:radial-gradient(60% 55% at 70% 40%,rgba(255,154,60,.18),transparent 70%),radial-gradient(40% 40% at 20% 70%,rgba(46,108,223,.28),transparent 70%)}
.lm-hero__fallback i{position:absolute;width:26px;height:36px;border-radius:50% 50% 45% 45%;background:radial-gradient(circle at 50% 40%,#FFE9A8,#FF9A3C 60%,rgba(255,106,44,.6));
  box-shadow:0 0 40px 12px rgba(255,154,60,.35);opacity:.9;animation:lm-float 14s ease-in-out infinite}
.lm-hero__fallback i:nth-child(1){left:62%;top:30%;animation-delay:-2s}
.lm-hero__fallback i:nth-child(2){left:78%;top:52%;transform:scale(.7);animation-delay:-7s}
.lm-hero__fallback i:nth-child(3){left:88%;top:22%;transform:scale(.55);animation-delay:-11s}
.lm-hero__fallback i:nth-child(4){left:12%;top:70%;transform:scale(.5);animation-delay:-5s}
html.lm-webgl .lm-hero__fallback i{display:none}
@keyframes lm-float{0%,100%{translate:0 0;rotate:-2deg}50%{translate:6px -40px;rotate:2deg}}
.lm-hero__veil{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,9,26,.1),rgba(5,9,26,0) 30%,rgba(5,9,26,.55) 85%,var(--night))}
.lm-hero__inner{position:relative;max-width:640px;margin-left:max(0px,calc((100% - var(--maxw)) / 2))}
.lm-kicker{display:inline-flex;align-items:center;gap:.7em;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:1.6rem}
.lm-kicker i{font-style:normal;opacity:.5}
.lm-beacon{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(255,210,62,.6);animation:lm-beacon 2.4s ease-out infinite}
@keyframes lm-beacon{0%{box-shadow:0 0 0 0 rgba(255,210,62,.65)}100%{box-shadow:0 0 0 12px rgba(255,210,62,0)}}
.lm-hero__title{font-size:clamp(2.9rem,6.6vw,5.8rem);margin-bottom:1.4rem;text-wrap:balance}
.lm-hero__lead{font-size:clamp(1.05rem,1.5vw,1.22rem);color:var(--ink-soft);max-width:52ch;margin-bottom:2rem}
.lm-hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}
.lm-hero__cta--center{justify-content:center}
.lm-hero__app{display:inline-flex;align-items:center;gap:.5em;margin-left:.4rem;font-size:.9rem;font-weight:600;color:var(--ink-soft)}
.lm-hero__app svg{width:18px;height:18px;color:var(--gold)}
.lm-hero__app:hover{color:var(--ink)}

/* the live board */
.lm-board{position:relative;margin-right:max(0px,calc((100% - var(--maxw)) / 2));justify-self:end;width:min(100%,420px);padding:1.6rem 1.7rem 1.5rem;border-radius:28px;
  background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03));border:1px solid var(--line-2);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.12)}
.lm-board::after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;
  background:radial-gradient(300px 140px at 80% -20%,rgba(255,210,62,.2),transparent 70%)}
.lm-board__top{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lm-board__top b{display:inline-flex;align-items:center;gap:.4em;color:var(--green)}
.lm-board__top b i{width:7px;height:7px;border-radius:50%;background:currentColor;animation:lm-beacon 2s ease-out infinite}
.lm-board__total{display:flex;align-items:baseline;gap:.25rem;margin:.6rem 0 .1rem;font-family:var(--f-display);font-size:clamp(2.8rem,4.6vw,3.8rem);font-weight:500;letter-spacing:-.03em;line-height:1;color:#fff;
  font-variation-settings:"opsz" 144;font-variant-numeric:tabular-nums}
.lm-odo{display:inline-flex;overflow:hidden;height:1em;line-height:1}
.lm-odo__d{position:relative;display:inline-block;width:.6em;height:1em;overflow:hidden;text-align:center}
.lm-odo__d span{position:absolute;left:0;right:0;top:0;display:block;transition:transform 1.2s var(--ease)}
.lm-odo__d span b{display:block;height:1em;font-weight:inherit}
.lm-odo__s{display:inline-block;min-width:.25em;padding:0 .02em;text-align:center}
.lm-board__sub{font-size:.88rem;color:var(--ink-soft)}
.lm-board__sub b{color:var(--gold);font-weight:700}
.lm-bar{position:relative;height:10px;margin:1.1rem 0 .5rem;border-radius:100px;background:rgba(255,255,255,.1);overflow:hidden}
.lm-bar>span{position:absolute;inset:0 auto 0 0;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--gold) 70%,#FFF1B8);box-shadow:0 0 18px rgba(255,210,62,.5)}
.lm-bar>span::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-120%);animation:lm-shine 3.2s var(--ease) infinite 1.5s}
@keyframes lm-shine{to{transform:translateX(220%)}}
.lm-bar__meta{display:flex;justify-content:space-between;font-size:.76rem;color:var(--muted);font-weight:600}
.lm-board__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1.3rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.lm-board__cell{display:flex;flex-direction:column;gap:.1rem}
.lm-board__cell dt{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-board__cell dd{font-family:var(--f-display);font-size:1.35rem;font-weight:500;color:var(--ink);line-height:1.1;font-variant-numeric:tabular-nums}
.lm-board__cell dd small{font-family:var(--f-body);font-size:.7rem;color:var(--muted);margin-left:.15em}
.lm-count{display:inline-flex;gap:.25em}
.lm-count b{font-weight:500}
.lm-count b.is-flip{animation:lm-flip .5s var(--ease)}
@keyframes lm-flip{0%{transform:translateY(-.4em);opacity:0}100%{transform:none;opacity:1}}
.lm-scrollcue{position:absolute;left:50%;bottom:1.4rem;transform:translateX(-50%);width:26px;height:42px;border-radius:14px;border:1.5px solid var(--line-2);display:grid;justify-items:center;padding-top:7px}
.lm-scrollcue span{width:4px;height:8px;border-radius:2px;background:var(--gold);animation:lm-cue 1.8s var(--ease) infinite}
@keyframes lm-cue{0%{transform:translateY(0);opacity:1}70%{transform:translateY(16px);opacity:0}100%{transform:translateY(0);opacity:0}}
@media (max-width:980px){
  .lm-hero{grid-template-columns:1fr;min-height:0;padding-top:3rem}
  .lm-board{justify-self:start;width:100%;max-width:520px;margin-right:0}
  .lm-scrollcue{display:none}
}

/* ticker */
.lm-marquee{position:relative;overflow:hidden;padding:.9rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  -webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.lm-marquee__track{display:flex;gap:2.6rem;width:max-content;animation:lm-marquee 44s linear infinite;font-family:var(--f-display);font-size:1.1rem;color:var(--ink-soft);white-space:nowrap}
.lm-marquee__track span{display:inline-flex;align-items:center;gap:2.6rem}
.lm-marquee__track i{width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}
.lm-marquee:hover .lm-marquee__track{animation-play-state:paused}
@keyframes lm-marquee{to{transform:translateX(-50%)}}

/* =====================================================================
   6. HOME: THE CAUSE + LANTERN WALL
   ===================================================================== */
.lm-cause{display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem;align-items:start}
.lm-cause__copy p{color:var(--ink-soft);font-size:1.08rem;margin-top:1.2rem;max-width:52ch}
.lm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid var(--line)}
.lm-stat dt{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lm-stat dd{font-family:var(--f-display);font-size:clamp(1.9rem,3vw,2.6rem);line-height:1;margin-top:.35rem;color:var(--ink);font-variant-numeric:tabular-nums}
.lm-stat dd small{font-size:.5em;color:var(--gold);font-style:italic;margin-left:.1em}
.lm-wall{position:relative;padding:1.6rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line)}
.lm-wall__head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.1rem;flex-wrap:wrap}
.lm-wall__head b{font-family:var(--f-display);font-size:1.3rem;font-weight:500}
.lm-wall__head span{font-size:.78rem;color:var(--muted);font-weight:600}
.lm-wall__grid{display:grid;grid-template-columns:repeat(25,1fr);gap:5px}
.lm-wall__l{position:relative;aspect-ratio:1;border-radius:3px;background:rgba(255,255,255,.07);transition:background .5s,box-shadow .5s,transform .5s var(--ease);cursor:default}
.lm-wall__l.is-lit{background:var(--gold);box-shadow:0 0 10px 2px rgba(255,210,62,.45)}
.lm-wall__l.is-lit.is-ember{background:var(--ember);box-shadow:0 0 10px 2px rgba(255,154,60,.45)}
.lm-wall__l:hover{transform:scale(1.5);z-index:2}
.lm-wall__tip{position:absolute;z-index:3;padding:.4rem .7rem;border-radius:8px;background:#fff;color:var(--navy);font-size:.76rem;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-115%) translateY(6px);transition:opacity .25s,transform .25s var(--ease)}
.lm-wall__tip.is-on{opacity:1;transform:translate(-50%,-115%)}
.lm-wall__foot{margin-top:1rem;font-size:.84rem;color:var(--muted)}
.lm-wall__foot b{color:var(--ink)}
@media (max-width:900px){.lm-cause{grid-template-columns:1fr}.lm-stats{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.lm-wall__grid{grid-template-columns:repeat(20,1fr)}}

/* =====================================================================
   7. HOME: RUNNING ORDER (pinned horizontal story)
   ===================================================================== */
.lm-order{padding-left:0;padding-right:0;overflow:hidden}
@media (min-width:1024px){.lm-order{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(3rem,6vw,5rem)}}
.lm-order>.lm-head{padding:0 var(--pad)}
.lm-order__pin{position:relative;padding-top:1.6rem}
.lm-order__track{display:flex;gap:1.4rem;padding:0 var(--pad);width:max-content}
.lm-stop{position:relative;flex:0 0 clamp(280px,30vw,380px);padding:1.7rem 1.6rem 1.6rem;display:flex;flex-direction:column;gap:.7rem;min-height:300px}
.lm-stop__time{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-display);font-size:1.5rem;font-weight:500;color:var(--gold);font-variant-numeric:tabular-nums}
.lm-stop__time::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px 3px rgba(255,210,62,.5)}
.lm-stop h3{font-family:var(--f-display);font-weight:500;font-size:1.5rem;letter-spacing:-.01em;line-height:1.15}
.lm-stop p{color:var(--ink-soft);font-size:.95rem;flex:1}
.lm-stop .lm-link{align-self:flex-start;margin-top:.4rem;font-size:.9rem}
.lm-stop__no{position:absolute;top:1.3rem;right:1.4rem;font-family:var(--f-display);font-size:3rem;line-height:1;color:var(--faint);font-weight:300;font-style:italic}
.lm-order__line{position:absolute;left:0;right:0;top:0;height:2px;background:var(--line)}
.lm-order__line span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--ember));box-shadow:0 0 16px rgba(255,210,62,.6)}
.lm-order__hint{display:flex;align-items:center;gap:.6rem;padding:1.4rem var(--pad) 0;font-size:.8rem;color:var(--muted);font-weight:600}
.lm-order__hint svg{width:16px;height:16px;animation:lm-nudge 1.6s var(--ease) infinite}
@keyframes lm-nudge{50%{transform:translateX(6px)}}
@media (max-width:1023px){
  .lm-order__track{flex-direction:column;width:auto;max-width:var(--maxw);margin:0 auto;gap:1rem}
  .lm-stop{flex:none;min-height:0}
  .lm-order__line,.lm-order__hint{display:none}
}

/* =====================================================================
   8. HOME: SIX WAYS
   ===================================================================== */
.lm-ways{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.lm-way{padding:1.8rem 1.6rem 1.6rem;display:flex;flex-direction:column;gap:.8rem;min-height:290px}
.lm-way__no{font-size:.72rem;font-weight:700;letter-spacing:.14em;color:var(--muted)}
.lm-way__icon{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(160deg,rgba(255,210,62,.22),rgba(255,210,62,.06));color:var(--gold);transition:transform .6s var(--ease)}
.lm-way__icon svg{width:30px;height:30px}
.lm-way:hover .lm-way__icon{transform:translateY(-4px) rotate(-4deg)}
.lm-way h3{font-family:var(--f-display);font-weight:500;font-size:1.55rem;letter-spacing:-.01em;line-height:1.1;margin-top:.4rem}
.lm-way p{color:var(--ink-soft);font-size:.95rem;flex:1}
.lm-way__go{display:inline-flex;align-items:center;gap:.5em;font-weight:700;color:var(--gold);font-size:.9rem}
.lm-way__go svg{width:16px;height:16px;transition:transform .4s var(--ease)}
.lm-way:hover .lm-way__go svg{transform:translate(3px,-3px)}
@media (max-width:980px){.lm-ways{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.lm-ways{grid-template-columns:1fr}.lm-way{min-height:0}}

/* =====================================================================
   9. LOTS (home rail + grid), shared with product archives
   ===================================================================== */
.lm-lots{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.lm-lots--rail{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.5rem var(--pad) 1.2rem;margin:0 calc(-1 * var(--pad));scrollbar-width:none;cursor:grab}
.lm-lots--rail::-webkit-scrollbar{display:none}
.lm-lots--rail.is-drag{cursor:grabbing;scroll-snap-type:none}
.lm-lots--rail .lm-lot{flex:0 0 clamp(260px,24vw,320px);scroll-snap-align:start}
.lm-lot{display:flex;flex-direction:column}
.lm-lot__link{display:flex;flex-direction:column;height:100%}
.lm-lot__media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--navy-2)}
.lm-lot__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .6s}
.lm-lot:hover .lm-lot__media img{transform:scale(1.06)}
.lm-lot__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,9,26,.7))}
.lm-lot__no,.lm-lot__tag{position:absolute;top:.8rem;z-index:1;padding:.3rem .65rem;border-radius:100px;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.lm-lot__no{left:.8rem;background:rgba(5,9,26,.7);color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.lm-lot__tag{right:.8rem;background:var(--gold);color:var(--navy)}
.lm-lot__tag--live{background:var(--ember)}
.lm-lot__body{display:flex;flex-direction:column;gap:.7rem;padding:1.1rem 1.2rem 1.2rem;flex:1}
.lm-lot__title{font-family:var(--f-display);font-weight:500;font-size:1.2rem;line-height:1.2;letter-spacing:-.01em;color:var(--ink)}
.lm-lot__meta{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:end;margin-top:auto}
.lm-lot__meta dt{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-lot__meta dd{font-family:var(--f-display);font-size:1.35rem;color:var(--gold);line-height:1.1;font-variant-numeric:tabular-nums}
.lm-lot__meta dd.lm-lot__bids{font-family:var(--f-body);font-size:.85rem;color:var(--ink-soft);font-weight:600}
.lm-lot__ends{font-size:.76rem;color:var(--muted);font-weight:600}
.lm-lot__ends b{color:var(--ink-soft)}
.lm-lot__cta{display:inline-flex;align-items:center;gap:.5em;margin-top:.4rem;font-weight:700;font-size:.9rem;color:var(--gold)}
.lm-lot__cta svg{width:16px;height:16px;transition:transform .4s var(--ease)}
.lm-lot:hover .lm-lot__cta svg{transform:translateX(4px)}
.lm-rail__ctrl{display:flex;gap:.5rem;justify-content:flex-end;margin-bottom:.4rem}
.lm-rail__btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--glass);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .3s,transform .3s var(--ease)}
.lm-rail__btn:hover{background:var(--glass-2);transform:scale(1.06)}
.lm-rail__btn svg{width:18px;height:18px}
.lm-more{margin-top:1.8rem;display:flex;justify-content:center}
.lm-empty{color:var(--muted);text-align:center;padding:2rem}
@media (max-width:1000px){.lm-lots{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.lm-lots{grid-template-columns:1fr}}

/* =====================================================================
   10. HOME: THE PLEDGE
   ===================================================================== */
.lm-pledge{display:grid;grid-template-columns:1fr 1.1fr;gap:3rem 5rem;align-items:start}
.lm-pledge__copy p{color:var(--ink-soft);font-size:1.05rem;margin-top:1.1rem;max-width:50ch}
.lm-giftaid{display:flex;gap:1rem;align-items:flex-start;margin-top:1.8rem;padding:1.1rem 1.2rem;border-radius:var(--r-sm);background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.25)}
.lm-giftaid svg{flex:none;width:26px;height:26px;color:var(--green)}
.lm-giftaid b{display:block;color:var(--ink);margin-bottom:.15rem}
.lm-giftaid p{margin:0;font-size:.9rem;color:var(--ink-soft)}
.lm-calc{padding:1.6rem 1.7rem;margin-top:1.8rem}
.lm-calc__row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.lm-calc__row span{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-calc__amt{font-family:var(--f-display);font-size:2.4rem;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
.lm-calc input[type=range]{width:100%;margin:1.2rem 0 .6rem;accent-color:var(--gold);height:4px;cursor:pointer}
.lm-calc__out{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:.8rem}
.lm-calc__out div{padding:.9rem 1rem;border-radius:12px;background:rgba(255,255,255,.05)}
.lm-calc__out dt{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-calc__out dd{font-family:var(--f-display);font-size:1.5rem;color:var(--gold);line-height:1.1;margin-top:.25rem;font-variant-numeric:tabular-nums}
.lm-calc__out dd small{display:block;font-family:var(--f-body);font-size:.76rem;color:var(--muted);margin-top:.2rem}
.lm-calc__go{margin-top:1.2rem;display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}
.lm-tiers{display:flex;flex-direction:column;gap:.7rem}
.lm-tier{display:grid;grid-template-columns:auto 1fr auto;gap:1.1rem;align-items:center;padding:1rem 1.2rem 1rem 1rem;border-radius:18px;transition:transform .5s var(--ease)}
.lm-tier:hover{transform:translateX(6px)}
.lm-tier__lamp{position:relative;width:46px;height:46px;display:grid;place-items:center}
.lm-tier__lamp i{width:var(--s,14px);height:calc(var(--s,14px) * 1.35);border-radius:45%/40%;background:radial-gradient(circle at 50% 35%,#FFF3C4,var(--gold) 55%,var(--ember));box-shadow:0 0 calc(var(--s,14px) * 1.4) calc(var(--s,14px) * .35) rgba(255,210,62,.45);transition:box-shadow .5s}
.lm-tier:hover .lm-tier__lamp i{box-shadow:0 0 calc(var(--s,14px) * 2) calc(var(--s,14px) * .6) rgba(255,210,62,.6)}
.lm-tier__name{font-family:var(--f-display);font-size:1.25rem;font-weight:500;letter-spacing:-.01em}
.lm-tier__desc{display:block;font-size:.84rem;color:var(--muted);margin-top:.15rem;font-family:var(--f-body)}
.lm-tier__price{font-family:var(--f-display);font-size:1.4rem;color:var(--gold);font-variant-numeric:tabular-nums;text-align:right}
.lm-tier__price small{display:block;font-family:var(--f-body);font-size:.7rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.lm-tier--pwyc .lm-tier__lamp i{background:radial-gradient(circle at 50% 35%,#DCE8FF,var(--sky) 55%,var(--blue));box-shadow:0 0 20px 5px rgba(46,108,223,.4)}
@media (max-width:900px){.lm-pledge{grid-template-columns:1fr}}

/* =====================================================================
   11. HOME: TICKETS
   ===================================================================== */
.lm-tickets{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.lm-ticket{display:flex;flex-direction:column;padding:1.5rem 1.4rem 1.4rem;min-height:300px;
  background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  -webkit-mask:radial-gradient(12px at 0 72%,transparent 97%,#000) -12px 0/calc(100% + 24px) 100%,radial-gradient(12px at 100% 72%,transparent 97%,#000);
  -webkit-mask-composite:source-in;mask:radial-gradient(12px at 0 72%,transparent 97%,#000),radial-gradient(12px at 100% 72%,transparent 97%,#000);mask-composite:intersect}
.lm-ticket__kind{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;display:flex;justify-content:space-between}
.lm-ticket__kind em{font-style:normal;color:var(--muted)}
.lm-ticket h3{font-family:var(--f-display);font-weight:500;font-size:1.5rem;line-height:1.1;margin-top:.9rem;letter-spacing:-.01em}
.lm-ticket p{color:var(--ink-soft);font-size:.9rem;margin-top:.5rem;flex:1}
.lm-ticket__avail{margin:1rem 0 .2rem}
.lm-ticket__avail span{display:block;height:5px;border-radius:100px;background:rgba(255,255,255,.1);overflow:hidden}
.lm-ticket__avail span i{display:block;height:100%;width:var(--w,0%);background:linear-gradient(90deg,var(--blue),var(--gold));border-radius:inherit;transition:width 1.4s var(--ease)}
.lm-ticket__avail small{display:block;font-size:.74rem;color:var(--muted);margin-top:.4rem;font-weight:600}
.lm-ticket__avail small.is-low{color:var(--ember)}
.lm-ticket__stub{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:1rem;padding-top:1.1rem;border-top:1px dashed var(--line-2)}
.lm-ticket__price{font-family:var(--f-display);font-size:1.7rem;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
.lm-ticket__price small{display:block;font-family:var(--f-body);font-size:.68rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:.3rem}
.lm-ticket--vip{background:linear-gradient(160deg,rgba(255,210,62,.22),rgba(255,154,60,.08));border-color:rgba(255,210,62,.35)}
@media (max-width:1000px){.lm-tickets{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.lm-tickets{grid-template-columns:1fr}.lm-ticket{min-height:0}}

/* =====================================================================
   12. HOME: THE APP
   ===================================================================== */
.lm-app{display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem;align-items:center}
.lm-app__copy p{color:var(--ink-soft);font-size:1.05rem;margin-top:1.1rem;max-width:50ch}
.lm-app__list{list-style:none;margin:1.6rem 0 2rem;display:flex;flex-direction:column;gap:.7rem}
.lm-app__list li{display:flex;gap:.8rem;align-items:flex-start;color:var(--ink-soft)}
.lm-app__list li::before{content:"";flex:none;width:22px;height:22px;margin-top:.15rem;border-radius:50%;background:rgba(255,210,62,.15);
  -webkit-mask:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD23E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>");background-size:12px;background-position:center;background-repeat:no-repeat}
.lm-phone-wrap{position:relative;display:grid;place-items:center;min-height:560px}
.lm-phone-wrap::before{content:"";position:absolute;width:min(420px,100%);height:min(420px,100%);border-radius:50%;background:radial-gradient(circle,rgba(255,154,60,.3),transparent 65%);filter:blur(10px)}
.lm-phone{position:relative;width:290px;height:560px;border-radius:44px;padding:12px;background:#0d1326;box-shadow:0 0 0 2px #2a3352,0 0 0 8px #0b0f1f,0 50px 100px -30px rgba(0,0,0,.8);transform:rotate(-4deg)}
.lm-phone__screen{position:relative;height:100%;border-radius:34px;overflow:hidden;background:linear-gradient(180deg,#0A1430,#05091A);display:flex;flex-direction:column;padding:2.6rem 1.1rem 1.1rem;gap:.8rem}
.lm-phone__notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:96px;height:26px;border-radius:100px;background:#05091A}
.lm-phone__eyebrow{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-phone__total{font-family:var(--f-display);font-size:2.1rem;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.lm-phone__bar{height:6px;border-radius:100px;background:rgba(255,255,255,.1);overflow:hidden}
.lm-phone__bar i{display:block;height:100%;width:38%;background:linear-gradient(90deg,var(--blue),var(--gold))}
.lm-phone__lot{display:grid;grid-template-columns:54px 1fr;gap:.7rem;padding:.7rem;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--line);margin-top:.4rem}
.lm-phone__lot--mini{grid-template-columns:38px 1fr auto;align-items:center;margin-top:0;padding:.5rem .6rem;opacity:.8}
.lm-phone__lot--mini img{width:38px;height:38px}
.lm-phone__lot--mini b{font-size:.72rem}
.lm-phone__lot--mini em{font-style:normal;font-family:var(--f-display);color:var(--ink);font-size:.95rem}
.lm-phone__lot--mini span{margin-top:.05rem}
.lm-phone__eyebrow--mid{margin-top:.5rem}
.lm-phone__lot img{width:54px;height:54px;border-radius:10px;object-fit:cover}
.lm-phone__lot b{display:block;font-size:.8rem;line-height:1.2}
.lm-phone__lot span{display:block;font-size:.72rem;color:var(--muted);margin-top:.2rem}
.lm-phone__lot strong{display:block;font-family:var(--f-display);font-size:1.1rem;color:var(--gold);margin-top:.25rem}
.lm-phone__btn{margin-top:auto;display:grid;place-items:center;height:46px;border-radius:100px;background:var(--gold);color:var(--navy);font-weight:800;font-size:.86rem;transition:transform .3s var(--ease)}
.lm-phone__btn.is-press{transform:scale(.96)}
.lm-phone__toast{position:absolute;left:14px;right:14px;top:66px;display:flex;gap:.6rem;align-items:center;padding:.65rem .8rem;border-radius:14px;background:#fff;color:var(--navy);font-size:.76rem;font-weight:600;box-shadow:0 18px 40px -16px rgba(0,0,0,.6);
  transform:translateY(-140%);opacity:0;transition:transform .6s var(--ease),opacity .4s}
.lm-phone__toast.is-on{transform:none;opacity:1}
.lm-phone__toast i{flex:none;width:28px;height:28px;border-radius:9px;background:var(--gold);display:grid;place-items:center}
.lm-phone__toast i svg{width:15px;height:15px}
.lm-phone__toast b{display:block;font-weight:800}
.lm-phone__wallet{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.7rem;color:var(--muted);font-weight:600}
@media (max-width:900px){.lm-app{grid-template-columns:1fr}.lm-phone-wrap{min-height:0;padding:2rem 0}.lm-phone{transform:none}}

/* =====================================================================
   13. HOME: VENUE
   ===================================================================== */
.lm-venue{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem 4rem;align-items:center}
.lm-map{position:relative;border-radius:var(--r);overflow:hidden;background:#07102A;border:1px solid var(--line);aspect-ratio:4/3}
.lm-map svg{width:100%;height:100%}
.lm-map__pin{position:absolute;left:58%;top:44%;width:0;height:0}
.lm-map__pin i{position:absolute;left:-14px;top:-14px;width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--gold);box-shadow:0 10px 30px -8px rgba(255,210,62,.9)}
.lm-map__pin i::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--navy)}
.lm-map__pin b{position:absolute;left:-26px;top:-20px;width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,210,62,.6);animation:lm-ring 2.6s var(--ease) infinite}
@keyframes lm-ring{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.6);opacity:0}}
.lm-map__lbl{position:absolute;left:1rem;bottom:1rem;padding:.5rem .8rem;border-radius:10px;background:rgba(5,9,26,.75);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.lm-address{font-style:normal;margin-top:1.4rem;font-size:1.05rem;line-height:1.7;color:var(--ink-soft)}
.lm-address strong{display:block;font-family:var(--f-display);font-size:1.5rem;color:var(--ink);font-weight:500}
.lm-facts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.6rem 0 1.8rem}
.lm-facts div{padding:1rem 1.1rem;border-radius:var(--r-sm);background:var(--glass);border:1px solid var(--line)}
.lm-facts dt{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.lm-facts dd{font-family:var(--f-display);font-size:1.25rem;margin-top:.3rem;color:var(--ink)}
@media (max-width:900px){.lm-venue{grid-template-columns:1fr}}

/* =====================================================================
   14. HOME: ORGANISERS STRIP, FAQ, CTA
   ===================================================================== */
.lm-organisers{padding:2.4rem 2.2rem;display:grid;grid-template-columns:1.1fr 1fr;gap:2rem 3rem;align-items:center;
  background:linear-gradient(135deg,rgba(46,108,223,.22),rgba(255,210,62,.08));border:1px solid rgba(46,108,223,.35)}
.lm-organisers h2{font-family:var(--f-display);font-weight:500;font-size:clamp(1.5rem,2.6vw,2.1rem);letter-spacing:-.01em;line-height:1.15}
.lm-organisers p{color:var(--ink-soft);margin-top:.7rem;font-size:.98rem}
.lm-organisers__links{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.lm-organisers__links a{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.9rem 1rem;border-radius:12px;background:rgba(5,9,26,.4);border:1px solid var(--line);font-weight:600;font-size:.92rem;transition:background .3s,transform .3s var(--ease)}
.lm-organisers__links a:hover{background:rgba(5,9,26,.7);transform:translateX(4px)}
.lm-organisers__links a svg{width:16px;height:16px;color:var(--gold);flex:none}
@media (max-width:860px){.lm-organisers{grid-template-columns:1fr}}

.lm-faq{max-width:820px}
.lm-faq details,.faq-item{border-top:1px solid var(--line)}
.lm-faq details:last-child,.faq-item:last-child{border-bottom:1px solid var(--line)}
.lm-faq summary,.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;font-family:var(--f-display);font-size:1.25rem;font-weight:500;letter-spacing:-.01em;transition:color .3s}
.lm-faq summary::-webkit-details-marker,.faq-item summary::-webkit-details-marker{display:none}
.lm-faq summary::after,.faq-item summary::after{content:"";flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD23E' stroke-width='2.2' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>") center/14px no-repeat;transition:transform .5s var(--ease),background-color .3s}
.lm-faq details[open] summary::after,.faq-item[open] summary::after{transform:rotate(135deg);background-color:rgba(255,210,62,.12)}
.lm-faq summary:hover,.faq-item summary:hover{color:var(--gold)}
.lm-faq details>div,.lm-faq details>p,.faq-item>div,.faq-item>p{padding:0 0 1.4rem;color:var(--ink-soft);max-width:60ch;line-height:1.7}
.faq-item p{margin:0 0 1rem}
.faq-item p:last-child{margin:0}

.lm-cta{position:relative;text-align:center;padding:clamp(5rem,12vw,10rem) var(--pad);overflow:hidden;isolation:isolate}
.lm-cta__glow{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(50% 60% at 50% 100%,rgba(255,154,60,.35),transparent 70%),radial-gradient(30% 40% at 20% 30%,rgba(46,108,223,.25),transparent 70%)}
.lm-cta__title{font-size:clamp(2.6rem,6vw,5rem);max-width:16ch;margin:1rem auto 1.2rem}
.lm-cta__text{color:var(--ink-soft);font-size:1.15rem;margin-bottom:2rem}

/* =====================================================================
   15. FOOTER
   ===================================================================== */
.lm-foot{position:relative;border-top:1px solid var(--line);padding:clamp(3rem,7vw,5rem) var(--pad) 2rem;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35))}
.lm-foot__lights{position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}
.lm-foot__top{display:grid;grid-template-columns:1.2fr 2fr;gap:2.5rem 4rem;max-width:var(--maxw);margin:0 auto}
.lm-foot__brand p{color:var(--ink-soft);font-size:.95rem;max-width:34ch;margin-top:1rem}
.lm-foot__brand .lm-nav__brand{font-size:1.35rem}
.lm-foot__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.lm-foot__col h2{font-family:var(--f-body);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:.9rem}
.lm-foot__col a{display:block;padding:.3rem 0;font-size:.92rem;color:var(--ink-soft);transition:color .25s,transform .3s var(--ease)}
.lm-foot__col a:hover{color:var(--ink);transform:translateX(3px)}
.lm-foot__bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;max-width:var(--maxw);margin:3rem auto 0;padding-top:1.4rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.lm-foot__bottom a{color:var(--ink-soft);font-weight:600}
.lm-foot__bottom a:hover{color:var(--gold)}
.tablet-toggle{background:none;border:0;padding:0;color:var(--muted);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.tablet-toggle:hover{color:var(--ink)}
@media (max-width:900px){.lm-foot__top{grid-template-columns:1fr}.lm-foot__cols{grid-template-columns:repeat(2,1fr)}}

.lm-totop{position:fixed;right:1.2rem;bottom:1.2rem;z-index:6000;width:46px;height:46px;border-radius:50%;border:1px solid var(--line-2);background:rgba(10,20,48,.85);color:var(--ink);display:grid;place-items:center;cursor:pointer;
  opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .35s,transform .35s var(--ease),background .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lm-totop.is-show{opacity:1;transform:none;pointer-events:auto}
.lm-totop:hover{background:var(--navy-3)}
.lm-totop svg{width:16px;height:16px}

/* =====================================================================
   16. COMPAT: every stored page was written against the old theme's
   vocabulary. These rules give that vocabulary the new look.
   ===================================================================== */
main#main{display:block}
.phero{position:relative;padding:clamp(3.5rem,8vw,6.5rem) var(--pad) clamp(2.5rem,5vw,4rem);overflow:hidden;isolation:isolate}
.phero__glow{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(45% 55% at 85% 20%,rgba(255,154,60,.18),transparent 70%),radial-gradient(35% 45% at 10% 90%,rgba(46,108,223,.2),transparent 70%)}
.phero__inner{max-width:var(--maxw);margin:0 auto}
.phero--split{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.phero h1{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;line-height:1.02;font-size:clamp(2.6rem,5.6vw,4.6rem);color:var(--ink);max-width:18ch;margin:1rem 0 1.2rem;text-wrap:balance;font-variation-settings:"opsz" 144}
.phero h1 .line{display:block;overflow:hidden}
.phero h1 .line>span{display:block}
.phero__lead{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--ink-soft);max-width:56ch;line-height:1.65}
.phero__lead+p,.phero__inner>p:not(.eyebrow):not(.phero__lead):not(.breadcrumb){color:var(--ink-soft);max-width:56ch;margin-top:1rem}
.phero__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.phero__stats{display:flex;gap:2rem;flex-wrap:wrap;margin-top:2.2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.phero__stat strong{display:block;font-family:var(--f-display);font-size:2rem;font-weight:500;line-height:1;color:var(--ink)}
.phero__stat span{font-size:.78rem;color:var(--muted);font-weight:600}
.phero__media{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.78rem;font-weight:600;color:var(--muted);margin-bottom:1rem}
.breadcrumb a:hover{color:var(--gold)}
.breadcrumb span{opacity:.5}
[data-hero][style*="opacity:0"],[data-reveal][style*="opacity:0"]{opacity:1!important}
html.lm-js [data-reveal]{opacity:0}

.section{position:relative;padding:clamp(3rem,7vw,6rem) var(--pad)}
.section>*{max-width:var(--maxw);margin-left:auto;margin-right:auto}
.section--white{background:rgba(255,255,255,.025)}
.band{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band .section{padding-top:clamp(3rem,7vw,6rem)}
.section__head{margin-bottom:clamp(1.8rem,4vw,3rem);display:flex;flex-direction:column;gap:.9rem}
.section__head .h2{max-width:22ch}
.section__head p:not(.eyebrow){color:var(--ink-soft);max-width:56ch}
.two-up{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.figure{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--navy-2)}
.figure img{width:100%;height:auto}
.figure--wide{max-width:980px;margin:0 auto}
.prose{color:var(--ink-soft);font-size:1.08rem;line-height:1.75;max-width:760px}
.prose--center{margin:0 auto}
.prose p,.prose ul,.prose ol{margin:0 0 1.25rem}
.prose p:last-child{margin:0}
.prose h2,.prose h3,.prose h1{font-family:var(--f-display);font-weight:500;letter-spacing:-.015em;line-height:1.15;color:var(--ink)}
.prose h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 1rem}
.prose h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:2.4rem 0 .9rem}
.prose h3{font-size:1.35rem;margin:1.8rem 0 .7rem}
.prose strong{color:var(--ink)}
.prose a{color:var(--gold);border-bottom:1px solid rgba(255,210,62,.35)}
.prose a:hover{border-color:var(--gold)}
.prose ul{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.prose ul li{padding-left:1.4rem;position:relative}
.prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.prose ol{padding-left:1.3rem;display:flex;flex-direction:column;gap:.5rem}
.prose ol li::marker{color:var(--gold);font-weight:700}
.prose blockquote{margin:1.6rem 0;padding:1.2rem 1.5rem;border-left:3px solid var(--gold);background:var(--glass);border-radius:0 14px 14px 0;font-family:var(--f-display);font-size:1.2rem;color:var(--ink)}
.prose hr{border:0;height:1px;background:var(--line);margin:2.4rem 0}
.prose figure{margin:2rem 0}
.prose figure img,.prose>img{width:100%;height:auto;border-radius:16px;border:1px solid var(--line)}
.prose figcaption{margin-top:.6rem;font-size:.84rem;color:var(--muted);text-align:center}
.prose table{width:100%;border-collapse:collapse;margin:1.6rem 0;font-size:.95rem}
.prose th,.prose td{border:1px solid var(--line);padding:.65rem .8rem;text-align:left;vertical-align:top}
.prose th{background:var(--glass-2);color:var(--ink);font-weight:700}
.prose code{font-family:ui-monospace,Menlo,monospace;font-size:.9em;background:var(--glass-2);padding:.1em .4em;border-radius:6px}
.prose img{border-radius:12px}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{position:relative;display:flex;flex-direction:column;gap:.6rem;padding:1.7rem 1.5rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line);overflow:hidden;transition:transform .6s var(--ease),border-color .4s,background .4s}
.card::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,210,62,.14),transparent 45%)}
.card:hover{border-color:var(--line-2);background:var(--glass-2);transform:translateY(-4px)}
.card:hover::before{opacity:1}
.card__icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(160deg,rgba(255,210,62,.22),rgba(255,210,62,.06));margin-bottom:.4rem;position:relative}
.card__icon::after{content:"";position:absolute;inset:14px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#FFF3C4,var(--gold) 55%,var(--ember));box-shadow:0 0 14px 3px rgba(255,210,62,.4)}
.card__icon img,.card__icon svg{position:relative;z-index:1;width:100%;height:100%;padding:11px;object-fit:contain}
.card__icon:has(img)::after,.card__icon:has(svg)::after{display:none}
.card h3{font-family:var(--f-display);font-weight:500;font-size:1.35rem;letter-spacing:-.01em;line-height:1.15;color:var(--ink)}
.card p{color:var(--ink-soft);font-size:.95rem;line-height:1.6}
.card__price{font-family:var(--f-display);color:var(--gold);font-size:1.3rem;margin-top:auto}
.card .btn{align-self:flex-start;margin-top:.6rem}
@media (max-width:980px){.cards{grid-template-columns:repeat(2,1fr)}.two-up{grid-template-columns:1fr}.phero--split{grid-template-columns:1fr}}
@media (max-width:600px){.cards{grid-template-columns:1fr}}

.cta{position:relative;text-align:center;padding:clamp(4rem,10vw,8rem) var(--pad);overflow:hidden;isolation:isolate}
.cta::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 60% at 50% 100%,rgba(255,154,60,.3),transparent 70%)}
.cta__inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}
.cta__title{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;line-height:1.05;font-size:clamp(2.2rem,5vw,4rem);color:var(--ink)}
.cta__lead{color:var(--ink-soft);font-size:1.1rem;max-width:50ch}
.cta__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:.8rem}

.raised{padding:0 var(--pad);margin:-2rem auto 0;position:relative;z-index:2}
.raised__card{max-width:var(--maxw);margin:0 auto;padding:1.3rem 1.6rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.raised__row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:baseline}
.raised__now{font-family:var(--f-display);font-size:1.5rem;color:var(--ink)}
.raised__label{font-size:.85rem;color:var(--muted);font-weight:600}
.raised__bar{height:10px;margin-top:.9rem;border-radius:100px;background:rgba(255,255,255,.1);overflow:hidden}
.raised__fill{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--gold))}
.appwrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.appwrap p:not(.eyebrow){color:var(--ink-soft);margin:1rem 0}
.app-list{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin:1.2rem 0 1.6rem}
.app-list li{padding-left:1.6rem;position:relative;color:var(--ink-soft)}
.app-list li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--gold)}
.phone{width:260px;margin:0 auto;border-radius:38px;padding:10px;background:#0d1326;box-shadow:0 0 0 2px #2a3352,0 40px 80px -30px rgba(0,0,0,.8)}
.phone__screen{border-radius:30px;background:linear-gradient(180deg,#0A1430,#05091A);padding:2.2rem 1.2rem 1.6rem;min-height:420px;display:flex;flex-direction:column;gap:.6rem}
.phone__tile{height:120px;border-radius:16px;background:linear-gradient(135deg,rgba(255,210,62,.3),rgba(46,108,223,.3))}
.phone__eyebrow{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:.6rem}
.phone__total{font-family:var(--f-display);font-size:2rem;color:#fff;line-height:1}
.phone__cap{font-size:.74rem;color:var(--muted)}
.venue{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.venue__map{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#07102A}
.venue__map svg{width:100%;height:auto;display:block}
.venue__addr{color:var(--ink-soft);font-style:normal;line-height:1.7}
.venue__addr strong{display:block;font-family:var(--f-display);font-size:1.4rem;color:var(--ink);font-weight:500}
@media (max-width:900px){.appwrap,.venue{grid-template-columns:1fr}}
.lede{margin-bottom:1.5rem}
.giftaid-note{max-width:var(--maxw);margin:1.4rem auto 0;padding:1rem 1.3rem;border-radius:var(--r-sm);background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.25);color:var(--ink-soft)}
.giftaid-note strong{color:var(--green)}
.tier{padding:1.5rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line)}
.tier--feature{border-color:rgba(255,210,62,.4);background:rgba(255,210,62,.08)}
.tier__price{font-family:var(--f-display);font-size:1.8rem;color:var(--gold)}
.tier__badge{display:inline-block;padding:.25rem .6rem;border-radius:100px;background:var(--gold);color:var(--navy);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}

/* user guide */
.guide-search{margin:0 0 2rem}
.guide-search__box{display:flex;align-items:center;gap:.8rem;padding:.4rem .5rem .4rem 1.2rem;border-radius:100px;background:var(--glass);border:1px solid var(--line-2)}
.guide-search__box input{flex:1;background:none;border:0;color:var(--ink);padding:.7rem 0;outline:none}
.guide-search__box input::placeholder{color:var(--muted)}
.guide-search__count{font-size:.8rem;color:var(--muted);font-weight:600;margin:.6rem 0 0 1.2rem}
.guide-index{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem;margin:1.5rem 0 3rem}
.guide-index a{padding:.8rem 1rem;border-radius:12px;background:var(--glass);border:1px solid var(--line);font-weight:600;font-size:.9rem;transition:background .3s}
.guide-index a:hover{background:var(--glass-2)}
.guide-group{margin:0 0 3rem;padding-top:1rem}
.guide-group>h2{font-family:var(--f-display);font-weight:500;font-size:clamp(1.6rem,3vw,2.2rem);display:flex;align-items:center;gap:.8rem;margin-bottom:.4rem}
.guide-group__icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(255,210,62,.14);color:var(--gold);font-size:1.1rem}
.guide-group__lead{color:var(--ink-soft);margin-bottom:1.2rem;max-width:60ch}
.guide-noresults{color:var(--muted);padding:2rem 0}
.guide-hit mark{background:rgba(255,210,62,.3);color:inherit;border-radius:3px}

/* ticket capacity bar on WC cards */
.ticket-avail{margin:.6rem 0 .2rem}
.ticket-avail__bar{height:5px;border-radius:100px;background:rgba(255,255,255,.1);overflow:hidden}
.ticket-avail__bar span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--gold))}
.ticket-avail__note{font-size:.76rem;color:var(--muted);font-weight:600;margin:.4rem 0 0}
.ticket-avail__note--low{color:var(--ember)}
.ticket-avail__note--sold-out{color:var(--red)}
.ticket-badge{display:inline-block;padding:.25rem .6rem;border-radius:100px;background:var(--gold);color:var(--navy);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.6rem}

/* blog */
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.3rem}
.post-card{display:flex;flex-direction:column;border-radius:var(--r);overflow:hidden;background:var(--glass);border:1px solid var(--line);transition:transform .5s var(--ease),border-color .4s}
.post-card:hover{transform:translateY(-4px);border-color:var(--line-2)}
.post-card__img{aspect-ratio:16/10;object-fit:cover;width:100%}
.post-card__top{display:block;height:8px}
.post-card__body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.5rem}
.post-card__cat{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700}
.post-card h3{font-family:var(--f-display);font-weight:500;font-size:1.3rem;line-height:1.2}
.post-card p{color:var(--ink-soft);font-size:.92rem}
.post-card__more{color:var(--gold);font-weight:700;font-size:.88rem;margin-top:.4rem}
.article__head{max-width:820px}
.article__meta{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.84rem;font-weight:600;margin-top:1rem}
.article__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--muted)}
.article__figure-wrap{max-width:980px;margin:0 auto;padding:0 var(--pad)}
.article__figure{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.article__figure img{width:100%;aspect-ratio:16/9;object-fit:cover}
.article{max-width:760px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) var(--pad) 4rem}
.article .related,aside.related{max-width:760px;margin:2.5rem auto 0;padding:1.5rem 1.8rem;border-radius:18px;background:var(--glass);border:1px solid var(--line);border-left:3px solid var(--gold)}
.article .related h2,aside.related h2{font-family:var(--f-body);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem}
.related__links{display:flex;flex-direction:column;gap:.5rem}
.related__links a{font-family:var(--f-display);font-size:1.1rem}
.related__links a:hover{color:var(--gold)}
.pagination,.woocommerce-pagination{display:flex;justify-content:center;margin-top:2.5rem}
.page-numbers{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 .7rem;border-radius:100px;border:1px solid var(--line);margin:0 .2rem;font-weight:600}
.page-numbers.current{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.blog-empty{color:var(--muted);text-align:center;padding:3rem 0}

/* app install page + PWA prompt */
.lai{max-width:620px;margin:0 auto}
.lai__card{padding:2rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line);text-align:center}
.lai__icon{width:84px;height:84px;margin:0 auto 1rem;border-radius:22px;background:linear-gradient(160deg,var(--navy-3),var(--navy));display:grid;place-items:center;color:var(--gold);box-shadow:0 20px 50px -20px rgba(46,108,223,.8)}
.lai__title{font-family:var(--f-display);font-size:1.8rem;font-weight:500;margin-bottom:.5rem}
.lai__lead{color:var(--ink-soft);margin-bottom:1.4rem}
.lai__note,.lai__tip{font-size:.9rem;color:var(--ink-soft);margin-top:1rem;padding:.9rem 1rem;border-radius:12px;background:rgba(255,255,255,.05);text-align:left}
.lai__copy{display:flex;gap:.5rem;margin-top:1rem}
.lai__copy input{flex:1;padding:.7rem .9rem;border-radius:10px;border:1px solid var(--line-2);background:rgba(0,0,0,.25);color:var(--ink)}
.pwa-install{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);z-index:9000;width:calc(100% - 2rem);max-width:460px;display:flex;align-items:center;gap:.9rem;
  padding:.9rem 1rem;border-radius:18px;background:rgba(10,20,48,.95);border:1px solid var(--line-2);color:#fff;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:lm-rise .5s var(--ease)}
@keyframes lm-rise{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
.pwa-install__icon{font-size:1.6rem;flex:none;line-height:1}
.pwa-install__body{flex:1;display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}
.pwa-install__hint{color:var(--muted);font-size:.8rem}
.pwa-install__go{align-self:flex-start;background:var(--gold)!important;color:var(--navy)!important;border:0;border-radius:100px;padding:.45rem 1rem;font-weight:800;font-size:.82rem;cursor:pointer}
.pwa-install__close{flex:none;background:var(--glass-2);border:0;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;display:grid;place-items:center;font-size:1.1rem}
html.is-app .lm-ribbon{display:none}
html.is-app body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
html.is-app .lm-nav{padding-top:env(safe-area-inset-top);height:calc(var(--nav-h) + env(safe-area-inset-top))}
html.is-app .lm-totop{bottom:calc(1.2rem + env(safe-area-inset-bottom))}

/* kiosk tablet mode (parent feature) */
html.tablet-mode .lm-ribbon,html.tablet-mode .lm-cursor,html.tablet-mode .lm-progress,html.tablet-mode .pwa-install{display:none!important}
html.tablet-mode{font-size:112.5%}
html.tablet-mode .lm-nav{position:static}
html.tablet-mode .lm-btn,html.tablet-mode .btn,html.tablet-mode button,html.tablet-mode .cha-bidbtn,html.tablet-mode .cha-step{min-height:56px}
html.tablet-mode .cha-box{max-width:none}
.tablet-lock{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(5,9,26,.8);padding:1.5rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tablet-lock[hidden]{display:none}
.tablet-lock__card{background:#fff;color:var(--navy);border-radius:22px;padding:2rem 1.8rem;max-width:420px;width:100%;text-align:center;box-shadow:var(--shadow)}
.tablet-lock__card h2{font-family:var(--f-display);font-size:1.5rem;font-weight:500;margin-bottom:.5rem}
.tablet-lock__card p{color:var(--paper-soft);line-height:1.5;margin-bottom:1.2rem;font-size:.95rem}
.tablet-lock__card input{width:100%;padding:.9rem 1rem;border:2px solid var(--paper-line);border-radius:12px;font-size:17px;text-align:center}
.tablet-lock__row{display:flex;gap:.6rem;margin-top:1rem}
.tablet-lock__row button{flex:1;min-height:52px;border-radius:100px;border:2px solid var(--navy);font-weight:800;cursor:pointer;background:#fff;color:var(--navy)}
.tablet-lock__row button.is-primary{background:var(--navy);color:#fff}
.tablet-lock__msg{min-height:1.3em;margin:.7rem 0 0;font-weight:600;color:#c0392b;font-size:.9rem}
.tablet-lock__hint{margin-top:1rem;font-size:.85rem;color:var(--paper-muted);text-align:left;background:var(--paper-2);border-radius:12px;padding:.8rem 1rem}

/* =====================================================================
   17. PLATFORM COMPONENTS (wp-charity-auctions) ON NIGHT
   ===================================================================== */
.cha-box,.cha-direct-box,.cha-medical-box,.cha-leaderboard,.find-seat,.cha-docs__item a,.rg__confirm,.rg__current{
  background:var(--glass)!important;border:1px solid var(--line-2)!important;color:var(--ink);border-radius:var(--r)!important;
  --cha-ink:var(--ink);--cha-line:var(--line-2);--cha-direct-panel:transparent}
.cha-box{max-width:none;padding:1.5rem 1.6rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.cha-box--live{border-color:rgba(255,154,60,.5)!important}
.cha-label,.cha-count,.cha-leader__label,.cha-anon__hint,.cha-proxy-note,.cha-buynow-note,.cha-history .cha-when,.cha-history em,.cha-steps__label,.cha-other__note,.cha-declaration,.cha-intro,.cha-leaderboard__label,.cha-leaderboard__empty,.find-seat__mates,.rg__giftaid,.rg__small,.rg__bank dt{color:var(--muted)!important}
.cha-declaration,.rg__note,.rg__bank>div{background:rgba(255,255,255,.05)!important;color:var(--ink-soft)!important}
.cha-amount,.cha-leaderboard__amount{font-family:var(--f-display)!important;font-weight:500!important;color:var(--gold)!important;font-size:2.4rem!important;letter-spacing:-.02em}
.cha-amount.cha-bump{animation:lm-bump .6s var(--ease)!important}
@keyframes lm-bump{35%{transform:scale(1.12);color:#fff}}
.cha-timer{color:var(--sky)!important;font-variant-numeric:tabular-nums}
.cha-timer--urgent{color:var(--red)!important}
.cha-timer--extended{color:var(--green)!important}
.cha-live-badge{background:var(--ember)!important;color:var(--navy)!important}
.cha-leader__name,.find-seat__result{color:var(--ink)!important}
.cha-bidrow input,.cha-id-step input,.find-seat__form input,.rg__row input,.rg__custom-input{background:rgba(0,0,0,.28)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;border-radius:12px!important;padding:.8rem .9rem!important}
.cha-bidrow input::placeholder{color:var(--muted)}
.cha-bidrow{flex-wrap:wrap}
.cha-bidrow input{min-width:0;flex:1 1 150px}
.cha-step{min-width:0;flex:1 1 auto}
.cha-step:disabled{opacity:.45}
.cha-steps__label strong{color:var(--gold)!important}
.cha-other summary,.cha-linklike{color:var(--gold)!important}
.cha-history li{border-color:var(--line)!important}
.cha-history summary{color:var(--ink-soft)}
.cha-msg.is-ok{color:var(--green)!important}
.cha-msg.is-error{color:var(--red)!important}
.cha-state--closed{color:var(--red)!important}
.cha-login a{display:inline-flex;align-items:center;min-height:46px;padding:.7rem 1.3rem;border-radius:100px;background:var(--gold)!important;color:var(--navy)!important;font-weight:800}
.cha-watch{margin-top:1rem;background:var(--glass)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;border-radius:100px;padding:.6rem 1.1rem;cursor:pointer;font-weight:700;display:inline-flex;gap:.5em;align-items:center}
.cha-watch.is-on{border-color:var(--gold)!important;color:var(--gold)!important}
.cha-tabletbar{background:rgba(255,210,62,.15)!important;color:var(--gold)!important}
.cha-conn--bad{background:rgba(255,154,60,.12)!important;color:#FFC79A!important;border-color:rgba(255,154,60,.35)!important}
.cha-conn--queued{background:rgba(46,108,223,.15)!important;color:var(--sky-2)!important;border-color:rgba(46,108,223,.4)!important}
.cha-leaderboard{max-width:none;width:100%;min-width:0;box-sizing:border-box;padding:1.5rem 1.6rem}
.cha-leaderboard__total{border-color:var(--line)!important}
.cha-leaderboard__list a:hover{background:var(--glass-2)!important}
.cha-leaderboard__list a::before{background:var(--gold)!important;color:var(--navy)!important}
.cha-leaderboard__bid{color:var(--gold)!important;font-family:var(--f-display);font-size:1.05rem}
.cha-leaderboard__name{color:var(--ink);min-width:0}
@media (max-width:560px){
  .cha-leaderboard{padding:1.2rem 1.1rem}
  .cha-leaderboard__list a{display:grid;grid-template-columns:22px 48px minmax(0,1fr) auto;gap:.2rem .6rem;align-items:center}
  .cha-leaderboard__list a::before{grid-column:1}
  .cha-leaderboard__list img{grid-column:2}
  .cha-leaderboard__name{grid-column:3;font-size:.9rem;line-height:1.3}
  .cha-leaderboard__bid{grid-column:4;white-space:nowrap;justify-self:end}
  .cha-leaderboard__leader{grid-column:3/-1}
}
.cha-docs__icon{background:rgba(255,210,62,.14)!important;color:var(--gold)!important}
.cha-docs__title{color:var(--ink)}
.cha-stream{border:1px solid var(--line);box-shadow:var(--shadow)}
.rg__tier>span,.rg__method{border-color:var(--line-2)!important;color:var(--ink)!important;background:var(--glass)}
.rg__tier input:checked+span,.rg__method:has(input:checked){border-color:var(--gold)!important;background:rgba(255,210,62,.12)!important}
.rg__block legend{font-family:var(--f-display)!important;font-size:1.3rem!important;font-weight:500!important;color:var(--ink)}
.rg__row label{color:var(--ink-soft)}
.rg__tick{background:var(--green)!important;color:var(--night)!important}
.rg__confirm h3{font-family:var(--f-display)!important;color:var(--ink)}
.rg__bank dd{color:var(--ink)}
.rg__bank-ref dd{color:var(--gold)!important}
.rg__giftaid-confirm{color:var(--green)!important}
.cha-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0}
.cha-tier{padding:1.3rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line)}
.cha-tier__name{font-family:var(--f-display);font-size:1.3rem;font-weight:500}
.cha-tier__price{font-family:var(--f-display);color:var(--gold);font-size:1.6rem;margin:.3rem 0 .6rem}
.cha-ir__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}
.cha-ir__card{padding:1.4rem;border-radius:var(--r);background:var(--glass);border:1px solid var(--line)}
.cha-ir__num{font-family:var(--f-display);font-size:2.2rem;color:var(--gold);line-height:1;font-variant-numeric:tabular-nums}
.cha-ir__lbl{display:block;margin-top:.4rem;font-weight:700;color:var(--ink)}
.cha-ir__note{display:block;font-size:.84rem;color:var(--muted);margin-top:.2rem}
.cha-ga,.cha-cs{padding:2.2rem;border-radius:var(--r);background:linear-gradient(160deg,rgba(74,222,128,.12),rgba(46,108,223,.12));border:1px solid rgba(74,222,128,.25);text-align:center;margin:1.5rem 0}
.cha-ga__eyebrow,.cha-cs__eyebrow{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green);font-weight:700}
.cha-ga__line,.cha-cs__amount{font-family:var(--f-display);font-size:clamp(2.4rem,5vw,4rem);color:#fff;line-height:1.05;margin:.5rem 0}
.cha-ga__worth{color:var(--gold)}
.cha-ga__sub,.cha-cs__sub{color:var(--ink-soft)}
.cha-health-badge,.cha-selftest-badge,.cha-matched-badge{display:inline-flex;align-items:center;gap:.5em;padding:.5rem .9rem;border-radius:100px;background:rgba(74,222,128,.12);border:1px solid rgba(74,222,128,.3);color:var(--green);font-weight:700;font-size:.85rem}
.cha-donate-widget,.cha-fundraiser-form,.cha-donorwall,.cha-fr-list,.cha-regions,.cha-counter{color:var(--ink)}
.cha-donate-widget input,.cha-fundraiser-form input,.cha-fundraiser-form textarea,.cha-fundraiser-form select{background:rgba(0,0,0,.28);border:1px solid var(--line-2);color:var(--ink);border-radius:12px;padding:.8rem .9rem;width:100%}
.woocommerce-Price-amount{font-variant-numeric:tabular-nums}
.cha-fan-count{color:var(--muted)}

/* =====================================================================
   18. WOOCOMMERCE: archives, lot pages, forms (night)
   ===================================================================== */
.woocommerce-notices-wrapper:empty{display:none}
.lm-shop{max-width:var(--maxw);margin:0 auto;padding:2.5rem var(--pad) 5rem}
.woocommerce-breadcrumb{font-size:.78rem;font-weight:600;color:var(--muted)!important;margin:0 0 1.6rem!important}
.woocommerce-breadcrumb a{color:var(--ink-soft)!important}
.woocommerce-breadcrumb a:hover{color:var(--gold)!important}
.woocommerce-products-header__title,.woocommerce-result-count,.woocommerce-ordering{display:none}
.section .woocommerce{max-width:none;margin:0;padding:0}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.2rem;list-style:none;margin:0!important;padding:0}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,1fr)}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,1fr)}
.woocommerce ul.products.columns-5{grid-template-columns:repeat(5,1fr)}
.woocommerce ul.products.columns-6{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.woocommerce ul.products[class*="columns-"]{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.woocommerce ul.products{grid-template-columns:1fr!important}}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;clear:none!important;position:relative;display:flex;flex-direction:column;
  border-radius:var(--r);background:var(--glass);border:1px solid var(--line);overflow:hidden;transition:transform .6s var(--ease),border-color .4s,background .4s;text-align:left}
.woocommerce ul.products li.product::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;z-index:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,210,62,.14),transparent 45%)}
.woocommerce ul.products li.product:hover{border-color:var(--line-2);background:var(--glass-2)}
.woocommerce ul.products li.product:hover::before{opacity:1}
.woocommerce ul.products li.product>*{position:relative;z-index:1}
.woocommerce ul.products li.product .woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1}
.woocommerce ul.products li.product img{width:100%;aspect-ratio:4/3;object-fit:cover;margin:0!important;border-radius:0!important;transition:transform 1.2s var(--ease)}
.woocommerce ul.products li.product:hover img{transform:scale(1.05)}
.woocommerce ul.products li.product .woocommerce-loop-product__link>img,.woocommerce ul.products li.product .woocommerce-loop-product__link>span{overflow:hidden}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-display);font-weight:500;font-size:1.2rem!important;line-height:1.2;letter-spacing:-.01em;color:var(--ink);padding:1.1rem 1.2rem .4rem!important;margin:0!important}
.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price .amount{font-family:var(--f-display);font-weight:500!important;color:var(--gold)!important;font-size:1.3rem!important;padding:0 1.2rem;margin:0 0 .5rem!important}
.woocommerce ul.products li.product .price del{opacity:.5;font-size:.8em}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .ticket-badge{position:absolute;top:.8rem;left:.8rem;z-index:2;margin:0}
.woocommerce ul.products li.product .ticket-avail{padding:0 1.2rem}
.woocommerce ul.products li.product .button{margin:auto 1.2rem 1.2rem!important;align-self:flex-start}
.woocommerce ul.products li.product .button.loading{opacity:.6}
.woocommerce ul.products li.product .button.added::after{content:none}
.woocommerce ul.products li.product .added_to_cart{margin:0 1.2rem 1.2rem;font-weight:700;color:var(--gold);font-size:.86rem}
.woocommerce ul.products li.product.outofstock .button{display:none}
.woocommerce ul.products li.product.outofstock::after{content:"Sold out";position:absolute;top:.8rem;right:.8rem;z-index:2;padding:.3rem .65rem;border-radius:100px;background:rgba(5,9,26,.8);color:var(--ink);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.woocommerce ul.products li.product.product-type-cha_auction .button{display:none}
.woocommerce ul.products li.product.product-type-cha_auction .woocommerce-loop-product__link::after{content:"Bid now \2192";display:inline-block;margin:auto 1.2rem 1.2rem;font-weight:700;color:var(--gold);font-size:.9rem}
.woocommerce ul.products li.product.product_cat-live-auction .woocommerce-loop-product__link::after{content:"Place a pre-bid \2192"}
.woocommerce ul.products li.product.product_cat-live-auction .woocommerce-loop-product__link::before{content:"Live auction";position:absolute;top:.8rem;right:.8rem;z-index:2;padding:.3rem .65rem;border-radius:100px;background:var(--ember);color:var(--navy);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.woocommerce ul.products li.product .star-rating{display:none}

/* single product / lot */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.5rem 4rem;align-items:start}
.woocommerce div.product>*{grid-column:1/-1;min-width:0}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:auto!important;grid-column:auto;margin:0!important}
/* WooCommerce's own .images.woocommerce-product-gallery{position:relative} outranks a plain selector, which left the gallery relative but pushed down by this top. */
.woocommerce div.product div.images{position:sticky!important;top:calc(var(--nav-h) + 1rem)}
.woocommerce div.product div.images img{border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--shadow)}
.woocommerce div.product div.images .flex-control-thumbs{margin-top:.8rem;display:flex;gap:.5rem;flex-wrap:wrap}
.woocommerce div.product div.images .flex-control-thumbs li{width:72px;float:none;margin:0}
.woocommerce div.product div.images .flex-control-thumbs img{border-radius:10px;opacity:.5;border:1px solid transparent}
.woocommerce div.product div.images .flex-control-thumbs img.flex-active,.woocommerce div.product div.images .flex-control-thumbs img:hover{opacity:1;border-color:var(--gold)}
.woocommerce div.product .woocommerce-product-gallery__trigger{display:none}
.woocommerce div.product .product_title{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;line-height:1.05;font-size:clamp(2rem,4vw,3.2rem);color:var(--ink);margin:0 0 1rem;text-wrap:balance}
.woocommerce div.product p.price{font-family:var(--f-display);color:var(--gold)!important;font-size:1.6rem;margin:0 0 1.2rem}
.woocommerce div.product p.price del{opacity:.5}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ink-soft);font-size:1.05rem;line-height:1.7;margin-bottom:1.4rem}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:1.2rem 0 1.6rem}
.woocommerce div.product form.cart .quantity{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:100px;overflow:hidden;background:rgba(0,0,0,.25)}
.woocommerce div.product form.cart .quantity .qty{width:70px;background:none!important;border:0!important;color:var(--ink);text-align:center;padding:.8rem .5rem}
.woocommerce div.product form.cart .variations{width:100%}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{border:0;padding:.4rem 0}
.woocommerce div.product form.cart .variations label{font-weight:700;color:var(--ink-soft)}
.woocommerce div.product form.cart .variations select{width:100%;padding:.8rem .9rem;border-radius:12px;border:1px solid var(--line-2);background:rgba(0,0,0,.28);color:var(--ink)}
.woocommerce div.product form.cart .reset_variations{color:var(--muted);font-size:.8rem}
.woocommerce div.product .woocommerce-variation-price .price{color:var(--gold)}
.woocommerce div.product .product_meta{font-size:.82rem;color:var(--muted);margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
.woocommerce div.product .product_meta a{color:var(--ink-soft)}
.woocommerce div.product .woocommerce-tabs{margin-top:2rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:.3rem;padding:0;margin:0 0 1.2rem;border-bottom:1px solid var(--line);overflow:visible}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;box-shadow:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:.8rem 1rem;color:var(--muted)!important;font-weight:700;border-bottom:2px solid transparent;margin-bottom:-1px}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important;border-bottom-color:var(--gold)}
.woocommerce div.product .woocommerce-Tabs-panel{color:var(--ink-soft);line-height:1.7}
.woocommerce div.product .woocommerce-Tabs-panel h2{font-family:var(--f-display);font-weight:500;color:var(--ink);font-size:1.5rem;margin-bottom:.8rem}
.woocommerce div.product .woocommerce-Tabs-panel p{margin-bottom:1rem}
.woocommerce div.product section.related,.woocommerce div.product section.upsells{margin-top:3rem}
.woocommerce div.product section.related>h2,.woocommerce div.product section.upsells>h2{font-family:var(--f-display);font-weight:500;letter-spacing:-.01em;font-size:1.9rem;margin-bottom:1.2rem}
.woocommerce div.product .cha-box{margin:0 0 1.2rem}
.mg-prebid-note,.lm-prebid-note{font-size:.9rem;color:var(--ink-soft);padding:.9rem 1rem;border-radius:12px;background:rgba(255,154,60,.1);border:1px solid rgba(255,154,60,.3);margin-bottom:1rem}
.lm-lotkind{margin-bottom:.8rem}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{background:var(--glass)!important;border:1px solid var(--line-2)!important;border-top:3px solid var(--gold)!important;border-radius:14px;color:var(--ink)!important;padding:1rem 1.2rem 1rem 3.2rem!important;margin-bottom:1.5rem!important}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--gold)!important;top:1.05rem}
.woocommerce .woocommerce-error{border-top-color:var(--red)!important}
.woocommerce .woocommerce-error::before{color:var(--red)!important}
.woocommerce .woocommerce-message .button{float:right;margin-left:1rem}
.pswp__bg{background:rgba(5,9,26,.95)!important}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:minmax(0,1fr)}.woocommerce div.product div.images{position:static!important;top:auto}}

/* =====================================================================
   19. PAPER MODE: cart, checkout, account. WooCommerce's own controls
   stay legible on a light surface, so these pages flip to paper.
   ===================================================================== */
body.lm-paper main#main{min-height:60vh;padding-bottom:4rem}
body.lm-paper .phero{padding-bottom:1rem}
body.lm-paper .phero__glow{background:radial-gradient(45% 55% at 85% 20%,rgba(255,210,62,.25),transparent 70%)}
body.lm-paper .phero h1,body.lm-paper .h2,body.lm-paper .lm-h2{color:var(--paper-ink)}
body.lm-paper .lm-eyebrow,body.lm-paper .eyebrow{color:var(--blue)}
body.lm-paper .phero__lead,body.lm-paper .prose,body.lm-paper .lede{color:var(--paper-soft)}
body.lm-paper .breadcrumb{color:var(--paper-muted)}
body.lm-paper .woocommerce,body.lm-paper .wp-block-woocommerce-cart,body.lm-paper .wp-block-woocommerce-checkout{color:var(--paper-ink)}
body.lm-paper .woocommerce{max-width:var(--maxw);margin:0 auto;padding:1rem var(--pad) 4rem}
body.lm-paper .wc-block-components-sidebar,body.lm-paper .wc-block-cart__sidebar,body.lm-paper .wc-block-checkout__sidebar{background:#fff;border:1px solid var(--paper-line);border-radius:var(--r);padding:1.6rem 1.8rem!important;box-shadow:0 20px 50px -30px rgba(11,32,80,.25)}
body.lm-paper .wc-block-components-product-name{font-family:var(--f-display)!important;font-weight:500!important;font-size:1.1rem!important;color:var(--paper-ink)}
body.lm-paper .wc-block-components-formatted-money-amount,body.lm-paper .wc-block-cart-item__total-price-and-sale-badge-wrapper{color:var(--paper-ink);font-variant-numeric:tabular-nums}
body.lm-paper .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--f-display);font-weight:500;font-size:1.4rem;color:var(--paper-ink)}
body.lm-paper .wc-block-components-title,body.lm-paper .wc-block-components-checkout-step__title{font-family:var(--f-display)!important;font-weight:500!important;color:var(--paper-ink)}
body.lm-paper .wc-block-components-quantity-selector{border:1px solid var(--paper-line)!important;border-radius:100px!important;overflow:hidden}
body.lm-paper .wc-block-components-quantity-selector__button{color:var(--blue)!important}
body.lm-paper .wc-block-components-radio-control__option{border-radius:14px!important}
body.lm-paper .wc-block-components-checkbox__input:checked+.wc-block-components-checkbox__mark{color:var(--blue)}
body.lm-paper .wc-block-components-text-input input,body.lm-paper .wc-block-components-combobox .components-combobox-control__input,body.lm-paper .wc-block-components-select .components-custom-select-control__button{border-radius:12px!important;border-color:var(--paper-line)!important;font-family:var(--f-body)}
body.lm-paper .wc-block-components-text-input input:focus{box-shadow:0 0 0 1px var(--blue)!important;border-color:var(--blue)!important}
body.lm-paper .wc-block-components-order-summary-item__individual-prices,body.lm-paper .wc-block-components-order-summary-item__description{color:var(--paper-muted)}
body.lm-paper .wc-block-cart-items,body.lm-paper .wc-block-components-panel,body.lm-paper .wc-block-cart-items__row{border-color:var(--paper-line)!important}
body.lm-paper .wc-block-cart__empty-cart__title{font-family:var(--f-display);font-weight:500;color:var(--paper-ink)}
body.lm-paper .wc-block-grid__product{border-color:var(--paper-line)!important}
body.lm-paper .wc-block-grid__product-title{font-family:var(--f-display);font-weight:500;color:var(--paper-ink)}
body.lm-paper .wc-block-grid__product-price{color:var(--blue)}
body.lm-paper .wc-block-components-express-payment__event-buttons{margin-bottom:.5rem}
body.lm-paper .wc-block-components-notice-banner{border-radius:14px!important}
body.lm-paper .woocommerce form .form-row input.input-text,body.lm-paper .woocommerce form .form-row select,body.lm-paper .woocommerce form .form-row textarea,body.lm-paper .woocommerce-EditAccountForm input{border-radius:12px;border:1px solid var(--paper-line);padding:.8rem .9rem;font-family:var(--f-body);background:#fff;color:var(--paper-ink);width:100%}
body.lm-paper .woocommerce form .form-row input.input-text:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(46,108,223,.15)}
body.lm-paper .woocommerce form .form-row label{font-weight:600;color:var(--paper-soft);font-size:.9rem}
body.lm-paper .woocommerce-form-login,body.lm-paper .woocommerce-form-register,body.lm-paper .woocommerce-ResetPassword,body.lm-paper .woocommerce-EditAccountForm,body.lm-paper .woocommerce-address-fields{background:#fff;border:1px solid var(--paper-line)!important;border-radius:var(--r)!important;padding:1.8rem 2rem!important;box-shadow:0 20px 50px -30px rgba(11,32,80,.25);margin:0 0 1.5rem!important}
body.lm-paper .woocommerce .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
body.lm-paper .woocommerce .u-columns>.col-1,body.lm-paper .woocommerce .u-columns>.col-2{float:none;width:100%;max-width:none}
body.lm-paper .woocommerce .u-columns h2,body.lm-paper .woocommerce-account h2,body.lm-paper .woocommerce-MyAccount-content h2,body.lm-paper .woocommerce-MyAccount-content h3{font-family:var(--f-display);font-weight:500;color:var(--paper-ink);letter-spacing:-.01em;margin-bottom:1rem}
body.lm-paper .woocommerce-privacy-policy-text,body.lm-paper .woocommerce-privacy-policy-text a{color:var(--paper-muted);font-size:.86rem}
body.lm-paper .woocommerce-LostPassword a{color:var(--blue);font-weight:600;font-size:.9rem}
body.lm-paper .woocommerce-form-login__rememberme{display:flex;gap:.5rem;align-items:center;margin:.6rem 0 1rem!important}
body.lm-paper .woocommerce-account .woocommerce-MyAccount-navigation{float:none;width:auto;margin-bottom:1.5rem}
body.lm-paper .woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto;background:#fff;border:1px solid var(--paper-line);border-radius:var(--r);padding:1.8rem 2rem}
body.lm-paper .woocommerce-MyAccount-navigation ul{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}
body.lm-paper .woocommerce-MyAccount-navigation a{display:block;padding:.6rem 1rem;border-radius:100px;font-weight:600;font-size:.9rem;color:var(--paper-soft);border:1px solid var(--paper-line);background:#fff}
body.lm-paper .woocommerce-MyAccount-navigation li.is-active a{background:var(--navy);color:#fff;border-color:var(--navy)}
body.lm-paper .woocommerce table.shop_table{border:1px solid var(--paper-line);border-radius:var(--r);overflow:hidden;border-collapse:separate}
body.lm-paper .woocommerce table.shop_table th{background:var(--paper-2);color:var(--paper-ink)}
body.lm-paper .woocommerce table.shop_table td,body.lm-paper .woocommerce table.shop_table th{border-color:var(--paper-line)}
body.lm-paper .woocommerce .woocommerce-message,body.lm-paper .woocommerce .woocommerce-info,body.lm-paper .woocommerce .woocommerce-error{background:#fff!important;border:1px solid var(--paper-line)!important;border-top:3px solid var(--gold)!important;color:var(--paper-ink)!important}
body.lm-paper .woocommerce .woocommerce-message::before,body.lm-paper .woocommerce .woocommerce-info::before{color:var(--blue)!important}
body.lm-paper .woocommerce-checkout #payment{background:var(--paper-2)!important;border-radius:var(--r)}
body.lm-paper .lm-foot{background:var(--navy);color:var(--ink)}
body.lm-paper .lm-foot .lm-nav__brand{color:var(--ink)}
body.lm-paper .lm-btn--ghost{color:var(--paper-ink)!important}
body.lm-paper .lm-menu{background:rgba(252,251,247,.97)}
body.lm-paper .lm-menu__group a{color:var(--paper-ink)}
body.lm-paper .lm-menu__group a:hover{color:var(--blue)}
body.lm-paper .lm-menu__foot{color:var(--paper-muted);border-color:var(--paper-line)}
body.lm-paper .lm-burger{background:rgba(11,32,80,.06)}
body.lm-paper .lang-switch__panel{background:#fff;border-color:var(--paper-line)}
body.lm-paper .lang-switch__btn{color:var(--paper-soft)}
body.lm-paper .lm-totop{background:var(--navy);color:#fff}
@media (max-width:760px){body.lm-paper .woocommerce .u-columns{grid-template-columns:1fr}}

/* =====================================================================
   20. MOTION PREFERENCES + PRINT
   ===================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
  html.lm-js [data-rv],html.lm-js [data-hero],html.lm-js [data-reveal]{opacity:1}
  html.lm-js [data-split]{visibility:visible}
  .lm-marquee__track{animation:none}
  .lm-cursor{display:none}
}
@media print{.lm-ribbon,.lm-nav,.lm-menu,.lm-cursor,.lm-progress,.lm-totop,.lm-hero__canvas,.pwa-install{display:none!important}body{background:#fff;color:#000}}

/* =====================================================================
   21. Late additions from the live review
   ===================================================================== */
/* editor-written or shortcode-only pages */
.lm-plain{max-width:1100px;margin:0 auto;color:var(--ink-soft);font-size:1.05rem;line-height:1.7}
.lm-plain>p,.lm-plain>.wp-block-paragraph{max-width:70ch;margin:0 0 1.2rem}
.lm-plain h2,.lm-plain .wp-block-heading{font-family:var(--f-display);font-weight:500;letter-spacing:-.015em;line-height:1.15;color:var(--ink);font-size:clamp(1.6rem,3vw,2.2rem);margin:2.6rem 0 .8rem}
.lm-plain h3{font-family:var(--f-display);font-weight:500;color:var(--ink);font-size:1.35rem;margin:1.8rem 0 .6rem}
.lm-plain a{color:var(--gold)}
.lm-plain .lai{margin-top:1rem}
/* platform cards that ship white inline backgrounds */
.cha-donorwall [style*="background:#fff"],.cha-fr-list [style*="background:#fff"],.cha-regions [style*="background:#fff"],.cha-region-detail [style*="background:#fff"],
.cha-donate-widget[style*="background:#fff"],.cha-donate-widget [style*="background:#fff"],.cha-fr-list>a,.cha-donorwall>div>div{
  background:var(--glass)!important;border-color:var(--line-2)!important;color:var(--ink)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.cha-donorwall [style*="color:#0b1f3a"],.cha-fr-list [style*="color:#0b1f3a"],.cha-regions [style*="color:#0b1f3a"],.cha-donate-widget [style*="color:#0b1f3a"],
.cha-donorwall h3,.cha-donorwall h4,.cha-fr-list h3,.cha-fr-list h4,.cha-regions h3,.cha-regions h4,.cha-donate-widget h3{color:var(--ink)!important;font-family:var(--f-display);font-weight:500}
.cha-donorwall p,.cha-fr-list p,.cha-regions p{color:var(--ink-soft)!important}
.cha-donorwall [style*="color:#6"],.cha-fr-list [style*="color:#6"],.cha-regions [style*="color:#6"],.cha-fr-list [style*="color:#5"],.cha-regions [style*="color:#5"]{color:var(--muted)!important}
.cha-donate-widget [style*="background:#c8a24b"],.cha-donate-widget a[style*="border-radius:100px"]{background:var(--gold)!important;color:var(--navy)!important;box-shadow:var(--glow-gold)}
.cha-fr-progress,.cha-fr-list [style*="background:#e"],.cha-regions [style*="background:#e"]{background:rgba(255,255,255,.1)!important}
.cha-fr-progress>span,.cha-fr-progress>div,.cha-fr-progress i{background:linear-gradient(90deg,var(--blue),var(--gold))!important}
/* lot page related lots: not the blog block */
section.related{border:0;background:none;padding:0;max-width:none}
section.related>h2{text-transform:none;letter-spacing:-.01em;font-size:1.9rem;color:var(--ink)}
/* paper: WooCommerce empty-basket grid */
body.lm-paper .wc-block-grid__products{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem;padding:0;margin:1rem 0 3rem;list-style:none}
body.lm-paper .wc-block-grid__product{border:1px solid var(--paper-line)!important;border-radius:var(--r);background:#fff;padding:1rem;margin:0!important;max-width:none!important;flex:none;width:auto!important}
body.lm-paper .wc-block-grid__product-image img{border-radius:12px;aspect-ratio:4/3;object-fit:cover;width:100%}
body.lm-paper .wc-block-grid__product-title{font-size:1.05rem;margin:.6rem 0 .2rem}
body.lm-paper .wc-block-cart__empty-cart__title+p,body.lm-paper .wp-block-heading.has-text-align-center{font-family:var(--f-display);font-weight:500;color:var(--paper-ink);font-size:1.6rem}
body.lm-paper .wc-block-cart__empty-cart__title{font-size:1.8rem}
/* paper: sign in and register side by side, in order */
body.lm-paper .woocommerce .u-columns>.col-1{grid-column:1;grid-row:1}
body.lm-paper .woocommerce .u-columns>.col-2{grid-column:2;grid-row:1}
@media (max-width:760px){body.lm-paper .woocommerce .u-columns>.col-1,body.lm-paper .woocommerce .u-columns>.col-2{grid-column:1;grid-row:auto}}
body.lm-paper main#main>.wp-block-woocommerce-cart,body.lm-paper main#main>.wp-block-woocommerce-checkout,body.lm-paper main#main>.woocommerce-notices-wrapper{max-width:var(--maxw);margin-left:auto;margin-right:auto;padding:1.5rem var(--pad) 2rem;box-sizing:border-box}
