.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-40a07a5:#D7DEE6;--e-global-color-3528a18:#F2F5F8;--e-global-color-5afa290:#D7DEE6;--e-global-color-3d25f97:#383D43;--e-global-color-773a4a5:#454C55;--e-global-color-b133465:#AAB6C2;--e-global-typography-primary-font-family:"Afacad";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-ba2ea09-font-family:"Afacad";--e-global-typography-ba2ea09-font-size:0.875rem;--e-global-typography-ba2ea09-font-weight:600;--e-global-typography-ba2ea09-text-transform:uppercase;--e-global-typography-ba2ea09-line-height:1.272;--e-global-typography-ba2ea09-letter-spacing:3.12px;--e-global-typography-343c7d4-font-family:"Afacad";--e-global-typography-343c7d4-font-size:3.5rem;--e-global-typography-343c7d4-font-weight:600;--e-global-typography-343c7d4-line-height:1.05;--e-global-typography-343c7d4-letter-spacing:-0.16px;--e-global-typography-648b148-font-family:"Afacad";--e-global-typography-648b148-font-size:3rem;--e-global-typography-648b148-font-weight:600;--e-global-typography-648b148-line-height:1.272;--e-global-typography-648b148-letter-spacing:-0.16px;--e-global-typography-1444295-font-family:"Afacad";--e-global-typography-1444295-font-size:0.75rem;--e-global-typography-1444295-font-weight:600;--e-global-typography-1444295-line-height:1.6;--e-global-typography-1444295-letter-spacing:0.12em;--e-global-typography-84735f4-font-family:"Afacad";--e-global-typography-84735f4-font-size:1.75rem;--e-global-typography-84735f4-font-weight:600;--e-global-typography-84735f4-line-height:1.272;--e-global-typography-84735f4-letter-spacing:-0.16px;--e-global-typography-f552a13-font-family:"Afacad";--e-global-typography-f552a13-font-size:0.875rem;--e-global-typography-f552a13-font-weight:600;--e-global-typography-f552a13-line-height:1.4;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===================================================
   SMOOTH PAGE LOAD — Curtain + Scroll Reveals
   =================================================== */

/* ── Load curtain ───────────────────────────────────
   Full-screen overlay matching the page BG. Covers
   everything while assets load, then fades out once
   window.onload fires. The JS adds .liwo-curtain--off
   to trigger the fade.                               */
