/*
 * Rain Spree Premium — FAQ Page
 * Four interactive FAQ tabs:
 * General / Shopping
 * Wellness Essentials
 * Digital Products
 * Print On Demand
 */

.rs-faq-page{
	--faq-green:#285d2a;
	--faq-dark:#203d25;
	--faq-text:#263129;
	--faq-muted:#69736a;
	--faq-border:#e2e8df;
	--faq-soft:#f5f7f0;
	--faq-purple:#6d35c8;
	--faq-orange:#ed6c20;
	background:#fff;
	color:var(--faq-text);
}

.rs-faq-page *,
.rs-faq-page *::before,
.rs-faq-page *::after{box-sizing:border-box}

.rs-faq-page h1,
.rs-faq-page h2,
.rs-faq-page h3,
.rs-faq-page p{margin:0}

.rs-faq-page a{text-decoration:none}
.rs-faq-page button,
.rs-faq-page input{font:inherit}

.rs-faq-container{
	width:min(1160px,calc(100% - 64px));
	margin-inline:auto;
}

/* =========================================================
   HERO
   ========================================================= */

.rs-faq-hero{
	padding:0;
	background:#f7f5ed;
}

.rs-faq-hero-inner{
	width:100%;
	min-height:300px;
	display:grid;
	grid-template-columns:46% 54%;
	overflow:hidden;
}

.rs-faq-hero-copy{
	padding:35px max(30px,calc((100vw - 1160px)/2));
	padding-right:30px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	background:#f7f5ed;
}

.rs-faq-breadcrumb{
	display:flex;
	align-items:center;
	gap:8px;
	margin-bottom:25px;
	color:#606960;
	font:500 11px/1.2 Inter,Arial,sans-serif;
}

.rs-faq-breadcrumb a{color:var(--faq-green)}

.rs-faq-kicker{
	display:block;
	margin-bottom:8px;
	color:var(--faq-green);
	font:800 9px/1.2 Inter,Arial,sans-serif;
	letter-spacing:.14em;
}

.rs-faq-hero h1{
	color:var(--faq-dark);
	font:600 54px/.92 "Cormorant Garamond",Georgia,serif;
	letter-spacing:-.02em;
}

.rs-faq-hero h1 span{
	color:#669a43;
	font-size:32px;
}

.rs-faq-hero-copy>p{
	max-width:410px;
	margin-top:18px;
	color:#29332d;
	font:400 14px/1.7 Inter,Arial,sans-serif;
}

.rs-faq-hero-image{
	min-height:300px;
}

.rs-faq-hero-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

/* =========================================================
   TABS
   ========================================================= */

.rs-faq-content{
	padding:17px 0 10px;
}

.rs-faq-tabs{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:8px;
	margin-bottom:20px;
}

.rs-faq-tab{
	min-height:54px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
	padding:8px 14px;
	border:1px solid var(--faq-border);
	border-radius:8px;
	background:#fff;
	color:#1f2922;
	cursor:pointer;
	transition:.2s ease;
}

.rs-faq-tab i{
	font-size:20px;
	color:var(--faq-green);
}

.rs-faq-tab span{
	font:700 12px Inter,Arial,sans-serif;
	white-space:nowrap;
}

.rs-faq-tab:hover{
	border-color:#b8cbb4;
	background:#fafcf8;
}

.rs-faq-tab.is-active{
	border-color:var(--faq-green);
	background:var(--faq-green);
	color:#fff;
}

.rs-faq-tab.is-active i{color:#fff}

/* =========================================================
   MAIN FAQ AREA
   ========================================================= */

.rs-faq-layout{
	display:grid;
	grid-template-columns:minmax(0,1fr) 276px;
	gap:22px;
	align-items:start;
}

.rs-faq-panel-wrap{
	min-width:0;
}

.rs-faq-panel{
	display:none;
	grid-template-columns:45% 55%;
	min-height:600px;
	overflow:hidden;
	border:1px solid #e4e8df;
	border-radius:12px;
	background:#fff;
	box-shadow:0 2px 10px rgba(35,62,37,.04);
}

.rs-faq-panel.is-active{
	display:grid;
}

.rs-faq-category-image{
	min-height:600px;
	background:#f4f6ef;
}

.rs-faq-category-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

.rs-faq-list-area{
	padding:28px 25px;
}

.rs-faq-list-heading{
	display:flex;
	align-items:flex-start;
	gap:13px;
	margin-bottom:20px;
}

.rs-faq-list-icon{
	width:48px;
	height:48px;
	flex:0 0 48px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid #dbe5d8;
	border-radius:50%;
	background:#f4f7ef;
	color:var(--faq-green);
	font-size:19px;
}

.rs-faq-list-heading h2{
	color:var(--faq-green);
	font:700 18px/1.2 Inter,Arial,sans-serif;
}

.rs-faq-list-heading p{
	max-width:360px;
	margin-top:5px;
	color:#687169;
	font:400 10px/1.55 Inter,Arial,sans-serif;
}

/* CATEGORY ACCENTS */

.rs-faq-panel.is-digital .rs-faq-list-heading h2,
.rs-faq-panel.is-digital .rs-faq-list-icon{
	color:var(--faq-purple);
}

.rs-faq-panel.is-pod .rs-faq-list-heading h2,
.rs-faq-panel.is-pod .rs-faq-list-icon{
	color:var(--faq-orange);
}

.rs-faq-panel.is-wellness .rs-faq-list-heading h2{
	color:#4e7836;
}

/* =========================================================
   ACCORDION
   ========================================================= */

.rs-faq-item{
	border:1px solid #e4e8e1;
	border-radius:6px;
	background:#fff;
	margin-bottom:5px;
}

.rs-faq-item summary{
	min-height:38px;
	display:grid;
	grid-template-columns:27px 1fr 22px;
	align-items:center;
	gap:5px;
	padding:7px 11px;
	list-style:none;
	cursor:pointer;
	color:#202922;
	font:600 10px/1.35 Inter,Arial,sans-serif;
}

.rs-faq-item summary::-webkit-details-marker{display:none}

.rs-faq-number{
	color:#28332b;
	font-weight:700;
}

.rs-faq-plus{
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--faq-green);
	font:400 21px/1 Inter,Arial,sans-serif;
	transition:transform .2s ease;
}

