/* Contact page only: typography, source imagery, contact info, Google Map. */
.contact-original-hero{min-height:520px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.67)),url('../images/contact-original-hero.jpg')!important;background-position:center 48%!important;background-repeat:no-repeat!important;background-size:cover!important;}
.contact-original-hero .hero-copy{padding-block:100px 72px;}
.contact-original-hero .hero-copy h1{font-family:Archivo,Arial,sans-serif;font-size:clamp(34px,4.1vw,58px);line-height:1.13;font-weight:700;letter-spacing:-.02em;}
.contact-reference-section,.contact-map-section{padding-block:74px;}
.contact-reference-section .contact-grid{align-items:center;gap:56px;}
.contact-reference-section h2,.contact-map-section h2{font-family:Archivo,Arial,sans-serif;font-size:clamp(32px,3.4vw,48px);line-height:1.17;font-weight:700;letter-spacing:-.025em;}
.contact-reference-section .section-eyebrow{color:#4c8684;margin:0 0 12px;font-weight:700;}
.contact-reference-section .contact-detail{padding-block:16px;transition:background .2s ease,transform .2s ease;}
.contact-reference-section .contact-detail:hover{transform:translateX(4px);}
.contact-map-section{background:#f7fafa;}
.contact-map-section .section-heading{margin-bottom:28px;}
.contact-map-section .section-eyebrow{color:#4a817f!important;}
.contact-map-frame{overflow:hidden;border:1px solid #dce6e5;border-radius:16px;box-shadow:0 18px 38px rgba(5,30,40,.09);background:#eaf0f0;}
.contact-map-frame iframe{display:block;width:100%;height:410px;border:0;}
@media(max-width:820px){.contact-original-hero{min-height:440px}.contact-reference-section,.contact-map-section{padding-block:58px}.contact-reference-section .contact-grid{grid-template-columns:1fr;gap:28px}.contact-map-frame iframe{height:350px}}
@media(max-width:560px){.contact-original-hero{min-height:410px}.contact-original-hero .hero-copy{padding:85px 0 40px}.contact-map-frame iframe{height:300px}}
@media(prefers-reduced-motion:reduce){.contact-reference-section .contact-detail{transition:none}}


/* Contact page refinement: equal-height panels, premium info icons, banner ratio */
.contact-original-hero{min-height:520px;align-items:center;text-align:center;}
.contact-original-hero .hero-copy{padding:30px 0;max-width:980px;}
.contact-original-hero .hero-copy p{max-width:980px;margin-inline:auto;font-size:15px;line-height:1.7;}
.contact-reference-section .contact-grid{align-items:stretch;gap:28px;}
.contact-reference-section .contact-info-panel,.contact-reference-section .contact-form-panel{height:100%;display:flex;flex-direction:column;}
.contact-info-panel{background:linear-gradient(180deg,#f9fcfc,#fff);border:1px solid #e2eceb;border-radius:18px;padding:34px 30px;box-shadow:0 18px 38px rgba(5,30,40,.07);justify-content:center;}
.contact-info-panel>p:not(.section-eyebrow){font-size:15px;line-height:1.8;color:#41585d;}
.contact-form-panel.atf-wrapper{justify-content:center;background:#fff;}
.contact-reference-section .atf-title h2{font-family:Archivo,Arial,sans-serif;font-size:clamp(24px,2.2vw,29px);line-height:1.18;max-width:360px;}
.contact-reference-section .atf-title p{font-size:13px;line-height:1.55;max-width:420px;margin-inline:auto;}
.contact-detail{display:flex;align-items:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid #e4ecec;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.contact-detail:last-child{border-bottom:0;}
.contact-detail:hover{transform:translateY(-3px);border-color:#c6d7d6;}
.contact-detail-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;flex:none;background:linear-gradient(135deg,#173945,#3e6e70);color:#fff;box-shadow:0 14px 24px rgba(15,48,60,.16);transition:transform .22s ease,box-shadow .22s ease,background .22s ease;}
.contact-detail:hover .contact-detail-icon{transform:translateY(-2px) scale(1.03);background:linear-gradient(135deg,#2d5960,#73aaa4);box-shadow:0 16px 26px rgba(15,48,60,.22);}
.contact-detail-icon svg{width:23px;height:23px;display:block;}
.contact-detail-copy{display:flex;flex-direction:column;gap:5px;min-width:0;}
.contact-detail-copy strong{font:700 15px/1.2 Archivo,Arial,sans-serif;color:#10232b;}
.contact-detail-copy span,.contact-detail-copy a{font-size:14px;line-height:1.7;color:#476065;overflow-wrap:anywhere;}
.contact-detail-copy a{color:#29585a;}
@media(max-width:820px){.contact-original-hero .hero-copy{padding:20px 0 12px}.contact-info-panel{padding:28px 22px}.contact-reference-section .contact-grid{gap:22px}}
@media(max-width:560px){.contact-original-hero{min-height:410px}.contact-info-panel{padding:24px 18px}.contact-detail{gap:12px}.contact-detail-icon{width:48px;height:48px;border-radius:14px}.contact-reference-section .atf-title h2{font-size:23px}}

/* Requested contact refinement: no left panel fill, icons beside text */
.contact-reference-section .contact-info-panel{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 16px 14px 16px 0 !important;
}
.contact-reference-section .contact-detail{
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  align-items: center !important;
  justify-content: start !important;
  gap: 16px !important;
}
.contact-reference-section .contact-detail .contact-detail-icon{
  grid-column: 1;
  align-self: center;
  flex: none;
}
.contact-reference-section .contact-detail .contact-detail-copy{
  grid-column: 2;
  text-align: left !important;
  align-items: flex-start !important;
}
@media(max-width:560px){
 .contact-reference-section .contact-detail{grid-template-columns:48px minmax(0,1fr)!important;gap:12px!important;}
}


/* final contact icon polish */
.contact-reference-section .contact-detail .contact-detail-icon{background:linear-gradient(135deg,#143843,#4b7d7e)!important;border:1px solid rgba(255,255,255,.22);box-shadow:0 14px 22px rgba(8,30,37,.14)!important}
.contact-reference-section .contact-detail:hover .contact-detail-icon{background:linear-gradient(135deg,#244f58,#79b2ac)!important}
.contact-reference-section .contact-detail-copy strong{margin-bottom:2px}
