@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600&display=swap');
@font-face{font-family:'LibreBaskerville';src:url('assets/fonts/LibreBaskerville-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-style:normal;}
@font-face{font-family:'LibreBaskerville';src:url('assets/fonts/LibreBaskerville-Italic-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-style:italic;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--bg:#0f0f0f;--bg2:#141414;--fg:#ffffff;--lime:#e4fea5;--muted:rgba(255,255,255,0.45);--border:rgba(255,255,255,0.08);--sans:'DM Sans',sans-serif;--serif:'LibreBaskerville',Georgia,serif;--max:1200px;--radius:4px;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;padding-top:60px;position:relative;}
body::before{content:'';position:fixed;inset:0;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.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");background-size:200px 200px;opacity:0.038;pointer-events:none;z-index:9998;mix-blend-mode:overlay;}
body::after{content:'';position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:120vw;height:120vh;background:radial-gradient(ellipse 55% 45% at 50% 50%,rgba(228,254,165,0.06) 0%,transparent 65%);pointer-events:none;z-index:0;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.1;letter-spacing:-0.02em;}
h1{font-size:clamp(2.8rem,7vw,6.5rem);}
h2{font-size:clamp(2rem,4.5vw,3.8rem);}
h3{font-size:clamp(1.2rem,2vw,1.6rem);}
p{font-weight:300;line-height:1.7;}
.lime{color:var(--lime);}
.muted{color:var(--muted);}
.container{max-width:var(--max);margin:0 auto;padding:0 2rem;}
section{padding:7rem 0;position:relative;z-index:1;}
section.tight{padding:4rem 0;}
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 2rem;height:60px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;background:rgba(15,15,15,0.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);overflow:hidden;}
.nav-logo img{height:22px;width:auto;display:block;}
.nav-links{display:flex;flex-direction:row;gap:1.5rem;list-style:none;align-items:center;margin:0;padding:0;flex-wrap:nowrap;white-space:nowrap;}
.nav-links a{font-size:0.8rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);transition:color 0.2s;}
.nav-links a:hover,.nav-links a.active{color:var(--fg);}
.nav-cta{background:var(--lime)!important;color:var(--bg)!important;padding:0.45rem 1.1rem!important;border-radius:var(--radius);font-weight:600!important;letter-spacing:0.04em!important;text-transform:uppercase!important;transition:opacity 0.2s!important;}
.nav-cta:hover{opacity:0.85;}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--fg);transition:all 0.3s ease;}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-family:var(--serif);font-size:2.2rem;font-weight:700;transition:color 0.2s;}
.mobile-menu a:hover{color:var(--lime);}
.mobile-close{position:absolute;top:1rem;right:2rem;background:none;border:none;color:var(--fg);font-size:2rem;cursor:pointer;}
footer{border-top:1px solid var(--border);padding:3rem 0;background:var(--bg);position:relative;z-index:1;}
.footer-inner{max-width:var(--max);margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem;align-items:start;}
.footer-logo img{height:18px;margin-bottom:1rem;}
.footer-logo p{font-size:0.82rem;color:var(--muted);line-height:1.6;}
.footer-nav h4,.footer-contact h4{font-family:var(--sans);font-size:0.72rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--lime);margin-bottom:1rem;}
.footer-nav ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem;}
.footer-nav a{font-size:0.9rem;color:var(--muted);transition:color 0.2s;}
.footer-nav a:hover{color:var(--fg);}
.footer-contact p{font-size:0.9rem;color:var(--muted);margin-bottom:0.4rem;}
.footer-contact a{color:var(--muted);transition:color 0.2s;}
.footer-contact a:hover{color:var(--lime);}
.footer-bottom{max-width:var(--max);margin:2rem auto 0;padding:1.5rem 2rem 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;}
.footer-bottom p,.footer-bottom a{font-size:0.78rem;color:var(--muted);transition:color 0.2s;}
.footer-bottom a:hover{color:var(--fg);}
.btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.85rem 1.8rem;border-radius:var(--radius);font-family:var(--sans);font-size:0.9rem;font-weight:500;letter-spacing:0.04em;transition:all 0.2s ease;cursor:pointer;border:none;}
.btn-primary{background:var(--lime);color:var(--bg);}
.btn-primary:hover{opacity:0.88;transform:translateY(-1px);}
.btn-outline{background:transparent;color:var(--fg);border:1px solid var(--border);}
.btn-outline:hover{border-color:rgba(255,255,255,0.35);}
.section-label{font-size:0.72rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:var(--lime);margin-bottom:1.5rem;display:block;}
hr.rule{border:none;border-top:1px solid var(--border);margin:0;position:relative;z-index:1;}
.ticker-wrap{overflow:hidden;background:var(--lime);padding:0.75rem 0;white-space:nowrap;}
.ticker-track{display:inline-block;animation:ticker 22s linear infinite;}
.ticker-track span{font-size:0.78rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--bg);padding:0 2.5rem;}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.page-header{padding:7rem 0 4rem;border-bottom:1px solid var(--border);position:relative;z-index:1;}
.card{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color 0.2s ease;background:var(--bg2);}
.card:hover{border-color:rgba(228,254,165,0.3);}
.form-group{margin-bottom:1.5rem;}
label{display:block;font-size:0.75rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-bottom:0.5rem;}
input,textarea,select{width:100%;background:rgba(255,255,255,0.05)!important;border:1px solid var(--border)!important;border-radius:var(--radius);color:var(--fg)!important;font-family:var(--sans);font-size:1rem;padding:0.85rem 1rem;outline:none;transition:border-color 0.2s;-webkit-appearance:none;appearance:none;}
input:focus,textarea:focus{border-color:var(--lime);}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,0.25);}
textarea{resize:vertical;min-height:140px;}
.fade-up{opacity:0;transform:translateY(28px);transition:opacity 0.7s ease,transform 0.7s ease;}
.fade-up.visible{opacity:1;transform:translateY(0);}
.fade-up:nth-child(2){transition-delay:0.1s;}
.fade-up:nth-child(3){transition-delay:0.2s;}
.fade-up:nth-child(4){transition-delay:0.3s;}
@media(max-width:768px){.nav-links{display:none;}.nav-hamburger{display:flex;}.footer-inner{grid-template-columns:1fr;gap:2rem;}.footer-bottom{flex-direction:column;gap:0.5rem;text-align:center;}section{padding:5rem 0;}.page-header{padding:5rem 0 3rem;}}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-text-fill-color:#ffffff!important;-webkit-box-shadow:0 0 0px 1000px #1a1a1a inset!important;box-shadow:0 0 0px 1000px #1a1a1a inset!important;border:1px solid rgba(255,255,255,0.08)!important;transition:background-color 5000s ease-in-out 0s;}
