:root { --primary-color: #2F3C7E; --secondary-color: #FBEAEB; --accent-color: #F08A5D; --text-color: #333333; --bg-color: #FFFFFF; --heading-font: 'Poppins', sans-serif; --body-font: 'Lato', sans-serif; } body { font-family: var(--body-font); color: var(--text-color); background-color: var(--bg-color); line-height: 1.6; margin: 0; padding: 0; } h1, h2, h3, h4, h5, h6, .navbar-brand, .display-4 { font-family: var(--heading-font); font-weight: 600; } /* Mobile-first adjustments */ h1 { font-size: 2.5rem; /* Base font size for mobile */ } h2 { font-size: 2rem; } p { font-size: 1rem; } .navbar-brand { font-weight: 700; font-size: 1.25rem; /* Smaller on mobile */ color: var(--primary-color) !important; } .hero-section { background-color: var(--secondary-color); padding: 2rem 1rem; /* More padding on mobile */ text-align: center; } .hero-section h1 { color: var(--primary-color); margin-bottom: 1rem; } .hero-section p { font-size: 1.1rem; margin-bottom: 1.5rem; } .btn { padding: 0.75rem 1.5rem; font-size: 1rem; border-radius: 0.3rem; } .btn-primary { background-color: var(--primary-color); border-color: var(--primary-color); color: white; } .btn-primary:hover { background-color: #1e2a60; border-color: #1e2a60; } .btn-secondary { background-color: var(--accent-color); border-color: var(--accent-color); color: white; } .btn-secondary:hover { background-color: #d87140; border-color: #d87140; } .case-card { transition: transform .2s ease-in-out, box-shadow .2s ease-in-out; border: 1px solid #ddd; margin-bottom: 1rem; /* Space between cards on mobile */ } .case-card:hover { transform: translateY(-5px); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); } .case-card .card-title { color: var(--primary-color); font-weight: 700; font-size: 1.25rem; /* Smaller on mobile */ } .case-card .card-text { font-size: 0.9rem; } .card-footer { background-color: #f9f9f9; border-top: 1px solid #eee; font-size: 0.85rem; } .status-open { background-color: #28a745 !important; color: white; } .status-closed { background-color: #6c757d !important; color: white; } .status-pending { background-color: #ffc107 !important; color: black; } /* Medium devices (tablets, 768px and up) */ @media (min-width: 768px) { h1 { font-size: 3.5rem; /* Larger on tablets */ } h2 { font-size: 2.5rem; } .navbar-brand { font-size: 1.5rem; /* Default size */ } .hero-section { padding: 3rem 2rem; } .case-card { margin-bottom: 1.5rem; } .case-card .card-title { font-size: 1.5rem; /* Default size */ } } /* Large devices (desktops, 992px and up) */ @media (min-width: 992px) { h1 { font-size: 4rem; /* Even larger on desktops */ } .hero-section { padding: 4rem 3rem; } } /* Extra large devices (large desktops, 1200px and up) */ @media (min-width: 1200px) { .hero-section { padding: 5rem 4rem; } }