/* =============================================================================
   FAQ page (page-faq.php). Scoped under .sc-faq so nothing leaks. Colours use
   the theme tokens from common.css; type is the global Jost.
   ========================================================================== */

.sc-faq{max-width:1024px;margin:0 auto;padding:40px 0 8px;}
.sc-faq-empty{color:var(--muted);font-size:15px;padding:40px 0;text-align:center;}

/* ---- category tabs ---- */
.sc-faq .section-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px;}
.sc-faq .section-nav button{
	background:#fff;border:1.5px solid var(--line);color:#374151;
	font-family:inherit;font-size:13px;font-weight:600;padding:8px 18px;
	border-radius:8px;cursor:pointer;transition:background .18s,border-color .18s,color .18s;
}
.sc-faq .section-nav button:hover{border-color:var(--green);color:var(--green-d);}
.sc-faq .section-nav button.active{background:var(--green);border-color:var(--green);color:#fff;}

/* ---- section ---- */
.sc-faq .faq-section{display:none;}
.sc-faq .faq-section.visible{display:block;}
.sc-faq .section-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin:0 0 8px;}
.sc-faq .section-title{font-family:var(--font-jost);font-size:clamp(20px,3vw,26px);font-weight:800;color:var(--ink);margin:0 0 6px;letter-spacing:-.01em;}
.sc-faq .section-title::after{content:'';display:block;width:40px;height:3px;background:var(--green);margin-top:12px;border-radius:2px;}
.sc-faq .section-desc{color:var(--muted);font-size:14.5px;margin:14px 0 0;max-width:640px;}

/* ---- accordion ---- */
.sc-faq .faq-list{display:flex;flex-direction:column;gap:10px;margin-top:28px;}
.sc-faq .faq-item{background:#fff;border:1.5px solid var(--line);border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s;}
.sc-faq .faq-item:hover{border-color:var(--green);}
.sc-faq .faq-item.open{border-color:var(--green);box-shadow:0 4px 16px rgba(29,160,116,.1);}

.sc-faq .faq-q{
	width:100%;background:none;border:none;text-align:left;padding:18px 22px;
	font-family:inherit;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;
	display:flex;align-items:center;justify-content:space-between;gap:16px;line-height:1.4;
}
.sc-faq .faq-q:focus-visible{outline:2px solid var(--green);outline-offset:-2px;}

.sc-faq .faq-icon{
	flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#f4f8f6;
	border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;
	transition:background .2s,border-color .2s;
}
.sc-faq .faq-icon svg{width:12px;height:12px;stroke:var(--green);stroke-width:2.5;transition:transform .25s;}
.sc-faq .faq-item.open .faq-icon{background:var(--green);border-color:var(--green);}
.sc-faq .faq-item.open .faq-icon svg{stroke:#fff;transform:rotate(45deg);}

.sc-faq .faq-a{display:none;padding:0 22px 20px;font-size:14.5px;color:#374151;line-height:1.75;border-top:1px solid var(--line);}
.sc-faq .faq-a.open{display:block;}
.sc-faq .faq-a > :first-child{margin-top:14px;}
.sc-faq .faq-a p{margin:0 0 12px;}
.sc-faq .faq-a p:last-child{margin-bottom:0;}
.sc-faq .faq-a ul,.sc-faq .faq-a ol{margin:0 0 12px;padding-left:20px;}
.sc-faq .faq-a li{margin-bottom:6px;}
.sc-faq .faq-a a{color:var(--green-d);font-weight:600;text-decoration:none;}
.sc-faq .faq-a a:hover{text-decoration:underline;}

/* ---- contact strip ---- */
.sc-faq .faq-trust{
	background:linear-gradient(145deg,#F3FAF6 0%,#E7F4EE 100%);color:var(--ink);
	border:1px solid #DCEEDF;padding:30px 28px;margin-top:56px;border-radius:14px;
	display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;
}
.sc-faq .faq-trust h3{font-family:var(--font-jost);font-size:19px;font-weight:800;margin:0;color:var(--ink);}
.sc-faq .faq-trust p{color:var(--muted);font-size:14px;margin:4px 0 0;}
.sc-faq .faq-trust a{
	background:var(--red);color:#fff;font-weight:700;font-size:14px;padding:12px 26px;border-radius:8px;
	text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .2s;
}
.sc-faq .faq-trust a:hover{background:var(--red-d);}

@media(max-width:600px){
	/* Category tabs become a single swipeable row instead of wrapping to 3-4 lines.
	   The strip bleeds to the screen edges (cancels .wrap's 22px padding) so pills
	   can scroll fully edge to edge; the scrollbar is hidden. */
	.sc-faq .section-nav{
		flex-wrap:nowrap;
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;            /* Firefox */
		margin:0 -22px 30px;
		padding:0 22px 4px;
	}
	.sc-faq .section-nav::-webkit-scrollbar{display:none;} /* Chrome/Safari */
	.sc-faq .section-nav button{flex:0 0 auto;white-space:nowrap;font-size:12.5px;padding:8px 16px;}
	/* Edge fades — applied only on the side that can still scroll (set via JS),
	   so the first pill at the left and the last pill at the right are never faded. */
	.sc-faq .section-nav.fade-l.fade-r{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 26px,#000 calc(100% - 26px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 26px,#000 calc(100% - 26px),transparent 100%);}
	.sc-faq .section-nav.fade-l:not(.fade-r){-webkit-mask-image:linear-gradient(to right,transparent 0,#000 26px,#000 100%);mask-image:linear-gradient(to right,transparent 0,#000 26px,#000 100%);}
	.sc-faq .section-nav.fade-r:not(.fade-l){-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 26px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 26px),transparent 100%);}

	.sc-faq .faq-q{font-size:14px;padding:16px;}
	.sc-faq .faq-a{padding:0 16px 16px;}
	.sc-faq .faq-trust{flex-direction:column;text-align:center;}
}
