/* ==========================================================
   HOME NEWSLETTER — ISOLATED RESPONSIVE STYLES
========================================================== */

.home-connect{
  display:grid !important;
  grid-template-columns:90px minmax(0,.9fr) minmax(320px,1.15fr) !important;
  gap:28px !important;
  align-items:center !important;

  width:min(1120px,calc(100% - 32px)) !important;
  min-height:0 !important;
  margin:28px auto !important;
  padding:30px !important;

  overflow:hidden !important;

  border:1px solid rgba(212,175,55,.45) !important;
  border-radius:20px !important;

  background:
    radial-gradient(
      circle at top left,
      rgba(212,175,55,.10),
      transparent 35%
    ),
    linear-gradient(
      145deg,
      #111720,
      #080b10
    ) !important;

  color:#f4f4f5 !important;
  box-shadow:0 18px 38px rgba(0,0,0,.28) !important;
}

.home-connect *,
.home-connect *::before,
.home-connect *::after{
  box-sizing:border-box !important;
}

.home-connect .sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.home-connect__icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:76px !important;
  height:76px !important;
  min-width:76px !important;
  min-height:76px !important;
  max-width:76px !important;
  max-height:76px !important;

  margin:0 !important;
  padding:0 !important;

  color:#d4af37 !important;

  border:2px solid rgba(212,175,55,.72) !important;
  border-radius:50% !important;
  background:transparent !important;
}

.home-connect__icon svg{
  display:block !important;

  width:38px !important;
  height:38px !important;
  max-width:38px !important;
  max-height:38px !important;

  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.4 !important;
}

.home-connect__content{
  min-width:0 !important;
}

.home-connect__eyebrow{
  margin:0 0 6px !important;

  color:#d4af37 !important;

  font-size:.76rem !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.15em !important;
  text-transform:uppercase !important;
}

.home-connect h2{
  margin:0 0 10px !important;

  color:#ffffff !important;

  font-size:clamp(1.55rem,3vw,2.35rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
}

.home-connect__content p:not(.home-connect__eyebrow){
  max-width:520px !important;
  margin:0 !important;

  color:#d4d4d8 !important;

  font-size:1rem !important;
  line-height:1.6 !important;
}

.home-connect__form{
  display:grid !important;
  gap:12px !important;

  min-width:0 !important;
  margin:0 !important;
}

.home-connect__field{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;

  width:100% !important;
  min-width:0 !important;
  margin:0 !important;

  overflow:hidden !important;

  border:1px solid rgba(212,175,55,.48) !important;
  border-radius:12px !important;
  background:#171a20 !important;
}

.home-connect__field input{
  display:block !important;

  width:100% !important;
  min-width:0 !important;
  min-height:54px !important;

  margin:0 !important;
  padding:0 16px !important;

  color:#ffffff !important;
  background:transparent !important;

  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;

  font:inherit !important;
  font-size:1rem !important;
  line-height:1.2 !important;
}

.home-connect__field input::placeholder{
  color:#a1a1aa !important;
}

.home-connect__field button{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  min-width:185px !important;
  min-height:54px !important;

  margin:0 !important;
  padding:0 20px !important;

  color:#111111 !important;
  background:linear-gradient(180deg,#e7c552,#c99b22) !important;

  border:0 !important;
  border-radius:0 !important;

  font:inherit !important;
  font-size:.88rem !important;
  font-weight:950 !important;
  line-height:1.1 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;

  box-shadow:none !important;
  cursor:pointer !important;
}

.home-connect__field button:hover,
.home-connect__field button:focus-visible{
  color:#090909 !important;
  background:linear-gradient(180deg,#f2d777,#d7aa31) !important;
}

.home-connect__consent{
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;

  width:100% !important;
  margin:0 !important;

  color:#a1a1aa !important;

  font-size:.78rem !important;
  line-height:1.45 !important;
  text-align:left !important;
}

.home-connect__consent input{
  flex:0 0 auto !important;

  width:18px !important;
  height:18px !important;

  margin:1px 0 0 !important;
  padding:0 !important;

  accent-color:#d4af37 !important;
}

.home-connect__status{
  min-height:1.35em !important;
  margin:0 !important;

  color:#d4d4d8 !important;

  font-size:.82rem !important;
  font-weight:800 !important;
  line-height:1.4 !important;
}

.home-connect__status.is-success{
  color:#f0cf69 !important;
}

.home-connect__status.is-error{
  color:#f87171 !important;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width:900px){

  .home-connect{
    grid-template-columns:76px minmax(0,1fr) !important;
    gap:22px !important;
    padding:26px !important;
  }

  .home-connect__form{
    grid-column:1 / -1 !important;
  }

}


/* ==========================================================
   PHONE
========================================================== */

@media (max-width:620px){

  .home-connect{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;

    width:min(100% - 20px,1120px) !important;
    min-height:0 !important;

    margin:18px auto !important;
    padding:22px 16px !important;

    text-align:center !important;

    border-radius:16px !important;
  }

  .home-connect__icon{
    grid-column:auto !important;

    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    max-width:64px !important;
    max-height:64px !important;

    margin:0 auto !important;
  }

  .home-connect__icon svg{
    width:31px !important;
    height:31px !important;
    max-width:31px !important;
    max-height:31px !important;
  }

  .home-connect__content{
    width:100% !important;
  }

  .home-connect__eyebrow{
    font-size:.7rem !important;
  }

  .home-connect h2{
    margin-bottom:9px !important;

    font-size:1.75rem !important;
    line-height:1.08 !important;
  }

  .home-connect__content p:not(.home-connect__eyebrow){
    max-width:34rem !important;
    margin:0 auto !important;

    font-size:.98rem !important;
    line-height:1.55 !important;
  }

  .home-connect__form{
    display:grid !important;
    grid-column:auto !important;
    gap:11px !important;

    width:100% !important;
  }

  .home-connect__field{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;

    overflow:visible !important;

    border:0 !important;
    background:transparent !important;
  }

  .home-connect__field input{
    width:100% !important;
    min-height:50px !important;

    padding:0 14px !important;

    border:1px solid rgba(212,175,55,.48) !important;
    border-radius:10px !important;

    background:#171a20 !important;
  }

  .home-connect__field button{
    width:100% !important;
    min-width:0 !important;
    min-height:50px !important;

    border-radius:10px !important;

    font-size:.88rem !important;
  }

  .home-connect__consent{
    gap:9px !important;

    font-size:.76rem !important;
    line-height:1.4 !important;
  }

  .home-connect__status{
    text-align:left !important;
  }

}


/* ==========================================================
   LIGHT MODE
========================================================== */

html[data-theme="light"] .home-connect{
  background:
    radial-gradient(
      circle at top left,
      rgba(138,97,24,.10),
      transparent 35%
    ),
    linear-gradient(
      145deg,
      #ffffff,
      #f4ede1
    ) !important;

  border-color:#b99a4d !important;
  color:#171717 !important;
}

html[data-theme="light"] .home-connect h2{
  color:#171717 !important;
}

html[data-theme="light"]
.home-connect__content p:not(.home-connect__eyebrow){
  color:#374151 !important;
}

html[data-theme="light"] .home-connect__field{
  background:#ffffff !important;
}

html[data-theme="light"] .home-connect__field input{
  color:#171717 !important;
  background:#ffffff !important;
}

html[data-theme="light"] .home-connect__consent{
  color:#4b5563 !important;
}
