* { box-sizing: border-box; }
html, body { width:100%; height:100%; overflow:hidden; overflow-x:hidden; background:#c2ccd3; color:#000; font-family:'Helvetica Neue Light','Helvetica Neue',Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
body { margin:0; }
.bg-video { position:fixed; top:0; left:0; display:block; width:100%; height:100%; object-fit:cover; z-index:0; opacity:1; pointer-events:none; }
.glass-defs { position:absolute; width:0; height:0; pointer-events:none; }
.hero { position:relative; z-index:10; display:flex; flex-direction:column; width:100%; height:100vh; height:100dvh; color:#000; pointer-events:none; }
.icon { flex:none; }
.rule { position:absolute; top:0; bottom:0; display:none; flex-direction:column; align-items:center; }
.rule--left { left:1.25rem; }.rule--right { right:1.25rem; }.rule__seg { width:1px; background:rgba(0,0,0,.2); }.rule__seg--end { height:15%; }.rule__seg--mid { flex:1 1 0%; }.rule__plus { padding:.25rem 0; color:rgba(0,0,0,.4); font-size:.75rem; line-height:1; }
.nav { position:relative; z-index:2; display:flex; align-items:center; justify-content:flex-start; gap:1.1rem; padding:1.25rem; }
.nav__item { display:inline-flex; align-items:center; gap:.625rem; border:0; background:none; color:#000; font:inherit; text-decoration:none; cursor:pointer; pointer-events:auto; transition:opacity 300ms; }.nav__item:hover { opacity:.6; }.nav__label { font-size:.875rem; line-height:1.25rem; letter-spacing:.025em; }.nav__label--menu { display:none; }.nav__dot { width:8px; height:8px; border-radius:9999px; background:#000; }
.hero-bottom { position:relative; z-index:2; display:flex; flex-direction:column; gap:1.5rem; margin-top:auto; padding:0 1.25rem 1.5rem; }
.lede { max-width:24rem; }.lede__title { margin:0; color:#000; font-size:1.25rem; font-weight:300; line-height:1.25; letter-spacing:-.025em; }.lede__body { max-width:280px; margin:.75rem 0 0; color:rgba(0,0,0,.6); font-size:.75rem; line-height:1.625; }
.chamfer { position:relative; display:flex; align-items:center; justify-content:space-between; width:220px; height:44px; margin-top:1.5rem; padding:0 1.25rem; color:#000; text-decoration:none; pointer-events:auto; transition:opacity 300ms; }.chamfer:hover { opacity:.7; }.chamfer__glass { position:absolute; inset:0; border:1px solid rgba(0,0,0,.2); background:rgba(255,255,255,.6); clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }.chamfer__outline { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }.chamfer__label,.chamfer .icon { position:relative; }.chamfer__label { font-size:.75rem; letter-spacing:.025em; }
.card { position:relative; display:flex; flex-direction:column; justify-content:space-between; width:340px; max-width:100%; height:460px; padding:2rem; overflow:hidden; border:1px solid rgba(47,47,47,.15); border-radius:48px; background:transparent; pointer-events:auto; animation:fade-slide-up-card 900ms cubic-bezier(.16,1,.3,1) both; }@keyframes fade-slide-up-card { from { opacity:0; transform:translateY(28px); } to { opacity:1; transform:translateY(0); } }
#dup-video-container { position:absolute; top:0; left:0; z-index:0; overflow:hidden; pointer-events:none; }#dup-image { position:absolute; inset:0; width:100%; height:100%; filter:url(#liquid-glass-refraction); }.card__frost { position:absolute; inset:0; z-index:1; border-radius:48px; background:rgba(255,255,255,.05); box-shadow:inset 0 1.5px 2px rgba(255,255,255,.3),inset 0 -1px 2px rgba(0,0,0,.15); pointer-events:none; transition:background 400ms; }.card.group:hover .card__frost { background:rgba(255,255,255,.1); }.card__head,.card__body,.card__wave { position:relative; z-index:2; }.card__head { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; padding-bottom:.75rem; border-bottom:1px solid rgba(0,0,0,.1); }.card__title { margin:0; font-size:1rem; font-weight:500; letter-spacing:-.025em; }.card__index { color:rgba(0,0,0,.4); font-size:.75rem; }.card__body { display:flex; flex-direction:column; gap:1rem; margin-top:1rem; }.finding__title { margin:0; font-size:.875rem; font-weight:600; letter-spacing:-.025em; }.finding__link { color:inherit; text-decoration:none; }.finding__link:hover { text-decoration:underline; text-underline-offset:4px; }.finding__text { margin:.25rem 0 0; color:rgba(0,0,0,.5); font-size:.75rem; line-height:1.625; }.card__wave { display:block; width:100%; height:auto; margin-top:1.25rem; }
.menu { position:fixed; inset:0; z-index:50; visibility:hidden; pointer-events:none; transition:visibility 0s linear 500ms; }.menu.is-open { visibility:visible; pointer-events:auto; transition-delay:0s; }.menu__backdrop { position:absolute; inset:0; background:rgba(0,0,0,.4); opacity:0; backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); transition:opacity 500ms; }.menu.is-open .menu__backdrop { opacity:1; }.menu__panel { position:absolute; top:0; left:0; display:flex; flex-direction:column; width:100%; height:100%; padding:1.5rem 2rem; background:#f5f4f0; transform:translateX(-100%); transition:transform 500ms cubic-bezier(.16,1,.3,1); }.menu.is-open .menu__panel { transform:translateX(0); }.menu__close { display:inline-flex; align-items:center; gap:.625rem; align-self:flex-start; margin-bottom:3rem; border:0; background:none; color:#000; font:inherit; font-size:.875rem; cursor:pointer; transition:opacity 300ms; }.menu__close:hover { opacity:.6; }.menu__nav { display:flex; flex-direction:column; }.menu__link { display:flex; align-items:center; justify-content:space-between; padding:1rem 0; border-bottom:1px solid rgba(0,0,0,.1); color:#000; text-decoration:none; opacity:0; transform:translateY(20px); transition:opacity 500ms,transform 500ms; }.menu__linkText { font-size:1.5rem; font-weight:300; letter-spacing:-.025em; transition:transform 300ms; }.menu__link:hover .menu__linkText { transform:translateX(8px); }.menu__arrow { opacity:0; transform:translateX(8px); transition:opacity 300ms,transform 300ms; }.menu__link:hover .menu__arrow { opacity:1; transform:translateX(0); }.menu.is-open .menu__link { opacity:1; transform:translateY(0); }.menu.is-open .menu__link:nth-child(1) { transition-delay:150ms; }.menu.is-open .menu__link:nth-child(2) { transition-delay:225ms; }.menu.is-open .menu__link:nth-child(3) { transition-delay:300ms; }.menu.is-open .menu__link:nth-child(4) { transition-delay:375ms; }.menu.is-open .menu__link:nth-child(5) { transition-delay:450ms; }.menu__foot { margin-top:auto; padding:1.5rem 0 2rem; border-top:1px solid rgba(0,0,0,.1); opacity:0; transform:translateY(20px); transition:opacity 500ms,transform 500ms; }.menu.is-open .menu__foot { opacity:1; transform:translateY(0); transition-delay:600ms; }.menu__footLabel { display:block; margin-bottom:.75rem; color:rgba(0,0,0,.4); font-size:.75rem; letter-spacing:.025em; text-transform:uppercase; }.menu__mail { color:rgba(0,0,0,.7); font-size:.875rem; text-decoration:none; transition:color 300ms; }.menu__mail:hover { color:#000; }
@media (min-width:640px) { .nav { padding:1.25rem 1.5rem; }.nav__label--menu { display:inline; }.hero-bottom { padding:0 1.5rem 2rem; }.lede__title { font-size:1.5rem; }.lede__body { font-size:.875rem; }.chamfer { width:260px; height:48px; padding:0 1.5rem; }.chamfer__label { font-size:.875rem; }.chamfer__glass { border-color:transparent; background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; }.card__title { font-size:1.125rem; }.menu__panel { width:380px; padding:1.5rem 2.5rem; }.menu__linkText { font-size:1.875rem; } }
@media (min-width:768px) { .rule { display:flex; }.nav { padding:1.5rem 3rem; }.hero-bottom { flex:1; flex-direction:row; align-items:stretch; justify-content:space-between; gap:3rem; margin-top:0; padding:2rem 3rem 3rem; }.lede { align-self:flex-start; }.card { align-self:flex-end; }.lede__title { font-size:1.875rem; }.lede__body { margin-top:1rem; }.chamfer { margin-top:2rem; }.card__head { padding-bottom:1rem; }.card__title { font-size:1.25rem; }.card__body { gap:1.25rem; margin-top:1.25rem; }.finding__title { font-size:1rem; }.finding__text { margin-top:.375rem; font-size:.875rem; }.card__wave { margin-top:1.5rem; } }
@media (min-width:1024px) { .lede__title { font-size:2.25rem; } }
@media (prefers-reduced-motion:reduce) { .bg-video { display:none; } * { transition-duration:.01ms !important; animation-duration:.01ms !important; } }
