/* =====================================================
   1. ROOT VARIABLES / BASE
===================================================== */

:root{
  --creator-green:#0f3d2a;
  --creator-green2:#1f5a3d;
  --creator-gold:#d9ad42;
  --creator-gold2:#ffe07c;
  --creator-cream:#fff8e8;
  --creator-paper:#fffdf7;
  --creator-ink:#102019;
  --creator-muted:#5d665f;
  --creator-dark:#030707;
  --creator-dark2:#08110d;
  --creator-red:#e85b52;
  --creator-blue:#7b8cff;
  --creator-purple:#7d5cff;
  --creator-border:rgba(255,255,255,.12);
  --creator-shadow:0 28px 70px rgba(0,0,0,.22);
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--creator-ink);
  background:var(--creator-cream);
}

.creator-page{
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 0%, rgba(217,173,66,.14), transparent 30%),
    linear-gradient(180deg, #fff8e8 0%, #f4ecd8 100%);
}

.creator-wrap{
  width:min(1120px, calc(100% - 40px));
  margin:0 auto;
}

.creator-wrap.narrow{
  width:min(900px, calc(100% - 40px));
}


/* =====================================================
   2. SHARED ELEMENTS
===================================================== */

.creator-kicker{
  margin:0 0 12px;
  color:var(--creator-gold);
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.creator-heading{
  max-width:820px;
  margin:0 auto 42px;
  text-align:center;
}

.creator-heading h2{
  margin:0;
  font-family:Georgia, "Times New Roman", serif;
  color:var(--creator-green);
  font-size:clamp(2.4rem, 5vw, 4rem);
  font-weight:500;
  line-height:1.05;
  letter-spacing:.035em;
}

.creator-heading p{
  margin:18px auto 0;
  color:var(--creator-ink);
  font-size:1.05rem;
  line-height:1.8;
}

.creator-dark-heading{
  max-width:900px;
  margin:0 auto 54px;
  text-align:center;
}

.creator-dark-heading p{
  margin:0 0 14px;

  color:#d65d53;

  font-size:.72rem;
  font-weight:900;
  letter-spacing:.45em;
  text-transform:uppercase;

  opacity:.9;
}

.creator-dark-heading h2{
  margin:0;

  font-family:"Cinzel", Georgia, "Times New Roman", serif;
  font-size:clamp(2.6rem, 5vw, 4.8rem);
  font-weight:800;
  line-height:.95;
  letter-spacing:.12em;
  text-transform:uppercase;

  background:linear-gradient(
      90deg,
      #b57a21 0%,
      #f0cf82 22%,
      #2d8c56 50%,
      #169b9a 74%,
      #3968d6 100%
  );

  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;

  filter:
      drop-shadow(0 2px 8px rgba(0,0,0,.45))
      drop-shadow(0 0 18px rgba(255,213,120,.08));
}

.creator-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 28px;
  border-radius:999px;
  font-size:.9rem;
  font-weight:950;
  letter-spacing:.04em;
  text-decoration:none;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    filter .25s ease,
    background .25s ease;
}

.creator-btn:hover{
  transform:translateY(-3px);
}

.creator-btn[aria-disabled="true"]{
  pointer-events:none;
  cursor:not-allowed;
}

