/* Laurisilva Forest - lead capture panel and consent checkbox.
   Loaded on every page, because the panel can open anywhere including the
   original homepage. Every rule is scoped to .lsh-popup, to the popup modal, or
   to an Elementor form field type, so nothing else on the site is affected.

   The root selector is doubled (.lsh-popup.lsh-popup) on purpose: the panel is
   injected inside body.lsh on the service pages, where the page level rules
   would otherwise win and paint dark ink on the dark panel ground. */

.lsh-popup{
  --lsh-deep:#1A1D17;
  --lsh-bone:#F4F5F1;
  --lsh-green:#A9BC8E;
}

/* ---------- the panel behaves like a corner card, not a blocking modal ---------- */

/* Sits above the page but below the Elementor lightbox, which runs at 9999. */
.elementor-popup-modal{z-index:9000}
.elementor-popup-modal .dialog-widget-content{box-shadow:0 18px 48px rgba(26,29,23,.34)}

/* While a lightbox is open the panel steps aside entirely. */
body.lsh-lightbox-open .elementor-popup-modal{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}

/* The close button must read against the dark panel. */
.elementor-popup-modal .dialog-close-button{color:#F4F5F1;opacity:1;background:rgba(244,245,241,.14);border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;top:14px;inset-inline-end:14px;transition:background-color .2s ease,color .2s ease}
.elementor-popup-modal .dialog-close-button:hover{background:rgba(244,245,241,.3);color:#fff}
.elementor-popup-modal .dialog-close-button svg{width:14px;height:14px;fill:currentColor}

/* ---------- panel surface ---------- */

.lsh-popup.lsh-popup{
  background:#1A1D17;
  color:#F4F5F1;
  font-family:"Open Sans",system-ui,sans-serif;
  font-size:15px;
  line-height:1.55;
}

.lsh-popup.lsh-popup .elementor-widget-heading .elementor-heading-title{font-family:"Archivo","Open Sans",sans-serif;color:#F4F5F1;letter-spacing:-.02em;margin:0}
.lsh-popup.lsh-popup .lsh-pop-title .elementor-heading-title{font-size:23px;line-height:1.15;font-weight:700;max-width:16ch;padding-inline-end:34px}
.lsh-popup.lsh-popup .lsh-pop-lead,.lsh-popup.lsh-popup .lsh-pop-lead p{font-family:"Open Sans",sans-serif;font-size:14px;line-height:1.5;color:rgba(244,245,241,.8);margin:0}
.lsh-popup.lsh-popup .lsh-pop-note,.lsh-popup.lsh-popup .lsh-pop-note p{font-family:"Open Sans",sans-serif;font-size:12px;line-height:1.5;color:rgba(244,245,241,.58);margin:0}

/* ---------- form fields ---------- */
.lsh-popup.lsh-popup .elementor-field-group{margin-bottom:6px}
.lsh-popup.lsh-popup .elementor-field-label{font-family:"Open Sans",sans-serif;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:rgba(244,245,241,.65);margin-bottom:5px}
/* the underline is 2px in every state, so focus changes colour and never height */
.lsh-popup.lsh-popup input[type=text],
.lsh-popup.lsh-popup input[type=email],
.lsh-popup.lsh-popup input[type=tel],
.lsh-popup.lsh-popup textarea,
.lsh-popup.lsh-popup select{background:transparent;border:0;border-bottom:2px solid rgba(244,245,241,.32);border-radius:0;color:#F4F5F1;font-family:"Open Sans",sans-serif;font-size:15px;line-height:1.4;padding:9px 0;box-shadow:none;transition:border-color .2s ease}
.lsh-popup.lsh-popup select option{color:#22261F;background:#fff}
.lsh-popup.lsh-popup input::placeholder,.lsh-popup.lsh-popup textarea::placeholder{color:rgba(244,245,241,.62)}
.lsh-popup.lsh-popup input:focus,.lsh-popup.lsh-popup textarea:focus,.lsh-popup.lsh-popup select:focus{outline:0;border-bottom-color:#A9BC8E;box-shadow:none}

.lsh-popup.lsh-popup .elementor-button[type=submit],
.lsh-popup.lsh-popup button[type=submit]{font-family:"Archivo",sans-serif;font-weight:600;font-size:14px;letter-spacing:.01em;background:#F4F5F1;color:#1A1D17;border:0;border-radius:4px;padding:14px 24px;width:100%;justify-content:center;transition:background-color .2s ease}
.lsh-popup.lsh-popup .elementor-button[type=submit]:hover,
.lsh-popup.lsh-popup button[type=submit]:hover{background:#fff;color:#1A1D17}
.lsh-popup.lsh-popup .elementor-button[type=submit] *,
.lsh-popup.lsh-popup button[type=submit] *{color:inherit}

.lsh-popup.lsh-popup .elementor-message{font-size:14px;color:#F4F5F1}
.lsh-popup.lsh-popup .elementor-message.elementor-message-danger{color:#F0B4B4}

/* ---------- consent checkbox, shared by the panel and the page forms ---------- */
.elementor-field-type-acceptance{margin-top:4px}
.elementor-field-type-acceptance .elementor-field-option label{font-family:"Open Sans",sans-serif;font-size:12px;line-height:1.45}
.lsh-popup.lsh-popup .elementor-field-type-acceptance .elementor-field-option label,
body.lsh .elementor-field-type-acceptance .elementor-field-option label{color:rgba(244,245,241,.78)}
.lsh-popup.lsh-popup .elementor-field-type-acceptance a,
body.lsh .elementor-field-type-acceptance a{color:#A9BC8E;text-decoration:underline}
.lsh-popup.lsh-popup .elementor-field-type-acceptance input[type=checkbox],
body.lsh .elementor-field-type-acceptance input[type=checkbox]{accent-color:#A9BC8E;margin-inline-end:8px;transform:translateY(2px)}
body.lsh .elementor-field-type-acceptance .elementor-field-option label{font-size:13px}

/* ---------- small screens: a bottom sheet rather than a corner card ---------- */
/* ---------- small screens: a full screen sheet, not a corner card ---------- */
@media (max-width:600px){
  .elementor-popup-modal{align-items:center;justify-content:center;background:rgba(26,29,23,.55)}
  .elementor-popup-modal .dialog-widget-content{width:100vw !important;max-width:100vw !important;min-height:100dvh;margin:0 !important;border-radius:0 !important;box-shadow:none}
  .lsh-popup.lsh-popup{min-height:100dvh;justify-content:center;font-size:15px;padding:66px 22px 36px !important}
  .lsh-popup.lsh-popup .lsh-pop-title .elementor-heading-title{font-size:26px;max-width:none;padding-inline-end:0}
  .lsh-popup.lsh-popup .lsh-pop-lead,.lsh-popup.lsh-popup .lsh-pop-lead p{font-size:15px}
  .elementor-popup-modal .dialog-close-button{top:18px;inset-inline-end:18px;width:38px;height:38px}
  .elementor-popup-modal .dialog-close-button svg{width:16px;height:16px}
}
