.reveal-hero{position:relative;background:#000}.reveal-hero__stage{height:100svh;min-height:650px;position:relative;overflow:hidden}.reveal-hero__paper{position:absolute;inset:0;background:#cbcbcb;overflow:hidden;transform-origin:50% 50%;clip-path:inset(0%)}
.reveal-hero__art{position:absolute;right:-2%;bottom:0;width:88%;height:86%;overflow:hidden}.reveal-hero__art img,.reveal-hero__art canvas{position:absolute;width:100%;height:100%;object-fit:contain;inset:0;display:block}.reveal-hero__art img{opacity:0}.reveal-hero__art.is-ready img{opacity:1}.reveal-hero__art canvas{touch-action:pan-y}
.reveal-hero h1{position:absolute;left:6vw;top:24%;font:500 clamp(34px,3.4vw,56px)/1.13 Arial,sans-serif;letter-spacing:-.025em;color:#241e1b;margin:0;pointer-events:none;z-index:2}.reveal-hero h1 em{font-style:normal;color:#db3625}.reveal-hero__trace{position:absolute;pointer-events:none;width:26px;height:26px;border:1px solid #d83926;border-radius:50%;transform:translate(-50%,-50%);opacity:0;z-index:3}
body:has(.reveal-hero) .navbar{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}body:has(.reveal-hero) .navbar .nav-link:not(.active){color:#241e1b}
@media(max-width:700px){.reveal-hero__stage{min-height:640px}.reveal-hero h1{top:145px;font-size:36px;left:7vw}.reveal-hero__art{width:135%;height:64%;right:-22%;bottom:0}.reveal-hero__trace{display:none}}
@media(prefers-reduced-motion:reduce){.reveal-hero__trace{display:none}}
.sv__preview-img { object-fit: cover; }

.home-services{padding:48px 5vw 56px;background:#f7f0ea;color:#221c19}.home-services__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.home-services__top h2{font:500 clamp(30px,3vw,46px)/1.1 Arial,sans-serif;margin:0;letter-spacing:normal}.home-services a{color:inherit;text-decoration:none}.home-services__top>a{font-size:14px}
.service-folds{display:flex;height:490px;border-bottom:1px solid #221c1940;border-top:1px solid #221c1940}.service-fold{display:flex;min-width:0;flex:0 0 6.5%;border-right:1px solid #221c1930;overflow:hidden;transition:flex .65s cubic-bezier(.22,.8,.25,1)}.service-fold:first-child{border-left:1px solid #221c1930}.service-fold.is-open{flex:1 1 0%}.service-fold__toggle{flex:0 0 58px;position:relative;border:0;background:none;color:inherit;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:20px 0;gap:15px}.service-fold__name{writing-mode:vertical-rl;transform:rotate(180deg);font:500 19px/1.1 Arial,sans-serif;white-space:nowrap}.service-fold__plus{font-size:25px}.is-open .service-fold__toggle{color:#d83324}.is-open .service-fold__plus{transform:rotate(45deg)}
.service-fold__body{min-width:0;flex:1;display:flex;flex-direction:column;padding:18px 22px 20px 8px;opacity:0;visibility:hidden;transition:opacity .3s .1s}.is-open .service-fold__body{opacity:1;visibility:visible}.service-fold__body>a{display:block;flex:1;min-height:0;overflow:hidden;background:transparent}.service-fold__body img{display:block;width:100%;height:100%;object-fit:contain}.service-fold__caption{display:flex;gap:20px;align-items:center;padding-top:16px}.service-fold__caption p{font:14px/1.5 Arial,sans-serif;margin:0}.service-fold__caption>a{font-size:32px}.service-fold__toggle:focus-visible,.service-fold a:focus-visible{outline:2px solid #d83324;outline-offset:-3px}
@media(max-width:1000px){.service-fold{flex-basis:6%}.service-fold__toggle{flex-basis:44px}.service-fold__name{font-size:16px}.service-fold__body{padding-right:12px}.service-fold__caption p{font-size:12px}}
@media(max-width:900px){.home-services{padding:35px 5vw}.service-folds{display:block;height:auto}.service-fold{display:block;border-right:0;border-bottom:1px solid #221c1930}.service-fold:first-child{border-left:0}.service-fold__toggle{width:100%;flex-direction:row;gap:16px;padding:15px 8px}.service-fold__name{writing-mode:horizontal-tb;transform:none;font-size:16px;flex:1;text-align:left;white-space:normal}.service-fold__body{display:none;padding:0 8px 20px}.is-open .service-fold__body{display:flex}.service-fold__body>a{height:235px;flex:auto}.service-fold__body img{height:235px}.service-fold__caption p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.service-fold,.service-fold__body{transition:none}}

body.services-in-view .navbar .nav-link:not(.active){color:#221c19}body.services-in-view .navbar img{filter:brightness(0)}

.service-fold__body>a{display:flex;align-items:center;justify-content:center}
.service-fold__body img{width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain}
.service-video-open{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;overflow:hidden;border:0;background:transparent;padding:0;cursor:pointer}.service-video-open span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:62px;height:62px;background:#f7f0eae8;color:#211c19;border-radius:50%;font-size:23px;box-shadow:0 5px 30px #0003}.service-video-open:focus-visible{outline:2px solid #d83324;outline-offset:-3px}
.service-video-dialog{padding:0;border:0;background:#090909;max-width:92vw;max-height:90svh;overflow:visible;margin:auto}.service-video-dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}.service-video-dialog video{display:block;max-width:92vw;max-height:85svh;width:auto;height:auto}.service-video-close{position:absolute;right:8px;top:8px;z-index:2;background:#fff;color:#222;border:0;border-radius:50%;width:40px;height:40px;font:28px/1 Arial,sans-serif;cursor:pointer}
@media(max-width:700px){.service-video-open{height:235px;flex:none}.service-fold__body img{height:auto;max-height:235px}.service-fold__body>a{height:auto;max-height:235px;flex:none}}

.reveal-hero__art{mask-image:linear-gradient(90deg,transparent 0%,#000 15%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 15%)}

body:has(.reveal-hero) .navbar .nav-wrapper{background:rgba(248,244,236,.72);border:1px solid rgba(255,255,255,.38);box-shadow:0 16px 40px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.18);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%)}

.reveal-hero__art::after{content:"";position:absolute;inset:0 0 auto;height:9%;background:linear-gradient(to bottom,#cbcbcb,rgba(203,203,203,0));pointer-events:none}
@media(max-width:700px){
 .hsx-ls-title[data-hsx-ls="top"],.hsx-ls-title[data-hsx-ls="bottom"]{font-size:min(20cqw,20svh)}
}
@media(hover:none),(pointer:coarse){
 .reveal-hero__art canvas{pointer-events:none}
 .reveal-hero__trace{display:none}
 .reveal-hero__paper{clip-path:none}
 .reveal-hero__stage{min-height:0}
}
.hsx-longscroll.hsx-touch-flow{height:400svh}
@media(max-width:767px){.hsx-longscroll.hsx-touch-flow{height:300svh}}
.hsx-touch-flow .hsx-longscroll__inner{height:100svh}
.hsx-touch-flow .hsx-ls-layout{min-height:100svh;max-height:100svh;padding:100px 0 35px;gap:clamp(18px,4svh,40px)}
.hsx-touch-flow .hsx-ls-title[data-hsx-ls]{font-size:min(28cqw,18svh);line-height:.95;white-space:nowrap;transform-origin:50% 50%}
@media(max-height:500px){.hsx-touch-flow .hsx-ls-layout{padding-top:78px;padding-bottom:12px;gap:12px}.hsx-touch-flow .hsx-ls-title[data-hsx-ls]{font-size:min(15cqw,15svh)}}

.hsx-touch-flow .hsx-ls-title[data-hsx-ls="middle"]{position:relative}

@media(hover:none),(pointer:coarse){
 body:has(.reveal-hero) .navbar .nav-wrapper{backdrop-filter:none;-webkit-backdrop-filter:none}
 .hsx-touch-flow .hsx-longscroll__inner{contain:paint}
}

html.sni-lock,html.sni-lock body{overflow:hidden}
.sni{position:fixed;inset:0;z-index:12000;overflow:hidden;pointer-events:none;animation:sni-failsafe .01s 9s forwards}
.sni__half{position:absolute;left:0;right:0;height:50%;overflow:hidden;background:#fff;will-change:transform}
.sni__half--top{top:0}
.sni__half--bot{bottom:0}
.sni__logo{position:absolute;left:50%;width:var(--sni-lw,42vw);max-width:620px;height:auto;visibility:hidden;will-change:transform}
.sni.is-set .sni__logo{visibility:visible}
.sni__rule{position:absolute;top:50%;left:50%;z-index:3;width:0;height:4px;background:#2b2a28;transform:translate(-50%,-50%);will-change:width}
@keyframes sni-failsafe{to{visibility:hidden;opacity:0}}
@media(max-width:760px){.sni__logo{width:var(--sni-lw,74vw)}}
@media(prefers-reduced-motion:reduce){.sni{display:none!important}}
html.sni-lock .sa-cookie{opacity:0;visibility:hidden}
