/**
 * "Other" page group — FAQ (76:15761), Downloads & Useful info (76:16048),
 * Advertisement (76:16482), Trust template (76:16800) + the widget-rendered
 * bits of Gallery (76:14408) and Contact (76:14999). Consumes samuday-tokens.css.
 * Elementor kit rules are (0,1,1); anything they would beat is written as
 * element+class inside a widget root.
 */

/* ------------------------------------------------------ shared bits */

/* Elementor's per-element stacked-view rule (.elementor-N.elementor-view-stacked
   .elementor-icon svg { fill: … }) is (0,3,1) and beats 00-base's fill:none pin,
   turning the stroke icon set into blobs inside every iconbox. Out-specify it. */
.elementor-widget-icon.elementor-view-stacked .elementor-icon svg[fill="none"],
.elementor-widget-icon.elementor-view-framed .elementor-icon svg[fill="none"] {
	fill: none !important;
	stroke: currentColor;
}

/* An iconbox must never be squeezed by a long text sibling in a nowrap row. */
.elementor-widget-icon.elementor-view-stacked { flex-shrink: 0; }
.elementor-widget-icon.elementor-view-stacked + .e-con { min-width: 0; }

.sd-iconbox {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background-color: var(--sd-secondary-saffron-soft);
	color: var(--sd-primary-maroon);
}
.sd-iconbox .sd-ico { width: 20px; height: 20px; }

/* ----------------------------------------------------------- FAQ */

.sd-faq__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sd-faq details.sd-faq__item {
	margin: 0;
	border: 1px solid var(--sd-border-default);
	border-radius: 18px;
	padding: 20px;
	background-color: var(--sd-surface-white);
	transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.sd-faq details.sd-faq__item:hover { border-color: var(--sd-border-strong); }
.sd-faq details.sd-faq__item[open] { box-shadow: var(--sd-shadow-card); }

.sd-faq summary.sd-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
	cursor: pointer;
	color: var(--sd-text-primary);
}
.sd-faq summary.sd-faq__q::-webkit-details-marker { display: none; }
.sd-faq summary.sd-faq__q::marker { content: ""; }
.sd-faq summary.sd-faq__q::before,
.sd-faq summary.sd-faq__q::after,
.sd-faq details.sd-faq__item::before,
.sd-faq details.sd-faq__item::after { content: none !important; display: none !important; }
.sd-faq summary.sd-faq__q:focus-visible { outline: 2px solid var(--sd-secondary-saffron); outline-offset: 4px; border-radius: 8px; }

.sd-faq .sd-faq__qtext {
	display: flex;
	flex: 1 1 0;
	min-width: 0;
	align-items: flex-start;
	gap: 12px;
}

.sd-faq .sd-faq__pill {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	margin-top: 1px;
	border-radius: 999px;
	padding: 5px 12px;
	background-color: var(--sd-secondary-saffron-soft);
	font-family: var(--sd-font-body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.3px;
	color: var(--sd-primary-maroon);
	white-space: nowrap;
}

.sd-faq .sd-faq__title {
	display: block;
	flex: 1 1 0;
	min-width: 0;
	font-family: var(--sd-font-heading);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--sd-text-primary);
}

.sd-faq .sd-faq__icon {
	display: inline-flex;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	color: var(--sd-text-primary);
}
.sd-faq .sd-faq__icon .sd-ico { width: 18px; height: 18px; }
.sd-faq .sd-faq__ico-x { display: none; }
.sd-faq details[open] .sd-faq__ico-x { display: inline-block; }
.sd-faq details[open] .sd-faq__ico-down { display: none; }

.sd-faq .sd-faq__answer {
	margin-top: 12px;
	border-top: 1px solid var(--sd-border-default);
	padding-top: 12px;
	font-family: var(--sd-font-body);
	font-size: 17px;
	line-height: 1.6;
	color: var(--sd-text-muted);
}
.sd-faq .sd-faq__answer > :first-child { margin-top: 0; }
.sd-faq .sd-faq__answer > :last-child { margin-bottom: 0; }
.sd-faq .sd-faq__answer p { margin: 0 0 10px; }
.sd-faq .sd-faq__answer a { color: var(--sd-primary-maroon); }

/* ------------------------------------------------------- Downloads */

.sd-dl .sd-lhead { margin-bottom: 48px; }

.sd-dl__group + .sd-dl__group { margin-top: 48px; }

.sd-dl h3.sd-dl__group-title {
	margin: 0 0 14px;
	font-family: var(--sd-font-heading);
	font-size: 28px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--sd-text-primary);
}

.sd-dl__grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(var(--sd-cols, 3), minmax(0, 1fr));
}

