@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');

:root{
  --caldr-paper:#f3f0e8;
  --caldr-paper-2:#f6f3ec;
  --caldr-ink:#111313;
  --caldr-muted:#5f605c;
  --caldr-line:rgba(17,19,19,.16);
  --caldr-gold:#a67628;
  --caldr-gold-soft:#e7ddca;
  --caldr-serif:'Libre Caslon Display',Georgia,'Times New Roman',serif;
  --caldr-sans:'DM Sans',Arial,sans-serif;
}

/* Core Academy tokens */
:root{
  --bg:var(--caldr-paper);
  --paper:var(--caldr-paper-2);
  --ink:var(--caldr-ink);
  --muted:var(--caldr-muted);
  --blue:var(--caldr-gold);
  --blue-hover:#8e641f;
  --blue-bg:#ece5d8;
  --pill-selected:#e7ddca;
  --pill-text:var(--caldr-ink);
  --line:var(--caldr-line);
  --font:var(--caldr-sans);
  --radius-card:3px;

  --legal-navy:var(--caldr-ink);
  --legal-ink:var(--caldr-ink);
  --legal-muted:var(--caldr-muted);
  --legal-paper:var(--caldr-paper-2);
  --legal-mist:#eeeae1;
  --legal-line:var(--caldr-line);
  --legal-accent:var(--caldr-gold);
  --legal-teal:#6f6b5d;
  --legal-warm:#eae4d8;
}

