/* ============================================================================
   ALWYN — Contact panel (slide-in client-service drawer)
   ----------------------------------------------------------------------------
   Opens from the right when the customer clicks "Contact us" anywhere on
   the site. Three rows: WhatsApp · Email · Visit us. Mirrors the visual
   pattern of the cart drawer but at z-index higher than the cart drawer so
   it sits cleanly on its own.
   ========================================================================= */

.contact-backdrop{
  position: fixed; inset: 0;
  background: rgba(28, 26, 20, 0.45);
  z-index: 209;
  opacity: 0; pointer-events: none;
  transition: opacity 280ms ease;
}
.contact-backdrop.is-open{ opacity: 1; pointer-events: auto; }

.contact-drawer{
  position: fixed; top: 0; right: 0; bottom: 0;
  width: min(480px, 100vw);
  background: #fff;
  z-index: 210;
  transform: translateX(100%);
  transition: transform 320ms cubic-bezier(0.2, 0.7, 0.2, 1);
  display: flex; flex-direction: column;
  font-family: 'IBM Plex Serif', Georgia, serif;
  color: #1C1A14;
  -webkit-font-smoothing: antialiased;
}
.contact-drawer.is-open{ transform: translateX(0); }

.contact-drawer__top{
  display: flex; align-items: center; justify-content: space-between;
  padding: 26px 32px 22px;
  border-bottom: 1px solid #f1ede5;
}
.contact-drawer__title{
  font-family: 'IBM Plex Serif', Georgia, serif;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: -0.01em;
}
.contact-drawer__close{
  background: transparent; border: 0; padding: 6px;
  cursor: pointer;
  color: #1C1A14;
  width: 32px; height: 32px;
  display: flex; align-items: center; justify-content: center;
}
.contact-drawer__close svg{ width: 18px; height: 18px; }

.contact-drawer__body{
  flex: 1; overflow-y: auto;
  padding: 24px 32px 16px;
  display: flex; flex-direction: column; gap: 10px;
}

.contact-row{
  display: flex; align-items: center; gap: 18px;
  padding: 20px 22px;
  border: 1px solid #f1ede5;
  text-decoration: none;
  color: #1C1A14;
  background: transparent;
  cursor: pointer;
  font-family: 'IBM Plex Serif', Georgia, serif;
  transition: border-color 180ms ease, background-color 180ms ease;
}
.contact-row:hover{ border-color: #1C1A14; background: #faf6ee; }
.contact-row__label{
  flex: 1;
  font-family: 'IBM Plex Serif', Georgia, serif;
  font-weight: 500; font-size: 16px;
  color: #1C1A14;
}
.contact-row__sub{
  display: block;
  margin-top: 4px;
  font-family: 'IBM Plex Mono', Menlo, monospace;
  font-weight: 400; font-size: 10px;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #6b6055;
}
.contact-row__icon{
  width: 24px; height: 24px;
  display: flex; align-items: center; justify-content: center;
  flex: none; color: #1C1A14;
}
.contact-row__icon svg{ width: 22px; height: 22px; }

.contact-drawer__foot{
  padding: 18px 32px 30px;
  font-family: 'IBM Plex Serif', Georgia, serif;
  font-size: 13px; line-height: 1.55;
  color: #6b6055;
}
.contact-drawer__foot a{ color: #1C1A14; text-decoration: underline; }

@media (max-width: 600px){
  .contact-drawer{ width: 100vw; }
  .contact-drawer__top{ padding: 22px 20px 18px; }
  .contact-drawer__body{ padding: 20px 20px 14px; }
  .contact-row{ padding: 18px 18px; gap: 14px; }
  .contact-drawer__foot{ padding: 16px 20px 26px; }
}
