/*******************************************************************GLOBAL STYLES**************************************************************/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --cream: #F2E0DC;
    --purple-gray: #594B63;
    --slate-blue: #5D6C8C;
    --navy: #28314A;
    --charcoal: #090A0D;
	--mauve: #AD8998;
    --black: #1a1a1a;
    --slate: #334052;
    --white: #ffffff;
}

html, :host {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%; /* modern, standard property */
}

body {
  font-family: 'Alegreya', serif;
  font-size: 20px;
  line-height: 1.6;
  color: var(--charcoal);
  line-height: 1.6;
  background-color: var(--cream);
}

@font-face {
  font-family: 'CabazonW01';
  src: url('../Fonts/Cabazon-W01-Regular.woff2') format('woff2'),
       url('../Fonts/Cabazon-W01-Regular.woff') format('woff'),
       url('../Fonts/Cabazon-W01-Regular') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

h1, h2, h3,
.cabazon-heading {
  font-family: 'CabazonW01', Georgia, 'Times New Roman', serif;
  color: #28314A;
}

/******************************HEADER, NAV***********************************/
/* Make header text sizes independent of the big body font */
.site-header {
	font-size: 20px; /* base for header area only */
	height: 100%;
	z-index: 9999;
}

.header-container {
	width: 100%;
	background-color: var(--navy);
	display: flex; 
	justify-content: center; 
	padding: 10px 0 12px;
	flex-direction: column;
} 

.logo-link {
	height: 100px; 
	width: auto;
	display: block;
	margin: 11px auto 10px auto;
}

.site-logo {
	height: 100px; 
	/*max-height: 48px;*/
	width: auto;
}

.site-title {
	font-size: clamp(25px, 2.2vw + 6px, 20px); /* Clamp keeps it nice across widths */
	background: linear-gradient(90deg, #C9BECF, #F2E0DC, #B4C5D0, #D5C3CD, #BFC7D4, #FFFFFF);
	background-clip: text;
	text-fill-color: transparent; 
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin: 0;
	text-align: center;
	padding-bottom: 11px;
	letter-spacing: 3px;
	line-height: 1.1;
	white-space: nowrap; /* prevents wrapping */
}

.nav-list {
	position: relative;
	overflow: hidden;
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: var(--purple-gray);
}

 .responsive .nav-order {
	display: flex;
 	flex-direction: row; 
	flex-wrap: wrap;
}

.nav-list .icon {
	padding-top: 10px;
	display: block;
    float: right;
	color: #f2f2f2;
   	font-size: 36px;
  	cursor: pointer;
	padding-right: 16px;
	height: auto;
}  

.cart-link {
	/*Pushes toggle to corner*/
	margin-right: auto;
	flex-wrap: nowrap;
	order: -1;
	padding: 0.5em 4px 0.5em 1em;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--white);
	text-decoration: none;
	position: relative;
	height: 100%;
}

.cart-link .bi { 
	font-size: 32px;
}
	
.cart-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px; 
	height: 22px;
	border-radius: 50%;
	background: var(--white);
	color: #000;
	font-size: 18px;
	font-weight: 600;
}

.nav-list ul {
	width: 100%;
	display: block;
	padding-left: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	position: relative;
}

.nav-list li, .home-link {
	display: none;
}

.nav-list li a, .home-link a {
	width: 100%;
	height: 100%;
	display: block;
	text-align: center;
	text-decoration: none;
	font-size: 19px;
	padding: 14px 16px;
	color: var(--cream);
	font-weight: 500;
/* 	transition: color 0.3s ease;*/
}

.nav-list .responsive {
	display: block;
	height: 100%;
}

.nav-list.responsive li {
	display: block;
	float: none;
	width: 100%;
	border-top: 1px solid rgba(233, 233, 233, 0.4);
}

.nav-list .submenu {
  	display: none;
  	list-style: none;
  	background-color: rgba(173, 137, 152, 0.1);
}

.nav-list.responsive .submenu {
  	display: block;
}

.nav-list .submenu li a {
  	color: var(--mauve);
  	padding: 12px 16px;
  	font-size: 1.1rem;
	border-bottom: 1px solid rgba(151, 151, 151, 0.4);
}

@media (min-width: 600px) {
	.nav-list {
		background-color: transparent;
		overflow: visible;
		position: relative;
	}
	
	.nav-list .icon {
    	display: none; 
  	}
	
	.cart-link {
		position: absolute;
		align-self: flex-end;
		right: 0;
		float: right;
		width: auto;
 		margin-right: 15px;  
		align-items: flex-end;
		display: block;
	}
	
	.cart-link .bi { 
		font-size: 22px;
	}
	
	.cart-badge {
		width: 18px; 
		height: 18px;
		font-size: 15px;
	}
	
 	.nav-list ul {
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		display: flex;                        
		flex-direction: row;
		gap: 14px;
		background-color: var(--purple-gray);
		width: auto;
		align-items: center;
  		justify-content: center;  
/* 		transition: left 0.3s ease; */
  	} 
	
	.nav-list li {
     	display: inline-block; 
    	border: none;	
  	}
	
	li.home-link {
		display: none;
	}
	
  	.nav-list li a {
		font-size: 15px;
	  	border-radius: 5px;
		padding: 0.5rem 1rem;
  	}
	
  	/* Submenus */
	.nav-list .submenu {
		position: absolute;
		display: none;
 		min-width: 160px; 
		z-index: 10000;
		padding: 0;
		background-color: var(--purple-gray);
	}

	.nav-list li.has-submenu:hover .submenu,
	.nav-list li.has-submenu:focus-within .submenu {
		color: var(--cream);
		display: block;
	}

	.nav-list .submenu li {
		display: block;
	}
	
	.nav-list .submenu li a {
		height: 100%;
  		font-size: 1.1rem;
		border-bottom: 1px solid rgba(151, 151, 151, 0.4);
		color: var(--cream);
	}
}