html{background:var(--caldr-paper)}
body,body.legal-site,.desk-page,.academy-shell{background:var(--caldr-paper);color:var(--caldr-ink);font-family:var(--caldr-sans)}
h1,h2,h3,.hero h2,.academy-content h1,.legal-hero h1,.legal-section h2,.platform-hero h1,.sector-card h2,.assessment-head h1,.desk-workspace-head h1{
  font-family:var(--caldr-serif)!important;
  font-weight:400!important;
  letter-spacing:-.03em!important;
}
p,.lead,.legal-sub,.card p,.lesson-block p,.lesson-block li{color:#393a38}

/* Caldr identity */
.brand,.legal-logo{gap:12px;color:var(--caldr-ink)!important}
.brandmark,.legal-logo b{
  width:auto!important;height:auto!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;color:var(--caldr-ink)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:21px!important;font-weight:400!important;letter-spacing:.28em!important;
  padding:0!important;
}
.caldr-wordmark,.legal-logo>span{
  font-family:var(--caldr-sans)!important;
  font-size:0!important;font-weight:500!important;letter-spacing:0!important;
}
.caldr-wordmark small,.legal-logo small{
  display:block!important;font-family:var(--caldr-sans)!important;
  font-size:8px!important;font-weight:500!important;
  letter-spacing:.20em!important;color:var(--caldr-muted)!important;margin-top:5px!important;
}

/* Core academy chrome */
aside,.academy-side{
  background:var(--caldr-paper-2)!important;border-color:var(--caldr-line)!important;
}
aside{padding-top:27px}
.navlabel,.legal-kicker,.module-eyebrow,.eyebrow{
  color:var(--caldr-gold)!important;
  font-family:var(--caldr-sans)!important;
  font-weight:600!important;
  letter-spacing:.18em!important;
}
nav a,.module-link{
  border-radius:2px!important;
}
nav a:hover,.module-link:hover{background:#ece7dc!important}
nav a.active,.module-link.active{
  background:#e7ddca!important;color:var(--caldr-ink)!important;
}
.sidebottom a,.card a.link,.pathrow a,.sectionhead a,.link,summary{color:var(--caldr-gold)!important}
.live-dot,.desk-live i{background:var(--caldr-gold)!important}
.shell>header,.academy-head,.legal-top{
  background:rgba(246,243,236,.95)!important;
  border-color:var(--caldr-line)!important;
  backdrop-filter:blur(12px);
}
.ws-badge,.avatar{
  background:#ece5d8!important;color:#72531f!important;border-color:#d7c7a8!important;border-radius:2px!important;
}
main{background:transparent}
main>.eyebrow{font-size:9px}
main>h1{font-family:var(--caldr-serif)!important;font-size:44px!important;font-weight:400!important;line-height:1.02!important}
main>.button{margin-top:6px}

/* Buttons: restrained, editorial */
button,.button,.legal-button,.complete-btn{
  border-radius:2px!important;
  font-family:var(--caldr-sans)!important;
}
.button,.legal-button,.complete-btn{
  background:var(--caldr-ink)!important;color:#fff!important;
  border:1px solid var(--caldr-ink)!important;
  font-weight:500!important;
  box-shadow:none!important;
}
.button:hover,.legal-button:hover,.complete-btn:hover{background:#2a2c2b!important;transform:translateY(-1px)}
.button.light,.button.ghost,.legal-button.alt{
  background:transparent!important;color:var(--caldr-ink)!important;border-color:var(--caldr-line)!important;
}
.button.light:hover,.button.ghost:hover,.legal-button.alt:hover{background:#ece7dc!important}
:focus-visible{outline-color:var(--caldr-gold)!important}

/* Cards and learning UI */
.hero,.card,.stat,.lesson-block,.academy-progress,.stage-nav,details.orig-text,.notice,.voice-note,
.desk-preview,.desk-panel,.practice,.security-item,.voice-band,.offer-card,.cta-box,.sector-card,.assessment-card,.assessment-result,
.desk-workspace,.answer-card,.citation{
  border-radius:3px!important;
}
.hero{
  background:#ece5d8!important;border-color:var(--caldr-line)!important;
}
.hero h2,.core strong,.card h3,.lesson-block h3{color:var(--caldr-ink)!important}
.hero-visual{background:#e2dacb!important}
.orbit{border-color:#c9b99d!important}
.core{border-color:var(--caldr-line)!important;box-shadow:none!important}
.float{box-shadow:none!important;border-color:var(--caldr-line)!important}
.card,.stat,.lesson-block,.desk-panel,.practice,.offer-card,.sector-card,.assessment-card,.desk-workspace,.answer-card,.citation{
  background:var(--caldr-paper-2)!important;border-color:var(--caldr-line)!important;box-shadow:none!important;
}
.card:hover,.sector-card:hover{box-shadow:0 8px 26px rgba(17,19,19,.06)!important;border-color:rgba(17,19,19,.28)!important}
.card .icon,.tag.blue,.status-pill.saved,.stage-tab.active{
  background:#ece5d8!important;color:#72531f!important;border-color:#d7c7a8!important;
}
.stage-nav{background:transparent!important;border-color:var(--caldr-line)!important}
.stage-tab{border-radius:2px!important}
.progress,.progress-track{background:#ded7ca!important}
.progress i,.progress-fill{background:var(--caldr-gold)!important}
.number{border-radius:2px!important;background:#ece7dc!important}
.notice{background:#ece5d8!important;border-left-color:var(--caldr-gold)!important;color:#3d3528!important}
pre,.scene-block,details.orig-text,.quiz label,th{background:#eeeae1!important}
input,textarea,select,.query-box,.query-select{border-radius:2px!important;background:#faf8f2!important;border-color:var(--caldr-line)!important}
input:focus,textarea:focus,select:focus{border-color:var(--caldr-gold)!important;box-shadow:0 0 0 2px rgba(166,118,40,.12)!important}

/* Professional / Legal / Accountancy presentation */
.legal-top{box-shadow:none!important}
.legal-wrap{width:min(1240px,calc(100% - 56px))}
.legal-hero,.platform-hero{
  background:
    linear-gradient(90deg,rgba(166,118,40,.05),transparent 34%),
    var(--caldr-paper)!important;
  border-bottom:1px solid var(--caldr-line);
}
.legal-hero{padding-top:78px}
.legal-hero h1,.platform-hero h1{color:var(--caldr-ink)!important}
.legal-hero .lead,.platform-hero .lead{color:#474843!important}
.legal-trust{color:var(--caldr-muted)!important}
.desk-preview,.desk-sidebar,.legal-section.dark,.offer-card.primary,.assessment-result{
  background:var(--caldr-ink)!important;color:#fff!important;
}
.desk-bar,.dark .legal-sub,.security-item span,.offer-card.primary ul,.assessment-result p{color:#d6d1c8!important}
.desk-panel{color:var(--caldr-ink)!important}
.desk-answer{background:#eeeae1!important;border-left-color:var(--caldr-gold)!important;border-radius:0!important}
.source-pill,.voice-chip,.score-badge{
  border-radius:2px!important;background:#ece5d8!important;color:#71531f!important;border-color:#d7c7a8!important;
}
.legal-section.tint{background:#eeeae1!important}
.legal-card{border-radius:3px!important;background:var(--caldr-paper-2)!important;border-color:var(--caldr-line)!important}
.legal-card .step,.sector-card .sector-top{color:var(--caldr-gold)!important}
.legal-card h3,.practice b,.offer-card h3,.sector-card h2{color:var(--caldr-ink)!important}
.voice-band{background:#e9e2d5!important}
.cta-box{background:var(--caldr-ink)!important}
.sector-card.legal-sector,.sector-card.accounting-sector,.sector-card.business-sector{border-top:2px solid var(--caldr-gold)!important}
.desk-page{background:#eeeae1!important}
.desk-notice{background:#e9e2d5!important;border-color:#d7c7a8!important;color:#5b4c36!important}

/* Academy specialist shell */
.academy-shell{grid-template-columns:270px 1fr!important}
.academy-side{border-right:1px solid var(--caldr-line)!important}
.academy-progress{background:#ece7dc!important;color:var(--caldr-muted)!important}
.academy-head{height:64px!important}
.academy-content{max-width:960px!important}
.academy-content h1{color:var(--caldr-ink)!important;font-size:46px!important}
.voice-note{background:#e9e2d5!important}
.prompt-demo{background:#181a1a!important;border-radius:2px!important}

/* Footer */
footer,.legal-footer{background:var(--caldr-paper-2)!important;border-color:var(--caldr-line)!important;color:var(--caldr-muted)!important}

/* Keep training useful on small screens */
@media(max-width:760px){
  .legal-wrap{width:min(100% - 28px,1240px)}
  main>h1{font-size:36px!important}
  .academy-content h1{font-size:36px!important}
}
