/* Site-wide fixes on top of the ported theme: mobile call button, estimate form in the Get in Touch band, side panel photos. */
.nrg-mobile-call{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#0DCEB5;color:#fff !important;margin-right:14px;flex:0 0 auto}
.nrg-mobile-call:hover,.nrg-mobile-call:focus{background:#0bb39d}
.mobile-header .header-icons-container{display:flex;align-items:center}

.nrg-band-form{width:100%;max-width:560px;margin-top:28px}
.nrg-band-form .elementor-form-fields-wrapper{display:flex;flex-wrap:wrap;margin:0 -8px}
.nrg-band-form .elementor-field-group{padding:0 8px;margin-bottom:14px;box-sizing:border-box}
.nrg-band-form .elementor-col-50{width:50%}
.nrg-band-form .elementor-col-100{width:100%}
.nrg-band-form .elementor-field-label{display:block;color:rgba(255,255,255,.85);font-size:14px;margin-bottom:6px}
.nrg-band-form .elementor-field,.nrg-band-form select,.nrg-band-form textarea{width:100%;box-sizing:border-box;background:transparent;border:1px solid rgba(255,255,255,.55);color:#fff;padding:10px 14px;font-size:15px;border-radius:0}
.nrg-band-form .elementor-select-wrapper{border:0;padding:0}
.nrg-band-form select option{color:#222628}
.nrg-band-form textarea::placeholder{color:rgba(255,255,255,.6)}
.nrg-band-form .elementor-button{width:100%;background:#0DCEB5;color:#fff;border:0;padding:14px 20px;font-weight:600;font-size:15px;cursor:pointer}
.nrg-band-form .elementor-button:hover{background:#0bb39d}
.nrg-band-form .lf-status{color:#fff}
@media (max-width:767px){.nrg-band-form .elementor-col-50{width:100%}}

.slide-sidebar .wp-block-gallery img{aspect-ratio:1/1;object-fit:cover}
.nrg-band-form .elementor-field-group .elementor-field,.nrg-band-form .elementor-field-group select,.nrg-band-form .elementor-field-group textarea{background:transparent !important;border:1px solid rgba(255,255,255,.55) !important;color:#fff !important;min-height:44px}
.nrg-band-form .elementor-field-group textarea{height:110px !important}
.nrg-band-form .elementor-field-group .elementor-button{background:#0DCEB5 !important;color:#fff !important;height:auto !important;min-height:50px;border:0 !important}
.nrg-band-form .elementor-field-group .elementor-button .elementor-button-text{color:#fff !important;font-size:15px}
.nrg-estimate-card{position:relative;overflow:hidden}
.nrg-estimate-card img.wp-block-cover__image-background{position:absolute !important;inset:0;width:100% !important;height:100% !important;object-fit:cover;margin:0;max-width:none}
.nrg-estimate-card .wp-block-cover__inner-container{position:static}
.nrg-estimate-card .blog-sidebar-buttons{position:absolute !important;left:20px;right:auto;bottom:20px;top:auto;z-index:2}
/* footer newsletter: the Send button sat under the email field, so a click focused the field instead of sending */
.footer .wpcf7-form .wpcf7-submit{position:relative;z-index:2}
/* links whose page was retired stay as text in place (same look), not as a dead link */
a[data-unlinked]{cursor:default}

/* content kit (page bodies written in the content step): sections between the theme's own modules */
.nrg-section{max-width:1170px;margin:0 auto;padding:48px 15px;box-sizing:border-box}
.nrg-section h2{margin:0 0 16px}
.nrg-section h3{margin:24px 0 10px}
.nrg-section p,.nrg-section li{font-size:17px;line-height:1.7}
.nrg-answer{border-left:4px solid #0DCEB5;padding:4px 0 4px 20px;margin:0 0 24px}
.nrg-answer p{font-size:19px;line-height:1.65;margin:0 0 12px}
.nrg-cta{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 0}
.nrg-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;background:#0DCEB5;color:#fff !important;font-weight:600;text-decoration:none !important;border:2px solid #0DCEB5;transition:background .2s}
.nrg-btn:hover,.nrg-btn:focus{background:#0bb39d;border-color:#0bb39d}
.nrg-btn-ghost{background:transparent;color:#222628 !important;border-color:#222628}
.nrg-btn-ghost:hover,.nrg-btn-ghost:focus{background:#222628;color:#fff !important;border-color:#222628}
.nrg-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;margin:24px 0}
.nrg-card{display:block;background:#fff;box-shadow:0 2px 14px rgba(34,38,40,.08);color:inherit !important;text-decoration:none !important;overflow:hidden;transition:box-shadow .2s}
.nrg-card:hover,.nrg-card:focus{box-shadow:0 6px 24px rgba(34,38,40,.16)}
.nrg-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}
.nrg-card:hover img{transform:scale(1.03)}
.nrg-card .nrg-card-body{padding:16px 18px 20px}
.nrg-card h3{margin:0 0 6px;font-size:19px}
.nrg-card p{margin:0;font-size:15px;line-height:1.55}
.nrg-steps{counter-reset:s;list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.nrg-steps li{counter-increment:s;background:#f4f7f8;padding:20px 20px 20px 64px;position:relative}
.nrg-steps li:before{content:counter(s);position:absolute;left:18px;top:18px;width:32px;height:32px;border-radius:50%;background:#0DCEB5;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.nrg-faq details{border-bottom:1px solid #dfe5e8;padding:14px 0}
.nrg-faq summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;position:relative;padding-right:32px}
.nrg-faq summary::-webkit-details-marker{display:none}
.nrg-faq summary:after{content:"+";position:absolute;right:4px;top:0;color:#0DCEB5;font-size:22px}
.nrg-faq details[open] summary:after{content:"-"}
.nrg-faq details p{margin:10px 0 0}
.nrg-note{background:#f4f7f8;padding:18px 20px;margin:20px 0}
@media (max-width:767px){.nrg-section{padding:32px 16px}.nrg-answer p{font-size:17px}}
/* proof component: the theme button styles must not reach its rail arrows */
.nzp-rn{position:absolute !important;width:46px !important;height:46px !important;min-width:0 !important;padding:0 !important;border-radius:50% !important;display:grid !important;place-items:center;border:0 !important;line-height:1 !important}

/* Legal notices: the call and text consent next to every form button, the email notice on the newsletter form */
.nrg-consent{margin:4px 0 14px;font-size:13px;line-height:1.55;color:#4a555b;text-align:left}
.nrg-consent a{color:inherit !important;text-decoration:underline !important}
.nrg-consent-row{width:100%}
.nrg-band-form .nrg-consent,.footer .nrg-consent,.e-con[class*="e4a0af5"] .nrg-consent{color:#d3d9dc}
.footer .nrg-consent{margin:10px 0 0;font-size:12px}
.wpcf7-spinner{display:none !important}

/* Accessibility (WCAG 2.1 AA): text contrast, visible focus */
.header-button,.header-button:hover,.nrg-btn,.nrg-btn:hover,.nrg-btn:focus,.nrg-mobile-call,
.elementor-button[type="submit"],.elementor-button[type="submit"] .elementor-button-text,
.nrg-band-form .elementor-field-group .elementor-button,.nrg-band-form .elementor-field-group .elementor-button .elementor-button-text,
.wpforms-submit,.nrg-steps li:before{color:#0b1f24 !important}
.content-slider-item-buttons .energium-button::before{background-color:#c9234a !important}
.content-slider-item-buttons .energium-button{border-color:#c9234a !important}
.elementor-element-a9128d7{background:rgba(9,22,28,.68);padding:24px;box-sizing:border-box}
.elementor-element-cf24a5d{background-color:#55626a !important;background-blend-mode:multiply}
:focus-visible{outline:2px solid #0a6fb3 !important;outline-offset:2px}
.contact-banner{background-color:#55626a !important;background-blend-mode:multiply}
.footer .current-menu-item > a,.footer .current_page_item > a,.footer .menu-item > a:hover{color:#0DCEB5 !important}
.post-category-item,.post-category-item a{color:#0b1f24 !important}
.elementor-element-f9c08be .energium-heading-content,.elementor-element-0e21fe0 .energium-heading-content,.elementor-element-abd6eaf .energium-heading-content{color:#666 !important}
.top-bar .contact-item-label{color:#aeb6ba !important}
.contact-banner .elementor-column > .elementor-widget-wrap{padding:28px 40px !important}
.top-bar .top-bar-row > .top-bar-column:first-child{flex:1 1 auto;width:auto !important;max-width:none !important}.top-bar .top-bar-contacts{justify-content:flex-start !important;width:auto !important}
.elementor-widget-energium_quote .quote-author{color:#0b2b30 !important}
.elementor-widget-energium_testimonial_carousel .author-position{color:#0DCEB5 !important}
.elementor-widget-text-editor.elementor-widget__width-initial > .elementor-widget-container{height:auto !important}
html body .nzp .nzp-filters button.is-on,html body .nzp .nzp-filters button.is-on:hover,html body .nzp .nzp-filters button.is-on:focus,html body .nzp .nzp-btn-solid,html body .nzp-btn-solid,html body .nzp .nzp-btn-ghost:hover,html body .nzp-avatar,html body .nzp-play-badge{color:#0b1f24 !important}
.content-slider.owl-carousel:not(.owl-loaded)>.slider-item~.slider-item{display:none}
img.wp-post-image[width][height]{height:auto}
