/* Lyons Wealth — WM · Hero (wm_hero)
   Source: flexible_css.css (reference design). Loaded only on pages that use this layout.
   Every selector is scoped to this section's root class; nothing is global. */

.wmo.wmo-hero .h1 em { font-style:italic; color:var(--golddeep); }
.wmo.wmo-hero { position:relative; overflow:hidden; background:linear-gradient(120deg,var(--navy) 0%,var(--navy2) 60%,var(--navy) 100%); padding:clamp(140px,18vh,190px) var(--pad) clamp(80px,10vh,120px); }
.wmo.wmo-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.6; background:radial-gradient(40% 60% at 85% 20%,rgba(255,196,81,.14),transparent 70%),radial-gradient(40% 60% at 8% 90%,rgba(255,196,81,.1),transparent 70%); }
.wmo.wmo-hero .hero__grid { position:relative; z-index:2; max-width:1240px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:clamp(36px,5vw,80px); align-items:center; }
.wmo.wmo-hero .h1 { font-family:var(--serif); font-weight:700; font-size:clamp(42px,6.4vw,64px); line-height:1.03; color:#fff; margin-top:20px; text-wrap:balance; }
.wmo.wmo-hero .h1 em { color:var(--gold); }
.wmo.wmo-hero .lede { max-width:560px; margin-top:24px; }
.wmo.wmo-hero .hero__ctas { display:flex; flex-wrap:wrap; gap:18px; margin-top:36px; }
.wmo.wmo-hero .hero__meta { display:flex; align-items:center; gap:14px; margin-top:34px; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:#AEBBC8; font-weight:600; }
.wmo.wmo-hero .hero__meta::before { content:""; width:24px; height:1px; background:var(--gold); }
.wmo.wmo-hero .hero__media { position:relative; }
.wmo.wmo-hero .hero__media::before { content:""; position:absolute; inset:18px -18px -18px 18px; border:1px solid rgba(255,196,81,.45); border-radius:6px; }
.wmo.wmo-hero .hero__img { position:relative; display:block; width:100%; aspect-ratio:4/5; border-radius:6px; overflow:hidden; background:#22364D; box-shadow:0 40px 80px -40px rgba(0,0,0,.6); }
.wmo.wmo-hero .hero__badge { position:absolute; left:-24px; bottom:30px; padding:18px 22px; background:#fff; border-radius:6px; box-shadow:0 24px 50px -24px rgba(0,0,0,.45); max-width:230px; z-index:3; }
.wmo.wmo-hero .hero__img > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
@media (max-width:1024px) {
  .wmo.wmo-hero .hero__grid { grid-template-columns:1fr; }
  .wmo.wmo-hero .hero__media { max-width:520px; }
}
@media (max-width:680px) {
  .wmo.wmo-hero .hero__badge { left:12px; }
}
.wmo.wmo-hero .wmo-crumbs { position:relative; z-index:2; max-width:1240px; margin:0 auto 26px; }
.wmo.wmo-hero .wmo-crumbs ol { list-style:none; display:flex; flex-wrap:wrap; gap:10px; font-size:11px; letter-spacing:.18em; text-transform:uppercase; font-weight:600; color:#93A2B0; }
.wmo.wmo-hero .wmo-crumbs li + li::before { content:"/"; margin-right:10px; color:rgba(255,196,81,.6); }
.wmo.wmo-hero .wmo-crumbs a { color:#C9D3DD; }
.wmo.wmo-hero .wmo-crumbs a:hover { color:var(--gold); }
.wmo.wmo-hero .hero__media { isolation:isolate; }
.wmo.wmo-hero .hero__img { z-index:1; }
.wmo.wmo-hero .h1 { line-height: 1.1; }
.wmo.wmo-hero .hero__badge { z-index:3; padding:18px 24px; }
.wmo.wmo-hero .hero__badge .wmo-hero__badge-k { display:block; margin:0; font-family:var(--sans); line-height:1.4; font-size:10px; letter-spacing:.2em; text-transform:uppercase; font-weight:700; color:var(--goldink); }
.wmo.wmo-hero .hero__badge .wmo-hero__badge-v { display:block; letter-spacing:0; text-transform:none; margin-top:6px; font-family:var(--serif); font-size:18px; line-height:1.18; font-weight:500; color:var(--navy); }
.wmo-anim .wmo.wmo-hero [data-wmo-enter] { opacity:0; animation:wmoRise .9s cubic-bezier(.5,0,.2,1) forwards; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="2"] { animation-delay:.1s; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="3"] { animation-delay:.2s; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="4"] { animation-delay:.3s; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="img"] { opacity:0; animation:wmoRise .9s cubic-bezier(.5,0,.2,1) .1s forwards; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="img"] .hero__img { animation:wmoMask 1.2s cubic-bezier(.6,0,.2,1) .15s both; }
.wmo-anim .wmo.wmo-hero [data-wmo-enter="img"] .hero__badge { opacity:0; animation:wmoRise .7s cubic-bezier(.5,0,.2,1) .9s forwards; }
.wmo.wmo-hero .wmo-hero__orb { position:absolute; z-index:1; width:clamp(260px,32vw,480px); aspect-ratio:1; right:-8vw; top:12%; border-radius:50%; border:1px solid rgba(255,196,81,.18); pointer-events:none; }
.wmo.wmo-hero .wmo-hero__orb::after { content:""; position:absolute; top:-5px; left:50%; width:10px; height:10px; margin-left:-5px; border-radius:50%; background:var(--gold); box-shadow:0 0 14px rgba(255,196,81,.8); }
.wmo-anim .wmo.wmo-hero .wmo-hero__orb { animation:wmoOrbit 40s linear infinite; }
@media (prefers-reduced-motion:reduce) {
  .wmo-anim .wmo.wmo-hero [data-wmo-enter] { opacity:1 !important; transform:none !important; clip-path:none !important; animation:none !important; transition:none !important; }
  .wmo-anim .wmo.wmo-hero .wmo-hero__orb { animation:none !important; }
}
