/* Optional visual bridge; all rules require the explicit hfd-subpage-modern body class.
 * Existing functional layouts, media sizing, map gestures and saved Elementor settings
 * are deliberately retained. See data/subpage-modern-palette-evidence.json. */
body.hirondelle-design-2026.hfd-subpage-modern {
 --hfd-refresh-blue:#429cbf;
 --hfd-refresh-action:#246c86;
 --hfd-refresh-ink:#183b4b;
 --hfd-refresh-muted:#59727e;
 --hfd-refresh-pale:#edf5f7;
 --hfd-refresh-line:#d5e5eb;
 --hfd-refresh-radius:16px;
 color:var(--hfd-refresh-ink);
 font-family:"Myriad Pro Regular",Arial,sans-serif;
}

/* Keep the proven navigation geometry and its existing mobile toggle. */
body.hfd-subpage-modern .hfd-mainbar {background:var(--hfd-refresh-blue);box-shadow:0 1px 0 #ffffff38}
body.hfd-subpage-modern .hfd-menu>li>a {text-shadow:none;letter-spacing:.045em}
body.hfd-subpage-modern .hfd-secondary {background:#fffffff5;border-bottom:1px solid var(--hfd-refresh-line)}
body.hfd-subpage-modern .hfd-menu .sub-menu {box-shadow:0 9px 18px #183b4b12;border-bottom:1px solid var(--hfd-refresh-line)}
body.hfd-subpage-modern .hfd-secondary a,
body.hfd-subpage-modern .hfd-menu .sub-menu a {color:var(--hfd-refresh-ink);text-shadow:none}
body.hfd-subpage-modern .hfd-menu .sub-menu a:hover,
body.hfd-subpage-modern .hfd-secondary a:hover {color:var(--hfd-refresh-action)}

/* Only authored prose and heading widgets; Ecwid, forms and calendar controls keep
 * their own size rules. Avoid universal button/input/table/image overrides. */
body.hfd-subpage-modern .entry-content .elementor-widget-text-editor {font-size:19px;line-height:1.65;color:var(--hfd-refresh-muted)}
body.hfd-subpage-modern .entry-content .elementor-widget-text-editor p {line-height:1.65}
body.hfd-subpage-modern .entry-content .elementor-widget-text-editor a {text-underline-offset:4px}
body.hfd-subpage-modern .entry-content .elementor-widget-heading .elementor-heading-title {color:var(--hfd-refresh-ink);font-family:inherit;font-style:normal;text-transform:none;letter-spacing:-.015em;text-shadow:none;border-bottom:0}
body.hfd-subpage-modern .entry-content :is(.hfd-modern-training,.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout,.hfd-downloads-2026) {font-family:inherit;color:var(--hfd-refresh-ink);font-size:19px;line-height:1.65}
body.hfd-subpage-modern :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) :is(h1,h2,h3) {color:var(--hfd-refresh-ink);font-style:normal;font-weight:600;letter-spacing:-.02em;text-transform:none;text-shadow:none;border-bottom:0}
body.hfd-subpage-modern :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) h1 {font-size:clamp(36px,4.3vw,56px);line-height:1.12}
body.hfd-subpage-modern :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) h2 {font-size:clamp(27px,3vw,35px);line-height:1.2}
body.hfd-subpage-modern :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) h3 {font-size:24px;line-height:1.3}

