/* Holly High Book chapters — vertical tabs + accordion modifiers (Kadence-compatible hooks). */

.hh-book-chapters-wrap {
	margin-top: 1.5rem;
}

.hh-book-chapters-wrap .kt-row-column-wrap.kt-has-2-columns {
	display: grid;
	grid-template-columns: minmax(220px, 34%) 1fr;
	gap: 0;
	align-items: stretch;
	position: relative;
}

@media (max-width: 767px) {
	.hh-book-chapters-wrap .kt-row-column-wrap.kt-has-2-columns {
		grid-template-columns: 1fr;
		gap: 0;
	}

	/* Mobile accordion — matches Kadence kt-tabs-mobile-layout-accordion UX */
	.hh-book-chapters--mobile-accordion .kadence-column_hhchpanecol {
		display: none;
	}

	.hh-book-chapters--mobile-accordion .kadence-column_hhchtabcol > .kt-inside-inner-col {
		padding: 0;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab {
		margin: 0 0 10px;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab-button {
		border-width: 4px;
		border-radius: 10px;
		padding: 14px 40px 14px 16px;
		position: relative;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab-button::after {
		border-right: 2px solid #444444;
		border-bottom: 2px solid #444444;
		content: "";
		height: 8px;
		position: absolute;
		right: 18px;
		top: 50%;
		transform: translateY(-60%) rotate(45deg);
		transition: transform 0.15s ease;
		width: 8px;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab.is-active .hh-book-chapters__tab-button::after {
		transform: translateY(-30%) rotate(-135deg);
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab.is-active .hh-book-chapters__tab-button,
	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab-button[aria-selected="true"] {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
		border-bottom-width: 0;
		margin-bottom: 0;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab .hh-book-chapters__pane {
		border: 4px solid #d3dff6;
		border-top: 0;
		border-radius: 0 0 10px 10px;
		margin: 0 0 10px;
		padding: 16px;
	}

	.hh-book-chapters--mobile-accordion .hh-book-chapters__tab:not(.is-active) .hh-book-chapters__pane {
		display: none !important;
	}
}

.hh-book-chapters-wrap .kadence-column_hhchtabcol {
	position: relative;
	z-index: 1;
}

.hh-book-chapters-wrap .kadence-column_hhchtabcol:has(.hh-book-chapters__tab.is-active) {
	z-index: 3;
}

.hh-book-chapters-wrap .kadence-column_hhchpanecol {
	position: relative;
	z-index: 2;
}

.hh-book-chapters-wrap .kadence-column_hhchtabcol > .kt-inside-inner-col {
	padding-right: 0;
	overflow: visible;
}

/* Content pane border sits above inactive tabs; active tab rises above the border */
.hh-book-chapters-wrap .kadence-column_hhchpanecol > .kt-inside-inner-col,
.hh-book-chapters-wrap .hh-book-chapters__panes {
	position: relative;
	z-index: 2;
	border: 4px solid #d3dff6;
	padding: 16px;
	background: #ffffff;
	min-height: 400px;
}

@media (max-width: 767px) {
	.hh-book-chapters-wrap .kadence-column_hhchpanecol > .kt-inside-inner-col,
	.hh-book-chapters-wrap .hh-book-chapters__panes {
		min-height: 0;
	}
}

.single-book .hh-book-chapters-wrap ul.hh-book-chapters__tabs,
.single-book .hh-book-chapters-wrap ul.hh-book-chapters__tabs.kt-tabs-title-list {
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
	max-width: none;
	position: relative;
}

/* Only the active tab overlaps the content border strip */
.hh-book-chapters__tab {
	margin: 0 0 10px;
	padding: 0;
	border: 0;
	position: relative;
}

.hh-book-chapters__tab.is-active {
	margin-right: -4px;
	z-index: 1;
}

.hh-book-chapters__tab-button {
	display: block;
	width: 100%;
	text-align: left;
	appearance: none;
	-webkit-appearance: none;
	background: var(--global-palette8, #f7fafc);
	border-style: solid;
	border-color: var(--global-palette8, #f7fafc);
	border-width: 4px 0 4px 4px;
	border-radius: 10px 0 0 10px;
	padding: 12px 8px 12px 20px;
	font-family: var(--global-body-font-family, inherit);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	text-transform: none;
	box-shadow: none !important;
	cursor: pointer;
	color: var(--global-palette5, #4a5568);
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.hh-book-chapters__tab.is-active .hh-book-chapters__tab-button,
.hh-book-chapters__tab-button[aria-selected="true"] {
	background: #ffffff;
	border-color: #d3dff6;
	border-right-width: 0;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	color: var(--global-palette3, #1a202c);
	font-weight: 400;
}

@media (max-width: 767px) {
	.hh-book-chapters-wrap .kadence-column_hhchtabcol,
	.hh-book-chapters-wrap .kadence-column_hhchtabcol:has(.hh-book-chapters__tab.is-active),
	.hh-book-chapters-wrap .kadence-column_hhchpanecol {
		z-index: auto;
	}

	.hh-book-chapters__tab.is-active {
		margin-right: 0;
	}

	.hh-book-chapters__tab.is-active .hh-book-chapters__tab-button,
	.hh-book-chapters__tab-button[aria-selected="true"] {
		border-right-width: 4px;
		border-top-right-radius: 10px;
		border-bottom-right-radius: 10px;
	}
}

.hh-book-chapters__tab-button:hover,
.hh-book-chapters__tab-button:focus-visible {
	background: var(--global-palette7, #edf2f7);
	border-color: var(--global-palette7, #edf2f7);
	color: #444444;
	box-shadow: none !important;
	outline: none;
}

.hh-book-chapters__tab.is-active .hh-book-chapters__tab-button:hover,
.hh-book-chapters__tab.is-active .hh-book-chapters__tab-button:focus-visible,
.hh-book-chapters__tab-button[aria-selected="true"]:hover,
.hh-book-chapters__tab-button[aria-selected="true"]:focus-visible {
	background: #ffffff;
	border-color: #d3dff6;
	border-right-width: 0;
	color: var(--global-palette3, #1a202c);
	box-shadow: none !important;
}

[data-hh-pane]:not(.is-active) {
	display: none;
}

.hh-book-chapters__pane.is-active {
	display: block;
}

/* Accordion — override Kadence default dark active headers inside chapters */
.hh-book-chapters-wrap .kt-accordion-inner-wrap {
	row-gap: 8px;
}

.hh-book-chapters-wrap .kt-blocks-accordion-header {
	background: #ffffff !important;
	color: #444444 !important;
	font-weight: 700;
	font-size: 18px;
	line-height: 24px;
	border: 0 !important;
	border-bottom: 4px solid var(--global-palette6, #718096) !important;
	border-radius: 0;
	padding: 14px 10px 6px 16px;
	box-shadow: none;
}

.hh-book-chapters-wrap .kt-blocks-accordion-header:hover {
	background: #ffffff !important;
	color: #444444 !important;
	border-bottom-color: var(--global-palette6, #718096) !important;
}

.hh-book-chapters-wrap .kt-blocks-accordion-header.kt-accordion-panel-active {
	background: #ffffff !important;
	color: #333333 !important;
	border-bottom-color: var(--global-palette2, #f5dda9) !important;
}

.hh-book-chapters-wrap .kt-blocks-accordion-header .kt-blocks-accordion-icon-trigger::before,
.hh-book-chapters-wrap .kt-blocks-accordion-header .kt-blocks-accordion-icon-trigger::after {
	background-color: #444444 !important;
}

.hh-book-chapters-wrap .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::before,
.hh-book-chapters-wrap .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::after {
	background-color: #333333 !important;
}

.hh-book-chapters-wrap .kt-accordion-panel-inner,
.hh-book-chapters-wrap .hh-book-section-content.kt-accordion-panel-inner {
	background: #ffffff;
	border: 0;
	padding: 20px 10px;
}

.hh-book-accordion__item--single [data-hh-accordion-trigger] {
	cursor: default;
}

.hh-book-accordion__item--single .kt-blocks-accordion-icon-trigger {
	display: none;
}

.hh-book-accordion__item:not(.is-open) .hh-book-accordion__panel {
	display: none;
}

.hh-book-accordion__item.is-open .hh-book-accordion__panel {
	display: block;
}

.hh-book-section-content {
	margin-bottom: 1rem;
}

.hh-book-section-content .wp-block-quote,
.hh-book-about-content .wp-block-quote,
.hh-book-full-width .wp-block-quote {
	margin: 1.5em 0;
	font-size: inherit;
}

.hh-book-about-content .wp-block-quote p {
	font-size: 1.125em;
}

.hh-book-about-content .wp-block-quote + p,
.hh-book-about-content .wp-block-quote ~ p {
	font-size: inherit;
}

.hh-book-section-content .wp-block-quote cite,
.hh-book-about-content .wp-block-quote cite,
.hh-book-full-width .wp-block-quote cite {
	display: block;
	margin-top: 0.5em;
	font-style: normal;
}

.hh-book-chapters__empty {
	opacity: 0.75;
	font-style: italic;
}

/* Reviews — paragraph spacing after each entry (link is :last-child inside li) */
.single-content .wp-block-kadence-repeatertemplate > li:has(.hh-book-review-link) {
	margin-bottom: 1.5em;
}

.single-content .wp-block-kadence-repeatertemplate > li:has(.hh-book-review-link):last-child {
	margin-bottom: 0;
}

/* Related news — space below query block (matches Page 498 post-query spacer) */
.single-book .wp-block-query {
	margin-bottom: 78px;
}

@media (max-width: 767px) {
	.single-book .wp-block-query {
		margin-bottom: 48px;
	}
}

.book_cta .kt-btns-wrap,
.book_cta .wp-block-kadence-advancedbtn,
.book_cta .kt-btn-wrap {
	margin-left: 0;
	padding-left: 0;
}

.book_cta .wp-block-kadence-repeatertemplate,
.book_cta .wp-block-kadence-repeater ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.book_cta .kt-btn-align-left {
	text-align: left;
}

.book_cta .wp-block-kadence-advancedbtn.kt-btns_hhbuybtn .kt-btn-wrap-0 .kt-button,
.book_cta .kt-btns_hhbuybtn .kt-button {
	font-size: 16px;
}

.book_cta .wp-block-kadence-advancedbtn.kt-btns_hhbuybtn .kt-btn-wrap-0 .kt-button:hover,
.book_cta .wp-block-kadence-advancedbtn.kt-btns_hhbuybtn .kt-btn-wrap-0 .kt-button:focus {
	color: var(--global-palette5, #4a5568) !important;
	background: transparent !important;
}

.hh-book-gallery-title {
	margin: 2rem 0 1rem;
}

/* About gallery thumbslider — 10px gap between main slide and thumb strip (reference page 718). */
.kb-gallery-type-thumbslider.kb-gallery-id-_hhaboutgal .kt-blocks-carousel-init {
	margin-bottom: 10px;
}

/* Full-width contributors — bottom spacing only (row wrapper often missing from Element output). */
.single-book .kadence-column_hhfwcol > .kt-inside-inner-col {
	padding-bottom: 70px;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.kb-row-layout-id_hhfwrow > .kt-row-column-wrap,
#kt-layout-id_hhfwrow > .kt-row-column-wrap {
	padding-bottom: 70px !important;
}

/* Reviews heading left; testimonials heading stays centered. */
.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhrevh2,
.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhrevh2[data-kb-block="kb-adv-heading_hhrevh2"] {
	text-align: left;
}

.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhtesth2,
.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhtesth2[data-kb-block="kb-adv-heading_hhtesth2"] {
	text-align: center;
}

.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhspikechh,
.single-book .wp-block-kadence-advancedheading.kt-adv-heading_hhspikechh[data-kb-block="kb-adv-heading_hhspikechh"] {
	text-align: center;
}

/* Reviews list — flush with heading (theme ul margin + repeater wrapper often absent). */
.single-book .entry-content ul.wp-block-kadence-repeatertemplate,
.single-book .entry-content .kt-adv-heading_hhrevh2 + ul.wp-block-kadence-repeatertemplate {
	list-style: none;
	margin: 0 0 1.5em 0 !important;
	padding-left: 0 !important;
}

/* Testimonials — match reference Page width on mobile (Element content is narrower). */
@media (max-width: 767px) {
	.single-book .kb-row-layout-id_hhtestrow,
	.single-book .kb-row-layout-wrap:has(.wp-block-kadence-testimonials) {
		width: calc(100% + 30px);
		max-width: calc(100% + 30px);
		margin-left: -15px;
		margin-right: -15px;
	}

	.single-book .kb-row-layout-id_hhtestrow .kt-inside-inner-col {
		padding-left: 0;
		padding-right: 0;
	}
}
