@font-face{font-family:Geist;src:url(/fonts/geist.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color:#22231e;font-synthesis:none;--paper:#f7f5ef;--ink:#22231e;--muted:#565950;--line:#d8d6cd;--red:#a83426;--coral:#f27b61;--forest:#252e27;--gutter:clamp(1.25rem, 5.3vw, 5rem);--page-width:1440px;background:#f7f5ef;font-family:Geist,Arial,sans-serif}*,:before,:after{box-sizing:border-box}body{margin:0}main:focus{outline:none}img{max-width:100%;height:auto;display:block}a{color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}:focus-visible{outline:3px solid var(--coral);outline-offset:4px}[hidden]{display:none!important}::selection{background:var(--coral);color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.065em;text-wrap:balance;font-weight:520;line-height:.98}h1{font-size:clamp(3rem,8vw,7.75rem)}h2{font-size:clamp(2.35rem,5vw,5.4rem)}h3{font-size:clamp(1.6rem,3vw,2.85rem)}p{line-height:1.55}.wrap{width:100%;max-width:var(--page-width);padding-inline:var(--gutter);margin-inline:auto}.block{padding-block:clamp(3.65rem,8vw,8rem)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:10;background:#fff;padding:.85rem 1rem;position:absolute;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip:focus{transform:translateY(0)}.masthead{z-index:3;background:var(--paper);border-bottom:1px solid #22231e17;position:relative}.masthead-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;height:76px;display:grid}.wordmark{width:fit-content;display:inline-flex}.wordmark img{width:80px}.main-nav,.nav-end{align-items:center;display:flex}.main-nav{gap:clamp(1.3rem,3vw,3.15rem)}.main-nav a{padding-block:1rem;font-size:.92rem;font-weight:550;text-decoration:none}.main-nav a:hover,.main-nav a[aria-current=page],.language:hover{color:var(--red)}.nav-end{justify-content:flex-end;gap:clamp(.55rem,1.6vw,1.65rem)}.language{padding:.65rem;font-size:.78rem;font-weight:700;text-decoration:none}.button{background:var(--ink);color:#fff;border:1px solid #0000;justify-content:space-between;align-items:center;gap:1.25rem;width:fit-content;min-height:49px;padding:.8rem 1.05rem;font-size:.87rem;font-weight:640;line-height:1.2;text-decoration:none;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.button span{font-size:1.15em}.button:hover{background:var(--red)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{color:#fff}.nav-cta{border:1px solid var(--line);color:var(--ink);white-space:nowrap;background:0 0;min-height:42px}.nav-cta:hover{border-color:var(--ink);background:var(--ink);color:#fff}.mobile-nav{display:none}.mobile-nav summary{border:1px solid var(--line);place-content:center;gap:5px;width:44px;height:44px;list-style:none;display:grid}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{background:currentColor;width:17px;height:1px}.mobile-nav[open] summary span:first-child{transform:translateY(3px)rotate(45deg)}.mobile-nav[open] summary span:last-child{transform:translateY(-3px)rotate(-45deg)}.mobile-nav nav{padding:0 var(--gutter) .8rem;background:var(--paper);position:absolute;inset:100% 0 auto;box-shadow:0 10px 15px #0002}.mobile-nav nav a{border-top:1px solid var(--line);justify-content:space-between;padding:1rem 0;text-decoration:none;display:flex}.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:.65rem;font-size:.72rem;font-weight:680;display:flex}.signal{background:currentColor;border-radius:50%;flex:0 0 7px;width:7px;height:7px;display:inline-block}.film{--film-height:clamp(570px, calc(88svh - 76px), 870px);--progress:0}.film-active{height:calc(var(--film-height) + clamp(650px, 105svh, 1050px))}.film-frame{isolation:isolate;height:var(--film-height);color:#fff;background:#394438;position:relative;overflow:hidden}.film-active .film-frame{position:sticky;top:0}.film-media,.film-shade{width:100%;height:100%;position:absolute;inset:0}.film-media img,video.film-media{object-fit:cover;object-position:56% 53%;width:100%;height:100%}video.film-media{visibility:hidden;pointer-events:none}.film-active.film-loaded video.film-media{visibility:visible}.film-shade{background:linear-gradient(90deg,#0e160fe0 0%,#151d14a5 32%,#161e1530 73%,#161e1500 100%),linear-gradient(#0000 64%,#101610bb 100%),linear-gradient(#12180d28 0%,#0000 40%)}.film-inner{flex-direction:column;justify-content:flex-end;height:100%;display:flex;position:relative}.film-copy{margin-block:auto;padding:3.5rem 0 1rem}.film-copy .eyebrow{color:#fff}.film-copy .signal{background:var(--coral)}.film h1{text-wrap:balance;letter-spacing:-.075em;max-width:17ch;margin-block:1.25rem;font-size:clamp(3.5rem,7vw,7rem);font-weight:540}.film-lead{color:#fff;max-width:34ch;font-size:clamp(1rem,1.4vw,1.25rem)}.film-copy .button{margin-top:1.75rem}.film-foot{border-top:1px solid #ffffff54;justify-content:space-between;align-items:center;gap:.8rem;min-height:79px;display:flex}.film-scroll,.film-credit{text-transform:uppercase;letter-spacing:.105em;align-items:center;gap:.6rem;font-size:.7rem;font-weight:650;text-decoration:none;display:inline-flex}.scroll-icon{border:1px solid #ffffff85;border-radius:50%;place-items:center;width:32px;height:32px;font-size:1rem;text-decoration:none;display:grid}.scroll-icon:hover{color:var(--ink);background:var(--paper)}.film-info{align-items:center;gap:clamp(.5rem,1.45vw,1.5rem);display:flex}.film-progress{background:#ffffff70;width:clamp(36px,7vw,115px);height:2px;display:none}.film-active .film-progress{display:block}.film-progress span{background:var(--coral);height:100%;transform:scaleX(var(--progress));transform-origin:0;display:block}[data-motion]{color:#fff;background:#18201576;border:1px solid #ffffff85;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}[data-motion]:hover{background:#22231e}[data-motion][aria-pressed=true] span{border-inline:2px solid;width:9px;height:12px}[data-motion][aria-pressed=false] span{border-left:8px solid;border-block:5px solid #0000;margin-left:2px}.section-intro{grid-template-columns:1.2fr .8fr;align-items:end;gap:2rem;margin-bottom:clamp(1.9rem,4vw,3.6rem);display:grid}.section-intro h2,.detail-heading h1,.feature h2,.contact-intro h1{margin-top:.8rem}.section-intro>p,.detail-heading>p{max-width:43ch;color:var(--muted);padding-bottom:.15rem;font-size:clamp(1rem,1.4vw,1.2rem)}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,2rem);display:grid}.solution-card{border:1px solid var(--line);background:#faf9f4;text-decoration:none;display:block;position:relative}.card-media{aspect-ratio:16/9;background:#dbdcd2;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.solution-card:hover img{transform:scale(1.035)}.card-content{padding:clamp(1rem,2.7vw,2.25rem) 4.35rem clamp(1rem,2.7vw,2.25rem) clamp(1rem,2.7vw,2.25rem);position:relative}.card-content h3{margin-block:.65rem .5rem}.card-content>p:last-of-type{max-width:48ch;color:var(--muted)}.round-arrow{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:43px;height:43px;transition:background .2s,color .2s;display:grid}.card-content .round-arrow{position:absolute;bottom:clamp(1rem,2.7vw,2.25rem);right:clamp(1rem,2.7vw,2.25rem)}.solution-card:hover .round-arrow,.service-list a:hover .round-arrow{background:var(--ink);border-color:var(--ink);color:#fff}.feature{background:var(--forest);color:var(--paper);padding-block:clamp(2.6rem,6vw,6rem)}.feature-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(1.5rem,6vw,6rem);display:grid}.feature-grid img{aspect-ratio:5/4;object-fit:cover;width:100%;height:100%}.feature .eyebrow{color:var(--coral)}.feature h2{text-wrap:initial;font-size:clamp(2.35rem,5.25vw,5.4rem)}.feature-copy>p:not(.eyebrow){color:#e0e4da;max-width:38ch;margin-block:1.2rem 1.6rem}.more h2{font-size:clamp(2rem,4vw,4.5rem)}.service-list{grid-template-columns:1fr 1fr;column-gap:clamp(1rem,5vw,5rem);margin-top:2.4rem;display:grid}.service-list a{border-top:1px solid var(--line);letter-spacing:-.045em;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.2rem;font-size:clamp(1.12rem,2vw,1.85rem);font-weight:560;text-decoration:none;display:flex}.service-list a small{color:var(--red);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.3rem;font-size:.65rem;display:block}.contact-band{background:#e9e5db;padding-block:clamp(2.5rem,6vw,5.3rem)}.contact-band .wrap{justify-content:space-between;align-items:center;gap:1.2rem;display:flex}.contact-band h2{font-size:clamp(2.35rem,5vw,4.5rem)}.site-footer{color:#f8f6f0;background:#1d211b;padding-block:clamp(2.5rem,5vw,4.5rem) 1.35rem}.footer-grid{grid-template-columns:1.55fr 1fr 1fr;gap:1.2rem;padding-bottom:2.8rem;display:grid}.footer-mark{display:inline-block}.footer-grid p{color:#dbddd3;max-width:27ch;margin-top:1rem}.footer-links{align-content:start;gap:.85rem;display:grid}.site-footer a{text-decoration:none}.site-footer a:hover{text-underline-offset:.25rem;text-decoration:underline}.footer-end{color:#dbddd3;border-top:1px solid #ffffff43;justify-content:space-between;gap:1rem;padding-top:1.3rem;font-size:.8rem;display:flex}.detail{padding-block:clamp(1.8rem,4vw,4rem) clamp(3.5rem,7vw,7rem)}.back-link{color:var(--muted);font-size:.9rem;font-weight:560;text-decoration:none;display:inline-block}.back-link:hover,.text-link:hover{color:var(--red)}.detail-heading{grid-template-columns:1.35fr .65fr;align-items:end;gap:2rem;margin-block:clamp(2rem,5vw,5rem) clamp(1.55rem,4vw,3.5rem);display:grid}.detail-heading h1{text-wrap:initial;overflow-wrap:anywhere;font-size:clamp(3rem,7vw,6.8rem)}.solutions-page .detail-heading{margin-top:0}.detail-image{aspect-ratio:2.14;object-fit:cover;background:#e4e3d9;width:100%}.detail-body{grid-template-columns:1.6fr .65fr;gap:clamp(2rem,7vw,7rem);padding-block:clamp(2.2rem,6vw,5.5rem);display:grid}.detail-body section+section,.prose section{margin-top:2rem}.detail-body h2,.prose h2,.calculator h2,.gallery h2{text-wrap:initial;font-size:clamp(1.65rem,3.25vw,3.5rem);line-height:1.08}.detail-body section p,.prose p{color:var(--muted);max-width:65ch;margin-top:.7rem}.detail-aside{border:1px solid var(--line);overflow-wrap:anywhere;align-self:start;gap:1.05rem;padding:clamp(1rem,2.5vw,2rem);display:grid}.detail-aside p{color:var(--muted)}.text-link{border-bottom:1px solid var(--line);width:fit-content;padding-bottom:.3em;text-decoration:none;display:inline-block}.detail-aside p .text-link{margin:.3em .6em .1em 0}.stats{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.stats>div{gap:.25rem;padding:1.5rem clamp(.6rem,2vw,2.4rem);display:grid}.stats>div+div{border-left:1px solid var(--line)}.stats strong{letter-spacing:-.07em;font-size:clamp(1.65rem,4vw,3.2rem);font-weight:520}.stats span{color:var(--muted);font-size:.86rem}.gallery,.calculator{margin-top:clamp(2.25rem,5vw,5rem)}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.4rem;display:grid}.gallery-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid a{display:block;overflow:hidden}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .3s}.gallery-grid a:hover img{transform:scale(1.04)}.gallery-grid.gallery-with-captions{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-with-captions a{background:#eeece3;text-decoration:none}.gallery-caption{padding:.85rem 1rem;font-weight:550;line-height:1.4;display:block}.gallery dialog{color:#fff;background:#1d211b;border:none;max-width:min(94vw,1120px);max-height:95dvh;padding:1rem}.gallery dialog::backdrop{background:#151a13e8}.gallery-dialog{grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;display:grid}.gallery-dialog [data-close]{grid-column:1/-1;justify-self:end}.gallery-dialog button{color:#fff;background:0 0;border:1px solid #ffffff6b;min-width:44px;min-height:44px;font-size:1.15rem}.gallery-dialog img{object-fit:contain;width:100%;max-height:67dvh}.gallery-dialog figcaption{text-align:center;margin-top:.6rem;font-size:.9rem}.calculator{background:#e9e5db;padding:clamp(1.25rem,4vw,3rem)}.calculator p{color:var(--muted);margin-top:.7rem}.calculator form{grid-template-columns:1fr 1fr auto;align-items:end;gap:.85rem;margin-top:1.25rem;display:grid}.calculator output{grid-column:1/-1;font-weight:600}.calculator output:empty{display:none}.contact-page{grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5.5vw,5rem);padding-block:clamp(2.5rem,7vw,7rem);display:grid}.contact-intro h1{font-size:clamp(3rem,6.55vw,6.5rem)}.contact-intro>p:not(.eyebrow){max-width:38ch;color:var(--muted);margin-top:1rem;font-size:1.15rem}.contact-links{gap:.8rem;margin-top:1.8rem;display:grid}.contact-form{border:1px solid var(--line);background:#faf9f4;align-content:start;gap:1.1rem;padding:clamp(1.25rem,3vw,2.65rem);display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}form label{gap:.4rem;font-size:.9rem;font-weight:570;display:grid}form input:not([type=hidden]),form textarea,form select{width:100%;min-width:0;color:var(--ink);background:#fffefa;border:1px solid #a9ab9e;border-radius:0;min-height:49px;padding:.7rem;font-size:1rem}form textarea{resize:vertical}.form-note{color:var(--muted);font-size:.82rem}.prose h1{font-size:clamp(2.8rem,6vw,6rem)}.prose .button{margin-top:1.4rem}@media (width<=850px){.masthead-inner{grid-template-columns:1fr auto;height:66px}.main-nav,.nav-cta{display:none}.mobile-nav{display:block}.film{--film-height:clamp(530px, calc(88svh - 66px), 760px)}.contact-page{grid-template-columns:1fr}.contact-form{max-width:640px}}@media (width<=640px){.film{--film-height:clamp(555px, calc(91svh - 66px), 720px)}.film-media img,video.film-media{object-position:61% 51%}.film-shade{background:linear-gradient(90deg,#11190e99,#11190e30),linear-gradient(#0000 0%,#10161070 49%,#101610d9 100%)}.film-copy{margin-block:auto 1.5rem;padding:2.3rem 0 .5rem}.film h1{font-size:clamp(2.5rem,9.5vw,3.75rem)}.film-foot{min-height:63px}.film-scroll,.film-credit{letter-spacing:.07em;gap:.4rem;font-size:.58rem}.film-credit{white-space:nowrap}.scroll-icon{width:27px;height:27px}.film-active .film-progress{display:none}.section-intro,.card-grid,.feature-grid,.service-list,.detail-heading,.detail-body{grid-template-columns:1fr}.section-intro,.detail-heading{gap:.85rem}.feature-grid img{aspect-ratio:4/3}.service-list{margin-top:1.4rem}.contact-band .wrap{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr;gap:1.6rem}.footer-end{flex-direction:column;align-items:flex-start}.detail-image{aspect-ratio:4/3}.stats>div{padding-block:.85rem}.stats span{font-size:.7rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid.gallery-with-captions,.gallery-grid:has(>:nth-child(2):last-child,>:nth-child(3):last-child){grid-template-columns:1fr}.gallery-dialog{grid-template-columns:1fr 1fr}.gallery-dialog figure{grid-area:2/1/auto/-1}.calculator form{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator .button{grid-column:1/-1}}@media (width<=360px){.film h1{font-size:3.25rem}.film-credit{font-size:.51rem}.field-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}
