@font-face{font-family:"Noto Serif";src:url("./media/fonts/noto-serif.woff") format("woff");font-display:swap}
@font-face{font-family:"Noto Serif";src:url("./media/fonts/noto-serif-italic.woff") format("woff");font-style:italic;font-display:swap}
@font-face{font-family:"Open Sans";src:url("./media/fonts/open-sans.woff") format("woff");font-display:swap}
@font-face{font-family:"Open Sans";src:url("./media/fonts/open-sans-bold.woff") format("woff");font-weight:700;font-display:swap}

.home-page{--serif:"Noto Serif",Georgia,serif;font-family:"Open Sans",system-ui,sans-serif}
.home-masthead,.home-hero{--home-peach:#f4b88f;--home-border:#785746;color:#fff1e2}
.home-masthead{margin-top:20px;background:#211510;border-radius:25px 25px 0 0;padding-inline:clamp(18px,4vw,40px)}
.home-masthead .top{min-height:76px;border-bottom:1px solid #795744;padding:0}
.home-masthead .top nav{align-items:center;color:#e5cdbc}
.home-masthead .top .home-login{padding:0 18px;border:1px solid var(--home-border);border-radius:999px;color:#fff1e2}
.home-hero{border:0;border-radius:0 0 25px 25px;background:linear-gradient(125deg,#1b110d,#302019);grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);align-items:center;gap:clamp(22px,4vw,54px);padding:clamp(25px,4vw,48px);overflow:visible}
.home-hero .hero-content{padding:0}
.home-hero h1{font-size:clamp(38px,5.1vw,74px);letter-spacing:-.055em;line-height:1.11}
.home-hero h1 em{color:var(--home-peach)}
.home-hero .hero-copy{max-width:initial;color:#dec4b3;margin:19px 0 23px}
.home-hero .hero-copy p{margin:0 0 5px}
.home-hero .hero-copy p:first-child{color:#fff1e2}
.home-hero .primary{background:var(--home-peach);border-color:var(--home-peach);min-height:44px}
.home-hero .primary:hover{background:#ffd0ac}
.hero-topics{display:flex;flex-wrap:wrap;gap:7px;margin-top:32px}
.hero-topics p{flex-basis:100%;margin:0 0 3px;text-transform:uppercase;letter-spacing:.12em;color:#e4c4b0;font-size:11px;font-weight:700}
.hero-topics a{border:1px solid var(--home-border);border-radius:999px;padding:7px 12px;font-size:13px;background:#36261d;min-height:42px;display:inline-flex;align-items:center}
.hero-topics a:hover{border-color:var(--home-peach)}
.hero-feature{min-width:0}
.hero-preview{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:34px;min-height:clamp(245px,34vw,395px);padding:15px;overflow:hidden;border-radius:21px;background:#38251a}
.hero-cover{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover}
.hero-preview-label{border-radius:999px;margin:0;background:#362219;color:#fff1e2;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 10px}
.hero-player{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:center;padding:12px 14px;border:1px solid #8a6651;border-radius:14px;background:#2b1c15}
.hero-player h2{font-size:clamp(19px,2.4vw,28px);letter-spacing:-.025em}
.hero-player p{margin:4px 0 0;color:#dfc4b4;font-size:12px}
#hero-play:not([hidden]){display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--home-peach);color:#301c12}
#hero-play span{width:13px;height:14px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%);transform:translateX(1px)}
#hero-play.is-playing span{clip-path:none;transform:none;border-inline:4px solid currentColor;background:none}
#hero-audio,#hero-progress,#hero-audio-status{grid-column:1/-1;width:100%}
#hero-progress{height:7px;margin-block:6px;accent-color:var(--home-peach)}
.hero-author{display:inline-flex;align-items:center;gap:10px;font-size:13px;margin-top:14px}
.hero-author img{object-fit:cover;object-position:center 35%;border-radius:50%}
.hero-author small{display:block;color:#dec4b3;font-size:11px}

@media(max-width:700px){
  .home-masthead{margin-top:12px}
  .home-masthead .top{display:flex;min-height:63px}
  .home-masthead .top nav a:not(.home-login){display:none}
  .home-masthead .top .home-login{padding-inline:12px}
  .home-hero{grid-template-columns:minmax(0,1fr);gap:17px}
  .home-hero .hero-content{display:contents}
  .home-hero .hero-content .eyebrow{margin:0}
  .home-hero .hero-copy{margin:0}
  .home-hero .primary{justify-content:center}
  .home-hero h1{font-size:clamp(34px,9.8vw,63px)}
  .hero-feature{order:1}
  .hero-preview{min-height:210px;padding:10px}
  .hero-topics{order:2;margin:3px 0 0}
  .hero-author{display:none}
}

.gift-practice {align-items:start}
#gift-form {min-width:0}
.gift-options {display:grid;gap:8px;border:0;padding:0;margin:0 0 14px;min-width:0}
.gift-options legend,.gift-email {font-weight:700;margin-bottom:6px}
.gift-options label {display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.gift-options label:has(:checked) {border-color:#785746;background:#fff1e5;color:#2b1c15}
.gift-options input {width:auto;flex:none;margin:0;accent-color:#785746}
.gift-options small {display:block;font-size:.8rem}
.gift-email {display:block}
.gift-submit {display:flex;flex-wrap:wrap;gap:8px}
.gift-submit input {flex:1 1 12rem;min-width:0;width:100%;padding:10px 12px}
.gift-submit .primary {white-space:normal}
#gift-status:empty {display:none}
.access-summary.feature {display:grid;grid-template-columns:1fr;gap:12px;padding:clamp(16px,3vw,26px)}
.access-summary h2,.access-summary p {margin:0}
.access-summary .eyebrow {margin-bottom:4px}
.access-options {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:0}
.access-options li {display:flex;flex-direction:column;gap:2px;padding:8px clamp(8px,2vw,17px);border:1px solid var(--line);border-radius:10px}
.access-options strong {font-size:clamp(1rem,2.6vw,1.35rem);white-space:nowrap}
.access-options span {font-size:.83rem}
.subscription-reminder:not([hidden]) {position:fixed;z-index:5;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));display:flex;gap:12px;align-items:flex-start;width:min(350px,calc(100% - 28px));padding:14px;background:#231610;color:#fff1e2;border:1px solid #785746;border-radius:14px;box-shadow:0 8px 24px #21151066}
.subscription-reminder p {margin:3px 0;font-size:.85rem}
.subscription-reminder .text-link {color:#f4b88f}
.subscription-reminder button {margin-left:auto;min-width:44px;min-height:44px;padding:0;border:1px solid #967560;border-radius:9px;color:inherit;background:transparent;font-size:1.35rem}
