

:root {
  --bg: #0E2A2E;
  --surface: #143840;
  --text: #EAF4F3;
  --muted: #93B0B3;
  --accent: #F0715A;
  --accent2: #4FA6A0;

  --site-bg: #0E2A2E;
  --site-surface: #143840;
  --site-text: #EAF4F3;
  --site-muted: #93B0B3;
  --site-accent: #F0715A;

  --rule: rgba(147, 176, 179, 0.28);
  --inset: rgba(234, 244, 243, 0.04);
  --shadow: 0 18px 44px -22px rgba(0, 0, 0, 0.6);

  --container: 1140px;
  --pad-x: clamp(20px, 5vw, 40px);
  --serif: "DM Serif Display", Georgia, serif;
  --sans: "DM Sans", system-ui, sans-serif}

* { box-sizing: border-box}

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%}

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.65;
  font-weight: 400;
  overflow-x: hidden}

img { max-width: 100%; display: block}

a { color: var(--accent); text-decoration: none}
a:hover { text-decoration: underline}

h1, h2, h3, h4 {
  font-family: var(--serif);
  font-weight: 400;
  line-height: 1.12;
  margin: 0 0 0.4em;
  letter-spacing: 0.01em}
h1 { font-size: clamp(2.4rem, 6vw, 4rem)}
h2 { font-size: clamp(1.9rem, 4vw, 2.9rem)}
h3 { font-size: clamp(1.3rem, 2.4vw, 1.7rem)}

p { margin: 0 0 1.1em; max-width: 68ch}

:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
  border-radius: 4px}

.brv-shell {
  width: 100%;
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: var(--pad-x)}

.brv-section { padding-block: 80px}

.brv-meridian {
  display: flex;
  align-items: baseline;
  gap: 22px;
  margin-bottom: 46px;
  flex-wrap: wrap}
.brv-meridian__num {
  font-family: var(--serif);
  font-size: clamp(2.6rem, 6vw, 4.2rem);
  color: var(--accent);
  line-height: 1;
  min-width: 0}
.brv-meridian__rule {
  flex: 1 1 120px;
  height: 1px;
  background: var(--rule);
  min-width: 0;
  transform-origin: left center}
.brv-meridian__label {
  font-family: var(--sans);
  font-size: 0.78rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--muted);
  flex: 0 0 auto}

.brv-lead { color: var(--muted); font-size: 1.15rem; max-width: 54ch}

.btn-ne4 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-family: var(--sans);
  font-weight: 500;
  font-size: 0.98rem;
  line-height: 1;
  padding: 15px 30px;
  border-radius: 9999px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
  text-align: center}
.btn-ne4:hover { text-decoration: none; transform: translateY(-2px)}
.btn-ne4:disabled { opacity: 0.5; cursor: not-allowed; transform: none}
.btn-ne4--primary { background: var(--accent); color: #2a0d07}
.btn-ne4--primary:hover { background: #f2856f}
.btn-ne4--ghost {
  background: transparent;
  color: var(--text);
  border-color: var(--rule)}
.btn-ne4--ghost:hover { border-color: var(--accent2); color: var(--accent2)}

.field-93h {
  width: 100%;
  font-family: var(--sans);
  font-size: 1rem;
  color: var(--text);
  background: var(--inset);
  border: 1px solid var(--rule);
  border-radius: 12px;
  padding: 13px 16px;
  min-height: 50px;
  transition: border-color 0.18s ease, background 0.18s ease}
textarea.field-93h { min-height: 150px; resize: vertical}
.field-93h::placeholder { color: var(--muted)}
.field-93h:focus {
  outline: none;
  border-color: var(--accent);
  background: rgba(234, 244, 243, 0.06)}
.brv-form__label {
  display: block;
  font-size: 0.82rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px}
.brv-form__row { margin-bottom: 20px}

.panel-4zs {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 16px;
  padding: 30px;
  box-shadow: var(--shadow)}
.tag-q7p {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.74rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--accent2);
  background: rgba(79, 166, 160, 0.12);
  border: 1px solid rgba(79, 166, 160, 0.3);
  border-radius: 9999px;
  padding: 6px 15px}

.brv-frame {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--surface)}
.brv-frame img { width: 100%; height: 100%; object-fit: cover}
.brv-frame--wide { aspect-ratio: 16 / 9}
.brv-frame--portrait { aspect-ratio: 3 / 4}
.brv-frame--square { aspect-ratio: 1 / 1}

