/**
 * Theme Name:     PeepSo Theme: Gecko Child
 * Author:         PeepSo
 * Template:       peepso-theme-gecko
 * Text Domain:	   peepso-theme-gecko-child
 * Description:    Thank you for choosing Gecko as your theme. We
 */

/* Hide Gecko/PeepSo header + its spacing on homepage only */
body.home .gc-header__wrapper,
body.home .gc-header,
body.home header.gc-header,
body.home .gc-topbar,
body.home .gc-stickybar {
  display: none !important;
}

/* Gecko adds inline padding-top when header is sticky; remove it on home */
body.home {
  padding-top: 0 !important;
}

/* =========================
   Popup Maker + CT Form UI
   ========================= */

/* Popup container */
.pum-container.pum-responsive {
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.25) !important;
}

/* Popup inner spacing */
.pum-content {
  padding: 24px !important;
}

/* Header inside popup */
.ct-popup-head h2{
  margin: 0 0 8px !important;
  font-size: 26px !important;
}
.ct-popup-sub{
  margin: 0 0 18px !important;
  color: #6b7280 !important;
  font-size: 14px !important;
}

/* Remove big card look inside popup (your ct-box) */
.pum-content .ct-box{
  margin: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* Close button */
.pum-close{
  width: 38px !important;
  height: 38px !important;
  border-radius: 999px !important;
}


/* ===============================
   Popup Maker: keep site visible
   =============================== */

/* The overlay behind the popup */
.pum-overlay {
  background: rgba(0,0,0,.55) !important;   /* dim the site instead of white */
}

/* If your theme/plugin uses this too */
.pum-background-overlay {
  background: rgba(0,0,0,.55) !important;
}

/* Make sure overlay is actually shown */
.pum-overlay.pum-active {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Popup container stays on top */
.pum-container {
  z-index: 999999 !important;
}

/* Overlay behind it (still above page) */
.pum-overlay {
  z-index: 999998 !important;
}

/* Optional: blur the site behind (works in modern browsers) */
.pum-overlay.pum-active {
  backdrop-filter: blur(6px);
}

/* Some setups use a wrapper that turns white */
.pum-overlay .pum-container,
.pum-overlay .pum-content,
.pum-overlay .pum-content + .pum-close {
  background-color: initial !important;
}




/* ============================================================
   CT Registration - Popup/Form Layout Fix (no media queries)
   ============================================================ */

/* Make the form inside your shortcode look clean */
.ct-box form{
  display: block !important;
}

/* Each label becomes a block row */
.ct-box form label{
  display: block !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  font-weight: 600 !important;
  color: #263238 !important;
  font-size: 14px !important;
}

/* Make all inputs/selects full width */
.ct-box form input[type="text"],
.ct-box form input[type="email"],
.ct-box form input[type="password"],
.ct-box form input[type="tel"],
.ct-box form input[type="file"],
.ct-box form select,
.ct-box form textarea{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px 14px !important;
  margin: 6px 0 0 !important;
  border-radius: 10px !important;
  border: 1px solid #e6ebec !important;
  background: #fbfcfd !important;
  font-size: 15px !important;
}

/* Fix the ugly tiny height inputs from theme */
.ct-box form input{
  height: auto !important;
  line-height: 1.4 !important;
}

/* Select field height fix */
.ct-box form select{
  min-height: 44px !important;
}

/* File input spacing */
.ct-box form input[type="file"]{
  padding: 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Focus style */
.ct-box form input:focus,
.ct-box form select:focus,
.ct-box form textarea:focus{
  outline: none !important;
  border-color: #23362F !important;
  box-shadow: 0 8px 20px rgba(35,54,47,0.10) !important;
}

/* Button */
.ct-box .ct-submit,
.ct-box button[type="submit"]{
  display: inline-block !important;
  background: #0263E2 !important;
  color: #fff !important;
  padding: 12px 18px !important;
  border-radius: 12px !important;
  border: 0 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  cursor: pointer !important;
  box-shadow: 0 10px 22px rgba(35,54,47,.18) !important;
  transition: transform 0.25s ease, background-color 0.25s ease;	
}


.ct-submit:hover,
.ct-submit:focus,
.ct-submit:active{
    background-color: #0263E2;
    transform: scale(1.08);
}

/* Remove any theme that forces labels/inputs inline */
.ct-box form label,
.ct-box form label *{
  float: none !important;
  clear: both !important;
}

/* Optional: make the popup content not overflow weirdly */
.elementor-popup-modal .dialog-message,
.elementor-popup-modal .dialog-widget-content{
  overflow: visible !important;
}

/* ============================================================
   ELEMENTOR POPUP IMPROVEMENT
   ============================================================ */

/* Make popup rounded + elegant */
.elementor-popup-modal .dialog-widget-content {
  border-radius: 20px !important;
  padding: 30px !important;
  overflow: hidden !important;
}

/* Enable scrolling inside popup */
.elementor-popup-modal .dialog-message {
  max-height: 85vh !important;
  overflow-y: auto !important;
  padding-right: 8px !important;
}

/* Smooth scrollbar */
.elementor-popup-modal .dialog-message::-webkit-scrollbar {
  width: 6px;
}
.elementor-popup-modal .dialog-message::-webkit-scrollbar-thumb {
  background: #23362F;
  border-radius: 20px;
}

/* ============================================================
   FORM TYPOGRAPHY
   ============================================================ */

.ct-box h2 {
  font-size: 28px !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.ct-box .ct-note {
  font-size: 14px !important;
  color: #5f6b6b !important;
  margin-bottom: 20px !important;
}

/* Labels */
.ct-box form label {
  display: block !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  margin-bottom: 14px !important;
  color: #1f2937 !important;
}

/* Inputs */
.ct-box form input,
.ct-box form select,
.ct-box form textarea {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 14px 16px !important;
  border-radius: 14px !important;
  border: 1px solid #e5e7eb !important;
  background: #f9fafb !important;
  font-size: 15px !important;
  transition: all .2s ease !important;
  margin-top: 6px !important;
}

/* Larger fields */
.ct-box form select {
  min-height: 48px !important;
}

.ct-box form input[type="password"],
.ct-box form input[type="email"],
.ct-box form input[type="text"] {
  min-height: 48px !important;
}

/* Focus state */
.ct-box form input:focus,
.ct-box form select:focus,
.ct-box form textarea:focus {
  border-color: #23362F !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(35,54,47,0.08) !important;
  outline: none !important;
}

/* Button styling */
/* ================================
   STABLE BUTTON STYLE (NO ANIMATION)
   ================================ */

.ct-box button[type="submit"],
.ct-box .ct-submit {
  background: #0263E2 !important;
  color: #ffffff !important;
  padding: 14px 22px !important;
  border-radius: 16px !important;
  border: none !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  margin-top: 12px !important;

  transition: none !important;
  transform: none !important;
  box-shadow: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

/* Hover */
.ct-box button[type="submit"]:hover,
.ct-box .ct-submit:hover {
  background: #0263E2 !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
  transform: scale(1.08) !important;
}

/* Active */
.ct-box button[type="submit"]:active,
.ct-box .ct-submit:active {
  background: #0263E2 !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
  transform: scale(1.08) !important;
}

body {
  overflow-x: hidden;
}

.charley-hero-login-box h3 {
    color: #000;
}

.charley-forgot-password a,
.charley-forgot-password a:hover {
    color: #000;
}

.charley-hero-login-box input[type="text"],
.charley-hero-login-box input[type="password"] {
    width: 100%;
    height: 72px;
    padding: 0 24px;
    border: 1px solid #d9d9d9;
    border-radius: 50px;
    font-size: 18px;
    color: #333333;
    background: #ffffff;
    box-sizing: border-box;
}

.charley-hero-login-box input[type="text"]::placeholder,
.charley-hero-login-box input[type="password"]::placeholder {
    color: #8a8f98;
    opacity: 1;
}

.charley-hero-login-box input[type="text"]::-webkit-input-placeholder,
.charley-hero-login-box input[type="password"]::-webkit-input-placeholder {
    color: #8a8f98;
}

.charley-hero-login-box input[type="text"]::-moz-placeholder,
.charley-hero-login-box input[type="password"]::-moz-placeholder {
    color: #8a8f98;
    opacity: 1;
}

.charley-hero-login-box input[type="text"]:-ms-input-placeholder,
.charley-hero-login-box input[type="password"]:-ms-input-placeholder {
    color: #8a8f98;
}

/* Remove hover/focus border color change */
.charley-hero-login-box input[type="text"],
.charley-hero-login-box input[type="password"] {
    border: 1px solid #d9d9d9;
    outline: none;
    box-shadow: none;
}

/* Prevent border color change on hover */
.charley-hero-login-box input[type="text"]:hover,
.charley-hero-login-box input[type="password"]:hover {
    border: 1px solid #d9d9d9;
}

/* Prevent border color change on focus (when clicking field) */
.charley-hero-login-box input[type="text"]:focus,
.charley-hero-login-box input[type="password"]:focus {
    border: 1px solid #d9d9d9;
    outline: none;
    box-shadow: none;
}
/* Smooth animation */
.charley-hero-login-box .login-submit input[type="submit"] {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* Grow effect on hover */
.charley-hero-login-box .login-submit input[type="submit"]:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}
.charley-hero-login-box .login-submit input[type="submit"]:hover {
    background: #0263E2 !important;
}

#wp-submit {
  background: #0263E2 !important;
  border-color: #0263E2 !important;
  color: #ffffff !important;
}

/* Hover */
#wp-submit:hover {
  background: #0255c3 !important;
  border-color: #0255c3 !important;
  color: #ffffff !important;
}

/* Make Elementor background pointer a pill */
.home-pill-menu .elementor-item:before {
  border-radius: 999px !important;
}

/* (optional but safer — some versions use :after) */
.home-pill-menu .elementor-item:after {
  border-radius: 999px !important;
}

/* Home Page Line Break */

.faded-line {
  width: 430px;
  max-width: 70%;
  height: 2px;
  margin: 5px auto 0;
  border-radius: 999px;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.35) 18%,
    rgba(0, 0, 0, 0.85) 50%,
    rgba(0, 0, 0, 0.35) 82%,
    rgba(0, 0, 0, 0) 100%
  );
  filter: blur(0.3px);
}