.creator-btn-gold{
  color:#1d1605;
  background:linear-gradient(135deg, #ffb21d, #ffe07c);
  box-shadow:0 18px 36px rgba(217,173,66,.28);
}

.creator-btn-ghost{
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 16px 34px rgba(0,0,0,.18);
}

.creator-btn-final{
  color:white;
  background:linear-gradient(135deg, #d24b3f, #d9ad42, #5b63d9);
  box-shadow:0 0 30px rgba(217,173,66,.22);
}


/* =====================================================
   3. HERO
===================================================== */

.creator-hero{
  position:relative;
  min-height:560px;
  display:grid;
  place-items:center;
  padding:110px 0 96px;
  color:white;
  text-align:center;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 0%, rgba(217,173,66,.14), transparent 36%),
    linear-gradient(180deg, #07150d 0%, #030707 100%);
}

.creator-hero-bg{
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    linear-gradient(180deg, rgba(0,0,0,.42), rgba(0,0,0,.82)),
    url("/media/creator-program-bg.jpg");
  background-size:cover;
  background-position:center;
  opacity:.42;
}

.creator-hero-shade{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 50% 30%, rgba(92,255,192,.12), transparent 34%),
    radial-gradient(circle at 28% 20%, rgba(217,173,66,.16), transparent 30%),
    linear-gradient(90deg, rgba(0,0,0,.65), rgba(0,0,0,.18), rgba(0,0,0,.65));
}

.creator-hero-inner{
  position:relative;
  z-index:2;
  max-width:900px;
}

.creator-hero h1{
  margin:0;
  font-size:clamp(2.8rem, 7vw, 5.6rem);
  line-height:.95;
  letter-spacing:-.035em;
  font-weight:950;
  background:linear-gradient(90deg, #8ea7ff, #56f0b7, #ffe07c);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.creator-hero-lead{
  max-width:760px;
  margin:26px auto 0;
  color:rgba(255,255,255,.86);
  font-size:1.14rem;
  line-height:1.75;
  font-weight:700;
}

.creator-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:34px;
}


/* =====================================================
   4. INTRO
===================================================== */

.creator-intro{
  position:relative;
  padding:94px 0 102px;
  text-align:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 12%, rgba(217,173,66,.18), transparent 34%),
    radial-gradient(circle at 50% 58%, rgba(15,61,42,.06), transparent 54%),
    linear-gradient(180deg, #fff7df 0%, #fffdf7 52%, #f2efe3 100%);
}

.creator-intro::before{
  content:"";
  position:absolute;
  inset:22px;
  border-top:1px solid rgba(217,173,66,.25);
  border-bottom:1px solid rgba(15,61,42,.12);
  pointer-events:none;
  opacity:.7;
}

.creator-intro .creator-wrap{
  position:relative;
  z-index:2;
}

.creator-intro .creator-heading{
  max-width:900px;
  margin:0 auto;
}

.creator-intro .creator-kicker{
  color:#7a3a08;
}

.creator-intro .creator-heading h2{
  margin:0;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.45rem, 5vw, 4.2rem);
  font-weight:500;
  line-height:1.03;
  letter-spacing:.035em;

  background:linear-gradient(
    90deg,
    #9a5410 0%,
    #d9ad42 22%,
    #0f7c53 58%,
    #1f5a8f 100%
  );
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;

  filter:drop-shadow(0 8px 18px rgba(122,58,8,.16));
}

.creator-intro .creator-heading p{
  max-width:760px;
  margin:24px auto 0;
  color:#102019;
  font-size:1.08rem;
  line-height:1.78;
  font-weight:700;
}

.creator-pills{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  max-width:900px;
  margin:38px auto 0;
}

.creator-pills span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 22px;
  border-radius:999px;
  background:
    linear-gradient(180deg, #0c1712, #07100c);
  border:1px solid rgba(217,173,66,.16);
  color:#fff;
  font-size:.86rem;
  font-weight:900;
  box-shadow:
    0 14px 26px rgba(38,23,4,.16),
    inset 0 1px 0 rgba(255,255,255,.12);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

.creator-pills span:hover{
  transform:translateY(-3px);
  border-color:rgba(217,173,66,.42);
  box-shadow:
    0 18px 34px rgba(38,23,4,.22),
    0 0 24px rgba(217,173,66,.12);
}

.creator-pills span:nth-child(1){
  color:#ffbd3d;
}

.creator-pills span:nth-child(2){
  color:#48e6a2;
}

.creator-pills span:nth-child(3){
  color:#8296ff;
}

.creator-pills span:nth-child(4){
  color:#ff746d;
}

.creator-pills span:nth-child(5){
  color:#cba0ff;
}

.creator-intro-statement{
  max-width:780px;
  margin:42px auto 0;
  padding-top:28px;
  border-top:1px solid rgba(15,61,42,.14);
  color:#102019;
  font-size:1.06rem;
  line-height:1.8;
  font-weight:600;
}

/* =====================================================
   5. CORE PILLARS / INTERACTIVE PANEL
===================================================== */

.creator-pillars{
  position:relative;
  padding:96px 0 104px;
  color:#e9edf2;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 18%, rgba(217,173,66,.12), transparent 42%),
    radial-gradient(circle at 50% 70%, rgba(15,61,42,.14), transparent 46%),
    linear-gradient(180deg, #07150d 0%, #030707 100%);
}

.creator-card-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
  max-width:980px;
  margin:0 auto;
}

.creator-core-card{
  appearance:none;
  position:relative;
  width:100%;
  min-height:230px;
  padding:34px 32px;
  border-radius:16px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.12);
  color:inherit;
  text-align:left;
  cursor:pointer;
  overflow:hidden;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease,
    background .28s ease;
}

