:root{--bg-base: #09090b;--bg-surface: #111113;--bg-elevated: #18181b;--bg-overlay: rgba(9, 9, 11, .92);--border: #232328;--border-subtle: #1a1a1f;--text-primary: #f0ece8;--text-secondary: #9a9498;--text-muted: #5c5860;--accent: #b08d6b;--accent-light: #c9a580;--accent-dim: #8a6d50;--font-body: "Sora", system-ui, sans-serif;--font-logo: "Silkscreen", sans-serif;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--nav-height: 4.5rem}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:400;font-size:1rem;line-height:1.7;color:var(--text-primary);background:var(--bg-base);overflow-x:hidden}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px 256px}a{color:var(--accent-light);text-decoration:none;transition:color .3s ease}a:hover{color:var(--text-primary)}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}address{font-style:normal}::selection{background:var(--accent-dim);color:var(--text-primary)}.container{width:100%;max-width:72rem;margin:0 auto;padding:0 2rem}@media(max-width:640px){.container{padding:0 1.25rem}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:var(--nav-height);padding:0 2.5rem;background:transparent;transition:background .4s ease,box-shadow .4s ease}.nav.scrolled{background:var(--bg-overlay);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--border-subtle)}.nav-brand{font-family:var(--font-logo);font-size:1.1rem;font-weight:700;color:var(--text-primary);letter-spacing:.1em;text-decoration:none}.nav-links{display:flex;gap:2.5rem}.nav-links a{font-size:.82rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.nav-links a:hover{color:var(--text-primary)}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;padding:0}.nav-toggle span{display:block;width:100%;height:1.5px;background:var(--text-primary);transition:transform .3s ease,opacity .3s ease}.nav-toggle.active span:first-child{transform:translateY(3.25px) rotate(45deg)}.nav-toggle.active span:last-child{transform:translateY(-3.25px) rotate(-45deg)}@media(max-width:640px){.nav{padding:0 1.25rem}.nav-links{display:none}.nav-toggle{display:flex}}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;background:var(--bg-base);opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease}.mobile-menu.open{opacity:1;visibility:visible}.mobile-menu a{font-size:1.5rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.mobile-menu a:hover{color:var(--text-primary)}.hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--nav-height) 2rem 1rem;overflow:hidden}.hero:before{content:"";position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:60vw;height:60vw;max-width:700px;max-height:700px;background:radial-gradient(circle,rgba(176,141,107,.06) 0%,transparent 70%);pointer-events:none}.hero-inner{position:relative;text-align:center}.logo-canvas-wrap{position:relative;width:100vw;height:90vh;left:50%;transform:translate(-50%)}.logo-canvas{display:block;width:100%;height:100%}.logo-static{display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60%;max-height:40%;object-fit:contain}.logo-static.active{display:block}.no-webgl .logo-canvas-wrap,.webgl-active .logo-text--fallback{display:none}.logo-text--fallback{font-family:var(--font-logo);font-size:clamp(5rem,18vw,14rem);font-weight:800;line-height:1;letter-spacing:.1em;color:var(--text-primary);text-shadow:0 1px 0 rgba(176,141,107,.5),0 2px 0 rgba(166,131,97,.45),0 3px 0 rgba(156,121,87,.4),0 4px 0 rgba(146,111,77,.35),0 5px 0 rgba(136,101,67,.3),0 6px 0 rgba(126,91,57,.2),0 7px 0 rgba(116,81,47,.1),0 0 50px rgba(176,141,107,.08),0 10px 30px rgba(0,0,0,.5);transform:perspective(600px) rotateX(2deg);transition:transform .8s var(--ease-out-expo),text-shadow .8s var(--ease-out-expo);animation:logoEnter 1.2s var(--ease-out-expo) both}.logo-text--fallback:hover{transform:perspective(600px) rotateX(0) translateY(-3px);text-shadow:0 2px 0 rgba(176,141,107,.55),0 4px 0 rgba(166,131,97,.45),0 6px 0 rgba(156,121,87,.35),0 8px 0 rgba(146,111,77,.25),0 10px 0 rgba(136,101,67,.15),0 12px 0 rgba(126,91,57,.08),0 14px 0 rgba(116,81,47,.04),0 0 80px rgba(176,141,107,.12),0 16px 40px rgba(0,0,0,.5)}@keyframes logoEnter{0%{opacity:0;transform:perspective(600px) rotateX(8deg) translateY(30px);text-shadow:0 0 0 transparent,0 0 0 transparent,0 0 0 transparent}to{opacity:1;transform:perspective(600px) rotateX(2deg)}}.section{padding:8rem 0}.section--first{padding-top:3rem}.section--alt{background:var(--bg-surface)}.section-label{display:block;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}.section-title{font-family:var(--font-body);font-size:clamp(2rem,5vw,3.2rem);font-weight:600;letter-spacing:-.02em;color:var(--text-primary);margin-bottom:3.5rem}.about-content{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:start}.about-text .lead{font-size:1.15rem;font-weight:400;line-height:1.8;color:var(--text-primary);margin-bottom:1.5rem}.about-text p{color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.8}.details-list{display:flex;flex-direction:column;gap:0}.detail-item{padding:1.25rem 0;border-bottom:1px solid var(--border)}.detail-item:first-child{border-top:1px solid var(--border)}.detail-item dt{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}.detail-item dd{font-size:1rem;font-weight:500;color:var(--text-primary)}@media(max-width:768px){.about-content{grid-template-columns:1fr;gap:3rem}}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:start}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:3.5rem}}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.form-group input,.form-group textarea{font-family:var(--font-body);font-size:.95rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;padding:.85rem 1rem;transition:border-color .3s ease,box-shadow .3s ease;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-dim);box-shadow:0 0 0 3px #b08d6b14}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input.error,.form-group textarea.error{border-color:#c45c5c}.btn-submit{align-self:flex-start;font-family:var(--font-body);font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bg-base);background:var(--accent);border:none;border-radius:6px;padding:.9rem 2.2rem;transition:background .3s ease,transform .2s ease}.btn-submit:hover{background:var(--accent-light)}.btn-submit:active{transform:scale(.98)}.btn-submit.sent{background:#4a8c6a;pointer-events:none}.contact-info{display:flex;flex-direction:column;gap:2.5rem;padding-top:.3rem}.info-block h3{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.6rem}.info-block address,.info-block span,.info-block a{font-size:1rem;line-height:1.7;color:var(--text-secondary)}.info-block a:hover{color:var(--text-primary)}.footer{border-top:1px solid var(--border);padding:4rem 0 2.5rem}.footer-grid{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:start;padding-bottom:3rem;border-bottom:1px solid var(--border-subtle)}.footer-logo{font-family:var(--font-logo);font-size:1rem;font-weight:700;color:var(--text-primary);letter-spacing:.1em}.footer-legal{text-align:center}.footer-legal p{font-size:.82rem;line-height:1.8;color:var(--text-muted)}.footer-legal a{color:var(--text-secondary)}.footer-links{text-align:right}.footer-links a{font-size:.82rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:var(--text-primary)}.footer-bottom{padding-top:2rem;text-align:center}.footer-bottom p{font-size:.75rem;color:var(--text-muted)}@media(max-width:768px){.footer-grid{grid-template-columns:1fr;text-align:center;gap:1.5rem}.footer-links{text-align:center}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--bg-elevated);border-top:1px solid var(--border);padding:1.25rem 2rem;transform:translateY(100%);transition:transform .5s var(--ease-out-expo)}.cookie-banner.visible{transform:translateY(0)}.cookie-inner{max-width:72rem;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.cookie-inner p{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.cookie-inner a{color:var(--accent-light);text-decoration:underline;text-underline-offset:2px}.cookie-actions{display:flex;gap:.75rem;flex-shrink:0}.cookie-btn{font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.6rem 1.4rem;border-radius:5px;cursor:pointer;transition:background .25s ease,color .25s ease}.cookie-btn--decline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.cookie-btn--decline:hover{background:var(--bg-surface);color:var(--text-primary)}.cookie-btn--accept{background:var(--accent);border:1px solid var(--accent);color:var(--bg-base)}.cookie-btn--accept:hover{background:var(--accent-light);border-color:var(--accent-light)}@media(max-width:640px){.cookie-inner{flex-direction:column;text-align:center;gap:1rem}.cookie-actions{width:100%}.cookie-btn{flex:1}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.16s}.reveal:nth-child(4){transition-delay:.24s}.page-header{padding:calc(var(--nav-height) + 4rem) 0 3rem}.page-header h1{font-family:var(--font-body);font-size:clamp(2rem,5vw,3rem);font-weight:600;letter-spacing:-.02em}.prose{max-width:48rem}.prose h2{font-size:1.3rem;font-weight:600;margin-top:3rem;margin-bottom:1rem;color:var(--text-primary)}.prose h3{font-size:1.05rem;font-weight:600;margin-top:2rem;margin-bottom:.75rem;color:var(--text-primary)}.prose p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.8}.prose ul{color:var(--text-secondary);margin-bottom:1rem;padding-left:1.5rem;line-height:1.8}.prose li{margin-bottom:.35rem}.prose a{color:var(--accent-light);text-decoration:underline;text-underline-offset:2px}.prose strong{font-weight:600;color:var(--text-primary)}.prose-footer{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border)}.prose-footer p{font-size:.85rem;color:var(--text-muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.form-group input:focus-visible,.form-group textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #b08d6b26}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.logo-canvas-wrap{display:none}.webgl-active .logo-text--fallback{display:block}html{scroll-behavior:auto}}
