.footer-link:hover {
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); /* Adjust the values for shadow */
}
.footer-text-class {
    color: #ffffff;
    font-size: 16px;
}
.footer-one {
	display: block;
	float: left;
}
.footer-two {
	display: flex;
	float: right;
}


/*Change button size*/
.btn.btn-primary {
	font-size: 18px;
}
.btn.btn-primary:hover {
	box-shadow: 3px 3px 10px -1px #ffffff;
}

/*Below logo front page font size*/
.carousel span.sub-title {
	font-size: 25px;
}

/*Change home page order*/
.home .main {
  display: grid;
}
.home .main #about {
   grid-row: 8
}

/*Remove 'follow us' text above socials*/
.widget-title {
	display: none;
}
.fa-pencil-alt:before, .fa-mobile-alt:before {
	color: white;
}

/*Remove Published By on event pots*/
.page-header .author {
	display: none;
}

/*Single Event Columns*/
@media only screen and (min-width: 992px) {
		.event-col-left {
		float: left;
		width: 40%;
		padding: 1% 0 1% 0;
	}

	.event-col-right {
		float: right;
		width: 35%;
		padding: 1% 0 1% 1%;
	}
}

/*Remove author on Upcoming Events page*/
.posted-by {
	display: none;
}

/*Post Date on Upcoming Events*/
.post-date {
	
	font-weight: bolder;
}

/* General Styling for Bio */
.bio-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 30px;
}

.bio-text {
  flex: 1 1 65%;
  text-align: justify;
  line-height: 1.6; /* Improve text readability */
}

.bio-photo {
  flex: 1 1 30%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.bio-photo img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}

.personal-bio-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.personal-bio {
  flex: 1 1 48%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.personal-bio-image {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  margin-bottom: 10px;
}

.personal-bio p {
  font-size: 15px;
  text-align: justify;
}

/* ------------------------------------------------------------- */
/* Illuminated Character - Updated                               */
/* ------------------------------------------------------------- */
/* These rules ensure the illuminated "F" stays inline with text */
.bio-text .illuminated-container,
.bio-text .illuminated {
  float: none !important;             /* Remove any floating */
  display: inline-block !important;   /* Force inline display */
  vertical-align: bottom !important;  /* Align bottom with text baseline */
  margin: 0 !important;              /* Reset margin to avoid offsets */
  padding: 0 !important;
}

.bio-text .illuminated {
  width: 60px !important;       /* Adjust size as needed */
  height: auto !important;
  margin-right: 5px !important; /* Add space between F image and next word */
}

/* ------------------------------------------------------------- */

/* Responsive Design */
@media (max-width: 768px) {
  .bio-container,
  .personal-bio-container {
    flex-direction: column;
  }

  .bio-photo,
  .bio-text,
  .personal-bio {
    flex: 1 1 100%;
  }

  .personal-bio-image {
    width: 100px;
    height: 100px;
  }
}



/* Gallery container */
.photo-gallery {
    column-count: 3; /* Number of columns */
    column-gap: 15px; /* Gap between columns */
}

/* Gallery item */
.gallery-item {
    display: inline-block; /* Ensures images flow vertically in columns */
    margin-bottom: 15px; /* Space below each image */
    width: 100%; /* Ensures images take up full column width */
}

.gallery-item img {
    width: 100%;
    height: auto;
    border-radius: 8px; /* Optional: Adds rounded corners */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Optional: Adds shadow for depth */
}


/* Lightbox container - hidden by default */
.lightbox {
    display: none; /* Hidden by default */
    position: fixed; 
    z-index: 1000; /* Make sure it is on top of other elements */
    padding-top: 10%; /* Location of the image in the window */
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto; /* Enable scroll if needed */
    background-color: rgba(0, 0, 0, 0.8); /* Dimmed background */
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
}

/* Lightbox content (the enlarged image) */
.lightbox-content {
    max-width: 80%;
    max-height: 80%;
    border-radius: 8px; /* Optional: Adds rounded corners */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* Optional: Adds shadow for depth */
}

/* Close button for lightbox */
.close {
    position: absolute;
    top: 20px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s;
}

.close:hover,
.close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}


/*Socials class on home page*/
/* Contact Section Styling */
.our-socials-section {
    padding: 20px;
    border-radius: 10px;
    color: #fff;
    margin-bottom: 20px;
}

.our-socials p {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 20px;
}

.social-link {
    display: flex;
    align-items: center;  /* Vertically centers the content */
    justify-content: flex-start; /* Left-aligns content within the div */
    font-size: 0.7em;
    color: #ffff !important;
    text-decoration: none;
    transition: color 0.3s ease;
}


.social-link:hover {
    color: #ffd700; /* Change to a highlight color on hover */
}

.social-icon {
    margin-right: 10px;
    font-size: 1.8em; /* Increase icon size */
    transition: transform 0.3s ease, color 0.3s ease;
}

.social-link:hover .social-icon {
    transform: scale(1.2);
    color: #505b3d; /* Change the color of the icon on hover */
}