@media (min-width: 1024px) {
	.nav-list li a:hover, .nav-list .submenu li a:hover {
		background-color: rgba(173, 137, 152, 0.1);
  		color: var(--mauve);
  	}
}

/********************** FOOTER ***************************/
footer {
    background-color: var(--navy);
    color: var(--cream);
    padding: 3rem 0 0;
}

.footer-content {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 2rem;
	text-align: center;
}

.footer-content p {
	color: var(--cream);
	opacity: 0.8;
	margin-bottom: 1rem;
}

.footer-links {
	display: flex;
	justify-content: center;
	gap: 2rem;
	margin-bottom: 2rem;
	flex-wrap: wrap;
	}

.footer-links a {
	color: var(--cream);
	text-decoration: none;
	opacity: 0.8;
	transition: all 0.3s ease;
}

.footer-links a:hover {
	opacity: 1;
	color: var(--mauve);
}

.footer-bottom {
	background-color: var(--purple-gray);
	text-align: center;
	padding-top: 2rem;
	border-top: 1px solid var(--purple-gray);
	opacity: 0.6;
}

.footer-bottom a {
	color: var(--cream);
	padding-left: 0.5em;
	padding-right: 0.5em;
}

@media (min-width: 1024px) {
	footer {
		background-color: var(--navy);
		color: var(--cream);
		padding: 3rem 0 0;
	}

	.footer-content {
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 2rem;
		text-align: center;
	}

	.footer-content p {
		color: var(--cream);
		opacity: 0.8;
		margin-bottom: 1rem;
	}

	.footer-links {
		display: flex;
		justify-content: center;
		gap: 2rem;
		margin-bottom: 2rem;
		flex-wrap: wrap;
	}

	.footer-links a {
		color: var(--cream);
		text-decoration: none;
		opacity: 0.8;
		transition: all 0.3s ease;
	}

	.footer-links a:hover {
		opacity: 1;
		color: var(--mauve);
	}

	.footer-bottom {
		background-color: var(--purple-gray);
		text-align: center;
		padding-top: 2rem;
		border-top: 1px solid var(--purple-gray);
		opacity: 0.6;
	}	
}

