@charset "UTF-8";
/*!
Theme Name: Pendleside Hospice
Theme URI: http://underscores.me/
Author: Christian Gibbs
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: pendleside24
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Pendleside Hospice is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments
# Gutenberg Blocks
	- Hero

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  min-width: 468px;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/** 
 * Color Variables
 */
body.woocommerce-shop-page .shop-hero__title,
.woocommerce .shop-hero__title,
.shop-hero__title, .shop-sidebar__title, .shop-widget__title, .woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-shop-page ul.products li.product .woocommerce-loop-product__title, .shop-no-products h2, .block-hero__quick-links a, h1, h1.v2, h1.mobile, h2, h3, h4, h5 {
  font-family: "p22-mackinac-pro", serif;
  font-weight: 700;
  font-style: normal;
}

body {
  background: #fff;
}

/* Breadcrumb - Maximum specificity to override all other styles */
nav.breadcrumb {
  font-size: 14px;
  margin-bottom: 20px;
  color: #fff !important;
}

/* Very specific selectors to override the .site-main a rule */
.site-main nav.breadcrumb a,
.entry-content nav.breadcrumb a,
main nav.breadcrumb a,
nav.breadcrumb a,
nav.breadcrumb a:visited,
nav.breadcrumb a:link,
nav.breadcrumb a:any-link {
  color: #fff !important;
  text-decoration: none;
}

.site-main nav.breadcrumb a:hover,
.entry-content nav.breadcrumb a:hover,
main nav.breadcrumb a:hover,
nav.breadcrumb a:hover {
  color: #fff !important;
  text-decoration: underline;
}

/* Ultra-specific selector to ensure all text within breadcrumb is white */
.site-main nav.breadcrumb *,
.entry-content nav.breadcrumb *,
main nav.breadcrumb *,
nav.breadcrumb * {
  color: #fff !important;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: #aaa #bbb #bbb;
}

/** 
 * Button Styles
 */
.c-btn {
  border: none;
  padding: 10px 20px;
  font-family: "Satoshi-Bold";
  font-size: 15px;
  text-align: center;
  border-radius: 25px;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
  display: inline-block;
}

/* Medium Purple */
.c-btn--primary {
  background-color: #a17de5;
  color: #ffffff;
}
.c-btn--primary:hover {
  background-color: #423063;
}

/* Medium Aquamarine */
.c-btn--success {
  background-color: #47cf99;
  color: #ffffff;
}
.c-btn--success:hover {
  background-color: #4d8f73;
}

/* Pink Lavender */
.c-btn--pink {
  background-color: #f591ed;
  color: #ffffff;
}
.c-btn--pink:hover {
  background-color: #b254ad;
}

/* Antique Fuchsia */
.c-btn--fuchsia {
  background-color: #a36694;
  color: #ffffff;
}
.c-btn--fuchsia:hover {
  background-color: #6e335e;
}

/* Steel Blue */
.c-btn--blue {
  background-color: #8fd6f5;
  color: #ffffff;
}
.c-btn--blue:hover {
  background-color: #5c8599;
}

/* Sandy Brown */
.c-btn--orange {
  background-color: #f2ab66;
  color: #ffffff;
}
.c-btn--orange:hover {
  background-color: #b67734;
}

/* Oxford Blue */
.c-btn--dark {
  background-color: #30264a;
  color: #ffffff;
}
.c-btn--dark:hover {
  background-color: #423063;
}

/* Light Taupe */
.c-btn--taupe {
  background-color: #ad9161;
  color: #ffffff;
}
.c-btn--taupe:hover {
  background-color: #967f56;
}

.c-btn--donate {
  background-color: #ffc229;
  color: white;
}
.c-btn--donate:hover {
  background-color: #ad9161;
}

