/* --- Palette: - Background: #121212 - Surface: #1E1E1E - Primary/Accent: #BB86FC - Secondary Accent: #03DAC6 - Text (Primary): #E1E1E1 - Text (Secondary): #B3B3B3 --- */ body { background-color: #121212; color: #E1E1E1; font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; } .navbar-dark .navbar-nav .nav-link { color: rgba(255, 255, 255, .75); } .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { color: #fff; } .navbar-brand { font-weight: bold; color: #fff !important; } .hero { background-image: linear-gradient(rgba(18, 18, 18, 0.7), rgba(18, 18, 18, 0.9)), url('https://picsum.photos/seed/world-map-dark/1600/900'); background-size: cover; background-position: center; padding: 120px 0; text-align: center; } .hero h1 { font-size: 3.5rem; font-weight: 700; color: #fff; } .hero p { font-size: 1.25rem; color: #E1E1E1; max-width: 700px; margin: 1rem auto; } .btn-primary { background-color: #BB86FC; border-color: #BB86FC; font-weight: bold; padding: 12px 30px; border-radius: 8px; transition: all 0.3s ease; } .btn-primary:hover { background-color: #a362f7; border-color: #a362f7; transform: translateY(-2px); box-shadow: 0 4px 15px rgba(187, 134, 252, 0.3); } .section { padding: 80px 0; } .section-bg { background-color: #1E1E1E; } h2.section-title { text-align: center; font-size: 2.5rem; font-weight: 700; margin-bottom: 50px; color: #fff; } #map { height: 500px; width: 100%; border-radius: 8px; border: 1px solid #333; } /* Leaflet Dark Theme */ .leaflet-container { background: #1E1E1E; } .leaflet-popup-content-wrapper, .leaflet-popup-tip { background: #2a2a2a; color: #E1E1E1; box-shadow: 0 3px 14px rgba(0,0,0,0.4); } .leaflet-tile-pane { filter: brightness(0.6) invert(1) contrast(3) hue-rotate(200deg) saturate(0.3) brightness(0.7); } .leaflet-marker-icon { filter: hue-rotate(150deg) saturate(2) brightness(1.2); } .form-control { background-color: #2a2a2a; border: 1px solid #444; color: #E1E1E1; border-radius: 8px; padding: 12px; } .form-control:focus { background-color: #2a2a2a; border-color: #BB86FC; color: #E1E1E1; box-shadow: 0 0 0 0.25rem rgba(187, 134, 252, 0.25); } .form-control::placeholder { color: #888; } .img-fluid { border-radius: 8px; } .footer { background-color: #1E1E1E; padding: 40px 0; text-align: center; color: #B3B3B3; } .toast-container { position: fixed; bottom: 1rem; right: 1rem; z-index: 1055; } .page-header { background-color: #1E1E1E; padding: 80px 0; text-align: center; } .page-header h1 { font-size: 3rem; font-weight: 700; color: #fff; } .page-header p { font-size: 1.2rem; color: #B3B3B3; } .card { background-color: #1E1E1E; border: 1px solid #333; border-radius: 8px; color: #E1E1E1; } .card-title { color: #fff; } .card-footer { background-color: #2a2a2a; border-top: 1px solid #333; } .btn-outline-primary { color: #BB86FC; border-color: #BB86FC; } .btn-outline-primary:hover { color: #121212; background-color: #BB86FC; border-color: #BB86FC; } /* --- Case Study & Testimonials Pages --- */ .card-link { text-decoration: none; color: inherit; display: block; transition: transform 0.3s ease, box-shadow 0.3s ease; position: relative; } .card-link::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; } .card-link:hover .card { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(187, 134, 252, 0.15); } .bg-light-dark { background-color: #2a2a2a; } .case-study-content .content-section { margin-bottom: 2.5rem; } .case-study-content h3 { color: #BB86FC; font-weight: 700; margin-bottom: 1rem; } .blockquote { border-left: 4px solid #BB86FC; }