.elementor-193 .elementor-element.elementor-element-88574f5{--display:flex;--min-height:1430px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-193 .elementor-element.elementor-element-88574f5:not(.elementor-motion-effects-element-type-background), .elementor-193 .elementor-element.elementor-element-88574f5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-35e2788 );}@media(min-width:768px){.elementor-193 .elementor-element.elementor-element-88574f5{--content-width:1300px;}}/* Start custom CSS for shortcode, class: .elementor-element-4cedb1d *//* =========================================================
   CatechismHub Single Product — v2 Design
   Replace the ENTIRE <style>...</style> block inside the
   chsp_print_assets_once() function in your PHP snippet with
   the CSS below. Class names are unchanged, so no PHP/HTML
   edits are needed anywhere else.
   ========================================================= */

.chsp-wrap{
	--chsp-maroon:#7a1f30;
	--chsp-maroon-dark:#5c1523;
	--chsp-maroon-light:#a53a4f;
	--chsp-gold:#c9932f;
	--chsp-gold-light:#f0d9a3;
	--chsp-cream:#fbf6ec;
	--chsp-cream-dark:#f1e6cf;
	--chsp-text:#2b2320;
	--chsp-text-soft:#6b6058;
	--chsp-border:#ecdfc2;
	--chsp-shadow: 0 4px 18px rgba(90,30,40,.07);
	--chsp-shadow-lg: 0 14px 34px rgba(90,30,40,.12);
	max-width:1200px;margin:0 auto;padding:32px 20px 64px;
	color:var(--chsp-text);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
	box-sizing:border-box;
}
.chsp-wrap *{box-sizing:border-box;}
.chsp-top{display:grid !important;grid-template-columns:1.05fr 1fr;gap:56px;align-items:start;}