#topbar-7m9 {
  position: sticky;
  top: 0;
  z-index: 60;
  background: rgba(14, 42, 46, 0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s ease, background 0.2s ease}
#topbar-7m9.is-scrolled { border-bottom-color: var(--rule)}

.brv-nav-bar {
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: nowrap}

.brv-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0}
.brv-logo:hover { text-decoration: none}
.brv-logo__icon { width: 26px; height: 26px; flex: 0 0 auto}
.brv-logo__word {
  font-family: var(--serif);
  font-size: 1.4rem;
  color: var(--text);
  line-height: 1;
  white-space: nowrap}

.brv-nav-bar__right {
  display: flex;
  align-items: center;
  gap: 26px;
  flex-wrap: nowrap}
.brv-nav-bar__links {
  display: flex;
  align-items: center;
  gap: 26px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none}
.brv-nav-bar__links a {
  color: var(--muted);
  font-size: 0.95rem;
  font-weight: 500}
.brv-nav-bar__links a:hover,
.brv-nav-bar__links a.is-current { color: var(--text); text-decoration: none}

.brv-menu-trigger {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: none;
  border: none;
  color: var(--text);
  font-family: var(--sans);
  font-weight: 500;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  cursor: pointer;
  padding: 6px 4px}
.brv-menu-trigger i { color: var(--accent)}

#mobile-nav-wn1 {
  position: fixed;
  top: 0;
  right: 0;
  width: min(360px, 84vw);
  height: 100vh;
  background: var(--surface);
  border-left: 1px solid var(--rule);
  z-index: 90;
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.22, 0.61, 0.36, 1);
  padding: 30px 34px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow-y: auto}
#mobile-nav-wn1.is-open { transform: translateX(0)}
.brv-drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
  flex-wrap: wrap;
  gap: 12px}
.brv-drawer__title {
  font-size: 0.78rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--muted)}
#nav-close-i9h {
  background: none;
  border: 1px solid var(--rule);
  border-radius: 9999px;
  width: 40px;
  height: 40px;
  color: var(--text);
  cursor: pointer;
  font-size: 1.1rem}
#nav-list-0d6 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column}
#nav-list-0d6 li { border-bottom: 1px solid var(--rule)}
#nav-list-0d6 a {
  display: block;
  padding: 16px 0;
  color: var(--text);
  font-family: var(--serif);
  font-size: 1.5rem}
#nav-list-0d6 a:hover { color: var(--accent); text-decoration: none}

#veil-a62 {
  position: fixed;
  inset: 0;
  background: rgba(6, 20, 22, 0.62);
  backdrop-filter: blur(2px);
  z-index: 80;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.28s ease, visibility 0.28s ease}
#veil-a62.is-open { opacity: 1; visibility: visible}

.brv-hero { padding-block: clamp(56px, 9vw, 104px) 80px}
.brv-hero__head {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px}
.brv-hero__title { }
.brv-hero__lead {
  color: var(--muted);
  font-size: 1.2rem;
  max-width: 46ch}
.brv-hero__actions {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 12px}
.brv-hero__media {
  margin-top: 56px;
  aspect-ratio: 21 / 9}
@media (min-width: 900px) {
  .brv-hero__head {
    grid-template-columns: 1.3fr 1fr;
    align-items: end;
    gap: 48px}
}

.brv-page-hero { padding-block: clamp(64px, 9vw, 110px)}
.brv-page-hero--tint {
  background: linear-gradient(180deg, rgba(79,166,160,0.10), rgba(20,56,64,0));
  border-bottom: 1px solid var(--rule)}
.brv-page-hero--center { text-align: center}
.brv-page-hero--center .brv-lead { margin-inline: auto}
.brv-page-hero--side {
  display: grid;
  gap: 40px;
  align-items: center}
.brv-page-hero--side .brv-page-hero__media { aspect-ratio: 4 / 3}
@media (min-width: 900px) {
  .brv-page-hero--side { grid-template-columns: 1.1fr 0.9fr}
}

.brv-audience__list { display: flex; flex-direction: column; gap: 24px}
.brv-persona {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  align-items: center}
.brv-persona__photo { aspect-ratio: 4 / 3}
.brv-persona__body { min-width: 0}
.brv-persona__body h3 { margin-bottom: 0.3em}
@media (min-width: 720px) {
  .brv-persona { grid-template-columns: 300px 1fr}
  .brv-persona:nth-child(even) .brv-persona__photo { order: 2}
}

