html{scroll-behavior:smooth}body{margin:0}@font-face{font-family:Halenoir Display;src:url(../fonts/HalenoirCompact-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Halenoir Display;src:url(../fonts/HalenoirCompact-Medium.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Halenoir Text;src:url(../fonts/HalenoirCompactText-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Halenoir Text;src:url(../fonts/HalenoirCompactText-Medium.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}:root{--bg:#f7f7f5;--paper:#ecebe8;--text:#1a1a1a;--muted:#6f6f6b;--line:#1a1a1a24;--line-soft:#1a1a1a38;--soft:#efefed;--panel:#e4e3df;--black:#111;--radius:24px;--display:"Halenoir Display", "Helvetica Neue", Arial, sans-serif;--text-font:"Halenoir Text", "Helvetica Neue", Arial, sans-serif;--serif-italic:"Cormorant Garamond", Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:62.5%}body{background:var(--bg);color:var(--text);font-family:var(--text-font);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}button,a,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{text-decoration:none}img{object-fit:cover;width:100%;height:100%;display:block}em,.slogan-text .is-italic,.story-copy h2 em,.faq-section h2 em,.contact-section h2 em{font-family:var(--serif-italic);letter-spacing:-.035em;font-style:italic;font-weight:400}.site-shell{background:var(--bg);isolation:isolate;min-height:100vh;position:relative}.cursor-dot{mix-blend-mode:difference;pointer-events:none;z-index:9999;background:#fff;border-radius:999px;width:12px;height:12px;transition:width .2s,height .2s;position:fixed;top:0;left:0}.menu-button{z-index:120;background:#e6e6e3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .7s cubic-bezier(.5,.5,0,1),background .25s;display:flex;position:fixed;inset-block-start:20px;inset-inline-end:20px}.menu-button:hover{background:#dededb;transform:rotate(90deg)}.menu-button span{background:#222;width:14px;height:1.5px;transition:transform .35s;position:absolute}.menu-button span:first-child{transform:translateY(-2.5px)}.menu-button span:last-child{transform:translateY(2.5px)}.menu-button.is-open span:first-child{transform:rotate(45deg)}.menu-button.is-open span:last-child{transform:rotate(-45deg)}.menu-layer{z-index:110;opacity:0;pointer-events:none;background:#0000004d;transition:opacity .35s;position:fixed;inset:0}.menu-layer.is-open{opacity:1;pointer-events:auto}.menu-panel{transform-origin:100% 0;background:#ecebe8;border-radius:2.8rem;width:min(23rem,100vw - 40px);padding:2rem 1.9rem 2.3rem;transition:transform .35s cubic-bezier(.16,1,.3,1);position:absolute;inset-block-start:20px;inset-inline-end:20px;transform:translateY(-8px)scale(.97)}[dir=rtl] .menu-panel{transform-origin:0 0}.menu-layer.is-open .menu-panel{transform:translateY(0)scale(1)}.menu-panel p{color:#7b7b78;font-family:var(--text-font);letter-spacing:.06em;margin:0 0 1.2rem;font-size:1.15rem}.menu-panel button{text-align:start;width:100%;font-family:var(--display);letter-spacing:-.045em;padding:.05rem 0;font-size:clamp(2.6rem,3.1vw,3.8rem);font-weight:400;line-height:1.05;display:block}.side-badge{inset-inline-end:0;z-index:70;color:#fff;background:#000;flex-direction:column;justify-content:space-between;align-items:center;width:48px;height:142px;padding:1.3rem .7rem;display:flex;position:fixed;top:52%;transform:translateY(-50%)}.side-badge strong{filter:brightness(0)invert();background-image:url(../assets/logo-mark.png);background-position:50%;background-repeat:no-repeat;background-size:contain;width:28px;height:28px;font-size:0;line-height:0;display:block}.side-badge span{writing-mode:vertical-rl;font-family:var(--text-font);font-size:1.2rem;font-weight:500;transform:rotate(180deg)}.hero-section{background:var(--bg);isolation:isolate;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:8rem 2rem;display:flex;position:relative;overflow:hidden}.hero-center{z-index:10;text-align:center;flex-direction:column;align-items:center;gap:clamp(1.5rem,3.5vw,2.5rem);max-width:min(44rem,92vw);display:flex;position:relative}.hero-logo{z-index:30;width:42px;height:42px;position:absolute;inset-block-start:22px;inset-inline-start:22px}.hero-logo img{object-fit:contain;width:100%;height:100%}.hero-name{z-index:10;width:max-content;max-width:100%;font-family:var(--display);letter-spacing:-.038em;white-space:nowrap;transform-origin:50%;text-align:center;color:var(--text);margin:0;font-size:clamp(3.4rem,5.8vw,10rem);font-weight:400;line-height:.88;position:relative;transform:translateY(-18px)scaleX(.94)}.hero-tagline{max-width:36rem;font-family:var(--text-font);letter-spacing:.012em;color:var(--muted);margin:0;font-size:clamp(1.38rem,1.85vw,1.72rem);font-weight:400;line-height:1.55}[dir=rtl] .hero-tagline{letter-spacing:0;font-size:clamp(1.22rem,1.65vw,1.48rem);line-height:1.68}.hero-name-line{display:inline}.trail-image{object-fit:cover;pointer-events:none;z-index:3;width:10vw;min-width:112px;max-width:178px;height:12vw;min-height:132px;max-height:214px;transform:translate(-50%, -50%) rotate(var(--rotation)) scale(.72);border-radius:4%;animation:1.25s cubic-bezier(.16,1,.3,1) forwards trailPop;position:absolute}@keyframes trailPop{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--rotation)) scale(.68)}14%{opacity:1;transform:translate(-50%, -50%) rotate(var(--rotation)) scale(1)}58%{opacity:1;transform:translate(-50%, -50%) rotate(var(--rotation)) scale(.96)}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--rotation)) scale(.28)}}.scroll-indicator{z-index:20;font-family:var(--text-font);color:#3d3d3c;font-size:1.4rem;position:absolute;bottom:2.2rem;left:50%;transform:translate(-50%)}.slogan-section{background:var(--bg);grid-template-columns:1fr;align-items:center;min-height:58vh;padding:7rem 12vw 6rem;display:grid;position:relative}.mini-label{display:none}.slogan-text{max-width:920px;font-family:var(--display);letter-spacing:-.04em;text-align:center;margin:0 auto;font-size:clamp(3rem,4.2vw,6.2rem);font-weight:400;line-height:1.08}.slogan-text span{opacity:1;transition:opacity 80ms linear}.slogan-text .is-italic{letter-spacing:-.04em;font-size:1em}.work-section{background:var(--paper);padding:clamp(5rem,11vw,9rem) clamp(1.25rem,4vw,3.5rem) clamp(6.5rem,12vw,10rem)}.work-section__head{border-bottom:1px solid var(--line);max-width:72rem;margin:0 auto clamp(2.75rem,6vw,4rem);padding-bottom:1.5rem}.work-section__label{font-family:var(--text-font);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .55rem;font-size:1.1rem;font-weight:500}.work-section__head h2{font-family:var(--display);letter-spacing:-.038em;color:var(--text);margin:0;font-size:clamp(2.8rem,4vw,4.2rem);font-weight:400}[dir=rtl] .work-section__head{text-align:end}.work-index{flex-direction:column;gap:clamp(2.75rem,7vw,4.5rem);max-width:96rem;margin:0 auto;padding:0;list-style:none;display:flex}.work-project{background:var(--bg);border:1px solid var(--line);border-radius:1.15rem;grid-template-columns:1.06fr .94fr;align-items:stretch;margin:0;padding:0;display:grid;overflow:hidden}.work-project__media{aspect-ratio:5/4;background:#e0dfdb;order:1;min-height:12rem;position:relative}.work-project__media img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.work-project__panel{background:var(--bg);border-inline-start:1px solid var(--line);flex-direction:column;order:2;justify-content:center;padding:clamp(2rem,4vw,3.25rem) clamp(1.75rem,4vw,2.75rem);display:flex}.work-project--reverse .work-project__media{order:2}.work-project--reverse .work-project__panel{border-inline-start:none;border-inline-end:1px solid var(--line);order:1}.work-project__num{font-family:var(--serif-italic);color:#8a8a85;margin-bottom:.75rem;font-size:clamp(1.85rem,2.2vw,2.35rem);font-style:italic}.work-project__title{font-family:var(--display);letter-spacing:-.03em;color:var(--text);max-width:22rem;margin:0 0 .65rem;font-size:clamp(1.85rem,2.4vw,2.35rem);font-weight:400;line-height:1.15}.work-project__category{font-family:var(--text-font);color:var(--muted);max-width:26rem;margin:0;font-size:clamp(1.28rem,1.45vw,1.42rem);line-height:1.45}.work-project__cta{font-family:var(--text-font);letter-spacing:.02em;color:var(--text);border-bottom:1px solid;align-self:flex-start;margin-top:1.5rem;padding:.5rem 0;font-size:1.38rem;font-weight:500;transition:color .2s,border-color .2s}.work-project__cta:hover{color:#000}.work-project__cta:focus-visible{outline:2px solid var(--text);outline-offset:4px}.work-project__cta--quiet{color:#9a9a94;cursor:default;border-bottom:none;font-weight:400}[dir=rtl] .work-project__title{letter-spacing:-.015em;max-width:20rem;font-size:clamp(1.52rem,2.1vw,1.95rem);line-height:1.35}[dir=rtl] .work-project__category{max-width:22rem;font-size:clamp(1.12rem,1.25vw,1.28rem);line-height:1.55}[dir=rtl] .work-project__cta{letter-spacing:0;font-size:1.22rem}[dir=rtl] .work-project__num{font-size:clamp(1.55rem,1.9vw,2rem)}@media (width<=960px){.work-project,.work-project--reverse{grid-template-columns:1fr}.work-project__media,.work-project--reverse .work-project__media{aspect-ratio:4/3;order:1;min-height:14rem}.work-project__panel,.work-project--reverse .work-project__panel{border-inline:none;border-top:1px solid var(--line);order:2}.work-section{padding:4.5rem 1.2rem 6rem}.work-section__head{margin-bottom:2.25rem}}.icon-arrow path{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.marquee-section{background:var(--bg);padding:7rem 0 11rem;overflow:hidden}.marquee-track{width:max-content;animation:26s linear infinite marquee;display:flex}[dir=rtl] .marquee-track{animation-direction:reverse}.marquee-track span{white-space:nowrap;font-family:var(--display);letter-spacing:-.075em;padding-inline-end:4rem;font-size:clamp(6.6rem,9vw,15rem);font-weight:400;line-height:.9}@keyframes marquee{to{transform:translate(-50%)}}.story-section{background:var(--bg);grid-template-columns:minmax(28rem,39vw) minmax(30rem,1fr);align-items:center;gap:clamp(5rem,8vw,13rem);padding:10rem 14vw 12rem;display:grid}.story-image{border-radius:1.7rem;height:min(58rem,58vw);overflow:hidden}.story-copy h2{max-width:62rem;font-family:var(--display);letter-spacing:-.075em;margin:0 0 2.8rem;font-size:clamp(4.4rem,4.5vw,7.4rem);font-weight:400;line-height:.98}.story-copy p{max-width:68rem;font-family:var(--text-font);letter-spacing:-.025em;color:#353533;margin:0 0 2.2rem;font-size:1.75rem;line-height:1.42}.story-copy button,.contact-section a{color:#fff;font-family:var(--text-font);background:#222;border-radius:.55rem;align-items:center;gap:.8rem;margin-top:1.2rem;padding:1.25rem 1.45rem;font-size:1.6rem;font-weight:400;display:inline-flex}.story-copy button:focus-visible,.contact-section a:focus-visible{outline:2px solid var(--text);outline-offset:3px}.story-copy button svg,.contact-section a svg{width:1.8rem;height:1.8rem}.faq-section{background:var(--bg);padding:9rem 14vw 11rem}.faq-section h2{font-family:var(--display);letter-spacing:-.05em;margin:0 0 4.2rem;font-size:clamp(4rem,4.5vw,7rem);font-weight:400;line-height:.95}.faq-list{max-width:104rem}.faq-item{border-bottom:1px solid var(--line-soft)}.faq-item button{text-align:start;grid-template-columns:7rem 1fr 4rem;align-items:center;gap:2rem;width:100%;padding:2.3rem 0 2rem;display:grid}.faq-number{font-family:var(--serif-italic);color:#333;font-size:2.6rem;font-style:italic;font-weight:400}.faq-item button>span:nth-child(2){font-family:var(--display);letter-spacing:-.035em;font-size:clamp(2rem,1.8vw,2.7rem);font-weight:400}.faq-plus{justify-self:end;width:2.4rem;height:2.4rem;position:relative}.faq-plus span{background:#222;width:1.8rem;height:1.8px;transition:transform .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-plus span:last-child{transform:translate(-50%,-50%)rotate(90deg)}.faq-plus.is-open span:last-child{transform:translate(-50%,-50%)rotate(0)}.faq-answer{grid-template-rows:0fr;transition:grid-template-rows .32s;display:grid}.faq-answer p{max-width:86rem;font-family:var(--text-font);color:#444;margin:0;font-size:1.65rem;line-height:1.45;overflow:hidden}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer p{padding-bottom:2.4rem}.footer-name{display:none}.contact-section{background:var(--paper);grid-template-rows:auto;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.5fr);align-items:start;gap:clamp(5rem,9vw,12rem);min-height:auto;padding:9rem 8vw;display:grid;position:relative}.contact-section>div:first-child{max-width:420px;display:block}.contact-section h2{font-family:var(--display);letter-spacing:-.045em;margin:0 0 2.6rem;font-size:clamp(3rem,3.4vw,4.8rem);font-weight:400;line-height:1.05}.contact-section>div:first-child>a{color:#fff;width:auto;font-family:var(--text-font);background:#222;border-radius:.45rem;align-items:center;gap:.7rem;margin-top:0;padding:1.1rem 1.35rem;font-size:1.45rem;font-weight:400;display:inline-flex}.contact-section nav{grid-template-columns:repeat(3,minmax(120px,1fr));place-self:start stretch;gap:clamp(3rem,6vw,8rem);max-width:none;display:grid}.contact-section nav p{font-family:var(--text-font);color:#777;margin:0 0 1.5rem;font-size:1.75rem;font-weight:400}.contact-section nav a,.contact-section nav button{color:#222;text-align:start;width:auto;font-family:var(--text-font);background:0 0;border-radius:0;margin:0 0 .9rem;padding:0;font-size:1.55rem;font-weight:400;line-height:1.35;display:block}.contact-section nav a:hover,.contact-section nav button:hover{text-underline-offset:.2em;text-decoration:underline}.language-toggle{z-index:130;color:#222;letter-spacing:.04em;background:#e6e6e3;border-radius:999px;place-items:center;width:44px;height:44px;font-size:1.25rem;transition:background .25s,transform .25s;display:grid;position:fixed;inset-block-start:20px;inset-inline-end:72px}.language-toggle:hover{background:#dededb;transform:translateY(-1px)}.language-toggle:focus-visible{outline:2px solid var(--text);outline-offset:3px}[dir=rtl] body{direction:rtl}[dir=rtl] .icon-arrow{transform:scaleX(-1)}@media (width<=900px){.cursor-dot{display:none}.hero-section{min-height:92svh}.hero-logo{width:38px;height:38px}.hero-name{letter-spacing:-.04em;transform:translateY(-16px)scaleX(.94)}.hero-tagline{max-width:34rem}.side-badge{display:none}.slogan-section{min-height:52vh;padding:6rem 2rem}.slogan-text{text-align:start;font-size:clamp(3rem,8vw,5.2rem)}.story-section{grid-template-columns:1fr;padding:7rem 2rem 9rem}.story-image{height:48rem}.faq-section{padding:8rem 2rem}.faq-item button{grid-template-columns:5rem 1fr 3rem}.contact-section{grid-template-columns:1fr;gap:5rem;padding:7rem 2rem}.contact-section nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}}@media (width<=520px){.menu-button{-webkit-tap-highlight-color:transparent;width:44px;height:44px;inset-block-start:calc(12px + env(safe-area-inset-top,0px));inset-inline-end:calc(12px + env(safe-area-inset-right,0px));box-shadow:inset 0 1px #ffffffa6,0 2px 12px #00000014}.menu-panel{width:min(21rem, calc(100vw - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:min(32rem, calc(100dvh - 24px - env(safe-area-inset-top,0px)));-webkit-overflow-scrolling:touch;border-radius:2.2rem;padding:1.75rem 1.65rem 2rem;inset-block-start:calc(12px + env(safe-area-inset-top,0px));inset-inline-end:calc(12px + env(safe-area-inset-right,0px));overflow-y:auto;box-shadow:0 18px 50px #00000024}.menu-panel p{letter-spacing:.08em;font-size:1.05rem}.menu-panel button{padding:.35rem 0;font-size:clamp(2.65rem,9vw,3.2rem);line-height:1.08}[dir=rtl] .menu-panel button{letter-spacing:-.02em}.language-toggle{-webkit-tap-highlight-color:transparent;width:44px;height:44px;font-size:1.2rem;inset-block-start:calc(12px + env(safe-area-inset-top,0px));inset-inline-end:calc(68px + env(safe-area-inset-right,0px));box-shadow:inset 0 1px #ffffffa6,0 2px 12px #00000014}.hero-section{padding-top:calc(5.5rem + env(safe-area-inset-top,0px));padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));padding-inline:max(1.35rem, env(safe-area-inset-left,0px)) max(1.35rem, env(safe-area-inset-right,0px))}.hero-logo{width:36px;height:36px;inset-block-start:calc(14px + env(safe-area-inset-top,0px));inset-inline-start:calc(14px + env(safe-area-inset-left,0px))}[dir=rtl] .hero-logo{inset-inline-start:calc(14px + env(safe-area-inset-right,0px))}.hero-name{white-space:normal;text-align:center;letter-spacing:-.042em;width:100%;max-width:100%;font-size:clamp(3.65rem,10.2vw,4.85rem);line-height:.94;transform:translateY(-14px)scaleX(1)}[dir=rtl] .hero-name{letter-spacing:-.02em;line-height:1}.hero-name-line{display:block}.hero-name-line+.hero-name-line{margin-top:.06em}.trail-image{width:112px;height:138px}.scroll-indicator{bottom:calc(1.6rem + env(safe-area-inset-bottom,0px));color:#2a2a28;-webkit-tap-highlight-color:transparent;background:#2626260d;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:.75rem 1.2rem;font-size:1.35rem;display:inline-flex}.hero-center{gap:1.35rem;max-width:100%}.hero-tagline{max-width:22rem;font-size:clamp(1.28rem,3.8vw,1.48rem);line-height:1.6}[dir=rtl] .hero-tagline{font-size:clamp(1.12rem,3.4vw,1.32rem);line-height:1.65}.work-section{padding-top:3.75rem;padding-bottom:5.25rem;padding-left:max(1rem, env(safe-area-inset-left,0px));padding-right:max(1rem, env(safe-area-inset-right,0px))}.work-section__head{margin-bottom:1.85rem;padding-bottom:1.25rem}.work-section__label{letter-spacing:.12em;font-size:1rem}.work-section__head h2{font-size:clamp(2.45rem,8vw,3.35rem)}.work-index{gap:2.25rem}.work-project__media,.work-project--reverse .work-project__media{aspect-ratio:1;min-height:11rem}.work-project__panel,.work-project--reverse .work-project__panel{padding:1.65rem 1.25rem 1.85rem}.work-project__title{max-width:100%;font-size:clamp(1.62rem,5.2vw,2.05rem)}[dir=rtl] .work-project__title{max-width:100%;font-size:clamp(1.38rem,4.5vw,1.72rem)}.work-project__category{max-width:100%;font-size:1.28rem}[dir=rtl] .work-project__category{font-size:1.12rem;line-height:1.58}.work-project__cta{margin-top:1.25rem;font-size:1.28rem}[dir=rtl] .work-project__cta{font-size:1.12rem}.work-project__num{margin-bottom:.55rem;font-size:1.65rem}[dir=rtl] .menu-button,[dir=rtl] .menu-panel{inset-inline-end:calc(12px + env(safe-area-inset-left,0px))}[dir=rtl] .language-toggle{inset-inline-end:calc(68px + env(safe-area-inset-left,0px))}.contact-section{padding-top:5.25rem;padding-bottom:max(5.5rem, calc(2rem + env(safe-area-inset-bottom,0px)));padding-left:max(1.15rem, env(safe-area-inset-left,0px));padding-right:max(1.15rem, env(safe-area-inset-right,0px));gap:3.25rem}.contact-section>div:first-child{max-width:100%}.contact-section h2{letter-spacing:-.04em;margin-bottom:2rem;font-size:clamp(2.55rem,7.8vw,3.35rem);line-height:1.08}.contact-section>div:first-child>a{-webkit-tap-highlight-color:transparent;border-radius:.5rem;justify-content:center;width:100%;max-width:100%;min-height:48px;padding:1.15rem 1.4rem;font-size:1.42rem}.contact-section nav{grid-template-columns:1fr;gap:2.25rem}.contact-section nav p{letter-spacing:.02em;margin-bottom:1rem;font-size:1.35rem}.contact-section nav a,.contact-section nav button{margin-bottom:.75rem;font-size:1.48rem;line-height:1.4}.contact-section nav a[href^=mailto]{word-break:break-all}[dir=rtl] .contact-section>div:first-child,[dir=rtl] .contact-section h2{text-align:end}[dir=rtl] .contact-section>div:first-child>a{flex-direction:row-reverse}[dir=rtl] .contact-section nav{text-align:end}.slogan-section{padding:5.5rem max(1.25rem, env(safe-area-inset-left)) 5.5rem max(1.25rem, env(safe-area-inset-right))}.slogan-text{text-align:start;font-size:clamp(2.8rem,7.4vw,4.6rem)}[dir=rtl] .slogan-text{text-align:end}.faq-section{padding:6.5rem max(1.25rem, env(safe-area-inset-left)) 6.5rem max(1.25rem, env(safe-area-inset-right))}.faq-item button{grid-template-columns:3.2rem 1fr 2.4rem;gap:1rem;padding:1.85rem 0 1.5rem}.faq-number{font-size:2.1rem}.faq-item button>span:nth-child(2){font-size:clamp(1.75rem,4.2vw,2.35rem);line-height:1.12}[dir=rtl] .faq-item button{text-align:end}[dir=rtl] .faq-plus{justify-self:start}}
