.roofing_root__faBNJ{--ink:#0b1622;--ink-2:#12202e;--ink-3:#5a6674;--ink-deep:#070e16;--body:#45515d;--paper:#ffffff;--tint:#f5f4ef;--tint-2:#ebe9e2;--line:#e4e2db;--line-dark:rgba(255,255,255,0.1);--muted-on-dark:rgba(255,255,255,0.68);--accent:#f3c94b;--accent-hover:#f7d76f;--accent-soft:#fdf6df;--whatsapp:#25d366;--display:var(--font-archivo),"Archivo",system-ui,sans-serif;--text:var(--font-inter),"Inter",system-ui,sans-serif;--gutter:clamp(16px,4vw,40px);--wrap:1240px;--sec:clamp(64px,9vw,128px);--r-sm:10px;--r:18px;--r-lg:28px;--sh-1:0 1px 2px rgba(11,22,34,0.05),0 8px 24px rgba(11,22,34,0.06);--sh-2:0 2px 6px rgba(11,22,34,0.06),0 24px 60px rgba(11,22,34,0.12);--sh-3:0 4px 12px rgba(11,22,34,0.08),0 40px 100px rgba(11,22,34,0.2);--rule:var(--line);--header-h:64px;--sticky-h:var(--header-h);position:relative;min-height:100vh;background:var(--paper);color:var(--body);font-family:var(--text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}.roofing_root__faBNJ a{color:inherit;text-decoration:none}.roofing_root__faBNJ h1,.roofing_root__faBNJ h2,.roofing_root__faBNJ h3,.roofing_root__faBNJ h4{color:var(--ink)}.roofing_root__faBNJ :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.roofing_inlineIcon__8knOd{display:block;flex-shrink:0}.roofing_stickyTop__BcjsL{position:sticky;top:0;z-index:50}.roofing_header___MD6r{position:relative;background:rgba(11,22,34,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line-dark);color:#fff}.roofing_headerInner__HLWGG{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--wrap);height:var(--header-h);margin:0 auto;padding:0 var(--gutter)}.roofing_brand__ikNS_{display:inline-flex;align-items:center;gap:10px;min-width:0;font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.roofing_brandName__CcJgy{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.roofing_brandMark__WnjfK{display:grid;flex-shrink:0;place-items:center;width:34px;height:34px;border-radius:var(--r-sm);background:var(--accent);color:var(--ink);font-size:1.05rem}.roofing_brandLogo__verfq{flex-shrink:0;height:44px;width:auto;max-width:140px;object-fit:contain}.roofing_navLinks__fmd8S{display:none}.roofing_headerActions__te9Zm{display:flex;flex-shrink:0;align-items:center;gap:6px}.roofing_headerPhone__MhhNG{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line-dark);border-radius:var(--r-sm)}.roofing_headerCta__ndRJE,.roofing_headerPhone__MhhNG span{display:none!important}.roofing_menuToggle__uTR21{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:var(--r-sm);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.roofing_menuSheet__TD6by{position:absolute;top:100%;right:0;left:0;display:flex;flex-direction:column;justify-content:space-between;gap:24px;height:calc(100dvh - var(--header-h));padding:12px var(--gutter) calc(24px + env(safe-area-inset-bottom));overflow-y:auto;background:var(--ink)}.roofing_menuSheet__TD6by[hidden]{display:none}.roofing_menuList__cgQfn{margin:0;padding:0;list-style:none}.roofing_menuList__cgQfn a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line-dark);font-family:var(--display);font-weight:600;font-size:1.5rem;letter-spacing:-.02em}.roofing_menuList__cgQfn a svg{color:var(--muted-on-dark)}.roofing_menuList__cgQfn a[aria-current=page]{color:var(--accent)}.roofing_menuActions__KJhgZ{display:grid;gap:10px}.roofing_btn__daKX3{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:1px solid transparent;border-radius:var(--r-sm);font-family:var(--text);font-size:.95rem;font-weight:600;line-height:1.2;text-align:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.roofing_btnSm__gQ9CK{min-height:42px;padding:0 18px;font-size:.88rem}.roofing_btnLg__hcyOm{min-height:56px;padding:0 28px}.roofing_root__faBNJ .roofing_btnAccent__ZSj80{background:var(--accent);color:var(--ink)}.roofing_root__faBNJ .roofing_btnAccent__ZSj80:hover{background:var(--accent-hover)}.roofing_root__faBNJ .roofing_btnDark__cGfjG{background:var(--ink);color:#fff}.roofing_root__faBNJ .roofing_btnDark__cGfjG:hover{background:var(--ink-2)}.roofing_root__faBNJ .roofing_btnGlass__W2QU_{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.roofing_root__faBNJ .roofing_btnGlass__W2QU_:hover{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.14)}.roofing_root__faBNJ .roofing_btnInkOutline__Tyuvm{border-color:var(--ink);color:var(--ink)}.roofing_root__faBNJ .roofing_btnInkOutline__Tyuvm:hover{background:var(--ink);color:#fff}.roofing_root__faBNJ .roofing_btnWhatsApp___gsG1{background:var(--whatsapp);color:#062b14}.roofing_root__faBNJ .roofing_btnWhatsApp___gsG1:hover{background:#3ee07c}.roofing_btnArrow__BeKEP{transition:transform .2s ease}.roofing_btn__daKX3:hover .roofing_btnArrow__BeKEP{transform:translateX(3px)}.roofing_textLink__BMQO_{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--ink);text-decoration:underline!important;text-decoration-color:var(--accent)!important;text-decoration-thickness:2px!important;text-underline-offset:5px}.roofing_sectionDark__S_GPt .roofing_textLink__BMQO_{color:#fff}.roofing_eyebrowDark__fsqq0,.roofing_eyebrow__IQyvf{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.roofing_eyebrowDark__fsqq0:before,.roofing_eyebrow__IQyvf:before{content:"";width:22px;height:2px;background:currentColor}.roofing_eyebrowDark__fsqq0{color:var(--ink-3)}.roofing_eyebrowDark__fsqq0:before{background:var(--accent)}.roofing_calcTitle__9McEl,.roofing_ctaTitle__gRjBL,.roofing_heroTitle__afzWY,.roofing_pageTitle__0Xo5r,.roofing_sectionTitle__mzFQ4{margin:0;font-family:var(--display);font-weight:600;letter-spacing:-.028em;line-height:1.04;text-wrap:balance}.roofing_ctaTitle__gRjBL em,.roofing_heroTitle__afzWY em,.roofing_pageTitle__0Xo5r em,.roofing_sectionDark__S_GPt .roofing_sectionTitle__mzFQ4 em{font-style:normal;color:var(--accent)}.roofing_calcTitle__9McEl em,.roofing_sectionTitle__mzFQ4 em{font-style:normal;color:var(--ink-3)}.roofing_heroTitle__afzWY{max-width:14ch;font-size:clamp(2.35rem,9.5vw,4.9rem);color:#fff!important}.roofing_pageTitle__0Xo5r{max-width:16ch;font-size:clamp(2.2rem,8.5vw,4.2rem);color:#fff!important}.roofing_sectionTitle__mzFQ4{max-width:20ch;font-size:clamp(1.9rem,6.5vw,3.3rem)}.roofing_heroLead__lTy2_{max-width:54ch;margin:18px 0 0;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.65;color:rgba(255,255,255,.86)}.roofing_sectionLead__ngMB0{max-width:56ch;margin:16px 0 0;font-size:1.02rem;line-height:1.7}.roofing_prose__1gAmk p{margin:0 0 16px;font-size:1.05rem;line-height:1.75}.roofing_hero__mG96m,.roofing_pageHero__zJ1yv{position:relative;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;background:var(--ink);color:#fff}.roofing_hero__mG96m{min-height:88svh}.roofing_pageHero__zJ1yv{min-height:62svh}.roofing_heroImage__ZomLh{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.roofing_heroImage__ZomLh[data-state]{opacity:0;transition:opacity 1.4s ease;will-change:opacity,transform}.roofing_heroImage__ZomLh[data-state=active]{opacity:1}.roofing_heroImage__ZomLh[data-state=active],.roofing_heroImage__ZomLh[data-state=leaving]{animation:roofing_heroZoom__JjbkI 13s linear forwards}@keyframes roofing_heroZoom__JjbkI{0%{transform:scale(1)}to{transform:scale(1.12)}}.roofing_heroShade__3LeWj{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,22,34,.62),rgba(11,22,34,.72) 40%,rgba(11,22,34,.92) 78%,rgba(11,22,34,.98))}.roofing_heroInner__zxD4y,.roofing_pageHeroInner__hDwQB{width:100%;max-width:var(--wrap);margin:0 auto;padding:56px var(--gutter) 40px}.roofing_breadcrumbs__UtH6B{margin-bottom:20px;color:rgba(255,255,255,.78);font-size:.82rem}.roofing_breadcrumbs__UtH6B ol{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0;padding:0;list-style:none}.roofing_breadcrumbs__UtH6B li+li:before{content:"/";margin-right:7px;color:rgba(255,255,255,.55)}.roofing_breadcrumbs__UtH6B a{color:inherit;text-decoration:underline;text-underline-offset:3px}.roofing_breadcrumbs__UtH6B [aria-current=page]{color:#fff}.roofing_heroInner__zxD4y{padding-bottom:104px}.roofing_root__faBNJ .roofing_heroBadge__R_Br2{display:inline-flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:22px;padding:7px 14px 7px 9px;border-radius:999px;background:#fff;color:var(--ink);font-size:.8rem;box-shadow:var(--sh-2)}.roofing_heroBadge__R_Br2>span:last-child{color:var(--ink-3)}.roofing_stars__UrPO_{display:inline-flex;gap:2px;color:#fbbc04}.roofing_heroActions__aewPc{display:grid;gap:10px;margin-top:28px}.roofing_heroTrust__hilEp{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none}.roofing_heroTrust__hilEp li{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);font-size:.78rem;font-weight:500}.roofing_heroTrust__hilEp svg{color:var(--accent)}.roofing_estimateHero__VmhFB{background:var(--ink);color:#fff}.roofing_estimateHeroInner__IdiRP{max-width:var(--wrap);margin:0 auto;padding:48px var(--gutter) 104px}.roofing_estimateTicks__obVZw{display:flex;flex-wrap:wrap;gap:8px 18px;margin:20px 0 0;padding:0;list-style:none;font-size:.9rem;color:var(--muted-on-dark)}.roofing_estimateTicks__obVZw li{display:inline-flex;align-items:center;gap:7px}.roofing_estimateTicks__obVZw svg{color:var(--accent)}.roofing_section__HBTIh{max-width:var(--wrap);margin:0 auto;padding:var(--sec) var(--gutter)}.roofing_sectionDark__S_GPt,.roofing_sectionTint__kqXGz{max-width:none;padding-left:max(var(--gutter),calc((100% - var(--wrap)) / 2 + var(--gutter)));padding-right:max(var(--gutter),calc((100% - var(--wrap)) / 2 + var(--gutter)))}.roofing_sectionDark__S_GPt{--rule:var(--line-dark);background:var(--ink);color:var(--muted-on-dark)}.roofing_root__faBNJ .roofing_sectionDark__S_GPt h1,.roofing_root__faBNJ .roofing_sectionDark__S_GPt h2,.roofing_root__faBNJ .roofing_sectionDark__S_GPt h3{color:#fff}.roofing_sectionTint__kqXGz{background:var(--tint)}.roofing_sectionHead__dAL1v{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 32px;margin-bottom:36px}.roofing_serviceGrid__bHM30{display:grid;gap:12px}.roofing_serviceCard__9DcY6{display:flex;flex-direction:column;gap:10px;padding:26px 24px 28px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);scroll-margin-top:calc(var(--sticky-h) + 16px);transition:box-shadow .25s ease,border-color .25s ease}.roofing_serviceCard__9DcY6:hover{border-color:transparent;box-shadow:var(--sh-2)}.roofing_serviceIcon__1vFBw{display:grid;place-items:center;width:46px;height:46px;margin-bottom:8px;border-radius:12px;background:var(--ink);color:var(--accent)}.roofing_serviceCard__9DcY6 h3{margin:0;font-family:var(--display);font-weight:600;font-size:1.25rem;letter-spacing:-.015em}.roofing_serviceCard__9DcY6 p{margin:0;font-size:.95rem;line-height:1.65}.roofing_serviceCard__9DcY6 .roofing_textLink__BMQO_{margin-top:auto;padding-top:10px;font-size:.92rem}.roofing_checkList__coFeW{display:grid;gap:8px;margin:8px 0 6px;padding:16px 0 0;border-top:1px solid var(--line);list-style:none;font-size:.9rem}.roofing_checkList__coFeW li,.roofing_standards__4r2gw li{display:flex;gap:10px}.roofing_checkList__coFeW svg,.roofing_standards__4r2gw svg{flex-shrink:0;margin-top:4px;color:var(--ink)}.roofing_split__O6mD1{display:grid;background:var(--tint)}.roofing_splitMedia__cDmUn{position:relative}.roofing_galleryItem__uX9JR:after,.roofing_splitMedia__cDmUn:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,22,34,.08),rgba(11,22,34,.3));pointer-events:none}.roofing_splitImage__kfNMw{display:block;width:100%;height:300px;object-fit:cover}.roofing_splitText__cpFJf{padding:var(--sec) var(--gutter)}.roofing_splitText__cpFJf>.roofing_textLink__BMQO_{margin-top:28px}.roofing_standards__4r2gw{display:grid;gap:0;margin:28px 0 0;padding:0;list-style:none}.roofing_standards__4r2gw li{padding:16px 0;border-top:1px solid var(--line);line-height:1.6}.roofing_standards__4r2gw strong{color:var(--ink)}.roofing_standards__4r2gw svg{width:20px;height:20px;margin-top:1px;padding:3px;border-radius:50%;background:var(--accent)}.roofing_aboutIntro__zsCfS{display:grid;gap:24px;margin-bottom:48px}.roofing_process__3on3H{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:step}.roofing_process__3on3H li{display:grid;gap:6px;padding:22px 0;border-top:1px solid var(--rule)}.roofing_process__3on3H strong{font-family:var(--display);font-weight:600;font-size:1.2rem;color:var(--ink)}.roofing_sectionDark__S_GPt .roofing_process__3on3H strong{color:#fff}.roofing_process__3on3H p{margin:0;font-size:.95rem}.roofing_processIndex__AnPkR{font-family:var(--display);font-weight:600;font-size:.85rem;color:var(--accent)}.roofing_stats__YcgL0{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:48px 0 0;padding:0;border-top:1px solid var(--rule);list-style:none}.roofing_stats__YcgL0 li{display:grid;gap:4px;padding:22px 16px 22px 0;border-bottom:1px solid var(--rule)}.roofing_stats__YcgL0 strong{font-family:var(--display);font-weight:600;font-size:clamp(2rem,7vw,3rem);line-height:1;letter-spacing:-.03em;color:var(--ink)}.roofing_sectionDark__S_GPt .roofing_stats__YcgL0 strong{color:var(--accent)}.roofing_stats__YcgL0 span{font-size:.85rem}.roofing_gallery___utKC{display:grid;grid-auto-flow:column;grid-auto-columns:84%;gap:10px;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--gutter);scrollbar-width:none}.roofing_gallery___utKC::-webkit-scrollbar{display:none}.roofing_galleryItem__uX9JR{position:relative;height:280px;margin:0;overflow:hidden;border-radius:var(--r);background:var(--tint-2);scroll-snap-align:start}.roofing_galleryItem__uX9JR img{width:100%;height:100%;object-fit:cover}.roofing_servicePhoto__YvA7X{margin:32px 0 0}.roofing_servicePhoto__YvA7X img{display:block;width:min(100%,560px);height:auto;border-radius:var(--r)}.roofing_reviewHead__MLoYC{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}.roofing_ratingChip__IBkme{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--line);border-radius:999px;font-size:.85rem}.roofing_ratingChip__IBkme strong{font-size:1.05rem;color:var(--ink)}.roofing_reviewGrid__HxeNj{display:grid;gap:12px;margin-bottom:28px}.roofing_review__H4Z_p{display:flex;flex-direction:column;gap:14px;margin:0;padding:24px;border-radius:var(--r);background:var(--tint)}.roofing_review__H4Z_p blockquote{display:-webkit-box;flex:1 1;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:7;line-clamp:7;line-height:1.65;white-space:pre-line;color:var(--ink)}.roofing_review__H4Z_p figcaption{display:flex;align-items:center;gap:12px;font-size:.9rem;font-weight:600;color:var(--ink)}.roofing_reviewAvatar__EgFwo,.roofing_review__H4Z_p figcaption img{flex-shrink:0;width:38px;height:38px;border-radius:50%;object-fit:cover}.roofing_reviewAvatar__EgFwo{display:grid;place-items:center;background:var(--ink);color:var(--accent)}.roofing_review__H4Z_p figcaption>span{display:grid;gap:1px}.roofing_review__H4Z_p small{font-weight:400;font-size:.78rem;color:var(--ink-3)}.roofing_towns__0oWIg{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:24px 0 0;padding:0;list-style:none}.roofing_caseStudy__2ME7x{display:grid;gap:28px;align-items:start}.roofing_caseStudyPhoto__Md_9a{position:relative;margin:0;overflow:hidden;border-radius:var(--r);aspect-ratio:4/3;background:var(--tint-2)}.roofing_caseStudyPhoto__Md_9a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,22,34,.08),rgba(11,22,34,.3))}.roofing_caseStudyPhoto__Md_9a img{display:block;width:100%;height:100%;object-fit:cover}.roofing_caseStudyMeta__x5mmb{display:flex;align-items:center;gap:6px;margin:12px 0 0;font-size:.9rem;color:var(--ink-3)}.roofing_caseStudySteps__5kgJQ{display:grid;gap:18px;margin:24px 0 0}.roofing_caseStudySteps__5kgJQ div{padding-left:16px;border-left:3px solid var(--accent)}.roofing_caseStudySteps__5kgJQ dt{margin-bottom:4px;font-weight:600;color:var(--ink)}.roofing_caseStudySteps__5kgJQ dd{margin:0;line-height:1.6}@media (min-width:960px){.roofing_caseStudy__2ME7x{grid-template-columns:5fr 7fr;gap:56px;align-items:center}}.roofing_serviceLinks__QFHQ0{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 24px;margin:24px 0 0;padding:0;list-style:none}.roofing_serviceLinks__QFHQ0 a{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:500;color:var(--ink)}.roofing_serviceLinks__QFHQ0 svg{flex-shrink:0;color:var(--ink)}.roofing_localGroupTitle__Plze7{margin:28px 0 0;font-size:1.1rem}.roofing_townCard__xC3Ce{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);font-size:.86rem;font-weight:500;line-height:1.25;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}.roofing_townCard__xC3Ce:hover{border-color:var(--ink);box-shadow:var(--sh-1)}.roofing_townCard__xC3Ce span{flex:1 1;min-width:0}.roofing_townCard__xC3Ce svg{flex-shrink:0;color:var(--ink-3)}.roofing_area__knLRx{display:grid;gap:40px;max-width:var(--wrap);margin:0 auto;padding:var(--sec) var(--gutter)}.roofing_areaActions__oS4Id{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:32px}.roofing_mapFrame__ZPeTK{position:relative;width:100%;aspect-ratio:1/1;max-height:600px;overflow:hidden;border-radius:var(--r-lg);background:var(--tint-2);box-shadow:var(--sh-2)}.roofing_mapIframe__9U6PQ{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none;filter:grayscale(.4) contrast(1.05)}.roofing_mapCircle__TNt2l{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:2px solid var(--ink);border-radius:50%;background:rgba(243,201,75,.22);pointer-events:none}.roofing_faqList__0Tfrr{max-width:880px;border-top:1px solid var(--line)}.roofing_faqItem__BWCyK{border-bottom:1px solid var(--line)}.roofing_faqItem__BWCyK summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;cursor:pointer;list-style:none;font-family:var(--display);font-weight:600;font-size:clamp(1.02rem,2vw,1.15rem);line-height:1.4;color:var(--ink)}.roofing_faqItem__BWCyK summary::-webkit-details-marker{display:none}.roofing_faqItem__BWCyK summary:after{content:"+";flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--tint);font-family:var(--text);font-weight:400;font-size:1.3rem}.roofing_sectionTint__kqXGz .roofing_faqItem__BWCyK summary:after{background:var(--paper)}.roofing_faqItem__BWCyK[open] summary:after{content:"–"}.roofing_faqItem__BWCyK>div{padding:0 0 24px;font-size:.97rem;line-height:1.75}.roofing_faqItem__BWCyK p{margin:0;max-width:64ch}.roofing_faqItem__BWCyK p+p{margin-top:12px}.roofing_faqItem__BWCyK a{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-weight:600;color:var(--ink);text-decoration:underline!important;text-underline-offset:4px}.roofing_ctaBand__URtQY{background:var(--accent);color:var(--ink)}.roofing_ctaBand__URtQY .roofing_eyebrow__IQyvf{color:var(--ink)}.roofing_ctaInner__vr_tB{display:grid;gap:28px;max-width:var(--wrap);margin:0 auto;padding:var(--sec) var(--gutter)}.roofing_ctaTitle__gRjBL{font-size:clamp(2rem,7vw,3.4rem)}.roofing_ctaLead__fjwCy{max-width:50ch;margin:16px 0 0}.roofing_ctaActions___ILNL{display:grid;gap:10px;align-content:end}.roofing_contact__uLQNC{display:grid;gap:40px}.roofing_contactLead__5ikMN{max-width:44ch;margin:18px 0 0;line-height:1.7}.roofing_contactList__H4sKg{display:grid;gap:0;margin:32px 0 0;padding:0;list-style:none}.roofing_contactList__H4sKg>li{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--line-dark);color:#fff}.roofing_contactList__H4sKg small{display:block;margin-bottom:2px;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-on-dark)}.roofing_contactList__H4sKg a{word-break:break-word}.roofing_contactList__H4sKg a:hover{color:var(--accent)}.roofing_contactIcon__I_PIa{display:grid;flex-shrink:0;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.07);color:var(--accent)}.roofing_hoursList__WAyi9{display:grid;gap:2px;margin:0;padding:0;list-style:none;font-size:.9rem;color:var(--muted-on-dark)}.roofing_formCard__Yt_RS{display:grid;gap:18px;align-self:start;padding:24px 20px;border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--sh-3)}.roofing_formTitle__IU1Xt{margin:0;font-family:var(--display);font-weight:600;font-size:1.5rem;letter-spacing:-.02em;color:var(--ink)}.roofing_root__faBNJ .roofing_formAside__sqEJq{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding-top:16px;border-top:1px solid var(--line);font-size:.88rem;color:var(--body)}.roofing_formAside__sqEJq strong{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:4px}.roofing_formRow__aE2qz,.roofing_form__1QRF3{display:grid;gap:14px}.roofing_field__8ycy2{display:grid;gap:7px;font-size:.8rem;font-weight:600;color:var(--ink)}.roofing_calcLeadFields__ftozy input,.roofing_field__8ycy2 input,.roofing_field__8ycy2 textarea{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--tint);color:var(--ink);font:inherit;font-size:16px;font-weight:400;outline:none;resize:vertical;transition:border-color .2s ease,background .2s ease}.roofing_calcLeadFields__ftozy input:focus,.roofing_field__8ycy2 input:focus,.roofing_field__8ycy2 select:focus,.roofing_field__8ycy2 textarea:focus{border-color:var(--ink);background:var(--paper)}.roofing_root__faBNJ .roofing_formCard__Yt_RS .roofing_formTitle__IU1Xt{color:var(--ink)}.roofing_field__8ycy2 select{width:100%;min-height:52px;padding:14px 44px 14px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%230b1622' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 16px center;color:var(--ink);font:inherit;font-size:16px;font-weight:400;outline:none;appearance:none}.roofing_optional__ejoP6{font-weight:400;color:var(--ink-3)}.roofing_honeypot__drCxo{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.roofing_formError__5yA3C,.roofing_formNote__3W3_q{margin:0;padding:12px 14px;border-radius:var(--r-sm);font-size:.9rem;line-height:1.45}.roofing_formError__5yA3C{background:#fdecea;color:#8a1c12}.roofing_formDone__Tnxw3,.roofing_formNote__3W3_q{background:#eaf6ee;color:#1d5a32}.roofing_formDone__Tnxw3{display:grid;gap:6px;padding:20px;border-radius:var(--r-sm)}.roofing_formDone__Tnxw3 strong{font-size:1.1rem;color:#12361f}.roofing_root__faBNJ button[disabled]{opacity:.7;cursor:progress}.roofing_calcSection__mfNMb{position:relative;z-index:2;max-width:var(--wrap);margin:var(--sec) auto 0;padding:0 var(--gutter);scroll-margin-top:calc(var(--sticky-h) + 12px)}.roofing_calcOverlap__0N1_e{margin-top:-72px}.roofing_calc__cXByK{display:grid;overflow:hidden;border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--sh-3);scroll-margin-top:calc(var(--sticky-h) + 12px)}.roofing_calcIntro__B9hPQ{padding:24px 20px 20px;background:var(--tint);border-bottom:1px solid var(--line)}.roofing_calcIntro__B9hPQ .roofing_eyebrowDark__fsqq0{margin-bottom:10px}.roofing_calcIntro__B9hPQ .roofing_eyebrowDark__fsqq0:before{display:none}.roofing_calcTitle__9McEl{font-size:clamp(1.6rem,6vw,2.5rem)}.roofing_calcLead__gTJJd{max-width:40ch;margin:10px 0 0;font-size:.92rem;line-height:1.55}.roofing_calcSteps__rpJxP{display:flex;gap:6px;margin:20px 0 0;padding:0;list-style:none}.roofing_calcSteps__rpJxP li{display:flex;flex:1 1;flex-direction:column;gap:8px;font-size:0;color:var(--ink-3)}.roofing_calcSteps__rpJxP li:before{content:"";height:4px;border-radius:999px;background:var(--tint-2)}.roofing_calcSteps__rpJxP li[data-state=done]:before{background:var(--ink)}.roofing_calcSteps__rpJxP li[data-state=current]:before{background:var(--accent)}.roofing_calcSteps__rpJxP li[data-state=current]{font-size:.78rem;font-weight:600;color:var(--ink)}.roofing_calcSteps__rpJxP li>span{display:none}.roofing_calcBody__Kv_5U{display:flex;flex-direction:column;padding:24px 20px}.roofing_calcPanel__bV6X_{display:grid;gap:22px;animation:roofing_calcIn__AHsde .3s ease both}@keyframes roofing_calcIn__AHsde{0%{opacity:0}}.roofing_calcQuestion__ugR8a{margin:0;font-family:var(--display);font-weight:600;font-size:1.3rem;letter-spacing:-.02em;line-height:1.2}.roofing_calcServices__qu1Qp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.roofing_calcExtra__0_LJo,.roofing_calcOption__mM66H,.roofing_calcPill__p6tHU,.roofing_calcService__PeKOG{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.roofing_calcExtra__0_LJo:hover,.roofing_calcOption__mM66H:hover,.roofing_calcPill__p6tHU:hover,.roofing_calcService__PeKOG:hover{border-color:var(--ink)}.roofing_calcService__PeKOG{display:grid;align-content:start;gap:3px;min-height:112px;padding:14px;border-radius:14px}.roofing_calcService__PeKOG svg{margin-bottom:8px;color:var(--ink)}.roofing_calcService__PeKOG strong{font-size:.95rem;line-height:1.25}.roofing_calcService__PeKOG span{font-size:.76rem;line-height:1.35;color:var(--ink-3)}.roofing_calcExtra__0_LJo[data-checked],.roofing_calcOption__mM66H[aria-pressed=true],.roofing_calcService__PeKOG[aria-pressed=true]{border-color:var(--ink);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--ink)}.roofing_calcOptions__6bi9e{display:grid;gap:8px}.roofing_calcOption__mM66H{display:flex;align-items:flex-start;gap:14px;padding:16px;border-radius:14px}.roofing_calcOption__mM66H strong{display:block;font-size:.97rem}.roofing_calcOption__mM66H small{display:block;margin-top:2px;font-size:.82rem;color:var(--ink-3)}.roofing_calcRadio___dBTb{flex-shrink:0;width:20px;height:20px;margin-top:1px;border:1.5px solid var(--line);border-radius:50%;background:var(--paper)}.roofing_calcOption__mM66H[aria-pressed=true] .roofing_calcRadio___dBTb{border:6px solid var(--ink)}.roofing_calcFieldset__DdVO0{margin:0;padding:0;border:0}.roofing_calcFieldset__DdVO0 legend{margin-bottom:10px;padding:0;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.roofing_calcPills__ZO8O3{display:flex;flex-wrap:wrap;gap:8px}.roofing_calcPill__p6tHU{min-height:44px;padding:0 16px;border-radius:999px;font-size:.9rem}.roofing_calcPill__p6tHU[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.roofing_calcExtras__L9tqf{display:grid;gap:8px}.roofing_calcExtra__0_LJo{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 16px;border-radius:12px;font-size:.93rem}.roofing_calcExtra__0_LJo input{position:absolute;opacity:0;pointer-events:none}.roofing_calcExtra__0_LJo:focus-within{outline:2px solid var(--accent);outline-offset:2px}.roofing_calcCheck__ZaWok{display:grid;flex-shrink:0;place-items:center;width:22px;height:22px;border:1.5px solid var(--line);border-radius:6px;color:transparent}.roofing_calcExtra__0_LJo[data-checked] .roofing_calcCheck__ZaWok{border-color:var(--ink);background:var(--ink);color:var(--accent)}.roofing_calcNav__uuaeI{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px}.roofing_calcBack__OqZBx,.roofing_calcLink__6Wrcu{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0;border:0;background:none;color:var(--ink-3);font:inherit;font-size:.9rem;cursor:pointer}.roofing_calcBack__OqZBx:hover,.roofing_calcLink__6Wrcu:hover{color:var(--ink)}.roofing_calcResultLabel__JBEN_{margin:0;font-size:.85rem;font-weight:600;color:var(--ink-3)}.roofing_calcRange__k7TBT{margin:-14px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(2.1rem,9vw,3.6rem);line-height:1.05;letter-spacing:-.03em;color:var(--ink)}.roofing_calcRange__k7TBT span{font-size:.45em;font-weight:500;color:var(--ink-3)}.roofing_calcBar__0vcil{position:relative;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--tint-2),var(--accent) 45%,var(--tint-2))}.roofing_calcBar__0vcil span{position:absolute;top:50%;width:20px;height:20px;border:4px solid var(--paper);border-radius:50%;background:var(--ink);box-shadow:0 2px 8px rgba(11,22,34,.3);transform:translate(-50%,-50%)}.roofing_calcBarMeta__j0Mfe{margin:-10px 0 0;font-size:.9rem}.roofing_calcBarMeta__j0Mfe strong{color:var(--ink)}.roofing_calcResultGrid__FW4cF{display:grid;gap:24px;padding-top:20px;border-top:1px solid var(--line)}.roofing_calcResultGrid__FW4cF h4{margin:0 0 10px;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)!important}.roofing_calcIncludes__pAK36,.roofing_calcLines__IGkrZ{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:.9rem}.roofing_calcLines__IGkrZ li{display:flex;justify-content:space-between;gap:12px;color:var(--ink)}.roofing_calcLines__IGkrZ li>span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink-3)}.roofing_calcIncludes__pAK36 li{display:flex;gap:8px}.roofing_calcIncludes__pAK36 svg{flex-shrink:0;margin-top:4px;color:var(--ink)}.roofing_calcDuration__H3f6j{display:inline-flex;align-items:center;gap:8px;margin:14px 0 0;font-size:.9rem;font-weight:600;color:var(--ink)}.roofing_calcCapture__Wt9mD{display:grid;gap:14px;padding:20px;border-radius:var(--r);background:var(--ink);color:var(--muted-on-dark)}.roofing_calcCapture__Wt9mD>div:first-child{display:grid;gap:4px}.roofing_calcCapture__Wt9mD>div:first-child strong{font-family:var(--display);font-weight:600;font-size:1.3rem;letter-spacing:-.02em;color:#fff}.roofing_calcCapture__Wt9mD>div:first-child span{font-size:.88rem}.roofing_calcLeadFields__ftozy{display:grid;gap:8px}.roofing_calcLeadFields__ftozy input{border-color:var(--line-dark);background:var(--ink-2);color:#fff}.roofing_calcLeadFields__ftozy input::placeholder{color:var(--muted-on-dark)}.roofing_calcLeadFields__ftozy input:focus{border-color:var(--accent);background:var(--ink-2)}.roofing_calcLeadActions__YM2Rs{display:grid;gap:8px}.roofing_calcSmall___8ejR{margin:0;font-size:.78rem;line-height:1.6;color:var(--ink-3)}.roofing_calcLink__6Wrcu{min-height:0;margin-left:6px;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.roofing_footer__zxjjT{padding:56px var(--gutter) calc(104px + env(safe-area-inset-bottom));background:var(--ink);color:var(--muted-on-dark);font-size:.92rem}.roofing_footerInner__8N1WB{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px;max-width:calc(var(--wrap) - 2 * var(--gutter));margin:0 auto}.roofing_footerAreas__APyXQ,.roofing_footerBrand__1WFGs{grid-column:1/-1}.roofing_footerAreas__APyXQ .roofing_footerList__FK7wj{grid-template-columns:repeat(2,minmax(0,1fr))}.roofing_footerBrand__1WFGs p{max-width:40ch;margin:0 0 20px}.roofing_footerLogo__XWH0I{display:block;height:64px;width:auto;margin-bottom:18px}.roofing_footerName__IAXAq{font-family:var(--display);font-weight:700;font-size:1.35rem;letter-spacing:-.02em;color:#fff}.roofing_footerHead__xtrzP{margin:0 0 14px;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff}.roofing_footerList__FK7wj{display:grid;gap:10px;margin:0;padding:0;list-style:none}.roofing_footerList__FK7wj li{display:flex;align-items:flex-start;gap:10px;word-break:break-word}.roofing_footerList__FK7wj svg{flex-shrink:0;margin-top:4px;color:var(--accent)}.roofing_footerList__FK7wj a:hover{color:#fff}.roofing_footerBase__69W4r{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;max-width:calc(var(--wrap) - 2 * var(--gutter));margin:40px auto 0;padding-top:24px;border-top:1px solid var(--line-dark);font-size:.8rem}.roofing_footerBase__69W4r a:hover{color:var(--accent)}.roofing_mobileBar__J9IGm{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;z-index:40;display:grid;grid-template-columns:1fr 54px 54px;gap:8px}.roofing_mobileEstimate__BvV5I,.roofing_mobileIcon__Ie8NA{display:flex;align-items:center;justify-content:center;gap:8px;height:54px;border-radius:14px;font-weight:600;box-shadow:0 16px 40px -12px rgba(11,22,34,.6)}.roofing_root__faBNJ .roofing_mobileEstimate__BvV5I{background:var(--accent);color:var(--ink)}.roofing_root__faBNJ .roofing_mobileIcon__Ie8NA{border:1px solid var(--line-dark);background:var(--ink);color:#fff}.roofing_root__faBNJ .roofing_mobileWhatsApp__Yltfw{background:var(--whatsapp);color:#062b14}@media (min-width:640px){.roofing_ctaActions___ILNL,.roofing_heroActions__aewPc{display:flex;flex-wrap:wrap}.roofing_process__3on3H,.roofing_reviewGrid__HxeNj,.roofing_serviceGrid__bHM30{grid-template-columns:repeat(2,minmax(0,1fr))}.roofing_process__3on3H{column-gap:32px}.roofing_stats__YcgL0{grid-template-columns:repeat(4,minmax(0,1fr))}.roofing_gallery___utKC{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px;margin:0;padding:0;overflow:visible}.roofing_galleryItem__uX9JR{height:auto}.roofing_galleryItem__uX9JR[data-wide]{grid-column:span 2;grid-row:span 2}.roofing_calcLeadFields__ftozy,.roofing_formRow__aE2qz{grid-template-columns:repeat(2,minmax(0,1fr))}.roofing_calcLeadFields__ftozy input:last-child{grid-column:span 2}.roofing_calcServices__qu1Qp{grid-template-columns:repeat(3,minmax(0,1fr))}.roofing_calcLeadActions__YM2Rs,.roofing_calcOptions__6bi9e,.roofing_calcResultGrid__FW4cF{grid-template-columns:repeat(2,minmax(0,1fr))}.roofing_formCard__Yt_RS{padding:32px}.roofing_splitImage__kfNMw{height:420px}}@media (min-width:960px){.roofing_root__faBNJ{--header-h:80px}.roofing_brand__ikNS_{font-size:1.2rem}.roofing_navLinks__fmd8S{display:flex;gap:28px;font-size:.9rem;font-weight:500;color:rgba(255,255,255,.75)}.roofing_navLinks__fmd8S a{padding:6px 0;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.roofing_navLinks__fmd8S a:hover{color:#fff}.roofing_navLinks__fmd8S a[aria-current=page]{border-color:var(--accent);color:#fff}.roofing_headerActions__te9Zm{gap:14px}.roofing_headerPhone__MhhNG{display:inline-flex;gap:8px;width:auto;height:auto;border:0;font-size:.9rem;font-weight:600}.roofing_headerPhone__MhhNG span{display:inline!important}.roofing_headerPhone__MhhNG svg{color:var(--accent)}.roofing_headerCta__ndRJE{display:inline-flex!important}.roofing_menuSheet__TD6by,.roofing_menuToggle__uTR21{display:none!important}.roofing_hero__mG96m{align-items:center;min-height:min(92vh,880px)}.roofing_heroShade__3LeWj{background:linear-gradient(90deg,rgba(11,22,34,.82),rgba(11,22,34,.55) 38%,rgba(11,22,34,.1) 70%,rgba(11,22,34,0)),linear-gradient(0deg,rgba(11,22,34,.7),rgba(11,22,34,0) 30%)}.roofing_heroInner__zxD4y{padding:96px var(--gutter) 168px}.roofing_pageHero__zJ1yv{min-height:520px}.roofing_pageHeroInner__hDwQB{padding:120px var(--gutter) 72px}.roofing_estimateHeroInner__IdiRP{padding:72px var(--gutter) 160px}.roofing_calcOverlap__0N1_e{margin-top:-112px}.roofing_calc__cXByK{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.roofing_calcIntro__B9hPQ{display:flex;flex-direction:column;padding:44px;border-right:1px solid var(--line);border-bottom:0}.roofing_calcLead__gTJJd{font-size:1rem}.roofing_calcSteps__rpJxP{display:grid;gap:4px;margin-top:auto;padding-top:32px}.roofing_calcSteps__rpJxP li{flex-direction:row;align-items:center;gap:12px;padding:8px 0;font-size:.9rem}.roofing_calcSteps__rpJxP li:before{display:none}.roofing_calcSteps__rpJxP li>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:.75rem;font-weight:600}.roofing_calcSteps__rpJxP li[data-state=current]{font-size:.9rem}.roofing_calcSteps__rpJxP li[data-state=current]>span{border-color:var(--ink);background:var(--accent);color:var(--ink)}.roofing_calcSteps__rpJxP li[data-state=done]>span{border-color:var(--ink);background:var(--ink);color:var(--accent)}.roofing_calcBody__Kv_5U{min-height:480px;padding:44px}.roofing_calcNav__uuaeI{margin-top:auto;padding-top:28px}.roofing_calcQuestion__ugR8a{font-size:1.6rem}.roofing_serviceGrid__bHM30{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.roofing_serviceCard__9DcY6{padding:32px 30px 34px}.roofing_split__O6mD1{grid-template-columns:1fr 1fr}.roofing_splitImage__kfNMw{height:100%;min-height:560px}.roofing_splitText__cpFJf{align-self:center;max-width:640px;padding:var(--sec) clamp(40px,6vw,88px)}.roofing_aboutIntro__zsCfS{grid-template-columns:1fr 1fr;gap:64px}.roofing_process__3on3H{grid-template-columns:repeat(4,minmax(0,1fr))}.roofing_process__3on3H li{padding-right:12px}.roofing_gallery___utKC{grid-auto-rows:250px;gap:14px}.roofing_gallery___utKC,.roofing_reviewGrid__HxeNj{grid-template-columns:repeat(3,minmax(0,1fr))}.roofing_area__knLRx{grid-template-columns:.9fr 1.1fr;align-items:center;gap:72px}.roofing_areaNoMap__I9SjU{grid-template-columns:1fr}.roofing_contact__uLQNC{grid-template-columns:1fr 1fr;gap:72px}.roofing_formCard__Yt_RS{padding:40px}.roofing_ctaInner__vr_tB{grid-template-columns:1.3fr 1fr;align-items:end;gap:64px}.roofing_ctaActions___ILNL{justify-content:flex-end}.roofing_footer__zxjjT{padding:80px var(--gutter) 32px}.roofing_footerInner__8N1WB{grid-template-columns:1.7fr 1fr 1.3fr 1fr;gap:48px}.roofing_footerAreas__APyXQ,.roofing_footerBrand__1WFGs{grid-column:auto}.roofing_footerAreas__APyXQ .roofing_footerList__FK7wj{grid-template-columns:minmax(0,1fr)}.roofing_mobileBar__J9IGm{display:none}}@media (prefers-reduced-motion:reduce){.roofing_calcPanel__bV6X_,.roofing_heroImage__ZomLh[data-state]{animation:none}.roofing_btnArrow__BeKEP{transition:none}}