/* =========================================================
   CAREER FOOTER HOTFIX - FORCE BACKGROUND + TEXT
   Fix white footer / invisible text issue
========================================================= */

.site-footer.dlgcr-foot,
footer.dlgcr-foot,
.dlgcr-foot{
  display:block !important;
  width:100% !important;
  min-height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#247d80 !important;
  background-image:linear-gradient(180deg, #247d80 0%, #1f7073 100%) !important;
  color:#ffffff !important;
  border:0 !important;
  box-shadow:none !important;
}

.dlgcr-foot *,
.dlgcr-foot *::before,
.dlgcr-foot *::after{
  box-sizing:border-box !important;
}

.dlgcr-foot__top{
  width:min(100%, 1440px) !important;
  margin:0 auto !important;
  padding:52px clamp(22px, 4.2vw, 64px) 36px !important;
  display:grid !important;
  grid-template-columns:minmax(300px, .95fr) minmax(170px, .55fr) minmax(270px, .85fr) minmax(300px, .9fr) !important;
  gap:34px clamp(26px, 3.6vw, 58px) !important;
  align-items:start !important;
  background:transparent !important;
}

.dlgcr-foot__brand,
.dlgcr-foot__col{
  min-width:0 !important;
  color:#ffffff !important;
  background:transparent !important;
}

.dlgcr-foot__logo{
  display:inline-flex !important;
  align-items:center !important;
  line-height:0 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.dlgcr-foot__brand img{
  width:96px !important;
  max-width:100% !important;
  height:auto !important;
  display:block !important;
  filter:none !important;
  opacity:1 !important;
}

.dlgcr-foot__intro{
  max-width:390px !important;
  margin:28px 0 20px !important;
  color:rgba(255,255,255,.86) !important;
  font-family:Montserrat, Arial, Helvetica, sans-serif !important;
  font-size:14px !important;
  line-height:1.7 !important;
  font-weight:400 !important;
  letter-spacing:.01em !important;
}

.dlgcr-foot__col h4{
  margin:0 0 18px !important;
  color:#ffffff !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:21px !important;
  line-height:1.15 !important;
  font-weight:500 !important;
  text-transform:uppercase !important;
  letter-spacing:.065em !important;
}

.dlgcr-foot__col ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.dlgcr-foot__col li,
.dlgcr-foot__contact p{
  margin:0 0 8px !important;
  color:rgba(255,255,255,.86) !important;
  font-family:Montserrat, Arial, Helvetica, sans-serif !important;
  font-size:14px !important;
  line-height:1.48 !important;
  font-weight:400 !important;
}

.dlgcr-foot__contact > p:first-of-type{
  color:#ffffff !important;
  font-weight:500 !important;
  margin-bottom:10px !important;
}

.dlgcr-foot a,
.dlgcr-foot__col a,
.dlgcr-foot__legal a{
  color:rgba(255,255,255,.88) !important;
  text-decoration:none !important;
  box-shadow:none !important;
  border:0 !important;
}

.dlgcr-foot a:hover,
.dlgcr-foot__col a:hover,
.dlgcr-foot__legal a:hover{
  color:#ffffff !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.dlgcr-foot__social{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:0 !important;
}

.dlgcr-foot__social a{
  width:38px !important;
  height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(223,233,200,.68) !important;
  border-radius:50% !important;
  color:#dfe9c8 !important;
  background:rgba(255,255,255,.055) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.08) !important;
  transition:transform .32s cubic-bezier(.22,.72,.22,1), border-color .32s ease, background .32s ease, color .32s ease !important;
}

.dlgcr-foot__social a:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(255,255,255,.95) !important;
  background:rgba(255,255,255,.15) !important;
  color:#ffffff !important;
}

.dlgcr-foot__social svg{
  width:17px !important;
  height:17px !important;
  display:block !important;
  fill:currentColor !important;
  stroke:none !important;
}

.dlgcr-foot__contact-line{
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;
}

.dlgcr-foot__contact-icon{
  width:16px !important;
  height:20px !important;
  flex:0 0 16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:1px !important;
  color:#dfe9c8 !important;
}

.dlgcr-foot__contact-icon svg{
  width:16px !important;
  height:16px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

.dlgcr-foot__bottom{
  width:min(calc(100% - 44px), 1320px) !important;
  margin:0 auto !important;
  min-height:62px !important;
  border-top:1px solid rgba(255,255,255,.34) !important;
  padding:18px 0 20px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  background:transparent !important;
}

.dlgcr-foot__copyright,
.dlgcr-foot__legal a{
  color:rgba(255,255,255,.9) !important;
  font-family:Montserrat, Arial, Helvetica, sans-serif !important;
  font-size:13.5px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

.dlgcr-foot__legal{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:8px 0 !important;
  text-align:right !important;
}

.dlgcr-foot__legal a{
  white-space:nowrap !important;
  padding:0 12px !important;
  border-right:1px solid rgba(255,255,255,.48) !important;
}

.dlgcr-foot__legal a:first-child{
  padding-left:0 !important;
}

.dlgcr-foot__legal a:last-child{
  padding-right:0 !important;
  border-right:0 !important;
}

/* Remove unexpected blank/white theme footer spacing */
.dlgcr-foot + *,
.site-footer.dlgcr-foot + *{
  margin-top:0 !important;
}

body .dlgcr-foot p,
body .dlgcr-foot li,
body .dlgcr-foot h4{
  opacity:1 !important;
  visibility:visible !important;
}

/* Responsive fix */

@media(max-width:1180px){
  .dlgcr-foot__top{
    grid-template-columns:1fr 1fr 1.15fr !important;
  }

  .dlgcr-foot__brand,
  .dlgcr-foot__contact{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:980px){
  .dlgcr-foot__top{
    grid-template-columns:1.1fr 1fr !important;
    padding-top:44px !important;
    gap:36px 34px !important;
  }

  .dlgcr-foot__brand{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:120px minmax(0, 1fr) !important;
    gap:0 28px !important;
    align-items:start !important;
  }

  .dlgcr-foot__intro{
    margin:0 0 18px !important;
    max-width:640px !important;
  }

  .dlgcr-foot__social{
    grid-column:2 !important;
  }

  .dlgcr-foot__rooms,
  .dlgcr-foot__contact{
    grid-column:1 / -1 !important;
  }

  .dlgcr-foot__bottom{
    flex-direction:column !important;
    justify-content:center !important;
    text-align:center !important;
    gap:12px !important;
  }

  .dlgcr-foot__legal{
    justify-content:center !important;
    text-align:center !important;
  }
}

@media(max-width:680px){
  .dlgcr-foot__top{
    grid-template-columns:1fr !important;
    padding:40px 22px 30px !important;
    gap:30px !important;
  }

  .dlgcr-foot__brand{
    grid-template-columns:1fr !important;
    text-align:center !important;
    justify-items:center !important;
  }

  .dlgcr-foot__brand img{
    width:92px !important;
  }

  .dlgcr-foot__intro{
    margin:24px auto 18px !important;
    max-width:520px !important;
    text-align:center !important;
  }

  .dlgcr-foot__social{
    grid-column:auto !important;
    justify-content:center !important;
  }

  .dlgcr-foot__col,
  .dlgcr-foot__contact{
    text-align:center !important;
  }

  .dlgcr-foot__contact-line{
    justify-content:center !important;
    max-width:420px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dlgcr-foot__bottom{
    width:calc(100% - 40px) !important;
  }

  .dlgcr-foot__legal a{
    border-right:0 !important;
    padding:0 !important;
    white-space:normal !important;
  }
}