/* V962: implement the approved three-column footer mockup exactly. */
#gallery .connect{
  display:grid!important;
  grid-template-columns:minmax(190px,.95fr) minmax(300px,1.42fr) minmax(300px,1.48fr)!important;
  grid-template-areas:"brand follow newsletter" "bottom bottom bottom"!important;
  align-items:center!important;
  gap:0!important;
  padding:24px clamp(26px,3vw,54px) 0!important;
  overflow:hidden!important;
  background:radial-gradient(circle at 0 0,rgba(22,132,94,.25),transparent 38%),linear-gradient(135deg,#00583f 0%,#004432 58%,#003d30 100%)!important;
  border:1px solid rgba(218,177,79,.42)!important;
  border-radius:22px!important;
  box-shadow:0 18px 42px rgba(2,48,36,.16)!important;
}
#gallery .connect-brand{
  grid-area:brand;
  position:relative;
  min-width:0;
  padding:4px clamp(18px,2.5vw,44px) 4px 22px;
  border-right:1px solid rgba(218,177,79,.55);
}
#gallery .connect-brand::before{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:2px;
  background:linear-gradient(180deg,transparent,#dfb447 18%,#dfb447 82%,transparent);
  content:"";
}
#gallery .connect-brand h2{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:0!important;
  color:#fff!important;
  font:700 clamp(30px,2.8vw,44px)/1.02 Georgia,"Times New Roman",serif!important;
  letter-spacing:.015em;
}
#gallery .connect-brand h2 span:last-child{color:#edc65e!important}
#gallery .connect-brand .connect-motto{
  margin:13px 0 0!important;
  color:#f8f3e5!important;
  font:400 clamp(10px,.9vw,13px)/1.4 Georgia,"Times New Roman",serif!important;
  letter-spacing:.13em;
  white-space:nowrap;
}
#gallery .connect-brand .connect-motto span{padding:0 3px;color:#edc65e}
#gallery .connect-follow{
  grid-area:follow;
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  align-self:stretch;
  padding:2px clamp(18px,2.5vw,44px);
  border-right:1px solid rgba(218,177,79,.55);
}
#gallery .connect-follow h3,#gallery .connect-newsletter h3{
  margin:0!important;
  color:#f2c45a!important;
  font:700 12px/1.35 Georgia,"Times New Roman",serif!important;
  letter-spacing:.14em;
}
#gallery .connect-social-list{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:10px;
  margin-top:20px;
}
#gallery .connect-social-link{
  display:inline-flex;
  min-width:0;
  min-height:42px;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:6px 13px 6px 8px;
  border:1px solid #d8a932;
  border-radius:999px;
  color:#fff;
  font:700 12px/1.15 Georgia,"Times New Roman",serif;
  white-space:nowrap;
}
#gallery .connect-social-icon{
  display:grid;
  width:28px;
  height:28px;
  flex:0 0 28px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font:700 15px/1 Arial,sans-serif;
}
#gallery .connect-social-icon.facebook{background:#2870bd}
#gallery .connect-social-icon.youtube{background:#ed1d2f;font-size:12px}
#gallery .connect-social-icon.instagram{background:linear-gradient(135deg,#6a3bc8,#e83883,#f4a33b);font-size:19px}
#gallery .connect-newsletter{
  grid-area:newsletter;
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  padding:2px 0 2px clamp(22px,2.5vw,45px);
}
#gallery .connect-newsletter p{
  margin:7px 0 14px!important;
  color:rgba(255,255,255,.91)!important;
  font:400 14px/1.45 Georgia,"Times New Roman",serif!important;
}
#gallery .connect .email{
  display:flex!important;
  width:100%;
  min-width:0;
  height:48px!important;
  border:1px solid rgba(255,255,255,.76);
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 14px rgba(0,0,0,.09);
}
#gallery .connect .email input{
  width:100%;
  min-width:0;
  height:100%;
  padding:0 14px!important;
  color:#183f34!important;
  font:400 14px Georgia,"Times New Roman",serif!important;
}
#gallery .connect .email input::placeholder{color:#65756f;opacity:1}
#gallery .connect .email button{
  flex:0 0 142px;
  width:142px!important;
  height:100%;
  background:linear-gradient(135deg,#edc75d,#dba32e)!important;
  color:#103f34!important;
  font:700 14px Georgia,"Times New Roman",serif!important;
  white-space:nowrap;
  cursor:pointer;
  transition:filter .18s ease,transform .18s ease;
}
#gallery .connect .email button:hover{filter:brightness(1.04);transform:translateY(-1px)}
#gallery .connect .email button:focus-visible{outline:3px solid #fff;outline-offset:3px}
#gallery .connect-bottom{
  grid-area:bottom;
  margin-top:22px;
  padding:14px 8px 16px;
  border-top:1px solid rgba(222,184,91,.78);
}
#gallery .connect .quote{
  margin:0!important;
  color:#fff!important;
  font:700 clamp(14px,1.2vw,18px)/1.45 Georgia,"Times New Roman",serif!important;
  text-align:center;
}
@media(max-width:1000px){
  #gallery .connect{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"brand" "follow" "newsletter" "bottom"!important;
    padding:22px 26px 0!important;
  }
  #gallery .connect-brand{
    padding:0 0 18px 20px;
    border-right:0;
    border-bottom:1px solid rgba(218,177,79,.48);
  }
  #gallery .connect-brand h2{font-size:34px!important}
  #gallery .connect-brand h2 span{display:inline}
  #gallery .connect-brand h2 span+span{margin-left:9px}
  #gallery .connect-brand .connect-motto{margin-top:8px!important}
  #gallery .connect-follow{
    padding:18px 0;
    border-right:0;
    border-bottom:1px solid rgba(218,177,79,.48);
  }
  #gallery .connect-social-list{flex-wrap:wrap;margin-top:12px}
  #gallery .connect-newsletter{padding:18px 0 0}
  #gallery .connect-bottom{margin-top:18px;padding:12px 0 15px}
}
@media(max-width:520px){
  #gallery .connect{padding:19px 18px 0!important;border-radius:18px!important}
  #gallery .connect-brand h2{font-size:30px!important}
  #gallery .connect-brand .connect-motto{font-size:10px!important;letter-spacing:.08em}
  #gallery .connect-social-link{min-height:40px;gap:8px;padding:5px 10px 5px 7px;font-size:11px}
  #gallery .connect-social-list{gap:8px}
  #gallery .connect .email{height:44px!important}
  #gallery .connect .email input{padding:0 10px!important;font-size:12px!important}
  #gallery .connect .email button{flex-basis:108px;width:108px!important;font-size:12px!important}
  #gallery .connect .quote{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){#gallery .connect .email button{transition:none}}
