@charset "utf-8";
/* Inner Balance Mediumship Academy: uses the site's tokens and components. Mobile first, large readable text. */
.ac-sec{padding-block:48px}
.ac-sec h2{font-size:clamp(1.7rem,5.5vw,2.3rem)}
.ac-sec h2:focus,.ac-reader h2:focus,#ac-focus:focus{outline:none}
.ac-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.ac-meta{color:var(--mist);font-size:.98rem;margin:0}
.small{font-size:.92rem}

/* hero */
.ac-hero{background:radial-gradient(90% 70% at 70% 0%,rgba(122,92,200,.38) 0%,rgba(10,14,38,0) 70%),radial-gradient(110% 60% at 50% 0%,#1C2366 0%,rgba(10,14,38,0) 72%)}
.ac-hero-in{display:grid;gap:28px;align-items:center}
@media (min-width:880px){.ac-hero-in{grid-template-columns:1.3fr .7fr;gap:48px}}
.ac-hero h1{font-size:clamp(2.3rem,8vw,3.6rem);line-height:1.08}
.ac-subtitle{font:italic 400 1.25rem/1.4 var(--serif);color:var(--gold-hi);margin:0}
.ac-motto{font:600 .8rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:6px 0 0}
.ac-hero-art{color:var(--gold);justify-self:center;width:min(42vw,170px)}
@media (min-width:880px){.ac-hero-art{width:min(30vw,260px)}}
.ac-hero-art svg{display:block;width:100%;height:auto}
.ac-hero .lede{font-size:1.15rem;line-height:1.65}

/* onboarding + dashboard */
.ac-onboard{gap:14px;border-color:var(--line)}
.ac-onboard h2{font-size:clamp(1.6rem,5vw,2.1rem)}
.ac-choices{display:grid;gap:10px}
@media (min-width:760px){.ac-choices{grid-template-columns:1fr 1fr}}
.ac-choice{min-height:56px;padding:12px 16px;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--bg-2);color:var(--text);font:500 1.02rem/1.4 var(--sans);cursor:pointer}
.ac-choice:hover{border-color:var(--gold);background:rgba(201,169,106,.08)}
.ac-onboard .btn-text{justify-self:start}
.ac-rec h2{font-size:1.8rem}
.ac-dash{display:grid;gap:16px}
@media (min-width:960px){.ac-dash{grid-template-columns:1.25fr 1fr;align-items:start}}
.ac-dash-main{border-color:var(--gold);gap:14px}
.ac-dash-main .btn{justify-self:start}
.ac-dash-side{display:grid;gap:14px}
.ac-dash-side .card{gap:8px}
.ac-dash-side .btn,.ac-dash-side .btn-text{justify-self:start}
.ac-stats{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ac-stats div{padding:12px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line-soft)}
.ac-stats dt{font:600 .74rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.ac-stats dd{margin:4px 0 0;font:400 1.7rem/1.1 var(--serif)}
.ac-links{margin:0;padding-left:1.1rem;display:grid;gap:6px}
.ac-badges{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ac-badges li{padding:.35rem .8rem;border-radius:999px;border:1px solid var(--gold);color:var(--gold-hi);font-size:.9rem}
.ac-bar{width:100%;height:8px;border-radius:999px;background:var(--line-soft);overflow:hidden}
.ac-bar-in{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-hi));border-radius:999px}

/* topics, modules, stages */
.ac-topics{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:560px){.ac-topics{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.ac-topics{grid-template-columns:repeat(3,1fr)}}
.ac-topics li{display:grid;grid-template-columns:auto 1fr;column-gap:12px;padding:16px;border-radius:14px;border:1px solid var(--line-soft);background:linear-gradient(160deg,rgba(122,92,200,.14),rgba(24,31,78,.6))}
.ac-topics li > :not(.ac-topic-star){grid-column:2}
.ac-topics li.soon{opacity:.72}
.ac-topic-star{grid-row:1/3;width:12px;height:12px;margin-top:6px;background:var(--gold);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.ac-mods{display:grid;gap:16px}
@media (min-width:700px){.ac-mods{grid-template-columns:1fr 1fr}}
@media (min-width:1040px){.ac-mods{grid-template-columns:repeat(3,1fr)}}
.ac-mod{gap:10px}
.ac-mod h3{font-size:1.4rem}
.ac-mod p{margin:0}
.ac-mod-n{display:flex;justify-content:space-between;align-items:center;gap:8px;font:600 .78rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.ac-pub{letter-spacing:0;text-transform:none}
.ac-mod.soon{background:transparent;border-style:dashed}
.ac-soon{justify-self:start;color:var(--mist);border-color:var(--line-soft)}
.ac-stages{list-style:none;margin:0;padding:0;display:grid;gap:14px}
@media (min-width:900px){.ac-stages{grid-template-columns:repeat(5,1fr)}}
.ac-stages .card{gap:8px;border-top:3px solid var(--gold)}
.ac-stages h3{font-size:1.25rem}
.ac-stages p{margin:0}
.ac-chips{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.92rem}
.ac-inst{display:grid;gap:28px;align-items:center}
@media (min-width:820px){.ac-inst{grid-template-columns:.6fr 1.4fr;gap:48px}}
.ac-inst-photo{display:block;width:min(64vw,260px);aspect-ratio:4/5;object-fit:cover;margin-inline:auto;border:1px solid var(--gold);border-radius:999px 999px 24px 24px}
.ac-inst p{margin:0;font-size:1.06rem;line-height:1.7}

/* crumbs + module page */
.ac-crumbs ol{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.92rem;color:var(--mist)}
.ac-crumbs li+li::before{content:"\203A";margin-right:6px;color:var(--faint)}
.ac-crumbs a{color:var(--mist)}
.ac-modpage h1{font-size:clamp(2rem,7vw,2.8rem)}
.ac-intro summary{min-height:44px;display:flex;align-items:center;font:400 1.25rem var(--serif);cursor:pointer}
.ac-lessons{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:none}
.ac-lessons li{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface)}
.ac-lessons li.done{border-left:4px solid var(--ok)}
.ac-lessons a{display:grid;gap:2px;color:var(--text);text-decoration:none}
.ac-lessons a strong{font:400 1.2rem/1.35 var(--serif);color:var(--gold-hi)}
.ac-lessons a:hover strong{text-decoration:underline}
.ac-ln{font:600 .74rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.ac-lmeta{color:var(--mist)}
.ac-check{color:var(--ok)}

/* reader */
.ac-wrap{max-width:46rem;padding-block:28px 72px}
.ac-readbar{position:fixed;top:0;left:0;right:0;height:4px;z-index:40;pointer-events:none}
.ac-readbar span{display:block;height:100%;background:var(--gold);transform-origin:left;transform:scaleX(0)}
.ac-reader{--ac-fs:1.12rem;display:grid;gap:14px;border-radius:20px;color:var(--text)}
.ac-reader[data-fs="-2"]{--ac-fs:.96rem}.ac-reader[data-fs="-1"]{--ac-fs:1.04rem}.ac-reader[data-fs="1"]{--ac-fs:1.22rem}.ac-reader[data-fs="2"]{--ac-fs:1.32rem}.ac-reader[data-fs="3"]{--ac-fs:1.44rem}.ac-reader[data-fs="4"]{--ac-fs:1.58rem}
.ac-reader h1{font-size:clamp(2rem,7vw,2.75rem);line-height:1.12}
.ac-lsub{font:italic 400 1.3rem/1.4 var(--serif);color:var(--gold-hi);margin:0}
.ac-tools{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;border-block:1px solid var(--line-soft)}
.ac-tool{min-height:44px;min-width:44px;padding:0 .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--gold-hi);font:600 .92rem var(--sans);cursor:pointer}
.ac-tool[aria-pressed=true],.ac-tool[aria-expanded=true]{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.ac-toc-list{margin:0;padding:12px 12px 12px 2rem;border-radius:14px;background:var(--bg-2);display:grid;gap:2px}
.ac-toc-list[hidden]{display:none}
.ac-toc-list .btn-text{min-height:40px;text-align:left}
.ac-resume{margin:0;padding:10px 14px;border-radius:12px;background:rgba(201,169,106,.1)}
.ac-prose{display:grid;gap:16px;font-size:var(--ac-fs,1.12rem);line-height:1.8}
.ac-prose p,.ac-prose ul,.ac-prose ol{margin:0}
.ac-prose ul,.ac-prose ol{padding-left:1.4rem;display:grid;gap:8px}
.ac-prose .ac-sub{font:400 1.3em/1.3 var(--serif);color:var(--gold-hi);margin-top:6px}
.ac-part{display:grid;gap:14px;padding-top:18px;scroll-margin-top:84px}
.ac-part > h2{font-size:1.6em;line-height:1.2}
.ac-part-2,.ac-part-11{padding:20px;border-radius:16px;background:linear-gradient(160deg,rgba(122,92,200,.16),rgba(24,31,78,.7));border:1px solid var(--line)}
.ac-part-11{border-color:var(--gold)}
.ac-part-6{padding:20px;border-radius:16px;border:1px solid var(--line);background:var(--surface)}
.ac-part-9{padding:20px;border-radius:16px;border-left:4px solid var(--gold);background:rgba(201,169,106,.07)}
.ac-part-9 .btn,.ac-guided .btn{justify-self:start}
.ac-guided{display:grid;gap:8px;padding:14px;border-radius:12px;border:1px dashed var(--line)}
.ac-guided p{font-size:.95rem}
.ac-cite{font-size:.8em;vertical-align:super;line-height:0;text-decoration:none}
.ac-notes textarea,.ac-jform textarea{width:100%;min-height:120px;background:var(--surface);color:var(--text);border:1px solid var(--line-soft);border-radius:12px;padding:.8rem .95rem;font:inherit;font-size:1rem;line-height:1.6;resize:vertical}
.ac-notes textarea:focus,.ac-jform textarea:focus,input[type=date]:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(230,207,156,.25)}
.ac-jform input[type=date]{width:100%;min-height:52px;background:var(--surface);color:var(--text);border:1px solid var(--line-soft);border-radius:12px;padding:.7rem .95rem;font:inherit;color-scheme:dark}
.ac-finish{display:grid;gap:18px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line-soft)}
.ac-finish > .btn{justify-self:start}
.ac-pn{display:grid;gap:12px}
@media (min-width:640px){.ac-pn{grid-template-columns:1fr 1fr}}
.ac-pn .btn{flex-direction:column;align-items:flex-start;text-align:left;min-height:64px}
.ac-pn .btn[rel=next]{align-items:flex-end;text-align:right}
.ac-pn-t{font-weight:400;font-size:.88rem;opacity:.9}
/* light reading mode (reader only) */
.ac-reader.ac-light{background:#FBF7EE;color:#1E2148;padding:22px 20px 28px;box-shadow:0 0 0 1px #E8DFC9}
@media (min-width:640px){.ac-reader.ac-light{padding:34px 40px 40px}}
.ac-light .ac-lsub,.ac-light .ac-sub,.ac-light .ac-lessons a strong{color:#7A5714}
.ac-light .eyebrow,.ac-light .ac-ln{color:#7A5714}
.ac-light .ac-meta,.ac-light .muted,.ac-light .ac-crumbs ol,.ac-light .ac-crumbs a{color:#4A4D78}
.ac-light a{color:#6B4E12}
.ac-light .ac-tool{color:#6B4E12;border-color:#B99B5E}
.ac-light .ac-tool[aria-pressed=true],.ac-light .ac-tool[aria-expanded=true]{background:#6B4E12;color:#FBF7EE;border-color:#6B4E12}
.ac-light .ac-tools,.ac-light .ac-finish{border-color:#E3D8BF}
.ac-light .ac-toc-list{background:#F2EBDA}
.ac-light .btn-text{color:#6B4E12}
.ac-light .ac-part-2,.ac-light .ac-part-11{background:#F3ECFA;border-color:#C9B6E6}
.ac-light .ac-part-11{border-color:#B99B5E}
.ac-light .ac-part-6{background:#FFFFFF;border-color:#E3D8BF}
.ac-light .ac-part-9{background:#F6EEDC;border-color:#B99B5E}
.ac-light .ac-guided{border-color:#B99B5E}
.ac-light .ac-q{background:#FFFFFF;border-color:#E3D8BF}
.ac-light .ac-opt{border-color:#E3D8BF}
.ac-light .ac-notes textarea{background:#FFFFFF;color:#1E2148;border-color:#D8CDB3}
.ac-light .btn-gold{background:#7A5714;color:#FBF7EE}
.ac-light .btn-line{color:#6B4E12;border-color:#8A6A24}
.ac-light .ac-resume{background:#F2EBDA}
.ac-light .ac-yes{color:#1F6B3D}.ac-light .ac-no{color:#9A3B23}
.ac-light .ac-opt.right{border-color:#2F8A55;background:#E8F5EC}.ac-light .ac-opt.wrong{border-color:#B5533A;background:#FBEDE8}

/* knowledge check */
.ac-quiz{display:grid;gap:14px}
.ac-q{margin:0;padding:16px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface);min-width:0}
.ac-q legend{padding:0;font-weight:600;line-height:1.5;margin-bottom:10px;float:left;width:100%}
.ac-q legend + *{clear:both}
.ac-qn{color:var(--gold)}
.ac-opts{display:grid;gap:8px}
.ac-opt{display:flex;align-items:flex-start;gap:10px;min-height:48px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:12px;cursor:pointer;font-size:.96em;line-height:1.5}
.ac-opt input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--gold)}
.ac-opt:has(input:focus-visible){outline:3px solid var(--gold-hi);outline-offset:2px}
.ac-opt:has(input:disabled){cursor:default}
.ac-opt.right{border-color:var(--ok);background:rgba(154,215,176,.1)}
.ac-opt.wrong{border-color:var(--err);background:rgba(243,169,150,.08)}
.ac-ok{font-weight:600}
.ac-fb:empty{display:none}
.ac-fb{display:grid;gap:6px;margin-top:10px;font-size:.96em}
.ac-fb p{margin:0}
.ac-yes{color:var(--ok);font-weight:600}.ac-no{color:var(--err);font-weight:600}
.ac-qstatus{margin:0;font-weight:600}

/* guided practice */
.ac-pview{display:grid;gap:18px;padding:24px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(170deg,rgba(122,92,200,.16),var(--surface))}
.ac-pview:focus{outline:none}
.ac-pview h1{font-size:clamp(1.9rem,6vw,2.5rem)}
.ac-pview p{margin:0}
.ac-pbar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:baseline}
.ac-pcount{font:400 1.5rem var(--serif);color:var(--gold-hi)}
.ac-pclock{font-variant-numeric:tabular-nums}
.ac-pdots{display:flex;flex-wrap:wrap;gap:6px}
.ac-pdots span{width:20px;height:6px;border-radius:999px;background:var(--line-soft)}
.ac-pdots span.done{background:var(--gold)}.ac-pdots span.now{background:var(--gold-hi);width:32px}
.ac-pstep{font-size:1.2rem;line-height:1.8;padding:18px;border-radius:14px;background:var(--bg-2)}
.ac-pctrl{display:grid;gap:10px}
@media (min-width:600px){.ac-pctrl{grid-template-columns:repeat(3,1fr)}}

/* journal, path, certificate */
.ac-jlist{display:grid;gap:12px}
.ac-jentry{gap:8px}
.ac-jentry p{margin:0}
.ac-week{display:grid;gap:12px;margin-top:20px}
.ac-days{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ac-day{gap:8px}
.ac-day p{margin:0}
.ac-daydone{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:600;cursor:pointer}
.ac-daydone input{width:22px;height:22px;accent-color:var(--gold)}
.ac-req{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ac-req li{padding:12px 14px 12px 44px;border-radius:12px;border:1px solid var(--line-soft);position:relative}
.ac-req li::before{content:"";position:absolute;left:16px;top:16px;width:14px;height:14px;border-radius:50%;border:2px solid var(--faint)}
.ac-req li.ok::before{background:var(--ok);border-color:var(--ok)}
.ac-src{margin:0;padding-left:1.6rem;display:grid;gap:12px;line-height:1.6;word-break:break-word}
.ac-cert{position:relative;overflow:hidden;display:grid;gap:8px;justify-items:center;text-align:center;padding:36px 22px;border-radius:6px;background:#FBF7EE;color:#1E2148;border:10px double #B99B5E;font-family:var(--serif)}
.ac-cert p{margin:0}
.ac-cert-brand{font:600 .8rem var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#7A5714}
.ac-cert-title{font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.1}
.ac-cert-small{font:600 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#6A6B8E}
.ac-cert-name{font-size:clamp(1.6rem,6vw,2.3rem);font-style:italic;color:#4A2F86;border-bottom:1px solid #B99B5E;padding:0 18px 6px}
.ac-cert-course{font-size:1.15rem}
.ac-cert-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin-top:10px;font-size:1rem}
.ac-cert-note{font:400 .78rem/1.5 var(--sans);color:#4A4D78;max-width:30rem;margin-top:8px}
.ac-cert-wm{position:absolute;inset:auto 0 46%;transform:rotate(-14deg);font:700 clamp(1.4rem,6vw,2.6rem) var(--sans);letter-spacing:.12em;text-transform:uppercase;color:rgba(122,87,20,.18);pointer-events:none}
.ac-loading{padding-block:80px}
#ac-print{display:none}
@media print{
  @page{size:A4 portrait;margin:12mm}
  body > *:not(#ac-print){display:none!important}
  html,body{background:#fff!important}
  #ac-print{display:block}
  #ac-print .ac-cert{break-inside:avoid;overflow:visible;padding:40px 36px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* learn card, home feature, readings link */
.ac-learn-card{gap:12px;margin-bottom:8px}
.ac-learn-card ul{margin:0}
.ac-feature{background:radial-gradient(80% 90% at 85% 10%,rgba(122,92,200,.35) 0%,rgba(10,14,38,0) 70%),var(--bg-2);border-block:1px solid var(--line-soft)}
.ac-feature-in{display:grid;gap:22px;align-items:center}
@media (min-width:860px){.ac-feature-in{grid-template-columns:1.4fr .6fr}}
.ac-feature h2{font-size:clamp(1.9rem,6vw,2.7rem)}
.ac-feature .ac-hero-art{width:min(46vw,200px)}
.ac-opt input:disabled:not(:checked){opacity:.3}

.ac-cert-body{font:400 .95rem/1.55 var(--serif);max-width:32rem;color:#2A2D5A}
.ac-final{display:grid;gap:16px}
.ac-fgroup{display:grid;gap:12px;margin-top:8px}
.ac-fgroup h2{font-size:1.35rem;color:var(--gold-hi)}
.ac-pass{border-style:solid;border-color:var(--ok);color:var(--text)}
.ac-q > p{margin:0 0 6px}
.ac-coffee{display:grid;gap:10px;margin-top:8px;padding:20px;border:1px dashed var(--line);border-radius:18px;background:rgba(201,169,106,.06)}
.ac-coffee p{margin:0}
.ac-coffee .btn{justify-self:start}
.ac-coffee-h{margin:0;font-size:1.3rem;line-height:1.3}
.ac-light .ac-coffee{border-color:#CDB88A;background:#FBF5E8}
.ac-coffee-line{padding:16px 18px;gap:8px}
.ac-coffee-line p:first-child{line-height:1.6}
#reader-in .ac-coffee{margin-bottom:48px}
