.wpcf2 {
	padding-left: 20px;
	padding-right: 20px;
}

a:hover.wp-block-button__link {
	color: #ffbf00;
}

a:visited.wp-block-button__link {
	color: #ffbf00;
}

a:hover.wp-block-button__link {
	background-color: #004195;
}

button:not(.toggle), .button, .faux-button, .wp-block-button__link, .wp-block-file .wp-block-file__button, input[type="button"], input[type="reset"], input[type="submit"], .bg-accent, .bg-accent-hover:hover, .bg-accent-hover:focus, :root .has-accent-background-color, .comment-reply-link {
	background-color: #004195;
}

.lsh-membership {
	box-sizing: border-box;
	color: #172033;
	font-family: inherit;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	overflow: hidden;
	background: #ffffff;
}

.lsh-membership *,
  .lsh-membership ::before,
  .lsh-membership ::after {
	box-sizing: inherit;
}

.lsh-membership a {
	text-decoration: none;
}

.lsh-membership h1,
  .lsh-membership h2,
  .lsh-membership h3,
  .lsh-membership p {
	margin-top: 0;
}

.lsh-membership h1,
  .lsh-membership h2,
  .lsh-membership h3 {
	color: #172033;
	font-family: inherit;
}

.lsh-membership p {
	color: #5f6878;
	font-size: 17px;
	line-height: 1.6;
}

.lsh-membership__inner {
	width: min(1140px, calc(100% - 40px));
	margin: 0 auto;
}

.lsh-membership__hero {
	position: relative;
	min-height: 510px;
	display: grid;
	align-items: center;
	background: linear-gradient(90deg, rgba(0, 43, 99, 0.98) 0%, rgba(0, 65, 149, 0.91) 49%, rgba(0, 65, 149, 0.20) 100%), url('https://limericksporthuskies.ie/wp-content/uploads/2026/05/84-huskies_1000_2026-1.jpg?w=1600') center 42% / cover no-repeat;
}

.lsh-membership__hero-content {
	max-width: 690px;
	padding: 60px 0 58px;
}

.lsh-membership__eyebrow {
	display: inline-block;
	margin-bottom: 18px;
	padding: 8px 14px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.lsh-membership__hero h1 {
	max-width: 680px;
	margin-bottom: 18px;
	color: #ffffff !important;
	font-size: clamp(38px, 4.5vw, 54px) !important;
	line-height: 1.05 !important;
	letter-spacing: -.035em;
}

.lsh-membership__hero-lead {
	max-width: 650px;
	margin-bottom: 28px;
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: clamp(18px, 1.8vw, 21px) !important;
	line-height: 1.55 !important;
}

.lsh-membership__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.lsh-membership__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 24px;
	border: 2px solid transparent;
	border-radius: 8px;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
	transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.lsh-membership__button:hover {
	transform: translateY(-2px);
}

.lsh-membership__button--gold {
	border-color: #f3b51b !important;
	background: #f3b51b !important;
	color: #172033 !important;
	box-shadow: 0 10px 28px rgba(243, 181, 27, 0.28);
}

.lsh-membership__button--gold:hover {
	background: #ffc83d !important;
}

.lsh-membership__button--light {
	border-color: rgba(255, 255, 255, 0.78) !important;
	background: rgba(255, 255, 255, 0.10) !important;
	color: #ffffff !important;
}

.lsh-membership__button--light:hover {
	background: rgba(255, 255, 255, 0.18) !important;
}

.lsh-membership__button--blue {
	border-color: #004195 !important;
	background: #004195 !important;
	color: #ffffff !important;
	box-shadow: 0 10px 25px rgba(0, 65, 149, 0.20);
}

.lsh-membership__button--blue:hover {
	background: #002b63 !important;
}

.lsh-membership__button--outline {
	border-color: #004195 !important;
	background: transparent !important;
	color: #004195 !important;
}

.lsh-membership__button--outline:hover {
	background: #eaf3ff !important;
}

.lsh-membership__badges {
	position: relative;
	z-index: 2;
	margin-top: 0;
}

.lsh-membership__badge-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	overflow: hidden;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 18px 50px rgba(0, 43, 99, 0.12);
}