.liwo-curtain {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;  /* vh not % — immune to containing block changes from
                     backdrop-filter on ancestor elements */
  background: #2C2F33;
  z-index: 2147483647;  /* max 32-bit int — must beat the fixed header */
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.liwo-curtain--off {
  opacity: 0;
}

/* ── Scroll reveal ──────────────────────────────────
   Below-fold sections start hidden and slide up when
   they enter the viewport. The JS uses
   IntersectionObserver to add .liwo-revealed.         */
.liwo-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

.liwo-reveal.liwo-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Stagger children when multiple sections are in view at once */
.liwo-reveal.liwo-reveal-delay-1 { transition-delay: 0.1s; }
.liwo-reveal.liwo-reveal-delay-2 { transition-delay: 0.2s; }
.liwo-reveal.liwo-reveal-delay-3 { transition-delay: 0.3s; }

/* ── Safety: if JS fails, don't leave page blank ──── */
.no-js .liwo-curtain { display: none; }
.no-js .liwo-reveal  { opacity: 1; transform: none; }

/* ── Navbar load-safe ──────────────────────────────────
   The transparent-by-default and transition-suppression
   logic lives in the header container's own Custom CSS
   (navbar-container.css → Elementor post-14.css) so it
   compiles at the same specificity. See that file for
   the .liwo-transitions-ready gating pattern.           */

/* =================================================== */

.section {
  max-width: 1240px;
}

/* LiWo Primary CTA (clean, modern, high-contrast on dark bg) */
.liwo-btn-primary,
.liwo-btn-primary:visited {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  min-height: 46px;
  padding: 14px 18px;

  background: #F2F5F8;
  color: #111827;

  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.10);

  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;

  font-family: "Afacad", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;

  box-shadow: 0 8px 20px rgba(0,0,0,0.25), 0 1px 0 rgba(255,255,255,0.06);
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.liwo-btn-primary__icon {
  width: 18px;
  height: 18px;
  opacity: 0.95;
  transition: transform 160ms ease;
}

/* Hover */
.liwo-btn-primary:hover {
  background: #FFFFFF;
  transform: translateY(-1px);
  box-shadow: 0 10px 26px rgba(0,0,0,0.28), 0 1px 0 rgba(255,255,255,0.06);
}

.liwo-btn-primary:hover .liwo-btn-primary__icon {
  transform: translateX(2px);
}

/* Pressed */
.liwo-btn-primary:active {
  background: #D7DEE6;
  transform: translateY(1px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.22);
}

/* Focus (kills any theme purple ring and uses our neutral ring) */
.liwo-btn-primary:focus,
.liwo-btn-primary:focus-visible {
  outline: none !important;
}

.liwo-btn-primary:focus-visible {
  box-shadow: 0 0 0 3px rgba(242,245,248,0.16), 0 8px 20px rgba(0,0,0,0.25);
}

/* Stop Elementor/theme link colors from tinting CTA purple */
.liwo-btn-primary,
.liwo-btn-primary:visited,
.liwo-btn-primary:hover,
.liwo-btn-primary:active,
.liwo-btn-primary:focus,
.liwo-btn-primary:focus-visible {
  color: #111827 !important;
}

/* Ensure the chevron inherits the same locked color */
.liwo-btn-primary .liwo-btn-primary__icon {
  color: #111827 !important;
}

/* Card CTA strip (full-width footer bar) */
.lw-card-cta,
.lw-card-cta:visited {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;

  width: 100%;
  padding: 16px 18px;
  min-height: 52px;

  background: #F2F5F8;              /* same light CTA fill */
  color: #111827;                    /* dark text */
  text-decoration: none !important;

  border-top: 1px solid #40464E;     /* ties into card divider system */
  border-bottom-left-radius: 12px;   /* match your card radius */
  border-bottom-right-radius: 12px;

  font-family: "Afacad", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;

  transition: background 160ms ease, color 160ms ease;
  -webkit-tap-highlight-color: transparent;
}

.lw-card-cta__icon {
  width: 18px;
  height: 18px;
  opacity: 0.95;
  transition: transform 160ms ease;
}

/* Hover: subtle color shift only (no movement) */
.lw-card-cta:hover {
  background: #FFFFFF;              /* slight brighten */
  color: #111827;
}

.lw-card-cta:hover .lw-card-cta__icon {
  transform: translateX(2px);
}

/* Pressed (optional): slightly darker */
.lw-card-cta:active {
  background: #D7DEE6;
}

/* Focus (kills purple ring and keeps neutral focus) */
.lw-card-cta:focus,
.lw-card-cta:focus-visible {
  outline: none !important;
}

.lw-card-cta:focus-visible {
  box-shadow: 0 0 0 3px rgba(242,245,248,0.16);
}

/* Stop Elementor/theme link colors from tinting CARD CTA purple */
.lw-card-cta,
.lw-card-cta:visited,
.lw-card-cta:hover,
.lw-card-cta:active,
.lw-card-cta:focus,
.lw-card-cta:focus-visible {
  color: #111827 !important;
}

/* Ensure the chevron inherits the same locked color */
.lw-card-cta .lw-card-cta__icon {
  color: #111827 !important;
}

/* LiWo Secondary CTA (outlined, light text/border on dark bg) */
.liwo-btn-secondary,
.liwo-btn-secondary:visited {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  min-height: 46px;
  padding: 14px 18px;

  background: transparent;
  color: #D7DEE6;                           /* light body text */
  border-radius: 6px;
  border: 1px solid rgba(242,245,248,0.22); /* light border */

  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;

  font-family: "Afacad", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;

  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.liwo-btn-secondary__icon {
  width: 18px;
  height: 18px;
  opacity: 0.95;
  transition: transform 160ms ease;
}

/* Hover: subtle fill + slightly brighter border */
.liwo-btn-secondary:hover {
  background: rgba(242,245,248,0.06);
  border-color: rgba(242,245,248,0.34);
  transform: translateY(-1px);
}

.liwo-btn-secondary:hover .liwo-btn-secondary__icon {
  transform: translateX(2px);
}

/* Pressed */
.liwo-btn-secondary:active {
  background: rgba(242,245,248,0.10);
  transform: translateY(1px);
}

/* Focus (neutral ring, no purple) */
.liwo-btn-secondary:focus,
.liwo-btn-secondary:focus-visible {
  outline: none !important;
}

.liwo-btn-secondary:focus-visible {
  box-shadow: 0 0 0 3px rgba(242,245,248,0.14);
}

/* Stop Elementor/theme link colors from tinting secondary CTA */
.liwo-btn-secondary,
.liwo-btn-secondary:visited,
.liwo-btn-secondary:hover,
.liwo-btn-secondary:active,
.liwo-btn-secondary:focus,
.liwo-btn-secondary:focus-visible {
  color: #D7DEE6 !important;
}

.liwo-btn-secondary .liwo-btn-secondary__icon {
  color: #D7DEE6 !important;
}

/* ── Light-hero navbar text override ──
   On pages with class .liwo-light-hero, flip nav labels
   to dark when the header is in its transparent state
   (user at top of page). Once they scroll and the frosted
   glass kicks in, the default light text takes over. */

body.liwo-light-hero .liwo-header-transparent .elementor-heading-title a {
  color: #7A7A7A !important;
  text-shadow: 0 1px 6px rgba(255, 255, 255, 0.5);
  transition: color 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}


/* ═══════════════════════════════════════════════════════
   LiWo Metals — Password Protected Page Styling
   ═══════════════════════════════════════════════════════
   Targets the PPWP (Password Protect Pages) plugin markup.

   ADD TO: Elementor → Site Settings → Custom CSS
   (append to existing global styles)

   PPWP actual markup:
     <div class="ppw-post-password-container">
       <form class="ppw-post-password-form post-password-form">
         <div class="ppw-ppf-input-container">
           <div class="ppw-ppf-desc">...description...</div>
           <p class="ppw-ppf-field-container">
             <label class="ppw-pwd-label">Password:
               <input type="password" id="pwbox-352">
             </label>
             <input class="ppw-pwd-submit-btn" type="submit">
           </p>
         </div>
       </form>
     </div>
   ═══════════════════════════════════════════════════════ */


/* ── Outer container — center on page ── */
.ppw-post-password-container {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 60vh !important;
  padding: 40px 16px !important;
}

/* ── Form card ── */
.ppw-post-password-form {
  max-width: 420px !important;
  width: 100% !important;
  padding: 40px 32px !important;
  background: #383D43 !important;
  border: 1px solid #454C55 !important;
  border-radius: 16px !important;
  text-align: center !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.3) !important;
}

/* ── Description text ── */
.ppw-ppf-desc {
  font-family: 'Poppins', 'Segoe UI', sans-serif !important;
  font-size: 14px !important;
  color: #AAB6C2 !important;
  line-height: 1.6 !important;
  margin-bottom: 28px !important;
}

/* ── Field container — stack label and button vertically ── */
.ppw-ppf-field-container {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  margin: 0 !important;
}

/* ── Label ── */
.ppw-pwd-label {
  display: block !important;
  font-family: 'Afacad', 'Poppins', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #AAB6C2 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  text-align: left !important;
  width: 100% !important;
}

/* ── Password input ── */
.ppw-post-password-form input[type="password"] {
  display: block !important;
  width: 100% !important;
  margin-top: 8px !important;
  padding: 12px 14px !important;
  background: #26292D !important;
  border: 1px solid #454C55 !important;
  border-radius: 8px !important;
  color: #F2F5F8 !important;
  font-family: 'Afacad', 'Poppins', system-ui, sans-serif !important;
  font-size: 15px !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}

.ppw-post-password-form input[type="password"]:hover {
  border-color: #59636E !important;
}

.ppw-post-password-form input[type="password"]:focus {
  border-color: #59636E !important;
  box-shadow: 0 0 0 3px rgba(238,241,244,0.18) !important;
}

.ppw-post-password-form input[type="password"]::placeholder {
  color: #7F8B98 !important;
}

/* ── Submit button — matches .liwo-btn-primary ── */
.ppw-pwd-submit-btn {
  display: block !important;
  width: 100% !important;
  padding: 13px 28px !important;
  background: #F2F5F8 !important;
  color: #2C2F33 !important;
  border: none !important;
  border-radius: 6px !important;
  font-family: 'Afacad', 'Poppins', system-ui, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  cursor: pointer !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.24) !important;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important;
}

.ppw-pwd-submit-btn:hover {
  background: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 8px rgba(0,0,0,0.32) !important;
}

.ppw-pwd-submit-btn:active {
  background: #D7DEE6 !important;
  transform: translateY(0) !important;
}


/* ━━━━━━━━━━━━━━━  Tablet  ≤ 1024px  ━━━━━━━━━━━━━━━ */
@media (max-width: 1024px) {
  .ppw-post-password-form {
    padding: 32px 24px !important;
  }
}


/* ━━━━━━━━━━━━━━━  Mobile  ≤ 767px  ━━━━━━━━━━━━━━━ */
@media (max-width: 767px) {
  .ppw-post-password-container {
    padding: 24px 16px !important;
    min-height: 50vh !important;
  }

  .ppw-post-password-form {
    padding: 28px 20px !important;
  }
}/* End custom CSS */