/* Custom overrides: gutter removal, constrained width, promo section typography */

p, h3, h4 {
  color: #bec3c8;
  font-weight: 300;
}

.container-custom {
  max-width: 1200px;
  margin: 0 auto;
  padding: 15px;
}

.no-gutter {
  margin-left: 0;
  margin-right: 0;
}

.no-gutter > [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 1200px) {
  .no-gutter > [class*="col-"] {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* Instagram gallery CTA (replaces the old live-synced photo grid) */

#gallery .instagram-cta {
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}

#gallery .instagram-cta p {
  margin-bottom: 20px;
}

/* Honeypot spam-trap field on the newsletter subscribe form.
   Positioned off-screen rather than display:none, since some bots
   skip fields hidden that way. Real users never see or fill it in.
   submit_subscribe.php must reject any submission where "website"
   is non-empty. */
.hp-field {
  position: absolute;
  left: -9999px;
  top: -9999px;
}

/* .button-yellow was missing the same mobile padding reduction that
   .button-transparent already had. Padding alone wasn't enough though -
   the base .button class also forces uppercase, letter-spacing, and
   white-space:nowrap, which for a long phrase needs ~400px+ on one
   line. Letting it wrap to two lines on mobile is the real fix. */
@media screen and (max-width: 767px) {
  .button.button-yellow {
    padding: 12px 20px;
    white-space: normal;
    font-size: 13px;
    line-height: 1.4;
  }
}

/* Header background video (desktop only, see script in index.php) */
#main .header-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    opacity: 0;
    transition: opacity .8s ease-in-out;
}
#main .header-video.is-playing {
    opacity: 1;
}
#main.has-video::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(9,5,5,.35), rgba(9,5,5,.65));
    z-index: 1;
    pointer-events: none;
}
#main .blurb {
    z-index: 2;
}
