body { font-family: 'Baloo 2', Arial, sans-serif; background: linear-gradient(135deg, #f8e1ff 0%, #e1f0ff 100%); margin: 0; color: #3a2d4d; padding-top: 0; } .furry-header { background: linear-gradient(90deg, #b36fff 0%, #ff6fd8 100%); padding: 0.5rem 0; box-shadow: 0 2px 8px rgba(179, 111, 255, 0.1); position: sticky; top: 0; z-index: 1000; transition: all 0.3s ease; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } /* Sticky Navigation Scroll Effects */ .furry-header.scrolled { background: rgba(179, 111, 255, 0.95); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); box-shadow: 0 4px 20px rgba(179, 111, 255, 0.2); padding: 0.3rem 0; } .furry-header.scrolled .logo img { height: 40px; transition: height 0.3s ease; } .furry-header.scrolled nav a { font-size: 1rem; transition: font-size 0.3s ease; } .furry-header.scrolled .header-actions .btn { padding: 0.5rem 1.5rem; font-size: 1rem; transition: all 0.3s ease; } /* Navigation Progress Bar */ .nav-progress { position: absolute; bottom: 0; left: 0; height: 3px; background: linear-gradient(90deg, #ff6fd8 0%, #3813c2 100%); width: 0%; transition: width 0.3s ease; border-radius: 0 2px 2px 0; } /* Mobile Navigation */ .mobile-nav-toggle { display: none; background: none; border: none; color: white; font-size: 1.5rem; cursor: pointer; padding: 0.5rem; border-radius: 8px; transition: background 0.3s ease; } .mobile-nav-toggle:hover { background: rgba(255, 255, 255, 0.1); } .mobile-nav-toggle .hamburger-line { width: 25px; height: 3px; background: white; margin: 5px 0; transition: all 0.3s ease; border-radius: 2px; } .mobile-nav-toggle.active .hamburger-line:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); } .mobile-nav-toggle.active .hamburger-line:nth-child(2) { opacity: 0; } .mobile-nav-toggle.active .hamburger-line:nth-child(3) { transform: rotate(-45deg) translate(7px, -6px); } .container { max-width: 1200px; margin: 0 auto; padding: 0 2rem; } .nav-flex { display: flex; align-items: center; justify-content: space-between; position: relative; } .logo img { height: 48px; border-radius: 16px; background: #fff; padding: 4px; transition: all 0.3s ease; } .logo img:hover { transform: scale(1.05); box-shadow: 0 4px 12px rgba(255, 255, 255, 0.3); } nav { display: flex; align-items: center; gap: 1rem; } nav a { color: #fff; text-decoration: none; margin: 0 1rem; font-size: 1.1rem; font-weight: 700; transition: all 0.3s ease; position: relative; padding: 0.5rem 1rem; border-radius: 20px; } nav a:hover { color: #ffe6fa; background: rgba(255, 255, 255, 0.1); transform: translateY(-2px); } nav a.active { background: rgba(255, 255, 255, 0.2); color: #ffe6fa; } /* Navigation Underline Effect */ nav a::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background: #ffe6fa; transition: all 0.3s ease; transform: translateX(-50%); border-radius: 1px; } nav a:hover::after { width: 80%; } .header-actions { display: flex; align-items: center; gap: 1rem; } .header-actions .btn { margin-left: 1rem; transition: all 0.3s ease; } .furry-btn { background: linear-gradient(90deg, #ff6fd8 0%, #3813c2 100%); color: #fff; border: none; border-radius: 32px; padding: 0.7rem 2rem; font-size: 1.1rem; font-weight: 700; box-shadow: 0 2px 8px rgba(255, 111, 216, 0.15); cursor: pointer; transition: all 0.3s ease; position: relative; overflow: hidden; } .furry-btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s ease; } .furry-btn:hover::before { left: 100%; } .furry-btn:hover { background: linear-gradient(90deg, #3813c2 0%, #ff6fd8 100%); transform: translateY(-3px) scale(1.05); box-shadow: 0 8px 25px rgba(255, 111, 216, 0.3); } .furry-btn:active { transform: translateY(-1px) scale(1.02); } .furry-btn-outline { background: rgba(255, 255, 255, 0.1); color: #fff; border: 2px solid rgba(255, 255, 255, 0.3); border-radius: 32px; padding: 0.7rem 2rem; font-size: 1.1rem; font-weight: 700; margin-left: 1rem; transition: all 0.3s ease; backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); } .furry-btn-outline:hover { background: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.5); transform: translateY(-3px); box-shadow: 0 8px 25px rgba(255, 255, 255, 0.2); } .furry-btn-secondary { background: #fff; color: #ff6fd8; border: 2px solid #ff6fd8; border-radius: 32px; padding: 0.7rem 2rem; font-size: 1.1rem; font-weight: 700; margin-left: 1rem; transition: all 0.3s ease; } .furry-btn-secondary:hover { background: #ff6fd8; color: #fff; transform: translateY(-3px); box-shadow: 0 8px 25px rgba(255, 111, 216, 0.3); } .furry-main { padding: 2rem 0 4rem 0; } .hero { background: linear-gradient(135deg, #b36fff 0%, #ff6fd8 100%); color: #fff; border-radius: 32px; margin: 2rem auto; max-width: 900px; box-shadow: 0 4px 32px rgba(179, 111, 255, 0.15); padding: 3rem 2rem 2rem 2rem; text-align: center; } .hero .brand { color: #ffe6fa; font-weight: 900; letter-spacing: 2px; } .hero-actions { margin-top: 2rem; } .services { margin: 3rem auto; max-width: 1100px; text-align: center; } .service-cards { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem; margin-top: 2rem; } .service-card { background: #fff; border-radius: 24px; box-shadow: 0 2px 16px rgba(179, 111, 255, 0.08); padding: 2rem 1.5rem; width: 300px; transition: transform 0.2s, box-shadow 0.2s; } .service-card:hover { transform: translateY(-8px) scale(1.03); box-shadow: 0 8px 32px rgba(179, 111, 255, 0.18); } .service-card img { width: 80px; height: 80px; object-fit: contain; margin-bottom: 1rem; border-radius: 16px; background: #f8e1ff; padding: 8px; } .gallery-preview { margin: 3rem auto; max-width: 1100px; text-align: center; } .gallery-grid { display: flex; justify-content: center; gap: 1.5rem; margin: 2rem 0; } .gallery-grid img { width: 180px; height: 180px; object-fit: cover; border-radius: 24px; box-shadow: 0 2px 16px rgba(179, 111, 255, 0.08); } .cta { background: linear-gradient(90deg, #ff6fd8 0%, #b36fff 100%); color: #fff; border-radius: 32px; margin: 3rem auto 0 auto; max-width: 900px; box-shadow: 0 4px 32px rgba(255, 111, 216, 0.15); padding: 2rem 2rem 2.5rem 2rem; text-align: center; } .furry-footer { background: #b36fff; color: #fff; padding: 1.5rem 0; text-align: center; border-radius: 32px 32px 0 0; margin-top: 3rem; } .footer-links a { color: #ffe6fa; margin: 0 0.5rem; text-decoration: none; font-weight: 700; } .footer-links a:hover { text-decoration: underline; } @media (max-width: 900px) { .service-cards, .gallery-grid { flex-direction: column; align-items: center; } .service-card, .gallery-grid img { width: 90vw; max-width: 350px; } } /* Micro-Interaction: In den Warenkorb gelegt */ .cart-added-feedback { position: fixed; top: 80px; right: 40px; background: #ff6fd8; color: #fff; border-radius: 32px; padding: 1rem 2rem; font-size: 1.2rem; font-weight: 700; box-shadow: 0 4px 24px rgba(255, 111, 216, 0.18); z-index: 2000; opacity: 0; pointer-events: none; transform: translateY(-30px) scale(0.95); transition: opacity 0.3s, transform 0.3s; } .cart-added-feedback.show { opacity: 1; transform: translateY(0) scale(1.05); animation: pop-furry 0.7s cubic-bezier(.68,-0.55,.27,1.55); } @keyframes pop-furry { 0% { transform: translateY(-30px) scale(0.8); opacity: 0; } 60% { transform: translateY(10px) scale(1.1); opacity: 1; } 100% { transform: translateY(0) scale(1.05); opacity: 1; } } /* Furry-Style Lade-Spinner */ .furry-spinner { display: inline-block; width: 60px; height: 60px; position: relative; } .furry-spinner div { position: absolute; border: 6px solid #ff6fd8; opacity: 1; border-radius: 50%; animation: furry-spinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; border-color: #ff6fd8 transparent transparent transparent; } .furry-spinner div:nth-child(1) { animation-delay: -0.45s; } .furry-spinner div:nth-child(2) { animation-delay: -0.3s; } .furry-spinner div:nth-child(3) { animation-delay: -0.15s; } @keyframes furry-spinner { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .furry-form .form-group { margin-bottom: 1.5rem; } .furry-form label { font-weight: 700; color: #b36fff; display: block; margin-bottom: 0.3rem; } .furry-form input, .furry-form textarea { width: 100%; padding: 0.7rem 1rem; border-radius: 16px; border: 2px solid #e1f0ff; font-size: 1.1rem; transition: border-color 0.2s, box-shadow 0.2s; outline: none; background: #fff; margin-bottom: 0.2rem; } .furry-form input:focus, .furry-form textarea:focus { border-color: #b36fff; box-shadow: 0 0 0 2px #ff6fd833; } .furry-form input.invalid, .furry-form textarea.invalid { border-color: #ff6f91; background: #fff0f6; } .furry-form input.valid, .furry-form textarea.valid { border-color: #6fff91; background: #f0fff6; } .furry-form .form-hint { font-size: 0.95rem; color: #ff6fd8; margin-left: 0.2rem; min-height: 1.2em; transition: color 0.2s; } .furry-form input.valid ~ .form-hint, .furry-form textarea.valid ~ .form-hint { color: #6fff91; } .furry-404 { max-width: 500px; margin: 4rem auto 0 auto; background: #fff; border-radius: 32px; box-shadow: 0 4px 32px rgba(179, 111, 255, 0.12); padding: 3rem 2rem 2.5rem 2rem; text-align: center; color: #b36fff; } .furry-404-emoji { font-size: 4rem; margin-bottom: 1rem; } .furry-404 h1 { font-size: 4rem; margin: 0.5rem 0 0.2rem 0; color: #ff6fd8; font-weight: 900; } .furry-404 h2 { font-size: 1.6rem; margin-bottom: 1rem; color: #3a2d4d; } .furry-404 p { font-size: 1.1rem; margin-bottom: 2rem; color: #3a2d4d; } .social-sharing { margin: 2rem 0 1rem 0; display: flex; align-items: center; gap: 0.7rem; background: linear-gradient(135deg, #f8e1ff 0%, #e1f0ff 100%); padding: 1.5rem; border-radius: 24px; box-shadow: 0 4px 16px rgba(179, 111, 255, 0.08); position: relative; overflow: hidden; } .social-sharing::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); transition: left 0.6s ease; } .social-sharing:hover::before { left: 100%; } .social-sharing span { font-weight: 700; color: #b36fff; margin-right: 0.5rem; font-size: 1.1rem; } .social-sharing .share-label { display: flex; align-items: center; gap: 0.5rem; font-weight: 700; color: #b36fff; margin-right: 1rem; } .social-sharing .share-label::before { content: '🌐'; font-size: 1.2rem; } .share-btn { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: #fff; box-shadow: 0 4px 12px rgba(179, 111, 255, 0.15); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); border: 2px solid transparent; cursor: pointer; text-decoration: none; position: relative; overflow: hidden; } .share-btn::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; background: rgba(255, 255, 255, 0.3); border-radius: 50%; transition: all 0.3s ease; transform: translate(-50%, -50%); } .share-btn:hover::before { width: 100%; height: 100%; } .share-btn svg { width: 24px; height: 24px; transition: transform 0.3s ease; position: relative; z-index: 1; } .share-btn:hover { transform: translateY(-4px) scale(1.1); box-shadow: 0 8px 25px rgba(179, 111, 255, 0.25); } .share-btn:hover svg { transform: scale(1.1); } /* Social Platform Specific Colors */ .share-btn.twitter { background: linear-gradient(135deg, #1da1f2 0%, #0d8bd9 100%); color: white; } .share-btn.twitter:hover { background: linear-gradient(135deg, #0d8bd9 0%, #1da1f2 100%); box-shadow: 0 8px 25px rgba(29, 161, 242, 0.4); } .share-btn.telegram { background: linear-gradient(135deg, #0088cc 0%, #0077b3 100%); color: white; } .share-btn.telegram:hover { background: linear-gradient(135deg, #0077b3 0%, #0088cc 100%); box-shadow: 0 8px 25px rgba(0, 136, 204, 0.4); } .share-btn.instagram { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); color: white; } .share-btn.instagram:hover { background: linear-gradient(45deg, #bc1888 0%, #cc2366 25%, #dc2743 50%, #e6683c 75%, #f09433 100%); box-shadow: 0 8px 25px rgba(220, 39, 67, 0.4); } .share-btn.facebook { background: linear-gradient(135deg, #1877f2 0%, #166fe5 100%); color: white; } .share-btn.facebook:hover { background: linear-gradient(135deg, #166fe5 0%, #1877f2 100%); box-shadow: 0 8px 25px rgba(24, 119, 242, 0.4); } .share-btn.whatsapp { background: linear-gradient(135deg, #25d366 0%, #20ba5a 100%); color: white; } .share-btn.whatsapp:hover { background: linear-gradient(135deg, #20ba5a 0%, #25d366 100%); box-shadow: 0 8px 25px rgba(37, 211, 102, 0.4); } .share-btn.pinterest { background: linear-gradient(135deg, #e60023 0%, #cc001f 100%); color: white; } .share-btn.pinterest:hover { background: linear-gradient(135deg, #cc001f 0%, #e60023 100%); box-shadow: 0 8px 25px rgba(230, 0, 35, 0.4); } .share-btn.linkedin { background: linear-gradient(135deg, #0077b5 0%, #006097 100%); color: white; } .share-btn.linkedin:hover { background: linear-gradient(135deg, #006097 0%, #0077b5 100%); box-shadow: 0 8px 25px rgba(0, 119, 181, 0.4); } .share-btn.email { background: linear-gradient(135deg, #ff6fd8 0%, #b36fff 100%); color: white; } .share-btn.email:hover { background: linear-gradient(135deg, #b36fff 0%, #ff6fd8 100%); box-shadow: 0 8px 25px rgba(255, 111, 216, 0.4); } .share-btn.copy { background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%); color: white; } .share-btn.copy:hover { background: linear-gradient(135deg, #5a6268 0%, #6c757d 100%); box-shadow: 0 8px 25px rgba(108, 117, 125, 0.4); } /* Share Success Animation */ .share-btn.copied { animation: shareSuccess 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55); } @keyframes shareSuccess { 0% { transform: scale(1); } 50% { transform: scale(1.2); } 100% { transform: scale(1); } } /* Mobile Responsive Social Sharing */ @media (max-width: 768px) { .social-sharing { flex-direction: column; gap: 1rem; padding: 1.5rem; } .social-sharing .share-label { margin-right: 0; margin-bottom: 0.5rem; } .share-btn { width: 44px; height: 44px; } .share-btn svg { width: 20px; height: 20px; } } @media (max-width: 480px) { .social-sharing { padding: 1rem; } .share-btn { width: 40px; height: 40px; } .share-btn svg { width: 18px; height: 18px; } } .newsletter-popup { display: none; position: fixed; left: 50%; bottom: 40px; transform: translateX(-50%); background: linear-gradient(135deg, #fff 0%, #f8e1ff 100%); border-radius: 32px; box-shadow: 0 8px 40px rgba(179, 111, 255, 0.25); padding: 2.5rem 3rem 2rem 3rem; z-index: 3000; min-width: 380px; max-width: 90vw; text-align: center; color: #b36fff; animation: newsletterSlideIn 0.8s cubic-bezier(.68,-0.55,.27,1.55); border: 2px solid rgba(179, 111, 255, 0.1); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .newsletter-popup.show { display: block; } .newsletter-popup.hide { animation: newsletterSlideOut 0.6s cubic-bezier(.68,-0.55,.27,1.55) forwards; } @keyframes newsletterSlideIn { 0% { transform: translateX(-50%) translateY(100px) scale(0.8); opacity: 0; } 100% { transform: translateX(-50%) translateY(0) scale(1); opacity: 1; } } @keyframes newsletterSlideOut { 0% { transform: translateX(-50%) translateY(0) scale(1); opacity: 1; } 100% { transform: translateX(-50%) translateY(100px) scale(0.8); opacity: 0; } } .newsletter-content { display: flex; flex-direction: column; align-items: center; gap: 1rem; } .newsletter-emoji { font-size: 3rem; margin-bottom: 0.5rem; animation: bounce 2s infinite; } @keyframes bounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-10px); } 60% { transform: translateY(-5px); } } .newsletter-text { font-size: 1.3rem; font-weight: 700; margin-bottom: 0.5rem; color: #3a2d4d; } .newsletter-subtitle { font-size: 1rem; color: #666; margin-bottom: 1.5rem; line-height: 1.4; } .newsletter-form { display: flex; gap: 0.8rem; width: 100%; justify-content: center; align-items: center; flex-wrap: wrap; } .newsletter-form input[type="email"] { padding: 0.8rem 1.2rem; border-radius: 20px; border: 2px solid #e1f0ff; font-size: 1.1rem; outline: none; width: 220px; transition: all 0.3s ease; background: #fff; box-shadow: 0 2px 8px rgba(179, 111, 255, 0.1); } .newsletter-form input[type="email"]:focus { border-color: #b36fff; box-shadow: 0 4px 16px rgba(179, 111, 255, 0.2); transform: translateY(-2px); } .newsletter-form input[type="email"]::placeholder { color: #999; font-style: italic; } .newsletter-form button { background: linear-gradient(135deg, #ff6fd8 0%, #b36fff 100%); color: white; border: none; border-radius: 20px; padding: 0.8rem 1.5rem; font-size: 1.1rem; font-weight: 700; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 16px rgba(255, 111, 216, 0.3); position: relative; overflow: hidden; } .newsletter-form button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); transition: left 0.5s ease; } .newsletter-form button:hover::before { left: 100%; } .newsletter-form button:hover { transform: translateY(-3px) scale(1.05); box-shadow: 0 8px 25px rgba(255, 111, 216, 0.4); } .newsletter-form button:active { transform: translateY(-1px) scale(1.02); } .newsletter-form button.loading { pointer-events: none; opacity: 0.7; } .newsletter-form button.loading::after { content: ''; position: absolute; top: 50%; left: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border: 2px solid transparent; border-top: 2px solid white; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .newsletter-close { position: absolute; top: 15px; right: 20px; background: rgba(179, 111, 255, 0.1); border: none; border-radius: 50%; width: 32px; height: 32px; font-size: 1.2rem; color: #b36fff; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; } .newsletter-close:hover { background: rgba(179, 111, 255, 0.2); color: #ff6fd8; transform: scale(1.1); } .newsletter-close:active { transform: scale(0.95); } /* Newsletter Success State */ .newsletter-success { background: linear-gradient(135deg, #25d366 0%, #20ba5a 100%); color: white; } .newsletter-success .newsletter-text { color: white; } .newsletter-success .newsletter-subtitle { color: rgba(255, 255, 255, 0.9); } .newsletter-success .newsletter-emoji { animation: confetti 0.6s ease; } @keyframes confetti { 0% { transform: scale(0) rotate(0deg); } 50% { transform: scale(1.2) rotate(180deg); } 100% { transform: scale(1) rotate(360deg); } } /* Newsletter Error State */ .newsletter-error { background: linear-gradient(135deg, #ff6f91 0%, #e74c3c 100%); color: white; } .newsletter-error .newsletter-text { color: white; } .newsletter-error .newsletter-subtitle { color: rgba(255, 255, 255, 0.9); } /* Newsletter Benefits */ .newsletter-benefits { display: flex; flex-direction: column; gap: 0.5rem; margin-top: 1rem; font-size: 0.9rem; color: #666; } .newsletter-benefits .benefit { display: flex; align-items: center; gap: 0.5rem; } .newsletter-benefits .benefit::before { content: '✨'; font-size: 1rem; } /* Mobile Responsive Newsletter */ @media (max-width: 768px) { .newsletter-popup { left: 20px; right: 20px; transform: none; min-width: auto; padding: 2rem 1.5rem 1.5rem 1.5rem; } .newsletter-form { flex-direction: column; gap: 1rem; } .newsletter-form input[type="email"] { width: 100%; max-width: 280px; } .newsletter-form button { width: 100%; max-width: 280px; } .newsletter-emoji { font-size: 2.5rem; } .newsletter-text { font-size: 1.2rem; } .newsletter-subtitle { font-size: 0.9rem; } } @media (max-width: 480px) { .newsletter-popup { left: 10px; right: 10px; padding: 1.5rem 1rem 1rem 1rem; } .newsletter-emoji { font-size: 2rem; } .newsletter-text { font-size: 1.1rem; } .newsletter-subtitle { font-size: 0.85rem; } } .product-list { display: flex; flex-wrap: wrap; gap: 2rem; justify-content: center; margin: 2rem 0 3rem 0; } .product-card { background: #fff; border-radius: 24px; box-shadow: 0 2px 16px rgba(179, 111, 255, 0.10); padding: 1.5rem 1.2rem 1.2rem 1.2rem; width: 270px; display: flex; flex-direction: column; align-items: center; transition: transform 0.2s, box-shadow 0.2s; position: relative; } .product-card:hover { transform: translateY(-8px) scale(1.03); box-shadow: 0 8px 32px rgba(179, 111, 255, 0.18); } .product-image { width: 180px; height: 180px; object-fit: cover; border-radius: 16px; margin-bottom: 1rem; background: #f8e1ff; box-shadow: 0 2px 8px rgba(179, 111, 255, 0.08); } .product-info { text-align: center; } .product-info h3 { margin: 0.5rem 0 0.2rem 0; color: #b36fff; font-size: 1.2rem; font-weight: 700; } .product-price { color: #ff6fd8; font-size: 1.1rem; font-weight: 700; margin-bottom: 1rem; } @media (max-width: 900px) { .product-list { flex-direction: column; align-items: center; } .product-card { width: 90vw; max-width: 350px; } } .product-detail-card { max-width: 700px; margin: 3rem auto 2rem auto; background: #fff; border-radius: 32px; box-shadow: 0 4px 32px rgba(179, 111, 255, 0.12); padding: 2.5rem 2rem 2rem 2rem; display: flex; flex-direction: column; align-items: center; color: #3a2d4d; } .product-detail-image { width: 320px; height: 320px; object-fit: cover; border-radius: 24px; margin-bottom: 2rem; background: #f8e1ff; box-shadow: 0 2px 16px rgba(179, 111, 255, 0.10); } .product-detail-info { width: 100%; text-align: center; } .product-detail-info h2 { color: #b36fff; font-size: 2rem; margin-bottom: 0.5rem; } .product-detail-price { color: #ff6fd8; font-size: 1.3rem; font-weight: 700; margin-bottom: 1rem; } .product-detail-desc { font-size: 1.1rem; margin-bottom: 1.5rem; } .product-detail-actions { display: flex; gap: 1rem; justify-content: center; margin-bottom: 1.5rem; } @media (max-width: 900px) { .product-detail-card { padding: 1.2rem 0.5rem; } .product-detail-image { width: 90vw; max-width: 320px; height: 40vw; max-height: 320px; } } .cart-list { display: flex; flex-direction: column; gap: 2rem; margin: 2rem 0 3rem 0; } .cart-item-card { background: #fff; border-radius: 24px; box-shadow: 0 2px 16px rgba(179, 111, 255, 0.10); padding: 1.5rem 1.2rem 1.2rem 1.2rem; display: flex; align-items: center; gap: 2rem; position: relative; } .cart-item-image { width: 100px; height: 100px; object-fit: cover; border-radius: 16px; background: #f8e1ff; box-shadow: 0 2px 8px rgba(179, 111, 255, 0.08); } .cart-item-info { flex: 1; } .cart-item-info h3 { margin: 0.5rem 0 0.2rem 0; color: #b36fff; font-size: 1.1rem; font-weight: 700; } .cart-item-price { color: #ff6fd8; font-size: 1.1rem; font-weight: 700; margin-bottom: 0.7rem; } .cart-item-qty { display: flex; gap: 1rem; align-items: center; } .cart-qty-input { width: 60px; padding: 0.5rem 0.7rem; border-radius: 12px; border: 2px solid #e1f0ff; font-size: 1rem; margin-right: 0.5rem; } .cart-summary { display: flex; align-items: center; justify-content: flex-end; gap: 1.5rem; margin-top: 2rem; font-size: 1.2rem; font-weight: 700; color: #b36fff; } .cart-total { color: #ff6fd8; font-size: 1.3rem; font-weight: 900; } @media (max-width: 900px) { .cart-item-card { flex-direction: column; align-items: flex-start; gap: 1rem; } .cart-summary { flex-direction: column; align-items: flex-end; gap: 0.7rem; } } .checkout-container { max-width: 900px; margin: 3rem auto 2rem auto; background: #fff; border-radius: 32px; box-shadow: 0 4px 32px rgba(179, 111, 255, 0.12); padding: 2.5rem 2rem 2rem 2rem; display: flex; gap: 3rem; flex-wrap: wrap; } .checkout-form { flex: 2; min-width: 260px; } .checkout-summary { flex: 1; min-width: 220px; background: #f8e1ff; border-radius: 24px; padding: 1.5rem 1rem; box-shadow: 0 2px 8px rgba(179, 111, 255, 0.08); margin-top: 1.5rem; height: fit-content; } .checkout-summary h3 { color: #b36fff; font-size: 1.2rem; margin-bottom: 1rem; } .checkout-summary ul { list-style: none; padding: 0; margin: 0 0 1rem 0; } .checkout-summary li { display: flex; justify-content: space-between; margin-bottom: 0.5rem; font-size: 1.05rem; } .checkout-total { color: #ff6fd8; font-size: 1.2rem; font-weight: 900; margin-top: 1rem; text-align: right; } @media (max-width: 900px) { .checkout-container { flex-direction: column; gap: 1.5rem; padding: 1.2rem 0.5rem; } .checkout-summary { margin-top: 0.5rem; } } .profile-card { max-width: 600px; margin: 3rem auto 2rem auto; background: #fff; border-radius: 32px; box-shadow: 0 4px 32px rgba(179, 111, 255, 0.12); padding: 2.5rem 2rem 2rem 2rem; text-align: center; color: #3a2d4d; } .profile-info { margin-bottom: 2rem; } .profile-orders { margin-bottom: 2rem; } .profile-orders ul { list-style: none; padding: 0; margin: 0; } .profile-orders li { background: #f8e1ff; border-radius: 16px; margin-bottom: 0.7rem; padding: 0.7rem 1rem; color: #b36fff; font-weight: 700; } /* Scroll to Top Button */ .scroll-to-top { position: fixed; bottom: 2rem; right: 2rem; background: linear-gradient(135deg, #b36fff 0%, #ff6fd8 100%); color: white; border: none; border-radius: 50%; width: 60px; height: 60px; font-size: 1.5rem; cursor: pointer; box-shadow: 0 4px 20px rgba(179, 111, 255, 0.3); transition: all 0.3s ease; opacity: 0; visibility: hidden; z-index: 999; } .scroll-to-top.show { opacity: 1; visibility: visible; } .scroll-to-top:hover { transform: translateY(-5px) scale(1.1); box-shadow: 0 8px 30px rgba(179, 111, 255, 0.4); } /* Mobile Responsive */ @media (max-width: 768px) { .mobile-nav-toggle { display: block; } nav { position: fixed; top: 100%; left: 0; right: 0; background: linear-gradient(90deg, #b36fff 0%, #ff6fd8 100%); flex-direction: column; padding: 2rem; transform: translateY(-100%); transition: transform 0.3s ease; box-shadow: 0 4px 20px rgba(179, 111, 255, 0.2); } nav.active { transform: translateY(0); } nav a { margin: 0.5rem 0; padding: 1rem; width: 100%; text-align: center; border-radius: 15px; } .header-actions { flex-direction: column; gap: 0.5rem; } .header-actions .btn { margin: 0; width: 100%; } .scroll-to-top { bottom: 1rem; right: 1rem; width: 50px; height: 50px; font-size: 1.2rem; } } @media (max-width: 480px) { .container { padding: 0 1rem; } .logo img { height: 40px; } .furry-header { padding: 0.3rem 0; } }