/* Bridge Concrete 9 block markup to this theme's Bootstrap 3 styles. */
.ccm-page .img-fluid {
    display: block;
    max-width: 100%;
    height: auto;
}
.ccm-page form label.form-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.ccm-page form .mb-3 {
    margin-bottom: 15px;
}
@media (min-width: 768px) {
    .ccm-page #connect-bar form fieldset .mb-3 {
        float: left;
        margin-right: 26px;
        width: calc(33.3% - 26px);
    }
}

/* Concrete 9 renders X as SVG; match the theme's font social icons. */
.ccm-page .ccm-block-social-links svg {
    color: #d96a75;
    transition: color 0.2s ease;
}
.ccm-page .ccm-block-social-links svg:hover {
    color: #87c2e6;
}
.ccm-page #connect-bar .ccm-block-social-links svg,
.ccm-page footer .ccm-block-social-links svg {
    color: #fff;
}
.ccm-page #connect-bar .ccm-block-social-links svg:hover {
    color: #d96a75;
}
.ccm-page footer .ccm-block-social-links svg:hover {
    color: #87c2e6;
}

/* Match the signup section's 50px social icons. */
.ccm-page #connect-bar .ccm-block-social-links svg {
    width: 42px;
    height: 42px;
    vertical-align: baseline;
}
@media (min-width: 1200px) {
    .ccm-page #connect-bar .ccm-block-social-links svg { margin: 0 5px; }
}

.ccm-page #connect-bar .ccm-block-social-links svg { max-height: 42px; }

/* Keep the Charity banner portrait fully framed. */
#leeza-charity-banner { background-position: center 15% !important; background-size: cover !important; }

/* Align the supplied Speaking portraits without cropping. */
.ccm-page main img[src*="img-3302-"], .ccm-page main img[src*="img-0009-"], .ccm-page main img[src*="img-3250-"] { display:inline-block; vertical-align:top; width:calc(33.333% - 24px); height:auto; margin:30px 10px; }
@media(max-width:767px) { .ccm-page main img[src*="img-3302-"], .ccm-page main img[src*="img-0009-"], .ccm-page main img[src*="img-3250-"] { display:block; width:100%; max-width:400px; height:auto; margin:24px auto; } }

/* Keep homepage feature copy clear of the portrait. */
#page1 .contentHighlight { position:relative; min-height:740px; padding:100px 65px!important; background-size:cover!important; background-position:center top!important; text-align:left; }
#page1 .contentHighlight:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.48) 38%,transparent 65%); }
#page1 .contentHighlight > .row { position:relative; z-index:1; }
#page1 .contentHighlight h1, #page1 .contentHighlight p { width:39%; max-width:510px; margin-left:0; text-align:left; }
#page1 .contentHighlight h1 { font-size:42px; line-height:1.3; }
#page1 .contentHighlight p { font-size:20px; line-height:1.6; }
@media(max-width:767px) { #page1 .contentHighlight { padding:420px 24px 40px!important; min-height:800px; } #page1 .contentHighlight:before { background:linear-gradient(transparent 25%,rgba(0,0,0,.75) 55%,rgba(0,0,0,.85)); } #page1 .contentHighlight h1, #page1 .contentHighlight p { width:100%; max-width:none; } #page1 .contentHighlight h1 { font-size:32px; } #page1 .contentHighlight p { font-size:18px; } }

/* Final portrait spacing for mobile and supporting photos. */
@media(max-width:767px) { #page1 .contentHighlight { padding-top:500px!important; } }
#page233 main img[src*="img-3057-"], #page235 main img[src*="IMG_3412"] { display:block; margin:35px auto; max-width:100%; height:auto; }

/* Raise the homepage feature portrait on larger screens. */
@media (min-width:768px) { #page1 .contentHighlight { background-position:center 15%!important; } }

/* About draft portraits: alternating text wrap, stacked on phones. */
#page233 .leeza-bio-second-section { clear: both; display: flow-root; padding-top: 24px; }
#page233 main img.leeza-bio-secondary { float: left; display: block; width: 38%; max-width: 420px; height: auto; margin: 0 32px 20px 0; }
#page233 main:has(.leeza-bio-secondary) img.bID-643 { display: none; }
@media (max-width:767px) {
 #page233 main img[src*="IMG_2980"], #page233 main img.leeza-bio-secondary { float: none !important; width: 100% !important; max-width: 500px; height: auto; margin: 20px auto !important; }
 #page233 .leeza-bio-second-section { padding-top: 0; }
}

/* Keep Speaking photo controls aligned while editing. */
.ccm-edit-mode #page243 [data-block-type-handle="image"] img { position: static !important; transform: none !important; width: 100% !important; height: auto !important; margin: 0 !important; }

/* Expose the existing block controls when the legacy theme suppresses its menu. */
.ccm-edit-mode #page243 .ccm-block-edit:hover > .ccm-ui > .ccm-edit-mode-block-menu { display:block !important; opacity:1 !important; visibility:visible !important; position:absolute; top:0; left:0; z-index:1100; pointer-events:auto; }
.ccm-edit-mode #page243 .ccm-block-edit:hover > .ccm-ui > .ccm-edit-mode-block-menu .dropdown-menu { display:block !important; position:relative; }


/* Legacy theme pseudo-icons use the installed Font Awesome 5 solid face. */
#titlebar .ccm-responsive-menu-launch i:after,
.callToActionBar .cta a.btnCta .ctaTitle + p::before,
.page-type-gallery main .easy-gallery .box-wrap a:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}
