/*
Theme Name: TWS Theme
Description: This is the TWS theme
Author: TWS
Version: 7.0

Tags: accessibility-ready, block-styles, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, left-sidebar, one-column, right-sidebar, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, two-columns, wide-blocks

Template: genesis

License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Text Domain: genesis-sample
Requires at least: 5.4
Requires PHP: 5.6
*/

/* Table of Contents
- HTML5 Reset
	- Baseline Normalize
	- Box Sizing
	- Float Clearing
- Defaults
	- Typographical Elements
	- Headings
	- Objects
	- Gallery
	- Forms
	- Tables
	- Screen Reader Text
- Structure and Layout
	- Site Container
	- Site Inner
- Common Classes
	- Avatar
	- Genesis
	- Search Form
	- Titles
	- WordPress
- Widgets
	- Featured Content
- Plugins
	- Genesis eNews Extended
	- Genesis Simple FAQ
	- WPForms
- Skip Links
- Site Header
	- Title Area
- Site Navigation
	- Responsive Menu
	- Header Menu
	- Footer Menu
- Content Area
	- Entry Content
	- Entry Meta
	- Pagination
	- Entry Comments
- Sidebar
- Footer Widgets
- Site Footer
- Media Queries
	- Min-width: 960px
		- Site Header
		- Genesis Menu
		- Responsive Menu
		- Header Menu
		- Site Inner
		- Content
		- Sidebar
		- Author Box
		- After Entry
		- Column Classes
		- Entry Misc.
		- Footer Widgets
- Print Styles
*/


/* HTML5 Reset
---------------------------------------------------------------------------- */

/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
---------------------------------------------------------------------------- */
/* stylelint-disable */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}
/* stylelint-enable */

/* Box Sizing
--------------------------------------------- */

html {
	box-sizing: border-box;
}

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

/* Float Clearing
--------------------------------------------- */

.author-box::before,
.clearfix::before,
.entry::before,
.entry-content::before,
.footer-widgets::before,
.nav-primary::before,
.nav-secondary::before,
.pagination::before,
.site-container::before,
.site-footer::before,
.site-header::before,
.site-inner::before,
.widget::before,
.wrap::before {
	content: " ";
	display: table;
}

.author-box::after,
.clearfix::after,
.entry::after,
.entry-content::after,
.footer-widgets::after,
.nav-primary::after,
.nav-secondary::after,
.pagination::after,
.site-container::after,
.site-footer::after,
.site-header::after,
.site-inner::after,
.widget::after,
.wrap::after {
	clear: both;
	content: " ";
	display: table;
}


/* Defaults
---------------------------------------------------------------------------- */

/* Typographical Elements
--------------------------------------------- */

html {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

body {
	background-color: #fff;
	color: #747474;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.625;
	margin: 0;
	overflow-x: hidden;
  font-optical-sizing: auto;
  font-family: "Quicksand", sans-serif;
}

button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button,
.gallery img {
	transition: all 0.2s ease-in-out;
}

a {
	color: #ff3eb3;
	text-decoration: none;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}
a:active,
a:focus,
input,
input:active,
input:focus {
    outline: 0;
    outline-style:none;
    outline-width:0;
}  
a:active,
a:focus,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
    border: none;
} 
a:focus,
a:hover {
	color: #ff3eb3;
	text-decoration: none;
}

p {
	margin: 0 0 24px;
	padding: 0;
}

ol,
ul {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
}

hr {
	border: 0;
	border-collapse: collapse;
	border-bottom: 1px solid currentColor;
	clear: both;
	color: #eee;
	margin: 1.65em auto;
}

b,
strong {
	font-weight: 700;
}

blockquote,
cite,
em,
i {
	font-style: italic;
}

mark {
	background: #ddd;
	color: #747474;
}

blockquote {
	margin: 30px;
}

.post-edit-link {
	display: none;
}

/* Titles
--------------------------------------------- */

.archive-description .entry-title,
.archive-title,
.author-box-title {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}

.entry-title {
	font-size: 42px;
	margin-bottom: 10px;
}

.entry-title a,
.sidebar .widget-title a {
	color: #747474;
	text-decoration: none;
}

.entry-title a:focus,
.entry-title a:hover {
	color: #ff3eb3;
}

.widget-title {
	font-size: 28px;
	margin-bottom: 20px;
}

.genesis-title-hidden .site-inner {
	padding-top: 0;
}

.topbutton {
z-index:9999;
	width:auto;
	padding:2px 10px;border-radius:8px;
	position:fixed;
	right:20px;
	bottom:20px;
   font-size:16px;
   line-height:35px;
background:rgba(255,255,255,0.7);
	display:none;
}
/* WP Forms
--------------------------------------------- */

.entry-content .wpforms-container {
	margin-bottom: 40px;
}


.site-container .wpforms-container .wpforms-form .wpforms-field input {
	border-radius: 0;
	height: auto;
	padding: 15px;
}

.site-container .entry-content .wpforms-form .wpforms-field-label {
	font-weight: 600;
}

.site-container .entry-content .wpforms-form .wpforms-field-sublabel {
	font-size: 14px;
	font-weight: 300;
}

.entry-content .wpforms-form .wpforms-field-hp {
	display: none !important;
	left: -9000px !important;
	position: absolute !important;
}

