*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--black:#000;--white:#fff;--off-white:#f7f7f5;--gray-100:#f0f0ee;--gray-200:#e0e0dc;--gray-300:#c8c8c4;--gray-400:#a0a09c;--gray-500:#787874;--gray-600:#585854;--gray-700:#383834;--gray-800:#1c1c1a;--gray-900:#0a0a08;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif:"Playfair Display", Georgia, serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-5xl:8rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-fast:.2s;--duration-normal:.4s;--duration-slow:.7s;--max-width:1280px;--header-height:72px}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background-color:var(--white);color:var(--black);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;line-height:1.15}.container{width:100%;max-width:var(--max-width);padding:0 var(--space-xl);margin:0 auto}@media (width>=768px){.container{padding:0 var(--space-3xl)}}@media (width>=1024px){.container{padding:0 var(--space-4xl)}}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);transform:translateY(0)}.btn{align-items:center;gap:var(--space-sm);font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;border:1.5px solid var(--black);color:var(--black);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);background:0 0;border-radius:100px;padding:.875rem 2rem;font-size:.75rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";background:var(--black);transition:transform var(--duration-normal) var(--ease-out);border-radius:inherit;position:absolute;inset:0;transform:translateY(101%)}.btn:hover:before{transform:translateY(0)}.btn:hover{color:var(--white)}.btn span,.btn svg{z-index:1;position:relative}.btn svg{transition:transform var(--duration-fast) var(--ease-out)}.btn:hover svg{transform:translate(2px,-2px)}.btn-inverted{border-color:var(--white);color:var(--white)}.btn-inverted:before{background:var(--white)}.btn-inverted:hover{color:var(--black)}.btn-solid{background:var(--black);color:var(--white);border-color:var(--black)}.btn-solid:before{background:var(--white)}.btn-solid:hover{color:var(--black);border-color:var(--black)}.tag{align-items:center;gap:var(--space-xs);letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--gray-300);color:var(--gray-600);border-radius:100px;padding:.375rem 1rem;font-size:.625rem;font-weight:600;display:inline-flex}.tag-dark{color:#fff9;border-color:#fff3}.divider{background:var(--black);width:48px;height:1px}.divider-light{background:#ffffff4d}.section{padding:var(--space-4xl) 0}@media (width>=768px){.section{padding:var(--space-5xl) 0}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--white)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}::selection{background:var(--black);color:var(--white)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes expandWidth{0%{width:0}to{width:48px}}@keyframes draw{to{stroke-dashoffset:0}}.animate-fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-out) both}.animate-fade-in{animation:fadeIn var(--duration-slow) var(--ease-out) both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}