/* Container for Category Filter */
.category-filter {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin: 20px 0;
}
.category-filter ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 16px;
}
.category-filter li {
  margin: 0;
}
.category-filter a {
  display: inline-block;
  padding: 10px 20px;
  border-radius: 25px;
  text-decoration: none;
  font-size: 14px;
  color: #4d4b63; /* Text color */
  background-color: #e6d9f9; /* Light purple background */
  transition: background-color 0.3s ease, color 0.3s ease;
  font-family: "p22-mackinac-pro", serif;
  font-weight: 700;
  font-style: normal;
}
.category-filter a:hover {
  background-color: #be97e0; /* Darker purple on hover */
  color: #fff; /* White text on hover */
}
.category-filter a.active {
  background-color: #423063; /* Dark purple background for active button */
  color: #fff; /* White text for active button */
}
.category-filter--events a {
  background-color: #ccfae3; /* Light purple background */
}
.category-filter--events a:hover {
  background-color: #a3e9d4; /* Darker purple on hover */
}
.category-filter--events a.active {
  background-color: #2f855a; /* Dark purple background for active button */
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

.footer-links {
  display: flex;
  gap: 16px;
  padding: 2.5% 5%;
}
@media (max-width: 756px) {
  .footer-links {
    flex-direction: column;
    text-align: center;
    gap: 64px;
  }
}

.footer-links > div {
  flex: 1;
}

.site-info {
  display: flex;
  gap: 16px;
  padding: 8px;
  background: #f7f5f5;
}
@media (max-width: 756px) {
  .site-info {
    flex-direction: column;
    text-align: center;
    padding: 32px;
    margin: 16px;
    gap: 16px;
  }
}

.footer-link {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer-link h4 {
  color: #d1bdf2;
}

.footer-link.information nav ul {
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  align-items: flex-start;
}
.footer-link.information nav ul li,
.footer-link.information nav ul a {
  margin: 0;
}

.footer-link.socials {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.footer-link.logo img {
  width: 65%;
}
@media (max-width: 756px) {
  .footer-link.logo {
    order: 4;
  }
  .footer-link.logo img {
    margin: 0 auto;
  }
}

.footer-link.cqc .cqc-widget {
  margin: 0 !important;
}

.socials-list {
  display: flex;
  gap: 16px;
}
.socials-list img {
  height: 32px;
}
.socials-list a {
  margin: 0;
}

.header-background {
  position: absolute;
  width: 100%;
  height: 325px;
  top: 0;
  background: #423063;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

a {
  color: #30264a;
  text-decoration: none;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

ul,
ol {
  margin: 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

/* Pagination Wrapper */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px; /* Space between buttons */
  margin: 30px 0 100px 0;
}

/* Pagination List */
.pagination ul {
  display: flex;
  list-style: none;
  gap: 16px;
  padding: 0;
  margin: 0;
  align-items: center;
}

/* Pagination Items */
.pagination li {
  display: inline-block;
}

/* Circular Pagination Links */
.pagination li a,
.pagination li span {
  position: relative;
  display: inline-block;
  width: 48px; /* Circle size */
  height: 48px;
  line-height: 48px;
  border-radius: 50%;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "p22-mackinac-pro", serif;
  font-weight: 700;
  font-style: normal;
}

/* Outer Circle (Active and Hover States) */
.pagination li a::before,
.pagination li span::before {
  content: "";
  position: absolute;
  top: -8px;
  left: -8px;
  border-radius: 50%;
  background-color: transparent;
  transition: all 0.3s ease;
  z-index: -1; /* Send it behind */
}

/* Active Page Style */
.pagination li span.current {
  background-color: #e6d9fa; /* Dark purple inner circle */
}

.pagination li span.current::before {
  background-color: #e6d9fa; /* Dark purple outer circle */
}

/* Hover Effect */
.pagination li a:hover::before {
  background-color: #e6d9fa; /* Dark purple outer circle */
}

.pagination li a:hover {
  background-color: #e6d9fa; /* Dark purple background */
}

/* Arrows Styling */
.pagination li a.prev,
.pagination li a.next {
  width: 32px; /* Smaller size for arrows */
  height: 32px;
  line-height: 32px;
  font-size: 16px;
  background-color: #f4f2f2; /* Light purple */
  border-radius: 50%;
}

.pagination li a.prev:hover,
.pagination li a.next:hover {
  background-color: #f4f2f2; /* Dark purple hover */
}

table {
  width: 100%;
}
table tr {
  display: flex;
  gap: 16px;
}
table tr td {
  border-bottom: 1px dashed #ccc;
  padding: 16px;
  flex: 1;
}
table tr:first-child td {
  border-top: 1px dashed #ccc;
}

.wp-block-table td,
.wp-block-table th {
  border: none;
  border-bottom: 1px dashed #ccc;
}

h1, h1.v2, h1.mobile, h2, h3, h4, h5 {
  font-family: "p22-mackinac-pro", serif;
  font-weight: 700;
  font-style: normal;
}

/**
* @license
*
* Font Family: Satoshi
* Designed by: Deni Anggara
* URL: https://www.fontshare.com/fonts/satoshi
* © 2024 Indian Type Foundry
*
* Satoshi Light 
* Satoshi LightItalic 
* Satoshi Regular 
* Satoshi Italic 
* Satoshi Medium 
* Satoshi MediumItalic 
* Satoshi Bold 
* Satoshi BoldItalic 
* Satoshi Black 
* Satoshi BlackItalic 
* Satoshi Variable (Variable font)
* Satoshi VariableItalic (Variable font)

*
*/
@font-face {
  font-family: "Satoshi-Light";
  src: url("assets/fonts/satoshi/Satoshi-Light.eot") format("woff2"), url("assets/fonts/satoshi/Satoshi-Light.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Light.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Satoshi-LightItalic";
  src: url("assets/fonts/satoshi/Satoshi-LightItalic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-LightItalic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: "Satoshi-Regular";
  src: url("assets/fonts/satoshi/Satoshi-Regular.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Regular.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Satoshi-Italic";
  src: url("assets/fonts/satoshi/Satoshi-Italic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Italic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Italic.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: "Satoshi-Medium";
  src: url("assets/fonts/satoshi/Satoshi-Medium.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Medium.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Medium.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Satoshi-MediumItalic";
  src: url("assets/fonts/satoshi/Satoshi-MediumItalic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-MediumItalic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: "Satoshi-Bold";
  src: url("assets/fonts/satoshi/Satoshi-Bold.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Bold.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Satoshi-BoldItalic";
  src: url("assets/fonts/satoshi/Satoshi-BoldItalic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-BoldItalic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: "Satoshi-Black";
  src: url("assets/fonts/satoshi/Satoshi-Black.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Black.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Black.ttf") format("truetype");
  font-weight: 900;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Satoshi-BlackItalic";
  src: url("assets/fonts/satoshi/Satoshi-BlackItalic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-BlackItalic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-BlackItalic.ttf") format("truetype");
  font-weight: 900;
  font-display: swap;
  font-style: italic;
}
/**
* This is a variable font
* You can control variable axes as shown below:
* font-variation-settings: wght 900.0;
*
* available axes:
'wght' (range from 300.0 to 900.0
*/
@font-face {
  font-family: "Satoshi-Variable";
  src: url("assets/fonts/satoshi/Satoshi-Variable.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-Variable.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-Variable.ttf") format("truetype");
  font-weight: 300 900;
  font-display: swap;
  font-style: normal;
}
/**
* This is a variable font
* You can control variable axes as shown below:
* font-variation-settings: wght 900.0;
*
* available axes:
'wght' (range from 300.0 to 900.0
*/
@font-face {
  font-family: "Satoshi-VariableItalic";
  src: url("assets/fonts/satoshi/Satoshi-VariableItalic.woff2") format("woff2"), url("assets/fonts/satoshi/Satoshi-VariableItalic.woff") format("woff"), url("assets/fonts/satoshi/Satoshi-VariableItalic.ttf") format("truetype");
  font-weight: 300 900;
  font-display: swap;
  font-style: italic;
}
h3.satoshi, h5.satoshi, p, .site-main li,
.entry-content li,
.widget-area li,
.site-footer li {
  font-family: "Satoshi-Regular", sans-serif;
  font-weight: 400;
  font-style: normal;
}

h5.satoshi--bold {
  font-family: "Satoshi-Bold", sans-serif;
  font-weight: 700;
  font-style: normal;
}

body,
button,
input,
select,
optgroup,
textarea {
  color: #30264a;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

p {
  color: #30264a;
  font-size: 18.9975px;
  line-height: 24.9975px;
  margin-top: 22.5px;
  margin-bottom: 11.25px;
}

.site-main li,
.entry-content li,
.widget-area li,
.site-footer li {
  color: #30264a;
  font-size: 18.9975px;
  line-height: 24.9975px;
  margin-top: 22.5px;
  margin-bottom: 11.25px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  margin: 0;
  color: #30264a;
}

h1 {
  font-size: 71.25px;
  line-height: 82.5px;
  margin-top: 30px;
  margin-bottom: 15px;
}

h1.v2 {
  font-size: 45px;
  line-height: 52.5px;
  margin-top: 22.5px;
  margin-bottom: 11.25px;
}

h1.mobile {
  font-size: 41.25px;
  line-height: 48.75px;
  margin-top: 18.75px;
  margin-bottom: 11.25px;
}

h2 {
  font-size: 30px;
  line-height: 37.5px;
  margin-top: 22.5px;
  margin-bottom: 11.25px;
}

h3 {
  font-size: 26.25px;
  line-height: 33.75px;
  margin-top: 18.75px;
  margin-bottom: 9px;
}

h3.satoshi {
  font-size: 26.25px;
  line-height: 33.75px;
  margin-top: 18.75px;
  margin-bottom: 9px;
}

h4 {
  font-size: 22.5px;
  line-height: 30px;
  margin-top: 15px;
  margin-bottom: 7.5px;
}

h5 {
  font-size: 18.75px;
  line-height: 26.25px;
  margin-top: 11.25px;
  margin-bottom: 6px;
}

h5.satoshi {
  font-size: 18.75px;
  line-height: 26.25px;
  margin-top: 11.25px;
  margin-bottom: 6px;
}

h5.satoshi--bold {
  font-size: 18.75px;
  line-height: 26.25px;
  margin-top: 11.25px;
  margin-bottom: 6px;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/* General container styling */
.block-news {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Three columns */
  gap: 20px; /* Add space between cards */
  padding: 20px;
  margin: 0 auto;
  max-width: 1200px; /* Center the container */
}

/* Single News Card */
.block-news__item {
  flex: 1 1 calc(33.333% - 32px); /* 3 cards per row, adjust gap */
  box-shadow: 0px 0px 15px -3px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  overflow: hidden;
  background-color: #fff; /* Ensure a white background */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.block-news__item:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
}

/* Thumbnail Styling */
.block-news__thumbnail {
  height: 180px; /* Set height for consistency */
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

/* News Details Section */
.block-news__details {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px; /* Space between text elements */
}

/* News Date */
.block-news__date {
  font-size: 12px;
  color: #4d8f73; /* Match accent color */
  margin: 0;
}

/* News Title */
.block-news__title {
  font-size: 16px;
  font-weight: bold;
  margin: 8px 0 0;
  line-height: 1.4;
}

.block-news__title a {
  text-decoration: none;
  color: inherit;
  transition: color 0.3s ease;
}

.block-news__title a:hover {
  color: #47cf99; /* Add hover effect */
}

/* News Excerpt */
.block-news__excerpt {
  font-size: 14px;
  color: #333;
  line-height: 1.6;
  margin: 0;
}

/* Action Link */
.block-news__action {
  font-size: 14px;
  font-weight: bold;
  color: #47cf99;
  text-decoration: none;
  margin-top: auto; /* Push link to bottom of card */
  align-self: start;
  transition: color 0.3s ease;
}

.block-news__action:hover {
  color: #4d8f73; /* Hover effect */
}

/* Responsive Design */
@media (max-width: 992px) {
  .block-news__item {
    flex: 1 1 calc(50% - 32px); /* Two cards per row on medium screens */
  }
}
@media (max-width: 576px) {
  .block-news__item {
    flex: 1 1 100%; /* Single card per row on small screens */
  }
}
/* Fix container overflow */
.news__swiper {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

/* Optional: Ensure proper alignment */
.featured-news-post {
  display: flex;
  align-items: flex-start; /* Ensure content aligns to the left */
  justify-content: space-between;
  padding: 5% 12.5%;
}

.featured-news-post__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.featured-news-post__title {
  font-size: 24px;
  font-weight: bold;
  color: #2e1a56;
  margin-bottom: 10px;
}

.featured-news-post__meta {
  display: flex;
  gap: 5px;
  margin-bottom: 15px;
}

.featured-news-post__date,
.featured-news-post__location {
  display: flex;
  align-items: center;
  font-size: 14px;
  color: #4d8f73;
}

.featured-news-post__date .icon-calendar,
.featured-news-post__location .icon-location {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  background-size: contain;
}

.featured-news-post__excerpt {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 15px;
}

.featured-news-post__link {
  font-size: 14px;
  font-weight: bold;
  color: #47cf99;
  text-decoration: none;
  margin-top: auto;
  transition: color 0.3s ease;
}

.featured-news-post__link:hover {
  color: #4d8f73;
}

.featured-news-post__image-container {
  flex: 1;
  border-radius: 10px;
  overflow: hidden;
}

.featured-news-post__image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  aspect-ratio: 16/9;
}

.single-news {
  padding: 63.75px 12.5%;
}

.news-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Post Title and Meta */
.news-header {
  margin-bottom: 30px;
}

.news-thumbnail {
  width: 100%;
  height: 400px;
  background-size: cover;
  background-position: center;
  margin-bottom: 20px;
  border-radius: 20px;
}

.news-date {
  display: block;
  font-size: 14px;
  color: #999;
  margin-bottom: 5px;
}

.news-title {
  font-size: 36px;
  color: #4d336b;
  font-weight: bold;
  margin-top: 0;
}

/* Post Content */
.news-content {
  position: relative;
  z-index: 2;
}

.news-body {
  font-size: 18px;
  line-height: 1.8;
  color: #333;
  margin-bottom: 40px;
}

.news-body a {
  color: #6c63ff;
  text-decoration: underline;
}

.news-body a:hover {
  color: #4d336b;
}

/* Bullet Points */
.news-body ul {
  margin-left: 20px;
  list-style: disc;
}

.news-body ul li {
  margin-bottom: 10px;
}

/* Social Share Section */
.news-share {
  margin: 40px 0;
  font-size: 14px;
  text-align: center;
}

.news-share span {
  font-weight: bold;
  margin-right: 10px;
}

.news-share a {
  color: #4d336b;
  text-decoration: none;
  margin-right: 10px;
  transition: color 0.3s ease;
}

.news-share a:hover {
  color: #6c63ff;
}

/* Pagination */
.news-pagination {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.news-pagination__prev a,
.news-pagination__next a {
  color: #4d336b;
  font-size: 14px;
  text-decoration: none;
}

.news-pagination__prev a:hover,
.news-pagination__next a:hover {
  color: #6c63ff;
}

/* Responsive Design */
@media (max-width: 768px) {
  .news-hero {
    height: 300px;
  }
  .news-content {
    padding: 20px;
    margin-top: -60px;
  }
  .news-title {
    font-size: 28px;
  }
}
/**
 * Standard Page Layout Styling
 * 
 * Styles for specific standard text pages like Privacy Policy, Terms of Use, etc.
 * 
 * TO ADD A PAGE: 
 * 1. Visit the page on your site while logged in as admin
 * 2. View the page source (right-click → View Page Source)
 * 3. Look at the <body> tag and find the page-id-XXX class
 * 4. Add .page-id-XXX to the list below
 * 
 * Example: if you see page-id-2152, add .page-id-2152 below
 */
.page-privacy-policy .entry-content,
.page-terms-of-use .entry-content,
.page-making-a-complaint .entry-content,
.page-palliative-care-resources .entry-content,
.page-assisted-dying-position-statement .entry-content,
.page-pendleside-lottery-terms-conditions .entry-content,
.page-id-2152 .entry-content,
.page-id-2155 .entry-content,
.page-id-2938 .entry-content,
.page-id-2930 .entry-content,
.page-id-2946 .entry-content,
.page-id-2986 .entry-content {
  max-width: 1200px;
  margin: 2rem auto;
  padding: 0 2rem;
}
@media (max-width: 768px) {
  .page-privacy-policy .entry-content,
  .page-terms-of-use .entry-content,
  .page-making-a-complaint .entry-content,
  .page-palliative-care-resources .entry-content,
  .page-assisted-dying-position-statement .entry-content,
  .page-pendleside-lottery-terms-conditions .entry-content,
  .page-id-2152 .entry-content,
  .page-id-2155 .entry-content,
  .page-id-2938 .entry-content,
  .page-id-2930 .entry-content,
  .page-id-2946 .entry-content,
  .page-id-2986 .entry-content {
    padding: 0 1.5rem;
    margin: 1.5rem auto;
  }
}
@media (max-width: 480px) {
  .page-privacy-policy .entry-content,
  .page-terms-of-use .entry-content,
  .page-making-a-complaint .entry-content,
  .page-palliative-care-resources .entry-content,
  .page-assisted-dying-position-statement .entry-content,
  .page-pendleside-lottery-terms-conditions .entry-content,
  .page-id-2152 .entry-content,
  .page-id-2155 .entry-content,
  .page-id-2938 .entry-content,
  .page-id-2930 .entry-content,
  .page-id-2946 .entry-content,
  .page-id-2986 .entry-content {
    padding: 0 1rem;
    margin: 1rem auto;
  }
}
.page-privacy-policy .entry-content a,
.page-terms-of-use .entry-content a,
.page-making-a-complaint .entry-content a,
.page-palliative-care-resources .entry-content a,
.page-assisted-dying-position-statement .entry-content a,
.page-pendleside-lottery-terms-conditions .entry-content a,
.page-id-2152 .entry-content a,
.page-id-2155 .entry-content a,
.page-id-2938 .entry-content a,
.page-id-2930 .entry-content a,
.page-id-2946 .entry-content a,
.page-id-2986 .entry-content a {
  color: #a17de5;
  text-decoration: underline;
  transition: opacity 0.2s ease;
}
.page-privacy-policy .entry-content a:hover, .page-privacy-policy .entry-content a:focus,
.page-terms-of-use .entry-content a:hover,
.page-terms-of-use .entry-content a:focus,
.page-making-a-complaint .entry-content a:hover,
.page-making-a-complaint .entry-content a:focus,
.page-palliative-care-resources .entry-content a:hover,
.page-palliative-care-resources .entry-content a:focus,
.page-assisted-dying-position-statement .entry-content a:hover,
.page-assisted-dying-position-statement .entry-content a:focus,
.page-pendleside-lottery-terms-conditions .entry-content a:hover,
.page-pendleside-lottery-terms-conditions .entry-content a:focus,
.page-id-2152 .entry-content a:hover,
.page-id-2152 .entry-content a:focus,
.page-id-2155 .entry-content a:hover,
.page-id-2155 .entry-content a:focus,
.page-id-2938 .entry-content a:hover,
.page-id-2938 .entry-content a:focus,
.page-id-2930 .entry-content a:hover,
.page-id-2930 .entry-content a:focus,
.page-id-2946 .entry-content a:hover,
.page-id-2946 .entry-content a:focus,
.page-id-2986 .entry-content a:hover,
.page-id-2986 .entry-content a:focus {
  opacity: 0.8;
}
.page-privacy-policy .entry-content a:visited,
.page-terms-of-use .entry-content a:visited,
.page-making-a-complaint .entry-content a:visited,
.page-palliative-care-resources .entry-content a:visited,
.page-assisted-dying-position-statement .entry-content a:visited,
.page-pendleside-lottery-terms-conditions .entry-content a:visited,
.page-id-2152 .entry-content a:visited,
.page-id-2155 .entry-content a:visited,
.page-id-2938 .entry-content a:visited,
.page-id-2930 .entry-content a:visited,
.page-id-2946 .entry-content a:visited,
.page-id-2986 .entry-content a:visited {
  color: #423063;
}
.page-privacy-policy .entry-content p,
.page-terms-of-use .entry-content p,
.page-making-a-complaint .entry-content p,
.page-palliative-care-resources .entry-content p,
.page-assisted-dying-position-statement .entry-content p,
.page-pendleside-lottery-terms-conditions .entry-content p,
.page-id-2152 .entry-content p,
.page-id-2155 .entry-content p,
.page-id-2938 .entry-content p,
.page-id-2930 .entry-content p,
.page-id-2946 .entry-content p,
.page-id-2986 .entry-content p {
  margin-bottom: 1.5em;
}
.page-privacy-policy .entry-content p:last-child,
.page-terms-of-use .entry-content p:last-child,
.page-making-a-complaint .entry-content p:last-child,
.page-palliative-care-resources .entry-content p:last-child,
.page-assisted-dying-position-statement .entry-content p:last-child,
.page-pendleside-lottery-terms-conditions .entry-content p:last-child,
.page-id-2152 .entry-content p:last-child,
.page-id-2155 .entry-content p:last-child,
.page-id-2938 .entry-content p:last-child,
.page-id-2930 .entry-content p:last-child,
.page-id-2946 .entry-content p:last-child,
.page-id-2986 .entry-content p:last-child {
  margin-bottom: 0;
}
.page-privacy-policy .entry-content h1,
.page-privacy-policy .entry-content h2,
.page-privacy-policy .entry-content h3,
.page-privacy-policy .entry-content h4,
.page-privacy-policy .entry-content h5,
.page-privacy-policy .entry-content h6,
.page-terms-of-use .entry-content h1,
.page-terms-of-use .entry-content h2,
.page-terms-of-use .entry-content h3,
.page-terms-of-use .entry-content h4,
.page-terms-of-use .entry-content h5,
.page-terms-of-use .entry-content h6,
.page-making-a-complaint .entry-content h1,
.page-making-a-complaint .entry-content h2,
.page-making-a-complaint .entry-content h3,
.page-making-a-complaint .entry-content h4,
.page-making-a-complaint .entry-content h5,
.page-making-a-complaint .entry-content h6,
.page-palliative-care-resources .entry-content h1,
.page-palliative-care-resources .entry-content h2,
.page-palliative-care-resources .entry-content h3,
.page-palliative-care-resources .entry-content h4,
.page-palliative-care-resources .entry-content h5,
.page-palliative-care-resources .entry-content h6,
.page-assisted-dying-position-statement .entry-content h1,
.page-assisted-dying-position-statement .entry-content h2,
.page-assisted-dying-position-statement .entry-content h3,
.page-assisted-dying-position-statement .entry-content h4,
.page-assisted-dying-position-statement .entry-content h5,
.page-assisted-dying-position-statement .entry-content h6,
.page-pendleside-lottery-terms-conditions .entry-content h1,
.page-pendleside-lottery-terms-conditions .entry-content h2,
.page-pendleside-lottery-terms-conditions .entry-content h3,
.page-pendleside-lottery-terms-conditions .entry-content h4,
.page-pendleside-lottery-terms-conditions .entry-content h5,
.page-pendleside-lottery-terms-conditions .entry-content h6,
.page-id-2152 .entry-content h1,
.page-id-2152 .entry-content h2,
.page-id-2152 .entry-content h3,
.page-id-2152 .entry-content h4,
.page-id-2152 .entry-content h5,
.page-id-2152 .entry-content h6,
.page-id-2155 .entry-content h1,
.page-id-2155 .entry-content h2,
.page-id-2155 .entry-content h3,
.page-id-2155 .entry-content h4,
.page-id-2155 .entry-content h5,
.page-id-2155 .entry-content h6,
.page-id-2938 .entry-content h1,
.page-id-2938 .entry-content h2,
.page-id-2938 .entry-content h3,
.page-id-2938 .entry-content h4,
.page-id-2938 .entry-content h5,
.page-id-2938 .entry-content h6,
.page-id-2930 .entry-content h1,
.page-id-2930 .entry-content h2,
.page-id-2930 .entry-content h3,
.page-id-2930 .entry-content h4,
.page-id-2930 .entry-content h5,
.page-id-2930 .entry-content h6,
.page-id-2946 .entry-content h1,
.page-id-2946 .entry-content h2,
.page-id-2946 .entry-content h3,
.page-id-2946 .entry-content h4,
.page-id-2946 .entry-content h5,
.page-id-2946 .entry-content h6,
.page-id-2986 .entry-content h1,
.page-id-2986 .entry-content h2,
.page-id-2986 .entry-content h3,
.page-id-2986 .entry-content h4,
.page-id-2986 .entry-content h5,
.page-id-2986 .entry-content h6 {
  margin-top: 2em;
  margin-bottom: 1em;
}
.page-privacy-policy .entry-content h1:first-child,
.page-privacy-policy .entry-content h2:first-child,
.page-privacy-policy .entry-content h3:first-child,
.page-privacy-policy .entry-content h4:first-child,
.page-privacy-policy .entry-content h5:first-child,
.page-privacy-policy .entry-content h6:first-child,
.page-terms-of-use .entry-content h1:first-child,
.page-terms-of-use .entry-content h2:first-child,
.page-terms-of-use .entry-content h3:first-child,
.page-terms-of-use .entry-content h4:first-child,
.page-terms-of-use .entry-content h5:first-child,
.page-terms-of-use .entry-content h6:first-child,
.page-making-a-complaint .entry-content h1:first-child,
.page-making-a-complaint .entry-content h2:first-child,
.page-making-a-complaint .entry-content h3:first-child,
.page-making-a-complaint .entry-content h4:first-child,
.page-making-a-complaint .entry-content h5:first-child,
.page-making-a-complaint .entry-content h6:first-child,
.page-palliative-care-resources .entry-content h1:first-child,
.page-palliative-care-resources .entry-content h2:first-child,
.page-palliative-care-resources .entry-content h3:first-child,
.page-palliative-care-resources .entry-content h4:first-child,
.page-palliative-care-resources .entry-content h5:first-child,
.page-palliative-care-resources .entry-content h6:first-child,
.page-assisted-dying-position-statement .entry-content h1:first-child,
.page-assisted-dying-position-statement .entry-content h2:first-child,
.page-assisted-dying-position-statement .entry-content h3:first-child,
.page-assisted-dying-position-statement .entry-content h4:first-child,
.page-assisted-dying-position-statement .entry-content h5:first-child,
.page-assisted-dying-position-statement .entry-content h6:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h1:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h2:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h3:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h4:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h5:first-child,
.page-pendleside-lottery-terms-conditions .entry-content h6:first-child,
.page-id-2152 .entry-content h1:first-child,
.page-id-2152 .entry-content h2:first-child,
.page-id-2152 .entry-content h3:first-child,
.page-id-2152 .entry-content h4:first-child,
.page-id-2152 .entry-content h5:first-child,
.page-id-2152 .entry-content h6:first-child,
.page-id-2155 .entry-content h1:first-child,
.page-id-2155 .entry-content h2:first-child,
.page-id-2155 .entry-content h3:first-child,
.page-id-2155 .entry-content h4:first-child,
.page-id-2155 .entry-content h5:first-child,
.page-id-2155 .entry-content h6:first-child,
.page-id-2938 .entry-content h1:first-child,
.page-id-2938 .entry-content h2:first-child,
.page-id-2938 .entry-content h3:first-child,
.page-id-2938 .entry-content h4:first-child,
.page-id-2938 .entry-content h5:first-child,
.page-id-2938 .entry-content h6:first-child,
.page-id-2930 .entry-content h1:first-child,
.page-id-2930 .entry-content h2:first-child,
.page-id-2930 .entry-content h3:first-child,
.page-id-2930 .entry-content h4:first-child,
.page-id-2930 .entry-content h5:first-child,
.page-id-2930 .entry-content h6:first-child,
.page-id-2946 .entry-content h1:first-child,
.page-id-2946 .entry-content h2:first-child,
.page-id-2946 .entry-content h3:first-child,
.page-id-2946 .entry-content h4:first-child,
.page-id-2946 .entry-content h5:first-child,
.page-id-2946 .entry-content h6:first-child,
.page-id-2986 .entry-content h1:first-child,
.page-id-2986 .entry-content h2:first-child,
.page-id-2986 .entry-content h3:first-child,
.page-id-2986 .entry-content h4:first-child,
.page-id-2986 .entry-content h5:first-child,
.page-id-2986 .entry-content h6:first-child {
  margin-top: 0;
}
.page-privacy-policy .entry-content ul,
.page-privacy-policy .entry-content ol,
.page-terms-of-use .entry-content ul,
.page-terms-of-use .entry-content ol,
.page-making-a-complaint .entry-content ul,
.page-making-a-complaint .entry-content ol,
.page-palliative-care-resources .entry-content ul,
.page-palliative-care-resources .entry-content ol,
.page-assisted-dying-position-statement .entry-content ul,
.page-assisted-dying-position-statement .entry-content ol,
.page-pendleside-lottery-terms-conditions .entry-content ul,
.page-pendleside-lottery-terms-conditions .entry-content ol,
.page-id-2152 .entry-content ul,
.page-id-2152 .entry-content ol,
.page-id-2155 .entry-content ul,
.page-id-2155 .entry-content ol,
.page-id-2938 .entry-content ul,
.page-id-2938 .entry-content ol,
.page-id-2930 .entry-content ul,
.page-id-2930 .entry-content ol,
.page-id-2946 .entry-content ul,
.page-id-2946 .entry-content ol,
.page-id-2986 .entry-content ul,
.page-id-2986 .entry-content ol {
  margin-bottom: 1.5em;
  padding-left: 2em;
}
.page-privacy-policy .entry-content ul li,
.page-privacy-policy .entry-content ol li,
.page-terms-of-use .entry-content ul li,
.page-terms-of-use .entry-content ol li,
.page-making-a-complaint .entry-content ul li,
.page-making-a-complaint .entry-content ol li,
.page-palliative-care-resources .entry-content ul li,
.page-palliative-care-resources .entry-content ol li,
.page-assisted-dying-position-statement .entry-content ul li,
.page-assisted-dying-position-statement .entry-content ol li,
.page-pendleside-lottery-terms-conditions .entry-content ul li,
.page-pendleside-lottery-terms-conditions .entry-content ol li,
.page-id-2152 .entry-content ul li,
.page-id-2152 .entry-content ol li,
.page-id-2155 .entry-content ul li,
.page-id-2155 .entry-content ol li,
.page-id-2938 .entry-content ul li,
.page-id-2938 .entry-content ol li,
.page-id-2930 .entry-content ul li,
.page-id-2930 .entry-content ol li,
.page-id-2946 .entry-content ul li,
.page-id-2946 .entry-content ol li,
.page-id-2986 .entry-content ul li,
.page-id-2986 .entry-content ol li {
  margin-bottom: 0.5em;
}
.page-privacy-policy .entry-content ul li:last-child,
.page-privacy-policy .entry-content ol li:last-child,
.page-terms-of-use .entry-content ul li:last-child,
.page-terms-of-use .entry-content ol li:last-child,
.page-making-a-complaint .entry-content ul li:last-child,
.page-making-a-complaint .entry-content ol li:last-child,
.page-palliative-care-resources .entry-content ul li:last-child,
.page-palliative-care-resources .entry-content ol li:last-child,
.page-assisted-dying-position-statement .entry-content ul li:last-child,
.page-assisted-dying-position-statement .entry-content ol li:last-child,
.page-pendleside-lottery-terms-conditions .entry-content ul li:last-child,
.page-pendleside-lottery-terms-conditions .entry-content ol li:last-child,
.page-id-2152 .entry-content ul li:last-child,
.page-id-2152 .entry-content ol li:last-child,
.page-id-2155 .entry-content ul li:last-child,
.page-id-2155 .entry-content ol li:last-child,
.page-id-2938 .entry-content ul li:last-child,
.page-id-2938 .entry-content ol li:last-child,
.page-id-2930 .entry-content ul li:last-child,
.page-id-2930 .entry-content ol li:last-child,
.page-id-2946 .entry-content ul li:last-child,
.page-id-2946 .entry-content ol li:last-child,
.page-id-2986 .entry-content ul li:last-child,
.page-id-2986 .entry-content ol li:last-child {
  margin-bottom: 0;
}
.page-privacy-policy .entry-footer,
.page-terms-of-use .entry-footer,
.page-making-a-complaint .entry-footer,
.page-palliative-care-resources .entry-footer,
.page-assisted-dying-position-statement .entry-footer,
.page-pendleside-lottery-terms-conditions .entry-footer,
.page-id-2152 .entry-footer,
.page-id-2155 .entry-footer,
.page-id-2938 .entry-footer,
.page-id-2930 .entry-footer,
.page-id-2946 .entry-footer,
.page-id-2986 .entry-footer {
  display: none;
}

/**
 * Contact Page Template Styles
 * 
 * Styles for the Contact page template (template-contact.php)
 */
.contact-page .contact-hero {
  background-color: #423063;
  color: #ffffff;
  text-align: center;
  padding: 4rem 2rem;
}
@media (max-width: 768px) {
  .contact-page .contact-hero {
    padding: 3rem 1.5rem;
  }
}
.contact-page .contact-hero h1 {
  color: #ffffff;
  font-size: 3rem;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 768px) {
  .contact-page .contact-hero h1 {
    font-size: 2.5rem;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-hero h1 {
    font-size: 2rem;
  }
}
.contact-page .contact-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 2rem;
}
@media (max-width: 768px) {
  .contact-page .contact-content {
    padding: 3rem 1.5rem;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-content {
    padding: 2rem 1rem;
  }
}
.contact-page .contact-content__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}
@media (max-width: 768px) {
  .contact-page .contact-content__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.contact-page .contact-content__left h2 {
  color: #30264a;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}
@media (max-width: 768px) {
  .contact-page .contact-content__left h2 {
    font-size: 1.75rem;
  }
}
.contact-page .contact-content__right p {
  color: #30264a;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}
.contact-page .contact-content__right p:last-of-type {
  margin-bottom: 2rem;
}
.contact-page .contact-content__buttons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
@media (max-width: 480px) {
  .contact-page .contact-content__buttons {
    flex-direction: column;
  }
}
.contact-page .contact-btn {
  display: inline-block;
  padding: 0.875rem 2rem;
  border-radius: 50px;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}
@media (max-width: 480px) {
  .contact-page .contact-btn {
    width: 100%;
  }
}
.contact-page .contact-btn--purple {
  background-color: #a17de5;
  color: #ffffff;
}
.contact-page .contact-btn--purple:hover, .contact-page .contact-btn--purple:focus {
  background-color: rgb(130.2692307692, 82.5, 220.5);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(161, 125, 229, 0.3);
}
.contact-page .contact-btn--dark {
  background-color: #30264a;
  color: #ffffff;
}
.contact-page .contact-btn--dark:hover, .contact-page .contact-btn--dark:focus {
  background-color: rgb(69.8571428571, 55.3035714286, 107.6964285714);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(48, 38, 74, 0.3);
}
.contact-page .contact-details-section {
  background-color: #cfc0e3;
  padding: 90px 12.5% 45px 12.5% !important;
  margin: 0;
  width: 100%;
}
@media (max-width: 768px) {
  .contact-page .contact-details-section {
    padding: 2.5rem 3%;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-details-section {
    padding: 2rem 5%;
  }
}
.contact-page .contact-details-section__inner {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}
@media (max-width: 968px) {
  .contact-page .contact-details-section__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.contact-page .contact-details-item {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
.contact-page .contact-details-item:last-child {
  margin-bottom: 0;
}
.contact-page .contact-details-item img,
.contact-page .contact-details-item svg {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  fill: #9b7ec4;
}
@media (max-width: 480px) {
  .contact-page .contact-details-item img,
  .contact-page .contact-details-item svg {
    width: 40px;
    height: 40px;
  }
}
.contact-page .contact-details-item div {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.contact-page .contact-details-item div strong {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.3;
  display: block;
  color: #423063;
  margin: 0;
}
@media (max-width: 768px) {
  .contact-page .contact-details-item div strong {
    font-size: 1.25rem;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-details-item div strong {
    font-size: 1.125rem;
  }
}
.contact-page .contact-details-item div a {
  color: #423063;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.contact-page .contact-details-item div a:hover, .contact-page .contact-details-item div a:focus {
  opacity: 0.7;
}
.contact-page .contact-details-item div .map-button {
  display: inline-block;
  padding: 0.75rem 1.75rem;
  background-color: #423063;
  color: #ffffff;
  border-radius: 50px;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 600;
  transition: all 0.3s ease;
  width: fit-content;
}
.contact-page .contact-details-item div .map-button:hover, .contact-page .contact-details-item div .map-button:focus {
  background-color: rgb(88.8979591837, 64.6530612245, 133.3469387755);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(66, 48, 99, 0.3);
}
@media (max-width: 480px) {
  .contact-page .contact-details-item div .map-button {
    padding: 0.625rem 1.5rem;
    font-size: 0.9rem;
  }
}
.contact-page .contact-additional-content {
  margin: 0 auto;
  padding: 0 2rem;
}
@media (max-width: 768px) {
  .contact-page .contact-additional-content {
    padding: 0 1.5rem;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-additional-content {
    padding: 0 1rem;
  }
}
.contact-page .contact-additional-content:not(:empty) {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.contact-page .contact-form-section {
  background-color: #f8f8f8;
  padding: 4rem 2rem;
}
@media (max-width: 768px) {
  .contact-page .contact-form-section {
    padding: 3rem 1.5rem;
  }
}
@media (max-width: 480px) {
  .contact-page .contact-form-section {
    padding: 2rem 1rem;
  }
}
.contact-page .contact-form-section__inner {
  max-width: 800px;
  margin: 0 auto;
}

/* Variables */
/* White background for the card */
/* Light gray for the card border */
/* Subtle shadow for depth */
/* Archive Grid */
.archive-hospice {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 columns */
  gap: 20px;
  padding: 63.75px 12.5%;
}

/* Hospice Card */
.hospices-archive__card {
  display: flex;
  flex-direction: column;
  background: #ffffff; /* White background */
  border: 1px solid #eaeaea; /* Light gray border */
  border-radius: 10px; /* Rounded corners */
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); /* Subtle box shadow */
  text-decoration: none;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hospices-archive__card:hover {
  transform: translateY(-5px); /* Slight lift effect */
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15); /* Enhanced shadow on hover */
}

/* Image Section */
.hospices-archive__image {
  width: 100%;
  height: 180px; /* Fixed height for consistency */
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid #eaeaea; /* Light gray divider */
}

/* Info Section */
.hospices-archive__info {
  padding: 15px;
  text-align: center;
}

.hospices-archive__title {
  font-size: 18px;
  color: #333; /* Dark gray for title */
  margin: 0;
  font-weight: bold;
}

/* Responsive Design */
@media (max-width: 1024px) {
  .hospices-archive {
    grid-template-columns: repeat(2, 1fr); /* 2 columns for tablets */
  }
}
@media (max-width: 768px) {
  .hospices-archive {
    grid-template-columns: 1fr; /* Single column for mobile */
  }
  .hospices-archive__image {
    height: 150px; /* Adjust image height for smaller screens */
  }
  .hospices-archive__title {
    font-size: 16px;
  }
}
/* Variables */
.single-hospice {
  position: relative;
  padding: 30px 12.5%;
  /* Contact Info */
}
.single-hospice .hospice-overview {
  display: flex;
  gap: 32px;
}
.single-hospice .hospice-overview .contact-details,
.single-hospice .hospice-overview .opening-times {
  flex: 0 0 48%; /* Flex-basis 48% to allow for gap */
  max-width: 48%; /* Ensure content doesn't go over */
}
.single-hospice .contact-details {
  margin-bottom: 92.25px;
}
.single-hospice .contact-info {
  padding: 20px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.single-hospice .contact-info .address,
.single-hospice .contact-info .phone {
  display: flex;
  gap: 16px;
}
.single-hospice .contact-info .address_icon,
.single-hospice .contact-info .phone_icon {
  height: 25px;
}
.single-hospice .contact-info .address {
  align-items: flex-start;
}
.single-hospice .contact-info .phone {
  align-items: center;
}
.single-hospice .contact-info a,
.single-hospice .contact-info p {
  font-family: "p22-mackinac-pro", serif;
  font-weight: 700;
  font-style: normal;
  font-size: 26.25px;
}
.single-hospice .contact-info p br {
  display: block;
  margin: 2px 0; /* Adjust the spacing */
  line-height: 1;
}

/* Banner Section */
.single-banner {
  width: 100%;
  height: 400px;
  overflow: hidden;
  margin-bottom: 20px;
}
.single-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
}

/* Post Content */
.hospice-single {
  position: relative;
  z-index: 2;
}

/* Title */
.hospice-title {
  font-size: 32px;
  font-weight: bold;
  color: #4d336b;
  margin-bottom: 20px;
}

/* Opening Hours */
.opening-hours-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
  padding: 8%;
}
.opening-hours-table tbody {
  display: flex;
  gap: 8px;
  flex-direction: column;
}
.opening-hours-table tbody tr {
  display: flex;
  justify-content: space-between;
}
.opening-hours-table td {
  font-size: 18.75px;
}
.opening-hours-table .day {
  font-family: "Satoshi-Bold";
  color: #4d336b;
}
.opening-hours-table .time {
  font-family: "Satoshi-Light";
  color: #333;
}

/* Additional Content */
.hospice-additional-content h2 {
  font-size: 24px;
  margin-bottom: 20px;
}
.hospice-additional-content p {
  font-size: 16px;
  color: #333;
  line-height: 1.6;
}

/* Container for all departments */
.team-departments {
  padding: 63.75px 12.5%;
}

/* Individual department section */
.department-section {
  margin-bottom: 40px;
  /* Grid for team members within each department */
}
.department-section .department-title {
  font-size: 24px;
  font-weight: bold;
  color: #4d336b; /* Dark color for department title */
  margin-bottom: 20px;
}
.department-section .team-members-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Restrict to exactly 3 columns */
  gap: 20px; /* Space between cards */
}
@media (max-width: 1024px) {
  .department-section .team-members-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 columns on medium screens */
  }
}
@media (max-width: 768px) {
  .department-section .team-members-grid {
    grid-template-columns: 1fr; /* Single column on small screens */
  }
}

.block-department-contact {
  margin: 69.75px 12.5%;
}
.block-department-contact .block-department-contact__title {
  text-align: center;
  font-size: 26.25px;
  font-weight: bold;
  margin-bottom: 69.75px;
}
.block-department-contact td:first-child {
  font-family: "Mackinac Pro", serif; /* Use Mackinac font */
  font-weight: bold;
}

/* General container styling for event archive */
.archive-event {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr); /* Four columns */
  gap: 20px; /* Space between cards */
  padding: 20px;
  margin: 0 auto;
  max-width: 1200px; /* Center the container */
}

/* Single Event Card */
.events-archive__item {
  width: 100%; /* Ensures each item is responsive within the column */
  overflow: hidden;
  background-color: #ffffff; /* White background for cards */
  border-radius: 10px;
  box-shadow: 0px 0px 15px -3px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.events-archive__item:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
}

/* Event Card Link */
.events-archive__card {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%; /* Ensure cards are equal height */
}

/* Event Thumbnail Image */
.events-archive__image {
  height: 180px; /* Set height for consistency */
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

/* Event Info Section */
.events-archive__info {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 20px; /* Space between text elements */
  flex-grow: 1; /* Pushes content to fill card height */
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

/* Event Date */
.events-archive__date {
  font-size: 14px;
  color: #4d8f73; /* Dark green text color for the date */
  font-weight: bold;
  margin: 0;
}

/* Event Title */
.events-archive__title {
  font-size: 18px;
  font-weight: bold;
  margin: 8px 0 0;
  line-height: 1.4;
  color: #2f855a; /* Dark green for title text */
  transition: color 0.3s ease;
}

.events-archive__title:hover {
  color: #38b2ac; /* Teal hover effect */
}

/* Event Excerpt */
.events-archive__details {
  font-size: 14px;
  color: #333; /* Neutral dark gray for text */
  line-height: 1.6;
  margin: 0;
}

/* Action Link */
.events-archive__action {
  font-family: "Satoshi-Regular";
  text-decoration: underline;
  color: #38b2ac; /* Teal color for action link */
  margin-top: auto; /* Push link to bottom of card */
  align-self: start;
  transition: color 0.3s ease;
  font-size: 16px;
  font-weight: normal;
}

.events-archive__action:hover {
  color: #2f855a; /* Dark green hover effect */
}

/* Responsive Design */
@media (max-width: 992px) {
  .archive-event {
    grid-template-columns: repeat(3, 1fr); /* Switch to 3 columns on medium screens */
  }
  .events-archive__item {
    max-width: 33.333%; /* Each card takes up 1/3 of the width */
  }
}
@media (max-width: 768px) {
  .archive-event {
    grid-template-columns: repeat(2, 1fr); /* Switch to 2 columns on smaller screens */
  }
  .events-archive__item {
    max-width: 50%; /* Each card takes up 50% of the width */
  }
}
@media (max-width: 576px) {
  .archive-event {
    grid-template-columns: 1fr; /* Single column layout on very small screens */
  }
  .events-archive__item {
    max-width: 100%; /* Each card takes up the full width */
  }
}
/* Fix container overflow */
.events__swiper {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

/* Optional: Ensure proper alignment */
.featured-events-post {
  display: flex;
  align-items: flex-start; /* Ensure content aligns to the left */
  justify-content: space-between;
  padding: 5% 12.5%;
}

.featured-events-post__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.featured-events-post__title {
  font-size: 24px;
  font-weight: bold;
  color: #2e1a56;
  margin-bottom: 10px;
}

.featured-events-post__meta {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 15px;
  font-weight: bold;
}

.featured-events-post__date,
.featured-events-post__location {
  display: flex;
  align-items: center;
  font-size: 14px;
  color: #4d8f73;
}

.featured-events-post__date .icon-calendar,
.featured-events-post__location .icon-location {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  background-size: contain;
}

.featured-events-post__excerpt {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 15px;
}

.featured-events-post__link {
  font-size: 14px;
  font-weight: bold;
  color: #47cf99;
  text-decoration: none;
  margin-top: auto;
  transition: color 0.3s ease;
}

.featured-events-post__link:hover {
  color: #4d8f73;
}

.featured-events-post__image-container {
  flex: 1;
  border-radius: 10px;
  overflow: hidden;
}

.featured-events-post__image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  aspect-ratio: 16/9;
}

.single-event {
  padding: 63.75px 12.5%;
  position: relative;
}

.single-event__title {
  font-size: 45px;
  margin-bottom: 30px;
  line-height: 1;
}

.single-event__divider {
  width: 100%;
  height: 1px;
  background-color: rgba(106, 90, 205, 0.2);
  margin: 40px 0;
}

.single-event__content {
  position: relative;
  width: 100%;
  display: flex;
  margin-bottom: 40px;
}
.single-event__content.single-event__row-1 {
  margin-top: 60px;
}
.single-event__content.single-event__row-3 {
  margin-top: 0;
}

.single-event__full-width {
  width: 100%;
}

.single-event__section {
  width: 50%;
}

a.single-event__cta:visited,
a.single-event__cta:hover {
  color: #ffffff !important;
}

.single-event__detail {
  font-size: 18.75px;
  font-family: "Satoshi-Bold";
  display: flex;
  align-items: center;
  gap: 12px;
}

.single-event__icon {
  display: flex;
  align-items: center;
  width: 30px;
  justify-content: center;
}
.single-event__icon img {
  height: 30px;
}

.single-event__sidebar {
  padding-left: 10%;
}

.single-event__sidebar {
  margin-bottom: 20px;
  width: 50%;
}

.single-event__sidebar h2 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}

.single-event__sidebar ul {
  list-style: none;
  padding: 0;
  margin-bottom: 45px;
}

.single-event__sidebar ul li {
  margin-bottom: 10px;
  font-size: 18.75px;
  font-family: "Satoshi-Regular";
}

.single-event__sidebar ul li::before {
  content: "•";
  color: #6a5acd;
  font-weight: bold;
  display: inline-block;
  width: 25px;
  font-size: 32px;
}

.single-event__sponsor img {
  width: 300px;
  height: auto;
  max-width: 100%;
}

.single-event__form {
  padding: 63.75px 12.5%;
}
.single-event__form button,
.single-event__form input[type=submit],
.single-event__form input[type=button],
.single-event__form input[type=reset],
.single-event__form .button,
.single-event__form .btn,
.single-event__form .gform_button,
.single-event__form .gform_next_button,
.single-event__form .gform_previous_button,
.single-event__form .gform_page_footer input[type=submit],
.single-event__form .gform_page_footer input[type=button] {
  background-color: #a17de5 !important;
  color: #ffffff !important;
  border: 2px solid #a17de5 !important;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  text-decoration: none !important;
  display: inline-block !important;
  line-height: 1.2 !important;
}
.single-event__form button:hover, .single-event__form button:focus,
.single-event__form input[type=submit]:hover,
.single-event__form input[type=submit]:focus,
.single-event__form input[type=button]:hover,
.single-event__form input[type=button]:focus,
.single-event__form input[type=reset]:hover,
.single-event__form input[type=reset]:focus,
.single-event__form .button:hover,
.single-event__form .button:focus,
.single-event__form .btn:hover,
.single-event__form .btn:focus,
.single-event__form .gform_button:hover,
.single-event__form .gform_button:focus,
.single-event__form .gform_next_button:hover,
.single-event__form .gform_next_button:focus,
.single-event__form .gform_previous_button:hover,
.single-event__form .gform_previous_button:focus,
.single-event__form .gform_page_footer input[type=submit]:hover,
.single-event__form .gform_page_footer input[type=submit]:focus,
.single-event__form .gform_page_footer input[type=button]:hover,
.single-event__form .gform_page_footer input[type=button]:focus {
  background-color: #423063 !important;
  border-color: #423063 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(161, 125, 229, 0.3) !important;
  text-decoration: none !important;
}
.single-event__form button:active,
.single-event__form input[type=submit]:active,
.single-event__form input[type=button]:active,
.single-event__form input[type=reset]:active,
.single-event__form .button:active,
.single-event__form .btn:active,
.single-event__form .gform_button:active,
.single-event__form .gform_next_button:active,
.single-event__form .gform_previous_button:active,
.single-event__form .gform_page_footer input[type=submit]:active,
.single-event__form .gform_page_footer input[type=button]:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 8px rgba(161, 125, 229, 0.2) !important;
}
.single-event__form button:visited,
.single-event__form input[type=submit]:visited,
.single-event__form input[type=button]:visited,
.single-event__form input[type=reset]:visited,
.single-event__form .button:visited,
.single-event__form .btn:visited,
.single-event__form .gform_button:visited,
.single-event__form .gform_next_button:visited,
.single-event__form .gform_previous_button:visited,
.single-event__form .gform_page_footer input[type=submit]:visited,
.single-event__form .gform_page_footer input[type=button]:visited {
  color: #ffffff !important;
}
.single-event__form .gform_wrapper .gform_footer input[type=submit],
.single-event__form .gform_wrapper .gform_footer input[type=button],
.single-event__form .gform_wrapper .gform_footer button,
.single-event__form .gform_wrapper .gform_page_footer input[type=submit],
.single-event__form .gform_wrapper .gform_page_footer input[type=button],
.single-event__form .gform_wrapper .gform_page_footer button {
  background-color: #a17de5 !important;
  color: #ffffff !important;
  border: 2px solid #a17de5 !important;
  padding: 14px 30px !important;
  border-radius: 8px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.single-event__form .gform_wrapper .gform_footer input[type=submit]:hover, .single-event__form .gform_wrapper .gform_footer input[type=submit]:focus,
.single-event__form .gform_wrapper .gform_footer input[type=button]:hover,
.single-event__form .gform_wrapper .gform_footer input[type=button]:focus,
.single-event__form .gform_wrapper .gform_footer button:hover,
.single-event__form .gform_wrapper .gform_footer button:focus,
.single-event__form .gform_wrapper .gform_page_footer input[type=submit]:hover,
.single-event__form .gform_wrapper .gform_page_footer input[type=submit]:focus,
.single-event__form .gform_wrapper .gform_page_footer input[type=button]:hover,
.single-event__form .gform_wrapper .gform_page_footer input[type=button]:focus,
.single-event__form .gform_wrapper .gform_page_footer button:hover,
.single-event__form .gform_wrapper .gform_page_footer button:focus {
  background-color: #423063 !important;
  border-color: #423063 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(161, 125, 229, 0.3) !important;
}
.single-event__form .gform_wrapper .gform_footer input[type=submit]:active,
.single-event__form .gform_wrapper .gform_footer input[type=button]:active,
.single-event__form .gform_wrapper .gform_footer button:active,
.single-event__form .gform_wrapper .gform_page_footer input[type=submit]:active,
.single-event__form .gform_wrapper .gform_page_footer input[type=button]:active,
.single-event__form .gform_wrapper .gform_page_footer button:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 8px rgba(161, 125, 229, 0.2) !important;
}
.single-event__form .gform_wrapper .gfield input[type=text],
.single-event__form .gform_wrapper .gfield input[type=email],
.single-event__form .gform_wrapper .gfield input[type=tel],
.single-event__form .gform_wrapper .gfield input[type=number],
.single-event__form .gform_wrapper .gfield input[type=password],
.single-event__form .gform_wrapper .gfield input[type=url],
.single-event__form .gform_wrapper .gfield textarea,
.single-event__form .gform_wrapper .gfield select {
  width: 100% !important;
  max-width: none !important;
  padding: 18px 20px !important;
  border: none !important;
  border-radius: 16px !important;
  font-size: 16px !important;
  font-family: inherit !important;
  background-color: #f5f5f5 !important;
  color: #333333 !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  appearance: none !important;
  box-shadow: none !important;
}
.single-event__form .gform_wrapper .gfield input[type=text]:focus,
.single-event__form .gform_wrapper .gfield input[type=email]:focus,
.single-event__form .gform_wrapper .gfield input[type=tel]:focus,
.single-event__form .gform_wrapper .gfield input[type=number]:focus,
.single-event__form .gform_wrapper .gfield input[type=password]:focus,
.single-event__form .gform_wrapper .gfield input[type=url]:focus,
.single-event__form .gform_wrapper .gfield textarea:focus,
.single-event__form .gform_wrapper .gfield select:focus {
  outline: none !important;
  background-color: #f0f0f0 !important;
  box-shadow: none !important;
}
.single-event__form .gform_wrapper .gfield input[type=text]:hover,
.single-event__form .gform_wrapper .gfield input[type=email]:hover,
.single-event__form .gform_wrapper .gfield input[type=tel]:hover,
.single-event__form .gform_wrapper .gfield input[type=number]:hover,
.single-event__form .gform_wrapper .gfield input[type=password]:hover,
.single-event__form .gform_wrapper .gfield input[type=url]:hover,
.single-event__form .gform_wrapper .gfield textarea:hover,
.single-event__form .gform_wrapper .gfield select:hover {
  background-color: #f0f0f0 !important;
}
.single-event__form .gform_wrapper .gfield input[type=text]::placeholder,
.single-event__form .gform_wrapper .gfield input[type=email]::placeholder,
.single-event__form .gform_wrapper .gfield input[type=tel]::placeholder,
.single-event__form .gform_wrapper .gfield input[type=number]::placeholder,
.single-event__form .gform_wrapper .gfield input[type=password]::placeholder,
.single-event__form .gform_wrapper .gfield input[type=url]::placeholder,
.single-event__form .gform_wrapper .gfield textarea::placeholder,
.single-event__form .gform_wrapper .gfield select::placeholder {
  color: #888888 !important;
  font-weight: 400 !important;
}
.single-event__form .gform_wrapper .gfield textarea {
  min-height: 120px !important;
  resize: vertical !important;
  line-height: 1.5 !important;
}
.single-event__form .gform_wrapper .gfield select {
  cursor: pointer !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23888888' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 16px center !important;
  background-repeat: no-repeat !important;
  background-size: 16px !important;
  padding-right: 48px !important;
}
.single-event__form input[type=text],
.single-event__form input[type=email],
.single-event__form input[type=tel],
.single-event__form input[type=number],
.single-event__form input[type=password],
.single-event__form input[type=url],
.single-event__form textarea,
.single-event__form select {
  width: 100% !important;
  padding: 18px 20px !important;
  border: none !important;
  border-radius: 16px !important;
  font-size: 16px !important;
  font-family: inherit !important;
  background-color: #f5f5f5 !important;
  color: #333333 !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  appearance: none !important;
  box-shadow: none !important;
}
.single-event__form input[type=text]:focus,
.single-event__form input[type=email]:focus,
.single-event__form input[type=tel]:focus,
.single-event__form input[type=number]:focus,
.single-event__form input[type=password]:focus,
.single-event__form input[type=url]:focus,
.single-event__form textarea:focus,
.single-event__form select:focus {
  outline: none !important;
  background-color: #f0f0f0 !important;
  box-shadow: none !important;
}
.single-event__form input[type=text]:hover,
.single-event__form input[type=email]:hover,
.single-event__form input[type=tel]:hover,
.single-event__form input[type=number]:hover,
.single-event__form input[type=password]:hover,
.single-event__form input[type=url]:hover,
.single-event__form textarea:hover,
.single-event__form select:hover {
  background-color: #f0f0f0 !important;
}
.single-event__form input[type=text]::placeholder,
.single-event__form input[type=email]::placeholder,
.single-event__form input[type=tel]::placeholder,
.single-event__form input[type=number]::placeholder,
.single-event__form input[type=password]::placeholder,
.single-event__form input[type=url]::placeholder,
.single-event__form textarea::placeholder,
.single-event__form select::placeholder {
  color: #888888 !important;
  font-weight: 400 !important;
}
.single-event__form .gfield_radio {
  display: flex !important;
  gap: 0 !important;
  margin-bottom: 24px !important;
}
.single-event__form .gfield_radio .gchoice {
  margin: 0 !important;
}
.single-event__form .gfield_radio .gchoice input[type=radio] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.single-event__form .gfield_radio .gchoice label {
  display: inline-block !important;
  padding: 12px 24px !important;
  background-color: #e0e0e0 !important;
  color: #666666 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  border: none !important;
  margin: 0 !important;
  font-size: 16px !important;
}
.single-event__form .gfield_radio .gchoice label:first-child {
  border-radius: 25px 0 0 25px !important;
}
.single-event__form .gfield_radio .gchoice label:last-child {
  border-radius: 0 25px 25px 0 !important;
}
.single-event__form .gfield_radio .gchoice label:hover {
  background-color: #d0d0d0 !important;
}
.single-event__form .gfield_radio .gchoice input[type=radio]:checked + label {
  background-color: #423063 !important;
  color: #ffffff !important;
}
.single-event__form .gform_wrapper .gfield {
  margin-bottom: 24px !important;
}
.single-event__form .gform_wrapper .gfield .gfield_label {
  font-weight: 600 !important;
  color: #333333 !important;
  font-size: 16px !important;
  margin-bottom: 8px !important;
  display: block !important;
}
.single-event__form .gform_wrapper .gfield.gsection .gsection_title {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #423063 !important;
  margin-bottom: 24px !important;
  margin-top: 40px !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex {
  display: grid !important;
  gap: 16px !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex.ginput_complex_name {
  grid-template-columns: 1fr 1fr !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex.ginput_complex_date {
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 12px !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex .name_first span,
.single-event__form .gform_wrapper .gfield .ginput_complex .name_last span {
  display: block !important;
  font-size: 14px !important;
  color: #666666 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_month,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_day,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_year {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_month span,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_month label,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_day span,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_day label,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_year span,
.single-event__form .gform_wrapper .gfield .ginput_complex .ginput_date_year label {
  display: block !important;
  font-size: 14px !important;
  color: #666666 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container, .single-event__form .gform_wrapper .gfield.gfield_date .ginput_container {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 12px !important;
  align-items: start !important;
  /* Individual date dropdowns */
  /* Date field containers */
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container select, .single-event__form .gform_wrapper .gfield.gfield_date .ginput_container select {
  width: 100% !important;
  margin: 0 !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_month,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_day,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_year, .single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_month,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_day,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_year {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_month span,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_month label,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_day span,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_day label,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_year span,
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container .ginput_date_year label, .single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_month span,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_month label,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_day span,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_day label,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_year span,
.single-event__form .gform_wrapper .gfield.gfield_date .ginput_container .ginput_date_year label {
  display: block !important;
  font-size: 14px !important;
  color: #666666 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}
.single-event__form .gform_wrapper .gfield .ginput_container_date {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 12px !important;
}
.single-event__form .gform_wrapper .gfield .ginput_container_date select {
  width: 100% !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-address .ginput_container {
  display: grid !important;
  gap: 16px !important;
  grid-template-columns: 1fr 1fr !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-address .ginput_container .gform-grid-col.ginput_full {
  grid-column: 1/-1 !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-address .ginput_container .gform-grid-col label {
  font-size: 14px !important;
  color: #666666 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}

.single-event__faq,
.single-event__gallery {
  padding: 63.75px 0;
}

.single-event__gallery {
  overflow: hidden;
  position: relative;
}
.single-event__gallery .event__swiper .swiper-wrapper {
  display: flex;
  align-items: center;
}
.single-event__gallery .event__swiper .swiper-slide {
  width: auto !important;
  margin-right: 15px;
}
.single-event__gallery .gallery__image {
  width: 200px;
  height: 150px;
  background-size: cover;
  background-position: center;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
}
.single-event__gallery .gallery__image:hover {
  transform: scale(1.05);
}
.single-event__gallery .swiper-button-next,
.single-event__gallery .swiper-button-prev {
  color: #333;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.single-event__gallery .swiper-button-next:after,
.single-event__gallery .swiper-button-prev:after {
  font-size: 16px;
  font-weight: bold;
}
.single-event__gallery .swiper-button-prev {
  left: 10px;
}
.single-event__gallery .swiper-button-next {
  right: 10px;
}

.single-event__thumbnail {
  width: 100%;
  aspect-ratio: 2/1;
  background-size: cover;
  background-position: center;
  margin-bottom: 20px;
  border-radius: 20px;
}

.single-event__resources ul li {
  margin-top: 10px;
}
.single-event__resources ul li::before {
  display: none;
}
.single-event__resources a {
  color: #a17de5;
  font-weight: 700;
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .single-event {
    padding: 50px 8%;
  }
  .single-event__form {
    padding: 50px 8%;
  }
  .single-event__form input[type=text],
  .single-event__form input[type=email],
  .single-event__form input[type=tel],
  .single-event__form input[type=number],
  .single-event__form input[type=password],
  .single-event__form input[type=url],
  .single-event__form textarea,
  .single-event__form select {
    font-size: 16px !important;
  }
  .single-event__faq,
  .single-event__gallery {
    padding: 50px 0;
  }
}
@media (max-width: 768px) {
  .single-event {
    padding: 40px 5%;
  }
  .single-event__content {
    flex-direction: column;
  }
  .single-event__section {
    width: 100%;
  }
  .single-event__sidebar {
    padding-left: 0;
  }
  .single-event__form {
    padding: 40px 5%;
  }
  .single-event__form input[type=text],
  .single-event__form input[type=email],
  .single-event__form input[type=tel],
  .single-event__form input[type=number],
  .single-event__form input[type=password],
  .single-event__form input[type=url],
  .single-event__form textarea,
  .single-event__form select {
    font-size: 16px !important;
    padding: 14px 16px !important;
  }
  .single-event__form .gform_wrapper .gfield .ginput_complex.ginput_complex_name {
    grid-template-columns: 1fr !important;
  }
  .single-event__form .gform_wrapper .gfield .ginput_complex.ginput_complex_date {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .single-event__form .gform_wrapper .gfield.gfield--type-address .ginput_container {
    grid-template-columns: 1fr !important;
  }
  .single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container, .single-event__form .gform_wrapper .gfield.gfield_date .ginput_container {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .single-event__form .gform_wrapper .gfield .ginput_container_date {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .single-event__form .gfield_radio .gchoice label {
    padding: 10px 20px !important;
    font-size: 14px !important;
  }
  .single-event__faq,
  .single-event__gallery {
    padding: 40px 0;
  }
}
@media (max-width: 480px) {
  .single-event {
    padding: 30px 5%;
  }
  .single-event__form {
    padding: 30px 5%;
  }
  .single-event__faq,
  .single-event__gallery {
    padding: 30px 0;
  }
}
/* Team Archive */
.team-archive {
  padding: 2em;
}

.team-archive__title {
  font-size: 2em;
  margin-bottom: 2em;
  color: #333;
}

.team-archive__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2em;
  justify-items: center;
  padding: 0 16%;
}
.team-archive__grid .user-card__contact-phone, .team-archive__grid .user-card__contact-email {
  margin: 0.5em 0;
  font-size: 15px;
  font-family: "Satoshi-Bold";
}
.team-archive__grid .user-card__contact-phone a, .team-archive__grid .user-card__contact-email a {
  color: #a17de5;
  text-decoration: underline;
}
.team-archive__grid .user-card__description {
  margin-top: 1em;
}
.team-archive__grid .user-card__description p {
  font-size: 15px;
}

/* Medium screens: Switch to 2 columns */
@media (max-width: 1024px) {
  .team-archive__grid {
    grid-template-columns: repeat(2, 1fr);
    padding: 0 10%;
  }
}
/* Small screens: Switch to 1 column */
@media (max-width: 768px) {
  .team-archive__grid {
    grid-template-columns: 1fr;
    gap: 1.5em; /* Slightly reduce gap for better spacing */
    padding: 0 5%;
  }
}
.team-member__social {
  margin-top: 1em;
}

.team-member__social-icon img {
  width: 24px;
  height: 24px;
  margin: 0 0.5em;
  transition: transform 0.3s;
}

.team-member__social-icon img:hover {
  transform: scale(1.2);
}

.vacancies-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* Always 3 columns */
  gap: 20px;
  padding: 100px 5%;
}
@media (max-width: 768px) {
  .vacancies-container {
    grid-template-columns: repeat(2, 1fr);
    /* 2 columns for tablets or smaller screens */
  }
}
@media (max-width: 480px) {
  .vacancies-container {
    grid-template-columns: 1fr;
    /* 1 column for mobile screens */
  }
}

.vacancy-card {
  background-color: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.vacancy-card:hover {
  transform: translateY(-5px);
  box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.2);
}

.vacancy-card__header {
  padding: 15px;
  text-align: center;
}

.vacancy-card__sector {
  font-size: 15px;
  color: #fff;
  margin: 0;
}

.vacancy-card__body {
  padding: 30px 22.5px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.vacancy-card__title {
  font-size: 26.25px;
  font-weight: bold;
  color: #4d336b;
  margin-bottom: 60px;
  line-height: 30px;
  min-height: 60px;
  display: flex;
  align-items: center;
}

.vacancy-card__info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 22.5px;
}

.vacancy-card__info p {
  margin: 0;
  display: flex;
  align-items: center;
  font-family: "Satoshi-Bold", sans-serif;
  color: #30264a;
  font-size: 18.75px;
}

.vacancy-card__info p span {
  margin-right: 10px;
  display: flex;
  align-items: center;
}

.vacancy-card__info p span svg {
  height: 30px;
}

.vacancy-card__excerpt {
  color: #555;
  margin-bottom: 63.75px;
  flex-grow: 1;
}

.vacancy-card__excerpt p {
  font-size: 15px;
}

.vacancy-card__link {
  font-size: 0.9em;
  color: #6c63ff;
  text-decoration: none;
  transition: color 0.3s ease;
  margin-top: auto;
}

.vacancy-card__link:hover {
  color: #4d336b;
}

/* Variables */
.single-vacancy {
  position: relative;
  padding: 30px 12.5%;
}

/* Banner Section */
.single-banner {
  width: 100%;
  height: 400px;
  overflow: hidden;
  margin-bottom: 20px;
}
.single-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
}

/* Post Content */
.vacancy-single {
  position: relative;
  z-index: 2;
}

/* Title */
.vacancy-title {
  font-size: 32px;
  font-weight: bold;
  color: #4d336b;
  margin-bottom: 20px;
  line-height: 1;
}

.single-vacation__content {
  position: relative;
  width: 100%;
  display: flex;
  margin-top: 60px;
}

.single-vacation__section {
  width: 50%;
}

.single-vacation__detail {
  font-family: "Satoshi-Bold";
  font-size: 18.75px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.single-vacation__detail img {
  height: 30px;
}
.single-vacation__icon {
  display: flex;
  align-items: center;
  width: 30px;
  justify-content: center;
}

/* Call-to-Action Button */
.apply-button {
  display: inline-block;
  padding: 12px 20px;
  background-color: #6a4caf;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  border-radius: 5px;
  transition: background 0.3s ease-in-out;
}

.apply-button:hover {
  background-color: #553a8a;
}

/* Key Details Section */
/* "The Perfect Person Will..." Section */
.ideal-candidate h2 {
  height: 26.25px;
  margin-bottom: 26.25px;
}
.ideal-candidate ul {
  list-style: none;
  padding: 0;
}

.ideal-candidate li {
  font-size: 15px;
  font-family: "Satoshi-Bold";
  padding: 10px;
  margin-bottom: 8px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 16px;
}
.ideal-candidate li img {
  height: 30px;
}

/* Apply Section */
.apply-section {
  text-align: center;
  background: #f3f3f3;
  padding: 30px 20px;
  border-radius: 10px;
  margin-top: 30px;
}

.apply-section h2 {
  color: #6a4caf;
  margin-bottom: 15px;
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Individual team member card */
.user-card {
  background-color: #fff;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.user-card:hover {
  transform: translateY(-5px); /* Slight lift effect */
}
.user-card .user-card__thumbnail {
  width: 100%;
  overflow: hidden;
  background: #f9f9f9; /* Fallback color if no image */
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
}
.user-card .user-card__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Ensure the image covers the space without distortion */
}
.user-card .user-card__details {
  padding: 30px;
}
.user-card .user-card__details .user-card__name {
  font-size: 18.75px;
  font-weight: bold;
  color: #4d336b; /* Dark color for the name */
  margin-bottom: 5px;
}
.user-card .user-card__details .user-card__role {
  font-size: 18.75px;
  color: #a17de5; /* Lighter color for job role */
  margin-bottom: 10px;
  font-family: "Mackinac Pro", serif;
}
.user-card .user-card__details .user-card__link {
  font-size: 15px;
  color: #a17de5;
  transition: color 0.3s ease;
  text-decoration: underline;
}
.user-card .user-card__details .user-card__link:hover {
  color: #4d336b; /* Darker hover color */
}

.c-usps {
  display: flex;
  padding: 0 172.5px;
  gap: 16px;
}

.c-usp {
  text-align: center;
  flex: 1;
}
.c-usp h3,
.c-usp p {
  margin: 0;
}
.c-usp__icon {
  height: 50px !important;
  object-fit: contain;
  margin-bottom: 20px;
}
.c-usp__description {
  font-family: "Satoshi-Bold";
  font-size: 15px;
}

@media (max-width: 1024px) {
  .c-usps {
    padding: 0 75px; /* Reduce side padding */
    flex-wrap: wrap;
    justify-content: center;
  }
  .c-usp {
    flex: 0 0 calc(50% - 8px); /* Two columns on tablets */
  }
}
@media (max-width: 768px) {
  .c-usps {
    padding: 0 37.5px;
    flex-direction: column;
    align-items: center;
  }
  .c-usp {
    flex: 0 0 100%; /* Full width for mobile */
    max-width: 400px; /* Prevent excessive width */
  }
  .c-usp__icon {
    height: 40px !important; /* Reduce icon size */
    margin-bottom: 16px;
  }
  .c-usp__description {
    font-size: 13.5px; /* Scale down text */
  }
}
@media (max-width: 480px) {
  .c-usps {
    padding: 0 22.5px;
  }
  .c-usp__icon {
    height: 35px !important;
    margin-bottom: 12px;
  }
  .c-usp__description {
    font-size: 12px;
  }
}
.block-hero {
  height: 100vh;
  width: 100%;
  position: relative;
  top: 0;
  display: flex;
  align-items: center;
  padding: 8%;
  margin-top: -162px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media (max-width: 1162px) {
  .block-hero {
    margin-top: 0;
  }
}
.block-hero--half {
  height: auto !important;
  aspect-ratio: 1844/650;
  padding: 162px 8% 0 8%;
}
.block-hero--no-background {
  aspect-ratio: auto;
  background: #423063;
  padding: 0;
  text-align: center;
  padding-top: 200px;
  height: auto;
}
.block-hero--no-background .block-hero__content {
  width: 100%;
  text-align: center;
  padding-left: 0;
}
.block-hero--no-background h2 {
  font-family: "p22-mackinac-pro", serif;
  font-size: 26.25px;
  font-weight: normal;
}

.block-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgb(48, 38, 74), rgba(0, 0, 0, 0));
  z-index: 1;
  pointer-events: none;
}

.block-hero__content,
.block-hero__quick-links {
  position: relative;
  z-index: 2;
}

.block-hero__content {
  width: 55%;
  padding: 30px 0;
  padding-left: 46.5px;
}

.block-hero__content h1 {
  color: white;
}

.block-hero__content h3 {
  color: white;
}

.block-hero__quick-links {
  position: absolute;
  bottom: 0; /* Adjust as needed */
  left: 0;
  width: 100%;
  display: flex;
  gap: 8px;
  justify-content: space-around; /* Evenly space out the links */
  padding: 0 5%; /* Padding for some space inside the container */
  box-sizing: border-box; /* Ensure padding doesn't affect width */
}
@media (max-width: 1162px) {
  .block-hero__quick-links {
    padding: 0;
    top: 0;
    bottom: auto;
    gap: 0;
    flex-wrap: wrap;
  }
}
.block-hero__quick-links li,
.block-hero__quick-links a,
.block-hero__quick-links p,
.block-hero__quick-links span {
  margin: 0;
}

.block-hero__quick-links a {
  flex: 1; /* Make each link take equal width */
  text-align: center; /* Center the text within each link */
  padding: 15px;
  text-decoration: none; /* Remove underline */
  color: #fff; /* Text color */
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.40625rem;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
@media (max-width: 1162px) {
  .block-hero__quick-links a {
    flex: auto;
    width: 50%;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
}

.block-hero__quick-links a:hover {
  cursor: pointer;
}

.block-hero__quick-links a:nth-child(1) {
  background-color: #a17de5;
}

.block-hero__quick-links a:nth-child(2) {
  background-color: #f591ed;
}

.block-hero__quick-links a:nth-child(3) {
  background-color: #a36694;
}

.block-hero__quick-links a:nth-child(4) {
  background-color: #ffc229;
}

.block-hero__quick-links a img {
  height: 35px;
}

.block-hero__quick-links a h4 {
  color: white;
  margin: 0;
}

.block-hero__quick-links a .label {
  display: flex;
  align-items: center;
}
.block-hero__quick-links a .label img {
  height: 20px;
  margin-right: 5px;
  position: relative;
}

@media (max-width: 1162px) {
  .block-hero {
    margin-top: 0;
    padding: 6%;
  }
  .block-hero__quick-links {
    padding: 0;
    top: 0;
    bottom: auto;
    gap: 0;
    flex-wrap: wrap;
  }
  .block-hero__quick-links a {
    flex: auto;
    width: 50%;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
}
@media (max-width: 1024px) {
  .block-hero__content {
    width: 70%;
  }
}
@media (max-width: 768px) {
  .block-hero {
    height: auto;
    min-height: 80vh;
    flex-direction: column;
    text-align: center;
    padding: 5%;
    justify-content: flex-end;
  }
  .block-hero__content {
    width: 100%;
    padding: 20px;
  }
}
@media (max-width: 480px) {
  .block-hero {
    padding: 3%;
  }
  .block-hero__content {
    padding: 15px;
  }
  .block-hero__quick-links a img {
    height: 25px;
    transition: transform 0.3s ease;
  }
}
.block-hero__quick-links a:hover img:not(.arrow-right) {
  opacity: 0.6;
}

.block-hero__quick-links a:hover .arrow-right {
  transform: translateX(10px); /* Move arrow slightly to the right */
  transition: transform 0.3s ease;
}

/**
 * CTA Block Styles
 * 
 * Note: For "Hear our updates first" newsletter signup component:
 * Colors are managed via ACF Options in WordPress Admin:
 * - Background: #423063 (dark purple) - was #FFC229 (yellow)
 * - Text: white (both heading and content)
 * - Button: #A17DE5 (light purple) with white text
 * - Link text (Sign-up): white
 * 
 * This keeps newsletter CTAs distinct from donation CTAs (which use yellow)
 */
.block-cta {
  padding: 63.75px 12.5%; /* Keep this as is */
}
.block-cta h2,
.block-cta a,
.block-cta p,
.block-cta span {
  margin: 0; /* Remove default margin */
}

.block-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between; /* Space out the heading, content, and button */
  border-radius: 10px; /* Rounded corners for the inner container */
  padding: 45px 45px; /* Adjust padding for inner content */
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

.block-cta__heading {
  font-family: "Mackinac Pro", serif; /* Use Mackinac font */
  font-size: 30px; /* Font size for large heading */
  font-weight: bold; /* Bold heading */
  color: #4c371a; /* Dark text color - overridden by inline styles */
  flex: 2;
}
.block-cta__heading h2 {
  color: inherit; /* Inherit from inline styles */
}

.block-cta__content {
  color: #4c371a; /* Match text color - overridden by inline styles */
  margin-left: 20px; /* Spacing between heading and content */
  flex: 2;
}
.block-cta__content p {
  margin-bottom: 0; /* Remove default margin */
  color: inherit; /* Inherit from inline styles */
}

.block-cta__btn {
  display: flex;
  flex: 1;
  justify-content: flex-end; /* Align the button to the right */
}

.block-cta__btn .c-btn {
  background-color: #ad9161; /* Brownish button color - overridden by inline styles */
  color: white !important; /* White text - ensure it stays white */
  border: none; /* Remove default border */
  padding: 10px 20px; /* Button padding */
  border-radius: 50px; /* Fully rounded button */
  font-size: 1rem; /* Font size for button */
  font-weight: bold; /* Bold text */
  cursor: pointer; /* Pointer cursor for button */
  transition: background-color 0.3s ease, transform 0.2s ease;
  text-decoration: none; /* Remove underline from links */
}

.block-cta__btn .c-btn:hover {
  background-color: #8e7548; /* Darker shade on hover - may be overridden */
  transform: scale(1.05); /* Slight scale on hover */
  opacity: 0.9; /* Slight opacity change for hover on any background color */
}

.block-cta {
  padding: 63.75px 12.5%; /* Keep this as is */
}

.block-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between; /* Space out heading, content, and button */
  border-radius: 10px;
  padding: 45px 45px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

/* Responsive Adjustments */
@media (max-width: 1024px) {
  .block-cta {
    padding: 63.75px 8%;
  }
  .block-cta__inner {
    flex-wrap: wrap; /* Allow content to wrap */
    text-align: center; /* Center text alignment */
    justify-content: center; /* Center elements */
  }
  .block-cta__heading,
  .block-cta__content {
    flex: 100%; /* Full width for smaller screens */
    text-align: center; /* Center text */
    margin-left: 0; /* Remove margin for spacing */
  }
  .block-cta__btn {
    justify-content: center; /* Center the button */
    margin-top: 20px; /* Add spacing between content and button */
    flex: 100%;
  }
}
@media (max-width: 768px) {
  .block-cta {
    padding: 63.75px 5%;
  }
  .block-cta__inner {
    padding: 30px 30px;
  }
}
@media (max-width: 480px) {
  .block-cta {
    padding: 63.75px 3%;
  }
  .block-cta__inner {
    padding: 22.5px 22.5px;
  }
  .block-cta__heading {
    font-size: 22.5px; /* Reduce heading size */
  }
}
#masthead {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: 16px;
  margin-bottom: -16px;
  padding: 0 5%;
  position: relative;
  z-index: 100;
}
@media (max-width: 1162px) {
  #masthead {
    margin-bottom: 0;
  }
}

#mega-menu {
  width: 100%;
  margin: 0 auto;
  position: sticky;
  top: 48px;
  padding: 0 5%;
  z-index: 100;
}
@media (max-width: 1162px) {
  #mega-menu {
    padding: 0;
    top: 0;
  }
}
#mega-menu ul li,
#mega-menu ul a,
#mega-menu ul span {
  font-family: "Satoshi-Bold";
  cursor: pointer;
  margin: 0;
}
#mega-menu .nav--mobile {
  display: none;
  width: 100%;
  padding: 3% 7%;
  max-height: 100vh;
  overflow-y: scroll;
}
@media (max-width: 1370px) {
  #mega-menu .nav--mobile.active {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}
#mega-menu .nav--mobile > ul.nav-list > li > a {
  border-bottom: 1px dashed #000;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#mega-menu .nav--mobile > ul.nav-list > li:first-of-type > a {
  border-top: 1px dashed #000;
}
#mega-menu .nav--mobile ul {
  flex-direction: column;
  margin: 0;
  padding: 0;
  width: 100%;
}
#mega-menu .nav--mobile ul .sub-submenu li a {
  font-family: "Satoshi-Regular";
}
#mega-menu .nav--mobile ul a {
  font-size: 20px;
  display: block;
  width: 100%;
  padding: 8px 0;
}
#mega-menu .nav--mobile .submenu,
#mega-menu .nav--mobile .sub-submenu {
  display: none;
}
#mega-menu .nav--mobile .submenu.active,
#mega-menu .nav--mobile .sub-submenu.active {
  display: flex;
}

nav ul {
  display: flex;
  flex-direction: row;
  list-style-type: none;
  align-items: center;
  gap: 32px;
  margin: 0;
}
@media (max-width: 1370px) {
  nav ul {
    gap: 16px;
    align-items: unset;
  }
}
@media (max-width: 1232px) {
  nav ul {
    gap: 0px;
  }
}

.primary-nav,
.secondary-nav {
  padding: 0 5%;
  background: white;
}

.primary-nav {
  background-color: white;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  position: sticky;
  top: 0;
  width: 100%;
  border-radius: 10px;
  flex-wrap: wrap;
}
.primary-nav li,
.primary-nav a,
.primary-nav p {
  margin: 0;
}
@media (max-width: 1162px) {
  .primary-nav {
    padding: 0 3%;
  }
}
.primary-nav .primary-nav__mobile-controls {
  display: none;
}
@media (max-width: 1370px) {
  .primary-nav .primary-nav__mobile-controls {
    display: flex;
    align-items: center;
    gap: 24px;
  }
}
.primary-nav .primary-nav__mobile-controls a {
  display: flex;
}
.primary-nav nav ul li {
  font-size: 15px;
}
@media (max-width: 1162px) {
  .primary-nav .branding {
    width: 50%;
    padding: 8px;
  }
}

.secondary-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 64px;
  width: 100%;
  /* Navigation Bar Styling */
  /* Individual Menu Item Styling */
  /* Text Links Styling */
  /* Hover Effect (Underline) */
  /* Basket Icon Styling */
  /* Search Icon Styling */
}
@media (max-width: 1162px) {
  .secondary-nav {
    display: none;
  }
}
.secondary-nav nav ul li {
  font-size: 12px;
}
.secondary-nav .nav-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 16px;
}
.secondary-nav .nav-menu li,
.secondary-nav .nav-menu a,
.secondary-nav .nav-menu p {
  margin: 0;
}
.secondary-nav .nav-menu li {
  display: flex; /* Allow alignment for text and icons */
  align-items: center; /* Vertically align items */
  position: relative; /* For underlining effect */
}
.secondary-nav .nav-menu a {
  text-decoration: none; /* Remove underline */
  color: #2e2d3a; /* Dark navy color for text */
  font-weight: 600; /* Bold for emphasis */
  display: flex; /* Align items horizontally */
  align-items: center; /* Center items vertically */
  gap: 16px;
  font-size: 12px;
}
.secondary-nav .nav-menu li:hover::after {
  content: ""; /* Add an underline */
  position: absolute;
  bottom: -5px; /* Position below the text */
  left: 0;
  right: 0;
  height: 2px; /* Thin underline */
  background-color: #00e0ff; /* Bright cyan underline color */
}
.secondary-nav .nav-menu img {
  width: 20px; /* Set the size of the icon */
  height: auto;
  margin-left: 5px; /* Add spacing between text and icon */
  vertical-align: middle; /* Align icon vertically */
}
.secondary-nav .nav-menu .search-icon img {
  width: 20px; /* Set the size for the search icon */
  height: auto;
  margin-right: 5px; /* Add spacing between icon and text */
  vertical-align: middle;
}

.menu-container {
  display: flex;
  gap: 20px;
  width: 100%;
  max-width: 800px;
}
.menu-container .menu {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 50%;
}
.menu-container .menu li {
  padding: 8px 0;
  font-weight: bold;
  border-top: 1px dashed #e3e3e3;
  font-family: "Satoshi-Bold";
}
.menu-container .menu li a {
  display: flex;
  gap: 16px;
  align-items: center;
}
.menu-container .submenu-container {
  width: 50%;
  display: flex;
}
.menu-container .submenu-container .submenu {
  display: none;
  list-style: none;
  padding: 0;
  margin: 0;
}
.menu-container .submenu-container .submenu ul {
  list-style-type: none;
  padding: 0;
}
.menu-container .submenu-container .submenu ul a {
  font-family: "Satoshi-Regular" !important;
}
.menu-container .submenu-container .submenu ul li {
  border-top: none;
  border-top: none;
  padding: 4px 0;
}
.menu-container .submenu-container .submenu a.view-all {
  display: block;
  padding: 10px 15px;
  color: #333;
  text-decoration: underline;
  font-family: "Satoshi-Bold";
}
.menu-container .submenu-container .submenu a.view-all:hover {
  background-color: #ddd;
}
.menu-container .submenu-container .submenu.active {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}

.megamenu__panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  padding: 0 5%;
  z-index: 1000;
}
.megamenu__panel h2 {
  font-size: 24px;
  margin-bottom: 10px;
  color: #333;
}
.megamenu__panel p {
  color: #555;
}
.megamenu__panel.active {
  display: block;
}
.megamenu__panel .megamenu__content {
  display: flex;
  gap: 64px;
  padding: 32px;
  background: white;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.megamenu__panel .megamenu__content .megamenu__thumbnail {
  width: 30%;
  height: auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.has-active-megamenu {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

@media (max-width: 1370px) {
  .nav--desktop {
    display: none;
  }
}

.nav-toggle {
  display: flex;
  gap: 24px;
  font-family: "Satoshi-Bold";
}
.nav-toggle:hover {
  cursor: pointer;
}

.mobile-search {
  display: flex;
  gap: 8px;
}
.mobile-search input {
  width: 100%;
  border: none;
}
.mobile-search input:focus {
  outline: none;
}

.usp-list {
  list-style-type: none;
  display: flex;
  flex-direction: column;
}
.usp-list li {
  padding: 16px 0;
  font-weight: bold;
  border-top: 1px dashed #e3e3e3;
}
.usp-list li:last-child {
  border-bottom: 1px dashed #e3e3e3;
}

.block-accordion {
  padding: 0 20%;
}

.block-accordion__header {
  padding: 15px;
  cursor: pointer;
  border-bottom: 1px solid #ccc;
  margin-bottom: 5px;
  display: flex;
  justify-content: space-between; /* Align text and icon on opposite ends */
  align-items: center; /* Center vertically */
  font-weight: bold;
}

.block-accordion__header:hover {
  background-color: #ddd;
}

.block-accordion__icon {
  font-weight: normal;
  transition: transform 0.3s ease; /* Smooth transition for the icon */
  color: #a17de6;
  font-size: 24px;
}

.block-accordion__content {
  display: none; /* Hide content by default */
  padding: 10px;
  font-size: 19px;
  line-height: 25px;
}

.block-accordion__item--active .block-accordion__content {
  display: block; /* Show content when the item is active */
}

.block-accordion__item--active .block-accordion__icon {
  content: "-";
  transform: rotate(180deg); /* Optional: add rotation effect */
}

.block-accordion {
  padding: 0 20%;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
  .block-accordion {
    padding: 0 15%;
  }
}
@media (max-width: 768px) {
  .block-accordion {
    padding: 0 10%;
  }
}
@media (max-width: 480px) {
  .block-accordion {
    padding: 0 5%;
  }
}
/* ========================================
   GRAVITY FORMS - GLOBAL MODERN STYLING
   Clean, professional form styling for all Gravity Forms
   ======================================== */
/* Form Container */
.gform_wrapper {
  font-family: inherit;
}
.gform_wrapper .gform_body {
  max-width: none;
  margin: 0;
}

/* Form Fields Container - Clean spacing */
.gform_fields {
  display: grid;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Individual Field Styling */
.gfield {
  margin: 0 !important;
  padding: 0 !important;
  /* Two-column layout for related fields */
  /* Full width fields */
  /* Ensure date fields don't have any width overrides */
}
.gfield.gfield--width-half {
  grid-column: span 1;
}
.gfield.gfield--width-full {
  grid-column: 1/-1;
}
.gfield.gfield--type-date {
  width: auto !important;
  max-width: none !important;
}

/* Create two-column grid for forms */
.gform_fields {
  grid-template-columns: 1fr 1fr;
  column-gap: 30px;
  /* Single column on mobile */
  /* Full-width fields that should span both columns */
  /* Force date fields to be half-width even if they have width-full class */
}
@media (max-width: 768px) {
  .gform_fields {
    grid-template-columns: 1fr;
  }
}
.gform_fields .gfield.gfield--type-textarea,
.gform_fields .gfield.gfield--type-address,
.gform_fields .gfield.gfield--type-section,
.gform_fields .gfield.gfield--type-html,
.gform_fields .gfield.gfield--type-page,
.gform_fields .gfield.gfield--width-full:not(.gfield--type-date) {
  grid-column: 1/-1;
}
.gform_fields .gfield.gfield--type-date {
  grid-column: auto !important;
}

/* Specific grid column spanning for date fields */
.gform_fields .gfield.gfield--type-date {
  grid-column: span 6 !important;
}

/* Specific layout for "Your details" style forms */
.gform_wrapper.your-details-form .gform_fields,
.gform_wrapper[data-layout=two-column] .gform_fields {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* Field Labels - Clean Minimal Design */
.gfield_label {
  font-weight: 400 !important;
  font-size: 14px !important;
  color: #374151 !important;
  margin-bottom: 6px !important;
  display: block !important;
  line-height: 1.4 !important;
  /* Required indicator styling */
  /* Asterisk for required fields */
}
.gfield_label .gfield_required {
  color: #374151 !important;
  font-weight: 400 !important;
  margin-left: 2px !important;
}
.gfield_label .gfield_required_asterisk {
  color: #374151 !important;
  font-weight: 400 !important;
  margin-left: 2px !important;
}

/* All Input Field Styling - Clean Minimal Design */
.gfield input[type=text],
.gfield input[type=email],
.gfield input[type=tel],
.gfield input[type=number],
.gfield input[type=password],
.gfield input[type=url],
.gfield textarea,
.gfield select,
.ginput_container input[type=text],
.ginput_container input[type=email],
.ginput_container input[type=tel],
.ginput_container input[type=number],
.ginput_container input[type=password],
.ginput_container input[type=url],
.ginput_container textarea,
.ginput_container select {
  width: 100% !important;
  max-width: none !important;
  padding: 14px 16px !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 6px !important;
  font-size: 16px !important;
  font-family: inherit !important;
  background-color: #ffffff !important;
  color: #374151 !important;
  transition: border-color 0.2s ease !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  min-height: 48px !important;
}
.gfield input[type=text]:focus,
.gfield input[type=email]:focus,
.gfield input[type=tel]:focus,
.gfield input[type=number]:focus,
.gfield input[type=password]:focus,
.gfield input[type=url]:focus,
.gfield textarea:focus,
.gfield select:focus,
.ginput_container input[type=text]:focus,
.ginput_container input[type=email]:focus,
.ginput_container input[type=tel]:focus,
.ginput_container input[type=number]:focus,
.ginput_container input[type=password]:focus,
.ginput_container input[type=url]:focus,
.ginput_container textarea:focus,
.ginput_container select:focus {
  outline: none !important;
  border-color: #9ca3af !important;
  box-shadow: none !important;
}
.gfield input[type=text]:hover,
.gfield input[type=email]:hover,
.gfield input[type=tel]:hover,
.gfield input[type=number]:hover,
.gfield input[type=password]:hover,
.gfield input[type=url]:hover,
.gfield textarea:hover,
.gfield select:hover,
.ginput_container input[type=text]:hover,
.ginput_container input[type=email]:hover,
.ginput_container input[type=tel]:hover,
.ginput_container input[type=number]:hover,
.ginput_container input[type=password]:hover,
.ginput_container input[type=url]:hover,
.ginput_container textarea:hover,
.ginput_container select:hover {
  border-color: #d1d5db !important;
}
.gfield input[type=text]::placeholder,
.gfield input[type=email]::placeholder,
.gfield input[type=tel]::placeholder,
.gfield input[type=number]::placeholder,
.gfield input[type=password]::placeholder,
.gfield input[type=url]::placeholder,
.gfield textarea::placeholder,
.gfield select::placeholder,
.ginput_container input[type=text]::placeholder,
.ginput_container input[type=email]::placeholder,
.ginput_container input[type=tel]::placeholder,
.ginput_container input[type=number]::placeholder,
.ginput_container input[type=password]::placeholder,
.ginput_container input[type=url]::placeholder,
.ginput_container textarea::placeholder,
.ginput_container select::placeholder {
  color: #9ca3af !important;
  font-weight: 400 !important;
}
.gfield input[type=text]:disabled,
.gfield input[type=email]:disabled,
.gfield input[type=tel]:disabled,
.gfield input[type=number]:disabled,
.gfield input[type=password]:disabled,
.gfield input[type=url]:disabled,
.gfield textarea:disabled,
.gfield select:disabled,
.ginput_container input[type=text]:disabled,
.ginput_container input[type=email]:disabled,
.ginput_container input[type=tel]:disabled,
.ginput_container input[type=number]:disabled,
.ginput_container input[type=password]:disabled,
.ginput_container input[type=url]:disabled,
.ginput_container textarea:disabled,
.ginput_container select:disabled {
  background-color: #f9fafb !important;
  color: #6b7280 !important;
  cursor: not-allowed !important;
}

/* Textarea Specific */
.gfield textarea,
.ginput_container textarea {
  min-height: 120px !important;
  resize: vertical !important;
  line-height: 1.5 !important;
}

/* Select Dropdown Styling */
.gfield select,
.ginput_container select {
  cursor: pointer !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23374151' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 12px center !important;
  background-repeat: no-repeat !important;
  background-size: 16px !important;
  padding-right: 40px !important;
  appearance: none !important;
}

/* Complex Field Layouts (Name, Address, etc.) */
.ginput_complex {
  display: grid !important;
  gap: 16px !important;
  /* Name fields - two columns */
  /* Email confirmation - two columns */
  /* Phone with area code */
  /* Date fields - three columns for month/day/year */
}
.ginput_complex.ginput_complex_name {
  grid-template-columns: 1fr 1fr !important;
}
.ginput_complex.ginput_complex_name .name_first span,
.ginput_complex.ginput_complex_name .name_last span {
  display: block !important;
  font-size: 14px !important;
  color: #6b7280 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}
.ginput_complex.ginput_complex_email {
  grid-template-columns: 1fr 1fr !important;
}
.ginput_complex.ginput_complex_phone {
  grid-template-columns: 100px 1fr !important;
}
.ginput_complex.ginput_complex_date {
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 12px !important;
}

/* ULTIMATE DATE FIELD FIX - Ultra specific selectors */
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container.ginput_complex.gform-grid-row,
.gfield.gfield--type-date .ginput_container,
.gfield--input-type-datedropdown .ginput_container {
  display: flex !important;
  flex-direction: row !important;
  gap: 8px !important;
  width: 100% !important;
  align-items: flex-start !important;
}

/* Force each date dropdown to be inline */
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_day.ginput_container.ginput_container_date.gform-grid-col,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_month.ginput_container.ginput_container_date.gform-grid-col,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_year.ginput_container.ginput_container_date.gform-grid-col,
.gfield.gfield--type-date .gfield_date_dropdown_day,
.gfield.gfield--type-date .gfield_date_dropdown_month,
.gfield.gfield--type-date .gfield_date_dropdown_year,
.gfield.gfield--type-date .gform-grid-col {
  flex: 1 !important;
  display: block !important;
  width: 33.33% !important;
  max-width: 33.33% !important;
  min-width: 0 !important;
  float: none !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_day.ginput_container.ginput_container_date.gform-grid-col select,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_month.ginput_container.ginput_container_date.gform-grid-col select,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_year.ginput_container.ginput_container_date.gform-grid-col select,
.gfield.gfield--type-date .gfield_date_dropdown_day select,
.gfield.gfield--type-date .gfield_date_dropdown_month select,
.gfield.gfield--type-date .gfield_date_dropdown_year select,
.gfield.gfield--type-date .gform-grid-col select {
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: white !important;
  border: 1px solid #333 !important;
  border-radius: 0 !important;
  color: #333 !important;
  font-size: 16px !important;
  padding: 8px 12px !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23333333' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 12px center !important;
  background-repeat: no-repeat !important;
  background-size: 16px !important;
  padding-right: 40px !important;
}
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_day.ginput_container.ginput_container_date.gform-grid-col label,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_day.ginput_container.ginput_container_date.gform-grid-col span,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_month.ginput_container.ginput_container_date.gform-grid-col label,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_month.ginput_container.ginput_container_date.gform-grid-col span,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_year.ginput_container.ginput_container_date.gform-grid-col label,
.single-event__form .gform_wrapper .gfield.gfield--type-date .gfield_date_dropdown_year.ginput_container.ginput_container_date.gform-grid-col span,
.gfield.gfield--type-date .gfield_date_dropdown_day label,
.gfield.gfield--type-date .gfield_date_dropdown_day span,
.gfield.gfield--type-date .gfield_date_dropdown_month label,
.gfield.gfield--type-date .gfield_date_dropdown_month span,
.gfield.gfield--type-date .gfield_date_dropdown_year label,
.gfield.gfield--type-date .gfield_date_dropdown_year span,
.gfield.gfield--type-date .gform-grid-col label,
.gfield.gfield--type-date .gform-grid-col span {
  font-size: 12px !important;
  color: #666666 !important;
  margin-bottom: 4px !important;
  font-weight: 400 !important;
  display: block !important;
}

/* Ensure date field itself doesn't overflow */
.gfield.gfield--type-date {
  overflow: hidden !important;
  max-width: 100% !important;
}

/* Apply same styling to text inputs and select dropdowns */
.single-event__form .gform_wrapper .ginput_container_text input[type=text],
.single-event__form .gform_wrapper .ginput_container_select select,
.ginput_container_text input[type=text],
.ginput_container_select select {
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: white !important;
  border: 1px solid #333 !important;
  border-radius: 0 !important;
  color: #333 !important;
  font-size: 16px !important;
  padding: 8px 12px !important;
  appearance: none !important;
}

/* Select dropdown arrow for regular selects */
.single-event__form .gform_wrapper .ginput_container_select select,
.ginput_container_select select {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23333333' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 12px center !important;
  background-repeat: no-repeat !important;
  background-size: 16px !important;
  padding-right: 40px !important;
}

/* Ultra-specific override to prevent grid inheritance */
.single-event__form .gform_wrapper .gfield.gfield--type-date .ginput_container,
.gfield.gfield--type-date .gform-grid-col,
.gfield.gfield--type-date .ginput_container_date,
.gfield.gfield--type-date .gfield_date_dropdown_day,
.gfield.gfield--type-date .gfield_date_dropdown_month,
.gfield.gfield--type-date .gfield_date_dropdown_year,
.gfield.gfield--type-date .gfield_date_dropdown_day .ginput_container,
.gfield.gfield--type-date .gfield_date_dropdown_month .ginput_container,
.gfield.gfield--type-date .gfield_date_dropdown_year .ginput_container {
  display: block !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  grid: none !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Address Fields */
.gfield.gfield--type-address .ginput_complex,
.ginput_complex.ginput_container_address {
  display: grid !important;
  gap: 16px !important;
  grid-template-columns: 1fr 1fr !important;
  /* Full width fields */
  /* Left column */
  /* Right column */
  /* Sub-labels for address fields */
}
.gfield.gfield--type-address .ginput_complex .ginput_full,
.gfield.gfield--type-address .ginput_complex .address_line_1,
.gfield.gfield--type-address .ginput_complex .address_line_2,
.ginput_complex.ginput_container_address .ginput_full,
.ginput_complex.ginput_container_address .address_line_1,
.ginput_complex.ginput_container_address .address_line_2 {
  grid-column: 1/-1 !important;
}
.gfield.gfield--type-address .ginput_complex .ginput_left,
.gfield.gfield--type-address .ginput_complex .address_city,
.gfield.gfield--type-address .ginput_complex .address_zip,
.ginput_complex.ginput_container_address .ginput_left,
.ginput_complex.ginput_container_address .address_city,
.ginput_complex.ginput_container_address .address_zip {
  grid-column: 1 !important;
}
.gfield.gfield--type-address .ginput_complex .ginput_right,
.gfield.gfield--type-address .ginput_complex .address_state,
.gfield.gfield--type-address .ginput_complex .address_country,
.ginput_complex.ginput_container_address .ginput_right,
.ginput_complex.ginput_container_address .address_state,
.ginput_complex.ginput_container_address .address_country {
  grid-column: 2 !important;
}
.gfield.gfield--type-address .ginput_complex span,
.ginput_complex.ginput_container_address span {
  display: block !important;
  font-size: 14px !important;
  color: #6b7280 !important;
  margin-bottom: 6px !important;
  font-weight: 500 !important;
}

/* Radio Button Styling */
.gfield_radio {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
.gfield_radio .gchoice {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
}
.gfield_radio .gchoice input[type=radio] {
  width: 20px !important;
  height: 20px !important;
  margin-right: 12px !important;
  accent-color: #3b82f6 !important;
}
.gfield_radio .gchoice label {
  font-size: 16px !important;
  color: #374151 !important;
  margin: 0 !important;
  cursor: pointer !important;
  line-height: 1.5 !important;
}

/* Checkbox Styling */
.gfield_checkbox {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
.gfield_checkbox .gchoice {
  display: flex !important;
  align-items: flex-start !important;
  margin: 0 !important;
}
.gfield_checkbox .gchoice input[type=checkbox] {
  width: 20px !important;
  height: 20px !important;
  margin-right: 12px !important;
  margin-top: 2px !important;
  accent-color: #3b82f6 !important;
}
.gfield_checkbox .gchoice label {
  font-size: 16px !important;
  color: #374151 !important;
  margin: 0 !important;
  cursor: pointer !important;
  line-height: 1.5 !important;
}

/* Section Headers */
.gsection {
  grid-column: 1/-1 !important;
  margin: 32px 0 24px 0 !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #e5e7eb !important;
}
.gsection .gsection_title {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #111827 !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}
.gsection .gsection_description {
  font-size: 14px !important;
  color: #6b7280 !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

/* Field Descriptions */
.gfield_description {
  font-size: 14px !important;
  color: #6b7280 !important;
  margin-top: 6px !important;
  line-height: 1.5 !important;
}

/* Validation Messages */
.gfield_error .gfield_label {
  color: #dc2626 !important;
}
.gfield_error input,
.gfield_error textarea,
.gfield_error select {
  border-color: #dc2626 !important;
}
.gfield_error input:focus,
.gfield_error textarea:focus,
.gfield_error select:focus {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1) !important;
}

.validation_error,
.gfield_validation_message {
  color: #dc2626 !important;
  font-size: 14px !important;
  margin-top: 6px !important;
  font-weight: 500 !important;
}

/* Submit Button */
.gform_footer {
  margin-top: 32px !important;
  padding: 0 !important;
}
.gform_footer .gform_button,
.gform_footer input[type=submit] {
  background-color: #3b82f6 !important;
  color: white !important;
  border: none !important;
  padding: 14px 32px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
}
.gform_footer .gform_button:hover,
.gform_footer input[type=submit]:hover {
  background-color: #2563eb !important;
}
.gform_footer .gform_button:focus,
.gform_footer input[type=submit]:focus {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.3) !important;
}
.gform_footer .gform_button:disabled,
.gform_footer input[type=submit]:disabled {
  background-color: #9ca3af !important;
  cursor: not-allowed !important;
}

/* File Upload Fields */
.ginput_container_fileupload input[type=file] {
  padding: 12px !important;
  border: 2px dashed #d1d5db !important;
  border-radius: 8px !important;
  background-color: #f9fafb !important;
}
.ginput_container_fileupload input[type=file]:hover {
  border-color: #9ca3af !important;
  background-color: #f3f4f6 !important;
}

/* Hidden Fields */
.gfield.gfield_visibility_hidden {
  display: none !important;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .gform_fields {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .gfield {
    grid-column: 1 !important;
  }
  .ginput_complex.ginput_complex_name, .ginput_complex.ginput_complex_email {
    grid-template-columns: 1fr !important;
  }
  .ginput_complex.ginput_container_address {
    grid-template-columns: 1fr !important;
  }
  .ginput_complex.ginput_container_address .ginput_left,
  .ginput_complex.ginput_container_address .ginput_right,
  .ginput_complex.ginput_container_address .address_city,
  .ginput_complex.ginput_container_address .address_state,
  .ginput_complex.ginput_container_address .address_country,
  .ginput_complex.ginput_container_address .address_zip {
    grid-column: 1 !important;
  }
}
/* Page Break Styling - inherits grid layout from parent */
/* Progress Bar */
.gf_progressbar_wrapper {
  margin-bottom: 32px !important;
}
.gf_progressbar_wrapper .gf_progressbar {
  background-color: #e5e7eb !important;
  border-radius: 8px !important;
  height: 8px !important;
  overflow: hidden !important;
}
.gf_progressbar_wrapper .gf_progressbar .gf_progressbar_percentage {
  background-color: #3b82f6 !important;
  height: 100% !important;
  transition: width 0.3s ease !important;
}
.gf_progressbar_wrapper .gf_progressbar_title {
  font-size: 14px !important;
  color: #6b7280 !important;
  text-align: center !important;
  margin-top: 8px !important;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/* Hide default WooCommerce cart messages */
.woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-message,
.wc-block-components-notice-banner.is-success,
.entry-content .woocommerce-message,
div.woocommerce-message[role=alert],
.woocommerce-info,
.updated.woocommerce-message,
.woocommerce .woocommerce-message,
body.woocommerce .woocommerce-message,
.single-product .woocommerce-message,
.woocommerce-page .woocommerce-message {
  display: none !important;
}

/* Hide the specific "View cart" link that appears after adding to cart */
.added_to_cart,
a.added_to_cart,
.woocommerce-message .wc-forward,
.woocommerce-message a.wc-forward,
.product-actions .wc-forward,
a[href*="/cart/"][title*="View cart"],
a[href*="/cart/"]:contains("View cart"),
.product-actions .added_to_cart,
li .added_to_cart {
  display: none !important;
}

/* Ensure checkout button is always visible */
.wc-proceed-to-checkout,
.wc-proceed-to-checkout .checkout-button,
.checkout-button.wc-forward {
  display: block !important;
}

/* Also hide any messages containing cart-related text */
[class*=woocommerce][class*=message]:has-text("added"),
[class*=woocommerce][class*=message]:has-text("cart"),
[class*=notice]:has-text("View cart") {
  display: none !important;
}

/* Cart Popup Styles */
.cart-popup {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.cart-popup--visible {
  opacity: 1;
  visibility: visible;
}
.cart-popup__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(2px);
}
.cart-popup__content {
  position: relative;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  max-width: 500px;
  width: 90%;
  max-height: 90vh;
  overflow: hidden;
  animation: popupSlideUp 0.3s ease;
}
.cart-popup__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 25px 30px 20px;
  border-bottom: 1px solid #f0f0f0;
  background: linear-gradient(135deg, #8ce382 0%, #7bc971 100%);
  color: #fff;
}
.cart-popup__title {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: #fff;
}
.cart-popup__close {
  background: none;
  border: none;
  font-size: 28px;
  color: #fff;
  cursor: pointer;
  padding: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background 0.2s ease;
}
.cart-popup__close:hover {
  background: rgba(255, 255, 255, 0.1);
}
.cart-popup__body {
  padding: 30px;
}
.cart-popup__product {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 25px;
}
.cart-popup__product-image {
  flex: 0 0 80px;
}
.cart-popup__product-image img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #f0f0f0;
}
.cart-popup__product-details {
  flex: 1;
}
.cart-popup__product-name {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 600;
  color: #333;
  line-height: 1.3;
}
.cart-popup__product-price {
  margin: 0 0 5px;
  font-size: 16px;
  font-weight: 600;
  color: #8ce382;
}
.cart-popup__quantity {
  margin: 0;
  font-size: 14px;
  color: #666;
}
.cart-popup__summary {
  padding: 20px 0;
  border-top: 1px solid #f0f0f0;
  border-bottom: 1px solid #f0f0f0;
  margin-bottom: 25px;
}
.cart-popup__cart-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.cart-popup__cart-count {
  font-size: 14px;
  color: #666;
}
.cart-popup__cart-total {
  font-size: 16px;
  font-weight: 600;
  color: #333;
}
.cart-popup__footer {
  display: flex;
  justify-content: center;
  padding: 0 30px 30px;
}
.cart-popup__view-cart {
  padding: 14px 40px;
  background: linear-gradient(135deg, #8ce382 0%, #7bc971 100%);
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 160px;
}
.cart-popup__view-cart:hover {
  background: linear-gradient(135deg, #7bc971 0%, #6bb863 100%);
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(139, 227, 130, 0.3);
}

/* Body lock when popup is open */
.cart-popup-open {
  overflow: hidden;
}

/* Animation keyframes */
@keyframes popupSlideUp {
  from {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
/* Success checkmark animation for added state */
.cart-popup__success-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #8ce382;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  flex-shrink: 0;
}
.cart-popup__success-icon::after {
  content: "✓";
  color: #fff;
  font-size: 14px;
  font-weight: bold;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .cart-popup__content {
    width: 95%;
    margin: 20px;
  }
  .cart-popup__header, .cart-popup__footer {
    padding-left: 20px;
    padding-right: 20px;
  }
  .cart-popup__body {
    padding: 20px;
  }
  .cart-popup__product {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
  }
  .cart-popup__product-image {
    flex: none;
  }
  .cart-popup__view-cart {
    min-width: auto;
    width: 100%;
    max-width: 280px;
  }
}
@media (max-width: 480px) {
  .cart-popup__content {
    width: 100%;
    margin: 10px;
    border-radius: 8px;
  }
  .cart-popup__title {
    font-size: 18px;
  }
  .cart-popup__product-name {
    font-size: 16px;
  }
}
/* Product Quantity Controls */
.quantity-enhanced .quantity-controls {
  display: flex;
  align-items: stretch;
  border: 1px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
  width: fit-content;
  max-width: 150px;
}
.quantity-enhanced .quantity-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 44px;
  background: #f8f8f8;
  border: none;
  color: #666;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
}
.quantity-enhanced .quantity-btn:hover:not(.disabled) {
  background: #8ce382;
  color: #fff;
}
.quantity-enhanced .quantity-btn:active:not(.disabled) {
  background: #7bc971;
  transform: scale(0.95);
}
.quantity-enhanced .quantity-btn.disabled {
  background: #f0f0f0;
  color: #ccc;
  cursor: not-allowed;
}
.quantity-enhanced .quantity-btn.quantity-minus {
  border-right: 1px solid #e0e0e0;
}
.quantity-enhanced .quantity-btn.quantity-plus {
  border-left: 1px solid #e0e0e0;
}
.quantity-enhanced .quantity-input-wrapper {
  flex: 1;
  display: flex;
  align-items: center;
}
.quantity-enhanced .quantity-input-wrapper input {
  width: 100%;
  border: none;
  outline: none;
  text-align: center;
  padding: 12px 8px;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  background: #fff;
  min-width: 60px;
}
.quantity-enhanced .quantity-input-wrapper input::-webkit-outer-spin-button, .quantity-enhanced .quantity-input-wrapper input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.quantity-enhanced .quantity-input-wrapper input[type=number] {
  -moz-appearance: textfield;
}
.quantity-enhanced .quantity-input-wrapper input:focus {
  background: #fafafa;
}

/* Single Product Page Specific Styling */
.single-product .quantity-enhanced {
  margin: 15px 0;
}
.single-product .quantity-enhanced .quantity-controls {
  max-width: 140px;
}
.single-product .quantity-enhanced .quantity-btn {
  width: 36px;
  height: 40px;
  font-size: 16px;
}
.single-product .quantity-enhanced .quantity-input-wrapper input {
  padding: 10px 6px;
  font-size: 13px;
  min-width: 50px;
}
.single-product .cart .quantity-enhanced {
  display: inline-block;
  margin-right: 15px;
  vertical-align: top;
}
.single-product .cart .single_add_to_cart_button {
  height: 40px;
  padding: 10px 20px;
  vertical-align: top;
}

/* Cart Page Quantity Controls */
.woocommerce-cart .quantity-enhanced .quantity-controls {
  max-width: 120px;
}
.woocommerce-cart .quantity-enhanced .quantity-btn {
  width: 32px;
  height: 36px;
  font-size: 14px;
}
.woocommerce-cart .quantity-enhanced .quantity-input-wrapper input {
  padding: 8px 6px;
  font-size: 12px;
  min-width: 45px;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .quantity-enhanced .quantity-controls {
    max-width: 130px;
  }
  .quantity-enhanced .quantity-btn {
    width: 35px;
    height: 38px;
    font-size: 15px;
  }
  .quantity-enhanced .quantity-input-wrapper input {
    padding: 9px 6px;
    min-width: 50px;
  }
  .single-product .cart .quantity-enhanced {
    margin-bottom: 10px;
    margin-right: 0;
    display: block;
  }
  .single-product .cart .single_add_to_cart_button {
    width: 100%;
    margin-top: 10px;
  }
}
@media (max-width: 480px) {
  .quantity-enhanced .quantity-controls {
    max-width: 120px;
  }
  .quantity-enhanced .quantity-btn {
    width: 32px;
    height: 36px;
    font-size: 14px;
  }
  .quantity-enhanced .quantity-input-wrapper input {
    padding: 8px 5px;
    min-width: 45px;
    font-size: 12px;
  }
}
/* ==================================================
   SHOP ARCHIVE / PRODUCT LISTING STYLES
   ================================================== */
/* Shop Hero Section */
body.woocommerce-shop-page .shop-hero,
.woocommerce .shop-hero,
.shop-hero {
  background: #423063 !important;
  color: #fff !important;
  padding: 60px 0 45px !important;
  text-align: center !important;
  position: relative !important;
  margin: 0 !important;
}
body.woocommerce-shop-page .shop-hero::after,
.woocommerce .shop-hero::after,
.shop-hero::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 22.5px;
  background: url("../images/wave-pattern.svg") repeat-x bottom;
  background-size: auto 22.5px;
}
body.woocommerce-shop-page .shop-hero__content,
.woocommerce .shop-hero__content,
.shop-hero__content {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 5%;
}
body.woocommerce-shop-page .shop-hero__title,
.woocommerce .shop-hero__title,
.shop-hero__title {
  font-size: 36px;
  margin: 0 0 11.25px;
  line-height: 1.2;
}
@media (max-width: 768px) {
  body.woocommerce-shop-page .shop-hero__title,
  .woocommerce .shop-hero__title,
  .shop-hero__title {
    font-size: 27px;
  }
}
@media (max-width: 480px) {
  body.woocommerce-shop-page .shop-hero__title,
  .woocommerce .shop-hero__title,
  .shop-hero__title {
    font-size: 21px;
  }
}
body.woocommerce-shop-page .shop-hero__description,
.woocommerce .shop-hero__description,
.shop-hero__description {
  font-size: 13.5px;
  margin-bottom: 0;
  opacity: 0.95;
  line-height: 1.5;
  color: #fff;
}
@media (max-width: 480px) {
  body.woocommerce-shop-page .shop-hero__description,
  .woocommerce .shop-hero__description,
  .shop-hero__description {
    font-size: 12px;
  }
}

/* Shop Main Container */
body.woocommerce-shop-page .shop-main,
.woocommerce .shop-main,
.shop-main {
  padding: 45px 0 !important;
  background-color: #fafafa !important;
  display: block !important;
}

body.woocommerce-shop-page .shop-container,
.woocommerce .shop-container,
.shop-container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 5% !important;
}

/* Shop Toolbar */
.shop-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
  padding: 15px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
@media (max-width: 480px) {
  .shop-toolbar {
    flex-direction: column;
    gap: 11.25px;
    text-align: center;
  }
}
.shop-toolbar__results .woocommerce-result-count {
  color: #666;
  font-size: 10.5px;
  margin: 0;
}
.shop-toolbar__ordering .woocommerce-ordering select {
  padding: 6px 9px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 10.5px;
  background-color: #fff;
  color: #333;
  cursor: pointer;
  transition: border-color 0.3s ease;
}
.shop-toolbar__ordering .woocommerce-ordering select:hover, .shop-toolbar__ordering .woocommerce-ordering select:focus {
  border-color: #8fd6f5;
  outline: none;
}

/* Shop Products Area */
.shop-products {
  width: 100%;
}

/* Shop Sidebar */
.shop-sidebar {
  position: sticky;
  top: 22.5px;
}
@media (max-width: 768px) {
  .shop-sidebar {
    position: static;
    order: 2;
  }
}
.shop-sidebar__inner {
  background: #fff;
  border-radius: 15px;
  padding: 22.5px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}
.shop-sidebar__title {
  font-size: 18px;
  margin: 0 0 18.75px;
  color: #333;
  padding-bottom: 11.25px;
  border-bottom: 3px solid #8ce382;
}

/* Shop Widgets */
.shop-widget {
  margin-bottom: 26.25px;
}
.shop-widget:last-child {
  margin-bottom: 0;
}
.shop-widget__title {
  font-size: 13.5px;
  margin: 0 0 11.25px;
  color: #333;
  padding-bottom: 6px;
  border-bottom: 2px solid #f0f0f0;
}
.shop-widget__content .product-categories {
  list-style: none;
  padding: 0;
  margin: 0;
}
.shop-widget__content .product-categories li {
  margin-bottom: 6px;
}
.shop-widget__content .product-categories li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 9px;
  color: #555;
  text-decoration: none;
  border-radius: 5px;
  border-left: 3px solid transparent;
  transition: all 0.3s ease;
  font-size: 10.5px;
}
.shop-widget__content .product-categories li a:hover {
  background-color: #f8f9fa;
  border-left-color: #a36694;
  color: #a36694;
  transform: translateX(3px);
}
.shop-widget__content .product-categories li a .count {
  background: #e9ecef;
  color: #666;
  padding: 1.5px 4.5px;
  border-radius: 12px;
  font-size: 9px;
  min-width: 20px;
  text-align: center;
}
.shop-widget__content .product-categories li.current-cat > a {
  background-color: #a36694;
  color: #fff;
  border-left-color: #a36694;
}
.shop-widget__content .product-categories li.current-cat > a .count {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}
.shop-widget__content .product-categories li .children {
  padding-left: 11.25px;
  margin-top: 3.75px;
}
.shop-widget__content .product-categories li .children a {
  font-size: 9.75px;
  padding: 4.5px 7.5px;
}
.shop-widget__content .widget_price_filter .price_slider_wrapper {
  margin: 11.25px 0;
}
.shop-widget__content .widget_price_filter .ui-slider {
  background: #f0f0f0;
  border: none;
  height: 4px;
  border-radius: 2px;
}
.shop-widget__content .widget_price_filter .ui-slider .ui-slider-handle {
  background: #a36694;
  border: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  cursor: pointer;
  outline: none;
}
.shop-widget__content .widget_price_filter .ui-slider .ui-slider-handle:hover {
  background: #8a5580;
}
.shop-widget__content .widget_price_filter .ui-slider .ui-slider-range {
  background: #a36694;
  border-radius: 2px;
}
.shop-widget__content .widget_price_filter .price_slider_amount {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 11.25px;
}
.shop-widget__content .widget_price_filter .price_slider_amount input[type=text] {
  width: 80px;
  padding: 3.75px 6px;
  border: 1px solid #ddd;
  border-radius: 3px;
  font-size: 9px;
}
.shop-widget__content .widget_price_filter .price_slider_amount .button {
  background: #8ce382;
  color: #fff;
  padding: 4.5px 9px;
  border: none;
  border-radius: 5px;
  font-size: 9px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.shop-widget__content .widget_price_filter .price_slider_amount .button:hover {
  background: #7bc971;
}
.shop-widget__content .widget_product_search .woocommerce-product-search {
  display: flex;
  gap: 6px;
}
.shop-widget__content .widget_product_search .woocommerce-product-search input[type=search] {
  flex: 1;
  padding: 7.5px 9px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 10.5px;
}
.shop-widget__content .widget_product_search .woocommerce-product-search input[type=search]:focus {
  outline: none;
  border-color: #8fd6f5;
}
.shop-widget__content .widget_product_search .woocommerce-product-search button {
  background: #8fd6f5;
  color: #fff;
  border: none;
  padding: 7.5px 11.25px;
  border-radius: 5px;
  cursor: pointer;
  font-size: 10.5px;
  transition: background-color 0.3s ease;
}
.shop-widget__content .widget_product_search .woocommerce-product-search button:hover {
  background: #7bc4e3;
}

/* Products Area */
@media (max-width: 768px) {
  .shop-products {
    order: 1;
  }
}

/* Products Grid */
.products-grid .products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 22.5px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 768px) {
  .products-grid .products {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 18.75px;
  }
}
@media (max-width: 480px) {
  .products-grid .products {
    grid-template-columns: repeat(2, 1fr);
    gap: 11.25px;
  }
}

/* Individual Product Cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
body.woocommerce-shop-page ul.products li.product {
  background: #fff;
  border-radius: 15px;
  overflow: hidden;
  transition: all 0.3s ease;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  border: none;
  margin: 0;
  padding: 0;
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
body.woocommerce-shop-page ul.products li.product:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}
.woocommerce ul.products li.product a,
.woocommerce-page ul.products li.product a,
body.woocommerce-shop-page ul.products li.product a {
  text-decoration: none;
  color: inherit;
  display: block;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link,
body.woocommerce-shop-page ul.products li.product .woocommerce-loop-product__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img,
body.woocommerce-shop-page ul.products li.product img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 1/1;
  transition: transform 0.3s ease;
}
.woocommerce ul.products li.product:hover img,
.woocommerce-page ul.products li.product:hover img,
body.woocommerce-shop-page ul.products li.product:hover img {
  transform: scale(1.05);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-shop-page ul.products li.product .woocommerce-loop-product__title {
  font-size: 12px;
  padding: 11.25px 11.25px 3.75px;
  margin: 0;
  color: #333;
  line-height: 1.4;
  flex-grow: 1;
}
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
body.woocommerce-shop-page ul.products li.product .price {
  padding: 0 11.25px 7.5px;
  color: #a36694;
  font-weight: 700;
  font-size: 13.5px;
  margin: 0;
}
.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del,
body.woocommerce-shop-page ul.products li.product .price del {
  color: #999;
  font-weight: normal;
  font-size: 10.5px;
}
.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins,
body.woocommerce-shop-page ul.products li.product .price ins {
  text-decoration: none;
}
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
body.woocommerce-shop-page ul.products li.product .button {
  margin: 0 11.25px 11.25px;
  background-color: #8ce382;
  color: #fff;
  border: none;
  padding: 9px 11.25px;
  border-radius: 8px;
  text-align: center;
  text-decoration: none;
  display: block;
  font-weight: 600;
  font-size: 10.5px;
  transition: all 0.3s ease;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
body.woocommerce-shop-page ul.products li.product .button:hover {
  background-color: #7bc971;
  transform: translateY(-2px);
}
.woocommerce ul.products li.product .button.loading,
.woocommerce-page ul.products li.product .button.loading,
body.woocommerce-shop-page ul.products li.product .button.loading {
  opacity: 0.7;
  cursor: wait;
}
.woocommerce ul.products li.product .onsale,
.woocommerce-page ul.products li.product .onsale,
body.woocommerce-shop-page ul.products li.product .onsale {
  position: absolute;
  top: 7.5px;
  right: 7.5px;
  background: #ff6b6b;
  color: #fff;
  padding: 3.75px 7.5px;
  border-radius: 15px;
  font-size: 9px;
  font-weight: 600;
  z-index: 1;
}

/* Shop Pagination */
.shop-pagination {
  margin-top: 37.5px;
  text-align: center;
}
.shop-pagination .woocommerce-pagination .page-numbers {
  display: inline-flex;
  gap: 6px;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0;
}
.shop-pagination .woocommerce-pagination .page-numbers a,
.shop-pagination .woocommerce-pagination .page-numbers span {
  display: inline-block;
  padding: 7.5px 11.25px;
  background: #fff;
  color: #555;
  border: 1px solid #ddd;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 500;
  font-size: 10.5px;
  transition: all 0.3s ease;
  min-width: 45px;
  text-align: center;
}
.shop-pagination .woocommerce-pagination .page-numbers a:hover,
.shop-pagination .woocommerce-pagination .page-numbers span:hover {
  background: #8fd6f5;
  color: #fff;
  border-color: #8fd6f5;
  transform: translateY(-2px);
}
.shop-pagination .woocommerce-pagination .page-numbers a.current,
.shop-pagination .woocommerce-pagination .page-numbers span.current {
  background: #a36694;
  color: #fff;
  border-color: #a36694;
  font-weight: 600;
}
.shop-pagination .woocommerce-pagination .page-numbers a.prev, .shop-pagination .woocommerce-pagination .page-numbers a.next,
.shop-pagination .woocommerce-pagination .page-numbers span.prev,
.shop-pagination .woocommerce-pagination .page-numbers span.next {
  font-weight: 600;
  padding: 7.5px 15px;
}

/* No Products Found */
.shop-no-products {
  text-align: center;
  padding: 60px 15px;
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}
.shop-no-products__content {
  max-width: 500px;
  margin: 0 auto;
}
.shop-no-products__icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 22.5px;
  opacity: 0.3;
}
.shop-no-products__icon svg {
  width: 100%;
  height: 100%;
  fill: #a36694;
}
.shop-no-products h2 {
  font-size: 21px;
  margin: 0 0 11.25px;
  color: #333;
}
.shop-no-products p {
  font-size: 12px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 22.5px;
}
.shop-no-products .btn {
  display: inline-block;
  padding: 11.25px 22.5px;
  background: #8fd6f5;
  color: #fff;
  text-decoration: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 12px;
  transition: all 0.3s ease;
}
.shop-no-products .btn:hover {
  background: #7bc4e3;
  transform: translateY(-2px);
}
.shop-no-products .btn--primary {
  background: #a36694;
}
.shop-no-products .btn--primary:hover {
  background: #8a5580;
}

/* Loading States */
.woocommerce-products-loading .products-grid {
  opacity: 0.6;
  pointer-events: none;
}

/* Mobile Optimizations */
@media (max-width: 480px) {
  .shop-hero {
    padding: 37.5px 0 30px;
  }
  .shop-main {
    padding: 30px 0;
  }
  .shop-container {
    padding: 0 4%;
  }
  .shop-sidebar__inner {
    padding: 15px;
  }
  .shop-widget {
    margin-bottom: 18.75px;
  }
  .shop-widget__content .product-categories li a {
    padding: 4.5px 7.5px;
    font-size: 9.75px;
  }
}
/* --- General My Account Layout --- */
/* --- Sidebar Navigation --- */
.woocommerce-MyAccount-navigation {
  flex: 1;
  border-radius: 10px;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.woocommerce-MyAccount-navigation li {
  width: 100%;
}

.woocommerce-MyAccount-navigation a {
  display: block;
  text-decoration: none;
  padding: 16px;
  color: #333;
  font-size: 16px;
  font-weight: 600;
  font-family: "p22-mackinac-pro", serif;
  transition: background 0.3s ease, color 0.3s ease;
  border-bottom: 1px dashed #423163;
}

.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation .is-active a {
  color: #fff;
  background: #a17de5;
}

/* --- Content Section --- */
.woocommerce-MyAccount-content {
  flex: 3;
  background: #fff;
  padding: 25px;
  border-radius: 10px;
}

/* --- Account Headers --- */
.woocommerce-MyAccount-content h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 15px;
}

/* --- Orders & Downloads Table --- */
.woocommerce-MyAccount-content table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 15px;
}

.woocommerce-MyAccount-content th,
.woocommerce-MyAccount-content td {
  padding: 12px;
  border-bottom: 1px solid #ddd;
  text-align: left;
}

.woocommerce-MyAccount-content th {
  font-weight: 600;
  background: #f4f4f4;
}

/* --- Order & Download Buttons --- */
.woocommerce-MyAccount-content .button {
  display: inline-block;
  padding: 10px 15px;
  background: #007bff;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 5px;
  text-decoration: none;
  transition: background 0.3s ease;
}

.woocommerce-MyAccount-content .button:hover {
  background: #0056b3;
}

/* --- Address Section --- */
.woocommerce-Addresses {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.woocommerce-Address {
  flex: 1;
  background: #f9f9f9;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.05);
  min-width: 45%;
}

.woocommerce-Address-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.woocommerce-Address .edit {
  display: inline-block;
  text-decoration: none;
  color: #007bff;
  font-weight: bold;
  transition: color 0.3s ease;
}

.woocommerce-Address .edit:hover {
  color: #0056b3;
}

/* --- Logout Button --- */
.woocommerce-MyAccount-content .woocommerce-Button.button.logout {
  background: #dc3545;
  color: white;
}

.woocommerce-MyAccount-content .woocommerce-Button.button.logout:hover {
  background: #c82333;
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
  .woocommerce-account {
    flex-direction: column;
  }
  .woocommerce-MyAccount-navigation {
    flex: 1;
  }
  .woocommerce-MyAccount-content {
    flex: 1;
  }
  .woocommerce-Addresses {
    flex-direction: column;
  }
  .woocommerce-Address {
    min-width: 100%;
  }
}
/* --- Edit Account Form Container --- */
.woocommerce-EditAccountForm {
  margin: 0 auto;
  background: #fff;
  padding: 30px;
  border-radius: 10px;
}

/* --- Form Fields --- */
.woocommerce-EditAccountForm label {
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
  color: #333;
}

.woocommerce-EditAccountForm input[type=text],
.woocommerce-EditAccountForm input[type=email],
.woocommerce-EditAccountForm input[type=password] {
  width: 100%;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 16px;
  background: #f9f9f9;
  transition: 0.3s;
}

.woocommerce-EditAccountForm input:focus {
  border-color: #007bff;
  background: #fff;
  outline: none;
}

/* --- Form Row Layout --- */
.woocommerce-form-row {
  margin-bottom: 20px;
}

/* --- Display Name & Email Section --- */
#account_display_name_description {
  font-size: 14px;
  color: #777;
  display: block;
  margin-top: 5px;
}

/* --- Password Fieldset --- */
.woocommerce-EditAccountForm fieldset {
  margin-top: 30px;
  padding: 20px;
  background: #f9f9f9;
  border-radius: 8px;
  border: 1px solid #ddd;
}

.woocommerce-EditAccountForm legend {
  font-size: 18px;
  font-weight: bold;
  color: #333;
}

/* --- Password Input Fields with Toggle Button --- */
.password-input {
  position: relative;
}

.password-input input {
  width: 100%;
  padding-right: 40px;
}

.show-password-input {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  cursor: pointer;
  color: #777;
}

.show-password-input:hover {
  color: #007bff;
}

/* --- Save Changes Button --- */
.woocommerce-EditAccountForm .woocommerce-Button {
  display: block;
  width: 100%;
  text-align: center;
  padding: 12px;
  background: #007bff;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 5px;
  transition: background 0.3s ease;
  border: none;
  cursor: pointer;
}

.woocommerce-EditAccountForm .woocommerce-Button:hover {
  background: #0056b3;
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
  .woocommerce-EditAccountForm {
    padding: 20px;
  }
  .woocommerce-form-row {
    flex-direction: column;
  }
}
/* --- Address Form Container --- */
.woocommerce-address-fields {
  margin: 0 auto;
  background: #fff;
  padding: 30px;
  border-radius: 10px;
}

/* --- Form Header Titles --- */
.woocommerce-address-fields h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

/* --- Form Fields Layout --- */
.woocommerce-address-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.woocommerce-address-fields__field-wrapper .form-row {
  display: flex;
  flex-direction: column;
}

/* --- Full-Width Fields (City, County, Postcode, Email, etc.) --- */
.woocommerce-address-fields__field-wrapper .form-row-wide {
  grid-column: span 2;
}

/* --- Labels Styling --- */
.woocommerce-address-fields label {
  font-weight: bold;
  margin-bottom: 5px;
  color: #333;
}

/* --- Input & Select Field Styling --- */
.woocommerce-address-fields input[type=text],
.woocommerce-address-fields input[type=email],
.woocommerce-address-fields input[type=tel],
.woocommerce-address-fields select {
  width: 100%;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 16px;
  background: #f9f9f9;
  transition: 0.3s;
}

.woocommerce-address-fields input:focus,
.woocommerce-address-fields select:focus {
  border-color: #007bff;
  background: #fff;
  outline: none;
}

/* --- Country Dropdown Styling --- */
.woocommerce-address-fields .country_to_state {
  appearance: none;
  background: #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="18" height="18" fill="black"><path d="M7 10l5 5 5-5H7z"/></svg>') no-repeat right 12px center;
  background-size: 18px;
  padding-right: 40px;
}

/* --- Save Address Button --- */
.woocommerce-address-fields button.button {
  display: block;
  width: 100%;
  padding: 12px;
  background: #007bff;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 5px;
  transition: background 0.3s ease;
  border: none;
  cursor: pointer;
  margin-top: 20px;
}

.woocommerce-address-fields button.button:hover {
  background: #0056b3;
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
  .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr;
  }
}
.woocommerce form .form-row {
  width: 100%;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/* gubiyno */
.p-5 {
  padding: 5% !important;
}

.p-8 {
  padding: 8% !important;
}

.p-125 {
  padding: 12.5% !important;
}

.pt-5 {
  padding-top: 5%;
}

.pt-8 {
  padding-top: 8%;
}

.pt-125 {
  padding-top: 12.5%;
}

.pb-5 {
  padding-bottom: 5%;
}

.pb-8 {
  padding-bottom: 8%;
}

.pb-125 {
  padding-bottom: 12.5%;
}

.pr-5 {
  padding-right: 5%;
}

.pr-8 {
  padding-right: 8%;
}

.pr-125 {
  padding-right: 12.5%;
}

.pl-5 {
  padding-left: 5%;
}

.pl-8 {
  padding-left: 8%;
}

.pl-125 {
  padding-left: 12.5%;
}

.py-5 {
  padding-top: 5%;
  padding-bottom: 5%;
}

.py-8 {
  padding-top: 8%;
  padding-bottom: 8%;
}

.py-125 {
  padding-top: 12.5%;
  padding-bottom: 12.5%;
}

.px-5 {
  padding-left: 5%;
  padding-right: 5%;
}

.px-8 {
  padding-left: 8%;
  padding-right: 8%;
}

.px-125 {
  padding-left: 12.5%;
  padding-right: 12.5%;
}

.pr {
  padding-right: 8%;
}

.pt {
  padding-top: 8%;
}
.pt p {
  margin-top: 0;
}

.vertical-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Hero
--------------------------------------------- */
html :where(.wp-block) {
  max-width: 100% !important;
}

/* Global Gravity Forms Required Field Styling */
body span.gfield_required span.gfield_required_text,
body .gfield_required_text,
span.gfield_required.gfield_required_text {
  display: none !important;
  visibility: hidden !important;
}

/* Override Gravity Forms theme framework red color with high specificity */
.gform-theme--framework .gform-field-label > .gfield_required,
.gform-theme--framework .gform-field-label > .gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
  color: inherit !important;
}

body span.gfield_required:not(.gfield_required_text)::after {
  content: "*";
  color: inherit !important;
  margin-left: 3px;
  font-weight: inherit;
  font-size: inherit;
}
