/* Include Roboto Bold */ @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@700&display=swap'); /* Resetting margin and padding for the entire page */ * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Roboto', sans-serif; /* Apply Roboto Bold to everything */ font-weight: 700; /* Ensure bold styling */ } /* Body */ html, body { height: 100%; width: 100%; } body { background-color: #2a1a61; /* Dark purple background */ color: white; padding-top: 10px; /* Adjusted for thinner top bar */ } /* Navbar */ .navbar { background-color: #2a1a61; /* Dark purple background */ padding: 2px 20px; /* Reduced padding for an even thinner top bar */ display: flex; align-items: center; position: relative; /* Changes from fixed to relative */ z-index: 100; /* Lower z-index to allow sidebar to overlap it */ } /* Position hamburger on the left side of the navbar (20% from the left) */ .hamburger { display: flex; flex-direction: column; gap: 5px; cursor: pointer; width: 20px; height: 17px; position: absolute; left: 25%; /* Hamburger icon now starts at 20% */ top: 40%; transform: translateY(-50%); /* Vertically center the hamburger icon */ transition: transform 0.3s ease, opacity 0.3s ease; /* Smooth effect on hover */ } /* Hover effect for the hamburger menu */ .hamburger:hover { opacity: 0.8; /* Make it semi-transparent */ } /* Hamburger Menu */ .hamburger span { width: 100%; height: 4px; background-color: white; transition: background-color 0.3s ease; /* Smooth color change on hover */ } .hamburger:hover span { background-color: #f4c542; /* Change bar color to gold on hover */ } /* Navbar brand (logo and title) positioning */ .navbar-brand { display: flex; align-items: center; margin-left: 410%; /* Logo and title will start from 25% of the width (immediately after hamburger) */ } .navbar-brand img { height: 30px; /* Adjusted logo size */ margin-right: 5px; margin-bottom: 10px; } .navbar-brand h1 { font-size: 20px; /* You can adjust this size if needed */ color: white; white-space: nowrap; /* Prevent the text from wrapping */ margin-left: 0px; /* Adjust spacing between the logo and the title */ margin-bottom: 10px; } /* Sidebar (Hamburger menu) */ .sidebar { position: fixed; top: 0; left: -250px; /* Hidden initially */ width: 250px; height: 100%; background-color: #1f1044; /* Darker purple for the sidebar */ padding-top: 20px; /* Add some padding to top */ transition: left 0.3s ease-in-out; z-index: 1050; /* Ensure sidebar is above the background blur */ border-right: 2px solid #f4c542; /* Add the line on the right side */ } /* Sidebar Header (Logo + Title) */ .sidebar-header { display: flex; align-items: center; padding: 10px; margin-bottom: 30px; /* Space below the logo/title section */ } .sidebar-header .logo { height: 40px; /* Adjust size of the logo */ margin-right: 10px; /* Space between the logo and the title */ } .sidebar-header .sidebar-title { font-size: 22px; color: white; } /* Sidebar Content (List of Pages) */ .sidebar-content ul { list-style: none; padding: 0; } .sidebar-content ul li { margin-bottom: 15px; /* Spacing between list items */ } .sidebar-content ul li a { text-decoration: none; color: #fff; font-size: 18px; /* Adjust font size */ padding: 15px; /* Padding around the link text */ display: block; transition: background-color 0.3s; } .sidebar-content ul li a:hover { background-color: #f4c542; /* Gold hover effect */ } /* Active Sidebar (when opened) */ .sidebar.active { left: 0; /* Show sidebar */ } /* Active Sidebar Link */ .sidebar-content ul li.active a { background-color: rgba(244, 197, 66, 0.63); /* Semi-transparent gold */ } /* Sidebar hover effect for links */ .sidebar-content ul li a:hover { background-color: #f4c542; /* Solid gold on hover */ } /* Optional: Adjust the active link appearance for accessibility */ .sidebar-content ul li.active a:hover { background-color: rgba(244, 197, 66, 0.6); /* Slightly stronger hover effect on active link */ } .hero-terms { background-color: #1f1044; /* Slightly different purple for contrast */ text-align: center; padding: 20px 350px; padding-top: 25px; padding-bottom: 25px; } .hero-terms p { color: #fff; font-size: 11px; } .store-terms { background-color: #2a1a61; /* Slightly different purple for contrast */ text-align: center; padding: 20px 350px; } /* Hero Section */ .hero { background-color: #1f1044; /* Slightly different purple for contrast */ text-align: center; padding-top: 40px; padding-bottom: 40px; /* Increased padding below to ensure space after the button */ } .hero h2 { font-size: 2.5rem; color: #f4c542; margin-bottom: 15px; /* Space between heading and paragraph */ } .hero p { font-size: 1.2rem; margin: 25px 0 40px; /* Increased margin for more space between paragraph and button */ line-height: 1.8; margin-bottom: 30px; } .hero .btn-primary { background-color: #f4c542; color: #2a1a61; padding: 8px 17px; text-decoration: none; border-radius: 8px; margin-bottom: 50px; /* Adds space directly beneath the button */ transition: background-color 0.2s ease-in-out; } .btn-primary:hover { background-color: #bd9507; /* Darker yellow on hover */ } /* Description Section */ .description { text-align: center; padding: 60px 20px; background-color: #1f1044; } .description-content { max-width: 800px; /* Limit the width */ margin: 0 auto; /* Center the content */ } .description h2 { font-size: 2.5rem; color: #f4c542; margin-bottom: 15px; } .description p { font-size: 1.2rem; margin: 25px 0 40px; line-height: 1.8; margin-bottom: 15px; } /* Store Section */ .store { padding: 80px 20px; text-align: center; background-color: #2a1a61; /* Original purple for contrast */ } .store h2 { font-size: 2rem; color: #f4c542; margin-bottom: 20px; } .store p { font-size: 1.2rem; color: #fff; margin-bottom: 25px; } .product-grid { display: flex; gap: 30px; flex-wrap: wrap; justify-content: center; max-width: 1200px; /* Limit the maximum width */ margin: 0 auto; /* Center the grid horizontally */ padding: 0 20px; /* Optional: Add horizontal padding for smaller screens */ } .static-terms-info { background-color: #1f1044; border-radius: 8px; padding: 20px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); margin-top: 30px; margin-bottom: 30px; transition: transform 0.2s; } .static-terms-info:hover { transform: scale(1.01); } .static-terms-info h2 { font-size: 1.5em; color: #f4c542; margin-bottom: 10px; } .static-terms-info p { font-size: 1em; color: #fff; line-height: 1.6; } .terms-info { background-color: #2a1a61; border-radius: 8px; padding: 20px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); margin-top: 5px; margin-bottom: 5px; } .terms-info h2 { font-size: 1.5em; color: #f4c542; margin-bottom: 10px; } .terms-info p { font-size: 1em; color: #fff; line-height: 1.6; } .static-product-card { background-color: #1f1044; /* Darker purple for product cards */ padding: 20px; border-radius: 10px; text-align: center; width: 260px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); transition: transform 0.2s; } .static-product-card:hover { transform: scale(1.02); } .static-product-card img { width: 45%; border-radius: 15px; } .static-product-card h3 { margin-top: 10px; color: #f4c542; } .static-product-card p { margin: 10px 0; font-size: 17px; } .static-btn-secondary { background-color: #f4c542; color: #2a1a61; padding: 6px 17px; text-decoration: none; border-radius: 5px; font-weight: bold; position: relative; top: 5px; margin-bottom: 20px; transition: background-color 0.2s ease-in-out; /* Smooth hover effect */ } .static-btn-secondary:hover { background-color: #bd9507; /* Darker yellow on hover */ } .product-card { background-color: #1f1044; /* Darker purple for product cards */ padding: 20px; border-radius: 10px; text-align: center; width: 260px; box-shadow: none; /* No shadow by default */ transition: box-shadow 0.2s ease-in-out, transform 0.2s ease-in-out; } .product-card:hover { transform: scale(1.02); } .product-card.selected { box-shadow: 0 0 8px 2px #f4c542; /* Gold glow when selected */ } .product-card img { width: 45%; border-radius: 15px; } .product-card h3 { margin-top: 10px; color: #f4c542; } .product-card p { margin: 10px 0; } .btn-secondary { cursor: pointer; /* Makes the cursor change to a hand on hover */ display: inline-block; /* Ensures it behaves like a button */ background-color: #f4c542; color: #2a1a61; padding: 6px 17px; text-decoration: none; border-radius: 5px; font-weight: bold; position: relative; top: 5px; margin-bottom: 5px; transition: background-color 0.2s ease-in-out; /* Smooth hover effect */ } .btn-secondary:hover { background-color: #bd9507; /* Darker yellow on hover */ } .success-btn-primary { background-color: #f4c542; color: #2a1a61; padding: 8px 17px; text-decoration: none; border-radius: 8px; margin-bottom: 50px; /* Adds space directly beneath the button */ transition: background-color 0.2s ease-in-out; } .success-btn-primary:hover { background-color: #bd9507; /* Darker yellow on hover */ } /* Footer */ footer { background-color: #2a1a61; color: white; text-align: center; padding: 20px; margin-top: 10px; } /* Benefits Section */ .benefits { background-color: #1f1044; color: white; text-align: center; padding: 60px 20px; } .benefits h2 { font-size: 2rem; color: #f4c542; margin-bottom: 20px; } .benefits p { font-size: 1.1rem; margin-bottom: 40px; line-height: 1.6; } .benefits-grid { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; } .benefit-item { flex: 1 1 calc(50% - 20px); background-color: #2a1a61; padding: 25px 20px 10px 20px; /* Add more padding to the top */ border-radius: 10px; text-align: center; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); transition: transform 0.2s ease-in-out; display: flex; /* Make the container a flexbox */ flex-direction: column; /* Align text vertically */ justify-content: flex-start; /* Vertically align to the top */ align-items: center; /* Horizontally center the content */ height: 105px; /* Reduced height */ } .benefit-item:hover { transform: scale(1.01); } .benefit-item h3 { color: #f4c542; margin-bottom: 10px; } .benefit-item p { color: #fff; } .checkout { text-align: center; background: #1f1044; padding: 50px; border-radius: 10px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); margin-top: 15px; } .checkout h2 { color: #f4c542; font-size: 35px; margin-top: 10px; } .checkout p { color: #f4c542; font-size: 25px; } #selected-bundle-info { font-size: 1.2em; margin-bottom: 25px; margin-top: 15px; color: #fff; } /* PayPal Button Section */ #paypal-button-section { display: none; /* Hidden by default */ text-align: center; /* Center-align content */ margin-top: 10px; /* Add space above the section */ } /* Default state when button is not ready */ #paypal-button-section .static-btn-secondary { background-color: #91792a; /* Disabled color */ color: #000; /* Black text */ border: none; border-radius: 5px; padding: 0.5rem 2rem; font-weight: bold; font-size: 1rem; cursor: not-allowed; margin-top: 10px; margin-bottom: 35px; font-family: 'Helvetica Neue', Arial, sans-serif; transition: background-color 0.2s ease-in-out; } /* State when button is enabled (ready for click) */ #paypal-button-section .static-btn-secondary.enabled { background-color: #FFD140; /* Active yellow color */ cursor: pointer; } /* Hover effect only when button is enabled */ #paypal-button-section .static-btn-secondary.enabled:hover { background-color: #bd9507; /* Darker yellow on hover */ } #paypal-button-section p { margin-bottom: 10px; } /* Email Section Styling */ #email-section { display: none; margin-top: 10px; text-align: center; padding: 20px; /* Add padding around the section */ } /* Email Section Styling for Desktop */ #email-section input[type="email"] { padding: 0.8rem; /* Add more padding for the email input */ width: 40% !important; /* Force width to 40% */ margin-top: 10px; margin-bottom: 15px; /* Add some space below the input */ border-radius: 5px; border: 2px solid #FFD140; /* Yellow border for consistency */ display: block; /* Ensure input is block-level to take full width of its parent */ margin-left: auto; /* Center the input horizontally */ margin-right: auto; } /* Error and Terms Validation Styling */ #email-section p { font-size: 0.8rem; color: #f4c542; margin-bottom: 5px; /* Space between paragraphs */ } #terms-section a { color: #FFD140; /* Set the link color */ text-decoration: none; /* Optional: Removes underline */ transition: color 0.2s ease-in-out; /* Use 'color' for the text color transition */ } #terms-section a:hover { color: #bd9507; /* Darken the color when hovered */ } /* Media Query for Mobile */ @media (max-width: 768px) { /* Header adjustments */ .navbar { display: flex; align-items: center; /* Vertically align all elements */ justify-content: center; /* Center logo and title horizontally */ padding: 10px; height: 60px; /* Maintain a consistent header height */ position: relative; } /* Hamburger icon adjustments */ .hamburger { position: absolute; left: 15px; /* Slightly left-aligned */ top: 50%; /* Center vertically */ transform: translateY(-50%); } /* Center logo and title side-by-side */ .navbar-brand { display: flex; align-items: center; /* Vertically align logo and title */ justify-content: center; /* Center horizontally */ margin: 0 auto; /* Center in the middle of the header */ } .navbar-brand img { height: 35px; /* Logo size */ margin-right: 10px; /* Space between logo and title */ position: relative; top: 2px; /* Slightly lower the logo */ } .navbar-brand h1 { font-size: 20px; /* Keep title size consistent */ margin: 0; /* Remove extra spacing */ line-height: 1; /* Adjust to balance height */ } /* Benefits section adjustments */ .benefits-grid { flex-direction: column; /* Stack the benefit items vertically */ gap: 10px; /* Reduce the gap between items */ } .benefit-item { flex: 1 1 100%; /* Full width for each item on mobile */ height: auto; /* Auto-adjust height for content */ padding: 25px 20px 0 20px; /* Reduced bottom padding for less gap */ } /* Make sure the parent container allows the input to expand */ #email-section { width: 100% !important; /* Ensure the parent takes full width */ text-align: center; /* Center the input within the section */ padding-left: 15px; /* Slight padding for responsiveness */ padding-right: 15px; /* Slight padding for responsiveness */ } /* Email Section Styling for Mobile */ #email-section input[type="email"] { width: 80% !important; /* Make email input 70% width on mobile */ max-width: 100% !important; /* Ensure it doesn’t overflow */ } /* Adjust hero-terms padding on mobile */ .hero-terms { padding: 20px 5%; /* Reduced padding for mobile */ } .hero-terms p { font-size: 14px; /* Adjust font size for readability on mobile */ } /* Adjust store-terms padding on mobile */ .store-terms { padding: 20px 5%; /* Reduced padding for mobile */ } /* Ensure text is centered for mobile */ .hero-terms, .store-terms { text-align: center; } /* Adjust hero h2 for mobile */ .hero h2 { max-width: 90%; /* Ensures the width is 90% of the screen */ margin: 0 auto; /* Centers the h2 element */ text-align: center; /* Ensures text is centered */ margin-bottom: 15px; /* Adds space beneath the h2 */ } /* Adjust hero p for mobile */ .hero p { max-width: 90%; /* Ensures the width is 90% of the screen */ margin: 0 auto; /* Centers the p element */ text-align: center; /* Ensures text is centered */ font-size: 14px; /* Adjust font size for readability */ margin-bottom: 20px; /* Adds space beneath the p */ } }