.brv-faq__list { display: flex; flex-direction: column}
.brv-faq--cols .brv-faq__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 0 40px}
[data-fold] { border-bottom: 1px solid var(--rule)}
[data-acc-trigger] {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--text);
  font-family: var(--serif);
  font-size: 1.2rem;
  text-align: left;
  padding: 22px 0}
[data-acc-trigger] i { color: var(--accent); transition: transform 0.3s ease; flex: 0 0 auto}
[data-fold].is-open [data-acc-trigger] i { transform: rotate(45deg)}
.brv-faq__body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease}
[data-fold].is-open .brv-faq__body { max-height: 600px}
.brv-faq__body p { color: var(--muted); padding-bottom: 22px; margin: 0}

.brv-team__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 28px}
.brv-team__card { min-width: 0}
.brv-team__photo { aspect-ratio: 3 / 4; margin-bottom: 18px}
.brv-team__name { margin-bottom: 0.15em}
.brv-team__role { color: var(--accent2); font-size: 0.9rem; letter-spacing: 0.04em}

.brv-process__row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 30px}
.brv-step { min-width: 0}
.brv-step__num {
  font-family: var(--serif);
  font-size: 2.6rem;
  color: var(--accent);
  line-height: 1;
  display: block;
  margin-bottom: 14px}
.brv-step__num::after {
  content: "";
  display: block;
  width: 44px;
  height: 1px;
  background: var(--rule);
  margin-top: 14px}
.brv-step h3 { font-size: 1.25rem}

.brv-timeline { display: flex; flex-direction: column; gap: 0}
.brv-timeline__item {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 24px;
  padding-bottom: 40px;
  position: relative}
.brv-timeline__item:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 29px;
  top: 44px;
  bottom: 0;
  width: 1px;
  background: var(--rule)}
.brv-timeline__dot {
  width: 60px;
  height: 60px;
  border-radius: 9999px;
  border: 1px solid var(--rule);
  background: var(--surface);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--serif);
  font-size: 1.4rem;
  color: var(--accent);
  z-index: 1}
.brv-timeline__body { min-width: 0; padding-top: 10px}

.brv-curric__list {
  display: flex;
  flex-direction: column;
  gap: 22px;
  counter-reset: outcome}
.brv-curric__item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: baseline;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--rule)}
.brv-curric__item::before {
  counter-increment: outcome;
  content: counter(outcome, decimal-leading-zero);
  font-family: var(--serif);
  font-size: 1.7rem;
  color: var(--accent)}
.brv-curric__item p { margin: 0.3em 0 0; color: var(--muted)}

.brv-curric--cards .brv-curric__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  counter-reset: module}
.brv-curric--cards .brv-curric__item {
  display: block;
  border-bottom: none;
  padding: 30px}
.brv-curric--cards .brv-curric__item::before {
  counter-increment: module;
  content: counter(module, decimal-leading-zero);
  display: block;
  margin-bottom: 14px}
.brv-curric__outcome {
  display: block;
  margin-top: 14px;
  color: var(--accent2);
  font-size: 0.9rem}

.brv-why__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 40px}
.brv-why__arg { min-width: 0}
.brv-why__arg h3 {
  padding-top: 20px;
  border-top: 1px solid var(--accent)}
.brv-why__arg p { color: var(--muted)}

.brv-compare {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px}
.brv-compare__col { min-width: 0}
.brv-compare__col--usual { opacity: 0.72}
.brv-compare__col ul { list-style: none; margin: 18px 0 0; padding: 0}
.brv-compare__col li {
  padding: 12px 0 12px 30px;
  border-bottom: 1px solid var(--rule);
  position: relative}
.brv-compare__col li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 6 Free";
  font-weight: 900}
.brv-compare__col--usual li::before { content: "\f068"; color: var(--muted)}
.brv-compare__col--ours li::before { content: "\f00c"; color: var(--accent2)}

.brv-longform { max-width: 68ch}
.brv-longform p { font-size: 1.1rem}

.brv-prose { max-width: 68ch}
.brv-prose p { font-size: 1.1rem}
.brv-pullquote {
  font-family: var(--serif);
  font-size: clamp(1.5rem, 3.4vw, 2.2rem);
  line-height: 1.28;
  color: var(--text);
  border-left: 2px solid var(--accent);
  padding-left: 28px;
  margin: 44px 0;
  max-width: 55ch}
