/* FitVids (Divi injects this with JavaScript): a video embed fills its column at the video's own aspect ratio. */
.fluid-width-video-wrapper{width:100%;position:relative;padding:0}
.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed{position:absolute;top:0;left:0;width:100%;height:100%}

/* Visible FAQ sections (tools/postbuild.py): same look as the Divi Plus FAQ on conway-roofing-replacement. */
.thomas_faq_section{padding:3% 0;background:#fff}
.thomas_faq_section .et_pb_row{padding:0}
.thomas_faq_title .et_pb_text_inner h2{font-size:51px;font-weight:900;text-align:center;color:#333;padding-bottom:10px;line-height:1.3em}
.thomas_faq .dipl_faq_wrapper{display:flex;flex-wrap:wrap;gap:0 32px;align-items:flex-start}
.thomas_faq .dipl_faq_page_schema_item{width:calc(50% - 16px);margin-bottom:32px}
.thomas_faq .dipl_faq_item_wrapper .dipl_question_wrapper{position:relative;background:#f4f4f4;border:1px solid #d9d9d9;padding:20px 48px 20px 10px!important;cursor:pointer}
.thomas_faq .dipl_question_wrapper h3{font-size:22px;font-weight:900;line-height:1.3em;color:#333;padding:0;margin:0}
.thomas_faq .dipl_faq_item_wrapper .dipl_question_wrapper:after{content:":"!important;font-family:ETmodules!important;font-size:25px!important;line-height:1!important;color:#2f79ed!important;position:absolute!important;right:10px!important;top:50%!important;margin-top:-12px!important;width:25px;height:25px}
.thomas_faq .dipl_active .dipl_question_wrapper:after{content:";"!important}
.thomas_faq .dipl_answer_wrapper{padding:10px;color:#747474;font-size:16px;line-height:1.7em}
.thomas_faq .dipl_answer_wrapper p{padding-bottom:0}
@media (max-width:980px){.thomas_faq_section{padding:30px 0}.thomas_faq .dipl_faq_page_schema_item{margin-bottom:30px}}
@media (max-width:767px){.thomas_faq_section{padding:60px 0}.thomas_faq_title .et_pb_text_inner h2{font-size:28px}.thomas_faq .dipl_faq_page_schema_item{width:100%;margin-bottom:10px}}

/* Video backgrounds: Divi's MediaElement script sizes the video to cover its section (cropping the overflow, centered);
   without it the video sits at its own size in the top-left corner. object-fit does the same in CSS. */
.et_pb_section_video_bg video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;margin:0}

/* Back-to-top button (not on live; added). Shown by divi-lite.js after 800px of scrolling. Sits above the GHL chat bubble. */
.et_pb_scroll_top.et-pb-icon{display:none;position:fixed;z-index:99998;right:24px;bottom:100px;width:44px;height:44px;border-radius:50%;background:#2f79ed;color:#fff;font-size:30px;line-height:44px;text-align:center;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.25);transition:opacity .3s,transform .3s}
.et_pb_scroll_top.et-pb-icon:before{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-3px 0 0 -6px;border:solid #fff;border-width:3px 0 0 3px;transform:rotate(45deg);box-sizing:border-box}
.et_pb_scroll_top.et-hidden{opacity:0;transform:translateY(10px)}
.et_pb_scroll_top.et-visible{opacity:1;transform:none}
.et_pb_scroll_top.et-pb-icon:hover,.et_pb_scroll_top.et-pb-icon:focus-visible{background:#1d5fc9}
@media (max-width:767px){.et_pb_scroll_top.et-pb-icon{right:16px;bottom:90px;width:40px;height:40px;line-height:40px;font-size:26px}}

/* Home hero: a tiny copy of the video's still image (inline, ~1 KB; the browser's scaling blurs it) shows instantly under
   the real still image while that and then the video load. */
.home div.et_pb_section.et_pb_section_0.et_pb_section_video{background-image:url(/assets/img/opt/Hero-Banner-Video2-poster-bg1280.webp),url(data:image/jpeg;base64,/9j//gAPTGF2YzYzLjEuMTAyAP/bAEMACAwMDgwOEBAQEBAQExITFBQUExMTExQUFBUVFRkZGRUVFRQUFRUYGBkZGxwbGhoZGhwcHh4eJCQiIioqKzMzPv/EAIQAAAIDAQEBAAAAAAAAAAAAAAQFBgcDAQACAQADAQEBAAAAAAAAAAAAAAADAQQAAgUQAAIBAgMFBQIPAQAAAAAAAAECEQMABCESEzFBUQVxIhRhoTOBFSNDMrHh0sLBk/CRc3JUUxEAAgEDBQEAAAAAAAAAAAAAAQARMVEhA5EScUGh/8AAEQgAFAAoAwEiAAIRAAMRAP/aAAwDAQACEQMRAD8ASVOm6o2DkBpYBjqGXmJjstRX6diML3y6NPDIQfIfVdmYTwIK7V8ws6RkOyZ4cbV9Sr0hXZWpIKD09IdEDPSOR1ggSynKfQ2PS5mJOPqGMNdJtiZcNyGkSfpG/de9Bq+1VVp1CWMBSBmSJ35C5r07pGHxaFzjUIzbQgO1gcWUwV9b+1pVxildTtKSP8Wd/dAAO0ClZO8wxPvukgTXdQDFnxlbDuyVFamY+Y+RE7suR52P8JHkLsrE+BJ2tQUUZdXedJM8hGZHKLU+KwH/AEw/5FX7VjkXh7MhOXCYZ9mHoo/9hO+LY4ujTenqKiRujLjeafJ9g/Cy8R7E/rjaCRCp0qaUQFULMzEiZsDxDaaohe4+kHOSPPOPS2y+xXsuP/6P5bw9XbthuIxFStUbWZgwP3ixPeb8/tX7fvX2/PNSzGr/AP/Z)!important;background-size:cover!important;background-position:center!important}

/* Accessibility fixes (Lighthouse), no visual change except where noted:
   - hidden link descriptions ("LEARN MORE about residential roofing");
   - headings in the blue reviews section are white instead of light blue (light blue on that blue was hard to read);
   - the footer credit link is underlined so it's distinguishable from the text around it. */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.et_pb_section:has(.lc_reviews_widget) .et_pb_text h4{color:#fff!important}
a[href="https://resultsdigital.io/"]{text-decoration:underline!important}