.lsh-membership__badge {
	padding: 24px 20px;
	text-align: center;
}

.lsh-membership__badge + .lsh-membership__badge {
	border-left: 1px solid #dfe4eb;
}

.lsh-membership__badge strong {
	display: block;
	margin-bottom: 4px;
	color: #002b63;
	font-size: 18px;
}

.lsh-membership__badge span {
	color: #5f6878;
	font-size: 15px;
}

.lsh-membership__section {
	padding: 50px 0;
}

.lsh-membership__section--grey {
	background: #f7f8fa;
}

.lsh-membership__section--blue-soft {
	background: #eaf3ff;
}

.lsh-membership__intro {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
	gap: 42px;
	align-items: start;
}

.lsh-membership__intro-copy h2,
  .lsh-membership__section-heading h2 {
	margin-bottom: 18px;
	font-size: clamp(28px, 3vw, 38px) !important;
	line-height: 1.12;
	letter-spacing: -.025em;
}

.lsh-membership__intro-copy p:last-child {
	margin-bottom: 0;
}

.lsh-membership__achievement-box {
	padding: 30px;
	border-top: 5px solid #f3b51b;
	border-radius: 10px;
	background: #002b63 !important;
	box-shadow: 0 18px 50px rgba(0, 43, 99, 0.12);
}

.lsh-membership__achievement-box h3 {
	margin-bottom: 16px;
	color: #ffffff !important;
	font-size: 23px;
}

.lsh-membership__achievement-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.lsh-membership__achievement-list li {
	position: relative;
	padding: 12px 0 12px 25px;
	border-top: 1px solid rgba(255, 255, 255, 0.17);
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 16px;
	line-height: 1.45;
}

.lsh-membership__achievement-list li:first-child {
	border-top: 0;
}

.lsh-membership__achievement-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 19px;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #f3b51b;
}

.lsh-membership__trial {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 22px;
	align-items: center;
	margin-top: 30px;
	padding: 24px 28px;
	border: 1px solid #bed9fb;
	border-radius: 10px;
	background: #eaf3ff !important;
}

.lsh-membership__trial-number {
	display: grid;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: #004195 !important;
	color: #ffffff !important;
	font-size: 28px;
	font-weight: 700;
}

.lsh-membership__trial h3 {
	margin-bottom: 4px;
	font-size: 23px;
}

.lsh-membership__trial p {
	margin-bottom: 0;
	font-size: 16px;
	line-height: 1.5;
}

.lsh-membership__section-heading {
	max-width: 780px;
	margin: 0 auto 28px;
	text-align: center;
}

.lsh-membership__section-heading p {
	margin-bottom: 0;
}

.lsh-membership__plans {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	align-items: stretch;
}

.lsh-membership__plan {
	position: relative;
	padding: 28px;
	border: 1px solid #dfe4eb;
	border-radius: 12px;
	background: #ffffff !important;
	box-shadow: 0 10px 30px rgba(23, 32, 51, 0.06);
}

.lsh-membership__plan--lotto {
	border: 2px solid #f3b51b !important;
	background: linear-gradient(145deg, #ffffff 0%, #fff8e5 100%) !important;
}

.lsh-membership__plan-label {
	display: inline-block;
	margin-bottom: 17px;
	padding: 6px 10px;
	border-radius: 999px;
	background: #eef1f5 !important;
	color: #002b63;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.lsh-membership__plan--lotto .lsh-membership__plan-label {
	background: #f3b51b !important;
	color: #172033 !important;
}

.lsh-membership__plan h3 {
	margin-bottom: 12px;
	font-size: 23px !important;
}

.lsh-membership__plan p {
	margin-bottom: 15px;
	font-size: 17px;
}

.lsh-membership__plan strong {
	color: #002b63;
}

.lsh-membership__plan-highlight {
	margin: 20px 0 0;
	padding: 16px 18px;
	border-left: 4px solid #f3b51b;
	background: rgba(255, 255, 255, 0.76);
	color: #172033;
	font-size: 16px;
	line-height: 1.5;
}

.lsh-membership__plan-cta {
	margin-top: 30px;
	text-align: center;
}

.lsh-membership__associate {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 28px;
	align-items: center;
	margin-top: 28px;
	padding: 28px 32px;
	border-radius: 12px;
	background: #002b63 !important;
	box-shadow: 0 18px 50px rgba(0, 43, 99, 0.12);
}

.lsh-membership__associate h3 {
	margin-bottom: 6px;
	color: #ffffff !important;
	font-size: 23px !important;
}

.lsh-membership__associate p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.83) !important;
	font-size: 16px;
	line-height: 1.55;
}