.creator-core-card:hover,
.creator-core-card.active{
  transform:translateY(-7px);
  background:rgba(255,255,255,.055);
}

.creator-core-card h3{
  margin:0 0 18px;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.45rem;
  line-height:1.15;
  font-weight:700;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.creator-core-card p{
  margin:0;
  color:rgba(255,255,255,.82);
  font-size:.95rem;
  line-height:1.7;
  font-weight:700;
}

.corner{
  position:absolute;
  width:22px;
  height:22px;
  pointer-events:none;
}

.top-left{
  top:0;
  left:0;
  border-top:2px solid currentColor;
  border-left:2px solid currentColor;
}

.bottom-right{
  right:0;
  bottom:0;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
}

.fire-card{
  color:#ff5d55;
  border-color:rgba(255,93,85,.34);
  box-shadow:0 0 26px rgba(255,93,85,.10);
}

.fire-card h3{
  color:#ffd15c;
}

.order-card{
  color:#7b8cff;
  border-color:rgba(123,140,255,.34);
  box-shadow:0 0 26px rgba(123,140,255,.10);
}

.order-card h3{
  color:#8ea7ff;
}

.purpose-card{
  color:#d9ad42;
  border-color:rgba(217,173,66,.38);
  box-shadow:0 0 26px rgba(217,173,66,.10);
}

.purpose-card h3{
  color:#ff746d;
}


/* DETAIL PANEL */

.creator-detail-panel{
  max-width:880px;
  margin:46px auto 0;
  padding:30px 34px;
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.07), transparent 50%),
    rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 44px rgba(0,0,0,.26);
}

.creator-detail{
  display:none;
  text-align:center;
}

.creator-detail.active{
  display:block;
  animation:creatorDetailFade .28s ease both;
}

