.gs-hero{align-items:center;padding-top:144px;padding-bottom:4rem;display:flex;position:relative;overflow:hidden}.gs-hero:before{content:"";z-index:0;background:url(/images/hero.jpg) 100% 100%/auto 100% no-repeat;position:absolute;inset:0;mask-image:linear-gradient(90deg,#0000 30%,#000 60%)}.gs-hero-overlay{z-index:1;background:linear-gradient(to right, var(--secondary) 0%, var(--secondary) 40%, #1a252fe6 55%, #1a252f99 75%, #1a252f66 100%);position:absolute;inset:0}.gs-hero-content{z-index:2;max-width:720px;position:relative}.gs-hero-content h1{color:#fff;margin-bottom:1.25rem}.gs-hero-content h1 .highlight{color:var(--primary);-webkit-text-fill-color:var(--primary)}.gs-hero-content .subtitle{color:#fffc;max-width:600px;margin-bottom:2rem;font-size:1.15rem;line-height:1.75}.gs-price-block{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.gs-price-amount{font-family:var(--font-display);color:#fff;letter-spacing:-.02em;font-size:3rem;font-weight:700;line-height:1}.gs-price-amount span{color:#fff9;letter-spacing:0;font-size:1.1rem;font-weight:500}.gs-price-details{gap:.25rem;display:grid}.gs-price-details span{color:#ffffffa6;align-items:center;gap:.4rem;font-size:.88rem;font-weight:500;display:flex}.gs-price-details i{color:var(--accent);flex-shrink:0;font-size:14px;line-height:1}.services-list{border:1px solid var(--border);border-radius:var(--radius);background:#fff}.services-header,.service-row>summary{grid-template-columns:2fr 1fr 1fr 1.1fr;align-items:center;gap:1rem;padding-right:0;display:grid}.services-header{background:var(--secondary);color:#fff;font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.5px;z-index:10;border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);padding:0 0 0 1.25rem;font-size:.78rem;font-weight:600;position:sticky;top:72px}.services-header .col-soffit{border-top-right-radius:var(--radius)}.services-totals{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius)}.services-totals .total-soffit{border-bottom-right-radius:var(--radius)}.services-header>div{padding:1rem 0}.services-header>div:not(:first-child){text-align:center}.services-header .col-soffit{color:#fff;background:var(--primary);justify-content:center;align-self:stretch;align-items:center;padding:1rem .5rem;display:flex}.services-category{background:var(--bg-alt);font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);padding:.9rem 1.25rem;font-size:.72rem;font-weight:600}.services-category:first-of-type{border-top:none}.service-row{border-bottom:1px solid var(--border-light)}.service-row:last-child{border-bottom:none}.service-row>summary{cursor:pointer;min-height:3rem;transition:background var(--transition);padding:0 0 0 1.25rem;font-size:.92rem;list-style:none}.service-row>summary:hover{background:#ff6b4a08}.service-row>summary::-webkit-details-marker{display:none}.service-row[open]>summary{background:#ff6b4a0a}.service-info{align-items:center;gap:.6rem;display:flex}.service-info:before{content:"+";font-family:var(--font-display);color:var(--text-muted);width:1rem;transition:transform var(--transition);flex-shrink:0;font-size:1.2rem;font-weight:400}.service-row[open] .service-info:before{content:"−";color:var(--primary)}.service-name{color:var(--text);font-weight:500}.cost-cell{text-align:center}.pro-cost,.diy-cost{font-family:var(--font-display);color:var(--text);font-size:.92rem;font-weight:600}.na-label{color:var(--text-muted);font-size:.82rem}.col-soffit-cell{text-align:center;background:#00b8940f;justify-content:center;align-self:stretch;align-items:center;gap:.35rem;padding:0 .5rem;display:flex}.soffit-check{color:var(--accent);font-size:1.15rem;line-height:1}.soffit-included{font-family:var(--font-display);color:var(--accent);font-size:.82rem;font-weight:600}.service-detail-body{color:var(--text-light);background:#fff;padding:.75rem 1.25rem 1.1rem 2.85rem;font-size:.88rem;line-height:1.65}.service-detail-body .detail-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.2px;color:var(--primary);margin-bottom:.4rem;font-size:.72rem;font-weight:600;display:block}.service-detail-body ul{margin:0;padding-left:1.1rem}.service-detail-body li{margin-bottom:.2rem}.services-totals{background:var(--bg-alt);border-top:2px solid var(--border);font-family:var(--font-display);grid-template-columns:2fr 1fr 1fr 1.1fr;align-items:stretch;gap:1rem;padding:0 0 0 1.25rem;font-weight:700;display:grid}.services-totals .total-label{color:var(--text-muted);padding:1.1rem 0;font-size:.82rem;font-weight:500}.services-totals .total-cost{color:var(--text);text-align:center;padding:1.1rem 0;font-size:1.05rem}.services-totals .total-soffit{color:var(--text);text-align:center;letter-spacing:-.01em;flex-direction:column;justify-content:center;align-items:center;padding:1.1rem .5rem;font-size:1.3rem;font-weight:700;line-height:1.15;display:flex}.services-totals>div:first-child{grid-column-start:2}.total-sub{color:var(--text-muted);margin-top:.15rem;font-size:.78rem;font-weight:500;display:block}.total-soffit .total-sub{color:var(--text-muted);margin-top:.2rem;font-size:.82rem}.services-disclaimer{max-width:none;color:var(--text-muted);margin:1rem 0 0;font-size:.82rem;font-style:italic;line-height:1.55}.services-disclaimer .svc-ref{color:var(--primary);margin-right:.25rem;font-style:normal;font-weight:600}.svc-ref{color:var(--primary);vertical-align:super;margin-left:.15rem;font-size:.85em;font-weight:600;line-height:0}.benefits-row{grid-template-columns:repeat(4,1fr);gap:1.25rem;margin:2rem auto 0;display:grid}.benefit-card{text-align:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);padding:1.5rem 1rem}.benefit-card:hover{box-shadow:var(--shadow);border-color:#0000;transform:translateY(-2px)}.benefit-icon{background:var(--primary-glow);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto .75rem;display:flex}.benefit-icon svg{width:24px;height:24px;color:var(--primary)}.benefit-card h4{margin-bottom:.3rem;font-size:.95rem}.benefit-card p{max-width:100%;margin:0;font-size:.82rem;line-height:1.55}.cta-section{background:radial-gradient(ellipse at top, #00b89414 0%, transparent 60%), linear-gradient(180deg, var(--bg) 0%, #fff 100%);border-top:1px solid var(--border);padding:6rem 0;position:relative}.cta-section:before{content:"";background:var(--accent);border-radius:0 0 4px 4px;width:120px;height:4px;position:absolute;top:0;left:50%;transform:translate(-50%)}.cta-section .section-header h2{font-size:2.4rem}.cta-section .section-label-green{color:var(--accent);background:#00b8941f;font-size:.82rem}.cta-wrap{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.5);background:#fff;padding:2.5rem;position:relative;box-shadow:0 20px 60px -20px #00b8941f,0 8px 24px -8px #0000000f}.cta-form{width:100%;max-width:620px;margin:0 auto 3rem}.cta-sidebar h3{margin-bottom:.5rem;font-size:1.3rem}.cta-sidebar>p{color:var(--text-light);margin-bottom:1.75rem;font-size:.92rem;line-height:1.6}.cta-timeline{grid-template-columns:1fr 1fr;gap:2.5rem 3rem;padding-left:0;display:grid;position:relative}.cta-timeline:before{display:none}.cta-tl-item{padding-left:1.75rem;position:relative}.cta-tl-item:before{content:"";background:var(--bg);border:2px solid var(--primary);z-index:1;border-radius:50%;width:14px;height:14px;position:absolute;top:6px;left:0}.cta-tl-item:last-child:before{background:var(--primary);border-color:var(--primary)}.cta-tl-item h4{margin-bottom:.4rem;font-size:.92rem}.cta-tl-item p{color:var(--text-light);margin:0;font-size:.82rem;line-height:1.7}.cta-tl-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.45rem;font-size:.7rem;font-weight:600}.cta-price-note{border-radius:var(--radius);background:#ff6b4a0f;border:1px solid #ff6b4a26;margin-top:1.75rem;padding:1rem 1.25rem;font-size:.88rem;line-height:1.55}.cta-price-note strong{color:var(--primary)}.cta-faq{border-top:1px solid var(--border);margin:4rem auto 0;padding-top:3rem}.cta-faq h3{margin-bottom:1.25rem;font-size:1.3rem}.faq-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.faq-item{border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);overflow:hidden}.faq-item[open]{border-color:#ff6b4a40}.faq-item summary{font-family:var(--font-display);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.92rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--text-muted);transition:transform var(--transition);flex-shrink:0;font-size:1.2rem;font-weight:400}.faq-item[open] summary:after{content:"−";color:var(--primary)}.faq-item p{color:var(--text-light);margin:0;padding:0 1.25rem 1.1rem;font-size:.88rem;line-height:1.65}.team-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;padding:6rem 0}.team-section .section-header p{max-width:680px;line-height:1.7}.team-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:0 auto;display:grid}.team-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);flex-direction:column;padding:1.75rem;display:flex}.team-card:hover{box-shadow:var(--shadow);border-color:#0000;transform:translateY(-2px)}.team-card.is-hiring{text-align:center;background:0 0;border-style:dashed;justify-content:center;align-items:center;min-height:340px}.team-photo{aspect-ratio:1;background:var(--bg-alt);width:120px;color:var(--text-muted);text-align:center;border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.1rem;font-size:.75rem;display:flex;overflow:hidden}.team-photo img{object-fit:cover;width:100%;height:100%}.team-name{font-family:var(--font-display);text-align:center;margin-bottom:.2rem;font-size:1.15rem;font-weight:700}.team-role{color:var(--primary);text-transform:uppercase;letter-spacing:1px;text-align:center;margin-bottom:1.25rem;font-size:.78rem;font-weight:600}.team-credentials{margin:0 0 1.25rem;padding:0;list-style:none}.team-credentials li{color:var(--text);align-items:center;gap:.55rem;padding:.35rem 0;font-size:.85rem;display:flex}.team-credentials li:before{content:"";background-color:#00b89424;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%2300B894'%3E%3Cpath d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:9px 9px;border-radius:50%;flex-shrink:0;width:14px;height:14px}.team-meta{border-top:1px solid var(--border-light);margin-top:auto;padding-top:1rem}.team-meta-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted);margin-bottom:.3rem;font-size:.68rem;font-weight:600;display:block}.team-meta p{color:var(--text-light);margin:0 0 .9rem;font-size:.88rem;line-height:1.55}.team-meta p:last-child{margin-bottom:0}.team-card.is-hiring .team-photo{color:var(--primary);background:#ff6b4a0a;border:2px dashed #ff6b4a66}.team-card.is-hiring .hiring-label{font-family:var(--font-display);color:var(--primary);margin-bottom:.35rem;font-size:1rem;font-weight:700}.team-card.is-hiring .hiring-sub{color:var(--text-muted);max-width:220px;font-size:.85rem;line-height:1.5}.featured-pro-subtitle{font-family:var(--font-display);color:var(--text-muted);text-transform:uppercase;letter-spacing:1.4px;text-align:center;margin:0 auto 3rem;font-size:.78rem;font-weight:600}.featured-pro{grid-template-columns:360px 1fr;align-items:center;gap:4rem;margin:0 auto;display:grid}.featured-pro-visual{aspect-ratio:3/4;position:relative}.featured-pro-accent{background:var(--primary);opacity:.12;z-index:0;border-radius:20px;position:absolute;inset:1.75rem -1.75rem -1.75rem 1.75rem}.featured-pro-sparkle{color:var(--primary);z-index:3;pointer-events:none;font-family:Caveat,cursive;font-size:1.75rem;font-weight:600;position:absolute;top:-1.25rem;left:-2.5rem;transform:rotate(-8deg)}.featured-pro-photo{background:var(--bg-alt);z-index:1;border-radius:20px;width:100%;height:100%;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 48px -16px #1a252f38,0 2px 6px #1a252f14}.featured-pro-photo img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.featured-pro-signature{z-index:2;background:#fff;border-radius:14px;flex-direction:column;align-items:flex-start;min-width:120px;padding:.75rem 1.25rem;display:flex;position:absolute;bottom:1.5rem;right:-1.5rem;transform:rotate(2deg);box-shadow:0 10px 28px -8px #1a252f40,0 2px 6px #1a252f14}.featured-pro-signature-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.4px;color:var(--text-muted);margin-bottom:.1rem;font-size:.62rem;font-weight:600}.featured-pro-signature-name{color:var(--secondary);font-family:Caveat,cursive;font-size:1.85rem;font-weight:700;line-height:1}.featured-pro-content{max-width:100%}.featured-pro-name{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 .15rem;font-size:1.9rem;font-weight:700}.featured-pro-hometown{color:var(--text-muted);margin-bottom:1.5rem;font-size:.95rem}.featured-pro-quote{color:var(--primary);border:none;margin:0 0 1.75rem;padding:0;font-family:Caveat,cursive;font-size:2.1rem;font-weight:600;line-height:1.25}.featured-pro-bio{color:var(--text);margin:0 0 1rem;font-size:1rem;line-height:1.7}.featured-pro-funfact{color:var(--text-light);margin:0 0 1.75rem;font-size:.92rem;line-height:1.6}.funfact-label{font-family:var(--font-display);color:var(--text);font-weight:600}.featured-pro-pills{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.featured-pro-pills li{font-family:var(--font-display);color:var(--text-light);background:var(--bg-alt);border:1px solid var(--border);letter-spacing:.01em;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .9rem;font-size:.82rem;font-weight:600;display:inline-flex}.featured-pro-pills li:before{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%2300B894'%3E%3Cpath d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;flex-shrink:0;width:12px;height:12px}@media (width<=968px){.gs-hero-content{max-width:100%}.team-grid{grid-template-columns:1fr;max-width:480px}.featured-pro{grid-template-columns:1fr;gap:2.5rem;max-width:480px}.featured-pro-visual{aspect-ratio:4/5;max-width:300px;margin:0 auto}.featured-pro-accent{inset:1.25rem -1.25rem -1.25rem 1.25rem}.featured-pro-sparkle{font-size:1.5rem;top:-1rem;left:-1.5rem}.featured-pro-signature{padding:.6rem 1rem;bottom:1rem;right:-1rem}.featured-pro-signature-name{font-size:1.6rem}.featured-pro-content{max-width:100%}.featured-pro-quote{font-size:1.8rem}}.mobile-fixed-cta{z-index:50;padding:1rem 92px 20px 1.25rem;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--border);opacity:0;pointer-events:none;background:#fff;transition:opacity .2s,transform .2s;display:none;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 24px -8px #0000001f}.mobile-fixed-cta.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-fixed-cta .btn{white-space:nowrap;justify-content:center;width:100%;padding-left:1rem;padding-right:1rem;font-size:1rem}@media (width<=919px){.mobile-fixed-cta{display:block}.cta-wrap{padding:1.75rem}.cta-form{margin-bottom:2.5rem}}@media (width<=640px){.gs-hero{min-height:auto;padding:8rem 0 4rem}.gs-hero-overlay{background:linear-gradient(to right, var(--secondary) 0%, #1a252fe6 100%)}.gs-price-block{gap:1rem}.gs-price-amount{font-size:2.4rem}.cta-timeline,.faq-grid{grid-template-columns:1fr}.team-section,.cta-section{padding:3.5rem 0}.services-list{border-left:none;border-right:none;border-radius:0;margin-left:-1.25rem;margin-right:-1.25rem}.services-header,.services-header .col-soffit,.services-totals,.services-totals .total-soffit{border-radius:0}.services-header{display:none}.service-row>summary{grid-template-columns:1fr auto;grid-template-areas:"info pill";align-items:center;column-gap:.75rem;min-height:0;padding:.9rem 1rem}.service-row>summary .service-info{grid-area:info;align-items:center}.service-row>summary .cost-cell{display:none}.service-detail-body .costs-mobile{color:var(--text-muted);margin:.75rem 0 0;font-size:.8rem;display:block}.service-row>summary .col-soffit-cell{background:var(--accent-bg);white-space:nowrap;border-radius:999px;grid-area:pill;align-self:center;gap:.3rem;padding:.3rem .7rem}.service-row>summary .soffit-check{font-size:.85rem}.service-row>summary .soffit-included{font-size:.72rem}.service-detail-body{padding:.75rem 2.6rem 1rem}.faq-item summary{padding:.85rem 1rem}.faq-item p{padding:0 1rem .9rem}.services-totals{grid-template-columns:1fr;gap:0;padding:0}.services-totals>div:first-child{grid-column-start:auto}.services-totals .total-label-mobile{white-space:nowrap}.services-totals>div,.services-totals .total-label,.services-totals .total-cost,.services-totals .total-soffit{border-bottom:1px solid var(--border-light);text-align:left;flex-direction:row;justify-content:space-between;align-items:baseline;padding:1rem 1.25rem;display:flex}.services-totals>div:last-child{border-bottom:none}.services-totals .total-label{background:var(--secondary);color:#fff;font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.5px;font-size:.78rem;font-weight:600}.services-totals .total-label-mobile{font-family:var(--font-body);color:var(--text-muted);font-size:.92rem;font-weight:500}.services-totals .total-soffit{background:var(--primary);color:#fff;border-bottom-right-radius:0;border-bottom-left-radius:0;flex-direction:row;justify-content:space-between;align-items:baseline;font-size:1.25rem;font-weight:700}.services-totals .total-soffit .total-label-mobile{color:#fff;font-weight:700}.services-totals .total-value{text-align:right;white-space:nowrap}.services-totals .total-sub{color:var(--text-muted);margin-top:0;margin-left:.5rem;font-size:.78rem;display:inline}.services-totals .total-soffit .total-sub{color:#ffffffbf}.services-totals .total-soffit{order:-1}.services-totals .total-cost{display:none}.services-totals .totals-note-mobile{color:var(--text-muted);margin:0;padding:1rem 1.25rem;font-size:.88rem;line-height:1.55}}@media (width>=641px){.services-totals .total-label-mobile,.services-totals .totals-note-mobile,.costs-mobile{display:none}}