.sd-dl a.sd-dl__card,
.sd-dl .sd-dl__card {
	display: flex;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	min-height: 76px;
	border: 1px solid var(--sd-border-default);
	border-radius: 18px;
	padding: 16px;
	background-color: var(--sd-surface-white);
	color: var(--sd-text-primary);
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.sd-dl a.sd-dl__card:hover {
	transform: translateY(-2px);
	border-color: var(--sd-border-strong);
	box-shadow: var(--sd-shadow-card);
	color: var(--sd-text-primary);
}
.sd-dl a.sd-dl__card:focus-visible { outline: 2px solid var(--sd-secondary-saffron); outline-offset: 2px; }
.sd-dl .sd-dl__card.is-pending { cursor: default; }
.sd-dl .sd-dl__card.is-pending .sd-dl__dl { opacity: 0.45; }

.sd-dl__text {
	display: flex;
	flex: 1 1 0;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.sd-dl .sd-dl__title {
	font-family: var(--sd-font-body);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--sd-text-primary);
	overflow-wrap: anywhere;
}

.sd-dl .sd-dl__meta {
	font-family: var(--sd-font-body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.3px;
	color: var(--sd-text-muted);
}

.sd-dl .sd-dl__dl {
	display: inline-flex;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	color: var(--sd-primary-maroon);
}
.sd-dl .sd-dl__dl .sd-ico { width: 18px; height: 18px; }

/* ----------------------------------------------------- Advertisement */

.sd-adv {
	display: flex;
	flex-direction: column;
	gap: 12px;
	border: 1px solid var(--sd-border-default);
	border-radius: 18px;
	padding: 20px;
	background-color: var(--sd-surface-card-tint);
}
.sd-adv p.sd-adv__label { margin: 0; }

.sd-adv a.sd-adv__row,
.sd-adv .sd-adv__row {
	display: flex;
	align-items: center;
	gap: 16px;
	border: 1px solid var(--sd-border-default);
	border-radius: 10px;
	padding: 16px 20px;
	background-color: var(--sd-surface-white);
	color: var(--sd-text-primary);
	text-decoration: none;
}
.sd-adv a.sd-adv__row:hover { border-color: var(--sd-border-strong); color: var(--sd-text-primary); }

.sd-adv__text {
	display: flex;
	flex: 1 1 0;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}
.sd-adv .sd-adv__name {
	font-family: var(--sd-font-heading);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--sd-text-primary);
}
.sd-adv .sd-adv__note {
	font-family: var(--sd-font-body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.3px;
	color: var(--sd-text-muted);
}

/* Ad slot preview (Elementor containers): cream box with a white "slot". */
.sd-adslot {
	position: relative;
	height: 120px;
	border-radius: 10px;
	background-color: var(--sd-bg-cream-deep);
	overflow: hidden;
}
.sd-adslot::after {
	content: "";
	position: absolute;
	box-sizing: border-box;
	border: 1px solid var(--sd-border-strong);
	border-radius: 4px;
	background-color: var(--sd-surface-white);
	left: 10px;
	top: 15px;
	width: calc(100% - 20px);
	height: 90px;
}
.sd-adslot--v::after { left: 50%; top: 10px; width: 90px; height: 100px; transform: translateX(-50%); }
.sd-adslot--strip::after { top: 38px; height: 45px; }

/* ------------------------------------------------------- Trust hero */

.sd-thero {
	display: flex;
	flex-direction: column;
	gap: 14px;
	color: var(--sd-text-on-dark);
}
.sd-thero nav.sd-thero__crumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-family: var(--sd-font-body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.3px;
	color: var(--sd-text-on-dark-muted);
}
.sd-thero nav.sd-thero__crumbs a { color: var(--sd-text-on-dark-muted); text-decoration: none; }
.sd-thero nav.sd-thero__crumbs a:hover { color: var(--sd-text-on-dark); }
.sd-thero .sd-thero__sep { width: 12px; height: 12px; }
.sd-thero h1.sd-thero__title {
	margin: 0;
	font-family: var(--sd-font-heading);
	font-size: 52px;
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.5px;
	color: var(--sd-text-on-dark);
}
.sd-thero p.sd-thero__lead {
	max-width: 760px;
	margin: 0;
	font-family: var(--sd-font-body);
	font-size: 19px;
	line-height: 1.6;
	color: var(--sd-text-on-dark-muted);
}

/* Alert/info (76:16899) built as an Elementor container. */
.sd-alert-info {
	border: 1px solid #3e5c8a;
}

/* Sidebar link list (icon-list) — Figma "Sidebar/ઝડપી લિંક". */
.sd-side-links .elementor-icon-list-item { padding-block: 0; }
.sd-side-links .elementor-icon-list-item + .elementor-icon-list-item { margin-top: 12px; }
.sd-side-links .elementor-icon-list-text { color: var(--sd-text-primary); }
.sd-side-links .elementor-icon-list-item a:hover .elementor-icon-list-text { color: var(--sd-primary-maroon); }
.sd-side-links--dark .elementor-icon-list-text { color: var(--sd-text-on-dark); }

/* ------------------------------------------------------- Responsive */

@media (max-width: 1024px) {
	.sd-dl__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
	.sd-dl .sd-lhead { margin-bottom: 40px; }
	.sd-dl__group + .sd-dl__group { margin-top: 40px; }
	.sd-thero h1.sd-thero__title { font-size: 40px; }
}

@media (max-width: 767px) {
	.sd-dl__grid { grid-template-columns: 1fr; gap: 14px; }
	.sd-dl h3.sd-dl__group-title { font-size: 22px; }
	.sd-faq details.sd-faq__item { padding: 16px; border-radius: 14px; }
	.sd-faq .sd-faq__qtext { flex-direction: column; gap: 8px; }
	.sd-faq .sd-faq__title { font-size: 19px; }
	.sd-faq .sd-faq__answer { font-size: 16px; }
	.sd-adv { padding: 16px; }
	.sd-adv .sd-adv__row { padding: 14px 16px; }
	.sd-adv .sd-adv__name { font-size: 19px; }
	.sd-thero h1.sd-thero__title { font-size: 32px; }
	.sd-thero p.sd-thero__lead { font-size: 17px; }
}