.rs-faq-item[open] .rs-faq-plus{
	transform:rotate(45deg);
}

.rs-faq-answer{
	padding:0 40px 12px 43px;
	color:#626d64;
	font:400 10px/1.65 Inter,Arial,sans-serif;
}

.rs-faq-item[open]{
	border-color:#cbdac7;
	background:#fbfcfa;
}

/* =========================================================
   SIDEBAR
   ========================================================= */

.rs-faq-sidebar{
	display:flex;
	flex-direction:column;
	gap:17px;
}

.rs-faq-help-card,
.rs-faq-find-card{
	border:1px solid #e3e8df;
	border-radius:11px;
	background:#fff;
	box-shadow:0 2px 10px rgba(35,62,37,.04);
}

.rs-faq-help-card{
	padding:27px 25px;
}

.rs-faq-help-card h2,
.rs-faq-find-card h2{
	color:var(--faq-dark);
	font:600 24px/1.1 "Cormorant Garamond",Georgia,serif;
}

.rs-faq-help-card h2 span{
	color:#6d9b48;
	font-size:17px;
}

.rs-faq-help-card>p{
	margin-top:9px;
	color:#4d594f;
	font:400 10px/1.5 Inter,Arial,sans-serif;
}

.rs-faq-contact-button{
	margin-top:19px;
	min-height:43px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0 14px;
	border-radius:6px;
	background:var(--faq-green);
	color:#fff;
	font:700 11px Inter,Arial,sans-serif;
}

.rs-faq-track-link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:18px 14px;
	color:var(--faq-dark);
	font:700 10px Inter,Arial,sans-serif;
	border-bottom:1px solid #e3e7df;
}

.rs-faq-chat{
	display:flex;
	align-items:center;
	gap:11px;
	padding-top:18px;
}

.rs-faq-chat>span{
	width:36px;
	height:36px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:2px solid var(--faq-green);
	border-radius:50%;
	color:var(--faq-green);
	font-size:16px;
}

.rs-faq-chat strong,
.rs-faq-chat small{
	display:block;
	font-family:Inter,Arial,sans-serif;
}

.rs-faq-chat strong{font-size:10px}
.rs-faq-chat small{
	margin-top:3px;
	color:#626c64;
	font-size:9px;
}

.rs-faq-find-card{
	position:relative;
	min-height:300px;
	padding:28px 25px;
	overflow:hidden;
	background:#f7f5ed;
}

.rs-faq-find-card h2{
	max-width:180px;
}

.rs-faq-find-card p{
	position:relative;
	z-index:2;
	max-width:165px;
	margin-top:14px;
	color:#4d584f;
	font:400 10px/1.65 Inter,Arial,sans-serif;
}

.rs-faq-find-image{
	position:absolute;
	right:0;
	bottom:0;
	width:100%;
	height:65%;
}

.rs-faq-find-image img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
	object-position:center bottom;
}

/* =========================================================
   NEWSLETTER
   ========================================================= */

.rs-faq-newsletter{
	padding:8px 0 20px;
}

.rs-faq-newsletter-inner{
	min-height:100px;
	display:grid;
	grid-template-columns:210px 1fr 405px;
	align-items:center;
	gap:15px;
	overflow:hidden;
	border:1px solid #e5e9df;
	border-radius:11px;
	background:#f7f6ee;
}

.rs-faq-newsletter-art{
	height:100%;
	min-height:100px;
}

.rs-faq-newsletter-art img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

.rs-faq-newsletter-copy h2{
	color:var(--faq-dark);
	font:600 22px/1.1 "Cormorant Garamond",Georgia,serif;
}

.rs-faq-newsletter-copy p{
	margin-top:5px;
	color:#58635a;
	font:400 10px/1.5 Inter,Arial,sans-serif;
}

.rs-faq-newsletter-form{
	display:flex;
	gap:8px;
	padding-right:20px;
}

