/* =======================
   ELOR PRODUCTION — NAV (v17)
   ======================= */
:root{
  --elor-bg:#0a0a0a; --elor-bg-elev:#121212;
  --elor-gold1:#fff6da; --elor-gold2:#e6cc7a; --elor-gold3:#b78c2a;
  --elor-text:#e8e8e8; --elor-muted:#a6a6a6;
  --elor-border:rgba(255,255,255,.08); --elor-shadow:0 10px 35px rgba(0,0,0,.5);

  --elor-nav-h:84px;
  --elor-nav-h-mobile:68px;
  --elor-nav-h-compact:64px;
  --elor-nav-h-mobile-compact:56px;

  --elor-adminbar:0px;
}
body.admin-bar #elorNav{ --elor-adminbar:32px; }
@media (max-width:782px){ body.admin-bar #elorNav{ --elor-adminbar:46px; } }

#elorNav *{ box-sizing:border-box; }
#elorNav ul,#elorNav li{ list-style:none !important; margin:0 !important; padding:0 !important; }
#elorNav a{ text-decoration:none !important; }

/* Mobile drawer */
.elor-panel{
  position:fixed; top:calc(var(--elor-nav-h-mobile) + var(--elor-adminbar)); bottom:0;
  right:-100%; width:min(86vw,420px);
  background:linear-gradient(180deg,#0b0b0b 0%, #000 100%);
  border-left:1px solid var(--elor-border); box-shadow:var(--elor-shadow);
  transition:right .28s ease; overflow:auto; -webkit-overflow-scrolling:touch;
  z-index:2147483645; display:block;
}
#elorMenuPanel:target{ right:0; }
.elor-panel__inner{ padding:16px 18px 32px; }
.elor-panel__link{
  position:relative; display:block; padding:14px 10px; border-radius:10px;
  color:var(--elor-text);
}
.elor-panel__link::after{
  content:""; position:absolute; left:0; right:0; bottom:6px; height:2px;
  background:linear-gradient(90deg,transparent,var(--elor-gold2),transparent);
  transform:scaleX(0); transform-origin:center; transition:transform .25s ease;
}
.elor-panel__link:hover,
.elor-panel__link:focus-visible{ color:var(--elor-gold2); }
.elor-panel__link:hover::after,
.elor-panel__link:focus-visible::after{ transform:scaleX(1); }

/* ---- Fixed, animated header ---- */
#elorNav.elor-nav{
  position:fixed; left:0; right:0;
  top:var(--elor-adminbar);
  z-index:2147483646;
  background:linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.75));
  backdrop-filter:saturate(140%) blur(6px); -webkit-backdrop-filter:saturate(140%) blur(6px);
  border-bottom:1px solid var(--elor-border); box-shadow:var(--elor-shadow);
  font-family:"Red Hat Display",system-ui,Segoe UI,Roboto,Arial,sans-serif;

  transform:translateY(0);
  transition:transform .28s ease, background-color .25s ease;
}
.elor-nav-spacer{ height:var(--elor-nav-h); } /* JS will update to actual height */

#elorNav .elor-nav__inner{
  max-width:min(1240px,92vw); margin:0 auto; height:var(--elor-nav-h);
  display:flex; align-items:center; justify-content:space-between; gap:18px; padding-inline:8px;
  transition:height .20s ease;
}

/* Hide/show */
#elorNav.elor-nav--unpinned{ transform:translateY(calc(-100% - var(--elor-adminbar))); }
#elorNav.elor-nav--pinned{ transform:translateY(0); }

/* Compact */
#elorNav.elor-nav--compact .elor-nav__inner{ height:var(--elor-nav-h-compact); }
@media (max-width:900px){
  .elor-panel{ top:calc(var(--elor-nav-h-mobile) + var(--elor-adminbar)); }
  #elorNav.elor-nav--compact .elor-nav__inner{ height:var(--elor-nav-h-mobile-compact); }
}

/* Brand (simple yellow) */
#elorNav .elor-brand{ display:flex; align-items:baseline; gap:.6rem; color:var(--elor-text); }
#elorNav .elor-brand__logo{
  font-family:"Fjalla One",sans-serif;
  letter-spacing:.10em; line-height:1; font-size:2.7rem; color:#d4c67a;
}
#elorNav .elor-brand__sub{
  font-size:1.14rem; letter-spacing:.06em; color:#d4c67a;
}

/* Desktop menu */
#elorNav .elor-menu--desktop{ display:flex; align-items:center; gap:28px; }
#elorNav .elor-menu--desktop > li > a,
#elorNav .elor-subbtn{
  position:relative; display:inline-flex; align-items:center;
  padding:16px 0; font-weight:600; letter-spacing:.02em; font-size:1rem;
  color:var(--elor-text); transition:color .2s ease; background:none; border:0;
}
#elorNav .elor-menu--desktop > li > a::after,
#elorNav .elor-subbtn::after{
  content:""; position:absolute; left:0; right:0; bottom:8px; height:2px;
  background:linear-gradient(90deg,transparent,var(--elor-gold2),transparent);
  transform:scaleX(0); transform-origin:center; transition:transform .25s ease;
}
#elorNav .elor-menu--desktop > li > a:hover,
#elorNav .elor-subbtn:hover{ color:var(--elor-gold2); }
#elorNav .elor-menu--desktop > li > a:hover::after,
#elorNav .elor-subbtn:hover::after{ transform:scaleX(1); }

/* Dropdown (kept for future use) */
#elorNav .has-sub{ position:relative; }
#elorNav .elor-submenu{
  position:absolute; top:100%; left:0; min-width:220px; padding:10px;
  display:none; flex-direction:column; gap:4px;
  background:linear-gradient(180deg,var(--elor-bg-elev),#0b0b0b);
  border:1px solid var(--elor-border); border-radius:12px; box-shadow:var(--elor-shadow);
  z-index:99999;
}
#elorNav .elor-submenu a{
  display:block; padding:10px 12px; border-radius:8px; color:var(--elor-text);
}
#elorNav .elor-submenu a:hover{ background:rgba(230,204,122,.08); color:var(--elor-gold2); }
@media (min-width:901px){ #elorNav .has-sub:hover > .elor-submenu{ display:flex; } }

/* Burgers */
/* hidden by default (desktop) */
#elorNav .elor-burger{ display:none !important; }

/* bar styles */
#elorNav .elor-burger__bar{
  width:26px; height:2px; background:var(--elor-gold2);
  display:block; position:relative; border-radius:2px;
}
#elorNav .elor-burger__bar::before,
#elorNav .elor-burger__bar::after{
  content:""; position:absolute; left:0; width:26px; height:2px;
  background:var(--elor-gold2); border-radius:2px;
}
#elorNav .elor-burger__bar::before{ top:-7px; }
#elorNav .elor-burger__bar::after{ top:7px; }

/* show on mobile only */
@media (max-width:900px){
  #elorNav .elor-nav__inner{ height:var(--elor-nav-h-mobile); padding-inline:12px; }
  #elorNav .elor-brand__logo{ font-size:2.8rem; }
  #elorNav .elor-brand__sub{ font-size:1.16rem; }

  #elorNav .elor-menu--desktop{ display:none !important; }
  #elorNav .elor-burger{
    display:flex !important; width:44px; height:44px; align-items:center; justify-content:center;
    background:none !important; border:none !important; cursor:pointer; position:relative; z-index:2147483647;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
  }
  #elorNav .elor-burger--open{ display:flex !important; }
  #elorNav .elor-burger--close{ display:none !important; }

  #elorMenuPanel:target ~ #elorNav .elor-burger--open{ display:none !important; }
  #elorMenuPanel:target ~ #elorNav .elor-burger--close{ display:flex !important; }
}

/* Focus rings */
#elorNav .elor-subbtn:focus-visible,
#elorNav .elor-burger:focus-visible,
.elor-panel__link:focus-visible{
  outline:2px solid var(--elor-gold2); outline-offset:2px;
}

































/* ===== Morning Angel (scoped) ===== */
#morningAngel{
  --bg:#0f1210;
  --panel:rgba(17,20,18,.78);
  --ink:#f7f7f4;
  --muted:#cfcab4;
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --ring: rgba(227,198,111,.22);

  color:var(--ink);
  background: linear-gradient(180deg, rgba(15,18,16,0) 0%, rgba(15,18,16,.65) 26%, var(--bg) 100%);
  padding: clamp(28px, 5vw, 80px) 16px;
  font-family: 'Red Hat Display', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

#morningAngel .ma-wrap{
  width:min(1100px, 92vw);
  margin:0 auto;
  background:
    radial-gradient(1200px 140px at 12% 0%, rgba(227,198,111,.08), transparent 60%),
    radial-gradient(900px 130px at 88% 0%, rgba(179,135,46,.07), transparent 60%),
    var(--panel);
  border:1px solid rgba(179,135,46,.25);
  border-radius:18px;
  padding: clamp(22px, 3.4vw, 36px);
  box-shadow: 0 1px 0 rgba(255,255,255,.05) inset, 0 12px 34px rgba(0,0,0,.35);
  position:relative; overflow:hidden;
}