/*********************************************************************** HOME PAGE *******************************************************/
/* Hero Section */
.hero {
    height: 70vh;
    background: linear-gradient(135deg, var(--slate-blue), var(--navy));
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.hero-content {
    text-align: center;
    color: white;
    z-index: 2;
    max-width: 800px;
    padding: 0 2rem;
}

.hero h2 {
    font-size: 3.5rem;
    margin-bottom: 1rem;
    font-weight: 700;
}

.hero p {
    font-size: 1.3rem;
    margin-bottom: 2rem;
    opacity: 0.9;
}

.hero-bg {
    position: absolute;
    width: 110%;
    height: 100%;
    opacity: 0.1;
    object-fit: cover;
    background-image: url(../images/Image6.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
/* Static image — no hover movement */
.gallery-section {
    padding: 3.5rem 1.5rem 4.5rem;
    background:var(--cream);
}

.gallery-container {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centers the button horizontally */
    justify-content: center; /* Optional: vertically centers if needed */
    text-align: center; /* Optional: centers the text inside the container */
	background-color:var(--cream);
}

.section-title {
    text-align: center;
    font-size: clamp(2rem, 3vw, 2.6rem);
    margin-bottom: 2.2rem;
    color:var(--navy); 
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* Grid layout */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 22px;
}



.gallery-item img {
    width: 100%;
    height: auto;
    display: block;  
    object-position: center;
    aspect-ratio: 3 / 3;
}


.gallery-item:hover img,
.gallery-item:hover {
    transform: none;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12); 
}
.cta-button {
    background-color: var(--mauve);
    color: white;
    padding: 1rem 2rem;
    border: none;
    border-radius: 30px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    margin-top: 55px; /* Adjust the margin if necessary */
}

.cta-button:hover {
    background-color: var(--purple-gray);
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}
/* Testimonials Section */
.testimonials {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 10px auto;
    border-radius: 10px;
    text-align: center;
    padding: 20px;
    max-width: 1200px;
}

.testimonials h2 {
    font-size: 2rem;
    margin-bottom: 30px;
    color: var(--navy);
}

.testimonial-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.testimonial {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease;
}

.testimonial:hover {
    transform: translateY(-5px);
}

.testimonial blockquote {
    font-size: 1.1rem;
    font-style: italic;
    color: var(--purple-gray);
    margin-bottom: 10px;
}

.testimonial cite {
    display: block;
    font-weight: bold;
    color: var(--charcoal);
    margin-top: 5px;
}

/************************* EVENTS ***************************/
.mc-main .mc_general .event-title{
	background:aliceblue!important;
}

.mc-main .mc_general .event-title button {
    background:aliceblue!important;
	color: #ffffff !important;
}

.mc-main .mc_general .event-title button {
background:aliceblue!important;
	color: #ffffff !important;
}
	
/********************** COMMISSIONS *****************************/
.comm_h1 {
	font-size: 2.5rem;
}

.comm_h2 {
	margin-top: 1.5em;
  	font-size: 2rem;
	text-align: center;
}

div.forminator-custom-form-1492 {
	display: none; /*Removes extra form padding*/
}

form.forminator-custom-form-1492 {
 	background-color: var(--purple-gray);
	color: var(--cream); 
	display: block !important;
  	visibility: visible !important;
  	opacity: 1 !important;
	padding-top: 1em;
	padding-bottom: 1em;
	border-radius: 30px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

form.forminator-custom-form-1492 .forminator-row {
	display: block;
	border: none;
	margin-bottom: 1.2em;
 	text-align: center; 
	margin-left: auto;
	margin-right: auto;
	display: block;
}

form.forminator-custom-form-1492 .forminator-field label {
	display: block;
	text-align: center;
	font-size: 1.3rem;
	font-weight: 600;
}

form.forminator-custom-form-1492 .forminator-field input {
	padding: 0.3em 0.5em 0.3em 0.5em;
	font-size: 1.2rem;
	border-radius: 15px;
	border: 0;
}

.forminator-custom-form-1492 .forminator-field-radio {
	text-align: center;
}

.forminator-custom-form-1492 .forminator-label {
	font-weight: 600;
}

.forminator-custom-form-1492 .forminator-radio input {
 	margin-right: 1em; /*Controls radio btn*/
	width: 20px;
	height: 20px;
	margin-bottom: 1em;
}

.forminator-custom-form-1492 .forminator-radio-label {
	text-align: center;
	font-weight: 400;
	font-size: 1.2rem;
}

.forminator-custom-form-1492 span.forminator-description {
	font-size: 1.2rem;
}

.forminator-custom-form-1492 .forminator-textarea {
	border-radius: 15px;
}

.forminator-custom-form-1492 .forminator-multi-upload-message {
	display: none;
}

.forminator-custom-form-1492 button.forminator-button-submit {
	background-color: var(--cream);
    color: black;
    border-radius: 30px;
    padding: 0.8rem 2.4rem;
    font-size: 1.05rem;
    font-weight: 600;
    border: none;
    text-transform: none;
    cursor: not-allowed;
    transition: all 0.3s ease;
    display: inline-block;
	opacity: 0.5;
	pointer-events: none;
}

.forminator-custom-form-1492 button.forminator-button-submit:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
}

.forminator-custom-form-1492 .forminator-row-last .forminator-field {
	text-align: center;
}

.forminator-custom-form-1492 .forminator-checkbox input {
	width: 20px;
	height: 20px;
}

.forminator-custom-form-1492 .forminator-checkbox__wrapper label {
/* 	display: inline; */
	
}

.forminator-custom-form-1492 .forminator-response-message {
	text-align: center;
	margin-left: 1em;
	margin-right: 1em;
	margin-bottom: 1em;
}

.forminator-custom-form-1492 .forminator-checkbox__label p {
/* 	display: block; */
	margin-left: 0.7em;
	margin-right: 0.7em;
}

.forminator-custom-form-1492 .forminator-button-submit:not([disabled]) {
    cursor: pointer;
	pointer-events: auto; 
	opacity: 1;
}

.forminator-custom-form-1492 .forminator-button-submit[disabled] {
    cursor: not-allowed;
	pointer-events: none; 
	opacity: 0.5;
}

.forminator-custom-form-1492 a {
    color: var(--cream); 
}

@media (min-width: 600px) {
	.forminator-custom-form-1492 .forminator-response-message {
		text-align: left;
	}

	form.forminator-custom-form-1492 {
		padding: 2em;
		text-align: left;
	}
	
	.forminator-custom-form-1492 .forminator-input, .forminator-textarea {
		width: 100% !important;
		text-align: left;
	}
	
	form.forminator-custom-form-1492 .forminator-row {
		text-align: left;
	}
	
	form.forminator-custom-form-1492 .forminator-field label {
	text-align: left;
	}
	
	.forminator-custom-form-1492 .forminator-field-radio {
	text-align: left;
	}	
}

/************************************************** ABOUT ********************************************************/
.about main {
	padding-left: 10px;
	padding-right: 10px;
}

.aboutheading {
	font-size: 2.5rem;
}

.about-story h2 {
  font-size: 2rem;
}

.about-story {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1em, auto, auto, 2em;
	grid:
		'heading'
		'image'
		'content'
		'photos'
}

.story-heading { 
	grid-area: heading;
	text-align: center;
	padding-top: 1em;
	padding-bottom: 0.5em;
}

.story-image { 
	grid-area: image;
	width: auto;
}

.story-image img {
	border-top-left-radius: 250px;
	border-top-right-radius: 250px;
	/*Setting one property as auto ensures the image isn't distorted*/
	width: 14em;
	height: auto;
	/*Aligns image to center*/
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.story-content { 
	grid-area: content;
}

.story-content p {
	text-align: center;
	font-size: 17px;
	padding-top: 1em;
	padding-bottom: 0.5em;
}

.story-photos { 
	grid-area: photos; 
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	text-align: center;
}

.about-photos h3, .about-faq h2, .about-faq h3 {
	text-align: center;
}

.faq-sections {
	padding-top: 0.5em;
	padding-bottom: 1em;
}

.faq-sections span {
	/*Block ensures padding appears*/
	display: block;
	padding-top: 0.5em;
	padding-bottom: 0.7em;
	text-align: center;
	}

.photo-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 20px;
	margin-bottom: 2.5em;
}

.photo-item img {
	width: 14em;
	height: auto;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
}

@media (min-width: 600px) {
	.story-image img {
		/*Setting one property as auto ensures the image isn't distorted*/
		width: 18em;
		height: auto;
	}
	
	.story-content p {
		margin-left: 1em;
		margin-right: 1em;
	}
}

@media (min-width: 1024px) {
	.about-story {
		display: grid;
		grid-template-columns: 3em auto;
		grid-template-rows: 1em, auto, auto, 2em;
		grid:
			'heading heading'
			'image content'
			'image content'
			'photos photos'
	}

	.story-image { 
		grid-area: image;
		width: 28em;
	}

	.story-image img {
		/*Setting one property as auto ensures the image isn't distorted*/
		width: 23em;
		height: auto;
	}

	.story-content { 
		grid-area: content;
		padding-top: 1em;
	}

	.story-content p {
		text-align: left;
		font-size: 15px;
	}
	
	.story-photos {
		padding-top: 3em;
	}

	.photo-item img {
	  width: auto;
	  height: 13em;
	}

	.photo-item img:hover {
	  transform: scale(1.05);
	}
}

/****************************************************************** CONTACT *****************************************************************/
/* Unhide Forminator 756 even if inline styles set display:none */
/* Remove card styles from the outer wrapper */
.forminator-ui.forminator-custom-form-756 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
	background-color:var(--purple-gray);
	max-width: 700px !important;
    margin: 40px auto !important;
    padding: 2rem !important;
    border-radius: 15px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.15) !important;
}
/* ============ KEEP WRAPPER STYLES ============ */
/* OUTER WRAPPER – only control width + centering */
div.forminator-ui.forminator-custom-form-756 {
    max-width: 700px !important;
    margin: 40px auto !important;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}