/* ---------- Gallery ---------- */
.chsp-gallery{position:sticky;top:20px;}
.chsp-main-image{
	position:relative;overflow:hidden;
	border:1px solid var(--chsp-border) !important;
	border-radius:18px !important;
	background:linear-gradient(180deg,#fff,var(--chsp-cream)) !important;
	aspect-ratio:1/1;
	box-shadow:var(--chsp-shadow) !important;
}
.chsp-main-img{display:none;width:100% !important;height:100% !important;object-fit:cover !important;margin:0 !important;max-width:100%;}
.chsp-main-img.active{display:block !important;}
.chsp-thumbs{display:flex !important;gap:12px;margin-top:14px;flex-wrap:wrap;list-style:none;padding:0;}
.chsp-thumb{
	border:2px solid var(--chsp-border) !important;
	border-radius:10px !important;
	padding:0 !important;overflow:hidden;
	width:66px;height:66px;cursor:pointer;
	background:#fff !important;
	opacity:.75;transition:all .18s ease !important;
}
.chsp-thumb:hover{opacity:1;transform:translateY(-2px);}
.chsp-thumb img{width:100% !important;height:100% !important;object-fit:cover !important;display:block;margin:0 !important;}
.chsp-thumb.active{border-color:var(--chsp-maroon) !important;opacity:1;box-shadow:0 0 0 3px rgba(122,31,48,.12);}

/* ---------- Summary ---------- */
.chsp-badges{display:flex !important;gap:8px;flex-wrap:wrap;margin-bottom:16px;list-style:none;padding:0;}
.chsp-badge{
	font-size:11px !important;font-weight:700 !important;
	padding:6px 14px !important;border-radius:20px !important;
	display:inline-flex !important;align-items:center;line-height:1.4;
	text-transform:uppercase;letter-spacing:.06em;
}
.chsp-badge-maroon{background:linear-gradient(135deg,var(--chsp-maroon),var(--chsp-maroon-light)) !important;color:#fff !important;}
.chsp-badge-cream{background:var(--chsp-cream-dark) !important;color:var(--chsp-maroon) !important;border:1px solid var(--chsp-border) !important;}
.chsp-badge-green{background:#3f7d5c !important;color:#fff !important;}

.chsp-title{
	font-family:'Playfair Display',Georgia,'Times New Roman',serif !important;
	font-size:clamp(26px,3.2vw,38px) !important;
	line-height:1.18 !important;margin:0 0 14px !important;
	color:var(--chsp-maroon-dark) !important;font-weight:700 !important;
	letter-spacing:-.01em;
}
.chsp-short-desc{font-size:15.5px;line-height:1.7;color:var(--chsp-text-soft);margin-bottom:18px;}
.chsp-short-desc p{margin:0 0 8px;}

.chsp-sold-by{
	font-size:13.5px;margin-bottom:22px;color:var(--chsp-text-soft);
	display:inline-flex;align-items:center;gap:6px;
	padding:6px 4px;
}
.chsp-sold-by a{color:var(--chsp-maroon) !important;font-weight:700;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s;}
.chsp-sold-by a:hover{border-bottom-color:var(--chsp-maroon);}

/* ---------- Buy box ---------- */
.chsp-buybox{
	border:1px solid var(--chsp-border) !important;
	border-radius:16px !important;
	padding:26px !important;
	background:#fff !important;
	box-shadow:var(--chsp-shadow) !important;
	position:relative;overflow:hidden;
}
.chsp-buybox::before{
	content:"";position:absolute;top:0;left:0;right:0;height:4px;
	background:linear-gradient(90deg,var(--chsp-maroon),var(--chsp-gold));
}
.chsp-price{
	font-size:32px !important;font-weight:800 !important;
	color:var(--chsp-maroon-dark) !important;margin-bottom:18px !important;
	display:block;letter-spacing:-.01em;
}
.chsp-price ins{text-decoration:none;background:none;}
.chsp-price del{opacity:.45;font-size:19px;font-weight:500;margin-right:8px;}

.chsp-cart-form{display:flex;flex-direction:column;gap:12px;}
.chsp-cart-form form.cart{display:flex !important;flex-wrap:wrap;gap:12px;align-items:center;margin:0 !important;}
.chsp-cart-form form.cart .quantity{margin:0 !important;float:none !important;}
.chsp-cart-form input.qty{
	width:68px !important;padding:13px 10px !important;
	border:1.5px solid var(--chsp-border) !important;border-radius:10px !important;
	height:auto !important;font-size:15px !important;font-weight:600;
	background:var(--chsp-cream) !important;text-align:center;
	transition:border-color .15s !important;
}
.chsp-cart-form input.qty:focus{border-color:var(--chsp-maroon) !important;outline:none;}

.chsp-cart-form .single_add_to_cart_button,
.chsp-btn{
	display:flex !important;align-items:center;justify-content:center;gap:8px;
	width:100% !important;padding:15px 18px !important;
	border-radius:10px !important;font-weight:700 !important;font-size:15.5px !important;
	cursor:pointer;text-decoration:none !important;
	border:1.5px solid var(--chsp-maroon) !important;
	transition:all .2s ease !important;
	box-shadow:none !important;text-transform:none !important;
	letter-spacing:normal !important;margin:0 !important;line-height:1.4 !important;
}
.chsp-cart-form .single_add_to_cart_button{
	background:linear-gradient(135deg,var(--chsp-maroon),var(--chsp-maroon-dark)) !important;
	color:#fff !important;
	box-shadow:0 6px 16px rgba(122,31,48,.28) !important;
}
.chsp-cart-form .single_add_to_cart_button:hover,
.chsp-cart-form .single_add_to_cart_button:focus{
	transform:translateY(-2px);
	box-shadow:0 10px 22px rgba(122,31,48,.36) !important;
	background:linear-gradient(135deg,var(--chsp-maroon-dark),var(--chsp-maroon-dark)) !important;
	color:#fff !important;
}
.chsp-btn-buynow{background:#fff !important;color:var(--chsp-maroon) !important;}
.chsp-btn-buynow:hover{background:var(--chsp-cream-dark) !important;transform:translateY(-2px);}
.chsp-btn-outline{background:#fff !important;color:var(--chsp-maroon) !important;}
.chsp-btn-outline:hover{background:var(--chsp-cream-dark) !important;}

.chsp-wishlist-btn{
	margin-top:14px;width:100%;background:none !important;border:none !important;
	color:var(--chsp-maroon) !important;font-weight:600;cursor:pointer;font-size:13.5px;
	display:flex;justify-content:center;gap:6px;box-shadow:none !important;
	opacity:.85;transition:opacity .15s;
}
.chsp-wishlist-btn:hover{opacity:1;}
.chsp-out-of-stock{color:#a33;font-weight:700;font-size:14px;}

.chsp-meta{
	margin-top:22px;font-size:13px;color:var(--chsp-text-soft);
	display:flex;flex-direction:column;gap:7px;
	padding-top:18px;border-top:1px dashed var(--chsp-border);
}
.chsp-meta strong{color:var(--chsp-text);}
.chsp-meta a{color:var(--chsp-maroon) !important;text-decoration:none;}
.chsp-meta a:hover{text-decoration:underline;}

/* ---------- Tabs ---------- */
.chsp-tabs{margin-top:56px;border-top:1px solid var(--chsp-border);padding-top:28px;}
.chsp-tab-nav{
	display:flex !important;gap:8px;flex-wrap:wrap;
	border-bottom:1px solid var(--chsp-border);margin-bottom:28px !important;
	list-style:none;padding:0;
}
.chsp-tab-link{
	background:none !important;border:none !important;
	border-bottom:2.5px solid transparent !important;
	padding:10px 16px !important;margin:0 !important;
	font-size:14.5px !important;font-weight:700 !important;
	color:var(--chsp-text-soft) !important;cursor:pointer;
	box-shadow:none !important;width:auto !important;
	border-radius:8px 8px 0 0 !important;
	transition:all .15s ease !important;
}
.chsp-tab-link:hover{color:var(--chsp-maroon) !important;background:var(--chsp-cream) !important;}
.chsp-tab-link.active{color:var(--chsp-maroon) !important;border-bottom-color:var(--chsp-maroon) !important;background:var(--chsp-cream) !important;}
.chsp-tab-panel{display:none;line-height:1.8;font-size:15px;color:var(--chsp-text-soft);}
.chsp-tab-panel.active{display:block !important;animation:chspFade .25s ease;}
@keyframes chspFade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:translateY(0);}}

.chsp-attr-table{width:100%;border-collapse:collapse;border-radius:12px;overflow:hidden;}
.chsp-attr-table th,.chsp-attr-table td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--chsp-border);}
.chsp-attr-table th{color:var(--chsp-text);font-weight:700;width:220px;background:var(--chsp-cream);}

.chsp-vendor-box{
	background:linear-gradient(135deg,var(--chsp-cream),var(--chsp-cream-dark)) !important;
	border-radius:16px !important;padding:26px !important;
	border:1px solid var(--chsp-border);
}
.chsp-vendor-box strong{font-size:17px;color:var(--chsp-maroon-dark);}
.chsp-vendor-box p{color:var(--chsp-text-soft);margin:10px 0 16px;}

/* ---------- Related ---------- */
.chsp-related{margin-top:56px;}
.chsp-related h3{
	font-family:'Playfair Display',Georgia,serif !important;
	color:var(--chsp-maroon-dark) !important;margin-bottom:22px !important;
	font-size:24px !important;font-weight:700;
}
.chsp-related-grid{display:grid !important;grid-template-columns:repeat(6,1fr);gap:18px;list-style:none;padding:0;}
.chsp-related-card{
	border:1px solid var(--chsp-border) !important;
	border-radius:14px !important;overflow:hidden;
	text-decoration:none !important;color:var(--chsp-text) !important;
	background:#fff !important;display:block !important;
	box-shadow:0 2px 8px rgba(90,30,40,.05) !important;
	transition:all .2s ease !important;
}
.chsp-related-card:hover{
	transform:translateY(-4px);
	box-shadow:var(--chsp-shadow-lg) !important;
	border-color:var(--chsp-gold) !important;
}
.chsp-related-img{overflow:hidden;}
.chsp-related-img img{
	width:100% !important;aspect-ratio:1/1;object-fit:cover !important;
	display:block;margin:0 !important;max-width:100%;
	transition:transform .35s ease !important;
}
.chsp-related-card:hover .chsp-related-img img{transform:scale(1.07);}
.chsp-related-name{
	font-size:13.5px !important;padding:12px 12px 2px !important;
	font-weight:700 !important;color:var(--chsp-text) !important;
	line-height:1.4;
}
.chsp-related-price{font-size:13.5px !important;padding:2px 12px 14px !important;color:var(--chsp-maroon) !important;font-weight:800 !important;}
.chsp-related-price ins{text-decoration:none;background:none;}

/* ---------- Responsive ---------- */
@media (max-width: 1100px){
	.chsp-related-grid{grid-template-columns:repeat(4,1fr) !important;}
}
@media (max-width: 992px){
	.chsp-top{gap:36px;}
	.chsp-related-grid{grid-template-columns:repeat(3,1fr) !important;}
}
@media (max-width: 782px){
	.chsp-wrap{padding:22px 16px 48px;}
	.chsp-top{grid-template-columns:1fr !important;gap:28px;}
	.chsp-gallery{position:static;}
	.chsp-tab-nav{gap:4px;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;}
	.chsp-tab-nav::-webkit-scrollbar{display:none;}
	.chsp-tab-link{white-space:nowrap;padding:10px 14px !important;}
	.chsp-attr-table th{width:150px;}
}
@media (max-width: 600px){
	.chsp-related-grid{grid-template-columns:repeat(2,1fr) !important;}
}
@media (max-width: 480px){
	.chsp-title{font-size:24px !important;}
	.chsp-price{font-size:26px !important;}
	.chsp-thumb{width:54px;height:54px;}
	.chsp-buybox{padding:20px !important;}
	.chsp-attr-table th,.chsp-attr-table td{padding:10px;font-size:14px;}
	.chsp-attr-table th{width:120px;}
}/* End custom CSS */