:root{
  --brand-navy:#03143f;--brand-ink:#102542;--brand-love:#ff2347;--brand-coral:#ff526b;
  --brand-soft:#fff0f3;--brand-canvas:#f7f9fd;--brand-line:#d7dfec;--brand-muted:#66758c;
  --brand-success:#2c8c68;--brand-gold:#d5ac63;--brand-radius:22px;
  --brand-shadow:0 18px 50px rgba(7,27,58,.10);
  --navy:var(--brand-navy);--night:var(--brand-navy);--ink:var(--brand-ink);
  --love:var(--brand-love);--love2:var(--brand-coral);--love-soft:var(--brand-soft);
  --soft:var(--brand-soft);--canvas:var(--brand-canvas);--bg:var(--brand-canvas);
  --line:var(--brand-line);--muted:var(--brand-muted);--green:var(--brand-success);
  --gold:var(--brand-gold);--plum:#7d2940;--shadow:var(--brand-shadow)
}
*{box-sizing:border-box}html{color-scheme:light}
body{margin:0;color:var(--ink);font-family:"DM Sans","Segoe UI",sans-serif;background:radial-gradient(circle at 95% 5%,rgba(255,20,62,.08),transparent 400px),var(--canvas)}
button,input,select,textarea{font:inherit}button{touch-action:manipulation}
.brand b,.mini-brand b{font-family:Georgia,"Playfair Display",serif;color:var(--night)}
.brand em,.mini-brand em{color:var(--love);font-style:normal}
.brand small,.mini-brand small{color:var(--love);font-weight:900;letter-spacing:.2em}
.ly-brand-signature{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;line-height:1}
.ly-brand-logo{display:block;width:clamp(118px,14vw,168px);height:auto;max-height:58px;object-fit:contain;background:#fff}
.ly-brand-caption{display:block;margin-top:3px;color:var(--brand-navy)!important;font-size:.48rem!important;font-weight:900;letter-spacing:.22em;text-transform:uppercase;line-height:1.2}
.mini-brand .ly-brand-logo{width:118px;max-height:48px}.partner-brand .ly-brand-logo{width:190px;max-height:78px}.module-top .ly-brand-logo{width:136px;max-height:56px}
.ly-auth-logo{display:flex;justify-content:center;margin:0 0 28px;padding:16px 18px 12px;border-radius:20px;background:#fff;box-shadow:0 16px 34px rgba(0,0,0,.15)}
.ly-auth-logo .ly-brand-logo{width:min(280px,100%);max-height:none}.ly-auth-logo .ly-brand-caption{font-size:.62rem!important;margin-top:5px}
.primary{border:0;border-radius:15px;padding:13px 17px;background:linear-gradient(135deg,var(--love),var(--love2));color:#fff;font-weight:900;cursor:pointer}
.secondary{border:1px solid var(--line);border-radius:15px;padding:13px 17px;background:#fff;color:var(--night);font-weight:900;cursor:pointer}
.eyebrow{color:var(--love);font-size:.68rem;letter-spacing:.13em;font-weight:900;text-transform:uppercase}
.location-bar{position:sticky;top:76px;z-index:18;display:flex;align-items:center;gap:10px;min-height:44px;padding:8px max(14px,calc((100vw - 1050px)/2));background:rgba(247,249,253,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.location-bar b{font-size:.78rem;color:var(--night)}.location-bar span{font-size:.69rem;color:var(--muted)}
@media(max-width:520px){
  .appbar{height:64px!important;padding:0 14px!important}.appbar .brand b{font-size:1rem}.appbar .avatar,.appbar .heart{width:38px;height:38px}.appbar .ly-brand-logo{width:112px;max-height:43px}.appbar .ly-brand-caption{font-size:.4rem!important;margin-top:1px}
  .location-bar{top:64px;padding:8px 14px}.location-bar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .page{width:calc(100% - 24px)!important;padding-top:10px!important;padding-bottom:104px!important}.hero{padding:14px 0!important}.hero h1{font-size:2rem!important;line-height:1.04!important}.hero .lead{font-size:.88rem;line-height:1.5}
  .card{padding:17px!important;border-radius:18px!important}.card h2{font-size:1.35rem}.btn{width:100%;margin:5px 0;min-height:46px}
  .nav{left:0!important;bottom:0!important;transform:none!important;width:100%!important;border-radius:20px 20px 0 0!important;padding:7px 5px max(7px,env(safe-area-inset-bottom))!important;gap:2px}
  .nav button{min-height:58px!important;font-size:.58rem!important;line-height:1.15;padding:7px 2px!important}.nav button b{font-size:1.05rem;margin-bottom:3px}
}