.lsh-membership__table-wrap {
	overflow-x: auto;
	border: 1px solid #dfe4eb;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 10px 30px rgba(23, 32, 51, 0.05);
}

.lsh-membership__table {
	width: 100%;
	min-width: 680px;
	border-collapse: collapse;
	margin: 0;
}

.lsh-membership__table th,
  .lsh-membership__table td {
	padding: 17px 20px;
	border: 0;
	border-bottom: 1px solid #dfe4eb;
	text-align: left;
	vertical-align: middle;
}

.lsh-membership__table th {
	background: #002b63 !important;
	color: #ffffff !important;
	font-size: 15px;
	letter-spacing: .035em;
	text-transform: uppercase;
}

.lsh-membership__table td {
	color: #5f6878;
	font-size: 16px;
}

.lsh-membership__table tr:nth-child(even) td {
	background: #f7f8fa;
}

.lsh-membership__table tbody tr:last-child td {
	border-bottom: 0;
}

.lsh-membership__table td:first-child {
	color: #002b63;
	font-weight: 700;
}

.lsh-membership__table-note {
	max-width: 860px;
	margin: 18px auto 0;
	color: #5f6878;
	font-size: 14px !important;
	text-align: center;
}

.lsh-membership__steps {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin-top: 26px;
}

.lsh-membership__step {
	padding: 28px;
	border-radius: 12px;
	background: #ffffff !important;
	box-shadow: 0 12px 34px rgba(0, 43, 99, 0.09);
}

.lsh-membership__step-number {
	display: grid;
	width: 46px;
	height: 46px;
	margin-bottom: 20px;
	border-radius: 50%;
	background: #004195 !important;
	color: #ffffff !important;
	font-size: 21px;
	font-weight: 700;
}

.lsh-membership__step:nth-child(2) .lsh-membership__step-number {
	background: #f3b51b !important;
	color: #172033 !important;
}

.lsh-membership__step h3 {
	margin-bottom: 10px;
	font-size: 23px !important;
}

.lsh-membership__step p {
	margin-bottom: 22px;
	font-size: 16px;
}

@media (max-width: 880px) {
	.lsh-membership__hero {
		min-height: 510px;
		background: linear-gradient(90deg, rgba(0, 43, 99, 0.97) 0%, rgba(0, 65, 149, 0.86) 64%, rgba(0, 65, 149, 0.34) 100%), url('https://limericksporthuskies.ie/wp-content/uploads/2026/05/84-huskies_1000_2026-1.jpg?w=1200') 58% center / cover no-repeat;
	}
	
	.lsh-membership__intro {
		grid-template-columns: 1fr;
		gap: 34px;
	}
	
	.lsh-membership__achievement-box {
		max-width: 620px;
	}
	
	.lsh-membership__trial {
		grid-template-columns: auto 1fr;
	}
	
	.lsh-membership__trial .lsh-membership__button {
		grid-column: 1 / -1;
	}
}