/* ============ REMOVE BOX FROM INNER FORM ============ */
.forminator-ui.forminator-custom-form-756 form.forminator-custom-form {
    background: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}


/* === LABELS === */
.forminator-ui.forminator-custom-form-756 .forminator-label {
    font-weight: 600 !important;
    color: #fff !important; /* your navy */
    margin-bottom: 0.5rem !important;
    display: block !important;
}

/* === INPUTS & TEXTAREAS === */
.forminator-ui.forminator-custom-form-756 .forminator-input,
.forminator-ui.forminator-custom-form-756 .forminator-textarea {
    width: 100% !important;
    padding: 12px 15px !important;
    border: 1px solid #ccc !important;
    border-radius: 8px !important;
    font-size: 1rem !important;
    background-color: #fff !important;
    box-shadow: none !important;
}

/* === PLACEHOLDER TEXT === */
.forminator-ui.forminator-custom-form-756 .forminator-input::placeholder,
.forminator-ui.forminator-custom-form-756 .forminator-textarea::placeholder {
    color: #999 !important;
}

/* === SUBMIT BUTTON === */
.forminator-ui.forminator-custom-form-756 .forminator-button-submit {
    background-color: var(--cream) !important;
    color: black !important;
    border-radius: 30px !important;
    padding: 0.8rem 2.4rem !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    border: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
}

.forminator-ui.forminator-custom-form-756 .forminator-button-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 14px rgba(0,0,0,0.15) !important;
}

/* === ALIGN BUTTON CENTER === */
.forminator-ui.forminator-custom-form-756 .forminator-row-last,
.forminator-ui.forminator-custom-form-756 .forminator-row-last .forminator-field {
    text-align: center !important;
}
.forminator-label--forminator-success {
    color: #ffffff !important;
}
/* Make Forminator error messages red */
.forminator-error,
.forminator-error label,
.forminator-error ul li {
    color: #ff0000 !important;
}
@media (min-width: 1024px) {
	.contact-form {
	  max-width: 600px;
	  margin-left: auto;
	  margin-right: auto;

	  padding: 30px;
	  background: var(--cream);
	  border-radius: 12px;
	  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	  font-family: 'Alegreya', serif;
	}

	.contact-form label {
	  display: block;
	  margin-bottom: 8px;
	  font-weight: 600;
	  color: #333;
	}

	.contact-form input[type="text"],
	.contact-form input[type="email"],
	.contact-form textarea {
	  width: 100%;
	  padding: 12px 14px;
	  margin-bottom: 20px;
	  border: 1px solid #ccc;
	  border-radius: 8px;
	  font-size: 16px;
	  transition: border-color 0.3s ease;
	}

	.contact-form input:focus,
	.contact-form textarea:focus {
	  border-color: #AD8998; /* mauve accent */
	  outline: none;
	}

	.contact-form .btn-submit {
	  display: inline-block;
	  background-color: #594B63; /* purple-gray */
	  color: #fff;
	  border: none;
	  padding: 12px 30px;
	  font-size: 16px;
	  border-radius: 8px;
	  cursor: pointer;
	  transition: background-color 0.3s ease;
	}

	.contact-form .btn-submit:hover {
	  background-color: #AD8998;
	}

	/* Success & Error Messages */
	.form-success,
	.form-error {
	  max-width: 600px;
	  margin: 20px auto;
	  padding: 15px;
	  border-radius: 8px;
	  font-weight: 500;
	  text-align: center;
	}

	.form-success {
	  background-color: #e8f9f0;
	  color: #2d8a4f;
	  border: 1px solid #bde5c8;
	}

	.form-error {
	  background-color: #fdeaea;
	  color: #b62d2d;
	  border: 1px solid #f5b5b5;
	}


	.social-links {
	  margin-top: 30px;
	  text-align: center;
	}

	.social-links h3 {
	  margin-bottom: 15px;
	  font-size: 1.2rem;
	}

	.social-links a {
	  margin: 0 10px;
	  font-size: 1.5rem;
	  color: var(--navy);
	  transition: color 0.3s ease;
	}

	.social-links a:hover {
	  color: var(--mauve);
	}

	.enquiries-content {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 30px;
	  margin-top: 20px;
	}

	.enquiries-form form {
		max-width: 600px;
		margin-left: auto;
		margin-right: auto;
		padding: 30px;
		background: var(--cream);
		border-radius: 12px;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
		font-family: 'Alegreya', serif;


	}

	.enquiries-form label {
	  display: block;
	  margin-bottom: 8px;
	  font-weight: 600;
	  color: #333;
	}

	.enquiries-form input,
	.enquiries-form textarea {
	  width: 100%;
	  padding: 10px;
	  border: 1px solid #ccc;
	  border-radius: 6px;
	}

	.btn-submit {
	  margin-top: 15px;
	  padding: 12px;
	  background:var( --purple-gray);
	  color: #fff;
	  border: none;
	  cursor: pointer;
	  font-weight: bold;
	}

	.btn-submit:hover {
	  background:var(--mauve);
	}

	.enquiries-visual img {
	  width: 100%;
	  height: auto;
	  border-radius: 8px;
	  background: #ccc;
	}	
}

