	/*
	Theme Name: Aurora Camerata 2025
	Description: This is a custom child theme, built with Salient 
	Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
	Author: APART creations
	Author URI:  https://www.apartcreations.com
	Template: salient
	Version: 1.0
	*/


	/* font stuffs 
	========================================= */

	@font-face {
		font-family: 'Optima';
		font-style: normal;
		font-weight: normal;
		src: url('/wp-content/themes/salient-ac/fonts/OPTIMA.woff') format('woff'),
			url('/wp-content/themes/salient-ac/fonts/OPTIMA.ttf') format('trutype');
	}

	@font-face {
		font-family: 'Optima Italic';
		font-style: normal;
		font-weight: normal;
		src: url('/wp-content/themes/salient-ac/fonts/Optima_Italic.woff') format('woff'),
			url('/wp-content/themes/salient-ac/fonts/Optima_Italic.ttf') format('truetype');
	}

	@font-face {
		font-family: 'Optima Medium';
		font-style: normal;
		font-weight: normal;
		src: url('/wp-content/themes/salient-ac/fonts/Optima Medium.woff') format('woff'),
			 url('/wp-content/themes/salient-ac/fonts/Optima Medium.ttf') format('truetype');

	}

	@font-face {
		font-family: 'Optima Bold';
		font-style: normal;
		font-weight: normal;
		src: url('/wp-content/themes/salient-ac/fonts/OPTIMA_B.woff') format('woff'),
			url('/wp-content/themes/salient-ac/fonts/OPTIMA_B.ttf') format('truetype');
	}



	/* welcome page
	========================================= 

	.welcome h2.ns-heading-el {
		font-family:'Rock Salt' !important;
	  font-size:3em !important;;
	}
	*/

	.light h1, 
	.light h2, 
	.light h3, 
	.light h4, 
	.light h5, 
	.light h6, 
	.light p,
	.light a,
	.light li {
	  color:#f2e9db !important;
	} 

	.nectar-button.see-through.accent-color,
	.nectar-button.extra-color-2,
	.nectar-button.extra-color-1,
	.nectar-button.accent-color {
	  border-radius: 40px 0 0 40px !important;
	  text-transform:uppercase;
	  font-size:1.5em !important;
	  font-weight:400;
	  transition:1s;
	}

	.nectar-button.see-through.accent-color:hover,
	.nectar-button.extra-color-2:hover,
	.nectar-button.extra-color-1:hover,
	.nectar-button.accent-color:hover {
	  border-radius:0 40px 40px 0  !important;
	}

	.nectar-button.see-through.accent-color:hover {
	  background:#053435 !important;
	}
	.nectar-button.see-through.accent-color:hover > span {
	  color:#f2e9db !important;
	}

	.events .nectar-button.see-through.accent-color {
	  width:100%;
	}


	.events img {
	  border-radius:50% 50% 0 0;
	}


	.eventArch {

	}
	.eventArch .wpb_text_column  {
	  background:#ff7f2d;
	  border-radius: 50% 50% 0 0;
	  padding:30px 30px 30px 30px;  
	  display: flex;
	  flex-direction: column; /* Stacks items vertically */
	  justify-content: flex-end; /* Aligns content to the bottom */
	  min-height: 300px; /* Example height for the container */
	  max-width:300px;
	  margin:0 auto;
	  transition:1s;
	}

	.eventArch:hover .wpb_text_column {
	  background:#68adab;
	  color:#f2e9db !important;
	}
	.eventArch:hover h1, 
	.eventArch:hover h2, 
	.eventArch:hover h3, 
	.eventArch:hover h4, 
	.eventArch:hover h5, 
	.eventArch:hover h6 {
	  color:#f2e9db;
	  transition:1s;
	}

	.home .ftrDivider {
	  display:none;
	}



	/* Artists - Columns Template
	========================================= */

	.page-template-archive-artist-column .main-content {
	  padding-top:80px;
	  padding-bottom:80px;
	}


	.artist-columns.voice-parts-columns {
	  display: flex;
	  gap: 30px;
	  margin-bottom: 60px;
	  flex-wrap: wrap;
	}

	.voice-part-column {
	  flex: 1;
	  min-width: 200px;
	}

	.artist-columns.instruments-columns {
	  display: grid;
	  grid-template-columns: repeat(4, 1fr);
	  gap: 30px;
	}

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

	.artist-item {
	  margin-bottom: 10px;
	  list-style-type: none;
	}

	/* Artists - Grid Template
	========================================= */
	.page-template-archive-artist-grid .main-content {
	  padding-top:80px;
	  padding-bottom:80px;
	}

	.voice-part-section {
	  margin-bottom: 60px;
	}

	.artist-grid {
	  display: grid;
	  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	  gap: 30px;
	  margin-top: 30px;
	}

	.artist-card {
	  text-align: center;
	}

	/* Responsive image containers for voice parts */
	.artist-image {
	  position: relative;
	  width: 100%;
	  padding-bottom: 100%; /* Square aspect ratio */
	  overflow: hidden;
	  border-radius: 50% 50% 0 0;
	  margin-bottom: 15px;
	  background:#68adab;		
	  transition: 1s;
	}

	.artist-image img {
	  position: absolute;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  border-radius: 50% 50% 0 0;
	  filter: grayscale(100%);
	  transition: filter 0.5s ease-in-out; /* Smooth transition */
	}

	.artist-image img:hover {
	  filter: grayscale(0%); /* Restore color on hover */
	}

	.artist-image-placeholder {
	  background:#68adab;	
	  padding-bottom: 100%;
	  margin-bottom: 15px;
	  border-radius: 50% 50% 0 0;
	  transition: 1s;
	}

	.artist-name {
	  margin: 0;
	  font-size: 1.1em;
	}

	/* Instrumentalists section */
	.instrumentalists-heading {
	  margin-bottom: 30px;
	}

	.instrumentalists-wrapper {
	  display: grid;
	  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	  gap: 30px;
	  margin-top: 30px;
	  align-items: end; /* Align all grid items to bottom */
	}

	.instrumentalist-card .instrument-heading {
	  font-size: 1.1em;
	  margin-bottom: 10px;
	  color: #666;
	  text-align: center;
	}


	/* Ensure all instrumentalist cards have consistent spacing at top */
	.instrumentalist-card {
	  padding-top: 0;
	}


	/* Hover effects */
	.artist-link:hover .artist-image,
	.artist-link:hover .artist-image-placeholder {
	  border-radius: 50% 0 0 50%;
	  transition: 1s;
	}

	.artist-link:hover .artist-image img {
	  border-radius: 50% 0 0 50%;
	}

	.artist-item a:hover,
	.artist-link:hover h3.artist-name {
	  color:#7d1416;
	}


	/* Fade in animation for artist cards */
	@keyframes fadeInUp {
	  from {
		opacity: 0;
		transform: translateY(30px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.artist-card {
	  animation: fadeInUp 0.6s ease-out forwards;
	  opacity: 0;
	}

	/* Stagger the animation for each card */
	.artist-card:nth-child(1) { animation-delay: 0.1s; }
	.artist-card:nth-child(2) { animation-delay: 0.2s; }
	.artist-card:nth-child(3) { animation-delay: 0.3s; }
	.artist-card:nth-child(4) { animation-delay: 0.4s; }
	.artist-card:nth-child(5) { animation-delay: 0.5s; }
	.artist-card:nth-child(6) { animation-delay: 0.6s; }
	.artist-card:nth-child(7) { animation-delay: 0.7s; }
	.artist-card:nth-child(8) { animation-delay: 0.8s; }
	.artist-card:nth-child(9) { animation-delay: 0.9s; }
	.artist-card:nth-child(10) { animation-delay: 1.0s; }
	.artist-card:nth-child(11) { animation-delay: 1.1s; }
	.artist-card:nth-child(12) { animation-delay: 1.2s; }
	.artist-card:nth-child(n+13) { animation-delay: 1.3s; }


	/* Artists - INDIVIDUAL PAGE Template
	========================================= */


	.single-artist .artist-two-column-layout {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 60px;
	  margin-bottom: 60px;
	}

	.artist-image-column {
	  /* Image column */
	}

	.artist-featured-image img {
	  max-width: 600px;
      width: 100%;		
	  height: auto;
	  border-radius: 50% 0 0 50% ;
	  background: #ff7f2d;
	  background:#68adab;	
	}

	.artist-content-column {
	  /* Content column */
	}

	.artist-title {
	  margin-top: 0;
	  margin-bottom: 30px;
	}

	.artist-bio {
	  margin-bottom: 30px;
	}

	.artist-voice-part,
	.artist-instrument {
	  margin-bottom: 10px;
	  font-size: 0.95em;
	}

	/* Mobile: Stack vertically */
	@media only screen and (max-width: 980px) {
	  .single-artist .artist-two-column-layout {
		grid-template-columns: 1fr;
		gap: 30px;

	  }
	  .artist-featured-image {
		max-width: 80%;
		margin:0 auto;
	  }  

	  .artist-featured-image img {
		height: auto;
		border-radius: 50% 50% 0 0;

	  }


	}

	.nectar-button.see-through.accent-color.backto, 
	.nectar-button.extra-color-2.backto, 
	.nectar-button.extra-color-1.backto, 
	.nectar-button.accent-color.backto {
	  border-radius: 0 40px 40px 0 !important;
	}
	.nectar-button.see-through.accent-color.backto:hover, 
	.nectar-button.extra-color-2.backto:hover, 
	.nectar-button.extra-color-1.backto:hover, 
	.nectar-button.accent-color.backto:hover {
	  border-radius: 40px 0 0 40px !important;
	}


	/* Single Artist Template Animations
	========================================= */

	/* Fade in from left for image */
	@keyframes fadeInLeft {
	  from {
		opacity: 0;
		transform: translateX(-50px);
	  }
	  to {
		opacity: 1;
		transform: translateX(0);
	  }
	}

	/* Fade in from bottom for content */
	@keyframes fadeInUp {
	  from {
		opacity: 0;
		transform: translateY(30px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.single-artist .artist-image-column {
	  animation: fadeInLeft 0.8s ease-out forwards;
	  opacity: 0;
	}

	.single-artist .artist-content-column {
	  animation: fadeInUp 0.8s ease-out forwards;
	  opacity: 0;
	  animation-delay: 0.2s; /* Slight delay so content follows image */
	}


	/* CONCERT ARCHIVE Template
	========================================= */


	/* Concerts Archive Grid */
	.concerts-archive {
	  display: grid;
	  grid-template-columns: repeat(3, 1fr);
	  gap: 30px;
	  margin: 40px 0;
	}

	@media only screen and (max-width: 1000px) {
	  .concerts-archive {
		grid-template-columns: repeat(2, 1fr);
	  }
	}

	@media only screen and (max-width: 600px) {
	  .concerts-archive {
		grid-template-columns: 1fr;
	  }
	}
	.concert-card {
	  text-align: center;
	  background: #f5f5f5;
	  border-radius: 50% 50% 8px 8px; /* Rounded top corners, slight radius on bottom */
	}

	.concert-link {
	  display: block;
	  text-decoration: none;
	  color: inherit;
	}

	/* Concert image - matches artist style */
	.concert-image {
	  position: relative;
	  width: 100%;
	  padding-bottom: 100%; /* Square aspect ratio */
	  overflow: visible; /* Changed from hidden */
	  border-radius: 50% 50% 0 0;
	  margin-bottom: 0;
	  background: #f5f5f5; /* Matches card background */
	  transition: 1s;
	}

	.concert-image img {
	  position: absolute;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  border-radius: 50% 50% 0 0;
	  background: #68adab; /* Teal shows in rounded corners */
	  transition: border-radius 1s;
	}

	/* Hover effect - switches to top-left and bottom-left rounded */
	.concert-link:hover .concert-image {
	  border-radius: 50% 0 0 50%;
	  transition: 1s;
	}

	.concert-link:hover .concert-image img {
	  border-radius: 50% 0 0 50%;
	}

	/* Info section below image */
	.concert-info {
	  padding: 20px;
	}

	.concert-title {
	  margin: 0 0 15px 0;
	  font-size: 1.3em;
	  line-height: 1.3;
	  transition: color 0.3s;
	}

	.concert-link:hover .concert-title {
	  color: #7d1416;
	}

	.concert-shows {
	  margin-top: 10px;
	}

	.show-item {
	  display: flex;
	  flex-direction: column;
	  gap: 5px;
	  padding: 10px 0;
	  border-top: 1px solid #ddd;
	}

	.show-item:first-child {
	  border-top: none;
	  padding-top: 0;
	}

	.showtime {
	  font-weight: 600;
	  color: #333;
	  font-size: 0.95em;
	}

	.venue-name {
	  color: #666;
	  font-size: 0.9em;
	}

	/* Fade in animation */
	@keyframes fadeInUp {
	  from {
		opacity: 0;
		transform: translateY(30px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.concert-card {
	  animation: fadeInUp 0.6s ease-out forwards;
	  opacity: 0;
	}

	/* Stagger animation */
	.concert-card:nth-child(1) { animation-delay: 0.1s; }
	.concert-card:nth-child(2) { animation-delay: 0.2s; }
	.concert-card:nth-child(3) { animation-delay: 0.3s; }
	.concert-card:nth-child(4) { animation-delay: 0.4s; }
	.concert-card:nth-child(5) { animation-delay: 0.5s; }
	.concert-card:nth-child(6) { animation-delay: 0.6s; }
	.concert-card:nth-child(7) { animation-delay: 0.7s; }
	.concert-card:nth-child(8) { animation-delay: 0.8s; }
	.concert-card:nth-child(n+9) { animation-delay: 0.9s; }


	/* Single Concert Template
	========================================= */

	.single-concert .concert-two-column-layout {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 60px;
	  margin-bottom: 60px;
	}

	.concert-image-column {
	  max-width: 600px;
	}

	.concert-featured-image img {
	  max-width: 600px;
      width: 100%;
	  height: auto;
	  border-radius: 50% 0 0 50%;
	  background: #68adab;
	}

	.concert-content-column {
	  /* Content column */
	}

	.concert-title {
	  margin-top: 0;
	  margin-bottom: 30px;
	}

	/* Show details styling */
	.concert-shows-list {
	  margin-bottom: 30px;
	}

	.show-detail {
	  padding: 15px 0;
	  border-bottom: 1px solid #eee;
	}

	.show-detail:last-child {
	  border-bottom: none;
	}

	.show-datetime {
	  font-weight: 600;
	  font-size: 1.1em;
	  margin-bottom: 5px;
	  color: #333;
	}

	.show-venue {
	  font-size: 1em;
	  margin-bottom: 5px;
	  color: #666;
	}

	.show-address {
	  font-size: 0.95em;
	}

	.show-address a {
	  color: #7d1416;
	  text-decoration: none;
	  transition: color 0.3s;
	}

	.show-address a:hover {
	  color: #68adab;
	  text-decoration: underline;
	}

	.concert-description {
	  margin-bottom: 30px;
	}

	/* Mobile: Stack vertically */
	@media only screen and (max-width: 980px) {
	  .single-concert .concert-two-column-layout {
		grid-template-columns: 1fr;
		gap: 30px;
	  }

	  .concert-featured-image {
		max-width:80%;
		margin: 0 auto;
	  }

	  .concert-featured-image img {
		height: auto;
		border-radius: 50% 50% 0 0;
	  }
	}

	/* Button styling matches artist page */
	.nectar-button.see-through.accent-color.backto, 
	.nectar-button.extra-color-2.backto, 
	.nectar-button.extra-color-1.backto, 
	.nectar-button.accent-color.backto {
	  border-radius: 0 40px 40px 0 !important;
	}

	.nectar-button.see-through.accent-color.backto:hover, 
	.nectar-button.extra-color-2.backto:hover, 
	.nectar-button.extra-color-1.backto:hover, 
	.nectar-button.accent-color.backto:hover {
	  border-radius: 40px 0 0 40px !important;
	}

	/* Single Concert Template Animations
	========================================= */

	/* Fade in from left for image */
	@keyframes fadeInLeft {
	  from {
		opacity: 0;
		transform: translateX(-50px);
	  }
	  to {
		opacity: 1;
		transform: translateX(0);
	  }
	}

	/* Fade in from bottom for content */
	@keyframes fadeInUp {
	  from {
		opacity: 0;
		transform: translateY(30px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.single-concert .concert-image-column {
	  animation: fadeInLeft 0.8s ease-out forwards;
	  opacity: 0;
	}

	.single-concert .concert-content-column {
	  animation: fadeInUp 0.8s ease-out forwards;
	  opacity: 0;
	  animation-delay: 0.2s; /* Slight delay so content follows image */
	}


	/* Tickets button - solid with reverse hover effect */
	.nectar-button.accent-color.tickets-button {
	  background-color: #053435 !important;
	  color: #f2e9db !important;
	  border: 2px solid #053435 !important;
	  border-radius: 0 40px 40px 0 !important;
	  margin: 30px 0 !important;
	  display: inline-block !important;
	  transition: all 1s ease !important;
	  text-transform: uppercase;
	  font-size: 1.5em !important;
	  font-weight: 400;
	}

	.nectar-button.accent-color.tickets-button:hover {
	  background-color: transparent !important;
	  color: #053435 !important;
	  border-color: rgba(5, 52, 53, 0.75) !important;
	  border-radius: 40px 0 0 40px !important;
	}

	.nectar-button.accent-color.tickets-button:hover > span {
	  color: #053435 !important;
	}


	/* Form overrides
	========================================= */

	.light #gform_submit_button_1 {
	  background:#e07e29 !important;
	  border-radius: 0 40px 40px  0 !important;
	}

	.light #gform_submit_button_1:hover {
	  background:#e07e29 !important;
	  opacity:1;
	  border-radius: 40px 0 0 40px !important;  
	}

	#validation_message_1_1,
	#validation_message_1_2,
	#gform_1_validation_container {
	  background:red !important;;
	  color:#fff;
	  font-weight:700;
	  line-height:1;
	}


	.light #gform_confirmation_message_1 {
	color:efe9db;
	}





	/* Attempt to fix chrome full width padding.
	========================================= */


	/* Chrome-specific fix using @supports */
	@supports (-webkit-appearance:none) {
		.full-width-section .row-bg,
		.full-width-content .row-bg {
			margin-left: -0.5px;
			margin-right: -0.5px;
			width: calc(100% + 1px);
		}
	}


