/* Ste Lane site styles.
   One theme: forest green dominant, bone text, sand for muted labels, tangerine as the single accent.
   Shape rule: buttons and chips are full pills; text fields are 16px; photos and panels are 28px;
   portrait photos use the arch (pill top, 28px bottom). */

:root{
  --forest:#0f2a1e;
  --forest-2:#15382a;
  --forest-3:#1d4936;
  --line:rgba(247,243,234,.16);
  --bone:#f7f3ea;
  --body:#e6e1d5;
  --sand:#d4c19b;
  --tang:#ff7538;
  --tang-hi:#ff9563;
  --on-tang:#0f2a1e;
  --field:#fffaf4;
  --display:'Bricolage Grotesque','Trebuchet MS',sans-serif;
  --text:'DM Sans','Helvetica Neue',Arial,sans-serif;
  --r-pill:999px;
  --r-field:16px;
  --r-frame:28px;
  --wrap:1180px;
  --gutter:clamp(20px,4vw,40px);
  --ease:cubic-bezier(.16,1,.3,1);
  --spring:cubic-bezier(.34,1.56,.64,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--forest);
  color:var(--body);
  font-family:var(--text);
  font-size:17px;
  line-height:1.6;
  overflow-x:hidden;
  background-image:
    radial-gradient(ellipse 60% 40% at 85% 0%,rgba(255,117,56,.10),transparent 70%),
    radial-gradient(ellipse 50% 50% at 0% 30%,rgba(76,140,96,.16),transparent 70%);
  background-repeat:no-repeat;
}
/* Grain lives on a fixed, non-scrolling layer so it never repaints with the page. */
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");
}
img{display:block;max-width:100%;height:auto}
picture{display:block}
.frame picture,.arch picture,.door-img picture{height:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--tang);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--tang);color:var(--on-tang);padding:10px 16px;border-radius:var(--r-pill);font-weight:700;text-decoration:none}
.skip:focus{top:12px}
#top-sentinel{position:absolute;top:0;left:0;width:1px;height:12px}

/* Type */
h1,h2,h3{font-family:var(--display);color:var(--bone);font-weight:800;letter-spacing:-.02em}
h1{font-size:clamp(32px,4.2vw,52px);line-height:1.08}
h2{font-size:clamp(28px,3.1vw,40px);line-height:1.1}
h3{font-size:clamp(22px,2vw,26px);line-height:1.2}
.lede{font-size:clamp(17px,1.5vw,19px);color:var(--body);max-width:44ch}
h1+.lede,h2+.lede{margin-top:14px}
.muted{color:var(--sand)}
.tang{color:var(--tang)}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;gap:.55em;white-space:nowrap;
  font-family:var(--text);font-weight:700;font-size:16px;line-height:1;
  padding:16px 26px;border-radius:var(--r-pill);border:2px solid transparent;
  text-decoration:none;cursor:pointer;
  transition:background-color .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--spring);
}
.btn svg{width:18px;height:18px;flex-shrink:0;transition:transform .3s var(--spring)}
.btn:hover svg{transform:translateX(3px)}
.btn:active{transform:translateY(1px) scale(.98)}
.btn-tang{background:var(--tang);color:var(--on-tang)}
.btn-tang:hover{background:var(--tang-hi)}
.btn-line{border-color:rgba(247,243,234,.55);color:var(--bone)}
.btn-line:hover{border-color:var(--tang);color:var(--tang)}
.btn-forest{background:var(--forest);color:var(--bone)}
.btn-forest:hover{background:var(--forest-3)}
.btn[disabled]{opacity:.6;cursor:wait}
.textlink{display:inline-flex;align-items:center;gap:.4em;font-weight:700;color:var(--bone);text-decoration:none;border-bottom:2px solid var(--tang);padding-bottom:2px;transition:color .2s}
.textlink:hover{color:var(--tang)}
.textlink svg{width:16px;height:16px}