/*********************************************************************SHOP**********************************************************************/
h1.page-title {
	font-size: 2.6rem;
	padding-top: 1em;
	padding-bottom: 0.3em;
}

h1.page-title, form.enart-shop-filters {
	text-align: center;
	justify-content: center;
} 

ul.products {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax(375px, 1fr)) ;
	padding-left: 0;
	text-align: center;
}
	
li.product {
	width: auto;
	overflow: hidden;
	margin-top: 1em;
	margin-bottom: 1.5em;
}
	
li.product a {
	text-decoration: none;
}
	
/*Following code controls shop cards*/
img.attachment-woocommerce_thumbnail {
	width: auto;
}
	
h2.woocommerce-loop-product__title {
	font-size: 2rem;
	padding-top: 10px;
	margin-bottom: 0;
	text-align: center;
}
	
.product-tags {
	margin: 0;
	margin-top: 0;
	padding-top: 5px;
	padding-bottom: 5px;
}
	
/*Default styles for product tags*/
.product-tag {
	border-radius: 12px;
	padding: 4px 8px;
	font-size: 14px;
	text-decoration: none;
	color: white;
	margin-left: 5px;
	margin-right: 5px;
	} 
	
/*Specific styles for product tags*/
span.animals {
	background: #1434A4;
}
	
span.featured {
	background: #6f2b2f;
}
	
span.price {
	display: block;
	font-size: 1.6rem;
	color: var(--navy);
	height: auto;
}
	
ul.products a.button {
	margin-top: 5px;
	margin-bottom: 0.5em;
	background-color: var(--mauve);
	color: white;
	padding: 0.8rem 1.8rem;
	border: none;
	border-radius: 30px;
	font-size: 1.3rem;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}