.rs-faq-newsletter-form input{
	flex:1;
	height:40px;
	padding:0 13px;
	border:1px solid #dfe5db;
	border-radius:7px;
	background:#fff;
	outline:0;
	font:400 10px Inter,Arial,sans-serif;
}

.rs-faq-newsletter-form button{
	height:40px;
	padding:0 27px;
	border:0;
	border-radius:7px;
	background:var(--faq-green);
	color:#fff;
	cursor:pointer;
	font:700 10px Inter,Arial,sans-serif;
}

.rs-faq-page .screen-reader-text{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:950px){
	.rs-faq-hero-inner{
		grid-template-columns:1fr;
	}

	.rs-faq-hero-copy{
		padding:30px;
	}

	.rs-faq-hero-image{
		min-height:260px;
	}

	.rs-faq-layout{
		grid-template-columns:1fr;
	}

	.rs-faq-sidebar{
		display:grid;
		grid-template-columns:1fr 1fr;
	}

	.rs-faq-panel{
		grid-template-columns:40% 60%;
	}

	.rs-faq-newsletter-inner{
		grid-template-columns:150px 1fr;
		padding-right:15px;
	}

	.rs-faq-newsletter-form{
		grid-column:1/-1;
		padding:0 15px 15px;
	}
}

@media(max-width:700px){
	.rs-faq-container{
		width:calc(100% - 28px);
	}

	.rs-faq-tabs{
		grid-template-columns:1fr 1fr;
	}

	.rs-faq-panel{
		grid-template-columns:1fr;
	}

	.rs-faq-category-image{
		min-height:260px;
		max-height:300px;
	}

	.rs-faq-sidebar{
		grid-template-columns:1fr;
	}

	.rs-faq-newsletter-inner{
		grid-template-columns:1fr;
	}

	.rs-faq-newsletter-art{
		display:none;
	}

	.rs-faq-newsletter-copy{
		padding:20px 20px 0;
	}

	.rs-faq-newsletter-form{
		padding:0 20px 20px;
	}
}

@media(max-width:480px){
	.rs-faq-tabs{
		grid-template-columns:1fr;
	}

	.rs-faq-hero h1{
		font-size:42px;
	}

	.rs-faq-form{}
}

/* =========================================================
   FAQ TAB HOVER COLORS
   ========================================================= */

/* GENERAL / SHOPPING — Mint Green */
.rs-faq-tab[data-faq-tab="general"]:hover {
    background: #dff3e4;
    border-color: #a9d9b5;
    color: #245b2b;
}

.rs-faq-tab[data-faq-tab="general"]:hover i {
    color: #2f7a3a;
}


/* WELLNESS ESSENTIALS — KEEP EXISTING COLOR */
.rs-faq-tab[data-faq-tab="wellness"]:hover {
    /* Keep existing Wellness hover */
}


/* DIGITAL PRODUCTS — Purple */
.rs-faq-tab[data-faq-tab="digital"]:hover {
    background: #f0e6ff;
    border-color: #b993e6;
    color: #6632a8;
}

.rs-faq-tab[data-faq-tab="digital"]:hover i {
    color: #7138b8;
}


/* PRINT ON DEMAND — Orange / Beige */
.rs-faq-tab[data-faq-tab="pod"]:hover {
    background: #fff0df;
    border-color: #efc18f;
    color: #a95316;
}

.rs-faq-tab[data-faq-tab="pod"]:hover i {
    color: #d66b1f;
}


/* =========================================================
   KEEP TEXT / ICONS VISIBLE
   ========================================================= */

.rs-faq-tab:hover span,
.rs-faq-tab:hover i {
    opacity: 1;
    visibility: visible;
}


/* Prevent generic hover rules from making text white */
.rs-faq-tab[data-faq-tab="general"]:hover span,
.rs-faq-tab[data-faq-tab="digital"]:hover span,
.rs-faq-tab[data-faq-tab="pod"]:hover span {
    color: inherit;
}

/* =========================================================
   GENERAL FAQ — SHOW 10 QUESTIONS + VIEW MORE
   ========================================================= */

.rs-faq-panel[data-faq-panel="general"] .rs-faq-item:nth-child(n+11) {
    display: none;
}

.rs-faq-panel[data-faq-panel="general"].faq-expanded .rs-faq-item:nth-child(n+11) {
    display: block;
}


/* View More button */
.rs-faq-view-more {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    width: 100%;
    margin-top: 14px;
    padding: 12px 18px;
    border: 1px solid #c9dfcd;
    border-radius: 10px;
    background: #f4faf5;
    color: #285d2a;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s ease;
}

.rs-faq-view-more:hover {
    background: #dff3e4;
    border-color: #a9d9b5;
    color: #245b2b;
}

.rs-faq-view-more .rs-faq-view-icon {
    font-size: 18px;
    line-height: 1;
    transition: transform .2s ease;
}

.rs-faq-panel[data-faq-panel="general"].faq-expanded
.rs-faq-view-more .rs-faq-view-icon {
    transform: rotate(180deg);
}


/* Hide the button if General has 10 or fewer questions */
.rs-faq-panel[data-faq-panel="general"].faq-no-more
.rs-faq-view-more {
    display: none;
}