}
.site-contact-panel > * { position: relative; z-index: 1; }
.site-contact-panel h2 { color: #fff; letter-spacing: -.025em; }
.site-contact-panel__intro { color: rgba(255,255,255,.72); }
.site-contact-panel .site-eyebrow { color: #e6bf7b; }
.site-contact-list { gap: 10px; }
.site-contact-item {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.site-contact-item:hover {
  transform: translateY(-2px);
  border-color: rgba(230,194,130,.42);
  background: rgba(255,255,255,.085);
}
.site-contact-item__icon {
  color: #f0cc8c;
  background: rgba(213,170,98,.13);
}
.site-contact-item__label { color: #e7c17f; }
.site-contact-item a,
.site-contact-item address,
.site-contact-item__value { color: #fff; }
.site-contact-item a:hover { color: #f1cf94; }
.site-contact-form-panel {
  position: relative;
  border: 1px solid rgba(16,38,61,.08);
  box-shadow: 0 24px 64px rgba(16,38,61,.11);
}
.site-contact-form-panel::before {
  position: absolute;
  top: 0;
  right: 36px;
  left: 36px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: linear-gradient(90deg, transparent, #d5aa62 18%, #ecd29e 50%, #d5aa62 82%, transparent);
  content: "";
}
.site-contact-form-panel h2 { letter-spacing: -.025em; }
.site-contact-form__field label { color: #34495d; }
.site-contact-form__field input,
.site-contact-form__field textarea {
  border-color: #dce3e9;
  background: #fbfcfd;
  box-shadow: inset 0 1px 2px rgba(16,38,61,.025);
}
.site-contact-form__field input:hover,
.site-contact-form__field textarea:hover { border-color: #bcc9d5; }
.site-contact-form__field input:focus,
.site-contact-form__field textarea:focus {
  border-color: #c69a50;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(213,170,98,.14);
}
.site-contact-form__submit .site-button--primary,
.site-hero__actions .site-button--primary {
  border-color: rgba(255,255,255,.22);
  color: #15283a;
  background: linear-gradient(135deg, #edcc91 0%, #d5aa62 55%, #c79549 100%);
  box-shadow: 0 8px 20px rgba(167,121,50,.22);
}
.site-contact-form__submit .site-button--primary:hover,
.site-hero__actions .site-button--primary:hover {
  color: #10263d;
  background: linear-gradient(135deg, #f4d9a7 0%, #dfb974 55%, #d1a15a 100%);
  box-shadow: 0 11px 24px rgba(167,121,50,.29);
}
.site-hero__overlay {
  background:
    radial-gradient(ellipse at 76% 18%, rgba(213,170,98,.17), transparent 32%),
    linear-gradient(90deg, rgba(7,20,34,.96) 0%, rgba(12,32,51,.80) 50%, rgba(12,32,51,.26) 100%);
}
.site-hero__copy h1 { text-shadow: 0 8px 24px rgba(0,0,0,.22); }
.site-hero .site-eyebrow {
  padding: 7px 12px;
  border: 1px solid rgba(230,194,130,.26);
  border-radius: 40px;
  background: rgba(7,20,34,.26);
}
.site-nav__list > li > a,
.site-nav__dropdown > summary { position: relative; transition: color .2s ease; }
.site-nav__list > li > a::after,
.site-nav__dropdown > summary::after {
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  border-radius: 2px;
  background: var(--site-gold);
  content: "";
  transition: transform .2s ease;
}
.site-nav__list > li > a:hover::after,
.site-nav__dropdown > summary:hover::after { transform: scaleX(1); }
.site-footer { border-top: 1px solid rgba(213,170,98,.3); }
.site-footer h2 { position: relative; padding-bottom: 10px; }
.site-footer h2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: var(--site-gold);
  content: "";
}
.site-footer__brand img { filter: drop-shadow(0 3px 10px rgba(0,0,0,.12)); }
.site-footer__badges span { border-color: rgba(230,194,130,.2); color: #e8c98d; background: rgba(213,170,98,.055); }
.site-footer__contact-icon { border: 1px solid rgba(213,170,98,.18); }
.site-contact-map__heading { display: flex; align-items: center; gap: 12px; }
.site-contact-map__heading::before { width: 28px; height: 2px; border-radius: 2px; background: var(--site-gold); content: ""; }
@media (max-width: 640px) {
  .site-contact-panel, .site-contact-form-panel { border-radius: 18px; }
  .site-contact-panel::after { right: -110px; bottom: -130px; }
  .site-contact-form-panel::before { right: 22px; left: 22px; }
  .site-hero .site-eyebrow { max-width: 100%; font-size: 9px; letter-spacing: .12em; }
}
