*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:#0a0a0a;color:#f0ede8;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;overflow-x:hidden;overflow-y:auto}.preloader{position:fixed;inset:0;background:#0a0a0a;display:flex;align-items:center;justify-content:center;z-index:10000;transition:opacity .8s,visibility .8s}.preloader.done{opacity:0;visibility:hidden}.preloader-text{font-size:clamp(2rem,6vw,5rem);font-weight:700;letter-spacing:.3em;overflow:hidden}.preloader-text span{display:inline-block;animation:pi .6s cubic-bezier(0.16,1,0.3,1) forwards;opacity:0;transform:translateY(100%)}@keyframes pi{to{opacity:1;transform:translateY(0)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.5rem 3rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-size:1.1rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:#f0ede8;text-decoration:none}#hero-section{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:20;background:#0a0a0a}.hero-content{text-align:center;position:relative;z-index:2}.hero-title{font-size:clamp(4rem,15vw,14rem);font-weight:700;letter-spacing:-.02em;line-height:.9}.hero-title .line{display:block;overflow:hidden}.hero-title .line-inner{display:block;transform:translateY(110%);transition:transform 1s cubic-bezier(0.16,1,0.3,1)}.hero-title .line-inner.reveal{transform:translateY(0)}.hero-subtitle{margin-top:2rem;font-size:.75rem;letter-spacing:.4em;text-transform:uppercase;color:#666;opacity:0;transform:translateY(20px);transition:all .8s .8s cubic-bezier(0.16,1,0.3,1)}.hero-subtitle.reveal{opacity:1;transform:translateY(0)}.hero-scroll{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:#666;opacity:0;animation:fi 1s 1.5s forwards}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,#c8a96e,transparent);animation:sp 2s infinite}@keyframes sp{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.2)}}@keyframes fi{to{opacity:1}}.content-layer{position:relative;z-index:1;padding-top:20px}.section{padding:4rem 4rem;position:relative}.section-label{font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:#c8a96e;margin-bottom:1rem;display:flex;align-items:center;gap:1rem}.section-label::before{content:"";width:30px;height:1px;background:#c8a96e}.section-heading{font-size:clamp(1.8rem,5vw,3rem);font-weight:700;line-height:1.1;margin-bottom:.6rem;letter-spacing:-.03em}.section-desc{font-size:.9rem;line-height:1.6;color:#666;max-width:500px}.marquee-section{padding:3rem 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.marquee-track{display:flex;animation:mq 20s linear infinite}.marquee-item{font-size:clamp(2rem,5vw,4rem);font-weight:700;letter-spacing:-.02em;white-space:nowrap;padding:0 3rem;color:rgba(255,255,255,.08);transition:color .4s ease;cursor:default}.marquee-item:hover{color:#c8a96e}@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.cards-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem;margin-top:1rem}.cards-grid.seven-wide{margin-top:1rem}.card{display:block;background:rgba(255,255,255,.03);padding:1.4rem .8rem;text-align:center;transition:all .4s cubic-bezier(0.16,1,0.3,1);cursor:pointer;border-radius:12px;border:1px solid rgba(255,255,255,.05);text-decoration:none;color:inherit}.card:hover{background:rgba(255,255,255,.06);border-color:rgba(200,169,110,.2);transform:translateY(-4px)}.card-icon{font-size:1.6rem;margin-bottom:.6rem}.card-title{font-size:.85rem;font-weight:600;margin-bottom:.2rem;color:#f0ede8}.card-text{font-size:.7rem;color:#666;line-height:1.4}.footer{padding:2rem 4rem;border-top:1px solid rgba(255,255,255,.05)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#666}.footer a{color:#c8a96e;text-decoration:none}#bg-canvas{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.6}@media(max-width:768px){.nav{padding:1rem 1.5rem}.section{padding:3rem 1.5rem}.cards-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.card{padding:1.2rem .6rem}.footer{padding:1.5rem}}@media(max-width:1200px) and (min-width:769px){.cards-grid{grid-template-columns:repeat(4,1fr)}}