Spaces:
Runtime error
Runtime error
| /* ======================================================= */ | |
| /* --- 1. General Body and Global Text Styling --- */ | |
| /* ======================================================= */ | |
| body { | |
| background-color: #111827; /* Very dark navy/black */ | |
| color: #E5E7EB; /* A bright default text color for good contrast */ | |
| font-family: 'Poppins', sans-serif; | |
| margin-top: 72px; /* Offset content to be below the fixed navbar */ | |
| } | |
| /* Global styles for all headings */ | |
| h1, h2, h3, h4, h5, h6 { | |
| font-weight: 600; | |
| color: #FFFFFF; /* Ensure all headings are bright white */ | |
| } | |
| /* Global styles for all paragraphs and lead text */ | |
| p, .lead { | |
| color: #9CA3AF; /* Light, readable gray for all body text */ | |
| font-weight: 400; | |
| } | |
| .text-muted { | |
| color: #6B7280 ; /* Make muted text a bit lighter so it's still readable */ | |
| } | |
| /* ======================================================= */ | |
| /* --- 2. Navbar Styling (FORCEFUL & DIRECT) --- */ | |
| /* ======================================================= */ | |
| .navbar { | |
| background: #111827; | |
| padding: 0.75rem 0; | |
| border-bottom: 1px solid #374151; | |
| } | |
| .navbar-brand { | |
| font-weight: 700; | |
| font-size: 1.5rem; | |
| display: flex; | |
| align-items: center; | |
| } | |
| .logo-icon { | |
| background-color: #4F46E5; | |
| color: white; | |
| width: 30px; | |
| height: 30px; | |
| display: inline-flex; | |
| align-items: center; | |
| justify-content: center; | |
| border-radius: 6px; | |
| margin-right: 10px; | |
| font-weight: bold; | |
| } | |
| /* Force the navbar items to always be in a row */ | |
| @media (min-width: 992px) { /* This applies only to large screens (desktops) */ | |
| #navbarNav .navbar-nav { | |
| flex-direction: row ; /* Force horizontal layout */ | |
| align-items: center; /* Vertically align items */ | |
| } | |
| } | |
| .nav-link { | |
| font-weight: 500; | |
| color: rgba(255, 255, 255, 0.7) ; | |
| padding: 0.5rem 0.75rem; /* Tweak padding */ | |
| transition: color 0.3s ease; | |
| white-space: nowrap; /* Prevent link text from breaking into two lines */ | |
| } | |
| .nav-link:hover, .nav-link.active { | |
| color: #FFFFFF ; | |
| } | |
| /* Keep your Button, Hero, Form, etc. styles below this */ | |
| /* They do not need to be changed */ | |
| /* Example Button Style (ensure it's still present) */ | |
| .btn-primary-custom.btn-sm { | |
| padding: 8px 18px; /* Slightly smaller padding to ensure fit */ | |
| font-weight: 500; | |
| font-size: 0.9rem; | |
| } | |
| /* ... etc ... */ | |
| /* ======================================================= */ | |
| /* --- 3. Button Styling --- */ | |
| /* ======================================================= */ | |
| .btn-primary-custom { | |
| background-color: #6366F1; | |
| border-color: #6366F1; | |
| color: #FFFFFF; | |
| font-weight: 600; | |
| padding: 12px 24px; | |
| border-radius: 8px; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-primary-custom:hover { | |
| background-color: #4F46E5; | |
| border-color: #4F46E5; | |
| transform: translateY(-2px); | |
| } | |
| .btn-outline-light { | |
| font-weight: 600; | |
| padding: 12px 24px; | |
| border-radius: 8px; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-outline-light:hover { | |
| background-color: rgba(255, 255, 255, 0.1); | |
| transform: translateY(-2px); | |
| } | |
| /* ======================================================= */ | |
| /* --- 4. Hero Section Styling (Homepage) --- */ | |
| /* ======================================================= */ | |
| .hero-section { | |
| position: relative; | |
| padding: 10rem 0; | |
| min-height: 80vh; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| background: url('../images/background/hero_bg.jpg') no-repeat center center/cover; | |
| color: white; | |
| } | |
| .hero-section::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| background-color: rgba(17, 24, 39, 0.75); | |
| z-index: 1; | |
| } | |
| .hero-section .container { | |
| position: relative; | |
| z-index: 2; | |
| } | |
| .hero-title { | |
| font-size: 4.5rem; | |
| font-weight: 700; | |
| background: linear-gradient(45deg, #818CF8, #3B82F6); | |
| -webkit-background-clip: text; | |
| background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| color: transparent; | |
| line-height: 1.2; | |
| text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5); | |
| } | |
| .hero-subtitle { | |
| font-size: 1.25rem; | |
| color: #E5E7EB; | |
| max-width: 600px; | |
| margin: 1.5rem auto 0; | |
| } | |
| /* ======================================================= */ | |
| /* --- 5. Form, Result, and Content Page Styling --- */ | |
| /* ======================================================= */ | |
| .content-page { | |
| padding-top: 4rem; | |
| padding-bottom: 4rem; | |
| } | |
| .form-section-card, .result-card, .card.bg-dark-card { | |
| background-color: #1F2937; | |
| padding: 2.5rem; | |
| border-radius: 12px; | |
| border: 1px solid #374151; | |
| } | |
| .form-section-card { | |
| height: 100%; | |
| } | |
| .result-card { | |
| margin-top: 2rem; | |
| } | |
| .form-control, .form-select { | |
| background-color: #374151; | |
| color: #F9FAFB; | |
| border: 1px solid #4B5563; | |
| border-radius: 8px; | |
| } | |
| .form-control:focus, .form-select:focus { | |
| background-color: #374151; | |
| color: #F9FAFB; | |
| border-color: #6366F1; | |
| box-shadow: 0 0 0 0.25rem rgba(99, 102, 241, 0.25); | |
| } | |
| .result-label { | |
| font-size: 1.1rem; | |
| color: #9CA3AF; | |
| text-transform: uppercase; | |
| } | |
| .result-value { | |
| font-size: 2.75rem; | |
| font-weight: 700; | |
| color: #6366F1; | |
| } | |
| #result-map { | |
| border-radius: 10px; | |
| border: 1px solid #374151; | |
| } | |
| .content-page h3 { | |
| color: #818CF8; | |
| margin-bottom: 1rem; | |
| } | |
| .content-page hr { | |
| border-top: 1px solid #374151; | |
| } | |
| .card.bg-dark-card:hover { | |
| transform: translateY(-5px); | |
| box-shadow: 0 8px 25px rgba(99, 102, 241, 0.1); | |
| } | |
| .card-title { | |
| color: #818CF8; | |
| } | |
| /* ======================================================= */ | |
| /* --- 6. Team Page Styling --- */ | |
| /* ======================================================= */ | |
| .team-card { | |
| background-color: transparent; | |
| border: none; | |
| align-items: center; | |
| transition: transform 0.3s ease; | |
| } | |
| .team-card:hover { | |
| transform: translateY(-10px); | |
| } | |
| .team-img { | |
| width: 200px; | |
| height: 200px; | |
| object-fit: cover; | |
| border-radius: 50%; | |
| border: 4px solid #6366F1; | |
| box-shadow: 0 5px 20px rgba(0, 0, 0, 0.4); | |
| } | |
| .team-card .card-body { | |
| padding-top: 1.5rem; | |
| } | |
| .team-card .card-title { | |
| font-size: 1.5rem; | |
| font-weight: 600; | |
| color: #FFFFFF; | |
| } | |
| .team-card .card-text { | |
| color: #9CA3AF; /* This will inherit from the global 'p' style but it's good to be explicit */ | |
| font-weight: 400; | |
| } | |
| /* ======================================================= */ | |
| /* --- 7. Footer & Animations --- */ | |
| /* ======================================================= */ | |
| footer { | |
| background-color: #111827; | |
| border-top: 1px solid #374151; | |
| } | |
| @keyframes fadeIn-up { | |
| from { | |
| opacity: 0; | |
| transform: translateY(20px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| } | |
| .animate-fade-in-up { | |
| animation: fadeIn-up 0.8s ease-out forwards; | |
| opacity: 0; | |
| } | |
| /* Add this to the bottom of your style.css */ | |
| /* ======================================================= */ | |
| /* --- 8. About Page - Result Metric Cards --- */ | |
| /* ======================================================= */ | |
| .result-metric-card { | |
| background-color: #1F2937; | |
| border: 1px solid #374151; | |
| border-left: 5px solid #6366F1; /* Indigo accent line on the left */ | |
| padding: 1.5rem; | |
| border-radius: 8px; | |
| text-align: center; | |
| transition: all 0.3s ease; | |
| } | |
| .result-metric-card:hover { | |
| transform: translateY(-5px); | |
| box-shadow: 0 5px 20px rgba(99, 102, 241, 0.1); | |
| } | |
| .result-metric-value { | |
| font-size: 2.5rem; | |
| font-weight: 700; | |
| color: #FFFFFF; | |
| } | |
| .result-metric-label { | |
| font-size: 1rem; | |
| color: #9CA3AF; | |
| text-transform: uppercase; | |
| letter-spacing: 0.5px; | |
| } |