.site-container .entry-content .wpforms-form textarea {
	padding: 15px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-small {
	height: 120px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-medium {
	height: 200px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-large {
	height: 300px;
}

.testimonial_image img {
    max-height: 300px;
	width: 100%;
    object-fit: cover;
    width: auto;
}
.testimonial_image { text-align: center;margin-top:20px; }
.testimonial_inner { max-width:1140px; margin: 0 auto; padding:0; }


.testimonial_content {
	padding-left: 5%;
}
.testimonial {
	margin-bottom: 40px;
	padding-bottom: 50px;
	border-bottom: 1px solid #ff3eb3;
	width: 100%;
	float:left;
	position: relative; /* Required for absolute positioning of the arrow */
}

.divider_testimonial {
	z-index: 100;
  position: absolute;
  transform: rotate(-45deg);
  z-index: 100;
  left: 49.5%;
  margin-left: -20px;
  height: 30px;
  width: 30px;
  border-bottom: 1px solid #e6e5e6;
  border-left: 1px solid #e6e5e6;
  background-color: #FFF;
  content: "";
bottom:-16px;border-bottom:1px solid #e31b78;border-left:1px solid #e31b78;
}
/* Hero Section
---------------------------------------------------------------------------- */
.hero-section-wrap {
    position: relative;
    height: 88vh; /* Full viewport height */
    overflow: hidden; /* Prevent overflow */
}

.hero-section {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    animation: zoomIn 10s forwards; /* Added animation */
    z-index: 0; /* Place behind the content */
}

@keyframes zoomIn {
    0% {
        transform: scale(1); 
    }
    100% {
        transform: scale(1.1);
    }
}

/* Overlay
---------------------------------------------------------------------------- */
.overlay {
    background: linear-gradient(10deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

/* Hero Content
---------------------------------------------------------------------------- */
.hero_content {
    position: absolute;
    bottom: 0px;
    left: 40px;
    z-index: 2;
    padding: 30px 5% 0px 2%;
    color: white;
    text-align: left;
}

.hero_content h1 {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
	margin-bottom:5px;
}

.hero_content p {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.hero_content div {
    font-size: 1.2em;
    line-height: 1.5;
    margin-top: 10px;
}

/* Mission Widget Container
---------------------------------------------------------------------------- */
.mission-widget-container {
    text-align: center;
    border-top: 4px solid rgba(255, 255, 255, 0.2);
    border-bottom: 4px solid rgba(255, 255, 255, 0.2);
    padding: 20px 30px 0px;
    position: relative; /* Ensure the container is positioned for the overlay */
    overflow: hidden; /* Prevent overflow of the pseudo-element */
}

.mission-widget-container p,
.mission-widget-container h4 {
    text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8);
}

/* .mission-widget-container::before {
    content: ''; 
    position: absolute; 
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(135deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1)),
        linear-gradient(225deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1));
    background-size: 20px 20px;
    opacity: 0.15; 
    z-index: 1; 
} */

/* Content Organization
---------------------------------------------------------------------------- */
.feature_content_wrap {
    width:auto;
	max-width:768px;
    margin: 0 auto;
    float: none;
    padding: 20px;
    text-align: left;
}

.feature_content_wrap .widget {
    margin-bottom: 10px;
}

.home-content-field {
    display: flex;
	margin-top:10px;
}

.layout-left {
    flex-direction: row; /* Title and text on the left, image on the right */
}

.layout-right {
    background: #FFF;
	border-right:none;
	border-top:none;
    position: relative; /* Ensure the container is positioned for the overlay */
    overflow: hidden;
}

.layout-left,
.layout-right {
	box-shadow: 
        inset 0 0 5px rgba(0, 0, 0, 0.05), /* Inner shadow */
        0 0 5px rgba(0, 0, 0, 0.05);
}

.layout-right > * {
    position: relative; /* Position content above the overlay */
    z-index: 2; /* Ensure content is above the overlay */
}

/* .layout-right::before {
    content: '';
    position: absolute; 
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(135deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1)),
        linear-gradient(225deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1));
    background-size: 20px 20px; 
    opacity: 0.15;
    z-index: 1; 
} */

.content-footer-cta { padding: 60px 20px; max-width: 600px; margin: 0 auto; text-align: center; }

/* Text and Image Content
---------------------------------------------------------------------------- */
.text-content {
    flex: 0 0 45%; /* Set width to slightly less than 50% */
    padding: 0px; /* Add padding for better spacing */
}
.about-text-content {
    flex: 0 0 55%; /* Set width to slightly less than 50% */
    padding: 0px; /* Add padding for better spacing */
}
.about_content_wrap { max-width:1140px; margin:0 auto; }

.content-wrap {
    padding: 0 12%;
    display: flex; /* Enable flexbox */
    flex-direction: column; /* Stack children vertically */
    justify-content: center; /* Center children vertically */
    height: 100%;
}

.home .content-wrap { text-align:center; }

.home .layout-left { text-align:left; }

.content-wrap h2 {
    margin: 0 0 20px;
}

.content-wrap-text { border-left: 4px solid rgba(255,255,255,0.3); padding:0px 20px; border-radius:8px; }

.image-content {
    flex: 0 0 55%; /* Set width to 45% */
    display: flex;
    align-items: center; /* Center the image vertically */
}
.about-image-content {
    flex: 0 0 45%; /* Set width to 45% */
    display: flex;
    align-items: center; /* Center the image vertically */
}

.image-content img {
    max-width: 100%; /* Ensure the image is responsive */
    height: 680px; /* Set fixed height */
    object-fit: cover;
    width: 100%;
	display: inline-block; /* Ensure the image is inline-block */
    vertical-align: top; 
}
.about-image-content img {
    max-width: none; /* Ensure the image is responsive */
    max-height: 534px; /* Set fixed height */
    object-fit: cover;
	object-position:top;
    width: 100%;
}

/* Home Alt Content Wrap
---------------------------------------------------------------------------- */
.home_alt_content_wrap {
    margin-bottom: 0px;
	margin-top:20px;
}

.alt_content_wrap {
    margin-bottom: 20px;
	margin-top:20px;
}

/* Column Layouts
---------------------------------------------------------------------------- */
.left-column-inner {
    padding: 30px 8%;
    border-right: 2px dashed #ff3eb3;
}

.left-column-inner h2 {
    margin: 15px auto 25px;
}

.left-column-inner img {
    width: auto;
    height: auto;
}

.right-column-inner {
    padding: 50px 8%;
}

.two-column-content {
    display: flex;
}

.left-column,
.right-column {
    flex: 1;
    padding: 10px; /* Add some padding */
}

/* Highlight Background Outer
---------------------------------------------------------------------------- */
.highlight_bg_outer.layout-left {
    background: #FFF;
    box-shadow: 
        inset 0 0 5px rgba(0, 0, 0, 0.05), /* Inner shadow */
        0 0 5px rgba(0, 0, 0, 0.05);
	border-left:none;
    position: relative; /* Ensure the container is positioned for the overlay */
    overflow: hidden;
}

.highlight_bg_outer.layout-left > * {
    position: relative; /* Position content above the overlay */
    z-index: 2; /* Ensure content is above the overlay */
}

/* .highlight_bg_outer.layout-left::before {
    content: '';
    position: absolute; 
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(135deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1)),
        linear-gradient(225deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0.1));
    background-size: 20px 20px; 
    opacity: 0.15;
    z-index: 1;
} */

/* Hero Slider
---------------------------------------------------------------------------- */
.tws_hero_slider_wrap {
    width: 100%;
	max-width:1140px;
    float: none;
    margin: 0 auto;
    position: relative;
}
.tws_hero_thumbnails {
    position: absolute; /* Position it absolutely */
    left:10px; /* Align to the left */
    top: 0; /* Align to the top */
    height: 100%; /* Ensure it takes full height */
    display: flex; /* Use flexbox for layout */
    flex-direction: column; /* Stack items vertically */
    justify-content: center; /* Center items vertically */
    z-index: 10; /* Ensure it appears above other elements */
}
.tws_hero_thumbnails .swiper-slide {
    width: auto; /* Allow the width to adjust */
    height: 100px; /* Allow the height to adjust */
    margin-bottom: 10px; /* Space between thumbnails */
    background: rgba(0, 0, 0, 0.7);
	border-radius:8px;
	cursor: pointer;
  transition: all 0.3s ease;
  border-left: 4px solid transparent;
}
.tws_hero_thumbnails .swiper-slide-thumb-active {
    background: rgba(0, 0, 0, 0.95);
	border-left: 4px solid #ff3eb3;
}
.tws_hero_thumbnails .swiper-slide-thumb-active .thumb_title {
	font-weight:bold;
}

.thumb_img_wrap { 
    width: 250px; 
    height: 100px; 
    position: relative; 
    overflow: hidden;
}
.thumb_img_wrap::after {
    content: ''; /* Required for the pseudo-element */
    position: absolute; /* Position it absolutely */
    top: 0; /* Align to the top */
    left: 0; /* Align to the left */
    right: 0; /* Align to the right */
    bottom: 0; /* Align to the bottom */
    background: linear-gradient(to top left, rgba(0, 0, 0, 0.8), 20%, rgba(0, 0, 0, 0.05), transparent); /* Gradient background */
    z-index: 9;border-radius:4px;
}

.thumb_img_wrap img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover;
	border-radius:4px;
}

.thumb_title { 
    position: absolute; 
    bottom: 0;
	z-index: 10;
	font-size: 14px;
    line-height: 1.2;
    padding: 0 0 0 5px;
    right: 0; 
    color: white; /* Text color */
    padding: 10px 25px; /* Padding for better visibility */
}
.tws_hero_thumbnails .swiper-wrapper {
    align-items: center;
    justify-content: center;
}

.hero_slide_content {
    width: auto;
    height: auto;
    color: #FFF;
    text-align: center;
    background: #FFF;
}

.hero_slide_content img {
    height: 750px;
    width: auto;
    object-fit: contain;
}

.hero_thumb {
    color: #FFF;
    text-align: center;
}
.hero_thumb_inner,.hero_thumb_inner_no_title {
    display: flex;align-items: center;
	justify-content: center;
}

.thumb_title {
    text-align: left;
}

.thumb_title_wrap {
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
    padding: 0 0 0 5px;
}
.thumb_wrap {padding: 10px; }

#breadcrumbs {display:inline-block; margin:0 auto 15px; font-size:12px; margin-top:0px; border-radius:8px; padding:5px 10px;}
.entry-header { margin:10px auto;text-align:center; position:relative;}
.entry-header .entry-title { padding-top:25px;}
.child-pages-grid {display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;}
.child-page-title { padding: 10px; }
.child-page-title h2 { margin: 0; }
h2.featured-title { color:#747474; transition: color 0.3s ease; }
.child-page:hover h2.featured-title { color:#ff3eb3; }
.child-page {flex: 1 1 calc(31.333% - 10px); box-sizing: border-box;
	border: 1px solid #ff3eb3; 
    border-radius: 8px;
    padding: 0px;
    margin: 10px; 
    transition: box-shadow 0.3s; 
	cursor:pointer;
	max-width:100%;
}

.child-page:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Shadow on hover */
}
.child-page img {width:100%; height:378px; object-fit: cover; border-radius: 0 0 8px 8px;}

/* Hero Section */
.hero-section-wrap {
    position: relative;
    height: 90vh; /* Full viewport height */
    overflow: hidden; /* Prevent overflow */
}
/* Hero Section */
.hero-section-wrap {
    position: relative;
    height: 80vh; /* Full viewport height */
    overflow: hidden; /* Prevent overflow */
}

.hero-section {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center center;
    transition: opacity 1s ease-in-out; /* Smooth transition for opacity */
    z-index: 1; /* Place behind the content */
}

/* Next Image Div */
.next-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    transition: opacity 1s ease-in-out; /* Smooth transition for opacity */
    opacity: 0; /* Start hidden */
    z-index: 2; /* Place above the current image */
}

/* Overlay (optional) */
.overlay {
    background: linear-gradient(10deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3; /* Place above everything */
}

/* Hero Content */
.hero_content {
    position: absolute;
    bottom: 0px;
    left: 40px;
    z-index: 4; /* Ensure content is above the images */
    padding: 30px 5% 0px 2%;
    color: white;
    text-align: left;
}

.hero_content h1 {
    font-size: 3em;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.hero_content p {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}
@media only screen and (max-width: 1547px) {

	.tws_hero_slider_wrap {
		max-width:100%;

	}
	.tws_hero_thumbnails {
		left: 1%; /* Align to the left */
	
	}
}
@media only screen and (max-width: 1310px) {

	.tws_hero_slider_wrap {
		max-width:none;

	}
	.tws_hero_thumbnails {
		left: 0px; /* Align to the left */
	}
	.content-wrap {
		padding: 0 2%;
	}
	.entry-title { font-size: 38px; }
	.entry-header { max-width:100%;}
}
@media only screen and (max-width: 985px) {
	.testimonial_inner { max-width:85%; margin: 0 auto; padding:0; }
	.testimonial_content { padding:0;}
	.tws_hero_thumbnails .swiper-slide {
	width: 120px;	}
.thumb_title { display:none;}
.hero_thumb_inner {width:auto; padding:0px;}

.hero_thumb .one-half {
width:100%;float:none;
}
.hero_thumb { width:90px; height:auto; }
.tws_hero_slider_wrap {
	width: 100%;
	float: none;
	margin: 0 auto;
	position: relative;
}
.tws_hero_thumbnails .swiper-slide {width: auto; margin: 0 2px;}
.content-wrap {
	padding: 30px 5%;
}
#breadcrumbs { margin:0 auto 15px; font-size:11px;  float:none;position:relative; right:0; top:0; z-index:10;display:inline-block; }
.entry-header { max-width:95%; margin:15px auto 0;text-align:center; }
.entry-header .entry-title { padding-top:0px; }
#site-fullwidth-inner .entry { margin-bottom:0px;}
}

@media only screen and (max-width: 880px) {

	.home-content-field {
		flex-direction: column; /* Stack children vertically */
			order: 2; /* Move text-content below image-content */
		}
	
		.image-content,.about-image-content {
			order: 1; /* Keep image-content above text-content */
		}

.text-content,.about-text-content {
    flex: none; /* Set width to slightly less than 50% */
    padding: 0px; /* Add padding for better spacing */
}

	.image-content,.about-image-content {
		flex:none; /* Allow image content to take available space */
		display: block;
		justify-content: center; /* Center the image */
		align-items: center; /* Center the image vertically */
	}

	.two-column-content {
		display: block;
	}
	.left-column, .right-column {
		flex: none;
		padding: 10px; /* Add some padding */
	}
}

@media only screen and (max-width: 600px) {

	.right-column-inner {
		padding: 50px 4%;
	}

	.tws_hero_thumbnails {
		position: relative;
	}
	.tws_hero_thumbnails > .swiper-wrapper {
		flex-direction: row!important;
	}
	.hero_thumb_inner,.hero_thumb_inner_no_title img { width:auto; height:auto;}
	.hero_slide_content img {
		height: auto;
		width: auto;
		object-fit: contain;
	}
	.hero_thumb { width:70px; height:70px; }
	.tws_hero_thumbnails .swiper-slide {width:70px; height:70px}
	.thumb_img_wrap { height:70px;width:70px; object-fit:cover;}

	.mission-widget-container { padding: 0 5%;}
	.feature_content_wrap { width:auto; text-align:left;padding: 30px 0;
	}
	.child-page {flex: 1 1 100%; box-sizing: border-box;

		max-width:none;
	}
	.child-page img { min-height:none; object-fit: cover;width:100%;}
	.child-pages-grid {width:90%; margin:0 auto;}
	.child-page-title { text-align:center;}
	h2.featured-title { font-size:28px;}
	a:focus,
	a:active {
		outline: none!important; /* Remove the outline on focus */
	}
	a:active {
		background: transparent; /* Remove background on tap */
	}
	
	button:active {
		background: transparent; /* Remove background on tap */
	}
	.site-container .wpforms-container .wpforms-form .wpforms-field input {
		font-size:14px;
	}
	.hero_content h1 {
		line-height:1.1;
		font-size:2.8em;
	}
	.hero-section-wrap {
		height: 70vh; /* Full viewport height */

	}
	.hero_content { padding: 15px 5%; width:95%; left: 0px; bottom: 0px; }
}


/* Headings
--------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: novecento-sans, sans-serif;
font-style: normal;
  font-optical-sizing: auto;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 12px;
	text-transform:uppercase;
}

h1 {
	font-size: 36px;
}

h2 {
	font-size: 28px;
}

h3 {
	font-size: 24px;
}

h4 {
	font-size: 20px;
}

.entry-content h4 {
	margin-top: 40px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

/* Objects
--------------------------------------------- */

embed,
iframe,
img,
object,
video,
.wp-caption {
	max-width: 100%;
}

img {
	height: auto;
	vertical-align: top;
}

figure {
	margin: 0;
}

/* Gallery
--------------------------------------------- */

.gallery {
	overflow: hidden;
}

.gallery img {
	border: 1px solid #eee;
	height: auto;
	padding: 4px;
}

.gallery img:focus,
.gallery img:hover {
	border: 1px solid #999;
	outline: none;
}

.gallery-columns-1 .gallery-item {
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-3 .gallery-item {
	width: 33%;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-columns-6 .gallery-item {
	width: 16.6666%;
}

.gallery-columns-7 .gallery-item {
	width: 14.2857%;
}

.gallery-columns-8 .gallery-item {
	width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	width: 11.1111%;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
	clear: left;
}

.gallery-item {
	float: left;
	margin: 0 0 30px;
	text-align: center;
}

/* Masonry Gallery Layout
--------------------------------------------- */

/* CSS Columns Masonry - Industry Standard Pure CSS Solution
 * This is the most reliable method for masonry layouts without JavaScript
 */

/* WordPress Block Galleries */
#grid-format-page .wp-block-gallery,
.grid-format-page .wp-block-gallery,
.gallery-masonry.wp-block-gallery {
	display: block !important;
	column-count: 2 !important;
	column-gap: 15px !important;
	column-fill: balance !important;
	width: 100% !important;
	padding: 0 !important;
}

#grid-format-page .wp-block-gallery .wp-block-image,
.grid-format-page .wp-block-gallery .wp-block-image,
.gallery-masonry.wp-block-gallery .wp-block-image {
	display: inline-block !important;
	width: 100% !important;
	margin: 0 0 15px 0 !important;
	break-inside: avoid !important;
	page-break-inside: avoid !important;
	-webkit-column-break-inside: avoid !important;
	vertical-align: top !important;
}

#grid-format-page .wp-block-gallery .wp-block-image img,
.grid-format-page .wp-block-gallery .wp-block-image img,
.gallery-masonry.wp-block-gallery .wp-block-image img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border: 1px solid #eee;
	padding: 4px;
	object-fit: cover;
	transition: border-color 0.3s ease;
	cursor: pointer;
}

#grid-format-page .wp-block-gallery .wp-block-image img:focus,
#grid-format-page .wp-block-gallery .wp-block-image img:hover,
.grid-format-page .wp-block-gallery .wp-block-image img:focus,
.grid-format-page .wp-block-gallery .wp-block-image img:hover,
.gallery-masonry.wp-block-gallery .wp-block-image img:focus,
.gallery-masonry.wp-block-gallery .wp-block-image img:hover {
	border-color: #999;
	outline: none;
}

/* Classic Gallery Shortcode Support */
.gallery-masonry,
#grid-format-page .gallery,
.grid-format-page .gallery {
	display: block !important;
	column-count: 2 !important;
	column-gap: 15px !important;
	column-fill: balance !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gallery-masonry .gallery-item,
#grid-format-page .gallery .gallery-item,
.grid-format-page .gallery .gallery-item {
	float: none !important;
	display: inline-block !important;
	width: 100% !important;
	margin: 0 0 15px 0 !important;
	break-inside: avoid !important;
	page-break-inside: avoid !important;
	-webkit-column-break-inside: avoid !important;
	vertical-align: top !important;
}

.gallery-masonry .gallery-item img,
#grid-format-page .gallery .gallery-item img,
.grid-format-page .gallery .gallery-item img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border: 1px solid #eee;
	padding: 4px;
	object-fit: cover;
	transition: border-color 0.3s ease;
	cursor: pointer;
}

.gallery-masonry .gallery-item img:focus,
.gallery-masonry .gallery-item img:hover,
#grid-format-page .gallery .gallery-item img:focus,
#grid-format-page .gallery .gallery-item img:hover,
.grid-format-page .gallery .gallery-item img:focus,
.grid-format-page .gallery .gallery-item img:hover {
	border-color: #999;
	outline: none;
}

.gallery-masonry .gallery-caption,
#grid-format-page .gallery .gallery-caption,
.grid-format-page .gallery .gallery-caption {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.4;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	#grid-format-page .wp-block-gallery,
	.grid-format-page .wp-block-gallery,
	.gallery-masonry.wp-block-gallery,
	.gallery-masonry,
	#grid-format-page .gallery,
	.grid-format-page .gallery {
		column-count: 2 !important;
		column-gap: 10px !important;
	}
}

@media (max-width: 480px) {
	#grid-format-page .wp-block-gallery,
	.grid-format-page .wp-block-gallery,
	.gallery-masonry.wp-block-gallery,
	.gallery-masonry,
	#grid-format-page .gallery,
	.grid-format-page .gallery {
		column-count: 1 !important;
		column-gap: 10px !important;
	}
}

/* Forms
--------------------------------------------- */

input,
select,
textarea {
	background-color: #fff;
	border: 1px solid #ddd;
	color: #747474;
	font-size: 18px;
	font-weight: 400;
	padding: 15px;
	width: 100%;
}

input:focus,
textarea:focus {
	border: 1px solid #ff3eb3;
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

:-ms-input-placeholder {
	color: #747474;
	opacity: 1;
}

::placeholder {
	color: #747474;
	opacity: 1;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
/* .site-container div.wpforms-container-full .wpforms-form input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form button[type="submit"], */
.button {
	position: relative; /* Position relative for the pseudo-element */
	background-color: #ff3eb3; /* Updated button color */
	border-radius: 5px; /* Rounded corners */
	color: #fff; /* Text color */
	cursor: pointer; /* Pointer cursor on hover */
	font-size: 18px; /* Font size */
	font-family: novecento-sans, sans-serif;
	font-style: normal;
	  font-optical-sizing: auto;
		font-weight: 400;
	padding: 15px 30px; /* Padding */
	text-align: center; /* Center text */
	text-decoration: none; /* No underline */
	overflow: hidden; /* Hide overflow for the pseudo-element */
}

.button::after {
	content: ''; /* Create a pseudo-element */
	position: absolute; /* Position it absolutely */
	bottom: 0; /* Align to the bottom */
	left: 50%; /* Start from the center */
	width: 100%; /* Full width */
	height: 3px; /* Height of the border */
	background: rgba(255, 255, 255, 0.3); /* Light shine effect */
	transform: translateX(-50%) scaleX(0); /* Start with no width, centered */
	transform-origin: center; /* Set the origin for scaling to the center */
	transition: transform 0.5s ease; /* Transition for the scale effect */
}

.button:hover::after {
	transform: translateX(-50%) scaleX(1); /* Fill the border from center outward on hover */
}

button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.button:focus,
.button:hover {
	color: #fff;
	background-color:#e94081;
}

.entry-content .button:focus,
.entry-content .button:hover {
	color: #fff;
}

.button {
	display: inline-block;
}

.invitations-buttons {
	margin-bottom: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.invitations-buttons .alt_button {
	margin-right: 10px;
}
.alt_button {
	position: relative; /* Position relative for the pseudo-element */
	background-color:#FFF; /* Updated button color */
	border-radius: 5px;
	border:2px solid #ff3eb3;
	color: #747474; /* Text color */
	cursor: pointer; /* Pointer cursor on hover */
	font-size: 16px; /* Font size */
	font-family: novecento-sans, sans-serif;
	font-style: normal;
	  font-optical-sizing: auto;
		font-weight: 400;
	padding: 15px 30px; /* Padding */
	text-align: center; /* Center text */
	text-decoration: none; /* No underline */
	overflow: hidden; /* Hide overflow for the pseudo-element */

}
.alt_button:hover { 
	color: #FFF; 
	background-color: #e94081;
}
.alt_button:focus {
	color: #FFF; 
	background-color: #ff3eb3;
}
.alt_button:focus::after {
	content: ''; /* Create a pseudo-element */
	position: absolute; /* Position it absolutely */
	bottom: 0; /* Align to the bottom */
	left: 50%; /* Start from the center */
	width: 100%; /* Full width */
	height: 3px; /* Height of the border */
	background: rgba(255, 255, 255, 0.3); /* Light shine effect */
	transform: translateX(-50%) scaleX(0); /* Start with no width, centered */
	transform-origin: center; /* Set the origin for scaling to the center */
	transition: transform 0.5s ease; /* Transition for the scale effect */
}
.alt_button::after {
	content: ''; /* Create a pseudo-element */
	position: absolute; /* Position it absolutely */
	bottom: 0; /* Align to the bottom */
	left: 50%; /* Start from the center */
	width: 100%; /* Full width */
	height: 3px; /* Height of the border */
	background: rgba(255, 255, 255, 0.3); /* Light shine effect */
	transform: translateX(-50%) scaleX(0); /* Start with no width, centered */
	transform-origin: center; /* Set the origin for scaling to the center */
	transition: transform 0.5s ease; /* Transition for the scale effect */
}
.alt_button:hover::after,
.alt_button:focus::after,
.alt_button:active::after {
	transform: translateX(-50%) scaleX(1);
	pointer-events: none; /* Prevent interaction with the pseudo-element */
}
.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover {
	background-color: #ff3eb3;
	color: #fff;
	cursor: not-allowed;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
	display: none;
}

/* Tables
--------------------------------------------- */

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 40px;
	width: 100%;
	word-break: break-all;
}

tbody {
	border-bottom: 1px solid #eee;
}

td,
th {
	line-height: 2;
	text-align: left;
	vertical-align: top;
}

td {
	padding: 0.5em;
}

tr {
	border-top: 1px solid #eee;
}

th {
	font-weight: 600;
	padding: 0.5em;
}

/* Screen Reader Text
--------------------------------------------- */

.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus,
.screen-reader-shortcut:focus,
.widget_search input[type="submit"]:focus {
	background: #fff;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #747474;
	display: block;
	font-size: 1em;
	font-weight: 700;
	height: auto;
	padding: 15px 23px 14px;
	text-decoration: none;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

.more-link {
	display: inline-block;
	position: relative;
	margin-bottom: 30px;
}


/* Structure and Layout
---------------------------------------------------------------------------- */

/* Site Container
--------------------------------------------- */

.site-container {
	animation: fadein 1s;
	word-wrap: break-word;
}

@keyframes fadein {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}

}

/* Site Inner
--------------------------------------------- */

.site-inner {
	clear: both;
	margin: 0 auto;
	padding: 0 0px 30px 0;
}


@media only screen and (max-width: 1440px) {
	.wrap, .home_alt_content_wrap { max-width:100%;}
	}
	
	@media only screen and (min-width: 1440px) {
		.wrap, .home_alt_content_wrap, .hero-section-wrap { max-width:1440px; margin:0 auto; }
	.gallery-masonry-wrap { max-width:1080px; margin:0 auto;}
}
	
	.page-template-page-contact .site-inner {
		max-width:1100px;
		margin:0 auto;
	}
	.landing-page #breadcrumbs { display:none; }
	.landing-page ul.wp-block-social-links { padding-left:0!important; }
	.landing-logo-wrap { text-align:center; }
	.landing-logo { margin:30px auto 0; float:none; max-width: 260px; }
	.page-template-page-contact .entry-content { text-align:center; max-width:880px; margin:0 auto; }
	
	@media only screen and (max-width: 1080px) {
	.page-template-page-contact .entry-content { padding:0 3%; }
		.site-inner {
			padding: 0px 0px 0;
		}
	
	}

/* Common Classes
---------------------------------------------------------------------------- */

/* Avatar
--------------------------------------------- */

.avatar {
	border-radius: 50%;
	float: left;
}

.author-box .avatar,
.alignleft .avatar {
	margin-right: 20px;
}

.alignright .avatar {
	margin-left: 20px;
}

.comment .avatar {
	margin: 0 15px 20px 0;
}

/* Genesis
--------------------------------------------- */

.after-entry,
.archive-description,
.author-box {
	margin-bottom: 40px;
}

.after-entry {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	padding: 20px 30px;
}

.after-entry .widget:last-of-type {
	margin-bottom: 0;
}

.breadcrumb {
	border-bottom: 1px solid #eee;
	font-size: 16px;
	margin-bottom: 40px;
	padding-bottom: 10px;
}

.genesis-title-hidden .breadcrumb {
	margin-top: 40px;
}

.archive-description p:last-child,
.author-box p:last-child {
	margin-bottom: 0;
}

/* Search Form
--------------------------------------------- */

.search-form {
	overflow: hidden;
}

.entry-content .search-form {
	margin-bottom: 40px;
	width: 50%;
}

.post-password-form input[type="submit"],
.search-form input[type="submit"] {
	margin-top: 10px;
}

.widget_search input[type="submit"] {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	padding: 0;
	position: absolute;
	width: 1px;
}



/* WordPress
--------------------------------------------- */

a.aligncenter img {
	display: block;
	margin: 0 auto;
}

a.alignnone {
	display: inline-block;
}

.alignleft {
	float: left;
	text-align: left;
}

.alignright {
	float: right;
	text-align: right;
}

a.alignleft,
a.alignnone,
a.alignright {
	max-width: 100%;
}

img.centered,
.aligncenter,
.singular-image {
	display: block;
	margin: 0 auto 30px;
}

img.alignnone,
.alignnone {
	margin-bottom: 15px;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
	margin: 0 20px 20px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
	margin: 0 0 20px 20px;
}

figcaption,
.gallery-caption,
.wp-caption-text {
	font-size: 14px;
	font-weight: 600;
	margin-top: 0.5em;
	margin-bottom: 1em;
	padding-left: 10px;
	padding-right: 10px;
	text-align: center;
}

.entry-content p.wp-caption-text {
	margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
	margin: 0 0 30px;
}

/* Widgets
---------------------------------------------------------------------------- */

.widget {
	margin-bottom: 40px;
}

.widget p:last-child,
.widget ul > li:last-of-type {
	margin-bottom: 0;
}

.widget ul > li {
	margin-bottom: 10px;
}

.widget ul > li:last-of-type {
	padding-bottom: 0;
}

.widget ol > li {
	list-style-position: inside;
	list-style-type: decimal;
	padding-left: 20px;
	text-indent: -20px;
}

.widget li li {
	border: 0;
	margin: 0 0 0 30px;
	padding: 0;
}

.widget_calendar table {
	width: 100%;
}

.widget_calendar td,
.widget_calendar th {
	text-align: center;
}

/* Featured Content
--------------------------------------------- */

.featured-content .entry {
	border-bottom: 1px solid #eee;
	margin-bottom: 20px;
}

.featured-content .entry:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
}

.featured-content .entry-title {
	font-size: 16px;
	margin-bottom: 5px;
	margin-top: 10px;
}


/* Plugins
---------------------------------------------------------------------------- */

/* Genesis eNews Extended
--------------------------------------------- */

.after-entry .enews {
	text-align: center;
	padding: 10px;
}

.sidebar .enews {
	background-color: #f5f5f5;
	padding: 30px;
}

.enews-widget input {
	font-size: 16px;
	margin-bottom: 10px;
}

.after-entry .enews-widget input {
	text-align: center;
}

.enews-widget input[type="submit"] {
	margin: 0;
	width: 100%;
}

.enews form + p {
	margin-top: 20px;
}

/* Genesis Simple FAQ
--------------------------------------------- */

.gs-faq__question {
	background: transparent;
	border-bottom: 1px solid #eee;
	color: #747474;
	padding-left: 0;
	padding-right: 0;
}

.gs-faq__question:focus,
.gs-faq__question:hover {
	background: transparent;
	color: #ff3eb3;
}

.gs-faq__question::after {
	content: "\f132";
	font-family: dashicons; /* stylelint-disable-line font-family-no-missing-generic-family-keyword */
	float: right;
}

.gs-faq__question.gs-faq--expanded::after {
	content: "\f460";
}



/* Skip Links
---------------------------------------------------------------------------- */

.genesis-skip-link {
	margin: 0;
}

.genesis-skip-link .skip-link-hidden {
	display: none;
	visibility: hidden;
}

.genesis-skip-link li {
	height: 0;
	list-style: none;
	width: 0;
}

/* Display outline on focus */
:focus {
	color: #747474;
	outline: transparent solid 1px;
}

/* Site Header
---------------------------------------------------------------------------- */

.site-header {
	background-color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	padding: 0 30px;
	position: sticky;
	top: 0;
	z-index: 9999;
}

/* Title Area
--------------------------------------------- */


.wp-custom-logo .custom-logo-link {
	display: block;
}

.wp-custom-logo .title-area img {
	width: auto;
}

.site-title {
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 0;
}

.site-title a,
.site-title a:focus,
.site-title a:hover {
	color: #747474;
	text-decoration: none;
}

.site-description,
.wp-custom-logo .site-title {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

/* Site Navigation
---------------------------------------------------------------------------- */
.nav-primary .genesis-nav-menu a {
	padding-left: 15px;
	padding-right: 15px;
}

.title-area {
	float: left;
	padding-top:25px;
	padding-bottom:20px;
	transition: all 0.3s ease;
}

.shrink_title { 	padding-top:5px;
	padding-bottom:3px;}
@media only screen and (max-width: 1175px) {
	.nav-primary .genesis-nav-menu a {
		padding-left: 10px;
		padding-right: 10px;
		font-size:12px;
	}
	.nav-primary .genesis-nav-menu .sub-menu a {
		font-size:12px;
	}
	.site-header {
		padding:0 15px;
	}

}
@media only screen and (max-width: 960px) {

	#site-fullwidth-inner .entry-content,
	.grid-format-content-wrap {  max-width: 85%; margin:0 auto;}


	.nav-primary {padding-bottom:20px; }
	.title-area {
		padding-top:10px;
		padding-bottom:10px;
	}
}


.wp-custom-logo .title-area {
	max-width: 180px;
	width: 100%;
}

.genesis-nav-menu {
	line-height: 1;
	width: 100%;
}

.genesis-nav-menu .menu-item {
	display: block;
	float: none;
	position: relative;
}

.genesis-nav-menu a {
	color: #747474;
	display: block;
	font-size: 14px;
	font-weight: 500;
	outline-offset: -1px;
	padding-bottom: 12px;
	padding-top: 12px;
	text-decoration: none;font-family: "Quicksand", sans-serif;
	text-transform:uppercase;
	border-top:4px solid transparent;
	transition: all 0.3s ease;
}

.current_page_parent a.sf-with-ul {
	color: #ff3eb3;
}

.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover,
.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover {
	color: #ff3eb3;
	text-decoration: none;
}

.genesis-nav-menu .sub-menu,
.genesis-nav-menu .sub-menu a {
	width: 100%;
}

.genesis-nav-menu .sub-menu {
	clear: both;
	display: none;
	left: -9999px;
	margin: 0;
	opacity: 1;
	padding-left: 15px;
	position: static;
	z-index: 99;
	-webkit-transition: opacity .1s ease-in-out;
	-moz-transition:    opacity .1s ease-in-out;
	-ms-transition:     opacity .1s ease-in-out;
	-o-transition:      opacity .1s ease-in-out;
	transition:         opacity .1s ease-in-out;
}

.genesis-nav-menu .sub-menu a {
	background-color: #fff;
	font-size: 14px;
	position: relative;
	word-wrap: break-word;

}

.genesis-nav-menu .menu-item:focus,
.genesis-nav-menu .menu-item:hover {
	position: relative;
}

.genesis-nav-menu .menu-item:hover > .sub-menu {
	display: block;
	left: auto;
	opacity: 1;
}

/* Responsive Menu
--------------------------------------------- */

.menu .menu-item:focus {
	position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
	left: auto;
	opacity: 1;
}

.js .nav-primary {
	display: none;
	position: relative;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item:hover > .sub-menu {
	display: none;
}

.menu-toggle,
.sub-menu-toggle {
	background-color: transparent;
	border-width: 0;
	color: #747474;
	display: block;
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
	visibility: visible;
}

.menu-toggle:focus,
.menu-toggle:hover,
.sub-menu-toggle:focus,
.sub-menu-toggle:hover {
	background-color: transparent;
	border-width: 0;
	color: #ff3eb3;
}

.menu-toggle {
	float: right;
	line-height: 20px;
	margin-bottom: 10px;
	margin-top: 10px;
	padding: 15px 0;
	position: relative;
	z-index: 1000;
}

.menu-toggle.activated::before {
	content: "\f335";
}

.site-header .dashicons-before::before {
	transition: none;
}

.site-header .menu-toggle::before {
	float: left;
	margin-right: 5px;
	position: relative;
	text-rendering: auto;
	top: 1px;
}

.sub-menu-toggle {
	float: right;
	padding: 9px 10px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
}

.sub-menu .sub-menu-toggle {
	padding: 12px 10px;
}

.sub-menu-toggle::before {
	display: inline-block;
	text-rendering: auto;
	transform: rotate(0);
	transition: transform 0.15s ease-in-out;
}

.sub-menu-toggle.activated::before {
	transform: rotate(180deg);
}

/* Header Menu
--------------------------------------------- */

.nav-primary {
	clear: left;

	width: 100%;
}

/* Footer Menu
--------------------------------------------- */

.nav-secondary {
	margin-top: 10px;
}

.nav-secondary .genesis-nav-menu {
	line-height: 1.5;
}

.nav-secondary .menu-item {
	display: inline-block;
}

.nav-secondary a {
	margin-left: 10px;
	margin-right: 10px;
	padding: 0;
}


/* Content Area
---------------------------------------------------------------------------- */

/* Entry Content
--------------------------------------------- */

.entry {
	margin-bottom: 40px;
}
.entry-content { padding-top:15px;}

.page-template-page-with-sections-gallery-top .entry-content { padding:0px 4%;}

.entry-content ol,
.entry-content ul {
	margin-bottom: 30px;
	padding-left: 40px;
}

.entry-content ol > li {
	list-style-type: decimal;
}

.entry-content ul > li {
	list-style-type: disc;
}

.entry-content ol ul > li,
.entry-content ul ul > li {
	list-style-type: circle;
}

.entry-content ol ol,
.entry-content ul ul {
	margin-bottom: 0;
}

.entry-content code {
	background-color: #f5f5f5;
}

.content .sticky {
	background-color: #f5f5f5;
	padding: 30px;
}

/* Entry Meta
--------------------------------------------- */

p.entry-meta {
	font-size: 16px;
	margin-bottom: 0;
}

.entry-header .entry-meta {
	margin-bottom: 20px;
}

.entry-footer .entry-meta {
	border-top: 1px solid #eee;
	padding-top: 20px;
}

.entry-categories,
.entry-tags {
	display: block;
}

.entry-comments-link::before {
	content: "\2014";
	margin: 0 6px 0 2px;
}

/* Pagination
--------------------------------------------- */

.pagination {
	clear: both;
	margin: 60px 0;
}

.adjacent-entry-pagination {
	margin-bottom: 0;
}

.archive-pagination li {
	display: inline;
}

.archive-pagination li a {
	background-color: #f5f5f5;
	color: #747474;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 4px;
	padding: 8px 12px;
	text-decoration: none;
}

.archive-pagination li a:focus,
.archive-pagination li a:hover,
.archive-pagination li.active a {
	background-color: #747474;
	color: #fff;
}

/* Entry Comments
--------------------------------------------- */

.comment-respond,
.entry-comments,
.entry-pings {
	margin-bottom: 40px;
}

.comment-list li {
	padding: 40px 0 0 30px;
}

.comment-list .depth-1 {
	padding-left: 0;
}

.comment-header {
	margin-bottom: 30px;
}

.comment-content {
	clear: both;
}

.comment-content ul > li {
	list-style-type: disc;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
	width: 50%;
}

.comment-respond label {
	display: block;
	margin-right: 12px;
}

.comment-header p {
	margin-bottom: 0;
}

.entry-pings .reply {
	display: none;
}

.comment-form-cookies-consent label {
	display: inline;
	padding-left: 10px;
}

/* Sidebar
---------------------------------------------------------------------------- */

.sidebar {
	font-size: 16px;
	line-height: 1.5;
}

.sidebar .widget {
	margin-bottom: 40px;
}

.sidebar p {
	margin-bottom: 20px;
}

/* Footer Widgets
---------------------------------------------------------------------------- */

.footer-widgets {
	/* border-top: 1px solid #eee; */
	background-color: #fff;
	clear: both;
	padding: 60px 0;
}

.footer-widgets .wrap {
	margin-left: auto;
	margin-right: auto;
}

.footer-widget-area {
	margin-bottom: 40px;
	padding-left: 30px;
	padding-right: 30px;
}

.footer-widget-area:last-child,
.footer-widgets .widget:last-child {
	margin-bottom: 0;
}



/* Site Footer
---------------------------------------------------------------------------- */

.site-footer {
	background-color: #fff;
	font-size: 15px;
	line-height: 1.5;
	padding: 30px;
	text-align: center;
}

.site-footer p {
	margin-bottom: 0;
}
.footer-widgets-2 .simple-social-icons ul.aligncenter { text-align:left; }
.list-format-field::after {
    content: '';
    position: absolute;
    left: 30%;
    bottom: 0;
    width: 60%;
	z-index:10;
    height: 1px;
	border-radius:0 0 4px 4px;
    background: linear-gradient(to right, #ff3eb3, transparent);
}

.list-format-field {position:relative; margin:0 auto 20px;border-left:1px solid #ff3eb3;; padding:0 30px 0px 0px; border-radius:4px 0 0 4px; }
.list-wrap-text {position:relative;  clear:both; min-height:250px; }
.list-wrap-text span { position:absolute; font-weight:700; display:flex; justify-content: center;align-items:center; top:-50px; left:-50px;background:#ff3eb3; color:white; width:40px; height:40px; border-radius:50%;}
.list-wrap-text p { margin-bottom:0;}
.list-wrap-text h2 { margin:0px 0 10px; text-align:left;}
.list-title-inner { margin-left:10px;}
.list-title { display:flex; flex-direction:column; justify-content:center; align-items: flex-start; height:250px;}
.list-wrap-text img {cursor:pointer; margin-right:0px; width:250px;height:250px; object-fit:cover;border-bottom:1px solid #ff3eb3;border-top:1px solid #ff3eb3;border-right:1px solid #ff3eb3; border-radius:3px 3px 0 3px; }
#grid-format-page .entry-content { max-width:768px; margin:0 auto; }
#grid-format-page .entry-content h2 { font-weight: 300; }

/* Lightbox styles */
.lightbox {
    display: flex; /* Added to enable flexbox */
    flex-direction: column; /* Added to stack children vertically */
    justify-content: center; /* Center content vertically */
    align-items: center; /* Center content horizontally */
    display: none; /* Hidden by default */
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255, 0.95);
	text-align:center;
}

.lightbox-content {
    max-width: 90%;
    max-height: 80%;
    margin: 30px auto 0; /* Center the lightbox content */
    display: block; 
}
#lightbox-img {
	border-radius:3px;
}
.close {
    position: absolute;
    top: 8%;
    right: 5%;
    color: #747474;
    font-size: 30px;
    cursor: pointer;
}

.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    color: #747474;
    font-size: 50px;
    cursor: pointer;
}

.prev {
    left: 10%;
}

.next {
    right: 10%;
}
#caption {
	text-align: center; /* Center text horizontally */
    margin: 10px auto 0;
	font-weight:600;
	font-family: "Playfair Display", serif;
	font-size:20px;
	padding:5px 10px;
	border-top:3px solid #ff3eb3;
	display:inline-block;
}

@media only screen and (max-width: 768px) {
	.lightbox-content {
		max-width: 90%;
		max-height: 100%;
		margin: 10px auto 0; /* Center the lightbox content */
		display: block; 
	}
	.prev, .next {
		font-size: 35px;

	}
	.prev {
		left: 5px;
	}
	
	.next {
		right: 5px;
	}
	.close {
		position: absolute;
		top: 5px;
		right: 5px;

	}
}

/* Media Queries
---------------------------------------------------------------------------- */

@media only screen and (min-width: 480px) {

	table {
		table-layout: auto;
		word-break: normal;
	}

}

@media only screen and (min-width: 960px) {
	.footer-widgets-2 .simple-social-icons ul.aligncenter { text-align:center; }
	.footer-widgets-2 { text-align: center;}
.footer-widgets-3 .widget { margin-left:20%; }
	.genesis-nav-menu > .menu-item:has(.sub-menu) > a::after {
		content: '\25BC'; /* Right-pointing caret */
		margin-left: 5px; /* Space between the text and the caret */
		font-size: 0.8em; /* Adjust size if needed */
		vertical-align: middle; /* Align with text */
	}
	.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover,
.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover {
	color: #ff3eb3;
	text-decoration: none;
}
.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover,
.genesis-nav-menu .current-menu-item > a {
	border-top:4px solid #ff3eb3;
}
	/* Site Header
	--------------------------------------------- */

	.admin-bar .site-header {
		top: 32px;
	}

	/* Genesis Menu
	--------------------------------------------- */

	.genesis-nav-menu .menu-item {
		display: inline-block;
	}

	.genesis-nav-menu a {
		padding-bottom: 44px;
		padding-top: 44px;
	}
	.shrink_nav a { padding-top:22px; padding-bottom:22px; }

	.genesis-nav-menu .menu-item:focus,
	.genesis-nav-menu .menu-item:hover {
		position: relative;
	}

	.genesis-nav-menu > .menu-bold > a {
		font-weight: 700;
	}

	.genesis-nav-menu > .menu-highlight > a {
		background-color: #747474;
		border-radius: 3px;
		color: #fff;
		font-weight: 600;
		margin-left: 15px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.genesis-nav-menu > .menu-highlight > a:focus,
	.genesis-nav-menu > .menu-highlight > a:hover {
		background-color: #ff3eb3;
	}

	.genesis-nav-menu .sub-menu,
	.genesis-nav-menu .sub-menu a {
		width: 200px;
	}

	.genesis-nav-menu .sub-menu {
		border-top: 1px solid #eee;
		opacity: 0;
		padding-left: 0;
		position: absolute;
		transition: opacity 0.1s ease-in-out;
	}

	.genesis-nav-menu .sub-menu a {
		border: 1px solid #eee;
		border-top: 0;
		padding-bottom: 15px;
		padding-top: 15px;
	}

	.genesis-nav-menu .sub-menu .sub-menu {
		margin: -46px 0 0 179px;
	}

	/* Responsive Menu
	--------------------------------------------- */

	.js .nav-primary {
		display: block;
	}

	.menu-toggle,
	.sub-menu-toggle {
		display: none;
		visibility: hidden;
	}

	/* Header Menu
	--------------------------------------------- */

	.nav-primary {
		clear: none;
		float: right;
		width: auto;
	}

	/* Site-Inner
	--------------------------------------------- */

	.site-inner {
		max-width: 1440px;
	}

	#site-fullwidth-inner {
		max-width:100%;
		padding:0px 0 0 0;
	}
	#site-fullwidth-inner .entry {margin-bottom:10px; }
	#site-fullwidth-inner .entry-content,
	.grid-format-content-wrap {  max-width: 880px; margin:0 auto;}

	/* Content
	--------------------------------------------- */

	.content {
		float: left;
		width: 95%;
	}

	.sidebar-content .content {
		float: right;
	}

	.full-width-content .content {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}

	/* Sidebar
	--------------------------------------------- */

	.sidebar {
		float: right;
		width: 30%;
	}

	.sidebar-content .sidebar {
		float: left;
	}

	/* Author Box
	--------------------------------------------- */

	.author-box {
		background-color: #f5f5f5;
		padding: 30px;
	}

	/* After Entry
	--------------------------------------------- */

	.after-entry {
		padding: 40px 60px;
	}

	.after-entry .enews {
		padding-left: 30px;
		padding-right: 30px;
	}

	/* Column Classes
	--------------------------------------------- */

	.five-sixths,
	.four-sixths,
	.one-fourth,
	.one-half,
	.one-sixth,
	.one-third,
	.three-fourths,
	.three-sixths,
	.two-fourths,
	.two-sixths,
	.two-thirds {
		float: left;
		margin-left: 2.564102564102564%;
	}

	.one-half,
	.three-sixths,
	.two-fourths {
		width: 48.717948717948715%;
	}

	.one-third,
	.two-sixths {
		width: 31.623931623931625%;
	}

	.four-sixths,
	.two-thirds {
		width: 65.81196581196582%;
	}

	.one-fourth {
		width: 23.076923076923077%;
	}

	.three-fourths {
		width: 74.35897435897436%;
	}

	.one-sixth {
		width: 14.52991452991453%;
	}

	.five-sixths {
		width: 82.90598290598291%;
	}

	.first {
		clear: both;
		margin-left: 0;
	}

	/* Entry Misc.
	--------------------------------------------- */

	.after-entry,
	.archive-description,
	.author-box,
	.comment-respond,
	.entry-comments,
	.entry-pings {
		margin-bottom: 60px;
	}

	/* Footer Widgets
	--------------------------------------------- */

	.footer-widgets .wrap {
		max-width: 1140px;
	}

	.footer-widget-area {
		float: left;
		margin-bottom: 0;
		width: calc(100% / 3);
	}

}

/* Print Styles
---------------------------------------------------------------------------- */

@media print {

	*,
	*::before,
	*::after {
		background: transparent !important;
		box-shadow: none !important;
		color: #747474 !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]::after {
		content: " (" attr(href) ")";
	}

	abbr[title]::after {
		content: " (" attr(title) ")";
	}

	a[href^="javascript:"]::after,
	a[href^="#"]::after,
	.site-title > a::after {
		content: "";
	}

	thead {
		display: table-header-group;
	}

	img,
	tr {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 2cm 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	blockquote,
	pre {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	.content,
	.content-sidebar {
		width: 100%;
	}

	button,
	input,
	select,
	textarea,
	.breadcrumb,
	.comment-edit-link,
	.comment-form,
	.comment-list .reply a,
	.comment-reply-title,
	.edit-link,
	.entry-comments-link,
	.entry-footer,
	.genesis-box,
	.header-widget-area,
	.hidden-print,
	.home-top,
	.nav-primary,
	.nav-secondary,
	.post-edit-link,
	.sidebar {
		display: none !important;
	}

	.title-area {
		text-align: center;
		width: 100%;
	}

	.site-title > a {
		margin: 0;
		text-decoration: none;
		text-indent: 0;
	}

	.site-inner {
		padding-top: 0;
		position: relative;
	}

	.author-box {
		margin-bottom: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		orphans: 3;
		page-break-after: avoid;
		page-break-inside: avoid;
		widows: 3;
	}


	img {
		page-break-after: avoid;
		page-break-inside: avoid;
	}

	blockquote,
	pre,
	table {
		page-break-inside: avoid;
	}

	dl,
	ol,
	ul {
		page-break-before: avoid;
	}

}

/* PhotoSwipe Aspect Ratio Fix
--------------------------------------------- */

/* Ensure PhotoSwipe images maintain aspect ratio and don't stretch */
.pswp__img {
	object-fit: contain !important;
	object-position: center !important;
	/* Don't override width/height - let PhotoSwipe set them, but maintain aspect ratio */
}

.pswp__zoom-wrap {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Ensure images are centered in viewport */
.pswp__item {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}
