.bg,.gl,.ig,.pc,.pj,.tx{font-family:var(--hp-font-body),system-ui,sans-serif;font-weight:var(--hp-fw-body,400);position:relative;overflow:hidden}.b3{--b3-canvas:var(--hp-bg);--b3-ink:var(--hp-text);--b3-ink-2:var(--hp-text-muted);--b3-ink-soft:color-mix(in srgb,var(--b3-ink-2) 84%,var(--b3-ink));--b3-border:var(--hp-border-hairline,var(--hp-border))}[data-canvas=background].b3{--b3-canvas:var(--hp-bg);--b3-ink:var(--hp-text);--b3-ink-2:var(--hp-text-muted)}[data-canvas=surface].b3{--b3-canvas:var(--hp-surface);--b3-ink:var(--hp-text);--b3-ink-2:var(--hp-text-muted)}[data-canvas=dark].b3,[data-hasbg=true].b3{--b3-canvas:var(--hp-primary-dark);--b3-ink:var(--hp-on-dark);--b3-ink-2:var(--hp-on-dark-muted);--b3-border:var(--hp-border-hairline-dark,rgb(255 255 255/0.14))}.b3{background-color:var(--b3-canvas);color:var(--b3-ink);--b3-card:var(--hp-surface-card,#fff);--b3-card-ink:var(--hp-text);--b3-card-ink-2:color-mix(in srgb,var(--hp-text-muted) 84%,var(--hp-text));--b3-card-bd:var(--hp-border-hairline,var(--hp-border))}[data-canvas=dark].b3,[data-hasbg=true].b3{--b3-card:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 9%,var(--b3-canvas));--b3-card-ink:var(--b3-ink);--b3-card-ink-2:var(--b3-ink-soft);--b3-card-bd:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 34%,var(--b3-canvas))}.ig[data-variant=benefit]{--b3-card:var(--b3-canvas);--b3-card-ink:var(--b3-ink);--b3-card-ink-2:var(--b3-ink-soft)}.bg>.px-inner,.gl>.px-inner,.ig>.px-inner,.pc>.px-inner,.pj>.px-inner,.tx>.px-inner{max-width:var(--hp-container,1280px);padding-inline:var(--hp-gutter,clamp(1rem,4vw,3rem));padding-block:var(--hp-sec,clamp(3.5rem,6vw,6rem))}.b3 .px-h2{color:var(--b3-ink)}.b3 .px-sub{color:var(--b3-ink-soft);max-width:var(--hp-maxw,60ch)}.b3-rule{width:48px;border:0;margin:calc(1.1rem * var(--hp-rhythm, 1)) 0;height:calc(2 * var(--hp-bw, 1px));background:rgb(var(--hp-accent-rgb))}.gl-grid{display:grid;gap:calc(1rem * var(--hp-rhythm, 1));margin-top:calc(1.6rem * var(--hp-rhythm, 1));grid-template-columns:1fr 1fr}@media (min-width:900px){.gl[data-cols="2"] .gl-grid{grid-template-columns:var(--hp-gallery-split,repeat(2,1fr))}.gl[data-cols="3"] .gl-grid{grid-template-columns:var(--hp-gallery-split,repeat(3,1fr))}}.gl-item{margin:0;display:flex;flex-direction:column;gap:calc(.6rem * var(--hp-rhythm, 1))}.gl-btn{position:relative;display:block;width:100%;aspect-ratio:var(--hp-gallery-aspect,4/3);overflow:hidden;padding:0;background:none;border:0;border-radius:var(--hp-r-md);box-shadow:var(--hp-sh-e2,var(--hp-sh-card))}.gl[data-lightbox=true] .gl-btn{cursor:zoom-in}.gl[data-lightbox=false] .gl-btn{cursor:default;pointer-events:none}.gl-btn:focus-visible{outline:none;box-shadow:var(--hp-focus-ring,0 0 0 3px rgb(var(--hp-accent-rgb)/.45))}.gl-btn img{object-fit:cover;transition:scale var(--hp-dur-slow,.5s) var(--hp-ease,ease)}@media (hover:hover){.gl[data-hoverzoom=true] .gl-item:hover .gl-btn img{scale:calc(1.05 * var(--hp-hover-scale, 1))}}.gl-cap{margin:0;text-align:center;font-size:var(--hp-t-xs,.85rem);color:var(--b3-ink-soft)}.gl[data-captions=false] .gl-cap{display:none}.gl-note{margin:calc(1.4rem * var(--hp-rhythm, 1)) 0 0;font-size:var(--hp-t-xs,.8rem);color:var(--b3-ink-soft)}.gl-lightbox{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0/.88);padding:3vmin;cursor:zoom-out}.gl-lightbox img{max-width:94vw;max-height:90vh;object-fit:contain;border-radius:var(--hp-r-md)}.pc-head{display:grid;grid-template-columns:1fr;align-items:end;gap:calc(1.5rem * var(--hp-rhythm, 1))}@media (min-width:700px){.pc-head{grid-template-columns:var(--hp-portfolio-split,1fr auto)}}.pc-copy{min-width:0}.pc-nav{display:flex;gap:calc(.5rem * var(--hp-rhythm, 1))}.pc[data-arrows=false] .pc-nav{display:none}.pc-arrow{width:44px;height:44px;line-height:1;cursor:pointer;font-size:calc(var(--hp-t-lg, 1.125rem) * 1.35);border-radius:var(--hp-r-sm);border:var(--hp-bw,1px) var(--hp-border-style,solid) var(--b3-border);background:transparent;color:var(--b3-ink);transition:border-color var(--hp-dur,.2s) var(--hp-ease,ease),background-color var(--hp-dur,.2s) var(--hp-ease,ease)}.pc-arrow:hover{border-color:var(--hp-border-hover,rgb(var(--hp-accent-rgb)));background-color:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 12%,var(--b3-canvas))}.pc-arrow:focus-visible{outline:none;box-shadow:var(--hp-focus-ring,0 0 0 3px rgb(var(--hp-accent-rgb)/.45))}.pc-track{display:flex;gap:calc(1.2rem * var(--hp-rhythm, 1));margin-top:calc(1.8rem * var(--hp-rhythm, 1));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;padding-bottom:.5rem}.pc-track::-webkit-scrollbar{display:none}.pc-card{position:relative;flex:0 0 min(420px,82vw);scroll-snap-align:start;aspect-ratio:var(--hp-portfolio-aspect,16/11);overflow:hidden;text-decoration:none;background-color:var(--hp-surface-dark-2,var(--hp-primary-dark));color:var(--hp-on-dark,#fff);border-radius:var(--hp-r-md);box-shadow:var(--hp-sh-e2,var(--hp-sh-card));display:flex;align-items:flex-end;transition:translate var(--hp-dur,.28s) var(--hp-ease,ease),scale var(--hp-dur,.28s) var(--hp-ease,ease),box-shadow var(--hp-dur,.28s) var(--hp-ease,ease)}@media (hover:hover){.pc-card:hover{translate:0 calc(-1 * var(--hp-hover-lift, 0px));scale:var(--hp-hover-scale,1);box-shadow:var(--hp-sh-card-hover,var(--hp-sh-e3,var(--hp-sh-card)))}}.pc-card:focus-visible{outline:none;box-shadow:var(--hp-focus-ring,0 0 0 3px rgb(var(--hp-accent-rgb)/.45))}.pc-img{position:absolute;inset:0}.pc-img img{object-fit:cover;filter:var(--hp-img-tone,none);transition:scale var(--hp-dur-slow,.5s) var(--hp-ease,ease)}@media (hover:hover){.pc-card:hover .pc-img img{scale:1.05}}.pc-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgb(var(--hp-primary-dark-rgb)/.9),rgb(var(--hp-primary-dark-rgb)/.3) 55%,transparent)}.pc-body{position:relative;z-index:1;padding:var(--hp-pad,1.3rem);display:flex;flex-direction:column;gap:calc(.35rem * var(--hp-rhythm, 1));align-items:flex-start}.pc-tags{display:flex;flex-wrap:wrap;gap:calc(.4rem * var(--hp-rhythm, 1))}.pc[data-tags=false] .pc-tags{display:none}.pc[data-cardstyle=panel] .pc-card{aspect-ratio:auto;display:flex;flex-direction:column;align-items:stretch;background-color:var(--b3-card-bg);color:var(--b3-card-ink);border:var(--hp-bw,1px) var(--hp-border-style,solid) var(--b3-card-hair);box-shadow:var(--hp-sh-card)}.pc[data-cardstyle=panel] .pc-img{position:relative;inset:auto;flex:none;aspect-ratio:var(--hp-project-cards-aspect,16/9);overflow:hidden}.pc[data-cardstyle=panel] .pc-scrim{display:none}.pc[data-cardstyle=panel] .pc-body{flex:1;gap:calc(.5rem * var(--hp-rhythm, 1))}.pc[data-cardstyle=panel] .pc-title{color:var(--b3-card-ink)}.pc[data-cardstyle=panel] .pc-loc{color:var(--b3-card-ink-2)}.pc-more{display:none}@media (max-width:640px){.pc[data-js=true] .pc-track{display:grid;grid-auto-flow:row;grid-template-columns:1fr;overflow-x:visible;scroll-snap-type:none;cursor:auto}.pc[data-js=true] .pc-card{flex:none;width:100%;scroll-snap-align:none}.pc[data-js=true] .pc-card.pc-clamped,.pc[data-js=true] .pc-nav{display:none}.pc[data-js=true] .pc-more{display:inline-flex;align-items:center;justify-content:center;gap:calc(.4rem * var(--hp-rhythm, 1));margin:calc(1.2rem * var(--hp-rhythm, 1)) auto 0;padding:calc(.7rem * var(--hp-rhythm, 1)) calc(1.3rem * var(--hp-rhythm, 1));font-family:var(--hp-font-body),sans-serif;font-size:var(--hp-t-sm,.9rem);font-weight:700;color:var(--px-accent);background:none;cursor:pointer;border:var(--hp-bw,1px) var(--hp-border-style,solid) currentColor;border-radius:var(--hp-r-sm)}.pc[data-js=true] .pc-more[hidden]{display:none}.pc[data-js=true] .pc-more svg{width:1em;height:1em}.pc[data-js=true] .pc-more:focus-visible{outline:none;box-shadow:var(--hp-focus-ring)}}.pc-tag{font-size:var(--hp-t-xs,.7rem);font-weight:600;letter-spacing:var(--hp-track-micro,.08em);text-transform:uppercase;padding:.25rem .6rem;border-radius:var(--hp-r-sm);background:var(--hp-accent-deep,var(--hp-primary-dark));color:var(--hp-on-dark,#fff);box-shadow:inset 0 -2px 0 rgb(var(--hp-accent-rgb))}.pc-title{font-family:var(--hp-font-heading),sans-serif;font-weight:var(--hp-fw-heading,700);font-size:calc(var(--hp-t-lg, 1.125rem) * 1.2)}.pc-loc{font-size:var(--hp-t-sm,.85rem);color:var(--hp-on-dark-muted,rgb(255 255 255/.75))}.pj-grid{display:grid;gap:calc(1.4rem * var(--hp-rhythm, 1));margin-top:calc(2rem * var(--hp-rhythm, 1));grid-template-columns:1fr}@media (min-width:900px){.pj[data-cols="2"] .pj-grid{grid-template-columns:var(--hp-project-cards-split,repeat(2,1fr))}.pj[data-cols="3"] .pj-grid{grid-template-columns:var(--hp-project-cards-split,repeat(3,1fr))}}.pj-card{display:flex;flex-direction:column;overflow:hidden;text-decoration:none;background:var(--b3-card);color:var(--b3-card-ink);border:var(--hp-bw,1px) var(--hp-border-style,solid) var(--b3-card-bd);border-radius:var(--hp-r-md);box-shadow:var(--hp-sh-e2,var(--hp-sh-card));transition:translate var(--hp-dur,.28s) var(--hp-ease,ease),scale var(--hp-dur,.28s) var(--hp-ease,ease),border-color var(--hp-dur,.28s) var(--hp-ease,ease),box-shadow var(--hp-dur,.28s) var(--hp-ease,ease)}@media (hover:hover){.pj-card:hover{translate:0 calc(-4px - var(--hp-hover-lift, 0px));scale:var(--hp-hover-scale,1);border-color:var(--hp-border-hover,rgb(var(--hp-accent-rgb)/.55));box-shadow:var(--hp-sh-card-hover,var(--hp-sh-e3,var(--hp-sh-card)))}}.pj-card:focus-visible{outline:none;box-shadow:var(--hp-focus-ring,0 0 0 3px rgb(var(--hp-accent-rgb)/.45))}.pj-img{position:relative;aspect-ratio:var(--hp-project-cards-aspect,16/9);overflow:hidden;flex:none}.pj-img img{object-fit:cover;filter:var(--hp-img-tone,none);transition:scale var(--hp-dur-slow,.5s) var(--hp-ease,ease)}@media (hover:hover){.pj-card:hover .pj-img img{scale:1.06}}.pj-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgb(var(--hp-primary-dark-rgb)/.35),transparent 55%)}.pj-body{display:flex;flex-direction:column;align-items:flex-start;gap:calc(.5rem * var(--hp-rhythm, 1));padding:var(--hp-pad,1.3rem)}.pj-card>.pj-body:last-child{flex:1}.pj-tags{display:flex;flex-wrap:wrap;gap:calc(.4rem * var(--hp-rhythm, 1))}.pj[data-tags=false] .pj-tags{display:none}.pj-tag{font-size:var(--hp-t-xs,.7rem);font-weight:600;letter-spacing:var(--hp-track-micro,.06em);text-transform:uppercase;padding:.25rem .6rem;border-radius:var(--hp-r-sm);color:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 65%,var(--b3-card-ink));background:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 12%,var(--b3-card))}.pj-title{font-family:var(--hp-font-heading),sans-serif;font-weight:var(--hp-fw-heading,700);font-size:calc(var(--hp-t-lg, 1.125rem) * 1.16);color:var(--b3-card-ink)}.pj-desc{font-size:var(--hp-t-sm,.9rem);line-height:1.55;color:var(--b3-card-ink-2)}.bg-more,.pj-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:calc(.35rem * var(--hp-rhythm, 1));font-weight:700;font-size:var(--hp-t-xs,.85rem);letter-spacing:var(--hp-track-micro,.02em);color:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 65%,var(--b3-card-ink));text-decoration:underline;text-underline-offset:.25em}.bg-more svg,.pj-link svg{width:1em;height:1em;stroke-width:var(--hp-icon-stroke,2);transition:translate var(--hp-dur,.25s) var(--hp-ease,ease)}.bg-card:hover .bg-more,.pj-card:hover .pj-link{color:var(--b3-card-ink)}.bg-card:hover .bg-more svg,.pj-card:hover .pj-link svg{translate:3px 0}.bg-grid{display:grid;gap:calc(1.4rem * var(--hp-rhythm, 1));margin-top:calc(2rem * var(--hp-rhythm, 1));grid-template-columns:1fr}@media (min-width:900px){.bg[data-cols="2"] .bg-grid{grid-template-columns:var(--hp-blog-cards-split,repeat(2,1fr))}.bg[data-cols="3"] .bg-grid{grid-template-columns:var(--hp-blog-cards-split,repeat(3,1fr))}}.bg-card{display:flex;flex-direction:column;overflow:hidden;text-decoration:none;background:var(--b3-card);color:var(--b3-card-ink);border:var(--hp-bw,1px) var(--hp-border-style,solid) var(--b3-card-bd);border-radius:var(--hp-r-md);box-shadow:var(--hp-sh-e2,var(--hp-sh-card));transition:translate var(--hp-dur,.28s) var(--hp-ease,ease),scale var(--hp-dur,.28s) var(--hp-ease,ease),border-color var(--hp-dur,.28s) var(--hp-ease,ease),box-shadow var(--hp-dur,.28s) var(--hp-ease,ease)}@media (hover:hover){.bg-card:hover{translate:0 calc(-4px - var(--hp-hover-lift, 0px));scale:var(--hp-hover-scale,1);border-color:var(--hp-border-hover,rgb(var(--hp-accent-rgb)/.55));box-shadow:var(--hp-sh-card-hover,var(--hp-sh-e3,var(--hp-sh-card)))}}.bg-card:focus-visible{outline:none;box-shadow:var(--hp-focus-ring,0 0 0 3px rgb(var(--hp-accent-rgb)/.45))}.bg-img{position:relative;aspect-ratio:var(--hp-blog-cards-aspect,16/9);overflow:hidden;flex:none}.bg[data-imagetop=false] .bg-img{display:none}.bg-img img{object-fit:cover;filter:var(--hp-img-tone,none);transition:scale var(--hp-dur-slow,.5s) var(--hp-ease,ease)}@media (hover:hover){.bg-card:hover .bg-img img{scale:1.06}}.bg-body{display:flex;flex-direction:column;align-items:flex-start;gap:calc(.55rem * var(--hp-rhythm, 1));padding:var(--hp-pad,1.3rem)}.bg-card>.bg-body:last-child{flex:1}.bg-meta{display:flex;gap:calc(.8rem * var(--hp-rhythm, 1));align-items:center;font-size:var(--hp-t-xs,.78rem)}.bg[data-meta=false] .bg-meta{display:none}.bg-cat{font-weight:700;letter-spacing:var(--hp-track-micro,.08em);text-transform:uppercase;color:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 65%,var(--b3-card-ink))}.bg-date{color:var(--b3-card-ink-2)}.bg-title{font-family:var(--hp-font-heading),sans-serif;font-weight:var(--hp-fw-heading,700);font-size:calc(var(--hp-t-lg, 1.125rem) * 1.12);color:var(--b3-card-ink);line-height:1.25}.bg-excerpt{font-size:var(--hp-t-sm,.9rem);line-height:1.55;color:var(--b3-card-ink-2)}.tx-measure{max-width:min(100%,calc(var(--hp-maxw, 46rem) * 1.5))}.tx[data-width=narrow] .tx-measure{max-width:var(--hp-maxw,46rem);margin:0 auto}.tx-body{margin-top:calc(1.4rem * var(--hp-rhythm, 1))}.tx-p{line-height:1.75;margin:0 0 calc(1.2rem * var(--hp-rhythm, 1));color:var(--b3-ink-soft);font-style:var(--hp-font-style,normal)}.tx-p:last-child{margin-bottom:0}.tx[data-lead=true] .tx-lead{font-size:var(--hp-t-lg,1.2rem);color:var(--b3-ink)}.tx[data-lead=false] .tx-lead{font-size:inherit}.ig-grid{display:grid;gap:calc(1.3rem * var(--hp-rhythm, 1));margin-top:calc(2rem * var(--hp-rhythm, 1));grid-template-columns:1fr}@media (min-width:900px){.ig[data-cols="2"] .ig-grid{grid-template-columns:var(--hp-icon-grid-split,repeat(2,1fr))}.ig[data-cols="3"] .ig-grid{grid-template-columns:var(--hp-icon-grid-split,repeat(3,1fr))}.ig[data-cols="4"] .ig-grid{grid-template-columns:var(--hp-icon-grid-split,repeat(4,1fr))}}.ig-item,.ig-text{display:flex}.ig-text{flex-direction:column;flex:1;min-width:0}.ig[data-variant=card] .ig-item{flex-direction:column;align-items:flex-start;gap:calc(.9rem * var(--hp-rhythm, 1));padding:var(--hp-pad,1.6rem);background:var(--b3-card);color:var(--b3-card-ink);border:var(--hp-bw,1px) var(--hp-border-style,solid) var(--b3-card-bd);border-radius:var(--hp-r-md);box-shadow:var(--hp-sh-e1,var(--hp-sh-card))}.ig[data-variant=card] .ig-item>.ig-icon:last-child{margin-top:auto}.ig[data-variant=benefit] .ig-item{flex-direction:row;gap:calc(.9rem * var(--hp-rhythm, 1));align-items:flex-start}.ig[data-variant=benefit] .ig-item>.ig-icon:last-child{margin-left:auto}.ig-icon{width:calc(var(--hp-icon-size, 1.5rem) * 1.25 * var(--hp-icon-scale, 1));height:calc(var(--hp-icon-size, 1.5rem) * 1.25 * var(--hp-icon-scale, 1));stroke-width:var(--hp-icon-stroke,1.5);flex:none}.ig[data-variant=benefit] .ig-icon{width:calc(var(--hp-icon-size, 1.5rem) * .92 * var(--hp-icon-scale, 1));height:calc(var(--hp-icon-size, 1.5rem) * .92 * var(--hp-icon-scale, 1));margin-top:.2rem}.ig[data-icontone=accent] .ig-icon{color:color-mix(in srgb,rgb(var(--hp-accent-rgb)) 78%,var(--b3-card-ink))}.ig[data-icontone=primary] .ig-icon{color:color-mix(in srgb,var(--hp-primary) 82%,var(--b3-card-ink))}.ig-t{font-family:var(--hp-font-heading),sans-serif;font-weight:var(--hp-fw-heading,700);font-size:var(--hp-t-lg,1.1rem);margin:0 0 calc(.35rem * var(--hp-rhythm, 1));color:var(--b3-card-ink)}.ig-d{font-size:var(--hp-t-sm,.9rem);line-height:1.55;margin:0;color:var(--b3-card-ink-2)}.gl{--b3-bg-image:var(--hp-gallery-bg-image,none);--b3-gradient:var(--hp-gallery-gradient,none);--b3-overlay:var(--hp-gallery-overlay,transparent);--b3-overlay-o:var(--hp-gallery-overlay-opacity,1);--b3-bg-pos:var(--hp-gallery-bg-pos,center);--b3-bg-size:var(--hp-gallery-bg-size,cover);--b3-bg-repeat:var(--hp-gallery-bg-repeat,no-repeat);--b3-motif-size:var(--hp-gallery-motif-size,38%);--b3-motif-color:var(--hp-gallery-motif-color,currentColor);--b3-motif-opacity:var(--hp-gallery-motif-opacity,0.12);--b3-motif-blend:var(--hp-gallery-motif-blend,normal);--b3-div-h:var(--hp-gallery-div-h,48px);--b3-div-a:var(--hp-gallery-div-a,transparent);--b3-div-b:var(--hp-gallery-div-b,var(--hp-bg));--b3-par:var(--hp-gallery-parallax,0);--b3-mo-d:var(--hp-gallery-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-gallery-mo-stagger,var(--hp-mo-stagger,0.08s))}.pc{--b3-bg-image:var(--hp-portfolio-bg-image,none);--b3-gradient:var(--hp-portfolio-gradient,none);--b3-overlay:var(--hp-portfolio-overlay,transparent);--b3-overlay-o:var(--hp-portfolio-overlay-opacity,1);--b3-bg-pos:var(--hp-portfolio-bg-pos,center);--b3-bg-size:var(--hp-portfolio-bg-size,cover);--b3-bg-repeat:var(--hp-portfolio-bg-repeat,no-repeat);--b3-motif-size:var(--hp-portfolio-motif-size,38%);--b3-motif-color:var(--hp-portfolio-motif-color,currentColor);--b3-motif-opacity:var(--hp-portfolio-motif-opacity,0.12);--b3-motif-blend:var(--hp-portfolio-motif-blend,normal);--b3-div-h:var(--hp-portfolio-div-h,48px);--b3-div-a:var(--hp-portfolio-div-a,transparent);--b3-div-b:var(--hp-portfolio-div-b,var(--hp-bg));--b3-par:var(--hp-portfolio-parallax,0);--b3-mo-d:var(--hp-portfolio-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-portfolio-mo-stagger,var(--hp-mo-stagger,0.08s))}.pj{--b3-bg-image:var(--hp-project-cards-bg-image,none);--b3-gradient:var(--hp-project-cards-gradient,none);--b3-overlay:var(--hp-project-cards-overlay,transparent);--b3-overlay-o:var(--hp-project-cards-overlay-opacity,1);--b3-bg-pos:var(--hp-project-cards-bg-pos,center);--b3-bg-size:var(--hp-project-cards-bg-size,cover);--b3-bg-repeat:var(--hp-project-cards-bg-repeat,no-repeat);--b3-motif-size:var(--hp-project-cards-motif-size,38%);--b3-motif-color:var(--hp-project-cards-motif-color,currentColor);--b3-motif-opacity:var(--hp-project-cards-motif-opacity,0.12);--b3-motif-blend:var(--hp-project-cards-motif-blend,normal);--b3-div-h:var(--hp-project-cards-div-h,48px);--b3-div-a:var(--hp-project-cards-div-a,transparent);--b3-div-b:var(--hp-project-cards-div-b,var(--hp-bg));--b3-par:var(--hp-project-cards-parallax,0);--b3-mo-d:var(--hp-project-cards-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-project-cards-mo-stagger,var(--hp-mo-stagger,0.08s))}.bg{--b3-bg-image:var(--hp-blog-cards-bg-image,none);--b3-gradient:var(--hp-blog-cards-gradient,none);--b3-overlay:var(--hp-blog-cards-overlay,transparent);--b3-overlay-o:var(--hp-blog-cards-overlay-opacity,1);--b3-bg-pos:var(--hp-blog-cards-bg-pos,center);--b3-bg-size:var(--hp-blog-cards-bg-size,cover);--b3-bg-repeat:var(--hp-blog-cards-bg-repeat,no-repeat);--b3-motif-size:var(--hp-blog-cards-motif-size,38%);--b3-motif-color:var(--hp-blog-cards-motif-color,currentColor);--b3-motif-opacity:var(--hp-blog-cards-motif-opacity,0.12);--b3-motif-blend:var(--hp-blog-cards-motif-blend,normal);--b3-div-h:var(--hp-blog-cards-div-h,48px);--b3-div-a:var(--hp-blog-cards-div-a,transparent);--b3-div-b:var(--hp-blog-cards-div-b,var(--hp-bg));--b3-par:var(--hp-blog-cards-parallax,0);--b3-mo-d:var(--hp-blog-cards-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-blog-cards-mo-stagger,var(--hp-mo-stagger,0.08s))}.tx{--b3-bg-image:var(--hp-text-section-bg-image,none);--b3-gradient:var(--hp-text-section-gradient,none);--b3-overlay:var(--hp-text-section-overlay,transparent);--b3-overlay-o:var(--hp-text-section-overlay-opacity,1);--b3-bg-pos:var(--hp-text-section-bg-pos,center);--b3-bg-size:var(--hp-text-section-bg-size,cover);--b3-bg-repeat:var(--hp-text-section-bg-repeat,no-repeat);--b3-motif-size:var(--hp-text-section-motif-size,38%);--b3-motif-color:var(--hp-text-section-motif-color,currentColor);--b3-motif-opacity:var(--hp-text-section-motif-opacity,0.12);--b3-motif-blend:var(--hp-text-section-motif-blend,normal);--b3-div-h:var(--hp-text-section-div-h,48px);--b3-div-a:var(--hp-text-section-div-a,transparent);--b3-div-b:var(--hp-text-section-div-b,var(--hp-bg));--b3-par:var(--hp-text-section-parallax,0);--b3-mo-d:var(--hp-text-section-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-text-section-mo-stagger,var(--hp-mo-stagger,0.08s))}.ig{--b3-bg-image:var(--hp-icon-grid-bg-image,none);--b3-gradient:var(--hp-icon-grid-gradient,none);--b3-overlay:var(--hp-icon-grid-overlay,transparent);--b3-overlay-o:var(--hp-icon-grid-overlay-opacity,1);--b3-bg-pos:var(--hp-icon-grid-bg-pos,center);--b3-bg-size:var(--hp-icon-grid-bg-size,cover);--b3-bg-repeat:var(--hp-icon-grid-bg-repeat,no-repeat);--b3-motif-size:var(--hp-icon-grid-motif-size,38%);--b3-motif-color:var(--hp-icon-grid-motif-color,currentColor);--b3-motif-opacity:var(--hp-icon-grid-motif-opacity,0.12);--b3-motif-blend:var(--hp-icon-grid-motif-blend,normal);--b3-div-h:var(--hp-icon-grid-div-h,48px);--b3-div-a:var(--hp-icon-grid-div-a,transparent);--b3-div-b:var(--hp-icon-grid-div-b,var(--hp-bg));--b3-par:var(--hp-icon-grid-parallax,0);--b3-mo-d:var(--hp-icon-grid-mo-distance,var(--hp-mo-distance,22px));--b3-mo-s:var(--hp-icon-grid-mo-stagger,var(--hp-mo-stagger,0.08s))}.bg:after,.bg:before,.gl:after,.gl:before,.ig:after,.ig:before,.pc:after,.pc:before,.pj:after,.pj:before,.tx:after,.tx:before{content:"";position:absolute;inset:0;pointer-events:none}.bg:before,.gl:before,.ig:before,.pc:before,.pj:before,.tx:before{z-index:0;background-image:var(--b3-bg-image,none);background-position:var(--b3-bg-pos,center);background-size:var(--b3-bg-size,cover);background-repeat:var(--b3-bg-repeat,no-repeat);filter:var(--hp-img-tone,none)}.bg>.b3-grad,.gl>.b3-grad,.ig>.b3-grad,.pc>.b3-grad,.pj>.b3-grad,.tx>.b3-grad{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--b3-gradient,none);background-position:var(--b3-bg-pos,center);background-size:var(--b3-bg-size,cover);background-repeat:var(--b3-bg-repeat,no-repeat)}.bg:after,.gl:after,.ig:after,.pc:after,.pj:after,.tx:after{z-index:1;background:var(--b3-overlay,transparent);opacity:var(--b3-overlay-o,1);mix-blend-mode:var(--hp-blend,normal)}.b3>.px-motif{position:absolute;z-index:0;pointer-events:none;width:var(--b3-motif-size);aspect-ratio:1;background-color:var(--b3-motif-color);opacity:var(--b3-motif-opacity);mix-blend-mode:var(--b3-motif-blend)}.b3[data-corner=top-left]>.px-motif{top:0;left:0;translate:-26% -26%}.b3[data-corner=top-right]>.px-motif{top:0;right:0;translate:26% -26%}.b3[data-corner=bottom-left]>.px-motif{bottom:0;left:0;translate:-26% 26%}.b3[data-corner=bottom-right]>.px-motif{bottom:0;right:0;translate:26% 26%}.b3[data-motif=circle]>.px-motif{border-radius:50%}.b3[data-motif=blob]>.px-motif{border-radius:62% 38% 44% 56%/52% 44% 56% 48%}.b3[data-motif=arc]>.px-motif{background-color:transparent;border-radius:50%;border:clamp(10px,2.4vw,34px) solid var(--b3-motif-color)}.b3[data-motif=logo]>.px-motif{clip-path:polygon(50% 0,100% 26%,100% 74%,50% 100%,0 74%,0 26%)}.b3[data-motif=chevron]>.px-motif,.b3[data-motif=cross]>.px-motif,.b3[data-motif=grid]>.px-motif{inset:0;width:auto;height:auto;aspect-ratio:auto;translate:none;background-color:transparent}.b3[data-motif=grid]>.px-motif{background-image:linear-gradient(var(--b3-motif-color) 1px,transparent 1px),linear-gradient(90deg,var(--b3-motif-color) 1px,transparent 1px);background-size:var(--b3-motif-size) var(--b3-motif-size)}.b3[data-motif=chevron]>.px-motif{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0 14 L12 4 L24 14 L24 18 L12 8 L0 18 Z' fill='%23000'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0 14 L12 4 L24 14 L24 18 L12 8 L0 18 Z' fill='%23000'/%3E%3C/svg%3E")}.b3[data-motif=chevron]>.px-motif,.b3[data-motif=cross]>.px-motif{background-color:var(--b3-motif-color);-webkit-mask-size:var(--b3-motif-size) var(--b3-motif-size);mask-size:var(--b3-motif-size) var(--b3-motif-size);-webkit-mask-repeat:repeat;mask-repeat:repeat}.b3[data-motif=cross]>.px-motif{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6z' fill='%23000'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6z' fill='%23000'/%3E%3C/svg%3E")}.b3>.px-div{position:absolute;left:0;right:0;z-index:3;pointer-events:none;height:var(--b3-div-h);background:linear-gradient(180deg,var(--b3-div-a),var(--b3-div-b));--b3-fx:1;--b3-fy:1;transform:scale(var(--b3-fx),var(--b3-fy))}.b3>.px-div-t{top:-1px;--b3-fy:-1}.b3>.px-div-b{bottom:-1px}.b3[data-divflip-h=true]>.px-div{--b3-fx:-1}.b3[data-divflip-v=true]>.px-div-b{--b3-fy:-1}.b3[data-divflip-v=true]>.px-div-t{--b3-fy:1}.b3[data-divshape=angle]>.px-div{clip-path:polygon(0 100%,100% 0,100% 100%)}.b3[data-divshape=wave]>.px-div{clip-path:polygon(0 60%,25% 100%,50% 60%,75% 20%,100% 60%,100% 100%,0 100%)}.b3[data-divshape=double-wave]>.px-div{clip-path:polygon(0 50%,12% 90%,25% 50%,38% 10%,50% 50%,62% 90%,75% 50%,88% 10%,100% 50%,100% 100%,0 100%)}.b3[data-divshape=curve]>.px-div{border-radius:50% 50% 0 0/100% 100% 0 0}.b3[data-divshape=torn]>.px-div{clip-path:polygon(0 40%,6% 80%,14% 35%,22% 85%,31% 45%,40% 90%,50% 40%,60% 85%,70% 45%,80% 88%,90% 42%,100% 80%,100% 100%,0 100%)}.b3[data-divshape=drip]>.px-div{clip-path:polygon(0 0,8% 0,10% 70%,14% 0,34% 0,37% 90%,41% 0,66% 0,69% 60%,72% 0,100% 0,100% 100%,0 100%)}.b3[data-divshape=roofline]>.px-div{clip-path:polygon(0 100%,20% 20%,40% 100%,60% 20%,80% 100%,100% 20%,100% 100%)}.b3[data-divshape=interlock]>.px-div{clip-path:polygon(0 0,20% 0,20% 60%,40% 60%,40% 0,60% 0,60% 60%,80% 60%,80% 0,100% 0,100% 100%,0 100%)}.b3[data-divshape=book-fold]>.px-div{clip-path:polygon(0 0,50% 100%,100% 0,100% 100%,0 100%)}.b3[data-divshape=none]>.px-div{display:none}.b3:has(>.px-div-t)>.px-inner{padding-top:calc(var(--b3-div-h) + 1.5rem)}.b3:has(>.px-div-b)>.px-inner{padding-bottom:calc(var(--b3-div-h) + 1.5rem)}.b3[data-js=true][data-entrance=composed]:not(.in-view)>.px-inner>:is(h1,h2,h3,.px-h2){clip-path:inset(0 100% 0 0)}.b3[data-js=true][data-entrance=composed]:not(.in-view)>.px-inner>:is(p,.px-sub){opacity:0;transform:translateY(calc(var(--b3-mo-d, 22px) * .6))}.b3[data-js=true][data-entrance=composed]:not(.in-view) .px-item{opacity:0;transform:translateY(var(--b3-mo-d,22px))}.b3[data-js=true][data-entrance=composed]:not(.in-view) .px-item img{opacity:0}.b3[data-js=true][data-entrance=composed]:not(.in-view)>.px-inner>:not(h1):not(h2):not(h3):not(p):not(:has(.px-item)){opacity:0;transform:translateY(var(--b3-mo-d,22px))}.b3[data-entrance=composed].in-view>.px-inner>:is(h1,h2,h3,.px-h2){animation:pxWrite calc(var(--hp-dur-slow, .55s) * 1.15) var(--hp-e3,ease) both}.b3[data-entrance=composed].in-view>.px-inner>:is(p,.px-sub){animation:b3Rise var(--hp-dur-slow,.55s) var(--hp-e3,ease) both;animation-delay:calc(var(--b3-mo-s, .08s) * 1.5)}.b3[data-entrance=composed].in-view .px-item{animation:b3Rise var(--hp-dur-slow,.55s) var(--hp-e3,ease) both;animation-delay:calc(var(--d, 0s) + var(--b3-mo-s, .08s) * 2)}.b3[data-entrance=composed].in-view .px-item img{animation:pxShine calc(var(--hp-dur-slow, .55s) * 1.3) var(--hp-ease,ease) both;animation-delay:calc(var(--d, 0s) + var(--b3-mo-s, .08s) * 2)}.b3[data-entrance=composed].in-view>.px-inner>:not(h1):not(h2):not(h3):not(p):not(:has(.px-item)){animation:b3Rise var(--hp-dur-slow,.55s) var(--hp-e3,ease) both;animation-delay:calc(var(--b3-mo-s, .08s) * 2.5)}.b3[data-js=true]:is([data-entrance=fade],[data-entrance=rise],[data-entrance=scale-in]):not(.in-view)>.px-inner>*{opacity:0}.b3[data-js=true][data-entrance=rise]:not(.in-view)>.px-inner>*{transform:translateY(var(--b3-mo-d,22px))}.b3[data-js=true][data-entrance=scale-in]:not(.in-view)>.px-inner>*{transform:scale(.94)}.b3[data-js=true][data-entrance=wipe]:not(.in-view)>.px-inner>*{clip-path:inset(0 100% 0 0)}.b3[data-js=true][data-entrance=stagger-rise]:not(.in-view) .px-item{opacity:0;transform:translateY(var(--b3-mo-d,22px))}@keyframes b3Fade{0%{opacity:0}to{opacity:1}}@keyframes b3Rise{0%{opacity:0;transform:translateY(var(--b3-mo-d,22px))}to{opacity:1;transform:none}}@keyframes b3Wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes b3ScaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.b3[data-entrance=fade].in-view>.px-inner>*{animation:b3Fade var(--hp-dur-slow,.55s) var(--hp-ease,ease) both}.b3[data-entrance=rise].in-view>.px-inner>*{animation:b3Rise var(--hp-dur-slow,.55s) var(--hp-e3,cubic-bezier(.22,1,.36,1)) both}.b3[data-entrance=wipe].in-view>.px-inner>*{animation:b3Wipe var(--hp-dur-slow,.55s) var(--hp-e3,cubic-bezier(.22,1,.36,1)) both}.b3[data-entrance=scale-in].in-view>.px-inner>*{animation:b3ScaleIn var(--hp-dur-slow,.55s) var(--hp-e3,cubic-bezier(.22,1,.36,1)) both}.b3:is([data-entrance=fade],[data-entrance=rise],[data-entrance=wipe],[data-entrance=scale-in]).in-view>.px-inner>*{animation-delay:calc(var(--px-step, 0) * var(--b3-mo-s, .08s))}.b3>.px-inner>:nth-child(2){--px-step:1}.b3>.px-inner>:nth-child(3){--px-step:2}.b3>.px-inner>:nth-child(4){--px-step:3}.b3>.px-inner>:nth-child(5){--px-step:4}.b3>.px-inner>:nth-child(n+6){--px-step:5}.b3[data-entrance=stagger-rise].in-view .px-item{animation:b3Rise var(--hp-dur-slow,.55s) var(--hp-e3,cubic-bezier(.22,1,.36,1)) both;animation-delay:var(--d,0s)}.b3[data-parallax=true]:before{inset:-14% 0;transform:translate3d(0,calc(var(--hp-par-raw, 0px) * var(--b3-par, 0)),0);will-change:transform}@media (prefers-reduced-motion:reduce){.b3 :after,.b3 :before,.bg,.bg *,.gl,.gl *,.ig,.ig *,.pc,.pc *,.pj,.pj *,.tx,.tx *{animation:none!important;transition:none!important}.b3 .px-item,.b3>.px-inner{opacity:1!important;transform:none!important;clip-path:none!important}.b3[data-parallax=true]:before{transform:none}.bg-card:hover .bg-img img,.gl .gl-item:hover .gl-btn img,.pc-card:hover .pc-img img,.pj-card:hover .pj-img img{scale:1}.bg-card:hover,.pc-card:hover,.pj-card:hover{translate:none;scale:1}.bg-card:hover .bg-more svg,.pj-card:hover .pj-link svg{translate:none}}