@media (max-width: 700px) {
	.lsh-membership {
		width: 100%;
		margin-left: 0;
	}
	
	.lsh-membership__inner {
		width: min(100% - 28px, 1140px);
	}
	
	.lsh-membership__hero {
		min-height: 540px;
		align-items: end;
		background: linear-gradient(0deg, rgba(0, 43, 99, 0.99) 0%, rgba(0, 65, 149, 0.90) 57%, rgba(0, 65, 149, 0.28) 100%), url('https://limericksporthuskies.ie/wp-content/uploads/2026/05/84-huskies_1000_2026-1.jpg?w=900') 53% 25% / cover no-repeat;
	}
	
	.lsh-membership__hero-content {
		padding: 140px 0 48px;
	}
	
	.lsh-membership__hero h1 {
		font-size: clamp(36px, 11vw, 48px) !important;
	}
	
	.lsh-membership__actions,
		    .lsh-membership__actions .lsh-membership__button {
		width: 100%;
	}
	
	.lsh-membership__badges {
		margin-top: 0;
		padding-top: 14px;
	}
	
	.lsh-membership__badge-grid,
		    .lsh-membership__plans,
		    .lsh-membership__steps {
		grid-template-columns: 1fr;
	}
	
	.lsh-membership__badge-grid {
		box-shadow: none;
	}
	
	.lsh-membership__badge {
		padding: 18px 16px;
	}
	
	.lsh-membership__badge + .lsh-membership__badge {
		border-left: 0;
		border-top: 1px solid #dfe4eb;
	}
	
	.lsh-membership__section {
		padding: 42px 0;
	}
	
	.lsh-membership__trial {
		grid-template-columns: 1fr;
		text-align: center;
	}
	
	.lsh-membership__trial-number {
		margin: 0 auto;
	}
	
	.lsh-membership__plan,
		    .lsh-membership__step {
		padding: 27px 23px;
	}
	
	.lsh-membership__associate {
		grid-template-columns: 1fr;
		padding: 27px 23px;
		text-align: center;
	}
	
	.lsh-membership__associate .lsh-membership__button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lsh-membership__button {
		transition: none;
	}
}

.lsh-membership__trial-number,
.lsh-membership__step-number {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	line-height: 1 !important;
	text-align: center !important;
}

/* HOMEPAGE DIVIDER: reduce white gap without covering the photograph */
body.page-id-2 .lsh-membership {
	margin-top: -60px !important;
	position: relative !important;
}

/* Thick Huskies blue-and-gold divider */
body.page-id-2 .lsh-membership::before {
	content: "";
	display: block;
	width: 100%;
	height: 14px;
	background: linear-gradient(90deg,
        #004195 0%,
        #004195 44%,
        #f3b51b 44%,
        #f3b51b 56%,
        #004195 56%,
        #004195 100%);
}

/* Prevent any previous centre-circle divider from appearing */
body.page-id-2 .lsh-membership::after {
	display: none !important;
}

/* Smaller adjustment on phones */
@media (max-width: 700px) {
	body.page-id-2 .lsh-membership {
		margin-top: -30px !important;
	}
	
	body.page-id-2 .lsh-membership::before {
		height: 10px;
	}
}

/* HUSKIES GLOBAL FOOTER */

#tertiary.footer-widget-area {
    background: #002b63;
    color: #eaf3ff;
    border-top: 6px solid #004195;
}

#tertiary .footer-widget,
#tertiary .widget,
#tertiary h2,
#tertiary p {
    color: #eaf3ff;
}

#tertiary h2 {
    color: #ffffff;
}

#tertiary a {
    color: #ffffff;
}

#tertiary a:hover,
#tertiary a:focus {
    color: #eaf3ff;
}

#tertiary .wp-block-button__link {
    background: #004195;
    color: #ffffff;
    border: 2px solid #ffffff;
}

#tertiary .wp-block-button__link:hover,
#tertiary .wp-block-button__link:focus {
    background: #ffffff;
    color: #002b63;
}

#colophon.site-footer {
    background: #002b63;
    color: #eaf3ff;
    border-top: 1px solid #004195;
}

#colophon.site-footer a {
    color: #eaf3ff;
}

/* REMOVE EMPTY HOMEPAGE THEME HERO */

body.home #content > .hero.without-featured-image {
    display: none !important;
}