.contact-hero{position:relative;min-height:490px;display:flex;align-items:flex-end;overflow:hidden;color:#fffef9;background:#14283d}
.contact-hero-image{position:absolute;inset:0;background:url('/api/image?url=https%3A%2F%2Fwww.belfastinterfaceproject.org%2Fsites%2Fdefault%2Ffiles%2Fslides%2Fslide04.png') center 52%/cover no-repeat;filter:brightness(1.08) saturate(.92)}
.contact-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,19,32,.86),rgba(7,20,34,.56) 50%,rgba(7,20,34,.12))}
.contact-hero-inner{position:relative;z-index:1;padding:92px 0 68px}
.contact-hero .eyebrow{color:#eeeae0}
.contact-hero h1{max-width:930px;margin:0;font:normal clamp(52px,6.2vw,82px)/.96 Georgia,'Times New Roman',serif;letter-spacing:-.045em}
.contact-hero h1 em{font-weight:normal}
.contact-hero-inner>p:last-child{max-width:700px;margin:26px 0 0;font:20px/1.5 Georgia,'Times New Roman',serif;color:#f5f2e9}

.contact-main{background:#dbeaf6}
.contact-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:7%;align-items:start}
.contact-intro{position:sticky;top:36px;padding:4px 0}
.contact-intro h2{max-width:520px;margin-bottom:0}
.contact-intro>p:last-child{max-width:500px;margin:22px 0 0;color:#49667f;font:18px/1.62 Georgia,'Times New Roman',serif}

.contact-details{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(23,63,106,.18);background:#fffef9}
.contact-row{position:relative;display:block;min-width:0;padding:30px 28px 29px;border-right:1px solid rgba(23,63,106,.14);border-bottom:1px solid rgba(23,63,106,.14)}
.contact-row:nth-child(2n){border-right:0}
.contact-row:nth-last-child(-n+2){border-bottom:0}
.contact-row>span{position:absolute;top:31px;right:27px;font:18px/1 Georgia,'Times New Roman',serif;color:#7390aa}
.contact-row .eyebrow{margin:0 54px 14px 0;color:#2f5d87}
.contact-row h3{max-width:100%;margin:0 0 13px;font:31px/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.025em;color:#173f6a}
.contact-row h3 a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-row h3 a[href^="mailto:"]{font-size:clamp(19px,1.65vw,25px);letter-spacing:-.025em;overflow-wrap:anywhere}
.contact-row p:last-child{margin:0;color:#536f87;font:15px/1.58 Georgia,'Times New Roman',serif}
.contact-row:nth-child(3) h3{max-width:420px}

.contact-social{display:flex;flex-wrap:wrap;gap:9px;margin-top:6px}
.contact-social a{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid #173f6a;color:#173f6a;background:transparent;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}
.contact-social a:hover,.contact-social a:focus-visible{background:#173f6a;color:#fff;transform:translateY(-1px)}
.contact-social .social-brand-icon{width:19px;height:19px}

.contact-membership{background:#c9deed;padding:68px 0}
.contact-membership-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
.contact-membership p{color:#49667f;font:17px/1.6 Georgia,'Times New Roman',serif}
.contact-membership a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:12px;padding:0 20px;background:#173f6a;color:#fff;text-decoration:none;font:700 11px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.contact-membership a:hover,.contact-membership a:focus-visible{background:#244f7a}

@media(max-width:980px){
  .contact-grid{grid-template-columns:minmax(230px,.62fr) minmax(0,1.38fr);gap:5%}
  .contact-details{grid-template-columns:1fr}
  .contact-row,.contact-row:nth-child(2n),.contact-row:nth-last-child(-n+2){border-right:0;border-bottom:1px solid rgba(23,63,106,.14)}
  .contact-row:last-child{border-bottom:0}
}

@media(max-width:820px){
  .contact-grid,.contact-membership-grid{grid-template-columns:1fr;gap:30px}
  .contact-intro{position:static;padding:0}
  .contact-intro h2{max-width:650px}
  .contact-intro>p:last-child{max-width:650px}
  .contact-hero{min-height:430px}
}

@media(max-width:560px){
  .contact-main{padding-top:48px!important;padding-bottom:54px!important}
  .contact-hero-inner{padding:70px 0 54px}
  .contact-hero h1{font-size:48px}
  .contact-hero-inner>p:last-child{font-size:17px;line-height:1.5}
  .contact-grid{gap:24px}
  .contact-intro .eyebrow{margin-bottom:10px}
  .contact-intro h2{font-size:38px;line-height:1.02}
  .contact-intro>p:last-child{margin-top:17px;font-size:16px;line-height:1.55}
  .contact-details{margin:0;border-color:rgba(23,63,106,.17)}
  .contact-row{padding:25px 22px 25px}
  .contact-row>span{top:26px;right:21px;font-size:16px}
  .contact-row .eyebrow{margin:0 46px 13px 0}
  .contact-row h3{margin-bottom:10px;font-size:26px;line-height:1.08}
  .contact-row h3 a[href^="mailto:"]{font-size:19px;line-height:1.15;letter-spacing:-.035em;overflow-wrap:normal;word-break:normal}
  .contact-row p:last-child{font-size:14px;line-height:1.52}
  .contact-row:nth-child(3) h3{font-size:27px}
  .contact-social{gap:8px}
  .contact-social a{width:52px;height:52px}
  .contact-social .social-brand-icon{width:20px;height:20px}
  .contact-membership{padding:52px 0}
}

@media(max-width:380px){
  .contact-row{padding-left:18px;padding-right:18px}
  .contact-row>span{right:18px}
  .contact-row h3 a[href^="mailto:"]{font-size:17.5px}
}