.brv-stat {
  display: flex;
  gap: 26px;
  flex-wrap: wrap;
  margin-top: 36px}
.brv-stat__item { min-width: 0; flex: 1 1 180px}
.brv-stat__num {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5vw, 3.4rem);
  color: var(--accent);
  line-height: 1}
.brv-stat__cap { color: var(--muted); font-size: 0.92rem; margin-top: 8px}

.brv-cta-strip {
  text-align: center;
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule)}
.brv-cta-strip__inner { max-width: 60ch; margin-inline: auto}
.brv-cta-strip__inner h2 { margin-bottom: 0.4em}
.brv-cta-strip__actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 24px}

.brv-cta-card .panel-4zs {
  max-width: 720px;
  margin-inline: auto;
  text-align: center;
  padding: clamp(36px, 6vw, 60px)}

.brv-cta-split .panel-4zs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: center}
.brv-cta-split__contact { display: flex; flex-direction: column; gap: 12px}
.brv-cta-split__contact a { color: var(--text)}
@media (min-width: 760px) {
  .brv-cta-split .panel-4zs { grid-template-columns: 1.4fr 1fr}
}

.brv-contact {
  display: grid;
  grid-template-columns: 1fr;
  gap: 44px}
.brv-contact__aside { display: flex; flex-direction: column; gap: 24px}
.brv-contact__line { display: flex; gap: 14px; align-items: flex-start}
.brv-contact__line i { color: var(--accent); margin-top: 4px; flex: 0 0 auto}
.brv-contact__line a { color: var(--text)}
@media (min-width: 860px) {
  .brv-contact { grid-template-columns: 1.3fr 0.9fr; gap: 60px}
}

.brv-legal { max-width: 72ch}
.brv-legal h2 { margin-top: 1.6em}
.brv-legal p, .brv-legal li { color: var(--muted)}
.brv-legal a { color: var(--accent)}

.brv-footer {
  border-top: 1px solid var(--rule);
  padding-block: 96px;
  text-align: center}
.brv-footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px}
.brv-footer__mark {
  display: inline-flex;
  align-items: center;
  gap: 10px}
.brv-footer__mark .brv-logo__word { font-size: 1.5rem}
.brv-footer__nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 26px;
  margin: 0;
  padding: 0;
  list-style: none}
.brv-footer__nav a { color: var(--muted); font-weight: 500}
.brv-footer__nav a:hover { color: var(--text); text-decoration: none}
.brv-footer__address { color: var(--muted); font-size: 0.95rem}
.brv-footer__address a { color: var(--muted)}
.brv-footer__legal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 20px;
  font-size: 0.88rem}
.brv-footer__legal a { color: var(--muted)}
.brv-footer__copy { color: var(--muted); font-size: 0.84rem; opacity: 0.8}

#dock-nqc {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 55}
#back-top-d9i {
  width: 48px;
  height: 48px;
  border-radius: 9999px;
  border: 1px solid var(--rule);
  background: var(--surface);
  color: var(--text);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  box-shadow: var(--shadow);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.18s ease}
#back-top-d9i.is-shown { opacity: 1; visibility: visible}
#back-top-d9i:hover { transform: translateY(-3px); color: var(--accent)}

.reel-gkf { padding-bottom: 46px}
.reel-gkf .swiper-slide { height: auto}
.swiper-pagination-bullet {
  background: var(--muted);
  opacity: 0.5}
.swiper-pagination-bullet-active { background: var(--accent); opacity: 1}
.swiper-button-prev, .swiper-button-next { color: var(--accent)}
.swiper-button-prev::after, .swiper-button-next::after { font-size: 1.4rem}

.site-modal, .dialog-630 { }
.site-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(6, 20, 22, 0.7);
  backdrop-filter: blur(3px)}
.site-modal.is-open { display: flex}
.dialog-630 {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: clamp(30px, 5vw, 46px);
  max-width: 480px;
  width: 100%;
  text-align: center;
  position: relative}
.dialog-630__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 38px;
  height: 38px;
  border-radius: 9999px;
  border: 1px solid var(--rule);
  background: none;
  color: var(--text);
  cursor: pointer}
