.intro{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:opacity 1.2s cubic-bezier(.65,0,.35,1)}.intro.is-done{opacity:0;pointer-events:none}.intro__canvas-container{position:absolute;inset:0;opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1)}.intro__canvas-container.is-ready{opacity:1}.intro__canvas-container canvas{width:100%!important;height:100%!important}.intro__fallback{position:absolute;inset:0;display:none;align-items:center;justify-content:center;pointer-events:none}.intro--fallback .intro__fallback{display:flex}.intro--fallback .intro__canvas-container{display:none}.intro__fallback-text{font-family:var(--font-display);font-size:clamp(3rem,14vw,10rem);letter-spacing:.15em;color:var(--accent);margin:0;position:relative;opacity:0;transform:translateY(.1em);filter:blur(18px);will-change:opacity,transform,filter;text-shadow:0 0 30px rgba(236,207,163,.35)}.intro__fallback-text:before,.intro__fallback-text:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;opacity:0}.intro__fallback-text:before{color:#9b0000;transform:translate(2px)}.intro__fallback-text:after{color:#cfcfcf;transform:translate(-2px)}.canvas-root{position:fixed;inset:0;z-index:1;background:#0b0b0c;touch-action:none;overscroll-behavior:none;opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1)}.canvas-root.is-ready{opacity:1}.canvas-hint{opacity:0;pointer-events:none;transition:opacity .9s cubic-bezier(.22,1,.36,1)}.canvas-root.is-ready~.canvas-hint:not([hidden]){opacity:1}#canvas-hint.canvas-hint{position:fixed;z-index:120;inset:50% auto auto 50%;transform:translate(-50%,-50%);max-width:min(22rem,calc(100vw - 2rem));margin:0;padding:1rem 1.15rem;border-radius:2px;background:#0b0b0ceb;border:1px solid rgba(236,207,163,.22);color:var(--fg, #ecebe6);box-shadow:0 12px 40px #00000073;text-align:center}.canvas-hint:not([hidden]){pointer-events:auto}.canvas-hint__text{margin:0 0 .85rem;font-size:.9rem;line-height:1.45}.canvas-hint__dismiss{display:inline-flex;align-items:center;justify-content:center;padding:.4rem .9rem;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--accent, #eccfa3);border:1px solid rgba(236,207,163,.35);border-radius:2px;pointer-events:auto;transition:background .2s ease,color .2s ease}.canvas-hint__dismiss:hover,.canvas-hint__dismiss:focus-visible{background:#eccfa31f;outline:none}.canvas-root canvas{width:100%!important;height:100%!important;display:block}.page-loader{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#0b0b0c;transition:opacity .5s ease-out;opacity:1;pointer-events:auto}.page-loader.is-hidden{opacity:0;pointer-events:none}.page-loader__bar{width:200px;height:4px;border-radius:2px;background:#eccfa326;overflow:hidden}.page-loader__fill{height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:#eccfa3}body.has-canvas .nav{color:#000;mix-blend-mode:difference}body.has-canvas .nav__brand{color:#fff}.frame{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.25rem clamp(1rem,3vw,2rem);pointer-events:none;color:#fff;mix-blend-mode:difference;text-transform:uppercase;opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1)}.canvas-root.is-ready~.frame{opacity:1}.frame a,.frame button{pointer-events:auto;color:#fff;mix-blend-mode:difference}.frame__title{font-family:Asul,serif;font-size:clamp(1rem,2vw,1.375rem);font-weight:400;margin:0;color:#fff;mix-blend-mode:difference;text-decoration:none}.frame__title:hover,.frame__title:focus,.frame__title:active{color:#fff;text-decoration:none}:root{--bg: #0b0b0c;--fg: #ecebe6;--accent: #eccfa3;--font-display: "Cinzel", "Playfair Display", Georgia, serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1)}@font-face{font-family:Cinzel;src:url(../fonts/Cinzel/Cinzel-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden}body.has-canvas{background:#0b0b0c}html.is-intro,html.is-intro body{overflow:hidden;height:100%}img,svg,video,canvas{display:block;max-width:100%}a{color:inherit;text-decoration:none;transition:color .25s var(--ease-out)}a:hover{color:var(--accent)}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1.25rem clamp(1rem,3vw,2rem);color:var(--fg);pointer-events:none}.nav>*{pointer-events:auto}.nav__brand{font-family:Asul,serif;font-size:clamp(1.125rem,1.6vw,1.5rem);letter-spacing:.35em;text-transform:uppercase}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.intro{transition-duration:1.2s!important;transition-timing-function:cubic-bezier(.65,0,.35,1)!important}}