/* Nav */
.nav{position:sticky;top:0;z-index:50;transition:background-color .3s,box-shadow .3s}
.nav.is-stuck{background:rgba(15,42,30,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.nav-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.wordmark{font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:-.02em;color:var(--bone);text-decoration:none}
.wordmark span{color:var(--tang)}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none}
.nav-links a{color:var(--body);text-decoration:none;font-weight:500;font-size:16px;transition:color .2s}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--tang)}
.nav-links .btn{padding:12px 20px;font-size:15px}
.nav-links .btn:hover{color:var(--on-tang)}
.ext{display:inline-flex;align-items:center;gap:4px}
.ext svg{width:13px;height:13px}
.menu-btn{display:none;align-items:center;gap:8px;background:none;border:2px solid var(--line);color:var(--bone);font:700 15px var(--text);padding:10px 16px;border-radius:var(--r-pill);cursor:pointer}
.menu-sheet{display:none}

/* Hero */
.hero{padding:32px 0 64px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}
.hero-copy h1{max-width:13ch}
.hero-copy .lede{margin-top:20px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-photo{position:relative;justify-self:end;width:min(100%,460px)}
.hero-photo .sun{position:absolute;width:44%;aspect-ratio:1;border-radius:50%;background:var(--tang);top:-4%;right:-6%;z-index:0}
.arch{position:relative;z-index:1;border-radius:var(--r-pill) var(--r-pill) var(--r-frame) var(--r-frame);overflow:hidden;aspect-ratio:4/5;background:var(--forest-2)}
.arch img{width:100%;height:100%;object-fit:cover}

/* Hero entrance cascade */
.rise{opacity:0;transform:translateY(18px);animation:rise .9s var(--ease) forwards}
.rise-1{animation-delay:.1s}.rise-2{animation-delay:.25s}.rise-3{animation-delay:.4s}.rise-4{animation-delay:.55s}
.pop{opacity:0;transform:scale(.6);animation:pop 1s var(--spring) .5s forwards}
@keyframes rise{to{opacity:1;transform:none}}
@keyframes pop{to{opacity:1;transform:none}}

/* Topic marquee (the one marquee on the site) */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:18px 0;background:var(--forest-2)}
.marquee-track{display:flex;width:max-content;animation:slide 38s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee ul{display:flex;list-style:none;flex-shrink:0}
.marquee li{font-family:var(--display);font-weight:700;font-size:clamp(20px,2.2vw,28px);color:var(--bone);white-space:nowrap;display:flex;align-items:center}
.marquee li::after{content:'\2731';color:var(--tang);font-size:.7em;margin:0 .9em}
@keyframes slide{to{transform:translateX(-50%)}}

/* Sections */
.section{padding:clamp(56px,7vw,96px) 0}
.section-head{max-width:640px;margin-bottom:36px}
.section-head p{margin-top:14px}

/* Podcast teaser */
.pod-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:start}
.frame{border-radius:var(--r-frame);overflow:hidden;background:var(--forest-2)}
.frame img{width:100%;height:100%;object-fit:cover}
.pod-photo{aspect-ratio:4/5}
.pod-photo img{object-position:46% 30%}
.ep-list{list-style:none;display:grid;gap:4px}
.ep{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;padding:14px;border-radius:20px;text-decoration:none;transition:background-color .25s}
.ep:hover{background:var(--forest-2)}
.ep:hover .ep-go{background:var(--tang);color:var(--on-tang);transform:rotate(-45deg)}
.ep-art{width:64px;height:64px;border-radius:14px;object-fit:cover;background:var(--forest-3)}
.ep-meta{font-size:14px;font-weight:500;color:var(--sand);letter-spacing:.02em}
.ep-title{font-family:var(--display);font-weight:700;font-size:19px;line-height:1.25;color:var(--bone);margin-top:2px}
.ep-go{width:44px;height:44px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:var(--bone);transition:transform .35s var(--spring),background-color .25s,color .25s}
.ep-go svg{width:18px;height:18px}
.ep-skel .ep-art,.ep-skel .bar{background:linear-gradient(90deg,var(--forest-2),var(--forest-3),var(--forest-2));background-size:200% 100%;animation:shimmer 1.4s linear infinite}
.ep-skel .bar{display:block;height:14px;border-radius:7px;margin:6px 0}
.ep-skel .bar-short{width:40%}
@keyframes shimmer{to{background-position:-200% 0}}
.listen-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.chip-link{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:var(--r-pill);border:2px solid var(--line);color:var(--bone);text-decoration:none;font-weight:700;font-size:15px;transition:border-color .2s,color .2s}
.chip-link svg{width:18px;height:18px}
.chip-link:hover{border-color:var(--tang);color:var(--tang)}
.feed-error{padding:18px 20px;border-radius:20px;background:var(--forest-2);color:var(--body)}

