









:root{
  --deo-red-800:#4a4216;
  --deo-red-700:#5f561e;
  --deo-red-600:#726722;
  --deo-red-500:#887d32;
  --deo-red-100:#e6e5a0;
  --deo-red-50:#f2f4c8;

  --deo-teal-700:#16477c;
  --deo-teal-600:#1e5a94;
  --deo-teal-500:#276fb2;
  --deo-teal-100:#e1ebf1;

  --deo-gold-600:#4c6a09;
  --deo-gold-500:#76a116;
  --deo-gold-100:#d2ef9d;

  --deo-ink:#1e1f13;
  --deo-ink-soft:#484b34;
  --deo-paper:#eff8d7;
  --deo-paper-raised:#ffffff;
  --deo-paper-dim:#ddebb6;
  --deo-line:#ccdaa2;

  --deo-dark-900:#1a1b0e;
  --deo-dark-800:#242514;
  --deo-cream-on-dark:#e8f1cc;
  --deo-muted-on-dark:#c6cea2;

  --deo-shadow-sm:0 10px 24px -18px rgba(23, 24, 9, 0.4);
  --deo-shadow-md:0 22px 48px -26px rgba(23, 24, 9, 0.48);
  --deo-shadow-lg:0 32px 64px -28px rgba(23, 24, 9, 0.5);

  --deo-radius-lg:18.2px;
  --deo-radius-md:11.2px;
  --deo-radius-sm:7px;
  --deo-radius-pill:699.3px;

  --deo-font-heading:"Literata", Georgia, 'Times New Roman', serif;
  --deo-font-body:"Outfit", -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;

  --deo-header-h:80px;
  --deo-container:1180px;
}


*, *::before, *::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
:where(.deo-page){
  margin:0;
  background:var(--deo-paper);
  color:var(--deo-ink);
  font-family:var(--deo-font-body);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
:where(.deo-page) h1,
:where(.deo-page) h2,
:where(.deo-page) h3,
:where(.deo-page) h4{
  font-family:var(--deo-font-heading);
  font-weight:700;
  line-height:1.18;
  margin:0 0 0.6em;
  color:var(--deo-ink);
}
:where(.deo-page) p{ margin:0 0 1em; color:var(--deo-ink-soft); }
:where(.deo-page) ul,
:where(.deo-page) ol{ margin:0; padding:0; list-style:none; }
:where(.deo-page) a{ color:var(--deo-red-700); text-decoration-color:transparent; }
:where(.deo-page) img{ max-width:100%; height:auto; display:block; }
:where(.deo-page) button{ font-family:inherit; }
:where(.deo-page) svg{ display:block; }
:where(.deo-page) :focus-visible{ outline:3px solid var(--deo-teal-600); outline-offset:3px; }


:where(.deo-dark) h1,
:where(.deo-dark) h2,
:where(.deo-dark) h3,
:where(.deo-dark) h4{ color:var(--deo-cream-on-dark); }
:where(.deo-dark) p{ color:var(--deo-muted-on-dark); }
:where(.deo-dark) a{ color:var(--deo-cream-on-dark); }


.deo-dark .deo-card-on-light{ color:var(--deo-ink); }
.deo-dark .deo-card-on-light h1,
.deo-dark .deo-card-on-light h2,
.deo-dark .deo-card-on-light h3,
.deo-dark .deo-card-on-light h4{ color:var(--deo-ink); }
.deo-dark .deo-card-on-light p{ color:var(--deo-ink-soft); }
.deo-dark .deo-card-on-light a:not(.deo-btn){ color:var(--deo-red-700); }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

.deo-skip-link{
  position:absolute; left:1rem; top:-3rem; background:var(--deo-ink);
  color:var(--deo-cream-on-dark); padding:0.7em 1.2em; border-radius:var(--deo-radius-sm);
  z-index:200; transition:top .15s ease; font-weight:600;
}
.deo-skip-link:focus{ top:1rem; }


.container{
  width:100%;
  max-width:var(--deo-container);
  margin-inline:auto;
  padding-inline:clamp(1.2rem, 4vw, 2.6rem);
}
.deo-narrow{ max-width:760px; margin-inline:auto; }

.deo-section{ padding-block:clamp(3.3rem, 6vw, 5.7rem); }
.deo-section--tight{ padding-block:clamp(2.4rem, 4vw, 3.3rem); }
.deo-section--dim{ background:var(--deo-paper-dim); }
.deo-section--dark{ background:var(--deo-dark-900); }

.deo-eyebrow{
  display:inline-flex; align-items:center; gap:.5em;
  font-family:var(--deo-font-body); font-weight:700; font-size:.8rem;
  letter-spacing:.09em; text-transform:uppercase; color:var(--deo-teal-700);
  margin-bottom:.9em;
}
.deo-eyebrow::before{
  content:""; width:1.4em; height:2px; background:var(--deo-gold-500); display:inline-block;
}
.deo-dark .deo-eyebrow{ color:var(--deo-gold-100); }

.deo-head{ max-width:660px; margin-bottom:clamp(1.9rem,4vw,2.8rem); }
.deo-head--center{ margin-inline:auto; text-align:center; }
.deo-head h2{ font-size:clamp(1.7rem, 1.35rem + 1.4vw, 2.5rem); }
.deo-head p{ font-size:1.08rem; }


#how-works,#resources,#curriculum,#plans,#testimonials,#faq,#enrolment,#for-who,#instructor-preview{
  scroll-margin-top:calc(var(--deo-header-h) + 14px);
}