a.button:hover {
	background-color: var(--purple-gray);
	transform: translateY(-3px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

/*Controls pagination*/
ul.page-numbers {
	display: flex;
	align-items: row-start;
	justify-content: center;
	margin-bottom: 1em;
	min-height: 2em;
	gap: 2em;
	list-style-type: none;
	text-decoration: none;
	background-color: var(---navy);
	color: white;
}

ul.page-numbers li {
	text-decoration: none;
	color: white;
	background-color: var(--navy);
	padding: 0.5em;
	font-size: 1.2rem;
}	

ul.page-numbers li a {
	text-decoration: none;
	background-color: var(--navy);
	opacity: 0.5; 
	padding: 0.5em;
	font-size: 1.2rem;
	color: white;
}

@media (min-width: 600px) {
	h2.woocommerce-loop-product__title {
		font-size: 2rem;
		padding-top: 10px;
		margin-bottom: 40px;
		text-align: center;
	}
	
	.product-tags {
		margin: 0;
		margin-top: 0;
		/*Ensures product cards are the same length*/
		margin-top: -32px;
		margin-bottom: 0;
		padding-top: 0;
		padding-bottom: 0;
	}

	span.price {
		padding-top: 5px;
		display: block;
		font-size: 1.6rem;
		color: var(--navy);
		height: auto;
	}
	
	ul.page-numbers li {
		padding: 0.3em;
		font-size: 1rem;
	}	

	ul.page-numbers li a {
		padding: 0.3em;
		font-size: 1rem;
	}
}

/***********************************************PRODUCT PAGE******************************************************/
div.type-product {
	margin-top: 3em;
}

/*Shows product image*/
div.woocommerce-product-gallery {
    opacity: 1 !important;
	width: auto;
}

img.wp-post-image {
	display: block;
	margin-left: auto;
	margin-right: auto;
  	max-width: 330px;
	height: auto;  
}

/* Removes product gallery */
.woocommerce-product-gallery .flex-control-thumbs,
.woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:not(:first-child){
    display: none !important;
}

h1.product_title {
	padding-top: 0.5em;
	text-align: center;
}

div.product_meta {
	padding-bottom: 2.4em;
	text-align: center;
}

div.product_meta span {
	display: block;
}

/*Hides Description/Additional info menu*/
ul.tabs {
	display: none;
}

div.woocommerce-Tabs-panel {
	text-align: center;
	margin-left: 1em;
	margin-right: 1em;
	margin-bottom: 2em;
}

table.woocommerce-product-attributes {
	width: 100%;
}

table.woocommerce-product-attributes th {
	margin-left: 1em;
	float: left;
}

table.woocommerce-product-attributes td {
	margin-right: 1em;
	float: right;
}

div .cart {
	margin-left: 2em;
	margin-right: 2em;
}

.cart .quantity {
	display: inline;
 	padding: 0;
	width: 60px;
	height: auto;
	margin: 0;
	border: 0;
}

.cart div .input-text { 
	display: inline;
	background-color: white;
	text-align: center;
	font-size: 1.4rem;
	width: 60px;
	height: auto;
} 

.cart .price {
	display: inline;
	font-size: 1.5rem;
	float: right;
	margin: 0;
}

.cart button {
	margin-top: 15px;
	margin-bottom: 0.5em;
	background-color: var(--mauve);
	color: white;
	padding: 0.8rem 1.8rem;
	border: none;
	border-radius: 30px;
	font-size: 1.3rem;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 600px) {
	img.wp-post-image {
		min-width: 500px; 
		height: auto;  
	}
	
	table.woocommerce-product-attributes th {
		margin-left: 3em;
	}

	table.woocommerce-product-attributes td {
		margin-right: 3em;
	}

	div .cart {
		margin-left: 4em;
		margin-right: 4em;
	}
}

@media (min-width: 1024px) {
	div.type-product {
		display: grid;
		grid-template-columns: repeat(autofit, max-width(600px)) ;
		grid-template-rows: 1em, auto, auto, 2em, auto auto;
		grid:
			'image heading'
			'image meta'
			'image attributes'
			'image quantity'
			'image price'
			'image button';
		margin-left: 1.5em;
		padding-bottom: 2em;
	}
	
	div.woocommerce-product-gallery {
		height: auto;
		width: auto;
		display: flex; /*Centers image*/
        justify-content: center; 
        align-items: center;   
	}
	
	img.wp-post-image {
		grid-area: image;
		min-width: 400px; 
		height: auto;  
		margin-top: auto;
		margin-bottom: auto;
 		display: block; 
	}
	
	div.summary {
		max-width: 500px;
		text-align: left;
	}
	
	div.summary p {
		font-size: 1.1rem;
	}
	
	div.product_meta {
		grid-area: heading;
 		padding-bottom: 1.5em;
	}
	
	div.woocommerce-tabs {
		margin-bottom: 3em;
	}

	div.woocommerce-Tabs-panel {
		grid-area: meta;
		margin-bottom: 1em; 
	}

	table.woocommerce-product-attributes {
		grid-area: attributes
	}

	.cart .quantity {
		grid-area: quantity
	}

	.cart .price {
		grid-area: price;
	}

	.summary .cart button {
		grid-area: button;
	}	
}

/******************CART**************************************/
/* Make the button row neat */
	.checkout-buttons {
	  display: flex;
	  align-items: center;
	  gap: 10px; /* space between buttons */
	  margin-top: 10px;
	}

	/* Icon buttons (round) */
	button.stripe-checkout,
	button.paypal-checkout {
	  background: var(--purple-gray);
	  color: white;
	  border: none;
	  width: 42px;
	  height: 42px;
	  border-radius: 10%;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  font-size: 1.2rem; /* icon size */
	  cursor: pointer;
	  transition: background 0.3s ease, color 0.3s ease;
	}

	button.stripe-checkout:hover,
	button.paypal-checkout:hover {
	  background: var(--cream);
	  color: #000;
	}







/* Center cart layout */


/* Fix broken WooCommerce cart table layout */
.page-content .woocommerce table.cart td,
.page-content .woocommerce table.cart th {
    display: table-cell !important;
    padding: 15px !important;
    vertical-align: middle !important;
	
}

.page-content .woocommerce table.cart tr {
    display: table-row !important;
}

.page-content .woocommerce table.cart {
	 width: 80%;
    margin: 40px auto !important;
    padding: 35px 45px !important;
    background: #f8f0ed !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.08) !important;
   border:none!important;
}

/*Cart Wrapper */
.woocommerce-cart .woocommerce-cart-form .shop_table {
    background: white !important;
    color: #EDE6DA !important;
    border-radius: 12px;
    padding: 40px !important;
    width: 100% !important;
}



.page-content .woocommerce table.cart td, .page-content .woocommerce table.cart th{
	text-align:center;
	
}

/* Underlined quantity input */
.product-quantity input.qty,
.woocommerce-cart input[type="number"],
.woocommerce-cart .quantity input {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #000 !important; /* underline */
    box-shadow: none !important;
    outline: none !important;
    text-align: center !important;
    width: 60px !important;
    padding: 4px 0 !important;
    height: auto !important;
}

.woocommerce-cart .quantity input.qty {
    text-align: center !important;
}

td.product-name a{
	color:black!important;
	text-decoration:none!important;
}

a.remove{
	color:black!important;
	text-decoration:none!important;
}

	 .class.button.button{
		background-color: var(--mauve);
		color: white;
		padding: 1rem 2rem;
		border: none;
		border-radius: 30px;
		font-size: 1.3rem;
		font-weight: 600;
		cursor: pointer;
		transition: all 0.3s ease;
		text-decoration: none;
		display: inline-block;
	}

	button.button:hover {
		background-color: var(--purple-gray);
		transform: translateY(-3px);
		box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
	}


/*********************Cart Totals*********************/



/* Cart Totals Box */
.woocommerce div.cart-collaterals div.cart_totals {
    width: 80% !important;
    margin: 40px auto !important;
    padding: 35px 45px !important;
    background: #f8f0ed !important;
    border-radius: 14px !important;
    border: 1px solid rgba(90,75,99,0.15) !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.08) !important;
}


/* Heading */
.woocommerce div.cart-collaterals div.cart_totals h2 {
    font-family: 'CabazonW01', serif !important;
    font-size: 2rem !important;
    text-align: center !important;
    margin-bottom: 25px !important;
}

/* Table cells */
.woocommerce div.cart-collaterals div.cart_totals table.shop_table th,
.woocommerce div.cart-collaterals div.cart_totals table.shop_table td {
    background: transparent !important;
    border: none !important;
    padding: 10px 0 !important;
}

/* Right align values */
.woocommerce div.cart-collaterals div.cart_totals table.shop_table td {
    text-align: right !important;
}

/* Bold TOTAL row */
.woocommerce div.cart-collaterals div.cart_totals .order-total th,
.woocommerce div.cart-collaterals div.cart_totals .order-total td {
    font-size: 20px !important;
    font-weight: 700 !important;

}

ul#shipping_method.woocommerce-shipping-methods{
	list-style-type:none!important;

}