/* Ask panel */
.ask{background:var(--tang);color:var(--on-tang);border-radius:var(--r-frame);padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);position:relative;overflow:hidden}
.ask h2,.ask h1{color:var(--on-tang)}
.ask p{color:var(--on-tang)}
.ask .lede{color:var(--on-tang)}
.ask-ideas{margin-top:28px}
.ask-ideas-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ask-ideas-head p{font-weight:700;font-size:15px}
.shuffle{display:inline-flex;align-items:center;gap:6px;background:var(--on-tang);color:var(--bone);border:0;border-radius:var(--r-pill);padding:9px 14px;font:700 14px var(--text);cursor:pointer;transition:transform .3s var(--spring)}
.shuffle svg{width:16px;height:16px}
.shuffle:active{transform:scale(.94)}
.idea-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;min-height:96px;align-content:flex-start}
.idea{background:rgba(255,250,244,.55);color:var(--on-tang);border:2px solid transparent;border-radius:var(--r-pill);padding:9px 15px;font:500 15px var(--text);text-align:left;cursor:pointer;transition:background-color .2s,border-color .2s,transform .3s var(--spring)}
.idea:hover{background:var(--field);border-color:var(--on-tang)}
.idea.in{animation:pop .5s var(--spring) both}

/* Forms */
.form{display:grid;gap:18px}
.field{display:grid;gap:7px}
.field label,.field legend{font-weight:700;font-size:15px;color:var(--bone)}
.field .help{font-size:14px;color:var(--sand)}
.field input,.field textarea,.field select{
  width:100%;font:500 17px var(--text);color:var(--forest);background:var(--field);
  border:2px solid transparent;border-radius:var(--r-field);padding:14px 16px;
  transition:border-color .2s,box-shadow .2s;
}
.field textarea{min-height:120px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#5b6b60}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--tang);box-shadow:0 0 0 4px rgba(255,117,56,.28)}
.field .err{display:none;font-size:14px;font-weight:700;color:#ffb48f}
.field.invalid .err{display:block}
.field.invalid input,.field.invalid textarea,.field.invalid select{border-color:#ffb48f}
.ask .field label,.ask .field legend{color:var(--on-tang)}
.ask .field .help{color:#3b2a1d}
.ask .field input,.ask .field textarea{background:var(--field)}
.ask .field input:focus,.ask .field textarea:focus{border-color:var(--on-tang);box-shadow:0 0 0 4px rgba(15,42,30,.22)}
.ask .field .err{color:#5a1406}
.ask .field.invalid input,.ask .field.invalid textarea{border-color:#5a1406}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.choices{display:flex;flex-wrap:wrap;gap:8px;border:0}
.choices legend{margin-bottom:8px}
.choice{position:relative}
.choice input{position:absolute;opacity:0;pointer-events:none}
.choice span{display:inline-block;padding:11px 16px;border-radius:var(--r-pill);border:2px solid var(--line);color:var(--bone);font-weight:500;font-size:15px;cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.choice input:checked+span{background:var(--tang);border-color:var(--tang);color:var(--on-tang);font-weight:700}
.choice input:focus-visible+span{outline:3px solid var(--tang);outline-offset:3px}
.hp{position:absolute;left:-9999px}
.form>.help{font-size:14px;color:var(--sand);margin-top:-6px}
.ask .form>.help{color:#3b2a1d}
.spotify-embed{width:100%;height:352px;border:0;border-radius:var(--r-frame);background:var(--forest-2);display:block}
.form-note{font-size:14px;color:var(--sand)}
.form-note a{color:var(--bone)}
.form-status{display:none;padding:16px 18px;border-radius:var(--r-field);font-weight:700}
.form-status.ok{display:block;background:var(--forest-3);color:var(--bone)}
.form-status.bad{display:block;background:#5a1406;color:#ffe6dc}
.ask .form-status.ok{background:var(--forest);color:var(--bone)}
.form.sent .field,.form.sent .row-2,.form.sent button[type="submit"],.form.sent .choices{display:none}

/* Waitlist */
.waitlist{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(28px,5vw,56px);border:2px solid var(--line);border-radius:var(--r-frame)}
.waitlist .form{grid-template-columns:1fr 1fr;align-items:start}
.waitlist .form .form-status,.waitlist .form .form-note,.waitlist .form button{grid-column:1/-1}
.waitlist .form button{justify-self:start}
.waitlist-aside{margin-top:22px}

/* Doors bento: three content items, three cells */
.doors{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:16px}
.door{position:relative;border-radius:var(--r-frame);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;min-height:240px;background:var(--forest-2);transition:background-color .3s}
.door h3{display:flex;align-items:center;gap:10px}
.door h3 svg{width:22px;height:22px;transition:transform .35s var(--spring)}
.door:hover h3 svg{transform:translateX(4px) rotate(-45deg)}
.door p{margin-top:8px;max-width:38ch}
.door:hover{background:var(--forest-3)}
.door-big{grid-row:1/3;padding:0;background:var(--forest-2)}
.door-big .door-img{position:relative;flex:1;min-height:300px;overflow:hidden}
.door-big .door-img picture{position:absolute;inset:0}
.door-big .door-img img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transition:transform .8s var(--ease)}
.door-big:hover .door-img img{transform:scale(1.04)}
.door-big .door-copy{padding:26px 28px 30px}
.door-media{background:var(--forest-3)}
.door-media::before{content:'';position:absolute;inset:0;background:url('/assets/img/ste-studio-purple.webp') center 30%/cover;filter:grayscale(1) contrast(1.1);mix-blend-mode:luminosity;opacity:.28;transition:opacity .4s}
.door-media:hover::before{opacity:.4}
.door-media>*{position:relative}

/* Page headers (inner pages) */
.page-head{padding:40px 0 56px}
.page-head .lede{margin-top:16px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.narrow>*{max-width:760px}
.form-panel{background:var(--forest-2);border-radius:var(--r-frame);padding:clamp(24px,4vw,44px)}

.section-tight{padding:clamp(24px,4vw,48px) 0}
.section-flush{padding-top:0}
.page-short{padding:clamp(64px,12vw,140px) 0}
.side-photo{aspect-ratio:3/2}
.pod-ask{margin-top:36px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
fieldset.field{border:0;min-width:0}

/* Start here */
.start-bio{align-items:start}
.bio h2{margin-bottom:18px}
.first-listen{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,4vw,40px);border-radius:var(--r-frame);background:var(--tang);color:var(--on-tang);text-decoration:none;transition:transform .4s var(--spring),background-color .25s}
.first-listen:hover{background:var(--tang-hi);transform:rotate(-1.5deg) translateY(-4px)}
.first-listen-tag{font-weight:700;font-size:15px}
.first-listen-title{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,32px);line-height:1.15;letter-spacing:-.01em}
.first-listen-go{display:inline-flex;align-items:center;gap:8px;font-weight:700;border-bottom:2px solid var(--on-tang);align-self:flex-start;padding-bottom:2px}
.first-listen-go svg{width:16px;height:16px}
.paths+.hero-ctas{margin-top:36px}
.bio p+p{margin-top:16px}
.bio p{max-width:58ch}
.topics{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin-top:8px}
.topics li{padding:10px 16px;border-radius:var(--r-pill);background:var(--forest-2);color:var(--bone);font-weight:500;font-size:15px}
.paths{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:32px}
.path{display:flex;gap:16px;align-items:flex-start;padding:24px;border-radius:var(--r-frame);border:2px solid var(--line);text-decoration:none;transition:border-color .25s,background-color .25s}
.path:hover{border-color:var(--tang);background:var(--forest-2)}
.path svg{width:28px;height:28px;flex-shrink:0;color:var(--tang);margin-top:2px}
.path h3{font-size:22px}
.path p{margin-top:4px;font-size:16px}

/* Podcast hub */
.show-head{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,44px);align-items:center}
.show-art{width:clamp(120px,18vw,200px);aspect-ratio:1;border-radius:var(--r-frame);object-fit:cover;background:var(--forest-2)}
.tabs{display:inline-flex;gap:6px;padding:6px;border-radius:var(--r-pill);background:var(--forest-2);margin-bottom:28px}
.tab{border:0;background:none;color:var(--body);font:700 16px var(--text);padding:11px 22px;border-radius:var(--r-pill);cursor:pointer;transition:background-color .2s,color .2s}
.tab[aria-selected="true"]{background:var(--tang);color:var(--on-tang)}
.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.vid{text-decoration:none;display:block}
.vid .frame{aspect-ratio:16/9;position:relative}
.vid .frame img{transition:transform .6s var(--ease)}
.vid:hover .frame img{transform:scale(1.04)}
.vid h3{font-size:18px;line-height:1.3;margin-top:12px}
.vid .ep-meta{margin-top:4px}
.vid-grid .vid:first-child{grid-column:span 2;grid-row:span 2}
.vid-grid .vid:first-child h3{font-size:24px}

/* Prose pages */
.prose{max-width:68ch}
.prose h2{font-size:28px;margin:36px 0 10px}
.prose p,.prose li{margin-top:12px}
.prose ul{padding-left:1.2em}
.prose a{color:var(--bone)}

/* Footer */
.footer{border-top:1px solid var(--line);padding:56px 0 40px;margin-top:40px}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
.footer .wordmark{font-size:clamp(40px,6vw,64px);line-height:1}
.socials{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin-top:22px}
.socials a{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--line);color:var(--bone);transition:border-color .2s,color .2s,transform .3s var(--spring)}
.socials a:hover{border-color:var(--tang);color:var(--tang);transform:translateY(-2px)}
.socials svg{width:20px;height:20px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;list-style:none}
.footer-links a{color:var(--body);text-decoration:none;font-weight:500}
.footer-links a:hover{color:var(--tang)}
.footer-base{margin-top:44px;font-size:14px;color:var(--sand)}

/* Scroll reveal: hidden only when JS is running (html.js), shown when JS adds .is-in */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .reveal.is-in{opacity:1;transform:none}

/* Tablet and down */
@media (max-width:1023px){
  .nav-links{display:none}
  .menu-btn{display:inline-flex}
  .menu-sheet[data-open="true"]{display:block;position:absolute;left:0;right:0;top:68px;background:var(--forest);border-bottom:1px solid var(--line);padding:12px var(--gutter) 24px}
  .menu-sheet ul{list-style:none;display:grid;gap:4px}
  .menu-sheet a{display:block;padding:14px 4px;font-family:var(--display);font-weight:700;font-size:22px;color:var(--bone);text-decoration:none;border-bottom:1px solid var(--line)}
  .menu-sheet .btn{margin-top:16px;display:inline-flex;border-bottom:0;font-family:var(--text);font-size:16px;color:var(--on-tang)}
  .vid-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  body{font-size:16px}
  .hero{padding:8px 0 48px}
  .hero-grid{grid-template-columns:1fr;gap:24px}
  .hero-photo{order:-1;justify-self:center;width:100%}
  .arch{aspect-ratio:auto;height:44svh;min-height:280px;max-height:420px}
  .arch img{object-position:50% 22%}
  .hero-photo .sun{width:34%;right:-2%;top:-3%}
  .hero-copy h1{max-width:none}
  .hero-ctas{margin-top:24px}
  .hero-ctas .btn{flex:1 1 auto;justify-content:center}
  .pod-grid,.ask,.waitlist,.split,.footer-top{grid-template-columns:1fr}
  .pod-photo{aspect-ratio:3/2}
  .ep{grid-template-columns:56px 1fr auto;padding:12px 6px;gap:12px}
  .ep-art{width:56px;height:56px}
  .ep-title{font-size:17px}
  .waitlist .form{grid-template-columns:1fr}
  .row-2{grid-template-columns:1fr}
  .section{padding:48px 0}
  .doors{grid-template-columns:1fr;grid-template-rows:none}
  .door{min-height:0;padding:24px}
  .door-big{grid-row:auto;padding:0}
  .door-big .door-img{flex:none;height:280px;min-height:0}
  .socials{gap:8px}
  .socials a{width:42px;height:42px}
  .socials svg{width:18px;height:18px}
  .paths{grid-template-columns:1fr}
  .show-head{grid-template-columns:1fr}
  .tabs{display:flex;width:100%}
  .tab{flex:1 1 auto;padding:11px 10px;font-size:15px;white-space:nowrap}
  .vid-grid{grid-template-columns:1fr}
  .vid-grid .vid:first-child{grid-column:auto;grid-row:auto}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rise,.pop,.js .reveal{opacity:1;transform:none;animation:none;transition:none}
  .marquee-track{animation:none;flex-wrap:wrap;width:auto}
  .marquee ul[aria-hidden="true"]{display:none}
  .marquee ul{flex-wrap:wrap;row-gap:6px;padding:0 var(--gutter)}
  .ep-skel .ep-art,.ep-skel .bar{animation:none}
  .idea.in{animation:none}
  *{transition-duration:.01ms !important}
}

/* Paid to Play sales page */
.kicker{font-weight:700;font-size:15px;color:var(--tang);letter-spacing:.02em;margin-bottom:14px}
.p2p-sub{font-family:var(--display);font-weight:700;font-size:clamp(22px,2.4vw,30px);color:var(--sand);margin-top:10px;letter-spacing:-.01em}
.facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin-top:28px}
.facts li{padding:10px 16px;border-radius:var(--r-pill);background:var(--forest-2);color:var(--body);font-size:15px}
.facts strong{color:var(--bone)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps li{padding:clamp(22px,3vw,32px);border-radius:var(--r-frame);background:var(--forest-2)}
.steps p{margin-top:8px}
.step-n{display:block;font-family:var(--display);font-weight:800;font-size:15px;color:var(--tang);margin-bottom:14px}
.steps-tight{grid-template-columns:1fr 1fr;margin-top:32px}
.page-short .steps-tight+.hero-ctas{margin-top:32px}
.deal{align-items:center}
.deal-price{margin-top:18px;font-weight:700}
.deal-price span{display:block;font-family:var(--display);font-weight:800;font-size:clamp(56px,7vw,88px);line-height:1;letter-spacing:-.03em}
.deal .lede{margin-top:18px}
.deal-list{list-style:none;display:grid;gap:10px;margin-bottom:26px}
.deal-list li{display:flex;gap:10px;font-weight:500;font-size:17px}
.deal-list li::before{content:'\2731';font-size:.8em;line-height:1.9}
.deal-note{margin-top:18px;font-size:15px}
.faq{margin-top:24px;display:grid;gap:10px}
.faq details{border-radius:20px;background:var(--forest-2);padding:0 22px}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-family:var(--display);font-weight:700;font-size:19px;color:var(--bone);display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--tang);font-size:24px;line-height:1;transition:transform .3s var(--spring)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:20px;max-width:62ch}
.faq a{color:var(--bone)}
.faq+.hero-ctas{margin-top:32px}
@media (max-width:1023px){.steps{grid-template-columns:1fr}}
@media (max-width:767px){.steps-tight{grid-template-columns:1fr}}
.cta-note{margin-top:16px;font-size:15px;color:var(--sand)}
.story h2{margin-bottom:22px}
.story p{max-width:60ch;font-size:clamp(17px,1.5vw,19px)}
.story p+p{margin-top:16px}
.story-turn{color:var(--bone);font-weight:700}
.story-voices{font-family:var(--display);font-weight:700;font-style:italic;color:var(--sand);padding-left:18px;border-left:3px solid var(--tang)}
.story-punch{color:var(--bone);font-weight:700}
.idea-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(28px,5vw,64px);border-radius:var(--r-frame);background:var(--forest-2)}
.idea-quote{font-size:clamp(28px,3.4vw,44px);line-height:1.12}
.idea-copy p+p{margin-top:14px}
.idea-close{color:var(--tang);font-weight:700}
.notfor{margin-top:24px;padding:clamp(22px,3vw,32px);border-radius:var(--r-frame);border:2px dashed var(--line)}
.notfor ul{list-style:none;display:grid;gap:8px;margin-top:12px}
.notfor li{display:flex;gap:10px}
.notfor li::before{content:'\2715';color:var(--sand);font-size:.85em;line-height:1.9}
.weeks{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.weeks li{padding:clamp(22px,3vw,30px);border-radius:var(--r-frame);border:2px solid var(--line)}
.weeks h3{font-size:clamp(26px,2.4vw,32px)}
.weeks p{margin-top:8px;font-size:16px}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,72px);align-items:center}
.about-photo{aspect-ratio:4/5}
.about-photo img{object-position:50% 25%}
.deal{align-items:start}
.deal-label{font-weight:700;margin-bottom:12px}
.deal-note strong{font-weight:800}
.deal-close{margin-top:14px;font-size:15px;font-weight:700}
@media (max-width:1023px){.weeks{grid-template-columns:1fr 1fr}.idea-panel{grid-template-columns:1fr}}
@media (max-width:767px){.weeks,.about-grid{grid-template-columns:1fr}.about-photo{aspect-ratio:1}}

/* Paid to Play promo: site-wide top bar and homepage panel */
.promo-bar{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px var(--gutter);background:var(--tang);color:var(--on-tang);text-decoration:none;font-size:15px;line-height:1.4;text-align:center;position:relative;z-index:60}
.promo-bar strong{font-weight:800}
.promo-go{display:inline-flex;align-items:center;gap:6px;font-weight:700;border-bottom:2px solid var(--on-tang)}
.promo-go svg{width:15px;height:15px;transition:transform .3s var(--spring)}
.promo-bar:hover .promo-go svg{transform:translateX(3px)}
.promo-dot{width:9px;height:9px;border-radius:50%;background:var(--on-tang);animation:blink 1.6s ease-in-out infinite}
@keyframes blink{50%{opacity:.25}}
.p2p-promo{align-items:center}
.promo-kicker{font-weight:800;font-size:15px;letter-spacing:.02em;margin-bottom:10px}
.p2p-promo h2{font-size:clamp(40px,5.4vw,72px);line-height:1}
.promo-sub{font-family:var(--display);font-weight:700;font-size:clamp(20px,2.2vw,26px);margin-top:10px}
.p2p-promo .lede{margin-top:16px}
.p2p-promo .hero-ctas{margin-top:26px}
.btn-ink-line{border-color:var(--on-tang);color:var(--on-tang)}
.btn-ink-line:hover{background:var(--on-tang);color:var(--tang)}
.promo-note{margin-top:16px;font-size:15px;font-weight:500}
.promo-weeks{list-style:none;display:grid;gap:10px}
.promo-weeks li{display:flex;align-items:baseline;gap:16px;padding:18px 22px;border-radius:20px;background:rgba(15,42,30,.1);font-family:var(--display);font-weight:800;font-size:clamp(26px,2.8vw,36px);color:var(--on-tang);letter-spacing:-.02em}
.promo-weeks span{font-family:var(--text);font-weight:700;font-size:14px;min-width:58px;letter-spacing:0}
@media (max-width:767px){.promo-bar{font-size:14px;gap:6px 10px}.p2p-promo .hero-ctas .btn{flex:1 1 auto;justify-content:center}}
@media (prefers-reduced-motion:reduce){.promo-dot{animation:none}}
@media (max-width:767px){.promo-long,.promo-dot{display:none}.promo-bar{flex-wrap:nowrap;white-space:nowrap;padding:10px 16px}}
