/*
 * Temple theme foundation.
 * Quiet, elegant palette with Song-style typography.
 */

:root {
	--temple-red: #b45a56;
	--temple-brown: #5a4330;
	--temple-cream: #f6f5f2;
	--temple-page-background: #e5dbcc;
	--temple-black: #1d1b1a;
	--temple-gold: #b38a52;
	--temple-border: rgba(90, 67, 48, 0.16);
	--temple-shadow: 0 18px 48px rgba(29, 27, 26, 0.08);
	--temple-serif-cn: 'Source Han Serif SC', 'Source Han Serif CN', 'Noto Serif CJK SC', 'Noto Serif SC', 'Songti SC', 'STSong', SimSun, serif;
	--temple-header-cn: 'Source Han Serif SC', 'Source Han Serif CN', 'Noto Serif CJK SC', 'Noto Serif SC', 'Songti SC', 'STSong', SimSun, serif;
}

html,
body {
	font-family: var(--temple-serif-cn);
	background: var(--temple-cream);
	color: var(--temple-black);
	font-weight: 300;
	overflow-x: clip;
}

button,
input,
select,
textarea {
	font-family: var(--temple-serif-cn);
}

body.temple-site a {
	color: var(--temple-red);
}

body.temple-site .site-header,
body.temple-site .inside-header,
body.temple-site .site-content {
	background: transparent;
}

body.temple-site .site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1000;
	background: #fff;
	font-family: var(--temple-header-cn);
	font-feature-settings: 'palt' 1;
}

body.temple-site .site-header .inside-header {
	background: #fff;
}

body.temple-site:not(.temple-merit-board):not(.temple-rites) {
	background: var(--temple-page-background) !important;
}

body.temple-site:not(.temple-merit-board):not(.temple-rites) #page,
body.temple-site:not(.temple-merit-board):not(.temple-rites) .site {
	background-color: var(--temple-page-background);
}

body.temple-site:not(.temple-merit-board):not(.temple-rites) .site-header,
body.temple-site:not(.temple-merit-board):not(.temple-rites) .site-header .inside-header {
	background: #fff !important;
}

body.temple-site {
	padding-top: var(--temple-fixed-header-height, 112px);
}

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

@media screen and (max-width: 782px) {
	body.temple-site.admin-bar .site-header {
		top: 46px;
	}
}

body.temple-site .inside-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	padding: 0.6rem 1.4rem 0;
	position: relative;
}

body.temple-site .inside-header::before,
body.temple-site .inside-header::after {
	display: none;
}

body.temple-site .site-header .inside-header > :first-child {
	padding: 0;
	flex: 0 0 auto;
	width: 100%;
	text-align: center;
}

body.temple-site .site-header .inside-header > .main-navigation {
	flex: 0 0 auto;
	width: 100%;
}

body.temple-site .temple-logo-wrap {
	display: flex;
	justify-content: center;
}

body.temple-site .temple-logo-wrap a {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.65rem;
	text-decoration: none;
	color: inherit;
}

body.temple-site .temple-site-icon {
	height: clamp(2.2rem, 4.2vw, 3rem);
	width: auto;
	display: block;
	background: transparent;
	mix-blend-mode: multiply;
}

body.temple-site .temple-brand-text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.18rem;
}

body.temple-site .temple-svg-wrap {
	display: block;
	color: var(--temple-brown);
	line-height: 0;
}

body.temple-site .temple-svg-wrap svg {
	height: clamp(1.25rem, 2.4vw, 1.85rem);
	width: auto;
}

body.temple-site .temple-svg-wrap svg path {
	fill: currentColor;
}

body.temple-site .temple-subtitle {
	display: block;
	font-family: var(--temple-serif-cn);
	font-size: 0.6rem;
	font-weight: 300;
	letter-spacing: 0.4em;
	color: var(--temple-brown);
	opacity: 0.55;
}

body.temple-site .temple-header-actions {
	align-items: center;
	display: flex;
	gap: 0.55rem;
	position: absolute;
	right: clamp(0.9rem, 2.4vw, 1.6rem);
	top: 0.8rem;
	z-index: 3;
}

body.temple-site .temple-header-login,
body.temple-site .temple-header-donate {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	text-decoration: none;
	transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

body.temple-site .temple-header-login {
	background: rgba(255, 255, 255, 0.52);
	border: 1px solid var(--temple-border);
	border-radius: 999px;
	color: var(--temple-brown);
	height: 2.35rem;
	width: 2.35rem;
}

body.temple-site .temple-header-login svg {
	display: block;
	height: 1.1rem;
	width: 1.1rem;
}

body.temple-site .temple-header-donate {
	background: var(--temple-red);
	border: 1px solid var(--temple-red);
	border-radius: 999px;
	color: #fff7f0;
	font-family: var(--temple-header-cn);
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1;
	min-height: 2.35rem;
	min-width: 6rem;
	padding: 0.45rem 1.25rem;
}

body.temple-site .temple-header-login:hover,
body.temple-site .temple-header-login:focus {
	background: var(--temple-brown);
	border-color: var(--temple-brown);
	color: #fff7f0;
	outline: none;
	transform: translateY(-1px);
}

body.temple-site .temple-header-donate:hover,
body.temple-site .temple-header-donate:focus {
	background: var(--temple-brown);
	border-color: var(--temple-brown);
	color: #fff7f0;
	outline: none;
	transform: translateY(-1px);
}

body.temple-site .main-navigation {
	position: relative;
	background: transparent;
	margin-left: 0;
	margin-right: 0;
	width: 100%;
	min-height: 44px;
	z-index: 1;
}

body.temple-site .main-navigation::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 100vw;
	transform: translateX(-50%);
	background: #fff;
	border-top: 1px solid rgba(255, 255, 255, 0.45);
	border-bottom: 1px solid var(--temple-border);
	box-shadow: 0 10px 30px rgba(29, 27, 26, 0.05);
	z-index: -1;
}

body.temple-site .main-navigation .inside-navigation {
	justify-content: center;
	max-width: 1280px;
	margin: 0 auto;
	min-height: 44px;
	width: 100%;
}

body.temple-site .main-navigation a,
body.temple-site .main-navigation a:link,
body.temple-site .main-navigation a:visited,
body.temple-site .main-navigation a:active {
	color: var(--temple-black);
	font-family: var(--temple-header-cn);
	font-size: clamp(0.9rem, 1.45vw, 1rem);
	font-weight: 400;
	letter-spacing: clamp(0.035em, 0.12vw, 0.09em);
}

body.temple-site .main-navigation .main-nav {
	width: 100%;
}

body.temple-site .main-navigation .main-nav > ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	gap: clamp(0rem, 0.35vw, 0.2rem);
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

body.temple-site .main-navigation .main-nav > ul > li {
	flex: 1 1 0;
	min-width: 0;
	text-align: center;
}

body.temple-site .main-navigation .main-nav > ul > li > a {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	padding: 0 clamp(0.45rem, 1.25vw, 1rem);
	position: relative;
	justify-content: center;
	line-height: 44px;
	white-space: nowrap;
}

body.temple-site .main-navigation .main-nav > ul > li > a .dropdown-menu-toggle {
	clear: none;
	display: inline-flex;
	flex: 0 0 auto;
	height: auto;
	margin-left: clamp(0.2rem, 0.45vw, 0.35rem);
	padding: 0;
}

body.temple-site .main-navigation .main-nav > ul > li > a .dropdown-menu-toggle .gp-icon {
	display: inline-flex;
}

body.temple-site .main-navigation .main-nav > ul > li > a::after {
	content: '';
	position: absolute;
	left: clamp(0.45rem, 1.25vw, 1rem);
	right: clamp(0.45rem, 1.25vw, 1rem);
	bottom: 0.55rem;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.25s ease;
	opacity: 0.25;
}

body.temple-site .main-navigation .main-nav > ul > li:hover > a::after,
body.temple-site .main-navigation .main-nav > ul > li.focus > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current-menu-item > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current-menu-parent > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current-menu-ancestor > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current_page_item > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current_page_parent > a::after,
body.temple-site .main-navigation .main-nav > ul > li.current_page_ancestor > a::after {
	transform: scaleX(1);
}

body.temple-site .main-navigation .main-nav > ul > li:hover > a,
body.temple-site .main-navigation .main-nav > ul > li.focus > a,
body.temple-site .main-navigation .main-nav > ul > li.sfHover > a {
	background: transparent;
	color: var(--temple-red) !important;
}

body.temple-site .main-navigation .main-nav ul ul li:hover > a,
body.temple-site .main-navigation .main-nav ul ul li.focus > a,
body.temple-site .main-navigation .main-nav ul ul li.sfHover > a {
	background: #6d4f32;
	color: #ffffff !important;
}

body.temple-site .main-navigation .main-nav > ul > li.current-menu-item > a,
body.temple-site .main-navigation .main-nav > ul > li.current-menu-parent > a,
body.temple-site .main-navigation .main-nav > ul > li.current-menu-ancestor > a,
body.temple-site .main-navigation .main-nav > ul > li.current_page_item > a,
body.temple-site .main-navigation .main-nav > ul > li.current_page_parent > a,
body.temple-site .main-navigation .main-nav > ul > li.current_page_ancestor > a {
	background: transparent !important;
	color: var(--temple-red) !important;
}

body.temple-site .main-navigation .main-nav ul ul li.current-menu-item > a,
body.temple-site .main-navigation .main-nav ul ul li.current-menu-parent > a,
body.temple-site .main-navigation .main-nav ul ul li.current-menu-ancestor > a,
body.temple-site .main-navigation .main-nav ul ul li.current_page_item > a,
body.temple-site .main-navigation .main-nav ul ul li.current_page_parent > a,
body.temple-site .main-navigation .main-nav ul ul li.current_page_ancestor > a {
	background: rgba(180, 90, 86, 0.08) !important;
	color: var(--temple-red) !important;
}

body.temple-site .main-navigation .main-nav > ul > li.menu-item-has-children > a::before {
	display: none;
}

body.temple-site .main-navigation .main-nav ul ul {
	background: var(--temple-cream);
	box-shadow: var(--temple-shadow);
	border-radius: 0;
	min-width: 210px;
	padding: 0.45rem 0;
}

body.temple-site .main-navigation .main-nav ul ul a {
	font-size: 0.96rem;
	font-weight: 400;
	padding: 0.7rem 1rem;
}

body.temple-site .main-navigation .main-nav ul ul li:not(:last-child) a {
	border-bottom: 1px solid rgba(90, 67, 48, 0.08);
}

body.temple-site .main-navigation .main-nav ul ul ul {
	left: 100%;
	top: 0;
}

body.temple-site .entry-title,
body.temple-site h1,
body.temple-site h2,
body.temple-site h3,
body.temple-site h4,
body.temple-site h5,
body.temple-site h6 {
	color: var(--temple-black);
	font-weight: 300;
	line-height: 1.35;
}

body.temple-site .site-main,
body.temple-site .inside-article,
body.temple-site .widget {
	background: rgba(255, 255, 255, 0.56);
	border: 1px solid var(--temple-border);
	box-shadow: var(--temple-shadow);
	border-radius: 18px;
}

body.temple-site .inside-article {
	padding: 2rem;
}

body.temple-site.temple-latest-articles-page .content-area {
	float: none;
	margin-left: auto;
	margin-right: auto;
	max-width: 710px;
	width: 100%;
}

body.temple-site.temple-latest-articles-page .site-main,
body.temple-site.temple-latest-articles-page .inside-article {
	width: 100%;
}

body.temple-site.temple-latest-articles-page .entry-title {
	overflow-wrap: normal;
	word-break: keep-all;
}

body.temple-site.temple-article-index-page .content-area {
	float: none;
	margin-left: auto;
	margin-right: auto;
	max-width: none;
	width: 100% !important;
}

body.temple-site.temple-article-index-page #page.site.grid-container,
body.temple-site.temple-article-index-page .container.grid-container,
body.temple-site.temple-article-index-page #content.site-content,
body.temple-site.temple-article-index-page .site-content {
	box-sizing: border-box;
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: none;
	width: 100%;
}

body.temple-site.temple-article-index-page #right-sidebar,
body.temple-site.temple-article-index-page .is-right-sidebar,
body.temple-site.temple-article-index-page #left-sidebar,
body.temple-site.temple-article-index-page .is-left-sidebar {
	display: none !important;
}

body.temple-site.temple-article-index-page .site-main,
body.temple-site.temple-article-index-page .inside-article {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0 !important;
	width: 100%;
}

body.temple-site.temple-article-index-page .inside-article {
	box-sizing: border-box;
	padding: clamp(0.65rem, 1.8vw, 1.45rem) clamp(1rem, 4vw, 3.4rem) clamp(1.2rem, 4vw, 3.2rem);
}

body.temple-site.temple-article-index-page .entry-header {
	display: none;
}

body.temple-site.home .site-main,
body.temple-site.home .inside-article,
body.temple-site.home .widget {
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}

body.temple-site.home .entry-header {
	display: none;
}

body.temple-site.single-post {
	background: #f5efe5;
	font-family: 'Source Han Serif SC', 'Source Han Serif CN', 'Noto Serif SC', 'Songti SC', STSong, SimSun, serif;
}

