*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;height:auto;min-height:100%}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;display:flex;flex-direction:column;min-height:100vh}#root{display:flex;flex-direction:column;min-height:100%;width:100%}:root{--bg-primary: #080808;--bg-surface: #111111;--bg-raised: #181818;--bg-hover: #222222;--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .18);--green: #2d9e47;--green-light: #3dba56;--green-dim: rgba(45, 158, 71, .12);--blue: #0ea5c9;--blue-light: #22c0e8;--blue-dim: rgba(14, 165, 201, .12);--text-primary: #f0f0f0;--text-secondary: #888888;--text-muted: #555555;--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--transition: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--recaptcha-scale: 1;--recaptcha-width: 304px;--recaptcha-height: 78px}@media (max-width: 680px){.contactFormRow2{grid-template-columns:1fr!important}}input[type=date],input[type=text],input[type=email],textarea{min-width:0}a,p,span,li,h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere;word-break:break-word}.recaptchaContainer{width:100%;overflow:hidden;height:calc(var(--recaptcha-height) * var(--recaptcha-scale))}.recaptchaScaled{width:var(--recaptcha-width);height:var(--recaptcha-height);transform:scale(var(--recaptcha-scale));transform-origin:0 0}@media (max-width: 420px){:root{--recaptcha-scale: .95}}@media (max-width: 380px){:root{--recaptcha-scale: .9}}@media (max-width: 340px){:root{--recaptcha-scale: .84}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#444}::selection{background:var(--green-dim);color:var(--green-light)}.section-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:1rem}.section-tag:before{content:"";display:block;width:24px;height:1px;background:var(--green)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-up{animation:fadeUp .7s ease-out forwards}.animate-fade-up-delay-1{animation:fadeUp .7s ease-out .15s forwards;opacity:0}.animate-fade-up-delay-2{animation:fadeUp .7s ease-out .3s forwards;opacity:0}.animate-fade-up-delay-3{animation:fadeUp .7s ease-out .45s forwards;opacity:0}