/* Training's existing response-only layout and gallery remain intact. */
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training {--hfd-modern-ink:#183b4b;--hfd-modern-muted:#59727e;--hfd-modern-blue:#429cbf;--hfd-modern-action:#246c86;--hfd-modern-line:#d5e5eb;font-size:19px}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training h1,
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training .elementor-widget-heading .elementor-heading-title {color:var(--hfd-refresh-ink)!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training .elementor-widget-text-editor,
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training .hfd-modern-course-copy .elementor-widget-text-editor :is(p,li) {font-size:19px!important;line-height:1.65!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training :is(.hfd-course-info-box,.hfd-modern-journey,.hfd-modern-gallery) {border-color:var(--hfd-refresh-line)!important;border-radius:var(--hfd-refresh-radius)!important;background:var(--hfd-refresh-pale)!important;box-shadow:none!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training .hfd-course-detail-facts {border-color:var(--hfd-refresh-line)!important;border-radius:var(--hfd-refresh-radius)!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training :is(.hfd-modern-button,.hfd-course-info-book) {background:var(--hfd-refresh-action)!important;border-color:var(--hfd-refresh-action)!important;border-radius:9px!important}
body.hfd-subpage-modern .hfd-modern-training .hfd-modern-advice {border-radius:var(--hfd-refresh-radius);background:#236d88}

/* Same panel language for recovered travel/tandem/terrain content. */
body.hfd-subpage-modern :is(.hfd-travel-info,.hfd-tandem__info,.hfd-tdl-panel) {border:1px solid var(--hfd-refresh-line);border-radius:var(--hfd-refresh-radius);box-shadow:none;background:var(--hfd-refresh-pale)}
body.hfd-subpage-modern :is(.hfd-travel-info,.hfd-tandem__info) h2 {font-size:26px;margin-top:0;line-height:1.25}
body.hfd-subpage-modern :is(.hfd-travel-date,.hfd-downloads__documents>li) {border-color:var(--hfd-refresh-line)}
body.hfd-subpage-modern .hfd-terrain-detail-layout {--tdl-blue:#429cbf;--tdl-deep:#246c86;--tdl-ink:#183b4b;--tdl-muted:#59727e;--tdl-line:#d5e5eb;--tdl-soft:#edf5f7}
body.hfd-subpage-modern .hfd-tdl-overview {border-radius:var(--hfd-refresh-radius);border-color:var(--hfd-refresh-line)}
body.hfd-subpage-modern :is(.hfd-travel-date__link,.hfd-recovery__button) {background:var(--hfd-refresh-action);border-color:var(--hfd-refresh-action);border-radius:9px;color:#fff;text-shadow:none}
body.hfd-subpage-modern :is(.hfd-travel-back,.hfd-tdl-back) a {color:var(--hfd-refresh-action)}

/* Original course-stage colors, recovered from the 2026 Joomla overview table.
 * The semantic row markers are generated only for the verified concept table. */
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.ausbildungskonzept.hfd-concept-palette {width:100%!important;max-width:100%!important;height:auto!important;border-collapse:separate!important;border-spacing:0!important;border:1px solid var(--hfd-refresh-line)!important;border-radius:13px;overflow:hidden;table-layout:auto;background:#fff}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette :is(td,th) {padding:17px!important;vertical-align:top!important;border:0!important;border-bottom:4px solid #fff!important;font-size:17px!important;line-height:1.55!important;overflow-wrap:normal}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr:last-child :is(td,th) {border-bottom:0!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette :is(td,th):first-child {width:26%}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette :is(td,th) :is(p,a,strong,em,span) {font-size:inherit!important;line-height:inherit!important;margin-top:0!important;margin-bottom:0!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--heading :is(td,th) {background:#f0f0f0!important;color:#429cbf!important;font-weight:600}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--schnupper :is(td,th) {background:#80c533!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--grundkurs :is(td,th) {background:#34963b!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--winde :is(td,th) {background:#fff600!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--a-schein :is(td,th) {background:#ffd700!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--b-schein :is(td,th) {background:#e58e26!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--tandem :is(td,th) {background:#c4c5ca!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) .hfd-modern-training.hfd-modern-training table.hfd-concept-palette tr:not(.hfd-concept-row--heading) :is(td,th,p,a,strong,em,span),
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr:not(.hfd-concept-row--heading) :is(td,th,p,a,strong,em,span) {color:#000!important}
body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette tr.hfd-concept-row--heading :is(p,a,strong,em,span) {color:#429cbf!important}

@media(max-width:780px) {
 body.hfd-subpage-modern .entry-content :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) {font-size:18px}
 body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.hfd-concept-palette :is(td,th) {padding:13px!important;font-size:16px!important}
}
@media(max-width:550px) {
 body.hfd-subpage-modern .hfd-modern-concept {overflow-x:auto;overscroll-behavior-x:contain}
 body.hirondelle-design-2026.hfd-subpage-modern :is(.entry-content,#content) table.ausbildungskonzept.hfd-concept-palette {min-width:600px}
 body.hfd-subpage-modern .entry-content :is(.hfd-travel-detail,.hfd-tandem-2026,.hfd-terrain-detail-layout) h1 {font-size:36px}
}
