/* * Responsive Stylesheet for BNKOps Website * Version: 2.0.0 * Date: May 2025 * Theme: Dark Purple with Trans Pride Colors */ /* ==================== Responsive Design ==================== */ /* Extra large devices (large desktops, 1200px and up) */ @media (max-width: 1200px) { .container { max-width: 960px; } .emoji-sticker { font-size: 2.5rem; } } /* Large devices (desktops, 992px and up) */ @media (max-width: 992px) { .container { max-width: 720px; } section { padding: 60px 0; } .section-header h2 { font-size: 2rem; } .about-content, .contact-content, .error-container .container { grid-template-columns: 1fr; gap: 30px; } .about-stats { margin-top: 30px; } .error-illustration { display: none; } .post-it { transform: rotate(0deg) !important; } .post-it:hover { transform: scale(1.03) !important; } } /* Medium devices (tablets, 768px and up) */ @media (max-width: 768px) { .container { max-width: 540px; } .menu-toggle { display: block; } .nav-menu { position: fixed; top: 70px; left: -100%; background-color: rgba(16, 0, 43, 0.95); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); width: 100%; height: calc(100vh - 70px); flex-direction: column; align-items: center; justify-content: flex-start; padding-top: 50px; transition: var(--transition); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3); z-index: 100; } .nav-menu.active { left: 0; } .nav-menu li { margin: 0 0 20px 0; } .nav-menu a { font-size: 1.2rem; } .hero h1 { font-size: 2.5rem; } .services-grid { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; } .about-stats { grid-template-columns: 1fr; /* Change to single column for vertical stacking */ gap: 25px; /* Increase gap for better separation */ } /* Fix the stat items to remove any rotation and ensure consistency */ .about-stats .stat-item { max-width: 100%; width: 100%; margin: 0 auto; transform: rotate(0deg) !important; /* Remove any rotation */ } .about-stats .stat-item:hover { transform: scale(1.03) !important; /* Only scale on hover, no rotation */ } .emoji-sticker { font-size: 2rem; } .footer-content { grid-template-columns: 1fr; text-align: center; } .footer-links h3::after, .footer-social h3::after { left: 50%; transform: translateX(-50%); } .social-icons { justify-content: center; } .error-actions { flex-direction: column; } .polaroid { max-width: 220px; padding: 10px 10px 40px 10px; margin: 0 auto 20px; } /* Make hero elements stack vertically instead of horizontal scrolling */ .hero .flex-container { flex-direction: column; flex-wrap: wrap; overflow-x: visible; justify-content: center; align-items: center; gap: 25px; } .hero .flex-container > div { width: 100%; max-width: 300px; margin: 0 auto; } /* Remove the horizontal scrollbar styling as it's no longer needed */ .hero .flex-container::-webkit-scrollbar { display: initial; } .hero .flex-container { -ms-overflow-style: initial; scrollbar-width: initial; } /* Ensure post-its have consistent styling */ .hero .post-it { width: 100% !important; max-width: 100% !important; box-sizing: border-box; } } /* Small devices (landscape phones, 576px and up) */ @media (max-width: 576px) { .container { width: 95%; padding: 0 10px; } section { padding: 50px 0; } .section-header { margin-bottom: 30px; } .section-header h2 { font-size: 1.8rem; } .section-header p { font-size: 1rem; } .hero h1 { font-size: 2rem; } .hero p { font-size: 1rem; } .btn { padding: 10px 20px; font-size: 0.9rem; } .service-card { padding: 20px; } .error-code { font-size: 6rem; } .error-content h1 { font-size: 2rem; } .sitemap-content { grid-template-columns: 1fr; } .emoji-sticker { font-size: 1.5rem; } .polaroid { max-width: 220px; } /* Adjust about stats spacing for smaller screens */ .about-stats { gap: 20px; /* Slightly reduce gap on very small screens */ } .about-stats .stat-item { padding: 15px; /* Reduce padding on very small screens */ } /* Further adjust sizes for smaller screens */ .hero .flex-container > div { max-width: 100%; width: 100%; } }