@keyframes creatorDetailFade{
  from{
    opacity:0;
    transform:translateY(8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.creator-detail h3{
  margin:0 0 14px;
  font-family:Georgia, "Times New Roman", serif;
  color:#ffe07c;
  font-size:1.55rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.creator-detail p{
  max-width:760px;
  margin:0 auto;
  color:rgba(255,255,255,.80);
  font-size:1rem;
  line-height:1.75;
  font-weight:700;
}

.creator-detail-lanes{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:22px;
}

.creator-detail-lanes span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  color:#fff7df;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.04em;
}

.creator-transmission{
  max-width:760px;
  margin:58px auto 0;
  padding-top:24px;
  border-top:1px solid rgba(217,173,66,.22);
  text-align:center;
  color:rgba(255,255,255,.42);
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  font-weight:900;
}


/* =====================================================
   6. JOIN
===================================================== */

.creator-join{
  position:relative;
  padding:100px 0 110px;
  color:white;
  text-align:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 16%, rgba(123,92,255,.18), transparent 38%),
    linear-gradient(180deg, #25226b 0%, #07101c 48%, #02050d 100%);
}

.creator-join p{
  max-width:780px;
  margin:0 auto 36px;
  color:rgba(255,255,255,.82);
  font-size:1.08rem;
  line-height:1.8;
}


/* =====================================================
   7. RESPONSIVE
===================================================== */

@media(max-width:1000px){
  .creator-card-grid{
    grid-template-columns:1fr 1fr;
  }

  .creator-lane-grid-dark{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:680px){
  .creator-wrap,
  .creator-wrap.narrow{
    width:min(100% - 28px, 1120px);
  }

  .creator-hero{
    min-height:auto;
    padding:78px 0 70px;
  }

  .creator-hero h1{
    font-size:clamp(2.65rem, 13vw, 4rem);
  }

  .creator-hero-lead,
  .creator-heading p,
  .creator-intro-statement,
  .creator-join p{
    font-size:.98rem;
  }

  .creator-actions{
    flex-direction:column;
    align-items:center;
  }

  .creator-btn{
    width:100%;
    max-width:320px;
  }

  .creator-intro{
    padding:68px 0 76px;
  }

  .creator-pillars,
  .creator-join{
    padding:76px 0 84px;
  }

  .creator-card-grid,
  .creator-lane-grid-dark{
    grid-template-columns:1fr;
  }

  .creator-dark-heading h2{
    letter-spacing:.08em;
  }
}

/* =====================================================
   PRESS CREDENTIAL PAYWALL
===================================================== */

.member-dashboard-press-paywall{
  display:grid;
  gap:24px;
}

.member-dashboard-press-preview-shell{
  position:relative;

  overflow:hidden;

  border:1px solid rgba(166,124,67,.24);
  border-radius:24px;

  background:#f5efe3;

  box-shadow:
    0 26px 56px rgba(45,50,57,.12);
}


/* =====================================================
   CREDENTIAL PREVIEW
===================================================== */

.member-dashboard-press-preview{
  filter:blur(4px);

  transform:scale(1.01);

  pointer-events:none;
  user-select:none;
}

.member-dashboard-press-preview-top{
  padding:22px 24px;

  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  gap:18px;
  align-items:center;

  color:#fff;

  background:
    linear-gradient(
      145deg,
      #20262d,
      #424c57
    );
}

.member-dashboard-press-preview-logo{
  width:58px;
  height:58px;

  display:grid;
  place-items:center;

  border-radius:16px;

  background:#fff;
}

.member-dashboard-press-preview-logo img{
  width:40px;
  height:40px;

  display:block;
  object-fit:contain;
}

.member-dashboard-press-preview-top p{
  margin:0;

  color:#e2c47f;

  font-size:.58rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.member-dashboard-press-preview-top h4{
  margin:5px 0 4px;

  font-family:
    "Cormorant Garamond",
    Georgia,
    serif;

  font-size:1.45rem;
  line-height:1;
}

.member-dashboard-press-preview-top span{
  color:rgba(255,255,255,.7);

  font-size:.66rem;
}

.member-dashboard-press-preview-top > strong{
  padding:8px 12px;

  border:1px solid rgba(225,194,127,.35);
  border-radius:999px;

  color:#f5df9f;
  background:rgba(255,255,255,.08);

  font-size:.62rem;
}

.member-dashboard-press-preview-body{
  padding:28px;

  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:28px;

  background:
    linear-gradient(
      145deg,
      #fffdf8,
      #f1e7d5
    );
}

.member-dashboard-press-preview-photo{
  aspect-ratio:4 / 5;

  overflow:hidden;

  border:1px solid rgba(82,101,121,.14);
  border-radius:18px;

  background:#fff;
}

.member-dashboard-press-preview-photo img{
  width:100%;
  height:100%;

  display:block;
  object-fit:cover;
}

.member-dashboard-press-preview-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.member-dashboard-press-preview-fields > div{
  padding:14px;

  border:1px solid rgba(82,101,121,.12);
  border-radius:12px;

  background:rgba(255,255,255,.72);
}

.member-dashboard-press-preview-fields span{
  display:block;

  color:var(--dashboard-muted);

  font-size:.54rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.member-dashboard-press-preview-fields strong{
  display:block;

  margin-top:6px;

  color:var(--dashboard-charcoal);

  font-size:.72rem;
}

.member-dashboard-press-preview-notice{
  margin:0;
  padding:18px 24px;

  border-top:1px solid rgba(166,124,67,.18);

  background:#fff8e9;
}

.member-dashboard-press-preview-notice strong{
  display:block;

  color:#76511e;

  font-size:.62rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.member-dashboard-press-preview-notice p{
  margin:7px 0 0;

  color:var(--dashboard-slate);

  font-size:.68rem;
  line-height:1.65;
}


/* =====================================================
   PAYWALL OVERLAY
===================================================== */

.member-dashboard-press-paywall-overlay{
  position:absolute;
  inset:0;

  z-index:5;

  padding:34px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  text-align:center;

  background:
    linear-gradient(
      180deg,
      rgba(247,242,232,.80),
      rgba(243,236,221,.96)
    );

  backdrop-filter:blur(3px);
}

.member-dashboard-press-paywall-lock{
  width:66px;
  height:66px;

  display:grid;
  place-items:center;

  margin-bottom:18px;

  border:1px solid rgba(166,124,67,.22);
  border-radius:18px;

  background:#fff;

  box-shadow:
    0 16px 32px rgba(45,50,57,.12);

  font-size:1.55rem;
}

.member-dashboard-press-paywall-overlay > p{
  margin:0;

  color:var(--dashboard-bronze);

  font-size:.6rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.member-dashboard-press-paywall-overlay h4{
  margin:8px 0 12px;

  color:var(--dashboard-charcoal);

  font-family:
    "Cormorant Garamond",
    Georgia,
    serif;

  font-size:2rem;
  line-height:1;
}

.member-dashboard-press-paywall-overlay > span{
  display:block;

  max-width:590px;

  color:var(--dashboard-slate);

  font-size:.75rem;
  line-height:1.7;
}

.member-dashboard-press-paywall-details{
  width:min(560px,100%);

  margin:22px 0;

  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.member-dashboard-press-paywall-details > div{
  padding:14px;

  border:1px solid rgba(82,101,121,.12);
  border-radius:13px;

  background:rgba(255,255,255,.78);
}

.member-dashboard-press-paywall-details small{
  display:block;

  color:var(--dashboard-muted);

  font-size:.54rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.member-dashboard-press-paywall-details strong{
  display:block;

  margin-top:6px;

  color:var(--dashboard-charcoal);

  font-size:.7rem;
}

#memberDashboardPressApplyButton{
  min-height:50px;

  padding:0 24px;

  border:1px solid rgba(255,239,177,.95);
  border-radius:14px;

  color:#4b3410;

  background:
    linear-gradient(
      180deg,
      #fff1a8 0%,
      #f7d66f 28%,
      #eab844 60%,
      #cf8d25 100%
    );

  box-shadow:
    0 16px 34px rgba(207,141,37,.28);

  font:inherit;
  font-size:.72rem;
  font-weight:850;

  cursor:pointer;
}


/* =====================================================
   PAYWALL COPY
===================================================== */

.member-dashboard-press-paywall-copy{
  padding:24px;

  border:1px solid rgba(82,101,121,.12);
  border-radius:18px;

  background:#fff;
}

.member-dashboard-press-paywall-copy h4{
  margin:0 0 12px;

  color:var(--dashboard-charcoal);

  font-family:
    "Cormorant Garamond",
    Georgia,
    serif;

  font-size:1.6rem;
}

.member-dashboard-press-paywall-copy p{
  margin:0 0 14px;

  color:var(--dashboard-slate);

  font-size:.74rem;
  line-height:1.75;
}

.member-dashboard-press-paywall-copy p:last-child{
  margin-bottom:0;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:700px){

  .member-dashboard-press-preview-body{
    grid-template-columns:1fr;
  }

  .member-dashboard-press-preview-photo{
    width:150px;
  }

  .member-dashboard-press-preview-fields{
    grid-template-columns:1fr;
  }

  .member-dashboard-press-paywall-overlay{
    position:relative;
    inset:auto;

    padding:28px 22px;
  }

  .member-dashboard-press-preview{
    filter:blur(3px);
  }

  .member-dashboard-press-paywall-details{
    grid-template-columns:1fr;
  }

  #memberDashboardPressApplyButton{
    width:100%;
  }

}