/* Cornerstone's editable section system. Layout classes correspond to named Elementor containers. */
body.brand-cornerstone{--bp-max:1440px;--bp-radius:6px}
.brand-cornerstone .bp-section.cp-credentials{padding:22px max(24px,5vw)!important;background:#191919;text-align:center}.brand-cornerstone .cp-credentials .bp-copy{color:#ddd;font-size:12px;line-height:1.8;letter-spacing:.03em}
.brand-cornerstone .cp-cta .cp-actions{width:auto;justify-content:center}
.brand-cornerstone .cp-native-form .elementor-form{margin:0!important;padding:0!important}
.brand-cornerstone .cp-native-form .elementor-form-fields-wrapper{display:flex!important;flex-wrap:wrap!important;gap:0!important;margin:-10px!important}
.brand-cornerstone .cp-native-form .elementor-field-group{padding:10px!important;min-width:0!important;max-width:none!important;margin:0!important;position:relative!important;inset:auto!important;transform:none!important;height:auto!important;min-height:0!important;flex:0 0 auto!important;width:100%!important}
.brand-cornerstone .cp-native-form .elementor-field-group.elementor-col-50{width:50%!important}
.brand-cornerstone .cp-native-form .elementor-field-label{font-size:14px!important;line-height:1.5!important;margin-bottom:7px!important;color:#333!important}
.brand-cornerstone .cp-native-form input:not([type=radio]):not([type=checkbox]):not([type=file]),.brand-cornerstone .cp-native-form select,.brand-cornerstone .cp-native-form textarea{font-size:16px!important;line-height:1.5!important;background:#faf9f7!important;border:1px solid #d8d6d2!important;border-radius:3px!important;padding:11px 12px!important;min-height:46px!important;color:#333!important;width:100%!important}
.brand-cornerstone .cp-native-form textarea{min-height:120px!important}
.brand-cornerstone .cp-native-form :is(input,select,textarea,button){font-family:'wix-madefor-text-v2',Arial,sans-serif!important}
.brand-cornerstone .cp-native-form .elementor-field-type-html,.brand-cornerstone .cp-native-form .elementor-field-type-html *{font-size:13px!important;line-height:1.5!important;color:#666!important}
.brand-cornerstone .cp-native-form input[type=file]{width:100%!important;max-width:100%!important;font-size:13px;line-height:1.5;color:#555}
.brand-cornerstone .cp-native-form input[type=file]::file-selector-button{background:#ff6b00;color:white;border:0;border-radius:4px;padding:11px 14px;margin-right:10px;font:inherit;cursor:pointer}
.brand-cornerstone .cp-native-form .elementor-button{min-height:48px!important;font-size:14px!important;line-height:1.4!important;border-radius:4px!important;padding:14px 20px!important;background:#ff6b00!important;color:white!important;white-space:normal!important}
.brand-cornerstone .cp-native-form .elementor-field-subgroup{font-size:16px;line-height:1.6}.brand-cornerstone .cp-native-form .elementor-field-option{display:flex;align-items:center;gap:10px;padding:6px 0}.brand-cornerstone .cp-native-form input[type=radio]{accent-color:#ff6b00;width:18px;height:18px;appearance:auto!important;opacity:1!important;position:static!important}
@media(max-width:767px){.brand-cornerstone .cp-native-form .elementor-field-group.elementor-column{width:100%!important;grid-column:1/-1!important}.brand-cornerstone .cp-native-form .elementor-form-fields-wrapper{grid-template-columns:1fr!important}}
.brand-cornerstone .elementor-widget-cornerstone-comparison{width:100%!important;height:auto!important;flex:0 0 auto!important;aspect-ratio:16/10}
.brand-cornerstone .elementor-widget-cornerstone-comparison>.elementor-widget-container{height:auto!important}
@media(max-width:767px){.brand-cornerstone .elementor-widget-cornerstone-comparison{aspect-ratio:4/5}}
.brand-cornerstone .cp-warranty-stat .bp-heading:has(h2){color:#ff7900}.brand-cornerstone .cp-warranty-stat .bp-heading:has(h3){color:#fff}
.brand-cornerstone .bp-section.bp-systems{padding-top:0!important}
.brand-cornerstone .bp-team-card>.bp-photo img{object-position:50% 0}
.brand-cornerstone .cp-home-hero>.bp-wrap{isolation:auto!important}
.brand-cornerstone .cp-home-hero .cp-hero-bg{z-index:0!important}
.brand-cornerstone .cp-home-hero:after{z-index:1!important;pointer-events:none}
.brand-cornerstone .cp-home-copy{position:relative;z-index:2}
.brand-cornerstone .cp-gallery .swiper-slide-image{height:300px!important;width:100%!important;object-fit:cover!important;border-radius:6px}
.brand-cornerstone:not(.elementor-editor-active) .sh-project-gallery-lightbox{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;margin:0!important;padding:60px 24px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#000e}
.brand-cornerstone:not(.elementor-editor-active) .sh-project-gallery-lightbox .elementor-widget-slides{width:min(1440px,100%)!important}
.brand-cornerstone:not(.elementor-editor-active) .sh-project-gallery-lightbox .elementor-slides-wrapper{height:calc(100dvh - 120px)!important;max-height:900px}
.brand-cornerstone:not(.elementor-editor-active) .bp-section:has(.sh-project-gallery-lightbox){isolation:auto}
@media(max-width:767px){.brand-cornerstone .cp-gallery .swiper-slide-image{height:280px!important}}
.brand-cornerstone .cp-main,.brand-cornerstone .cp-shell{width:100%;max-width:none;gap:0;padding:0;margin:0;min-height:0}
.brand-cornerstone .bp-section{padding:88px max(24px,5vw)!important}
.brand-cornerstone .bp-wrap{gap:40px}
.brand-cornerstone .bp-card{padding:30px;box-shadow:none}
.brand-cornerstone .bp-heading .elementor-heading-title{font-size:22px;line-height:1.35;text-wrap:balance}
.brand-cornerstone .bp-intro .bp-heading .elementor-heading-title{font-size:clamp(27px,2.6vw,40px);line-height:1.2}
.brand-cornerstone .bp-copy{font-size:17px;line-height:1.7}
.brand-cornerstone .bp-intro .bp-copy{font-size:19px}
.brand-cornerstone .bp-step-number{font-size:38px;line-height:1;color:#ff6b00}
.brand-cornerstone .bp-eyebrow{font-size:12px;font-weight:700;line-height:1.65;letter-spacing:.12em;color:#cb5600}
.brand-cornerstone .bp-icon{width:48px;height:48px;margin:0}
.brand-cornerstone .bp-section .bp-photo img{display:block}
.brand-cornerstone .bp-corner-header{padding-inline:max(24px,5vw)}
.brand-cornerstone .bp-corner-header-row{max-width:var(--bp-max)!important;margin-inline:auto!important}
@media(max-width:767px){.brand-cornerstone .bp-corner-header{padding-inline:22px}.brand-cornerstone .bp-section.cp-credentials{padding-inline:22px!important}}
.brand-cornerstone .bp-corner-logo img,.brand-cornerstone .cp-footer-logo img{filter:grayscale(1) invert(1);mix-blend-mode:screen}
.brand-cornerstone .bp-corner-logo{width:132px!important}
.brand-cornerstone .bp-corner-logo img{width:132px!important;height:88px!important;object-fit:contain}
.brand-cornerstone .cp-home-hero{background:#121212;overflow:hidden;min-height:690px;display:flex;justify-content:center;padding-block:100px!important}
.brand-cornerstone .cp-home-hero>.bp-wrap{position:static;isolation:isolate}
.brand-cornerstone .cp-hero-bg{position:absolute;inset:0;height:100%;z-index:-2;max-width:none!important}
.brand-cornerstone .cp-hero-bg img{height:100%;width:100%;object-fit:cover;object-position:60% 55%}
.brand-cornerstone .cp-home-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090909ee 0%,#090909ba 37%,#09090915 80%)}
.brand-cornerstone .cp-home-copy{max-width:800px;gap:28px}
.brand-cornerstone .cp-home-copy .bp-heading{color:white}
.brand-cornerstone .cp-home-copy h1{font-size:clamp(35px,4.1vw,64px)!important;line-height:1.13!important;text-wrap:initial!important}
.brand-cornerstone .cp-home-copy .bp-copy{max-width:570px;color:#eee;font-size:19px}
.brand-cornerstone .cp-home-copy .bp-eyebrow{font-size:13px;color:#ff9a47}
.brand-cornerstone .cp-actions{display:flex!important;flex-direction:row;flex-wrap:wrap;gap:16px;align-items:center}
.brand-cornerstone .cp-outline .elementor-button{border-color:#ffffff80;background:transparent}
.brand-cornerstone .cp-foundation .bp-wrap{align-items:center;gap:24px;text-align:center}
.brand-cornerstone .cp-foundation .bp-button{align-self:center}
.brand-cornerstone .cp-page-hero .bp-heading h1{font-size:clamp(30px,3.2vw,48px);line-height:1.2}
.brand-cornerstone .cp-page-hero .bp-intro{max-width:1040px}
.brand-cornerstone .cp-split{align-items:center;gap:64px}
.brand-cornerstone .cp-hero-copy{gap:28px}
.brand-cornerstone .cp-hero-photo{height:520px;border-radius:6px}
.brand-cornerstone .cp-page-hero.bp-dark .bp-heading{color:#fff}
.brand-cornerstone .cp-page-hero.bp-dark .bp-copy{color:#ddd}
.brand-cornerstone .cp-about-intro{gap:72px;align-items:center}
.brand-cornerstone .cp-warranty{padding-block:54px!important}
.brand-cornerstone .cp-warranty-stat{text-align:center;gap:12px}
.brand-cornerstone .cp-warranty-stat h2{font-size:48px!important;color:#ff7900}
.brand-cornerstone .cp-warranty-stat h3{font-size:16px!important;color:white;letter-spacing:.06em}
.brand-cornerstone .cp-warranty-stat+div{border-left:1px solid #ffffff30}
.brand-cornerstone .cp-comparison .bp-wrap{max-width:1120px}
.cp-compare{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:6px;background:#222;isolation:isolate;touch-action:pan-y}
.cp-compare>img{position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;object-fit:cover!important;pointer-events:none;user-select:none}
.cp-compare .cp-before{clip-path:inset(0 calc(100% - var(--reveal)) 0 0);z-index:1}
.cp-label{position:absolute;top:20px;z-index:2;padding:8px 15px;border-radius:3px;background:#111c;color:#fff;font:600 14px/1.4 Arial,sans-serif;pointer-events:none}
.cp-label-before{left:20px}.cp-label-after{right:20px}
.cp-handle{position:absolute;left:var(--reveal);top:0;bottom:0;width:3px;background:white;transform:translateX(-50%);z-index:3;pointer-events:none;box-shadow:0 0 8px #0005}
.cp-handle>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:#1a1a1a;font:700 28px Arial;letter-spacing:4px;box-shadow:0 3px 18px #0005}
.cp-compare input[type=range]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0;margin:0!important;z-index:5;cursor:ew-resize;touch-action:pan-y}
.cp-compare:focus-within{outline:3px solid #ff7900;outline-offset:5px}
.cp-drag-hint{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);padding:7px 13px;background:#111c;color:white;border-radius:3px;font:13px Arial;z-index:3;pointer-events:none}
.brand-cornerstone .cp-cta{background:#191919;padding-block:80px!important}
.brand-cornerstone .cp-cta .bp-wrap{align-items:center;gap:28px}.brand-cornerstone .cp-cta .bp-button{align-self:center}.brand-cornerstone .cp-cta .bp-eyebrow{color:#c1c1c1;text-align:center}
.brand-cornerstone .cp-estimate-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)!important;align-items:start;gap:40px}
.brand-cornerstone .cp-form-card{background:white;padding:36px;border:1px solid #e3e0db;border-radius:6px;gap:0;box-shadow:none}
.brand-cornerstone .cp-form-card>.elementor-widget{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.brand-cornerstone .cp-form-card .elementor-widget-container{box-shadow:none!important}
.brand-cornerstone .cp-estimate-aside{padding:36px;background:#252525;border-radius:6px;gap:24px}
.brand-cornerstone .cp-estimate-aside .bp-heading{color:white}.brand-cornerstone .cp-estimate-aside .bp-copy{color:#ddd}.brand-cornerstone .cp-estimate-aside .bp-eyebrow{color:#ff8a32}
.brand-cornerstone .cp-estimate-aside ul{margin:0;padding-left:20px}.brand-cornerstone .cp-estimate-aside li{padding:4px 0}
.brand-cornerstone .cp-calculator{border-top:1px solid #ffffff30;padding-top:26px;gap:16px}.brand-cornerstone .cp-calculator h3{font-size:17px!important}.brand-cornerstone .cp-calculator .bp-copy{font-size:15px}
.brand-cornerstone .cp-process-grid .bp-card{position:relative;padding:36px}.brand-cornerstone .cp-process-grid .bp-icon{position:absolute;right:32px;top:32px}.brand-cornerstone .cp-process-grid .bp-heading{max-width:440px}
.brand-cornerstone .cp-sector{padding:28px;border-left:3px solid #ff6b00}.brand-cornerstone .cp-sector h3{font-size:19px!important}
.brand-cornerstone .cp-prep-list{gap:0;border-top:1px solid #d9d5cf}.brand-cornerstone .cp-prep-item{padding:20px 0;border-bottom:1px solid #d9d5cf}.brand-cornerstone .cp-prep-item h3{font-size:19px!important}
.brand-cornerstone .cp-residential-montage img{height:auto;object-fit:contain}.brand-cornerstone .cp-color-chart{max-width:1000px;margin:auto}.brand-cornerstone .cp-color-chart img{height:auto;object-fit:contain}
.brand-cornerstone .cp-color-card{padding:40px;gap:24px}.brand-cornerstone .cp-color-card .bp-button{margin-top:auto}.brand-cornerstone .cp-footnote{font-size:14px;text-align:center}
.brand-cornerstone .cp-project{gap:18px}.brand-cornerstone .cp-project-photo{height:390px;border-radius:6px}.brand-cornerstone .cp-project .bp-eyebrow{color:#555}
.brand-cornerstone .cp-gallery{width:100%!important;max-width:none!important;margin:0!important}.brand-cornerstone .cp-gallery .sh-gallery-caption{font-size:14px!important;line-height:1.5!important;padding-block:14px!important}
.brand-cornerstone .cp-policy .bp-wrap{max-width:940px;gap:0}.brand-cornerstone .cp-policy-section{padding:36px 0;gap:20px;border-bottom:1px solid #ddd9d3}.brand-cornerstone .cp-policy-section:first-child{padding-top:0}.brand-cornerstone .cp-policy-section:last-child{border:0;padding-bottom:0}.brand-cornerstone .cp-policy-section h2{font-size:27px!important}
.brand-cornerstone .cp-estimate-page .bp-wrap{max-width:900px}.brand-cornerstone .cp-estimate-page>.bp-wrap>.bp-heading{text-align:center}
.brand-cornerstone .cp-contact-grid{align-items:start;gap:64px}.brand-cornerstone .cp-contact-copy{gap:24px}.brand-cornerstone .cp-contact-detail{gap:8px;padding-top:24px;border-top:1px solid #d9d5cf}.brand-cornerstone .cp-contact-detail h3{font-size:18px!important}.brand-cornerstone .cp-contact-copy h1{font-size:42px!important}
.brand-cornerstone .cp-contact-form input:not([type=radio]):not([type=checkbox]),.brand-cornerstone .cp-contact-form textarea{border:1px solid #d8d6d2!important;background:#faf9f7!important;border-radius:3px!important;padding:12px!important;font-size:16px!important}
.brand-cornerstone .cp-footer{background:#0a0a0a;padding-block:48px 28px!important}.brand-cornerstone .cp-footer-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:36px}.brand-cornerstone .cp-footer-brand{gap:16px;width:auto}.brand-cornerstone .cp-footer-brand .bp-copy{color:#ccc;font-size:14px}.brand-cornerstone .cp-footer-logo{width:156px}.brand-cornerstone .cp-footer-logo img{height:104px;object-fit:contain}.brand-cornerstone .cp-footer-links{width:auto;align-items:flex-end;gap:24px}.brand-cornerstone .cp-footer-links .bp-copy{font-size:15px;color:#777}.brand-cornerstone .cp-footer-links a{color:#ddd;text-decoration:none;margin:0 8px}.brand-cornerstone .cp-footer-links a:hover{color:#ff8a32}.brand-cornerstone .cp-social-icon{width:26px;height:26px}.brand-cornerstone .cp-social-icon img{width:26px;height:26px}.brand-cornerstone .cp-copyright{border-top:1px solid #ffffff22;padding-top:24px;font-size:12px;color:#999}
@media(max-width:1100px){.brand-cornerstone .cp-split,.brand-cornerstone .cp-about-intro,.brand-cornerstone .cp-contact-grid{gap:36px}.brand-cornerstone .cp-hero-photo{height:440px}.brand-cornerstone .cp-estimate-grid{grid-template-columns:1fr!important}.brand-cornerstone .cp-contact-copy h1{font-size:34px!important}.brand-cornerstone .bp-grid-3{gap:20px}.brand-cornerstone .bp-card{padding:24px}.brand-cornerstone .cp-home-copy{max-width:680px}}
@media(max-width:767px){.brand-cornerstone .bp-section{padding:56px 22px!important}.brand-cornerstone .bp-wrap{gap:30px}.brand-cornerstone .cp-home-hero{min-height:650px;padding-block:72px!important}.brand-cornerstone .cp-home-hero:after{background:linear-gradient(90deg,#090909e8,#09090980)}.brand-cornerstone .cp-home-copy{gap:24px}.brand-cornerstone .cp-home-copy h1{font-size:36px!important}.brand-cornerstone .cp-home-copy .bp-copy{font-size:17px}.brand-cornerstone .cp-home-copy .bp-eyebrow{font-size:11px}.brand-cornerstone .cp-home-copy .cp-actions{gap:12px}.brand-cornerstone .bp-button .elementor-button{font-size:13px;padding:16px 20px}.brand-cornerstone .cp-page-hero .bp-heading h1{font-size:30px!important}.brand-cornerstone .cp-hero-photo{height:330px}.brand-cornerstone .cp-warranty .bp-grid{grid-template-columns:1fr 1fr!important;gap:16px}.brand-cornerstone .cp-warranty-stat h2{font-size:31px!important}.brand-cornerstone .cp-warranty-stat h3{font-size:11px!important}.brand-cornerstone .cp-warranty-stat+div{padding-left:16px}.brand-cornerstone .cp-compare{aspect-ratio:4/5}.cp-label{top:12px;padding:6px 10px;font-size:12px}.cp-label-before{left:12px}.cp-label-after{right:12px}.brand-cornerstone .cp-form-card,.brand-cornerstone .cp-estimate-aside{padding:22px}.brand-cornerstone .cp-process-grid .bp-card{padding:28px}.brand-cornerstone .cp-color-card{padding:28px}.brand-cornerstone .cp-project-photo{height:280px}.brand-cornerstone .cp-footer-row{flex-direction:column;align-items:flex-start}.brand-cornerstone .cp-footer-links{align-items:flex-start}.brand-cornerstone .cp-footer-links a{margin:0 4px}.brand-cornerstone .bp-corner-logo img{height:68px!important;width:102px!important}.brand-cornerstone .bp-corner-logo{width:102px!important}.brand-cornerstone .cp-policy-section h2{font-size:23px!important}.brand-cornerstone .cp-cta .bp-intro{text-align:center;align-items:center}}