/* Top gold line */
#morningAngel .ma-wrap::before{
  content:"";
  position:absolute; left:20px; right:20px; top:0; height:2px;
  background: linear-gradient(90deg, var(--gold3), var(--gold2), var(--gold1), var(--gold2), var(--gold3));
  opacity:.75; border-radius:2px;
}

/* Header */
#morningAngel .ma-head{ text-align:center; margin-bottom: clamp(18px, 3vw, 28px); }
#morningAngel .ma-kicker{
  font-family: 'Fjalla One', sans-serif;
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--muted); font-size:.85rem; display:block; margin-bottom:.5rem;
}
#morningAngel .ma-title{
  font-family:'Fjalla One', sans-serif;
  font-size: clamp(30px, 5.2vw, 56px); line-height:1.05; margin:0;
}
#morningAngel .ma-logo{
  background: linear-gradient(180deg, var(--gold1), var(--gold2) 55%, var(--gold3) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter: drop-shadow(0 2px 6px rgba(227,198,111,.16));
}
#morningAngel .ma-year{
  font-size: clamp(14px, 1.7vw, 18px);
  color: var(--muted);
  margin-left: .6ch;
}
#morningAngel .ma-tagline{
  margin:.7rem auto 0;
  max-width: 60ch; line-height:1.6; color:var(--ink);
}

/* Posters: grid on desktop, swipe on mobile */
#morningAngel .ma-posters{
  display:grid; gap: clamp(12px, 2vw, 18px);
  grid-template-columns: repeat(3, 1fr);
  margin-top: clamp(16px, 3vw, 26px);
}

#morningAngel .ma-card{
  margin:0; background: rgba(255,255,255,.02);
  border:1px solid rgba(179,135,46,.25);
  border-radius:16px; overflow:hidden;
  box-shadow: 0 10px 22px rgba(0,0,0,.28);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
#morningAngel .ma-media{
  aspect-ratio: 3 / 4;
  overflow:hidden; position:relative;
}
#morningAngel .ma-media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition: transform .6s ease;
}

/* Hover effect (desktop) */
@media (hover:hover){
  #morningAngel .ma-card:hover{
    transform: translateY(-4px);
    border-color: var(--gold2);
    box-shadow: 0 0 0 6px var(--ring), 0 22px 48px rgba(0,0,0,.45);
  }
  #morningAngel .ma-card:hover .ma-media img{ transform: scale(1.05); }
}

#morningAngel .ma-label{
  text-align:center; padding:10px 12px;
  font-size:.92rem; color:var(--muted);
  border-top:1px solid rgba(179,135,46,.22);
}

/* Mobile: horizontal scroll-snap */
@media (max-width: 800px){
  #morningAngel .ma-posters{
    display:flex; gap:14px; overflow-x:auto; -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory; padding-bottom: 6px;
  }
  #morningAngel .ma-card{ min-width: 72%; scroll-snap-align:center; }
}

/* Swipe hint */
#morningAngel .ma-hint{
  display:none; margin:8px 4px 0 auto; font-size:.85rem; color:var(--muted);
}
@media (max-width: 800px){
  #morningAngel .ma-hint{ display:block; text-align:right; }
}

/* Storyline */
#morningAngel .ma-story{
  margin: clamp(18px, 3.2vw, 28px) auto 0;
  max-width: 70ch; text-align: center; line-height:1.75;
  color: var(--ink);
}
#morningAngel .ma-story em{ color: var(--gold2); font-style: normal; }

/* Actions */
#morningAngel .ma-actions{
  display:flex; gap:12px; justify-content:center; flex-wrap:wrap;
  margin-top: clamp(16px, 3vw, 28px);
}
#morningAngel .ma-btn{
  --pad-inline: 18px;
  display:inline-flex; align-items:center; justify-content:center;
  padding: 12px var(--pad-inline);
  border-radius:999px; text-decoration:none; cursor:pointer;
  font-weight:600; letter-spacing:.02em;
  border:1px solid var(--gold2);
  background: linear-gradient(180deg, var(--gold1), var(--gold2) 60%, var(--gold3));
  color:#2b2515;
  box-shadow: 0 8px 22px rgba(179,135,46,.25);
  transition: transform .2s ease, box-shadow .2s ease;
}
#morningAngel .ma-btn:hover{ transform: translateY(-2px); box-shadow: 0 12px 26px rgba(179,135,46,.35); }
#morningAngel .ma-btn:active{ transform: translateY(0); }

#morningAngel .ma-btn--ghost{
  background: transparent;
  color: var(--gold2);
  border-color: rgba(227,198,111,.6);
  box-shadow: none;
}
#morningAngel .ma-btn--ghost:hover{ box-shadow: 0 0 0 6px var(--ring); }

/* Small-screen adjustments */
@media (max-width: 600px){
  #morningAngel .ma-tagline{ max-width: 38ch; }
  #morningAngel .ma-story{ line-height:1.68; }
}






























/* ===== Falling in Love (scoped) ===== */
#fallingInLove{
  --bg:#0f1210;
  --panel:rgba(17,20,18,.8);
  --ink:#f7f7f4;
  --muted:#d6cfb5;
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --rose:#f2a6b3;                 /* playful musical accent */
  --ring: rgba(227,198,111,.22);

  color:var(--ink);
  background: linear-gradient(180deg, rgba(15,18,16,0) 0%, rgba(15,18,16,.65) 26%, var(--bg) 100%);
  padding: clamp(28px, 5vw, 80px) 16px;
  font-family: 'Red Hat Display', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

#fallingInLove .fil-wrap{
  width:min(1100px, 92vw);
  margin:0 auto;
  background:
    radial-gradient(1200px 140px at 12% 0%, rgba(242,166,179,.10), transparent 60%),
    radial-gradient(900px 130px at 88% 0%, rgba(179,135,46,.08), transparent 60%),
    var(--panel);
  border:1px solid rgba(179,135,46,.25);
  border-radius:18px;
  padding: clamp(22px, 3.4vw, 36px);
  box-shadow: 0 1px 0 rgba(255,255,255,.05) inset, 0 12px 34px rgba(0,0,0,.35);
  position:relative; overflow:hidden;
}

/* Top gold line with a tiny rose flash for musical vibe */
#fallingInLove .fil-wrap::before{
  content:"";
  position:absolute; left:20px; right:20px; top:0; height:2px;
  background: linear-gradient(90deg, var(--gold3), var(--gold2), var(--gold1), var(--rose), var(--gold2), var(--gold3));
  opacity:.8; border-radius:2px;
}

/* Header */
#fallingInLove .fil-head{ text-align:center; margin-bottom: clamp(18px, 3vw, 28px); }
#fallingInLove .fil-kicker{
  font-family: 'Fjalla One', sans-serif;
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--muted); font-size:.85rem; display:block; margin-bottom:.5rem;
}
#fallingInLove .fil-title{
  font-family:'Fjalla One', sans-serif;
  font-size: clamp(28px, 5.1vw, 54px); line-height:1.06; margin:0;
}
#fallingInLove .fil-logo{
  background: linear-gradient(180deg, var(--gold1), var(--gold2) 55%, var(--gold3) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter: drop-shadow(0 2px 6px rgba(227,198,111,.16));
}
#fallingInLove .fil-sub{
  margin-left:.35ch;
  background: linear-gradient(180deg, #fff, #ffe7ef 50%, var(--rose) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
#fallingInLove .fil-tagline{
  margin:.7rem auto 0;
  max-width: 60ch; line-height:1.6; color:var(--ink);
}

/* Posters: grid on desktop, swipe on mobile */
#fallingInLove .fil-posters{
  display:grid; gap: clamp(12px, 2vw, 18px);
  grid-template-columns: repeat(3, 1fr);
  margin-top: clamp(16px, 3vw, 26px);
}
#fallingInLove .fil-card{
  margin:0; background: rgba(255,255,255,.02);
  border:1px solid rgba(179,135,46,.25);
  border-radius:16px; overflow:hidden;
  box-shadow: 0 10px 22px rgba(0,0,0,.28);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
#fallingInLove .fil-media{
  aspect-ratio: 3 / 4;
  overflow:hidden; position:relative;
}
#fallingInLove .fil-media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition: transform .6s ease;
}

/* Hover effects (desktop) */
@media (hover:hover){
  #fallingInLove .fil-card:hover{
    transform: translateY(-4px);
    border-color: var(--gold2);
    box-shadow: 0 0 0 6px var(--ring), 0 22px 48px rgba(0,0,0,.45);
  }
  #fallingInLove .fil-card:hover .fil-media img{ transform: scale(1.05); }
}

#fallingInLove .fil-label{
  text-align:center; padding:10px 12px;
  font-size:.92rem; color:var(--muted);
  border-top:1px solid rgba(179,135,46,.22);
}

/* Mobile: horizontal scroll-snap */
@media (max-width: 800px){
  #fallingInLove .fil-posters{
    display:flex; gap:14px; overflow-x:auto; -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory; padding-bottom: 6px;
  }
  #fallingInLove .fil-card{ min-width: 72%; scroll-snap-align:center; }
}

/* Swipe hint */
#fallingInLove .fil-hint{
  display:none; margin:8px 4px 0 auto; font-size:.85rem; color:var(--muted);
}
@media (max-width: 800px){
  #fallingInLove .fil-hint{ display:block; text-align:right; }
}