.deo-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  padding:0.9em 1.7em; border-radius:var(--deo-radius-pill);
  font-family:var(--deo-font-body); font-weight:700; font-size:.98rem;
  border:2px solid transparent; cursor:pointer; text-align:center;
  transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease, color .15s ease, border-color .15s ease;
  min-width:0;
}
.deo-btn--primary{ background:var(--deo-red-600); color:#ffffff; box-shadow:var(--deo-shadow-sm); }
.deo-btn--primary:hover{ background:var(--deo-red-700); transform:translateY(-2px); box-shadow:var(--deo-shadow-md); }
.deo-btn--ghost{ background:transparent; border-color:var(--deo-ink); color:var(--deo-ink); }
.deo-btn--ghost:hover{ background:var(--deo-ink); color:var(--deo-paper); }
.deo-btn--on-dark{ background:var(--deo-cream-on-dark); color:var(--deo-dark-900); }
.deo-btn--on-dark:hover{ background:#ffffff; transform:translateY(-2px); }
.deo-btn--teal{ background:var(--deo-teal-600); color:#ffffff; box-shadow:var(--deo-shadow-sm); }
.deo-btn--teal:hover{ background:var(--deo-teal-700); transform:translateY(-2px); }
.deo-btn--sm{ padding:.65em 1.3em; font-size:.88rem; }
.deo-btn--block{ width:100%; }


.deo-header{
  position:sticky; top:0; z-index:70;
  background:rgba(239, 248, 215, 0.92); backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--deo-line);
}
.deo-header__inner{
  display:flex; align-items:center; gap:1.4rem;
  min-height:var(--deo-header-h);
}
.deo-brand{
  display:inline-flex; align-items:center; gap:0.6rem;
  text-decoration:none; color:var(--deo-ink); margin-right:auto;
  min-width:0;
}
.deo-brand__mark{ display:block; width:38px; height:38px; flex:none; }
.deo-brand__name{
  font-family:var(--deo-font-heading); font-weight:700; font-size:1.18rem;
  color:var(--deo-ink); line-height:1.1;
}

.deo-nav{ display:none; }
.deo-nav__tabs{ display:flex; align-items:center; gap:1.8rem; }
.deo-nav__link{
  position:relative; display:inline-block; padding-block:.6em;
  font-weight:600; font-size:.96rem; color:var(--deo-ink); white-space:nowrap;
}
.deo-nav__link::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:3px;
  background:var(--deo-red-600); border-radius:2.1px;
  transform:scaleX(0); transform-origin:left; transition:transform .2s ease;
}
.deo-nav__link:hover::after,
.deo-nav__link:focus-visible::after,
.deo-nav__link.is-active::after{ transform:scaleX(1); }
.deo-nav__link.is-active{ color:var(--deo-red-700); }

.deo-header__actions{ display:flex; align-items:center; gap:0.9rem; flex:none; }

.deo-menu-toggle{
  display:inline-flex; flex-direction:column; align-items:center; justify-content:center;
  gap:4.8px; width:44px; height:44px; border-radius:var(--deo-radius-sm);
  border:1px solid var(--deo-line); background:var(--deo-paper-raised); cursor:pointer;
}
.deo-menu-toggle__bar{ width:20px; height:2px; background:var(--deo-ink); display:block; transition:transform .2s ease, opacity .2s ease; }
.deo-menu-toggle[aria-expanded="true"] .deo-menu-toggle__bar:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.deo-menu-toggle[aria-expanded="true"] .deo-menu-toggle__bar:nth-child(2){ opacity:0; }
.deo-menu-toggle[aria-expanded="true"] .deo-menu-toggle__bar:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.deo-mobile-nav{
  display:none; position:fixed; inset:var(--deo-header-h) 0 0 0;
  background:var(--deo-paper); z-index:65; overflow-y:auto;
  padding:1.4rem clamp(1.2rem,4vw,2.6rem) 2.8rem;
}
.deo-mobile-nav.is-open{ display:block; }
.deo-mobile-nav ul{ display:flex; flex-direction:column; gap:0.3rem; }
.deo-mobile-nav a{
  display:block; padding:.95em .3em; font-weight:600; font-size:1.08rem;
  color:var(--deo-ink); border-bottom:1px solid var(--deo-line);
}
.deo-mobile-nav .deo-btn{ margin-top:1.3rem; }

@media (min-width:900px){
  .deo-nav{ display:block; }
  .deo-header__actions .deo-btn{ display:inline-flex; }
  .deo-menu-toggle{ display:none; }
  .deo-mobile-nav{ display:none !important; }
}
@media (max-width:899.98px){
  .deo-header__actions .deo-btn{ display:none; }
}


.deo-hero{ padding-top:clamp(1.9rem,5vw,3.6rem); padding-bottom:clamp(0.9rem,2vw,1.7rem); }
.deo-hero__grid{
  display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(1.9rem,5vw,3.3rem);
  align-items:center;
}
@media (min-width:960px){
  .deo-hero__grid{ grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr); }
}
.deo-hero__copy h1{ font-size:clamp(1.9rem, 1.25rem + 2vw, 2.85rem); margin-bottom:.5em; }
.deo-hero__lede{ font-size:1.08rem; max-width:48ch; margin-bottom:.7em; }
.deo-hero__actions{ display:flex; flex-wrap:wrap; gap:0.8rem; margin-top:1rem; }
.deo-hero__meta{
  display:flex; flex-wrap:wrap; gap:0.9rem 1.2rem; margin-top:1.1rem;
  padding-top:0.9rem; border-top:1px solid var(--deo-line);
}
.deo-eyebrow{ margin-bottom:.6em; }
.deo-hero__meta-item{ display:flex; align-items:center; gap:.6em; font-weight:600; font-size:.92rem; color:var(--deo-ink-soft); }
.deo-hero__meta-item svg{ flex:none; color:var(--deo-teal-600); }