/* Contact Form Styling */
.card-contact {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); /* Enhanced shadow for a modern look */
    padding: 20px;
    border-radius: 10px;
}

.card-title {
    font-size: 1.8em;
    color: #333;
    font-weight: bold;
}

.card-contact .content {
    margin-top: 20px;
}

.contactus h2.hestia-title {
    font-size: 2.2em;
    font-weight: bold;
    color: #fff;
}

.contactus h5.description {
    font-size: 1.3em;
    color: #ddd;
    margin-bottom: 20px;
}

/* General Spacing and Alignment */
.hestia-contact-title-area {
    padding-right: 15px;
    color: #fff;
}

.hestia-contact-form-col {
    padding-left: 15px;
}

.container {
    max-width: 1200px; /* Keep container centered and not too wide */
}

/* Unified Button Style */
button[type="submit"], .contactus .send-message-button {
    background-color: #4CAF50; /* Match the color to unify the contact form and section */
    border: none;
    color: white;
    padding: 10px 20px;
    text-align: center;
    font-size: 1.1em;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

button[type="submit"]:hover, .contactus .send-message-button:hover {
    background-color: #45a049; /* Darker shade for hover effect */
}

/*Hide paypal buttons*/
.wc-block-components-express-payment__content {
	display: none;
}

.wc-block-components-express-payment .wc-block-components-express-payment--checkout {
	display: none;
}

.woocommerce.single-product .product .product_meta .posted_in {
	display: none;
}

.category:not([class*=text-]) {
	display: none;
}

.woocommerce-product-gallery__trigger {
	display: none;
}

.woocommerce-breadcrumb {
	display: none;
}

/* ============================================   EPK Page Desktop Layout   ============================================ *//* Left Column */.epk-left {    display: block;    float: left;    width: 40%;    font-size: 0.8em;    text-align: left;}/* Middle Column */.epk-middle {    display: block;    float: left;    width: 30%;    font-size: 0.8em;    text-align: left;    padding: 0 15px;}/* Right Column */.epk-right {    display: block;    float: right;    width: 30%;    font-size: 0.8em;    text-align: left;    padding: 0 15px;}/* Gallery Section */.epk-gallery {    display: block;    float: left;    width: 60%;    padding: 15px;}/* ============================================   EPK Image Hover Effects (for gallery thumbnails)   ============================================ */.epk-image {    position: relative;    display: inline-block;    overflow: hidden;    cursor: pointer;}.epk-image img {    display: block;    width: 100%;    height: auto;    transition: opacity 0.3s ease, transform 0.3s ease;}.epk-image:hover img {    opacity: 0.3; /* Fades image on hover */    transform: scale(1.05); /* Slight zoom on hover */}.epk-image::before {    content: "";    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(0, 0, 0, 0); /* Initially invisible */    transition: background-color 0.3s ease;    z-index: 1;    pointer-events: none;}.epk-image:hover::before {    background-color: rgba(0.5, 0.5, 0, 0.8); /* Dark overlay on hover */}.epk-image .epk-text {    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    color: white;    font-size: 18px;    font-weight: bold;    text-align: center;    opacity: 0; /* Hidden by default */    z-index: 2;    transition: opacity 0.3s ease;}.epk-image:hover .epk-text {    opacity: 1; /* Fade in text on hover */}.epk-image a {    position: relative;    z-index: 3; /* Ensures links appear above overlays */}/* ============================================   Responsive Styles for Mobile Devices   ============================================ */@media screen and (max-width: 768px) {    /* Stack all primary sections vertically */    .epk-left,     .epk-middle,     .epk-right,     .epk-gallery, .epk-gallery2 {        float: none;        width: 100%;        padding: 15px;        box-sizing: border-box;        margin-bottom: 20px;    }        /* Increase font size for better readability on mobile */    .epk-left,     .epk-middle,     .epk-right {        font-size: 1em;        text-align: left;    }}
/* Sidebar */
/* Smaller text in the sidebar */
.blog-sidebar,
.blog-sidebar .widget,
.blog-sidebar .widget a {
    font-size: 0.9em !important; /* or 14px, etc. */
}

/* Style the UL for your upcoming events */
.ftd-upcoming-events {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ftd-upcoming-events li {
    display: block;
    margin-bottom: 0.5em;
}

/* 
   Changed the grid to auto 1fr auto, 
   so the date and location columns are sized by content (auto), 
   and the middle title column is flexible (1fr).
*/
.ftd-upcoming-events li a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 1.2em;
    text-decoration: none;
    color: inherit;
    align-items: center;
}

.ftd-upcoming-events li a:hover {
    text-decoration: underline;
}

/* Fine-tune each column style */
.ftd-date {
    font-weight: bold;
}

.ftd-title {
    /* Single-line ellipsis */
    display: block;         /* or inline-block */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;     /* Keep centered text if you like */
}

.ftd-location {
    text-align: right;
}