/* Logline */
#fallingInLove .fil-story{
  margin: clamp(18px, 3.2vw, 28px) auto 0;
  max-width: 70ch; text-align: center; line-height:1.75;
  color: var(--ink);
}
#fallingInLove .fil-story em{ color: var(--rose); font-style: normal; }

/* Actions */
#fallingInLove .fil-actions{
  display:flex; gap:12px; justify-content:center; flex-wrap:wrap;
  margin-top: clamp(16px, 3vw, 28px);
}
#fallingInLove .fil-btn{
  --pad-inline: 18px;
  display:inline-flex; align-items:center; justify-content:center;
  padding: 12px var(--pad-inline);
  border-radius:999px; text-decoration:none; cursor:pointer;
  font-weight:600; letter-spacing:.02em;
  border:1px solid var(--gold2);
  background: linear-gradient(180deg, var(--gold1), var(--gold2) 60%, var(--gold3));
  color:#2b2515;
  box-shadow: 0 8px 22px rgba(179,135,46,.25);
  transition: transform .2s ease, box-shadow .2s ease;
}
#fallingInLove .fil-btn:hover{ transform: translateY(-2px); box-shadow: 0 12px 26px rgba(179,135,46,.35); }
#fallingInLove .fil-btn:active{ transform: translateY(0); }

#fallingInLove .fil-btn--ghost{
  background: transparent;
  color: var(--gold2);
  border-color: rgba(227,198,111,.6);
  box-shadow: none;
}
#fallingInLove .fil-btn--ghost:hover{ box-shadow: 0 0 0 6px var(--ring); }

/* Links: no underline inside this section */
#fallingInLove a{ text-decoration:none; }

/* Small-screen adjustments */
@media (max-width: 600px){
  #fallingInLove .fil-tagline{ max-width: 38ch; }
  #fallingInLove .fil-story{ line-height:1.68; }
}




/* ===== Founder & CEO (scoped) ===== */
#founder{
  --bg:#0f1210;
  --panel:rgba(17,20,18,.80);
  --ink:#f7f7f4;
  --muted:#d6cfb5;
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --ring: rgba(227,198,111,.22);

  color:var(--ink);
  background: linear-gradient(180deg, rgba(15,18,16,0) 0%, rgba(15,18,16,.65) 26%, var(--bg) 100%);
  padding: clamp(28px, 5vw, 80px) 16px;
  font-family:'Red Hat Display', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
#founder, #founder *{ box-sizing:border-box; }

/* Card */
#founder .fo-wrap{
  width:min(1100px, 92vw);
  margin:0 auto;
  background:
    radial-gradient(1200px 140px at 12% 0%, rgba(227,198,111,.08), transparent 60%),
    radial-gradient(900px 130px at 88% 0%, rgba(179,135,46,.07), transparent 60%),
    var(--panel);
  border:1px solid rgba(179,135,46,.25);
  border-radius:20px;
  padding: clamp(22px, 3.4vw, 36px);
  box-shadow: 0 1px 0 rgba(255,255,255,.05) inset, 0 12px 34px rgba(0,0,0,.35);
  position:relative; overflow:hidden;
}

/* Top gold line */
#founder .fo-wrap::before{
  content:"";
  position:absolute; left:20px; right:20px; top:0; height:2px;
  background: linear-gradient(90deg, var(--gold3), var(--gold2), var(--gold1), var(--gold2), var(--gold3));
  opacity:.8; border-radius:2px;
}

/* Desktop grid */
#founder .fo-grid{
  display:grid;
  grid-template-columns: 320px 1fr;
  gap: clamp(16px, 3vw, 28px);
  align-items:center;
  min-width:0;
}

/* Photo */
#founder .fo-photo{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(179,135,46,.28);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  background:#111;
}
#founder .fo-photo img{
  display:block; width:100%; height:auto; object-fit:cover;
  aspect-ratio: 4 / 5;
}

/* Content */
#founder .fo-content{ min-width:0; }
#founder .fo-kicker{
  font-family:'Fjalla One', sans-serif;
  text-transform:uppercase; letter-spacing:.16em;
  color:var(--muted); font-size:.86rem; display:inline-block; margin-bottom:.45rem;
}
#founder .fo-name{
  font-family:'Fjalla One', sans-serif;
  font-size: clamp(30px, 5.3vw, 58px); line-height:1.06; margin:0 0 .2rem 0;
}
#founder .fo-name-gold{
  background: linear-gradient(180deg, var(--gold1), var(--gold2) 55%, var(--gold3) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter: drop-shadow(0 2px 6px rgba(227,198,111,.16));
}

/* Bio */
#founder .fo-bio{
  font-size: clamp(15px, 1.08rem, 19px);
  line-height:1.75; color:var(--ink);
  max-width: 70ch; text-wrap: pretty;
  overflow-wrap:anywhere;
}
#founder .fo-bio em{ color:var(--gold2); font-style:normal; }
#founder .fo-bio a{
  color: var(--gold2); text-decoration:none; border-bottom:1px solid transparent;
}
#founder .fo-bio a:hover{ border-bottom-color: var(--gold2); }

/* Actions */
#founder .fo-actions{
  display:flex; gap:12px; flex-wrap:wrap; margin-top: clamp(14px, 2.2vw, 20px);
}
#founder .fo-btn{ --pad-inline: 18px; display:inline-flex; align-items:center; justify-content:center;
  padding: 12px var(--pad-inline); border-radius:999px; text-decoration:none; cursor:pointer;
  font-weight:600; letter-spacing:.02em; }
#founder .fo-btn--ghost{
  background: transparent; color: var(--gold2);
  border:1px solid rgba(227,198,111,.6); box-shadow:none;
  transition: transform .2s ease, box-shadow .2s ease;
}
#founder .fo-btn--ghost:hover{ transform: translateY(-2px); box-shadow: 0 0 0 6px var(--ring); }

/* ---------- iPhone: text starts beside pic, then flows UNDER it ---------- */
@media (max-width: 700px){
  #founder .fo-grid{ display:block; }
  #founder .fo-photo{
    float:left;
    width: 40vw; max-width: 170px; min-width: 110px;
    margin: 2px 14px 8px 0; border-radius:14px;
  }
  #founder .fo-photo img{ width:100%; height:auto; }
  #founder .fo-grid::after{ content:""; display:block; clear:both; }

  #founder .fo-name{ font-size: 26px; }
  #founder .fo-bio{ line-height:1.68; font-size:15px; }
  #founder .fo-actions{ clear: both; padding-top: 6px; }
}

/* Fallback if grid isn't supported */
@supports not (display: grid){
  #founder .fo-grid{ display:block; }
}

/* No underlines anywhere in this section */
#founder a{ text-decoration:none; }

/* =========================================================
   At a Glance — matches the Elora Clinic style, scoped safely
   ========================================================= */
.elor-glance{
  --ink:#f7f7f4;
  --muted:#d6cfb5;
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --panel:rgba(17,20,18,.80);
  --ring: rgba(227,198,111,.18);

  font-family:'Red Hat Display', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--ink);
  padding: clamp(28px, 5vw, 64px) 16px 72px;
}

.elor-glance__wrap{
  width:min(1100px, 92vw);
  margin:0 auto;
  background:
    radial-gradient(1200px 140px at 12% 0%, rgba(227,198,111,.07), transparent 60%),
    radial-gradient(900px 130px at 88% 0%, rgba(179,135,46,.06), transparent 60%),
    var(--panel);
  border:1px solid rgba(179,135,46,.25);
  border-radius:20px;
  padding: clamp(20px, 3.2vw, 32px);
  box-shadow: 0 1px 0 rgba(255,255,255,.05) inset, 0 12px 34px rgba(0,0,0,.35);
  position:relative;
}

.elor-glance__wrap::before{
  content:"";
  position:absolute; left:20px; right:20px; top:0; height:2px;
  background: linear-gradient(90deg, var(--gold3), var(--gold2), var(--gold1), var(--gold2), var(--gold3));
  opacity:.85; border-radius:2px;
}

.elor-glance__title{
  font-family:'Fjalla One', sans-serif;
  letter-spacing:.12em; text-transform:uppercase;
  margin: 6px 0 18px 0;
  font-size: clamp(18px, 2.2vw, 22px);
  color: var(--muted);
}

/* Grid-like definition list */
.elor-glance__grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin:0;
}

.elor-glance__row{
  display:grid;
  grid-template-columns: 190px 1fr;
  align-items:center;
  gap: 14px;
  padding: 12px 14px;
  border:1px solid rgba(179,135,46,.22);
  border-radius:14px;
  background: rgba(255,255,255,.02);
  box-shadow: 0 0 0 0 rgba(0,0,0,0);
  transition: box-shadow .2s ease, transform .2s ease;
}
.elor-glance__row:hover{
  box-shadow: 0 0 0 6px var(--ring);
  transform: translateY(-1px);
}

.elor-glance__row dt{
  font-weight:600;
  color: var(--gold2);
  text-transform: none;
  white-space: nowrap;
}
.elor-glance__row dd{
  margin:0;
  color: var(--ink);
  white-space: nowrap;          /* keep single-line on iPhone */
  overflow: hidden;
  text-overflow: ellipsis;
}