body.temple-site.single-post .content-area {
	float: none;
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
	width: 100% !important;
}

body.temple-site.single-post .site-main,
body.temple-site.single-post .inside-article,
body.temple-site.single-post .widget {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
}

body.temple-site.single-post .inside-article {
	padding: clamp(2rem, 5vw, 4.8rem) clamp(1.1rem, 4.2vw, 2.8rem);
}

body.temple-site.single-post .entry-header {
	border-bottom: 1px solid rgba(90, 67, 48, 0.16);
	margin-bottom: clamp(1.6rem, 3vw, 2.6rem);
	padding-bottom: clamp(1rem, 2.4vw, 1.8rem);
}

body.temple-site.single-post .entry-title {
	color: var(--temple-black);
	font-family: 'Source Han Serif SC', 'Source Han Serif CN', 'Noto Serif SC', 'Songti SC', STSong, SimSun, serif;
	font-size: clamp(2rem, 4.2vw, 3.8rem);
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.32;
	margin: 0;
}

body.temple-site.single-post .entry-content {
	color: #2f261e;
	font-family: 'Source Han Serif SC', 'Source Han Serif CN', 'Noto Serif SC', 'Songti SC', STSong, SimSun, serif;
	font-size: clamp(1.05rem, 1.35vw, 1.22rem);
	line-height: 2.05;
}

body.temple-site.single-post .entry-content p,
body.temple-site.single-post .entry-content li {
	margin-bottom: 1.15em;
}

body.temple-site.single-post .entry-content a {
	color: #9f2f25;
	text-underline-offset: 0.18em;
}

body.temple-site.single-post .entry-content img {
	height: auto;
	max-width: 100%;
}

body.temple-site.single-post .post.has-post-thumbnail .inside-article {
	column-gap: clamp(2rem, 5vw, 4.5rem);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 380px);
	grid-template-areas:
		"header image"
		"content image";
}

body.temple-site.single-post .post.has-post-thumbnail .featured-image,
body.temple-site.single-post .post.has-post-thumbnail .page-header-image-single {
	align-self: start;
	grid-area: image;
	margin: 0;
	max-width: none;
	width: 100%;
}

body.temple-site.single-post .post.has-post-thumbnail .featured-image img,
body.temple-site.single-post .post.has-post-thumbnail .page-header-image-single img {
	display: block;
	height: auto;
	width: 100%;
}

body.temple-site.single-post .post.has-post-thumbnail .entry-header {
	grid-area: header;
}

body.temple-site.single-post .post.has-post-thumbnail .entry-content {
	grid-area: content;
}

body.temple-site.single-post.postid-206 .entry-header {
	margin-bottom: clamp(0.8rem, 1.5vw, 1.3rem);
	padding-bottom: clamp(0.5rem, 1.2vw, 0.9rem);
}

body.temple-site.single-post.postid-206 .post.has-post-thumbnail .featured-image,
body.temple-site.single-post.postid-206 .post.has-post-thumbnail .page-header-image-single {
	border-left: 2px solid rgba(159, 47, 37, 0.58);
	padding-left: clamp(0.65rem, 1.4vw, 1rem);
	position: relative;
}

body.temple-site.single-post .entry-meta,
body.temple-site.single-post footer.entry-meta,
body.temple-site.single-post .comments-area,
body.temple-site.single-post .comment-respond,
body.temple-site.single-post .post-navigation,
body.temple-site.single-post .nav-links,
body.temple-site.single-post #comments {
	display: none !important;
}

body.temple-site.home .site-content {
	height: 600px;
	min-height: 600px;
	background-image: url('../image/home/home-temple-pinting.webp');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: none;
	padding: 0;
	width: 100vw;
}

body.temple-site.home #right-sidebar,
body.temple-site.home .is-right-sidebar {
	display: none;
}

body.temple-site.home .content-area {
	float: none;
	left: auto;
	right: auto;
	width: 100%;
}

body.temple-site.home .site-main,
body.temple-site.home article,
body.temple-site.home .inside-article,
body.temple-site.home .entry-content {
	min-height: inherit;
	margin: 0;
	width: 100%;
}

body.temple-site.home .temple-home-links {
	background: var(--temple-page-background);
	border-top: 1px solid rgba(255, 255, 255, 0.72);
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 8px 1.4rem 6px;
	width: 100vw;
}

body.temple-site.home .temple-home-links-inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(0.7rem, 1.6vw, 1.05rem);
	font-family: var(--temple-serif-cn);
	margin: 0 auto;
	max-width: 1180px;
}

body.temple-site.home .temple-home-link-card {
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid var(--temple-border);
	border-radius: 8px;
	color: var(--temple-black);
	display: flex;
	flex-direction: column;
	min-height: 200px;
	padding: clamp(1rem, 2vw, 1.35rem);
	position: relative;
	text-decoration: none;
	transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease;
}

body.temple-site.home .temple-home-link-card::after {
	content: '';
	position: absolute;
	right: 1.1rem;
	bottom: 1.1rem;
	width: 2.4rem;
	height: 1px;
	background: var(--temple-gold);
	transition: width 0.24s ease, background 0.24s ease;
}

body.temple-site.home .temple-home-link-card:hover,
body.temple-site.home .temple-home-link-card:focus {
	border-color: rgba(180, 90, 86, 0.34);
	box-shadow: 0 16px 36px rgba(29, 27, 26, 0.08);
	color: var(--temple-black);
	outline: none;
	transform: translateY(-3px);
}

body.temple-site.home .temple-home-link-card:hover::after,
body.temple-site.home .temple-home-link-card:focus::after {
	background: var(--temple-red);
	width: 3.2rem;
}

body.temple-site.home .temple-home-link-image {
	align-self: center;
	align-items: end;
	display: grid;
	height: clamp(4rem, 6vw, 5.15rem);
	margin: -0.1rem auto 0.8rem;
	justify-items: center;
	position: relative;
	width: 100%;
}

body.temple-site.home .temple-home-link-image img {
	display: block;
	grid-area: 1 / 1;
	height: 100%;
	object-fit: contain;
	transform: translateY(var(--temple-home-link-image-offset-y, 0));
	transition: opacity 0.32s ease, filter 0.32s ease, transform 0.32s ease;
	width: min(100%, 6.1rem);
}

body.temple-site.home .temple-home-link-card:nth-child(2) .temple-home-link-image img {
	--temple-home-link-image-offset-y: -0.35rem;
	height: 98px;
	width: min(100%, 5.2rem);
}

body.temple-site.home .temple-home-link-image-base {
	opacity: 1;
}

body.temple-site.home .temple-home-link-image-color {
	opacity: 0;
}

body.temple-site.home .temple-home-link-card:hover .temple-home-link-image img,
body.temple-site.home .temple-home-link-card:focus .temple-home-link-image img {
	transform: translateY(var(--temple-home-link-image-offset-y, 0)) scale(1.035);
}

body.temple-site.home .temple-home-link-card:hover .temple-home-link-image-color,
body.temple-site.home .temple-home-link-card:focus .temple-home-link-image-color {
	opacity: 1;
}

body.temple-site.home .temple-home-link-card:hover .temple-home-link-image-base,
body.temple-site.home .temple-home-link-card:focus .temple-home-link-image-base {
	opacity: 0;
}

body.temple-site.home .temple-home-link-title {
	color: var(--temple-brown);
	font-size: clamp(1.32rem, 1.8vw, 1.72rem);
	font-weight: 300;
	line-height: 1.25;
	margin-bottom: 0.5rem;
}

body.temple-site.home .temple-home-link-description {
	color: rgba(29, 27, 26, 0.68);
	font-size: 0.94rem;
	font-weight: 300;
	line-height: 1.65;
	max-width: 16rem;
}

body.temple-site.home .temple-home-intro-link {
	background: rgba(255, 255, 255, 0.68);
	border: 1px solid rgba(179, 151, 96, 0.24);
	border-left: 3px solid rgba(179, 151, 96, 0.72);
	border-radius: 8px;
	color: rgba(29, 27, 26, 0.76);
	display: block;
	grid-column: 1 / -1;
	line-height: 1.9;
	margin: clamp(0.35rem, 1vw, 0.75rem) auto 0;
	max-width: 960px;
	padding: clamp(1rem, 2vw, 1.35rem) clamp(1.1rem, 2.4vw, 1.7rem);
	text-decoration: none;
	transition: border-color 0.24s ease, box-shadow 0.24s ease, color 0.24s ease;
}

body.temple-site.home .temple-home-intro-link:hover,
body.temple-site.home .temple-home-intro-link:focus {
	border-color: rgba(180, 90, 86, 0.34);
	box-shadow: 0 14px 34px rgba(29, 27, 26, 0.06);
	color: var(--temple-black);
	outline: none;
}

body.temple-site.home .temple-home-intro-text {
	display: block;
	font-size: clamp(0.98rem, 1.35vw, 1.08rem);
	font-weight: 300;
}

body.temple-site.home .temple-home-intro-more {
	color: var(--temple-brown);
	display: inline-block;
	font-size: 0.94rem;
	font-weight: 300;
	margin-top: 0.35rem;
}

body.temple-site.home .temple-home-intro-more::after {
	content: '';
	background: var(--temple-gold);
	display: inline-block;
	height: 1px;
	margin-left: 0.55rem;
	vertical-align: middle;
	width: 2.4rem;
}

body.temple-site .entry-title {
	font-size: clamp(1.8rem, 3vw, 2.8rem);
}

body.temple-site .page-title-bar,
body.temple-site .entry-header {
	border-bottom: 1px solid var(--temple-border);
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
}

body.temple-site .temple-page-block {
	border-top: 1px solid var(--temple-border);
	margin-top: 2.2rem;
	padding-top: 2rem;
}

body.temple-site .temple-page-grid {
	display: grid;
	gap: 1.35rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.temple-site .temple-page-card,
body.temple-site .temple-product-card {
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid var(--temple-border);
	border-radius: 12px;
	overflow: hidden;
	transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease;
}

body.temple-site .temple-page-card:hover,
body.temple-site .temple-page-card:focus-within,
body.temple-site .temple-product-card:hover,
body.temple-site .temple-product-card:focus-within {
	border-color: rgba(180, 90, 86, 0.32);
	box-shadow: 0 14px 34px rgba(29, 27, 26, 0.08);
	transform: translateY(-2px);
}

body.temple-site .temple-page-card-link,
body.temple-site .temple-product-link {
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 100%;
	text-decoration: none;
}

body.temple-site .temple-page-card-media,
body.temple-site .temple-product-media {
	aspect-ratio: 16 / 10;
	background: rgba(90, 67, 48, 0.08);
	display: grid;
	place-items: center;
	overflow: hidden;
}

body.temple-site .temple-page-card-media img,
body.temple-site .temple-product-media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

body.temple-site .temple-page-card-body,
body.temple-site .temple-product-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.15rem;
}

body.temple-site .temple-page-card-meta {
	color: var(--temple-gold);
	font-family: var(--temple-serif-cn);
	font-size: 0.82rem;
	line-height: 1;
	margin-bottom: 0.7rem;
}

body.temple-site .temple-page-card-title,
body.temple-site .temple-product-title {
	color: var(--temple-brown);
	font-size: 1.16rem;
	font-weight: 400;
	line-height: 1.45;
	margin-bottom: 0.55rem;
}

body.temple-site .temple-page-card-text {
	color: rgba(29, 27, 26, 0.68);
	font-size: 0.92rem;
	line-height: 1.7;
}

body.temple-site.temple-understand-buddhism-page .temple-page-posts {
	border-top-color: rgba(90, 67, 48, 0.1);
}

body.temple-site.temple-understand-buddhism-page .content-area {
	float: none;
	margin-left: auto;
	margin-right: auto;
	max-width: 1240px;
	width: 100% !important;
}

body.temple-site.temple-understand-buddhism-page #right-sidebar,
body.temple-site.temple-understand-buddhism-page .is-right-sidebar,
body.temple-site.temple-understand-buddhism-page #left-sidebar,
body.temple-site.temple-understand-buddhism-page .is-left-sidebar {
	display: none !important;
}

body.temple-site.temple-understand-buddhism-page #page.site.grid-container,
body.temple-site.temple-understand-buddhism-page .container.grid-container,
body.temple-site.temple-understand-buddhism-page #content.site-content,
body.temple-site.temple-understand-buddhism-page .site-content {
	box-sizing: border-box;
	max-width: none;
	width: 100%;
}

body.temple-site.temple-understand-buddhism-page .site-main,
body.temple-site.temple-understand-buddhism-page .inside-article {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin-left: auto;
	margin-right: auto;
}

body.temple-site.temple-understand-buddhism-page .inside-article {
	padding: clamp(1.2rem, 3vw, 2rem) clamp(1rem, 4vw, 3rem);
}

