/* Native Elementor content and handlers, scoped to five verified primary-menu pages. */
.madd-menu-page main { padding: 56px 24px 80px; color: var(--madd-ink); }
.madd-menu-page main > .elementor,
.madd-menu-page main .nv-content-wrap > .elementor { width: 100%; max-width: 1200px; margin-inline: auto; }
.madd-menu-page main > .container { width: 100%; max-width: 1248px; padding-inline: 0; }
.madd-menu-page main .nv-single-page-wrap.col { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; margin: 0 !important; padding: 0; }
.madd-menu-page main .row { margin-inline: 0; }
.madd-menu-page main .elementor.elementor .elementor-top-section { margin-block: 0 40px; padding: 0; }
.madd-menu-page main .elementor-top-section > .elementor-container { max-width: 1200px; }
.madd-menu-page main .elementor-widget-spacer { display: none; }
.madd-menu-page main .elementor-top-section:has(.elementor-widget-spacer):not(:has(.elementor-widget:not(.elementor-widget-spacer))) { display: none; }
.madd-menu-page main .elementor-widget-wrap { min-width: 0; }
.madd-menu-page main :is(h1, h2, h3, .elementor-headline) { color: var(--madd-ink); letter-spacing: 0; }
.madd-menu-page main h1 { font-size: clamp(32px, 4vw, 48px); line-height: 1.5; font-weight: 700; margin: 0; }
.madd-menu-page main :is(h2, .elementor-headline) { font-size: 30px; line-height: 1.6; }
.madd-menu-page main :is(p, li, .elementor-tab-content) { font-size: 18px; line-height: 1.95; }
.madd-menu-page main p { margin-block: 0 20px; }
.madd-menu-page main .elementor-widget-text-editor { color: var(--madd-ink); }
.madd-menu-page main img { max-width: 100%; }
.madd-menu-page main :is(a, button, input, textarea, [role="button"]):focus-visible { outline: 3px solid var(--madd-action); outline-offset: 4px; }
.madd-menu-page main :is(.elementor-button, button[type="submit"], .tutor-btn-primary, .e-load-more-anchor + .elementor-button-wrapper .elementor-button) { background: var(--madd-action); color: #fff; border: 1px solid var(--madd-action); border-radius: 10px; min-height: 50px; padding: 12px 24px; line-height: 1.6; }
.madd-menu-page main :is(.elementor-button, button[type="submit"], .tutor-btn-primary):hover { background: var(--madd-action-hover); color: #fff; }

/* Service pages: a calm introduction, readable prose and native disclosures. */
.madd-menu-page.page-id-1022 .elementor-element-1eaf9a6b,
.madd-menu-page.page-id-30715 .elementor-element-ff267b8 { background: var(--madd-tint); border-radius: 16px; padding: 48px; }
.madd-menu-page.page-id-1022 .elementor-element-1eaf9a6b .elementor-widget-text-editor { max-width: 940px; margin: 24px auto 0; }
.madd-menu-page.page-id-1022 .elementor-element-1eaf9a6b p { text-align: start; }
.madd-menu-page main .elementor-headline-dynamic-wrapper { color: var(--madd-action); }
.madd-menu-page main .elementor-accordion { display: grid; gap: 16px; }
.madd-menu-page main .elementor-accordion-item { border: 1px solid var(--madd-border); border-radius: 16px; overflow: hidden; background: #fff; }
.madd-menu-page main .elementor-accordion .elementor-tab-title { padding: 24px; font-size: 19px; font-weight: 700; line-height: 1.7; color: var(--madd-ink); background: var(--madd-canvas); }
.madd-menu-page main .elementor-accordion .elementor-tab-title.elementor-active { background: var(--madd-tint); color: var(--madd-action); }
.madd-menu-page main .elementor-accordion .elementor-tab-content { padding: 24px; border-top: 1px solid var(--madd-border); color: var(--madd-ink); }
.madd-menu-page main .elementor-accordion .elementor-accordion-title { color: inherit; }
.madd-menu-page main .elementor-accordion .elementor-accordion-icon { color: var(--madd-action); }
.madd-menu-page main .elementor-accordion .elementor-accordion-icon { margin-inline-start: 12px; }
.madd-menu-page.page-id-1022 .elementor-element-bb21e36:not(:has(.elementor-shortcode:not(:empty))) { display: none; }
.madd-menu-page.page-id-1022 :is(.elementor-element-e2dc6d, .elementor-element-46517a4d, .elementor-element-21bb91d4) { padding: 32px; background: var(--madd-canvas); border-radius: 16px; }
.madd-menu-page.page-id-1022 .elementor-widget-image img { object-fit: contain; max-height: 420px; width: 100%; }
.madd-menu-page.page-id-1022 .elementor-element-229df522 li { padding-block: 6px; }
.madd-menu-page.page-id-1022 main .elementor-element-35e8bcc0 h1.elementor-headline { font-size: clamp(32px, 4vw, 48px); line-height: 1.5; color: var(--madd-ink); }
.madd-menu-page.page-id-1022 main .elementor .elementor-headline-dynamic-wrapper .elementor-headline-dynamic-text { color: var(--madd-action); }
.madd-menu-page.page-id-30715 .elementor-element-0a76ae3 .elementor-column:has(.elementor-widget-accordion) { width: 100%; max-width: 1000px; margin-inline: auto; }
.madd-menu-page.page-id-30715 .elementor-element-0a76ae3 .elementor-column:not(:has(.elementor-widget)) { display: none; }
.madd-menu-page.page-id-30715 .elementor-element-d3be73a h1 span { font-size: inherit !important; font-weight: inherit !important; }
.madd-menu-page.page-id-30715 .elementor-element-9dc6abf { padding: 24px; border: 1px solid var(--madd-border); border-radius: 16px; }
.madd-menu-page.page-id-30715 .elementor-carousel-image { background-size: contain; background-repeat: no-repeat; }
.madd-menu-page.page-id-30715 .elementor-cta { border: 1px solid var(--madd-border); border-radius: 16px; overflow: hidden; background: #fff; }
.madd-menu-page.page-id-30715 .elementor-cta__bg-wrapper { min-height: 220px; }
.madd-menu-page.page-id-30715 .elementor-cta__bg { background-size: contain; background-repeat: no-repeat; background-color: var(--madd-canvas); }
.madd-menu-page.page-id-30715 .elementor-cta__content { padding: 24px; }
.madd-menu-page.page-id-30715 .elementor-cta__title { font-size: 23px; line-height: 1.6; }
.madd-menu-page.page-id-30715 .fluentform { padding-block: 16px; }
.madd-menu-page.page-id-30715 .fluentform :is(input:not([type="hidden"]), select) { min-height: 50px; border: 1px solid var(--madd-border); border-radius: 8px; padding: 12px; font-family: inherit; font-size: 16px; }

/* Digital training retains Tutor's query, pagination, posters and purchase states. */
.madd-menu-page.page-id-37651 .elementor-element-fd19de7 { overflow: hidden; border-radius: 16px; }
.madd-menu-page.page-id-37651 .elementor-slides-wrapper { height: 320px; }
.madd-menu-page.page-id-37651 .swiper-slide-inner { padding: 40px; background: rgb(17 39 54 / 65%); }
.madd-menu-page.page-id-37651 .elementor-slide-content { max-width: 95%; }
.madd-menu-page.page-id-37651 :is(.elementor-slide-heading, .elementor-slide-description) { color: #fff; text-shadow: none; }
.madd-menu-page.page-id-37651 main .elementor-element-f685ac7 :is(.elementor-slide-heading, .elementor-slide-description) { color: #fff; text-shadow: none; }
.madd-menu-page.page-id-37651 .elementor-slide-heading { font-size: clamp(32px, 4vw, 48px); line-height: 1.5; }
.madd-menu-page.page-id-37651 .elementor-slide-description { font-size: 20px; line-height: 1.8; }
.madd-menu-page.page-id-37651 .elementor-element-7d56186 { max-width: 860px; margin-inline: auto; text-align: center; }
.madd-menu-page.page-id-37651 .elementor-element-a2f0a0c img { width: 80px; height: 80px; object-fit: contain; }
.madd-menu-page.page-id-37651 main .elementor.elementor :is(.elementor-element-4e05648, .elementor-element-8c20fc6, .elementor-element-0e17831) { display: none; }
.madd-menu-page.page-id-37651 main .elementor.elementor .elementor-element-abe24a7 { margin-block-start: -24px; }
.madd-menu-page.page-id-37651 :is(.elementor-element-a2f0a0c, .elementor-element-abe24a7) > .elementor-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.madd-menu-page.page-id-37651 :is(.elementor-element-a2f0a0c, .elementor-element-abe24a7) > .elementor-container > .elementor-column { width: 100%; }
.madd-menu-page.page-id-37651 .elementor-element-abe24a7 h2 { font-size: 20px; }
.madd-menu-page.page-id-37651 .tutor-course-card { border: 1px solid var(--madd-border); border-radius: 16px; overflow: hidden; }
.madd-menu-page.page-id-37651 .tutor-course-thumbnail img { object-fit: contain; background: var(--madd-canvas); }
.madd-menu-page.page-id-37651 .tutor-course-name { font-size: 20px; line-height: 1.7; }
.madd-menu-page.page-id-37651 .tutor-course-name a { -webkit-line-clamp: unset; display: block; overflow: visible; color: var(--madd-ink); }
.madd-menu-page.page-id-37651 .tutor-card-body { padding: 24px; }
.madd-menu-page.page-id-37651 .tutor-card-footer { padding: 20px 24px; }
.madd-menu-page.page-id-37651 .tutor-pagination-wrap { margin-block: 32px; }

/* News keeps Elementor's live posts, search and load-more behaviour. */
.madd-menu-page.page-id-428 .elementor-element-29ed8958 { margin-block-end: 32px; }
.madd-menu-page.page-id-428 .elementor-search-form__container { border: 1px solid var(--madd-border); border-radius: 10px; overflow: hidden; min-height: 52px; background: #fff; }
.madd-menu-page.page-id-428 .elementor-search-form__input { font-size: 17px; padding: 14px 20px; background: #fff; color: var(--madd-ink); }
.madd-menu-page.page-id-428 .elementor-search-form__submit { background: var(--madd-action); color: #fff; }
.madd-menu-page.page-id-428 .elementor-posts-container { gap: 32px; }
.madd-menu-page.page-id-428 .elementor-post__card { box-shadow: none; border: 1px solid var(--madd-border); border-radius: 16px; overflow: hidden; }
.madd-menu-page.page-id-428 .elementor-post__text { padding: 24px; margin-block: 0; }
.madd-menu-page.page-id-428 .elementor-post__title { margin-block: 0 16px; font-size: 23px; line-height: 1.6; }
.madd-menu-page.page-id-428 .elementor-post__title a { color: var(--madd-ink); }
.madd-menu-page.page-id-428 .elementor-post__excerpt p { font-size: 16px; line-height: 1.9; }
.madd-menu-page.page-id-428 .elementor-post__meta-data { padding: 16px 24px; color: var(--madd-muted); border-color: var(--madd-border); line-height: 1.8; }
.madd-menu-page.page-id-428 .elementor-post__read-more { display: inline-flex; min-height: 44px; align-items: center; color: var(--madd-action); font-size: 16px; }
.madd-menu-page.page-id-428 main .elementor .elementor-element-4ce52a39 .elementor-post__title a { color: var(--madd-ink); }
.madd-menu-page.page-id-428 main .elementor .elementor-element-4ce52a39 .elementor-post__read-more { color: var(--madd-action); }
.madd-menu-page.page-id-428 .elementor-button-wrapper { margin-block-start: 32px; }

/* Products: original WooCommerce data and WPC buy-now links, complete product imagery. */
.madd-menu-page.page-id-22024 .elementor-element-4a71753b { padding: 32px; background: var(--madd-tint); border-radius: 16px; margin-block-end: 40px; }
.madd-menu-page main .elementor.elementor .elementor-widget-heading .elementor-heading-title { color: var(--madd-ink); }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin: 0; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products::before,
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products::after { display: none; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product { display: flex; flex-direction: column; width: auto !important; margin: 0 !important; padding: 24px; min-width: 0; border: 1px solid var(--madd-border); border-radius: 16px; background: #fff; text-align: start; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product { box-shadow: none; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .nv-card-content-wrapper { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .nv-card-content-wrapper > .button:hover { background: var(--madd-action-hover); color: #fff; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product a img { width: 100%; height: 240px; object-fit: contain; background: var(--madd-canvas); border-radius: 10px; margin: 0 0 24px; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 21px; line-height: 1.7; padding: 0; margin-block: 0 16px; color: var(--madd-ink); }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .price { color: var(--madd-ink); font-size: 18px; line-height: 1.7; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .nv-card-content-wrapper > .button { display: block; width: 100%; margin-block: auto 0; padding: 12px 20px; min-height: 50px; border-radius: 10px; color: #fff; background: var(--madd-action); text-align: center; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .nv-card-content-wrapper > a:first-child { margin-block-end: 24px; }
.madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product .onsale { top: 32px; inset-inline-start: 32px; inset-inline-end: auto; background: var(--madd-tint); color: var(--madd-action); border-radius: 8px; padding: 4px 12px; min-height: 0; line-height: 1.8; }

@media (max-width: 1023px) {
  .madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 767px) {
  .madd-menu-page main { padding: 32px 20px 48px; }
  .madd-menu-page main .elementor.elementor .elementor-top-section { margin-block-end: 32px; }
  .madd-menu-page main .elementor-column > .elementor-element-populated { padding-inline: 0; }
  .madd-menu-page main :is(h1, h2, h3, .elementor-headline, .elementor-widget-text-editor, .elementor-button-wrapper) { text-align: center; }
  .madd-menu-page main :is(h2, .elementor-headline) { font-size: 27px; }
  .madd-menu-page main :is(p, li, .elementor-tab-content) { font-size: 17px; line-height: 1.9; }
  .madd-menu-page.page-id-1022 .elementor-element-1eaf9a6b,
  .madd-menu-page.page-id-30715 .elementor-element-ff267b8 { padding: 24px 20px; }
  .madd-menu-page.page-id-1022 :is(.elementor-element-e2dc6d, .elementor-element-46517a4d, .elementor-element-21bb91d4) { padding: 24px 20px; }
  .madd-menu-page main .elementor-accordion .elementor-tab-title,
  .madd-menu-page main .elementor-accordion .elementor-tab-content { padding: 20px; }
  .madd-menu-page main .elementor-accordion .elementor-tab-title { font-size: 18px; text-align: start; }
  .madd-menu-page.page-id-1022 .elementor-element-1eaf9a6b p { text-align: center; }
  .madd-menu-page.page-id-30715 .elementor-element-7d49d86 > .elementor-container { flex-wrap: wrap; gap: 24px; }
  .madd-menu-page.page-id-30715 .elementor-element-7d49d86 > .elementor-container > .elementor-column { width: 100%; }
  .madd-menu-page.page-id-30715 .elementor-cta__content { text-align: center; }
  .madd-menu-page.page-id-37651 main .elementor-element-f685ac7 .elementor-slides-wrapper { height: 300px; }
  .madd-menu-page.page-id-37651 .elementor-element-a2f0a0c img { width: 64px; height: 64px; }
  .madd-menu-page.page-id-37651 main .elementor-element-abe24a7 h2 { font-size: 16px; line-height: 1.8; }
  .madd-menu-page.page-id-37651 .swiper-slide-inner { padding: 24px; }
  .madd-menu-page.page-id-37651 .elementor-slide-description { font-size: 18px; }
  .madd-menu-page.page-id-37651 .tutor-course-list { grid-template-columns: minmax(0, 1fr); }
  .madd-menu-page.page-id-428 .elementor-posts-container { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .madd-menu-page.page-id-428 .elementor-post__text { padding: 24px; }
  .madd-menu-page.page-id-428 .elementor-element-77d622d8 { margin-block-end: 24px; }
  .madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .madd-menu-page.page-id-22024 main .elementor .woocommerce ul.products li.product { text-align: center; }
}