/* link style for companies */
.elor-glance__links a{
  color: var(--gold2);
  border-bottom:1px solid transparent;
}
.elor-glance__links a:hover{
  border-bottom-color: var(--gold2);
}
.elor-glance__links span{
  margin: 0 8px;
  color: var(--muted);
}

/* Mobile tuning */
@media (max-width: 700px){
  .elor-glance__row{
    grid-template-columns: 130px 1fr;
    padding: 10px 12px;
    gap: 10px;
  }
  .elor-glance__row dt{ font-size: 14px; }
  .elor-glance__row dd{ font-size: 14px; }
}














/* =======================
   eLOR Production — Marquee
   ======================= */
.elor-ticker{
  --bg:#111;          /* band background */
  --gold1:#fff6da;    /* soft gold */
  --gold2:#e3c66f;    /* mid gold */
  --gold3:#b3872e;    /* deep gold */
  --text:#e9e9e9;     /* light text */
  --speed: 28s;       /* adjust scroll speed */
  width:100%;
  background:var(--bg);
  border-block:1px solid var(--gold2);
  overflow:hidden;
  position:relative;
  /* subtle edge fade */
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 48px, #000 calc(100% - 48px), transparent 100%);
          mask-image: linear-gradient(to right, transparent 0, #000 48px, #000 calc(100% - 48px), transparent 100%);
}

.elor-ticker__inner{
  display:flex;
  width:max-content;
  animation: elor-scroll var(--speed) linear infinite;
}

.elor-ticker:hover .elor-ticker__inner{
  animation-play-state: paused; /* let people read */
}

@keyframes elor-scroll{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); } /* because we duplicated content */
}

.elor-ticker__group{
  display:flex;
  align-items:center;
  gap:18px;
  padding:14px 32px;
  font-family:'Red Hat Display', system-ui, Arial, sans-serif;
  white-space:nowrap;
}

.elor-ticker__label{
  font-family:'Fjalla One', Impact, sans-serif;
  font-size:0.9rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  padding:4px 10px;
  border:1px solid var(--gold3);
  color:var(--gold1);
  background:linear-gradient(180deg, rgba(179,135,46,0.18), rgba(227,198,111,0.06));
  border-radius:999px;
}

.elor-ticker__item{
  color:var(--text);
  font-size:1rem;
  line-height:1;
}

.elor-ticker__dot{
  color:var(--gold2);
  font-weight:600;
  opacity:0.9;
}

/* Gold accent on key phrases */
.elor-ticker__item:nth-child(2),
.elor-ticker__item:nth-child(6){
  color:var(--gold1);
  font-weight:600;
}

/* Mobile tweaks */
@media (max-width: 768px){
  .elor-ticker__group{ padding:12px 20px; gap:14px; }
  .elor-ticker__label{ font-size:0.8rem; padding:3px 9px; }
  .elor-ticker__item{ font-size:0.95rem; }
}

/* Accessibility: reduce motion */
@media (prefers-reduced-motion: reduce){
  .elor-ticker__inner{ animation: none; }
}













/* Horizontal Stills Section */
.stills-scroll {
  background: #111;
  padding: 50px 20px;
  text-align: center;
}

.stills-title {
  font-family: 'Fjalla One', sans-serif;
  font-size: 2rem;
  color: #e3c66f;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.stills-container {
  display: flex;
  gap: 15px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 10px;
}

.stills-container img {
  flex: 0 0 auto;
  height: 260px; /* keeps them even size */
  border-radius: 10px;
  scroll-snap-align: start;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.stills-container img:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 18px rgba(227, 198, 111, 0.4);
}

.scroll-hint {
  margin-top: 15px;
  font-size: 0.9rem;
  color: #e3c66f;
  font-family: 'Red Hat Display', sans-serif;
  opacity: 0.8;
}

/* Hide scrollbar but keep scrolling */
.stills-container::-webkit-scrollbar {
  display: none;
}
.stills-container {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Mobile tweaks */
@media (max-width: 480px) {
  .stills-container img {
    height: 200px;
  }
}
















.elor-footer {
  background: #111;
  color: #fff6da;
  padding: 40px 20px;
  text-align: center;
  font-family: 'Fjalla One', sans-serif;
  border-top: 1px solid #e3c66f;
}

.elor-footer .footer-logo {
  font-size: 1.8rem;
  margin-bottom: 8px;
  color: #e3c66f;
  letter-spacing: 1px;
}

.elor-footer .footer-tagline {
  font-family: 'Red Hat Display', sans-serif;
  font-size: 0.95rem;
  color: #ccc;
  margin-bottom: 20px;
}

.elor-footer .footer-social a {
  color: #e3c66f;
  text-decoration: none;
  margin: 0 8px;
  transition: color 0.3s ease;
}

.elor-footer .footer-social a:hover {
  color: #fff6da;
}

.elor-footer .instagram-icon {
  width: 28px;
  height: 28px;
}

.elor-footer .footer-bottom {
  margin-top: 25px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.elor-footer .footer-copy {
  font-size: 0.85rem;
  color: #777;
  margin: 0;
}

.elor-footer .footer-terms {
  font-size: 0.85rem;
  font-family: 'Red Hat Display', sans-serif;
  color: #e3c66f;
  text-decoration: none;
  transition: color 0.3s ease;
}

.elor-footer .footer-terms:hover {
  color: #fff6da;
}

/* Responsive: stack properly */
@media (min-width: 600px) {
  .elor-footer .footer-bottom {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
  }
}










/* ===== ABOUT SECTION WITH ROUNDED VIDEO BACKGROUND ===== */
#elor-about-video{
  position: relative;
  min-height: 80vh;
  display: grid;
  place-items: center;
  overflow: hidden;
  isolation: isolate;
  text-align: center;
  border-radius: 20px;          /* Rounded corners */
  margin: 40px auto;            /* space from other sections */
}

/* Background video */
#elor-about-video .about-bg-video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
  border-radius: 20px;          /* Match section rounding */
}

/* Overlay */
#elor-about-video .about-overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.25);
  z-index: -1;
  border-radius: 20px;          /* Match section rounding */
}

/* Text container */
#elor-about-video .about-inner{
  max-width: 780px;
  padding: 20px;
  color: #fff6da;
}

/* Headings */
#elor-about-video .about-kicker{
  display: block;
  font-family: 'Red Hat Display', sans-serif;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #e3c66f;
  margin-bottom: 6px;
  text-shadow: 0 2px 6px rgba(0,0,0,0.8);
}

#elor-about-video .about-title{
  font-family: 'Fjalla One', sans-serif;
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  color: #e3c66f;
  margin: 0 0 12px 0;
  letter-spacing: 0.5px;
  text-shadow: 0 3px 10px rgba(0,0,0,0.8);
}

/* Paragraphs */
#elor-about-video .about-body{
  font-family: 'Red Hat Display', sans-serif;
  font-size: clamp(0.9rem, 1.5vw, 1rem);
  line-height: 1.6;
  color: #f0eacd;
  margin: 0 0 12px 0;
  text-shadow: 0 2px 8px rgba(0,0,0,0.85);
}

/* Decorative gold edge */
#elor-about-video .about-edge{
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, #e3c66f, transparent);
  opacity: 0.7;
  border-radius: 0 0 20px 20px;  /* gold edge matches rounding */
}

/* Responsive */
@media (max-width: 768px){
  #elor-about-video{
    min-height: 70vh;
    padding: 0 12px;
  }
  #elor-about-video .about-body{
    font-size: 0.85rem;
  }
}














/* MORNING ANGEL — VIDEO HERO with rounded corners */
#morningAngelHero {
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --ink:#ecebe7; --muted:#c9c6bf;
  position:relative;
  min-height:92vh;
  display:grid; place-items:center;
  font-family:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:#0c0c0b;
  overflow:hidden;
  border-radius:20px;          /* round the entire section */
}

/* Background video */
#morningAngelHero .ma-video {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  z-index:0;
  background:#0c0c0b;
  border-radius:20px;          /* rounded corners on video */
}

/* Overlay for cinematic fade */
#morningAngelHero .ma-overlay {
  position:absolute; inset:0; z-index:1;
  border-radius:20px;          /* match video corners */
  background:
    linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.65) 100%),
    radial-gradient(90% 70% at 50% 50%, rgba(227,198,111,.10), transparent 70%);
}

/* Content */
#morningAngelHero .ma-wrap {
  position:relative; z-index:2;
  text-align:center;
  padding:clamp(56px,8vw,120px) clamp(18px,5vw,28px);
  max-width:980px;
}

#morningAngelHero .ma-kicker {
  display:inline-block; letter-spacing:.2em;
  text-transform:uppercase; font-size:.78rem;
  color:var(--muted); opacity:.95;
  margin-bottom:10px;
}

#morningAngelHero .ma-title {
  font-family:"Fjalla One",sans-serif;
  font-size:clamp(40px,6.5vw,92px);
  margin:8px 0 14px;
  background:linear-gradient(180deg,var(--gold1),var(--gold2) 52%,var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 6px 30px rgba(179,135,46,.22);
}

#morningAngelHero .ma-deck {
  font-size:clamp(17px,2.4vw,21px);
  line-height:1.6; max-width:780px;
  margin:0 auto 18px;
}