/* Cart totals table width */
.cart_totals table.shop_table.shop_table_responsive {
    width: 80% !important;
    margin: 0 auto !important;
}


/* Center the button itself */
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button {
    display: inline-block !important;
    margin: 0 auto !important;
    float: none !important;
	
}

.woocommerce .cart_totals .wc-proceed-to-checkout {
    width: 100% !important;
    text-align: center !important; 
    display: block !important;
    float: none !important;
}


/* Divider */

/*checkout*/

a.checkout-button{
background-color: var(--mauve);
		color: white;
		padding: 1rem 2rem;
		border: none;
		border-radius: 30px;
		font-size: 1.3rem;
		font-weight: 600;
		cursor: pointer;
		transition: all 0.3s ease;
		text-decoration: none;
		display: inline-block;
	
}


form.checkout.woocommerce-checkout{
	margin: 0 auto;
	
}

/* Only target billing + shipping rows, NOT payment */
.woocommerce-checkout #customer_details .form-row {
  width: 100% !important;
  max-width: 100% !important;
}

.woocommerce-checkout #customer_details .form-row input.input-text,
.woocommerce-checkout #customer_details .form-row select,
.woocommerce-checkout #customer_details .form-row textarea {
  width: 100% !important;
  box-sizing: border-box !important;
}


/***************************************
 CHECKOUT STYLING
****************************************/

/* Center the whole checkout form */
form.woocommerce-checkout {
    max-width: 1100px;
    margin: 0 auto;
    background: #f8f0ed;
    padding: 30px 40px;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.08);
    border: none;
}

/* Two-column layout restored */
form.woocommerce-checkout .col2-set {
    display: flex;
    flex-wrap: wrap;
	gap: 20px!important;
}

form.woocommerce-checkout .col2-set .col-1,
form.woocommerce-checkout .col2-set .col-2 {
    flex: 1 1 430px;
}

/********************
  HEADINGS
*********************/

#customer_details h3,
#order_review_heading {
    font-family: 'CabazonW01', serif;
    font-size: 1.5rem !important;
    color: #3a1f5f;
    text-align: center;
    margin-bottom: 28px;
}

/********************
  LABELS + INPUTS
*********************/

.woocommerce form .form-row label {
    font-family: 'Alegreya', serif;
    font-size: 1rem;
    color: #3a1f5f;
    font-weight: 600;
    margin-bottom: 6px;
	padding-right:20px
}


.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.select2-container--default .select2-selection--single:focus {
    border-color: #9b5dd1 !important;
    box-shadow: 0 0 0 2px rgba(155,93,209,0.2) !important;
}

/* Select2 text color fix */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #3a1f5f !important;
}

/********************
  ORDER REVIEW BOX
*********************/

#order_review {
    background: #ffffff;
    padding: 35px 40px;
    border-radius: 16px;
    border: 1px solid rgba(90,75,99,0.15);
    box-shadow: 0 8px 25px rgba(0,0,0,0.05);
}

/********************
  TABLE STYLING
*********************/

#order_review table.shop_table {
    background: transparent !important;
    border: none !important;
}

#order_review table th,
#order_review table td {
    border: none !important;
    padding: 10px 0 !important;
}

#order_review .order-total th,
#order_review .order-total td {
    font-size: 1.3rem;
    font-weight: 700;
    color: #3a1f5f;
}





/********************
  CELESTIAL DIVIDER
*********************/

#order_review_heading::before {
    content: "‿̩͙⊱༒︎༻♱༺༒︎⊰‿̩͙";
    display: block;
    text-align: center;
    font-size: 24px;
    color: #9b5dd1;
    margin-bottom: 12px;
    letter-spacing: 3px;
}

/********************
  SPACING FIX
*********************/

.woocommerce-checkout #customer_details {
    margin-bottom: 40px;
}

