/* Soul Couture – Inner Runway pages (steps 01–03). Scoped under .sc-page. */
.sc-ir-body{margin:0;background:#fbf8f4}
.sc-page{
  --sc-bg:#fbf8f4;--sc-ink:#1f1d1b;--sc-muted:#7a716b;--sc-line:#e6ddd4;--sc-card:#fffdfa;--sc-blush:#f0dcd3;--sc-blush-2:#f7e9e3;
  --sc-serif:'didot','SC Didot',Didot,'Bodoni 72','Bodoni Moda',Georgia,serif;
  --sc-body:'Montserrat','Helvetica Neue',Arial,sans-serif;
  position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;
  background:var(--sc-bg);color:var(--sc-ink);font-family:var(--sc-body);font-size:16px;line-height:1.7;font-weight:400;
  -webkit-font-smoothing:antialiased;padding:0 18px;box-sizing:border-box;overflow-x:hidden}
.sc-page *,.sc-page *::before,.sc-page *::after{box-sizing:border-box}
/* neutralise theme button/input defaults */
.sc-page button,.sc-page .sc-btn,.sc-page .sc-answer,.sc-page .sc-answer__text,.sc-page .sc-link{white-space:normal;text-shadow:none;box-shadow:none;line-height:inherit}
.sc-page .sc-answer__text{flex:1 1 auto;min-width:0;display:block}
.sc-page::before,.sc-page::after{content:"";position:absolute;pointer-events:none;z-index:0;border-radius:50%;filter:blur(40px);opacity:.9}
.sc-page::before{width:70vw;height:70vw;max-width:620px;max-height:620px;right:-28vw;top:-22vw;
  background:radial-gradient(closest-side,var(--sc-blush) 0%,var(--sc-blush-2) 45%,rgba(251,248,244,0) 72%)}
.sc-page::after{width:60vw;height:60vw;max-width:520px;max-height:520px;left:-26vw;bottom:-20vw;
  background:radial-gradient(closest-side,var(--sc-blush) 0%,var(--sc-blush-2) 45%,rgba(251,248,244,0) 72%)}
.sc-top,.sc-main,.sc-bottom,.sc-step{position:relative;z-index:1;width:100%;max-width:640px;margin:0 auto}

/* header / footer */
.sc-top{display:flex;align-items:center;gap:16px;padding:28px 0 14px;font-size:11px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--sc-ink)}
.sc-top__brand{color:inherit;text-decoration:none;white-space:nowrap;padding-bottom:6px;border-bottom:1px solid var(--sc-ink)}
.sc-top__line{flex:1;height:1px;background:var(--sc-line)}
.sc-top__tag{font-size:9px;font-weight:500;letter-spacing:.3em;color:var(--sc-muted);white-space:nowrap}
.sc-step{font-size:10px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--sc-muted);padding:20px 0 0}
.sc-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:60px 0 40px;margin-top:auto;font-size:10px;font-weight:500;letter-spacing:.3em;text-transform:uppercase}
.sc-bottom__line{flex:1;height:1px;background:var(--sc-line)}
.sc-bottom__brand{color:var(--sc-ink);text-decoration:none}
.sc-bottom__meta{flex-basis:100%;text-align:center;font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:none;color:var(--sc-muted)}
.sc-bottom__meta a{color:var(--sc-muted);text-decoration:none;margin:0 6px}

/* main */
.sc-main{padding:40px 0 24px;flex:1}
.sc-screen{animation:sc-fade .45s ease both}
@keyframes sc-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sc-page .sc-h1{font-family:var(--sc-serif);font-weight:400;font-size:clamp(34px,8vw,48px);line-height:1.12;letter-spacing:-.005em;margin:14px 0 22px;color:var(--sc-ink)}
.sc-page .sc-h2{font-family:var(--sc-serif);font-weight:400;font-size:clamp(25px,5.6vw,32px);line-height:1.2;margin:12px 0 24px;color:var(--sc-ink)}
.sc-page .sc-eyebrow{font-size:10px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--sc-muted);margin:0 0 14px}
.sc-page .sc-sub{font-size:15px;font-style:italic;color:var(--sc-muted);margin:-14px 0 28px}
.sc-page .sc-lead{font-size:17px;font-weight:300;font-style:italic;line-height:1.6;margin:0 0 32px;color:var(--sc-ink)}
.sc-prose p{margin:0 0 22px;line-height:1.85}
.sc-prose strong{font-weight:600}
.sc-page .sc-note{font-size:13px;color:var(--sc-muted);font-style:italic;line-height:1.7;margin:30px 0 14px}
.sc-page .sc-meta{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sc-muted);line-height:1.8;margin:12px 0 36px}

