/* Contact Us Page Styles - LottoBestNZ */

.hero {
  background: radial-gradient(1200px 600px at 10% 10%, rgba(255,215,0,0.15), transparent 60%),
              radial-gradient(1000px 500px at 90% 0%, rgba(0,179,134,0.12), transparent 60%),
              linear-gradient(180deg, var(--color-bg-primary) 0%, var(--color-bg-secondary) 100%);
  padding: var(--space-16) 0 var(--space-12);
}
.hero .hero-content { max-width: 860px; }
.hero h1 { color: var(--color-secondary); }
.hero .hero-actions { margin-top: var(--space-6); display: flex; gap: var(--space-4); flex-wrap: wrap; }

.section { padding: var(--space-12) 0; }

.contact-grid .info-title { display: flex; align-items: center; gap: var(--space-3); }

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
}
.form-grid .full { grid-column: 1 / -1; }
.form-actions { margin-top: var(--space-6); display: flex; gap: var(--space-4); flex-wrap: wrap; }

.social-row { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-4); }

.hours-list { display: grid; gap: var(--space-2); }

/* Chat widget */
.chat-widget {
  position: fixed;
  right: var(--space-6);
  bottom: var(--space-6);
  width: min(360px, 92vw);
  background: var(--color-white);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-2xl);
  overflow: hidden;
  transform: translateY(20px);
  opacity: 0;
  pointer-events: none;
  transition: all var(--transition-slow) var(--transition-ease);
  border: 1px solid var(--color-gray-200);
  z-index: var(--z-index-popover);
}
.chat-widget[aria-hidden="false"] {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
.chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-4) var(--space-6);
  background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-secondary-light) 100%);
  color: var(--color-white);
}
.chat-title { font-size: var(--font-size-lg);  color: #fff;}
.chat-close { color: var(--color-white); }
.chat-close:hover { opacity: 0.85; }
.chat-body { padding: var(--space-4) var(--space-4); max-height: 260px; overflow: auto; background: var(--color-bg-secondary); }
.chat-message { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-3) var(--space-4); margin-bottom: var(--space-3); box-shadow: var(--shadow-sm); }
.chat-message.bot { border-left: 3px solid var(--color-accent); }
.chat-message.user { border-right: 3px solid var(--color-primary); margin-left: auto; background: #fffbea; }
.chat-input { display: flex; gap: var(--space-3); padding: var(--space-4); border-top: 1px solid var(--color-gray-200); background: var(--color-white); }

/* Accessibility helpers for details */
details { padding: var(--space-3) 0; }
details + details { border-top: 1px solid var(--color-gray-200); }
summary { cursor: pointer; font-weight: var(--font-weight-semibold); }
summary:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 4px; border-radius: var(--radius-sm); }

/* Responsive adjustments */
@media (max-width: 768px) {
  .form-grid { grid-template-columns: 1fr; }
}
