/* First paint: keep one usable slide before Slippry builds its slide wrappers. */
body.home #slider > #demo1:not(.sy-list) { list-style:none; margin:0; padding:0; position:relative; width:100%; }
body.home #slider > #demo1:not(.sy-list) > li { list-style:none; margin:0; padding:0; position:relative; width:100%; }
body.home #slider > #demo1:not(.sy-list) > li:not(:first-child) { display:none; }
body.home #slider > #demo1:not(.sy-list) > li:first-child > img { display:block; width:100%; height:auto; aspect-ratio:12/5; object-fit:cover; }
/* Cookie Notice hides only its inner container; the empty outer border must vanish too. */
body #cookie-notice.cookie-notice-hidden:not(.cn-shown) { display:none!important; border:0!important; box-shadow:none!important; }
body #cookie-notice.cookie-notice-hidden .cookie-notice-container { display:none; }

/* Consistent reading rhythm in current courses, legacy content wrappers and blog articles. */
body.single-fat-event .fat-event-single-content,
body.single-post .left { color:#465e53; font-size:16px; line-height:1.8; overflow-wrap:break-word; }
body.single-fat-event .fat-event-single-content p,
body.single-post .left p { color:inherit; font-size:inherit; line-height:inherit; margin:0 0 18px; text-align:left!important; }
body.single-fat-event .fat-event-single-content :is(h1,h2,h3,h4,h5,h6),
body.single-post .left :is(h2,h3,h4,h5,h6) { font-family:var(--be-heading-font)!important; font-weight:500; line-height:1.3; color:#2e493c!important; letter-spacing:-.01em; text-transform:none; padding:0!important; margin:28px 0 12px!important; border:0!important; background:none!important; clear:both; }
body.single-fat-event .fat-event-single-content :is(h1,h2) { font-size:28px; }
body.single-fat-event .fat-event-single-content h3 { font-size:24px; }
body.single-fat-event .fat-event-single-content :is(h4,h5,h6) { font-size:22px; }
body.single-fat-event .fat-event-single-content :is(h1,h2,h3,h4,h5,h6) :is(strong,b,span),
body.single-post .left :is(h2,h3,h4,h5,h6) :is(strong,b,span) { font:inherit!important; color:inherit!important; text-decoration:none!important; }
body.single-fat-event .fat-event-single-content :is(h1,h2,h3,h4,h5,h6)::before,
body.single-fat-event .fat-event-single-content :is(h1,h2,h3,h4,h5,h6)::after { display:none!important; content:none!important; }
body.single-fat-event .fat-event-single-content > :is(h1,h2,h3,h4):first-child { margin-top:0!important; }
body.single-fat-event .fat-event-single-content :is(ul,ol),
body.single-post .left :is(ul,ol) { margin:0 0 20px; padding-left:23px; }
body.single-fat-event .fat-event-single-content li,
body.single-post .left li { font-size:inherit; line-height:1.75; margin:0 0 8px; padding-left:3px; }
body.single-fat-event .fat-event-single-content :is(strong,b) { font-weight:500; }
body.single-fat-event .fat-event-single-content .tribe-events-single-event-description { margin:0; padding:0; }
body.single-fat-event .fat-event-single-content .be-training-calendar { float:none!important; display:flex; align-items:center; gap:16px; width:fit-content!important; max-width:100%; margin:18px 0!important; padding:12px 16px; border-radius:10px; background:#f3f7f4; text-align:left; }
body.single-fat-event .fat-event-single-content .be-training-calendar > a { display:block; flex:0 0 56px; }
body.single-fat-event .fat-event-single-content .be-training-calendar img { display:block; width:56px!important; height:56px!important; object-fit:cover; margin:0; border-radius:6px; }
body.single-fat-event .fat-event-single-content .be-training-calendar .wp-caption-text { padding:0; margin:0!important; font-size:14px; color:#367567; font-weight:500; }
body.single-fat-event .fat-event-single-content .wp-block-spacer,
body.single-post .left .wp-block-spacer { display:none; }

/* The provider's old embedded calculator needs a wide viewport. Mobile opens it separately. */
body.page-id-2583 .be-finance-mobile { display:none; }
body.page-id-2583 .be-finance-desktop { min-width:0; }
body.page-id-2583 .be-editorial-content .be-finance-desktop iframe { min-height:380px; height:380px; margin:0; }
body.page-id-2583 .be-finance-calculator { clear:both; margin:26px 0 0; }
body.page-id-2583 .be-editorial-content .be-finance-mobile h3 { font-size:24px; margin:0 0 12px; }
body.page-id-2583 .be-finance-mobile p { margin:0 0 18px; font-size:15px; line-height:1.75; }
body.page-id-2583 .be-finance-mobile .be-finance-note { font-size:12px; line-height:1.7; color:#6a7f73; margin:14px 0 0; }
body.page-id-2583 .be-finance-open { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 18px; border-radius:8px; color:#fff; background:#307d78; font-size:15px; font-weight:500; line-height:1.5; text-align:center; text-decoration:none; }
body.page-id-2583 .be-finance-open:hover { background:#286e69; }
body.page-id-2583 .be-finance-open:focus-visible { outline:2px solid #285b52; outline-offset:4px; }
@media(max-width:900px) {
 body.page-id-2583 .be-finance-desktop { display:none; }
 body.page-id-2583 .be-finance-mobile { display:block; padding:24px; border-radius:12px; background:#f5f8f6; }
 body.page-id-2583 .be-editorial-content .wp-block-button { display:block; width:100%; margin:0; }
 body.page-id-2583 .be-editorial-content .wp-block-button__link { display:flex; justify-content:center; align-items:center; width:100%; min-height:48px; padding:13px 18px; margin:0; text-align:center; background:#edf4f0!important; color:#2e6d61!important; }
 body.page-id-2583 .be-finance-open { width:100%; }
 body.page-id-2583 .be-editorial-links { margin-top:0; padding-top:28px; gap:18px; }
}
@media(max-width:620px) {
 body.single-fat-event .fat-event-single-content,
 body.single-post .left { font-size:15.5px; line-height:1.8; }
 body.single-fat-event .fat-event-single-content :is(h1,h2) { font-size:25px; }
 body.single-fat-event .fat-event-single-content h3 { font-size:23px; }
 body.single-fat-event .fat-event-single-content :is(h4,h5,h6) { font-size:21px; }
 body.single-fat-event .fat-event-single-content .alignleft,
 body.single-fat-event .fat-event-single-content .alignright,
 body.single-post .left .alignleft,
 body.single-post .left .alignright { float:none!important; display:block; margin:18px auto!important; max-width:100%; }
 body.single-fat-event .fat-event-single-content .be-training-calendar { display:flex; width:100%!important; margin:18px 0!important; }
 body.page-id-2583 .be-finance-mobile { padding:22px 20px; }
}

/* Also hide empty paragraphs created by the browser when repairing legacy markup. */
body.single-fat-event .fat-event-single-content p:empty,
body.single-post .left p:empty { display:none; }
@media(max-width:620px) {
 body.single-fat-event .fat-event-single .singleIMage { height:auto; margin:0 0 24px; }
 body.single-fat-event .fat-event-single .singleIMage img { display:block; float:none; width:100%; height:auto; }
}

/* Initial mobile slide reserves the same height as the initialized theme slider. */
@media(max-width:740px) {
 body.home #slider > #demo1:not(.sy-list),body.home #slider > #demo1:not(.sy-list) > li:first-child { height:300px; }
 body.home #slider > #demo1:not(.sy-list) > li:first-child > img { height:300px; object-fit:cover; object-position:center; }
}
/* Category copy is paragraph-based instead of the old nl2br spacing around every tag. */
body.tax-fat-event-category .cat_description { color:#465e53; font-size:16px; line-height:1.8; overflow-wrap:break-word; text-align:left; }
body.tax-fat-event-category .cat_description p { margin:0 0 18px; font-size:inherit; line-height:inherit; }
body.tax-fat-event-category .cat_description :is(h2,h3,h4) { font-family:var(--be-heading-font)!important; font-size:25px; font-weight:500; line-height:1.3; color:#2e493c; margin:28px 0 12px; padding:0; clear:both; }
body.tax-fat-event-category .cat_description :is(h2,h3,h4) :is(a,strong,b,span) { font:inherit!important; color:inherit!important; text-decoration:none; }
body.tax-fat-event-category .cat_description :is(h2,h3,h4)::before,body.tax-fat-event-category .cat_description :is(h2,h3,h4)::after { display:none; }
body.tax-fat-event-category .cat_description :is(ul,ol) { margin:0 0 20px; padding-left:23px; }
body.tax-fat-event-category .cat_description ul li { list-style:disc outside; }
body.tax-fat-event-category .cat_description li { margin:0 0 8px; padding-left:3px; font-size:inherit; line-height:1.75; }
body.tax-fat-event-category .cat_description :is(strong,b) { font-weight:500; }
body.tax-fat-event-category .cat_description p:empty { display:none; }
@media(max-width:620px) {
 body.tax-fat-event-category .cat_description { font-size:15.5px; line-height:1.8; }
 body.tax-fat-event-category .cat_description :is(h2,h3,h4) { font-size:23px; }
}

/* Reset the legacy tag-cloud floats so descriptive lists remain vertical lists. */
body.tax-fat-event-category .cat_description :is(ul,ol) { float:none; width:auto; clear:both; }
body.tax-fat-event-category .cat_description li { display:list-item; float:none; width:auto; }

/* A slightly stronger accent for audience and training objectives. */
body.single-fat-event .fat-event-single-content .be-course-section-label { font-weight:600; }

/* Course card titles grow with their content; the price occupies a separate row. */
body.tax-fat-event-category .all_course .box_content { display:flex; flex-direction:column; gap:12px; }
body.tax-fat-event-category .all_course .box_content h2 { height:auto!important; min-height:0; max-height:none; padding:0!important; margin:0!important; flex-shrink:0; }
body.tax-fat-event-category .all_course .box_price { display:block; position:static; float:none; margin:0; margin-top:auto; padding:0; line-height:1.6; flex-shrink:0; }