#morningAngelHero .ma-btn {
  display:inline-block; padding:12px 20px;
  border-radius:999px; border:1px solid var(--gold3);
  background:linear-gradient(180deg,var(--gold1),var(--gold2));
  color:#191916; font-weight:600; text-decoration:none;
  box-shadow:0 8px 24px rgba(227,198,111,.20), inset 0 0 0 1px rgba(255,255,255,.15);
}

#morningAngelHero .ma-status {
  margin-top:12px; color:var(--muted);
  font-size:.92rem; display:flex; gap:10px; justify-content:center; flex-wrap:wrap;
}









/* MORNING ANGEL — CAST Horizontal (v3 full-bleed desktop) */
#maCastHS.ma-castHS{
  --bg:#0f1210;
  --panel:#161a17;
  --line:#262c27;
  --ink:#e9ede6;
  --muted:#aab3a8;
  --gold1:#fff6da;
  --gold2:#e3c66f;
  --gold3:#b3872e;
  --ring:linear-gradient(135deg,var(--gold1),var(--gold2) 40%,var(--gold3));
  --radius:22px;
  --shadow:0 10px 30px rgba(0,0,0,.35);

  color:var(--ink);
  background:var(--bg);

  /* Full-bleed feel: zero side padding; keep vertical breathing */
  padding:clamp(20px,3.5vw,44px) 0;
  border-top:1px solid var(--line);
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

/* Header (kept neatly padded so text doesn't touch edges) */
#maCastHS .ma-hs__head{
  padding:0 clamp(16px,4vw,48px);
  margin:0 0 10px;
}
#maCastHS .ma-hs__eyebrow{
  display:inline-block; letter-spacing:.16em; text-transform:uppercase;
  font-size:.78rem; color:var(--gold2);
}
#maCastHS .ma-hs__title{
  font-family:"Fjalla One", sans-serif;
  font-size:clamp(26px,4.2vw,40px);
  line-height:1.2; margin:.35rem 0 0;
  background:linear-gradient(180deg,var(--gold1),var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
#maCastHS .ma-hs__hint{
  font-size:.85rem; color:var(--muted);
  margin-top:.35rem;
}

/* Full-bleed horizontal rail */
#maCastHS .ma-hs__rail{
  --gap:16px;
  display:flex; gap:var(--gap);
  overflow-x:auto; overflow-y:visible;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;

  /* Edge-to-edge, but add a little inner padding so first/last cards breathe */
  padding:12px clamp(16px,3.5vw,40px) 18px;
  /* Remove any width cap so it spans the whole screen */
  width:100%;
  max-width:none;

  /* Hide scrollbars and add soft edge fade */
  scrollbar-width:none;
  mask-image: linear-gradient(90deg, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
}
#maCastHS .ma-hs__rail::-webkit-scrollbar{ display:none; }

/* Cards — larger on desktop, still comfy on iPhone */
#maCastHS .ma-card{
  flex:0 0 auto;
  width: clamp(260px, 24vw, 360px);
  scroll-snap-align:start;
}
#maCastHS .ma-card__frame{
  display:flex; flex-direction:column;
  background:linear-gradient(var(--panel),var(--panel)) padding-box, var(--ring) border-box;
  border:1px solid transparent; border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
  height:100%;
}
#maCastHS .ma-card__frame:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(0,0,0,.45);
}

/* Portrait */
#maCastHS .ma-card__photo{
  aspect-ratio:3/4; background:#0b0d0c; overflow:hidden;
}
#maCastHS .ma-card__photo img{
  width:100%; height:100%; object-fit:cover; display:block;
  filter:saturate(1.02) contrast(1.03);
  transform:scale(1.02); transition:transform .35s ease;
}
#maCastHS .ma-card__frame:hover .ma-card__photo img{ transform:scale(1.06); }

/* Info */
#maCastHS .ma-card__info{ padding:14px 14px 16px; }
#maCastHS .ma-card__name{
  font-family:"Fjalla One", sans-serif;
  font-size:clamp(18px,2.6vw,22px);
  margin:0 0 4px; letter-spacing:.02em;
}
#maCastHS .ma-card__role{ margin:0 0 12px; color:var(--muted); }
#maCastHS .ma-card__role span{ color:var(--gold2); font-weight:600; }

/* Button */
#maCastHS .ma-btn{
  --padY:.56rem; --padX:1rem;
  display:inline-flex; align-items:center; justify-content:center;
  padding:var(--padY) var(--padX);
  border-radius:999px; text-decoration:none; white-space:nowrap;
  font-weight:600; font-size:.95rem;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
#maCastHS .ma-btn--imdb{
  background:linear-gradient(135deg,var(--gold2),var(--gold3));
  color:#16130a; box-shadow:0 6px 16px rgba(179,135,46,.35);
}
#maCastHS .ma-btn--imdb::before{ content:"★"; margin-right:.55rem; line-height:1; }
#maCastHS .ma-btn--imdb:hover{ transform:translateY(-1px); box-shadow:0 10px 22px rgba(179,135,46,.45); }

/* Phone tweaks (keep what you liked) */
@media (max-width:699.98px){
  #maCastHS .ma-card{ width:min(78vw, 340px); }
}

/* Extra breathing on very large screens */
@media (min-width:1400px){
  #maCastHS .ma-hs__rail{ --gap:20px; padding-inline:56px; }
  #maCastHS .ma-card{ width: clamp(300px, 22vw, 400px); }
}

/* So anchor links don't hide under sticky headers elsewhere */
#maCastHS.ma-castHS{ scroll-margin-top:80px; }


































/* MORNING ANGEL — POSTERS (v1) */
#maPosters.ma-posters{
  --bg:#0f1210;
  --panel:#161a17;
  --line:#262c27;
  --ink:#e9ede6;
  --muted:#aab3a8;
  --gold1:#fff6da;
  --gold2:#e3c66f;
  --gold3:#b3872e;
  --ring:linear-gradient(135deg,var(--gold1),var(--gold2) 40%,var(--gold3));
  --radius:22px;
  --shadow:0 12px 36px rgba(0,0,0,.35);

  background:var(--bg);
  color:var(--ink);
  padding:clamp(22px,4.5vw,52px) 0;      /* full-bleed look */
  border-top:1px solid var(--line);
  font-family:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  scroll-margin-top:80px; /* in case of anchor jump */
}

/* Header */
#maPosters .ma-p__head{
  display:flex; align-items:end; justify-content:space-between;
  gap:16px; padding:0 clamp(16px,4vw,48px);
  margin:0 0 14px;
}
#maPosters .ma-p__kicker{
  display:inline-block; letter-spacing:.16em; text-transform:uppercase;
  color:var(--gold2); font-size:.78rem;
}
#maPosters .ma-p__title{
  font-family:"Fjalla One",sans-serif;
  font-size:clamp(26px,4.2vw,40px); line-height:1.2; margin:.3rem 0 0;
  background:linear-gradient(180deg,var(--gold1),var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* Trailer button */
#maPosters .ma-btn{
  --padY:.66rem; --padX:1.15rem;
  display:inline-flex; align-items:center; justify-content:center;
  padding:var(--padY) var(--padX);
  border-radius:999px; text-decoration:none; white-space:nowrap;
  font-weight:700; font-size:.98rem; transition:transform .2s, box-shadow .2s;
}
#maPosters .ma-btn--trailer{
  background:linear-gradient(135deg,var(--gold2),var(--gold3));
  color:#16130a; box-shadow:0 8px 20px rgba(179,135,46,.35);
}
#maPosters .ma-btn--trailer::before{
  content:"▶"; margin-right:.55rem; font-size:.9em; line-height:1;
}
#maPosters .ma-btn--trailer:hover{ transform:translateY(-1px); box-shadow:0 12px 26px rgba(179,135,46,.45); }

/* Rail (mobile: horizontal swipe) */
#maPosters .ma-p__rail{
  --gap:16px;
  display:flex; gap:var(--gap);
  overflow-x:auto; overflow-y:visible;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  padding:10px clamp(16px,3.5vw,40px) 4px; /* edge breathing */
  width:100%;
  mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);
  scrollbar-width:none;
}
#maPosters .ma-p__rail::-webkit-scrollbar{ display:none; }

/* Poster card */
#maPosters .ma-poster{ flex:0 0 auto; width:min(78vw,340px); scroll-snap-align:start; text-align:center; }
#maPosters .ma-poster__frame{
  background:linear-gradient(var(--panel),var(--panel)) padding-box, var(--ring) border-box;
  border:1px solid transparent; border-radius:var(--radius);
  box-shadow:var(--shadow); overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}
#maPosters .ma-poster__frame:hover{ transform:translateY(-2px); box-shadow:0 18px 40px rgba(0,0,0,.45); }
#maPosters .ma-poster__frame img{
  display:block; width:100%; height:auto; aspect-ratio:2/3; object-fit:cover;
  transform:scale(1.02); filter:saturate(1.02) contrast(1.03);
  transition:transform .35s ease;
}
#maPosters .ma-poster__frame:hover img{ transform:scale(1.06); }

#maPosters .ma-poster__label{
  color:var(--muted);
  font-size:.95rem;
  margin:.6rem 0 0;
}

