@font-face {
	font-family: 'eurostileregular';
	src: url('font/eurosti-webfont.eot');
	src: url('font/eurosti-webfont.eot?#iefix') format('embedded-opentype'),
		url('font/eurosti-webfont.svg#eurostileregular') format('svg'),
		url('font/eurosti-webfont.woff') format('woff'),
		url('font/eurosti-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'jellyka';
	src: url('font/jellyka_saint-andrews_queen-webfont.eot');
	src: url('font/jellyka_saint-andrews_queen-webfont.eot?#iefix') format('embedded-opentype'),
		url('font/jellyka_saint-andrews_queen-webfont.svg#eurostileregular') format('svg'),
		url('font/jellyka_saint-andrews_queen-webfont.woff') format('woff'),
		url('font/jellyka_saint-andrews_queen-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

html {
	text-rendering: optimizeLegibility !important;
	-webkit-font-smoothing: antialiased !important;
	-webkit-font-smoothing: subpixel-antialiased !important;
	font-smooth: always;
	-webkit-text-stroke: 3px transparent;
}

body {
	font-size: calc(25px + .8vw);
	background-color: #FCFCFC;
	color: #4D4D4D;
	/*99% white with grey 30 text*/
}

html,
body {
	width: 100vw;
	overflow-x: hidden;
	margin: 0px;
	padding: 0px;
}

/*to make sure 100% width divs actually get to screen edge*/
.clear {
	clear: both;
}

.space {
	height: 15px;
}

td {
	vertical-align: top;
}

/*Valid options for setting font-size in keyword are xx-small, x-small, small, medium, large, x-large, and xx-large as well as relative keywords smaller and larger*/

/*feature image loading*/
#focuscyclediv img {
	display: none;
	z-index: 0;
}

#focuscyclediv img.first {
	display: block;
}

#focusimagediv {
	position: fixed;
	width: 100%;
	text-align: center;
	z-index: -100;
	margin-top: -30px;
}

#focuscyclediv {
	margin: 0 auto;
}

.focusimage {
	border: none;
}

