/* Footer lists: remove bullets and left indent */
.site-footer ul,
.site-footer ol {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}
/*
 Theme Name:   Product Leaders Alliance
 Theme URI:    https://productleadersalliance.com/
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      1.0
*/

body { overflow-x: hidden; }

/* ==========================================================================
   Scrollbar – match theme (track: light grey; thumb: CTA blue)
   ========================================================================== */

/* Firefox */
html {
	scrollbar-color: var(--pla-cta-blue, #2271b1) var(--global-color-10, #e5e7eb);
	scrollbar-width: thin;
}

/* WebKit (Chrome, Safari, Edge) */
html::-webkit-scrollbar {
	width: 12px;
	height: 12px;
}

html::-webkit-scrollbar-track {
	background: var(--global-color-10, #e5e7eb);
}

html::-webkit-scrollbar-thumb {
	background: var(--pla-cta-blue, #2271b1);
	border-radius: 6px;
	border: 3px solid var(--global-color-10, #e5e7eb);
}

html::-webkit-scrollbar-thumb:hover {
	background: var(--pla-accent, #135e96);
}

/* Logo slider – grayscale, opacity, smaller size */
#logo-slider .logoslider img {
	filter: grayscale(100%);
	opacity: 0.75;
	max-width: 75%;
	height: auto;
	transition: filter 0.25s ease, opacity 0.25s ease;
}

#logo-slider .logoslider a:hover img {
	filter: grayscale(0%);
	opacity: 1;
}

/* ==========================================================================
   Site header & main nav
   ========================================================================== */

/* 1px bottom border on header inner */
.site-header > .inside-header.grid-container {
	border-bottom: 1px solid var(--global-color-10);
}

/* Divider before Members Login: vertical line with left/right margin */
.main-navigation .menu-item.header-login {
	border-left: 1px solid var(--global-color-10);
	margin-left: 1rem;
	padding-left: 1rem;
}

/* Gap between Members Login and Register */
.main-navigation .menu-item.header-register {
	margin-left: 0.75rem;
}

/* Membership Account menu item: show user icon instead of text */
.main-navigation .menu-item.account > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin-left: 0.75rem;
	padding: 0;
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	overflow: hidden;
	background-color: transparent;
	color: var(--black);
	border: 2px solid var(--pla-cta-blue, #2271b1);
	border-radius: 50%;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232271b1'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.2rem 1.2rem;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.main-navigation .menu-item.account > a:hover,
.main-navigation .menu-item.account > a:focus {
	background-color: var(--pla-cta-blue, #2271b1);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
	border-color: var(--pla-accent, #135e96);
}
.main-navigation .menu-item.account.current-menu-item > a {
	background-color: var(--pla-cta-blue, #2271b1);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
	border-color: var(--pla-cta-blue, #2271b1);
}

/* Members Login: outlined button */
.main-navigation .menu-item.header-login a {
	display: inline-block;
	padding: 0.5rem 1rem;
	border: 1px solid var(--global-color-10);
	border-radius: 6px;
	color: var(--black);
	background: transparent;
	transition: border-color 0.2s ease, color 0.2s ease;
}

.main-navigation .menu-item.header-login a:hover {
	border-color: var(--pla-cta-blue);
	color: var(--pla-cta-blue);
}

/* Register: solid CTA button */
.main-navigation .menu-item.header-register a {
	display: inline-block;
	padding: 0.5rem 1rem;
	border: none;
	border-radius: 6px;
	background: var(--pla-cta-blue);
	color: #fff;
	transition: background 0.2s ease, color 0.2s ease;
}

.main-navigation .menu-item.header-register a:hover,
.main-navigation .menu-item.header-register a:focus {
	background: var(--pla-accent, #135e96);
	color: #fff !important;
}

/* Logged-in nav state:
   - hide Login/Register buttons
   - show full "Membership Account" text instead of icon-only account button */
body.logged-in .main-navigation .menu-item.header-login,
body.logged-in .main-navigation .menu-item.header-register {
	display: none !important;
}

body.logged-in .main-navigation .menu-item.account {
	margin-left: 0.5rem;
}

body.logged-in .main-navigation .menu-item.account > a {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	width: auto;
	height: auto;
	margin-left: 0;
	padding: 0.45rem 0.8rem;
	font-size: inherit;
	line-height: inherit;
	text-indent: 0;
	overflow: visible;
	background-image: none !important;
	background-color: transparent;
	border: 2px solid var(--pla-cta-blue, #2271b1);
	border-radius: 999px;
	color: var(--black, #1d1d1d);
}

body.logged-in .main-navigation .menu-item.account > a::before {
	content: "";
	width: 1rem;
	height: 1rem;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1rem 1rem;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232271b1'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
}

body.logged-in .main-navigation .menu-item.account > a:hover,
body.logged-in .main-navigation .menu-item.account > a:focus,
body.logged-in .main-navigation .menu-item.account.current-menu-item > a {
	background-color: var(--pla-cta-blue, #2271b1);
	background-image: none !important;
	border-color: var(--pla-accent, #135e96);
	color: #fff;
	text-decoration: none;
}

body.logged-in .main-navigation .menu-item.account > a:hover::before,
body.logged-in .main-navigation .menu-item.account > a:focus::before,
body.logged-in .main-navigation .menu-item.account.current-menu-item > a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
}

/* ==========================================================================
   Viewed resources shortcode [pla_viewed_resources] – PMPro card; minor overrides
   ========================================================================== */
/* Date text and link styling inside the viewed-resources PMPro card */
.pla-viewed-resources-section .pla-viewed-resources__date {
	display: inline;
	font-size: 0.9em;
	color: var(--pmpro--color--border, #777);
}
.pla-viewed-resources-section .pmpro_card_content a {
	color: var(--pla-cta-blue, #2271b1);
}
.pla-viewed-resources-section .pmpro_card_content a:hover {
	text-decoration: underline;
}

/* Insightly form wrapper */
.pla-insightly-form {
	max-width: 520px;
	margin: 2rem auto;
	padding: 1.5rem 1.75rem;
	background: #fff;
	border-radius: 8px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	font-family: inherit;
	font-size: 0.95rem;
	color: var(--black, #111827);
  }
  
  /* Reset the default stacked labels/inputs to a clean vertical layout */
  .pla-insightly-form form[name="insightly_form"] {
	margin: 0;
  }
  
  .pla-insightly-form label {
	display: block;
	margin: 0 0 0.25rem;
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--black, #111827);
  }
  
  .pla-insightly-form input[type="text"],
  .pla-insightly-form select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0.55rem 0.75rem;
	margin: 0 0 0.85rem;
	font-size: 0.95rem;
	line-height: 1.4;
	border-radius: 6px;
	border: 1px solid rgba(0, 0, 0, 0.14);
	background-color: #fff;
	color: var(--black, #111827);
  }
  
  .pla-insightly-form input[type="text"]:focus,
  .pla-insightly-form select:focus {
	border-color: var(--pla-cta-blue, #2271b1);
	box-shadow: 0 0 0 2px rgba(34, 113, 177, 0.18);
	outline: none;
  }
  
  /* Error messages from Insightly */
  .pla-insightly-form .error-header-main,
  .pla-insightly-form .error-message-field {
	margin: 0 0 0.75rem;
	font-size: 0.85rem;
	color: var(--uds-color-red-600, #e82713) !important;
  }
  
  /* Submit button – match your CTA buttons */
  .pla-insightly-form #formSubmitBtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem 1.4rem;
	margin-top: 0.25rem;
	border-radius: 999px;
	border: 1px solid var(--pla-cta-blue, #2271b1);
	background-color: var(--pla-cta-blue, #2271b1);
	color: #fff;
	font-weight: 600;
	font-size: 0.95rem;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease,
				box-shadow 0.15s ease, transform 0.05s ease;
  }
  
  .pla-insightly-form #formSubmitBtn:hover {
	background-color: var(--pla-accent, #135e96);
	border-color: var(--pla-accent, #135e96);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
	transform: translateY(-1px);
  }
  
  .pla-insightly-form #formSubmitBtn:focus-visible {
	outline: 2px solid var(--pla-cta-blue, #2271b1);
	outline-offset: 2px;
  }
  
  /* Mobile tweaks */
  @media (max-width: 600px) {
	.pla-insightly-form {
	  margin: 1.5rem 1rem;
	  padding: 1.25rem 1.25rem;
	}
  }

/* Post-registration welcome notice */
.pla-welcome-notice {
	margin: 1.5rem auto 1.5rem auto;
    padding: 1rem 1.25rem;
    background: rgba(34, 113, 177, 0.08);
    border-left: 4px solid var(--pla-cta-blue, #2271b1);
    border-radius: 0 6px 6px 0;
    max-width: 1200px;
}
.pla-welcome-notice__text {
	margin: 0;
	font-size: 1rem;
	line-height: 1.5;
	color: var(--black, #1d1d1d);
}