/* Native Gutenberg enhancements: inherit the church palette and card design. */
:root{--lf-green:#0d5a3e;--lf-yellow:#f4ce35}
.lf-carousel,.lf-card-carousel{display:flex!important;gap:16px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;max-width:100%;padding-bottom:8px}
.lf-carousel::-webkit-scrollbar,.lf-card-carousel::-webkit-scrollbar{display:none}
.lf-carousel>*{flex:0 0 calc((100% - (var(--lf-columns,1) - 1)*16px)/var(--lf-columns,1));min-width:0;scroll-snap-align:start;box-sizing:border-box}
.lf-card-carousel>*{flex:0 0 calc((100% - (var(--lf-columns,3) - 1)*16px)/var(--lf-columns,3));min-width:0;scroll-snap-align:start;box-sizing:border-box}
.lf-carousel-tools{display:flex;justify-content:flex-end;gap:8px;padding:8px 0 16px}.lf-carousel-tools button{border:1px solid #d4e0d7;background:white;color:var(--lf-green);border-radius:99px;min-width:40px;min-height:36px;padding:5px 12px;cursor:pointer}.lf-carousel-tools button:hover{background:var(--lf-yellow)}
.lf-hide-images img,.lf-hide-images .wp-block-cover__image-background{display:none!important}.lf-hide-text h1,.lf-hide-text h2,.lf-hide-text h3,.lf-hide-text p{display:none!important}.lf-hide-buttons .wp-block-buttons,.lf-hide-buttons .wp-block-button,.lf-hide-buttons a.button{display:none!important}
.lf-see-more{display:inline-flex;margin:8px 0 24px;font-weight:700;color:var(--lf-green)}.lf-section-actions{margin:0 0 24px}.lf-playlists-link{margin-bottom:20px}
.lf-gallery,.wp-block-gallery.is-style-fontaine-cards,.wp-block-gallery.is-style-fontaine-mosaic{display:grid!important;grid-template-columns:repeat(var(--lf-columns,3),minmax(0,1fr));gap:16px}.lf-gallery figure,.lf-gallery img,.wp-block-gallery.is-style-fontaine-cards figure{margin:0!important;width:100%!important}.lf-gallery img,.wp-block-gallery.is-style-fontaine-cards img,.wp-block-gallery.is-style-fontaine-mosaic img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;cursor:zoom-in}.lf-gallery-mosaic>:nth-child(5n+1),.is-style-fontaine-mosaic>:nth-child(5n+1){grid-column:span 2}.lf-gallery-strip,.wp-block-gallery.is-style-fontaine-strip{display:flex!important;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory}.lf-gallery-strip>*,.is-style-fontaine-strip>*{flex:0 0 60%;scroll-snap-align:start}
.lf-popup{width:min(650px,calc(100vw - 32px));max-height:88dvh;overflow:auto;border:0;border-radius:22px;padding:30px;color:#18382b;background:#fff;box-sizing:border-box;box-shadow:0 24px 80px #082a2440}.lf-popup::backdrop{background:#052e25a8;backdrop-filter:blur(5px)}.lf-popup>[data-lf-close]{position:sticky;top:0;float:right;border:0;border-radius:50%;width:36px;height:36px;background:#edf3ed;color:var(--lf-green);font-size:25px;z-index:2;cursor:pointer}.lf-popup form{clear:both}.lf-popup label{display:block;margin:12px 0}.lf-popup input:not([type=checkbox]),.lf-popup textarea,.lf-popup select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #d4e0d7;border-radius:9px}.lf-lightbox-image{display:block;width:100%;height:auto;max-height:75dvh;object-fit:contain}.lf-media-picker{margin:8px 0}.lf-selected-image{display:block;width:160px;height:100px;object-fit:cover;border-radius:10px;margin:8px 0}.media-modal{z-index:100000!important}
.single-video-slot{position:relative;overflow:hidden}.single-video-slot .lf-video-poster{display:block!important;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.lf-video-poster-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:0;border-radius:99px;width:68px;height:68px;display:grid;place-items:center;background:var(--lf-yellow);color:var(--lf-green);cursor:pointer;z-index:1}.lf-video-poster-play svg{width:28px;height:28px}.lf-course-image{width:100%;max-height:350px;object-fit:cover;border-radius:20px}.lf-course-detail .panel{margin-top:18px}.lf-course-detail li{padding:6px 0}
.lf-nav-icon{vertical-align:middle;flex:none;margin-right:6px}.wp-block-navigation-item__label{display:inline-flex;align-items:center}.lf-avatar{width:40px!important;height:40px!important;min-width:40px;object-fit:cover;border-radius:50%!important}.lf-student-list{display:grid;gap:12px}.lf-student{padding:18px;border:1px solid #dde7df;border-radius:14px;background:white}.lf-student>a{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--lf-green)}.lf-student dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 0}.lf-student dt{font-size:12px;color:#65786d}.lf-student dd{margin:4px 0;font-weight:600}
.lf-comments{padding:24px 0;max-width:900px;margin-inline:auto}.lf-comment{display:flex;align-items:flex-start;gap:12px;margin:16px 0}.lf-comment-reply{margin-left:44px}.lf-message{flex:1;min-width:0;background:#eef5ef;border:1px solid #dfebe1;border-radius:0 16px 16px;padding:14px 18px}.lf-message-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lf-message-meta strong{color:var(--lf-green)}.lf-message-meta time{font-size:11px;color:#65786d;margin-left:auto}.lf-role-badge{display:inline-block!important;border-radius:20px;background:#fff2b1;color:#0d5a3e;padding:3px 8px;font-size:10px;font-weight:700;line-height:1.4;vertical-align:middle}.lf-message p{margin:10px 0;overflow-wrap:anywhere}.lf-text-button{border:0;background:transparent;color:var(--lf-green);padding:0;font-weight:700;cursor:pointer}.lf-comments form{background:white;padding:20px;border:1px solid #dce7df;border-radius:16px;margin-top:24px}.lf-comments label{display:block;margin:12px 0}.lf-comments textarea{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #cfddd3;border-radius:12px;font:inherit}.lf-comments .check{display:flex;gap:8px;align-items:center;font-size:13px}.lf-reply-target{background:#fff2b1;padding:9px;border-radius:8px}.lf-comment-status{font-size:13px}
#bbpress-forums{font-family:inherit;font-size:15px}#bbpress-forums ul.bbp-topics,#bbpress-forums ul.bbp-replies,#bbpress-forums ul.bbp-forums{border:0;border-radius:18px;overflow:hidden;background:white}#bbpress-forums li.bbp-header,#bbpress-forums li.bbp-footer{background:#edf5ef;border-color:#dce8df;color:var(--lf-green)}#bbpress-forums li.bbp-body ul.topic,#bbpress-forums li.bbp-body ul.forum{padding:20px;border-bottom:1px solid #e4ede7}#bbpress-forums .bbp-topic-title>a{font-weight:750;color:var(--lf-green);font-size:17px}#bbpress-forums div.bbp-reply-header,#bbpress-forums div.bbp-topic-header{background:#f5f8f4;border:0;color:#6b7c70;font-size:12px;padding:12px 18px}#bbpress-forums div.bbp-reply-author,#bbpress-forums div.bbp-topic-author{width:100px;padding:16px 5px;box-sizing:border-box}#bbpress-forums .bbp-author-avatar img{width:38px!important;height:38px!important;border-radius:50%;object-fit:cover}#bbpress-forums .bbp-author-name{font-size:13px;font-weight:750;color:var(--lf-green);margin:7px 0}#bbpress-forums .bbp-author-role{font-size:10px;color:#6b7c70}#bbpress-forums div.bbp-reply-content,#bbpress-forums div.bbp-topic-content{margin-left:110px;padding:18px;background:#edf5ef;border-radius:0 16px 16px;min-height:74px;overflow-wrap:anywhere}#bbpress-forums div.reply,#bbpress-forums div.topic{padding:12px;background:#fff}#bbpress-forums fieldset.bbp-form{border:1px solid #dbe6dd;border-radius:16px;padding:20px}#bbpress-forums button[type=submit],.lf-comments .wp-element-button,.lf-popup .wp-element-button{background:var(--lf-yellow);color:var(--lf-green);border:0;border-radius:9px;padding:12px 20px;font-weight:700}
@media(max-width:900px){.lf-card-carousel>*{flex-basis:calc((100% - 16px)/2)}.lf-student dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.lf-card-carousel>*{flex-basis:85%}.lf-reusable-carousel>*{flex-basis:100%}.lf-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-gallery-mosaic>:nth-child(5n+1){grid-column:span 2}.lf-popup{padding:20px}.lf-message-meta time{margin-left:0;width:100%}.lf-comment-reply{margin-left:24px}.lf-comment{gap:8px}.lf-message{padding:12px}.lf-nav-icon{width:19px;height:19px;margin-right:4px}#bbpress-forums div.bbp-reply-author,#bbpress-forums div.bbp-topic-author{width:70px}#bbpress-forums div.bbp-reply-content,#bbpress-forums div.bbp-topic-content{margin-left:76px;padding:12px}}
@media(prefers-reduced-motion:reduce){.lf-carousel,.lf-card-carousel{scroll-behavior:auto}}
@media(max-width:780px){.lf-bottom-links .wp-block-navigation-item__label{display:flex;flex-direction:column;gap:4px}.lf-bottom-links .lf-nav-icon{margin:0;width:22px;height:22px}}