/*links*/
.menu-toggle {
	background: none;
	border: none;
	padding: 0.5rem;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.menu-icon {
	width: 80px;
	height: 80px;
}

.menu-icon .bar {
	stroke: #FFFFFF;
	stroke-width: 2.2;
	stroke-linecap: round;
	transform-origin: 50% 50%;

	transition:
		transform 320ms cubic-bezier(.25, 1.7, .5, 1),
		opacity 200ms ease,
		stroke 200ms ease;
}

/* Closed state */
.menu-toggle .bar-top {
	transform: translateY(0);
}

.menu-toggle .bar-middle {
	opacity: 1;
}

.menu-toggle .bar-bottom {
	transform: translateY(0);
}

/* Open state (X) */
.menu-toggle.is-open .bar-top {
	transform: translateY(0px) rotate(45deg);
}

.menu-toggle.is-open .bar-middle {
	opacity: 0;
}

.menu-toggle.is-open .bar-bottom {
	transform: translateY(-7px) rotate(-45deg);
}

/* Optional color shift when open */
.menu-toggle.is-open .bar {
	stroke: #1894FF;
}


a.menu,
.menu,
a.menu:visited {
	font-family: 'eurostileregular';
	letter-spacing: 3px;
	font-size: calc(24px + 2vw);
	color: white;
	text-decoration: none;
	line-height: 2.3;
	padding: 0px 40px 0px 30px;
	cursor: pointer;
}

/*color:#EFEFEF*/
.menucategory {
	font-family: 'eurostileregular';
	letter-spacing: 3px;
	font-size: calc(20px + 2vw);
	color: #999999;
	text-decoration: none;
	margin-top: 40px;
	margin-bottom: 0px;
}

.menuproduct {
	margin-top: 0px;
	margin-bottom: 10px;
}

a.submenu,
a.submenu:visited {
	font-family: 'eurostileregular';
	letter-spacing: 3px;
	font-size: calc(18px + 2.5vw);
	color: white;
	text-decoration: underline;
	line-height: 1.5;
	margin: 0px 0px 0px 70px;
	text-align: left;
}

/*page titles*/
.series {
	font-size: 2em;
	font-family: 'eurostileregular';
	font-style: italic;
	color: white;
	padding: 0px;
	margin: 0px;
}

.product {
	font-size: 3.0em;
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	color: white;
	padding: 0px;
	margin: 0px;
}

/*sitemap*/
.treeleader {
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: large;
	line-height: 1.2;
	margin-top: 0px;
	margin-bottom: 15px;
}

.treetext {
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: large;
	line-height: 1.2;
	margin-top: 0px;
	margin-bottom: 15px;
	color: #BABABC;
	/*lear grey*/
}

.tree td {
	vertical-align: top;
}

.tree a {
	color: #BABABC;
	/*lear grey*/
}

.tree a:visited {
	color: #BABABC;
	/*lear grey*/
}

/*layout text*/
.whereareyou {
	display: none;
}

/*general text*/
.text {
	font-family: 'Droid Serif', serif;
	font-size: inherit;
	line-height: 1.5;
	margin-top: 0px;
	margin-bottom: 15px;
	margin-left: 25px;
	margin-right: 35px;
}

/*Droid Serif google font loaded in header.php */
.text ul {
	font-family: 'Droid Serif', serif;
	font-size: inherit;
	line-height: 1.5;
	margin-top: 0px;
	margin-bottom: 15px;
}

.caption {
	float: left;
	font-family: 'Droid Serif', serif;
	font-size: inherit;
	line-height: 1.0;
	margin-top: 0px;
	margin-bottom: 15px;
}

/* dup of .text with left float,line-height 1.0 */
.leader {
	font-size: 3em;
	margin-top: 10px;
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	line-height: 1.0;
	color: #AAAAAA;
	/*50% lear grey*/
}

a {
	color: #1894FF;
	/*ala BLUE LED*/
	;
}

a:visited {
	color: #1894FF;
	/*ala BLUE LED*/
	;
}

/*buttons*/
.dosomething {
	font-family: 'Droid Serif', serif;
	font-size: large;
	line-height: 1.5;
	padding: 15px;
	background-color: #1894FF;
	color: white;
}

/*image gallery*/
.newfancybox {
	margin: 10px 10px 10px 0px;
	padding: 3px;
	background-color: #dfdcdc;
	cursor: pointer;
	border: 0;
}

/*maybe delete below?*/
.gallery {
	height: 150px;
	margin: 10px 10px 10px 0px;
	padding: 3px;
	background-color: #dfdcdc;
	cursor: pointer;
	border: 0;
}

.eventgallery {
	margin: 10px 10px 10px 0px;
	padding: 3px;
	background-color: #dfdcdc;
	cursor: pointer;
	border: 0;
}

.gallerypopup {
	width: 800px;
	margin: 0px;
	padding: 10px;
	background-color: white;
	cursor: pointer;
}

.gallerycaption {
	font-size: inherit;
	margin: 0px;
	padding: 0px;
	text-align: center;
}

.gallerylink {
	height: 150px;
	margin: 10px 10px 10px 0px;
	padding: 3px;
	background-color: #dfdcdc;
	cursor: pointer;
	border: none;
}

.custompopup {
	width: 1200px;
	margin: 0px;
	padding: 10px;
	background-color: white;
	cursor: pointer;
}

/*reviews*/
.award {
	margin-right: 5px;
}

.pagereview {
	margin-left: 30px;
	font-family: 'Droid Serif', serif;
	font-size: inherit;
	line-height: 1.5;
	margin-top: 0px;
	margin-bottom: 15px;
}

/* dup of .text with margin-left */

/*sidebar*/
.sidebar {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.mobile-news-title {
	font-family: "Droid Serif", serif;
	font-size: 3em;
	font-weight: 300;
	line-height: 0;
	color: #4b4545;
}

.sidebar h2 {
	font-family: "Droid Serif", serif;
	font-size: 3em;
	font-weight: 300;
	line-height: 0;
	color: #4b4545;
}

.sidebar h3 {
	font-family: "Droid Serif", serif;
	font-size: 1.5em;
	font-weight: 300;
	text-align: center;
	line-height: normal;
	color: #4b4545;
	padding-bottom: 5px;
	border-bottom: #1894FF95 2px solid;
}

.sidebar_news h3 {
	font-family: "Droid Serif", serif;
	font-size: 1.5em;
	color: #000000;
}

.sidebarheader {
	font-size: 2em;
	line-height: .9em;
	margin-top: 25px;
	margin-bottom: 5px;
	margin-left: 10px;
	padding-top: 30px;
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	color: #1894FF;
	/*ala BLUE LED*/
}

.sidebarimg,
.sidebarlink img {
	padding: 20px;
	width: 90%;
}

/*dealer page*/
#dealertable td,
p {
	font-size: 200%;
}

/*content tabs*/

.content_tab {
	display: none;
}

ul.product_tabs {
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	margin: 0;
	padding: 0px 10px 10px 20px;
	background-color: #4D4D4D;
	/*background: url("images_design/product_tabs_border.gif") repeat-x scroll left bottom transparent; */
	list-style: none;
}

ul.product_tabs li {
	display: inline;
	float: left;
	margin: 0 4px 0 0;
	padding: 10px 1px 0px;
}

ul.product_tabs a {
	font-family: 'eurostileregular';
	font-size: calc(30px + 2.8vw);
	display: block;
	margin-bottom: 1px;
	padding: 0 10px;
	padding: 2px 10px 2px;
	background: #F5F5F5;
	color: #666;
	white-space: nowrap;
	text-decoration: none;
}

/* New CSS Beginning July 2025 */

/* Product Pages */

.product_page_header {
	color: #1894FF95;
	margin: 10px 0 .5rem 25px;
	font-size: 1.85em;
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-weight: bold;
}

.product_paragraph_header {
	font-family: 'eurostileregular';
	font-size: 3rem;
	color: #424242;
	margin: 2.5rem 0 .35rem 25px;
}

.product_paragraph_divider {
	width: 60%;
	border: 5px solid;
	border-image-slice: 1;
	border-image-source: linear-gradient(to right, #1894FF95, #fff);
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	margin: 1rem 0 1rem 25px;
}

.product_page_text {
	font-family: 'Droid Serif', serif;
	font-size: 1.05em;
	line-height: 1.5;
	margin: 0 35px 15px 25px;
}

.product_page_image {
	width: 100%;
	height: 450px;
	margin: 3rem 0;
	background-image: url('images_content/ABCD-2_Aesthetix_Cartridge_Demagnetizer.webp');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.review_quote {
	font-family: 'Droid Serif', serif;
	font-size: 1.4em;
	margin-top: 2rem;
	margin-bottom: 15px;
}

.quote_attribute {
	font-family: 'Droid Serif', serif;
	font-size: .85em;
	line-height: 1.5;
	margin-left: 2rem;
	color: #222222;
}

.product_reviews_award_logo {
	background-image: url('images_reviews/TAS-Editors-Choice.webp ');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	width: 100%;
	height: 150px;
	margin: 2rem 0 3rem 25px;
}

.product_reviews_award_logo_stereophile {
	background-image: url('images_reviews/stereophile-recommended-components-2025.webp');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	width: 100%;
	height: 250px;
	margin: 2rem 0 3rem 25px;
}

/* New CSS Beginning July 2025 */

/* Home Page */
.home_column {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0.5rem;
}

.home_column p {
	text-align: left;
	line-height: 1.6em;
	max-width: 92vw;
}

.home_page_text {
	font-family: 'Droid Serif', serif;
	font-size: 1.2em;
	line-height: 1.25;
}

.image_caption {
	font-family: 'Droid Serif', serif;
	font-size: 0.8em;
	line-height: 1;
	margin-top: 10px;
	color: #5C5C5C;
}

.home_feature_image {
	width: 90vw;
	height: 500px;
	margin: 0;
	background-image: url('images_content/Aesthetix_Pallene_PoTY.webp');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.home_secondary_image {
	width: 90vw;
	height: 500px;
	margin: 2rem 0 0 0;
	background-image: url('images_content/Aesthetix_Romulus_Golden_Ear.webp');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 8px;
}

.quote {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.home_quote {
	font-family: 'Droid Serif', serif;
	font-style: italic;
	font-size: 1em;
	margin-top: 20px;
	color: #424242;
	width: 80vw;
}

.home_quote_attribute {
	font-family: 'Droid Serif', serif;
	font-size: 0.8em;
	margin: 0;
	padding-left: 2rem;
	text-align: left;
	color: #5C5C5C;
}

.newsletter {
	margin: 5rem 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 90vw;
	border-radius: 8px;
	border: #1894FF95 2px solid;
}

.sender-form-field iframe {
	width: 600px !important;
	height: 300px !important;
	border: none;
	margin: 1rem 0;
}

.sender-subs-embed-form-bkRV9J>.sender-form-box {
	width: 600px !important;
}

.sender-subs-embed-form-bkRV9J>.sender-form-content {
	width: 600px !important;
}

.sender-form-box {
	width: 600px !important;
}

.sender-form-flex {
	width: 150% !important;
}

.followus {
	width: 90vw;
	height: 300px;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-top: 5rem;
	padding-bottom: 1rem;
}

.followus h2 {
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: 2.5em !important;
	margin: 1rem auto;
	color: #1894FF;
}

.social_media_icons img {
	width: 100px;
	height: 100px;
	margin: 2rem 4rem;
}

.explore {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 1rem 0;
	width: 100vw;
}

.explore h3 {
	font-family: 'jellyka';
	letter-spacing: 1px;
	font-size: 3.5em;
	line-height: 1.0;
	margin: 2rem auto;
	color: #1894FF;
}

.find {
	width: 100vw;
	height: 200px;
	margin: 2rem 0;
	border-radius: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center !important;
	background-color: #1894FF;
}

.find h2 {
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: 2.5em;
	margin-top: 1rem;
	color: white !important;
}

.side_nav {
	display: none;
}

.product_grid {
	height: 400px;
	width: 95vw;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	justify-content: flex-start;
	align-items: center;
	gap: 0.75rem;
	padding: 0 1rem;
	scrollbar-width: none;
}

/* Hide scrollbar for WebKit */
.product_grid::-webkit-scrollbar {
	display: none;
}

/* Each card */
.product_thumb {
	position: relative;
	/* container for ABS <h3> */
	flex: 0 0 auto;
	/* don’t shrink */
	width: 400px;
	height: 400px;
	scroll-snap-align: start;
}

/* Make the link fill the card */
.product_thumb a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	position: relative;
}

/* Image fills the card */
.product_thumb_image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* keep aspect, crop nicely */
	position: relative;
	z-index: 1;
}

/* Overlay heading */
.product_thumb h3 {
	position: absolute;
	/* overlay */
	left: 50%;
	bottom: 1.2rem;
	/* adjust to taste */
	transform: translateX(-50%);
	margin: 0;
	/* no push-down */
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: 42px !important;
	color: white;
	z-index: 2;
	pointer-events: none;
	width: 100% !important;
	text-align: center !important;
}

/* Optional subtle text shadow for legibility */
.product_thumb h3 {
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.7);
}

.home_column h2 {
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-size: 1.75em;
	margin-bottom: 1rem;
	color: #1894FF;
}

.sidebar_news {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 80%;
	margin: 0 auto 2rem auto;
}

.sidebar_text {
	font-family: 'Droid Serif', serif;
	font-size: 1.35em;
	line-height: 1.5;
	margin: 5px auto;
}

.sidebar_credit {
	font-family: 'Droid Serif', serif;
	font-size: 1.15em;
	line-height: 1.5;
	margin: 5px auto;
	width: 100%;
	text-align: left;
	padding-left: 15px;
	color: #292929;
}

.sidebar_link {
	font-family: 'Droid Serif', serif;
	font-size: .8em;
	line-height: 1.5;
	margin: 5px auto;
	text-decoration: none;
	transition: color ease 350ms;
}

.sidebar_link :hover {
	color: var(--Aesthetix_Orange);
	transition: color ease 350ms;
}

.sidebar_divider {
	width: 90%;
	height: 10px;
	background-image: url(images_design/logodivide1.png);
	background-repeat: no-repeat;
	background-position: center;
	margin: 1rem auto;
}


/* Lightbox container */
#lightbox {
	position: fixed;
	inset: 0;
	display: flex;
	/* stays in DOM for transition */
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.9);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 250ms ease, visibility 250ms ease;
	z-index: 9999;
}

/* Open state */
#lightbox.open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* Image animation */
#lightbox .lb-img {
	max-width: 90vw;
	max-height: 90vh;
	border-radius: 10px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.7);
	transform: translateY(10px) scale(0.98);
	opacity: 0;
	transition: transform 250ms ease, opacity 250ms ease;
}

