.cv-space-card{position:relative;cursor:pointer}.cv-space-card .elementor-widget-heading,.cv-space-card .elementor-widget-heading .elementor-widget-container{position:static}.cv-space-card .elementor-heading-title a::after{content:"";position:absolute;inset:0;z-index:1}.cv-space-card .elementor-widget-text-editor a{position:relative;z-index:2}.cv-space-card:hover .elementor-heading-title a,.cv-space-card:focus-within .elementor-heading-title a{text-decoration:underline}@media (max-width:921px){#ast-mobile-header .ast-header-html-1 p{margin:0}#ast-mobile-header .ast-mobile-header-content .ast-header-html-2{padding:15px 20px 18px}#ast-mobile-header .ast-mobile-header-content .cv-langs{display:inline-block}}.cv-home-contact .cv-home-kicker .elementor-heading-title{margin:0 0 8px;color:#168f7e;font-size:12px;font-weight:700;line-height:1.3;letter-spacing:.13em}.cv-home-contact .cv-home-benefits .elementor-icon-list-icon i{color:#0c8272;font-size:17px}.cv-detail-contact .cv-detail-location-copy{margin-top:14px}.cv-detail-contact .cv-detail-location-copy p{margin:0;color:#49616a;font-size:16px;line-height:1.55}.cv-detail-contact .cv-detail-location-copy ul{display:grid;gap:13px;list-style:none;margin:24px 0 0;padding:0}.cv-detail-contact .cv-detail-location-copy li{position:relative;min-height:38px;padding:6px 0 6px 50px;color:#102b3a;font-size:15px;line-height:1.45}.cv-detail-contact .cv-detail-location-copy li::before{content:"✓";position:absolute;left:0;top:0;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#def1e9;color:#0c8272;font-size:18px;font-weight:700}.cv-detail-contact .cv-detail-location-copy li strong{font-weight:700}.cv-detail-contact .cv-detail-location-copy p:last-child:not(:first-child){position:relative;margin-top:22px;padding:15px 16px 15px 49px;border-radius:13px;background:#e3f2eb;color:#104c45;font-size:14px;line-height:1.5}.cv-detail-contact .cv-detail-location-copy p:last-child:not(:first-child)::before{content:"↗";position:absolute;left:17px;top:13px;color:#0e8171;font-size:23px;line-height:1}.cv-detail-more>.e-con-inner{max-width:1000px}.cv-detail-more .elementor-widget-heading .elementor-heading-title{color:#102b3a;font-size:clamp(24px,2.3vw,30px);line-height:1.2}.cv-detail-more .elementor-widget-text-editor p{color:#49616a;font-size:16px;line-height:1.6}.cv-detail-more .elementor-widget-video{width:100%;max-width:760px}.cv-city-detail{background:#fff;padding:clamp(52px,6vw,88px) 24px}.cv-city-detail .elementor-widget-html{width:100%}.cv-city-detail__inner{max-width:1120px;margin:0 auto;color:#102b3a}.cv-city-detail__eyebrow{display:block;margin-bottom:13px;color:#148d7d;font-weight:700;font-size:13px;letter-spacing:.1em}.cv-city-detail h2{font-size:clamp(29px,3vw,39px)!important;line-height:1.2;margin:0 0 20px;color:#102b3a}.cv-city-detail p{font-size:17px;line-height:1.65;color:#49616a;margin:0 0 20px;max-width:780px}.cv-city-detail__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.cv-city-detail__grid article{padding:27px;background:#f2f8f5;border:1px solid #dcebe4;border-radius:18px}.cv-city-detail__grid h3{font-size:20px!important;margin:0 0 12px;color:#102b3a}.cv-city-detail__grid p{font-size:16px;margin:0}.cv-city-detail .cv-city-detail__service{max-width:none;padding:16px 20px;background:#e5f4ec;border-radius:13px;color:#0b6559;font-size:15px}@media (max-width:767px){.cv-city-detail{padding:48px 18px}.cv-city-detail__grid{grid-template-columns:1fr}.cv-city-detail p{font-size:16px}}.cv-roof-compare{padding:76px 24px 24px;background:#f4f8f6;align-items:center}.cv-roof-compare>.e-con-inner{max-width:1160px}.cv-roof-compare .cv-roof-intro-title,.cv-roof-compare .cv-roof-intro-copy{width:100%;max-width:900px;text-align:center}.cv-roof-compare .cv-roof-intro-title .elementor-heading-title{color:#173647;font-size:clamp(30px,3vw,42px);font-weight:700;line-height:1.16}.cv-roof-compare .cv-roof-intro-copy{margin:13px auto 34px}.cv-roof-compare .cv-roof-intro-copy p{margin:0;color:#526670;font-size:17px;line-height:1.65}.cv-roof-compare .cv-roof-cards{width:100%;max-width:1160px;gap:22px;align-items:stretch}.cv-roof-compare .cv-roof-card{overflow:hidden;flex:1 1 0;width:calc(50% - 11px);padding:26px;background:#fff;border:1px solid #d9e9e3;border-radius:20px;box-shadow:0 14px 36px rgba(21,67,66,.07);align-items:stretch}.cv-roof-compare .cv-roof-card .elementor-widget-heading .elementor-heading-title{color:#173647;font-size:clamp(23px,2.1vw,29px);font-weight:700;line-height:1.2}.cv-roof-compare .cv-roof-card .elementor-widget-image{margin:15px 0 20px}.cv-roof-compare .cv-roof-card .elementor-widget-image img{display:block;width:100%;height:260px;object-fit:cover;border-radius:12px}.cv-roof-compare .cv-roof-card-copy{color:#344f58;font-size:15px;line-height:1.58}.cv-roof-compare .cv-roof-card-copy p{margin:0 0 15px}.cv-roof-compare .cv-roof-card-copy .cv-roof-label{display:inline-block;margin:0 0 14px;padding:6px 12px;border-radius:50px;background:#e4f3ec;color:#0d756b;font-size:13px;font-weight:700;line-height:1.35}.cv-roof-compare .cv-roof-card-copy .cv-roof-list-title{margin:18px 0 9px;color:#173647;font-weight:700}.cv-roof-compare .cv-roof-card-copy ul{list-style:none;margin:0 0 18px;padding:0}.cv-roof-compare .cv-roof-card-copy li{position:relative;margin:0 0 10px;padding-left:26px}.cv-roof-compare .cv-roof-card-copy li:before{content:"✓";position:absolute;left:0;top:0;color:#0d8875;font-weight:700}.cv-roof-compare .cv-roof-card-copy .cv-roof-note{margin:19px 0 0;padding:15px 17px;border-left:3px solid #1b9583;border-radius:0 9px 9px 0;background:#f1f8f5;color:#34515a;font-size:14px}.cv-roof-compare .cv-roof-decision{width:100%;max-width:1160px;margin:24px auto 0;padding:17px 21px;border:1px solid #cce5da;border-radius:12px;background:#e8f5ee;color:#28534e;font-size:15px;line-height:1.55}.cv-roof-compare .cv-roof-decision p{margin:0}.cv-roof-cta{padding:36px 24px 72px!important;background:#f4f8f6;align-items:center;text-align:center}.cv-roof-cta .elementor-widget-heading,.cv-roof-cta .elementor-widget-text-editor,.cv-roof-cta .elementor-widget-button{width:100%;max-width:820px}.cv-roof-cta .elementor-widget-heading .elementor-widget-container{background:0 0!important}.cv-roof-cta .elementor-widget-heading .elementor-heading-title{display:block;padding:0!important;background:0 0!important;color:#173647!important;font-size:clamp(27px,2.6vw,36px);font-weight:700;line-height:1.22}.cv-roof-cta .elementor-widget-text-editor{margin:12px auto 23px;color:#526670;font-size:16px;line-height:1.6}.cv-roof-cta .elementor-widget-text-editor p{margin:0}.cv-roof-cta .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 25px;border-radius:11px;background:#168b77!important;color:#fff!important;font-size:16px;font-weight:700;line-height:1.3;box-shadow:0 10px 22px rgba(16,119,101,.2);transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.cv-roof-cta .elementor-button:hover,.cv-roof-cta .elementor-button:focus-visible{background:#0d6f60!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 13px 26px rgba(16,119,101,.25)}@media (max-width:767px){.cv-roof-compare{padding:48px 16px 16px}.cv-roof-compare .cv-roof-intro-copy{margin-bottom:26px}.cv-roof-compare .cv-roof-intro-copy p{font-size:16px}.cv-roof-compare .cv-roof-cards{flex-direction:column;gap:16px}.cv-roof-compare .cv-roof-card{width:100%;padding:18px;border-radius:16px}.cv-roof-compare .cv-roof-card .elementor-widget-image img{height:210px}.cv-roof-compare .cv-roof-decision{margin-top:18px;padding:15px 16px}.cv-roof-cta{padding:26px 16px 88px!important}.cv-roof-cta .elementor-button{width:100%}}@media (prefers-reduced-motion:reduce){.cv-roof-cta .elementor-button{transition:none}}.cv-roof-compare .cv-roof-card{flex-direction:column!important}@media (max-width:767px){.cv-roof-compare .cv-roof-card{flex:0 0 auto!important}}.cv-pergola-zoom-gallery .elementor-widget-image a{display:block;position:relative;cursor:zoom-in}.cv-pergola-zoom-gallery .elementor-widget-image a:after{content:"+";position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.93);color:#116f62;font-size:28px;font-weight:400;line-height:1;box-shadow:0 3px 12px rgba(0,0,0,.2);pointer-events:none}.cv-pergola-zoom-gallery .elementor-widget-image a:hover:after,.cv-pergola-zoom-gallery .elementor-widget-image a:focus-visible:after{background:#fff;transform:scale(1.06)}.cv-pergola-zoom-gallery .elementor-widget-image a:focus-visible{outline:3px solid #0a806e;outline-offset:4px}.cv-projects-teaser{padding:48px 24px 56px;align-items:center;text-align:center;background:#f0f8f4;gap:0}.cv-projects-teaser-pergola{padding:28px 24px 50px;background:#d6f4d9}.cv-projects-teaser .elementor-widget-heading,.cv-projects-teaser .elementor-widget-text-editor,.cv-projects-teaser .elementor-widget-button{width:100%;max-width:850px}.cv-projects-teaser .elementor-widget-heading .elementor-heading-title{margin:0;color:#173647;font-size:clamp(26px,2.5vw,34px);font-weight:700;line-height:1.2}.cv-projects-teaser .elementor-widget-text-editor{margin:12px auto 22px;color:#4a6268;font-size:16px;line-height:1.6}.cv-projects-teaser .elementor-widget-text-editor p{margin:0}.cv-projects-teaser .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 24px;border-radius:10px;background:#168b77!important;color:#fff!important;font-size:16px;font-weight:700;line-height:1.3;box-shadow:0 8px 19px rgba(16,119,101,.18);transition:background .2s ease,transform .2s ease}.cv-projects-teaser .elementor-button:hover,.cv-projects-teaser .elementor-button:focus-visible{background:#0d6f60!important;color:#fff!important;transform:translateY(-2px)}@media (max-width:767px){.cv-projects-teaser{padding:36px 18px 44px}.cv-projects-teaser-pergola{padding:22px 18px 38px}.cv-projects-teaser .elementor-button{width:100%}}@media (prefers-reduced-motion:reduce){.cv-projects-teaser .elementor-button,.cv-pergola-zoom-gallery .elementor-widget-image a:after{transition:none}}.cv-projects-teaser-pergola .elementor-widget-button{margin-top:20px}