/* Hint (mobile only) */
#maPosters .ma-p__hint{
  display:block; text-align:center; color:var(--muted);
  font-size:.9rem; margin:10px 0 0;
}

/* Desktop / large screens: 3 across, no scroll */
@media (min-width:900px){
  #maPosters .ma-p__hint{ display:none; }
  #maPosters .ma-p__rail{
    display:grid; grid-template-columns:repeat(3, 1fr);
    gap:20px; overflow:visible; padding-inline:clamp(24px,4vw,56px);
    mask-image:none;
  }
  #maPosters .ma-poster{ width:100%; }
}

/* Very large screens */
@media (min-width:1400px){
  #maPosters .ma-p__rail{ gap:28px; padding-inline:64px; }
}










/* ====== FALLING IN LOVE — INTRO HERO ====== */
#filIntro{
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --ink:#f4f4f4; --ink-dim:#d9d9d9;
  --shadow:0 12px 48px rgba(0,0,0,.55);
  position:relative; isolation:isolate;
  min-height:min(88vh,900px);
  display:grid; place-items:center; overflow:hidden;

  /* stretch full width even inside narrow WP page templates */
  width:100vw !important; margin-left:50%; transform:translateX(-50%);
  background:#000; /* hard fallback if video fails */
}

#filIntro .fil-hero__video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center;
  pointer-events:none; z-index:0;

  /* slightly brighter video but still subdued under text */
  filter:brightness(.50) contrast(1.05) saturate(1.1);
  -webkit-transform:translateZ(0); transform:translateZ(0);
  background:#000;
}

#filIntro .fil-hero__scrim{
  position:absolute; inset:0; z-index:1;
  /* stronger opacity for better readability */
  background:
    radial-gradient(120% 120% at 70% 30%, rgba(0,0,0,.25) 0%, rgba(0,0,0,.70) 55%, rgba(0,0,0,.88) 100%),
    linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.75) 70%, rgba(0,0,0,.92) 100%);
  mix-blend-mode:multiply;
}

#filIntro .fil-hero__inner{
  position:relative; z-index:2; filter:drop-shadow(var(--shadow));
  max-width:1100px; width:min(92vw,1100px);
  padding:clamp(18px,4vw,48px); text-align:center; color:var(--ink);
  text-shadow:0 2px 10px rgba(0,0,0,.45); /* extra legibility */
}

#filIntro .fil-hero__kicker{
  display:inline-block; letter-spacing:.12em; text-transform:uppercase;
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size:clamp(11px,1.6vw,13px); line-height:1.2; margin-bottom:clamp(8px,1.2vw,12px);
  background:linear-gradient(90deg,var(--gold1),var(--gold2),var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent; white-space:nowrap;
}

#filIntro .fil-hero__title{
  font-family:"Fjalla One", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size:clamp(32px,6.4vw,78px);
  line-height:1.05; margin:0 0 clamp(10px,1.5vw,18px);
  background:linear-gradient(180deg,var(--gold1),var(--gold2) 55%,var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
#filIntro .fil-hero__title .fil-break{ display:block; } /* force line break */

#filIntro .fil-hero__desc{
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size:clamp(15px,2.1vw,19px); line-height:1.75; color:var(--ink);
  max-width:850px; margin:0 auto clamp(16px,3vw,26px);
}

#filIntro .fil-hero__rule{
  width:min(240px,44%); height:1px; border:0; margin:clamp(12px,2.2vw,20px) auto;
  background:linear-gradient(90deg, transparent, var(--gold2), transparent);
  opacity:.95;
}

#filIntro .fil-label{
  display:inline-block; margin-right:.55em; letter-spacing:.14em; text-transform:uppercase;
  font-size:.76em; opacity:.95;
  background:linear-gradient(90deg,var(--gold1),var(--gold2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

#filIntro .fil-hero__starring,
#filIntro .fil-hero__directed{
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size:clamp(13px,1.8vw,16px); line-height:1.55; color:var(--ink-dim);
  margin:.4rem 0;
}

#filIntro .fil-hero__actions{
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap;
  margin-top:clamp(14px,2.2vw,22px);
}

/* Gold pill button */
#filIntro .fil-btn{
  --padY:12px; --padX:20px;
  display:inline-flex; align-items:center; justify-content:center;
  padding:var(--padY) var(--padX); border-radius:999px;
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-weight:600; font-size:clamp(13px,1.8vw,15px);
  text-decoration:none !important; letter-spacing:.03em;
  transition:transform .2s ease, filter .2s ease;
}

#filIntro .fil-btn--gold{
  color:#1a1200;
  background:linear-gradient(180deg,var(--gold1),var(--gold2) 60%,var(--gold3));
  border:1px solid rgba(179,135,46,.55);
  box-shadow:0 6px 18px rgba(179,135,46,.35), inset 0 1px 0 rgba(255,255,255,.5);
}

#filIntro .fil-btn--gold:hover{ transform:translateY(-1px); filter:brightness(1.04); }
#filIntro .fil-btn--gold:active{ transform:translateY(0); filter:brightness(.98); }

@media (max-width:480px){
  #filIntro{ min-height:80vh; }
  #filIntro .fil-hero__desc{ line-height:1.65; }
}

/* Guard against theme overrides */
#filIntro a{text-decoration:none;}
#filIntro *{ box-sizing:border-box; }






















/* ====== FALLING IN LOVE — POSTERS (Morning Angel style) ====== */
#filPosters{
  --bg:#0f1512;           /* deep green-black like Morning Angel */
  --ink:#f3f3f3;
  --muted:#cfcfcf;
  --gold1:#fff6da; --gold2:#e3c66f; --gold3:#b3872e;
  --ring:rgba(227,198,111,.6);
  background:var(--bg); color:var(--ink);
  padding:clamp(28px,5vw,56px) 0;
  width:100vw !important; margin-left:50%; transform:translateX(-50%);
}
#filPosters *{ box-sizing:border-box; }
#filPosters a{ text-decoration:none; color:inherit; }

/* Header */
#filPosters .fp-head{ margin:0 0 clamp(16px,3vw,28px); }
#filPosters .fp-head__inner{
  width:min(92vw,1100px); margin:0 auto;
  display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
#filPosters .fp-kicker{
  display:block; font:600 12px/1.1 "Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  letter-spacing:.14em; text-transform:uppercase; opacity:.85;
  background:linear-gradient(90deg,var(--gold1),var(--gold2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  margin-bottom:6px;
}
#filPosters .fp-title{
  font-family:"Fjalla One",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:clamp(26px,4.8vw,44px); line-height:1.1; margin:0;
  background:linear-gradient(180deg,var(--gold1),var(--gold2) 55%,var(--gold3));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* CTA button */
#filPosters .fp-btn{
  --padY:12px; --padX:20px;
  display:inline-flex; align-items:center; justify-content:center;
  padding:var(--padY) var(--padX);
  border-radius:999px; font-weight:600;
  font-family:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  letter-spacing:.03em; font-size:clamp(13px,1.8vw,15px);
  border:1px solid rgba(179,135,46,.55);
  color:#1a1200; transition:transform .2s ease, filter .2s ease;
}
#filPosters .fp-btn--gold{
  background:linear-gradient(180deg,var(--gold1),var(--gold2) 60%,var(--gold3));
  box-shadow:0 6px 18px rgba(179,135,46,.35), inset 0 1px 0 rgba(255,255,255,.5);
}
#filPosters .fp-btn--gold:hover{ transform:translateY(-1px); filter:brightness(1.04); }
#filPosters .fp-btn--gold:active{ transform:translateY(0); filter:brightness(.98); }

/* Mobile swipe hint */
#filPosters .fp-hint{
  display:block; text-align:right; opacity:.8; font-size:12px;
  font-family:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  width:min(92vw,1100px); margin:8px auto 6px; padding:0 8px;
}
@media (min-width: 881px){ #filPosters .fp-hint{ display:none; } }

/* Track layout: grid on desktop, carousel on mobile */
#filPosters .fp-track{
  width:min(92vw,1100px); margin:0 auto;
  display:grid; gap:clamp(16px,2.2vw,24px);
  grid-template-columns:repeat(3,1fr);
}
@media (max-width:880px){
  #filPosters .fp-track{
    display:flex; gap:12px; overflow-x:auto; -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory; padding:6px 8px 12px;
  }
}

/* Poster card with gold rounded frame */
#filPosters .fp-card{
  background:linear-gradient(180deg,#131a16,#0f1512);
  border-radius:22px; position:relative; overflow:hidden;
  box-shadow:0 12px 36px rgba(0,0,0,.45);
  scroll-snap-align:center; min-width:68vw; /* mobile width */
  padding:14px 14px 18px; display:flex; flex-direction:column; align-items:center;
  border:1px solid rgba(255,255,255,.05);
  outline:1.5px solid var(--ring); outline-offset:-8px; /* gold ring like Morning Angel */
}
@media (min-width:481px){ #filPosters .fp-card{ min-width:unset; } }

#filPosters .fp-card img{
  width:100%; aspect-ratio:2/3; object-fit:cover; display:block;
  border-radius:18px; background:#000;
  box-shadow:0 14px 30px rgba(0,0,0,.35);
  transition:transform .45s ease, filter .45s ease;
}
#filPosters .fp-card:hover img{ transform:translateY(-2px) scale(1.02); filter:contrast(1.05) saturate(1.05); }