/* Remove theme padding squeezing content */
body.woocommerce-checkout .site-content,
body.woocommerce-checkout article {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* blog */
/********************************** BLOG**********************/
img.blog-banner {
display: block;
  margin: auto;
	height:auto;
	width: 100%;
}

/* Center the blog content area */
.blog-wrap{
  max-width: 1200px;   
  margin: 0 auto;      /* centers it */
  padding: 0 24px;     /* side gutters */
}

/* Center the section heading */
.blog-wrap .page-title,
.blog-wrap .wp-block-heading{
  text-align: center;
  margin: 2rem 0 1.25rem;
}

.hero-text {
  text-align: center;
  position: absolute;
  top: 50%;
	left:25%;!important
  transform: translate(-50%, -50%);
 
}

h1.blog-title{
	 color: white;!important
	font-size:3em;!important
}

/* Keep featured images tidy */
.blog-wrap .wp-block-post-featured-image img{
  width:100%;
  height:auto;
  display:block;
  border-radius: 10px;          /* optional */
}

.blog-wrap .page-title, .blog-wrap .wp-block-heading{
	font-size: 2em;
}

.wp-block-image img {
    display: block;
    max-width: 100%;    /* keeps it responsive */
    width: 800px;       /* or whatever size you want */
    height: auto;
    margin: 0 auto 2rem;   /* centers it + adds space below */
}


@media screen and (max-width: 768px){
	
	img.blog-banner {
display: block;
  margin: auto;
	height:auto;
	width: 100%;
}
	
}

/* === OUTER OS "BROWSER WINDOW" FRAME === */
.pc-window {
  max-width: 1200px;
  margin: 40px auto;
  padding: 32px 24px 24px;
  background: #5D6C8C;               /* beige window body */
  border-radius: 18px;
  border: 2px solid #241b2e;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.6);
  position: relative;
}

/* top bar */
.pc-window::before {
  content: "⋆˚✿˖° blog ⋆˚✿˖°";            /* or Behind the Brush, etc. */
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 30px;
  padding: 0 80px;                   /* space for _ □ X on the right */
  background: #241b2e;
  border-radius: 16px 16px 0 0;
  border-bottom: 1px solid #b7a3ae;

  display: flex;
  align-items: center;
  justify-content: left;
  box-sizing: border-box;
  font-family: "Segoe UI", system-ui, sans-serif;
  font-size: 16px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #D9BACB;
}

/* classic _ □ X controls in the top beige bar */
.pc-window::after {
  content: "_  ❐  🗙";
  position: absolute;
  right: 22px;        /* move left/right */   
  top: 1px; /* move up/down inside the bar */
  bottom:1px;
  font-size: 16px;
  letter-spacing: 0.35em;
  color: #D9BACB;     /* dark text on beige */
}

/* === TWO-COLUMN LAYOUT INSIDE  AREA === */
.custom-page .wp-block-columns {
  max-width: 100%;
  margin: 0;
  gap: 16px;
}

.custom-page .wp-block-columns > .wp-block-column:nth-child(1) {
  flex-basis: 70%!important;   /* main content */
}

.custom-page .wp-block-columns > .wp-block-column:nth-child(2) {
  flex-basis: 30%!important;   /* sidebar */
}

@media (max-width: 960px) {
  .custom-page .wp-block-columns {
    flex-direction: column;
  }
}

/* === INDIVIDUAL PINK BOXES (posts + sidebar panels) === */
.custom-page .custom-box {
  background: #fcf7fb;
  border: 2px solid #090A0D;
  box-shadow: 0 0 0 2px #D9BACB, 3px 3px 0 #ad95a6;
  padding: 8px 10px 10px;
  font-size: 13px;
}

.custom-page .custom-box-featuredbox{
 background: #f9f7fa;
  border: 2px solid #151626;
   box-shadow: 0 0 0 2px #D9BACB, 3px 3px 0 #ad95a6;
  padding: 8px 10px 10px;
  font-size: 13px;
}

.custom-page .custom-box-latestbox{
 background: #f9f7fa;
  border: 2px solid #151626;
  box-shadow: 0 0 0 2px #D9BACB, 3px 3px 0 #ad95a6;
  padding: 8px 10px 10px;
  font-size: 13px;
	margin-top: 1.5em;
}

.custom-page .custom-box + .custom-box {
  margin-top: 8px;
}

/* striped headers on each box (use class y2k-box-title on the Heading block) */
.custom-page .custom-box-title {
  margin: -8px -10px 8px;
  padding: 4px 8px;
	background:#090A0D;
  color: #ffeefb;
  font-size: 22px;
  text-transform: lowercase;
  letter-spacing: 0.12em;
}

.custom-page .custom-box-title-featured{
  margin: -8px -10px 8px;
  padding: 4px 8px;
	background:#090A0D;
  color: #ffeefb;
  font-size: 25px;
  text-transform: lowercase;
  letter-spacing: 0.12em;
}

/* ===== INNER AREA ===== */
.custom-page {
  background: #f9f7fa;
  border-radius: 14px;
  border: 2px solid #090A0D;
  box-shadow: 0 0 0 2px #D9BACB inset;
  padding: 18px 18px 22px;
}

img.wp-image-1366{
	border-radius:10px;
}

.custom-page .custom-intro {
  max-width: 640px;
  margin: 0 auto 24px;
  padding: 18px 16px 20px;
  text-align: center;
  border-bottom: 1px dashed #d48ad0;
}

.custom-page .custom-intro p {
  max-width: 540px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 1.7;
  color: #151626;
}



/* Only target billing + shipping rows, NOT payment */
.woocommerce-checkout #customer_details .form-row {
  width: 100% !important;
  max-width: 100% !important;
}

.woocommerce-checkout #customer_details .form-row input.input-text,
.woocommerce-checkout #customer_details .form-row select,
.woocommerce-checkout #customer_details .form-row textarea {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* === FORCE WooPayments card fields to show === */
.woocommerce-checkout #payment,
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .wc-payment-form,
.woocommerce-checkout #payment .payment_method_woocommerce_payments {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* If the gateway uses iframe/hosted fields */
.woocommerce-checkout #payment iframe {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
}

/* Avoid layout rules accidentally shrinking the box */
.woocommerce-checkout #payment .form-row {
  width: auto !important;
  max-width: 100% !important;
}

ul.tabs { display: none; }



/* Keep your 100% width rules only for customer details */
.woocommerce-checkout #customer_details .form-row,
.woocommerce-checkout #customer_details .form-row input.input-text,
.woocommerce-checkout #customer_details .form-row select,
.woocommerce-checkout #customer_details .form-row textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
 
}