#lightbox.open .lb-img {
	transform: translateY(0) scale(1);
	opacity: 1;
}

/* Close button */
#lightbox .lb-close {
	position: absolute;
	top: 18px;
	right: 22px;
	font: 600 20px/1 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
	color: #fff;
	opacity: 0.85;
	cursor: pointer;
	user-select: none;
}

#lightbox .lb-close:hover {
	opacity: 1;
}

/* Spinner while large image loads */
#lightbox .lb-spinner {
	width: 40px;
	height: 40px;
	border: 3px solid rgba(255, 255, 255, 0.25);
	border-top-color: #fff;
	border-radius: 50%;
	animation: lb-spin 0.8s linear infinite;
}

@keyframes lb-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Prevent background scroll when open (toggle on <body>) */
body.lb-lock {
	overflow: hidden;
}


/* Product Pages */

.product_page_header {
	color: #1894FF95;
	margin-bottom: .5rem;
	font-size: 2em;
	margin-top: 10px;
	font-family: 'eurostileregular';
	letter-spacing: 1px;
	font-weight: bold;
}

.product_paragraph_header {
	font-family: 'eurostileregular';
	font-size: 1.25rem;
	color: #424242;
	margin-bottom: .35rem;
}

.product_paragraph_divider {
	width: 60%;
	border: 3px solid;
	border-image-slice: 1;
	border-image-source: linear-gradient(to right, #1894FF95, #fff);
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	margin-bottom: 0;
}

.product_page_text {
	font-family: 'Droid Serif', serif;
	font-size: 1.3em;
	line-height: 1.25;
	margin: .35rem 2.5rem 2rem 0;
}

.product_page_image {
	width: 100%;
	height: 250px;
	margin: 3rem 0;
	background-image: url('images_content/ABCD-2_Aesthetix_Cartridge_Demagnetizer.webp');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.product_page_image_size {
	height: 250px;
}

.product_reviews {
	padding-right: 20%;
}

.product_reviews_award_logo {
	background-image: url('images_reviews/TAS-Editors-Choice.webp');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	width: 100%;
	height: 100px;
	margin: 2rem auto;
}

.product_reviews_award_logo_stereophile {
	background-image: url('images_reviews/stereophile-recommended-components-2025.webp');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	width: 100%;
	height: 250px;
	margin: 2rem auto;
}

.review_quote {
	font-family: 'Droid Serif', serif;
	font-size: 1.6em;
	margin-top: 20px;
	margin-bottom: 15px;
}

.quote_attribute {
	font-family: 'Droid Serif', serif;
	font-size: 1.15em;
	line-height: 1.5;
	margin: 0 0 2rem 2rem;
	color: #5C5C5C;
}

/* Tube Page */

.find {
	width: 95%;
	border-radius: 8px;
}

.product_tubes {
	width: 300px;
	height: 300px;
}

.product_link .product_tubes {
	max-width: 300px;
}