/*
  SoftDayta institutional program theme inspired by CFA Institute curriculum pages.
  Original SoftDayta styling only: sober blue palette, curriculum-style cards,
  refined spacing, white content panels, minimal accent colour and professional
  learning-program typography.
*/
:root{
  --cfa-navy:#062b49;
  --cfa-blue:#005da8;
  --cfa-sky:#e9f3fb;
  --cfa-teal:#007a87;
  --cfa-ink:#172635;
  --cfa-muted:#586a7a;
  --cfa-line:#d9e1e8;
  --cfa-soft:#f7f9fb;
  --cfa-panel:#ffffff;
  --cfa-gold:#b78b20;
  --cfa-shadow:0 10px 30px rgba(6,43,73,.08);
}
html,body{
  background:var(--cfa-soft)!important;
  color:var(--cfa-ink)!important;
  font-family:"Segoe UI", Arial, Helvetica, sans-serif!important;
  line-height:1.6!important;
}
body{font-size:16px}
a{color:var(--cfa-blue)!important}
.notice{
  background:#fff!important;
  color:var(--cfa-muted)!important;
  border-bottom:1px solid var(--cfa-line)!important;
}
header:not(.topbar),.top{
  background:#fff!important;
  border-bottom:1px solid var(--cfa-line)!important;
  box-shadow:none!important;
}
nav{min-height:68px!important}
.brand{gap:.75rem!important}
.mark{
  background:var(--cfa-navy)!important;
  color:#fff!important;
  border-radius:2px!important;
  box-shadow:none!important;
}
.brand strong{color:var(--cfa-navy)!important}
.brand small{color:var(--cfa-muted)!important}
.links a:not(.button){
  color:var(--cfa-ink)!important;
  font-weight:650!important;
  border-bottom:2px solid transparent!important;
}
.links a:not(.button):hover{
  color:var(--cfa-blue)!important;
  border-bottom-color:var(--cfa-blue)!important;
}
.button,.primary,.secondary,.ghost,.resource-btn,.preview-link,.cardbtn{
  border-radius:2px!important;
  box-shadow:none!important;
  font-weight:700!important;
  min-height:43px;
  letter-spacing:0!important;
}
.primary,.button.primary,.resource-btn{
  background:var(--cfa-blue)!important;
  border-color:var(--cfa-blue)!important;
  color:#fff!important;
}
.ghost,.secondary,.button.ghost,.resource-btn.secondary{
  background:#fff!important;
  border:1px solid var(--cfa-blue)!important;
  color:var(--cfa-blue)!important;
}
.button:hover,.primary:hover,.secondary:hover,.ghost:hover,.resource-btn:hover{
  transform:none!important;
  box-shadow:0 3px 10px rgba(6,43,73,.12)!important;
}
.hero{
  background:#fff!important;
  border-bottom:1px solid var(--cfa-line)!important;
  padding:4.8rem 0 4rem!important;
}
.hero-grid{align-items:start!important}
.eyebrow,.badge,.aca-badge{
  display:inline-flex!important;
  width:max-content!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:var(--cfa-teal)!important;
  font-size:.76rem!important;
  font-weight:800!important;
  letter-spacing:.095em!important;
  text-transform:uppercase!important;
}
h1,h2,h3{
  color:var(--cfa-navy)!important;
  letter-spacing:-.02em!important;
}
h1{
  font-size:clamp(2.25rem,4.8vw,4.5rem)!important;
  line-height:1.04!important;
  max-width:900px!important;
}
h2{
  font-size:clamp(1.8rem,3.2vw,2.85rem)!important;
  line-height:1.12!important;
}
h3{line-height:1.2!important}
p,.section-head p,.card p,.feature p,.level p,.exam-card p,.notice-text,.fine{
  color:var(--cfa-muted)!important;
}
section{padding:4rem 0!important}
.section-head{
  border:0!important;
  padding-bottom:0!important;
  margin-bottom:1.5rem!important;
}
.section-head:after{
  content:"";
  display:block;
  width:100%;
  max-width:160px;
  height:2px;
  background:var(--cfa-gold);
  align-self:end;
}
.card,.feature,.panel,.study-card,.choice-card,.level,.aca-level,.promo-card,.exam-card,.success div,.resource-panel,.exam,.dialog,.price-card,.exam-block{
  background:var(--cfa-panel)!important;
  border:1px solid var(--cfa-line)!important;
  border-radius:0!important;
  box-shadow:var(--cfa-shadow)!important;
}
.card,.feature,.panel,.exam-card,.exam,.resource-panel,.price-card{
  padding:1.35rem!important;
}
.card:hover,.feature:hover,.panel:hover,.choice-card:hover,.level:hover,.exam-card:hover,.promo-card:hover,.exam:hover,.resource-card:hover{
  border-color:#bac8d4!important;
}
.level:before,.aca-level:before,.choice-card:before{
  height:3px!important;
  background:var(--cfa-gold)!important;
}
.icon,.lesson b,.choice-card span,.card span{
  border-radius:0!important;
  background:var(--cfa-sky)!important;
  color:var(--cfa-navy)!important;
}
.pill,.exam-tags span,.meta-pill{
  border-radius:0!important;
  background:#f3f7fa!important;
  border:1px solid var(--cfa-line)!important;
  color:#30475b!important;
}
.study-card{transform:none!important}
.lesson,.study-head,.resource-slots,.exam-block-head{
  border-color:var(--cfa-line)!important;
}
.syllabus-note,.cta,.invoice{
  background:#fff!important;
  border-left:4px solid var(--cfa-gold)!important;
  border-radius:0!important;
}
.exam-block{
  padding:1.3rem!important;
}
.price{
  color:var(--cfa-navy)!important;
}
.bank,.voucher-box,.order-panel{
  background:#f5f8fb!important;
  border:1px solid var(--cfa-line)!important;
  border-radius:0!important;
}
input,select,textarea{
  border:1px solid #b9c6d2!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--cfa-ink)!important;
  font-family:"Segoe UI", Arial, Helvetica, sans-serif!important;
}
input:focus,select:focus,textarea:focus{
  outline:3px solid rgba(0,93,168,.14)!important;
  border-color:var(--cfa-blue)!important;
}
.standards{
  background:var(--cfa-navy)!important;
}
.standard{
  border-radius:0!important;
  background:rgba(255,255,255,.08)!important;
}
footer{
  background:#fff!important;
  border-top:1px solid var(--cfa-line)!important;
}
.top{
  color:var(--cfa-navy)!important;
}
.top button{
  border-color:var(--cfa-line)!important;
  color:var(--cfa-blue)!important;
  background:#fff!important;
}
/* Exam/app pages: unify font and institutional palette while preserving layout. */
.app,.workspace,.answer-side,.exam-side,.sheet-card,.editor,.sheet-scroll,.ribbon,.word-toolbar,.topbar{
  font-family:"Segoe UI", Arial, Helvetica, sans-serif!important;
}
.topbar{
  background:#fff!important;
  border-bottom:1px solid var(--cfa-line)!important;
}
.finish,.timer-pill{
  border-radius:2px!important;
}
.spreadsheet-footer,.sheet-tabs{
  background:#f7f9fb!important;
}
.word-display,.pinned-display{
  background:#eef3f7!important;
}
.resources{
  background:#eef5fa!important;
}
@media(max-width:880px){
  .hero{padding:3.4rem 0 2.8rem!important}
  section{padding:3rem 0!important}
  .section-head:after{max-width:90px}
}
