:root{
  --bg:#11100e;
  --panel:#1b1916;
  --cream:#f1ece2;
  --muted:#aaa298;
  --accent:#d39a6a;
  --ink:#17120e;
  --line:rgba(241,236,226,.13);
  --softline:rgba(241,236,226,.08);
  --danger:#ffb3b3;
  --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:"Arial Black",Impact,Inter,ui-sans-serif,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{
  margin:0;min-height:100vh;color:var(--cream);font-family:var(--font);
  -webkit-font-smoothing:antialiased;
  background:radial-gradient(circle at 50% -8%,rgba(211,154,106,.07),transparent 31rem),var(--bg);
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.page{width:min(100%,660px);margin:0 auto;padding:34px 14px 48px}
.brand{text-align:center;margin:4px 0 27px}
.kicker{font-size:10px;font-weight:900;letter-spacing:.19em;text-transform:uppercase;color:var(--accent);margin-bottom:9px}
.wordmark{font-family:var(--display);font-size:clamp(42px,10vw,62px);line-height:.87;letter-spacing:-.05em;text-transform:uppercase;margin:0}
.intro{margin:14px 0 0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.section-label{margin:22px 3px 8px;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}

.resource-stack,.link-stack{display:grid;gap:9px}
.resource-card{
  border:1px solid var(--line);border-radius:18px;padding:16px;
  background:linear-gradient(150deg,rgba(211,154,106,.085),rgba(255,255,255,.015));
}
.resource-card.alt{background:var(--panel)}
.resource-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.smallcap{font-size:9px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.pill{background:var(--accent);color:var(--ink);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:6px 8px;border-radius:999px}
.resource-card h2{font-size:22px;line-height:1.04;letter-spacing:-.03em;margin:0 0 12px}
.cta,.link-btn{
  position:relative;
  width:100%;
  height:54px;
  min-height:54px;
  border-radius:14px;
  padding:0 44px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid var(--line);
  font-weight:900;
  font-size:12px;
  letter-spacing:.035em;
  line-height:1;
  white-space:nowrap;
  background:var(--panel);
  color:var(--cream);
}
.cta{background:var(--cream);color:var(--ink);border-color:transparent}
.cta.accent,.link-btn.primary{background:var(--accent);color:var(--ink);border-color:transparent}
.arrow{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  font-size:18px;
  line-height:1;
  font-weight:700;
}
.footer{text-align:center;color:var(--muted);font-size:9px;line-height:1.5;margin-top:23px}
.footer a{text-decoration:underline;text-underline-offset:3px}

/* subpages */
.subpage{width:min(100%,850px);margin:0 auto;padding:23px 14px 54px}
.back{display:inline-flex;color:var(--muted);font-size:10px;font-weight:900;margin:4px 0 23px}
.hero{margin-bottom:18px}
.hero h1{
  font-family:var(--display);font-size:clamp(40px,10vw,66px);line-height:.88;
  letter-spacing:-.055em;text-transform:uppercase;margin:0
}
.hero p{max-width:560px;color:var(--muted);font-size:13px;line-height:1.45;margin:13px 0 0}
.filters{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0 14px}
.filter{
  border:1px solid var(--line);background:var(--panel);color:var(--cream);
  border-radius:999px;padding:8px 13px;font-size:9px;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase;cursor:pointer
}
.filter.active{background:var(--cream);color:var(--ink);border-color:transparent}

.program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.program-card{
  border:1px solid var(--line);border-radius:17px;overflow:hidden;background:var(--panel);
  display:flex;flex-direction:column;min-width:0
}
.program-cover{aspect-ratio:4/3;background:#0d0d0d;overflow:hidden;border-bottom:1px solid var(--softline)}
.program-cover img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.program-body{padding:13px;display:flex;flex-direction:column;flex:1}
.program-tags{font-size:8px;color:var(--accent);font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px}
.program-card h3{font-size:19px;line-height:1.02;letter-spacing:-.03em;margin:0 0 11px}
.program-card .get{
  position:relative;
  margin-top:auto;
  height:44px;
  min-height:44px;
  border:0;
  border-radius:11px;
  padding:0 34px;
  background:var(--cream);
  color:var(--ink);
  font-size:10px;
  font-weight:900;
  letter-spacing:.035em;
  line-height:1;
  text-align:center;
  white-space:nowrap;
  cursor:pointer;
}
.program-card[hidden]{display:none}

/* condiment */
.condiment-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:center;margin-top:18px}
.guide-cover-wrap{
  width:100%;
  max-width:320px;
  margin:0 auto;
}
.guide-cover{
  width:100%;
  height:auto;
  display:block;
  border-radius:17px;
  border:1px solid var(--line);
  box-shadow:0 18px 46px rgba(0,0,0,.22);
}
.condiment-copy h2{font-size:27px;line-height:1.01;letter-spacing:-.04em;margin:0 0 9px}
.condiment-copy p{color:var(--muted);font-size:12px;line-height:1.45;margin:0 0 14px}

/* modal */
dialog{
  width:min(calc(100% - 22px),500px);max-height:calc(100vh - 22px);overflow:auto;
  border:1px solid var(--line);border-radius:21px;padding:0;background:#181613;color:var(--cream);
  box-shadow:0 30px 100px rgba(0,0,0,.66)
}
dialog::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(4px)}
.modal{padding:20px}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.modal h3{font-size:24px;line-height:1.04;letter-spacing:-.03em;margin:1px 0 6px}
.modal-copy{color:var(--muted);font-size:11px;line-height:1.45;margin:0 0 15px}
.close{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--cream);font-size:20px;cursor:pointer;flex:none}
.field-label{display:block;font-size:9px;font-weight:900;margin:11px 0 6px;text-transform:uppercase;letter-spacing:.08em}
input[type=email]{width:100%;height:49px;border-radius:12px;border:1px solid var(--line);background:#100f0d;color:var(--cream);padding:0 13px;outline:none}
input[type=email]:focus{border-color:rgba(211,154,106,.7);box-shadow:0 0 0 3px rgba(211,154,106,.08)}
.consent{display:flex;gap:8px;align-items:flex-start;margin:12px 0;color:var(--muted);font-size:8.5px;line-height:1.45}
.consent input{margin-top:2px}
.submit{width:100%;height:50px;border:0;border-radius:12px;background:var(--accent);color:var(--ink);font-size:11px;font-weight:900;cursor:pointer}
.submit:disabled{opacity:.55}
.message{min-height:17px;margin-top:9px;font-size:10px}
.message.error{color:var(--danger)}.message.success{color:var(--accent)}
.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:620px){
  .page{padding:27px 11px 39px}
  .subpage{padding:20px 11px 46px}
  .program-grid{grid-template-columns:1fr;gap:9px}
  .program-card{display:grid;grid-template-columns:40% 60%;min-height:145px}
  .program-cover{aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--softline)}
  .program-body{padding:12px}
  .program-card h3{font-size:18px}
  .program-card .get{
  position:relative;
  margin-top:auto;
  height:44px;
  min-height:44px;
  border:0;
  border-radius:11px;
  padding:0 34px;
  background:var(--cream);
  color:var(--ink);
  font-size:10px;
  font-weight:900;
  letter-spacing:.035em;
  line-height:1;
  text-align:center;
  white-space:nowrap;
  cursor:pointer;
}
  .condiment-layout{grid-template-columns:1fr;gap:14px}
  .guide-cover-wrap{max-width:270px;width:78%;margin:0 auto}
  .condiment-copy{text-align:center}
}

.program-card .get::after{
  content:"→";
  position:absolute;
  right:13px;
  top:50%;
  transform:translateY(-50%);
  font-size:15px;
  line-height:1;
}
.resource-card .cta,
.link-stack .link-btn{
  overflow:hidden;
}
.resource-card .cta span:first-child,
.link-stack .link-btn span:first-child{
  display:block;
  width:100%;
  text-align:center;
}
@media(max-width:420px){
  .cta,.link-btn{
    height:52px;
    min-height:52px;
    padding-left:40px;
    padding-right:40px;
    font-size:11px;
  }
  .arrow{right:14px;font-size:17px}
}


/* post-signup instant download */
.success-panel{
  display:none;
  text-align:center;
  padding:8px 0 2px;
}
.success-panel.active{display:block}
.success-check{
  width:48px;
  height:48px;
  margin:2px auto 13px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(211,154,106,.12);
  border:1px solid rgba(211,154,106,.45);
  color:var(--accent);
  font-size:22px;
  font-weight:900;
}
.success-panel h4{
  margin:0 0 7px;
  font-size:25px;
  line-height:1.03;
  letter-spacing:-.035em;
}
.success-panel p{
  margin:0 0 16px;
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
.download-now{
  position:relative;
  width:100%;
  height:52px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 42px;
  background:var(--cream);
  color:var(--ink);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1;
}
.download-now::after{
  content:"↓";
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  font-size:16px;
  line-height:1;
}
.success-note{
  margin-top:10px!important;
  font-size:9px!important;
}
