*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans KR,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:#fff;box-shadow:0 2px 10px #0000001a;position:fixed;top:0;left:0;right:0;z-index:1000}.header .container{display:flex;align-items:center;justify-content:space-between;padding:1rem 20px}.logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:#2c3e50}.logo i{margin-right:.5rem;color:#e74c3c}.nav ul{display:flex;list-style:none;gap:2rem}.nav a{text-decoration:none;color:#333;font-weight:500;transition:color .3s ease}.nav a:hover{color:#e74c3c}.header-actions{display:flex;align-items:center;gap:1rem}.search-box{display:flex;background:#f8f9fa;border-radius:25px;padding:.5rem 1rem;border:1px solid #e9ecef}.search-box input{border:none;background:none;outline:none;width:200px;padding:.5rem}.search-box button{border:none;background:none;color:#666;cursor:pointer}.user-actions{display:flex;gap:.5rem}.btn-icon{background:none;border:none;padding:.5rem;border-radius:50%;cursor:pointer;transition:background-color .3s ease;position:relative}.btn-icon:hover{background-color:#f8f9fa}.cart-btn{position:relative}.cart-count{position:absolute;top:-5px;right:-5px;background:#e74c3c;color:#fff;border-radius:50%;width:20px;height:20px;font-size:.8rem;display:flex;align-items:center;justify-content:center}.hero{position:relative;min-height:100vh;padding:100px 0 50px;overflow:hidden}.carousel-container{position:relative;width:100%;height:100vh;display:flex;align-items:center}.carousel-wrapper{position:relative;width:100%;height:100%}.carousel-slide{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;opacity:0;transition:opacity .8s ease-in-out;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.carousel-slide.active{opacity:1}.carousel-slide:nth-child(2){background:linear-gradient(135deg,#ff6b6b,#ee5a24)}.carousel-slide:nth-child(3){background:linear-gradient(135deg,#4ecdc4,#44a08d)}.carousel-slide:nth-child(4){background:linear-gradient(135deg,#a8edea,#fed6e3);color:#333}.hero-content{flex:1;padding:0 2rem}.hero-content h1{font-size:3rem;font-weight:700;margin-bottom:1rem;line-height:1.2}.hero-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.hero-image{flex:1;text-align:center}.hero-image img{max-width:100%;height:auto;border-radius:20px;box-shadow:0 20px 40px #0003}.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;padding:0 2rem;pointer-events:none}.nav-btn{background:#fff3;border:none;color:#fff;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .3s ease;pointer-events:all;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-btn:hover{background:#ffffff4d;transform:scale(1.1)}.prev-btn{left:2rem}.next-btn{right:2rem}.carousel-indicators{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;gap:1rem}.indicator{width:12px;height:12px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .3s ease}.indicator.active{background:#fff;transform:scale(1.2)}.indicator:hover{background:#fffc;transform:scale(1.1)}.btn-primary,.btn-secondary{padding:1rem 2rem;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:#e74c3c;color:#fff}.btn-primary:hover{background:#c0392b;transform:translateY(-2px);box-shadow:0 10px 20px #e74c3c4d}.btn-secondary{background:transparent;color:#333;border:2px solid #333;margin:2rem auto;display:block}.btn-secondary:hover{background:#333;color:#fff}.categories{padding:5rem 0;background:#fff}.categories h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2c3e50}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto}.category-card{background:#fff;padding:1.5rem;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.category-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.category-card i{font-size:3rem;color:#e74c3c;margin-bottom:1rem}.category-card h3{font-size:1.5rem;margin-bottom:.5rem;color:#2c3e50}.category-card p{color:#666}.products{padding:5rem 0;background:#f8f9fa}.products h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2c3e50}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.product-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.product-image-container{position:relative;overflow:hidden}.wishlist-btn{position:absolute;top:10px;right:10px;background:#ffffffe6;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#ccc;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.wishlist-btn:hover{background:#fff;transform:scale(1.1)}.wishlist-btn.active{color:#e74c3c;background:#e74c3c1a}.wishlist-btn.active:hover{background:#e74c3c33}.wishlist-count{position:absolute;top:-5px;right:-5px;background:#e74c3c;color:#fff;border-radius:50%;width:18px;height:18px;font-size:.7rem;display:flex;align-items:center;justify-content:center;font-weight:700}.product-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0003}.product-image{width:100%;height:200px;object-fit:cover}.product-info{padding:1.5rem}.product-title{font-size:1.2rem;font-weight:600;margin-bottom:.5rem;color:#2c3e50}.product-price{font-size:1.5rem;font-weight:700;color:#e74c3c;margin-bottom:1rem}.product-rating{display:flex;align-items:center;margin-bottom:1rem}.stars{color:#ffc107;margin-right:.5rem}.rating-text{color:#666;font-size:.9rem}.add-to-cart{width:100%;padding:.8rem;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .3s ease}.add-to-cart:hover{background:#c0392b}.cafe{padding:5rem 0;background:#f8f9fa}.cafe h2{text-align:center;font-size:2.5rem;margin-bottom:1rem;color:#2c3e50}.cafe-subtitle{text-align:center;font-size:1.2rem;color:#666;margin-bottom:3rem}.cafe-menu,.menu-category{margin-bottom:3rem}.menu-category h3{font-size:1.8rem;color:#2c3e50;margin-bottom:2rem;display:flex;align-items:center;gap:.5rem}.menu-category h3 i{color:#e74c3c}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.cafe-menu-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.cafe-menu-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0003}.menu-image-container{position:relative;overflow:hidden}.menu-image{width:100%;height:200px;object-fit:cover}.menu-info{padding:1.5rem}.menu-name{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#2c3e50}.menu-description{color:#666;font-size:.9rem;margin-bottom:1rem;line-height:1.4}.menu-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.menu-size{background:#e9ecef;color:#495057;padding:.3rem .8rem;border-radius:15px;font-size:.8rem;font-weight:500}.menu-price{font-size:1.3rem;font-weight:700;color:#e74c3c}.cafe-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem}.info-card{background:#fff;padding:2rem;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease}.info-card:hover{transform:translateY(-5px)}.info-card i{font-size:2.5rem;color:#e74c3c;margin-bottom:1rem}.info-card h4{font-size:1.2rem;margin-bottom:.5rem;color:#2c3e50}.info-card p{color:#666;font-size:.9rem}.offers{padding:3rem 0;background:#2c3e50;color:#fff}.offers .container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.offer-card{display:flex;align-items:center;padding:2rem;background:#ffffff1a;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.offer-content{flex:1}.offer-content h3{font-size:1.5rem;margin-bottom:.5rem}.offer-content p{opacity:.9}.offer-card i{font-size:3rem;margin-left:1rem;opacity:.8}.footer{background:#2c3e50;color:#fff;padding:3rem 0 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3,.footer-section h4{margin-bottom:1rem;color:#e74c3c}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:.5rem}.footer-section a{color:#bdc3c7;text-decoration:none;transition:color .3s ease}.footer-section a:hover{color:#fff}.social-links{display:flex;gap:1rem;margin-top:1rem}.social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;border-radius:50%;transition:background .3s ease}.social-links a:hover{background:#e74c3c}.newsletter{display:flex;margin-top:1rem}.newsletter input{flex:1;padding:.8rem;border:none;border-radius:5px 0 0 5px;outline:none}.newsletter button{padding:.8rem 1.5rem;background:#e74c3c;color:#fff;border:none;border-radius:0 5px 5px 0;cursor:pointer;transition:background .3s ease}.newsletter button:hover{background:#c0392b}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid #34495e;color:#bdc3c7}.product-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:2500;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.product-modal.show{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.product-modal-content{background:#fff;border-radius:20px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;box-shadow:0 20px 40px #0000004d;animation:slideUp .3s ease}.product-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:#f8f9fa}.product-modal-header h2{margin:0;color:#2c3e50}.product-modal-body{display:flex;gap:2rem;padding:2rem;max-height:70vh;overflow-y:auto}.product-detail-image{flex:1;text-align:center}.product-detail-image img{width:100%;max-width:400px;height:auto;border-radius:15px;box-shadow:0 10px 30px #0000001a}.product-detail-info{flex:1;display:flex;flex-direction:column;gap:1.5rem}.product-detail-info h3{font-size:2rem;color:#2c3e50;margin:0}.product-detail-price{font-size:2.5rem;font-weight:700;color:#e74c3c}.product-detail-rating{display:flex;align-items:center;gap:1rem}.product-detail-rating .stars{color:#ffc107;font-size:1.2rem}.product-detail-rating .rating-text{color:#666;font-size:1rem}.product-detail-description{color:#666;line-height:1.6;font-size:1.1rem}.product-detail-features{background:#f8f9fa;padding:1.5rem;border-radius:10px}.product-detail-features h4{color:#2c3e50;margin-bottom:1rem;font-size:1.2rem}.product-detail-features ul{list-style:none;padding:0;margin:0}.product-detail-features li{color:#666;position:relative;padding:.5rem 0 .5rem 1.5rem}.product-detail-features li:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700}.product-detail-actions{display:flex;gap:1rem;margin-top:auto}.wishlist-btn-modal{background:#f8f9fa;border:2px solid #e9ecef;color:#666;padding:1rem 1.5rem;border-radius:10px;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-weight:600;transition:all .3s ease;flex:1;justify-content:center}.wishlist-btn-modal:hover{background:#e9ecef;border-color:#dee2e6}.wishlist-btn-modal.active{background:#e74c3c;border-color:#e74c3c;color:#fff}.wishlist-btn-modal.active:hover{background:#c0392b;border-color:#c0392b}.product-detail-actions .btn-primary{flex:2;display:flex;align-items:center;justify-content:center;gap:.5rem}.cart-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cart-modal.show{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.cart-modal-content{background:#fff;border-radius:20px;width:90%;max-width:600px;max-height:80vh;overflow:hidden;box-shadow:0 20px 40px #0000004d;animation:slideUp .3s ease}.cart-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:#f8f9fa}.cart-modal-header h2{margin:0;color:#2c3e50;display:flex;align-items:center;gap:.5rem}.cart-modal-header h2 i{color:#e74c3c}.close-btn{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .3s ease}.close-btn:hover{background:#e9ecef;color:#333}.cart-modal-body{max-height:400px;overflow-y:auto;padding:1rem 0}.cart-items{display:none}.cart-items.show{display:block}.cart-item{display:flex;align-items:center;padding:1rem 2rem;border-bottom:1px solid #f1f3f4;transition:background .3s ease}.cart-item:hover{background:#f8f9fa}.cart-item-image{width:60px;height:60px;object-fit:cover;border-radius:8px;margin-right:1rem}.cart-item-info{flex:1}.cart-item-name{font-weight:600;color:#2c3e50;margin-bottom:.25rem}.cart-item-price{color:#e74c3c;font-weight:600}.cart-item-controls{display:flex;align-items:center;gap:1rem}.quantity-controls{display:flex;align-items:center;gap:.5rem}.quantity-btn{background:#e9ecef;border:none;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;transition:all .3s ease}.quantity-btn:hover{background:#dee2e6;transform:scale(1.1)}.quantity-display{min-width:30px;text-align:center;font-weight:600;color:#2c3e50}.remove-btn{background:#dc3545;color:#fff;border:none;padding:.5rem;border-radius:5px;cursor:pointer;font-size:.8rem;transition:all .3s ease}.remove-btn:hover{background:#c82333;transform:scale(1.05)}.cart-empty{text-align:center;padding:3rem 2rem;display:none}.cart-empty.show{display:block}.cart-empty i{font-size:4rem;color:#dee2e6;margin-bottom:1rem}.cart-empty p{color:#666;font-size:1.1rem;margin-bottom:2rem}.cart-modal-footer{border-top:1px solid #e9ecef;background:#f8f9fa;padding:1.5rem 2rem}.cart-total{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.total-info{display:flex;flex-direction:column;gap:.5rem}.total-info span{color:#666;font-size:.9rem}.total-info strong{color:#2c3e50;font-size:1.1rem}.cart-actions{display:flex;gap:1rem}.cart-actions .btn-secondary,.cart-actions .btn-primary{padding:.8rem 1.5rem;font-size:.9rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.cart-modal-content{width:95%;max-height:90vh}.cart-modal-header,.cart-modal-footer{padding:1rem}.cart-item{padding:1rem;flex-direction:column;align-items:flex-start;gap:1rem}.cart-item-controls{width:100%;justify-content:space-between}.cart-total{flex-direction:column;align-items:stretch}.cart-actions{flex-direction:column}}@media (max-width: 768px){.product-modal-content{width:95%;max-height:95vh}.product-modal-body{flex-direction:column;padding:1rem;gap:1rem}.product-detail-image img{max-width:300px}.product-detail-info h3{font-size:1.5rem}.product-detail-price{font-size:2rem}.product-detail-actions{flex-direction:column}.wishlist-btn-modal,.product-detail-actions .btn-primary{flex:none;width:100%}}@media (max-width: 768px){.header .container{flex-direction:column;gap:1rem}.nav ul{gap:1rem}.search-box input{width:150px}.hero{padding:120px 0 50px}.carousel-container{height:80vh}.carousel-slide{flex-direction:column;text-align:center}.carousel-nav{padding:0 1rem}.nav-btn{width:40px;height:40px;font-size:1rem}.carousel-indicators{bottom:1rem}.hero-content h1{font-size:2rem}.hero-content p{font-size:1rem}.category-grid,.product-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.offers .container{grid-template-columns:1fr}.offer-card{flex-direction:column;text-align:center}.offer-card i{margin-left:0;margin-top:1rem}}@media (max-width: 480px){.container{padding:0 10px}.hero-content h1{font-size:1.5rem}.category-grid,.product-grid,.footer-content{grid-template-columns:1fr}}
