:root { --color-white: #ffffff; --color-dark-steel: #03080F; --color-steel-blue: #1A365D; --color-neon-green: #39FF14; --color-text: #03080F; --font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; --font-heading: "Arial Narrow", "Helvetica Condensed", "Oswald", system-ui, sans-serif; --font-accent: Georgia, serif; --radius-squircle: 20px; --shadow-soft: 0 8px 30px rgba(3, 8, 15, 0.08); --spacing-md: 2rem; --spacing-lg: 4rem; } body { margin: 0; font-family: var(--font-body); color: var(--color-text); background-color: var(--color-white); } .noise-bg { background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E"); } .site-header { position: sticky; top: 0; z-index: 1000; background: var(--color-white); box-shadow: var(--shadow-soft); border-bottom: 2px solid rgba(3, 8, 15, 0.05); } .header-container { display: flex; justify-content: space-between; align-items: center; padding: 1rem var(--spacing-md); max-width: 1400px; margin: 0 auto; } .brand-logo { display: flex; align-items: center; gap: 0.75rem; text-decoration: none; color: var(--color-dark-steel); } .brand-logo svg { width: 32px; height: 32px; color: var(--color-steel-blue); } .brand-name { font-family: var(--font-heading); font-weight: 700; font-size: 1.5rem; text-transform: uppercase; letter-spacing: -0.5px; } .desktop-nav { display: none; } .nav-list { list-style: none; margin: 0; padding: 0; display: flex; gap: 2rem; } .nav-list a { text-decoration: none; color: var(--color-dark-steel); font-weight: 600; font-size: 1.05rem; transition: color 0.2s; } .nav-list a:hover { color: var(--color-steel-blue); } .header-actions { display: flex; align-items: center; gap: 1rem; } .btn-cta { display: inline-block; background: var(--color-neon-green); color: #000000; font-weight: 700; font-family: var(--font-heading); text-decoration: none; padding: 0.75rem 1.5rem; border-radius: var(--radius-squircle); text-transform: uppercase; transition: transform 0.2s, box-shadow 0.2s; box-shadow: 0 4px 15px rgba(57, 255, 20, 0.2); font-size: 0.95rem; } .btn-cta:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(57, 255, 20, 0.4); } .burger-menu, .close-menu { background: none; border: none; cursor: pointer; color: var(--color-dark-steel); padding: 0.5rem; display: flex; } .burger-menu svg, .close-menu svg { width: 28px; height: 28px; } @media (min-width: 992px) { .desktop-nav { display: block; flex: 1; } .burger-menu { display: none; } .desktop-nav .nav-list { justify-content: center; } .header-container { gap: 2rem; } } .mobile-drawer { position: fixed; top: 0; left: 0; width: 300px; height: 100vh; background: var(--color-white); box-shadow: 4px 0 30px rgba(0,0,0,0.1); transform: translateX(-100%); transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 1001; display: flex; flex-direction: column; } .mobile-drawer.open { transform: translateX(0); } .drawer-header { display: flex; justify-content: space-between; align-items: center; padding: 1.5rem; border-bottom: 1px solid rgba(3, 8, 15, 0.05); } .mobile-nav { padding: 2rem 1.5rem; flex: 1; } .mobile-nav .nav-list { flex-direction: column; gap: 1.5rem; } .mobile-nav .nav-list a { font-size: 1.25rem; } .drawer-footer { padding: 1.5rem; border-top: 1px solid rgba(3, 8, 15, 0.05); } .drawer-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(3, 8, 15, 0.6); opacity: 0; pointer-events: none; transition: opacity 0.3s; z-index: 1000; } .drawer-overlay.open { opacity: 1; pointer-events: auto; } .site-footer { background-color: var(--color-dark-steel); color: var(--color-white); position: relative; } .footer-container { max-width: 1400px; margin: 0 auto; padding: var(--spacing-lg) var(--spacing-md); display: grid; grid-template-columns: 1fr; gap: 3rem; } @media (min-width: 768px) { .footer-container { grid-template-columns: 1.5fr 1fr 1fr; } } .footer-logo { font-family: var(--font-heading); font-size: 1.8rem; font-weight: 700; color: var(--color-white); text-decoration: none; text-transform: uppercase; margin-bottom: 1rem; display: inline-block; } .tagline { font-family: var(--font-accent); font-size: 1.1rem; color: rgba(255,255,255,0.85); line-height: 1.6; margin: 0; max-width: 320px; } .footer-heading { font-family: var(--font-heading); font-size: 1.25rem; text-transform: uppercase; letter-spacing: 1px; margin-top: 0; margin-bottom: 1.5rem; color: var(--color-neon-green); } .contact-list, .legal-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.25rem; } .contact-list li { display: flex; align-items: flex-start; gap: 0.75rem; } .contact-list svg { width: 20px; height: 20px; flex-shrink: 0; stroke: var(--color-neon-green); margin-top: 2px; } .contact-list a, .legal-list a { color: rgba(255,255,255,0.9); text-decoration: none; line-height: 1.5; transition: color 0.2s; } .contact-list a:hover, .legal-list a:hover { color: var(--color-neon-green); } .privacy-preview { margin-top: 2rem; padding: 1.25rem; background: rgba(255,255,255,0.05); border-radius: var(--radius-squircle); border-left: 3px solid var(--color-neon-green); box-shadow: var(--shadow-soft); } .privacy-preview p { margin: 0; font-size: 0.95rem; color: rgba(255,255,255,0.85); line-height: 1.5; } .privacy-preview a { color: var(--color-neon-green); text-decoration: underline; font-weight: 600; } .footer-bottom { text-align: center; padding: 1.5rem; border-top: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.5); font-size: 0.875rem; }
/* footer extras */
.footer__extras{margin-top:16px;}
.footer__extrasInner{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between;}
.footer__social{display:flex;gap:10px;align-items:center;}
.footer-social{display:inline-flex;gap:8px;align-items:center;text-decoration:none;}
.footer-social__icon{display:block;}
.footer__poemWrap{max-width:520px;}
.footer-poem{opacity:0.9;font-size:0.95em;line-height:1.35;}


/* === Project fixes === */
html{scroll-behavior:smooth}
body{background:#f4f7fb;color:var(--color-text)}
a{word-break:break-word}
main{display:block}
.bg-noise,.bg-noise-lite{background-color:#f4f7fb;background-image:radial-gradient(rgba(26,54,93,.03) 1px, transparent 1px);background-size:18px 18px}
.bg-steel{background:linear-gradient(135deg,#173553 0%,#22486d 100%)}
.text-steel{color:#173553}
.heading-condensed,.typography-condensed-headings h1,.typography-condensed-headings h2,.typography-condensed-headings h3{font-family:var(--font-heading);letter-spacing:-.02em}
.squircle,.radius-squircle{border-radius:var(--radius-squircle)}
.shadow-soft,.components-soft-shadow{box-shadow:var(--shadow-soft)}
.btn-neon{display:inline-flex;align-items:center;justify-content:center;background:var(--color-neon-green);color:#031018;font-weight:800;font-family:var(--font-heading);text-decoration:none;border:2px solid var(--color-neon-green);box-shadow:0 12px 32px rgba(57,255,20,.18);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}
.btn-neon:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(57,255,20,.26)}
.site-header{backdrop-filter:saturate(180%) blur(10px)}
.header-container{padding:1rem 1.25rem}
.brand-name{font-size:1.15rem;line-height:1.1}
.desktop-nav{display:none}
.desktop-nav .nav-list{gap:1.25rem;flex-wrap:wrap;justify-content:center}
.desktop-nav .nav-list a{position:relative;font-size:.98rem;white-space:nowrap}
.desktop-nav .nav-list a:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:var(--color-neon-green);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.desktop-nav .nav-list a:hover:after{transform:scaleX(1)}
.mobile-drawer{width:min(320px,88vw)}
.mobile-drawer .brand-name{font-size:1rem}
.drawer-footer .btn-cta{width:100%;text-align:center}
.btn-cta{white-space:nowrap}
footer .privacy-preview{margin-top:1.5rem}
#advantages,#stages,#contact-form{background:#f4f7fb}
#projects,#faq,#technology{background:#fff}
#contact-form .bg-steel{background:linear-gradient(180deg,#173553 0%,#10263d 100%)}
#contact-form .text-gray-300{color:#d7deea}
#contact-form .text-gray-400{color:#b6c3d5}
#contact-form .text-white{color:#fff}
#contact-form .text-\[\#39FF14\]{color:#39FF14}
#building-types p,#trust p{max-width:unset}
.form-privacy{padding:.25rem 0 .5rem}
.privacy-label{display:flex;align-items:flex-start;gap:.75rem;font-size:.95rem;color:#475569;line-height:1.55}
.privacy-label input{margin-top:.25rem;accent-color:#39FF14}
.privacy-label a{color:#173553;text-decoration:underline;font-weight:700}
.legal-page .site-header{position:sticky}
.legal-main{padding-block:2rem 4rem}
.legal-article{border:1px solid rgba(26,54,93,.08)}
.legal-article p,.legal-article li{font-size:1.02rem;line-height:1.75;color:#334155}
.legal-article h2{color:#173553}
.legal-contact-card a{color:#173553}
.thanks-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(180deg,#eff5fb 0%,#f7fbff 100%)}
.thanks-main{max-width:760px;width:100%}
.thanks-card{background:#fff;border-radius:28px;box-shadow:0 20px 60px rgba(23,53,83,.12);padding:3rem 2rem;text-align:center;border:1px solid rgba(26,54,93,.08)}
.thanks-card h1{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3.5rem);color:#173553;margin:0 0 1rem}
.thanks-card p{font-size:1.05rem;line-height:1.7;color:#475569;max-width:42ch;margin:0 auto 1.25rem}
.thanks-badge{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .85rem;border-radius:999px;background:rgba(57,255,20,.12);color:#173553;font-weight:800;font-size:.9rem;margin-bottom:1rem}
.thanks-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1.5rem}
.thanks-link{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.2rem;border-radius:999px;border:1px solid rgba(23,53,83,.14);color:#173553;background:#fff;font-weight:700;text-decoration:none}
.alternation-shadow-flat{box-shadow:var(--shadow-soft)}
.spacing-neutral-default,.layout-zigzag,.grid-steps-timeline,.palette-steel-orange,.font-system-ui-serif-accent,.tone-corporate,.text-priority{display:initial}
@media (min-width:992px){.desktop-nav{display:block;flex:1}.brand-logo{min-width:240px}.header-actions{min-width:220px;justify-content:flex-end}.burger-menu{display:none}}
@media (max-width:991px){.header-actions .btn-cta{display:none}.header-container{gap:.75rem}.brand-name{max-width:180px}.site-header .brand-logo svg{width:28px;height:28px}}
@media (max-width:767px){.footer-container{grid-template-columns:1fr}.thanks-card{padding:2rem 1.25rem}.legal-main{padding-top:1rem}}
