.broel-eco {
  --eco-ink: #1c2940;
  --eco-muted: #53627a;
  --eco-line: #d4e2f5;
  --eco-accent: #3272d6;
  --eco-soft: #f2f7ff;
  display: block;
  padding: clamp(3rem, 6vw, 6rem) 1.25rem;
  background: linear-gradient(135deg, var(--eco-soft), #fff 65%);
  color: var(--eco-ink);
  font-size: 1rem;
  line-height: 1.65;
  scroll-margin-top: 7rem;
}
.broel-eco--community { --eco-accent: #21845c; --eco-soft: #f0faf5; --eco-line: #cde9dc; }
.broel-eco--forum { --eco-accent: #7950aa; --eco-soft: #f8f5fc; --eco-line: #e2d7f2; }
.broel-eco--events { --eco-accent: #bd641e; --eco-soft: #fff7ef; --eco-line: #efdcc8; }
.broel-eco--dashboard { --eco-accent: #316bc1; --eco-soft: #f4f8ff; }
.broel-eco__inner { width: min(100%, 1400px); margin: 0 auto; }
.broel-eco__intro { max-width: 880px; margin-bottom: 2rem; }
.broel-eco__eyebrow { margin: 0 0 .65rem; color: var(--eco-accent); font-size: .8rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.broel-eco h1, .broel-eco h2, .broel-eco h3, .broel-eco h4 { color: var(--eco-ink); line-height: 1.16; }
.broel-eco__intro h2 { margin: 0 0 .75rem; font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.035em; }
.broel-eco__intro p:last-child { margin: 0; color: var(--eco-muted); font-size: clamp(1rem, 1.4vw, 1.17rem); }
.broel-eco a { color: var(--eco-accent); }
.broel-eco a:hover { text-decoration: underline; }
.broel-eco__filters { display: flex; gap: .75rem; flex-wrap: wrap; align-items: end; margin: 0 0 2rem; }
.broel-eco__filters label { flex: 1 1 220px; }
.broel-eco input:not([type="hidden"]):not([type="checkbox"]), .broel-eco select, .broel-eco textarea { box-sizing: border-box; width: 100%; min-height: 2.85rem; padding: .7rem .9rem; border: 1px solid #afc3de; border-radius: .8rem; background: #fff; color: var(--eco-ink); font: inherit; }
.broel-eco textarea { resize: vertical; }
.broel-eco input:focus-visible, .broel-eco select:focus-visible, .broel-eco textarea:focus-visible, .broel-eco a:focus-visible, .broel-eco button:focus-visible { outline: 3px solid var(--eco-accent); outline-offset: 3px; }
.broel-eco button, .broel-eco__cta { display: inline-flex; justify-content: center; align-items: center; min-height: 2.85rem; padding: .7rem 1.2rem; border: 0; border-radius: .85rem; background: var(--eco-accent); color: #fff !important; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; }
.broel-eco button:hover, .broel-eco__cta:hover { filter: brightness(.9); text-decoration: none; }
.broel-eco__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.3rem; }
.broel-eco--academy .broel-eco__cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.broel-eco__preview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.broel-eco__preview .broel-eco__empty { min-width: 0; }
.broel-eco__space-preview { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.broel-eco__space-preview span { padding: .4rem .7rem; border: 1px solid var(--eco-line); border-radius: 999px; background: var(--eco-soft); color: var(--eco-ink); font-size: .85rem; font-weight: 700; }
.broel-eco__course-count { font-weight: 700; }
.broel-eco__course-outline { margin: .2rem 0 1.4rem; padding-left: 1.3rem; }
.broel-eco__course-outline li { margin: .35rem 0; color: var(--eco-muted); }
.broel-eco__card, .broel-eco__empty, .broel-eco__thread, .broel-eco__form, .broel-eco__side, .broel-eco__profile, .broel-eco__dashboard-grid article { min-width: 0; border: 1px solid var(--eco-line); border-radius: 1.3rem; background: #fff; box-shadow: 0 10px 28px rgba(26, 61, 110, .05); }
.broel-eco__card { overflow: hidden; display: flex; flex-direction: column; }
.broel-eco__image { display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; background: linear-gradient(135deg, #dceaff, #e9f6ef); color: var(--eco-accent); font-size: 4rem; }
.broel-eco__image img { width: 100%; height: 100%; object-fit: cover; }
.broel-eco__card-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.25rem; }
.broel-eco__card-body h3 { margin: .65rem 0; font-size: 1.45rem; }
.broel-eco__card-body h3 a { color: var(--eco-ink); text-decoration: none; }
.broel-eco__card-body p { margin: 0 0 1.2rem; color: var(--eco-muted); }
.broel-eco__badge { display: inline-block; padding: .32rem .65rem; border-radius: 999px; background: var(--eco-soft); color: var(--eco-accent); font-size: .75rem; font-weight: 800; }
.broel-eco__link { margin-top: auto; font-weight: 800; text-decoration: none; }
.broel-eco__empty { padding: clamp(1.5rem, 4vw, 3rem); }
.broel-eco__empty h3 { margin-top: 0; }
.broel-eco__path { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-top: 2rem; padding: 1.5rem 2rem; border-radius: 1.3rem; background: #1e3357; color: #fff; }
.broel-eco__path h3, .broel-eco__path p { margin: .2rem 0; color: #fff; }
.broel-eco__path span { font-size: .74rem; font-weight: 800; letter-spacing: .14em; }
.broel-eco__path a { color: #fff; white-space: nowrap; font-weight: 800; }
.broel-eco__layout { display: grid; grid-template-columns: minmax(170px, 230px) minmax(0, 1fr) minmax(190px, 260px); gap: 1.2rem; align-items: start; }
.broel-eco--forum .broel-eco__layout, .broel-eco--course .broel-eco__layout, .broel-eco--event .broel-eco__layout, .broel-eco--topic .broel-eco__layout { grid-template-columns: minmax(0, 1fr) minmax(230px, 330px); }
.broel-eco__rail, .broel-eco__side { padding: 1.2rem; }
.broel-eco__rail { position: sticky; top: 1rem; max-height: 72vh; overflow: auto; border: 1px solid var(--eco-line); border-radius: 1.2rem; background: #fff; }
.broel-eco__rail h3, .broel-eco__side h3 { margin: 0 0 .7rem; font-size: 1.2rem; }
.broel-eco__rail a, .broel-eco__side a { display: block; padding: .5rem .6rem; border-radius: .6rem; text-decoration: none; font-weight: 650; }
.broel-eco__rail a.is-current, .broel-eco__rail a:hover, .broel-eco__side a:hover { background: var(--eco-soft); }
.broel-eco__feed { min-width: 0; }
.broel-eco__feed > * + * { margin-top: 1rem; }
.broel-eco__form { padding: 1.25rem; }
.broel-eco__form h3 { margin: 0 0 .25rem; }
.broel-eco__form p { margin: 0 0 .8rem; color: var(--eco-muted); }
.broel-eco__form label, .broel-eco__profile label { display: block; margin: .75rem 0; font-weight: 700; }
.broel-eco__form label input, .broel-eco__form label select, .broel-eco__form label textarea, .broel-eco__profile label input, .broel-eco__profile label textarea { margin-top: .3rem; }
.broel-eco__honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
.broel-eco__thread { padding: 1.25rem; }
.broel-eco__thread h3 { margin: .5rem 0; font-size: 1.4rem; }
.broel-eco__thread h3 a { color: var(--eco-ink); text-decoration: none; }
.broel-eco__thread p { margin: .5rem 0; }
.broel-eco__thread-meta { display: flex; justify-content: space-between; gap: .7rem; flex-wrap: wrap; color: var(--eco-muted); font-size: .83rem; }
.broel-eco__notice { padding: .9rem 1rem; border-left: 4px solid var(--eco-accent); border-radius: .4rem; background: var(--eco-soft); color: var(--eco-ink); }
.broel-eco__board-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-bottom: 2rem; }
.broel-eco__board { display: grid; gap: .1rem; min-width: 0; padding: 1rem; border: 1px solid var(--eco-line); border-radius: 1rem; background: #fff; text-decoration: none; }
.broel-eco__board span { color: var(--eco-accent); font-size: 1.35rem; }
.broel-eco__board strong { color: var(--eco-ink); }
.broel-eco__board small { color: var(--eco-muted); }
.broel-eco__board.is-current, .broel-eco__board:hover { border-color: var(--eco-accent); background: var(--eco-soft); text-decoration: none; }
.broel-eco__crumbs { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 1.25rem; color: var(--eco-muted); font-size: .85rem; }
.broel-eco__hero { display: grid; grid-template-columns: 1fr minmax(0, .8fr); gap: 2rem; align-items: center; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid var(--eco-line); border-radius: 1.6rem; background: #fff; }
.broel-eco__hero h1 { margin: .5rem 0 1rem; font-size: clamp(2.2rem, 4.8vw, 4.5rem); letter-spacing: -.04em; }
.broel-eco__hero > div > p:not(.broel-eco__eyebrow) { color: var(--eco-muted); font-size: 1.1rem; }
.broel-eco__hero figure { margin: 0; overflow: hidden; border-radius: 1.2rem; }
.broel-eco__hero figure img, .broel-eco__hero-placeholder { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.broel-eco__hero-placeholder { display: grid; place-items: center; padding: 1rem; background: linear-gradient(135deg, var(--eco-soft), #d9e8ff); color: var(--eco-accent); font-weight: 900; text-align: center; }
.broel-eco__facts { display: flex; gap: .5rem; flex-wrap: wrap; margin: 1rem 0; }
.broel-eco__facts span { padding: .3rem .65rem; border: 1px solid var(--eco-line); border-radius: 999px; font-size: .85rem; }
.broel-eco--course .broel-eco__layout, .broel-eco--event .broel-eco__layout { margin-top: 2rem; }
.broel-eco--course .broel-eco__feed, .broel-eco--event .broel-eco__feed, .broel-eco--topic .broel-eco__feed { padding: clamp(1.2rem, 3vw, 2rem); border: 1px solid var(--eco-line); border-radius: 1.2rem; background: #fff; }
.broel-eco__prose { overflow-wrap: anywhere; }
.broel-eco__lesson { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--eco-line); }
.broel-eco__video { position: relative; aspect-ratio: 16 / 9; margin: 1rem 0; }
.broel-eco__video iframe { width: 100%; height: 100%; }
.broel-eco__syllabus { padding-left: 1.2rem; }
.broel-eco__syllabus li { margin: .7rem 0; }
.broel-eco__syllabus li > span:first-child { color: var(--eco-accent); }
.broel-eco__syllabus small { display: block; color: var(--eco-muted); }
.broel-eco__replies { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--eco-line); }
.broel-eco__reply { padding: 1rem 0; border-bottom: 1px solid var(--eco-line); }
.broel-eco__reply time { margin-left: .7rem; color: var(--eco-muted); font-size: .8rem; }
.broel-eco__dashboard-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.broel-eco__dashboard-grid article, .broel-eco__profile { padding: 1.25rem; }
.broel-eco__dashboard-grid h3, .broel-eco__profile h3 { margin-top: 0; }
.broel-eco__dashboard-grid ul { padding-left: 1rem; }
.broel-eco__dashboard-grid li { margin: .5rem 0; }
.broel-eco__dashboard-grid li span { display: block; color: var(--eco-muted); font-size: .8rem; }
.broel-eco__dashboard-grid article > a { display: block; margin: .6rem 0; font-weight: 750; }
.broel-eco__profile { margin-top: 1rem; }
.broel-eco__form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.broel-eco__privacy { color: var(--eco-muted); font-size: .85rem; }
.broel-eco__social-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .8rem 1.2rem; margin-bottom: 2rem; }
.broel-eco__social-actions > a:not(.broel-eco__cta) { padding: .7rem 1rem; border: 1px solid var(--eco-line); border-radius: .85rem; background: #fff; font-weight: 750; text-decoration: none; }
.broel-eco__social-actions > span { color: var(--eco-muted); }
.broel-eco__social-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 300px); gap: 1.2rem; align-items: start; }
.broel-eco__social-panel, .broel-eco__group-card { min-width: 0; padding: clamp(1.2rem, 2.5vw, 2rem); border: 1px solid var(--eco-line); border-radius: 1.25rem; background: #fff; box-shadow: 0 10px 28px rgba(26,61,110,.05); }
.broel-eco__social-panel h3 { margin: .6rem 0 .8rem; }
.broel-eco__social-panel > a { display: block; margin: .65rem 0; font-weight: 750; }
.broel-eco__panel-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.broel-eco__panel-heading h3 { margin: .3rem 0; }
.broel-eco__panel-heading > a { font-weight: 750; white-space: nowrap; }
.broel-eco__activity { padding: 1rem 0; border-top: 1px solid var(--eco-line); }
.broel-eco__activity-meta { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.broel-eco__activity-meta time { color: var(--eco-muted); font-size: .82rem; }
.broel-eco__activity p:last-child { margin-bottom: 0; }
.broel-eco__groups { margin-top: 2.5rem; }
.broel-eco__group-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.broel-eco__group-card > span:first-child { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: .7rem; background: var(--eco-soft); color: var(--eco-accent); font-size: 1.25rem; }
.broel-eco__group-card h4 { margin: 1rem 0 .4rem; font-size: 1.2rem; }
.broel-eco__group-card p { margin: 0 0 1rem; color: var(--eco-muted); }
.broel-eco__group-card a { font-weight: 800; }
.broel-eco-nav { display:flex; flex-wrap:wrap; gap:.65rem; width:min(100% - 2rem,1280px); margin:2rem auto 0; }
.broel-eco-nav a { flex:1 1 130px; padding:.9rem 1.2rem; border:1px solid #ccdaef; border-radius:14px; background:#f4f8ff; color:#1c2940; font-weight:750; text-align:center; text-decoration:none; }
.broel-eco-nav a:nth-child(2) { border-bottom:4px solid #23876b; }
.broel-eco-nav a:nth-child(3) { border-bottom:4px solid #8057b4; }
.broel-eco-nav a:nth-child(4) { border-bottom:4px solid #dc842e; }
.broel-eco-nav a[aria-current] { background:#1c2940; color:white; }
.broel-eco-nav a:focus-visible { outline:3px solid #3079ed; outline-offset:3px; }
.broel-eco__feed,.broel-eco__side,.broel-eco__card-body { min-width:0; overflow-wrap:anywhere; }
.broel-eco__video iframe { width:100%; max-width:100%; }
.broel-eco__filters input,.broel-eco__filters select { max-width:100%; min-width:0; }
body.buddypress .broel-main .buddypress-wrap { box-sizing: border-box; width: min(100% - 2rem, 1280px); margin: 2rem auto 4rem; color: #1c2940; }
body.buddypress .buddypress-wrap a { color: #216c58; }
body.buddypress .buddypress-wrap a:focus-visible, body.buddypress .buddypress-wrap button:focus-visible { outline: 3px solid #216c58; outline-offset: 3px; }
body.buddypress .buddypress-wrap button, body.buddypress .buddypress-wrap input[type="submit"], body.buddypress .buddypress-wrap .button { border-radius: .7rem; }
body.buddypress .buddypress-wrap .item-body, body.buddypress .buddypress-wrap .activity-list, body.buddypress .buddypress-wrap .groups-list { overflow-wrap: anywhere; }
@media (max-width: 1050px) {
  .broel-eco__layout { grid-template-columns: minmax(170px, 220px) minmax(0, 1fr); }
  .broel-eco--community .broel-eco__side { grid-column: 2; }
  .broel-eco__board-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .broel-eco__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .broel-eco { padding: 2.8rem 1rem; }
  .broel-eco__layout, .broel-eco--forum .broel-eco__layout, .broel-eco--course .broel-eco__layout, .broel-eco--event .broel-eco__layout, .broel-eco--topic .broel-eco__layout, .broel-eco__hero { grid-template-columns: minmax(0, 1fr); }
  .broel-eco__rail { position: static; max-height: none; display: flex; flex-wrap: nowrap; gap: .35rem; overflow-x: auto; }
  .broel-eco__rail h3 { flex: 0 0 100%; }
  .broel-eco__rail a { flex: 0 0 auto; white-space: nowrap; }
  .broel-eco--community .broel-eco__side { grid-column: auto; }
  .broel-eco__side { order: 3; }
  .broel-eco__cards, .broel-eco--academy .broel-eco__cards, .broel-eco__preview, .broel-eco__dashboard-grid, .broel-eco__form-grid { grid-template-columns: minmax(0, 1fr); }
  .broel-eco__board-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .broel-eco__path { display: block; }
  .broel-eco__path a { display: inline-block; margin-top: 1rem; white-space: normal; }
}
@media (max-width: 420px) {
  .broel-eco__board-grid { grid-template-columns: minmax(0, 1fr); }
  .broel-eco__filters button, .broel-eco__form button, .broel-eco__profile button { width: 100%; }
  .broel-eco__hero { padding: 1.1rem; }
}
.broel-course-card .broel-eco__image { aspect-ratio:16/9; width:calc(100% - 1.5rem); margin:.75rem .75rem 0; border-radius:.75rem; font-size:1rem; text-decoration:none; }
.broel-course-card .broel-eco__card-body { padding:1rem; gap:.45rem; }
.broel-course-card .broel-eco__card-body h3 { font-size:1.12rem; line-height:1.35; margin:0; }
.broel-course-card .broel-eco__card-body p { font-size:.83rem; margin:0; }
.broel-course-card .broel-course-summary { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.broel-course-card .broel-eco__course-count { padding:.5rem 0; }
.broel-course-art { display:grid; width:100%; height:100%; align-content:center; gap:.5rem; padding:1.1rem; box-sizing:border-box; background:linear-gradient(135deg,#1c2940,#286d98); color:#fff; }
.broel-course-art small { font-size:.65rem; letter-spacing:.13em; color:#b9e9de; }
.broel-course-art strong { font-size:1rem; line-height:1.25; }
.broel-course-art > span { font-size:1.1rem; color:#f7c966; }
.broel-course-buy { display:flex; align-items:center; justify-content:space-between; gap:.5rem; width:100%; margin-top:auto; padding-top:1rem; flex-wrap:wrap; }
.broel-course-buy > strong { font-size:1.1rem; color:#1c2940; }
.broel-course-buy form { margin:0; }
.broel-course-buy .broel-course-buy__button { display:inline-flex; align-items:center; gap:.4rem; justify-content:center; padding:.55rem .7rem; min-height:44px; border:1px solid #7950aa; border-radius:.65rem; background:#fff; color:#69449b !important; font-size:.8rem; font-weight:800; text-decoration:none; }
.broel-classroom__screen { background:#152238; border-radius:1rem; overflow:hidden; aspect-ratio:16/9; position:relative; }
.broel-classroom__screen iframe { width:100%; height:100%; border:0; }
.broel-classroom__screen > #broel-course-player { width:100%; height:100%; }
.broel-classroom__consent { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:1.25rem; color:#fff; text-align:center; }
.broel-classroom__consent[hidden] { display:none; }
.broel-classroom__controls { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; padding:1rem 0; }
.broel-classroom__controls label { display:flex; align-items:center; gap:.4rem; font-size:.85rem; }
.broel-classroom__controls select { width:auto; }
.broel-classroom__controls input[type=checkbox] { width:1.15rem; height:1.15rem; }
.broel-classroom__status { font-size:.8rem; color:#53627a; }
.broel-classroom__lesson-links { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; margin:1rem 0; }
.broel-lesson-notes { border:1px solid #d4e2f5; border-radius:1rem; padding:1.2rem; margin:1.5rem 0; background:#f4f8ff; }
.broel-lesson-notes textarea { margin:.5rem 0 1rem; }
.broel-lesson-notes [role=status] { display:block; font-size:.85rem; margin-top:.65rem; }
.broel-eco--course.is-theatre .broel-eco__layout { grid-template-columns:minmax(0,1fr); }
.broel-eco--course.is-theatre .broel-eco__inner { max-width:1600px; }
@media (min-width:721px) and (max-width:1100px) { .broel-eco--academy .broel-eco__cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:720px) { .broel-eco--academy .broel-eco__cards { grid-template-columns:minmax(0,1fr); } }
@media (max-width: 720px) {
  .broel-eco__social-layout, .broel-eco__group-grid { grid-template-columns: minmax(0, 1fr); }
  .broel-eco__panel-heading { align-items: flex-start; flex-wrap: wrap; }
  .broel-eco__panel-heading > a { white-space: normal; }
}
.broel-course-topics,.broel-course-includes,.broel-course-curriculum { margin-bottom:2.5rem; }
.broel-course-topics > div { display:flex; gap:.6rem; flex-wrap:wrap; }
.broel-course-topics a { padding:.5rem .8rem; border:1px solid #b9cce7; border-radius:.6rem; text-decoration:none; font-weight:700; }
.broel-course-includes ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem 1.5rem; padding-left:1.2rem; }
.broel-course-curriculum { scroll-margin-top:150px; }
.broel-course-curriculum details { border:1px solid #d4e2f5; border-radius:.65rem; margin:.6rem 0; overflow:hidden; }
.broel-course-curriculum summary { cursor:pointer; padding:1rem; background:#f2f6fc; }
.broel-course-curriculum summary strong { margin:0 .8rem; }
.broel-course-curriculum summary > span { font-size:.8rem; color:#53627a; white-space:nowrap; }
.broel-course-curriculum ul { list-style:none; margin:0; padding:0 1rem; }
.broel-course-curriculum li { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 0; border-top:1px solid #e2eaf5; }
.broel-course-curriculum li > :last-child { font-size:.8rem; }
.broel-course-curriculum .broel-course-expand { background:transparent; color:#69449b !important; padding:.5rem 0; margin-bottom:.5rem; border:0; }
.broel-course-expand[hidden] { display:none; }
.broel-eco--course .broel-eco__layout { grid-template-columns:minmax(0,1fr) minmax(270px,350px); align-items:start; gap:2rem; }
.broel-eco--course .broel-course-purchase { position:sticky; top:190px; padding:1.5rem; border-top:4px solid #7950aa; }
.broel-course-purchase h2 { font-size:1.3rem; line-height:1.4; }
.broel-course-purchase p { font-size:.9rem; }
.broel-course-purchase .broel-course-buy { margin:1rem 0; }
.broel-course-purchase .broel-course-buy > strong { font-size:1.65rem; }
.broel-eco--course.is-theatre .broel-course-purchase { position:static; }
.broel-eco__pagination { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:2rem; }
.broel-eco__pagination a,.broel-eco__pagination span { padding:.5rem .8rem; border:1px solid #d4e2f5; border-radius:.5rem; }
@media(max-width:900px) {
 .broel-eco--course .broel-eco__layout { display:flex; flex-direction:column; }
 .broel-eco--course .broel-course-purchase { position:static; order:-1; width:100%; box-sizing:border-box; }
 .broel-eco--course .broel-eco__feed { width:100%; }
}
@media(max-width:480px) {
 .broel-course-includes ul { grid-template-columns:minmax(0,1fr); }
 .broel-course-curriculum li { flex-wrap:wrap; gap:.4rem; }
}
/* Keep Community hub copy readable regardless of the photograph beneath it. */
body:is(.broel-page--learn,.broel-page--connect,.broel-page--events,.broel-page--forum) .broel-hub-hero .broel-hub-copy {
  width:min(100%,48rem); max-width:100%; box-sizing:border-box;
  padding:clamp(1.25rem,3vw,2.5rem);
  background:rgba(255,255,255,.97); border:1px solid #d4e2f5;
  border-radius:1.4rem; box-shadow:0 12px 36px rgba(28,41,64,.12);
}
body:is(.broel-page--learn,.broel-page--connect,.broel-page--events,.broel-page--forum) .broel-hub-hero .broel-hub-title .elementor-heading-title {
  color:#1c2940; font-size:clamp(2rem,4.2vw,3.75rem); line-height:1.12;
  letter-spacing:-.025em; text-shadow:none; overflow-wrap:break-word;
}
body:is(.broel-page--learn,.broel-page--connect,.broel-page--events,.broel-page--forum) .broel-hub-hero .broel-hub-intro,
body:is(.broel-page--learn,.broel-page--connect,.broel-page--events,.broel-page--forum) .broel-hub-hero .broel-hub-intro p {
  color:#26364b; font-size:clamp(1.0625rem,1.5vw,1.25rem); line-height:1.65;
  font-weight:500; text-shadow:none;
}
body:is(.broel-page--learn,.broel-page--connect,.broel-page--events,.broel-page--forum) .broel-hub-hero .broel-hub-label .elementor-heading-title { color:#245baa; text-shadow:none; }
.broel-lesson-format { display:inline-flex; flex:0 0 22px; color:#53627a; }
.broel-lesson-format svg { width:22px; height:22px; }
.broel-course-curriculum li > a,.broel-course-curriculum li > .broel-lesson-format + span { flex:1; }
.broel-lesson-quiz fieldset { padding:1rem; margin:1rem 0; border:1px solid #ccd8e8; border-radius:.75rem; }
.broel-lesson-quiz legend { font-weight:700; padding:0 .4rem; }
.broel-lesson-quiz label { display:flex; align-items:center; gap:.7rem; padding:.6rem 0; }
.broel-eco .broel-lesson-quiz input[type=radio] { width:1.2rem; min-height:1.2rem; height:1.2rem; flex:0 0 1.2rem; }
/* Account entry: native WooCommerce forms, BROel visual language. */
body.broel-account-welcome #broel-main { background:radial-gradient(ellipse at 90% 5%,#e3f5ed,transparent 50%),linear-gradient(135deg,#eff5ff,#faf7ff 70%,#fff7ec); }
body.broel-account-welcome .broel-entry { max-width:1180px; padding-top:2rem; padding-bottom:4rem; }
body.broel-account-welcome .broel-entry-header h1 { font-size:clamp(2rem,4vw,3rem); margin:0 0 1rem; line-height:1.15; }
.broel-account-intro { padding:clamp(1.5rem,4vw,3rem); margin-bottom:2rem; border:1px solid #d3e1f4; border-radius:1.5rem; background:linear-gradient(120deg,#fff,#edf8f3); box-shadow:0 12px 35px #24395908; }
.broel-account-eyebrow { color:#23634f; font-size:.8rem; letter-spacing:.16em; font-weight:800; }
body.broel-account-welcome .broel-account-intro h2 { font-size:clamp(1.8rem,3vw,2.8rem); line-height:1.15; color:#1c2940; margin:.7rem 0 1rem; }
.broel-account-intro p { color:#435570; max-width:680px; font-size:1.1rem; line-height:1.65; }
.broel-account-perks { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.4rem; }
.broel-account-perks span { background:#fff; padding:.55rem .85rem; border-radius:999px; border:1px solid #d6e4ed; color:#285c50; font-size:.85rem; font-weight:650; }
body.broel-account-welcome .woocommerce #customer_login { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
body.broel-account-welcome .woocommerce #customer_login::before,body.broel-account-welcome .woocommerce #customer_login::after { display:none; }
body.broel-account-welcome .woocommerce #customer_login > div { float:none; width:auto; min-width:0; padding:clamp(1.2rem,3vw,2rem); background:#fff; border:1px solid #d4e2f5; border-top:5px solid #3272d6; border-radius:1.25rem; box-shadow:0 15px 35px #2439590a; }
body.broel-account-welcome .woocommerce #customer_login > div:last-child { border-top-color:#248269; }
body.broel-account-welcome .woocommerce #customer_login h2 { font-size:1.7rem; color:#1c2940; margin:0 0 .75rem; line-height:1.25; }
body.broel-account-welcome .woocommerce form.login,body.broel-account-welcome .woocommerce form.register { border:0; padding:0; margin:0; border-radius:0; }
body.broel-account-welcome .woocommerce form p { font-size:1rem; line-height:1.65; color:#435570; }
body.broel-account-welcome .woocommerce form .form-row { padding:0; margin:0 0 1rem; }
body.broel-account-welcome .woocommerce form label { font-size:.95rem; font-weight:650; color:#24354c; }
body.broel-account-welcome .woocommerce form .input-text { border:1px solid #b7c9de; border-radius:.7rem; background:#f9fbff; min-height:50px; padding:.7rem .85rem; font-size:16px; color:#1c2940; width:100%; box-sizing:border-box; }
body.broel-account-welcome .woocommerce form .password-input .input-text { padding-right:3rem; }
body.broel-account-welcome .woocommerce form .button { background:#3272d6; color:white; border:0; border-radius:.75rem; min-height:48px; padding:.8rem 1.5rem; font-size:1rem; font-weight:750; margin:.4rem .8rem .4rem 0; }
body.broel-account-welcome .woocommerce form.register .button { background:#20775d; }
body.broel-account-welcome .woocommerce form .button:hover { filter:brightness(.92); }
body.broel-account-welcome .woocommerce form .woocommerce-privacy-policy-text p { font-size:.86rem; }
body.broel-account-welcome .woocommerce a { color:#245eae; text-underline-offset:3px; }
body.broel-account-welcome .woocommerce :is(input,button,a):focus-visible { outline:3px solid #7950aa; outline-offset:3px; }
body.broel-account-welcome .woocommerce .lost_reset_password { background:white; padding:clamp(1.2rem,3vw,2rem); border:1px solid #d4e2f5; border-radius:1.25rem; max-width:680px; }
@media(max-width:760px) { body.broel-account-welcome .woocommerce #customer_login { grid-template-columns:minmax(0,1fr); } .broel-account-perks { gap:.5rem; } }
/* Course sales pages: compact editorial hierarchy instead of global display headings. */
.broel-eco--course { padding-top:2rem; background:linear-gradient(145deg,#f1f6ff,#fff 65%); }
.broel-eco--course .broel-eco__hero { background:linear-gradient(120deg,#192940,#253853); border:0; color:white; margin-bottom:2rem; }
.broel-eco--course .broel-eco__hero h1 { color:white; font-size:clamp(2rem,3.4vw,3.25rem); line-height:1.14; letter-spacing:-.025em; }
.broel-eco--course .broel-eco__hero > div > p:not(.broel-eco__eyebrow) { color:#e0e8f3; line-height:1.65; }
.broel-eco--course .broel-eco__hero .broel-eco__eyebrow { color:#a4e4cb; }
.broel-eco--course .broel-eco__facts { color:#dce6f2; font-size:.86rem; }
.broel-eco--course .broel-eco__hero-placeholder { background:linear-gradient(135deg,#236e77,#7950aa); color:#fff; aspect-ratio:16/9; box-sizing:border-box; }
.broel-eco--course .broel-eco__feed { padding:0; border:0; border-radius:0; background:transparent; }
.broel-eco--course .broel-eco__feed h2 { font-size:clamp(1.3rem,1.8vw,1.65rem); line-height:1.3; letter-spacing:-.02em; margin:0 0 1rem; }
.broel-eco--course .broel-eco__feed h3 { font-size:1.15rem; line-height:1.4; }
.broel-eco--course .broel-eco__feed p,.broel-eco--course .broel-eco__feed li { font-size:1rem; line-height:1.65; }
.broel-eco--course .broel-eco__feed > section { margin:0 0 2rem; }
.broel-course-outcomes { padding:clamp(1.2rem,2.5vw,1.8rem); border:1px solid #cbdedb; border-left:4px solid #25816a; border-radius:1rem; background:linear-gradient(135deg,#f1faf6,#fff 65%); }
.broel-course-kicker { display:block; color:#246950; font-size:.7rem; letter-spacing:.12em; font-weight:800; margin-bottom:.6rem; }
.broel-course-outcomes ul { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.6rem; }
.broel-course-outcomes li { display:flex; align-items:flex-start; gap:.7rem; color:#38485e; }
.broel-course-outcomes li > span:first-child { color:#21735c; font-weight:800; flex:0 0 20px; }
.broel-course-topics a { font-size:.86rem; padding:.45rem .75rem; color:#38485e; background:#fff; }
.broel-course-includes ul { list-style:none; padding:0; margin:0; gap:.8rem 1.5rem; }
.broel-course-includes li { display:flex; align-items:center; gap:.75rem; color:#43536a; }
.broel-course-includes li > span { display:inline-grid; place-items:center; color:#52678c; width:24px; flex:0 0 24px; font-size:1.25rem; }
.broel-eco--course .broel-course-curriculum > p { font-size:.85rem; color:#5b6b82; margin:.3rem 0; }
.broel-course-curriculum details { margin:0; border-radius:0; border-bottom:0; background:#fff; }
.broel-course-curriculum details:last-of-type { border-bottom:1px solid #d4e2f5; border-radius:0 0 .7rem .7rem; }
.broel-course-curriculum summary { padding:1rem; font-size:.94rem; background:#f3f6fb; }
.broel-eco--course .broel-course-curriculum li { font-size:.9rem; }
.broel-eco--course .broel-course-purchase { box-shadow:0 16px 42px #23395012; border-top-color:#238568; }
.broel-course-purchase .broel-course-buy { align-items:stretch; gap:.85rem; }
.broel-course-purchase .broel-course-buy > strong { flex:0 0 100%; font-size:2rem; }
.broel-course-purchase .broel-course-buy form { width:100%; }
.broel-course-purchase .broel-course-buy .broel-course-buy__button { width:100%; box-sizing:border-box; background:#7950aa; color:#fff !important; font-size:1rem; min-height:48px; }
.broel-eco--course .broel-eco__lesson { background:#fff; border:1px solid #d4e2f5; border-radius:1rem; padding:1.2rem; }
@media(max-width:600px) { .broel-course-outcomes ul { grid-template-columns:minmax(0,1fr); } }
