/* v0.5.0 - subject-specific editorial modules; page-scoped via Elementor classes */
.elementor-element.dzop50-about{padding:45px 0 35px!important;max-width:870px!important}
.dzop50-about h2{font-size:clamp(29px,3.5vw,39px);margin-bottom:17px!important}
.dzop50-about p{font-size:18px!important;line-height:1.75!important}
.elementor-element.dzop50-benefits{padding-top:44px!important}
.elementor-element.dzop50-benefits .dzop21-card-content{min-height:215px}
.elementor-element.dzop50-benefits .dzop21-card{height:100%;display:flex!important;flex-direction:column!important}
.elementor-element.dzop50-step-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;padding:20px 0 68px!important}
.elementor-element.dzop50-step{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-width:0!important;background:#f3f6fa;border-radius:18px;padding:27px 30px!important}
.dzop50-step h3{color:#263450;font-size:22px;margin-bottom:15px}
.dzop50-step p{font-size:16px;line-height:1.75}
.elementor-element.dzop50-job-board{padding:35px 0 65px!important}
.elementor-element.dzop50-job-board .dzop-program{margin:0;max-width:none}
.elementor-element.dzop50-form{margin-top:20px!important}
.elementor-element.dzop50-feature{margin-top:20px!important}
@media(max-width:767px){.elementor-element.dzop50-step-grid{grid-template-columns:1fr!important}.elementor-element.dzop50-step{padding:22px!important}}


/* v0.5.1 — Editorial spacing system for six subject-specific pages.
   One consistent rhythm, scoped to v0.5.0 purpose page containers. */
:root { --dzop51-space-xs:10px; --dzop51-space-sm:16px; --dzop51-space-md:24px; --dzop51-space-lg:40px; --dzop51-space-xl:64px; }
.elementor-element.dzop21-shell.dzop50-about {padding:54px 0 50px!important;}
.elementor-element.dzop21-shell.dzop50-about > .elementor-widget-heading:first-child {margin-bottom:12px!important;}
.elementor-element.dzop21-shell.dzop50-about > .elementor-widget-heading:nth-child(2) {margin-bottom:20px!important;}
.elementor-element.dzop21-shell.dzop50-benefits {padding:42px 0 50px!important;}
.elementor-element.dzop50-benefits > .elementor-widget-heading:first-child {margin-bottom:12px!important;}
.elementor-element.dzop50-benefits > .elementor-widget-heading:nth-child(2) {margin-bottom:28px!important;}
.elementor-element.dzop50-benefits .dzop21-card-grid {gap:20px!important;}
.elementor-element.dzop50-benefits .dzop21-card-content {padding:26px 24px 30px!important;}
.elementor-element.dzop50-benefits .dzop21-card-content .elementor-widget-heading {margin-bottom:14px!important;}
.elementor-element.dzop21-shell.dzop50-job-board {padding:48px 0 56px!important;}
.elementor-element.dzop21-shell.dzop50-step-grid {gap:24px!important;padding:24px 0 62px!important;}
.elementor-element.dzop50-step {gap:0!important;padding:30px 32px!important;}
.elementor-element.dzop50-step .elementor-widget-heading {margin-bottom:18px!important;}
.elementor-element.dzop50-step .elementor-widget-text-editor {margin:0!important;}
.elementor-element.dzop50-step p {margin:0!important;}
.elementor-element.dzop21-shell.dzop50-feature {margin:38px auto 60px!important;}
.elementor-element.dzop21-shell.dzop50-form.dzop-launch-form {
  max-width:850px!important;
  padding:45px 0 74px!important;
  margin-top:0!important;
}
.elementor-element.dzop50-form > .elementor-widget-heading:first-child {margin-bottom:12px!important;}
.elementor-element.dzop50-form > .elementor-widget-heading:nth-child(2) {margin-bottom:18px!important;}
.elementor-element.dzop50-form > .elementor-widget-text-editor {margin-bottom:28px!important;}
.elementor-element.dzop50-form > .elementor-widget-shortcode {margin-top:8px!important;}
.elementor-element.dzop50-form .dunzy-growth-form-wrap {max-width:760px!important;}
.elementor-element.dzop50-form .dunzy-growth-form .dunzy-growth-consent {max-width:760px!important;}
.elementor-element.dzop50-form .dunzy-growth-form textarea {min-height:144px!important;}
.elementor-element.dzop21-shell.dzop21-cta {margin-top:0!important;margin-bottom:70px!important;}
@media(max-width:767px) {
  .elementor-element.dzop21-shell.dzop50-about {padding:38px 0 34px!important;}
  .elementor-element.dzop21-shell.dzop50-benefits {padding:32px 0 35px!important;}
  .elementor-element.dzop21-shell.dzop50-step-grid {gap:16px!important;padding:18px 0 40px!important;}
  .elementor-element.dzop50-step {padding:22px!important;}
  .elementor-element.dzop21-shell.dzop50-job-board {padding:32px 0 40px!important;}
  .elementor-element.dzop21-shell.dzop50-form.dzop-launch-form {padding:35px 0 52px!important;}
  .elementor-element.dzop21-shell.dzop21-cta {margin-bottom:45px!important;}
}


/* v0.5.2 — section-level spacing contract, scoped to the six purpose pages.
   The older global .dzop21-shell rule has margin:0 auto!important.  Section
   separation therefore requires margin-block-start on the actual top-level
   Elementor containers; padding inside a section is not a substitute. */
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell:is(.dzop50-about,.dzop50-job-board,.dzop50-benefits,.dzop50-step-grid,.dzop50-feature,.dzop50-form,.dzop21-cta) {
  margin:64px auto 0!important;
  box-sizing:border-box!important;
}
/* Normalize outer container padding to prevent adjacent padded edges from
   either collapsing visually or creating unpredictable oversized gutters. */
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell:is(.dzop50-about,.dzop50-benefits,.dzop50-job-board,.dzop50-form) {
  padding-top:0!important;
  padding-bottom:0!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop50-step-grid {
  padding:0!important;
  gap:24px!important;
  align-items:stretch!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop50-feature {
  margin:64px auto 0!important;
  padding:32px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop21-cta {
  margin:72px auto 70px!important;
}
/* Internal editorial hierarchy. Target actual Elementor widget siblings,
   avoiding generic overrides on unrelated forms or footer widgets. */
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-about > .elementor-widget-heading:first-child,
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-benefits > .elementor-widget-heading:first-child,
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-form > .elementor-widget-heading:first-child {
  margin:0 0 12px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-about > .elementor-widget-heading:nth-child(2),
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-form > .elementor-widget-heading:nth-child(2) {
  margin:0 0 22px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-benefits > .elementor-widget-heading:nth-child(2) {
  margin:0 0 32px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-step {
  padding:32px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-step > .elementor-widget-heading {
  margin:0 0 20px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-step .elementor-widget-text-editor p {
  margin:0!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-form > .elementor-widget-text-editor {
  margin:0 0 32px!important;
}
:is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-form > .elementor-widget-shortcode {
  margin:0!important;
}
@media(max-width:767px){
  :is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell:is(.dzop50-about,.dzop50-job-board,.dzop50-benefits,.dzop50-step-grid,.dzop50-feature,.dzop50-form,.dzop21-cta) {
    margin-top:44px!important;
  }
  :is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop50-step-grid {
    gap:18px!important;
    padding:0!important;
  }
  :is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop50-step {
    padding:24px!important;
  }
  :is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop50-feature {
    padding:24px!important;
  }
  :is(body.page-id-4133,body.page-id-4134,body.page-id-4135,body.page-id-4136,body.page-id-4137,body.page-id-4138) .elementor-element.dzop21-shell.dzop21-cta {
    margin-top:52px!important;
    margin-bottom:46px!important;
  }
}