/* buttons */
.sc-page .sc-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:58px;padding:16px 26px;
  font-family:var(--sc-body);font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;
  border:1px solid var(--sc-ink);border-radius:2px;cursor:pointer;transition:background .2s,color .2s,transform .1s;-webkit-tap-highlight-color:transparent}
.sc-page .sc-btn--primary{background:var(--sc-ink);color:#fbf8f4}
.sc-page .sc-btn--primary:hover,.sc-page .sc-btn--primary:focus,.sc-page .sc-btn--primary:active{background:#3a3532;color:#fbf8f4}
.sc-page .sc-btn--ghost{background:transparent;color:var(--sc-ink)}
.sc-page .sc-btn--ghost:hover,.sc-page .sc-btn--ghost:focus,.sc-page .sc-btn--ghost:active{background:#fff;color:var(--sc-ink)}
.sc-page .sc-btn:active{transform:translateY(1px)}
.sc-page .sc-btn[disabled]{opacity:.6;cursor:wait}
.sc-page .sc-link{background:none;border:0;padding:8px 0;font-family:var(--sc-body);font-size:13px;letter-spacing:.08em;color:var(--sc-muted);cursor:pointer}
.sc-page .sc-link:hover,.sc-page .sc-link:focus,.sc-page .sc-link:active{color:var(--sc-ink);background:none}

/* quiz */
.sc-progress{height:2px;background:var(--sc-line);margin:8px 0 32px;overflow:hidden}
.sc-progress__bar{height:100%;width:0;background:var(--sc-ink);transition:width .35s ease}
.sc-q__text{min-height:2.4em;margin-bottom:28px}
.sc-answers{display:flex;flex-direction:column;gap:14px;margin:16px 0 30px}
.sc-answer{display:flex;align-items:center;gap:16px;width:100%;text-align:left;padding:17px 18px 17px 14px;
  background:var(--sc-card);border:1px solid var(--sc-line);border-radius:6px;font-family:var(--sc-body);font-size:15px;line-height:1.45;color:var(--sc-ink);
  cursor:pointer;transition:border-color .15s,background .15s,transform .1s;-webkit-tap-highlight-color:transparent}
.sc-page .sc-answer:hover,.sc-page .sc-answer:focus,.sc-page .sc-answer:active{border-color:#cdbfb4;background:#fff;color:var(--sc-ink)}
.sc-page .sc-answer__text{color:var(--sc-ink)}
.sc-page .sc-answer.is-selected{border-color:var(--sc-ink);background:#fff;color:var(--sc-ink)}
.sc-answer:active{transform:scale(.995)}
.sc-answer__letter{flex:0 0 34px;height:34px;border-radius:50%;background:var(--sc-blush-2);display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--sc-serif);font-size:16px;color:var(--sc-ink);transition:background .15s,color .15s}
.sc-answer.is-selected .sc-answer__letter{background:var(--sc-ink);color:#fbf8f4}
.sc-q__nav{display:flex;justify-content:space-between;align-items:center}

/* forms */
.sc-form{margin-top:22px}
.sc-form__intro{margin:0 0 14px}
.sc-field{display:block;margin:0 0 22px}
.sc-field__label{display:block;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--sc-muted);margin-bottom:10px}
.sc-page .sc-field__input{width:100%;min-height:56px;padding:14px 18px;background:var(--sc-card);border:1px solid var(--sc-line);border-radius:4px;
  font-family:var(--sc-body);font-size:16px;color:var(--sc-ink);outline:none;transition:border-color .15s;-webkit-appearance:none;appearance:none}
.sc-page .sc-field__input:focus{border-color:var(--sc-ink)}
.sc-page .sc-field__input::placeholder{color:#b5aba3;font-style:italic}
.sc-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.sc-consent{display:flex;gap:12px;align-items:flex-start;font-size:12.5px;line-height:1.55;color:var(--sc-muted);margin:12px 0 28px;cursor:pointer}
.sc-consent input{margin:5px 0 0;width:18px;height:18px;flex:0 0 18px;accent-color:#1f1d1b}
.sc-consent a{color:var(--sc-ink)}
.sc-page .sc-form__error{margin:0 0 12px;padding:10px 14px;border:1px solid #d9a9a1;background:#fbeeea;color:#7a2e26;font-size:14px;border-radius:4px}
.sc-form.is-busy .sc-btn span{opacity:.55}

/* result */
.sc-result__mostly{font-family:var(--sc-serif);font-size:22px;margin:20px 0 0;color:var(--sc-muted)}
.sc-page .sc-result__name{margin-top:0;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(30px,7.4vw,44px)}
.sc-block{margin:38px 0 0;padding:32px 0 0;border-top:1px solid var(--sc-line)}
.sc-block__q{font-family:var(--sc-serif);font-size:24px;line-height:1.3;margin:4px 0 0}
.sc-intention{padding:24px 26px;border:1px solid var(--sc-line);background:var(--sc-card);font-family:var(--sc-serif);font-size:21px;line-height:1.35;border-radius:4px}
.sc-outro{margin:56px 0 0;padding:42px 0 0;border-top:1px solid var(--sc-ink)}
.sc-steps{list-style:none;counter-reset:sc;padding:0;margin:8px 0 12px}
.sc-steps li{counter-increment:sc;display:grid;grid-template-columns:38px 1fr;gap:6px 14px;padding:18px 0;border-bottom:1px solid var(--sc-line)}
.sc-steps li::before{content:counter(sc,decimal-leading-zero);grid-row:1/3;font-family:var(--sc-serif);font-size:26px;line-height:1;color:var(--sc-muted);padding-top:2px}
.sc-steps__name{font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase}
.sc-steps__text{font-size:15px;color:var(--sc-ink)}
.sc-cta{margin:36px 0 0;padding:34px 26px;background:var(--sc-card);border:1px solid var(--sc-line);border-radius:6px}
.sc-cta .sc-prose{margin-bottom:16px}
.sc-next{margin:52px 0 12px;text-align:center}
.sc-next .sc-eyebrow{margin-bottom:18px}

/* meditation */
.sc-done__link{margin:8px 0 10px}
.sc-audio{margin:36px 0 16px;padding:40px 24px 28px;background:var(--sc-card);border:1px solid var(--sc-line);border-radius:8px;text-align:center;user-select:none;-webkit-user-select:none}
.sc-audio audio{display:none}
.sc-page [hidden],.sc-audio svg[hidden]{display:none!important}
.sc-audio__play{width:92px;height:92px;border-radius:50%;border:1px solid var(--sc-ink);background:var(--sc-ink);color:#fbf8f4;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  transition:transform .15s,background .2s;-webkit-tap-highlight-color:transparent;box-shadow:0 10px 30px rgba(31,29,27,.15)}
.sc-page .sc-audio__play:hover,.sc-page .sc-audio__play:focus,.sc-page .sc-audio__play:active{background:#3a3532;color:#fbf8f4}
.sc-audio__play:active{transform:scale(.97)}
.sc-audio__play[disabled]{opacity:.5;cursor:wait}
.sc-audio.is-playing .sc-audio__play{animation:sc-breathe 5s ease-in-out infinite}
@keyframes sc-breathe{0%,100%{box-shadow:0 10px 30px rgba(31,29,27,.15)}50%{box-shadow:0 10px 50px rgba(224,190,178,.75)}}
.sc-audio__track{position:relative;height:28px;margin:26px 4px 4px;cursor:pointer;touch-action:none}
.sc-audio__track::before{content:"";position:absolute;left:0;right:0;top:13px;height:2px;background:var(--sc-line)}
.sc-audio__fill{position:absolute;left:0;top:13px;height:2px;width:0;background:var(--sc-ink)}
.sc-audio__knob{position:absolute;top:7px;left:0;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--sc-ink);transition:transform .15s}
.sc-audio__track:hover .sc-audio__knob{transform:scale(1.2)}
.sc-audio__time{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.14em;color:var(--sc-muted);font-variant-numeric:tabular-nums;padding:0 4px}
.sc-audio__status{min-height:1.2em;margin:12px 0 0;font-size:13px;font-style:italic;color:var(--sc-muted)}

/* book */
.sc-offer{display:flex;align-items:center;gap:22px;margin:14px 0 36px;padding:24px 26px;border:1px solid var(--sc-line);background:var(--sc-card);border-radius:6px}
.sc-offer__num{font-family:var(--sc-serif);font-size:58px;line-height:1;letter-spacing:-.02em}
.sc-offer__num small{font-size:26px;vertical-align:top;margin-left:2px}
.sc-offer__txt{font-size:11px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;line-height:1.6;color:var(--sc-muted)}

@media (min-width:700px){
  .sc-page{padding:0 32px;font-size:17px}
  .sc-main{padding-top:64px}
  .sc-page .sc-btn{width:auto;min-width:280px}
  .sc-answers{gap:16px}
}
@media (prefers-reduced-motion:reduce){.sc-screen,.sc-audio.is-playing .sc-audio__play{animation:none}}
