/* SilverTech added Style */

#eWebFrameWorkMiddleRow {
    #eWebContentPaneTableRowMiddle {
		/* Hide the last row with help text */
		tr:last-of-type {
			display: none;
		}

		/* Hide the heading and intro text */
		tr:first-of-type {
			display: none;
		}

		> #ContentPane {
			display: flex;
			align-items: center;
			justify-content: center;
		}

		.LayoutMainTable::before {
			content: "Welcome Back!";
			font-family: quincy-cf, serif;
			font-weight: 900;
			color: #002958;
			font-size: 40px;
			line-height: 48px;
			margin-inline: auto;
            display: block;
            max-inline-size: 800px;
			padding-block-end: 24px;
		}

		/* Main layout container */
		.LayoutMainTable > tbody {
			display: contents;
		}

		/* Make the main row use grid */
		.LayoutMainTable > tbody > tr:nth-of-type(2) {
			display: grid;
			grid-template-columns: 1fr;
			grid-template-rows: auto auto auto;
			max-width: 800px;
			margin: 0 auto;
			position: relative;
		}

		/* Hide empty cells */
		td[data-avname="CELL_2_2"],
		td[data-avname="CELL_3_1"] {
			display: none;
		}

		/* Login form cell */
		td[data-avname="CELL_2_1"] {
			grid-column: 1;
			grid-row: 1;
			inline-size: 100%;
		}

		/* Create account cell */
		td[data-avname="CELL_2_3"] {
			grid-column: 1;
			grid-row: 2;
			inline-size: 100%;
		}

		.btn, .btn-primary {
			background-color: #CEDC00;
			color: #002958 !important;
			font-family: quincy-cf, serif;
			display: block;
			text-align: center;
			transition: background-color 0.3s ease, color 0.3s ease;
			text-transform: capitalize;
			font-weight: 700;
			padding: 14px;
			border: none;
			font-size: 16px;
			margin: 0;
		}

		.btn:hover, .btn-primary:hover {
			background-color: #00677F;
			color: #fff !important;
		}

		#eWebLoginControl_LoginTable {
			display: grid;
			grid-template-columns: 1fr 1fr;
			width: 100%;

			tbody {
				display: contents;
			}

			tr {
				display: contents;
			}

			td {
				display: block;
			}

			.LeftUITableHeaderTD {
				display: none;
			}

			/* Email label */
			tr:nth-of-type(2) td {
				grid-column: 1;
				grid-row: 1;
			}

			/* Email input */
			tr:nth-of-type(3) td {
				grid-column: 1;
				grid-row: 2;
			}

			/* Hide "Not sure which email" link */
			tr:nth-of-type(4) {
				display: none;
			}

			/* Password label */
			tr:nth-of-type(5) td {
				grid-column: 2;
				grid-row: 1;
			}

			/* Password input */
			tr:nth-of-type(6) td {
				grid-column: 2;
				grid-row: 2;
			}

			/* Login button */
			tr:nth-of-type(7) td {
				grid-column: 1 / -1;
				grid-row: 3;
				padding-block-start: 24px;
			}

			tr:nth-of-type(7) td::before {
				content: "";
				display: block;
				width: 100%;
				height: 1px;
				background-color: #D8EBEB;
				margin-block-end: 24px;
			}

			/* Hide remember me checkbox */
			tr:nth-of-type(8) {
				display: none;
			}

			/* Forgot password link */
			tr:nth-of-type(9) td {
				grid-column: 1 / -1;
				grid-row: 4;
				padding-block-start: 15px;
				font-family: rival-sans, sans-serif;
				font-weight: 400;
				font-size: 16px;
				line-height: 24px;
				color: #002958;
				text-transform: capitalize;
				font-weight: 600;
			}

			tr:nth-of-type(9) td a {
				background: transparent;
				color: #002958 !important;
				font-family: quincy-cf, serif;
				display: block;
				text-align: center;
				transition: background-color 0.3s ease, color 0.3s ease;
				text-transform: capitalize;
				font-weight: 700;
				padding: 14px 0px;
				border: 2px solid #CEDC00;
				font-size: 16px;
				margin: 0;
				width: 100%;
				border-radius: 4px;
				text-decoration: none;
				line-height: 18px;
				max-width: calc(100% - 4px);
			}

			tr:nth-of-type(9) td a:hover, tr:nth-of-type(9) td a:focus{
				background-color: #00677F;
				color: #fff !important;
				border-color: #00677F;
			}

			/* Hide original error message (moved by JS) */
			tr:nth-of-type(10) {
				display: none;
			}

			.DataFormLabel {
				font-family: rival-sans, sans-serif;
				font-weight: 400;
				font-size: 16px;
				line-height: 24px;
				color: #002958;
				text-transform: capitalize;
				font-weight: 600;

				input {
					padding-block: 18px;
					padding-inline: 12px !important;
					border: 1px solid #BACECE;
					border-radius: 0;
					width: 100%;
					box-sizing: border-box;
					font-family: rival-sans, sans-serif;
					font-size: 16px;
				}
			}

			.DataFormLabel:not(:has(input), :has(.DataFormLabelErrorMessage))::after {
				content: " *";
				color: #BD0000;
			}

			/* Password input wrapper for positioning */
			.password-input-wrapper {
				position: relative;
				width: 100%;
			}

			/* Password toggle button */
			.password-toggle-btn {
				position: absolute;
				right: 14px;
				top: 50%;
				transform: translateY(-50%);
				background: transparent;
				border: none;
				color: #002958;
				font-size: 16px;
				font-weight: 400;
				cursor: pointer;
				padding: 0;
				display: flex;
				align-items: center;
				gap: 4px;
				transition: color 0.2s ease;
				font-family: rival-sans, sans-serif;

				&:hover {
					color: #00677F;
				}

				.password-toggle-icon {
					font-size: 18px;
					position: relative;
					display: inline-block;

					&.slashed::after {
						content: '';
						position: absolute;
						left: 50%;
						top: 50%;
						width: 120%;
						height: 2px;
						background-color: currentColor;
						transform: translate(-50%, -50%) rotate(-45deg);
					}
				}
			}
		}

		/* Error message wrapper - positioned after create account */
		.login-error-wrapper {
			grid-column: 1;
			grid-row: 3;
			width: 100%;
			padding-top: 20px;
			text-align: center;

			.DataFormLabelErrorMessage {
				background-color: transparent;
				color: #BD0000;
				display: block;
				font-family: rival-sans, sans-serif;
				font-size: 16px;
			}
		}

		/* Create account section styling */
		td[data-avname="CELL_2_3"] {
			.module-header,
			.module-bodyg,
			br,
			p {
				display: none;
			}

			> div {
				padding: 0;
			}

			.btn-primary {
				background-color: transparent;
				color: #002958 !important;
				border: 2px solid #CEDC00;
				margin-top: 10px;
			}

			.btn-primary:hover {
				background-color: #00677F;
				color: #fff !important;
				border-color: #00677F;
			}
		}

		/* Mobile responsive - stack email and password */
		@media (max-width: 768px) {
			#eWebLoginControl_LoginTable {
				grid-template-columns: 1fr;

				/* Email label */
				tr:nth-of-type(2) td {
					grid-column: 1;
					grid-row: 1;
				}

				/* Email input */
				tr:nth-of-type(3) td {
					grid-column: 1;
					grid-row: 2;
				}

				/* Password label */
				tr:nth-of-type(5) td {
					grid-column: 1;
					grid-row: 3;
				}

				/* Password input */
				tr:nth-of-type(6) td {
					grid-column: 1;
					grid-row: 4;
				}

				/* Login button */
				tr:nth-of-type(7) td {
					grid-column: 1;
					grid-row: 5;
				}

				/* Forgot password button */
				tr:nth-of-type(9) td {
					grid-column: 1;
					grid-row: 6;
				}
			}
		}
	}
}