body.temple-site.temple-understand-buddhism-page .entry-header {
	border-bottom-color: rgba(90, 67, 48, 0.12);
	margin-bottom: 1.2rem;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card:hover,
body.temple-site.temple-understand-buddhism-page .temple-page-card:focus-within {
	border-color: transparent;
	box-shadow: none;
	transform: none;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-link {
	gap: 0.85rem;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-media {
	background: rgba(90, 67, 48, 0.06);
	border-radius: 4px;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-body {
	background: transparent;
	border: 0;
	padding: 0;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-meta {
	color: rgba(90, 67, 48, 0.48);
	font-size: 0.78rem;
	margin-bottom: 0.45rem;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-title {
	color: var(--temple-black);
	font-size: 1.08rem;
	line-height: 1.5;
	margin-bottom: 0.35rem;
}

body.temple-site.temple-understand-buddhism-page .temple-page-card-text {
	color: rgba(29, 27, 26, 0.62);
	font-size: 0.9rem;
	line-height: 1.75;
}

body.temple-site .temple-article-index {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}

body.temple-site .temple-article-index-heading {
	color: var(--temple-black);
	font-family: var(--temple-serif-cn);
	font-size: clamp(1.65rem, 3.2vw, 3.1rem);
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.2;
	margin: 0 auto clamp(0.9rem, 2.2vw, 1.65rem);
	text-align: center;
}

body.temple-site .temple-article-index-list {
	border-top: 1px solid rgba(90, 67, 48, 0.18);
	display: grid;
	grid-template-columns: 1fr;
	margin: 0 auto;
	max-width: none;
	width: 100%;
}

body.temple-site .temple-article-index-card {
	background: rgba(255, 255, 255, 0.48);
	border: 0;
	border-bottom: 1px solid rgba(90, 67, 48, 0.18);
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	overflow: hidden;
}

body.temple-site .temple-article-index-link {
	color: inherit;
	display: grid;
	grid-template-columns: 86px fit-content(500px) minmax(0, 1fr);
	min-height: 0;
	text-decoration: none;
	transition: background-color 180ms ease;
}

body.temple-site .temple-article-index-card.no-thumbnail .temple-article-index-link {
	grid-template-columns: 86px minmax(0, 1fr);
}

body.temple-site .temple-article-index-link:hover,
body.temple-site .temple-article-index-link:focus {
	background: rgba(141, 45, 30, 0.045);
	color: inherit;
}

body.temple-site .temple-article-index-title {
	align-items: center;
	border-right: 1px solid rgba(90, 67, 48, 0.14);
	color: var(--temple-red);
	display: flex;
	font-family: var(--temple-serif-cn);
	font-size: clamp(1.05rem, 1.35vw, 1.28rem);
	font-weight: 400;
	justify-content: center;
	letter-spacing: 0.08em;
	line-height: 1.55;
	padding: 1.1rem 0.75rem;
	text-align: center;
	writing-mode: vertical-rl;
}

body.temple-site .temple-article-index-media {
	background: transparent;
	border-right: 1px solid rgba(90, 67, 48, 0.14);
	display: grid;
	height: auto;
	justify-self: start;
	max-width: 500px;
	min-height: 0;
	overflow: hidden;
	place-items: start;
	width: fit-content;
}

body.temple-site .temple-article-index-media img {
	display: block;
	height: auto;
	max-height: 420px;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-link {
	grid-template-columns: 86px minmax(0, 376px) minmax(0, 1fr);
}

body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-media {
	height: 420px;
	max-width: none;
	place-items: start center;
	width: 376px;
}

body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-media img {
	height: 420px;
	max-height: none;
	max-width: none;
	object-fit: cover;
	object-position: top center;
	width: 376px;
}

body.temple-site .temple-article-index-body {
	align-content: start;
	display: grid;
	gap: 0.75rem;
	max-height: 420px;
	overflow: hidden;
	padding: 1.15rem clamp(1rem, 2.4vw, 1.65rem);
}

body.temple-site .temple-article-index-date {
	color: var(--temple-gold);
	font-family: var(--temple-serif-cn);
	font-size: 0.82rem;
	line-height: 1;
}

body.temple-site .temple-article-index-excerpt {
	color: rgba(29, 27, 26, 0.72);
	display: -webkit-box;
	font-size: 0.98rem;
	line-height: 1.82;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
}

body.temple-site .temple-scripture-library {
	margin: clamp(-2.25rem, -3vw, -1.65rem) auto 0;
	max-width: 1180px;
	padding: clamp(0.05rem, 0.8vw, 0.45rem) 0 clamp(1rem, 2.5vw, 2rem);
}

body.temple-site .temple-scripture-hero {
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.84), rgba(244, 238, 225, 0.68)),
		var(--temple-cream);
	border: 1px solid rgba(90, 67, 48, 0.14);
	border-radius: 6px;
	box-shadow: 0 10px 24px rgba(90, 67, 48, 0.055);
	display: grid;
	gap: 0.32rem;
	grid-template-columns: minmax(0, 1fr);
	margin-bottom: clamp(0.75rem, 1.7vw, 1.2rem);
	overflow: hidden;
	padding: clamp(0.7rem, 1.5vw, 1rem) clamp(0.9rem, 2vw, 1.35rem);
	position: relative;
}

body.temple-site .temple-scripture-hero::before {
	background: linear-gradient(180deg, rgba(159, 47, 37, 0.72), rgba(179, 138, 82, 0.72));
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 3px;
}

body.temple-site .temple-scripture-kicker {
	color: var(--temple-gold);
	font-size: 0.66rem;
	letter-spacing: 0.14em;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

body.temple-site .temple-scripture-hero h2 {
	color: #9f2f25;
	font-family: var(--temple-serif-cn);
	font-size: clamp(1.35rem, 2.4vw, 2rem);
	font-weight: 300;
	grid-column: 1;
	letter-spacing: 0.08em;
	line-height: 1.18;
	margin: 0;
}

body.temple-site .temple-scripture-hero p:not(.temple-scripture-kicker) {
	color: rgba(29, 27, 26, 0.68);
	font-size: clamp(0.82rem, 1vw, 0.94rem);
	grid-column: 1;
	line-height: 1.55;
	margin: 0;
	max-width: none;
	overflow-x: auto;
	scrollbar-width: none;
	white-space: nowrap;
	width: 100%;
}

body.temple-site .temple-scripture-hero p:not(.temple-scripture-kicker)::-webkit-scrollbar {
	display: none;
}

body.temple-site .temple-scripture-stats {
	align-self: center;
	border-left: 1px solid rgba(90, 67, 48, 0.14);
	display: grid;
	gap: 0.25rem;
	grid-column: 2;
	grid-row: 1 / span 3;
	justify-items: center;
	min-width: 8rem;
	padding-left: clamp(1rem, 2.5vw, 2rem);
}

body.temple-site .temple-scripture-stats span {
	color: var(--temple-brown);
	font-size: clamp(2rem, 4vw, 3.5rem);
	font-weight: 300;
	line-height: 1;
}

body.temple-site .temple-scripture-stats small {
	color: rgba(90, 67, 48, 0.66);
	font-size: 0.86rem;
	line-height: 1.2;
}

body.temple-site .temple-scripture-shelf {
	display: grid;
	gap: clamp(1rem, 2vw, 1.45rem);
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

body.temple-site .temple-scripture-book {
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(90, 67, 48, 0.14);
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(29, 27, 26, 0.06);
	display: grid;
	grid-template-rows: auto 1fr;
	min-height: 100%;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.temple-site .temple-scripture-book:hover,
body.temple-site .temple-scripture-book:focus-within {
	border-color: rgba(159, 47, 37, 0.26);
	box-shadow: 0 18px 42px rgba(29, 27, 26, 0.1);
	transform: translateY(-2px);
}

body.temple-site .temple-scripture-cover {
	aspect-ratio: 3 / 4;
	background:
		linear-gradient(90deg, rgba(90, 67, 48, 0.16), rgba(90, 67, 48, 0) 18%),
		linear-gradient(145deg, #b45a56, #eedfc2 64%, #ffffff);
	display: grid;
	isolation: isolate;
	overflow: hidden;
	padding: 1rem 1.1rem;
	place-items: center;
	position: relative;
}

body.temple-site .temple-scripture-cover::after {
	border: 1px solid rgba(255, 255, 255, 0.58);
	content: "";
	inset: 0.7rem;
	pointer-events: none;
	position: absolute;
}

body.temple-site .temple-scripture-cover img {
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
	z-index: -1;
}

body.temple-site .temple-scripture-cover-mark {
	align-self: start;
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(255, 255, 255, 0.76);
	color: #9f2f25;
	font-size: 0.78rem;
	letter-spacing: 0.14em;
	line-height: 1;
	padding: 0.45rem 0.55rem;
	justify-self: start;
}

body.temple-site .temple-scripture-cover-title {
	color: #ffffff;
	font-family: var(--temple-serif-cn);
	font-size: clamp(1.1rem, 2vw, 1.42rem);
	letter-spacing: 0.08em;
	line-height: 1.5;
	max-height: 9em;
	overflow: hidden;
	text-align: center;
	text-shadow: 0 2px 14px rgba(29, 27, 26, 0.26);
	writing-mode: vertical-rl;
}

body.temple-site .temple-scripture-book-body {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	padding: 1rem;
}

body.temple-site .temple-scripture-book-title {
	color: var(--temple-brown);
	font-size: 1.08rem;
	font-weight: 400;
	line-height: 1.45;
	text-decoration: none;
}

body.temple-site .temple-scripture-book-title:hover,
body.temple-site .temple-scripture-book-title:focus {
	color: #9f2f25;
	text-decoration: none;
}

body.temple-site .temple-scripture-book-meta {
	color: var(--temple-gold);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.82rem;
	gap: 0.42rem 0.6rem;
	line-height: 1.3;
	margin: 0;
}

body.temple-site .temple-scripture-book-meta span + span::before {
	color: rgba(90, 67, 48, 0.34);
	content: "/";
	margin-right: 0.6rem;
}

body.temple-site .temple-scripture-book-desc {
	color: rgba(29, 27, 26, 0.68);
	display: -webkit-box;
	font-size: 0.92rem;
	line-height: 1.65;
	margin: 0;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

body.temple-site .temple-scripture-book-actions {
	display: flex;
	gap: 0.55rem;
	margin-top: auto;
	padding-top: 0.35rem;
}

body.temple-site .temple-scripture-book-actions a {
	align-items: center;
	border: 1px solid rgba(180, 90, 86, 0.24);
	color: #9f2f25;
	display: inline-flex;
	font-size: 0.86rem;
	justify-content: center;
	line-height: 1;
	min-height: 2.25rem;
	padding: 0.55rem 0.78rem;
	text-decoration: none;
}

body.temple-site .temple-scripture-book-actions a:first-child {
	background: rgba(180, 90, 86, 0.08);
}

body.temple-site .temple-scripture-book-actions a:hover,
body.temple-site .temple-scripture-book-actions a:focus {
	background: rgba(159, 47, 37, 0.12);
	color: #7f2a24;
}

body.temple-site .temple-scripture-empty {
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(90, 67, 48, 0.14);
	border-radius: 8px;
	margin: 0;
	padding: 1rem 1.2rem;
}

body.temple-site .temple-product-price {
	color: var(--temple-red);
	font-size: 1.02rem;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 0.15rem;
}

body.temple-site .temple-product-button {
	align-self: flex-start;
	border: 1px solid rgba(180, 90, 86, 0.25);
	border-radius: 999px;
	color: var(--temple-red);
	font-size: 0.88rem;
	line-height: 1;
	margin-top: auto;
	padding: 0.55rem 0.9rem;
}

body.temple-site .temple-product-placeholder {
	color: rgba(29, 27, 26, 0.45);
	font-size: 0.92rem;
}

body.temple-site.woocommerce-shop {
	background: var(--temple-cream);
	font-family: var(--temple-serif-cn);
}

body.temple-site.woocommerce-shop #page {
	max-width: none;
	width: 100%;
}

body.temple-site.woocommerce-shop .site-content,
body.temple-site.woocommerce-shop .inside-article,
body.temple-site.woocommerce-shop .entry-content,
body.temple-site.woocommerce-shop .site-main {
	background: transparent;
}

body.temple-site.woocommerce-shop .site-content {
	display: block;
	max-width: none;
	width: 100%;
}

body.temple-site.woocommerce-shop .entry-header,
body.temple-site.woocommerce-shop .woocommerce-products-header,
body.temple-site.woocommerce-shop .woocommerce-breadcrumb,
body.temple-site.woocommerce-shop .woocommerce-result-count,
body.temple-site.woocommerce-shop .woocommerce-ordering {
	display: none;
}

body.temple-site.woocommerce-shop .content-area,
body.temple-site.woocommerce-shop .site-main {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	float: none;
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.temple-site.woocommerce-shop.right-sidebar .site-content .content-area,
body.temple-site.woocommerce-shop.both-sidebars .site-content .content-area,
body.temple-site.woocommerce-shop.left-sidebar .site-content .content-area {
	width: 100% !important;
}

body.temple-site.woocommerce-shop .widget-area,
body.temple-site.woocommerce-shop #right-sidebar,
body.temple-site.woocommerce-shop #left-sidebar {
	display: none !important;
}

body.temple-site.woocommerce-shop .inside-article {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding-top: 16px !important;
	padding-left: clamp(1.25rem, 5vw, 4.5rem);
	padding-right: clamp(1.25rem, 5vw, 4.5rem);
}

.temple-dharma-catalog {
	margin: 0 auto;
	max-width: 1180px;
	padding: 16px 0 clamp(4rem, 8vw, 7rem);
}

.temple-dharma-catalog-header {
	border-bottom: 1px solid rgba(90, 67, 48, 0.18);
	margin-bottom: clamp(1.25rem, 3vw, 2.2rem);
	padding-bottom: clamp(0.9rem, 2vw, 1.4rem);
}

.temple-dharma-catalog-kicker {
	color: rgba(90, 67, 48, 0.56);
	font-size: 0.82rem;
	font-weight: 400;
	letter-spacing: 0.18em;
	line-height: 1;
	margin: 0 0 0.9rem;
	text-transform: uppercase;
}

.temple-dharma-catalog h1 {
	color: var(--temple-brown);
	font-size: clamp(1.8rem, 4vw, 2.85rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
}

.temple-dharma-layout {
	align-items: start;
	display: grid;
	gap: clamp(1.25rem, 4vw, 3rem);
	grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
}

.temple-dharma-sidebar {
	align-content: start;
	display: grid;
	gap: 0.65rem;
	position: sticky;
	top: 124px;
}

.temple-dharma-category-button {
	align-items: center;
	background: var(--temple-red);
	border: 1px solid var(--temple-red);
	border-radius: 4px;
	box-sizing: border-box;
	color: var(--temple-cream) !important;
	display: flex;
	font-size: 1rem;
	font-weight: 400;
	justify-content: center;
	line-height: 1.2;
	min-height: 3rem;
	padding: 0.78rem 1rem;
	text-align: center;
	text-decoration: none !important;
}

.temple-dharma-category-button:hover,
.temple-dharma-category-button:focus,
.temple-dharma-category-button.is-active {
	background: var(--temple-brown);
	border-color: var(--temple-brown);
	color: #fff !important;
}

.temple-dharma-products-area {
	display: grid;
	gap: clamp(1.6rem, 4vw, 2.6rem);
	min-width: 0;
}

.temple-dharma-category-section {
	scroll-margin-top: 132px;
}

.temple-dharma-category-section:not(.is-active) {
	display: none;
}

body.temple-site.woocommerce-shop ul.products.temple-dharma-products {
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

body.temple-site.woocommerce-shop ul.products.temple-dharma-products::before,
body.temple-site.woocommerce-shop ul.products.temple-dharma-products::after {
	content: none;
}

body.temple-site.woocommerce-shop ul.products.temple-dharma-products li.product,
.temple-dharma-product-card {
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(90, 67, 48, 0.14);
	border-radius: 8px;
	box-sizing: border-box;
	display: flex;
	float: none;
	flex-direction: column;
	margin: 0 !important;
	min-height: 100%;
	overflow: hidden;
	padding: 0;
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	width: auto !important;
}

body.temple-site.woocommerce-shop ul.products.temple-dharma-products li.product:hover,
body.temple-site.woocommerce-shop ul.products.temple-dharma-products li.product:focus-within {
	border-color: rgba(180, 90, 86, 0.3);
	box-shadow: 0 14px 34px rgba(29, 27, 26, 0.08);
	transform: translateY(-2px);
}

.temple-dharma-product-link {
	color: inherit;
	display: flex;
	flex: 1;
	flex-direction: column;
	text-decoration: none !important;
}

.temple-dharma-product-media {
	aspect-ratio: 4 / 3;
	background: #fff;
	box-sizing: border-box;
	display: grid;
	margin: 0;
	overflow: hidden;
	place-items: center;
	position: relative;
	width: 100%;
}

body.temple-site.woocommerce-shop .temple-dharma-product-media img {
	display: block;
	height: calc(100% - 1.5rem) !important;
	inset: 0.75rem;
	max-height: none;
	max-width: none;
	object-fit: contain !important;
	position: absolute;
	width: calc(100% - 1.5rem) !important;
}

.temple-dharma-product-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-height: 8.2rem;
	padding: 1rem 1rem 0.85rem;
}

.temple-dharma-product-title {
	color: var(--temple-brown);
	font-size: clamp(1rem, 1.4vw, 1.16rem);
	font-weight: 400;
	line-height: 1.45;
	margin: 0 0 0.45rem;
	overflow-wrap: anywhere;
}

.temple-dharma-product-price {
	color: var(--temple-red);
	font-size: 0.98rem;
	line-height: 1.45;
	margin: auto 0 0;
}

.temple-dharma-product-price del {
	color: rgba(90, 67, 48, 0.48);
}

.temple-dharma-product-price ins {
	text-decoration: none;
}

.temple-dharma-product-action {
	padding: 0 1rem 1rem;
}

body.temple-site.woocommerce-shop .temple-dharma-product-action .button,
body.temple-site.woocommerce-shop .temple-dharma-product-action .added_to_cart {
	align-items: center;
	background: transparent;
	border: 1px solid rgba(180, 90, 86, 0.3);
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--temple-red);
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 400;
	justify-content: center;
	line-height: 1;
	min-height: 2.55rem;
	padding: 0.75rem 0.9rem;
	text-align: center;
	text-decoration: none !important;
	width: 100%;
}

body.temple-site.woocommerce-shop .temple-dharma-product-action .button:hover,
body.temple-site.woocommerce-shop .temple-dharma-product-action .button:focus,
body.temple-site.woocommerce-shop .temple-dharma-product-action .added_to_cart:hover,
body.temple-site.woocommerce-shop .temple-dharma-product-action .added_to_cart:focus {
	background: var(--temple-red);
	color: var(--temple-cream);
}

body.temple-site.woocommerce-shop .woocommerce-info,
body.temple-site.woocommerce-shop .woocommerce-message,
body.temple-site.woocommerce-shop .woocommerce-error {
	background: transparent;
	border: 1px solid rgba(90, 67, 48, 0.18);
	color: var(--temple-brown);
	margin: 0 0 1.5rem;
}

body.temple-site.single-product {
	background: #fff;
	font-family: var(--temple-serif-cn);
}

body.temple-site.single-product #page {
	max-width: none;
	width: 100%;
}

body.temple-site.single-product .site-content,
body.temple-site.single-product .inside-article,
body.temple-site.single-product .entry-content,
body.temple-site.single-product .site-main {
	background: #fff;
}

body.temple-site.single-product .entry-header,
body.temple-site.single-product .woocommerce-breadcrumb {
	display: none;
}

body.temple-site.single-product .content-area,
body.temple-site.single-product .site-main {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	float: none;
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.temple-site.single-product.right-sidebar .site-content .content-area,
body.temple-site.single-product.both-sidebars .site-content .content-area,
body.temple-site.single-product.left-sidebar .site-content .content-area {
	width: 100% !important;
}

body.temple-site.single-product .widget-area,
body.temple-site.single-product #right-sidebar,
body.temple-site.single-product #left-sidebar {
	display: none !important;
}

body.temple-site.single-product .inside-article {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: clamp(1.5rem, 5vw, 4.5rem);
}

.temple-single-product {
	color: var(--temple-black);
	margin: 0 auto;
	max-width: 1180px;
}

.temple-single-product-main {
	align-items: start;
	display: grid;
	gap: clamp(2rem, 6vw, 5.5rem);
	grid-template-columns: minmax(320px, 0.92fr) minmax(320px, 0.78fr);
}

.temple-single-product-gallery {
	min-width: 0;
}

body.temple-site.single-product .temple-single-product-gallery .onsale {
	background: var(--temple-red);
	border-radius: 4px;
	color: #fff;
	font-size: 0.82rem;
	font-weight: 400;
	left: 0.75rem;
	letter-spacing: 0.06em;
	line-height: 1;
	min-height: 0;
	padding: 0.55rem 0.7rem;
	top: 0.75rem;
}

body.temple-site.single-product .woocommerce-product-gallery {
	margin: 0;
	max-width: none;
	position: relative;
	width: 100%;
}

body.temple-site.single-product div.product div.images,
body.temple-site.single-product div.product div.summary {
	float: none;
	margin: 0;
	width: auto;
}

body.temple-site.single-product .woocommerce-product-gallery__wrapper {
	background: #fff;
	border-bottom: 1px solid rgba(90, 67, 48, 0.16);
	margin: 0;
}

body.temple-site.single-product .woocommerce-product-gallery__image {
	background: #fff;
}

body.temple-site.single-product .woocommerce-product-gallery__image a {
	display: grid;
	min-height: clamp(280px, 36vw, 440px);
	place-items: center;
}

body.temple-site.single-product .woocommerce-product-gallery__image img {
	height: auto;
	max-height: clamp(280px, 34vw, 420px);
	object-fit: contain;
	width: min(100%, clamp(280px, 36vw, 460px));
}

body.temple-site.single-product .woocommerce-product-gallery__trigger {
	align-items: center;
	background: rgba(180, 90, 86, 0.08);
	border: 1px solid rgba(180, 90, 86, 0.2);
	border-radius: 4px;
	color: var(--temple-red);
	display: inline-flex;
	height: 2.2rem;
	justify-content: center;
	left: auto !important;
	position: absolute;
	right: 0.75rem !important;
	text-decoration: none;
	top: 0.75rem !important;
	width: 2.2rem;
	z-index: 2;
}

body.temple-site.single-product .flex-control-thumbs {
	display: grid;
	gap: 0.65rem;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 1rem 0 0;
	padding: 0;
}

body.temple-site.single-product .flex-control-thumbs li {
	border: 1px solid rgba(90, 67, 48, 0.14);
	border-radius: 4px;
	box-sizing: border-box;
	cursor: pointer;
	list-style: none;
	margin: 0 !important;
	overflow: hidden;
	width: auto !important;
}

body.temple-site.single-product .flex-control-thumbs img {
	aspect-ratio: 1;
	display: block;
	height: 100%;
	object-fit: contain;
	opacity: 0.72;
	width: 100%;
}

body.temple-site.single-product .flex-control-thumbs img.flex-active,
body.temple-site.single-product .flex-control-thumbs img:hover {
	opacity: 1;
}

.temple-single-product-summary {
	border-left: 2px solid rgba(180, 90, 86, 0.22);
	padding-left: clamp(1.3rem, 3vw, 2.4rem);
}

body.temple-site.single-product .product_title {
	color: var(--temple-brown);
	font-size: clamp(2rem, 5vw, 4rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0 0 1rem;
}

body.temple-site.single-product .woocommerce-product-rating {
	align-items: center;
	color: rgba(90, 67, 48, 0.66);
	display: flex;
	font-size: 0.9rem;
	gap: 0.7rem;
	margin: 0 0 1.2rem;
}

body.temple-site.single-product .star-rating {
	color: var(--temple-red);
}

body.temple-site.single-product .summary p.price,
body.temple-site.single-product .summary .price {
	border-bottom: 1px solid rgba(180, 90, 86, 0.24);
	border-top: 1px solid rgba(180, 90, 86, 0.24);
	color: var(--temple-red);
	font-size: clamp(1.4rem, 3vw, 2.15rem);
	font-weight: 500;
	line-height: 1.2;
	margin: 0 0 1.35rem;
	padding: 1.05rem 0;
}

body.temple-site.single-product .summary .price del {
	color: rgba(90, 67, 48, 0.42);
	font-size: 0.78em;
}

body.temple-site.single-product .summary .price ins {
	text-decoration: none;
}

body.temple-site.single-product .woocommerce-product-details__short-description {
	border-left: 3px solid var(--temple-red);
	color: rgba(29, 27, 26, 0.74);
	font-size: 1rem;
	line-height: 1.8;
	margin: 0 0 1.6rem;
	padding: 0.1rem 0 0.1rem 1rem;
}

body.temple-site.single-product form.cart {
	align-items: stretch;
	border-bottom: 1px solid rgba(180, 90, 86, 0.2);
	border-top: 1px solid rgba(180, 90, 86, 0.2);
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 0 0 1.35rem;
	padding: 1.1rem 0;
}

body.temple-site.single-product form.cart .quantity {
	float: none;
	margin: 0;
}

body.temple-site.single-product form.cart .qty {
	background: #fff;
	border: 1px solid rgba(180, 90, 86, 0.28);
	border-radius: 4px;
	color: var(--temple-brown);
	font-family: inherit;
	min-height: 3.2rem;
	padding: 0.5rem;
	width: 5.4rem;
}

body.temple-site.single-product .single_add_to_cart_button {
	background: var(--temple-red) !important;
	border: 1px solid var(--temple-red) !important;
	border-radius: 4px !important;
	box-shadow: none;
	color: #fff !important;
	flex: 1 1 12rem;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 500;
	justify-content: center;
	min-height: 3.2rem;
	padding: 0.9rem 1.2rem;
}

body.temple-site.single-product .single_add_to_cart_button:hover,
body.temple-site.single-product .single_add_to_cart_button:focus {
	background: var(--temple-brown) !important;
	border-color: var(--temple-brown) !important;
}

body.temple-site.single-product .product_meta {
	border-top: 0;
	color: rgba(90, 67, 48, 0.62);
	font-size: 0.9rem;
	line-height: 1.75;
	margin: 0;
	padding: 0;
}

body.temple-site.single-product .product_meta a {
	color: var(--temple-red);
	text-decoration: none;
}

.temple-single-product-details {
	border-top: 1px solid rgba(180, 90, 86, 0.3);
	margin-top: clamp(2.6rem, 6vw, 5rem);
	padding-top: clamp(1.6rem, 4vw, 2.8rem);
}

body.temple-site.single-product .woocommerce-tabs {
	margin: 0;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid rgba(180, 90, 86, 0.22);
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0 0 0.9rem;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs::before,
body.temple-site.single-product .woocommerce-tabs ul.tabs::after {
	content: none;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs li {
	background: transparent;
	border: 0;
	border-radius: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs li::before,
body.temple-site.single-product .woocommerce-tabs ul.tabs li::after {
	content: none;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs li a {
	background: rgba(180, 90, 86, 0.08);
	border: 1px solid rgba(180, 90, 86, 0.22);
	border-radius: 4px;
	color: var(--temple-red);
	display: inline-flex;
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1;
	padding: 0.8rem 1rem;
	text-decoration: none;
}

body.temple-site.single-product .woocommerce-tabs ul.tabs li.active a,
body.temple-site.single-product .woocommerce-tabs ul.tabs li a:hover,
body.temple-site.single-product .woocommerce-tabs ul.tabs li a:focus {
	background: var(--temple-red);
	border-color: var(--temple-red);
	color: #fff;
}

body.temple-site.single-product .woocommerce-Tabs-panel {
	border-left: 3px solid var(--temple-red);
	color: rgba(29, 27, 26, 0.76);
	font-size: 1rem;
	line-height: 1.85;
	margin: 0 0 2rem;
	padding: 0.2rem 0 0.2rem clamp(1rem, 3vw, 1.8rem);
}

body.temple-site.single-product .woocommerce-Tabs-panel h2,
body.temple-site.single-product .related.products > h2,
body.temple-site.single-product .up-sells > h2 {
	color: var(--temple-red);
	font-size: clamp(1.35rem, 3vw, 2rem);
	font-weight: 400;
	line-height: 1.25;
	margin: 0 0 1rem;
}

body.temple-site.single-product #reviews {
	color: rgba(29, 27, 26, 0.76);
}

body.temple-site.single-product #reviews #comments {
	border-bottom: 1px solid rgba(180, 90, 86, 0.18);
	margin-bottom: 1.5rem;
	padding-bottom: 1.2rem;
}

body.temple-site.single-product #review_form_wrapper {
	border-left: 3px solid var(--temple-red);
	padding-left: clamp(1rem, 3vw, 1.8rem);
}

body.temple-site.single-product #review_form input,
body.temple-site.single-product #review_form textarea {
	border: 1px solid rgba(180, 90, 86, 0.22);
	border-radius: 4px;
	font-family: inherit;
}

body.temple-site.single-product #review_form #submit {
	background: var(--temple-red);
	border-radius: 4px;
	color: #fff;
}

body.temple-site.single-product .related.products,
body.temple-site.single-product .up-sells {
	border-top: 1px solid rgba(180, 90, 86, 0.24);
	margin-top: 2.2rem;
	padding-top: 1.8rem;
}

@media (max-width: 900px) {
	body.temple-site .temple-scripture-hero {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-scripture-stats {
		border-left: 0;
		border-top: 1px solid rgba(90, 67, 48, 0.14);
		grid-column: 1;
		grid-row: auto;
		justify-items: start;
		min-width: 0;
		padding-left: 0;
		padding-top: 1rem;
	}

	body.temple-site .temple-scripture-shelf {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.temple-single-product-main {
		gap: 2rem;
		grid-template-columns: 1fr;
	}

	.temple-single-product-summary {
		border-left: 0;
		border-top: 2px solid rgba(180, 90, 86, 0.22);
		padding-left: 0;
		padding-top: 1.4rem;
	}

	.temple-dharma-layout {
		grid-template-columns: 1fr;
	}

	.temple-dharma-sidebar {
		display: flex;
		overflow-x: auto;
		padding-bottom: 0.2rem;
		position: static;
		scrollbar-width: thin;
	}

	.temple-dharma-category-button {
		flex: 0 0 auto;
		min-width: 8rem;
	}

	body.temple-site.woocommerce-shop ul.products.temple-dharma-products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.temple-dharma-product-body {
		min-height: 7.8rem;
	}
}

@media (max-width: 560px) {
	body.temple-site .temple-scripture-library {
		padding-top: 0;
	}

	body.temple-site .temple-scripture-hero {
		border-left: 0;
		border-right: 0;
		margin-left: -1rem;
		margin-right: -1rem;
		padding: 0.75rem 1rem;
	}

	body.temple-site .temple-scripture-hero h2 {
		font-size: 1.32rem;
		letter-spacing: 0.06em;
	}

	body.temple-site .temple-scripture-shelf {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-scripture-book {
		grid-template-columns: 104px minmax(0, 1fr);
		grid-template-rows: 1fr;
	}

	body.temple-site .temple-scripture-cover {
		aspect-ratio: auto;
		min-height: 100%;
		padding: 0.8rem 0.65rem;
	}

	body.temple-site .temple-scripture-cover-title {
		font-size: 1rem;
	}

	body.temple-site .temple-scripture-book-actions {
		flex-wrap: wrap;
	}

	body.temple-site.single-product .inside-article {
		padding: 1.25rem;
	}

	body.temple-site.single-product .woocommerce-product-gallery__image a {
		min-height: 280px;
	}

	body.temple-site.single-product form.cart {
		display: grid;
		grid-template-columns: 1fr;
	}

	body.temple-site.single-product form.cart .qty,
	body.temple-site.single-product .single_add_to_cart_button {
		width: 100%;
	}

	body.temple-site.single-product .woocommerce-tabs ul.tabs {
		display: grid;
		grid-template-columns: 1fr;
	}

	body.temple-site.single-product .woocommerce-tabs ul.tabs li a {
		justify-content: center;
		width: 100%;
	}

	body.temple-site.woocommerce-shop .inside-article {
		padding-left: 1.1rem;
		padding-right: 1.1rem;
	}

	.temple-dharma-catalog {
		padding-top: 16px;
	}

	body.temple-site.woocommerce-shop ul.products.temple-dharma-products {
		grid-template-columns: minmax(0, 1fr);
	}

	.temple-dharma-product-media {
		aspect-ratio: 16 / 10;
	}

	.temple-dharma-product-body {
		min-height: 7rem;
	}
}

body.temple-site .temple-page-empty,
body.temple-site .temple-page-posts-empty {
	border-top: 1px solid var(--temple-border);
	color: rgba(29, 27, 26, 0.62);
	margin-top: 2rem;
	padding-top: 1.4rem;
}

body.temple-site .temple-home-rites-section {
	background: var(--temple-page-background);
	font-family: var(--temple-serif-cn);
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: clamp(1.1rem, 2.4vw, 2rem) clamp(1.15rem, 5vw, 4rem);
	width: 100vw;
}

body.temple-site .temple-home-rites-inner {
	margin: 0 auto;
	max-width: 1180px;
	overflow-x: auto;
}

body.temple-site .temple-home-rites-list {
	border-left: 1px solid rgba(90, 67, 48, 0.18);
	border-top: 1px solid rgba(90, 67, 48, 0.18);
	display: grid;
	grid-template-columns: repeat(var(--temple-home-rites-count), minmax(13rem, 1fr));
	width: 100%;
}

body.temple-site .temple-home-rites-card {
	background: transparent;
	border-bottom: 1px solid rgba(90, 67, 48, 0.18);
	border-right: 1px solid rgba(90, 67, 48, 0.18);
	min-width: 0;
	overflow: hidden;
}

body.temple-site .temple-home-rites-toggle {
	appearance: none;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: inherit;
	cursor: pointer;
	display: grid;
	gap: clamp(0.65rem, 1.2vw, 1rem);
	grid-template-rows: auto 1fr;
	min-height: clamp(7.2rem, 10vw, 9rem);
	padding: clamp(0.95rem, 1.8vw, 1.35rem);
	text-align: left;
	width: 100%;
}

body.temple-site .temple-home-rites-toggle:hover,
body.temple-site .temple-home-rites-toggle:focus {
	background: transparent !important;
	color: inherit;
}

body.temple-site .temple-home-rites-toggle:focus-visible {
	outline: 1px solid rgba(180, 90, 86, 0.55);
	outline-offset: -5px;
}

body.temple-site .temple-home-rites-date {
	color: rgba(90, 67, 48, 0.7);
	display: grid;
	font-family: var(--temple-serif-cn);
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.35;
	transition: color 0.28s ease;
}

body.temple-site .temple-home-rites-date small {
	color: rgba(90, 67, 48, 0.54);
	font-size: 0.78rem;
	font-weight: 300;
	margin-top: 0.25rem;
	transition: color 0.28s ease;
}

body.temple-site .temple-home-rites-title {
	align-self: start;
	color: var(--temple-black);
	font-family: var(--temple-serif-cn);
	font-size: clamp(1.22rem, 1.8vw, 1.72rem);
	font-weight: 400;
	line-height: 1.45;
	overflow-wrap: anywhere;
	transition: color 0.28s ease;
}

body.temple-site .temple-home-rites-card.is-open .temple-home-rites-date,
body.temple-site .temple-home-rites-card.is-open .temple-home-rites-date small,
body.temple-site .temple-home-rites-card.is-open .temple-home-rites-title {
	color: var(--temple-red);
}

body.temple-site .temple-home-rites-panel {
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height 0.34s ease, opacity 0.24s ease;
}

body.temple-site .temple-home-rites-card.is-open .temple-home-rites-panel {
	opacity: 1;
}

body.temple-site .temple-home-rites-detail {
	border-top: 1px solid rgba(90, 67, 48, 0.12);
	margin: 0 clamp(1.15rem, 2.3vw, 1.8rem);
	padding: 1rem 0 1.25rem;
}

body.temple-site .temple-home-rites-detail dl {
	display: grid;
	gap: 0.75rem;
	margin: 0;
}

body.temple-site .temple-home-rites-detail dl > div {
	display: grid;
	gap: 0.35rem;
}

body.temple-site .temple-home-rites-detail dt {
	color: rgba(90, 67, 48, 0.58);
	font-size: 0.78rem;
	font-weight: 400;
	line-height: 1.4;
	margin: 0;
}

body.temple-site .temple-home-rites-detail dd {
	color: rgba(29, 27, 26, 0.78);
	font-size: 0.92rem;
	font-weight: 300;
	line-height: 1.75;
	margin: 0;
	overflow-wrap: anywhere;
}

body.temple-site .temple-prayer-section {
	height: calc(100svh - var(--temple-fixed-header-height, 112px));
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: 0;
	overflow: hidden;
	padding: 0;
	scroll-margin-top: 0;
	width: 100vw;
	background: #e6e5cc;
}

body.temple-site .temple-prayer-layout {
	display: grid;
	gap: 0;
	grid-template-columns: minmax(220px, 0.86fr) minmax(440px, 1.6fr);
	align-items: stretch;
	height: 100%;
	min-height: 0;
	background: #e6e5cc;
}

body.temple-site .temple-prayer-visual,
body.temple-site .temple-prayer-content,
body.temple-site .temple-prayer-guides {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	min-height: 0;
}

body.temple-site .temple-prayer-visual {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	padding: 0;
	overflow: hidden;
}

body.temple-site .temple-prayer-image {
	display: block;
	height: 100%;
	max-width: none;
	object-fit: cover;
	width: 100%;
}

body.temple-site .temple-prayer-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	padding: clamp(1.15rem, 3.2vw, 2.8rem) clamp(1.4rem, 4.5vw, 4.2rem) clamp(0.8rem, 2.5vw, 2rem);
	text-align: center;
	min-height: 0;
}

body.temple-site .temple-prayer-title {
	color: var(--temple-brown);
	font-size: clamp(1.6rem, 2.6vw, 2.8rem);
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.4;
	margin: 0;
	width: 100%;
}

body.temple-site .temple-prayer-title svg {
	display: block;
	height: auto;
	margin: 0 auto;
	width: clamp(13rem, 28vw, 24rem);
}

body.temple-site .temple-prayer-title svg path {
	fill: currentColor;
}

body.temple-site .temple-prayer-incense {
	display: flex;
	justify-content: center;
	margin-top: clamp(1.25rem, 2.3vw, 2.2rem);
	transform: translateY(0);
	transition: transform 0.52s ease;
	width: min(100%, 220px);
}

body.temple-site .temple-prayer-incense-image {
	display: block;
	height: auto;
	mix-blend-mode: multiply;
	width: 100%;
}

body.temple-site .temple-prayer-guides {
	display: flex;
	flex-direction: column;
	margin-top: clamp(0.8rem, 2vw, 1.7rem);
	min-height: 0;
	padding: 0;
	transition: min-height 0.52s ease, padding-bottom 0.52s ease;
	width: min(100%, 620px);
}

body.temple-site .temple-prayer-guide-title {
	color: var(--temple-brown);
	font-size: 1.2rem;
	font-weight: 400;
	margin-bottom: 0.55rem;
	text-align: center;
}

body.temple-site .temple-prayer-guide-intro {
	color: rgba(29, 27, 26, 0.78);
	font-size: 0.94rem;
	line-height: 1.72;
	margin: 0 auto 0.85rem;
	max-width: none;
	text-align: center;
	white-space: nowrap;
	width: 100%;
}

body.temple-site .temple-prayer-guide-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.72rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	justify-content: center;
	opacity: 1;
	position: relative;
	transform: translateY(0);
	transition: opacity 0.42s ease, transform 0.42s ease;
}

body.temple-site .temple-prayer-guide-list li {
	margin: 0;
}

body.temple-site .temple-prayer-guide-step {
	background:
		linear-gradient(90deg, rgba(138, 99, 58, 0.16), rgba(138, 99, 58, 0.02) 12%, transparent 22%),
		linear-gradient(145deg, #fffdf8 0%, #fbf4e7 52%, #f2e4cf 100%);
	border: 1px solid rgba(90, 67, 48, 0.18);
	border-radius: 8px;
	box-shadow:
		0 16px 30px rgba(63, 45, 29, 0.11),
		inset 0 0 0 1px rgba(255, 255, 255, 0.72);
	display: grid;
	grid-template-rows: auto 1fr;
	gap: 0.54rem;
	min-width: 0;
	overflow: hidden;
	padding: 0.48rem 0.48rem 0.58rem;
	position: relative;
	text-align: left;
}

body.temple-site .temple-prayer-guide-step::before,
body.temple-site .temple-prayer-guide-step::after {
	content: "";
	pointer-events: none;
	position: absolute;
}

body.temple-site .temple-prayer-guide-step::before {
	background:
		linear-gradient(180deg, rgba(180, 90, 86, 0.24), rgba(179, 138, 82, 0.28)),
		repeating-linear-gradient(180deg, transparent 0 10px, rgba(255, 253, 248, 0.32) 10px 11px);
	bottom: 0.48rem;
	left: 0;
	top: 0.48rem;
	width: 0.3rem;
}

body.temple-site .temple-prayer-guide-step::after {
	border-bottom: 1px solid rgba(90, 67, 48, 0.13);
	border-top: 1px solid rgba(255, 255, 255, 0.82);
	bottom: 0.34rem;
	left: 0.72rem;
	right: 0.72rem;
}

body.temple-site .temple-prayer-guide-image {
	aspect-ratio: 4 / 3;
	background: #fffdf8;
	border: 4px solid #fffaf2;
	border-radius: 6px;
	box-shadow:
		0 0 0 1px rgba(90, 67, 48, 0.16),
		0 9px 18px rgba(60, 43, 27, 0.13);
	display: block;
	height: auto;
	object-fit: cover;
	position: relative;
	width: 100%;
	z-index: 1;
}

body.temple-site .temple-prayer-guide-body {
	align-items: start;
	background:
		linear-gradient(180deg, rgba(255, 253, 248, 0.92), rgba(248, 239, 224, 0.88)),
		repeating-linear-gradient(0deg, transparent 0 1.45rem, rgba(90, 67, 48, 0.07) 1.45rem calc(1.45rem + 1px));
	border: 1px solid rgba(90, 67, 48, 0.13);
	border-radius: 6px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
	display: block;
	min-height: 5.15rem;
	padding: 0.54rem 0.46rem 0.58rem;
	position: relative;
	z-index: 1;
}

body.temple-site .temple-prayer-guide-body::after {
	background: rgba(180, 90, 86, 0.16);
	border-radius: 999px;
	content: "";
	height: 0.32rem;
	position: absolute;
	right: 0.55rem;
	top: 0.55rem;
	width: 0.32rem;
}

body.temple-site .temple-prayer-guide-icon {
	background: #b45a56;
	border: 0;
	box-shadow: none;
	color: #fffdf8;
	display: inline-grid;
	place-items: center;
	width: 1.16rem;
	height: 1.16rem;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 600;
	flex: 0 0 auto;
	left: 0.52rem;
	position: absolute;
	top: 0.63rem;
}

body.temple-site .temple-prayer-guide-text {
	color: rgba(48, 39, 30, 0.84);
	display: block;
	font-size: 0.8rem;
	line-height: 1.58;
	text-indent: 1.55rem;
	text-wrap: pretty;
}

body.temple-site .temple-prayer-guides.is-prayer-sequencing .temple-prayer-guide-list {
	opacity: 0;
	pointer-events: none;
	transform: translateY(-0.7rem);
}

body.temple-site .temple-prayer-guides.is-prayer-sequencing.is-prayer-returning .temple-prayer-guide-list {
	opacity: 1;
	transform: translateY(0);
}

body.temple-site .temple-prayer-guides.is-prayer-sequencing {
	min-height: clamp(25rem, 38vw, 34rem);
}

body.temple-site .temple-prayer-sequence-stage {
	align-items: center;
	display: flex;
	inset: clamp(4.2rem, 8vw, 5.5rem) 0 0;
	justify-content: center;
	min-height: clamp(12rem, 18vw, 16rem);
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

body.temple-site .temple-prayer-sequence-stage.is-leaving {
	opacity: 0;
	transition: opacity 0.48s ease;
}

body.temple-site .temple-prayer-sequence-step {
	background: transparent;
	border: 0;
	box-shadow: none;
	gap: 0.75rem;
	max-width: min(100%, 24rem);
	padding: 0;
	text-align: left;
	transform: translateY(0.5rem);
	transition: transform 0.54s ease;
	width: min(100%, 24rem);
}

body.temple-site .temple-prayer-sequence-step::before,
body.temple-site .temple-prayer-sequence-step::after,
body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-body::after {
	display: none;
}

body.temple-site .temple-prayer-sequence-step.is-visible {
	transform: translateY(0);
}

body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-image {
	aspect-ratio: auto;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	max-height: none;
	max-width: 100%;
	object-fit: contain;
	opacity: 0;
	transform: translateY(0.45rem);
	transition: opacity 0.8s ease, transform 0.8s ease;
	width: min(100%, clamp(14rem, 24vw, 22rem));
}

body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-image.is-visible {
	opacity: 1;
	transform: translateY(0);
}

body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-body {
	align-items: start;
	background: transparent;
	border: 0;
	box-shadow: none;
	display: grid;
	grid-template-columns: auto 1fr;
	min-height: 0;
	padding: 0;
}

body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-icon {
	left: auto;
	position: static;
	top: auto;
}

body.temple-site .temple-prayer-sequence-step .temple-prayer-guide-text {
	font-size: 0.95rem;
	line-height: 1.78;
	text-indent: 0;
}

body.temple-site .temple-prayer-sequence-line {
	color: rgba(90, 67, 48, 0.86);
	display: block;
	margin-top: 0.45rem;
	opacity: 0;
	transform: translateY(0.45rem);
	transition: opacity 0.58s ease, transform 0.58s ease;
}

body.temple-site .temple-prayer-sequence-line.is-visible {
	opacity: 1;
	transform: translateY(0);
}

body.temple-site .temple-prayer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	justify-content: center;
	margin-top: clamp(0.1rem, 0.6vw, 0.55rem);
	transition: transform 0.52s ease;
}

body.temple-site .temple-prayer-guides {
	position: relative;
}

body.temple-site .temple-prayer-guides.is-prayer-sequencing ~ .temple-prayer-incense {
	transform: translateY(clamp(2.2rem, 4vw, 4rem));
}

body.temple-site .temple-prayer-guides.is-prayer-sequencing ~ .temple-prayer-actions {
	transform: translateY(clamp(2.4rem, 4.5vw, 4.4rem));
}

body.temple-site .temple-prayer-button {
	align-items: center;
	appearance: none;
	background: transparent;
	border: 1px solid rgba(180, 90, 86, 0.58);
	border-radius: 0;
	box-shadow: none;
	color: var(--temple-red);
	cursor: pointer;
	display: inline-flex;
	font-family: var(--temple-header-cn);
	font-size: clamp(1.05rem, 1.45vw, 1.22rem);
	font-weight: 400;
	justify-content: center;
	letter-spacing: 0.12em;
	line-height: 1;
	min-height: 2.9rem;
	min-width: 8.4rem;
	overflow: hidden;
	padding: 0.82rem 1.65rem;
	position: relative;
	text-decoration: none;
	transition: border-color 0.24s ease, color 0.24s ease;
	z-index: 0;
}

body.temple-site .temple-prayer-button::before {
	background: var(--temple-red);
	content: '';
	inset: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.28s ease;
	z-index: -1;
}

body.temple-site .temple-prayer-button:hover,
body.temple-site .temple-prayer-button:focus,
body.temple-site .temple-prayer-button:focus-visible {
	background: transparent;
	border-color: var(--temple-red);
	color: #fff7f0;
	outline: none;
}

body.temple-site .temple-prayer-button:hover::before,
body.temple-site .temple-prayer-button:focus::before,
body.temple-site .temple-prayer-button:focus-visible::before {
	transform: scaleX(1);
}

body.temple-site .temple-prayer-button:active::before {
	transform: scaleX(1);
}

body.temple-site .temple-prayer-button:disabled {
	cursor: default;
	opacity: 0.58;
}

body.temple-site .temple-drawer-section {
	background: linear-gradient(180deg, #f7f1e7 0%, #efe0cb 100%);
	border-top: 1px solid rgba(90, 67, 48, 0.16);
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: 0;
	padding: clamp(2.5rem, 5vw, 4.5rem) clamp(1.1rem, 4vw, 3rem);
	width: 100vw;
}

body.temple-site .temple-drawer-section .temple-drawer-header,
body.temple-site .temple-drawer-section .temple-drawer-list {
	background: transparent;
}

body.temple-site .temple-drawer-header {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 1.2rem;
	margin: 0 auto clamp(1.2rem, 2.5vw, 2rem);
	max-width: 1180px;
	padding: 0;
}

body.temple-site .temple-drawer-kicker {
	color: var(--temple-red);
	display: inline-flex;
	font-size: 0.82rem;
	letter-spacing: 0.18em;
	line-height: 1;
	text-decoration: none;
}

body.temple-site .temple-drawer-title {
	color: var(--temple-brown);
	font-size: clamp(1.65rem, 3vw, 2.55rem);
	font-weight: 400;
	line-height: 1.2;
	margin: 0.35rem 0 0;
}

body.temple-site .temple-drawer-title a {
	color: inherit;
	text-decoration: none;
}

body.temple-site .temple-drawer-more {
	align-items: center;
	background: var(--temple-red);
	border: 1px solid var(--temple-red);
	border-radius: 999px;
	color: var(--temple-cream);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 0.9rem;
	justify-content: center;
	line-height: 1;
	padding: 0.72rem 1.15rem;
	text-decoration: none;
	transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

body.temple-site .temple-drawer-more:hover,
body.temple-site .temple-drawer-more:focus {
	background: var(--temple-brown);
	border-color: var(--temple-brown);
	color: var(--temple-cream);
	outline: none;
	transform: translateY(-2px);
}

body.temple-site .temple-drawer-list {
	display: grid;
	gap: clamp(0.9rem, 1.8vw, 1.25rem);
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	margin: 0 auto;
	max-width: 1180px;
	padding: 0;
}

body.temple-site .temple-drawer-list-single {
	grid-template-columns: 1fr;
	max-width: 860px;
}

body.temple-site .temple-latest-posts-grid {
	margin: 0 auto;
	max-width: 1180px;
}

body.temple-site .temple-latest-posts-section {
	background: var(--temple-page-background);
	border-top: 1px solid rgba(180, 90, 86, 0.18);
	color: var(--temple-brown);
	font-family: var(--temple-serif-cn);
	padding-bottom: clamp(3rem, 6vw, 5rem);
	padding-top: clamp(3rem, 6vw, 5rem);
	position: relative;
}

body.temple-site .temple-latest-posts-section::before,
body.temple-site .temple-latest-posts-section::after {
	content: '';
	left: clamp(1.1rem, 4vw, 3rem);
	position: absolute;
	right: clamp(1.1rem, 4vw, 3rem);
}

body.temple-site .temple-latest-posts-section::before {
	background: rgba(180, 90, 86, 0.18);
	height: 1px;
	top: clamp(1.1rem, 2vw, 1.6rem);
}

body.temple-site .temple-latest-posts-section::after {
	background: rgba(180, 90, 86, 0.14);
	bottom: 0;
	height: 1px;
}

body.temple-site .temple-latest-posts-section .temple-drawer-header {
	align-items: flex-end;
	border-left: 3px solid var(--temple-red);
	margin-bottom: clamp(1.6rem, 3vw, 2.45rem);
	padding-left: clamp(1rem, 2vw, 1.45rem);
	position: relative;
}

body.temple-site .temple-latest-posts-section .temple-drawer-kicker {
	color: var(--temple-red);
	font-size: 0.84rem;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}

body.temple-site .temple-latest-posts-section .temple-drawer-title {
	color: var(--temple-brown);
	font-size: clamp(1.9rem, 3.6vw, 3.2rem);
	font-weight: 300;
	letter-spacing: 0;
	line-height: 1.05;
	margin-top: 0.55rem;
}

body.temple-site .temple-latest-posts-section .temple-drawer-subtitle {
	color: rgba(90, 67, 48, 0.76);
	font-size: clamp(0.98rem, 1.25vw, 1.1rem);
	font-weight: 300;
	line-height: 1.8;
	margin: 0.65rem 0 0;
	max-width: 34rem;
}

body.temple-site .temple-latest-posts-section .temple-drawer-more {
	background: transparent;
	border-color: rgba(180, 90, 86, 0.46);
	border-radius: 0;
	color: var(--temple-red);
	min-height: 2.75rem;
	padding-left: 1.35rem;
	padding-right: 1.35rem;
}

body.temple-site .temple-latest-posts-section .temple-drawer-more:hover,
body.temple-site .temple-latest-posts-section .temple-drawer-more:focus {
	background: var(--temple-red);
	border-color: var(--temple-red);
	color: #fff7f0;
}

body.temple-site .temple-latest-posts-section .temple-latest-posts-grid {
	gap: clamp(0.9rem, 1.8vw, 1.35rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	position: relative;
}

body.temple-site .temple-latest-posts-section .temple-page-card {
	background: rgba(255, 252, 244, 0.82);
	border: 1px solid rgba(180, 90, 86, 0.22);
	border-radius: 0;
	box-shadow: none;
	min-height: 0;
	overflow: hidden;
	transform: translateY(0);
}

body.temple-site .temple-latest-posts-section .temple-page-card:first-child {
	background: rgba(255, 252, 244, 0.92);
	border-color: rgba(180, 90, 86, 0.38);
}

body.temple-site .temple-latest-posts-section .temple-page-card:hover,
body.temple-site .temple-latest-posts-section .temple-page-card:focus-within {
	border-color: var(--temple-red);
	box-shadow: 0 18px 38px rgba(90, 67, 48, 0.1);
	transform: translateY(-2px);
}

body.temple-site .temple-latest-posts-section .temple-page-card-link {
	min-height: 100%;
}

body.temple-site .temple-latest-posts-section .temple-page-card-body {
	padding: clamp(1rem, 1.8vw, 1.35rem);
}

body.temple-site .temple-latest-posts-section .temple-page-card-meta {
	color: rgba(180, 90, 86, 0.74);
	font-size: 0.88rem;
	letter-spacing: 0.08em;
	margin-bottom: 0;
	margin-top: 0;
	max-height: 0;
	opacity: 0;
	order: 2;
	overflow: hidden;
	transition: margin-top 0.28s ease, max-height 0.28s ease, opacity 0.22s ease;
}

body.temple-site .temple-latest-posts-section .temple-page-card-title {
	color: var(--temple-brown);
	font-size: clamp(1.15rem, 1.5vw, 1.38rem);
	font-weight: 400;
	line-height: 1.36;
	margin-bottom: 0;
	order: 1;
}

body.temple-site .temple-latest-posts-section .temple-page-card:first-child .temple-page-card-title {
	color: var(--temple-brown);
	font-size: clamp(1.15rem, 1.5vw, 1.38rem);
}

body.temple-site .temple-latest-posts-section .temple-page-card-text {
	color: rgba(90, 67, 48, 0.76);
	font-size: 0.95rem;
	line-height: 1.78;
	margin-top: 0;
	max-height: 0;
	opacity: 0;
	order: 3;
	overflow: hidden;
	transition: margin-top 0.28s ease, max-height 0.28s ease, opacity 0.22s ease;
}

body.temple-site .temple-latest-posts-section .temple-page-card:nth-child(-n+3) .temple-page-card-meta,
body.temple-site .temple-latest-posts-section .temple-page-card:hover .temple-page-card-meta,
body.temple-site .temple-latest-posts-section .temple-page-card:focus-within .temple-page-card-meta {
	margin-top: 0.75rem;
	max-height: 1.5rem;
	opacity: 1;
}

body.temple-site .temple-latest-posts-section .temple-page-card:nth-child(-n+3) .temple-page-card-text,
body.temple-site .temple-latest-posts-section .temple-page-card:hover .temple-page-card-text,
body.temple-site .temple-latest-posts-section .temple-page-card:focus-within .temple-page-card-text {
	margin-top: 0.55rem;
	max-height: 8rem;
	opacity: 1;
}

body.temple-site .temple-latest-posts-section .temple-page-card-media {
	display: none;
}

body.temple-site .temple-home-merit-board {
	background: var(--temple-page-background);
	border-top: 1px solid rgba(180, 90, 86, 0.18);
	font-family: var(--temple-serif-cn);
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: clamp(3rem, 6vw, 5rem) clamp(1.1rem, 4vw, 3rem);
	width: 100vw;
}

body.temple-site .temple-home-merit-board-inner {
	margin: 0 auto;
	max-width: 1180px;
}

body.temple-site .temple-home-merit-board-header {
	align-items: end;
	border-left: 3px solid var(--temple-red);
	display: flex;
	gap: 1.4rem;
	justify-content: space-between;
	margin-bottom: clamp(1.5rem, 3vw, 2.4rem);
	padding-left: clamp(1rem, 2vw, 1.45rem);
}

body.temple-site .temple-home-merit-board-kicker {
	color: var(--temple-red);
	font-size: 0.84rem;
	letter-spacing: 0.22em;
	line-height: 1;
	margin: 0 0 0.6rem;
}

body.temple-site .temple-home-merit-board h2 {
	color: var(--temple-brown);
	font-size: clamp(1.9rem, 3.6vw, 3.2rem);
	font-weight: 300;
	letter-spacing: 0;
	line-height: 1.05;
	margin: 0;
}

body.temple-site .temple-home-merit-board-header p:last-child {
	color: rgba(90, 67, 48, 0.76);
	font-size: 1rem;
	line-height: 1.85;
	margin: 0.75rem 0 0;
	max-width: 42rem;
}

body.temple-site .temple-home-merit-board-link {
	align-items: center;
	background: transparent;
	border: 1px solid rgba(180, 90, 86, 0.46);
	color: var(--temple-red);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 0.9rem;
	justify-content: center;
	line-height: 1;
	min-height: 2.75rem;
	padding: 0.72rem 1.35rem;
	text-decoration: none;
	transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

body.temple-site .temple-home-merit-board-link:hover,
body.temple-site .temple-home-merit-board-link:focus {
	background: var(--temple-red);
	border-color: var(--temple-red);
	color: #fff7f0;
	outline: none;
	transform: translateY(-2px);
}

body.temple-site .temple-home-merit-board-table-wrap {
	background: rgba(255, 252, 244, 0.82);
	border: 1px solid rgba(180, 90, 86, 0.22);
	box-shadow: 0 18px 42px rgba(90, 67, 48, 0.08);
	overflow-x: auto;
}

body.temple-site .temple-home-merit-board-table {
	border-collapse: collapse;
	color: rgba(29, 27, 26, 0.82);
	font-size: 0.98rem;
	margin: 0;
	min-width: 680px;
	width: 100%;
}

body.temple-site .temple-home-merit-board-table th,
body.temple-site .temple-home-merit-board-table td {
	border-bottom: 1px solid rgba(90, 67, 48, 0.12);
	padding: 1rem 1.1rem;
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
}

body.temple-site .temple-home-merit-board-table th {
	background: rgba(180, 90, 86, 0.08);
	color: var(--temple-red);
	font-weight: 400;
	letter-spacing: 0.08em;
}

body.temple-site .temple-home-merit-board-table td:first-child {
	color: var(--temple-gold);
	font-weight: 500;
}

body.temple-site .temple-home-merit-board-table td:nth-child(3) {
	white-space: normal;
}

body.temple-site .temple-home-merit-board-table td:nth-child(4) {
	color: var(--temple-red);
	font-weight: 500;
}

body.temple-site .temple-home-merit-board-table tbody tr:last-child td {
	border-bottom: 0;
}

body.temple-site .temple-home-merit-board-table tbody tr:hover td {
	background: rgba(179, 138, 82, 0.08);
}

body.temple-site .temple-drawer-item {
	background: rgba(255, 252, 245, 0.74);
	border: 1px solid rgba(90, 67, 48, 0.15);
	border-radius: 8px;
	box-shadow: 0 16px 36px rgba(90, 67, 48, 0.08);
	min-width: 0;
	overflow: hidden;
	transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease;
}

body.temple-site .temple-drawer-item:not(.temple-drawer-item-featured) {
	box-shadow: none;
}

body.temple-site .temple-drawer-item:hover,
body.temple-site .temple-drawer-item:focus-within {
	border-color: rgba(180, 90, 86, 0.36);
	box-shadow: 0 18px 42px rgba(90, 67, 48, 0.12);
	transform: translateY(-3px);
}

body.temple-site .temple-drawer-item-featured {
	grid-row: span 3;
}

body.temple-site .temple-drawer-card {
	color: inherit;
	display: grid;
	grid-template-columns: minmax(150px, 0.42fr) minmax(0, 1fr);
	height: 100%;
	min-height: 9.2rem;
	text-decoration: none;
}

body.temple-site .temple-drawer-item-no-thumb .temple-drawer-card {
	grid-template-columns: 1fr;
}

body.temple-site .temple-drawer-item-featured .temple-drawer-card {
	grid-template-columns: minmax(220px, 0.46fr) minmax(0, 1fr);
	grid-template-rows: 1fr;
	min-height: 100%;
}

body.temple-site .temple-drawer-item-featured.temple-drawer-item-no-thumb .temple-drawer-card {
	grid-template-columns: 1fr;
}

body.temple-site .temple-drawer-thumb {
	background:
		linear-gradient(135deg, rgba(90, 67, 48, 0.16), rgba(180, 90, 86, 0.1)),
		#f6f0e7;
	display: block;
	min-height: 100%;
	overflow: hidden;
}

body.temple-site .temple-drawer-thumb img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 0.32s ease, filter 0.32s ease;
	width: 100%;
}

body.temple-site .temple-drawer-item:hover .temple-drawer-thumb img,
body.temple-site .temple-drawer-item:focus-within .temple-drawer-thumb img {
	filter: saturate(1.04);
	transform: scale(1.035);
}

body.temple-site .temple-drawer-card-body {
	display: flex;
	flex-direction: column;
	padding: clamp(1rem, 2vw, 1.35rem);
}

body.temple-site .temple-drawer-summary-title {
	color: var(--temple-brown);
	font-size: clamp(1.02rem, 1.45vw, 1.22rem);
	font-weight: 400;
	line-height: 1.48;
	margin-top: 0;
}

body.temple-site .temple-drawer-item-featured .temple-drawer-summary-title {
	font-size: clamp(1.35rem, 2.2vw, 1.85rem);
	line-height: 1.35;
}

body.temple-site .temple-drawer-summary-date,
body.temple-site .temple-drawer-summary-hint {
	color: var(--temple-red);
	font-family: var(--temple-serif-cn);
	font-size: 0.82rem;
	letter-spacing: 0.08em;
	line-height: 1;
	margin-top: 0.55rem;
}

body.temple-site .temple-drawer-summary-text {
	color: rgba(29, 27, 26, 0.72);
	font-size: 0.92rem;
	line-height: 1.75;
	margin-top: 0.65rem;
}

body.temple-site .temple-drawer-link {
	color: var(--temple-red);
	display: inline-flex;
	font-size: 0.9rem;
	line-height: 1;
	margin-top: auto;
	padding-top: 1rem;
	text-decoration: none;
}

body.temple-site .temple-drawer-item-no-thumb .temple-drawer-link {
	margin-top: 1rem;
}

body.temple-site .temple-drawer-link::after {
	content: '';
	align-self: center;
	background: currentColor;
	height: 1px;
	margin-left: 0.65rem;
	transition: width 0.22s ease;
	width: 1.8rem;
}

body.temple-site .temple-drawer-card:hover .temple-drawer-link::after,
body.temple-site .temple-drawer-card:focus .temple-drawer-link::after {
	width: 2.5rem;
}

body.temple-site .button,
body.temple-site button,
body.temple-site input[type='submit'] {
	background: var(--temple-red);
	color: var(--temple-cream);
	border-radius: 999px;
	border: 0;
	box-shadow: none;
}

body.temple-site .button:hover,
body.temple-site button:hover,
body.temple-site input[type='submit']:hover {
	background: var(--temple-brown);
}

body.temple-site .site-footer {
	background: var(--temple-black);
	color: var(--temple-cream);
}

body.temple-site .site-footer a {
	color: #f3d7b0;
}

body.temple-site .temple-donation-thankyou-modal {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: clamp(1rem, 4vw, 2rem);
	position: fixed;
	z-index: 9999;
}

body.temple-site .temple-donation-thankyou-modal.is-closing {
	opacity: 0;
	transition: opacity 0.22s ease;
}

body.temple-site .temple-donation-thankyou-backdrop {
	background: rgba(29, 27, 26, 0.42);
	inset: 0;
	position: absolute;
}

body.temple-site .temple-donation-thankyou-panel {
	background: #fffaf0;
	border: 1px solid rgba(180, 90, 86, 0.26);
	box-shadow: 0 24px 72px rgba(29, 27, 26, 0.22);
	color: var(--temple-brown);
	max-width: 30rem;
	padding: clamp(1.5rem, 4vw, 2.2rem);
	position: relative;
	text-align: center;
	width: min(100%, 30rem);
}

body.temple-site .temple-donation-thankyou-close {
	align-items: center;
	background: transparent;
	border: 0;
	color: rgba(90, 67, 48, 0.7);
	display: inline-flex;
	font-size: 1.5rem;
	height: 2.2rem;
	justify-content: center;
	line-height: 1;
	padding: 0;
	position: absolute;
	right: 0.75rem;
	top: 0.65rem;
	width: 2.2rem;
}

body.temple-site .temple-donation-thankyou-close:hover,
body.temple-site .temple-donation-thankyou-close:focus {
	background: transparent;
	color: var(--temple-red);
	outline: none;
}

body.temple-site .temple-donation-thankyou-kicker {
	color: var(--temple-red);
	font-size: 0.84rem;
	letter-spacing: 0.22em;
	margin: 0 0 0.75rem;
}

body.temple-site .temple-donation-thankyou-panel h2 {
	color: var(--temple-brown);
	font-size: clamp(1.55rem, 3vw, 2.15rem);
	font-weight: 400;
	line-height: 1.25;
	margin: 0 0 0.8rem;
}

body.temple-site .temple-donation-thankyou-panel p {
	color: rgba(29, 27, 26, 0.74);
	font-size: 1rem;
	line-height: 1.8;
	margin: 0;
}

body.temple-site .temple-donation-thankyou-panel .temple-donation-thankyou-amount {
	color: var(--temple-red);
	font-weight: 400;
	margin-top: 0.9rem;
}

body.temple-site .temple-donation-thankyou-button {
	background: var(--temple-red);
	border: 1px solid var(--temple-red);
	color: #fff7f0;
	font-family: var(--temple-header-cn);
	font-size: 0.96rem;
	line-height: 1;
	margin-top: 1.35rem;
	min-height: 2.65rem;
	padding: 0.75rem 1.65rem;
}

body.temple-site .temple-donation-thankyou-button:hover,
body.temple-site .temple-donation-thankyou-button:focus {
	background: var(--temple-brown);
	border-color: var(--temple-brown);
	color: #fff7f0;
	outline: none;
}

@media (max-width: 1200px) {
	body.temple-site .temple-prayer-layout {
		grid-template-columns: minmax(180px, 0.8fr) minmax(360px, 1.42fr);
	}

	body.temple-site .temple-prayer-image {
		height: 100%;
		max-width: none;
	}
}

@media (max-width: 920px) {
	body.temple-site .temple-prayer-section {
		height: auto;
		min-height: calc(100svh - var(--temple-fixed-header-height, 112px));
		overflow: visible;
	}

	body.temple-site .temple-prayer-layout {
		grid-template-columns: 1fr;
		grid-template-rows: minmax(260px, 34svh) auto;
	}

	body.temple-site .temple-prayer-content {
		padding: 1rem 1.2rem;
	}

	body.temple-site .temple-prayer-content {
		padding-bottom: 0.7rem;
	}

	body.temple-site .temple-prayer-title {
		font-size: clamp(1.35rem, 5vw, 2rem);
	}

	body.temple-site .temple-prayer-title svg {
		width: clamp(12rem, 62vw, 20rem);
	}

	body.temple-site .temple-prayer-incense {
		width: min(100%, 190px);
	}

	body.temple-site .temple-prayer-guides {
		margin-top: 0.75rem;
		width: min(100%, 38rem);
	}

	body.temple-site .temple-prayer-guide-list {
		gap: 0.75rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		left: 0;
	}

	body.temple-site .temple-prayer-guides.is-prayer-sequencing {
		padding-bottom: 1rem;
	}

	body.temple-site .temple-prayer-sequence-stage {
		top: clamp(4.8rem, 13vw, 6rem);
	}

	body.temple-site .temple-prayer-guide-text {
		font-size: 0.86rem;
		line-height: 1.58;
	}

	body.temple-site .temple-page-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.temple-site .temple-scripture-hero {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-scripture-stats {
		border-left: 0;
		border-top: 1px solid rgba(90, 67, 48, 0.14);
		grid-column: 1;
		grid-row: auto;
		justify-items: start;
		min-width: 0;
		padding-left: 0;
		padding-top: 1rem;
	}

	body.temple-site .temple-scripture-shelf {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.temple-site .temple-article-index-link {
		grid-template-columns: 64px fit-content(360px) minmax(0, 1fr);
		min-height: 0;
	}

	body.temple-site .temple-article-index-card.no-thumbnail .temple-article-index-link {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	body.temple-site .temple-article-index-media {
		height: auto;
	}

	body.temple-site .temple-article-index-media img {
		max-height: min(420px, 56vw);
	}

	body.temple-site .temple-article-index-body {
		max-height: min(420px, 56vw);
	}

	body.temple-site.single-post .post.has-post-thumbnail .inside-article {
		grid-template-columns: 1fr;
		grid-template-areas:
			"header"
			"image"
			"content";
	}

	body.temple-site.single-post .post.has-post-thumbnail .featured-image,
	body.temple-site.single-post .post.has-post-thumbnail .page-header-image-single {
		margin-bottom: clamp(1.4rem, 4vw, 2.2rem);
		max-width: 520px;
	}

	body.temple-site .temple-latest-posts-section .temple-latest-posts-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: 760px;
	}

	body.temple-site .temple-home-merit-board-header {
		align-items: flex-start;
		flex-direction: column;
	}

	body.temple-site .temple-home-merit-board-link {
		align-self: flex-start;
	}

	body.temple-site.home .temple-home-links-inner {
		grid-template-columns: 1fr;
		max-width: 620px;
	}

	body.temple-site.home .temple-home-link-card {
		min-height: 140px;
	}

	body.temple-site .temple-drawer-list {
		grid-template-columns: 1fr;
		max-width: 760px;
	}

	body.temple-site .temple-drawer-item-featured {
		grid-row: auto;
	}

	body.temple-site .temple-drawer-item-featured .temple-drawer-card {
		grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1fr);
		grid-template-rows: 1fr;
		min-height: 12rem;
	}
}

@media (max-width: 560px) {
	body.temple-site .inside-header {
		padding-left: 0.85rem;
		padding-right: 0.85rem;
	}

	body.temple-site .temple-header-actions {
		gap: 0.4rem;
		right: 0.75rem;
		top: 0.55rem;
	}

	body.temple-site .temple-header-login {
		height: 2rem;
		width: 2rem;
	}

	body.temple-site .temple-header-donate {
		font-size: 0.78rem;
		min-height: 2rem;
		min-width: 5.2rem;
		padding: 0.4rem 0.85rem;
	}

	body.temple-site .temple-page-grid {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-scripture-library {
		padding-left: 1rem;
		padding-right: 1rem;
		padding-top: 0;
	}

	body.temple-site .temple-scripture-hero {
		border-left: 0;
		border-right: 0;
		margin-left: -1rem;
		margin-right: -1rem;
		padding: 0.75rem 1rem;
	}

	body.temple-site .temple-scripture-hero h2 {
		font-size: 1.32rem;
		letter-spacing: 0.06em;
	}

	body.temple-site .temple-scripture-shelf {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-scripture-book {
		grid-template-columns: 104px minmax(0, 1fr);
		grid-template-rows: 1fr;
	}

	body.temple-site .temple-scripture-cover {
		aspect-ratio: auto;
		min-height: 100%;
		padding: 0.8rem 0.65rem;
	}

	body.temple-site .temple-scripture-cover-title {
		font-size: 1rem;
	}

	body.temple-site .temple-scripture-book-actions {
		flex-wrap: wrap;
	}

	body.temple-site.temple-article-index-page .inside-article {
		padding-left: 0;
		padding-right: 0;
	}

	body.temple-site .temple-article-index-link {
		grid-template-columns: 54px minmax(0, 1fr);
		min-height: 0;
	}

	body.temple-site .temple-article-index-card.no-thumbnail .temple-article-index-link {
		grid-template-columns: 54px minmax(0, 1fr);
	}

	body.temple-site .temple-article-index-title {
		font-size: 0.95rem;
		letter-spacing: 0.05em;
		padding: 0.85rem 0.5rem;
	}

	body.temple-site .temple-article-index-media {
		grid-column: 2;
		grid-row: 1;
		height: auto;
		max-width: min(500px, 100%);
	}

	body.temple-site .temple-article-index-media img {
		max-height: min(420px, 84vw);
	}

	body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-link {
		grid-template-columns: 54px minmax(0, 1fr);
	}

	body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-media {
		height: 420px;
		max-width: min(376px, 100%);
		width: min(376px, 100%);
	}

	body.temple-site.temple-buddhas-bodhisattvas-page .temple-article-index-media img {
		height: 420px;
		max-height: none;
		width: 100%;
	}

	body.temple-site .temple-article-index-body {
		gap: 0.55rem;
		grid-column: 1 / -1;
		max-height: none;
		padding: 0.85rem 0.85rem;
	}

	body.temple-site .temple-article-index-excerpt {
		font-size: 0.9rem;
		line-height: 1.65;
		-webkit-line-clamp: 4;
	}

	body.temple-site .temple-latest-posts-section {
		padding-top: 3rem;
	}

	body.temple-site .temple-latest-posts-section .temple-drawer-header {
		border-left-width: 2px;
		padding-left: 0.9rem;
	}

	body.temple-site .temple-latest-posts-section .temple-latest-posts-grid {
		grid-template-columns: 1fr;
	}

	body.temple-site .temple-latest-posts-section .temple-page-card {
		min-height: 0;
	}

	body.temple-site .temple-home-merit-board {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	body.temple-site .temple-home-merit-board-header {
		border-left-width: 2px;
		margin-bottom: 1.4rem;
		padding-left: 0.9rem;
	}

	body.temple-site .temple-home-merit-board-header p:last-child {
		font-size: 0.92rem;
		line-height: 1.7;
	}

	body.temple-site .temple-home-merit-board-link {
		width: 100%;
	}

	body.temple-site .temple-home-merit-board-table {
		font-size: 0.9rem;
		min-width: 620px;
	}

	body.temple-site .temple-home-merit-board-table th,
	body.temple-site .temple-home-merit-board-table td {
		padding: 0.85rem 0.8rem;
	}

	body.temple-site .temple-prayer-content {
		padding: 0.85rem 1rem;
	}

	body.temple-site .temple-prayer-image {
		height: 100%;
		max-width: none;
		width: 100%;
	}

	body.temple-site .temple-prayer-guide-title {
		font-size: 1rem;
		margin-bottom: 0.55rem;
	}

	body.temple-site .temple-prayer-guide-intro {
		font-size: 0.86rem;
		line-height: 1.6;
		margin-bottom: 0.7rem;
		text-align: left;
		white-space: normal;
	}

	body.temple-site .temple-prayer-guide-list {
		grid-template-columns: 1fr;
		left: 0;
	}

	body.temple-site .temple-prayer-guides.is-prayer-sequencing {
		min-height: 31rem;
	}

	body.temple-site .temple-prayer-sequence-stage {
		inset: 5.4rem 0 auto;
		min-height: 24rem;
	}

	body.temple-site .temple-prayer-sequence-step {
		width: 100%;
	}

	body.temple-site .temple-prayer-guide-list li {
		gap: 0.5rem;
	}

	body.temple-site .temple-prayer-guide-step {
		grid-template-columns: minmax(118px, 0.4fr) minmax(0, 1fr);
		grid-template-rows: 1fr;
		align-items: center;
	}

	body.temple-site .temple-prayer-guide-image {
		aspect-ratio: 1 / 1;
	}

	body.temple-site .temple-prayer-guide-icon {
		height: 1.16rem;
		width: 1.16rem;
	}

	body.temple-site .temple-prayer-actions {
		flex-direction: column;
		justify-content: stretch;
		margin-top: 0.9rem;
	}

	body.temple-site .temple-prayer-button {
		width: 100%;
	}

	body.temple-site .temple-drawer-section {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	body.temple-site .temple-drawer-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.85rem;
	}

	body.temple-site .temple-drawer-more {
		align-self: flex-start;
	}

	body.temple-site .temple-drawer-card,
	body.temple-site .temple-drawer-item-featured .temple-drawer-card {
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr;
		min-height: 0;
	}

	body.temple-site .temple-drawer-thumb {
		aspect-ratio: 16 / 9;
		min-height: 0;
	}

	body.temple-site .temple-drawer-card-body {
		padding: 1rem;
	}

	body.temple-site.home .site-content {
		height: 520px;
		min-height: 520px;
	}

	body.temple-site.home .temple-home-links {
		padding: 8px 1rem 6px;
	}

	body.temple-site.home .temple-home-link-card {
		min-height: 132px;
		padding: 1rem;
	}

	body.temple-site.home .temple-home-link-card::after {
		right: 1rem;
		bottom: 1rem;
	}
}