.deo-hero__figure{
  position:relative; border-radius:var(--deo-radius-lg); overflow:hidden;
  box-shadow:var(--deo-shadow-lg); background:var(--deo-red-100);
  align-self:start;
}
.deo-hero__figure img{ width:100%; aspect-ratio:2/3; object-fit:cover; }
.deo-hero__badge{
  position:absolute; left:1.1rem; bottom:1.1rem; right:1.1rem;
  background:var(--deo-paper-raised); border-radius:var(--deo-radius-md);
  padding:0.9rem 1rem; box-shadow:var(--deo-shadow-md);
  display:flex; align-items:center; gap:0.8rem;
}
.deo-hero__badge strong{ display:block; font-family:var(--deo-font-heading); font-size:1.05rem; }
.deo-hero__badge span{ display:block; font-size:.82rem; color:var(--deo-ink-soft); }
.deo-hero__badge-icon{
  flex:none; width:40px; height:40px; border-radius:50%; background:var(--deo-teal-100);
  display:flex; align-items:center; justify-content:center; color:var(--deo-teal-700);
}


.deo-trust{ border-top:1px solid var(--deo-line); border-bottom:1px solid var(--deo-line); background:var(--deo-paper-raised); }
.deo-trust__row{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem 0.9rem;
  padding-block:1rem; text-align:center;
}
@media (min-width:720px){ .deo-trust__row{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.deo-trust__num{ font-family:var(--deo-font-heading); font-weight:700; font-size:1.5rem; color:var(--deo-red-700); display:block; }
.deo-trust__label{ font-size:.85rem; color:var(--deo-ink-soft); }


.deo-audience{ display:grid; grid-template-columns:minmax(0,1fr); gap:2.4rem; }
@media (min-width:860px){ .deo-audience{ grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr); align-items:center; } }
.deo-audience__figure{ border-radius:var(--deo-radius-lg); overflow:hidden; box-shadow:var(--deo-shadow-md); }
.deo-audience__figure img{ width:100%; aspect-ratio:3/2; object-fit:cover; }
.deo-audience__list{ display:grid; gap:0.9rem; margin-top:1.5rem; }
.deo-audience__item{
  display:flex; gap:0.9rem; align-items:flex-start; padding:0.9rem 1rem;
  background:var(--deo-paper-raised); border:1px solid var(--deo-line); border-radius:var(--deo-radius-md);
}
.deo-audience__item svg{ flex:none; color:var(--deo-red-600); margin-top:0.1rem; }
.deo-audience__item p{ margin:0; color:var(--deo-ink); font-weight:600; font-size:.98rem; }


.deo-masonry{ column-count:1; column-gap:1.5rem; }
@media (min-width:680px){ .deo-masonry{ column-count:2; } }
@media (min-width:1080px){ .deo-masonry{ column-count:3; } }
.deo-masonry__item{
  break-inside:avoid; margin:0 0 1.5rem; display:block; width:100%;
  background:var(--deo-paper-raised); border:1px solid var(--deo-line);
  border-radius:var(--deo-radius-lg); padding:1.7rem 1.6rem; box-shadow:var(--deo-shadow-sm);
}
.deo-masonry__item--featured{
  background:linear-gradient(165deg, var(--deo-teal-700), var(--deo-teal-600));
  background-color:var(--deo-teal-700); 
  border-color:transparent;
  color:var(--deo-cream-on-dark); 
}
.deo-masonry__item--featured .deo-masonry__checklist li{ color:var(--deo-cream-on-dark); }
.deo-masonry__icon{
  width:52px; height:52px; border-radius:9.8px; background:var(--deo-red-50);
  color:var(--deo-red-700); display:flex; align-items:center; justify-content:center;
  margin-bottom:1rem;
}
.deo-masonry__item--featured .deo-masonry__icon{ background:rgba(255, 255, 255, 0.16); color:#ffffff; }
.deo-masonry__item h3{ font-size:1.2rem; margin-bottom:0.5rem; }
.deo-masonry__item p{ margin-bottom:0; font-size:.97rem; }
.deo-masonry__checklist{ display:grid; gap:0.5rem; margin-top:1rem; }
.deo-masonry__checklist li{ display:flex; gap:.6em; align-items:flex-start; font-size:.94rem; font-weight:600; }
.deo-masonry__checklist svg{ flex:none; margin-top:.2em; }


.deo-steps{
  display:grid; grid-template-columns:minmax(0,1fr); gap:1.3rem;
  counter-reset:deo-step;
}
@media (min-width:760px){ .deo-steps{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.deo-step{ position:relative; padding-top:2.5rem; }
.deo-step::before{
  counter-increment:deo-step; content:counter(deo-step,decimal-leading-zero);
  position:absolute; top:0; left:0; font-family:var(--deo-font-heading); font-weight:700;
  font-size:1.9rem; color:var(--deo-red-500);
}
.deo-step h3{ font-size:1.05rem; margin-bottom:0.4rem; }
.deo-step p{ font-size:.94rem; margin-bottom:0; }
@media (min-width:760px){
  .deo-step:not(:last-child)::after{
    content:""; position:absolute; top:1rem; left:calc(100% + .7rem); width:calc(100% - 1.4rem);
    max-width:2.4rem; border-top:2px dashed var(--deo-red-500); opacity:.55;
  }
}


.deo-curriculum{ display:grid; grid-template-columns:minmax(0,1fr); gap:2.1rem; }
@media (min-width:900px){ .deo-curriculum{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; } }
.deo-curriculum__list{ display:grid; gap:0.8rem; }
.deo-curriculum__row{
  display:flex; gap:0.9rem; align-items:flex-start; padding:1rem 1.1rem;
  background:var(--deo-paper-raised); border:1px solid var(--deo-line); border-radius:var(--deo-radius-md);
}
.deo-curriculum__row-index{
  flex:none; width:2.3rem; height:2.3rem; border-radius:50%; background:var(--deo-red-50);
  color:var(--deo-red-700); font-weight:700; display:flex; align-items:center; justify-content:center;
  font-family:var(--deo-font-heading);
}
.deo-curriculum__row h3{ font-size:1.02rem; margin-bottom:0.2rem; }
.deo-curriculum__row p{ font-size:.9rem; margin-bottom:0; }
.deo-curriculum__figure{ border-radius:var(--deo-radius-lg); overflow:hidden; box-shadow:var(--deo-shadow-md); align-self:start; }
.deo-curriculum__figure img{ width:100%; aspect-ratio:1/1; object-fit:cover; }
.deo-curriculum__cta{ margin-top:1.3rem; display:flex; flex-wrap:wrap; gap:0.9rem; align-items:center; }


.deo-instructor{
  display:grid; grid-template-columns:minmax(0,1fr); gap:2.1rem; align-items:center;
}
@media (min-width:860px){ .deo-instructor{ grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); } }
.deo-instructor__figure{ border-radius:var(--deo-radius-lg); overflow:hidden; box-shadow:var(--deo-shadow-md); }
.deo-instructor__figure img{ width:100%; aspect-ratio:2/3; object-fit:cover; }
.deo-instructor__quote{
  font-family:var(--deo-font-heading); font-size:1.3rem; line-height:1.5;
  color:var(--deo-ink); margin-bottom:1rem;
}
.deo-instructor__name{ font-weight:700; font-size:1.05rem; }
.deo-instructor__role{ font-size:.92rem; color:var(--deo-ink-soft); margin-bottom:1.1rem; }


.deo-pricing{ display:flex; flex-direction:column; align-items:center; }
.deo-toggle{
  display:inline-flex; padding:0.3rem; background:var(--deo-paper-raised);
  border:1px solid var(--deo-line); border-radius:var(--deo-radius-pill);
  margin-bottom:2.1rem; gap:0.2rem;
}
.deo-toggle__btn{
  border:0; background:transparent; padding:.65em 1.5em; border-radius:var(--deo-radius-pill);
  font-weight:700; font-size:.92rem; color:var(--deo-ink-soft); cursor:pointer;
  transition:background-color .15s ease, color .15s ease;
}
.deo-toggle__btn[aria-pressed="true"]{ background:var(--deo-red-600); color:#ffffff; }
.deo-toggle__hint{ font-size:.85rem; color:var(--deo-ink-soft); margin:-1.4rem 0 1.9rem; text-align:center; }

.deo-plan{
  width:100%; max-width:440px; background:var(--deo-paper-raised);
  border:1px solid var(--deo-line); border-radius:var(--deo-radius-lg);
  padding:clamp(1.7rem,4vw,2.5rem); box-shadow:var(--deo-shadow-md); position:relative; overflow:hidden;
}
.deo-plan::before{
  content:""; position:absolute; inset:0 0 auto 0; height:6px;
  background:linear-gradient(90deg,var(--deo-red-600),var(--deo-gold-500));
}
.deo-plan__badge{
  display:inline-block; background:var(--deo-gold-100); color:var(--deo-gold-600);
  font-weight:700; font-size:.78rem; letter-spacing:.04em; text-transform:uppercase;
  padding:.35em .9em; border-radius:var(--deo-radius-pill); margin-bottom:0.9rem;
}
.deo-plan__price{ display:flex; align-items:baseline; gap:0.4rem; margin-bottom:0.3rem; }
.deo-plan__price strong{ font-family:var(--deo-font-heading); font-size:2.6rem; color:var(--deo-ink); }
.deo-plan__price span{ color:var(--deo-ink-soft); font-size:.95rem; }
.deo-plan__note{ font-size:.88rem; color:var(--deo-ink-soft); margin-bottom:1.4rem; }
.deo-plan__list{ display:grid; gap:0.7rem; margin-bottom:1.7rem; }
.deo-plan__list li{ display:flex; gap:.6em; align-items:flex-start; font-size:.95rem; font-weight:600; }
.deo-plan__list svg{ flex:none; color:var(--deo-teal-600); margin-top:.15em; }
.deo-plan__fine{ font-size:.78rem; color:var(--deo-ink-soft); margin-top:0.9rem; margin-bottom:0; }


.deo-chat{ display:grid; gap:1rem; max-width:720px; margin-inline:auto; }
.deo-bubble{
  display:flex; gap:0.8rem; max-width:86%;
}
.deo-bubble__avatar{
  flex:none; width:2.6rem; height:2.6rem; border-radius:50%; display:flex;
  align-items:center; justify-content:center; font-weight:700; font-family:var(--deo-font-heading);
  color:#ffffff; font-size:1rem;
}
.deo-bubble__body{ display:flex; flex-direction:column; gap:0.3rem; }
.deo-bubble__msg{
  background:var(--deo-paper-raised); border:1px solid var(--deo-line);
  border-radius:12.6px 12.6px 12.6px 2.8px; padding:0.9rem 1.1rem; font-size:.96rem; color:var(--deo-ink);
  box-shadow:var(--deo-shadow-sm);
}
.deo-bubble__meta{ font-size:.78rem; color:var(--deo-ink-soft); padding-left:0.3rem; }
.deo-bubble--sent{ margin-left:auto; flex-direction:row-reverse; }
.deo-bubble--sent .deo-bubble__msg{
  background:var(--deo-teal-600); border-color:transparent; color:#ffffff;
  border-radius:12.6px 12.6px 2.8px 12.6px;
}
.deo-bubble--sent .deo-bubble__meta{ text-align:right; padding-left:0; padding-right:0.3rem; }


.deo-faq__tabs{
  display:flex; flex-wrap:wrap; gap:0.6rem; margin-bottom:1.7rem;
}
.deo-faq__tab{
  border:1px solid var(--deo-line); background:var(--deo-paper-raised);
  padding:.6em 1.2em; border-radius:var(--deo-radius-pill); font-weight:700; font-size:.9rem;
  color:var(--deo-ink-soft); cursor:pointer;
}
.deo-faq__tab[aria-selected="true"]{ background:var(--deo-ink); color:var(--deo-paper); border-color:var(--deo-ink); }
.deo-faq__panel{ display:none; }
.deo-faq__panel.is-active{ display:grid; gap:0.7rem; }
.deo-faq__item{
  background:var(--deo-paper-raised); border:1px solid var(--deo-line); border-radius:var(--deo-radius-md); overflow:hidden;
}
.deo-faq__q{
  width:100%; text-align:left; background:transparent; border:0; padding:1rem 1.1rem;
  display:flex; justify-content:space-between; align-items:center; gap:0.9rem; cursor:pointer;
  font-weight:700; font-size:.98rem; color:var(--deo-ink);
}
.deo-faq__q-icon{ flex:none; width:1.4rem; height:1.4rem; position:relative; }
.deo-faq__q-icon::before,
.deo-faq__q-icon::after{
  content:""; position:absolute; background:var(--deo-red-600); border-radius:1.4px; transition:transform .2s ease;
}
.deo-faq__q-icon::before{ left:0; top:50%; width:100%; height:2px; transform:translateY(-50%); }
.deo-faq__q-icon::after{ top:0; left:50%; width:2px; height:100%; transform:translateX(-50%); }
.deo-faq__item[data-open="true"] .deo-faq__q-icon::after{ transform:translateX(-50%) scaleY(0); }
.deo-faq__a{ padding:0 1.1rem 1.1rem; font-size:.94rem; color:var(--deo-ink-soft); }
.deo-faq__item[data-open="false"] .deo-faq__a{ display:none; }


.deo-enroll{
  display:grid; grid-template-columns:minmax(0,1fr); gap:2.3rem;
  background:var(--deo-dark-900); border-radius:var(--deo-radius-lg);
  padding:clamp(1.7rem,4vw,3rem); color:var(--deo-cream-on-dark);
}
@media (min-width:960px){ .deo-enroll{ grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr); } }
.deo-enroll__intro h2{ font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem); }
.deo-enroll__list{ display:grid; gap:0.8rem; margin-top:1.3rem; }
.deo-enroll__list li{ display:flex; gap:.6em; font-size:.95rem; color:var(--deo-muted-on-dark); }
.deo-enroll__list svg{ flex:none; color:var(--deo-gold-100); margin-top:.15em; }
.deo-enroll__figure{
  border-radius:var(--deo-radius-md); overflow:hidden; margin-top:1.7rem;
  box-shadow:var(--deo-shadow-md); border:1px solid rgba(232, 241, 204, 0.14);
}
.deo-enroll__figure img{ width:100%; aspect-ratio:3/2; object-fit:cover; }
.deo-enroll__figure figcaption{
  background:var(--deo-dark-800); color:var(--deo-muted-on-dark); font-size:.82rem;
  padding:0.7rem 0.9rem; margin:0;
}

.deo-form{ background:var(--deo-paper-raised); border-radius:var(--deo-radius-md); padding:clamp(1.3rem,3vw,1.9rem); }
.deo-form .deo-form__row{ display:grid; grid-template-columns:minmax(0,1fr); gap:0.9rem; }
@media (min-width:560px){ .deo-form .deo-form__row--2{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.deo-field{ display:grid; gap:0.4rem; margin-bottom:0.9rem; min-width:0; }
.deo-field label{ font-size:.86rem; font-weight:700; color:var(--deo-ink); }
.deo-field input,
.deo-field select,
.deo-field textarea{
  width:100%; min-width:0; border:1px solid var(--deo-line); border-radius:var(--deo-radius-sm);
  padding:.75em .9em; font-family:var(--deo-font-body); font-size:.96rem; color:var(--deo-ink);
  background:var(--deo-paper);
}
.deo-field input:focus-visible,
.deo-field select:focus-visible,
.deo-field textarea:focus-visible{ outline:3px solid var(--deo-teal-600); outline-offset:1px; }
.deo-field textarea{ resize:vertical; min-height:6.5rem; }
.deo-field--consent{ display:flex; gap:0.7rem; align-items:flex-start; margin-top:0.4rem; }
.deo-field--consent input{ width:1.15rem; height:1.15rem; flex:none; margin-top:0.2rem; accent-color:var(--deo-red-600); }
.deo-field--consent label{ font-weight:500; font-size:.87rem; color:var(--deo-ink-soft); line-height:1.5; }
.deo-field--consent label a{ color:var(--deo-red-700); font-weight:700; }
.deo-field--honeypot{ position:absolute !important; left:-9999px !important; top:auto; width:1px; height:1px; overflow:hidden; }

[data-form-status]{ margin-top:0.9rem; font-weight:700; font-size:.92rem; color:var(--deo-ink); }
[data-form-status][data-success="true"]{ color:var(--deo-teal-700); }


.deo-footer{ background:var(--deo-dark-900); color:var(--deo-cream-on-dark); padding-block:clamp(2.8rem,5vw,4.3rem) 1.5rem; }
.deo-footer__split{ display:grid; grid-template-columns:minmax(0,1fr); gap:2.5rem; }
@media (min-width:860px){ .deo-footer__split{ grid-template-columns:minmax(0,0.95fr) minmax(0,1.05fr); } }

.deo-footer__map{
  background:var(--deo-dark-800); border-radius:var(--deo-radius-lg); padding:1.5rem;
  border:1px solid rgba(232, 241, 204, 0.12);
}
.deo-footer__map > svg{ width:100%; height:auto; max-height:260px; border-radius:var(--deo-radius-md); }
.deo-footer__address{ margin-top:1.1rem; display:grid; gap:0.6rem; }
.deo-footer__address li{ display:flex; gap:.7em; align-items:flex-start; font-size:.94rem; color:var(--deo-muted-on-dark); }
.deo-footer__address a{ color:var(--deo-cream-on-dark); font-weight:600; }
.deo-footer__address svg{ flex:none; width:18px; height:18px; color:var(--deo-gold-100); margin-top:.15em; }

.deo-footer__address li > span,
.deo-footer__address li > a{ min-width:0; overflow-wrap:anywhere; }

.deo-footer__links{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.9rem 1.4rem; }
@media (min-width:520px){ .deo-footer__links{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
.deo-footer__col h3{ font-size:.85rem; text-transform:uppercase; letter-spacing:.06em; color:var(--deo-gold-100); margin-bottom:0.9rem; }
.deo-footer__col ul{ display:grid; gap:0.5rem; }
.deo-footer__col a{ font-size:.92rem; color:var(--deo-muted-on-dark); }
.deo-footer__col a:hover{ color:var(--deo-cream-on-dark); }

.deo-footer__brand{ display:flex; align-items:center; gap:0.6rem; margin-bottom:0.9rem; }
.deo-footer__brand img{ width:32px; height:32px; }
.deo-footer__brand span{ font-family:var(--deo-font-heading); font-weight:700; font-size:1.05rem; color:var(--deo-cream-on-dark); }
.deo-footer__note{ font-size:.88rem; color:var(--deo-muted-on-dark); max-width:34ch; }

.deo-footer__bottom{
  margin-top:2.5rem; padding-top:1.3rem; border-top:1px solid rgba(232, 241, 204, 0.14);
  display:flex; flex-wrap:wrap; gap:0.8rem 1.5rem; justify-content:space-between; align-items:center;
  font-size:.82rem; color:var(--deo-muted-on-dark);
}
.deo-footer__bottom nav{ display:flex; flex-wrap:wrap; gap:0.9rem; }
.deo-footer__bottom a{ color:var(--deo-muted-on-dark); }
.deo-footer__bottom a:hover{ color:var(--deo-cream-on-dark); }


.deo-pagehero{ padding-block:clamp(2.3rem,5vw,3.8rem) clamp(1.5rem,3vw,2.3rem); border-bottom:1px solid var(--deo-line); }
.deo-pagehero h1{ font-size:clamp(1.9rem, 1.5rem + 1.6vw, 2.9rem); }
.deo-pagehero p{ max-width:60ch; font-size:1.05rem; }
.deo-breadcrumb{ font-size:.85rem; color:var(--deo-ink-soft); margin-bottom:0.9rem; }
.deo-breadcrumb a{ color:var(--deo-red-700); font-weight:600; }


.deo-modules{ display:grid; gap:1.5rem; }
.deo-module{
  background:var(--deo-paper-raised); border:1px solid var(--deo-line);
  border-radius:var(--deo-radius-lg); padding:clamp(1.4rem,3vw,2.2rem);
  box-shadow:var(--deo-shadow-sm); display:grid; gap:0.9rem;
}
.deo-module__head{ display:flex; align-items:flex-start; gap:0.9rem; }
.deo-module__index{
  flex:none; font-family:var(--deo-font-heading); font-weight:700; font-size:1.9rem;
  color:var(--deo-red-500); line-height:1;
}
.deo-module__heading{ min-width:0; }
.deo-module__heading h2{ margin:0 0 0.3rem; font-size:1.28rem; }
.deo-module__heading p{ margin:0; font-size:.95rem; }
.deo-module__topics{ display:grid; gap:0.5rem; margin:0; }
.deo-module__topics li{ display:flex; gap:.6em; align-items:flex-start; font-size:.94rem; color:var(--deo-ink-soft); }
.deo-module__topics svg{ flex:none; color:var(--deo-teal-600); margin-top:.2em; }
.deo-module__note{
  font-size:.87rem; background:var(--deo-red-50); border-left:3px solid var(--deo-red-600);
  padding:0.8rem 1rem; border-radius:5.6px; color:var(--deo-ink-soft); margin:0;
}


.deo-legal{ padding-block:clamp(2.4rem,5vw,3.8rem); }
.deo-legal article h2{ font-size:1.35rem; margin-top:2rem; }
.deo-legal article h3{ font-size:1.08rem; margin-top:1.4rem; }
.deo-legal article p,
.deo-legal article li{ color:var(--deo-ink-soft); font-size:.98rem; }
.deo-legal article ul,
.deo-legal article ol{ display:grid; gap:0.5rem; margin:0 0 1rem; padding-left:1.2rem; list-style:disc; }
.deo-legal article ol{ list-style:decimal; }
.deo-legal article a{ color:var(--deo-red-700); font-weight:600; }
.deo-legal__updated{ font-size:.86rem; color:var(--deo-ink-soft); margin-bottom:1.9rem; display:block; }
.deo-legal__toc{ background:var(--deo-paper-raised); border:1px solid var(--deo-line); border-radius:var(--deo-radius-md); padding:1.2rem 1.4rem; margin-bottom:2.1rem; }
.deo-legal__toc p{ margin:0 0 0.6rem; font-weight:700; color:var(--deo-ink); }
.deo-legal__toc ol{ margin:0; padding-left:1.1rem; display:grid; gap:0.3rem; }
.deo-legal__toc a{ font-size:.93rem; }


.deo-text-center{ text-align:center; }
.deo-mt-0{ margin-top:0; }
