:root{--primary:#c95d3a;--secondary:#66858a;--accent:#ff906c;--neutral-white:#fff;--neutral-cream-100:#fcfaf6;--neutral-cream-200:#f5f1e9;--neutral-cream-300:#e4e0d8;--neutral-cream-400:#dad6ce;--neutral-dark-900:#183039;--neutral-dark-700:#254a57;--neutral-dark-600:#3d4342;--background-primary:#fff;--background-cream:#fcfaf6;--background-warm:#f5f1e9;--background-dark:#183039;--background-dark-alt:#254a57;--text-primary:#183039;--text-secondary:#3d4342;--text-muted:#66858a;--text-light:#fcfaf6;--text-light-muted:#fcfaf699;--text-accent:#c95d3a;--border-default:#f5f1e9;--border-subtle:#fcfaf61f;--border-medium:#dad6ce;--border-strong:#e4e0d8;--border-accent:#c95d3a;--border-warm-subtle:#f5f1e93d;--action-primary:#c95d3a;--action-primary-text:#fff;--surface-overlay-light:#f5f1e90f;--surface-overlay-medium:#f5f1e91a;--surface-overlay-dark-light:#1830390f;--surface-overlay-dark-medium:#1830391a;--surface-card-cream:#fcfaf647;--font-heading:"DM Sans", system-ui, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--text-button:clamp(.9375rem, .9219rem + .0781vw, 1rem);--text-navigation:clamp(.9375rem, .9219rem + .0781vw, 1rem);--text-eyebrow:clamp(.8125rem, .7969rem + .0781vw, .875rem);--text-testimonial:clamp(1rem, .9688rem + .1563vw, 1.125rem);--text-faq-question:clamp(1.0625rem, 1.0156rem + .2344vw, 1.25rem);--text-display-hero:clamp(2.375rem, 1.8438rem + 2.6563vw, 4.5rem);--text-heading-h1:clamp(2rem, 1.75rem + 1.25vw, 3rem);--text-heading-h2:clamp(1.625rem, 1.4688rem + .7813vw, 2.25rem);--text-heading-h3:clamp(1.25rem, 1.1875rem + .3125vw, 1.5rem);--text-heading-h4:clamp(1.0625rem, 1.0156rem + .2344vw, 1.25rem);--text-heading-h5:clamp(1.0625rem, 1.0156rem + .2344vw, 1.25rem);--text-stat-large:clamp(3.5rem, 2.8125rem + 3.4375vw, 6.25rem);--text-stat-default:clamp(2rem, 1.75rem + 1.25vw, 3rem);--text-stat-label:clamp(1rem, .9063rem + .4688vw, 1.375rem);--text-card-title:clamp(1rem, .9688rem + .1563vw, 1.125rem);--text-xl:clamp(1.125rem, 1.0625rem + .3125vw, 1.375rem);--text-lg:clamp(1rem, .9688rem + .1563vw, 1.125rem);--text-md:clamp(.9375rem, .9219rem + .0781vw, 1rem);--text-sm:clamp(.8125rem, .7969rem + .0781vw, .875rem);--text-xs:clamp(.6875rem, .6719rem + .0781vw, .75rem);--leading-button:clamp(1.125rem, 1.0938rem + .1563vw, 1.25rem);--leading-navigation:clamp(.9375rem, .9219rem + .0781vw, 1rem);--leading-testimonial:clamp(1.5rem, 1.4375rem + .3125vw, 1.75rem);--leading-faq-question:clamp(1.5625rem, 1.4844rem + .3906vw, 1.875rem);--leading-display-hero:clamp(2.625rem, 2.1563rem + 2.3438vw, 4.5rem);--leading-heading-h1:clamp(2.4rem, 2.1rem + 1.5vw, 3.6rem);--leading-heading-h2:clamp(2.4375rem, 2.2031rem + 1.1719vw, 3.375rem);--leading-heading-h3:clamp(1.5rem, 1.425rem + .375vw, 1.8rem);--leading-heading-h4:clamp(1.7rem, 1.615rem + .425vw, 2.04rem);--leading-heading-h5:clamp(1.4238rem, 1.3597rem + .3203vw, 1.68rem);--leading-stat-large:clamp(3.5rem, 2.8125rem + 3.4375vw, 6.25rem);--leading-stat-label:clamp(1.375rem, 1.2688rem + .5312vw, 1.8rem);--leading-xl:clamp(1.75rem, 1.6563rem + .4688vw, 2.125rem);--leading-lg:clamp(1.625rem, 1.5625rem + .3125vw, 1.875rem);--leading-md:clamp(1.375rem, 1.3438rem + .1563vw, 1.5rem);--leading-sm:clamp(1.25rem, 1.2031rem + .2344vw, 1.4375rem);--leading-xs:clamp(.8125rem, .7969rem + .0781vw, .875rem);--leading-card-title:clamp(1.5rem, 1.4375rem + .3125vw, 1.75rem);--tracking-display:0;--tracking-heading:0;--tracking-body:0;--tracking-eyebrow:0;--tracking-button:0;--tracking-navigation:0;--space-section-vertical-xl:clamp(5rem, 3.6875rem + 6.5625vw, 10.25rem);--space-section-vertical-lg:clamp(3.75rem, 3.125rem + 3.125vw, 6.25rem);--space-section-vertical-md:clamp(3.125rem, 2.5625rem + 2.8125vw, 5.375rem);--space-section-vertical-sm:clamp(2.5rem, 2.1875rem + 1.5625vw, 3.75rem);--space-section-vertical-xs:clamp(2rem, 1.7188rem + 1.4063vw, 3.125rem);--space-container-x-wide:clamp(1.25rem, -3.2813rem + 22.6563vw, 19.375rem);--space-container-x:clamp(1.25rem, -.3125rem + 7.8125vw, 7.5rem);--space-component-2xs:clamp(.375rem, .3438rem + .1563vw, .5rem);--space-component-xs:clamp(.5rem, .4688rem + .1563vw, .625rem);--space-component-sm:clamp(.75rem, .7188rem + .1563vw, .875rem);--space-component-md:clamp(1rem, .9375rem + .3125vw, 1.25rem);--space-component-lg:clamp(1.5rem, 1.4063rem + .4688vw, 1.875rem);--space-component-xl:clamp(2rem, 1.7188rem + 1.4063vw, 3.125rem);--space-component-2xl:clamp(2.5rem, 2.1875rem + 1.5625vw, 3.75rem);--space-component-3xl:clamp(3rem, 2.5rem + 2.5vw, 5rem);--space-card-x:clamp(1.25rem, 1.0938rem + .7813vw, 1.875rem);--space-card-y:clamp(1.25rem, 1.0938rem + .7813vw, 1.875rem);--space-content-eyebrow-to-heading:clamp(.75rem, .7188rem + .1563vw, .875rem);--space-content-heading-to-body:clamp(1rem, .9375rem + .3125vw, 1.25rem);--space-content-body-to-action:clamp(1.5rem, 1.4063rem + .4688vw, 1.875rem);--space-button-x:clamp(1.125rem, 1.0625rem + .3125vw, 1.375rem);--space-button-y:clamp(.75rem, .7188rem + .1563vw, .875rem);--space-input-x:clamp(1rem, .9688rem + .1563vw, 1.125rem);--space-input-y:clamp(.8125rem, .7813rem + .1563vw, .9375rem);--space-navigation-x:clamp(.875rem, .8281rem + .2344vw, 1.0625rem);--space-navigation-y:clamp(.625rem, .6094rem + .0781vw, .6875rem);--radius-none:0px;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:11px;--radius-xl:15px;--radius-2xl:20px;--radius-3xl:23px;--radius-full:999px;--stroke-thin:1px;--stroke-default:2px;--content-max:85.375rem;--gutter:var(--space-container-x)}@font-face{font-family:DM Sans;src:url(/northshore-roofing/assets/fonts/DMSans-VariableFont_opsz,wght.woff2)format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/northshore-roofing/assets/fonts/DMSans-Italic-VariableFont_opsz,wght.woff2)format("woff2");font-weight:100 1000;font-style:italic;font-display:swap}@font-face{font-family:Plus Jakarta Sans;src:url(/northshore-roofing/assets/fonts/PlusJakartaSans-VariableFont_wght.woff2)format("woff2");font-weight:200 800;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-padding-block-start:var(--header-height,6rem)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading-md);letter-spacing:var(--tracking-body);color:var(--text-primary);background-color:var(--background-primary);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{font-family:var(--font-heading);font-variation-settings:"opsz" 14;letter-spacing:var(--tracking-heading);text-wrap:balance}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:where(ul,ol)[role=list]{padding:0;list-style:none}:focus-visible{outline:var(--stroke-default) solid var(--border-accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;padding:var(--space-component-sm) var(--space-component-md);border-radius:0 0 var(--radius-xs) var(--radius-xs);background-color:var(--action-primary);color:var(--action-primary-text);font-size:var(--text-md);position:absolute;inset-block-start:0;inset-inline-start:var(--space-component-md);translate:0 -110%}.skip-link:focus-visible{translate:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.lbg-section{width:100%;padding-inline:var(--gutter);position:relative}.lbg-container{width:100%;max-width:var(--content-max);margin-inline:auto}.btn{justify-content:center;align-items:center;gap:var(--space-component-2xs);padding:var(--space-navigation-x) var(--space-component-lg);border-radius:var(--radius-xs);background-color:var(--action-primary);color:var(--action-primary-text);font-size:var(--text-button);font-weight:500;line-height:var(--leading-button);letter-spacing:var(--tracking-button);white-space:nowrap;transition:background-color .25s;display:inline-flex}.btn:hover{background-color:#ff825a}.btn__label{transition:translate .25s}.btn:hover .btn__label{translate:-4.5px}.btn:hover .btn__icon{translate:4.5px}.btn .btn__icon{transition:rotate .25s,translate .25s}.btn:hover .btn__icon{rotate:-45deg}.btn--compact{padding-block:var(--space-component-sm)}.btn__label{padding-block-end:3px}.btn__icon{flex:none;block-size:.9375rem;inline-size:.9375rem}@keyframes reveal-up{0%{opacity:0;translate:0 1.5rem}to{opacity:1;translate:0}}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){[data-reveal],[data-reveal-group]>*{opacity:0}.is-revealed{animation:reveal-up .8s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s) both}}.tag{border-inline-start:var(--stroke-default) solid var(--border-accent);background-color:var(--surface-overlay-dark-medium);font-size:var(--text-md);line-height:var(--leading-md);letter-spacing:var(--tracking-body);color:var(--text-muted);text-transform:uppercase;padding:.25rem .75rem}.tag--on-dark{background-color:var(--surface-overlay-medium);color:var(--text-light)}.section-title{font-size:var(--text-heading-h1);font-weight:700;line-height:var(--leading-heading-h1);text-transform:uppercase;color:var(--text-muted)}.section-title--on-dark{color:var(--text-light)}.header{z-index:100;background-color:var(--background-dark);border-block-end:4px solid var(--border-accent);position:sticky;inset-block-start:0}.header__inner{align-items:center;gap:var(--space-component-md);padding-block:var(--space-component-lg);display:flex}.header__logo{flex:0 auto;min-inline-size:0}.header__logo-img{block-size:auto}.header__nav{flex:1 1 0;justify-content:flex-end;min-inline-size:0;display:flex}.header__menu{display:contents}.header__menu-list{align-items:center;column-gap:var(--space-button-x);display:flex}.header__link{align-items:center;gap:var(--space-component-2xs);padding:var(--space-input-y);font-size:var(--text-navigation);font-weight:400;line-height:var(--leading-navigation);letter-spacing:var(--tracking-navigation);color:var(--text-light);white-space:nowrap;transition:color .2s;display:flex}.header__link:after{content:"";inset-block-end:calc(var(--space-input-y) - .375rem);inset-inline:var(--space-input-y);block-size:var(--stroke-default);background-color:var(--border-accent);transform-origin:0;transition:scale .25s;position:absolute;scale:0 1}.header__link{position:relative}.header__link:hover,.header__item:focus-within>.header__link{color:var(--accent)}.header__link:hover:after,.header__item:focus-within>.header__link:after{scale:1}.header__item:hover .header__chevron,.header__item:focus-within .header__chevron{rotate:180deg}.header__chevron{transition:rotate .25s}.header__item{position:relative}.header__submenu{z-index:10;min-inline-size:15rem;padding-block:var(--space-component-2xs);border-block-start:var(--stroke-default) solid var(--border-accent);border-radius:0 0 var(--radius-xs) var(--radius-xs);background-color:var(--background-dark-alt);opacity:0;visibility:hidden;transition:opacity .2s,translate .2s,visibility .2s;position:absolute;inset-block-start:100%;inset-inline-start:0;translate:0 -.5rem}.header__item:hover .header__submenu,.header__item:focus-within .header__submenu{opacity:1;visibility:visible;translate:0}.header__sublink{padding:var(--space-navigation-y) var(--space-navigation-x);font-size:var(--text-navigation);line-height:var(--leading-md);color:var(--text-light);white-space:nowrap;transition:background-color .2s,color .2s,padding-inline-start .2s;display:block}.header__sublink:hover{background-color:var(--surface-overlay-light);color:var(--accent);padding-inline-start:calc(var(--space-navigation-x) + .375rem)}.header__chevron{background-color:currentColor;flex:none;block-size:.875rem;inline-size:.5625rem;mask:url(/northshore-roofing/assets/icons/angle-down.svg) 50%/contain no-repeat}.header__actions{align-items:center;gap:var(--space-component-md);flex:none;display:flex}.header__menu-cta{display:none}.hamburger{padding:var(--space-component-sm);color:var(--text-light);line-height:0;transition:color .2s;display:none}.hamburger:hover{color:var(--accent)}.hamburger__box{block-size:1.125rem;inline-size:1.5rem;display:block;position:relative}.hamburger__inner,.hamburger__inner:before,.hamburger__inner:after{background-color:currentColor;block-size:2px;position:absolute;inset-inline:0}.hamburger__inner{margin-block-start:-1px;transition:rotate .15s cubic-bezier(.55,.055,.675,.19);inset-block-start:50%}.hamburger__inner:before,.hamburger__inner:after{content:""}.hamburger__inner:before{transition:inset-block-start .15s .24s,opacity .15s;inset-block-start:-.5rem}.hamburger__inner:after{transition:inset-block-end .15s .24s,rotate .15s cubic-bezier(.55,.055,.675,.19);inset-block-end:-.5rem}.header:has(.header__menu:popover-open) .hamburger__inner{transition-delay:.24s;transition-timing-function:cubic-bezier(.215,.61,.355,1);rotate:45deg}.header:has(.header__menu:popover-open) .hamburger__inner:before{opacity:0;transition:inset-block-start .15s,opacity .15s .24s;inset-block-start:0}.header:has(.header__menu:popover-open) .hamburger__inner:after{transition:inset-block-end .15s,rotate .15s cubic-bezier(.215,.61,.355,1) .24s;inset-block-end:0;rotate:-90deg}.hero{min-block-size:clamp(34rem,62vw,50rem);padding-block:max(var(--space-component-lg), calc(var(--space-section-vertical-xl) - var(--header-height,7.8125rem))) var(--space-section-vertical-md);display:flex;overflow:hidden}.hero__bg{object-fit:cover;object-position:50% 100%;block-size:100%;inline-size:100%;position:absolute;inset:0}.hero__inner{align-items:flex-start;gap:var(--space-component-xl);display:flex;position:relative}.hero__content{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;flex:1 1 0;min-inline-size:0;display:flex}.hero__title{letter-spacing:var(--tracking-display);text-transform:uppercase;color:var(--text-primary);font-size:clamp(2.375rem,2.0313rem + 1.7188vw,3.75rem);font-weight:700;line-height:1.05}.hero__proof{align-items:center;gap:var(--space-component-md);flex-wrap:wrap;display:flex}.hero__avatars{border-radius:var(--radius-full);background-color:var(--background-primary);padding:.375rem;display:flex}.hero__avatars>li+li{margin-inline-start:-.375rem}.hero__avatar{border-radius:var(--radius-full);object-fit:cover}.hero__rating{align-items:center;gap:var(--space-component-2xs);display:flex}.hero__score{font-family:var(--font-heading);font-size:var(--text-stat-default);font-variation-settings:"opsz" 14;letter-spacing:var(--tracking-display);color:var(--text-muted);white-space:nowrap;font-weight:700;line-height:normal}.hero__rating-label{font-size:var(--text-xs);line-height:var(--leading-xs);color:var(--text-secondary)}.hero__text{max-inline-size:47.5rem;font-size:var(--text-xl);line-height:var(--leading-xl);color:var(--text-secondary)}.warranty{flex:none;display:flex}.warranty__media{border-radius:var(--radius-xl);background-color:var(--background-dark);flex:none;padding:.8125rem}.warranty__img{border-radius:var(--radius-md);background-color:var(--background-dark-alt);object-fit:cover}.warranty__body{justify-content:center;gap:var(--space-component-2xs);border-radius:var(--radius-xl);background-color:var(--background-dark);min-inline-size:0;color:var(--text-light);flex-direction:column;flex:auto;padding:.75rem;display:flex}.warranty__eyebrow{align-items:center;gap:var(--space-component-xs);font-size:var(--text-eyebrow);font-weight:500;line-height:var(--leading-sm);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;display:flex}.warranty__icon{flex:none;scale:1 -1}.warranty__title{font-family:var(--font-heading);font-size:var(--text-heading-h3);font-variation-settings:"opsz" 14;font-weight:700;line-height:var(--leading-heading-h3);letter-spacing:var(--tracking-heading);text-transform:uppercase}.warranty__text{max-inline-size:13.4375rem;font-size:var(--text-sm);line-height:var(--leading-sm)}.about{padding-block:var(--space-section-vertical-lg);border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light)}.about__inner{gap:var(--space-component-xl);grid-template-columns:2fr 5fr;display:grid}.about__stats{border-inline-end:var(--stroke-thin) solid var(--border-subtle);flex-direction:column;display:flex}.about__stat{border-block-end:var(--stroke-thin) solid var(--border-subtle);padding-block-end:var(--space-component-xl)}.about__stat-value{align-items:flex-start;gap:var(--space-component-md);font-family:var(--font-heading);font-size:var(--text-display-hero);font-variation-settings:"opsz" 14;font-weight:700;line-height:var(--leading-display-hero);letter-spacing:var(--tracking-display);display:flex}.about__stat-plus{font-size:var(--text-stat-large);line-height:var(--leading-stat-large);color:var(--text-accent)}.about__stat-label{font-size:var(--text-stat-label);font-weight:300;line-height:var(--leading-stat-label);text-transform:uppercase}.about__proof{align-items:center;gap:var(--space-component-md);padding-block:var(--space-component-xl);display:flex}.about__avatars{flex:none;display:flex}.about__avatars>li+li{margin-inline-start:-.6875rem}.about__avatar{border-radius:var(--radius-full);object-fit:cover}.about__proof-text{max-inline-size:15.5rem;font-size:var(--text-md);line-height:var(--leading-md);color:var(--neutral-cream-200);flex-direction:column;gap:2px;display:flex}.about__proof-count{color:var(--text-accent)}.about__content{gap:var(--space-component-xl);grid-template-columns:minmax(0,36.5rem) minmax(14.875rem,1fr);display:grid}.about__body{align-items:flex-start;gap:var(--space-component-2xs);flex-direction:column;display:flex}.about__title{font-size:var(--text-heading-h2);font-style:italic;font-weight:600;line-height:var(--leading-heading-h2);text-transform:uppercase}.about__text{font-size:var(--text-lg);line-height:var(--leading-lg);color:var(--neutral-cream-200)}.about__text+.about__text{margin-block-start:calc(var(--leading-lg) - var(--space-component-2xs))}.about__text:last-of-type{margin-block-end:var(--space-component-sm)}.about__media{position:relative}.about__photo{border-radius:var(--radius-2xl);object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.materials{padding-block:var(--space-section-vertical-lg) var(--space-section-vertical-md)}.materials__inner{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:4.375rem;display:grid}.materials__content{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;display:flex}.materials__text{font-size:var(--text-lg);line-height:var(--leading-lg);color:var(--text-secondary)}.materials__features{align-self:stretch}.feature{align-items:flex-start;gap:var(--space-component-md);padding-block:var(--space-component-md) calc(var(--space-component-md) + var(--space-component-sm));display:flex}.feature+.feature{border-block-start:var(--stroke-thin) solid var(--border-default)}.feature__icon{border-block-end:var(--stroke-default) solid var(--border-accent);border-radius:var(--radius-sm);background-color:var(--background-dark);flex:none;padding:.8125rem .6875rem .6875rem}.feature__body{gap:var(--space-component-2xs);flex-direction:column;flex:1 1 0;min-inline-size:0;display:flex}.feature__title{font-size:var(--text-heading-h4);font-weight:500;line-height:var(--leading-heading-h4);text-transform:uppercase;color:var(--text-muted)}.feature__text{max-inline-size:30.3125rem;font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-secondary)}.feature__arrow{flex:none;margin-inline-start:auto;scale:1 -1}.materials__media{padding-inline-start:.75rem;position:relative}.materials__photo{aspect-ratio:7/8;border-radius:var(--radius-2xl);object-fit:cover;block-size:auto;inline-size:100%}.materials__badge{padding:var(--space-component-sm) var(--space-component-sm) var(--space-component-sm) 1.75rem;border-radius:0 var(--radius-md) 0 var(--radius-md);background-color:var(--surface-overlay-dark-light);backdrop-filter:blur(10px);color:var(--text-light);flex-direction:column;gap:.375rem;display:flex;position:absolute;inset-block-end:-1.1875rem;inset-inline-start:0}.materials__badge-value{font-family:var(--font-heading);font-size:var(--text-stat-default);font-variation-settings:"opsz" 14;letter-spacing:var(--tracking-display);text-transform:uppercase;font-weight:700;line-height:normal}.materials__badge-label{gap:var(--space-component-2xs);flex-direction:column;max-inline-size:10rem;display:flex}.materials__badge-title{font-size:var(--text-stat-label);font-weight:300;line-height:var(--leading-stat-label);text-transform:uppercase}.materials__badge-note{font-size:var(--text-xs);line-height:var(--leading-xs)}.logos{padding-inline:var(--space-container-x-wide);border-block-start:var(--stroke-thin) solid var(--border-medium)}.logos__list{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.logos__item{padding:var(--space-section-vertical-sm) var(--space-component-md);justify-content:center;align-items:center;display:flex}.logos__item+.logos__item{border-inline-start:var(--stroke-thin) solid var(--border-medium)}.logos__img{block-size:auto}.cta-banner{min-block-size:34.125rem;padding-block:var(--space-section-vertical-lg);border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light);align-items:center;display:flex;overflow:hidden}.cta-banner__bg{object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.cta-banner:after{content:"";background-image:linear-gradient(to bottom, transparent, var(--background-dark));position:absolute;inset:0}.cta-banner__inner{z-index:1;align-items:center;gap:var(--space-component-lg);flex-direction:column;display:flex;position:relative}.cta-banner__logo{block-size:auto}.cta-banner__pill{align-items:center;gap:var(--space-component-md);border-radius:var(--radius-full);background-color:var(--surface-overlay-light);backdrop-filter:blur(5.3px);inline-size:100%;max-inline-size:60rem;padding:1rem 1.375rem;display:flex}.cta-banner__avatar{border-radius:var(--radius-full);background-color:var(--background-primary);object-fit:cover;flex:none}.cta-banner__text{gap:var(--space-component-xs);flex-direction:column;flex:1 1 0;min-inline-size:0;display:flex}.cta-banner__title{font-size:var(--text-heading-h3);font-weight:700;line-height:var(--leading-heading-h3);text-transform:uppercase}.cta-banner__copy{font-size:var(--text-md);line-height:var(--leading-md)}.cta-banner__action{border-radius:var(--radius-full);background-color:var(--action-primary);flex:none;padding:.71875rem}.cta-banner__action img{scale:1 -1}.services{padding-block:var(--space-section-vertical-lg)}.services__header{align-items:center;gap:var(--space-component-md);text-align:center;flex-direction:column;margin-block-end:var(--space-component-xl);display:flex}.services__list{gap:var(--space-component-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.service-card{gap:var(--space-component-md);border:var(--stroke-thin) solid var(--border-strong);border-radius:var(--radius-xl);flex-direction:column;transition:background-color .3s,border-color .3s,margin-block-start .45s cubic-bezier(.34,1.4,.64,1);display:flex;position:relative;overflow:hidden}.service-card:hover,.service-card:focus-within{z-index:1;border-color:var(--neutral-cream-200);background-color:var(--background-dark);margin-block-start:-1.25rem}.service-card:hover .service-card__stage,.service-card:hover .service-card__title,.service-card:hover .service-card__text,.service-card:focus-within .service-card__stage,.service-card:focus-within .service-card__title,.service-card:focus-within .service-card__text{color:var(--neutral-white)}.service-card:hover .service-card__icon,.service-card:focus-within .service-card__icon{background-color:var(--action-primary);color:var(--neutral-white)}.service-card:hover .service-card__media:after,.service-card:hover .service-card__more,.service-card:focus-within .service-card__media:after,.service-card:focus-within .service-card__more{opacity:1}.service-card__stage{margin:var(--space-input-x) var(--space-input-x) 0;border-inline-start:var(--stroke-default) solid var(--border-accent);font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-muted);text-transform:uppercase;align-self:flex-end;padding:.25rem .75rem}.service-card__icon{z-index:1;border-block-end:var(--stroke-default) solid var(--border-accent);border-radius:var(--radius-sm);background-color:var(--background-dark);color:var(--accent);padding:.6875rem;transition:background-color .3s,color .3s;position:absolute;inset-block-start:2.0625rem;inset-inline-start:1.1875rem}.service-card__glyph{block-size:1.875rem;inline-size:1.875rem;mask:var(--icon) center / contain no-repeat;background-color:currentColor;display:block}.service-card__media{display:block;position:relative}.service-card__media:after{content:"";opacity:0;background-color:#0009;transition:opacity .3s;position:absolute;inset:0}.service-card__more{z-index:1;align-items:center;gap:var(--space-navigation-y);font-size:var(--text-button);font-weight:500;line-height:var(--leading-button);color:var(--text-accent);white-space:nowrap;opacity:0;transition:opacity .3s;display:inline-flex;position:absolute;inset-block-start:50%;inset-inline-start:50%;translate:-50% -50%}.service-card__img{aspect-ratio:13/12;object-fit:cover;block-size:auto;inline-size:100%}.service-card__body{gap:var(--space-component-sm);flex-direction:column;padding:1.375rem 1.375rem 2.25rem;display:flex}.service-card__title,.service-card__stage,.service-card__text{transition:color .3s}.service-card__title{font-size:var(--text-heading-h3);font-weight:700;line-height:var(--leading-heading-h3);text-transform:uppercase;color:var(--text-muted)}.service-card__text{font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-secondary)}.process{padding-block:var(--space-section-vertical-lg);border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light)}.process__inner{align-items:center;gap:var(--space-component-3xl);grid-template-columns:minmax(0,30rem) minmax(0,1fr);display:grid}.process__heading{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;display:flex}.process__body{flex-direction:column;align-items:flex-start;display:flex}.process__text{font-size:var(--text-lg);line-height:var(--leading-lg)}.process__text+.process__text{margin-block-start:var(--leading-lg)}.process__text:last-of-type{margin-block-end:calc(var(--space-component-md) + var(--space-component-sm))}.work{padding-block:var(--space-section-vertical-lg)}.work__header{align-items:end;gap:var(--space-component-3xl);grid-template-columns:minmax(0,30rem) minmax(0,1fr);margin-block-end:var(--space-component-xl);display:grid}.work__heading{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;display:flex}.work__intro{align-items:flex-start;gap:var(--space-component-lg);flex-direction:column;display:flex}.work__text{font-size:var(--text-lg);line-height:var(--leading-lg);color:var(--text-secondary)}.work__list{gap:var(--space-component-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-card{justify-content:space-between;gap:var(--space-component-md);aspect-ratio:658/456;padding:var(--space-component-md);border-block-end:4px solid var(--border-accent);border-radius:var(--radius-xl);color:var(--text-light);flex-direction:column;transition:padding .3s;display:flex;position:relative;overflow:hidden}.project-card:hover,.project-card:focus-visible{padding:2.5rem 1.875rem}.project-card:hover:after,.project-card:focus-visible:after{opacity:.54}.project-card:hover .project-card__cta,.project-card:focus-visible .project-card__cta{opacity:1;scale:1}.project-card__cta{z-index:1;border-radius:var(--radius-full);background-color:var(--action-primary);opacity:0;align-self:center;padding:.71875rem;transition:opacity .3s,scale .3s;display:flex;position:relative;scale:.85}.project-card__cta img{scale:1 -1}.project-card__img{object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.project-card:after{content:"";background-color:var(--background-dark);opacity:.24;transition:opacity .3s;position:absolute;inset:0}.project-card__meta,.project-card__panel{z-index:1;position:relative}.project-card__meta{gap:var(--space-component-md);display:flex}.project-card__chip{border-radius:var(--radius-lg);background-color:var(--surface-overlay-light);backdrop-filter:blur(4.4px);min-inline-size:0;font-size:var(--text-md);line-height:var(--leading-md);flex:1 1 0;padding:.375rem}.project-card__place{align-items:center;gap:.5rem;display:flex}.project-card__year{text-align:end}.project-card__panel{gap:var(--space-component-md);padding:var(--space-input-x);border-radius:var(--radius-lg);background-color:var(--surface-overlay-light);backdrop-filter:blur(4.4px);flex-direction:column;display:flex}.project-card__title{border-block-end:var(--stroke-thin) solid var(--border-warm-subtle);font-size:var(--text-heading-h4);font-weight:500;line-height:var(--leading-heading-h4);text-transform:uppercase;padding-block-end:.75rem}.project-card__footer{justify-content:space-between;align-items:center;gap:var(--space-component-2xs);font-size:var(--text-md);line-height:var(--leading-md);flex-wrap:wrap;display:flex}.project-card__tags{align-items:center;gap:var(--space-component-md);flex-wrap:wrap;display:flex}.project-card__tags>li{align-items:center;gap:var(--space-component-md);display:flex}.project-card__link{align-items:center;gap:var(--space-component-2xs);display:flex}.reviews{padding-block:var(--space-section-vertical-lg);border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light)}.reviews__header{align-items:center;gap:var(--space-component-md);text-align:center;flex-direction:column;margin-block-end:var(--space-component-xl);display:flex}.reviews__list{gap:var(--space-button-x);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.review{border:var(--stroke-thin) solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--surface-overlay-medium);flex-direction:column;display:flex}.review__person{align-items:center;gap:var(--space-component-lg);padding:var(--space-navigation-x);border-block-end:var(--stroke-thin) solid var(--border-subtle);display:flex}.review__avatar{border-radius:var(--radius-full);object-fit:cover;flex:none}.review__name{font-size:var(--text-heading-h5);font-weight:500;line-height:var(--leading-heading-h5);text-transform:uppercase}.review__place{font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-accent)}.review__body{gap:var(--space-component-md);padding:var(--space-button-x);flex-direction:column;flex:auto;display:flex}.review__rating{align-items:center;gap:var(--space-component-2xs);display:flex}.stars{align-items:center;gap:3px;display:flex}.stars__half{display:flex;position:relative}.stars__half img+img{position:absolute;inset-block-start:0;inset-inline-start:0}.review__score{font-family:var(--font-heading);font-size:var(--text-heading-h5);font-variation-settings:"opsz" 14;font-weight:500;line-height:var(--leading-heading-h5)}.review__quote{font-size:var(--text-testimonial);font-style:italic;font-weight:500;line-height:var(--leading-testimonial);color:var(--neutral-cream-200)}.faq{padding-block:var(--space-section-vertical-lg)}.faq__inner{align-items:start;gap:var(--space-component-3xl);grid-template-columns:minmax(0,30rem) minmax(0,1fr);display:grid}.faq__aside,.faq__intro{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;display:flex}.faq__text{max-inline-size:35.5rem;font-size:var(--text-lg);line-height:var(--leading-lg);color:var(--text-secondary);margin-block-end:var(--space-component-sm)}.expert-card{gap:var(--space-component-md);max-inline-size:22.75rem;padding:var(--space-component-md);border-block-end:4px solid var(--border-accent);border-radius:var(--radius-md);background-color:var(--background-dark);flex-direction:column;display:flex}.expert-card__title{font-size:var(--text-heading-h4);font-weight:500;line-height:var(--leading-heading-h4);text-transform:uppercase;color:var(--text-accent)}.expert-card__text{font-size:var(--text-md);line-height:var(--leading-md);color:var(--neutral-cream-200);margin-block-end:var(--space-component-2xs)}.expert-card__contact{align-items:center;gap:var(--space-component-md);display:flex}.expert-card__avatars{flex:none;display:flex}.expert-card__avatars>li+li{margin-inline-start:-.75rem}.expert-card__avatar{border-radius:var(--radius-full);object-fit:cover}.expert-card__name{font-size:var(--text-heading-h5);font-weight:500;line-height:var(--leading-heading-h5);text-transform:uppercase;color:var(--text-light)}.expert-card__call{align-items:center;gap:var(--space-navigation-y);border-block-end:var(--stroke-thin) solid var(--border-accent);font-size:var(--text-button);font-weight:500;line-height:var(--leading-button);color:var(--text-accent);margin-block-start:.4375rem;padding-block-end:.4375rem;display:inline-flex}.faq__list{gap:var(--space-button-x);flex-direction:column;display:flex}.faq-item__q{justify-content:space-between;align-items:center;gap:var(--space-component-xs);padding:var(--space-component-sm) var(--space-component-lg);border-radius:var(--radius-md);background-color:var(--background-warm);font-family:var(--font-heading);font-size:var(--text-faq-question);font-variation-settings:"opsz" 14;font-weight:500;line-height:var(--leading-faq-question);letter-spacing:var(--tracking-heading);text-transform:uppercase;color:var(--text-muted);cursor:pointer;list-style:none;transition:background-color .3s,border-radius .3s,color .3s;display:flex}.faq-item__q::-webkit-details-marker{display:none}.faq-item:not([open]) .faq-item__q:hover{background-color:#ebe7df}.faq-item[open] .faq-item__q{background-color:var(--action-primary);color:var(--neutral-white);border-radius:0}.faq-item__icon{block-size:1.375rem;inline-size:1.4rem;color:var(--text-primary);flex:none;position:relative}.faq-item[open] .faq-item__icon{color:var(--neutral-white)}.faq-item__icon:before,.faq-item__icon:after{content:"";background-color:currentColor;transition:opacity .3s,rotate .3s;position:absolute;inset:0}.faq-item__icon:before{mask:url(/northshore-roofing/assets/icons/plus.svg) 50%/contain no-repeat}.faq-item__icon:after{opacity:0;mask:url(/northshore-roofing/assets/icons/minus.svg) 50%/contain no-repeat}.faq-item[open] .faq-item__icon:before{opacity:0;rotate:90deg}.faq-item[open] .faq-item__icon:after{opacity:1}@supports (interpolate-size:allow-keywords){:root{interpolate-size:allow-keywords}.faq-item::details-content{block-size:0;transition:block-size .3s ease, content-visibility .3s allow-discrete;overflow:hidden}.faq-item[open]::details-content{block-size:auto}}.faq-item__a{padding:var(--space-component-xs) var(--space-component-xl) var(--space-component-md);font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-secondary)}.blog{padding-block:var(--space-section-vertical-xs) var(--space-section-vertical-lg)}.blog__header{align-items:center;gap:var(--space-component-md);text-align:center;flex-direction:column;margin-block-end:calc(var(--space-component-md) + var(--space-component-2xs));display:flex}.blog__list{gap:var(--space-button-x);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.blog-card{border-radius:var(--radius-md);background-color:var(--background-warm);border-block-end:4px solid #0000;flex-direction:column;block-size:100%;transition:border-color .45s,translate .45s;display:flex;overflow:hidden}.blog-card:hover,.blog-card:focus-visible{border-block-end-color:var(--border-accent);translate:0 -10px}.blog-card:hover .blog-card__img,.blog-card:focus-visible .blog-card__img{scale:1.121}.blog-card__media{block-size:18.75rem;display:block;overflow:hidden}.blog-card__img{object-fit:cover;block-size:100%;inline-size:100%;transition:scale .45s}.blog-card__body{padding:18.82px 2rem var(--space-component-xl);flex-direction:column;flex:auto;align-items:flex-start;gap:13px;display:flex}.blog-card__title{font-size:var(--text-card-title);font-weight:500;line-height:var(--leading-card-title);text-transform:uppercase;color:var(--text-muted)}.blog-card__text{-webkit-line-clamp:2;font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-secondary);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.blog-card__more{align-items:center;gap:var(--space-navigation-y);font-size:var(--text-button);font-weight:500;line-height:var(--leading-button);color:var(--text-accent);display:inline-flex}.estimator-section{padding-block:var(--space-section-vertical-lg);background-color:var(--background-warm)}.estimator-section__inner{align-items:start;gap:var(--space-component-2xl) var(--space-component-3xl);grid-template-columns:minmax(0,30rem) minmax(0,1fr);display:grid}.estimator-section__intro{align-items:flex-start;gap:var(--space-component-md);flex-direction:column;display:flex}.estimator-section__text{font-size:var(--text-lg);line-height:var(--leading-lg);color:var(--text-secondary)}.estimator-section__perks{gap:var(--space-component-sm);inline-size:100%;padding:var(--space-component-md);border-block-end:4px solid var(--border-accent);border-radius:var(--radius-md);background-color:var(--background-dark);font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-light);margin-block-start:var(--space-component-sm);display:grid}.estimator-section__perks li{align-items:center;gap:var(--space-component-xs);display:flex}.estimator-section__perks li:before{content:"";border-radius:var(--radius-full);background-color:var(--accent);flex:none;block-size:.5rem;inline-size:.5rem}.estimator{gap:var(--space-component-lg);padding:var(--space-card-y) var(--space-card-x);border-block-end:4px solid var(--border-accent);border-radius:var(--radius-2xl);background-color:var(--background-primary);color:var(--text-primary);display:grid}.estimator [hidden]{display:none}.estimator__progress{gap:var(--space-component-2xs);font-size:var(--text-xs);line-height:var(--leading-xs);text-transform:uppercase;color:var(--text-muted);grid-template-columns:repeat(4,1fr);display:grid}.estimator__progress li{border-block-start:4px solid var(--border-medium);padding-block-start:var(--space-component-xs)}.estimator__progress li[data-done]{border-color:var(--border-accent);color:var(--text-primary)}.estimator__step{gap:var(--space-component-sm);border:0;min-inline-size:0;padding:0;display:grid}.estimator legend{font-family:var(--font-heading);font-size:var(--text-heading-h3);font-weight:700;line-height:var(--leading-heading-h3);text-transform:uppercase;margin-block-end:var(--space-component-xs);padding:0}.estimator legend:focus-visible{box-shadow:none;outline:none}.estimator__label{font-family:var(--font-heading);font-size:var(--text-md);font-weight:600;line-height:var(--leading-md);margin-block-start:var(--space-component-xs)}.estimator__required{color:var(--text-accent);margin-inline-start:.15em}.estimator__hint{font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--text-muted)}.estimator__cards{gap:var(--space-component-xs);grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));display:grid}.estimator__card,.estimator__pill{border:var(--stroke-default) solid var(--border-default);background-color:var(--background-warm);cursor:pointer;transition:border-color .3s,background-color .3s;position:relative}.estimator__card{align-content:start;gap:var(--space-component-2xs);padding:var(--space-component-sm) var(--space-component-md);border-radius:var(--radius-md);display:grid}.estimator__card strong{font-family:var(--font-heading);font-size:var(--text-heading-h5);font-weight:600;line-height:var(--leading-heading-h5)}.estimator__card span{font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--text-secondary)}.estimator__card input,.estimator__pill input{opacity:0;cursor:pointer;position:absolute;inset:0}.estimator__card:has(:checked),.estimator__pill:has(:checked){border-color:var(--border-accent);background-color:var(--background-cream)}.estimator__card:has(:focus-visible),.estimator__pill:has(:focus-visible){outline:2px solid var(--border-accent);outline-offset:2px}.estimator__card:hover,.estimator__pill:hover{border-color:var(--secondary)}.estimator__pills{gap:var(--space-component-2xs);flex-wrap:wrap;display:flex}.estimator__pill{padding:var(--space-navigation-y) var(--space-navigation-x);border-radius:var(--radius-full);font-size:var(--text-md);line-height:var(--leading-md)}.estimator__range{align-items:center;gap:var(--space-component-md);flex-wrap:wrap;display:flex}.estimator__range input{accent-color:var(--primary);flex:1}.estimator__range output{min-inline-size:7rem;font-family:var(--font-heading);font-size:var(--text-heading-h4);font-weight:700;line-height:var(--leading-heading-h4);text-align:end}.estimator__select,.estimator__counter input{padding:var(--space-input-y) var(--space-input-x);border:var(--stroke-thin) solid var(--border-medium);border-radius:var(--radius-xs);background-color:var(--background-primary);font-size:var(--text-md)}.estimator__counter{gap:var(--space-component-2xs);display:flex}.estimator__counter input{text-align:center;appearance:textfield;inline-size:4.5rem}.estimator__counter input::-webkit-inner-spin-button,.estimator__counter input::-webkit-outer-spin-button{appearance:none}.estimator__counter button{border-radius:var(--radius-xs);background-color:var(--background-dark);inline-size:3rem;font-size:var(--text-heading-h4);color:var(--text-light);transition:background-color .25s}.estimator__counter button:hover{background-color:var(--background-dark-alt)}.estimator__check{align-items:center;gap:var(--space-component-xs);font-size:var(--text-md);line-height:var(--leading-md);cursor:pointer;display:flex}.estimator__check input{block-size:1.125rem;inline-size:1.125rem;accent-color:var(--primary)}.estimator__result{gap:var(--space-component-2xs);padding:var(--space-component-lg) var(--space-component-md);border-radius:var(--radius-md);background-color:var(--background-dark);color:var(--text-light);text-align:center;display:grid}.estimator__eyebrow{font-size:var(--text-eyebrow);text-transform:uppercase;color:var(--text-light-muted)}.estimator__price{font-family:var(--font-heading);font-size:var(--text-stat-default);color:var(--accent);font-weight:700;line-height:1.1}.estimator__summary{font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--text-light-muted)}.estimator__breakdown{gap:var(--space-component-xs) var(--space-component-lg);font-size:var(--text-md);line-height:var(--leading-md);grid-template-columns:auto 1fr;display:grid}.estimator__breakdown dt{font-weight:600}.estimator__breakdown dd{text-align:end;color:var(--text-secondary);margin:0}.estimator__note{padding:var(--space-component-sm) var(--space-component-md);border-inline-start:var(--stroke-default) solid var(--border-accent);background-color:var(--surface-overlay-dark-light);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--text-secondary)}.estimator__cta{justify-self:start}.estimator__error{font-size:var(--text-md);color:var(--text-accent);font-weight:600}.estimator__nav{justify-content:space-between;align-items:center;gap:var(--space-component-md);display:flex}.estimator__next{margin-inline-start:auto}.estimator__back{padding-block:var(--space-component-2xs);border-block-end:var(--stroke-default) solid var(--border-accent);font-size:var(--text-button);color:var(--text-primary);font-weight:500;transition:color .25s}.estimator__back:hover{color:var(--text-accent)}.footer{padding-block:var(--space-section-vertical-lg) var(--space-section-vertical-xs);border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light)}.footer__top{gap:var(--space-component-md);grid-template-columns:minmax(0,26.6667rem) minmax(0,1fr);padding-block-end:var(--space-component-xs);display:grid}.footer__brand{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.footer__logo{block-size:auto;margin-block-end:var(--space-navigation-x)}.footer__tagline,.footer__blurb{max-inline-size:18rem}.footer__tagline{font-family:var(--font-heading);font-size:var(--text-xl);font-variation-settings:"opsz" 14;letter-spacing:var(--tracking-heading);text-transform:uppercase;font-weight:600;line-height:normal}.footer__blurb{font-size:var(--text-md);line-height:var(--leading-md);color:var(--neutral-cream-200);margin-block-end:var(--space-component-sm)}.footer__social{gap:5px;display:flex}.footer__social a{inline-size:2rem;padding-block:var(--space-component-2xs);background-color:var(--action-primary);border-radius:3.2px;justify-content:center;align-items:center;display:flex}.footer__main{flex-direction:column;display:flex}.footer__columns{gap:var(--space-component-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.footer__heading{font-size:var(--text-heading-h5);font-weight:500;line-height:var(--leading-heading-h5);text-transform:uppercase;margin-block-end:var(--space-component-md)}.footer__links{font-size:var(--text-md);line-height:var(--leading-md);color:var(--text-light-muted);flex-direction:column;gap:11px;display:flex}.footer__links a,.footer__bottom a,.footer__contact-title a{transition:color .2s}.footer__links a:hover,.footer__bottom a:hover,.footer__contact-title a:hover,.footer__credit{color:var(--accent)}.footer__bottom a.footer__credit:hover,.footer__bottom a.footer__credit:focus-visible{color:var(--text-light)}.footer__contact{gap:var(--space-component-md);grid-template-columns:minmax(0,13.75rem) minmax(0,1fr) minmax(0,14.5625rem);padding-block-start:var(--space-section-vertical-sm);display:grid}.footer__contact-item{align-items:flex-start;gap:var(--space-input-y);display:flex}.footer__contact-icon{background-color:var(--action-primary);border-radius:3.6px;flex:none;padding:9px;display:flex}.footer__contact-title{font-family:var(--font-heading);font-size:var(--text-heading-h5);font-variation-settings:"opsz" 14;font-weight:500;line-height:var(--leading-heading-h5);letter-spacing:var(--tracking-heading);text-transform:uppercase;overflow-wrap:anywhere}.footer__contact-note{font-size:var(--text-md);line-height:var(--leading-md);color:var(--neutral-cream-200);margin-block-start:9px}.footer__bottom{justify-content:space-between;align-items:center;gap:var(--space-component-md);border-block-start:var(--stroke-thin) solid var(--border-subtle);font-size:var(--text-md);line-height:var(--leading-md);color:var(--neutral-cream-200);flex-wrap:wrap;margin-block-start:var(--space-component-sm);padding-block-start:var(--space-component-lg);display:flex}@media (width<=1609.98px){.header__menu-list{column-gap:0}.header__link{padding-inline:var(--space-component-xs)}}@media (width<=1439.98px){.header__logo-img{inline-size:11.25rem}.header__link{padding-inline:var(--space-component-2xs)}.header__cta{padding-inline:var(--space-component-md);font-size:var(--text-sm)}}@media (width<=1279.98px){.hamburger{display:block}.header__nav{flex:none}.header__actions{margin-inline-start:auto}.header__menu{inset:var(--header-height,7.8125rem) 0 auto;inline-size:100%;max-inline-size:none;max-block-size:calc(100dvh - var(--header-height,7.8125rem));padding:var(--space-component-md) var(--gutter) var(--space-component-xl);border:0;border-block-end:4px solid var(--border-accent);background-color:var(--background-dark);color:var(--text-light);opacity:0;transition:opacity .3s ease, translate .3s cubic-bezier(.22, 1, .36, 1), display .3s allow-discrete, overlay .3s allow-discrete;margin:0;display:none;position:fixed;overflow-y:auto;translate:0 -.75rem}.header__menu:popover-open{opacity:1;display:block;translate:0}@starting-style{.header__menu:popover-open{opacity:0;translate:0 -.75rem}}.header__menu-list{flex-direction:column;align-items:stretch}.header__menu-list>li{border-block-end:var(--stroke-thin) solid var(--border-subtle)}.header__link{justify-content:space-between;padding-inline:0}.header__submenu{min-inline-size:0;padding:0 0 var(--space-component-2xs) var(--space-component-md);opacity:1;visibility:visible;background:0 0;border:0;position:static;translate:none}.header__sublink{color:var(--text-light-muted);padding-inline:0}}@media (width<=1199.98px){.hero{padding-block-end:30vw}.hero__inner{flex-direction:column}.hero__content{flex:none;align-self:stretch}.about__content{grid-template-columns:minmax(0,1fr) minmax(13.75rem,20rem)}.about__inner{grid-template-columns:minmax(0,1fr)}.about__stats{align-items:center;column-gap:var(--space-component-3xl);border-inline-end:0;border-block-end:var(--stroke-thin) solid var(--border-subtle);flex-flow:wrap}.about__stat{border-block-end:0;padding-block-end:0}.materials__inner{gap:var(--space-component-3xl);grid-template-columns:minmax(0,1fr)}.services__list{grid-template-columns:repeat(2,minmax(0,1fr))}.process__inner,.work__header{gap:var(--space-component-xl);grid-template-columns:minmax(0,1fr)}.work__list{grid-template-columns:minmax(0,1fr)}.reviews__list{grid-template-columns:repeat(2,minmax(0,1fr))}.faq__inner{gap:var(--space-component-xl);grid-template-columns:minmax(0,1fr)}.expert-card{max-inline-size:none}.blog__list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer__top{gap:var(--space-component-xl);grid-template-columns:minmax(0,1fr)}.footer__contact{grid-template-columns:repeat(2,minmax(0,1fr));padding-block-start:var(--space-component-xl)}}@media (width<=767.98px){.footer__contact-title{font-size:var(--text-lg);line-height:var(--leading-lg)}.header__cta{display:none}.header__menu-cta{margin-block-start:var(--space-component-lg);display:flex}.hero{padding-block-end:45vw}.cta-banner{min-block-size:0;padding-block:var(--space-section-vertical-md)}.cta-banner__logo{inline-size:13.75rem}.cta-banner__pill{gap:var(--space-component-md);padding:var(--space-component-md);border-radius:var(--radius-xl);flex-wrap:wrap}.cta-banner__text{flex-basis:100%}.cta-banner__action{margin-inline-start:auto}.project-card{aspect-ratio:auto;gap:var(--space-component-lg);min-block-size:24rem}.project-card:hover,.project-card:focus-visible{padding:var(--space-component-md)}.project-card__chip{padding-inline:var(--space-component-2xs);font-size:var(--text-sm);line-height:var(--leading-sm)}.project-card__panel{padding:var(--space-component-md)}.project-card__footer{align-items:flex-start;gap:var(--space-component-sm);flex-direction:column}.project-card__tags{gap:var(--space-component-sm)}.services__list,.reviews__list,.blog__list,.footer__columns,.footer__contact{grid-template-columns:minmax(0,1fr)}.logos__list{grid-template-columns:repeat(2,minmax(0,1fr))}.logos__item:nth-child(odd)+.logos__item{border-inline-start:var(--stroke-thin) solid var(--border-medium)}.logos__item:nth-child(odd){border-inline-start:0}.logos__item:nth-child(n+3){border-block-start:var(--stroke-thin) solid var(--border-medium)}main .btn{white-space:normal;align-self:stretch}.about__content{grid-template-columns:minmax(0,1fr)}.about__media{aspect-ratio:4/5}.about__photo{object-position:50% 30%}.warranty{align-self:stretch}.warranty__media{padding:var(--space-component-2xs)}.warranty__img{block-size:auto;inline-size:4.5rem}.warranty__text{max-inline-size:none}}@media (width<=1199.98px){.estimator-section__inner{grid-template-columns:1fr}}@media (width<=767.98px){.estimator__progress{font-size:.6875rem}}:is(a,button,summary,input,select,textarea,[tabindex]):focus-visible{box-shadow:0 0 0 2px var(--background-cream)}
