/* Shiloh's Garden — Wix form/API integration + client-requested polish */

/* Footer logo: keep the uploaded transparent artwork truly transparent. */
.final-footer .footer-logo,
.final-footer .footer-logo img{
  background:transparent!important;
}
.final-footer .footer-logo img{filter:none!important}

/* Mobile current-page indicator in the green pill. */
@media(max-width:991px){
  .sg-current-page-pill{pointer-events:none;cursor:default;max-width:128px;padding-left:15px!important;padding-right:15px!important}
  .sg-current-page-pill .sg-tour-mobile{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* Client requested the hours on their own line instead of shrinking the copy. */
.now-hours-line{display:inline-block;margin-top:3px}
@media(max-width:767px){
  .now-enrolling-bar small{line-height:1.45!important}
  .now-hours-line{display:block;margin-top:4px;white-space:nowrap;font-size:.94em}
}

/* Consistent line icons — never render as platform emoji. */
.icon-svg{display:inline-flex!important;align-items:center;justify-content:center}
.clean-icon{width:1em;height:1em;display:block;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.trust-icon.icon-svg .clean-icon{width:26px;height:26px}
.approved-grid b.icon-svg .clean-icon{width:34px;height:34px}
@media(max-width:767px){
  .approved-grid b.icon-svg{font-family:inherit!important}
  .approved-grid b.icon-svg .clean-icon{width:32px;height:32px}
}

/* Form connection feedback */
.wix-connected-form button[type="submit"].is-submitting{opacity:.72;pointer-events:none}
.form-status{display:none;margin-top:12px;padding:11px 13px;border-radius:12px;font-size:13.5px;line-height:1.4;font-weight:700}
.form-status.is-visible{display:block}
.form-status.is-success{color:#244b23;background:#edf6e8;border:1px solid rgba(49,92,43,.2)}
.form-status.is-error{color:#8b2d38;background:#fff0f1;border:1px solid rgba(180,60,80,.18)}
.form-waitlist-note{grid-column:1/-1;margin:4px 0 0!important;padding:12px 14px;border-radius:12px;background:#fff8e7;color:#53654e;font-size:13px!important;line-height:1.45!important;border:1px solid rgba(49,92,43,.12)}

/* Bottom contact form requested by client. */
.contact-bottom-form{background:#fffaf3}
.contact-bottom-form .form-side-copy{padding-top:8px}
.contact-bottom-form textarea{min-height:150px}

/* Footer newsletter — same Wix subscriber form as the popup. */
.footer-newsletter-row{
  grid-column:1/-1;
  margin-top:12px;
  padding:24px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:22px;
  background:rgba(255,255,255,.055);
}
.footer-newsletter-row h4{margin:0 0 6px!important;font-size:20px!important;color:#fff!important}
.footer-newsletter-row p{margin:0 0 14px!important;max-width:720px;color:#e9f0e6!important}
.footer-newsletter-form{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(210px,1.35fr) auto;gap:10px;align-items:center}
.footer-newsletter-form input[type="text"],
.footer-newsletter-form input[type="email"]{
  width:100%;min-height:46px;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:0 16px;background:#fff;color:#27452a;outline:none;font:inherit
}
.footer-newsletter-form button{min-height:46px;border:0;border-radius:999px;padding:0 20px;background:#f2a1b8;color:#27452a;font-weight:900;cursor:pointer}
.footer-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px!important;color:#e9f0e6!important;font-size:12.5px!important;line-height:1.35!important;margin:2px 0 0!important}
.footer-consent input{margin-top:2px;accent-color:#f2a1b8}
.footer-newsletter-row .form-status{grid-column:1/-1;margin-top:2px}

/* Newsletter welcome popup */
.newsletter-popup-overlay{
  position:fixed;inset:0;z-index:20000;display:flex;align-items:center;justify-content:center;
  padding:22px;background:rgba(31,54,30,.42);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease
}
.newsletter-popup-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.newsletter-popup{
  width:min(92vw,520px);position:relative;overflow:hidden;border-radius:30px;padding:38px 36px 32px;
  background:#fff9ef;border:1px solid rgba(49,92,43,.16);box-shadow:0 28px 90px rgba(28,52,26,.28)
}
.newsletter-popup::before{content:"";position:absolute;inset:0 0 auto;height:8px;background:linear-gradient(90deg,#e85f87,#f2c84b,#7ea46d)}
.newsletter-popup-logo{display:block;width:150px;max-height:78px;object-fit:contain;margin:0 auto 12px;background:transparent}
.newsletter-popup-close{position:absolute;right:15px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(49,92,43,.08);color:#315c2b;font-size:25px;line-height:1;cursor:pointer}
.newsletter-popup .eyebrow{text-align:center;color:#e85f87;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;margin:3px 0 8px}
.newsletter-popup h2{margin:0;color:#315c2b;text-align:center;font:700 38px/1 Georgia,serif;letter-spacing:-1.2px}
.newsletter-popup .popup-copy{margin:13px auto 20px;text-align:center;color:#53654e;max-width:410px;line-height:1.55}
.newsletter-popup-form{display:grid;gap:10px}
.newsletter-popup-form input[type="text"],.newsletter-popup-form input[type="email"]{width:100%;min-height:50px;border:1px solid rgba(49,92,43,.22);border-radius:14px;padding:0 15px;background:#fff;font:inherit;color:#27452a;outline:none}
.newsletter-popup-form input:focus{border-color:#315c2b;box-shadow:0 0 0 3px rgba(49,92,43,.08)}
.popup-consent{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;line-height:1.4;color:#52634e;margin:2px 0 3px}
.popup-consent input{margin-top:2px;accent-color:#315c2b}
.newsletter-popup-form button[type="submit"]{min-height:50px;border:0;border-radius:999px;background:#315c2b;color:#fff;font-weight:900;font-size:14px;letter-spacing:.04em;cursor:pointer}

@media(max-width:767px){
  .footer-newsletter-row{padding:20px 16px;border-radius:18px}
  .footer-newsletter-form{grid-template-columns:1fr}
  .footer-consent,.footer-newsletter-row .form-status{grid-column:1}
  .newsletter-popup{padding:34px 20px 24px;border-radius:24px}
  .newsletter-popup-logo{width:126px}
  .newsletter-popup h2{font-size:32px}
}

/* 2026-10-07 — mobile NOW ENROLLING text/position polish only.
   Button styling intentionally left to the original site CSS. */
@media (max-width: 767px){
  body.v4-home .now-enrolling-bar{
    padding:18px 0 20px!important;
    overflow:hidden!important;
  }
  body.v4-home .now-enrolling-inner{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
    gap:16px!important;
    box-sizing:border-box!important;
  }
  body.v4-home .now-enrolling-inner>div:first-child{
    width:100%!important;
    min-width:0!important;
    gap:3px!important;
  }
  body.v4-home .now-enrolling-inner>div:first-child>span{
    font-size:11px!important;
    line-height:1.2!important;
    letter-spacing:.18em!important;
  }
  body.v4-home .now-enrolling-inner strong{
    display:block!important;
    max-width:100%!important;
    font-size:25px!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
    white-space:normal!important;
  }
  body.v4-home .now-enrolling-inner small{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    font-size:13px!important;
    line-height:1.4!important;
    overflow:visible!important;
  }
  body.v4-home .now-hours-line{
    display:block!important;
    margin-top:5px!important;
    max-width:100%!important;
    white-space:nowrap!important;
    font-size:12px!important;
    line-height:1.35!important;
    letter-spacing:.035em!important;
  }
  body.v4-home .now-age-line{
    display:block!important;
    margin-top:2px!important;
    white-space:nowrap!important;
    font-size:12px!important;
    line-height:1.35!important;
    letter-spacing:.08em!important;
    color:#f7d26a!important;
    font-weight:900!important;
  }
}

@media (max-width: 390px){
  body.v4-home .now-enrolling-inner{width:calc(100% - 24px)!important}
  body.v4-home .now-enrolling-inner strong{font-size:23px!important}
  body.v4-home .now-enrolling-inner small{font-size:12.5px!important}
  body.v4-home .now-hours-line{font-size:11.5px!important;letter-spacing:.02em!important}
  body.v4-home .now-age-line{font-size:11.5px!important}
}
