.homepage__hero{isolation:isolate;background:var(--primary);color:var(--white);padding-block:var(--section-space-m);align-items:center;gap:var(--space-xl);min-block-size:38rem;padding-block-end:calc(var(--section-space-m) + var(--space-l));display:grid;position:relative;overflow:hidden;@media (width<=44rem){min-block-size:36rem;padding-block:var(--section-space-s);gap:var(--space-l);padding-block-end:calc(var(--section-space-s) + var(--space-xxl))}}.homepage__hero-photo{object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.homepage__hero-shade{background:linear-gradient(180deg,var(--primary-40),var(--primary-60) 42%,var(--primary-70));z-index:-1;pointer-events:none;position:absolute;inset:0}.homepage__container{inline-size:100%;max-inline-size:var(--content-width);padding-inline:var(--site-padding);gap:var(--space-l);flex-direction:column;margin-inline:auto;display:flex}.homepage__hero-copy{text-align:center;align-items:center;gap:var(--space-m);flex-direction:column;max-inline-size:60rem;margin-inline:auto;display:flex}.homepage__title{font-size:var(--h2);color:var(--white);background-image:linear-gradient(165deg,var(--white) 12%,color-mix(in srgb,var(--white) 89%,var(--black)) 48%,color-mix(in srgb,var(--white) 78%,var(--black)) 78%,color-mix(in srgb,var(--white) 90%,var(--black)) 100%);-webkit-text-fill-color:transparent;background-repeat:repeat-y;background-size:100% 1lh;-webkit-background-clip:text;background-clip:text;@media (width<=44rem){font-size:var(--h3)}@media (forced-colors:active){-webkit-text-fill-color:currentColor;background:0 0}}.homepage__lead{color:var(--white);font-size:var(--text-l)}.homepage__actions{justify-content:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.homepage__section{padding-block:var(--section-space-m);background:0 0}.homepage__section--tint{background:var(--primary-10)}.homepage__heading{font-size:var(--h2)}.homepage__three{gap:var(--space-m);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;@media (width<=60rem){grid-template-columns:1fr}}.homepage__section-heading{justify-content:space-between;align-items:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.homepage__benefits{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));align-items:stretch;display:grid}.homepage__projects{gap:var(--space-l);grid-template-columns:repeat(3,minmax(0,1fr));inline-size:100%;display:grid;@media (width<=60rem){grid-template-columns:1fr}}.homepage__services{grid-auto-rows:auto;gap:0;display:grid;position:relative}.homepage__flow{isolation:isolate;background:var(--white);position:relative;&:before{content:"";z-index:-1;pointer-events:none;background:repeating-linear-gradient(140deg,transparent 0 calc(var(--section-space-xxl) * 3),var(--primary-10) calc(var(--section-space-xxl) * 3) calc(var(--section-space-xxl) * 3 + var(--space-xl)),transparent calc(var(--section-space-xxl) * 3 + var(--space-xl)) calc(var(--section-space-xxl) * 3 + var(--space-xxl)),var(--secondary-10) calc(var(--section-space-xxl) * 3 + var(--space-xxl)) calc(var(--section-space-xxl) * 3 + var(--space-xxl) + var(--space-s)),transparent calc(var(--section-space-xxl) * 3 + var(--space-xxl) + var(--space-s)) calc(var(--section-space-xxl) * 6));position:absolute;inset:0}}.homepage__heading-group{gap:var(--space-s);flex-direction:column;display:flex}.homepage__eyebrow{color:var(--secondary-400)}.homepage__between-services{background:var(--white);position:relative;&:before,&:after{content:"";block-size:calc(var(--border-width) * 3);background:linear-gradient(90deg,var(--primary),var(--primary) 46%,var(--secondary) 54%,var(--secondary));pointer-events:none;position:absolute;inset-inline:0}&:before{inset-block-start:0}&:after{inset-block-end:0}}.homepage__owner-section{padding-block:var(--section-space-m);background:var(--white)}.homepage__owner{gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid;@media (width<=48rem){gap:var(--space-l);grid-template-columns:minmax(0,1fr)}}.homepage__owner-photo{object-fit:cover;object-position:50% 55%;transform-origin:100%;block-size:100%;inline-size:100%;display:block;position:absolute;inset:0;scale:1.16}.homepage__owner-copy{gap:var(--space-m);max-inline-size:65ch;display:grid}.homepage__owner-letter{margin:0}.homepage__owner-signature{gap:var(--space-xxs);display:grid;& p{margin:0}}.homepage__owner-name{font-size:var(--h5);color:var(--heading-color)}.homepage__hero .homepage__hero-eyebrow.homepage__eyebrow{color:var(--white)}.homepage__owner-photo-frame{border-radius:var(--radius-m);box-shadow:var(--shadow-m);position:relative;overflow:hidden;@media (width<=48rem){aspect-ratio:4/3}}.homepage__track{z-index:-2;grid-area:auto;block-size:100%;inline-size:100%;position:absolute;inset:0}.homepage__slide{block-size:100%;min-inline-size:0;transition:opacity calc(var(--motion-duration) * 4) ease-in-out,visibility calc(var(--motion-duration) * 4);position:relative;@media (prefers-reduced-motion:reduce){transition:none}}.homepage__photo-controls{justify-content:space-between;align-items:center;gap:var(--space-m);inline-size:100%;max-inline-size:var(--content-width);padding-inline:var(--site-padding);flex-wrap:wrap;margin-inline:auto;display:flex;&[hidden]{visibility:hidden;display:flex}@media (width<=44rem){text-align:center;justify-content:center}}.homepage__photo-caption{font-size:var(--text-s);color:var(--white);max-inline-size:42ch;text-shadow:0 var(--border-width) var(--space-xs) var(--black);margin:0}.homepage__photo-buttons{align-items:center;gap:var(--space-xs);display:flex}.homepage__photo-button{min-block-size:var(--tap-target);grid-area:auto;margin:0;position:static}.homepage__photo-pause{min-block-size:var(--tap-target);min-inline-size:6em}.homepage__photo-credit{inset-inline:var(--site-padding);pointer-events:none;position:absolute;inset-block-end:var(--space-l)}.homepage__media{z-index:-2;pointer-events:none;position:absolute;inset:0}.homepage__hero-video{object-fit:cover;object-position:60% 50%;opacity:0;block-size:100%;inline-size:100%;transition:opacity var(--motion-duration) var(--motion-ease);position:absolute;inset:0;&[data-playing]{opacity:1}@media (prefers-reduced-motion:reduce){transition:none;display:none}}
