/* ==========================================================================
   GIAC — Section style library (front end + editor)

   HOW TO USE (no class typing):
     Select a block > right sidebar > Styles > pick a "GIAC …" style.
     Works on Otter Section / Column / Advanced Heading / Button / Icon List,
     core Heading, Paragraph, Group, Separator, List, Image.
   Or insert a ready-made section: Inserter > Patterns > "GIAC Sections".

   PART A  Block styles (is-style-giac-*)       <- new, use these going forward
   PART B  Club Information components           <- moved here from the page's
           HTML blocks, so any page can reuse them (same class names, so the
           existing Club Info markup keeps working unchanged)
   ========================================================================== */

/* ==========================================================================
   PART A — Block styles
   ========================================================================== */

/* ---------- Text ---------- */

.is-style-giac-eyebrow,
.is-style-giac-eyebrow.wp-block-themeisle-blocks-advanced-heading {
	margin: 0 0 16px !important;
	color: var(--giac-gold-warm) !important;
	font-family: var(--giac-sans) !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.35em !important;
	text-transform: uppercase !important;
}

.is-style-giac-display,
.is-style-giac-display.wp-block-themeisle-blocks-advanced-heading {
	margin: 0 !important;
	color: var(--giac-burgundy) !important;
	font-family: var(--giac-serif) !important;
	font-size: clamp(42px, 4.2vw, 68px) !important;
	font-weight: 400 !important;
	line-height: 0.94 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.is-style-giac-title,
.is-style-giac-title.wp-block-themeisle-blocks-advanced-heading {
	margin: 0 !important;
	color: var(--gm-maroon) !important;
	font-family: var(--gm-serif) !important;
	font-size: clamp(34px, 6vw, 62px) !important;
	font-weight: 500 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
}

.is-style-giac-subtitle,
.is-style-giac-subtitle.wp-block-themeisle-blocks-advanced-heading {
	margin: 0 0 12px !important;
	color: var(--giac-burgundy) !important;
	font-family: var(--giac-serif) !important;
	font-size: clamp(30px, 3vw, 44px) !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	text-transform: none !important;
}

.is-style-giac-lede,
.is-style-giac-lede.wp-block-themeisle-blocks-advanced-heading {
	max-width: 660px;
	margin-top: 22px !important;
	color: var(--giac-muted) !important;
	font-family: var(--giac-sans) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.7 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.has-text-align-center.is-style-giac-lede,
.is-style-giac-lede[style*="text-align:center"] {
	margin-left: auto !important;
	margin-right: auto !important;
}

.is-style-giac-note {
	margin: 22px 0 0 !important;
	color: #9b9189 !important;
	font-size: 13px !important;
	font-style: italic !important;
}

@media (max-width: 959px) {
	.is-style-giac-display,
	.is-style-giac-display.wp-block-themeisle-blocks-advanced-heading { font-size: 42px !important; }
	.is-style-giac-lede,
	.is-style-giac-lede.wp-block-themeisle-blocks-advanced-heading { font-size: 14px !important; }
}

/* ---------- Diamond rule (separator) ---------- */

hr.is-style-giac-diamond,
.wp-block-separator.is-style-giac-diamond {
	position: relative;
	display: block;
	width: 164px !important;
	max-width: 100%;
	height: 8px !important;
	margin: 24px auto !important;
	border: 0 !important;
	background:
		linear-gradient(var(--giac-line), var(--giac-line)) left center / 70px 1px no-repeat,
		linear-gradient(var(--giac-line), var(--giac-line)) right center / 70px 1px no-repeat !important;
	opacity: 1 !important;
	overflow: visible;
}

hr.is-style-giac-diamond::after,
.wp-block-separator.is-style-giac-diamond::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	background: var(--giac-gold-warm);
	transform: translate(-50%, -50%) rotate(45deg);
}

hr.is-style-giac-diamond.has-text-align-left,
.is-style-giac-diamond.alignleft { margin-left: 0 !important; }

/* ---------- Surfaces: cards and bands ---------- */

.is-style-giac-card {
	padding: clamp(28px, 4vw, 48px) !important;
	border: 1px solid var(--giac-line) !important;
	border-radius: 16px !important;
	background: var(--giac-paper) !important;
	box-shadow: var(--giac-shadow-soft);
}

.is-style-giac-card-featured {
	padding: clamp(28px, 4vw, 48px) !important;
	border: 1px solid var(--giac-burgundy) !important;
	border-radius: 16px !important;
	background: var(--giac-burgundy) !important;
	color: #fff !important;
}

.is-style-giac-card-featured :is(h1, h2, h3, h4, .wp-block-themeisle-blocks-advanced-heading) {
	color: #fff !important;
}

.is-style-giac-card-featured p {
	color: rgba(255, 255, 255, 0.7) !important;
}

.is-style-giac-card-lifted {
	overflow: hidden;
	border: 1px solid var(--giac-line) !important;
	border-radius: 18px !important;
	background: var(--giac-paper) !important;
	box-shadow: var(--giac-shadow) !important;
}

.is-style-giac-band-paper {
	background: var(--giac-paper) !important;
	border-top: 1px solid rgba(234, 223, 206, 0.7);
	border-bottom: 1px solid rgba(234, 223, 206, 0.7);
}

.is-style-giac-band-cream {
	background: var(--giac-cream-deep) !important;
	border-top: 1px solid var(--giac-line);
}

.is-style-giac-band-maroon {
	background: var(--giac-burgundy) !important;
	color: #fff !important;
}

.is-style-giac-band-maroon :is(h1, h2, h3, .wp-block-themeisle-blocks-advanced-heading) {
	color: #fff !important;
}

.is-style-giac-band-maroon p {
	color: rgba(255, 255, 255, 0.65) !important;
}

/* Section padding + content width, pairs with any band */
.is-style-giac-band-paper,
.is-style-giac-band-cream,
.is-style-giac-band-maroon {
	padding-top: clamp(70px, 9vw, 110px) !important;
	padding-bottom: clamp(70px, 9vw, 110px) !important;
}

.is-style-giac-band-paper > .innerblocks-wrap,
.is-style-giac-band-cream > .innerblocks-wrap,
.is-style-giac-band-maroon > .innerblocks-wrap {
	width: var(--giac-section) !important;
	max-width: var(--giac-section) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ---------- Photo ---------- */

.is-style-giac-photo,
.is-style-giac-photo img {
	overflow: hidden;
	border-radius: 18px !important;
}

.is-style-giac-photo {
	box-shadow: var(--giac-shadow);
}

.is-style-giac-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ---------- Buttons (Otter Button + core Button) ---------- */

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-solid .wp-block-button__link,
:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-outline .wp-block-button__link,
:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-light .wp-block-button__link,
:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-ghost .wp-block-button__link {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-width: 150px;
	padding: 15px 22px !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: 50px !important;
	font-family: var(--giac-sans-light) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	letter-spacing: 1.5px !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, filter 0.25s ease !important;
}

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-solid .wp-block-button__link {
	background: #520717 !important;
	border-color: #520717 !important;
	color: #fff !important;
}

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-solid .wp-block-button__link:hover {
	filter: brightness(0.88);
}

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-outline .wp-block-button__link {
	background: transparent !important;
	border-color: var(--giac-gold) !important;
	color: #520717 !important;
}

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-outline .wp-block-button__link:hover {
	background: rgba(168, 134, 67, 0.1) !important;
}

/* For maroon bands */
:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-light .wp-block-button__link {
	background: #fff !important;
	border-color: #fff !important;
	color: var(--giac-burgundy) !important;
}

:is(.wp-block-themeisle-blocks-button, .wp-block-button).is-style-giac-ghost .wp-block-button__link {
	background: transparent !important;
	border-color: rgba(255, 255, 255, 0.45) !important;
	color: #fff !important;
}

/* ---------- Lists (core List + Otter Icon List) ---------- */

ul.is-style-giac-diamonds,
.wp-block-themeisle-blocks-icon-list.is-style-giac-diamonds {
	display: grid;
	gap: 12px 24px;
	margin: 0;
	padding: 0 !important;
	list-style: none !important;
}

ul.is-style-giac-diamonds > li {
	position: relative;
	margin: 0;
	padding-left: 20px;
	color: var(--giac-ink);
	font-size: 13px;
	line-height: 1.45;
}

ul.is-style-giac-diamonds > li::before {
	content: "◆";
	position: absolute;
	top: 1px;
	left: 0;
	color: var(--giac-gold-warm);
	font-size: 8px;
}

.wp-block-themeisle-blocks-icon-list.is-style-giac-diamonds .wp-block-themeisle-blocks-icon-list-item-icon,
.wp-block-themeisle-blocks-icon-list.is-style-giac-diamonds i {
	display: inline-block !important;
	color: var(--giac-gold-warm) !important;
	font-size: 8px !important;
	transform: rotate(45deg);
	transform-origin: center;
}

@media (min-width: 600px) {
	ul.is-style-giac-diamonds.is-style-giac-diamonds,
	.wp-block-themeisle-blocks-icon-list.is-style-giac-diamonds {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

ul.is-style-giac-rings {
	margin: 32px 0 0;
	padding: 0 !important;
	columns: 2;
	column-gap: 30px;
	list-style: none !important;
}

ul.is-style-giac-rings > li {
	position: relative;
	break-inside: avoid;
	margin: 0 0 14px;
	padding-left: 23px;
	font-size: 13px;
	line-height: 1.4;
}

ul.is-style-giac-rings > li::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 9px;
	height: 9px;
	border: 1px solid var(--giac-gold-warm);
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px var(--giac-cream), inset 0 0 0 5px var(--giac-gold-warm);
}

@media (max-width: 959px) {
	ul.is-style-giac-rings { columns: 1; }
}

/* ---------- Pattern helpers (used by the GIAC Sections patterns) ---------- */

.giac-section-head {
	max-width: 790px;
	margin: 0 auto 64px !important;
	padding: 0 20px;
	text-align: center;
}

.giac-section-head .is-style-giac-lede {
	margin-left: auto !important;
	margin-right: auto !important;
}

.giac-wrap {
	width: var(--giac-section);
	max-width: none !important;
	margin: 0 auto clamp(60px, 8vw, 110px) !important;
}

.giac-wrap > * {
	max-width: none !important;
}

.giac-gap-24 {
	gap: 24px !important;
}

.giac-split {
	gap: 0 !important;
	min-height: 440px;
}

.giac-split > .giac-split__photo {
	align-self: stretch !important;
	min-height: 260px;
}

.giac-split__photo figure,
.giac-split__photo img {
	width: 100%;
	height: 100%;
	margin: 0 !important;
	object-fit: cover;
}

.giac-split > .giac-split__copy {
	padding: clamp(34px, 4.5vw, 58px);
}

.giac-price-card {
	padding: 54px 30px !important;
	text-align: center;
}

.giac-price-card__amount {
	margin: 0 !important;
	color: var(--giac-burgundy);
	font: 58px / 1 var(--giac-serif);
}

.giac-price-card__detail {
	margin: 8px 0 0 !important;
	color: var(--giac-muted);
	font-size: 13px;
}

.giac-price-card__billing {
	margin: 22px 0 0 !important;
	color: var(--giac-burgundy);
	font-size: 14px;
	font-weight: 800;
}

.wp-block-group:is(.is-style-giac-band-paper, .is-style-giac-band-cream, .is-style-giac-band-maroon) {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.giac-cta {
	text-align: center;
}

.giac-cta .is-style-giac-display {
	margin-bottom: 10px !important;
	font-size: clamp(42px, 4vw, 52px) !important;
}

.giac-cta p {
	margin: 0 0 30px;
}

/* Membership-card header outside the memberships block */
.gm-head .gm-eyebrow,
.gm-head .gm-title,
.gm-head .gm-sub {
	text-align: center;
}

@media (max-width: 781px) {
	.giac-split > .giac-split__photo {
		min-height: 260px;
	}
}

/* ==========================================================================
   PART B — Club Information components (reusable on any page)
   ========================================================================== */

body .info-eyebrow {
	margin: 0 0 16px;
	color: var(--gold);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.35em;
	text-transform: uppercase;
}

body .section-head {
	max-width: 790px;
	margin: 0 auto 64px;
	text-align: center;
}

body .section-head h2,
body .editorial-copy h2,
body .sport-copy h2 {
	margin: 0;
	color: var(--burgundy);
	font: clamp(42px, 4.2vw, 68px) / 0.94 Velour, Georgia, serif;
}

body .section-head p:not(.info-eyebrow) {
	max-width: 660px;
	margin: 22px auto 0;
	color: var(--muted);
	font-size: 16px;
	line-height: 1.7;
}

body .diamond {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 24px;
}

body .diamond::before,
body .diamond::after {
	content: "";
	width: 70px;
	height: 1px;
	background: var(--line);
}

body .diamond i {
	width: 8px;
	height: 8px;
	background: var(--gold);
	transform: rotate(45deg);
}

body .list-panel h3 {
	margin: 0 0 24px;
	color: var(--burgundy);
	font: 44px / 1 Velour, Georgia, serif;
}

body .list-panel > p {
	color: var(--muted);
	line-height: 1.7;
}

body .check-list {
	margin: 32px 0 0;
	padding: 0;
	columns: 2;
	column-gap: 30px;
	list-style: none;
}

body .check-list li {
	position: relative;
	break-inside: avoid;
	margin: 0 0 14px;
	padding-left: 23px;
	font-size: 13px;
	line-height: 1.4;
}

body .check-list li::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 9px;
	height: 9px;
	border: 1px solid var(--gold);
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px var(--cream), inset 0 0 0 5px var(--gold);
}

/* Program cards (first card is the maroon "featured" one) */
body .programs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

body .program-card {
	padding: 48px;
	border: 1px solid var(--line);
	border-radius: 16px;
	background: var(--paper);
}

body .program-card:first-child {
	border-color: var(--burgundy);
	background: var(--burgundy);
	color: #fff;
}

body .program-card h3 {
	margin: 0 0 12px;
	color: var(--burgundy);
	font: 40px / 1 Velour, Georgia, serif;
}

body .program-card:first-child h3 {
	color: #fff;
}

body .program-card > p {
	margin: 0 0 28px;
	color: var(--muted);
	line-height: 1.6;
}

body .program-card:first-child > p {
	color: rgba(255, 255, 255, 0.7);
}

body .program-card ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body .program-card li {
	position: relative;
	padding-left: 20px;
	font-size: 13px;
}

body .program-card li::before {
	content: "◆";
	position: absolute;
	top: 1px;
	left: 0;
	color: var(--gold);
	font-size: 8px;
}

/* Sport feature (photo + copy card) */
body .sports-band {
	padding: 110px 0;
}

body .sport-wrap {
	width: var(--section);
	margin: 0 auto;
}

body .sport-hero {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	min-height: 440px;
	overflow: hidden;
	border-radius: 18px;
	background: var(--paper);
	box-shadow: var(--shadow);
}

body .sport-hero.reverse {
	grid-template-columns: 1.1fr 0.9fr;
}

body .sport-hero.reverse .sport-photo {
	order: 2;
}

body .sport-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

body .sport-copy {
	align-self: center;
	padding: 58px;
}

body .sport-copy p:not(.info-eyebrow) {
	color: var(--muted);
	line-height: 1.68;
}

body .sport-note {
	margin: 22px 0 0;
	color: #9b9189;
	font-size: 13px;
	font-style: italic;
}

/* Pricing layout (copy + stacked price cards) */
body .pricing-layout {
	display: grid;
	grid-template-columns: 0.72fr 1.28fr;
	gap: 60px;
	align-items: start;
	margin-top: 54px;
}

body .price-stack {
	display: grid;
	gap: 24px;
}

body .price-card {
	overflow: hidden;
	border: 1px solid var(--line);
	border-radius: 14px;
	background: var(--paper);
	box-shadow: var(--giac-shadow-sm);
}

body .price-card h3 {
	margin: 0;
	padding: 17px 22px;
	color: var(--navy);
	background: #edf0f2;
	font-size: 19px;
}

body .pickleball-section .price-card h3 {
	color: #9b641f;
	background: #f7efe5;
}

body .tennis-section .price-card h3 {
	color: #6d7b1d;
	background: #f3f3df;
}

body .pickleball-section {
	background: linear-gradient(180deg, #f8f5ef 0%, #fbfaf6 100%);
}

body .tennis-section {
	background: var(--paper);
}

/* Teams + fee sections (Otter Section adaptations) */
body .teams-section {
	width: var(--section);
	margin: 0 auto;
	padding: 110px 0 !important;
}

body .teams-section > .innerblocks-wrap {
	display: grid !important;
	grid-template-columns: 1.1fr 0.9fr !important;
	gap: 70px;
	align-items: center;
	max-width: none !important;
	margin: 0 !important;
}

body .teams-photo-col {
	height: 500px;
	overflow: hidden;
	border-radius: 18px;
}

body .teams-photo-col figure,
body .teams-photo-col img {
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

body .teams-copy-col h2,
body .fee-copy-col h2 {
	margin: 0;
	color: var(--burgundy);
	font: 56px / 0.96 Velour, Georgia, serif;
}

body .teams-body,
body .fee-intro {
	margin: 20px 0 0;
	color: var(--muted);
	font-size: 16px;
	line-height: 1.75;
}

body .fee-band {
	background: var(--cream-deep);
	border-top: 1px solid var(--line);
}

body .fee-section {
	width: 100%;
	padding: 0 !important;
	justify-content: center !important;
}

body .fee-section > .innerblocks-wrap {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 420px !important;
	gap: 80px;
	align-items: center;
	width: var(--section) !important;
	max-width: var(--section) !important;
	flex: 0 0 var(--section) !important;
	margin: 0 auto !important;
	padding: 110px 0 !important;
}

body .fee-copy-col h2 {
	font-size: 54px;
}

body .fee-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 28px;
	margin-top: 24px;
}

body .fee-card {
	padding: 54px 30px;
	border: 1px solid #dfc8aa;
	border-radius: 14px;
	background: var(--paper);
	box-shadow: var(--shadow);
	text-align: center;
}

body .fee-card-price {
	margin: 0;
	color: var(--burgundy);
	font: 58px / 1 Velour, Georgia, serif;
}

body .fee-card-detail {
	margin: 8px 0 0;
	color: var(--muted);
	font-size: 13px;
}

body .fee-card-billing {
	margin: 22px 0 0;
	color: var(--burgundy);
	font-size: 14px;
	font-weight: 800;
}

/* Maroon call-to-action band */
body .cta-section {
	width: 100%;
	padding: 78px 20px !important;
	justify-content: center !important;
	background: var(--burgundy);
	color: #fff;
	text-align: center;
}

body .cta-section h2 {
	margin: 0 0 10px;
	font: 400 52px / 1 Velour, Georgia, serif;
	text-align: center !important;
}

body .cta-section p {
	margin: 0 0 30px;
	color: rgba(255, 255, 255, 0.65);
}

body .cta-section > .innerblocks-wrap {
	width: min(800px, calc(100% - 40px)) !important;
	max-width: 800px !important;
	flex: 0 1 800px !important;
	margin: 0 auto !important;
}

body .cta-col {
	width: 100%;
	text-align: center;
}

body .cta-section .cta-copy {
	text-align: center !important;
}

body .cta-buttons {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 14px;
}

body .cta-button-wrap {
	width: auto !important;
	margin: 0 !important;
}

body .cta-button .wp-block-button__link {
	min-width: 150px;
	padding: 15px 22px !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: 7px !important;
	font-family: Avenir, Arial, sans-serif !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 0.1em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
}

body .cta-button-primary .wp-block-button__link {
	color: var(--burgundy) !important;
	background: #fff !important;
	border-color: #fff !important;
}

body .cta-button-secondary .wp-block-button__link {
	color: #fff !important;
	background: transparent !important;
	border-color: rgba(255, 255, 255, 0.45) !important;
}

/* Otter icon lists with diamond bullets */
body .program-icon-list .fa-square,
body .fee-icon-list .fa-square {
	display: inline-block !important;
	font-size: 8px !important;
	transform: rotate(45deg) !important;
	transform-origin: center !important;
}

/* ---------- Visit & Membership FAQ ---------- */

#content .giac-faq-section { padding: clamp(70px, 9vw, 110px) 0 !important; border-bottom: 1px solid rgba(234, 223, 206, 0.7); }
#content .giac-faq-section > .innerblocks-wrap { display: grid !important; grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr); gap: 60px; align-items: start; flex: 0 1 auto !important; width: var(--section) !important; max-width: none !important; margin: 0 auto !important; padding: 0 !important; }
#content .giac-faq-section > .innerblocks-wrap > .wp-block-themeisle-blocks-advanced-column { width: auto !important; max-width: none !important; flex-basis: auto !important; margin: 0 !important; padding: 0 !important; }
#content .giac-faq__intro { position: sticky !important; top: 110px; }
#content .giac-faq__eyebrow { margin: 0 0 16px; }
#content .giac-faq__title { margin: 0 0 22px !important; color: var(--burgundy); font: clamp(42px, 4.2vw, 68px) / 0.94 Velour, Georgia, serif !important; }
#content .giac-faq__lede { margin: 0 0 30px !important; color: var(--muted) !important; font-family: Avenir, sans-serif !important; font-size: 16px; line-height: 1.6; }
body .giac-faq__contact { display: flex; align-items: center; gap: 18px; box-sizing: border-box; width: 100%; margin: 0 0 28px; padding: 20px 24px; border: 1px solid #eadfce; border-radius: 14px; background: #f7efe5; text-decoration: none !important; transition: background-color 0.2s ease, border-color 0.2s ease; }
body .giac-faq__contact:hover { background: #f2e6d8; border-color: #dcc9ad; }
body .giac-faq__contact svg { flex: none; color: #651014; }
body .giac-faq__contact-k { display: block; margin-bottom: 6px; color: #651014; font-family: Avenir, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: 3.5px; text-transform: uppercase; }
body .giac-faq__contact-v { display: block; color: #393939; font-family: Avenir, sans-serif; font-size: 16px; }
body .giac-faq__contact-v span { display: inline-block; margin-left: 6px; transition: transform 0.25s var(--giac-ease); }
body .giac-faq__contact:hover .giac-faq__contact-v span { transform: translateX(4px); }
#content .giac-faq__photo { position: relative; margin: 0 !important; overflow: hidden; border-radius: 14px; box-shadow: var(--giac-shadow-md); }
#content .giac-faq__photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 0; }
#content .giac-faq__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20, 12, 8, 0) 55%, rgba(20, 12, 8, 0.45)); pointer-events: none; }
#content .giac-faq__photo figcaption { position: absolute; left: 24px; bottom: 20px; z-index: 1; margin: 0; color: #fffaf2; font-family: Velour, Georgia, serif; font-size: 12px; line-height: 1.7; letter-spacing: 4px; text-align: left; text-transform: uppercase; }
body .giac-faq__list { padding: 0 28px; border: 1px solid #eadfce; border-radius: 14px; background: #fffefa; box-shadow: var(--giac-shadow-sm); }
#content .giac-faq__list details { margin: 0; padding: 0; border-bottom: 1px solid #efe6d8; }
#content .giac-faq__list details:last-child { border-bottom: 0; }
#content .giac-faq__list summary { display: flex; align-items: center; min-height: 80px; padding: 16px 64px 16px 0; color: #651014; font-family: Velour, Georgia, serif; font-size: clamp(16px, 1.35vw, 18px); font-weight: 400; line-height: 1.35; cursor: pointer; background: radial-gradient(circle, #f5ede3 0 19px, transparent 19.5px) no-repeat right center / 40px 40px; transition: color 0.2s ease; }
#content .giac-faq__list summary:hover { color: #8c2424; background-image: radial-gradient(circle, #efe2d2 0 19px, transparent 19.5px); }
#content .giac-faq__list summary:focus-visible { outline: 2px solid #a88643; outline-offset: 4px; }
#content .giac-faq__list summary::before,
#content .giac-faq__list summary::after { right: 14px; background: #a88643; }
#content .giac-faq__list details > p { margin: 0; padding: 0 64px 24px 0; color: #5b5652; font-family: Avenir, sans-serif; font-size: 16px; line-height: 1.7; }
body .giac-faq__tagline { display: flex; align-items: center; gap: 22px; margin: 40px 0 0; color: #a88643; font-family: Velour, Georgia, serif; font-size: 12px; letter-spacing: 5px; text-transform: uppercase; white-space: nowrap; }
body .giac-faq__tagline::before,
body .giac-faq__tagline::after { content: ""; height: 1px; background: rgba(168, 134, 67, 0.5); }
body .giac-faq__tagline::before { flex: 1; }
body .giac-faq__tagline::after { flex: 0 0 40px; }

/* Otter Accordion inside the FAQ list */
#content .giac-faq__list.wp-block-themeisle-blocks-accordion { display: block; gap: 0; padding: 0 28px; border: 1px solid #eadfce; border-radius: 14px; background: #fffefa; box-shadow: var(--giac-shadow-sm); }
#content .giac-faq__list > details.wp-block-themeisle-blocks-accordion-item { margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: 1px solid #efe6d8 !important; background: transparent !important; box-shadow: none !important; }
#content .giac-faq__list > details:last-child { border-bottom: 0 !important; }
#content .giac-faq__list > details > summary.wp-block-themeisle-blocks-accordion-item__title { position: relative; display: flex; align-items: center; min-height: 80px; margin: 0 !important; padding: 16px 64px 16px 0 !important; border: 0 !important; background: none !important; color: #651014 !important; font-family: Velour, Georgia, serif !important; font-size: clamp(16px, 1.35vw, 18px) !important; font-weight: 400 !important; line-height: 1.35; letter-spacing: normal; text-transform: none; list-style: none; cursor: pointer; transition: color 0.2s ease; }
#content .giac-faq__list > details > summary::-webkit-details-marker { display: none; }
#content .giac-faq__list > details > summary > div { margin: 0; padding: 0; color: inherit; font: inherit; }
#content .giac-faq__list > details > summary:hover { color: #8c2424 !important; }
#content .giac-faq__list > details > summary:focus-visible { outline: 2px solid #a88643; outline-offset: 4px; }
#content .giac-faq__list > details > summary::before { display: none !important; content: none !important; }
#content .giac-faq__list > details > summary::after { content: "" !important; position: absolute !important; top: 50% !important; right: 0 !important; bottom: auto !important; left: auto !important; display: block !important; width: 40px !important; height: 40px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; opacity: 1 !important; transform: translateY(-50%) !important; background: linear-gradient(#a88643, #a88643) center / 13px 1.5px no-repeat, linear-gradient(#a88643, #a88643) center / 1.5px 13px no-repeat, #f5ede3 !important; transition: background-size 0.28s var(--giac-ease), background-color 0.2s ease !important; }
#content .giac-faq__list > details > summary:hover::after { background-color: #efe2d2 !important; }
#content .giac-faq__list > details[open]:not([data-giac-expanded="false"]) > summary::after,
#content .giac-faq__list > details[data-giac-expanded="true"] > summary::after { background-size: 13px 1.5px, 1.5px 0 !important; }
#content .giac-faq__list .wp-block-themeisle-blocks-accordion-item__content { margin: 0 !important; padding: 0 64px 24px 0 !important; border: 0 !important; background: transparent !important; }
#content .giac-faq__list .wp-block-themeisle-blocks-accordion-item__content p { margin: 0 0 12px; color: #5b5652; font-family: Avenir, sans-serif; font-size: 16px; line-height: 1.7; }
#content .giac-faq__list .wp-block-themeisle-blocks-accordion-item__content p:last-child { margin-bottom: 0; }

/* ---------- "On this page" navigator (Rank Math TOC in a Details block) ---------- */

#content .giac-page-nav { width: calc(100% - 80px); max-width: 1170px; margin: 28px auto 0; padding: 0; border: 0; border-top: 1px solid #eadfce; border-bottom: 1px solid #eadfce; border-radius: 0; background: transparent; box-shadow: none; color: #5a0f13; }
#content .giac-page-nav > summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 72px; margin: 0; padding: 18px 0; color: #5a0f13; font: 400 28px / 1.15 Velour, Georgia, serif; letter-spacing: 0; list-style: none; cursor: pointer; }
#content .giac-page-nav > summary::-webkit-details-marker { display: none; }
#content .giac-page-nav > summary::after { content: "+"; flex: 0 0 32px; color: #a88643; font: 300 24px / 1 Avenir, Arial, sans-serif; text-align: center; }
#content .giac-page-nav[open] > summary::after { content: "−"; }
#content .giac-page-nav summary:focus-visible,
#content .giac-page-nav a:focus-visible { outline: 2px solid #a88643; outline-offset: 5px; }
#content .giac-page-nav .wp-block-rank-math-toc-block { max-width: none; margin: 0; padding: 0 0 22px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
#content .giac-page-nav .wp-block-rank-math-toc-block > h2 { display: none; }
#content .giac-page-nav nav ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 36px; columns: auto; margin: 0; padding: 0; list-style: none; counter-reset: club-guide; }
#content .giac-page-nav nav li { display: flex; align-items: baseline; gap: 12px; margin: 0; padding: 10px 0; break-inside: avoid; font: 400 14px / 1.45 Avenir, Arial, sans-serif; list-style: none; counter-increment: club-guide; }
#content .giac-page-nav nav li::before { content: counter(club-guide, decimal-leading-zero); flex: 0 0 18px; color: #a88643; font-size: 10px; letter-spacing: 1px; }
#content .giac-page-nav nav a { color: #6c5550; font: inherit; letter-spacing: 0; text-decoration: none; }
#content .giac-page-nav nav a:hover { color: #5a0f13; text-decoration: underline; text-underline-offset: 4px; }

/* ==========================================================================
   Responsive (Part B)
   ========================================================================== */

@media (max-width: 959px) {
	body .info-eyebrow { margin-bottom: 12px; font-size: 9px; }
	body .section-head { margin-bottom: 42px; }
	body .section-head h2,
	body .editorial-copy h2,
	body .sport-copy h2 { font-size: 42px; }
	body .section-head p:not(.info-eyebrow) { font-size: 14px; }
	body .list-panel h3 { font-size: 39px; }
	body .check-list { columns: 1; }
	body .programs { grid-template-columns: 1fr; }
	body .program-card { padding: 36px 28px; }
	body .program-card ul { grid-template-columns: 1fr; }
	body .sports-band { padding: 78px 0; }
	body .sport-hero,
	body .sport-hero.reverse { grid-template-columns: 1fr; min-height: 0; }
	body .sport-hero.reverse .sport-photo { order: 0; }
	body .sport-photo { height: 260px; }
	body .sport-copy { padding: 34px 28px; }
	body .pricing-layout { grid-template-columns: 1fr; gap: 34px; margin-top: 34px; }
	body .teams-section { padding: 78px 0 !important; }
	body .teams-section > .innerblocks-wrap,
	body .fee-section > .innerblocks-wrap { grid-template-columns: 1fr !important; gap: 36px; }
	body .teams-photo-col { height: 340px; }
	body .teams-copy-col h2,
	body .fee-copy-col h2 { font-size: 44px; }
	body .fee-section > .innerblocks-wrap { padding: 78px 0 !important; }
	body .fee-list { grid-template-columns: 1fr; }
	body .fee-card { padding: 42px 24px; }
	body .cta-section { padding: 64px 20px !important; }
	body .cta-section h2 { font-size: 42px !important; }

	#content .giac-faq-section > .innerblocks-wrap { display: flex !important; flex-direction: column; gap: 0; }
	#content .giac-faq__intro,
	#content .giac-faq__main { display: contents !important; }
	#content .giac-faq__eyebrow { order: 1; }
	#content .giac-faq__title { order: 2; font-size: 42px !important; }
	#content .giac-faq__lede { order: 3; }
	body .giac-faq__list { order: 4; padding: 0 20px; }
	body .giac-faq__contact { order: 5; margin: 24px 0 0; }
	body .giac-faq__tagline { order: 6; gap: 14px; font-size: 10px; letter-spacing: 3px; }
	#content .giac-faq__photo { display: none; }
	#content .giac-faq__list summary { min-height: 76px; padding-right: 56px; }
	#content .giac-faq__list details > p { padding-right: 0; }
	#content .giac-faq__list.wp-block-themeisle-blocks-accordion { padding: 0 20px; }
	#content .giac-faq__list > details > summary.wp-block-themeisle-blocks-accordion-item__title { min-height: 76px; padding-right: 56px !important; }
	#content .giac-faq__list .wp-block-themeisle-blocks-accordion-item__content { padding-right: 0 !important; }

	#content .giac-page-nav { width: calc(100% - 48px); margin-top: 24px; }
	#content .giac-page-nav nav ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
}

/* Phones: the title never moves; only the table under it scrolls sideways.
   header.js wraps the rows in .price-card__scroll, so the h3 sits outside the scroller. */
@media (max-width: 767px) {
	body .price-card { overflow: hidden; }
	body .price-card > h3 { position: relative; z-index: 1; padding: 16px !important; }
	body .price-card__scroll {
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: none;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		touch-action: pan-x pan-y;
	}
	body .price-card__scroll::-webkit-scrollbar { display: none; }
	/* soft fade on the right edge while there is more table to see */
	body .price-card__scroll.is-scrollable:not(.at-end) {
		-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 36px), transparent);
		mask-image: linear-gradient(to right, #000 calc(100% - 36px), transparent);
	}
	body .price-card .grid { align-items: center; }
	body .price-card .grid[class*="_22%_22%"] { min-width: 520px !important; grid-template-columns: minmax(200px, 1fr) 150px 150px !important; }
	body .price-card .grid[class*="_44%"] { min-width: 0 !important; }
	body .price-card .grid > p { overflow-wrap: normal; word-break: normal; }
	body .price-card .grid[class*="_22%_22%"] > p:not(:first-child),
	body .price-card .price-card__scroll > .grid:first-child > p { white-space: nowrap; }
}

@media (max-width: 600px) {
	#content .giac-page-nav { width: calc(100% - 40px); margin-top: 20px; }
	#content .giac-page-nav > summary { min-height: 64px; padding: 16px 0; font-size: 25px; }
	#content .giac-page-nav nav ul { grid-template-columns: 1fr; gap: 0; }
	#content .giac-page-nav nav li { padding: 8px 0; font-size: 14px; }
	#content .giac-page-nav .wp-block-rank-math-toc-block { padding-bottom: 18px; }
}

@media (max-width: 420px) {
	body .program-card h3 { font-size: 34px; }
	body .price-card h3 { font-size: 17px; }
	body .cta-buttons { gap: 9px; }
	body .cta-button-wrap { flex: 1 1 0 !important; }
	body .cta-button .wp-block-button__link { width: 100%; min-width: 0; padding: 14px 10px !important; font-size: 9px !important; }
}

/* ==========================================================================
   PART C — "GIAC base typography" page option (Page sidebar > GIAC Layout)
   Avenir + ink colour as the page default, images as blocks, links inherit.
   Club Information was built on this (it came from the old page stylesheet).
   ========================================================================== */

body.giac-base-type {
	color: var(--giac-ink);
	font-family: var(--giac-sans);
}

/* Editorial pages: animated <details> + "On this page" reveal (assets/js/editorial.js) */
body.giac-base-type #content .giac-animated-disclosure { box-sizing: border-box; }
body.giac-base-type #content .giac-animated-disclosure > summary { position: relative; padding-right: 38px; list-style: none; transition: color 0.2s ease; }
body.giac-base-type #content .giac-animated-disclosure > summary::-webkit-details-marker { display: none; }
body.giac-base-type #content .giac-animated-disclosure > summary::before,
body.giac-base-type #content .giac-animated-disclosure > summary::after { content: ""; position: absolute; top: 50%; right: 10px; flex: none; width: 12px; height: 1px; margin: 0; padding: 0; background: #a88643; transform: translateY(-50%); transition: transform 0.28s var(--giac-ease), opacity 0.2s ease; }
body.giac-base-type #content .giac-animated-disclosure > summary::before { transform: translateY(-50%) rotate(90deg); }
body.giac-base-type #content .giac-animated-disclosure[data-giac-expanded="true"] > summary::before { transform: translateY(-50%) rotate(0); opacity: 0; }
body.giac-base-type #content .giac-page-nav.giac-animated-disclosure[open] > summary::after { content: ""; }

body.giac-base-type .wp-block-themeisle-blocks-icon-list .wp-block-themeisle-blocks-icon-list-item { align-items: baseline !important; }

@media (max-width: 600px) {
	body.giac-base-type #content .giac-page-nav { opacity: 0; visibility: hidden; pointer-events: none; transform: translate3d(0, 10px, 0); transition: opacity 0.36s var(--giac-ease), transform 0.36s var(--giac-ease), visibility 0s linear 0.36s; }
	body.giac-base-type #content .giac-page-nav[data-giac-scroll-visible="true"] { opacity: 1; visibility: visible; pointer-events: auto; transform: translate3d(0, 0, 0); transition: opacity 0.36s var(--giac-ease), transform 0.36s var(--giac-ease), visibility 0s; }
}

@media (prefers-reduced-motion: reduce) {
	body.giac-base-type #content .giac-animated-disclosure > summary,
	body.giac-base-type #content .giac-animated-disclosure > summary::before,
	body.giac-base-type #content .giac-animated-disclosure > summary::after,
	body.giac-base-type #content .giac-page-nav { transition: none; transform: none; }
}

/* ==========================================================================
   PART D — more reusable page components (moved out of page HTML blocks)
   ========================================================================== */

/* Curated Experiences accordion (Home) */
.giac-accordion-title { text-shadow: none !important; font-weight: 100 !important; text-transform: lowercase !important; }
.giac-accordion-panel, .giac-accordion-image, .giac-accordion-overlay { border-radius: 18px !important; }
.giac-accordion-description { color: rgb(165 165 165 / 90%) !important; }
.giac-accordion-link { display: grid !important; justify-content: flex-end !important; padding-top: 4px !important; border-top: 1px solid #8b6363 !important; border-bottom: none !important; }

/* Tennis / Pickleball bottom CTA buttons + "Ways to Play" */
.btm-btn-a > *, .btm-btn-b > * { font-family: "Avenir Light" !important; font-weight: 100 !important; line-height: 1.3 !important; text-transform: uppercase !important; }
body .play-title { color: #b9bc98 !important; }

@media (max-width: 600px) {
	.btm-btn-a, .btm-btn-b, .btm-btn-a > *, .btm-btn-b > * { width: 100% !important; }
	.get-started-heading { -webkit-text-stroke: 1px !important; }
}

/* Visitor guide */
.giac-visitor-guide { max-width: 1100px; margin: 60px auto; padding: 0 24px; color: #393939; }
.giac-visitor-guide h2 { color: #5a0f13; font-family: Velour, Georgia, serif; font-size: clamp(30px, 4vw, 46px); line-height: 1.1; }
.giac-visitor-guide details { padding: 18px 0; border-bottom: 1px solid #eadfce; }
.giac-visitor-guide summary { color: #5a0f13; font-size: 18px; font-weight: 600; line-height: 1.4; cursor: pointer; }
.giac-visitor-guide p { max-width: 900px; margin: 16px 0; line-height: 1.7; }
.giac-visitor-guide summary:focus-visible { outline: 2px solid #a88643; outline-offset: 5px; }

/* "Next chapter" editorial card (copy left, image right) */
#content .giac-chapter { padding-left: clamp(16px, 3.5vw, 40px) !important; padding-right: clamp(16px, 3.5vw, 40px) !important; }
#content .giac-chapter > .innerblocks-wrap { display: grid !important; grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); gap: 0 !important; width: 100% !important; max-width: 1170px !important; margin: 0 auto !important; overflow: hidden; background: #fffefa; border: 1px solid #eadfce; border-radius: 18px; box-shadow: var(--giac-shadow-lg); isolation: isolate; }
#content .giac-chapter > .innerblocks-wrap > .wp-block-themeisle-blocks-advanced-column { width: auto !important; max-width: none !important; flex-basis: auto !important; margin: 0 !important; border-radius: 0 !important; }
#content .giac-chapter__copy { display: flex !important; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(48px, 6vw, 88px) clamp(32px, 5.5vw, 84px) !important; background: transparent !important; }
#content .giac-chapter__eyebrow { display: block; margin: 0 0 18px !important; }
#content .giac-chapter__title { max-width: 560px; margin: 0 0 24px !important; color: var(--burgundy, #651014) !important; font: clamp(46px, 4.6vw, 76px) / 0.92 Velour, Georgia, serif !important; letter-spacing: -0.01em !important; }
#content .giac-chapter__title em { font-style: italic; }
#content .giac-chapter__lede { max-width: 540px; margin: 0 0 32px !important; color: var(--muted, #77716d) !important; font-family: Avenir, Arial, sans-serif !important; font-size: 17px !important; line-height: 1.7 !important; }
#content .giac-chapter__actions { margin: 0 !important; justify-content: flex-start !important; }
#content .giac-chapter__btn .wp-block-button__link { font-family: Avenir, Arial, sans-serif !important; font-size: 13px !important; letter-spacing: 0.06em; border-width: 1px !important; border-style: solid !important; transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease !important; }
#content .giac-chapter__tagline { margin: 28px 0 0 !important; color: #8f8680 !important; font-family: Avenir, Arial, sans-serif !important; font-size: 14px !important; font-style: italic; letter-spacing: 0.02em; }
#content .giac-chapter__media { position: relative; min-height: clamp(420px, 40vw, 560px); padding: 0 !important; background-size: cover !important; background-position: center !important; }
#content .giac-chapter__media > .wp-block-spacer { display: none; }

@media (max-width: 959px) {
	#content .giac-chapter > .innerblocks-wrap { grid-template-columns: 1fr; }
	#content .giac-chapter__media { order: -1; min-height: 0; aspect-ratio: 16 / 10; }
	#content .giac-chapter__copy { padding: 40px 28px 44px !important; }
	#content .giac-chapter__title { font-size: clamp(42px, 9vw, 56px) !important; }
	#content .giac-chapter__lede { font-size: 15px !important; }
}

@media (max-width: 600px) {
	#content .giac-chapter__copy { align-items: center; padding: 34px 22px 38px !important; text-align: center; }
	#content :is(.giac-chapter__title, .giac-chapter__lede, .giac-chapter__tagline) { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
	#content .giac-chapter__actions { justify-content: center !important; width: 100%; }
	#content .giac-chapter__media { aspect-ratio: 4 / 3; }
}

/* ---------- FAQ: first 4 questions + "See all" button (header.js) ---------- */
#content .giac-faq__list.giac-faq--collapsed > details.giac-faq-extra { display: none !important; }
#content .giac-faq__list.giac-faq--collapsed > details:nth-child(4) { border-bottom: 0 !important; }
#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra { animation: giac-faq-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) both; }
#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra:nth-child(5) { animation-delay: 0.04s; }
#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra:nth-child(6) { animation-delay: 0.08s; }
#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra:nth-child(7) { animation-delay: 0.12s; }
#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra:nth-child(n+8) { animation-delay: 0.16s; }
@keyframes giac-faq-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

body .giac-faq-more {
	order: 4; /* same slot as the list (and after it in the HTML) when the FAQ columns flatten on phones */
	display: flex; align-items: center; justify-content: center; gap: 12px;
	margin: 18px auto 28px; padding: 10px 12px 10px 22px;
	border: 1px solid #eadfce; border-radius: 999px; background: #fffefa;
	box-shadow: var(--giac-shadow-xs);
	color: #651014; font-family: Avenir, sans-serif; font-size: 13px; font-weight: 500;
	letter-spacing: 0.14em; line-height: 1; text-transform: uppercase;
	cursor: pointer; transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
body .giac-faq-more:hover { background: #f7efe5; border-color: #dcc9ad; box-shadow: var(--giac-shadow-sm); }
body .giac-faq-more:focus-visible { outline: 2px solid #a88643; outline-offset: 3px; }
body .giac-faq-more__icon {
	position: relative; flex: none; width: 30px; height: 30px; box-sizing: border-box;
	border: 1.5px solid #6c2528; border-radius: 50%;
	background:
		linear-gradient(#6c2528, #6c2528) center / 12px 1.5px no-repeat,
		linear-gradient(#6c2528, #6c2528) center / 1.5px 12px no-repeat;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.25s ease, background-color 0.25s ease;
}
body .giac-faq-more[aria-expanded="true"] .giac-faq-more__icon {
	transform: rotate(45deg); border-color: #a88643; background-color: #f4eadc;
	background-image: linear-gradient(#a88643, #a88643), linear-gradient(#a88643, #a88643);
}
@media (prefers-reduced-motion: reduce) {
	#content .giac-faq__list.giac-faq--revealing > details.giac-faq-extra { animation: none; }
	body .giac-faq-more__icon { transition: none; }
}

/* "Contact our team →": real drawn arrow, centered on the text */
body .giac-faq__contact-v { display: inline-flex; align-items: center; gap: 10px; }
body .giac-faq__contact-v span {
	display: inline-block; flex: none; width: 18px; height: 12px; margin-left: 0;
	font-size: 0; color: transparent; background: #651014;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 6h15.5M11.5 1l5 5-5 5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 6h15.5M11.5 1l5 5-5 5'/%3E%3C/svg%3E") center / contain no-repeat;
}
