/* ADL Electronics — Georgia representative office, 2026-10-19.
   All selectors are scoped to .geva-*; existing contacts keep their styles. */
.geva-representation {
  --geva-accent: #20c6cc;
  box-sizing: border-box;
  position: relative;
  min-width: 0;
  margin: 28px 0;
  padding: clamp(20px, 3vw, 36px);
  border: 1px solid #38545c;
  border-left: 4px solid var(--geva-accent);
  border-radius: 16px;
  background: radial-gradient(ellipse at 100% 0, #20c6cc0d, transparent 65%), #111a1f;
  color: #f3f7f8;
  scroll-margin-top: 28px;
  font-size: 1rem;
  line-height: 1.5;
}
.geva-representation *, .geva-representation *::before, .geva-representation *::after {
  box-sizing: border-box;
}
.geva-representation a { text-decoration: none; }
.geva-representation svg { width: 24px; height: 24px; flex-shrink: 0; }
.geva-representation p { margin: 0; }
.geva-location { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.geva-representation .geva-flag { width: 52px; height: 35px; border-radius: 4px; }
.geva-representation .geva-location p {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  color: #b9c8ce;
  font-size: .8125rem;
  font-weight: 500;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.geva-location p > span:first-child { color: var(--geva-accent); }
.contacts-block .geva-title {
  margin: 0 0 12px;
  font-size: clamp(1.125rem, 1rem + .45vw, 1.5rem);
  font-weight: 600;
  line-height: 1.45;
  color: #f3f7f8;
  letter-spacing: normal;
  overflow-wrap: anywhere;
}
.geva-title > span { display: block; }
.geva-title > span:first-child { color: var(--geva-accent); }
.geva-representation .geva-company {
  margin-bottom: 22px;
  font-size: clamp(1.0625rem, 1rem + .2vw, 1.25rem);
  font-weight: 600;
  line-height: 1.45;
  color: #f3f7f8;
}
.geva-phones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.geva-phone {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  min-height: 88px;
  padding: 18px;
  border: 1px solid #3b535c;
  border-radius: 12px;
  background: #0c1419;
  color: #f3f7f8;
}
.geva-contact-icon { display: inline-flex; color: var(--geva-accent); flex-shrink: 0; }
.geva-phone-copy { min-width: 0; flex: 1; }
.geva-representation .geva-label { display: block; color: #bdcbd1; font-size: .875rem; font-weight: 400; }
.geva-number { display: inline-block; margin-top: 4px; font-size: clamp(1rem, .9rem + .3vw, 1.25rem); font-weight: 600; white-space: nowrap; }
.geva-action-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 38px; height: 38px; border: 1px solid var(--geva-accent); border-radius: 50%; color: var(--geva-accent); }
.geva-action-icon svg { width: 19px; height: 19px; }
.geva-email-area { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 14px; margin-top: 22px; padding-top: 20px; border-top: 1px solid #30454e; }
.geva-representation .geva-caption { display: flex; align-items: center; gap: 12px; grid-column: 1/-1; margin: 0 0 3px; color: #bdcbd1; font-size: .875rem; }
.geva-caption svg { color: var(--geva-accent); }
.geva-email { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; min-height: 50px; padding: 12px 14px; border: 1px solid #324a54; border-radius: 10px; background: #0c1419; color: #f3f7f8; font-size: .9375rem; line-height: 1.5; }
.geva-email > span { min-width: 0; overflow-wrap: anywhere; }
.geva-email svg { width: 20px; height: 20px; color: var(--geva-accent); }
.geva-address { display: flex; align-items: flex-start; gap: 14px; margin: 22px 0; padding-top: 20px; border-top: 1px solid #30454e; font-style: normal; }
.geva-address > div { min-width: 0; }
.geva-representation .geva-city { margin-top: 5px; color: #f3f7f8; font-size: 1rem; font-weight: 500; }
.geva-representation .geva-street { margin-top: 2px; color: #bdcbd1; font-size: .9375rem; overflow-wrap: anywhere; }
.geva-cta { display: flex; justify-content: center; align-items: center; gap: 14px; width: 100%; min-height: 52px; padding: 14px 20px; border: 1px solid transparent; border-radius: 10px; background: var(--geva-accent); color: #041416; font-size: .9375rem; font-weight: 600; text-align: center; line-height: 1.5; }
.geva-cta > span { min-width: 0; overflow-wrap: anywhere; }
.geva-representation a:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.geva-representation:target { border-color: var(--geva-accent); }
@media (hover:hover) {
  .geva-phone:hover, .geva-email:hover { border-color: var(--geva-accent); background: #12232b; }
  .geva-cta:hover { background: #5bdae0; color: #041416; }
}
@media (max-width: 1100px) {
  .geva-phones, .geva-email-area { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 480px) {
  .geva-representation { padding: 20px 16px; margin-block: 24px; border-radius: 12px; }
  .geva-phone { padding: 15px 12px; gap: 10px; min-height: 84px; }
  .geva-phone > .geva-contact-icon { display: none; }
  .geva-action-icon { width: 34px; height: 34px; }
  .geva-cta { gap: 10px; padding-inline: 12px; }
  .geva-cta svg { width: 20px; height: 20px; }
}
