/* Global Styles */ :root { --primary-color: #2563eb; --secondary-color: #1e40af; --light-bg: #f8fafc; --dark-bg: #1e293b; --text-color: #334155; } body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; color: var(--text-color); line-height: 1.6; padding-top: 140px; } /* Navigation */ .navbar { padding: 1rem 0; transition: all 0.3s ease; height: 90px; } .navbar .container { padding-left: 0; } @media (min-width: 1200px) { .navbar .container { padding-left: 0; max-width: 1320px; margin-left: 2rem; } } .navbar-brand img { transition: all 0.3s ease; } .nav-link { font-weight: 500; padding: 0.5rem 1rem !important; transition: color 0.3s ease; } /* Hero Section */ .hero-section { background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%); padding: 6rem 0; min-height: 80vh; display: flex; align-items: center; margin-top: 110px; } .hero-section h1 { color: var(--dark-bg); margin-bottom: 1.5rem; } .hero-buttons { margin-top: 2rem; } /* Features Section */ .features-section { background-color: white; } .feature-card { background: white; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); transition: transform 0.3s ease; } .feature-card:hover { transform: translateY(-5px); } .feature-card i { color: var(--primary-color); } /* Products Section */ .products-section .card { border: none; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; } .products-section .card:hover { transform: translateY(-5px); } /* CTA Section */ .cta-section { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; } /* Footer */ .footer { background-color: var(--dark-bg); } .footer a { color: #e2e8f0; text-decoration: none; transition: color 0.3s ease; } .footer a:hover { color: white; } /* Buttons */ .btn { padding: 0.75rem 1.5rem; border-radius: 0.5rem; font-weight: 500; transition: all 0.3s ease; } .btn-primary { background-color: var(--primary-color); border-color: var(--primary-color); } .btn-primary:hover { background-color: var(--secondary-color); border-color: var(--secondary-color); } .btn-outline-primary { color: var(--primary-color); border-color: var(--primary-color); } .btn-outline-primary:hover { background-color: var(--primary-color); color: white; } /* Responsive Design */ @media (max-width: 768px) { .hero-section { padding: 4rem 0; text-align: center; } .hero-section img { margin-top: 2rem; } .feature-card { margin-bottom: 1.5rem; } } /* Animations */ @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in { animation: fadeIn 1s ease-out; } /* About Page Styles */ .about-hero { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; padding: 8rem 0 6rem; margin-bottom: 2rem; } .about-content h2 { color: var(--dark-bg); margin-bottom: 1.5rem; } .about-content .card { border: none; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); margin-bottom: 2rem; transition: transform 0.3s ease; } .about-content .card:hover { transform: translateY(-5px); } .values-section .card { border: none; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; } .values-section .card:hover { transform: translateY(-5px); } .values-section i { color: var(--primary-color); } /* Products Page Styles */ .products-hero { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; padding: 8rem 0 6rem; margin-bottom: 2rem; } .product-section { padding: 5rem 0; } .product-section img { transition: transform 0.3s ease; } .product-section img:hover { transform: scale(1.05); } .features-list .feature-item { display: flex; align-items: center; padding: 0.5rem 0; } .features-list i { font-size: 1.2rem; margin-right: 1rem; } /* Pricing Cards */ .pricing-card { border: none; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; } .pricing-card:hover { transform: translateY(-10px); } .pricing-card.featured { border: 2px solid var(--primary-color); transform: scale(1.05); } .pricing-card.featured:hover { transform: scale(1.05) translateY(-10px); } .price { font-size: 2.5rem; color: var(--primary-color); font-weight: bold; } .price .currency { font-size: 1.5rem; vertical-align: super; } .price .period { font-size: 1rem; color: var(--text-color); font-weight: normal; } /* Updated Pricing Styles */ .pricing-highlight { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } .price-per-sub { font-size: 3.5rem; font-weight: bold; } .price-per-sub .currency { font-size: 2rem; vertical-align: super; } .price-per-sub .period { font-size: 1.2rem; font-weight: normal; } .pricing-features li { font-size: 1.1rem; } .pricing-card .ribbon { position: absolute; top: 20px; right: -30px; transform: rotate(45deg); background-color: var(--primary-color); color: white; padding: 5px 40px; font-size: 0.9rem; font-weight: 500; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .pricing-faq .accordion-button:not(.collapsed) { background-color: var(--light-bg); color: var(--primary-color); } .pricing-faq .accordion-button:focus { box-shadow: none; border-color: rgba(0, 0, 0, 0.125); } .pricing-faq .accordion-item { border-radius: 0.5rem; overflow: hidden; margin-bottom: 1rem; border: 1px solid rgba(0, 0, 0, 0.125); } .pricing-faq .accordion-button::after { background-size: 1.25rem; transition: all 0.2s ease; } /* Contact Page Styles */ .contact-hero { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; padding: 8rem 0 6rem; margin-bottom: 2rem; } .contact-info { padding: 2rem; background: white; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } .info-item { text-align: center; } .info-item h4 { color: var(--dark-bg); margin: 1rem 0; } .social-links { text-align: center; } .social-links a { color: var(--primary-color); transition: color 0.3s ease; } .social-links a:hover { color: var(--secondary-color); } .contact-form-wrapper { padding: 2rem; background: white; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } .form-control { border-radius: 0.5rem; padding: 0.75rem 1rem; border: 1px solid #e2e8f0; } .form-control:focus { border-color: var(--primary-color); box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.25); } .form-control.is-invalid { border-color: #dc3545; padding-right: calc(1.5em + 0.75rem); background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: right calc(0.375em + 0.1875rem) center; background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); } .form-control.is-invalid:focus { border-color: #dc3545; box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); } .invalid-feedback { display: none; width: 100%; margin-top: 0.25rem; font-size: 0.875em; color: #dc3545; } .is-invalid ~ .invalid-feedback { display: block; } .map-wrapper { border-radius: 1rem; overflow: hidden; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } /* Product Carousel Styles */ .carousel { border-radius: 1rem; overflow: hidden; background-color: #f8f9fa; margin-bottom: 2rem; } .carousel-item { height: 400px; background-color: #f8f9fa; } .carousel-item img { height: 100%; object-fit: contain; background-color: #f8f9fa; } .carousel-caption { background-color: rgba(0, 0, 0, 0.5); padding: 10px; border-radius: 5px; bottom: 20px; } .carousel-caption h5 { font-size: 1.25rem; margin-bottom: 0.5rem; } .carousel-indicators { margin-bottom: 1rem; } .carousel-control-prev, .carousel-control-next { width: 10%; opacity: 0; transition: opacity 0.3s ease; } .carousel:hover .carousel-control-prev, .carousel:hover .carousel-control-next { opacity: 1; } @media (max-width: 768px) { .carousel-item { height: 300px; } } @media (max-width: 576px) { .carousel-item { height: 250px; } } /* Product Tabs Styles */ .nav-tabs { border-bottom: 2px solid var(--primary-color); } .nav-tabs .nav-link { border: none; color: var(--text-color); font-weight: 500; padding: 1rem 2rem; transition: all 0.3s ease; border-radius: 0.5rem 0.5rem 0 0; } .nav-tabs .nav-link:hover { border: none; color: var(--primary-color); } .nav-tabs .nav-link.active { border: none; color: white; background-color: var(--primary-color); } .nav-tabs .nav-link i { font-size: 1.2rem; } .tab-content { padding: 2rem 0; } .tab-pane { animation: fadeIn 0.5s ease-in-out; } /* Pricing Page Styles */ .pricing-hero { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; padding: 8rem 0 6rem; margin-bottom: 2rem; } .main-pricing-section { background-color: var(--light-bg); } .feature-card { background: white; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; } .feature-card:hover { transform: translateY(-5px); } .feature-card i { color: var(--primary-color); } .feature-card ul li { color: var(--text-color); padding: 0.5rem 0; border-bottom: 1px solid rgba(0, 0, 0, 0.05); } .feature-card ul li:last-child { border-bottom: none; } .pricing-highlight { background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%); color: white; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transform: scale(1.05); transition: transform 0.3s ease; } .pricing-highlight:hover { transform: scale(1.07); } .price-per-sub { font-size: 3.5rem; font-weight: bold; line-height: 1.2; } .price-per-sub .currency { font-size: 2rem; vertical-align: super; margin-right: 0.25rem; } .price-per-sub .period { font-size: 1.2rem; font-weight: normal; opacity: 0.8; } .pricing-card { border: none; border-radius: 1rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; overflow: hidden; } .pricing-card.featured { border: 2px solid var(--primary-color); transform: scale(1.05); } .pricing-card .ribbon { position: absolute; top: 20px; right: -30px; transform: rotate(45deg); background-color: var(--primary-color); color: white; padding: 5px 40px; font-size: 0.9rem; font-weight: 500; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .pricing-faq .accordion-button:not(.collapsed) { background-color: var(--light-bg); color: var(--primary-color); box-shadow: none; } .pricing-faq .accordion-button:focus { box-shadow: none; border-color: rgba(0, 0, 0, 0.125); } .pricing-faq .accordion-item { border-radius: 0.5rem; overflow: hidden; margin-bottom: 1rem; border: 1px solid rgba(0, 0, 0, 0.125); } @media (max-width: 768px) { .pricing-highlight { transform: none; } .pricing-highlight:hover { transform: none; } .pricing-card.featured { transform: none; } .price-per-sub { font-size: 2.5rem; } .price-per-sub .currency { font-size: 1.5rem; } .price-per-sub .period { font-size: 1rem; } } /* Hero Carousel Styles */ #heroCarousel { border-radius: 1rem; overflow: hidden; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } #heroCarousel .carousel-item { height: 450px; background-color: var(--light-bg); } #heroCarousel .carousel-item img { height: 100%; object-fit: contain; } #heroCarousel .carousel-caption { background: rgba(0, 0, 0, 0.6); border-radius: 0.5rem; padding: 1rem; bottom: 2rem; } #heroCarousel .carousel-caption h5 { font-size: 1.25rem; margin-bottom: 0.5rem; font-weight: 600; } #heroCarousel .carousel-indicators { margin-bottom: 1rem; } #heroCarousel .carousel-control-prev, #heroCarousel .carousel-control-next { width: 10%; opacity: 0; transition: opacity 0.3s ease; } #heroCarousel:hover .carousel-control-prev, #heroCarousel:hover .carousel-control-next { opacity: 0.8; } @media (max-width: 768px) { #heroCarousel .carousel-item { height: 350px; } #heroCarousel .carousel-caption { padding: 0.5rem; bottom: 1rem; } #heroCarousel .carousel-caption h5 { font-size: 1rem; margin-bottom: 0.25rem; } #heroCarousel .carousel-caption p { font-size: 0.875rem; } }