@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/archivo-vietnamese-wght-normal.3cb37nm8mowb2.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/archivo-latin-ext-wght-normal.3m-fabn93du09.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/archivo-latin-wght-normal.1_q0qa17ptz5n.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-cyrillic-ext-wght-normal.2sud5ad24ntvb.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-cyrillic-wght-normal.1e6e0rham8pp2.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-greek-ext-wght-normal.1mgpja6wa-4e1.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-greek-wght-normal.1c4wnqk-7ijaf.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-vietnamese-wght-normal.1i10uqw9gdkrc.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-latin-ext-wght-normal.0a7y0o51m8fzd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-tight-latin-wght-normal.1_fsb17gxmapx.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#fbfaf7;--white:#fff;--ink:#252620;--muted:#5a5b52;--brand:#eb9b39;--logo-gold:#f4ac4d;--brand-ink:#eb9b39;--line:#e5e2db;--font-sans:"Inter Tight Variable", system-ui, sans-serif;--font-display:"Archivo Variable", "Inter Tight Variable", system-ui, sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:480}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:5px;outline:3px solid #92602d}::selection{color:var(--ink);background:#efd3b3}.skip-link{z-index:5;background:var(--ink);color:#fff;padding:14px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}.site-header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1600px;min-height:84px;margin:auto;padding:8px 48px;display:flex}.brand{flex-shrink:0;display:block}.brand img{width:176px;height:auto;display:block}.header-area{color:var(--muted);align-items:center;gap:9px;font-size:13px;font-weight:550;display:flex}.header-area svg{color:#c2801f}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-quote{background:var(--ink);color:#fff;letter-spacing:-.005em;white-space:nowrap;border:0;border-radius:7px;min-height:50px;padding:0 28px;font-size:15.5px;font-weight:650;transition:background .2s}.header-quote:hover{background:#48483d}.hero{max-width:1600px;margin:auto;padding:76px 48px 65px}.hero-grid{grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);grid-template-areas:"reviews carousel""title carousel""subtitle carousel""actions carousel""benefits carousel";align-items:start;column-gap:66px;display:grid}.reviews{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:7px;grid-area:reviews;justify-self:start;align-items:center;gap:8px;width:fit-content;max-width:100%;min-height:44px;margin:0 0 25px;padding:9px 18px;display:flex}.google-mark{flex-shrink:0;width:23px;height:23px;margin-right:3px}.stars{color:#ffbc29;gap:4px;margin-right:3px;display:flex}.stars svg{width:18px;height:18px}.reviews strong{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:700}.review-count{color:var(--muted);font-size:13px;font-weight:500}h1{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;text-align:left;grid-area:title;margin:0;font-size:clamp(40px,3.9vw,53px);font-weight:760;line-height:1.08}h1 span{color:var(--brand-ink)}h1 .hero-title-mobile{color:inherit;display:none}h1 .hero-title-desktop{color:inherit}.hero-subtitle{color:#4f5148;grid-area:subtitle;max-width:560px;margin:24px 0 30px;font-size:19.5px;font-weight:470;line-height:1.62}.hero-actions{grid-area:actions;align-items:stretch;gap:10px;display:flex}.button{letter-spacing:-.01em;white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:12px;min-height:58px;padding:0 26px;font-size:15px;font-weight:650;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.button-primary{background:var(--brand);color:#27241e}.button-primary:hover{background:var(--logo-gold);transform:translateY(-2px)}.button-call{background:0 0;border-color:#cfcbc1;gap:10px;padding:0 20px}.button-call:hover{background:#f0ece4;border-color:#b9b3a7}.button-call strong{font-weight:720}.button-call strong,.closing-cta-phone strong,.phone-number{word-spacing:.3em}.hero-actions .button{font-size:16.5px}.mobile-sticky-cta{display:none}@media (max-width:800px){.roofing-main{padding-bottom:calc(73px + env(safe-area-inset-bottom,0px))}.mobile-sticky-cta:not([hidden]){z-index:4;padding:12px max(16px, env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));border-top:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid;position:fixed;inset:auto 0 0}.mobile-sticky-cta .button{gap:8px;min-width:0;min-height:48px;padding:0 10px;font-size:16px}}.call-separator{color:#aaa396;margin:0 4px}.hero-benefits{grid-area:benefits;grid-template-columns:minmax(0,1fr);gap:17px;margin:32px 0 0;padding:0;list-style:none;display:grid}.hero-benefits li{color:#55574e;align-items:flex-start;gap:13px;font-size:16px;font-weight:460;line-height:1.58;display:flex}.hero-benefits strong{color:var(--ink);font-weight:680}.hero-benefits svg{stroke-width:1.7px;width:28px;height:28px;color:var(--brand);flex-shrink:0;margin-top:2px}.project-carousel{grid-area:carousel;align-self:center;min-width:0}.project-image{aspect-ratio:1200/1240;touch-action:pan-y;background:#22231b;border-radius:12px;position:relative;overflow:hidden}.roof-photo{object-fit:cover}.image-count{color:#fff;font-family:var(--font-display);background:#17180fb8;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;position:absolute;top:18px;right:18px}.image-count span{color:#b7b3a6;font-weight:450}.carousel-footer{justify-content:space-between;align-items:center;gap:16px;padding-top:14px;display:flex}.carousel-thumbs{flex-wrap:wrap;gap:9px;min-width:0;display:flex}.carousel-thumb{opacity:.55;background:#e9e6de;border:0;border-radius:7px;width:68px;height:52px;padding:0;transition:opacity .2s,box-shadow .2s;display:block;position:relative;overflow:hidden}.thumb-photo{object-fit:cover;width:100%;height:100%}.carousel-thumb:hover{opacity:.85}.carousel-thumb.is-active{opacity:1;box-shadow:0 0 0 2px var(--brand)}.carousel-arrows{flex-shrink:0;gap:7px;display:flex}.carousel-arrows button{width:38px;height:38px;color:var(--ink);background:0 0;border:1px solid #d9d6ce;border-radius:50%;place-items:center;transition:background .2s;display:grid}.carousel-arrows button:hover{background:var(--brand);border-color:var(--brand)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.quote-dialog{background:var(--paper);width:min(520px,100% - 32px);max-height:calc(100dvh - 40px);color:var(--ink);border:0;border-radius:14px;padding:0}.quote-dialog::backdrop{background:#1617138c}.quote-content{padding:36px;position:relative}.dialog-close{width:40px;height:40px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:13px;right:13px}.dialog-close:hover{background:#eee7dc}.quote-heading{align-items:center;gap:14px;margin-bottom:28px;padding-right:20px;display:flex}.form-icon{background:#f3e3ce;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.quote-content h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:28px;font-weight:730;line-height:1.16}form label{flex-direction:column;gap:8px;margin-bottom:17px;font-size:13.5px;font-weight:620;display:flex}input,textarea{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #d6d2c8;border-radius:5px;padding:12px;font-size:14px}input::placeholder,textarea::placeholder{color:#77756d}textarea{resize:vertical}.form-row{grid-template-columns:1.2fr 1fr;gap:14px;display:grid}.form-submit{width:100%}.form-submit:disabled{cursor:wait;opacity:.7;transform:none}.form-status{color:var(--muted);background:#efe6d9;border-radius:5px;padding:13px;font-size:12.5px;line-height:1.7}.form-status a{text-decoration:underline}.form-note{color:var(--muted);margin:-6px 0 16px;font-size:12.5px;font-weight:520}.required-mark{color:#b3261e;margin-left:3px;font-weight:700}.field-label{align-items:baseline;display:inline-flex}.field-error{color:#fff;letter-spacing:-.005em;background:#b3261e;border-radius:5px;align-self:flex-start;max-width:100%;margin-top:-2px;padding:7px 11px;font-size:12px;font-weight:560;line-height:1.45;animation:.18s ease-out settle;position:relative}.field-error:before{content:"";background:inherit;border-radius:2px;width:10px;height:10px;position:absolute;top:-5px;left:14px;transform:rotate(45deg)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#b3261e;box-shadow:0 0 0 1px #b3261e}@keyframes settle{0%{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (min-width:801px){.hero-grid{grid-template-rows:repeat(4,min-content) 1fr}.hero-subtitle{margin:16px 0 20px}.hero-benefits{margin-top:20px}.reviews{gap:9px;min-height:48px;margin-bottom:16px;padding:10px 20px}.reviews .google-mark{width:25px;height:25px}.reviews .stars svg{width:22px;height:22px}.reviews strong{font-size:19px}.reviews .review-count{font-size:14px}}@media (min-width:1440px){.hero{padding-top:94px}}@media (min-width:801px) and (max-width:1100px){.header-inner{padding-inline:28px}.hero{padding:52px 28px}.hero-grid{column-gap:30px}h1{font-size:44px}.hero-actions{flex-wrap:wrap}.hero-benefits{grid-template-columns:1fr;gap:12px}}@media (max-width:800px){.header-inner{gap:10px;min-height:56px;padding:5px 18px}.brand img{width:112px}.header-actions{gap:4px}.header-quote{min-height:36px;padding-inline:15px;font-size:12.5px}.header-area{display:none}.hero{max-width:620px;padding:30px 22px 42px}.hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"reviews""title""carousel""actions""subtitle""benefits"}.reviews{justify-self:center;gap:7px;min-height:40px;margin-bottom:16px;padding:8px 14px}.google-mark{width:21px;height:21px;margin-right:2px}.stars{gap:3px;margin-right:2px}.stars svg{width:18px;height:18px}.reviews strong{font-size:16.5px}.review-count{font-size:12.5px}h1{letter-spacing:-.03em;text-align:center;font-size:clamp(32px,7vw,42px);line-height:1.1}h1 .hero-title-mobile{display:inline}h1 .hero-title-desktop{display:none}.project-carousel{margin:27px 0 22px;position:relative}.carousel-footer{pointer-events:none;padding-top:0;position:absolute;inset:0 10px}.carousel-thumbs{display:none}.carousel-arrows{justify-content:space-between;width:100%}.carousel-arrows button{background:var(--paper);pointer-events:auto;width:44px;height:44px}.hero-actions{flex-direction:column;gap:10px}.button{min-height:56px;font-size:15px}.hero-actions .button{font-size:20px}.hero-subtitle{max-width:none;margin:22px 0 20px;font-size:17.5px;line-height:1.6}.hero-benefits{grid-template-columns:minmax(0,1fr);gap:16px;margin:0}.hero-benefits li{font-size:15.5px;line-height:1.58}.form-row{grid-template-columns:1fr;gap:0}.quote-content h2{font-size:18px}.quote-heading{gap:12px;margin-bottom:22px}.form-icon{border-radius:10px;width:42px;height:42px}}@media (max-width:370px){.header-inner{padding-inline:16px}.brand img{width:100px}.hero{padding-inline:18px}.reviews{gap:6px;padding-inline:11px}.stars svg{width:17px;height:17px}h1{font-size:31px}.hero-benefits{gap:12px}.carousel-thumb{width:50px;height:38px}.quote-content{padding:30px 22px}.quote-content h2{font-size:17px}}.accreditation-strip{background:var(--ink);color:var(--white);border-block:1px solid #3b3c35;overflow:hidden}.accreditation-inner{grid-template-columns:minmax(260px,.76fr) minmax(0,2.2fr);align-items:center;gap:42px;max-width:1600px;min-height:126px;margin:auto;padding:14px 48px;display:grid}.accreditation-intro{align-items:center;gap:14px;min-width:0;display:flex}.accreditation-seal{width:50px;height:50px;color:var(--brand);flex:0 0 50px;place-items:center;display:grid}.accreditation-seal svg{width:48px;height:48px}.accreditation-intro p{gap:4px;margin:0;display:grid}.accreditation-intro strong{font-family:var(--font-display);letter-spacing:-.015em;font-size:17px;font-weight:700}.accreditation-intro p span{color:#c5c3b9;white-space:nowrap;font-size:12.5px;font-weight:470}.accreditation-list{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;margin:0;padding:0;list-style:none;display:grid}.accreditation-list li{border-left:1px solid #45463e;justify-content:center;align-items:center;min-width:0;height:96px;padding:3px 20px;display:flex}.accreditation-list img{object-fit:contain;width:auto;max-width:100%;display:block}.accreditation-logo-wide{filter:brightness(0)invert();opacity:.94;height:35px}.accreditation-logo-trustmark{height:31px}.accreditation-logo-badge{height:92px}@media (min-width:801px) and (max-width:1100px){.accreditation-inner{gap:22px;padding-inline:28px}.accreditation-intro p span{display:none}.accreditation-list li{padding-inline:13px}.accreditation-logo-wide{height:29px}.accreditation-logo-trustmark{height:26px}.accreditation-logo-badge{height:82px}}@media (max-width:800px){.accreditation-inner{max-width:620px;min-height:0;padding:20px 22px 18px;display:block}.accreditation-intro{justify-content:center;padding-bottom:17px}.accreditation-seal{flex-basis:46px;width:46px;height:46px}.accreditation-seal svg{width:44px;height:44px}.accreditation-intro strong{font-size:16px}.accreditation-intro p span{font-size:12px}.accreditation-list{border-top:1px solid #45463e;grid-template-columns:repeat(2,minmax(0,1fr))}.accreditation-list li{border-bottom:1px solid #45463e;border-left:0;height:100px;padding:6px 14px}.accreditation-list li:nth-child(2n){border-left:1px solid #45463e}.accreditation-list li:nth-child(n+3){border-bottom:0}.accreditation-logo-wide{height:32px}.accreditation-logo-trustmark{height:28px}.accreditation-logo-badge{height:92px}}@media (max-width:370px){.accreditation-inner{padding-inline:18px}.accreditation-list li{padding-inline:10px}}.transformations{background:var(--white);border-top:1px solid var(--line)}.transformations-inner{max-width:1600px;margin:auto;padding:78px 48px 70px}.transformations-heading{text-align:center;margin-bottom:36px}.transformations-heading h2{max-width:860px;font-family:var(--font-display);letter-spacing:-.032em;text-wrap:balance;margin:0 auto;font-size:clamp(32px,3.2vw,45px);font-weight:740;line-height:1.14}.transformations-heading h2 span{color:var(--brand-ink)}.transformation-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.transformation-card{min-width:0}.transformation-image{aspect-ratio:900/685;background:#22231b;border-radius:12px;position:relative;overflow:hidden}.transformation-photo{object-fit:cover}.transformation-card h3{font-family:var(--font-display);letter-spacing:-.022em;text-wrap:balance;margin:20px 0 0;font-size:20px;font-weight:720;line-height:1.24}.transformations-footer{justify-content:center;align-items:center;gap:12px;margin-top:46px;display:flex}.button-whatsapp{color:#10321d;background:#25d366}.button-whatsapp:hover{background:#1fbf5a;transform:translateY(-2px)}.button-whatsapp svg{width:22px;height:22px}@media (min-width:801px) and (max-width:1100px){.transformations-inner{padding:60px 28px 52px}.transformation-cards{gap:16px}.transformation-card h3{font-size:18px}}@media (max-width:800px){.transformations-inner{max-width:620px;padding:48px 22px 44px}.transformations-heading{margin-bottom:26px}.transformations-heading h2{font-size:clamp(30px,6.5vw,38px)}.transformation-cards{grid-template-columns:minmax(0,1fr);gap:30px}.transformation-card{flex-direction:column;display:flex}.transformation-card h3{order:-1;margin:0 0 18px;font-size:19px}.transformations-footer{flex-direction:column;gap:10px;margin-top:32px}.transformations-footer .button{width:100%}}@media (max-width:370px){.transformations-inner{padding-inline:18px}}.customer-reviews{border-top:1px solid var(--line);background:#f3f0e9}.customer-reviews-inner{max-width:1600px;margin:auto;padding:78px 48px 58px}.customer-reviews-heading{text-align:center;flex-direction:column;align-items:center;margin-bottom:36px;display:flex}.customer-reviews-heading h2{max-width:20ch;font-family:var(--font-display);letter-spacing:-.032em;text-wrap:balance;margin:0;font-size:clamp(32px,3.2vw,45px);font-weight:740;line-height:1.14}.customer-reviews-heading h2 span{color:var(--brand-ink)}.reviews-heading-eyebrow{align-items:center;gap:14px;margin-bottom:19px;display:flex}.reviews-heading-mark{flex-shrink:0;width:31px;height:31px}.reviews-heading-stars{color:#efad20;gap:5px;display:flex}.review-cards{touch-action:pan-y;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.review-card{background:var(--white);border:1px solid var(--line);border-radius:14px;flex-direction:column;min-width:0;margin:0;padding:30px 28px 24px;animation:.3s ease-out settle;display:flex}.review-card-stars{color:#efad20;gap:4px;margin-bottom:20px;display:flex}.review-card blockquote{flex:1;margin:0 0 28px}.review-card blockquote p{color:#4b4d45;margin:0;font-size:15px;font-weight:470;line-height:1.8}.review-card blockquote strong{color:var(--ink);font-weight:680}.review-card figcaption{border-top:1px solid #eeece6;align-items:center;gap:12px;padding-top:20px;display:flex}.review-avatar{object-fit:cover;background:#f3e5d3;border-radius:50%;flex-shrink:0;width:42px;height:42px}.review-person{flex-direction:column;gap:4px;display:flex}.review-person strong{font-family:var(--font-display);font-size:14px;font-weight:700}.review-person>span{color:var(--muted);font-size:12.5px}.review-card .google-mark{width:21px;height:21px;margin:0 0 0 auto}.review-carousel-footer{justify-content:center;align-items:center;gap:24px;margin-top:24px;display:flex}.review-navigation{flex-shrink:0;align-items:center;gap:12px;display:flex}.review-arrow{width:44px;height:44px;color:var(--ink);background:0 0;border:1px solid #d5d0c5;border-radius:50%;place-items:center;padding:0;transition:background .2s,border-color .2s;display:grid}.review-arrow:hover{background:var(--brand);border-color:var(--brand)}.review-page-count{min-width:62px;color:var(--ink);font-family:var(--font-display);text-align:center;font-variant-numeric:tabular-nums;margin:0;font-size:14px;font-weight:700}.review-page-count span{color:#b1aa9c;margin:0 2px;font-weight:500}.reviews-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:801px) and (max-width:1100px){.customer-reviews-inner{padding:60px 28px 44px}.review-cards{gap:14px}.review-card{padding:24px 20px 20px}}@media (max-width:800px){.customer-reviews-inner{max-width:620px;padding:48px 22px 38px}.customer-reviews-heading{margin-bottom:26px}.customer-reviews-heading h2{font-size:clamp(30px,6.5vw,38px)}.reviews-heading-eyebrow{gap:12px;margin-bottom:16px}.reviews-heading-mark{width:27px;height:27px}.reviews-heading-stars svg{width:24px;height:24px}.review-cards{grid-template-columns:minmax(0,1fr);gap:16px}.review-card{padding:25px 24px 22px}.review-card-stars{margin-bottom:16px}.review-card blockquote{margin-bottom:22px}.review-card blockquote p{line-height:1.85}.review-card figcaption{padding-top:18px}.review-carousel-footer{margin-top:22px}}@media (max-width:370px){.customer-reviews-inner{padding-inline:18px}.review-card{padding-inline:20px}}.services{background:var(--paper);border-top:1px solid var(--line)}.services-inner{max-width:1600px;margin:auto;padding:78px 48px 70px}.services-heading{text-align:center;margin-bottom:42px}.services-heading h2{max-width:860px;font-family:var(--font-display);letter-spacing:-.032em;text-wrap:balance;margin:0 auto;font-size:clamp(32px,3.2vw,45px);font-weight:740;line-height:1.14}.services-heading h2 span{color:var(--brand-ink)}.service-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.service-card{background:var(--white);border:1px solid var(--line);border-radius:14px;min-width:0;padding:28px 28px 30px;transition:border-color .2s,transform .2s}.service-card:hover{border-color:#d8cdba;transform:translateY(-3px)}.service-card-head{border-bottom:1px solid #eeece6;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:20px;display:flex}.service-icon{background:var(--brand);width:62px;height:62px;-webkit-mask:var(--icon) center / contain no-repeat;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat;flex-shrink:0}.service-card h3{font-family:var(--font-display);letter-spacing:-.028em;text-wrap:balance;margin:0;font-size:26px;font-weight:730;line-height:1.2}.service-points{gap:14px;margin:0;padding:0;list-style:none;display:grid}.service-points li{color:#4b4d45;align-items:flex-start;gap:12px;font-size:15px;font-weight:470;line-height:1.55;display:flex}.service-point-icon{width:24px;height:24px;color:var(--brand);stroke-width:1.7px;flex-shrink:0;margin-top:1px}.services-footer{justify-content:center;margin-top:42px;display:flex}@media (min-width:801px) and (max-width:1100px){.services-inner{padding:60px 28px 52px}.services-heading{margin-bottom:30px}.service-cards{gap:14px}.service-card{padding:22px 20px 24px}.service-card-head{gap:12px;margin-bottom:17px;padding-bottom:17px}.service-icon{width:52px;height:52px}.service-card h3{font-size:22px}.service-points{gap:12px}.service-points li{gap:10px;font-size:14.5px}.service-point-icon{width:22px;height:22px}.services-footer{margin-top:34px}}@media (max-width:800px){.services-inner{max-width:620px;padding:48px 22px 44px}.services-heading{margin-bottom:28px}.services-heading h2{font-size:clamp(30px,6.5vw,38px)}.service-cards{grid-template-columns:minmax(0,1fr);gap:16px}.service-card{padding:24px 24px 26px}.service-card-head{gap:13px;margin-bottom:18px;padding-bottom:18px}.service-icon{width:56px;height:56px}.service-card h3{font-size:24px}.service-points{gap:13px}.service-points li{font-size:15px;line-height:1.6}.services-footer{margin-top:32px}.services-footer .button{width:100%}}@media (max-width:370px){.services-inner{padding-inline:18px}.service-card{padding-inline:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.questions{background:var(--white);border-top:1px solid var(--line)}.questions-inner{max-width:1600px;margin:auto;padding:78px 48px 76px}.questions-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:start;column-gap:66px;display:grid}.questions-column{min-width:0}.questions-heading{margin-bottom:34px}.questions-eyebrow{color:#8a7a5f;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:18px;font-size:12.5px;font-weight:650;display:inline-flex}.questions-eyebrow i{background:var(--brand);border-radius:50%;width:7px;height:7px}.questions-heading h2{font-family:var(--font-display);letter-spacing:-.032em;text-wrap:balance;margin:0;font-size:clamp(32px,3.2vw,45px);font-weight:740;line-height:1.14}.questions-heading h2 span{color:var(--brand-ink)}.question-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.question-item{border-bottom:1px solid var(--line)}.question-item h3{font:inherit;margin:0}.question-item button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;align-items:flex-start;gap:20px;padding:26px 0;transition:color .2s;display:flex}.question-item button:hover{color:#8a5f1c}.question-number{font-family:var(--font-display);color:#b1aa9c;font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:3px;font-size:14px;font-weight:700;transition:color .2s}.question-item.is-open .question-number{color:var(--brand)}.question-text{font-family:var(--font-display);letter-spacing:-.024em;text-wrap:balance;flex:1;font-size:20.5px;font-weight:700;line-height:1.34}.question-toggle{width:38px;height:38px;color:var(--ink);border:1px solid #d5d0c5;border-radius:50%;flex-shrink:0;place-items:center;margin-top:-3px;transition:background .2s,border-color .2s;display:grid}.question-item button:hover .question-toggle{background:#f7f2e9;border-color:#c6bda9}.question-item.is-open .question-toggle{background:var(--brand);border-color:var(--brand);color:#27241e}.question-answer{grid-template-rows:0fr;transition:grid-template-rows .32s;display:grid}.question-item.is-open .question-answer{grid-template-rows:1fr}.question-answer>div{overflow:hidden}.question-answer p{color:#4b4d45;margin:0;padding:0 66px 28px 34px;font-size:16px;font-weight:470;line-height:1.75}.questions-footer{align-items:stretch;gap:10px;margin-top:38px;display:flex}.questions-panel{min-width:0;position:sticky;top:28px}.questions-panel figure{margin:0}.question-mobile-media{display:none}.questions-image{aspect-ratio:4/3;background:#22231b;border-radius:14px;position:relative;overflow:hidden}.questions-photo{object-fit:cover}.questions-panel figcaption,.question-mobile-media figcaption{color:var(--muted);align-items:center;gap:11px;margin-top:18px;font-size:14.5px;font-weight:500;line-height:1.5;display:flex}.questions-panel figcaption i,.question-mobile-media figcaption i{background:var(--brand);border-radius:50%;flex-shrink:0;width:7px;height:7px}@media (min-width:801px) and (max-width:1100px){.questions-inner{padding:60px 28px 58px}.questions-grid{column-gap:34px}.questions-heading{margin-bottom:26px}.question-item button{gap:14px;padding:22px 0}.question-text{font-size:18px}.question-answer p{padding:0 14px 24px 28px;font-size:15px}.questions-footer{flex-direction:column;margin-top:30px}}@media (max-width:800px){.questions-inner{max-width:620px;padding:48px 22px}.questions-grid{grid-template-columns:minmax(0,1fr)}.questions-heading{margin-bottom:24px}.questions-eyebrow{display:none}.questions-heading h2{text-align:center;font-size:clamp(30px,6.5vw,38px)}.questions-panel{display:none}.question-mobile-media{margin:0 0 22px;display:block}.question-number{display:none}.question-item button{gap:15px;padding:22px 0}.question-text{font-size:18.5px}.question-toggle{width:34px;height:34px}.question-answer p{padding:0 0 24px;font-size:15.5px;line-height:1.78}.questions-footer{flex-direction:column;gap:10px;margin-top:30px}.questions-footer .button{width:100%}}@media (max-width:370px){.questions-inner{padding-inline:18px}.question-item button{gap:12px}.question-answer p{padding-left:0}}.roofing-projects{background:var(--paper);border-top:1px solid var(--line);--project-icon-fill:#f8e4c9}.roofing-projects-inner{max-width:1600px;margin:auto;padding:80px 48px}.roofing-projects-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px;display:flex}.roofing-projects-heading h2{font-family:var(--font-display);letter-spacing:-.032em;margin:0;font-size:clamp(32px,3.2vw,45px);font-weight:740;line-height:1.14}.roofing-projects-heading h2 span{color:var(--brand-ink)}.roofing-projects-heading>p{color:var(--muted);margin:0 0 3px;font-size:17px;line-height:1.6}.roofing-projects-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:34px 24px;display:grid}.roofing-project{grid-column:span 4;min-width:0}.roofing-project:first-child{grid-column:span 5}.roofing-project:nth-child(2){grid-column:span 7}.roofing-project-open{border:1px solid var(--brand);width:100%;color:inherit;text-align:left;background:0 0;border-radius:12px;padding:0;display:block}.roofing-project-open .roofing-project-cover{border-radius:10px 10px 0 0}.roofing-project-cover{background:#e5e2db;border-radius:12px;height:clamp(220px,22vw,335px);position:relative;overflow:hidden}.roofing-project:nth-child(-n+2) .roofing-project-cover{height:clamp(280px,30vw,445px)}.roofing-project-cover>img{object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1)}.roofing-project-open:hover .roofing-project-cover>img{transform:scale(1.035)}.roofing-project-count{background:var(--paper);border-radius:6px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:650;display:flex;position:absolute;bottom:16px;left:16px}.roofing-project-expand{border:2px solid var(--brand);background:var(--paper);border-radius:50%;place-items:center;width:38px;height:38px;transition:background .2s;display:grid;position:absolute;bottom:16px;right:16px}.roofing-project-open:hover .roofing-project-expand{background:var(--brand)}.roofing-project-caption{align-items:center;gap:13px;padding:17px 14px;display:flex}.roofing-project-icon{color:#865820;flex-shrink:0;width:42px;height:42px;display:block}.roofing-project-icon svg{width:100%;height:100%}.roofing-project-caption h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 4px;font-size:21px;font-weight:680}.roofing-project-caption p{color:var(--muted);margin:0;font-size:15px;line-height:1.4}.project-viewer{background:var(--paper);width:min(1060px,100% - 40px);max-width:none;max-height:calc(100dvh - 32px);color:var(--ink);border:0;border-radius:12px;padding:0}.project-viewer::backdrop{background:#0f110edb}.project-viewer-inner{grid-template-rows:auto minmax(100px,1fr) auto auto;grid-template-columns:minmax(0,1fr);height:min(920px,100dvh - 32px);padding:20px;display:grid}.project-viewer-inner>*{min-width:0}.project-viewer-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.project-viewer-header h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 4px;font-size:24px}.project-viewer-header p{color:var(--muted);margin:0;font-size:15px}.project-viewer-header>button,.project-viewer-arrows button{border:1px solid var(--line);width:44px;height:44px;color:inherit;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.project-viewer-header>button:hover,.project-viewer-arrows button:hover{background:var(--brand)}.project-viewer-photo{touch-action:pan-y;background:#eae7e0;border-radius:6px;min-height:0;position:relative;overflow:hidden}.project-viewer-photo img{object-fit:contain}.project-viewer-footer{justify-content:space-between;align-items:center;gap:20px;padding-top:16px;display:flex}.project-viewer-footer>p{font-variant-numeric:tabular-nums;min-width:42px;margin:0;font-size:15px;font-weight:650}.project-viewer-footer>p span{color:var(--muted);font-weight:450}.project-viewer-thumbs{overscroll-behavior-x:contain;scrollbar-width:none;gap:8px;min-width:0;padding:5px;display:flex;overflow-x:auto}.project-viewer-thumbs::-webkit-scrollbar{display:none}.project-viewer-thumbs button{opacity:.5;border:0;border-radius:4px;flex-shrink:0;width:56px;height:44px;padding:0;position:relative;overflow:hidden}.project-viewer-thumbs button[aria-current],.project-viewer-thumbs button:hover{opacity:1}.project-viewer-thumbs button[aria-current]{outline-offset:2px;outline:2px solid #a56116}.project-viewer-thumbs img{object-fit:cover}.project-viewer-arrows{gap:8px;display:flex}.project-viewer-actions{border-top:1px solid var(--line);justify-content:center;gap:10px;margin-top:16px;padding-top:16px;display:flex}.project-viewer-actions .button{min-height:48px;font-size:15px}.project-viewer-actions .button-primary{min-width:210px}.project-viewer-actions .button-call{min-width:140px}@media (max-width:1000px){.roofing-projects-inner{padding:64px 30px}.roofing-projects-heading{flex-direction:column;align-items:flex-start;gap:18px}.roofing-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roofing-project:nth-child(n){grid-column:span 1}.roofing-project:nth-child(n) .roofing-project-cover{height:290px}}@media (max-width:600px){.roofing-projects-inner{padding:48px 22px}.roofing-projects-heading{text-align:center;align-items:center;gap:16px;margin-bottom:28px}.roofing-projects-heading h2{font-size:clamp(30px,7vw,38px)}.roofing-projects-heading>p{font-size:16px}.roofing-projects-grid{grid-template-columns:minmax(0,1fr);gap:28px}.roofing-project:nth-child(n){grid-column:auto}.roofing-project:nth-child(n) .roofing-project-cover{aspect-ratio:4/3;height:auto}.roofing-project-caption{padding-top:13px}.roofing-project-caption h3{font-size:20px}.project-viewer{width:calc(100% - 20px);max-height:calc(100dvh - 24px)}.project-viewer-inner{grid-template-rows:auto auto auto auto;height:auto;max-height:calc(100dvh - 24px);padding:14px}.project-viewer-header{gap:12px;margin-bottom:12px}.project-viewer-header h3{font-size:19px}.project-viewer-header p{font-size:14px}.project-viewer-header>button{width:40px;height:40px}.project-viewer-photo{aspect-ratio:4/3;touch-action:pan-y pinch-zoom;max-height:calc(100dvh - 300px)}.project-viewer-footer{flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:10px}.project-viewer-footer>p{min-width:0;font-size:14px}.project-viewer-thumbs{touch-action:pan-x;-webkit-overflow-scrolling:touch;order:3;justify-content:flex-start;gap:7px;width:100%;max-width:100%;padding:4px 2px;scroll-padding-inline:2px}.project-viewer-thumbs button{width:62px;height:48px}.project-viewer-arrows button{width:40px;height:40px}.project-viewer-actions{grid-template-columns:1.5fr 1fr;gap:8px;margin-top:12px;padding-top:12px;display:grid}.project-viewer-actions .button{gap:6px;min-width:0;padding-inline:8px;font-size:17px}.project-viewer-actions{grid-template-columns:1.6fr 1fr}}.closing-cta{background:var(--ink);color:var(--paper)}.closing-cta-inner{justify-content:space-between;align-items:center;gap:64px;max-width:1600px;margin:auto;padding:78px 100px 82px 48px;display:flex}.closing-cta-copy h2{font-family:var(--font-display);letter-spacing:-.032em;margin:0;font-size:clamp(40px,4.2vw,60px);font-weight:740;line-height:1.08}.closing-cta-copy h2 span{color:var(--brand)}.closing-cta-copy>p{color:#d0d0c6;margin:23px 0 0;font-size:18px;line-height:1.65}.closing-cta-actions{flex-direction:column;flex-shrink:0;align-items:center;gap:26px;display:flex}.closing-cta-actions>.button{justify-content:space-between;min-width:280px;min-height:62px;font-size:16px}.closing-cta-call{background:var(--white);border-color:var(--white);color:var(--ink);justify-content:center}.closing-cta-call>svg{width:22px;height:22px;color:var(--brand)}.closing-cta-call:hover{background:#efece4;border-color:#efece4}.closing-cta-call .call-separator{color:#8d8e80}.closing-cta :is(button,a):focus-visible{outline-color:var(--logo-gold)}@media (max-width:1000px){.closing-cta-inner{gap:36px;padding:64px 30px}.closing-cta-actions>.button{min-width:250px}}@media (max-width:700px){.closing-cta-inner{text-align:center;flex-direction:column;align-items:stretch;gap:30px;padding:52px 22px}.closing-cta-copy h2{font-size:clamp(38px,9vw,52px)}.closing-cta-copy>p{margin-top:19px;font-size:16px}.closing-cta-actions{align-items:stretch;gap:24px}.closing-cta-actions>.button{justify-content:center;width:100%;min-width:0;font-size:17.5px;position:relative}.closing-cta-actions>.button-primary>svg{position:absolute;right:18px}}
