@charset "UTF-8";
:root{--color-bg:#080C08;--color-surface:#141F14;--color-surface-soft:#101710;--color-text:#FFFFFF;--color-text-muted:#A8B3A8;--color-primary:#55EF7C;--color-primary-soft:rgba(85,239,124,0.12);--color-primary-strong:#38c95f;--color-success:#55EF7C;--color-warning:#FFC857;--color-danger:#FF4B5C;--gray-50:#0B110B;--gray-100:#141F14;--gray-200:#1E2A1E;--gray-300:#263626;--gray-400:#3A4D3A;--gray-500:#5A6C5A;--gray-600:#7E8E7E;--gray-700:#A0AEA0;--gray-800:#C4CEC4;--gray-900:#E5EAE5;--font-sans:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-display:"Space Grotesk","Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code",ui-monospace,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-0:0;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:16px;--space-8:20px;--space-9:24px;--space-10:28px;--space-11:32px;--space-12:40px;--space-13:48px;--space-14:56px;--space-15:64px;--space-16:80px;--space-17:96px;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:18px;--radius-full:999px;--shadow-soft:0 0 0 1px rgba(85,239,124,0.16),0 18px 45px rgba(0,0,0,0.85);--shadow-elevated:0 0 0 1px rgba(85,239,124,0.22),0 24px 60px rgba(0,0,0,0.95);--shadow-subtle:0 0 0 1px rgba(88,120,88,0.7),0 10px 25px rgba(0,0,0,0.7);--transition-fast:150ms ease-out;--transition-base:220ms cubic-bezier(0.22,0.61,0.36,1);--transition-slow:340ms cubic-bezier(0.22,0.61,0.36,1);--container-max-width:1120px}
*,*::before,*::after{box-sizing:border-box}
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote::before,blockquote::after,q::before,q::after{content:"";content:none}
table{border-collapse:collapse;border-spacing:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{min-height:100vh;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit}
button{background:none;border:none;padding:0;cursor:pointer}
a{text-decoration:none;color:inherit}
p{margin-bottom:var(--space-8);color:var(--color-text-muted);line-height:var(--line-height-relaxed)}
ul{list-style:none !important}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;color:var(--color-text);letter-spacing:0.03em;text-transform:uppercase}
h1{font-size:var(--font-size-4xl);line-height:var(--line-height-tight);margin-bottom:var(--space-9)}
h2{font-size:var(--font-size-3xl);line-height:var(--line-height-snug);margin-bottom:var(--space-8)}
h3{font-size:var(--font-size-2xl);line-height:var(--line-height-snug);margin-bottom:var(--space-7)}
h4{font-size:var(--font-size-xl);line-height:var(--line-height-snug);margin-bottom:var(--space-6)}
h5{font-size:var(--font-size-lg);margin-bottom:var(--space-5)}
h6{font-size:var(--font-size-base);margin-bottom:var(--space-4)}
a:hover{color:var(--color-primary)}
body,button,input,textarea,select{color:var(--color-text)}
code,pre{font-family:var(--font-mono);font-size:0.95em}
.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding-left:var(--space-7);padding-right:var(--space-7)}
.section{padding-top:var(--space-13);padding-bottom:var(--space-13)}
.section--tight{padding-top:var(--space-10);padding-bottom:var(--space-10)}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.justify-start{justify-content:flex-start}
.gap-xs{gap:var(--space-4)}
.gap-sm{gap:var(--space-6)}
.gap-md{gap:var(--space-8)}
.gap-lg{gap:var(--space-11)}
.grid{display:grid}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-gap-sm{grid-gap:var(--space-7)}
.grid-gap-md{grid-gap:var(--space-10)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-5) var(--space-9);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;letter-spacing:0.12em;text-transform:uppercase;border:1px solid rgba(85,239,124,0.7);background:radial-gradient(circle at 0 0,rgba(85,239,124,0.28),transparent 55%),rgba(10,18,10,0.96);color:var(--color-text);box-shadow:var(--shadow-soft);transition:background-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}
.btn-primary{background:radial-gradient(circle at 0 0,rgba(85,239,124,0.4),transparent 52%),linear-gradient(135deg,#1C331C,#101710);border-color:var(--color-primary);color:var(--color-text)}
.btn-ghost{background:rgba(12,18,12,0.7);border-color:rgba(88,120,88,0.9)}
.btn-outline{background:transparent;border-color:rgba(85,239,124,0.6)}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-elevated);border-color:var(--color-primary-strong);background:radial-gradient(circle at 0 0,rgba(85,239,124,0.52),transparent 55%),rgba(10,18,10,0.98)}
.btn-primary:hover{background:radial-gradient(circle at 0 0,rgba(85,239,124,0.55),transparent 55%),linear-gradient(135deg,#253F25,#111911)}
.btn:active{transform:translateY(0);box-shadow:var(--shadow-subtle)}
.btn:disabled,.btn[aria-disabled="true"]{opacity:0.45;cursor:not-allowed;box-shadow:none;transform:none}
.btn-icon{padding:var(--space-4);border-radius:var(--radius-full);width:40px;height:40px}
input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="date"],input[type="time"],select,textarea{width:100%;padding:var(--space-5) var(--space-7);border-radius:var(--radius-md);border:1px solid rgba(88,120,88,0.9);background-color:rgba(8,12,8,0.85);color:var(--color-text);box-shadow:inset 0 0 0 1px rgba(0,0,0,0.65);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-fast)}
input::placeholder,textarea::placeholder{color:var(--gray-600)}
textarea{min-height:140px;resize:vertical}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 0 0 2px rgba(85,239,124,0.35)}
input[disabled],textarea[disabled],select[disabled]{opacity:0.5;cursor:not-allowed}
label{display:inline-block;margin-bottom:var(--space-3);font-size:var(--font-size-xs);letter-spacing:0.16em;text-transform:uppercase;color:var(--gray-700)}
.form-row{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-7)}
.form-row-inline{display:flex;flex-wrap:wrap;gap:var(--space-7)}
.form-row-inline>.form-row{flex:1;min-width:160px;margin-bottom:0}
.card{position:relative;border-radius:var(--radius-lg);background:radial-gradient(circle at 0 0,rgba(85,239,124,0.14),transparent 60%),var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--space-10);border:1px solid rgba(88,120,88,0.9);overflow:hidden}
.card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(120deg,rgba(85,239,124,0.1),transparent 25%,transparent 75%,rgba(85,239,124,0.1));opacity:0.5;mix-blend-mode:screen;pointer-events:none}
.card-header{margin-bottom:var(--space-7);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-5)}
.card-title{font-size:var(--font-size-xl);letter-spacing:0.12em;text-transform:uppercase}
.card-meta{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--gray-700);text-transform:uppercase;letter-spacing:0.16em}
.badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid rgba(85,239,124,0.7);background-color:rgba(8,12,8,0.95);font-size:var(--font-size-xs);font-family:var(--font-mono);letter-spacing:0.16em;text-transform:uppercase;color:var(--color-primary)}
.badge-soft{border-color:rgba(85,239,124,0.4);background-color:var(--color-primary-soft);color:var(--color-text)}
.badge-outline{background:transparent;color:var(--color-primary)}
.tag-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(85,239,124,0.7),transparent);opacity:0.6;margin:var(--space-8) 0}
.nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);border:1px solid rgba(85,239,124,0.7);background-color:rgba(8,12,8,0.9);gap:4px;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}
.nav-toggle span{display:block;width:18px;height:1.5px;border-radius:999px;background-color:var(--color-primary);transition:transform var(--transition-fast),opacity var(--transition-fast),background-color var(--transition-fast)}
.nav-toggle:hover{background-color:rgba(12,20,12,1);transform:translateY(-1px)}
.nav-toggle--active span:nth-child(1){transform:translateY(2.5px) rotate(45deg)}
.nav-toggle--active span:nth-child(2){transform:translateY(-2.5px) rotate(-45deg)}
.nav-toggle--active span:nth-child(3){opacity:0}
.header-blur{backdrop-filter:blur(16px);background:linear-gradient(to bottom,rgba(8,12,8,0.96),rgba(8,12,8,0.88))}
.hero-shell{position:relative;overflow:hidden}
.hero-shell::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(12,24,12,0.8) 1px,transparent 1px),linear-gradient(90deg,rgba(12,24,12,0.9) 1px,transparent 1px);background-size:40px 40px;background-position:-10px -10px;mix-blend-mode:soft-light;opacity:0.65;pointer-events:none}
.hero-shell::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 0,rgba(85,239,124,0.18),transparent 60%),radial-gradient(circle at 80% 100%,rgba(85,239,124,0.14),transparent 60%);mix-blend-mode:screen;pointer-events:none}
.focus-ring{outline:2px solid transparent;outline-offset:2px}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
[role="button"]:focus-visible,.btn:focus-visible,.nav-toggle:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}
.hero-shell::before,.hero-shell::after{opacity:0.4}}
@media (min-width:640px){h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}.section{padding-top:var(--space-14);padding-bottom:var(--space-14)}.container{padding-left:var(--space-8);padding-right:var(--space-8)}}
@media (min-width:960px){body{font-size:1.02rem}.grid-hero{display:grid;grid-template-columns:minmax(0,260px)minmax(0,1.9fr);grid-gap:var(--space-11);align-items:stretch}.hero-shell::before{background-size:48px 48px}.section{padding-top:var(--space-15);padding-bottom:var(--space-15)}}