@media (min-width: 1200px) {
.c-header__utilityTopNav {
	display: grid;
	grid-template-columns: repeat(5, auto);
	grid-template-rows: auto;
	grid-template-areas:
		"profile search cart store login";
	gap: 24px;

	a:nth-of-type(1),
	a:nth-of-type(2) {
		border: 2px solid #CEDC00 !important;
		text-transform: capitalize;
		font-family: "quincy-cf", serif;
		block-size: 52px;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
		padding: 0 !important;
		margin: 0;
		min-inline-size: 120px;
		color: #212121;
  		border-radius: 5px;
		font-weight: 700 !important;
	}

	a:nth-of-type(1) {
		grid-area: login;
		background-color: #CEDC00;
	}

	a:nth-of-type(1):hover {
		height: 52px;
		margin: inherit;
		background-color: #00677F;
		border-color: #00677F !important;
		color: #fff !important;
	}
	a:nth-of-type(2) {
		grid-area: store;
		margin-left: 24px;
	}
	a:nth-of-type(2):hover {
		height: 52px;
		background-color: #00677F;
		border-color: #00677F !important;
		color: #fff !important;
		margin: 0 0 0 24px !important;
	}
	a:nth-of-type(3),
	a:nth-of-type(4),
	a:nth-of-type(5) {
		color: #212121;
		block-size: 52px;
		inline-size: 52px;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		border: 2px solid #CEDC00 !important;
		transition: background-color 0.3s ease, border-color 0.3s ease;
		margin: 0;
	}

	a:nth-of-type(3):hover,
	a:nth-of-type(4):hover,
	a:nth-of-type(5):hover {
		height: 52px;
		background-color: #f2f2f2;
		border-color: #00677F !important;
		color: #fff !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	a:nth-of-type(3) {
		grid-area: profile;
		position: relative;
	}

	a:nth-of-type(3)::after {
		content: 'Profile';
		position: absolute;
		color: black;
		top: 115%;
		text-transform: capitalize;
		font-family: "quincy-cf", serif;
	}

	a:nth-of-type(4) {
		grid-area: cart;
		position: relative;

		img {
			width: 30px;
		}
	}

	a:nth-of-type(4)::after {
		content: 'Cart';
		position: absolute;
		color: black;
		top: 115%;
		text-transform: capitalize;
		font-family: "quincy-cf", serif;
	}

	a:nth-of-type(5) {
		grid-area: search;
		padding: 0 !important;
		position: relative;
	}

	a:nth-of-type(5)::after {
		content: 'Search';
		position: absolute;
		color: black;
		top: 115%;
		text-transform: capitalize;
		font-family: "quincy-cf", serif;
	}
}
}

