@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Montserrat:wght@300;400;500;600;700&display=swap');

:root {
--neon-green: #2CFF05;
--pure-black: #000000;
--pure-white: #FFFFFF;
--light-gray: #F5F5F5;
}

body {
font-family: 'Montserrat', sans-serif;
background-color: var(--pure-white);
color: var(--pure-black);
scroll-behavior: smooth;
overflow-x: hidden;
}

#interactive-bg {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: -1;
filter: blur(80px);
opacity: 0.6;
}

h1, h2, h3, h4, .headline-font {
font-family: 'Inter', sans-serif;
}

.neon-box {
background-color: var(--neon-green);
border: 1.5px solid var(--pure-black);
padding: 2px 6px;
display: inline-block;
font-weight: 700;
color: var(--pure-black);
text-transform: uppercase;
font-size: 0.85em;
}

.btn-primary {
background-color: var(--neon-green);
color: var(--pure-black);
font-weight: 700;
padding: 0.7rem 1.5rem;
border: 1.5px solid var(--pure-black);
transition: all 0.2s ease;
text-transform: uppercase;
letter-spacing: 0.05em;
display: inline-flex;
align-items: center;
justify-content: center;
position: relative;
z-index: 10;
}

.btn-primary:hover {
transform: translate(-3px, -3px);
box-shadow: 4px 4px 0px var(--pure-black);
}

.card-framed {
border: 1.5px solid var(--pure-black);
background: var(--pure-white);
transition: transform 0.2s ease;
}

.card-framed:hover {
transform: translate(-3px, -3px);
box-shadow: 6px 6px 0px var(--neon-green);
}

.nav-link {
font-weight: 700;
font-size: 0.8rem;
position: relative;
display: flex;
align-items: center;
gap: 4px;
cursor: pointer;
}

.nav-link:after {
content: '';
position: absolute;
width: 0;
height: 2px;
bottom: -4px;
left: 0;
background-color: var(--neon-green);
transition: width 0.3s ease;
}

.nav-link:hover:after {
width: 100%;
}

.dropdown-group { position: relative; }
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
width: 280px;
background: var(--pure-white);
border: 1.5px solid var(--pure-black);
box-shadow: 6px 6px 0px var(--pure-black);
margin-top: 1rem;
opacity: 0;
visibility: hidden;
transform: translateY(10px);
transition: all 0.2s ease;
z-index: 100;
padding: 0.7rem;
}

.dropdown-group:hover .dropdown-menu {
opacity: 1;
visibility: visible;
transform: translateY(0);
}

.dropdown-item {
padding: 0.75rem;
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
display: flex;
justify-content: space-between;
align-items: center;
transition: background 0.2s;
}

.dropdown-item:not(.coming-soon):hover { background-color: var(--neon-green); }
.dropdown-item.coming-soon { opacity: 0.4; cursor: default; }

.founder-img-frame {
width: 120px;
height: 120px;
border-radius: 50%;
border: 2px solid var(--pure-black);
background-color: var(--light-gray);
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
margin-bottom: 1.5rem;
position: relative;
}

.founder-img-frame i {
font-size: 3rem;
color: rgba(0,0,0,0.1);
}

/* Mission Section Animation Styles */
.mission-graphic {
position: relative;
overflow: visible;
}
.mission-line {
stroke-dasharray: 1000;
stroke-dashoffset: 1000;
animation: drawLine 4s ease-in-out infinite alternate;
}

@keyframes drawLine {
to {
stroke-dashoffset: 0;
}
}

.mission-text-reveal {
opacity: 0;
transform: translateY(20px);
transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.mission-text-reveal.visible {
opacity: 1;
transform: translateY(0);
}

.input-framed {
border: 1.5px solid var(--pure-black);
padding: 0.75rem 1rem;
width: 100%;
font-weight: 600;
outline: none;
transition: all 0.2s;
}

.input-framed:focus {
box-shadow: 4px 4px 0px var(--neon-green);
transform: translate(-2px, -2px);
}

/* Mock UI Element */
.mock-ui {
border: 1.5px solid var(--pure-black);
background: white;
box-shadow: 10px 10px 0px var(--neon-green);
}