:root{--red:#922427;--maroon:#3d0f11;--cream:#fef5e7;--yellow:#ffc700;--white:#fff;--ink:#2e1214;--head:Pally,Georgia,serif;--body:Poppins,Arial,sans-serif;--wrap:min(1120px,calc(100% - 40px));--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);line-height:1.65}img{display:block;max-width:100%}a{color:inherit}button,input{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--head);line-height:1.05;color:var(--maroon)}h1{font-size:clamp(2.9rem,7vw,5.7rem);letter-spacing:-.045em;margin-bottom:1.2rem}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.03em}h3{font-size:1.35rem}.skip{position:fixed;left:1rem;top:-5rem;background:var(--yellow);padding:.7rem 1rem;z-index:20}.skip:focus{top:1rem}.site-header{height:82px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100% - 1120px)/2));border-bottom:1px solid rgba(61,15,17,.1)}.brand img{width:92px;height:62px;object-fit:contain}.header-link,.btn{display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--red);border-radius:999px;padding:.78rem 1.3rem;background:var(--red);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.header-link{font-size:.86rem}.btn--ghost{background:#fff;color:var(--red)}.btn--block{width:100%}.wrap{width:var(--wrap);margin-inline:auto}.hero{background:#fff;overflow:hidden}.hero__grid{min-height:690px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:clamp(3.5rem,7vw,6rem)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--red);font-weight:700;font-size:.8rem}.lede{font-size:clamp(1rem,1.8vw,1.2rem);max-width:60ch}.perks{list-style:none;padding:0;margin:1.6rem 0;display:flex;flex-wrap:wrap;gap:.6rem 1.3rem}.perks li:before,.ticks li:before{content:'✓';display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;margin-right:.5rem;border-radius:50%;background:var(--yellow);color:var(--red);font-weight:800}.hero__art{position:relative}.hero__art:before{content:'';position:absolute;inset:8% -4% -3% 4%;border-radius:45% 45% 18% 18%;background:var(--yellow);transform:rotate(3deg)}.hero__art img{position:relative;width:100%;max-height:600px;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(61,15,17,.18))}.section{padding-block:clamp(4rem,8vw,7rem)}.section--white{background:#fff}.center{text-align:center}.section-title{max-width:750px;margin-inline:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.4rem}.card{background:#fff;border:2px solid var(--red);border-radius:var(--radius);padding:1.6rem}.card--cream{background:var(--cream)}.icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--yellow);color:var(--red);font-size:1.4rem;margin-bottom:1rem}.quotes blockquote{margin:0}.quotes footer{font-weight:700;color:var(--red)}.optin{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,6rem);align-items:center}.optin__panel{background:#fff;border:2px solid var(--red);border-radius:30px;padding:clamp(1.5rem,4vw,3rem);box-shadow:12px 12px 0 var(--yellow)}.field{margin-bottom:1rem}.field label{display:block;color:var(--red);font-weight:700;margin-bottom:.35rem}.field input{width:100%;padding:.85rem 1rem;border:2px solid rgba(146,36,39,.4);border-radius:11px;background:#fff}.field input:focus{outline:3px solid var(--yellow);border-color:var(--red)}.err{display:none;color:var(--red);font-size:.82rem;margin:.3rem 0 0}.field.is-bad .err{display:block}.check{display:flex;gap:.65rem;align-items:flex-start;font-size:.9rem;margin:1rem 0}.check input{width:18px;height:18px;accent-color:var(--red)}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}.status{min-height:1.5em;color:var(--red);font-weight:600;margin:.7rem 0 0}.vault-hero{background:var(--yellow);padding-block:clamp(4rem,8vw,7rem);text-align:center}.vault-hero p{max-width:650px;margin-inline:auto}.message{display:grid;grid-template-columns:.85fr 1.15fr;gap:2rem;align-items:center}.message img{border-radius:var(--radius);width:100%}.resource-block{margin-top:4rem}.playlist{display:grid;grid-template-columns:1.4fr .6fr;background:var(--maroon);border-radius:var(--radius);overflow:hidden}.player{aspect-ratio:16/9}.player iframe{width:100%;height:100%;border:0}.lesson-list{max-height:520px;overflow:auto;padding:.7rem}.lesson{display:block;width:100%;border:0;background:transparent;color:#fff;padding:.8rem;text-align:left;border-radius:10px;cursor:pointer}.lesson:hover,.lesson.is-active{background:var(--yellow);color:var(--maroon)}.templates{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.templates a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;background:#fff;border:1px solid rgba(146,36,39,.25);border-radius:12px;text-decoration:none}.kind{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--red);font-weight:700}.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.ticks{list-style:none;padding:0}.ticks li{margin:.65rem 0}.thanks{background:var(--maroon);color:#fff;text-align:center;padding:4rem 1rem}.thanks h2{color:var(--yellow)}.site-footer{padding:1.6rem;text-align:center;background:#fff;font-size:.85rem}.site-footer a{color:var(--red)}
@media(max-width:850px){.hero__grid,.optin,.message{grid-template-columns:1fr}.hero__grid{padding-top:3rem}.hero__art{max-width:430px;margin:auto}.cards,.two-col{grid-template-columns:1fr}.playlist{grid-template-columns:1fr}.lesson-list{max-height:330px}.templates{grid-template-columns:1fr}}
@media(max-width:520px){:root{--wrap:min(1120px,calc(100% - 28px))}.site-header{height:70px}.brand img{width:75px;height:52px}.header-link{padding:.6rem .9rem}h1{font-size:2.7rem}.hero__grid{min-height:0}.section{padding-block:3.5rem}.optin__panel{box-shadow:7px 7px 0 var(--yellow)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.cards--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:780px;margin-inline:auto}
@media(max-width:700px){.cards--two{grid-template-columns:1fr}}

.course-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;margin:4rem 0;padding:clamp(1.6rem,4vw,3rem);border-radius:var(--radius);background:var(--yellow);color:var(--maroon)}
.course-cta h2{max-width:18ch;margin-bottom:.7rem}
.course-cta p:last-child{max-width:58ch;margin-bottom:0}
.course-cta__button{white-space:nowrap;background:var(--maroon);border-color:var(--maroon)}
.course-cta__button span{margin-left:.4rem}
@media(max-width:760px){.course-cta{grid-template-columns:1fr}.course-cta__button{width:100%}}

/* Video tutorial player */
.playlist{
  grid-template-columns:minmax(0,1fr) clamp(300px,28vw,380px);
  align-items:stretch;
  box-shadow:0 18px 45px rgba(61,15,17,.14);
}
.player{min-width:0;overflow:hidden;background:#080b0d}
.player iframe{display:block}
.lesson-list{
  position:relative;
  z-index:1;
  background:var(--maroon);
  height:100%;
  max-height:min(42vw,620px);
  overflow-y:auto;
  padding:1rem;
  scrollbar-width:thin;
  scrollbar-color:var(--yellow) rgba(255,255,255,.12);
}
.lesson-list::-webkit-scrollbar{width:7px}
.lesson-list::-webkit-scrollbar-thumb{background:var(--yellow);border-radius:99px}
.lesson{
  display:grid;
  grid-template-columns:2.25rem minmax(0,1fr) 1rem;
  align-items:center;
  gap:.7rem;
  padding:.82rem .9rem;
  margin:0 0 .35rem;
  line-height:1.35;
  transition:background .16s ease,color .16s ease;
}
.lesson__number{font-size:.78rem;font-weight:700;letter-spacing:.08em;opacity:.65}
.lesson__title{min-width:0;font-size:.92rem;font-weight:500}
.lesson__play{font-size:.65rem;opacity:0;transform:translateX(-4px);transition:opacity .16s ease,transform .16s ease}
.lesson:hover .lesson__play,.lesson.is-active .lesson__play{opacity:1;transform:none}
.lesson:focus-visible{outline:3px solid #fff;outline-offset:2px}

@media(max-width:850px){
  .playlist{grid-template-columns:1fr}
  .lesson-list{height:auto;max-height:340px}
}
