/* Cozy Lodge Theme */ body { background-color: #F6FBFF; /* Frosty White */ font-family: 'Nunito Sans', sans-serif; color: #212529; } .container { width: 80%; margin: 0 auto; padding: 2rem 0; } /* Navigation */ .navbar { background-color: #FFFFFF; border-bottom: 1px solid #E9F1F8; padding: 1rem 0; } .navbar .container { display: flex; justify-content: space-between; align-items: center; } .navbar-brand { font-family: 'Playfair Display', serif; font-size: 1.5rem; font-weight: 700; color: #0B233F; text-decoration: none; } .nav-links { list-style: none; margin: 0; padding: 0; display: flex; } .nav-links li a { text-decoration: none; color: #212529; padding: 0.5rem 1rem; transition: color 0.3s ease; } .nav-links li a:hover { color: #FF7A4D; } /* Hero Section */ .hero { background-image: url('https://images.pexels.com/photos/912110/pexels-photo-912110.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2'); background-size: cover; background-position: center; height: 80vh; display: flex; align-items: center; justify-content: center; color: white; text-shadow: 0 2px 4px rgba(0,0,0,0.5); } .hero-content { background: rgba(11, 35, 63, 0.6); /* Deep Navy with transparency */ padding: 2rem 4rem; border-radius: .5rem; text-align: center; } .hero h1 { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 4rem; } .lead { font-size: 1.25rem; } .btn-primary { background-color: #FF7A4D; /* Warm Ember */ border-color: #FF7A4D; color: white; font-weight: bold; padding: 0.75rem 1.5rem; transition: background-color 0.3s ease; text-decoration: none; border-radius: .25rem; border: none; cursor: pointer; } .btn-primary:hover { background-color: #E86A3C; border-color: #E86A3C; } /* Featured Experiences */ .featured-experiences { text-align: center; padding: 4rem 0; } .featured-experiences h2 { font-family: 'Playfair Display', serif; font-size: 2.5rem; margin-bottom: 2rem; } .experience-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; } .experience-card { background-color: #FFFFFF; border: 1px solid #E9F1F8; /* Snow Grey */ border-radius: .5rem; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; } .experience-card:hover { transform: translateY(-5px); box-shadow: 0 8px 16px rgba(0,0,0,0.1); } .experience-card img { width: 100%; height: 200px; object-fit: cover; } .experience-card h3 { font-family: 'Playfair Display', serif; font-size: 1.5rem; margin: 1rem; } .experience-card p { margin: 0 1rem 1rem; } /* Experience Detail */ .experience-detail img { width: 100%; height: 400px; object-fit: cover; border-radius: .5rem; margin-bottom: 2rem; } .experience-detail h1 { font-family: 'Playfair Display', serif; font-size: 3rem; margin-bottom: 1rem; } .experience-detail p { line-height: 1.6; margin-bottom: 1.5rem; } .experience-detail h2 { font-family: 'Playfair Display', serif; font-size: 2rem; margin-top: 2rem; margin-bottom: 1rem; } .experience-detail ul { list-style: disc; margin-left: 1.5rem; } /* Gallery */ .gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1rem; } .gallery-card { overflow: hidden; border-radius: .5rem; } .gallery-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; } .gallery-card:hover img { transform: scale(1.05); } .upload-section { text-align: center; padding: 4rem 0; } .upload-section h2 { font-family: 'Playfair Display', serif; font-size: 2.5rem; margin-bottom: 1rem; } /* Forms */ .form-group { margin-bottom: 1.5rem; } .form-group label { display: block; margin-bottom: .5rem; font-weight: bold; } .form-group input, .form-group textarea, .form-group select { width: 100%; padding: .75rem; border: 1px solid #E9F1F8; border-radius: .25rem; } /* Footer */ footer { background-color: #0B233F; color: #F6FBFF; text-align: center; padding: 2rem 0; margin-top: 4rem; } /* Chat Widget */ .chat-icon { position: fixed; bottom: 2rem; right: 2rem; background-color: #0B233F; /* Deep Navy */ color: #F6FBFF; /* Frosty White */ width: 60px; height: 60px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 4px 8px rgba(0,0,0,0.2); transition: transform 0.3s ease; } .chat-icon:hover { transform: scale(1.1); } .chat-window { display: none; /* Hidden by default */ position: fixed; bottom: 7rem; right: 2rem; width: 350px; max-width: 90%; background-color: #FFFFFF; border-radius: .5rem; box-shadow: 0 4px 16px rgba(0,0,0,0.2); flex-direction: column; overflow: hidden; } .chat-window.show { display: flex; } .chat-header { background-color: #0B233F; /* Deep Navy */ color: #F6FBFF; /* Frosty White */ padding: 1rem; display: flex; justify-content: space-between; align-items: center; } .chat-header h5 { margin: 0; font-family: 'Playfair Display', serif; } .chat-body { padding: 1rem; overflow-y: auto; height: 300px; } .message-container { /* The messages will be prepended here by JS */ } .message { padding: 0.5rem 1rem; border-radius: 1rem; margin-bottom: 0.5rem; max-width: 80%; /* Use float for alignment */ } .message.received { background-color: #E9F1F8; /* Snow Grey */ float: left; clear: both; } .message.sent { background-color: #FF7A4D; /* Warm Ember */ color: white; float: right; clear: both; } .chat-input { display: flex; padding: 1rem; border-top: 1px solid #E9F1F8; /* Snow Grey */ }