.ohso-off,.ohso-off *,.ohso-off :before,.ohso-off :after{box-sizing:border-box}.ohso-off{--off-bg:#f5f4ef;--off-bg-alt:#fff;--off-fg:#0a0a0a;--off-muted:#6e6e6e;--off-line:#0a0a0a2e;--off-accent:#0a0a0a;--off-ease:cubic-bezier(.25,1,.5,1);--off-gutter:clamp(1.25rem,2.2vw,2rem);--off-max:1440px;background:var(--off-bg);width:100%;color:var(--off-fg);font-family:var(--ohso-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;display:block;position:relative}.ohso-off h1,.ohso-off h2,.ohso-off h3,.ohso-off p,.ohso-off span,.ohso-off a,.ohso-off button,.ohso-off em{color:inherit;font-weight:inherit;margin:0;padding:0;font-style:normal;text-decoration:none}.ohso-off ::selection{color:#fff;background:#0a0a0a}.ohso-off img{max-width:100%;display:block}.ohso-off-hero,.ohso-off-hero *,.ohso-off-hero :before,.ohso-off-hero :after{box-sizing:border-box}.ohso-off-hero{--off-bg:#f5f4ef;--off-fg:#0a0a0a;--off-muted:#6e6e6e;--off-line:#0a0a0a2e;--off-grad:#0a0a0a;--off-ease:cubic-bezier(.25,1,.5,1);--off-ease-soft:cubic-bezier(.16,1,.3,1);--off-gutter:clamp(1.25rem,2.2vw,2rem);--off-max:1440px;background:var(--off-bg);width:100%;color:var(--off-fg);font-family:var(--ohso-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;display:block;position:relative;overflow:hidden}.ohso-off-hero h1,.ohso-off-hero p,.ohso-off-hero span,.ohso-off-hero ul,.ohso-off-hero li,.ohso-off-hero em{color:inherit;font-weight:inherit;margin:0;padding:0;font-style:normal;list-style:none}.ohso-off-hero ::selection{color:#fff;background:#0a0a0a}.ohso-off-hero .off-hero{padding:0 var(--off-gutter);background:var(--off-bg);position:relative;overflow:hidden}.ohso-off-hero .off-hero__bg{z-index:0;pointer-events:none;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:0}.ohso-off-hero .off-hero__col{background-image:linear-gradient(to bottom,var(--off-grad) 0%,transparent 100%);background-position:top;background-repeat:no-repeat;background-size:100% var(--h,0vh);height:100%;transition:background-size .65s var(--off-ease-soft);will-change:background-size;display:block}.ohso-off-hero.is-in .off-hero__col{background-size:100% var(--h,var(--h-base,50vh))}.ohso-off-hero .off-hero__container{max-width:var(--off-max);width:100%;margin:0 auto;position:relative}.ohso-off-hero .off-hero__head{grid-template-rows:auto 1fr;row-gap:clamp(2rem,4vw,3rem);width:100%;min-height:100vh;padding-block:clamp(6rem,12vw,10rem) clamp(2rem,4vw,3rem);display:grid}.ohso-off-hero .off-hero__topbar{justify-content:space-between;align-items:flex-start;gap:1rem;width:100%;display:flex}.ohso-off-hero .off-hero__kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--off-muted);opacity:0;transition:opacity .7s var(--off-ease-soft),transform .7s var(--off-ease-soft);font-size:.6875rem;font-weight:400;transform:translateY(12px)}.ohso-off-hero .off-hero__marker{letter-spacing:.18em;text-transform:uppercase;color:var(--off-muted);opacity:0;transition:opacity .7s var(--off-ease-soft) .15s;font-size:.6875rem;font-weight:400}.ohso-off-hero.is-in .off-hero__kicker{opacity:1;transform:none}.ohso-off-hero.is-in .off-hero__marker{opacity:1}.ohso-off-hero .off-hero__slab{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.02em;color:var(--off-fg);white-space:nowrap;text-align:center;transform:translate3d(0,var(--off-shift,0px),0);will-change:transform;place-self:center;margin:0;font-size:clamp(2rem,5.2vw,4.75rem);font-weight:400;line-height:1.05}.ohso-off-hero .off-hero__line{padding:.04em 0;display:block;overflow:hidden}.ohso-off-hero .off-hero__line>span{opacity:0;transition:transform 1s var(--off-ease-soft),opacity 1s var(--off-ease-soft);will-change:transform,opacity;display:inline-block;transform:translateY(105%)}.ohso-off-hero.is-in .off-hero__line:first-child>span{opacity:1;transition-delay:0s;transform:none}.ohso-off-hero.is-in .off-hero__line:nth-child(2)>span{opacity:1;transition-delay:.12s;transform:none}.ohso-off-hero.is-in .off-hero__line:nth-child(3)>span{opacity:1;transition-delay:.24s;transform:none}.ohso-off-hero.is-in .off-hero__line:nth-child(4)>span{opacity:1;transition-delay:.36s;transform:none}.ohso-off-hero .off-hero__foot{border-top:1px solid var(--off-line);text-align:left;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(1.5rem,3vw,3rem);width:100%;padding-block:clamp(3rem,6vw,5rem);display:grid}.ohso-off-hero .off-hero__foot:not(:has(.off-hero__highlights)){grid-template-columns:minmax(0,46rem);justify-content:start}.ohso-off-hero .off-hero__body{color:var(--off-muted);opacity:0;max-width:46rem;transition:opacity .9s var(--off-ease-soft) .55s,transform .9s var(--off-ease-soft) .55s;flex-direction:column;gap:1em;font-size:clamp(1.0625rem,1.35vw,1.25rem);font-weight:400;line-height:1.55;display:flex;transform:translateY(18px)}.ohso-off-hero .off-hero__body p{margin:0}.ohso-off-hero.is-in .off-hero__body{opacity:1;transform:none}.ohso-off-hero .off-hero__highlights{opacity:0;transition:opacity .9s var(--off-ease-soft) .7s,transform .9s var(--off-ease-soft) .7s;flex-direction:column;gap:.5rem;font-weight:700;display:flex;transform:translateY(18px)}.ohso-off-hero.is-in .off-hero__highlights{opacity:1;transform:none}.ohso-off-hero .off-hero__highlight{color:var(--off-fg);justify-content:space-between;align-items:baseline;gap:1rem;font-size:clamp(.95rem,1.05vw,1.0625rem);line-height:1.4;display:flex}.ohso-off-hero .off-hero__highlight-label{font-weight:700}.ohso-off-hero .off-hero__highlight-ref{color:var(--off-muted);font-variant-numeric:tabular-nums;letter-spacing:.05em;white-space:nowrap;font-weight:700}@media (max-width:820px){.ohso-off-hero .off-hero__foot{grid-template-columns:1fr;align-items:start;gap:1.5rem}}@media (max-width:640px){.ohso-off-hero .off-hero{padding:0 1.5rem}.ohso-off-hero .off-hero__head{padding-block:clamp(5rem,14vw,7rem) clamp(1.5rem,4vw,2.5rem)}.ohso-off-hero .off-hero__foot{padding-block:clamp(2.5rem,8vw,4rem)}.ohso-off-hero .off-hero__slab{letter-spacing:-.015em;font-size:clamp(1.25rem,7vw,2.25rem);line-height:1.05}.ohso-off-hero .off-hero__body{font-size:1rem;line-height:1.6}}@media (prefers-reduced-motion:reduce){.ohso-off-hero .off-hero__line>span,.ohso-off-hero .off-hero__body,.ohso-off-hero .off-hero__highlights,.ohso-off-hero .off-hero__kicker,.ohso-off-hero .off-hero__marker{opacity:1!important;transition:none!important;transform:none!important}.ohso-off-hero .off-hero__slab{transform:none!important}}.ohso-off .off-acc{padding:clamp(3.5rem,7vw,7rem) var(--off-gutter) clamp(4.5rem,9vw,8rem);background:var(--off-bg)}.ohso-off .off-acc__container{max-width:var(--off-max);flex-direction:column;gap:clamp(2rem,4vw,3.5rem);width:100%;margin:0 auto;display:flex}.ohso-off .off-acc__head{flex-direction:column;gap:1rem;max-width:42rem;display:flex}.ohso-off .off-acc__kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--off-muted);font-size:.6875rem;font-weight:400}.ohso-off .off-acc__title{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.015em;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;line-height:1.15}.ohso-off .off-acc__list{flex-direction:column;display:flex}.ohso-off .off-acc__item{border-top:1px solid var(--off-line);position:relative}.ohso-off .off-acc__list .off-acc__item:last-child{border-bottom:1px solid var(--off-line)}.ohso-off .off-acc__btn{appearance:none;cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(1rem,2vw,1.75rem);padding:1.5rem 0;font-family:inherit;display:grid}.ohso-off .off-acc__btn:focus-visible{outline:2px solid var(--off-accent);outline-offset:4px;border-radius:4px}.ohso-off .off-acc__num{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--off-muted);align-self:center;min-width:2.4ch;font-size:clamp(.8125rem,1.05vw,1rem);font-weight:400}.ohso-off .off-acc__item-title{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.015em;color:var(--off-fg);border-left:1px solid var(--off-line);align-self:stretch;align-items:center;padding-left:clamp(1rem,2vw,1.75rem);font-size:clamp(1.375rem,2.4vw,1.875rem);font-weight:400;line-height:1.2;display:flex}.ohso-off .off-acc__icon{width:24px;height:24px;color:var(--off-fg);transition:transform .35s var(--off-ease);flex:none;justify-content:center;align-items:center;display:inline-flex}.ohso-off .off-acc__item--open .off-acc__icon{transform:rotate(45deg)}.ohso-off .off-acc__panel{transition:grid-template-rows .45s var(--off-ease);grid-template-rows:0fr;display:grid}.ohso-off .off-acc__item--open .off-acc__panel{grid-template-rows:1fr}.ohso-off .off-acc__panel-inner{grid-template-columns:auto minmax(0,1fr);gap:clamp(1rem,2vw,1.75rem);padding:0;display:grid;overflow:hidden}.ohso-off .off-acc__item--open .off-acc__panel-inner{padding:0 0 1.75rem}.ohso-off .off-acc__copy{color:var(--off-muted);border-left:1px solid var(--off-line);grid-column:2;max-width:32rem;padding-left:clamp(1rem,2vw,1.75rem);font-size:clamp(1rem,1.2vw,1.125rem);line-height:1.55}.ohso-off .off-acc__panel-inner:before{content:"";min-width:2.4ch;display:block}@media (max-width:820px){.ohso-off .off-acc__panel-inner{grid-template-columns:auto minmax(0,1fr);gap:.75rem}.ohso-off .off-acc__copy{max-width:none}}@media (max-width:640px){.ohso-off .off-acc__btn{padding:1.25rem 0}.ohso-off .off-acc__item-title{font-size:clamp(1.25rem,5.5vw,1.625rem)}}.ohso-off .off-cases{padding:clamp(4rem,9vw,9rem) var(--off-gutter);background:var(--off-bg-alt)}.ohso-off .off-cases__container{max-width:var(--off-max);flex-direction:column;gap:clamp(2.5rem,5vw,4rem);width:100%;margin:0 auto;display:flex}.ohso-off .off-cases__head{flex-direction:column;gap:.75rem;display:flex}.ohso-off .off-cases__kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--off-muted);font-size:.6875rem;font-weight:400}.ohso-off .off-cases__title{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.015em;font-size:clamp(1.75rem,3.4vw,2.75rem);font-weight:400;line-height:1.1}.ohso-off .off-cases__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem) clamp(1rem,2vw,1.5rem);display:grid}@media (max-width:700px){.ohso-off .off-cases__grid{grid-template-columns:1fr;gap:2.5rem}}.ohso-off .off-card{color:inherit;display:block;position:relative}.ohso-off .off-card__image{aspect-ratio:16/9;background:#eaeae5;border-radius:12px;width:100%;position:relative;overflow:hidden}.ohso-off .off-card__image img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s var(--off-ease)}.ohso-off .off-card:hover .off-card__image img{transform:scale(1.03)}.ohso-off .off-card__meta{flex-direction:column;gap:.25rem;margin-top:1rem;display:flex}.ohso-off .off-card__client{letter-spacing:.3px;color:var(--off-fg);font-size:14px;font-weight:700}.ohso-off .off-card__desc{letter-spacing:.3px;color:var(--off-muted);font-size:14px;line-height:1.55}.ohso-off .off-rel{padding:clamp(4rem,8vw,7rem) var(--off-gutter) clamp(5rem,10vw,9rem);background:var(--off-bg);border-top:1px solid var(--off-line)}.ohso-off .off-rel__container{max-width:var(--off-max);flex-direction:column;gap:clamp(2rem,4vw,3rem);width:100%;margin:0 auto;display:flex}.ohso-off .off-rel__kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--off-muted);margin:0 0 clamp(.75rem,1.4vw,1.25rem);font-size:.6875rem;font-weight:400}.ohso-off .off-rel__title{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.015em;font-size:clamp(1.75rem,3.4vw,2.75rem);font-weight:400;line-height:1.1}.ohso-off .off-rel__rows{flex-direction:column;display:flex}.ohso-off .off-rel__row{border-top:1px solid var(--off-line);min-height:86px;color:inherit;transition:padding-left .5s var(--off-ease);grid-template-columns:minmax(0,1fr) minmax(260px,22rem);align-items:center;gap:2rem;padding:1.5rem 0;text-decoration:none;display:grid;position:relative}.ohso-off a.off-rel__row:hover{padding-left:1rem}.ohso-off .off-rel__rows .off-rel__row:last-child{border-bottom:1px solid var(--off-line)}.ohso-off .off-rel__row-title{font-family:var(--font-midnight),"Midnight Sans ST Pro",sans-serif;letter-spacing:-.015em;color:var(--off-fg);font-size:clamp(1.375rem,2.4vw,1.875rem);font-weight:400;line-height:1.2}.ohso-off .off-rel__row-body{letter-spacing:.3px;color:var(--off-muted);max-width:22rem;font-size:14px;line-height:1.5}@media (max-width:820px){.ohso-off .off-rel__row{grid-template-columns:1fr;gap:.5rem}.ohso-off .off-rel__row-body{max-width:none}}.ohso-off [data-reveal]{opacity:0;transition:opacity .9s var(--off-ease),transform .9s var(--off-ease);will-change:opacity,transform;transform:translateY(32px)}.ohso-off [data-reveal].is-in{opacity:1;transform:none}.ohso-off .off-rel__row[data-reveal]{transition:opacity .9s var(--off-ease), transform .9s var(--off-ease), padding-left .5s var(--off-ease)}@media (prefers-reduced-motion:reduce){.ohso-off [data-reveal]{opacity:1!important;transition:none!important;transform:none!important}.ohso-off .off-acc__panel,.ohso-off .off-acc__icon,.ohso-off .off-card__image img{transition:none!important}}.ohso-off-hero--dark{--off-bg:#0a0a0a;--off-fg:#fff;--off-muted:#ffffffa6;--off-line:#ffffff2e;--off-grad:#fff}.ohso-off-hero--dark ::selection{color:#0a0a0a;background:#fff}.ohso-off-hero--dark .off-hero__kicker,.ohso-off-hero--dark .off-hero__marker{color:#0a0a0ab3}.ohso-off-hero--dark .off-hero__highlight-label,.ohso-off-hero--dark .off-hero__highlight{color:var(--off-fg)}.ohso-off .off-acc--dark{--off-bg:#0a0a0a;--off-fg:#fff;--off-muted:#ffffffa6;--off-line:#ffffff2e;color:#fff;background:#0a0a0a}.ohso-off .off-acc--dark ::selection{color:#0a0a0a;background:#fff}.ohso-off .off-acc--dark .off-acc__title,.ohso-off .off-acc--dark .off-acc__item-title,.ohso-off .off-acc--dark .off-acc__icon{color:#fff}.ohso-off .off-acc--dark .off-acc__copy{color:#ffffffb8}.ohso-off .off-rel--dark{--off-bg:#0a0a0a;--off-fg:#fff;--off-muted:#ffffffa6;--off-line:#ffffff2e;color:#fff;background:#0a0a0a;border-top-color:#ffffff2e}.ohso-off .off-rel--dark ::selection{color:#0a0a0a;background:#fff}.ohso-off .off-rel--dark .off-rel__title,.ohso-off .off-rel--dark .off-rel__row-title{color:#fff}.ohso-off .off-rel--dark .off-rel__row-body{color:#ffffffb8}