/* Caption BELOW image */
#filPosters .fp-cap{
  width:100%; text-align:center; margin-top:10px;
  font:500 13px/1.4 "Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:var(--muted);
}

/* Lightbox (CSS :target) */
#filPosters .fp-lightbox{
  position:fixed; inset:0; background:rgba(0,0,0,.9); opacity:0; pointer-events:none;
  display:flex; align-items:center; justify-content:center; padding:clamp(10px,4vw,40px);
  transition:opacity .25s ease; z-index:9999;
}
#filPosters .fp-lightbox:target{ opacity:1; pointer-events:auto; }
#filPosters .fp-lightbox img{
  max-width:min(92vw,1100px); max-height:90vh; display:block; border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.6);
  border:1px solid var(--ring);
}
#filPosters .fp-lightbox__close{
  position:absolute; top:10px; right:16px; font-size:32px; line-height:1;
  color:#fff; opacity:.9;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
#filPosters .fp-lightbox__close:hover{ opacity:1; }
















/* eLOR Production — Terms & Conditions (v1)
   Scoped to #elorTerms to avoid theme collisions */
#elorTerms{
  --bg:#0E0F10;
  --panel:#141618;
  --ink:#EDEDED;
  --muted:#C9C9C9;
  --gold1:#fff6da;
  --gold2:#e3c66f;
  --gold3:#b3872e;
  --accent:linear-gradient(90deg,var(--gold1),var(--gold2),var(--gold3));
  --ring:rgba(227,198,111,0.25);
  background:var(--bg);
  font-family:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
  color:var(--ink);
  padding:clamp(28px,4vw,56px) 18px;
}

#elorTerms .elor-terms__wrap{
  max-width:min(1000px,92vw);
  margin:0 auto;
  background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0)) , var(--panel);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:22px;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.05) inset,
    0 10px 30px rgba(0,0,0,0.35);
  padding:clamp(22px,3.5vw,44px);
}

#elorTerms .elor-terms__header{
  text-align:center;
  margin-bottom:clamp(18px,2.5vw,28px);
}

#elorTerms .elor-terms__kicker{
  display:inline-block;
  font-family:"Fjalla One",sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.8rem;
  background:var(--accent);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

#elorTerms .elor-terms__title{
  margin:.25em 0 .15em;
  font-family:"Fjalla One",sans-serif;
  font-weight:400;
  font-size:clamp(1.6rem,3.6vw,2.4rem);
  line-height:1.15;
  background:var(--accent);
  -webkit-background-clip:text; background-clip:text;
  color:transparent;
  text-shadow:0 0 18px rgba(227,198,111,0.15);
}

#elorTerms .elor-terms__updated{
  color:var(--muted);
  font-size:.95rem;
  margin:0;
}

#elorTerms .elor-terms__intro{
  margin:1.25rem 0 1.5rem;
  color:var(--ink);
  font-size:1.05rem;
  line-height:1.7;
}

/* Body text */
#elorTerms .elor-terms__body{
  counter-reset: section;
}

#elorTerms h2{
  font-family:"Fjalla One",sans-serif;
  font-weight:400;
  font-size:clamp(1.1rem,2.2vw,1.35rem);
  margin:2rem 0 .6rem;
  position:relative;
  padding-top:.2rem;
  line-height:1.3;
  color:#f3e9c3;
  letter-spacing:.02em;
}

#elorTerms h2::after{
  content:"";
  display:block;
  height:2px;
  width:72px;
  margin:.5rem 0 0;
  background:var(--accent);
  border-radius:2px;
  box-shadow:0 0 12px rgba(227,198,111,0.4);
}

#elorTerms p{
  color:var(--ink);
  line-height:1.75;
  margin:.6rem 0 1rem;
}

#elorTerms ul{
  margin:.4rem 0 1.1rem 1.2rem;
  padding:0;
  list-style:none;
}

#elorTerms ul li{
  position:relative;
  padding-left:1.15rem;
  margin:.4rem 0;
  color:var(--ink);
}

#elorTerms ul li::before{
  content:"";
  position:absolute; left:0; top:.62em;
  width:8px; height:8px;
  border-radius:50%;
  background:var(--gold2);
  box-shadow:0 0 0 3px rgba(227,198,111,0.17);
}

#elorTerms strong{ color:#f8e7b6; font-weight:600; }

/* Links */
#elorTerms a.elor-terms__link{
  color:#f6e7b8;
  text-decoration:none;
  border-bottom:1px solid rgba(227,198,111,0.4);
  transition:all .2s ease;
}
#elorTerms a.elor-terms__link:hover{
  filter:brightness(1.1);
  text-shadow:0 0 10px rgba(227,198,111,0.25);
}

/* Nice focus outlines */
#elorTerms a:focus, #elorTerms button:focus, #elorTerms summary:focus{
  outline:2px solid var(--gold2);
  outline-offset:2px;
  box-shadow:0 0 0 6px var(--ring);
  border-radius:6px;
}

/* Print styles */
@media print{
  #elorTerms{ background:white; color:#000; padding:0 }
  #elorTerms .elor-terms__wrap{
    box-shadow:none; border:none; background:white; color:#000; padding:0
  }
  #elorTerms .elor-terms__title,
  #elorTerms h2{ color:#000; background:none; -webkit-background-clip:initial; text-shadow:none }
  #elorTerms a.elor-terms__link{ color:#000; border-bottom:1px solid #000 }
}