.dialog-630__icon {
  font-size: 2.2rem;
  color: var(--accent);
  margin-bottom: 12px}

[data-aos] { will-change: transform, opacity}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; scroll-behavior: auto !important}
}

@media (max-width: 460px) {
  .brv-nav-bar__links { display: none}
  .brv-menu-trigger span { display: none}
}

.ck-0vo-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998}
.ck-0vo-overlay.is-open{opacity:1;visibility:visible}
.ck-0vo-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999}
.ck-0vo-panel.is-open{opacity:1;visibility:visible}
.ck-0vo-panel h3{margin:0 0 8px;font-size:1.2rem}
.ck-0vo-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem}
.ck-0vo-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2)}
.ck-0vo-cat h4{margin:0 0 2px;font-size:.98rem}
.ck-0vo-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem}
.ck-0vo-switch{position:relative;flex:0 0 auto;width:44px;height:24px}
.ck-0vo-switch input{opacity:0;width:0;height:0;position:absolute}
.ck-0vo-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer}
.ck-0vo-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.ck-0vo-switch input:checked+span{background:var(--site-accent,#2b7)}
.ck-0vo-switch input:checked+span::before{transform:translateX(20px)}
.ck-0vo-switch input:disabled+span{opacity:.6;cursor:not-allowed}
.ck-0vo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ck-0vo-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer}
.ck-0vo-actions #ck-0vo-all{background:var(--site-accent,#2b7);color:#fff}
.ck-0vo-actions #ck-0vo-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4)}
.ck-0vo-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem}
.ck-0vo-links a{color:var(--site-accent,#2b7);text-decoration:underline}
.ck-0vo-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem}

.ck-0vo-overlay{background:transparent;pointer-events:none}
.ck-0vo-panel{left:24px;bottom:24px;width:min(380px,calc(100% - 32px));border-radius:16px;transform:translateY(24px)}
.ck-0vo-panel.is-open{transform:translateY(0)}
@media(max-width:520px){.ck-0vo-panel{left:16px;right:16px;width:auto}}
@media(max-width:520px){.ck-0vo-actions button{min-width:100%}}
#dock-nqc{left:auto !important;right:18px !important}
@media(max-width:520px){#dock-nqc{right:12px !important}}

.form-done-li7{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px)}
.form-done-li7.is-open{display:flex}
.form-done-li7__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:form-done-li7-in .22s ease-out}
@keyframes form-done-li7-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.form-done-li7__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff}
.form-done-li7__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25}
.form-done-li7__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472)}
.form-done-li7__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff}
.form-done-li7__close:hover{filter:brightness(1.08)}
.form-done-li7__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.form-done-li7__box{animation:none}}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%}
img,svg,video,iframe,canvas{max-width:100%}
table{max-width:100%}

.simpleParallax{display:block;width:100%;height:100%}
.simpleParallax img{width:100%;height:100%;object-fit:cover}

blockquote, figure { margin-left: 0; margin-right: 0}

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0}

html.no-aos [data-aos]{opacity:1 !important;transform:none !important}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7}
.legal-doc h1{margin:0 0 .6em}
.legal-doc h2{margin:1.8em 0 .5em}
.legal-doc h3{margin:1.4em 0 .4em}
.legal-doc p,.legal-doc li{margin:0 0 .8em}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left}

@media (max-width: 720px) {
  body { overflow-x: hidden}
  h1, h2, h3, p, li, td { overflow-wrap: break-word}
  
  input, select, textarea { max-width: 100%; min-width: 0}
  
  img, svg, video, iframe, table { max-width: 100%}
}

#menu-open-it2{appearance:none;-webkit-appearance:none;background:none;border:0;padding:.4em;color:inherit;font:inherit;cursor:pointer;line-height:1}

