/* ========= HERO SECTION =================== */
.hero { position: relative; height: 500px; display: flex; align-items: center; justify-content: center; color: var(--bg-white); overflow: hidden; background-image: url('../img/contact-us.jpg'); background-repeat: no-repeat; background-size: cover; background-position: center; }
.hero::after{content: ''; position: absolute; inset: 0; background-color: rgba(7, 70, 70, 0.3);}
.hero-content { position: relative; z-index: 2; text-align: center; max-width: 800px; animation: fadeInDown 0.8s ease; margin-top: 10%; padding: 0 20px;}
.hero-title { color: var(--bg-white); font-size: 5rem; font-weight: bold; margin-bottom: 2rem; text-shadow: 2px 2px 4px rgba(0,0,0,0.3); letter-spacing: 1px; }
.hero-subtitle { font-size: 2rem; margin-bottom: 2rem; font-weight: normal; color: var(--bg-white); text-shadow: 1px 1px 2px rgba(0,0,0,0.2); font-weight: bold;}
.cta-button { background-color: var(--color-cream); color: var(--brand-color); padding: 1rem 2.5rem; font-size: 1.1rem; font-weight: bold; border-radius: 50px; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(0,0,0,0.2); }
.cta-button:hover { background-color: var(--brand-color); color: var(--bg-white); transform: translateY(-3px); box-shadow: 0 6px 20px rgba(0,0,0,0.3); }
/*==========================================*/
.container{max-width:1200px;margin:5rem auto;padding:4rem 2rem;background:linear-gradient(135deg,var(--bg-2) 0%,var(--bg-white) 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;}
#chat{display:flex;flex-direction:column;}
.chat-wrapper{width:600px;background:var(--bg-white);border:1px solid #ddd;border-radius:12px;overflow:hidden;}
.chat-window{padding:20px;height:420px;overflow-y:auto;background:var(--bg-2);display:flex;flex-direction:column;}
.message{display:block;width:100%;opacity:0;transform:translateY(6px);animation:msgIn 0.35s ease-out forwards;}
.bot{max-width:80%;margin-bottom:14px;padding:12px 14px;background:var(--color-cream);color:var(--txt);border-radius:12px;align-self:flex-start;}
.user{max-width:80%;margin-bottom:14px;padding:12px 14px;background:var(--brand-color);color:#fff;border-radius:12px;align-self:flex-end;}
.message.buttons{background:none;padding:0;margin-bottom:14px;}
.message.buttons button{display:inline-block;margin-right:8px;margin-top:6px;}
.message.buttons button,.message input[type="date"]{display:inline-block;margin-right:8px;margin-top:6px;padding:6px 12px;background:var(--color-cream);color:var(--txt);border-radius:6px;cursor:pointer;transition:0.3s;}
.message.buttons button:hover{background:var(--brand-color);color:#fff;}
.chat-input{display:flex;border-top:1px solid #ddd;}
.chat-input input{flex:1;padding:14px;border:none;font-size:14px;}
.chat-input button{padding:0 20px;background:var(--brand-color);color:#fff;border:none;cursor:pointer;}
.chat-input button:hover{background:var(--bg-active);}
.bot.message.typing{opacity:0.6;font-style:italic;}
@keyframes msgIn{to{opacity:1;transform:translateY(0);}}
@media (max-width:768px){
.hero{height:350px;}
.hero-title{font-size:3rem;margin-bottom:1rem;}
.hero-subtitle{font-size:1.3rem;margin-bottom:1.5rem;}
.container{margin:2rem auto;padding:2rem 1rem;flex-direction:column;}
.chat-wrapper{width:100%;max-width:600px;}
.chat-window{height:400px;padding:15px;}
.bot,.user{max-width:85%;padding:10px 12px;font-size:14px;}
.chat-input input{padding:12px;font-size:13px;}
.cta-button{padding:0.8rem 2rem;font-size:1rem;}
}
@media (max-width:480px){
.hero{height:280px;}
.hero-content{margin-top:5%;}
.hero-title{font-size:2rem;margin-bottom:0.8rem;letter-spacing:0.5px;}
.hero-subtitle{font-size:1rem;margin-bottom:1rem;}
.container{margin:1.5rem auto;padding:1.5rem 0.75rem;border-radius:4px;}
#chat{width:100%;}
.chat-wrapper{width:100%;border-radius:8px;}
.chat-window{height:350px;padding:12px;}
.message{margin-bottom:10px;}
.bot,.user{max-width:90%;padding:8px 10px;font-size:13px;border-radius:8px;}
.message.buttons button,.message input[type="date"]{padding:5px 10px;font-size:12px;margin-right:6px;margin-top:4px;border-radius:4px;}
.chat-input{flex-direction:column;}
.chat-input input{padding:10px;font-size:13px;border-bottom:1px solid #ddd;}
.chat-input button{padding:10px;width:100%;}
.cta-button{padding:0.7rem 1.5rem;font-size:0.9rem;border-radius:40px;}
}
@media (min-width:1024px){
.hero{height:550px;}
.hero-title{font-size:5rem;}
.container{max-width:1200px;}
.chat-wrapper{width:600px;}
}