/* eLOR Production • Founder Page Styles */
:root {
  --elor-gold: #B2B27A;
  --elor-dark: #0e0e0e;
  --elor-mid: #2a2a2a;
  --elor-text: #e8e8e8;
  --elor-soft: #bfbfbf;
  --elor-radius: 22px;
  --elor-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.elor-founder {
  background: linear-gradient(180deg, #0b0b0b, #141414);
  color: var(--elor-text);
  font-family: "Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height: 1.65;
}

/* Edge-to-edge trick so content reaches viewport edges inside WP containers */
.elor-founder--edge-to-edge {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.elor-founder__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 56px 20px 72px;
}

.elor-founder__header {
  text-align: center;
  margin-bottom: 34px;
}

.elor-founder__kicker {
  display: inline-block;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  color: var(--elor-gold);
  border: 1px solid color-mix(in srgb, var(--elor-gold) 60%, transparent);
  padding: 6px 10px;
  border-radius: 999px;
}

.elor-founder__title {
  font-family: "Fjalla One", sans-serif;
  font-size: clamp(36px, 5.2vw, 64px);
  line-height: 1.05;
  margin: 12px 0 10px;
  color: #fff;
  letter-spacing: .02em;
  text-transform: none; /* keep "Elora Ellis" case exactly */
}

.elor-founder__links {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 10px;
}

.elor-btn {
  --padX: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px var(--padX);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--elor-gold), color-mix(in srgb, var(--elor-gold) 85%, #fff 15%));
  color: #121212;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid color-mix(in srgb, var(--elor-gold) 70%, #000 30%);
  box-shadow: 0 6px 18px rgba(178,178,122,.3), inset 0 1px 0 rgba(255,255,255,.24);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  white-space: nowrap;
}
.elor-btn:hover { transform: translateY(-1px); box-shadow: 0 10px 28px rgba(178,178,122,.28); }
.elor-btn:active { transform: translateY(0); }

.elor-btn--ghost {
  background: transparent;
  color: var(--elor-gold);
  border: 1px solid var(--elor-gold);
  box-shadow: none;
}
.elor-btn--ghost:hover {
  background: color-mix(in srgb, var(--elor-gold) 12%, transparent);
}

/* Layout */
.elor-founder__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 26px;
  align-items: start;
}

.elor-founder__figure {
  margin: 0;
}

.elor-founder__img {
  width: 100%;
  height: auto;
  border-radius: var(--elor-radius);
  box-shadow: var(--elor-shadow);
  display: block;
  object-fit: cover;
}

/* Pull-quote */
.elor-founder__quote {
  margin: 18px 0 6px;
  padding: 14px 16px 14px 18px;
  border-left: 3px solid var(--elor-gold);
  background: linear-gradient(180deg, rgba(178,178,122,.08), rgba(178,178,122,.03));
  border-radius: 8px;
  font-style: italic;
  color: #f3f3f3;
}

/* Desktop / large screens */
@media (min-width: 900px) {
  .elor-founder__grid {
    grid-template-columns: 0.92fr 1.35fr;
    gap: 38px;
  }
  .elor-founder__bio {
    padding-top: 6px;
  }
  /* Optional: repeat CTA buttons at bottom but align left on desktop */
  .elor-founder__links--bottom {
    justify-content: flex-start;
    margin-top: 18px;
  }
}

/* Subtle typographic polish */
.elor-founder__bio p {
  margin: 0 0 14px;
  color: var(--elor-text);
  font-weight: 400;
}
.elor-founder__bio em { color: #fff; font-style: normal; font-weight: 600; }
.elor-founder__bio strong { color: #fff; font-weight: 700; }

/* Fine-tuning for WordPress themes that constrain inner width */
.elor-founder .alignfull,
.elor-founder .alignwide { max-width: none; }

/* High-contrast mode & accessibility helpers */
@media (prefers-contrast: more) {
  .elor-btn { box-shadow: none; }
  .elor-founder__quote { background: transparent; }
}











/* CASTING — eLOR Production (no JS) */
:root{
  --elor-bg:#0B0B0B;
  --elor-text:#EAEAEA;
  --elor-dim:#B6B6B6;
  --elor-gold:#B2B27A;
  --elor-card:#131313;
  --elor-line:#2a2a2a;
}

.elor-casting{
  font-family:"Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--elor-text);
  background:var(--elor-bg);
  padding:clamp(16px, 3vw, 40px);
}

.ec-title{
  font-family:"Fjalla One", sans-serif;
  letter-spacing:.5px;
  font-size:clamp(26px, 4vw, 40px);
  color:var(--elor-gold);
  margin:0 0 10px 0;
  text-transform:uppercase;
}

.ec-disclaimer{
  max-width:980px;
  line-height:1.58;
  color:var(--elor-dim);
  border-left:3px solid var(--elor-gold);
  padding:12px 14px;
  background:linear-gradient(90deg, rgba(178,178,122,.12), rgba(178,178,122,0) 55%);
  border-radius:10px;
}

.ec-project{
  margin-top:28px;
  background:var(--elor-card);
  border:1px solid var(--elor-line);
  border-radius:16px;
  padding:clamp(16px, 3vw, 28px);
}

.ec-project__name{
  font-family:"Fjalla One", sans-serif;
  color:var(--elor-text);
  margin:0 0 14px 0;
  font-size:clamp(22px, 3.2vw, 32px);
}

.ec-meta{
  display:grid;
  grid-template-columns:1fr;
  gap:6px 20px;
  margin:0 0 14px 0;
  padding:0;
  list-style:none;
}
.ec-meta li{color:var(--elor-dim);}
.ec-meta li span{color:var(--elor-gold); font-weight:600; margin-right:6px;}

.ec-roles{ margin-top:10px; border-top:1px dashed var(--elor-line); padding-top:10px; }
.ec-roles__summary{
  list-style:none; cursor:pointer; font-weight:700; color:var(--elor-gold);
  font-family:"Fjalla One", sans-serif; font-size:clamp(18px, 2.6vw, 22px);
  display:inline-block;
}
.ec-roles[open] > .ec-roles__summary::after{ content:" – hide"; color:var(--elor-dim); margin-left:6px; font-weight:400; }
.ec-roles:not([open]) > .ec-roles__summary::after{ content:" – view"; color:var(--elor-dim); margin-left:6px; font-weight:400; }

.ec-roles__list{
  display:grid; grid-template-columns:1fr; gap:14px; margin-top:14px;
}

.ec-role{
  border:1px solid var(--elor-line);
  border-radius:14px;
  background:#0f0f0f;
  padding:14px;
}
.ec-role__head{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px; }
.ec-role__title{ margin:0; font-size:clamp(18px, 2.4vw, 22px); color:var(--elor-text); font-family:"Fjalla One", sans-serif; }
.ec-chip{
  font-size:12px; background:rgba(178,178,122,.16); color:var(--elor-gold);
  padding:5px 8px; border:1px solid rgba(178,178,122,.35); border-radius:999px;
}
.ec-role__desc{ color:var(--elor-dim); line-height:1.55; margin:0 0 8px 0; }
.ec-role__line{ color:var(--elor-dim); margin:0 0 12px 0; }
.ec-role__line span{ color:var(--elor-gold); font-weight:600; margin-right:6px; }

.ec-btn{
  display:inline-block; text-decoration:none; font-weight:600;
  padding:10px 14px; border-radius:999px; border:1px solid var(--elor-gold);
  color:var(--elor-gold);
  transition:transform .15s ease, background .15s ease, color .15s ease;
}
.ec-btn:hover{ transform:translateY(-1px); background:var(--elor-gold); color:#0b0b0b; }
.ec-btn--apply{ float:right; }

/* ---------- MODAL (CSS-only using :target) ---------- */
.ec-modal{
  position:fixed; inset:0; background:rgba(0,0,0,.6);
  opacity:0; pointer-events:none; transition:opacity .2s ease;
  z-index:9999;
}
/* enable when targeted via hash */
.ec-modal:target{ opacity:1; pointer-events:auto; }

/* click-off overlay to close */
.ec-modal__overlay{
  position:absolute; inset:0; content:""; display:block;
}

/* dialog */
.ec-modal__dialog{
  position:relative;
  width:min(880px, 92vw);
  margin:6vh auto 0;
  background:var(--elor-card);
  border:1px solid var(--elor-line);
  border-radius:18px;
  padding:18px;
  box-shadow:0 20px 80px rgba(0,0,0,.55);

  /* Scrollable so the full form is reachable on mobile */
  max-height:88vh;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}

.ec-modal__title{
  margin:6px 40px 8px 6px;
  font-family:"Fjalla One", sans-serif;
  color:var(--elor-gold);
  font-size:clamp(18px,2.4vw,22px);
}
.ec-modal__note{ color:var(--elor-dim); margin:0 6px 14px; }

/* close button */
.ec-modal__close{
  position:absolute; top:8px; right:10px;
  width:34px; height:34px; line-height:34px; text-align:center;
  border-radius:50%; text-decoration:none;
  border:1px solid var(--elor-line); color:var(--elor-text);
  background:#111; font-size:22px;
}
.ec-modal__close:hover{ background:#000; }

/* Inner wrapper also scrollable, keeps inputs visible on small screens */
.ec-formwrap{
  max-height:64vh;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  isolation:isolate; /* preserve Fluent Forms styles */
}

/* Make sure Gutenberg Shortcode block doesn't shrink the form */
.wp-block-shortcode, .ec-formwrap .wp-block-shortcode{
  display:block;
}

/* ---------- Responsive ---------- */
@media (min-width: 720px){
  .ec-meta{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ec-roles__list{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (min-width: 1100px){
  .ec-roles__list{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}





















/* FALLING IN LOVE: FACT OR FICTION — Intro Section Styles */
.fil-intro {
  --fil-bg: #0b0b0b;
  --fil-fg: #f5f5f5;
  --fil-gold: #B2B27A;
  --fil-muted: rgba(245,245,245,0.75);

  background: radial-gradient(1200px 500px at 50% -10%, rgba(178,178,122,0.18), transparent 60%),
              linear-gradient(180deg, #0f0f0f, var(--fil-bg));
  color: var(--fil-fg);
  padding: 80px 20px;
  position: relative;
  isolation: isolate;
}

.fil-intro__wrap {
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
  font-family: "Red Hat Display", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

.fil-intro__title {
  font-family: "Fjalla One", Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(38px, 5.2vw, 72px);
  line-height: 1.02;
  letter-spacing: 0.5px;
  margin: 0 0 14px 0;
  text-transform: uppercase;
}

.fil-intro__title span {
  display: block;
  color: var(--fil-gold);
}

.fil-intro__status {
  margin: 0 0 12px 0;
  font-size: clamp(15px, 1.7vw, 20px);
  font-weight: 600;
  color: var(--fil-gold);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.fil-intro__tagline {
  margin: 0 auto 18px;
  font-size: clamp(14px, 1.6vw, 18px);
  color: var(--fil-gold);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.fil-intro__desc {
  margin: 0 auto 28px;
  max-width: 860px;
  font-size: clamp(15px, 1.9vw, 18px);
  line-height: 1.65;
  color: var(--fil-muted);
}

.fil-intro__button {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 999px;
  border: 1px solid var(--fil-gold);
  color: #0b0b0b;
  background: linear-gradient(180deg, #d6d6a8, var(--fil-gold));
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 0.04em;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  box-shadow: 0 6px 16px rgba(178,178,122,0.25);
}

.fil-intro__button:hover,
.fil-intro__button:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(178,178,122,0.35);
}

@media (min-width: 1024px) {
  .fil-intro { padding: 110px 24px; }
  .fil-intro__desc { margin-bottom: 34px; }
}

/* Optional: override themes that add underlines */
#falling-in-love-intro * {
  text-decoration: none;
}












/* ===== eLOR Production — Partnership Header ===== */
.elor-partner-banner {
  width: 100%;
  text-align: center;
  background: linear-gradient(90deg, #0e0e0e, #1a1a1a);
  padding: 20px 0;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  position: relative;
  z-index: 100;
  animation: fadeIn 1.5s ease-out forwards;
}

.elor-partner-link {
  text-decoration: none;
  color: #d4c67a; /* your brand gold */
  font-family: 'Red Hat Display', sans-serif;
  font-size: 18px;
  letter-spacing: 0.5px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: color 0.3s ease, transform 0.3s ease;
}

.elor-partner-text {
  opacity: 0.85;
}

.elor-partner-name {
  font-family: 'Fjalla One', sans-serif;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #f1e6a3;
}

.elor-partner-link:hover {
  color: #fff6c2;
  transform: scale(1.03);
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Responsive for iPhone */
@media (max-width: 600px) {
  .elor-partner-banner {
    padding: 16px 0;
  }
  .elor-partner-link {
    flex-direction: column;
    gap: 4px;
    font-size: 16px;
  }
  .elor-partner-name {
    font-size: 18px;
  }
}