@media (max-width: 720px) {
  
.btn-ne4,
.tag-q7p,
.brv-logo,
.brv-menu-trigger,
#mobile-nav-wn1,
#nav-list-0d6,
.brv-audience__list,
.brv-faq__list,
[data-acc-trigger],
.brv-timeline,
.brv-timeline__dot,
.brv-curric__list,
.brv-cta-split__contact,
.brv-contact__aside,
.brv-contact__line,
.brv-footer__inner,
.brv-footer__mark,
#back-top-d9i,
.site-modal.is-open,
.ck-0vo-cat,
.ck-0vo-links,
.form-done-li7.is-open,
.form-done-li7__mark { flex-wrap: wrap}
  
.btn-ne4 > *,
.tag-q7p > *,
.brv-logo > *,
.brv-menu-trigger > *,
#mobile-nav-wn1 > *,
#nav-list-0d6 > *,
.brv-audience__list > *,
.brv-faq__list > *,
[data-acc-trigger] > *,
.brv-timeline > *,
.brv-timeline__dot > *,
.brv-curric__list > *,
.brv-cta-split__contact > *,
.brv-contact__aside > *,
.brv-contact__line > *,
.brv-footer__inner > *,
.brv-footer__mark > *,
#back-top-d9i > *,
.site-modal.is-open > *,
.ck-0vo-cat > *,
.ck-0vo-links > *,
.form-done-li7.is-open > *,
.form-done-li7__mark > * { min-width: 0}
}

.ck-0vo-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998;}
.ck-0vo-overlay.is-open{opacity:1;visibility:visible;}
.ck-0vo-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999;}
.ck-0vo-panel.is-open{opacity:1;visibility:visible;}
.ck-0vo-panel h3{margin:0 0 8px;font-size:1.2rem;}
.ck-0vo-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem;}
.ck-0vo-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2);}
.ck-0vo-cat h4{margin:0 0 2px;font-size:.98rem;}
.ck-0vo-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem;}
.ck-0vo-switch{position:relative;flex:0 0 auto;width:44px;height:24px;}
.ck-0vo-switch input{opacity:0;width:0;height:0;position:absolute;}
.ck-0vo-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer;}
.ck-0vo-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;}
.ck-0vo-switch input:checked+span{background:var(--site-accent,#2b7);}
.ck-0vo-switch input:checked+span::before{transform:translateX(20px);}
.ck-0vo-switch input:disabled+span{opacity:.6;cursor:not-allowed;}
.ck-0vo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.ck-0vo-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;}
.ck-0vo-actions #ck-0vo-all{background:var(--site-accent,#2b7);color:#fff;}
.ck-0vo-actions #ck-0vo-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4);}
.ck-0vo-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem;}
.ck-0vo-links a{color:var(--site-accent,#2b7);text-decoration:underline;}
.ck-0vo-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem;}

.ck-0vo-overlay{background:transparent;pointer-events:none;}
.ck-0vo-panel{left:24px;bottom:24px;width:min(380px,calc(100% - 32px));border-radius:16px;transform:translateY(24px);}
.ck-0vo-panel.is-open{transform:translateY(0);}
@media(max-width:520px){.ck-0vo-panel{left:16px;right:16px;width:auto;}}
@media(max-width:520px){.ck-0vo-actions button{min-width:100%;}}
#dock-nqc{left:auto !important;right:18px !important;}
@media(max-width:520px){#dock-nqc{right:12px !important;}}

.form-done-li7{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px);}
.form-done-li7.is-open{display:flex;}
.form-done-li7__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:form-done-li7-in .22s ease-out;}
@keyframes form-done-li7-in{from{opacity:0;transform:translateY(12px) scale(.97);}to{opacity:1;transform:none;}}
.form-done-li7__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff;}
.form-done-li7__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25;}
.form-done-li7__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472);}
.form-done-li7__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff;}
.form-done-li7__close:hover{filter:brightness(1.08);}
.form-done-li7__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px;}
@media(prefers-reduced-motion:reduce){.form-done-li7__box{animation:none;}}

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%;}
img,svg,video,iframe,canvas{max-width:100%;}
table{max-width:100%;}

.simpleParallax{display:block;width:100%;height:100%;}
.simpleParallax img{width:100%;height:100%;object-fit:cover;}

blockquote, figure { margin-left: 0; margin-right: 0; }

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0; }

html.no-aos [data-aos]{opacity:1 !important;transform:none !important;}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important;}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7;}
.legal-doc h1{margin:0 0 .6em;}
.legal-doc h2{margin:1.8em 0 .5em;}
.legal-doc h3{margin:1.4em 0 .4em;}
.legal-doc p,.legal-doc li{margin:0 0 .8em;}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em;}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em;}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left;}

@media (max-width: 720px) {
  body { overflow-x: hidden; }
  h1, h2, h3, p, li, td { overflow-wrap: break-word; }
  
  input, select, textarea { max-width: 100%; min-width: 0; }
  
  img, svg, video, iframe, table { max-width: 100%; }
}