@media (max-width: 1199px) {
	.c-header__utilityTopNav > a {
		padding-inline: 0 !important;
		width: 100% !important;
	}
	
	.c-header__hamburger {
		font-family: "quincy-cf", serif;
		font-weight: 400;
		font-size: 14px;
		text-align: center;
		color: #212121;
		text-transform: capitalize;
	}

	.c-header__hamburgerIcon {
		border-radius: 0;
		margin-block-end: 6px;
		border: 2px solid #CEDC00 !important;

		.line {
			width: 12px;
			height: 2px;
			margin: 3px auto;
		}
	}

	.c-header__hamburgerIcon.is-active .line:nth-child(1) {
		transform: translateY(4px) rotate(45deg);
		width: 26px;
		height: 1px;
	}
	.c-header__hamburgerIcon.is-active .line:nth-child(2) {
		opacity: 0;
	}
	.c-header__hamburgerIcon.is-active .line:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
		width: 26px;
		height: 1px;
	}

	.c-header__utilityTopNav .online-store {
		display: none !important;
	}

	.online-store.swapped {
		margin-left: auto !important;
		background-color: transparent;
		border: none;
		box-shadow: none;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		padding-right: 0 !important;

		img {
			padding: 10px !important;
			border: 2px solid #CEDC00 !important;
			width: 30px;
		}
	}
	
	.online-store.swapped::after {
		color: black;
		text-transform: capitalize;
		font-family: "quincy-cf", serif;
		margin-top: 5px;
	}

	.c-header__mobSearch {
		position: relative;
		margin-left: 5px;
		display: flex;
		color: black;
		justify-content: center;
		align-items: center;
		text-transform: uppercase;
		gap: 12px;
		font-weight: 400;
		width: 100%;
	}
	.c-header__mobSearchIcon {
		width: fit-content !important;
		padding: 0 !important;
		height: 100%;
		display: flex !important;
		align-items: center;
		justify-content: center;

		img {
			height: 50%;
		}
	}
	.c-header__mobSearchIcon::after {
		content: "";
		position: absolute;
		inset: 0;

	}
}