body { font-family: "Andika", sans-serif; background-color: #E8D8C4; } /* Reduce the width of the vertical scrollbar */ ::-webkit-scrollbar { width: 0px; /* Set the width of the vertical scrollbar */ } /* Style the scrollbar track (the part that the thumb slides within) */ ::-webkit-scrollbar-track { background: #f1f1f1; /* Light background color for the track */ } /* Style the scrollbar thumb (the draggable part) */ ::-webkit-scrollbar-thumb { background: #888; /* Set the color of the scrollbar thumb */ border-radius: 10px; /* Rounded corners for the thumb */ } /* Style the scrollbar thumb on hover */ ::-webkit-scrollbar-thumb:hover { background: #555; /* Darker color when hovered */ } /* Blur effect */ .blurred { filter: blur(5px); transition: filter 0.5s ease-in-out; cursor: none; overflow-y: hidden; } .upper-nav { position: relative; background-color: #E8D8C4; width: 100%; height: 50px; /* Adjust height as needed */ overflow: hidden; color: #561C24; } .text-slider { display: flex; transition: transform 0.5s ease; } .text-item { min-width: 100%; text-align: center; font-size: 16px; line-height: 50px; /* Adjust to vertically center text */ } .nav-button { position: absolute; top: 50%; transform: translateY(-50%); color: #000000; border: none; font-size: 10px; cursor: pointer; padding: 10px; z-index: 10; background-color: transparent; } .prev { left: 5px; } .next { right: 5px; } .navbar .nav-link { margin-right: 15px; /* Adjust space between icons */ } .navbar .nav-link i { transition: color 0.3s ease; } .navbar .nav-link:hover i { color: #C7B7A3; /* Change this to your preferred hover color */ } /* Default text styling for larger screens */ .upper-nav .text-slider .text-item { font-size: 20px; /* Default font size for larger screens */ white-space: nowrap; /* Prevent text from wrapping by default */ overflow: hidden; /* Hide text that overflows the container */ text-overflow: ellipsis; /* Optional: Show ellipsis when text overflows */ } /* Adjust text size and enable wrapping for mobile view */ @media (max-width: 767px) { .upper-nav .text-slider .text-item { font-size: 14px; /* Reduce the font size on mobile */ white-space: normal; /* Allow text to wrap on small screens */ word-wrap: break-word; /* Ensure words break onto the next line */ overflow-wrap: break-word; /* Ensure long words break if necessary */ } } /* Custom Navbar Styling */ .navbar { background-color: #561C24 !important; } /* Company Name with Gradient and Animation */ .navbar-brand { font-weight: bold; font-size: 1.5rem; background: linear-gradient(90deg, #E8D8C4, #E8D8C4); -webkit-background-clip: text; color: transparent; animation: gradient-animation 3s ease infinite; font-family: "Atomic Age", system-ui; } .navbar-brand:hover { background: linear-gradient(90deg, #C7B7A3, #C7B7A3); /* New gradient on hover */ -webkit-background-clip: text; color: transparent; text-decoration: underline; /* Underline on hover to emphasize */ transform: scale(1.1); /* Slight scaling effect on hover */ } /* Animation for gradient */ @keyframes gradient-animation { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* Navbar link color */ .navbar-nav .nav-link { color: #E8D8C4; /* Set the color of the links */ } .navbar-nav .nav-link:hover { color: #C7B7A3; /* Set the hover color of the links */ } .navbar-nav .nav-link.active, .navbar-nav .show>.nav-link { color: #E8ECD7; } /* Positioning the user and cart icons outside the collapsible navbar */ .navbar-icons { display: flex; align-items: center; position: absolute; right: 15px; /* Align the icons to the right */ top: 50%; /* Vertically center the icons */ transform: translateY(-50%); z-index: 10; /* Ensure they stay above other content */ } /* Mobile View Adjustments */ @media (max-width: 991px) { .navbar .container-fluid { position: relative; /* Required for absolute positioning of the icons */ } .navbar-toggler { position: absolute; left: 10px; /* Position toggle button to the left */ z-index: 20; /* Ensure the toggle button is above other elements */ } .navbar-toggler { padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x); font-size: var(--bs-navbar-toggler-font-size); line-height: 1; color: rgba(255, 255, 255, 0); background-color: transparent; border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color); border-radius: var(--bs-navbar-toggler-border-radius); transition: var(--bs-navbar-toggler-transition); } .navbar-nav { margin-left: auto; } /* Ensure the icons don't move when the menu is toggled */ .navbar-icons { position: absolute; right: 15px; /* Keep them aligned to the right */ top: 50%; transform: translateY(-50%); } } /* Default styling for larger screens */ .empty-message-image { margin-top: 35%; width: 250px; /* Adjust the size of the image */ height: auto; margin-bottom: 15px; /* Space between the image and the text */ } .empty-message-container { text-align: center; /* Center the image and text */ height: auto; padding: 10px; /* Add some padding */ } /* Mobile-specific styles */ @media (max-width: 768px) { .empty-message-container { margin-top: 35%; } .empty-message-image { width: 120px; /* Adjust the image size for smaller screens */ height: 120px; /* Maintain aspect ratio */ margin-bottom: 10px; /* Reduce margin for tighter spacing */ } .empty-message-container p { font-size: 1rem; /* Slightly smaller font for mobile */ color: #555; /* Lighter text for better readability */ } } .banner { width: 100%; /* Full width of the screen */ height: 300px; /* Height of the banner */ background-image: url('https://media.licdn.com/dms/image/D4D12AQFnPXah4KxOyA/article-cover_image-shrink_720_1280/0/1692609795136?e=2147483647&v=beta&t=Q3SvfTEAu_9mg2bu6QgYv6W5NomYUXfymOS8bp2klws'); /* Your image */ background-size: cover; /* Ensures the image covers the entire area */ background-position: center; /* Centers the image */ display: flex; /* Use flexbox to center the content */ justify-content: center; /* Horizontally center the content */ align-items: center; /* Vertically center the content */ text-align: center; /* Center the text inside the div */ color: white; /* Optional: Set text color to white for contrast */ padding: 0 20px; /* Optional: Padding to prevent text from touching edges */ } .banner-content { max-width: 80%; /* Ensure the text does not stretch too wide */ padding: 20px; /* Padding to ensure the text doesn't touch the edges */ width: 100%; /* Make sure content doesn't overflow */ } .banner-content h1 { font-size: 2.5em; /* Adjust font size for larger screens */ margin-bottom: 15px; /* Add some space between title and paragraph */ } .banner-content p { font-size: 1.2em; /* Adjust font size for readability */ line-height: 1.6; /* Adjust line spacing for better readability */ margin: 0 auto; /* Center the paragraph */ max-width: 1000px; /* Limit the width of the paragraph */ } /* Mobile View - For screens smaller than 600px */ @media screen and (max-width: 600px) { .banner-content h1 { font-size: 1.8em; /* Reduce font size for mobile */ } .banner-content p { font-size: 0.8rem; /* Adjust font size for paragraph on mobile */ line-height: 1.4; /* Adjust line spacing for better readability on small screens */ max-width: 100%; /* Make sure the text doesn't stretch too far */ margin: 0 auto; /* Ensure text is centered */ text-align: justify; } .banner { height: 250px; /* Adjust banner height on smaller screens */ } } /* Tablet View - For screens between 600px and 1024px */ @media screen and (min-width: 600px) and (max-width: 1024px) { .banner-content h1 { font-size: 2em; /* Reduce font size for tablet */ } .banner-content p { font-size: 1.1em; /* Adjust font size for paragraph on tablets */ line-height: 1.5; /* Adjust line height for readability */ max-width: 80%; /* Keep the text within the container */ margin: 0 auto; /* Ensure text is centered */ } .banner { height: 280px; /* Adjust banner height on tablet */ } } /* Custom CSS for Mobile View */ @media (max-width: 991px) { /* Make navbar content take up full space */ .navbar .container-fluid { position: relative; /* Required for absolute positioning */ } /* Make sure the logo and toggle button stay in place */ .navbar-header { display: flex; justify-content: space-between; align-items: center; width: 100%; } /* Position the toggle button absolutely so it doesn't move */ .navbar-toggler { position: absolute; left: 5px; /* Adjust to your desired space from the left */ } .navbar-nav { margin-left: auto; /* Align navbar items to the right */ } /* Right Side: User and Cart Icons */ .d-flex { display: flex; align-items: center; position: absolute; right: 15px; /* Adjust to position on the right side */ top: 50%; transform: translateY(-50%); } } /* Media query for mobile devices (screens smaller than 768px) */ @media (max-width: 767px) { .card-img-top { height: 150px !important; /* Reduce image height for smaller screens */ } .col-4 { margin-bottom: 10px; /* Smaller margin on mobile */ } } /* Default margin between cards for desktop and tablets */ .col-4 { margin-bottom: 15px; /* Adjust as needed */ } /* For mobile devices (default) */ .card img { height: 150px; width: 100%; object-fit: cover; } /* For tablet and desktop devices (min-width: 768px) */ @media (min-width: 768px) { .card img { height: 300px !important; /* Increase card height for tablet and desktop */ } } /* Optionally, adjust the height for very large desktop screens */ @media (min-width: 1200px) { .card img { height: 250px !important; /* Further increase the height on very large screens */ } } /* Shine effect */ .card::before { content: ""; position: absolute; top: 0; left: -100%; /* Start the shine effect from outside the left side */ width: 100%; height: 100%; background: linear-gradient(80deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%); transform: skewX(-20deg); /* Skew to achieve the 80-degree angle effect */ transition: left 0.3s ease-in-out; /* Smooth transition for the shine movement */ pointer-events: none; /* Make sure the shine doesn't interfere with interactions */ } /* Shine effect on hover */ .card:hover::before { left: 100%; /* Move the shine across the card image on hover */ } /* Card text styles */ .card-text-bottom { position: absolute; bottom: 0px; left: 0; right: 0; text-align: center; color: rgb(0, 0, 0); /* Change text color if needed */ background-color: #ffffff; /* Optional: Background to improve text visibility */ padding: 5px 0; } .card-text-bottom p { margin: 0; font-size: 14px; /* Adjust font size if necessary */ font-weight: 500; text-transform: uppercase; } .tutor { position: relative; width: 100%; /* Ensure it takes full width of its container */ overflow: hidden; transition: background-color 0.3s ease, box-shadow 0.3s ease; } /* Ambient light effect when video is playing */ .tutor.playing { background: rgba(255, 255, 255, 0.1); /* Soft light effect */ box-shadow: 0px 0px 50px 20px rgba(255, 255, 255, 0.3); /* Glowing light effect */ } #introVideo { width: 100%; height: 90%; object-fit: cover; /* This ensures the video covers the entire element area */ } /* For tablet and desktop screens */ @media (min-width: 768px) { .tutor { height: 500px; /* Set the height based on your requirement */ } #introVideo { height: 100%; } } /* Style for the Payment Section */ .payment { width: 100%; background-color: #ffffff; /* Set background color for the container */ padding: 20px 0; text-align: center; overflow: hidden; /* Hide anything that goes beyond the container */ } /* Marquee Effect Container */ .payment-marquee { display: flex; justify-content: center; align-items: center; animation: marquee 15s linear infinite; } /* Adjust payment logo styles to remove background */ .payment-logo { height: 60px; /* Increased height */ width: auto; /* Maintain aspect ratio */ margin: 0 30px; object-fit: contain; background: none; /* Ensure no background color */ display: block; /* Ensure images are displayed as block elements */ } /* Marquee Animation */ @keyframes marquee { 0% { transform: translateX(100%); /* Start from right */ } 100% { transform: translateX(-100%); /* Move to the left */ } } .footer { height: auto; /* Remove fixed height for flexibility */ background-color: #E8D8C4; color: #6D2932; display: flex; flex-direction: column; align-items: center; /* Center the footer content horizontally */ } .footer-content { display: flex; justify-content: space-between; width: 90%; max-width: 1200px; margin: 0 auto; flex-grow: 1; gap: 30px; /* Space between columns */ } .footer-column { flex: 1; padding: 0 15px; text-align: left; /* Ensure text aligns left */ } .footer-column h3 { color: #000000; margin-bottom: 20px; font-size: 1.4rem; text-transform: uppercase; letter-spacing: 1px; } .footer-column p, .footer-column ul { color: #6D2932; font-size: 1rem; /* Make text size consistent */ line-height: 1.6; } .footer-column ul { list-style-type: none; padding: 0; } .footer-column ul li { margin-bottom: 10px; position: relative; padding-left: 20px; /* Added padding to align bullets better */ } .footer-column ul li::before { content: '•'; color: #ffffff00; position: absolute; left: 0; font-size: 1.5rem; /* Adjust bullet size */ } .social-links { display: flex; gap: 15px; margin-top: 15px; } .social-links a { color: #a9b7c6; font-size: 1.5rem; transition: color 0.3s ease; } .social-links a:hover { color: #4ecdc4; } .footer-bottom { background-color: #561C24 !important; padding-top: 2%; color: #a9b7c6; text-align: center; padding: 15px 0; width: 100%; } .newsletter-column form { display: flex; gap: 10px; flex-direction: column; } .newsletter-column form input { padding: 10px; border: none; border-radius: 5px; width: 100%; font-size: 14px; } .newsletter-column form button { background-color: #561C24; color: #E8D8C4; padding: 10px; border: none; border-radius: 5px; font-size: 14px; cursor: pointer; } .newsletter-column form button:hover { background-color: #561c24da; color: #ffffff; } /* Footer Bottom */ .footer-bottom { text-align: center; font-size: 14px; color: #f8f8f8; padding: 15px 0; background-color: #561C24; } .footer-bottom p { margin: 0; } @media (max-width: 767px) { .footer-content { flex-direction: column; align-items: center; } .footer-column { min-width: 100%; margin-bottom: 20px; } .footer-column h3 { text-align: center; } .newsletter-column form { flex-direction: row; } } @media (max-width: 768px) { .footer-content { flex-direction: column; text-align: center; } .footer-column { margin-bottom: 30px; text-align: center; /* Center text in columns for mobile */ } .footer-column ul { display: flex; /* Use flexbox to center the list */ flex-direction: column; align-items: center; /* Center the list items */ padding: 0; } .footer-column ul li { margin-bottom: 10px; padding-left: 0; /* Remove padding for mobile */ text-align: center; /* Ensure list items are centered */ } .footer-column ul li::before { display: none; /* Remove bullet points on mobile */ } .social-links { justify-content: center; } .footer-column p { font-size: 0.9rem; /* Smaller text for mobile */ } } /* Custom container for Sort By filter */ .sort-filter-container { margin-top: 2%; margin-right: 2%; margin-bottom: 30px; text-align: right; /* Aligns the dropdown to the right */ } /* Style the Sort By dropdown button */ .sort-filter-container .dropdown-toggle { background-color: #561C24; border-color:#561C24 ; color: #E8D8C4; border-radius: 0px; /* Slightly rounded button */ padding: 5px 15px; /* Reduced padding for a smaller size */ font-size: 14px; /* Reduced font size */ font-weight: 500; transition: background-color 0.3s ease; } .sort-filter-container .dropdown-toggle:hover { background-color: #561C24; /* Darker shade on hover */ } /* Customize the dropdown items */ .sort-filter-container .dropdown-menu { border-radius: 8px; background-color: #6D2932; border-radius: 0%; } .sort-filter-container .dropdown-item { padding: 10px 15px; /* Reduced padding */ font-size: 14px; /* Reduced font size */ color: #E8D8C4; transition: background-color 0.3s ease; } .sort-filter-container .dropdown-item:hover { background-color: #E8D8C4; color: #561C24; } .sort-filter-container .dropdown-item.active, .sort-filter-container .dropdown-item:active { background-color: #0056b3; } /* Basic grid setup for product container */ #productContainer { display: grid; grid-template-columns: repeat(2, 1fr); /* Default to 2 cards per row */ gap: 10px; padding: 0px; margin: auto; } /* Tablet (Screen width >= 768px and < 1024px) - 3 cards per row */ @media (min-width: 768px) and (max-width: 1023px) { #productContainer { grid-template-columns: repeat(3, 1fr); /* 3 cards per row */ } } /* Desktop (Screen width >= 1024px) - 4 cards per row */ @media (min-width: 1024px) { #productContainer { grid-template-columns: repeat(5, 1fr); /* 4 cards per row */ } } /* Default styles (mobile view) */ .card-img-container { position: relative; width: 100%; height: 150px; /* Fixed height for the image container */ overflow: hidden; /* Hide any overflow from images */ } /* Ensure images fill the container, keeping the aspect ratio with a blur effect */ .product-image { width: 100%; height: 100%; /* Make image height 100% of the container */ object-fit: contain; /* Ensure the image covers the container without stretching */ border-radius: 0%; filter: blur(1px); /* Apply a subtle blur effect */ transition: filter 0.3s ease; /* Add a smooth transition for hover effects */ } /* Adjust image height for tablet and desktop views */ @media (min-width: 768px) { .card-img-container { height: 200px; /* Slightly increased height for tablets and larger screens */ } /* Ensure images fill the container, keeping the aspect ratio with a blur effect */ .product-image { width: 100%; top: 5%; height: 100%; /* Make image height 100% of the container */ object-fit: contain; /* Ensure the image covers the container without stretching */ border-radius: 0%; filter: blur(1.5px); /* Apply a subtle blur effect */ transition: filter 0.3s ease; /* Add a smooth transition for hover effects */ } } @media (min-width: 1200px) { .card-img-container { height: 200px; /* Increased height for desktop screens */ } } /* Skeleton loader card styles */ .skeleton-card { background-color: #FFF3E2; /* Base color */ border-radius: 0px; /* Removed the rounded corners */ height: 300px; width: auto; margin: 10px; /* Increased margin between cards */ position: relative; /* Necessary for the shimmer effect */ overflow: hidden; /* To ensure the shimmer effect stays within the card */ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Soft shadow around the card */ background: #FFF3E2; /* Initial light color */ animation: pulse-inner 1.5s infinite ease-in-out, color-shift 2s infinite linear; /* Pulse + color shift */ } /* Media query for mobile views */ @media (max-width: 767px) { .skeleton-card { height: 200px; /* Adjust the height for smaller screens */ margin: 0px; /* Reduce margin on smaller screens */ width: 90%; /* Make the card full-width on mobile */ } } /* Image inside the skeleton card */ .skeleton-card img { height: 200px; width: 100%; background-color: #FFF3E2; /* Same base color for image */ border-radius: 0px; position: relative; /* For the inner pulse effect */ animation: pulse-inner 1.5s infinite ease-in-out, color-shift 2s infinite linear; /* Apply pulse and color shift */ } /* Title and price skeletons */ .skeleton-card .skeleton-title, .skeleton-card .skeleton-price { background-color: #FFF3E2; /* Same base color for title and price */ border-radius: 0px; /* Removed rounded corners */ margin: 10px 0; position: relative; /* For inner pulse effect */ animation: pulse-inner 1.5s infinite ease-in-out, color-shift 2s infinite linear; /* Apply pulse and color shift */ } .skeleton-card .skeleton-title { height: 30px; width: 70%; } .skeleton-card .skeleton-price { height: 20px; width: 50%; } /* Pulse effect animation inside elements (image, title, price) */ @keyframes pulse-inner { 0% { background-color: #FFF3E2; /* Start with base color */ box-shadow: 0 0 10px rgba(255, 255, 255, 0.3), 0 0 20px rgba(255, 255, 255, 0.2); } 50% { background-color: #e6d5b8; /* Darken the base color slightly for pulse effect */ box-shadow: 0 0 30px rgba(255, 255, 255, 0.5), 0 0 40px rgba(255, 255, 255, 0.4); } 100% { background-color: #FFF3E2; /* Return to base color */ box-shadow: 0 0 10px rgba(255, 255, 255, 0.3), 0 0 20px rgba(255, 255, 255, 0.2); } } /* Keyframe for shimmer animation */ @keyframes loading { 0% { background-position: -150% 0; } 50% { background-position: 150% 0; } 100% { background-position: -150% 0; } } .skeleton-card::before { content: ''; position: absolute; top: 0; left: -150%; width: 100%; height: 100%; background: linear-gradient(90deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.2)); animation: loading 1.5s infinite ease-in-out; z-index: 2; opacity: 0.75; /* Slight opacity for smooth shimmer */ } /* Add a quick "glass-like shimmer" to the skeleton card */ .skeleton-card img, .skeleton-card .skeleton-title, .skeleton-card .skeleton-price { position: relative; z-index: 1; /* Ensures the shimmer is above the card */ } /* Optional: Add a subtle scale animation to the skeleton card for a more modern look */ .skeleton-card:hover { transform: scale(1.02); /* Slight scaling effect on hover */ transition: transform 0.3s ease-in-out; } /* Keyframe for subtle color shifting */ @keyframes color-shift { 0% { background-color: #FFF3E2; } 50% { background-color: #f9e1c3; /* Slightly warmer shade */ } 100% { background-color: #FFF3E2; /* Back to original color */ } } /* Make shimmer effect more subtle and modern */ .skeleton-card::before { background: linear-gradient(90deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.2)); animation: loading 1.5s infinite ease-in-out; opacity: 0.6; } .pagination-container { display: flex; justify-content: center; margin-top: 20px; } .page-btn { padding: 10px 15px; margin: 0 5px; border: 1px solid #ddd; background-color: #fff; cursor: pointer; } .page-btn.active { background-color: #007bff; color: white; } .page-btn:hover { background-color: #f1f1f1; } /* Ensure consistent card height */ .product-card { display: flex; flex-direction: column; height: 100%; } /* Card Body Layout */ .card-body { display: flex; justify-content: space-between; /* Align name and price in the same row */ padding: 5px; /* Reduced padding to minimize space */ flex-direction: row; /* Ensure name and price are in a horizontal row */ gap: 1px; /* Optional: To add small space between name and price */ } .card-title { text-transform: uppercase; /* Converts text to uppercase */ font-size: 10px; /* Adjust font size as needed */ font-weight: bold; /* Optional: make the text bold */ } /* Product Price */ .card-price { margin: 0; /* Remove any default margin */ font-size: 1rem; font-weight: normal; color: #000000; } /* Remove space below title and above price */ .card-body .card-title, .card-body .card-price { margin-bottom: 0; /* Ensure no space between name and price */ } /* Label at the top-left corner */ .product-label { position: absolute; top: 10px; left: 10px; background-color: #E8D8C4; /* Semi-transparent background */ padding: 4px 8px; border-radius: 4px; font-size: 0.9rem; font-weight: bold; color: #333; } /* Add to Cart Button */ .add-to-cart-btn { margin-top: 12px; padding: 5px; background-color: #561C24; color: #E8D8C4; border: none; cursor: pointer; border-radius: 0px; width: 100%; } .add-to-cart-btn:hover { background-color: #6D2932; color: #E8D8C4; } /* Hover Details for Hooks, EPI, PPI, Image Type */ .hover-details { display: none; /* Hide by default */ position: absolute; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.7); color: #fff; padding: 12px; font-size: 1rem; border-radius: 8px; width: 100%; height: 100%; box-sizing: border-box; line-height: 1; z-index: 10; /* Ensure it appears above the image */ } @media (max-width: 768px) { .hover-details { display: none; /* Hide by default */ position: absolute; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.7); color: #fff; padding: 8px; font-size: 0.9rem; border-radius: 8px; width: 100%; height: 100%; box-sizing: border-box; line-height: 0.6; z-index: 10; /* Ensure it appears above the image */ } } #close-popup { position: absolute; top: 5px; right: 10px; background: transparent; font-size: 32px !important; color: #ffffff !important; font-weight: 500; cursor: pointer; transition: color 0.3s ease; border: 2px solid #00000000 !important; /* Add a solid black border */ border-radius: 0%; /* Optional: rounded corners for the border */ } /* Media query for tablets and desktops */ @media (min-width: 768px) { #close-popup { color: #000000 !important; /* Change text color to black */ } } /* Media query for desktop */ @media (min-width: 1024px) { #close-popup { color: #000000 !important; /* Change text color to black */ } } /* Hover or Click Show Hover Details */ .card-img-container:hover .hover-details, .card-img-container:focus-within .hover-details { display: block; } /* Show hover details when image is clicked on mobile */ .card-img-container:focus .hover-details { display: block; } /* Ensure the card title and price have some space */ .card-body { margin-top: 5px; display: flex; flex-direction: column; justify-content: space-between; flex-grow: 1; padding: 0px; position: relative; background-color: #E8D8C4; } /* Default styles for card title and price */ .card-body .card-title { margin-bottom: 8px; font-size: 1rem; /* Default font size */ font-weight: bold; color: #561C24; } .card-body .card-price { font-size: 1rem; /* Slightly larger font for emphasis */ font-weight: bold; /* Bold text for prominence */ margin-bottom: 0px; color: #6D2932; /* A professional dark grayish-blue color */ text-align: left; /* Optional: Center-align the price */ } .card-body .card-price::before { content: ""; /* Add currency symbol (adjust for your locale) */ font-size: 1rem; /* Slightly smaller for distinction */ vertical-align: middle; margin-right: 2px; color: #27ae60; /* Green color for the symbol for a positive, professional vibe */ } .card-body .card-price::after { content: ""; /* Optional: Show price per unit for clarity */ font-size: 0.9rem; vertical-align: middle; margin-left: 4px; color: #7f8c8d; /* Subtle gray for secondary details */ } /* Mobile view adjustments using media query */ @media (max-width: 768px) { .card-body .card-title { font-size: 0.9rem; /* Reduced font size for mobile */ } .card-body .card-price { font-size: 0.85rem; /* Reduced font size for mobile */ } } /* Adjust the grid and layout for better spacing between cards */ .card { background-color: #ffffff00; /* Removed border-radius and shadow */ border: none; /* Remove border */ border-radius: 0px; /* Remove border-radius */ overflow: hidden; position: relative; /* Ensure label and hover details are positioned correctly */ transition: all 0.3s ease; } /* Removed card hover shadow effect */ .card:hover { box-shadow: none; /* Removed shadow on hover */ } /* Responsive adjustments for small devices */ @media (max-width: 767px) { .card-body { flex-grow: 0; /* Prevent card body from stretching */ } .card-title, .card-price { margin-bottom: 0; /* Remove margin between name and price */ } } .pagination { display: flex; justify-content: center; margin-top: 20px; gap: 10px; margin-bottom: 2%; } .page-btn { background-color: #561C24; border: 0px solid #dee2e6; color: #E8D8C4; padding: 8px 12px; cursor: pointer; border-radius: 0px; font-size: 14px; transition: background-color 0.3s ease, color 0.3s ease; } .page-btn:hover { background-color: #6D2932; color: #E8D8C4; } .page-btn.active { background-color: #181C14; color: #dee2e6; font-weight: bold; } /* Sidebar Styles */ .cart-sidebar { position: fixed; top: 0; right: -100%; /* Initially hide the sidebar off-screen */ width: 280px; /* Default width for small screens (mobile) */ height: 100%; background-color: #fff; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1); z-index: 9999; transition: right 0.3s ease-in-out; overflow-y: auto; /* Allow scrolling inside the sidebar */ display: flex; flex-direction: column; padding-top: 10px; /* Optional: Adjust padding as necessary */ } #checkout-btn:hover { background-color: #000000 !important; /* New background color on hover */ color: #E8D8C4; } /* Sidebar Body */ .cart-sidebar .sidebar-body { padding: 15px; flex-grow: 1; /* Allow body to grow and take available space */ overflow-y: auto; /* Make the sidebar content scrollable */ } /* Close Button */ .cart-sidebar .btn-close { background: none; border: none; font-size: 18px; cursor: pointer; } /* When sidebar is open */ .cart-sidebar.open { right: 0; /* Slide the sidebar into view */ } /* Prevent body from scrolling when sidebar is open (mobile & tablet) */ body.cart-sidebar-open { overflow: hidden; /* Disable body scrolling when sidebar is open */ } /* Mobile and Small Tablet: Default width for smaller screens */ @media (max-width: 767px) { .cart-sidebar { width: 100%; /* Full-width on mobile */ max-width: 350px; /* Optional: set a max-width */ } body.cart-sidebar-open { overflow: hidden; /* Prevent background scroll on mobile */ } } /* Tablet View (portrait and small landscape) */ @media (min-width: 768px) and (max-width: 991px) { .cart-sidebar { width: 320px; /* Slightly wider for tablet screens */ } body.cart-sidebar-open { overflow: hidden; /* Prevent background scroll on tablet */ } } /* Larger Sidebar Width for Desktop */ @media (min-width: 992px) { .cart-sidebar { width: 400px; /* Wider for desktop screens */ } } /* Optional: Even wider sidebar for very large desktop screens */ @media (min-width: 1200px) { .cart-sidebar { width: 450px; /* Very large screens */ } } #user-details-form button { width: 100%; padding: 12px; margin-top: 20px; border: none; background-color: #561C24 !important; color: #E8D8C4 !important; font-size: 18px; cursor: pointer; border-radius: 0px; transition: background-color 0.3s ease; } #user-details-content { background-color: #C7B7A3 !important; max-width: 500px; width: 90%; padding: 30px; position: relative; display: flex; flex-direction: column; align-items: center; max-height: 500px; overflow: hidden; border-radius: 0px !important; transition: all 0.3s ease; } #close-user-details { position: absolute; top: 15px; right: 15px; background: transparent; border: none; font-size: 28px; color: #561C24 !important; cursor: pointer; transition: color 0.3s ease; } .cart-sidebar .sidebar-body { padding: 15px; flex-grow: 1; overflow-y: auto; margin-bottom: 55%; background-color: #E8D8C4 !important; } .form-description { font-size: 16px; color: #6D2932 !important; margin-bottom: 20px; text-align: center; } /* Sidebar Styles */ .cart-sidebar { position: fixed; top: 0; right: -100%; /* Initially hide the sidebar off-screen */ width: 280px; /* Default width for small screens (mobile) */ height: 100%; background-color: #fff; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1); z-index: 9999; transition: right 0.3s ease-in-out; display: flex; flex-direction: column; /* Stack sidebar elements vertically */ } /* Prevent body from scrolling when sidebar is open */ body.cart-sidebar-open { overflow: hidden; /* Disable body scrolling */ } /* Sidebar Styles */ .cart-sidebar { position: fixed; top: 0; right: -100%; /* Initially hide the sidebar off-screen */ width: 280px; /* Default width for small screens (mobile) */ height: 100%; background-color: #E8D8C4; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1); z-index: 9999; transition: right 0.3s ease-in-out; display: flex; flex-direction: column; /* Stack sidebar elements vertically */ } /* Sidebar Header */ .cart-sidebar .sidebar-header { display: flex; justify-content: space-between; padding: 10px; margin-top: -10px; height: auto; background-color: #6D2932; color: #E8D8C4; text-transform: uppercase; } /* Sidebar Body */ .cart-sidebar .sidebar-body { padding: 15px; flex-grow: 1; /* Allow body to grow and take available space */ overflow-y: auto; /* Make the sidebar content scrollable */ max-height: calc(100% - 100px); /* Optional: Limit height if needed */ } /* Total Section at the bottom */ .cart-totals { padding: 15px; background-color: #E8D8C4; margin-top: 20px; /* Space between cart items and totals */ position: absolute; bottom: 0; left: 0; right: 0; box-shadow: 0px -2px 10px rgba(0, 0, 0, 0.1); /* Optional: subtle shadow for separation */ } /* Close Button */ .cart-sidebar .btn-close { background: none; border: none; font-size: 18px; cursor: pointer; color: wheat; } /* When sidebar is open */ .cart-sidebar.open { right: 0; /* Slide the sidebar into view */ } /* Custom Scrollbar for Sidebar */ .cart-sidebar .sidebar-body { scrollbar-width: thin; /* For Firefox */ scrollbar-color: #888 #f5f5f5; /* For Firefox (thumb color and track color) */ } /* For Webkit browsers like Chrome, Safari, Edge */ .cart-sidebar .sidebar-body::-webkit-scrollbar { width: 2px; /* Set width of the scrollbar */ } .cart-sidebar .sidebar-body::-webkit-scrollbar-track { background: #000000; /* Set track color */ } .cart-sidebar .sidebar-body::-webkit-scrollbar-thumb { background: #888; /* Set thumb color */ border-radius: 10px; /* Optional: rounded thumb */ } .cart-sidebar .sidebar-body::-webkit-scrollbar-thumb:hover { background: #555; /* Darker thumb color on hover */ } .total-row { display: flex; justify-content: space-between; padding: 5px 0; font-size: 16px; } .total-row span:first-child { font-weight: bold; } .total-row span:last-child { color: #333; font-weight: bold; } /* Default styling for larger screens */ .empty-message-image { margin-top: 35%; width: 250px; /* Adjust the size of the image */ height: auto; margin-bottom: 15px; /* Space between the image and the text */ } .empty-message-container { text-align: center; /* Center the image and text */ height: auto; padding: 10px; /* Add some padding */ } /* Mobile-specific styles */ @media (max-width: 768px) { .empty-message-container { margin-top: 35%; } .empty-message-image { width: 120px; /* Adjust the image size for smaller screens */ height: 120px; /* Maintain aspect ratio */ margin-bottom: 10px; /* Reduce margin for tighter spacing */ } .empty-message-container p { font-size: 1rem; /* Slightly smaller font for mobile */ color: #555; /* Lighter text for better readability */ } } /* Close Button */ .cart-sidebar .btn-close { background: none; border: none; font-size: 18px; cursor: pointer; color: wheat; } /* Sidebar Body Styles */ .cart-sidebar .sidebar-body { padding: 15px; flex-grow: 1; /* Allow body to grow and take available space */ overflow-y: auto; /* Make the sidebar content scrollable */ margin-bottom: 55%; /* Default margin for all screen sizes */ } /* Larger Desktop Screens (for 992px and up) */ @media (min-width: 992px) { .cart-sidebar .sidebar-body { margin-bottom: 40%; /* Increase margin to 40% for desktop screens */ } } /* When sidebar is open */ .cart-sidebar.open { right: 0; /* Slide the sidebar into view */ } /* Prevent body from scrolling when sidebar is open (mobile & tablet) */ body.cart-sidebar-open { overflow: hidden; /* Disable body scrolling when sidebar is open */ } /* Mobile and Small Tablet: Default width for smaller screens */ @media (max-width: 767px) { .cart-sidebar { width: 100%; /* Full-width on mobile */ max-width: 360px; /* Optional: set a max-width */ } body.cart-sidebar-open { overflow: hidden; /* Prevent background scroll on mobile */ } } /* Tablet View (portrait and small landscape) */ @media (min-width: 768px) and (max-width: 991px) { .cart-sidebar { width: 320px; /* Slightly wider for tablet screens */ } body.cart-sidebar-open { overflow: hidden; /* Prevent background scroll on tablet */ } } /* Larger Sidebar Width for Desktop */ @media (min-width: 992px) { .cart-sidebar { width: 400px; /* Wider for desktop screens */ } } /* Optional: Even wider sidebar for very large desktop screens */ @media (min-width: 1200px) { .cart-sidebar { width: 450px; /* Very large screens */ } } .cart-items-container { width: 100%; } /* Custom Scrollbar for Sidebar */ .cart-sidebar .sidebar-body { scrollbar-width: thin; /* For Firefox */ scrollbar-color: #888 #f5f5f5; /* For Firefox (thumb color and track color) */ } .cart-item-row { border-bottom: 1px solid #e0e0e0; } .cart-item-top-row { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; } .cart-item-image { width: 80px; margin-right: 10px; } .cart-item-img { width: 100%; height: 90px; object-fit: cover; border-radius: 0px; filter: blur(1px); /* Adds blur effect */ } .cart-item-details { flex-grow: 1; } .cart-item-name { font-size: 16px; margin-bottom: 5px; } .cart-item-price { font-size: 14px; color: #666; } .cart-item-actions { display: flex; align-items: center; } .dropdown-toggle { background: none; border: none; margin-right: 10px; cursor: pointer; } .btn-danger { padding: 5px 10px; font-size: 12px; } .cart-item-dropdown { display: none; width: 100%; background-color: #f9f9f900; padding: 0px; } .cart-item-dropdown.show { display: block; } .cart-item-dropdown .list-group-item { padding: 8px; border-bottom: 0px solid #FFF4B7; } .list-group-item { position: relative; display: block; padding: 0px; color: #561C24; text-decoration: none; background-color: #E8D8C4; border: 0; } @media (min-width: 768px) { .cart-item-image { width: 100px; } } @media (min-width: 992px) { .cart-item-image { width: 120px; } } #cart-items { margin: 0 !important; padding-left: 0; } .dropdown-toggle-text { margin-right: 10%; cursor: pointer; } /* Checkout Button */ .checkout-btn-container { margin-top: 0px; /* Space between totals and the button */ padding: 0px; background-color: #fff; /* Optional: same background as the sidebar */ border-top: 1px solid #f0f0f0; /* Optional: divider line above the button */ } #checkout-btn { width: 100%; /* Full width for better appearance on smaller screens */ padding: 10px; font-size: 16px; background-color: #561C24; /* Green color for the button */ color: #E8D8C4; border: none; border-radius: 0px; cursor: pointer; text-align: center; transition: background-color 0.3s ease; } #checkout-btn:hover { background-color: #218838; /* Darker green on hover */ } .btn { border-style: solid; } #searchInput { display: none; /* Initially hidden */ width: 0; /* Start with zero width */ padding: 8px 16px; /* Add some padding for the input */ border: 2px solid rgba(0, 0, 0, 0.3); /* Light border with transparency */ border-radius: 0px; /* Rounded corners */ background-color: #E8D8C4; /* Transparent white background */ color: #6D2932; /* Text color */ font-size: 16px; /* Adjust text size */ outline: none; /* Remove the default outline */ transition: width 0.5s ease, background-color 0.3s ease; /* Smooth transition for width and background */ } #searchInput:focus { background-color: #E8D8C4; /* Slightly darker background when focused */ border-color: rgba(0, 0, 0, 0.5); /* Darker border when focused */ } #companyName { transition: opacity 0.5s ease; /* Smooth transition for opacity */ } .banner { width: 100%; /* Full width of the screen */ height: 300px; /* Height of the banner */ background-image: url('https://media.licdn.com/dms/image/D4D12AQFnPXah4KxOyA/article-cover_image-shrink_720_1280/0/1692609795136?e=2147483647&v=beta&t=Q3SvfTEAu_9mg2bu6QgYv6W5NomYUXfymOS8bp2klws'); /* Your image */ background-size: cover; /* Ensures the image covers the entire area */ background-position: center; /* Centers the image */ display: flex; /* Use flexbox to center the content */ justify-content: center; /* Horizontally center the content */ align-items: center; /* Vertically center the content */ text-align: center; /* Center the text inside the div */ color: white; /* Optional: Set text color to white for contrast */ padding: 0 20px; /* Optional: Padding to prevent text from touching edges */ } .banner-content { max-width: 80%; /* Ensure the text does not stretch too wide */ padding: 20px; /* Padding to ensure the text doesn't touch the edges */ width: 100%; /* Make sure content doesn't overflow */ } .banner-content h1 { font-size: 2.5em; /* Adjust font size for larger screens */ margin-bottom: 15px; /* Add some space between title and paragraph */ color: #C7B7A3; } .banner-content p { font-size: 1.2em; /* Adjust font size for readability */ line-height: 1.6; /* Adjust line spacing for better readability */ margin: 0 auto; /* Center the paragraph */ max-width: 1000px; /* Limit the width of the paragraph */ color: #E8D8C4;; } /* Mobile View - For screens smaller than 600px */ @media screen and (max-width: 600px) { .banner-content h1 { font-size: 1.8em; /* Reduce font size for mobile */ } .banner-content p { font-size: 0.8rem; /* Adjust font size for paragraph on mobile */ line-height: 1.4; /* Adjust line spacing for better readability on small screens */ max-width: 100%; /* Make sure the text doesn't stretch too far */ margin: 0 auto; /* Ensure text is centered */ text-align: justify; color: #E8D8C4; } .banner { height: 250px; /* Adjust banner height on smaller screens */ } } /* Tablet View - For screens between 600px and 1024px */ @media screen and (min-width: 600px) and (max-width: 1024px) { .banner-content h1 { font-size: 2em; /* Reduce font size for tablet */ } .banner-content p { font-size: 1.1em; /* Adjust font size for paragraph on tablets */ line-height: 1.5; /* Adjust line height for readability */ max-width: 80%; /* Keep the text within the container */ margin: 0 auto; /* Ensure text is centered */ } .banner { height: 280px; /* Adjust banner height on tablet */ } } /* Custom CSS for Mobile View */ @media (max-width: 991px) { /* Make navbar content take up full space */ .navbar .container-fluid { position: relative; /* Required for absolute positioning */ } /* Make sure the logo and toggle button stay in place */ .navbar-header { display: flex; justify-content: space-between; align-items: center; width: 100%; } /* Position the toggle button absolutely so it doesn't move */ .navbar-toggler { position: absolute; left: 5px; /* Adjust to your desired space from the left */ } .navbar-brand { display: flex; align-items: center; margin-left: 50px; /* Adjust the margin to create space between toggle and logo */ font-size: 16px; color: #E8D8C4; } .navbar-nav { margin-left: auto; /* Align navbar items to the right */ } /* Right Side: User and Cart Icons */ .d-flex { display: flex; align-items: center; position: absolute; right: 15px; /* Adjust to position on the right side */ top: 50%; transform: translateY(-50%); } } /* Media query for mobile devices (screens smaller than 768px) */ @media (max-width: 767px) { .card-img-top { height: 150px !important; /* Reduce image height for smaller screens */ } .col-4 { margin-bottom: 10px; /* Smaller margin on mobile */ } } /* Default margin between cards for desktop and tablets */ .col-4 { margin-bottom: 15px; /* Adjust as needed */ } /* For mobile devices (default) */ .card img { height: 150px; width: 100%; object-fit: cover; } /* For tablet and desktop devices (min-width: 768px) */ @media (min-width: 768px) { .card img { height: 300px !important; /* Increase card height for tablet and desktop */ } } /* Optionally, adjust the height for very large desktop screens */ @media (min-width: 1200px) { .card img { height: 250px !important; /* Further increase the height on very large screens */ } } /* Shine effect */ .card::before { content: ""; position: absolute; top: 0; left: -100%; /* Start the shine effect from outside the left side */ width: 100%; height: 100%; background: linear-gradient(80deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%); transform: skewX(-20deg); /* Skew to achieve the 80-degree angle effect */ transition: left 0.3s ease-in-out; /* Smooth transition for the shine movement */ pointer-events: none; /* Make sure the shine doesn't interfere with interactions */ } /* Shine effect on hover */ .card:hover::before { left: 100%; /* Move the shine across the card image on hover */ } /* Card text styles */ .card-text-bottom { position: absolute; bottom: 0px; left: 0; right: 0; text-align: center; color: #E8D8C4; /* Change text color if needed */ background-color: #561C24; /* Optional: Background to improve text visibility */ padding: 5px 0; } .card-img, .card-img-top { border-top-left-radius: 0px; border-top-right-radius: 0px; border-radius: 0px; } .card-text-bottom p { margin: 0; font-size: 14px; /* Adjust font size if necessary */ font-weight: 500; text-transform: uppercase; } .tutor { position: relative; width: 100%; /* Ensure it takes full width of its container */ overflow: hidden; transition: background-color 0.3s ease, box-shadow 0.3s ease; } /* Ambient light effect when video is playing */ .tutor.playing { background: rgba(255, 255, 255, 0.1); /* Soft light effect */ box-shadow: 0px 0px 50px 20px rgba(255, 255, 255, 0.3); /* Glowing light effect */ } #introVideo { width: 100%; height: 90%; object-fit: cover; /* This ensures the video covers the entire element area */ } /* For tablet and desktop screens */ @media (min-width: 768px) { .tutor { height: 500px; /* Set the height based on your requirement */ } #introVideo { height: 100%; } } /* Style for the Payment Section */ .payment { margin-top: 0%; width: 100%; background-color: #ffffff00; /* Set background color for the container */ padding: px 0; text-align: center; overflow: hidden; /* Hide anything that goes beyond the container */ } /* Marquee Effect Container */ .payment-marquee { display: flex; justify-content: center; align-items: center; animation: marquee 15s linear infinite; } /* Adjust payment logo styles to remove background */ .payment-logo { height: 60px; /* Increased height */ width: auto; /* Maintain aspect ratio */ margin: 0 30px; object-fit: contain; background: none; /* Ensure no background color */ display: block; /* Ensure images are displayed as block elements */ } /* Marquee Animation */ @keyframes marquee { 0% { transform: translateX(100%); /* Start from right */ } 100% { transform: translateX(-100%); /* Move to the left */ } } .container { width: 100%; margin: 0 auto; } /* Banner Section */ .banner { width: 100%; height: 500px; overflow: hidden; position: relative; margin-top: 1px; } .banner img { width: 100%; height: 100%; object-fit: cover; position: absolute; opacity: 0; transition: opacity 1s ease-in-out; } .banner img.active { opacity: 1; } /* Contact Section */ .contact-section { display: flex; gap: 0; margin-top: 10px; width: 100%; } .col { background: #ffffff00; color: #000; padding: 20px; flex: 1; box-shadow: none; } h2 { font-size: 2rem; font-weight: bold; color: #561C24 !important; margin-bottom: 20px; } .contact-form input, .contact-form textarea { width: 100%; padding: 15px; margin-bottom: 15px; border: 0.1px solid #561C24; background-color: #ffffff29; color: #000; font-size: 1rem; outline: none; } .contact-form button { width: 100%; padding: 15px; background-color: #561C24; color: #E8D8C4; border: none; cursor: pointer; font-size: 1.1rem; } .contact-info p { font-size: 1.1rem; margin-bottom: 15px; line-height: 1.8; } .contact-info p strong { color: #000; } /* Additional Information Section */ .about-section { background-color: #561C24; padding: 40px 20px; text-align: center; } .about-section h2 { font-size: 2.5rem; font-weight: bold; margin-bottom: 20px; color: #C7B7A3 !important; } .about-section p { font-size: 1.1rem; line-height: 1.8; max-width: 800px; margin: 0 auto; text-align: justify; color: #E8D8C4; } /* Review Section */ .reviews-container { margin-top: 20px; display: flex; justify-content: center; width: 100%; position: relative; flex-direction: column; } .review-card { background: #ffffff00; padding: 20px; width: 100%; border: 0px solid #ffffff; box-shadow: #561C24; opacity: 0; transition: opacity 1s ease-in-out; text-align: left; display: flex; gap: 15px; align-items: center; position: absolute; left: 0; flex-direction: row; /* Ensure the items are aligned horizontally */ } .review-card.active { opacity: 1; position: relative; } .review-card h3 { font-size: 1.5rem; margin-bottom: 10px; color: #007bff; } .review-card p { font-size: 1.1rem; color: #333; margin-bottom: 15px; } .stars { margin-bottom: 15px; } .stars i { color: #561C24; } /* Media Queries */ @media (max-width: 768px) { .contact-section { flex-direction: column; } .col { width: 100%; margin-bottom: 20px; } .contact-form input, .contact-form textarea { font-size: 1rem; } .contact-form button { font-size: 1.1rem; } } @media (max-width: 480px) { .banner { height: 300px; } .gallery { height: 200px; } } /* Default margin between cards for desktop and tablets */ .col-4 { margin-bottom: 15px; /* Adjust as needed */ } .no-orders-container { display: flex; flex-direction: column; align-items: center; /* Centers items horizontally */ justify-content: center; /* Centers items vertically */ text-align: center; /* Make the container take full viewport height */ } .no-orders-image { width: auto; /* Adjust the size of the image */ height: auto; margin-bottom: 15px; /* Space between the image and the text */ } .no-orders-container p { font-size: 1.2rem; color: #333; } /* Mobile-specific styles */ @media (max-width: 768px) { .no-orders-container { padding: 20px; /* Add some padding to avoid content touching the edges */ text-align: center; /* Ensure the text is centered */ } .no-orders-image { width: 300px; /* Adjust the image size for smaller screens */ height: auto; /* Maintain the image aspect ratio */ margin-bottom: 10px; /* Reduce margin for tighter spacing */ } .no-orders-container p { font-size: 1rem; /* Slightly smaller font for mobile */ color: #555; /* Slightly lighter text color for better readability */ } } /* For mobile devices (default) */ .card img { height: 150px; width: 100%; object-fit: cover; } /* For tablet and desktop devices (min-width: 768px) */ @media (min-width: 768px) { .card img { height: 300px !important; /* Increase card height for tablet and desktop */ } } /* Optionally, adjust the height for very large desktop screens */ @media (min-width: 1200px) { .card img { height: 250px !important; /* Further increase the height on very large screens */ } } /* General Styles */ header { background-color: #00000000; color: #561C24; text-align: center; padding: 20px; } h1 { margin: 0; font-size: 24px; } main { padding: 20px; position: relative; } /* Order List Scrollable Container */ #order-list { max-height: 600px; /* Set a maximum height for the orders container */ overflow-y: auto; /* Enable vertical scrolling when there are more orders than fit */ padding-right: 10px; /* Add some padding for the scrollbar */ } /* Order Item Styles */ .order-item { background-color: rgba(255, 255, 255, 0); margin-bottom: 20px; position: relative; padding: 15px; } /* Updated Horizontal Swiper Styles */ .item-card-container { display: flex; overflow-x: scroll; /* Enable horizontal scrolling */ scroll-snap-type: x mandatory; /* Snap to cards horizontally */ scrollbar-width: none; /* Hide scrollbar for Firefox */ -ms-overflow-style: none; /* Hide scrollbar for Internet Explorer and Edge */ width: 100%; scroll-behavior: smooth; position: relative; } /* Hide scrollbar for Chrome, Safari, and Opera */ .item-card-container::-webkit-scrollbar { display: none; } .item-card { flex: 0 0 100%; /* One card takes full width */ scroll-snap-align: center; /* Snap to center */ display: flex; max-width: 100%; margin-right: 0; transition: transform 0.3s ease; background-color: #ffffff00; height: 300px; /* Adjusted height for mobile devices */ flex-direction: row; /* Keep the layout in a row */ } /* Image Styles */ .item-card .item-image { flex: 0 0 50%; /* Set to 50% of the container width */ height: 100%; /* Ensure it takes full height */ overflow: hidden; /* Hide any overflow */ position: relative; } .item-card .item-image img { width: 100%; /* Take full width of the parent container */ height: 100%; /* Take full height of the parent container */ object-fit: cover; /* Make sure the image covers the entire area */ } /* Item Details */ .item-card .item-details { flex: 1; display: flex; flex-direction: column; justify-content: center; padding-left: 15px; } .item-card .item-details p { font-size: 14px; margin: 5px 0; color: #561C24; } .h3, h3 { font-size: calc(1.3rem + .6vw); color: #561C24 !important; } /* Download Button */ .download-btn { padding: 8px 15px; background-color: #561C24; color: #E8D8C4; border: none; cursor: pointer; margin-top: 10px; text-align: center; width: 100%; font-size: 14px; } .download-btn:hover { background-color: #2980b9; } /* Navigation Buttons (Left and Right) */ .nav-buttons { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; display: none; /* Hide by default */ font-size: 24px; color: #fff; /* White icon color */ cursor: pointer; background-color: rgba(0, 0, 0, 0.5); padding: 15px; /* Adjust padding for a round button */ border-radius: 50%; /* Make the button round */ width: 50px; /* Set a fixed width */ height: 50px; /* Set a fixed height */ text-align: center; line-height: 20px; /* Vertically center the icon */ } .nav-buttons.left { left: 10px; } .nav-buttons.right { right: 10px; } .nav-buttons i { color: #fff; } /* Responsive Styling */ /* Mobile Devices (max-width: 768px) */ @media (max-width: 768px) { .item-card { flex-direction: row; align-items: center; width: 100%; max-width: 100%; padding: 0px; margin: 0; height: 210px; /* Reduced height for mobile */ } .item-card .item-image { flex: 0 0 40%; margin-right: 15px; max-width: 150px; height: 200px; } .item-card .item-details { flex: 1; display: flex; flex-direction: column; justify-content: center; } .item-card img { width: 100%; height: 150px; /* Reduced height */ object-fit: cover; } .download-btn { margin-top: 10px; padding: 10px 15px; } h1 { font-size: 20px; } /* Right border for mobile and tablet views */ .item-card { border-right: 1px solid #ddd; } } /* Tablets (min-width: 768px and max-width: 1024px) */ @media (min-width: 768px) and (max-width: 1024px) { .item-card { flex: 0 0 48%; /* Two cards per row */ margin-right: 15px; } /* Right border for tablet views */ .item-card { border-right: 1px solid #ddd; } } /* Desktop (min-width: 1024px) */ @media (min-width: 1024px) { .item-card { flex: 0 0 48%; /* Two cards per row */ margin-right: 15px; } /* Hide right border on desktop */ .item-card { border-right: none; } /* Show navigation buttons only on desktop */ .nav-buttons { display: block; } } /* General Styling */ #review-container { display: grid; grid-template-columns: 1fr; /* Single column layout for mobile */ gap: 20px; /* Space between image and review section */ max-width: 1200px; margin: 20px auto; } #image-section { text-align: center; } #review-image { width: 100%; max-width: auto; /* Adjust the size as needed */ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Optional shadow to give the image some separation */ } #review-section { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; padding: 20px; } #star-rating { display: flex; justify-content: flex-start; font-size: 30px; color: #000000; cursor: pointer; margin-bottom: 15px; } #star-rating .star.selected { color: #561C24; } #review-text { width: 100%; height: 120px; padding: 10px; border: 0px solid #ddd; font-size: 16px; resize: vertical; box-sizing: border-box; margin-bottom: 15px; background-color: #f5e6d4; } #submit-review { padding: 12px 20px; background-color: #561C24; color: #E8D8C4; border: none; font-size: 16px; cursor: pointer; transition: background-color 0.3s ease; display: inline-block; } #submit-review:hover { background-color: #fff385; color: #000; } #reviews-display { margin-top: 30px; border-top: 2px solid #ddd; padding-top: 20px; } /* Media Queries for Tablet and Desktop Views */ @media (min-width: 768px) { #review-container { grid-template-columns: 1fr 1fr; /* Two-column layout for tablet and desktop */ } } /* Mobile Styles (default layout) */ @media (max-width: 767px) { #review-container { grid-template-columns: 1fr; /* Single column layout for mobile */ } #review-image { width: 100%; max-width: none; } } /* Section Styling */ .class { position: relative; width: 100%; height: 80vh; /* Make the section full screen */ overflow: hidden; margin-bottom: 0%; } /* Video container to hold and control video display */ .video-container { position: absolute; top: 0; left: 0; width: 100%; height: 70%; z-index: -1; /* Ensure video is in the background */ } /* Make the video fill the section and keep the aspect ratio */ .banner-video { object-fit: cover; /* Ensures the video covers the whole section */ width: 100%; height: 100%; } /* Overlay for text content */ .overlay { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: white; text-align: center; padding: 20px; z-index: 1; /* Place text above video */ } .overlay h1 { font-size: 3rem; font-weight: bold; } .overlay p { font-size: 1.2rem; margin-top: 10px; } /* Responsive Styling */ @media (max-width: 768px) { .overlay h1 { font-size: 2rem; /* Make text smaller on smaller screens */ } /* Video container to hold and control video display */ .video-container { position: absolute; top: 0; left: 0; width: 100%; height: 50%; z-index: -1; /* Ensure video is in the background */ } /* Section Styling */ .class { position: relative; width: 100%; height: 50vh; /* Make the section full screen */ overflow: hidden; } .overlay p { font-size: 1rem; } }/* Default Style for the .view-btn */ .view-btn { background: none; /* Remove the background */ border: none; /* Remove border */ color: #561C24; /* Set text color (you can change this) */ text-decoration: none; /* Underline the text to make it look like a link */ cursor: pointer; /* Make it look clickable */ font-size: 1rem; /* Adjust the font size if needed */ margin-left: 0% !important; /* Adjust margin for smaller screens */ } /* Media Query for screens 768px and up (Tablets and small desktops) */ @media (max-width: 768px) { .view-btn { font-size: 0.9rem; /* Slightly smaller font size */ margin-left: 0% !important;/* Adjust margin for smaller screens */ } /* Style for the image inside the pop-up */ .popup-image { max-width: 90vw; /* 90% of viewport width */ max-height: 90vh; /* 90% of viewport height */ object-fit: contain; /* Preserve aspect ratio */ border: 0px solid #ffffff; border-radius: 10px; min-width: 250px; /* Minimum width of 150px */ min-height: 250px; /* Minimum height of 150px */ max-width: 500px; max-height: 500px; overflow-x: hidden; } } /* Media Query for screens 576px and up (Small devices like phones in landscape) */ @media (max-width: 576px) { .view-btn { font-size: 0.9rem; /* Smaller font size for very small screens */ margin-left: 0% !important;/* Adjust margin for small screens */ } /* Style for the image inside the pop-up */ .popup-image { max-width: 90vw; /* 90% of viewport width */ max-height: 90vh; /* 90% of viewport height */ object-fit: contain; /* Preserve aspect ratio */ border: 0px solid #ffffff; border-radius: 10px; min-width: 250px !important; /* Minimum width of 150px */ min-height: 250px !; /* Minimum height of 150px */ max-width: 400px !; max-height: 400px !; overflow-x: hidden; } } /* Media Query for screens smaller than 576px (Phones in portrait) */ @media (max-width: 400px) { .view-btn { font-size: 0.75rem; /* Even smaller font size */ margin-left: 0% !important;/* Adjust margin for very small screens */ } /* Style for the image inside the pop-up */ .popup-image { max-width: 90vw; /* 90% of viewport width */ max-height: 90vh; /* 90% of viewport height */ object-fit: contain; /* Preserve aspect ratio */ border: 0px solid #ffffff; border-radius: 10px; min-width: 250px !important; /* Minimum width of 150px */ min-height: 250px !important; /* Minimum height of 150px */ max-width: 500px; max-height: 500px; overflow-x: hidden; } } /* Style for the image pop-up */ .image-popup { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); display: flex; justify-content: center; align-items: center; z-index: 1000; overflow-x: hidden; } /* Style for the image inside the pop-up */ .popup-image { max-width: 80vw; /* 90% of viewport width */ max-height: 50vh; /* 90% of viewport height */ object-fit: contain; /* Preserve aspect ratio */ border: 0px solid #ffffff; border-radius: 10px; min-width: 500px; /* Minimum width of 150px */ min-height: 500px; /* Minimum height of 150px */ max-width: 600px; max-height: 800px !important; overflow-x: hidden; } /* Ensure body and html elements do not cause horizontal overflow */ html, body { /* Remove default padding */ overflow-x: hidden; /* Prevent horizontal scrolling */ /* Allow vertical scrolling */ } /* Form Container */ .form-container { max-width: 1200px; margin: auto; padding: 40px; background-color: #E8D8C4; border-radius: 8px; } h2 { margin-bottom: 30px; font-weight: bold; } /* Input Fields and Labels */ .form-label { font-size: 1rem; font-weight: bold; margin-bottom: 8px; color: #495057; } .form-control { height: 40px; border-radius: 8px; font-size: 1rem; padding: 10px; border: 1px solid #ced4da; } .form-control:focus { border-color: #561C24; box-shadow: #ff0c2c; } .description { font-size: 14px; color: #561C24; text-align: center; margin-top: 10px; } .btn{ background-color: #561C24; color:#E8D8C4 ; } .btn:hover { background-color: #000000; transform: translateY(-2px); color: wheat; } .btn:focus { outline: none; } /* Responsive Form Styling */ @media (max-width: 767px) { .form-label { display: block; text-align: left; } .form-control { display: block; width: 100%; } /* Form Container */ .form-container { max-width: 1000px; margin: auto; padding: 20px; background-color: #E8D8C4; border-radius: 8px; } } .custom-padding { padding: 50px; } /* For mobile view (typically 600px and below) */ @media (max-width: 600px) { .custom-padding { padding: 10px; } } /* For tablet view (between 600px and 1024px) */ @media (min-width: 601px) and (max-width: 1024px) { .custom-padding { padding: 50px; } } /* For desktop view (1025px and above) */ @media (min-width: 1025px) { .custom-padding { padding: 50px; } } .upload-container { width: 100%; margin: 20px 0; } .upload-zone { border: 2px dashed #e2e8f0; max-height: max-content; border-radius: 10px; padding: 2rem; text-align: center; background-color: #f8fafc; cursor: pointer; transition: all 0.3s ease; } .upload-zone:hover, .upload-zone.drag-over { border-color: #3b82f6; background-color: #eff6ff; } .upload-icon { width: 48px; height: 48px; margin: 0 auto 1rem; color: #64748b; } .upload-text { margin-bottom: 0.5rem; color: #1e293b; font-size: 1rem; font-weight: 500; } .upload-subtext { color: #64748b; font-size: 0.875rem; } .file-input { display: none; } .preview-container { margin-top: 1rem; display: none; padding: 1rem; background-color: white; border: 1px solid #e2e8f0; border-radius: 8px; } .preview-content { display: flex; align-items: center; gap: 1rem; } .preview-image { width: 60px; height: 60px; border-radius: 6px; object-fit: cover; } .preview-info { flex: 1; } .preview-name { font-weight: 500; color: #1e293b; margin-bottom: 0.25rem; } .preview-size { color: #64748b; font-size: 0.875rem; } .remove-button { padding: 0.5rem; color: #ef4444; border: none; background: none; cursor: pointer; border-radius: 6px; transition: background-color 0.2s; } .remove-button:hover { background-color: #fee2e2; } /* Modern Alert Styles */ .alert { position: fixed; top: 20px; left: 50%; transform: translateX(-50%); background-color: #561C24; /* Dark Red background for error */ color: white; padding: 14px 24px; border-radius: 12px; /* Soft rounded corners */ display: flex; align-items: center; justify-content: space-between; max-width: 450px; width: 100%; z-index: 1000; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); font-size: 15px; font-weight: 500; transition: transform 0.4s ease-in-out, opacity 0.4s ease; animation: slideIn 0.4s ease-out; } /* Hide Alert */ .alert.hidden { transform: translateY(-100%); opacity: 0; } /* Show Alert */ .alert.visible { transform: translateY(0); opacity: 1; } /* Close Button */ .close-btn { background: none; border: none; color: white; font-size: 18px; cursor: pointer; font-weight: 600; padding: 6px 12px; margin-left: 15px; border-radius: 50%; transition: background-color 0.3s ease; } .close-btn:hover { background-color: rgba(255, 255, 255, 0.3); } /* Alert Text Styling */ .alert p { margin: 0; font-size: 16px; line-height: 1.4; flex-grow: 1; max-width: 85%; } /* Optional: Animation for smooth entrance */ @keyframes slideIn { 0% { transform: translateY(-100%); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } } /* Responsive Design */ @media (max-width: 480px) { .alert { width: 90%; padding: 12px 20px; } } /* Modern Style for the Description Box */ .description-box { padding: 0px; color: #E8D8C4; border-radius: 0px; background-color: #561C24; } .description-box h4 { color: #E8D8C4; text-align: center; padding: 10px 0; letter-spacing: 1px; position: relative; /* For positioning the racing line underneath */ } /* Add a racing line effect below the h4 title */ .description-box h4::after { content: ''; position: absolute; bottom: -10px; /* Position the line just below the title */ left: 0; width: 100%; height: 0.5px; /* Thickness of the racing line */ background-color: #E8D8C4; /* Color of the racing line */ animation: raceLine 2s infinite linear; /* Animation for the racing line */ } /* Animation for the racing line */ @keyframes raceLine { 0% { left: -100%; } 50% { left: 100%; } 100% { left: -100%; } } /* Flexbox for a clean, responsive layout */ .description-row { display: flex; justify-content: space-between; gap: 20px; flex-wrap: nowrap; /* Prevent wrapping to a new line */ } /* Description items styling */ .description-item { flex: 1; padding: 20px; text-align: center; border-radius: 0px; position: relative; /* For positioning the animated lines */ overflow: hidden; /* To ensure the lines don't overflow the description box */ transition: all 0.3s ease; } /* Hover effect for description boxes */ .description-item:hover { transform: translateY(-5px); } /* Mobile View: Ensure single row layout without horizontal scroll */ @media (max-width: 767px) { .description-row { flex-wrap: nowrap; /* Keep it in a single row */ justify-content: space-around; /* Distribute items evenly */ } .description-item { flex: 1; padding: 15px; text-align: center; border-radius: 0px; min-width: 150px; /* Ensure a minimum width */ } }