/* Cape Cod landing page */
.lp{--lp-ink:#0b2545;--lp-red:#c8102e;--lp-muted:#637183;--lp-bg:#f4f6f8;font-family:Inter,Arial,sans-serif;color:var(--lp-ink);background:#fff}.lp *{box-sizing:border-box}.lp img{max-width:100%;display:block}.lp a{text-decoration:none}.lp-wrap{width:min(1240px,calc(100% - 64px));margin:auto}.lp-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--lp-red);text-transform:uppercase;margin-bottom:18px}.lp h1,.lp h2,.lp h3{font-family:Montserrat,Arial,sans-serif;color:var(--lp-ink);letter-spacing:-.045em}.lp h1{font-size:clamp(40px,4.5vw,66px);line-height:1.08;font-weight:700;margin:0 0 24px;max-width:700px}.lp h2{font-size:clamp(30px,3.2vw,46px);line-height:1.15;font-weight:700;margin:0 0 20px}.lp h3{font-size:24px;line-height:1.25;font-weight:700;margin:0 0 14px}.lp p{font-size:15px;line-height:1.75;color:var(--lp-muted)}.lp-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:16px 23px;background:var(--lp-red);color:#fff!important;font-size:13px;font-weight:700;border:1px solid var(--lp-red);border-radius:3px;text-decoration:none;cursor:pointer}.lp-button.lp-outline{background:#fff;color:var(--lp-ink)!important;border-color:#cdd5df}.lp-button:hover{filter:brightness(.95)}.lp a:focus-visible,.lp button:focus-visible{outline:3px solid #c8102e;outline-offset:5px}.lp-hero{padding:142px 0 50px;background:#f4f6f8}.lp-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:46px;align-items:center}.lp-hero-copy{padding:25px 0}.lp-hero-copy p{font-size:17px;max-width:460px}.lp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.lp-hero-media{position:relative;min-width:0}.lp-hero-media img{width:100%;height:560px;object-fit:cover;border-radius:5px}.lp-hero-caption{position:absolute;bottom:20px;left:20px;right:20px;background:rgba(255,255,255,.96);border-radius:3px;padding:16px 18px;display:flex;justify-content:space-between;gap:15px;align-items:center}.lp-hero-caption strong{display:block;font-size:14px}.lp-hero-caption small{display:block;font-size:10px;color:#687586;margin-top:5px}.lp-hero-caption a{font-size:12px;font-weight:700;color:var(--lp-red)}.lp-local-line{border-top:1px solid #dbe2e9;margin-top:36px;padding-top:22px;display:flex;gap:25px;flex-wrap:wrap;font-size:11px;letter-spacing:.08em;font-weight:700}.lp-section{padding:80px 0}.lp-section.lp-gray{background:#f4f6f8}.lp-section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.lp-section-head p{max-width:360px;margin:0 0 20px}.lp-switch{display:flex;gap:8px;border-bottom:1px solid #e1e6ec;padding-bottom:16px;margin-bottom:30px}.lp-switch button{font:700 13px Inter,Arial,sans-serif;padding:13px 22px;background:#fff;color:var(--lp-ink);border:1px solid #d2dbe5;border-radius:3px;cursor:pointer}.lp-switch button[aria-selected=true]{background:var(--lp-ink);color:#fff;border-color:var(--lp-ink)}.lp-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.lp-card{background:white;border:1px solid #dfe5eb;border-radius:4px;overflow:hidden;min-width:0;display:flex;flex-direction:column}.lp-card-media{position:relative;aspect-ratio:1.28;background:#edede9;overflow:hidden}.lp-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.lp-card:hover .lp-card-media img{transform:scale(1.035)}.lp-card-media.lp-drawing img{object-fit:contain;padding:8px}.lp-tag{position:absolute;top:12px;left:12px;background:white;padding:6px 10px;border-radius:2px;font-size:9px;letter-spacing:.08em;font-weight:700;color:var(--lp-ink)}.lp-card-content{padding:23px 20px;display:flex;flex-direction:column;flex:1}.lp-card h3{font-size:22px;letter-spacing:-.03em}.lp-spec{color:#687586;font-size:11px;line-height:1.6;min-height:36px}.lp-price{border-top:1px solid #e2e8ee;padding-top:17px;margin-top:17px}.lp-price span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#788493;font-weight:600}.lp-price strong{display:block;font-size:clamp(19px,1.7vw,24px);font-weight:700;letter-spacing:-.04em;color:var(--lp-ink);white-space:nowrap;margin:5px 0}.lp-price small{font-size:10px;color:#768391;line-height:1.6}.lp-card-link{display:flex;justify-content:space-between;align-items:center;margin-top:23px;font-size:12px;font-weight:700;color:var(--lp-red);padding-top:15px;border-top:1px solid #e2e8ee}.lp-note{font-size:11px!important;line-height:1.7!important;color:#798592!important;max-width:1000px;margin:25px 0 0}.lp-addition{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.lp-addition img{height:470px;width:100%;object-fit:cover;border-radius:4px}.lp-addition ul{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:20px 0}.lp-addition li{padding:8px 12px;background:#edf1f5;font-size:11px;font-weight:600}.lp-addition .lp-price{max-width:350px;border:0;padding:0;margin-top:24px}.lp-addition .lp-price strong{font-size:34px}.lp-budget-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:32px}.lp-budget-box{padding:28px;border:1px solid #dce3eb;border-radius:4px;background:#fff}.lp-budget-box .lp-num{font-size:11px;font-weight:700;color:#c8102e;letter-spacing:.1em;display:block;margin-bottom:20px}.lp-budget-box h3{font-size:21px}.lp-budget-box p{font-size:13px;margin-bottom:0}.lp-cape{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.lp-town-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 22px}.lp-town-grid span{font-size:13px;padding:11px 0;border-bottom:1px solid #e1e6ed}.lp-small-link{color:var(--lp-red);font-size:12px;font-weight:700}.lp-work-preview{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;margin-top:28px}.lp-work-preview figure{margin:0}.lp-work-preview img{width:100%;height:270px;object-fit:cover;border-radius:3px}.lp-work-preview figcaption{font-size:11px;color:#768391;margin-top:10px}.lp-band{padding:52px 0;background:#0b2545}.lp-band .lp-wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.lp-band h2{color:white;font-size:34px;max-width:670px;margin:0}.lp-band p{color:#becbd9;margin:14px 0 0}.lp-addition-panel{background:#f4f6f8;padding:34px;border-radius:4px}.lp [hidden]{display:none!important}.build-budget{border:1px solid #dce3eb;background:#f4f6f8;padding:18px 20px;margin:18px 0}.build-budget small{display:block;font-size:10px;color:#728091;letter-spacing:.08em;text-transform:uppercase}.build-budget strong{display:block;color:#0b2545;font-size:28px;line-height:1.3;letter-spacing:-.04em;margin:7px 0}.build-budget span{display:block;font-size:11px;color:#6d7a89;line-height:1.7}#home-view>section[hidden]{display:none!important}body.lp-home #main-header{box-shadow:0 1px 0 #e1e6ec}#home-view>.contact{background:#f4f6f8;padding-top:80px}.lp-concept-credit{position:absolute;bottom:8px;left:10px;font-size:8px;color:#39495a;background:#ffffffed;padding:4px 6px;border-radius:2px}@media(min-width:1100px){body.lp-home .financing-sidebar{display:none}body.lp-home .financing-layout{display:block!important}}@media(max-width:1100px){.lp-card-grid{grid-template-columns:1fr 1fr}.lp-card-media{aspect-ratio:1.5}.lp-hero-grid{gap:28px}.lp-hero-media img{height:520px}.lp-hero h1{font-size:47px}.lp-addition{gap:35px}}@media(max-width:800px){.lp-hero-grid,.lp-addition,.lp-cape{grid-template-columns:1fr}.lp-hero{padding-top:110px}.lp-hero-copy{padding:0}.lp-hero h1{font-size:48px;max-width:650px}.lp-hero-media img{height:430px}.lp-section{padding:58px 0}.lp-section-head{display:block}.lp-budget-row{grid-template-columns:1fr}.lp-cape{gap:25px}.lp-addition img{height:350px}.lp-band .lp-wrap{display:block}.lp-band .lp-button{margin-top:25px}.lp-work-preview{grid-template-columns:1fr 1fr}.lp-work-preview figure:last-child{display:none}}@media(max-width:520px){.lp-wrap{width:calc(100% - 40px)}.lp-hero h1{font-size:41px}.lp-hero-copy p{font-size:15px}.lp-hero-media img{height:330px}.lp-hero-caption{bottom:12px;left:12px;right:12px;padding:12px}.lp-hero-caption strong{font-size:12px}.lp-hero-caption a{font-size:10px}.lp-local-line{font-size:9px;gap:14px}.lp-card-grid{grid-template-columns:1fr}.lp-card-media{aspect-ratio:1.65}.lp-card-content{padding:22px}.lp-price strong{font-size:27px}.lp-spec{min-height:0}.lp-town-grid{grid-template-columns:1fr 1fr}.lp-actions{display:grid}.lp-button{width:100%}.lp-work-preview{grid-template-columns:1fr}.lp-work-preview figure:nth-child(2){display:none}.lp-switch{gap:6px}.lp-switch button{padding:12px 16px}.lp-addition-panel{padding:24px}.lp-band h2{font-size:30px}}
.lp-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:32px}.lp-article-card{display:block;background:#fff;border:1px solid #dfe5eb;border-radius:4px;overflow:hidden;color:#0b2545}.lp-article-img{position:relative;aspect-ratio:1.6}.lp-article-img img{width:100%;height:100%;object-fit:cover}.lp-article-img span{position:absolute;left:12px;bottom:12px;font-size:8px;background:white;padding:4px 7px}.lp-article-card>div:last-child{padding:25px}.lp-article-card h3{font-size:21px;letter-spacing:-.03em}.lp-article-card p{font-size:13px}.lp-article-card strong{font-size:12px;color:#c8102e}.planning-article{padding:45px 0 80px}.article-back{display:block;color:#718095;font-size:12px;margin:15px 0 35px}.planning-article h1{max-width:980px;font-size:clamp(36px,4.8vw,62px)}.article-intro{max-width:800px;font-size:19px;line-height:1.7}.article-layout{display:grid;grid-template-columns:1fr 320px;gap:80px;margin-top:45px}.article-layout article section{padding:15px 0}.article-layout h2{font-size:27px;letter-spacing:-.035em;margin-top:20px}.article-layout aside{align-self:start;border:1px solid #dfe5eb;background:#f4f6f8;padding:24px;position:sticky;top:130px}.article-layout aside img{width:100%;height:190px;object-fit:cover}.article-layout aside small{font-size:9px;color:#7b8794}.article-layout aside h3{margin-top:30px;font-size:26px}.article-plan-link{display:block;margin-top:20px;font-size:13px}.article-sources{margin-top:25px;border-top:1px solid #dfe5eb}.article-sources a{font-size:14px}.article-sources li{margin:10px 0}@media(max-width:850px){.lp-article-grid{grid-template-columns:1fr}.lp-article-card{display:grid;grid-template-columns:.9fr 1.1fr}.lp-article-img{height:100%;aspect-ratio:auto}.article-layout{grid-template-columns:1fr;gap:30px}.article-layout aside{position:static}}@media(max-width:520px){.lp-article-card{display:block}.lp-article-img{height:200px}.planning-article h1{font-size:38px}}/* Ensure the landing header stays legible at the top as well as after scroll. */
body.lp-home #main-header{background:#fff!important;border-bottom:1px solid #e1e6ec}
body.lp-home #main-header .nav-link,body.lp-home #main-header .logo-text,body.lp-home #main-header .logo-text span,body.lp-home #main-header .header-phone,body.lp-home #main-header .lang-btn{color:#0b2545!important}
body.lp-home #main-header .lang-btn.active{color:#fff!important}

/* General contractor service collection */
.lp-gc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lp-gc-card{display:block;background:#fff;border:1px solid #dfe5eb;border-radius:5px;overflow:hidden;color:#0b2545;transition:transform .2s,box-shadow .2s}.lp-gc-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px #0b254512}.lp-gc-card img{width:100%;height:230px;object-fit:cover}.lp-gc-card>div{padding:26px}.lp-gc-card h3{font-size:22px;letter-spacing:-.025em}.lp-gc-card p{font-size:14px;margin-bottom:20px}.lp-gc-card span{font-size:12px;font-weight:700;color:#c8102e}.lp-gc-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px}.lp .feedback-person h3{font-size:16px;letter-spacing:0}.lp .feedback-person p{font-size:12px}.lp .customer-feedback{padding:80px 0}.lp-hero h1{font-size:clamp(36px,4vw,58px)}@media(max-width:900px){.lp-gc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.lp-gc-grid{grid-template-columns:1fr}.lp-gc-footer{display:block}.lp-gc-card img{height:230px}.lp-hero h1{font-size:38px}}
